Home | History | Annotate | Download | only in WebCore
      1 2008-08-10  Dan Bernstein  <mitz (a] apple.com>
      2 
      3         Reviewed by Eric Seidel.
      4 
      5         - fix https://bugs.webkit.org/show_bug.cgi?id=20339
      6           REGRESSION (r35531-r35615): Acid3 crashes on Windows in CachedFont::getSVGFontById
      7 
      8         * dom/make_names.pl: Removed "using namespace WebCore::*Names"
      9         from *ElementFactory.cpp files.        
     10 
     11 2008-08-10  Mark Rowe  <mrowe (a] apple.com>
     12 
     13         Reviewed by Cameron Zwarich.
     14 
     15         Fix crash in Acid3 in Windows and Gtk ports, introduced in r35590.
     16 
     17         * bindings/js/ScriptControllerGtk.cpp: Fix the logic.
     18         * bindings/js/ScriptControllerWin.cpp: Ditto.
     19         * bindings/js/ScriptControllerQt.cpp: Switch to isPluginView for consistency with Gtk and Windows.
     20 
     21 2008-08-10  Dan Bernstein  <mitz (a] apple.com>
     22 
     23         Reviewed by Darin Adler.
     24 
     25         - fix <rdar://problem/6074587> REGRESSION (34722): Unable to view AT&T wireless bill - window title contains markup, window is empty
     26 
     27         Test: fast/tokenizer/ampersand-in-special-tag.html
     28 
     29         * html/HTMLTokenizer.cpp:
     30         (WebCore::HTMLTokenizer::parseSpecial): Changed to only advance
     31         lastDecodedEntityPosition if an entity was found and decoded.
     32 
     33 2008-08-10  Jan Michael Alonzo  <jmalonzo (a] webkit.org>
     34 
     35         Reviewed (and updated) by Alp Toker.
     36 
     37         https://bugs.webkit.org/show_bug.cgi?id=16620
     38         [GTK] Autotools make dist and make check support
     39 
     40         Get make dist working.
     41 
     42         Note that not all possible configurations have been tested yet.
     43 
     44         * GNUmakefile.am:
     45 
     46 2008-08-08  Beth Dakin  <bdakin (a] apple.com>
     47 
     48         Reviewed by Darin.
     49 
     50         This patch makes the findString and markAllMatchesForText functions 
     51         work with disconnected frames that are contained within 
     52         overflow:hidden blocks.
     53 
     54         * editing/Editor.cpp:
     55         (WebCore::Editor::rangeVisibility):
     56         (WebCore::Editor::firstVisibleRange):
     57         (WebCore::Editor::lastVisibleRange):
     58         * editing/Editor.h:
     59         (WebCore::Editor::):
     60         * page/Frame.cpp:
     61         (WebCore::Frame::findString):
     62         (WebCore::Frame::markAllMatchesForText):
     63 
     64 2008-08-08  Maxime Britto  <britto (a] apple.com>
     65 
     66         Reviewed by Adele.
     67 
     68         Test: fast/events/scroll-to-anchor-in-overflow-hidden.html
     69         https://bugs.webkit.org/show_bug.cgi?id=20270
     70         Jump to an anchor wasn't working when the overflow:hidden CSS attribute was set on the page.
     71 
     72         * WebCore.base.exp:
     73         * dom/Element.cpp:
     74         (WebCore::Element::scrollIntoView):
     75         (WebCore::Element::scrollIntoViewIfNeeded):
     76         * loader/FrameLoader.cpp:
     77         (WebCore::FrameLoader::gotoAnchor):
     78         * page/EventHandler.cpp:
     79         (WebCore::EventHandler::handleMousePressEvent):
     80         (WebCore::EventHandler::handleMouseDraggedEvent):
     81         * page/Frame.cpp:
     82         (WebCore::Frame::revealSelection):
     83         (WebCore::Frame::revealCaret):
     84         * rendering/RenderLayer.cpp:
     85         (WebCore::RenderLayer::scrollRectToVisible): Takes a new parameter "scrollToAnchor" since it's a special case of scroll. It passes this new bool to canBeProgrammaticallyScrolled. 
     86         (WebCore::RenderLayer::autoscroll):
     87         * rendering/RenderLayer.h:
     88         * rendering/RenderListBox.h:
     89         (WebCore::RenderListBox::canBeProgramaticallyScrolled):
     90         * rendering/RenderObject.cpp:
     91         (WebCore::RenderObject::canBeProgramaticallyScrolled): If the call is coming from a scrollToAnchor we don't need scrollBars to accept.
     92         * rendering/RenderObject.h:
     93         * rendering/RenderTextControl.h:
     94         (WebCore::RenderTextControl::canBeProgramaticallyScrolled):
     95 
     96 2008-08-08  Maxime Britto  <britto (a] apple.com>
     97 
     98         Reviewed by Adele.
     99 
    100         <rdar://problem/6137022>
    101         <https://bugs.webkit.org/show_bug.cgi?id=20331>
    102         REGRESSION(r35177-r35203): Scrolling slowly over a scrollable field scrolls the page instead of the field (20331)
    103 
    104         * page/EventHandler.cpp:
    105         (WebCore::scrollAndAcceptEvent): fixed the wrong cast for the wheel delta which was truncated to 0 on slow wheel scrolls.
    106 
    107 2008-08-08  Dean Jackson  <dino (a] apple.com>
    108 
    109         Execute CSS Animations using new AnimationController
    110         https://bugs.webkit.org/show_bug.cgi?id=20119
    111 
    112         I still need to file some follow-on bugs that EricS noticed.
    113 
    114         Reviewed by Dave Hyatt
    115 
    116         Some new tests:
    117         * manual-tests/animate-duration.html: Added.
    118         * manual-tests/animate-left.html: Added.
    119         * manual-tests/animate-none.html: Added.
    120 
    121         * css/CSSStyleSelector.cpp:
    122         * dom/Document.cpp:
    123             - don't redo style when page is place into cache
    124         * page/AnimationController.cpp:
    125         * page/AnimationController.h:
    126             - execute the animations
    127         * rendering/RenderObject.cpp:
    128         * rendering/style/RenderStyle.h:
    129             - make border radii const (for blending)
    130 
    131 2008-08-08  Kevin McCullough  <kmccullough (a] apple.com>
    132 
    133         Reviewed by Tim.
    134 
    135         <rdar://problem/6136326> JSProfiler: Start/stop profiling button in the
    136         Web Inspector does not match the menu.
    137 
    138         * page/InspectorController.cpp:
    139         (WebCore::InspectorController::toggleRecordButton): Toggle the record
    140         button in the webInspector.
    141         (WebCore::InspectorController::startUserInitiatedProfiling):
    142         (WebCore::InspectorController::stopUserInitiatedProfiling):
    143         * page/InspectorController.h: 
    144         * page/inspector/ProfilesPanel.js: Move the UI part of the record button
    145         into its funtion so that it can be called from the Inspector controller.
    146         * page/inspector/inspector.js:
    147 
    148 2008-08-08  Kevin McCullough  <kmccullough (a] apple.com>
    149 
    150         Reviewed by Tim.
    151 
    152         <rdar://problem/6131187> Profiles don't show up immediately when run
    153         with the UI.
    154 
    155         * page/InspectorController.cpp:
    156         (WebCore::startProfiling): Added so that the inspector's JS code could
    157         call through to the same function used by the Develop menu.  This way
    158         both can call didFinishAllExecution() which puts the profile in the
    159         Web Inspector.
    160         (WebCore::stopProfiling): Ditto
    161         (WebCore::InspectorController::windowScriptObjectAvailable):
    162         (WebCore::InspectorController::stopUserInitiatedProfiling): Now calls
    163         didFinishAllExecution() to put the profile in the Web Inspector.  This
    164         should be safe since the UIs shouldn't work if JS is still running.
    165         * page/inspector/ProfilesPanel.js: Use the new functions.
    166 
    167 2008-08-08  Dan Bernstein  <mitz (a] apple.com>
    168 
    169         Reviewed by Darin Adler.
    170 
    171         - fix <rdar://problem/5961260> GDI text: transparent fill color text does not render if it it has a stroke or shadow
    172 
    173         * platform/graphics/win/FontCGWin.cpp:
    174         (WebCore::Font::drawGlyphs):
    175 
    176 2008-08-08  Adam Treat  <treat (a] kde.org>
    177 
    178         Reviewed by Simon.
    179 
    180         Return the canonical file path in Qt's listDirectory as WebCore::PluginDatabase
    181         uses this method to retrieve a list of possible plugins.  Many linux systems
    182         have nested symbolic links scattered throughout the plugin directories which
    183         resulted in the PluginDatabase loading the same plugin N times depending on
    184         the number of symbolic links.
    185 
    186         * platform/qt/FileSystemQt.cpp:
    187         (WebCore::listDirectory):
    188 
    189 2008-08-07  Anthony Ricaud  <rik24d (a] gmail.com>
    190 
    191         Change highlight time from 300ms to 500ms and fade effect from 1s to 2s
    192 
    193         https://bugs.webkit.org/show_bug.cgi?id=20055
    194 
    195         Reviewed by Timothy Hatcher.
    196 
    197         * page/inspector/SourceFrame.js:
    198 
    199 2008-08-07  Anthony Ricaud  <rik24d (a] gmail.com>
    200 
    201         The search is only performed if the field contains more than 3
    202         letters or if Enter is pressed.
    203 
    204         Search is now performed through a keyup event.
    205 
    206         Added a WebInspector.lastQuery to remember the last query and not
    207         perform it again (eg. the user hits a modifier key).
    208 
    209         https://bugs.webkit.org/show_bug.cgi?id=18548
    210 
    211         Reviewed by Timothy Hatcher.
    212 
    213         * page/inspector/inspector.html: Removed the onsearch and incremental
    214         attributes
    215         * page/inspector/inspector.js:
    216 
    217 2008-08-07  Steve Falkenburg  <sfalken (a] apple.com>
    218 
    219         Compile derived sources through an all-in-one cpp file.
    220         Fixes Windows release build on non-x64 systems by reducing the size of WebCore.lib from 1.5GB to 1GB.
    221         
    222         Reviewed by Mark Rowe.
    223 
    224         * DerivedSources.cpp: Added.
    225         * WebCore.vcproj/WebCore.vcproj:
    226 
    227 2008-08-07  Kevin McCullough  <kmccullough (a] apple.com>
    228 
    229         Reviewed by Adam.
    230 
    231         <rdar://problem/5712917> Confusing console error message clear
    232         behavior (16791)
    233         https://bugs.webkit.org/show_bug.cgi?id=16791
    234         <rdar://problem/5831899> The Web Inspector does not correctly clear the
    235         console messages
    236 
    237         * page/InspectorController.cpp: Clear the message so they don't show up
    238         in the inspector after it has cleared them.
    239         (WebCore::clearMessages):
    240         (WebCore::InspectorController::clearConsoleMessages):
    241         (WebCore::InspectorController::windowScriptObjectAvailable):
    242         * page/InspectorController.h:
    243         * page/inspector/Console.js: Tell the InspectorController to clear the
    244         messages it's holding onto.
    245 
    246 2008-08-07  Simon Fraser  <simon.fraser (a] apple.com>
    247 
    248         Reviewed by Sam Weinig
    249 
    250         Rename Marquee to RenderMarquee and move to its own file.
    251         https://bugs.webkit.org/show_bug.cgi?id=20319
    252 
    253         * GNUmakefile.am:
    254         * WebCore.pro:
    255         * WebCore.vcproj/WebCore.vcproj:
    256         * WebCore.xcodeproj/project.pbxproj:
    257         * WebCoreSources.bkl:
    258         * html/HTMLMarqueeElement.cpp:
    259         * rendering/RenderBlock.cpp:
    260         * rendering/RenderLayer.cpp:
    261         (WebCore::RenderLayer::styleChanged):
    262         * rendering/RenderLayer.h:
    263         * rendering/RenderMarquee.cpp: Added.
    264         (WebCore::RenderMarquee::RenderMarquee):
    265         (WebCore::RenderMarquee::marqueeSpeed):
    266         (WebCore::RenderMarquee::direction):
    267         (WebCore::RenderMarquee::isHorizontal):
    268         (WebCore::RenderMarquee::computePosition):
    269         (WebCore::RenderMarquee::start):
    270         (WebCore::RenderMarquee::suspend):
    271         (WebCore::RenderMarquee::stop):
    272         (WebCore::RenderMarquee::updateMarqueePosition):
    273         (WebCore::RenderMarquee::updateMarqueeStyle):
    274         (WebCore::RenderMarquee::timerFired):
    275         * rendering/RenderMarquee.h: Added.
    276         (WebCore::RenderMarquee::speed):
    277         (WebCore::RenderMarquee::reverseDirection):
    278         (WebCore::RenderMarquee::setEnd):
    279 
    280 2008-08-07  Dan Bernstein  <mitz (a] apple.com>
    281 
    282         Reviewed by Dave Hyatt.
    283 
    284         - fix <rdar://problem/6118816> Initial empty page or bookmarks view window has white strip where vertical scrollbar would be (which vanishes on resize)
    285 
    286         * page/Frame.cpp:
    287         (WebCore::Frame::setZoomFactor): If the view has never had a layout with
    288         the old zoom factor, then there is no need to explicitly call layout()
    289         here.
    290 
    291 2008-08-07  Kevin McCullough  <kmccullough (a] apple.com>
    292 
    293         Reviewed by Geoff.
    294 
    295         <rdar://problem/6115981> Start the profiler in Heavy view
    296 
    297         * page/inspector/ProfileView.js:
    298 
    299 2008-08-07  Alp Toker  <alp (a] nuanti.com>
    300 
    301         Reviewed by Eric Seidel.
    302 
    303         https://bugs.webkit.org/show_bug.cgi?id=20313
    304         Add null check in String::fromUTF8()
    305 
    306         Make String::fromUTF8() consistent with other constructors by
    307         returning a null String when the input is null instead of crashing.
    308 
    309         * platform/text/String.cpp:
    310         (WebCore::String::fromUTF8):
    311 
    312 2008-08-06  Kevin Ollivier  <kevino (a] theolliviers.com>
    313 
    314         wx build fix after Frame -> ScriptController moves.
    315 
    316         * platform/wx/TemporaryLinkStubs.cpp:
    317 
    318 2008-08-06  Kevin McCullough  <kmccullough (a] apple.com>
    319 
    320         Reviewed by Tim.
    321 
    322         - Make XHR console message clearer.
    323 
    324         * xml/XMLHttpRequest.cpp:
    325         (WebCore::XMLHttpRequest::didFinishLoading):
    326 
    327 2008-08-06  Kevin McCullough  <kmccullough (a] apple.com>
    328 
    329         Reviewed by Tim.
    330 
    331         - Created a new function to create DOM links from text without
    332         converting back and forth from HTML and messing with escaping special
    333         characters.
    334 
    335         * page/inspector/Console.js:
    336         * page/inspector/inspector.js:
    337         * page/inspector/utilities.js:
    338 
    339 2008-08-06  Eric Seidel  <eric (a] webkit.org>
    340 
    341         Reviewed by hyatt.
    342 
    343         Fix a large animation leak found on the buildbot
    344         (m_animations and m_transitions were never deleted)
    345         Drag RenderStyle (kicking and screaming) into the 21st century
    346         of memory management with a little application of OwnPtr.
    347 
    348         * rendering/style/RenderStyle.cpp:
    349         (WebCore::FillLayer::cullEmptyLayers):
    350         (WebCore::RenderStyle::diff):
    351         (WebCore::RenderStyle::contentDataEquivalent):
    352         (WebCore::RenderStyle::setContent):
    353         (WebCore::BindingURI::BindingURI):
    354         (WebCore::RenderStyle::setBoxShadow):
    355         (WebCore::ShadowData::ShadowData):
    356         (WebCore::RenderStyle::counterDirectives):
    357         (WebCore::RenderStyle::accessCounterDirectives):
    358         (WebCore::RenderStyle::adjustAnimations):
    359         (WebCore::RenderStyle::adjustTransitions):
    360         (WebCore::RenderStyle::accessAnimations):
    361         (WebCore::RenderStyle::accessTransitions):
    362         * rendering/style/RenderStyle.h:
    363         (WebCore::RenderStyle::clearAnimations):
    364         (WebCore::RenderStyle::clearTransitions):
    365 
    366 2008-08-06  Brady Eidson  <beidson (a] apple.com>
    367 
    368         Reviewed by MitzPettel
    369 
    370         <rdar://problem/6078543> - Many LocalStorageThreads may be started
    371 
    372         The original decision to key LocalStorage sets to PageGroups was a poor one.
    373 
    374         It seems a much better solution is to key them to the actual path of on-disk storage,
    375         which also solves all of the avenues that could lead to a boundless number of threads.
    376 
    377         In this patch, I am not attempting to completely sever the attachment of LocalStorage
    378         to PageGroups as that would require a more substantial re-working of the lifetime
    379         between pages, groups, and local storage threads.
    380 
    381         * page/PageGroup.cpp:
    382         (WebCore::PageGroup::addPage):
    383 
    384         * storage/LocalStorage.cpp:
    385         (WebCore::localStorageMap):  Map paths to LocalStorage objects here.
    386         (WebCore::LocalStorage::localStorage): Return the shared LocalStorage object for this path,
    387           or create a new one if it doesn't yet exist.
    388         (WebCore::LocalStorage::LocalStorage):
    389         (WebCore::LocalStorage::~LocalStorage):  Add to remove the path->LocalStorage mapping
    390         * storage/LocalStorage.h:
    391 
    392 2008-08-06  Beth Dakin  <bdakin (a] apple.com>
    393 
    394         Reviewed by Adele.
    395 
    396         Fix for <rdar://problem/6130724>
    397 
    398         Disconnected frames should not be allowed to resize the window.
    399 
    400         * page/DOMWindow.cpp:
    401         (WebCore::DOMWindow::resizeBy):
    402         (WebCore::DOMWindow::resizeTo):
    403 
    404 2008-08-05  David D. Kilzer  <ddkilzer (a] apple.com>
    405 
    406         Bug 20038: REGRESSION (r35151): Can't post comments on flickr.com
    407 
    408         <https://bugs.webkit.org/show_bug.cgi?id=20038>
    409         <rdar://problem/6092270>
    410 
    411         Reviewed by Eric Seidel.
    412 
    413         Test: fast/forms/submit-to-url-fragment.html
    414 
    415         The problem was that isFormSubmission was not being set to true in
    416         FrameLoader::loadWithDocumentLoader() when we were actually
    417         submitting a form, causing the page to scroll instead of the form to
    418         be submitted.
    419 
    420         The isFormSubmission variable wasn't set to true because a FormState
    421         object was not being created in
    422         FrameLoader::loadFrameRequestWithFormAndValues().
    423 
    424         The FormState object was not being created because
    425         HTMLFormElement::submit(Event*, bool activateSubmitButton) would
    426         only set FrameLoader::m_formAboutToBeSubmitted to the current form
    427         if there was a "text field" element in the form (type = text,
    428         password, search or isindex).
    429 
    430         Thus when FrameLoader::submitForm(const FrameLoadRequest&, Event*)
    431         called FrameLoader::loadFrameRequestWithFormAndValues(), a null
    432         HTMLFormElement pointer would be sent and cause the above failures.
    433 
    434         * html/HTMLFormElement.cpp:
    435         (WebCore::HTMLFormElement::submit): Call new
    436         FrameLoader::setFormAboutToBeSubmitted() method outside the for
    437         loop so we always set FrameLoader::m_formAboutToBeSubmitted exactly
    438         once for any form submission.  The FrameLoader::recordFormValue()
    439         method is only called with the name/value pair of each text field.
    440 
    441         * loader/FrameLoader.cpp:
    442         (WebCore::FrameLoader::setFormAboutToBeSubmitted): Added method that
    443         only sets m_formAboutToBeSubmitted.
    444         (WebCore::FrameLoader::recordFormValue): Removed
    445         PassRefPtr<HTMLFormElement> argument since this method only sets
    446         name/value pairs on m_formValuesAboutToBeSubmitted now.
    447         (WebCore::FrameLoader::loadFrameRequestWithFormAndValues): Create a
    448         FormState object as long as submitForm is not null so that other
    449         FrameLoader methods know when a form is being submitted.
    450         * loader/FrameLoader.h:
    451 
    452 2008-08-06  David D. Kilzer  <ddkilzer (a] apple.com>
    453 
    454         BUILD FIX: Add HTMLPlugInImageElement.cpp to all other build systems
    455 
    456         * GNUmakefile.am:
    457         * WebCore.pro:
    458         * WebCoreSources.bkl:
    459 
    460 2008-08-06  Dan Bernstein  <mitz (a] apple.com>
    461 
    462         - Windows build fix
    463 
    464         * WebCore.vcproj/WebCore.vcproj: Added PlugInImageElement.*
    465 
    466 2008-08-06  Kevin McCullough  <kmccullough (a] apple.com>
    467 
    468         Reviewed by Tim and Darin.
    469 
    470         <rdar://problem/6126160> URLs in the console should be clickable.
    471         - Implemented and now use linkifyString() to parse console messages for
    472         URLs.
    473 
    474         * page/inspector/Console.js:
    475         * page/inspector/inspector.js:
    476         * page/inspector/utilities.js:
    477 
    478 2008-07-02  David Kilzer  <ddkilzer (a] apple.com>
    479 
    480         Images using QT plugin do not display correctly
    481 
    482         <https://bugs.webkit.org/show_bug.cgi?id=9214>
    483         <rdar://problem/5683413>
    484 
    485         Reviewed by Darin.
    486 
    487         Tests: fast/images/embed-image.html
    488                fast/images/object-image.html
    489 
    490         Use RenderImage instead of RenderPartObject for a renderer when
    491         the <embed> tag references an image.  Extract common code from
    492         HTMLEmbedElement and HTMLObjectElement into HTMLPlugInImageElement.
    493 
    494         * WebCore.xcodeproj/project.pbxproj: Added new source files.
    495 
    496         * html/HTMLEmbedElement.cpp: Cleaned up #include statements.
    497         (WebCore::HTMLEmbedElement::HTMLEmbedElement): Extend
    498         HTMLPlugInImageElement which extends HTMLPlugInElement.
    499         (WebCore::HTMLEmbedElement::parseMappedAttribute): Split codeAttr
    500         and srcAttr cases.  Create or clear HTMLImageLoader as needed for
    501         srcAttr.
    502         (WebCore::HTMLEmbedElement::rendererIsNeeded): Use
    503         HTMLPlugInElement::rendererIsNeeded() for images.
    504         (WebCore::HTMLEmbedElement::createRenderer): Create a
    505         RenderImage instead of a RenderPartObject for images.
    506         (WebCore::HTMLEmbedElement::attach): Create HTMLImageLoader,
    507         load image and populate RenderImage for images.
    508         (WebCore::HTMLEmbedElement::updateWidget): Don't call
    509         RenderPartObject::updateWidget() for images.
    510         (WebCore::HTMLEmbedElement::imageSourceAttributeName): Added.
    511         * html/HTMLEmbedElement.h: Removed unneeded namespace and class
    512         declarations.  Extend HTMLPlugInImageElement which extends
    513         HTMLPlugInElement.
    514         (WebCore::HTMLEmbedElement::imageSourceAttributeName): Added.
    515         (WebCore::HTMLEmbedElement::serviceType): Moved to
    516         HTMLPlugInImageElement.
    517         (WebCore::HTMLEmbedElement::url): Ditto.
    518 
    519         * html/HTMLObjectElement.cpp: Cleaned up #include statements.
    520         (WebCore::HTMLObjectElement::attach): Removed local variable.
    521         (WebCore::HTMLObjectElement::isImageType): Moved to
    522         HTMLPlugInImageElement.
    523         * html/HTMLObjectElement.h: Extend HTMLPlugInImageElement which
    524         extends HTMLPlugInElement.
    525         (WebCore::HTMLObjectElement::isImageType): Moved to
    526         HTMLPlugInImageElement.
    527         (WebCore::HTMLObjectElement::serviceType): Ditto.
    528         (WebCore::HTMLObjectElement::url): Ditto.
    529 
    530         * html/HTMLPlugInImageElement.cpp: Added.
    531         (WebCore::HTMLPlugInImageElement::HTMLPlugInImageElement): Added.
    532         (WebCore::HTMLPlugInImageElement::~HTMLPlugInImageElement): Added.
    533         (WebCore::HTMLPlugInImageElement::isImageType): Moved from
    534         HTMLObjectElement.
    535         * html/HTMLPlugInImageElement.h: Added.
    536         (WebCore::HTMLPlugInImageElement::isImageType): Added from 
    537         HTMLObjectElement.
    538         (WebCore::HTMLPlugInImageElement::serviceType): Ditto.
    539         (WebCore::HTMLPlugInImageElement::url): Ditto.
    540 
    541         * rendering/HitTestResult.cpp:
    542         (WebCore::HitTestResult::absoluteImageURL): Return urlString
    543         for embed elements with images.
    544 
    545 2008-08-06  Marco Barisione  <marco.barisione (a] collabora.co.uk>
    546 
    547         Reviewed by Eric Seidel.
    548 
    549         http://bugs.webkit.org/show_bug.cgi?id=20295
    550         RegularExpression::match should not crash when a null string is passed
    551 
    552         RegularExpression::match used to pass null subject strings to
    553         jsRegExpExecute causing an ASSERT failure and then a crash.
    554         There is no need to fix also RegularExpression:search and
    555         RegularExpression::searchRev as they just call
    556         RegularExpression::match.
    557 
    558         * platform/text/RegularExpression.cpp:
    559         (WebCore::RegularExpression::match): Return -1 if the string is null.
    560 
    561 2008-08-06  Jan Michael Alonzo  <jmalonzo (a] webkit.org>
    562 
    563         Gtk build fix only
    564 
    565         * bindings/js/ScriptControllerGtk.cpp:
    566         * plugins/gtk/PluginViewGtk.cpp:
    567         (WebCore::PluginView::getValue):
    568         (WebCore::PluginView::~PluginView):
    569 
    570 2008-08-06  Ariya Hidayat  <ariya.hidayat (a] trolltech.com>
    571 
    572         Fix the Qt build due to recent ScriptController refactoring.
    573 
    574         * plugins/qt/PluginViewQt.cpp:
    575         (WebCore::PluginView::getValue):
    576         (WebCore::PluginView::~PluginView):
    577 
    578 2008-08-06  Eric Seidel  <eric (a] webkit.org>
    579 
    580         Reviewed by Cameron Zwarich.
    581 
    582         Fix warnings and errors seen on Qt bot.
    583         Including one correctness fix for ThreadingQt.
    584         According to the Qt 4.4 docs, we were always passing
    585         seconds to "wait()" when we should have been passing
    586         milliseconds.
    587         
    588         Lots of float <-> int conversion warnings.
    589 
    590         * css/CSSCursorImageValue.cpp:
    591         (WebCore::CSSCursorImageValue::updateIfSVGCursorIsUsed):
    592         * dom/Element.cpp:
    593         (WebCore::adjustForLocalZoom):
    594         (WebCore::adjustForAbsoluteZoom):
    595         (WebCore::Element::setScrollLeft):
    596         (WebCore::Element::setScrollTop):
    597         * dom/EventTargetNode.cpp:
    598         (WebCore::EventTargetNode::dispatchMouseEvent):
    599         * loader/CachedImage.cpp:
    600         (WebCore::CachedImage::imageRect):
    601         * page/DOMWindow.cpp:
    602         (WebCore::DOMWindow::innerHeight):
    603         (WebCore::DOMWindow::innerWidth):
    604         (WebCore::DOMWindow::scrollX):
    605         (WebCore::DOMWindow::scrollY):
    606         (WebCore::DOMWindow::scrollTo):
    607         * page/EventHandler.cpp:
    608         (WebCore::scrollAndAcceptEvent):
    609         * plugins/npapi.cpp:
    610         * plugins/qt/PluginViewQt.cpp:
    611         (WebCore::PluginView::getValue):
    612         (WebCore::PluginView::~PluginView):
    613         * rendering/RenderReplaced.cpp:
    614         (WebCore::RenderReplaced::intrinsicSizeChanged):
    615 
    616 2008-08-06  Eric Seidel  <eric (a] webkit.org>
    617 
    618         Build fix only, no review.
    619 
    620         Attempt to fix the Windows and Qt builds.
    621 
    622         * bindings/js/ScriptControllerWin.cpp: add runtime.h include
    623         * bindings/js/ScriptControllerQt.cpp: add QWidget include
    624         * page/win/FrameWin.cpp: remove bogus using namespace
    625         * plugins/PluginView.cpp:
    626         (WebCore::PluginView::bindingInstance): use script()
    627         * plugins/win/PluginViewWin.cpp:
    628         (WebCore::PluginView::getValue): use script()
    629         (WebCore::PluginView::~PluginView): use script()
    630 
    631   2008-08-06  Eric Seidel  <eric (a] webkit.org>
    632 
    633         Build fix only, no review.
    634 
    635         Attempt to fix the Linux and --no-svg builds.
    636 
    637         * bindings/js/ScriptController.h: wrap RetainPtr include in PLATFORM(MAC)
    638         * css/CSSComputedStyleDeclaration.cpp:
    639         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): add missing CSSProperties to switch
    640 
    641 2008-08-06  Eric Seidel  <eric (a] webkit.org>
    642 
    643         Reviewed by Cameron Zwarich.
    644 
    645         Move more methods from Frame into ScriptController
    646         https://bugs.webkit.org/show_bug.cgi?id=20294
    647         
    648         Finally finish more of the work which Darin started long ago
    649         Move a few more Frame methods into ScriptController.
    650         I also took this opportunity to clean up some of the plugin
    651         code as well, and moved some of that into ScriptController.
    652 
    653         I removed Frame::clearScriptController() and ScriptController::clear() is now clearWindowShell()
    654 
    655         No functional changes, thus no test cases.
    656 
    657         * GNUmakefile.am:
    658         * WebCore.NPAPI.exp:
    659         * WebCore.base.exp:
    660         * WebCore.pro:
    661         * WebCore.vcproj/WebCore.vcproj:
    662         * WebCore.xcodeproj/project.pbxproj:
    663         * bindings/js/ScriptController.cpp:
    664         (WebCore::ScriptController::ScriptController):
    665         (WebCore::ScriptController::~ScriptController):
    666         (WebCore::ScriptController::bindingRootObject):
    667         (WebCore::ScriptController::createRootObject):
    668         (WebCore::ScriptController::windowScriptNPObject):
    669         (WebCore::ScriptController::createScriptObjectForPluginElement): New method.
    670         (WebCore::ScriptController::clearPlatformScriptObjects):
    671         (WebCore::ScriptController::disconnectPlatformScriptObjects):
    672         (WebCore::ScriptController::cleanupScriptObjectsForPlugin):
    673         (WebCore::ScriptController::clearScriptObjects):
    674         * bindings/js/ScriptController.h:
    675         (WebCore::ScriptController::sourceURL):
    676         (WebCore::ScriptController::clearFormerWindow):
    677         * bindings/js/ScriptControllerGtk.cpp: Copied from WebCore/page/gtk/FrameGtk.cpp.
    678         (WebCore::Frame::createScriptInstanceForWidget):
    679         * bindings/js/ScriptControllerMac.mm: Added.
    680         (WebCore::ScriptController::createScriptInstanceForWidget):
    681         (WebCore::ScriptController::windowScriptObject):
    682         (WebCore::ScriptController::clearPlatformScriptObjects):
    683         (WebCore::ScriptController::disconnectPlatformScriptObjects):
    684         (WebCore::updateRenderingForBindings):
    685         (WebCore::ScriptController::initJavaJSBindings):
    686         * bindings/js/ScriptControllerQt.cpp: Copied from WebCore/page/gtk/FrameGtk.cpp.
    687         (WebCore::ScriptController::createScriptInstanceForWidget):
    688         * bindings/js/ScriptControllerWin.cpp: Copied from WebCore/svg/graphics/cg/SVGResourceMaskerCg.cpp.
    689         (WebCore::ScriptController::createScriptInstanceForWidget):
    690         * bindings/objc/DOM.mm:
    691         (-[DOMNode KJS::Bindings::]):
    692         * bindings/objc/DOMInternal.mm:
    693         (-[WebScriptObject _initializeScriptDOMNodeImp]):
    694         * bridge/jni/jni_jsobject.mm:
    695         (createRootObject):
    696         * html/HTMLAppletElement.cpp:
    697         (WebCore::HTMLAppletElement::renderWidgetForJSBindings):
    698         * html/HTMLAppletElement.h:
    699         * html/HTMLEmbedElement.cpp:
    700         (WebCore::findWidgetRenderer):
    701         (WebCore::HTMLEmbedElement::renderWidgetForJSBindings):
    702         * html/HTMLEmbedElement.h:
    703         * html/HTMLObjectElement.cpp:
    704         (WebCore::HTMLObjectElement::~HTMLObjectElement):
    705         (WebCore::HTMLObjectElement::renderWidgetForJSBindings):
    706         (WebCore::HTMLObjectElement::detach):
    707         * html/HTMLObjectElement.h:
    708         * html/HTMLPlugInElement.cpp:
    709         (WebCore::HTMLPlugInElement::~HTMLPlugInElement):
    710         (WebCore::HTMLPlugInElement::detach):
    711         (WebCore::HTMLPlugInElement::getInstance):
    712         (WebCore::HTMLPlugInElement::parseMappedAttribute):
    713         (WebCore::HTMLPlugInElement::getNPObject):
    714         * html/HTMLPlugInElement.h:
    715         * loader/FrameLoader.cpp:
    716         (WebCore::FrameLoader::clear):
    717         * page/Frame.cpp:
    718         (WebCore::Frame::Frame):
    719         (WebCore::Frame::~Frame):
    720         (WebCore::Frame::pageDestroyed):
    721         (WebCore::FramePrivate::FramePrivate):
    722         * page/Frame.h:
    723         * page/FramePrivate.h:
    724         * page/gtk/FrameGtk.cpp:
    725         * page/mac/FrameMac.mm:
    726         * page/qt/FrameQt.cpp:
    727         * page/win/FrameWin.cpp:
    728         (WebCore::computePageRectsForFrame):
    729 
    730 2008-08-05  Steve Falkenburg  <sfalken (a] apple.com>
    731 
    732         Fix last timer fix.
    733         Add null check, clear timer using InterlockedExchange.
    734         
    735         Reviewed by Alice Liu.
    736 
    737         * platform/win/SharedTimerWin.cpp:
    738         (WebCore::clearTimer):
    739         (WebCore::queueTimerProc):
    740         (WebCore::stopSharedTimer):
    741 
    742 2008-08-05  Steve Falkenburg  <sfalken (a] apple.com>
    743 
    744         Fix timer leak, flag.
    745         
    746         Timers need to be deleted explicitly, even if they fire.
    747         Also added WT_EXECUTEONLYONCE flag, since this is not a repeating timer.
    748         
    749         Reviewed by Ada Chan.
    750 
    751         * platform/win/SharedTimerWin.cpp:
    752         (WebCore::queueTimerProc):
    753 
    754 2008-08-05  Anders Carlsson  <andersca (a] apple.com>
    755 
    756         Reviewed by Darin.
    757 
    758         <rdar://problem/6037398>
    759         ER: Deallocate WebKit objects on the main thread, even if released on secondary thread
    760         
    761         Add calls to WebCoreObjCScheduleDeallocateOnMainThread in dealloc methods of objects we expose.
    762         
    763         * bindings/objc/DOMRGBColor.mm:
    764         (-[DOMRGBColor dealloc]):
    765         * bindings/objc/WebScriptObject.mm:
    766         (-[WebScriptObject dealloc]):
    767         * platform/mac/SharedBufferMac.mm:
    768         (-[WebCoreSharedBufferData dealloc]):
    769 
    770 2008-08-05  Anders Carlsson  <andersca (a] apple.com>
    771 
    772         Reviewed by Darin.
    773 
    774         Move the main thread deallocator here from WebKit.
    775         
    776         * WebCore.base.exp:
    777         * WebCore.xcodeproj/project.pbxproj:
    778         * platform/mac/WebCoreObjCExtras.c:
    779         (method_getImplementation):
    780         (deallocCallback):
    781         (WebCoreObjCScheduleDeallocateOnMainThread):
    782         * platform/mac/WebCoreObjCExtras.h:
    783 
    784 2008-08-05  Dean Jackson  <dino (a] apple.com>
    785 
    786         Parse CSS Animations, including the new
    787         -webkit-animation properties and the @-webkit-keyframes rule.
    788         Adds some new interfaces for the style rules.
    789         
    790         https://bugs.webkit.org/show_bug.cgi?id=20088
    791 
    792         Reviewed by David Hyatt.
    793 
    794         * GNUmakefile.am:
    795         * WebCore.pro:
    796         * WebCore.vcproj/WebCore.vcproj:
    797         * WebCore.xcodeproj/project.pbxproj:
    798         * WebCoreSources.bkl:
    799             build config for new files
    800         * css/tokenizer.flex:
    801         * css/CSSGrammar.y:
    802         * css/CSSParser.cpp:
    803         * css/CSSParser.h:
    804             new @-webkit-keyframes parsing
    805         * css/CSSPropertyNames.in:
    806             -webkit-animation properties
    807         * css/CSSRule.h:
    808         * css/CSSStyleSelector.cpp:
    809         * css/CSSStyleSelector.h:
    810         * css/CSSValueKeywords.in:
    811         * css/StyleBase.h:
    812         * css/WebKitCSSKeyframeRule.cpp: Added.
    813         * css/WebKitCSSKeyframeRule.h: Added.
    814         * css/WebKitCSSKeyframesRule.cpp: Added.
    815         * css/WebKitCSSKeyframesRule.h: Added.
    816 
    817 2008-08-05  Kevin McCullough  <kmccullough (a] apple.com>
    818 
    819         Reviewed by Tim.
    820 
    821         - LayoutTests fix.  Log only to the Inspector because other listeners may not want
    822         XHR notifications, including DRT and the numerous tests that don't expect them.
    823 
    824         * xml/XMLHttpRequest.cpp:
    825         (WebCore::XMLHttpRequest::didFinishLoading):
    826 
    827 2008-08-05  Timothy Hatcher  <timothy (a] apple.com>
    828 
    829         Makes DOM attribute editing start on double-click to match the styles
    830         pane. Links in attributes are now triggered with a single click again.
    831 
    832         https://bugs.webkit.org/show_bug.cgi?id=20281
    833 
    834         Reviewed by Adam Roben.
    835 
    836         * English.lproj/localizedStrings.js: Removed some strings.
    837         * page/inspector/ElementsPanel.js:
    838         (WebInspector.DOMNodeTreeElement.prototype.onattach): Call
    839         _preventFollowingLinksOnDoubleClick.
    840         (WebInspector.DOMNodeTreeElement.prototype._preventFollowingLinksOnDoubleClick):
    841         Renamed from _makeURLsActivateOnModifiedClick. Simply sets the
    842         preventFollowOnDoubleClick property on all links.
    843         (WebInspector.DOMNodeTreeElement.prototype.onselect): Removed
    844         _selectedByCurrentMouseDown.
    845         (WebInspector.DOMNodeTreeElement.prototype.onmousedown): Moved
    846         editing code to ondblclick.
    847         (WebInspector.DOMNodeTreeElement.prototype.ondblclick): Calls
    848         _startEditing. Removed URL check.
    849         (WebInspector.DOMNodeTreeElement.prototype._updateTitle): Calls
    850         _preventFollowingLinksOnDoubleClick.
    851         * page/inspector/inspector.css:
    852         (.editing): Removed the text-decoration property.
    853         (.editing, .editing *): Added the text-decoration property here
    854         so it removes underlines on child elements.
    855         * page/inspector/inspector.js:
    856         (WebInspector.documentClick): Removed the followOnAltClick code.
    857         Added support for preventFollowOnDoubleClick, which sets a timeout
    858         on the first click where future clicks will cancel it (double click).
    859         If the timeout isn't canceled, the link is followed.
    860 
    861 2008-08-05  Antti Koivisto  <antti (a] apple.com>
    862 
    863         Reviewed by Sam Weinig.
    864 
    865         <rdar://problem/6112219> Video in standalone media document flashes when navigating away
    866 
    867         When navigating out from a page, MediaPlayer was set invisible and then immediately 
    868         made visible again causing flicker in some cases.
    869         
    870         The document is not yet marked being in page cache when willSaveToCache() is called.
    871 
    872         * html/HTMLMediaElement.cpp:
    873         (WebCore::HTMLMediaElement::willSaveToCache):
    874         * rendering/RenderVideo.cpp:
    875         (WebCore::RenderVideo::updatePlayer):
    876 
    877 2008-08-05  Dan Bernstein  <mitz (a] apple.com>
    878 
    879         - fix typo
    880 
    881         * page/mac/FrameMac.mm:
    882 
    883 2008-08-05  Dan Bernstein  <mitz (a] apple.com>
    884 
    885         - try to fix the 64-bit build
    886 
    887         * page/mac/FrameMac.mm:
    888 
    889 2008-08-05  Alp Toker  <alp (a] nuanti.com>
    890 
    891         Remove leftover mark pragma from r35568 to fix compiler warning spew.
    892 
    893         * rendering/style/RenderStyle.h:
    894 
    895 2008-08-05  Kevin McCullough  <kmccullough (a] apple.com>
    896 
    897         - Added a test that checks for several edge cases (see description in
    898         test.
    899 
    900         * manual-tests/inspector/profiler-test-start-but-dont-stop-profiling.html: Added.
    901 
    902 2008-08-05  Dean Jackson  <dino (a] apple.com>
    903 
    904         Reviewed by Dave Hyatt
    905 
    906         Add support for CSS Animation properties to RenderStyle
    907         https://bugs.webkit.org/show_bug.cgi?id=20068
    908 
    909         (also fix some minor whitespace issues and remove debugging code)
    910 
    911         * css/CSSComputedStyleDeclaration.cpp:
    912         * css/CSSStyleSelector.cpp:
    913         * page/AnimationController.cpp:
    914         * rendering/style/RenderStyle.cpp:
    915         * rendering/style/RenderStyle.h:
    916 
    917 2008-08-05  Kevin McCullough  <kmccullough (a] apple.com>
    918 
    919         - Updated a manual test to be an accurate description of what it is
    920         actually testing.
    921 
    922         * manual-tests/inspector/profiler-test-stop-profiling-after-setTimeout.html:
    923 
    924 2008-08-05  Kevin McCullough  <kmccullough (a] apple.com>
    925 
    926         Reviewed by Tim.
    927 
    928         <rdar://problem/5732836> XMLHttpRequest: Inspector should show network
    929         activity/XHR in Console (17233)
    930 
    931         * xml/XMLHttpRequest.cpp:
    932         (WebCore::XMLHttpRequest::didFinishLoading):
    933 
    934 2008-08-05  Dean Jackson  <dino (a] apple.com>
    935 
    936         Fix the ChangeLog that was corrupted by r34545.
    937 
    938 2008-08-04  Timothy Hatcher  <timothy (a] apple.com>
    939 
    940         Makes the selection surround just the name or value that was
    941         double clicked when editing CSS properties. This regressed when
    942         the Inspector started using focus/blur events, since a focus on
    943         a content editable region changes the selection.
    944 
    945         https://bugs.webkit.org/show_bug.cgi?id=20280
    946 
    947         Reviewed by Adam Roben.
    948 
    949         * page/inspector/StylesSidebarPane.js:
    950         (WebInspector.StylePropertyTreeElement.prototype.startEditing):
    951         Change the selection after calling WebInspector.startEditing,
    952         since WebInspector.startEditing will set an initial selection
    953         due to a focus event.
    954 
    955 2008-08-04  Timothy Hatcher  <timothy (a] apple.com>
    956 
    957         Changes the editing behavior in the Inspector to commit changes
    958         when focus is lost, instead of reverting the changes.
    959 
    960         https://bugs.webkit.org/show_bug.cgi?id=20279
    961 
    962         Reviewed by Adam Roben.
    963 
    964         * page/inspector/inspector.js:
    965         (WebInspector.startEditing): Call editingCommitted in blurEventListener
    966         instead of editingCancelled.
    967 
    968 2008-08-04  Timothy Hatcher  <timothy (a] apple.com>
    969 
    970         Adds the ability to increment/decrement numbers in editable style
    971         properties with the arrow and page keys.
    972 
    973         Reviewed by Adam Roben.
    974 
    975         https://bugs.webkit.org/show_bug.cgi?id=20273
    976 
    977         * page/inspector/StylesSidebarPane.js:
    978         (WebInspector.StylePropertyTreeElement.prototype.updateAll):
    979         Updates all properties in the current section, or all sections
    980         depending in the argument passed.
    981         (WebInspector.StylePropertyTreeElement.prototype.toggleEnabled):
    982         Call updateAll instead of having duplicate code.
    983         (WebInspector.StylePropertyTreeElement.prototype.startEditing):
    984         Assign the list element's handleKeyEvent to editingKeyDown.
    985         (WebInspector.StylePropertyTreeElement.prototype.editingKeyDown):
    986         Handles the Up and Down arrows keys. Finds the word based on the
    987         selection and extracts the number, prefix and suffix. Increments
    988         or decrements the number based on the key and modifiers. Replaces
    989         the original word with the new value and selects it. Also applies
    990         the style so the page reflects the changes live.
    991         (WebInspector.StylePropertyTreeElement.prototype.editingEnded):
    992         Delete the handleKeyEvent and originalCSSText properties.
    993         (WebInspector.StylePropertyTreeElement.prototype.editingCancelled):
    994         If originalCSSText exists, set the cssText to that value and call
    995         updateAll. Otherwise just call updateTitle like before.
    996         (WebInspector.StylePropertyTreeElement.prototype.editingCommitted):
    997         Factored out the style applying code to applyStyleText.
    998         (WebInspector.StylePropertyTreeElement.prototype.applyStyleText):
    999         Factored out from editingCommitted. Takes an argument that specifies
   1000         if the interface should be updated when the style is applied.
   1001         * page/inspector/inspector.js:
   1002         (WebInspector.startEditing): Call the original key handler, if one
   1003         existed before interrupting key events.
   1004         * page/inspector/utilities.js:
   1005         (getStyleTextWithShorthands): Helper to return CSS text that preserves
   1006         shorthand values, since the cssText property only outputs longhands.
   1007 
   1008 2008-08-04  Timothy Hatcher  <timothy (a] apple.com>
   1009 
   1010         Factors out the TextPrompt.scanBackwards function into a generic
   1011         helper function on the Node prototype, named rangeOfWord.
   1012 
   1013         Reviewed by Adam Roben.
   1014 
   1015         * page/inspector/Console.js:
   1016         (WebInspector.Console.prototype.completions): Use rangeOfWord.
   1017         * page/inspector/TextPrompt.js:
   1018         (WebInspector.TextPrompt.prototype.complete): Ditto.
   1019         (WebInspector.TextPrompt.prototype.scanBackwards): Removed.
   1020         * page/inspector/utilities.js:
   1021         (Node.prototype.rangeOfWord): Added. Copied from TextPrompt.scanBackwards,
   1022         and added a direction argument allowing scanning forward, backward or
   1023         both directions from the offset.
   1024 
   1025 2008-08-04  Timothy Hatcher  <timothy (a] apple.com>
   1026 
   1027         Fixes a bug where the property toggle button would not be hidden
   1028         during editing.
   1029 
   1030         Reviewed by Adam Roben.
   1031 
   1032         * page/inspector/inspector.css:
   1033         (li.editing .swatch, li.editing .enabled-button):
   1034         Make the display !important, since a more specific rule for 
   1035         .enabledbutton overrides display.
   1036 
   1037 2008-08-05  Dan Bernstein  <mitz (a] apple.com>
   1038 
   1039         Reviewed by Geoffrey Garen.
   1040 
   1041         - remove redundant #imports from FrameMac.mm
   1042 
   1043         * page/mac/FrameMac.mm:
   1044 
   1045 2008-08-04  Bernhard Kruepl  <kruepl (a] dbai.tuwien.ac.at>
   1046 
   1047         Reviewed by Dave Hyatt.
   1048 
   1049         Fix for https://bugs.webkit.org/show_bug.cgi?id=19094
   1050         Corrected offsetTop for table cells by subtracting borderTopExtra
   1051 
   1052         * rendering/RenderObject.cpp:
   1053         (WebCore::RenderObject::offsetTop):
   1054 
   1055 2008-08-04  Dean Jackson  <dino (a] apple.com>
   1056 
   1057         Reviewed by Dave Hyatt.
   1058 
   1059         Improve AnimationController
   1060         https://bugs.webkit.org/show_bug.cgi?id=19938
   1061 
   1062         - Transition class is now called Animation
   1063         - new state-based AnimationController that can support CSS Animations
   1064         - add support for -webkit-transition-delay
   1065         - remove -webkit-transition-repeat-count (since it never existed officially)
   1066         - updates the -webkit-transition shorthand to reflect removing repeat count
   1067         - updates the Transition class so that properties can be shared with animations
   1068         - adds a "now" keyword for -webkit-transition-delay
   1069         - adds a new change type for style (changed by animation)
   1070         - adds new event names (although they are not dispatched yet)
   1071         - makes text stroke and text fill colors returned by RenderStyle const
   1072 
   1073         Tests:
   1074         - manual-tests/transition-left.html
   1075         - manual-tests/transition-delay.html
   1076         - manual-tests/transition-timing-functions.html
   1077 
   1078         * css/CSSComputedStyleDeclaration.cpp:
   1079         * css/CSSParser.cpp:
   1080         * css/CSSParser.h:
   1081         * css/CSSPropertyNames.in:
   1082         * css/CSSStyleSelector.cpp:
   1083         * css/CSSStyleSelector.h:
   1084         * css/CSSTimingFunctionValue.h:
   1085         * css/CSSValue.h:
   1086         * css/CSSValueKeywords.in:
   1087         * css/WebKitCSSTransformValue.cpp:
   1088         * dom/Document.cpp:
   1089         * dom/Document.h:
   1090         * dom/Element.cpp:
   1091         * dom/EventNames.h:
   1092         * dom/Node.cpp:
   1093         * dom/Node.h:
   1094         * history/CachedPage.cpp:
   1095         * page/AnimationController.cpp:
   1096         * page/AnimationController.h:
   1097         * page/Frame.cpp:
   1098         * rendering/RenderObject.cpp:
   1099         * rendering/RenderWidget.cpp:
   1100         * rendering/style/RenderStyle.cpp:
   1101         * rendering/style/RenderStyle.h:
   1102 
   1103 2008-08-04  Mike Belshe  <mike (a] belshe.com>
   1104 
   1105         Reviewed by Antti.
   1106         
   1107         Currently we create two copies of script in the HTMLTokenizer.
   1108         One copy gets passed into the javascript engine, the other gets
   1109         stored in the DOM.  Modify the HTMLParser so that it does not
   1110         chunk the string into it's normal 64K chunks for script code,
   1111         and modify the HTMLTokenizer to pass that same string into the
   1112         JS engine.  On some sites (e.g. GMail), which have hundreds of
   1113         KB of inline JS, this saves more than a MB of RAM to run the page.
   1114         (Strings use 16bit strings, so 600KB of JS code == 1.2MB of memory)
   1115 
   1116         * html\HTMLParser.cpp
   1117         * html\HTMLTokenizer.cpp
   1118 
   1119 2008-08-04  Sam Weinig  <sam (a] webkit.org>
   1120 
   1121         Reviewed by Mark Rowe.
   1122 
   1123         Remove extra braces left in from JSLock removal.
   1124 
   1125         * xml/XMLHttpRequest.cpp:
   1126         (WebCore::XMLHttpRequest::dropProtection):
   1127 
   1128 2008-08-02  Sam Weinig  <sam (a] webkit.org>
   1129 
   1130         Reviewed by Dan Bernstein.
   1131 
   1132         Implement the Access-control for Cross Site requests
   1133         preflight cache.
   1134 
   1135         Tests: http/tests/xmlhttprequest/access-control-basic-allow-preflight-cache-invalidation-by-header.html
   1136                http/tests/xmlhttprequest/access-control-basic-allow-preflight-cache-invalidation-by-method.html
   1137                http/tests/xmlhttprequest/access-control-basic-allow-preflight-cache-timeout.html
   1138                http/tests/xmlhttprequest/access-control-basic-allow-preflight-cache.html
   1139 
   1140         * WebCore.vcproj/WebCore.vcproj:
   1141         * WebCore.xcodeproj/project.pbxproj:
   1142         * platform/KURL.h:
   1143         (WTF::):
   1144         * platform/KURLHash.h: Added.
   1145         (WebCore::KURLHash::hash):
   1146         (WebCore::KURLHash::equal):
   1147         (WTF::):
   1148         * xml/XMLHttpRequest.cpp:
   1149         (WebCore::PreflightResultCacheItem::PreflightResultCacheItem):
   1150         (WebCore::preflightResultCache):
   1151         (WebCore::appendPreflightResultCacheEntry):
   1152         (WebCore::canSkipPrelight):
   1153         (WebCore::XMLHttpRequest::makeCrossSiteAccessRequestWithPreflight):
   1154         (WebCore::parseAccessControlAllowList):
   1155         (WebCore::parseAccessControlMaxAge):
   1156         (WebCore::XMLHttpRequest::didReceiveResponsePreflight):
   1157 
   1158 2008-08-04  Eric Seidel  <eric (a] webkit.org>
   1159 
   1160         Reviewed by Adam Roben.
   1161 
   1162         Fix warning seen in MSVC converting ints to floats.
   1163 
   1164         * rendering/Length.h:
   1165         (WebCore::Length::calcFloatValue):
   1166 
   1167 2008-08-04  Eric Seidel  <eric (a] webkit.org>
   1168 
   1169         Reviewed by hyatt.
   1170 
   1171         Clean up Gradient constructors, make sure all members are initialized.
   1172 
   1173         * platform/graphics/Gradient.cpp:
   1174         (WebCore::Gradient::Gradient):
   1175 
   1176 2008-08-02  Maxime Britto  <britto (a] apple.com>
   1177 
   1178         Reviewed by Eric Seidel.
   1179 
   1180         <rdar://problem/6118969>
   1181         https://bugs.webkit.org/show_bug.cgi?id=19971 
   1182         Modifiy the cursor interactively when on panning mode (middle click auto scroll)
   1183         When the panning is in progress the cursor is an arrow representing the direction of the current scroll
   1184 
   1185         * page/EventHandler.cpp:
   1186         (WebCore::EventHandler::autoscrollTimerFired): Before each scroll we actualize the cursor to match the current direction
   1187         (WebCore::EventHandler::setPanScrollCursor): determines the direction of the upcoming scroll.
   1188         (WebCore::EventHandler::handleMouseMoveEvent):
   1189         * page/EventHandler.h: 
   1190         * platform/Cursor.h: Add propotypes for the new cursor functions
   1191         * platform/gtk/CursorGtk.cpp: to avoid build break
   1192         (WebCore::middlePanningCursor):
   1193         (WebCore::eastPanningCursor):
   1194         (WebCore::northPanningCursor):
   1195         (WebCore::northEastPanningCursor):
   1196         (WebCore::northWestPanningCursor):
   1197         (WebCore::southPanningCursor):
   1198         (WebCore::southEastPanningCursor):
   1199         (WebCore::southWestPanningCursor):
   1200         (WebCore::westPanningCursor):
   1201         * platform/mac/CursorMac.mm: to avoid build break
   1202         (WebCore::middlePanningCursor):
   1203         (WebCore::eastPanningCursor):
   1204         (WebCore::northPanningCursor):
   1205         (WebCore::northEastPanningCursor):
   1206         (WebCore::northWestPanningCursor):
   1207         (WebCore::southPanningCursor):
   1208         (WebCore::southEastPanningCursor):
   1209         (WebCore::southWestPanningCursor):
   1210         (WebCore::westPanningCursor):
   1211         * platform/qt/CursorQt.cpp: to avoid build break
   1212         (WebCore::middlePanningCursor):
   1213         (WebCore::eastPanningCursor):
   1214         (WebCore::northPanningCursor):
   1215         (WebCore::northEastPanningCursor):
   1216         (WebCore::northWestPanningCursor):
   1217         (WebCore::southPanningCursor):
   1218         (WebCore::southEastPanningCursor):
   1219         (WebCore::southWestPanningCursor):
   1220         (WebCore::westPanningCursor):
   1221         * platform/win/CursorWin.cpp: Add specific icons for the panning as windows resizing icons are both sides arrows
   1222         (WebCore::middlePanningCursor):
   1223         (WebCore::eastPanningCursor):
   1224         (WebCore::northPanningCursor):
   1225         (WebCore::northEastPanningCursor):
   1226         (WebCore::northWestPanningCursor):
   1227         (WebCore::southPanningCursor):
   1228         (WebCore::southEastPanningCursor):
   1229         (WebCore::southWestPanningCursor):
   1230         (WebCore::westPanningCursor):
   1231         * platform/wx/CursorWx.cpp: to avoid build break
   1232         (WebCore::middlePanningCursor):
   1233         (WebCore::eastPanningCursor):
   1234         (WebCore::northPanningCursor):
   1235         (WebCore::northEastPanningCursor):
   1236         (WebCore::northWestPanningCursor):
   1237         (WebCore::southPanningCursor):
   1238         (WebCore::southEastPanningCursor):
   1239         (WebCore::southWestPanningCursor):
   1240         (WebCore::westPanningCursor):
   1241 
   1242 2008-08-02  Kevin Ollivier  <kevino (a] theolliviers.com>
   1243 
   1244         Move to using constants in accordance with discussions about wx renderer commit.
   1245 
   1246         * platform/wx/RenderThemeWx.cpp:
   1247         (WebCore::RenderThemeWx::minimumMenuListSize):
   1248         (WebCore::RenderThemeWx::popupInternalPaddingLeft):
   1249         (WebCore::RenderThemeWx::popupInternalPaddingRight):
   1250         (WebCore::RenderThemeWx::popupInternalPaddingTop):
   1251         (WebCore::RenderThemeWx::popupInternalPaddingBottom):
   1252 
   1253 2008-08-02  Wouter Bolsterlee  <wbolster (a] svn.gnome.org>
   1254 
   1255         Reviewed by Eric Seidel.
   1256 
   1257         * plugins/gtk/gtk2xtbin.h:
   1258 
   1259         https://bugs.webkit.org/show_bug.cgi?id=20034
   1260         Fix malformed Vim modeline.
   1261 
   1262 2008-08-01  Dan Bernstein  <mitz (a] apple.com>
   1263 
   1264         Reviewed by Dave Hyatt.
   1265 
   1266         - tweak a comment
   1267 
   1268         * platform/graphics/cg/ImageCG.cpp:
   1269         (WebCore::BitmapImage::draw):
   1270 
   1271 2008-08-01  Jan Michael Alonzo  <jmalonzo (a] webkit.org>
   1272 
   1273         * ChangeLog: Fix date of previous commit (r35520)
   1274 
   1275 2008-08-01  Marco Barisione  <marco.barisione (a] collabora.co.uk>
   1276 
   1277         Reviewed by Eric Seidel.
   1278 
   1279         https://bugs.webkit.org/show_bug.cgi?id=19603
   1280         [SOUP] segfault when closing a file using gio
   1281 
   1282         Call client->didFinishLoading() only after releasing all the gio
   1283         resources.
   1284 
   1285         * platform/network/soup/ResourceHandleSoup.cpp:
   1286         (WebCore::closeCallback):
   1287         (WebCore::readCallback):
   1288 
   1289 2008-08-01  Anders Carlsson  <andersca (a] apple.com>
   1290 
   1291         Reviewed by Jon.
   1292 
   1293         <rdar://problem/6120206>
   1294         Crash when plug-in queries for NPPVpluginWantsAllNetworkStreams.
   1295         
   1296         Pass in a pointer to a void* to make sure that plug-ins don't overwrite the stack.
   1297         
   1298         * plugins/PluginStream.cpp:
   1299         (WebCore::PluginStream::wantsAllStreams):
   1300 
   1301 2008-08-01  Robin Dunn  <robin (a] alldunn.com>
   1302 
   1303         Reviewed by Eric Seidel.
   1304 
   1305         Native rendering implementations for form elements in the wx port.
   1306         
   1307         https://bugs.webkit.org/show_bug.cgi?id=19069
   1308 
   1309         * platform/wx/RenderThemeWx.cpp:
   1310         (WebCore::RenderThemeWx::adjustRepaintRect):
   1311         (WebCore::RenderThemeWx::paintButton):
   1312         (WebCore::RenderThemeWx::paintTextField):
   1313         (WebCore::RenderThemeWx::minimumMenuListSize):
   1314         (WebCore::RenderThemeWx::adjustMenuListStyle):
   1315         (WebCore::RenderThemeWx::paintMenuList):
   1316         (WebCore::RenderThemeWx::adjustMenuListButtonStyle):
   1317         (WebCore::RenderThemeWx::paintMenuListButton):
   1318         (WebCore::RenderThemeWx::popupInternalPaddingLeft):
   1319         (WebCore::RenderThemeWx::popupInternalPaddingRight):
   1320         (WebCore::RenderThemeWx::popupInternalPaddingTop):
   1321         (WebCore::RenderThemeWx::popupInternalPaddingBottom):
   1322 
   1323 2008-07-30  David Hyatt  <hyatt (a] apple.com>
   1324 
   1325         Improvements to selection drawing.
   1326 
   1327         Clip out floating and positioned objects when drawing selection so
   1328         that there is no "double painting" of selection when the selection spans both the space behind the positioned/floating
   1329         object and the positioned/floating object itself.  Improves most Web pages.
   1330 
   1331         Do not paint left/right selection gaps if the object's edge is already outside the boundary (at a negative
   1332         position).  Significantly improves the look of selections on digg.com, since it uses giant negative text-indent.
   1333 
   1334         Reviewed by Dan
   1335 
   1336         Covered by existing selection pixel tests.
   1337 
   1338         * rendering/RenderBlock.cpp:
   1339         (WebCore::RenderBlock::isSelectionRoot):
   1340         (WebCore::RenderBlock::paintSelection):
   1341         (WebCore::clipOutPositionedObjects):
   1342         (WebCore::RenderBlock::fillSelectionGaps):
   1343         (WebCore::RenderBlock::fillLeftSelectionGap):
   1344         (WebCore::RenderBlock::fillRightSelectionGap):
   1345 
   1346 2008-08-01  Timothy Hatcher  <timothy (a] apple.com>
   1347 
   1348         Adds the ability to disable individual properties of a CSS rule.
   1349         When hovering over a rule, checkboxes show up to the right of all
   1350         properties and toggling a checkbox disables/enables the property.
   1351         Behind the scenes the property is removed from the rule when disabled,
   1352         but still remains in the list and in the computed style. When disabled
   1353         the property has a line through it, and is faded in computed style.
   1354 
   1355         <rdar://problem/5712828> Support disabling individual CSS properties
   1356         https://bugs.webkit.org/show_bug.cgi?id=14377
   1357 
   1358         Reviewed by Adam Roben.
   1359 
   1360         * page/inspector/StylesSidebarPane.js:
   1361         (WebInspector.StylesSidebarPane.prototype.update): Include the
   1362         inline style when it also has disabled properties. Call
   1363         deleteDisabledProperty for any property that is in the style,
   1364         since it might have been added back by the page. Remember all
   1365         disabled properties so they show up in computed style.
   1366         (deleteDisabledProperty): Helper function to delete all the
   1367         right properties that track disabled properties.
   1368         (WebInspector.StylePropertiesSection): Add the computed-style
   1369         class when  the section is Computed Style.
   1370         (WebInspector.StylePropertiesSection.prototype.onpopulate):
   1371         Include disabled properties.
   1372         (WebInspector.StylePropertyTreeElement): Added a disabled argument.
   1373         (WebInspector.StylePropertyTreeElement.prototype.get/set disabled):
   1374         Sets the _disabled property and calls updateState.
   1375         (WebInspector.StylePropertyTreeElement.prototype.get priority):
   1376         Return the priority of enabled or disabled properties.
   1377         (WebInspector.StylePropertyTreeElement.prototype.get value):
   1378         Return the value of enabled or disabled properties.
   1379         (WebInspector.StylePropertyTreeElement.prototype.updateTitle): Use the
   1380         priority and value getter. Append the checkbox for root elements of
   1381         an editable section.
   1382         (WebInspector.StylePropertyTreeElement.prototype.toggleEnabled):
   1383         Add or remove properties from the rule and remember removed ones
   1384         by adding three objects to the style: __disabledProperties,
   1385         __disabledPropertyValues and __disabledPropertyPriorities.
   1386         The __disabledProperties object will include all longhand
   1387         properties of a shorthand for use by Computed Style.
   1388         (WebInspector.StylePropertyTreeElement.prototype.updateState):
   1389         Use the value getter. Update the disabled state.
   1390         * page/inspector/inspector.css:
   1391         * page/inspector/utilities.js:
   1392         (Object.hasProperties): Added. Helper to test if an object
   1393         has any properties.
   1394 
   1395 2008-07-31  Anders Carlsson  <andersca (a] apple.com>
   1396 
   1397         Reviewed by Darin.
   1398 
   1399         <rdar://problem/5949410>
   1400         Add the ability to transfer a given application cache to a new database.
   1401         
   1402         * WebCore.base.exp:
   1403         Export ApplicationCacheStorage::storeCopyOfCache.
   1404         
   1405         * loader/appcache/ApplicationCache.cpp:
   1406         (WebCore::ApplicationCache::~ApplicationCache):
   1407         Don't call cacheDestroyed for our special "copy" groups.
   1408         
   1409         * loader/appcache/ApplicationCacheGroup.cpp:
   1410         (WebCore::ApplicationCacheGroup::ApplicationCacheGroup):
   1411         (WebCore::ApplicationCacheGroup::~ApplicationCacheGroup):
   1412         Add a "copy" flag to the ApplicationCacheGroup constructor. A "copied" group is special
   1413         and can only be stored to disk.
   1414         
   1415         * loader/appcache/ApplicationCacheGroup.h:
   1416         (WebCore::ApplicationCacheGroup::isCopy):
   1417         New getter.
   1418         
   1419         * loader/appcache/ApplicationCacheStorage.cpp:
   1420         (WebCore::ApplicationCacheStorage::store):
   1421         Make sure to set the storageID when storing an application resource.
   1422         
   1423         (WebCore::ApplicationCacheStorage::storeNewestCache):
   1424         Change this to return true/false depending on whether storing the cache succeeded or not.
   1425         
   1426         (WebCore::ApplicationCacheStorage::storeCopyOfCache):
   1427         New method which stores a given cache in a new storage (database file).
   1428         
   1429         * loader/appcache/ApplicationCacheStorage.h:
   1430         Add new methods.
   1431 
   1432 2008-07-31  John Sullivan  <sullivan (a] apple.com>
   1433 
   1434         WebCore part of <rdar://problem/6116650> Text-only zoom setting should be stored in WebKit prefs
   1435 
   1436         Reviewed by Hyatt
   1437 
   1438         * WebCore.base.exp:
   1439         export symbol for WebCoreSettings::setZoomsTextOnly()
   1440         
   1441         * page/Frame.cpp:
   1442         (WebCore::Frame::isZoomFactorTextOnly):
   1443         use value from Settings instead of data member
   1444         (WebCore::Frame::shouldApplyTextZoom):
   1445         call isZoomFactorTextOnly() to get value instead of accessing now-removed data member
   1446         (WebCore::Frame::shouldApplyPageZoom):
   1447         ditto
   1448         (WebCore::Frame::setZoomFactor):
   1449         set value into Settings rather than into data member
   1450         (WebCore::FramePrivate::FramePrivate):
   1451         don't set initial value of now-removed data member; this is managed by Settings now
   1452         
   1453         * page/FramePrivate.h:
   1454         removed m_zoomFactorIsTextOnly
   1455         
   1456         * page/Settings.cpp:
   1457         (WebCore::Settings::setZoomsTextOnly):
   1458         new function, sets values and reapplies styles in all frames
   1459         
   1460         * page/Settings.h:
   1461         (WebCore::Settings::zoomsTextOnly):
   1462         new function, returns value of new data member
   1463 
   1464 2008-07-31  Simon Fraser  <simon.fraser (a] apple.com>
   1465 
   1466         Reviewed by Dave Hyatt
   1467 
   1468         Null-check parent clip rects, because they may not have been
   1469         set up yet.
   1470         https://bugs.webkit.org/show_bug.cgi?id=20243
   1471 
   1472         * rendering/RenderLayer.cpp:
   1473         (WebCore::RenderLayer::calculateClipRects):
   1474 
   1475 2008-07-31  Dan Bernstein  <mitz (a] apple.com>
   1476 
   1477         Reviewed by Dave Hyatt.
   1478 
   1479         - fix <rdar://problem/6058958> REGRESSION (r34210): Seams are visible in border-image
   1480 
   1481         * platform/graphics/cg/ImageCG.cpp:
   1482         (WebCore::BitmapImage::draw): To work around a Core Graphics
   1483         interpolation issue, reverted to using a temporary subimage for drawing
   1484         a portion of the image with scaling and high-quality interpolation in
   1485         effect.
   1486 
   1487 2008-07-31  chris fleizach  <cfleizach (a] apple.com>
   1488 
   1489         Reviewed by Alice Liu
   1490 
   1491         <rdar://problem/3563671> VO doesn't highlight characters when interacting when static text in web areas
   1492 
   1493         Need to expose the AXBoundsForRange parameter which allows an AX client to get the visible bounds
   1494         for individual characters on a webpage.
   1495 
   1496         Test: accessibility/bounds-for-range.html
   1497 
   1498         * ChangeLog:
   1499         * page/AccessibilityRenderObject.cpp:
   1500         (WebCore::AccessibilityRenderObject::visiblePositionForIndex):
   1501         * page/mac/AccessibilityObjectWrapper.mm:
   1502         (-[AccessibilityObjectWrapper accessibilityParameterizedAttributeNames]):
   1503         (-[AccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):
   1504 
   1505 2008-07-31  Kevin Ollivier <kevino (a] theolliviers.com>
   1506 
   1507         Second attempt at Windows/wx build fix. Instead of avoiding inclusion of windows.h,
   1508         use defines, etc. to avoid conflicts in each affected file.
   1509 
   1510         * config.h:
   1511         * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
   1512         * platform/wx/PopupMenuWx.cpp:
   1513 
   1514 2008-07-31  Erik Bunce  <elbunce (a] thehive.com>
   1515 
   1516         Reviewed by Simon.
   1517 
   1518         https://bugs.webkit.org/show_bug.cgi?id=20224
   1519 
   1520         Include the Writing Direction sub-menu in the context menu of all
   1521         platforms but GTK. This fixes a regression introduced by revision
   1522         34426.
   1523 
   1524         * platform/ContextMenu.cpp:
   1525         (WebCore::ContextMenu::populate):
   1526 
   1527 2008-07-31  Brady Eidson  <beidson (a] apple.com>
   1528 
   1529         Reviewed by Adam and Hyatt
   1530 
   1531         Fix for <rdar://problem/6099748>
   1532 
   1533         Adds a "don't enforce CSS mime type in strict mode" quirk for iWeb 2
   1534 
   1535         * WebCore.base.exp:
   1536 
   1537         * html/HTMLLinkElement.cpp:
   1538         (WebCore::HTMLLinkElement::setCSSStyleSheet):
   1539 
   1540         * loader/CachedCSSStyleSheet.cpp:
   1541         (WebCore::CachedCSSStyleSheet::canUseSheet):
   1542         * loader/CachedCSSStyleSheet.h:
   1543         (WebCore::CachedCSSStyleSheet::sheetText): 
   1544         * page/Settings.cpp:
   1545 
   1546         (WebCore::Settings::Settings):
   1547         (WebCore::Settings::setEnforceCSSMIMETypeInStrictMode):
   1548         * page/Settings.h:
   1549         (WebCore::Settings::enforceCSSMIMETypeInStrictMode):
   1550 
   1551 2008-07-31  Erik Bunce  <elbunce (a] thehive.com>
   1552 
   1553         Reviewed by Simon.
   1554 
   1555         Added the ability to get SQLite headers and source from the location 
   1556         specified via the SQLITE3SRCDIR environtment variable.
   1557 
   1558         * WebCore.pro:
   1559 
   1560 2008-07-31  Alexey Proskuryakov  <ap (a] webkit.org>
   1561 
   1562         Rubber-stamped by Maciej.
   1563 
   1564         Eliminate JSLock (it was already disabled, removing the stub implementaion and all
   1565         call sites now).
   1566 
   1567         * ForwardingHeaders/kjs/JSLock.h: Removed.
   1568         * WebCore.vcproj/WebCore.vcproj:
   1569         * bindings/js/GCController.cpp:
   1570         (WebCore::collect):
   1571         (WebCore::GCController::gcTimerFired):
   1572         (WebCore::GCController::garbageCollectNow):
   1573         * bindings/js/JSCustomSQLStatementCallback.cpp:
   1574         (WebCore::JSCustomSQLStatementCallback::handleEvent):
   1575         * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
   1576         (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
   1577         * bindings/js/JSCustomSQLTransactionCallback.cpp:
   1578         (WebCore::JSCustomSQLTransactionCallback::handleEvent):
   1579         * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
   1580         (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent):
   1581         * bindings/js/JSCustomVoidCallback.cpp:
   1582         (WebCore::JSCustomVoidCallback::handleEvent):
   1583         * bindings/js/JSCustomXPathNSResolver.cpp:
   1584         (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
   1585         * bindings/js/JSDOMWindowBase.cpp:
   1586         (WebCore::DOMWindowTimer::~DOMWindowTimer):
   1587         (WebCore::JSDOMWindowBase::clear):
   1588         (WebCore::JSDOMWindowBase::timerFired):
   1589         * bindings/js/JSEventCustom.cpp:
   1590         (WebCore::toJS):
   1591         * bindings/js/JSEventListener.cpp:
   1592         (WebCore::JSAbstractEventListener::handleEvent):
   1593         (WebCore::JSLazyEventListener::parseCode):
   1594         * bindings/js/JSNSResolver.cpp:
   1595         (WebCore::JSNSResolver::lookupNamespaceURI):
   1596         * bindings/js/JSNodeFilterCondition.cpp:
   1597         (WebCore::JSNodeFilterCondition::acceptNode):
   1598         * bindings/js/ScheduledAction.cpp:
   1599         (WebCore::ScheduledAction::execute):
   1600         * bindings/js/ScriptController.cpp:
   1601         (WebCore::ScriptController::evaluate):
   1602         (WebCore::ScriptController::clear):
   1603         (WebCore::ScriptController::createHTMLEventHandler):
   1604         (WebCore::ScriptController::createSVGEventHandler):
   1605         (WebCore::ScriptController::initScript):
   1606         (WebCore::ScriptController::updateDocument):
   1607         * bindings/objc/WebScriptObject.mm:
   1608         (_didExecute):
   1609         (-[WebScriptObject callWebScriptMethod:withArguments:]):
   1610         (-[WebScriptObject evaluateWebScript:]):
   1611         (-[WebScriptObject setValue:forKey:]):
   1612         (-[WebScriptObject valueForKey:]):
   1613         (-[WebScriptObject removeWebScriptKey:]):
   1614         (-[WebScriptObject stringRepresentation]):
   1615         (-[WebScriptObject webScriptValueAtIndex:]):
   1616         (-[WebScriptObject setWebScriptValueAtIndex:value:]):
   1617         (+[WebScriptObject _convertValueToObjcValue:originRootObject:rootObject:]):
   1618         * bridge/NP_jsobject.cpp:
   1619         (_NPN_InvokeDefault):
   1620         (_NPN_Invoke):
   1621         (_NPN_Evaluate):
   1622         (_NPN_GetProperty):
   1623         (_NPN_SetProperty):
   1624         (_NPN_RemoveProperty):
   1625         (_NPN_HasProperty):
   1626         (_NPN_HasMethod):
   1627         (_NPN_Enumerate):
   1628         * bridge/c/c_class.cpp:
   1629         (KJS::Bindings::CClass::~CClass):
   1630         (KJS::Bindings::CClass::methodsNamed):
   1631         (KJS::Bindings::CClass::fieldNamed):
   1632         * bridge/c/c_instance.cpp:
   1633         (KJS::Bindings::CInstance::invokeMethod):
   1634         (KJS::Bindings::CInstance::invokeDefaultMethod):
   1635         (KJS::Bindings::CInstance::getPropertyNames):
   1636         * bridge/c/c_runtime.cpp:
   1637         (KJS::Bindings::CField::valueFromInstance):
   1638         (KJS::Bindings::CField::setValueToInstance):
   1639         * bridge/c/c_utility.cpp:
   1640         (KJS::Bindings::convertValueToNPVariant):
   1641         (KJS::Bindings::convertNPVariantToValue):
   1642         * bridge/jni/jni_class.cpp:
   1643         (JavaClass::JavaClass):
   1644         (JavaClass::~JavaClass):
   1645         * bridge/jni/jni_instance.cpp:
   1646         (JavaInstance::stringValue):
   1647         * bridge/jni/jni_jsobject.mm:
   1648         (JavaJSObject::call):
   1649         (JavaJSObject::eval):
   1650         (JavaJSObject::getMember):
   1651         (JavaJSObject::setMember):
   1652         (JavaJSObject::removeMember):
   1653         (JavaJSObject::getSlot):
   1654         (JavaJSObject::setSlot):
   1655         (JavaJSObject::toString):
   1656         (JavaJSObject::convertValueToJObject):
   1657         (JavaJSObject::convertJObjectToValue):
   1658         * bridge/jni/jni_objc.mm:
   1659         (KJS::Bindings::dispatchJNICall):
   1660         * bridge/jni/jni_runtime.cpp:
   1661         (appendClassName):
   1662         (JavaMethod::signature):
   1663         * bridge/jni/jni_runtime.h:
   1664         (KJS::Bindings::JavaString::JavaString):
   1665         (KJS::Bindings::JavaString::_commonInit):
   1666         (KJS::Bindings::JavaString::~JavaString):
   1667         (KJS::Bindings::JavaString::UTF8String):
   1668         * bridge/jni/jni_utility.cpp:
   1669         (KJS::Bindings::convertValueToJValue):
   1670         * bridge/npruntime.cpp:
   1671         (_NPN_GetStringIdentifier):
   1672         * bridge/objc/objc_instance.mm:
   1673         (ObjcInstance::moveGlobalExceptionToExecState):
   1674         (ObjcInstance::invokeMethod):
   1675         (ObjcInstance::invokeDefaultMethod):
   1676         (ObjcInstance::setValueOfUndefinedField):
   1677         (ObjcInstance::getValueOfUndefinedField):
   1678         * bridge/objc/objc_runtime.mm:
   1679         (ObjcField::valueFromInstance):
   1680         (ObjcField::setValueToInstance):
   1681         * bridge/objc/objc_utility.mm:
   1682         (KJS::Bindings::convertValueToObjcValue):
   1683         (KJS::Bindings::convertNSStringToString):
   1684         (KJS::Bindings::convertObjcValueToValue):
   1685         * bridge/qt/qt_instance.cpp:
   1686         (KJS::Bindings::QtRuntimeObjectImp::removeFromCache):
   1687         (KJS::Bindings::QtInstance::~QtInstance):
   1688         (KJS::Bindings::QtInstance::getQtInstance):
   1689         (KJS::Bindings::QtInstance::getRuntimeObject):
   1690         * bridge/qt/qt_runtime.cpp:
   1691         (KJS::Bindings::convertValueToQVariant):
   1692         (KJS::Bindings::convertQVariantToValue):
   1693         (KJS::Bindings::QtRuntimeMetaMethod::call):
   1694         (KJS::Bindings::QtRuntimeConnectionMethod::call):
   1695         (KJS::Bindings::QtConnectionObject::QtConnectionObject):
   1696         (KJS::Bindings::QtConnectionObject::execute):
   1697         * bridge/runtime.cpp:
   1698         (KJS::Bindings::Instance::createRuntimeObject):
   1699         * bridge/testbindings.cpp:
   1700         (main):
   1701         * bridge/testbindings.mm:
   1702         (main):
   1703         * bridge/testqtbindings.cpp:
   1704         (main):
   1705         * dom/Document.cpp:
   1706         (WebCore::Document::~Document):
   1707         * dom/Node.cpp:
   1708         (WebCore::Node::setDocument):
   1709         * history/CachedPage.cpp:
   1710         (WebCore::CachedPage::CachedPage):
   1711         (WebCore::CachedPage::restore):
   1712         (WebCore::CachedPage::clear):
   1713         * html/HTMLPlugInElement.cpp:
   1714         (WebCore::HTMLPlugInElement::createNPObject):
   1715         * loader/FrameLoader.cpp:
   1716         (WebCore::getString):
   1717         * page/Frame.cpp:
   1718         (WebCore::Frame::bindingRootObject):
   1719         (WebCore::Frame::windowScriptNPObject):
   1720         (WebCore::Frame::clearScriptObjects):
   1721         * page/InspectorController.cpp:
   1722         (WebCore::jsStringRef):
   1723         (WebCore::ConsoleMessage::ConsoleMessage):
   1724         (WebCore::XMLHttpRequestResource::XMLHttpRequestResource):
   1725         (WebCore::XMLHttpRequestResource::~XMLHttpRequestResource):
   1726         (WebCore::getResourceDocumentNode):
   1727         (WebCore::search):
   1728         (WebCore::inspectedWindow):
   1729         (WebCore::wrapCallback):
   1730         (WebCore::currentCallFrame):
   1731         (WebCore::profiles):
   1732         (WebCore::InspectorController::focusNode):
   1733         (WebCore::InspectorController::inspectedWindowScriptObjectCleared):
   1734         (WebCore::InspectorController::addDatabaseScriptResource):
   1735         (WebCore::InspectorController::addScriptProfile):
   1736         * page/JavaScriptCallFrame.cpp:
   1737         (WebCore::JavaScriptCallFrame::evaluate):
   1738         * page/JavaScriptProfileNode.cpp:
   1739         (WebCore::getTotalTime):
   1740         (WebCore::getSelfTime):
   1741         (WebCore::getTotalPercent):
   1742         (WebCore::getSelfPercent):
   1743         (WebCore::getNumberOfCalls):
   1744         (WebCore::getChildren):
   1745         (WebCore::getVisible):
   1746         * page/Page.cpp:
   1747         * page/mac/FrameMac.mm:
   1748         (WebCore::Frame::windowScriptObject):
   1749         * page/qt/FrameQt.cpp:
   1750         * plugins/PluginView.cpp:
   1751         (WebCore::PluginView::start):
   1752         (WebCore::getString):
   1753         (WebCore::PluginView::performRequest):
   1754         (WebCore::PluginView::bindingInstance):
   1755         * plugins/gtk/PluginViewGtk.cpp:
   1756         (WebCore::PluginView::paint):
   1757         (WebCore::PluginView::handleKeyboardEvent):
   1758         (WebCore::PluginView::handleMouseEvent):
   1759         (WebCore::PluginView::setNPWindowRect):
   1760         (WebCore::PluginView::stop):
   1761         (WebCore::PluginView::init):
   1762         * plugins/qt/PluginViewQt.cpp:
   1763         (WebCore::PluginView::setNPWindowRect):
   1764         (WebCore::PluginView::stop):
   1765         (WebCore::PluginView::init):
   1766         * plugins/win/PluginViewWin.cpp:
   1767         (WebCore::PluginView::dispatchNPEvent):
   1768         (WebCore::PluginView::handleKeyboardEvent):
   1769         (WebCore::PluginView::handleMouseEvent):
   1770         (WebCore::PluginView::setNPWindowRect):
   1771         (WebCore::PluginView::stop):
   1772         * xml/XMLHttpRequest.cpp:
   1773         (WebCore::XMLHttpRequest::clearResponse):
   1774         (WebCore::XMLHttpRequest::didFinishLoading):
   1775         (WebCore::XMLHttpRequest::didReceiveData):
   1776 
   1777 2008-07-30  Timothy Hatcher  <timothy (a] apple.com>
   1778 
   1779         Fix various minor bugs with style editing in the Inspector.
   1780 
   1781         - Restores the scroll position to 0,0 when finished editing a
   1782         string that was longer than the editing input area.
   1783 
   1784         - Adjusts the margin of the list item to ensure the text does
   1785         not shift when entering and exiting editing mode.
   1786 
   1787         - Reliably remembers if a shorthand has children when the
   1788         children haven't been populated yet.
   1789 
   1790         - Reliably remembers if a shorthand was expanded, and expands
   1791         if needed after editing finishes.
   1792 
   1793         - Hides color swatches when editing.
   1794 
   1795         https://bugs.webkit.org/show_bug.cgi?id=20238
   1796 
   1797         Reviewed by Adam Roben.
   1798 
   1799         * page/inspector/StylesSidebarPane.js:
   1800         (WebInspector.StylePropertyTreeElement.prototype.startEditing):
   1801         Store the expanded state and children state in wasExpanded and
   1802         reallyHasChildren properties.
   1803         (WebInspector.StylePropertyTreeElement.prototype.editingEnded):
   1804         Removed the wasExpanded argument and use the reallyHasChildren and
   1805         wasExpanded properties to restore state. Deletes the state properties.
   1806         (WebInspector.StylePropertyTreeElement.prototype.editingCancelled):
   1807         Removed the wasExpanded argument.
   1808         (WebInspector.StylePropertyTreeElement.prototype.editingCommitted):
   1809         Removed the wasExpanded argument.
   1810         * page/inspector/inspector.css: Tweak the margin and hides the color
   1811         swatches. ALso removes a rule that was not needed.
   1812         * page/inspector/inspector.js:
   1813         (WebInspector.startEditing): Restore the scrollLeft and scrollTop
   1814         to zero when editing finishes.
   1815 
   1816 2008-07-30  Alice Liu  <alice.liu (a] apple.com>
   1817 
   1818         Implement userIdleTime() for Windows, and place a band-aid over other
   1819         platform implementations of userIdleTime().  This will fix the issue
   1820         of indefinitely postposing releasing pages from the PageCache
   1821         on non-Mac platforms, causing us to hang onto just about everything 
   1822         else about a web page.
   1823         
   1824         Reviewed by Sam Weinig.
   1825 
   1826         * platform/gtk/TemporaryLinkStubs.cpp:
   1827         * platform/wx/TemporaryLinkStubs.cpp:
   1828         * platform/qt/TemporaryLinkStubs.cpp:
   1829         (WebCore::userIdleTime): set to FLT_MAX
   1830 
   1831         * platform/win/SystemTimeWin.cpp:
   1832         (WebCore::userIdleTime): implemented
   1833 
   1834 2008-07-30  Beth Dakin  <bdakin (a] apple.com>
   1835 
   1836         Reviewed by Anders Carlsson.
   1837 
   1838         Fixes <rdar://problem/6041390>
   1839 
   1840         Adds the ability to have a frame that is "disconnected" from the 
   1841         main frame from the perspective of top and parent in 
   1842         Javascript.
   1843 
   1844         * WebCore.base.exp:
   1845         * page/DOMWindow.cpp:
   1846         (WebCore::DOMWindow::parent):
   1847         (WebCore::DOMWindow::top):
   1848         * page/Frame.cpp:
   1849         (WebCore::Frame::isDisconnectedFrame):
   1850         (WebCore::Frame::setIsDisconnectedFrame):
   1851         (WebCore::FramePrivate::FramePrivate):
   1852         * page/Frame.h:
   1853         * page/FramePrivate.h:
   1854         * page/FrameTree.cpp:
   1855         (WebCore::FrameTree::parent):
   1856         (WebCore::FrameTree::top):
   1857         * page/FrameTree.h:
   1858 
   1859 2008-07-25  Eric Seidel  <eric (a] webkit.org>
   1860 
   1861         Reviewed by Justin.
   1862 
   1863         Crash Safari when dragging images into Google presentations
   1864         https://bugs.webkit.org/show_bug.cgi?id=20161
   1865 
   1866         Test: manual-tests/remove-on-drop-crash.html
   1867 
   1868         * editing/ReplaceSelectionCommand.cpp:
   1869         (WebCore::ReplaceSelectionCommand::doApply):
   1870         * manual-tests/remove-on-drop-crash.html: Added.
   1871 
   1872 2008-07-30  Christian Dywan  <christian (a] twotoasts.de>
   1873 
   1874         Reviewed by Mark.
   1875 
   1876         Build fix for Cairo < 1.6
   1877 
   1878         * platform/graphics/cairo/PathCairo.cpp:
   1879         (WebCore::Path::boundingRect): use cairo_stroke_extends for < 1.6
   1880 
   1881 2008-07-29  Kevin McCullough  <kmccullough (a] apple.com>
   1882 
   1883         Reviewed by Geoff.
   1884 
   1885         <rdar://problem/6110314> Crash in profiler dereferencing null frame or
   1886         page (20214)
   1887         - Null check.
   1888 
   1889         * page/Console.cpp:
   1890         (WebCore::Console::finishedProfiling):
   1891 
   1892 2008-07-30  David Hyatt  <hyatt (a] apple.com>
   1893 
   1894         https://bugs.webkit.org/show_bug.cgi?id=18070
   1895         
   1896         Full page zoom needs to work properly with JS mouse events.  Make sure to adjust the coordinates of the
   1897         JS mouse event to account for zoom.
   1898 
   1899         Reviewed by olliej
   1900 
   1901         * dom/EventTargetNode.cpp:
   1902         (WebCore::EventTargetNode::dispatchMouseEvent):
   1903 
   1904 2008-07-29  Sam Weinig  <sam (a] webkit.org>
   1905 
   1906         Reviewed by Darin Adler.
   1907 
   1908         Update Cross-site XMLHttpRequests using Access control to
   1909         the latest spec. (Editor's Draft 8 July 2008)
   1910 
   1911         - This leaves us at about the same place as we previously were
   1912           still needing preflight caching and better redirect support.
   1913 
   1914         * GNUmakefile.am:
   1915         * WebCore.pro:
   1916         * WebCore.vcproj/WebCore.vcproj:
   1917         * WebCore.xcodeproj/project.pbxproj:
   1918         * WebCoreSources.bkl:
   1919         * xml/AccessControlList.cpp: Removed.
   1920         * xml/AccessControlList.h: Removed.
   1921         * xml/AccessItem.cpp: Removed.
   1922         * xml/AccessItem.h: Removed.
   1923         * xml/AccessItemRule.cpp: Removed.
   1924         * xml/AccessItemRule.h: Removed.
   1925         * xml/XMLHttpRequest.cpp:
   1926         (WebCore::isOnAccessControlSimpleRequestHeaderWhitelist):
   1927         (WebCore::XMLHttpRequest::XMLHttpRequest):
   1928         (WebCore::XMLHttpRequest::isSimpleCrossSiteAccessRequest):
   1929         (WebCore::XMLHttpRequest::makeCrossSiteAccessRequest):
   1930         (WebCore::XMLHttpRequest::makeSimpleCrossSiteAccessRequest):
   1931         (WebCore::XMLHttpRequest::makeCrossSiteAccessRequestWithPreflight):
   1932         (WebCore::XMLHttpRequest::handleAsynchronousPreflightResult):
   1933         (WebCore::XMLHttpRequest::abort):
   1934         (WebCore::XMLHttpRequest::clearRequest):
   1935         (WebCore::XMLHttpRequest::didFinishLoading):
   1936         (WebCore::XMLHttpRequest::didFinishLoadingPreflight):
   1937         (WebCore::XMLHttpRequest::accessControlCheck):
   1938         (WebCore::XMLHttpRequest::didReceiveResponse):
   1939         (WebCore::parseAccessControlAllowList):
   1940         (WebCore::XMLHttpRequest::didReceiveResponsePreflight):
   1941         * xml/XMLHttpRequest.h:
   1942 
   1943 2008-07-29  Kevin Calhoun  <kcalhoun (a] apple.com>
   1944 
   1945         Reviewed by Adele.
   1946 
   1947         Fix for <rdar://problem/6060647> Adopt QTMovieOpenForPlaybackAttribute flag
   1948 
   1949         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm: (WebCore::MediaPlayerPrivate::createQTMovie):
   1950 
   1951 2008-07-29  Kevin Calhoun  <kcalhoun (a] apple.com>
   1952 
   1953         Reviewed by Adele.
   1954 
   1955         Fix for <rdar://problem/6031021> Make standalone video render more like the quicktime plugin to improve performance
   1956 
   1957         For standalone video, use QTMovieView to draw.
   1958 
   1959         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
   1960         (WebCore::MediaPlayerPrivate::createQTMovieView): Moved nil checks to setUpVideoRendering.
   1961          Associate the QTMovieView with the WebCoreMovieObserver.
   1962          If we're in a media document, allow QTMovieView to render in its default mode; otherwise tell it to draw synchronously. 
   1963         (WebCore::MediaPlayerPrivate::detachQTMovieView): Set the WebCoreMovieObserver's view to nil.
   1964         (WebCore::MediaPlayerPrivate::createQTVideoRenderer): Nil check is now in setUpVideoRendering, which is the only caller of this.
   1965         (WebCore::MediaPlayerPrivate::setUpVideoRendering): Added nil checks.  Call createQTMovieView for media documents.
   1966         (WebCore::MediaPlayerPrivate::tearDownVideoRendering): Call detachQTMovieView if a QTMovieView exists.
   1967         (WebCore::MediaPlayerPrivate::setRect): Call setFrame on the QTMovieView if necessary.
   1968         (-[WebCoreMovieObserver menuForEventDelegate:]): Added. Returns the frame view's menu.
   1969         (-[WebCoreMovieObserver setView:]): Added.
   1970 
   1971 2008-07-29  Adele Peterson  <adele (a] apple.com>
   1972 
   1973         Reviewed by Dan Bernstein.
   1974 
   1975         Fix for <rdar://problem/6073372> Move built-in controls below <video> element for standalone media documents
   1976 
   1977         * css/CSSSelector.cpp: (WebCore::CSSSelector::extractPseudoType): Added -webkit-full-page-media pseudo class.
   1978         * css/CSSSelector.h: (WebCore::CSSSelector::): Added PseudoFullPageMedia.
   1979         * css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector): Added case to
   1980         apply PseudoFullPageMedia for elements in a full page media document.
   1981 
   1982         * css/html4.css: Added rule to shift control panel down for video in standalone media documents.
   1983 
   1984         * rendering/RenderMedia.cpp:
   1985         (WebCore::RenderMedia::lowestPosition): Added implementation that takes the controls into account.
   1986         This makes sure that scrollbars on the page will account for controls not directly contained in the RenderMedia.
   1987         (WebCore::RenderMedia::rightmostPosition): ditto.
   1988         (WebCore::RenderMedia::leftmostPosition): ditto.
   1989         * rendering/RenderMedia.h:
   1990 
   1991 2008-07-29  Sam Weinig  <sam (a] webkit.org>
   1992 
   1993         Reviewed by Anders Carlsson.
   1994 
   1995         <rdar://problem/6084585> Investigate upload progress events.
   1996 
   1997         - Add progress notifications for data being sent via a ResourceHandle.
   1998         - Add XMLHttpRequestUpload support.
   1999 
   2000         Upload notifications only work on the Mac right now as the CFNetwork API
   2001         on windows does not expose enough information.
   2002 
   2003         Tests: http/tests/xmlhttprequest/upload-onload-event.html
   2004                http/tests/xmlhttprequest/upload-onloadstart-event.html
   2005                http/tests/xmlhttprequest/upload-onprogress-event.html
   2006                http/tests/xmlhttprequest/upload-progress-events.html
   2007 
   2008         * DerivedSources.make:
   2009         * GNUmakefile.am:
   2010         * WebCore.pro:
   2011         * WebCore.vcproj/WebCore.vcproj:
   2012         * WebCore.xcodeproj/project.pbxproj:
   2013         * WebCoreSources.bkl:
   2014         * bindings/js/JSEventTargetBase.cpp:
   2015         (WebCore::toJS):
   2016         * bindings/js/JSXMLHttpRequestCustom.cpp:
   2017         (WebCore::JSXMLHttpRequest::mark):
   2018         * bindings/js/JSXMLHttpRequestUploadCustom.cpp: Added.
   2019         (WebCore::JSXMLHttpRequestUpload::mark):
   2020         (WebCore::JSXMLHttpRequestUpload::onabort):
   2021         (WebCore::JSXMLHttpRequestUpload::setOnabort):
   2022         (WebCore::JSXMLHttpRequestUpload::onerror):
   2023         (WebCore::JSXMLHttpRequestUpload::setOnerror):
   2024         (WebCore::JSXMLHttpRequestUpload::onload):
   2025         (WebCore::JSXMLHttpRequestUpload::setOnload):
   2026         (WebCore::JSXMLHttpRequestUpload::onloadstart):
   2027         (WebCore::JSXMLHttpRequestUpload::setOnloadstart):
   2028         (WebCore::JSXMLHttpRequestUpload::onprogress):
   2029         (WebCore::JSXMLHttpRequestUpload::setOnprogress):
   2030         (WebCore::JSXMLHttpRequestUpload::addEventListener):
   2031         (WebCore::JSXMLHttpRequestUpload::removeEventListener):
   2032         (WebCore::JSXMLHttpRequestUpload::dispatchEvent):
   2033         * dom/EventTarget.cpp:
   2034         (WebCore::EventTarget::toXMLHttpRequestUpload):
   2035         * dom/EventTarget.h:
   2036         * loader/ResourceLoader.cpp:
   2037         (WebCore::ResourceLoader::didSendData):
   2038         * loader/ResourceLoader.h:
   2039         * loader/SubresourceLoader.cpp:
   2040         (WebCore::SubresourceLoader::didSendData):
   2041         * loader/SubresourceLoader.h:
   2042         * loader/SubresourceLoaderClient.h:
   2043         (WebCore::SubresourceLoaderClient::didSendData):
   2044         * page/DOMWindow.idl:
   2045         * platform/network/FormData.cpp:
   2046         (WebCore::FormData::FormData):
   2047         * platform/network/FormData.h:
   2048         (WebCore::FormData::alwaysStream):
   2049         (WebCore::FormData::setAlwaysStream):
   2050         * platform/network/ResourceHandleClient.h:
   2051         (WebCore::ResourceHandleClient::didSendData):
   2052         * platform/network/mac/FormDataStreamMac.h:
   2053         * platform/network/mac/FormDataStreamMac.mm:
   2054         (WebCore::getStreamFormDataMap):
   2055         (WebCore::getStreamResourceHandleMap):
   2056         (WebCore::associateStreamWithResourceHandle):
   2057         (WebCore::disassociateStreamWithResourceHandle):
   2058         (WebCore::DidSendDataCallbackData::DidSendDataCallbackData):
   2059         (WebCore::performDidSendDataCallback):
   2060         (WebCore::formCreate):
   2061         (WebCore::formFinalize):
   2062         (WebCore::formRead):
   2063         (WebCore::setHTTPBody):
   2064         (WebCore::httpBodyFromStream):
   2065         * platform/network/mac/ResourceHandleMac.mm:
   2066         (WebCore::ResourceHandle::start):
   2067         (WebCore::ResourceHandle::cancel):
   2068         (-[WebCoreResourceHandleAsDelegate connection:willSendRequest:redirectResponse:]):
   2069         (-[WebCoreResourceHandleAsDelegate connectionDidFinishLoading:]):
   2070         (-[WebCoreResourceHandleAsDelegate connection:didFailWithError:]):
   2071         * xml/XMLHttpRequest.cpp:
   2072         (WebCore::XMLHttpRequest::XMLHttpRequest):
   2073         (WebCore::XMLHttpRequest::~XMLHttpRequest):
   2074         (WebCore::XMLHttpRequest::upload):
   2075         (WebCore::XMLHttpRequest::open):
   2076         (WebCore::XMLHttpRequest::send):
   2077         (WebCore::XMLHttpRequest::createRequest):
   2078         (WebCore::XMLHttpRequest::abort):
   2079         (WebCore::XMLHttpRequest::networkError):
   2080         (WebCore::XMLHttpRequest::abortError):
   2081         (WebCore::XMLHttpRequest::didSendData):
   2082         * xml/XMLHttpRequest.h:
   2083         (WebCore::XMLHttpRequest::optionalUpload):
   2084         * xml/XMLHttpRequest.idl:
   2085         * xml/XMLHttpRequestUpload.cpp: Added.
   2086         (WebCore::XMLHttpRequestUpload::XMLHttpRequestUpload):
   2087         (WebCore::XMLHttpRequestUpload::addEventListener):
   2088         (WebCore::XMLHttpRequestUpload::removeEventListener):
   2089         (WebCore::XMLHttpRequestUpload::dispatchEvent):
   2090         (WebCore::XMLHttpRequestUpload::dispatchXMLHttpRequestProgressEvent):
   2091         (WebCore::XMLHttpRequestUpload::dispatchAbortEvent):
   2092         (WebCore::XMLHttpRequestUpload::dispatchErrorEvent):
   2093         (WebCore::XMLHttpRequestUpload::dispatchLoadEvent):
   2094         (WebCore::XMLHttpRequestUpload::dispatchLoadStartEvent):
   2095         (WebCore::XMLHttpRequestUpload::dispatchProgressEvent):
   2096         * xml/XMLHttpRequestUpload.h: Added.
   2097         (WebCore::XMLHttpRequestUpload::create):
   2098         (WebCore::XMLHttpRequestUpload::toXMLHttpRequestUpload):
   2099         (WebCore::XMLHttpRequestUpload::associatedXMLHttpRequest):
   2100         (WebCore::XMLHttpRequestUpload::disconnectXMLHttpRequest):
   2101         (WebCore::XMLHttpRequestUpload::setOnAbortListener):
   2102         (WebCore::XMLHttpRequestUpload::onAbortListener):
   2103         (WebCore::XMLHttpRequestUpload::setOnErrorListener):
   2104         (WebCore::XMLHttpRequestUpload::onErrorListener):
   2105         (WebCore::XMLHttpRequestUpload::setOnLoadListener):
   2106         (WebCore::XMLHttpRequestUpload::onLoadListener):
   2107         (WebCore::XMLHttpRequestUpload::setOnLoadStartListener):
   2108         (WebCore::XMLHttpRequestUpload::onLoadStartListener):
   2109         (WebCore::XMLHttpRequestUpload::setOnProgressListener):
   2110         (WebCore::XMLHttpRequestUpload::onProgressListener):
   2111         (WebCore::XMLHttpRequestUpload::eventListeners):
   2112         (WebCore::XMLHttpRequestUpload::refEventTarget):
   2113         (WebCore::XMLHttpRequestUpload::derefEventTarget):
   2114         * xml/XMLHttpRequestUpload.idl: Added.
   2115 
   2116 2008-07-29  Maxime Britto  <britto (a] apple.com>
   2117 
   2118         Reviewed by Darin.
   2119 
   2120         <rdar://problem/6095023> "When pan-scrolling, mouse click on hyperlink stop the pan-Scroll but follow the link after that."
   2121         With this patch we now stop the pan scroll and swallow the event to prevent any following action.
   2122 
   2123         * page/EventHandler.cpp:
   2124         (WebCore::EventHandler::handleMousePressEvent): If we were in pan scrolling mode we no longer just stop the pan scroll and continue with the function, we now stop and return true to attest that we swallowed the event.
   2125 
   2126 2008-07-29  Maxime Britto  <britto (a] apple.com>
   2127 
   2128         Reviewed by adele.
   2129 
   2130         Test: fast/events/autoscroll-in-textfield.html
   2131 
   2132         * rendering/RenderObject.cpp:
   2133         (WebCore::RenderObject::canBeProgramaticallyScrolled): reverted a bad change introduced in r35244
   2134         nb:the test case introduced in r35244 is still working.
   2135 
   2136 2008-07-29  Maxime Britto  <britto (a] apple.com>
   2137 
   2138         Reviewed by adele.
   2139         This test verifies that the autoscroll works within textfields.
   2140 
   2141         * fast/events/autoscroll-in-textfield-expected.txt: Added.
   2142         * fast/events/autoscroll-in-textfield.html: Added.
   2143 
   2144 2008-07-29  Adele Peterson  <adele (a] apple.com>
   2145 
   2146         Reviewed by Sammy Weinig.
   2147 
   2148         Fix for <rdar://problem/6103024>
   2149         When a QT movie is loaded directly in the browser, I can't pause it by single-clicking on the video
   2150 
   2151         Test: media/video-click-dlbclick-standalone.html
   2152 
   2153         * loader/MediaDocument.cpp: (WebCore::MediaDocument::defaultEventHandler): For standalone media documents,
   2154         match the default Quicktime plugin behavior to allow clicking and double-clicking to pause and play the media.
   2155         * loader/MediaDocument.h: Added defaultEventHandler.
   2156 
   2157         * html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::defaultEventHandler): Return early if the event has been handled.
   2158         * rendering/MediaControlElements.cpp:
   2159         (WebCore::MediaControlMuteButtonElement::defaultEventHandler): Correct what was probably a typo.  Instead of "event->defaultHandled()",
   2160          it is supposed to be "event->setDefaultHandled()".
   2161         (WebCore::MediaControlPlayButtonElement::defaultEventHandler): ditto.
   2162         (WebCore::MediaControlSeekButtonElement::defaultEventHandler): ditto.
   2163         (WebCore::MediaControlFullscreenButtonElement::defaultEventHandler): ditto.
   2164 
   2165 2008-07-29  Dan Bernstein  <mitz (a] apple.com>
   2166 
   2167         Reviewed by Dave Hyatt.
   2168 
   2169         - fix <rdar://problem/6059648> Some content not visible when the window is short at courtneyalbright.com
   2170 
   2171         Test: fast/overflow/float-in-relpositioned.html
   2172 
   2173         * rendering/RenderBlock.cpp:
   2174         (WebCore::RenderBlock::lowestPosition): Add this block's relative offset
   2175         to floats' and positioned objects' lowest position.
   2176         (WebCore::RenderBlock::rightmostPosition): Ditto.
   2177         (WebCore::RenderBlock::leftmostPosition): Ditto.
   2178         * rendering/RenderBox.cpp:
   2179         (WebCore::RenderBox::lowestPosition): Removed redundant test.
   2180         (WebCore::RenderBox::rightmostPosition): Ditto.
   2181         (WebCore::RenderBox::leftmostPosition): Ditto.
   2182 
   2183 2008-07-29  Dan Bernstein  <mitz (a] apple.com>
   2184 
   2185         Reviewed by Dave Hyatt.
   2186 
   2187         - fix <rdar://problem/6048566> Repaint original element's position, not its offset position
   2188 
   2189         Test: fast/repaint/layout-state-relative.html
   2190 
   2191         * rendering/RenderBox.cpp:
   2192         (WebCore::RenderBox::absolutePosition): Changed the LayoutState-enabled
   2193         code path to account for the object's relative offset.
   2194         (WebCore::RenderBox::computeAbsoluteRepaintRect): Ditto.
   2195 
   2196 2008-07-29  Keishi Hattori  <casey.hattori (a] gmail.com>
   2197 
   2198         Fixed Bug 19158: Inspector should support console.group/console.groupEnd
   2199 
   2200         <https://bugs.webkit.org/show_bug.cgi?id=19158>
   2201 
   2202         Reviewed by Tim Hatcher and Adam Roben.
   2203 
   2204         * bindings/js/JSConsoleCustom.cpp:
   2205         (WebCore::JSConsole::group): Added.
   2206         * page/Console.cpp:
   2207         (WebCore::Console::group): Added.
   2208         (WebCore::Console::groupEnd): Added.
   2209         * page/Console.h:
   2210         (WebCore::):
   2211         * page/Console.idl: Added group/groupEnd.
   2212         * page/InspectorController.cpp:
   2213         (WebCore::ConsoleMessage::ConsoleMessage):
   2214         (WebCore::InspectorController::InspectorController): Added m_groupLevel.
   2215         (WebCore::InspectorController::addMessageToConsole): Added groupLevel argument.
   2216         (WebCore::InspectorController::startGroup): Increments m_groupLevel by one and calls js function if needed.
   2217         (WebCore::InspectorController::endGroup): Decrements m_groupLevel by one and calls js function if needed.
   2218         (WebCore::InspectorController::addScriptConsoleMessage): Added groupLevel argument.
   2219         (WebCore::InspectorController::didCommitLoad): Resets m_groupLevel.
   2220         * page/InspectorController.h:
   2221         * page/inspector/Console.js:
   2222         (WebInspector.Console): Added groupLevel and currentGroup topGroup.
   2223         (WebInspector.Console.addMessage): Calls addMessage method in the currentGroup.
   2224         (WebInspector.Console.startGroup): Added.
   2225         (WebInspector.Console.endGroup): Added.
   2226         (WebInspector.Console.clearMessages): Resets groupLevel and currentGroup.
   2227         (WebInspector.ConsoleMessage): Added groupLevel property.
   2228         (WebInspector.ConsoleMessage.MessageLevel.GroupTitle): Added.
   2229         (WebInspector.ConsoleGroup): Added.
   2230         (WebInspector.ConsoleGroup.addMessage): Adds console message to group.
   2231         (WebInspector.ConsoleGroup._titleClicked): Adds "collapsed" style class.
   2232         * page/inspector/inspector.css:
   2233         * page/inspector/inspector.js:
   2234         (WebInspector.startGroupInConsole): Calls console.startGroup
   2235         (WebInspector.endGroupInConsole): Calls console.endGroup
   2236 
   2237 2008-07-29  Adam Roben  <aroben (a] apple.com>
   2238 
   2239         Add names for WebCore's threads
   2240 
   2241         Reviewed by Anders Carlsson.
   2242 
   2243         * loader/icon/IconDatabase.cpp:
   2244         (WebCore::IconDatabase::open):
   2245         * storage/DatabaseThread.cpp:
   2246         (WebCore::DatabaseThread::start):
   2247         * storage/LocalStorageThread.cpp:
   2248         (WebCore::LocalStorageThread::start):
   2249         Pass in names to createThread.
   2250 
   2251         * platform/network/cf/ResourceHandleCFNet.cpp:
   2252         (WebCore::runLoaderThread):
   2253         (WebCore::ResourceHandle::loaderRunLoop):
   2254         Changed to use WTF::createThread.
   2255 
   2256 2008-07-28  Anders Carlsson  <andersca (a] apple.com>
   2257 
   2258         Reviewed by Kevin Decker.
   2259 
   2260         Based on a patch from Dimcho Balev.
   2261         
   2262         Windows part of 
   2263     
   2264         https://bugs.webkit.org/show_bug.cgi?id=18676
   2265         <rdar://problem/6106578>
   2266         Plug-In API Proposal: Enable plugins to receive response body when an HTTP error occurs
   2267 
   2268         * plugins/PluginStream.cpp:
   2269         (WebCore::PluginStream::wantsAllStreams):
   2270         * plugins/PluginStream.h:
   2271 
   2272 2008-07-28  Brady Eidson  <beidson (a] apple.com>
   2273 
   2274         Reviewed by Sam Weinig
   2275 
   2276         Test: security/autocomplete-cleared-on-back.html
   2277 
   2278         <rdar://problem/6093281> - autocomplete="off" should work when going back
   2279 
   2280         Taken care of in two ways:
   2281         1 - Listening for the page cache notification to clear the form, in cases where the page
   2282             is being restored from the page cache
   2283         2 - Not saving such form elements when doing the normal "save state" to a history item,
   2284             for cases with no page cache
   2285 
   2286         * html/HTMLFormElement.cpp:
   2287         (WebCore::HTMLFormElement::~HTMLFormElement):
   2288         (WebCore::HTMLFormElement::parseMappedAttribute):
   2289         (WebCore::HTMLFormElement::didRestoreFromCache):
   2290         (WebCore::HTMLFormElement::willMoveToNewOwnerDocument):
   2291         (WebCore::HTMLFormElement::didMoveToNewOwnerDocument):
   2292         * html/HTMLFormElement.h:
   2293 
   2294         * html/HTMLInputElement.cpp:
   2295         (WebCore::HTMLInputElement::~HTMLInputElement):
   2296         (WebCore::HTMLInputElement::setInputType):
   2297         (WebCore::HTMLInputElement::saveState):
   2298         (WebCore::HTMLInputElement::parseMappedAttribute):
   2299         (WebCore::HTMLInputElement::needsCacheCallback):
   2300         (WebCore::HTMLInputElement::registerForCacheCallbackIfNeeded): Only register if the type or attribute
   2301           indicate we should.
   2302         (WebCore::HTMLInputElement::unregisterForCacheCallbackIfNeeded): Only unregister if both the type
   2303           and attribute are clear of needing registration.
   2304         (WebCore::HTMLInputElement::didRestoreFromCache):
   2305         (WebCore::HTMLInputElement::willMoveToNewOwnerDocument):
   2306         (WebCore::HTMLInputElement::didMoveToNewOwnerDocument):
   2307         * html/HTMLInputElement.h:
   2308 
   2309 2008-07-28  David Hyatt  <hyatt (a] apple.com>
   2310 
   2311         Add support for CSS variable declaration blocks.
   2312 
   2313         Reviewed by Sam
   2314 
   2315         Added tests in fast/css/variables.
   2316 
   2317         * css/CSSGrammar.y:
   2318         * css/CSSMutableStyleDeclaration.h:
   2319         (WebCore::CSSMutableStyleDeclaration::isMutableStyleDeclaration):
   2320         * css/CSSParser.cpp:
   2321         (WebCore::CSSParser::addVariableDeclarationBlock):
   2322         * css/CSSParser.h:
   2323         * css/CSSProperty.cpp:
   2324         (WebCore::CSSProperty::cssText):
   2325         * css/CSSPropertyNames.in:
   2326         * css/CSSStyleSelector.cpp:
   2327         (WebCore::CSSStyleSelector::addMatchedDeclaration):
   2328         (WebCore::CSSStyleSelector::resolveVariablesForDeclaration):
   2329         * css/CSSStyleSelector.h:
   2330         * css/CSSValueList.h:
   2331         (WebCore::CSSValueList::isValueList):
   2332         * css/CSSVariablesDeclaration.cpp:
   2333         (WebCore::CSSVariablesDeclaration::CSSVariablesDeclaration):
   2334         (WebCore::CSSVariablesDeclaration::getVariableValue):
   2335         (WebCore::CSSVariablesDeclaration::removeVariable):
   2336         (WebCore::CSSVariablesDeclaration::addParsedVariable):
   2337         (WebCore::CSSVariablesDeclaration::getParsedSimpleVariable):
   2338         (WebCore::CSSVariablesDeclaration::getParsedComplexVariable):
   2339         * css/CSSVariablesDeclaration.h:
   2340         (WebCore::CSSVariablesDeclaration::create):
   2341         * css/StyleBase.cpp:
   2342         (WebCore::StyleBase::cssText):
   2343         * css/StyleBase.h:
   2344         (WebCore::StyleBase::isValueList):
   2345         (WebCore::StyleBase::isMutableStyleDeclaration):
   2346 
   2347 2008-07-28  Anders Carlsson  <andersca (a] apple.com>
   2348 
   2349         Reviewed by Sam.
   2350 
   2351         <rdar://problem/6098335>
   2352         https://bugs.webkit.org/show_bug.cgi?id=20150
   2353         
   2354         Handle willSendRequest correctly.
   2355 
   2356         * loader/SubresourceLoader.cpp:
   2357         (WebCore::SubresourceLoader::willSendRequest):
   2358         Make sure to keep the previous URL around so we know when to call willSendRequest.
   2359         
   2360         * xml/XMLHttpRequest.cpp:
   2361         (WebCore::XMLHttpRequest::processSyncLoadResults):
   2362         Abort if we don't have access to the response URL.
   2363         
   2364         (WebCore::XMLHttpRequest::willSendRequest):
   2365         Dispatch a network error if we can't access the new URL.
   2366 
   2367 2008-07-28  Geoffrey Garen  <ggaren (a] apple.com>
   2368 
   2369         Reviewed by Sam Weinig.
   2370 
   2371         Renamed "ConstructTypeNative" => "ConstructTypeHost".
   2372         
   2373 2008-07-28  Anders Carlsson  <andersca (a] apple.com>
   2374 
   2375         Reviewed by Kevin Decker.
   2376 
   2377         Based on a patch by Dimcho Balev.
   2378 
   2379         https://bugs.webkit.org/show_bug.cgi?id=18676
   2380         <rdar://problem/6106578>
   2381         Plug-In API Proposal: Enable plugins to receive response body when an HTTP error occurs
   2382         
   2383         * bridge/npapi.h:
   2384         Add new enum values.
   2385         
   2386         * loader/NetscapePlugInStreamLoader.cpp:
   2387         (WebCore::NetscapePlugInStreamLoader::didReceiveResponse):
   2388         When the plug-in indicates that it wants all streams to be delivered, don't cancel the stream
   2389         if an error occurs.
   2390         
   2391         * loader/NetscapePlugInStreamLoader.h:
   2392         (WebCore::NetscapePlugInStreamLoaderClient::wantsAllStreams):
   2393         Add new client method.
   2394 
   2395 2008-07-27  Sam Weinig  <sam (a] webkit.org>
   2396 
   2397         Reviewed by Oliver Hunt.
   2398 
   2399         Fix for https://bugs.webkit.org/show_bug.cgi?id=20176
   2400         querySelectorAll id optimization no longer working
   2401 
   2402         Turn the querySelector/querySelectorAll id optimization back on
   2403         for only strict and almost strict mode.  In quirks mode, the optimiztion
   2404         won't work as the id match is not case sensitive.
   2405 
   2406         Tests: fast/dom/SelectorAPI/caseID-almost-strict.html
   2407                fast/dom/SelectorAPI/caseID-strict.html
   2408                fast/dom/SelectorAPI/caseID.html
   2409 
   2410         * dom/Node.cpp:
   2411         (WebCore::Node::querySelector):
   2412         (WebCore::Node::querySelectorAll):
   2413         * dom/SelectorNodeList.cpp:
   2414         (WebCore::createSelectorNodeList):
   2415         * dom/SelectorNodeList.h:
   2416 
   2417 2008-07-27  Anatoli Papirovski  <apapirovski (a] mac.com>
   2418 
   2419         Reviewed by Dave Hyatt.
   2420 
   2421         Fix for https://bugs.webkit.org/show_bug.cgi?id=14346
   2422         Modified the css parser:
   2423         - not to fail when closing braces are not found for 
   2424           a declaration at the end of the file
   2425         - not to accept "!important fail" as valid
   2426         - to keep accepting @import when it comes after invalid @ rules
   2427         - not to drop the whole @media block when there's an error before the 
   2428           closing brace
   2429         + some other minor css parsing revisions.
   2430 
   2431         CSSGrammar.y tweaked by David Kilzer to fix Tiger builds.
   2432 
   2433         * css/CSSGrammar.y:
   2434 
   2435 2008-07-27  Jan Michael Alonzo  <jmalonzo (a] webkit.org>
   2436 
   2437         Reviewed by Eric Seidel.
   2438 
   2439         Use --outputDir instead of --output when invoking make_names.pl
   2440         There's no option named "output" in make_names.pl
   2441 
   2442         * GNUmakefile.am:
   2443         * WebCore.pro:
   2444         * DerivedSources.make: Remove --output. Not necessary here.
   2445         * bindings/scripts/generate-bindings.pl: Rename --outputdir to
   2446           --outputDir for consistency with make_names.pl
   2447 
   2448 2008-07-26  Dirk Schulze  <vbs85 (a] gmx.de>
   2449 
   2450         Reviewed by Eric Seidel.
   2451 
   2452         http://bugs.webkit.org/show_bug.cgi?id=18694
   2453         [CAIRO] Problem with rotation in a given matrix in SVG
   2454 
   2455         Changed values given to AffineTransform.
   2456 
   2457         * platform/graphics/cairo/AffineTransformCairo.cpp:
   2458         (WebCore::AffineTransform::AffineTransform):
   2459         (WebCore::AffineTransform::setMatrix):
   2460 
   2461 2008-07-26  Jan Michael Alonzo  <jmalonzo (a] webkit.org>
   2462 
   2463         Reviewed by Mark Rowe.
   2464 
   2465         Call curl_global_cleanup() to release resources acquired by curl_global_init()
   2466 
   2467         * platform/network/curl/ResourceHandleManager.cpp:
   2468         (WebCore::ResourceHandleManager::~ResourceHandleManager):
   2469 
   2470 2008-07-26  Marc Ordinas i Llopis  <marc.ordinasillopis (a] collabora.co.uk>
   2471 
   2472         Reviewed by Simon Hausmann.
   2473 
   2474         Bug 18938: [GTK] Plugins not resized
   2475         https://bugs.webkit.org/show_bug.cgi?id=18938
   2476 
   2477         * plugins/PluginView.cpp:
   2478         (WebCore::PluginView::setFrameGeometry): When viewing a full-page
   2479         plugin in unix, geometry changes have to be passed to the plugin.
   2480 
   2481 2008-07-26  Keishi Hattori  <casey.hattori (a] gmail.com>
   2482 
   2483         Reviewed by Adam Roben.
   2484 
   2485         Add console.time/timeEnd.
   2486         https://bugs.webkit.org/show_bug.cgi?id=19159
   2487 
   2488         * manual-tests/inspector/console-time.html: Added. Test cases for console.time/timeEnd.
   2489         * page/Console.cpp:
   2490         (WebCore::Console::time): Added.
   2491         (WebCore::Console::timeEnd): Added.
   2492         * page/Console.h:
   2493         * page/Console.idl: Added console.time/timeEnd.
   2494         * page/InspectorController.cpp:
   2495         (WebCore::InspectorController::startTiming): Added.
   2496         (WebCore::InspectorController::stopTiming): Added.
   2497         * page/InspectorController.h:
   2498 
   2499 2008-07-26  Dirk Schulze  <vbs85 (a] gmx.de>
   2500 
   2501         Reviewed by Nikolas Zimmermann.
   2502 
   2503         Fixes rendering issues with gradients in SVG/Cairo.
   2504 
   2505         * platform/graphics/cairo/PathCairo.cpp:
   2506         (WebCore::Path::boundingRect):
   2507         * svg/graphics/cairo/SVGPaintServerGradientCairo.cpp:
   2508         (WebCore::applyStrokeStyleToContext):
   2509         (WebCore::SVGPaintServerGradient::setup):
   2510 
   2511 2008-07-26  Dirk Schulze  <vbs85 (a] gmx.de>
   2512 
   2513         Reviewed by Nikolas Zimmermann.
   2514 
   2515         Added pattern-support for SVG in Cairo.
   2516 
   2517         * svg/graphics/cairo/SVGPaintServerPatternCairo.cpp:
   2518         (WebCore::applyStrokeStyleToContext):
   2519         (WebCore::SVGPaintServerPattern::setup):
   2520 
   2521 2008-07-26  Keishi Hattori  <casey.hattori (a] gmail.com>
   2522 
   2523         Reviewed by Adam Roben.
   2524 
   2525         Fixed bug 18540: console.log('multiple', 'strings') quotes all strings after the first
   2526         <https://bugs.webkit.org/show_bug.cgi?id=18540>
   2527 
   2528         * page/inspector/Console.js:
   2529         (WebInspector.ConsoleMessage.prototype._format): String arguments are appended without formatting.
   2530 
   2531 2008-07-26  Anthony Ricaud  <rik24d (a] gmail.com>
   2532 
   2533         Reviewed by Tim Hatcher.
   2534 
   2535         <https://bugs.webkit.org/show_bug.cgi?id=20055> Line highlighting should last longer
   2536 
   2537         Restore the fade out effect after highlighting.
   2538 
   2539         * page/inspector/SourceFrame.js: Add a class for fade-out effects and sets it at the end of highlighting time.
   2540 
   2541 2008-07-26  Michelangelo De Simone  <michelangelo (a] me.com>
   2542 
   2543         Reviewed by Adele Petersen.
   2544 
   2545         Added the simple willValidate attribute to form controls according to
   2546         WebForms 2 spec.
   2547 
   2548         URL: http://www.w3.org/TR/web-forms-2/#willvalidate
   2549 
   2550         Tests: fast/forms/willvalidate-000.html
   2551                fast/forms/willvalidate-001.html
   2552                fast/forms/willvalidate-002.html
   2553                fast/forms/willvalidate-003.html
   2554                fast/forms/willvalidate-004.html
   2555                fast/forms/willvalidate-005.html
   2556                fast/forms/willvalidate-006.html
   2557                fast/forms/willvalidate-007.html
   2558                fast/forms/willvalidate-008.html
   2559                fast/forms/willvalidate-009.html
   2560 
   2561         * html/HTMLButtonElement.h: Added willValidate(), always false.
   2562         * html/HTMLButtonElement.idl: willValidate attribute exposed.
   2563         * html/HTMLFieldSetElement.h: Added willValidate(), always false.
   2564         * html/HTMLFieldSetElement.idl: willValidate attribute exposed.
   2565         * html/HTMLFormControlElement.cpp: (WebCore::HTMLFormControlElement::willValidate):
   2566         Added base willValidate() implementation.
   2567         * html/HTMLFormControlElement.h: Added willValidate().
   2568         * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::willValidate):
   2569         Added willValidate(), checks for input type.
   2570         * html/HTMLInputElement.h: Added willValidate()
   2571         * html/HTMLInputElement.idl: willValidate attribute exposed.
   2572         * html/HTMLSelectElement.idl: willValidate attribute exposed.
   2573         * html/HTMLTextAreaElement.idl: willValidate attribute exposed.
   2574 
   2575 2008-07-26  Mark Rowe  <mrowe (a] apple.com>
   2576 
   2577         Build fix.
   2578 
   2579         * loader/FrameLoader.cpp:
   2580         (WebCore::FrameLoader::load): Use 0 rather than nil as this is a C++ file.
   2581 
   2582 2008-07-26  Mark Rowe  <mrowe (a] apple.com>
   2583 
   2584         Build fix.
   2585 
   2586         * loader/FrameLoader.h: Use 0 rather than nil as this is a C++ header.
   2587 
   2588 2008-07-26  Daniel Jalkut  <jalkut (a] red-sweater.com>
   2589 
   2590         Reviewed by Geoff Garen.
   2591 
   2592         Revised the FrameLoader class to clean up a variety of load methods, and hopefully
   2593         move things closer to integrating into a smaller set of load methods. To this
   2594         end, I renamed many of the overloaded load() methods to have more meaningful and 
   2595         easier to search names.  I added comments to the header file to provide clues as 
   2596         to how many of the load methods are being used, and how they fit into the loading 
   2597         process. I suspect that the renamed methods and comments indicating their present 
   2598         usage will facilitate easier cleanup by myself and others as inspiration strikes.
   2599 
   2600         Updated clients of FrameLoader where necessary to adapt to the new method names and signatures.
   2601 
   2602         Combined the 3 canLoad() methods into a single canLoad which expresses the 
   2603         intended logic of the 3 with a single method interface.
   2604 
   2605         Removed unnecessary "treatAsLocal" attribute of CachedResource. It was only called from
   2606         one place in FrameLoader.cpp, and it derived at initialization time by calling back to FrameLoader.
   2607 
   2608         Removed unused userGesture parameter to one variant of the urlSelected method, and 
   2609         moved one of the urlSelected methods so that it lives nearer to its overloaded 
   2610         sibling.
   2611 
   2612         * WebCore.base.exp:
   2613         * loader/Cache.cpp:
   2614         (WebCore::Cache::requestResource):
   2615         * loader/CachedResource.cpp:
   2616         (WebCore::CachedResource::CachedResource):
   2617         * loader/CachedResource.h:
   2618         (WebCore::CachedResource::errorOccurred):
   2619         * loader/FrameLoader.cpp:
   2620         (WebCore::FrameLoader::createWindow):
   2621         (WebCore::FrameLoader::urlSelected):
   2622         (WebCore::FrameLoader::loadURLIntoChildFrame):
   2623         (WebCore::FrameLoader::loadPlugin):
   2624         (WebCore::FrameLoader::loadFrameRequestWithFormState):
   2625         (WebCore::FrameLoader::loadFrameRequestWithFormAndValues):
   2626         (WebCore::FrameLoader::loadURL):
   2627         (WebCore::FrameLoader::loadWithNavigationAction):
   2628         (WebCore::FrameLoader::load):
   2629         (WebCore::FrameLoader::loadWithDocumentLoader):
   2630         (WebCore::FrameLoader::canLoad):
   2631         (WebCore::FrameLoader::reloadAllowingStaleData):
   2632         (WebCore::FrameLoader::reload):
   2633         (WebCore::FrameLoader::continueLoadAfterWillSubmitForm):
   2634         (WebCore::FrameLoader::submitForm):
   2635         (WebCore::FrameLoader::loadPostRequest):
   2636         (WebCore::FrameLoader::continueLoadAfterNewWindowPolicy):
   2637         (WebCore::FrameLoader::loadItem):
   2638         * loader/FrameLoader.h:
   2639         * loader/SubresourceLoader.cpp:
   2640         (WebCore::SubresourceLoader::create):
   2641         * page/ContextMenuController.cpp:
   2642         (WebCore::ContextMenuController::contextMenuItemSelected):
   2643 
   2644 2008-07-26  Sam Weinig  <sam (a] webkit.org>
   2645 
   2646         Reviewed by Dan Bernstein.
   2647 
   2648         Fix https://bugs.webkit.org/show_bug.cgi?id=20122
   2649         <rdar://problem/6089522>
   2650         REGRESSION (r35075-r35110): Cannot enlarge images at Apple Store product page
   2651 
   2652         Use strict parsing when in AlmostStrict mode.
   2653 
   2654         Tests: fast/dom/SelectorAPI/dumpNodeList-almost-strict.html
   2655                fast/dom/SelectorAPI/id-fastpath-almost-strict.html
   2656                fast/dom/SelectorAPI/id-fastpath-strict.html
   2657 
   2658         * dom/Node.cpp:
   2659         (WebCore::Node::querySelector):
   2660         (WebCore::Node::querySelectorAll):
   2661 
   2662 2008-07-25  Ariya Hidayat  <ariya.hidayat (a] trolltech.com>
   2663 
   2664         Reviewed by Simon.
   2665 
   2666         Switch off QPainter's anti aliasing when painting the widgets using QStyle
   2667         because otherwise the widgets will look blurry and not crisp.
   2668 
   2669         * platform/qt/RenderThemeQt.cpp:
   2670         (WebCore::StylePainter::StylePainter):
   2671         (WebCore::StylePainter::~StylePainter):
   2672         * platform/qt/RenderThemeQt.h:
   2673 
   2674 2008-07-25  Dan Bernstein  <mitz (a] apple.com>
   2675 
   2676         Reviewed by Anders Carlsson.
   2677 
   2678         - fix crash due to re-entering purgeInactiveFontData() now that it is
   2679           called by releaseFontData()
   2680 
   2681         Not testable in DumpRenderTree
   2682 
   2683         * platform/graphics/FontCache.cpp:
   2684         (WebCore::FontCache::purgeInactiveFontData): Added a reentry guard.
   2685 
   2686 2008-07-25  Brady Eidson  <beidson (a] apple.com>
   2687 
   2688         Reviewed by Sam
   2689 
   2690         Test: security/set-form-autocomplete-attribute.html
   2691 
   2692         Part of the fix for <rdar://problem/6093281> - Improper handling of autocomplete
   2693 
   2694         The autocomplete attribute works on both <form> and <input> elements, but was not
   2695         inherited properly when someone asked an <input> if it should autocomplete.
   2696 
   2697         I fixed this up based on the rules in the current WF2 spec so if the <input> element
   2698         has its own autocomplete attribute set, it will follow that but otherwise it will
   2699         inherit from its parent <form>
   2700 
   2701         * WebCore.base.exp:
   2702 
   2703         * html/HTMLInputElement.cpp:
   2704         (WebCore::HTMLInputElement::init):
   2705         (WebCore::HTMLInputElement::autoComplete):
   2706         (WebCore::HTMLInputElement::parseMappedAttribute):
   2707         * html/HTMLInputElement.h:
   2708         (WebCore::HTMLInputElement::):
   2709 
   2710 2008-07-25  Wouter Bolsterlee  <uws+webkit (a] xs4all.nl>
   2711 
   2712         Reviewed by Holger Freyther.
   2713 
   2714         https://bugs.webkit.org/show_bug.cgi?id=20078
   2715         [GTK] Use G_* macros instead of deprecated GTK_* macros in gtk2xtbin.h
   2716 
   2717         * plugins/gtk/gtk2xtbin.h:
   2718 
   2719 2008-07-25  Anders Carlsson  <andersca (a] apple.com>
   2720 
   2721         Reviewed by Sam.
   2722 
   2723         Add workaround for a Leopard bug which causes webarchive/test-xml-stylesheet.xml to fail.
   2724 
   2725         * platform/network/mac/WebCoreURLResponse.mm:
   2726         (-[NSURLResponse _webcore_MIMEType]):
   2727 
   2728 2008-07-25  chris fleizach  <cfleizach (a] apple.com>
   2729 
   2730         Reviewed by Beth Dakin
   2731 
   2732         <rdar://problem/6084806> AX: REGRESSION: returned line number from TextArea is incorrect
   2733 
   2734         Tests: accessibility/textarea-insertion-point-line-number.html
   2735                accessibility/textarea-line-for-index.html
   2736 
   2737         * page/AccessibilityObject.cpp:
   2738         (WebCore::AccessibilityObject::lineForPosition):
   2739         * page/AccessibilityObject.h:
   2740         * page/mac/AccessibilityObjectWrapper.mm:
   2741         (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
   2742         (-[AccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):
   2743 
   2744 2008-07-25  Jacob Refstrup  <jacob.refstrup (a] hp.com>
   2745 
   2746         Reviewed by mitz.
   2747 
   2748         - fix https://bugs.webkit.org/show_bug.cgi?id=17906
   2749         <rdar://problem/5805741> white-space: pre-wrap or -webkit-line-break: after-white-space text can overlap float at end of line
   2750         
   2751         Test: fast/block/float/editable-text-overlapping-float.html
   2752 
   2753         * rendering/RenderBlock.h:
   2754         * rendering/bidi.cpp:
   2755         (WebCore::RenderBlock::skipTrailingWhitespace):
   2756         - renamed to reflect usage and removed call to position floats; 
   2757           they only get added
   2758         (WebCore::RenderBlock::skipLeadingWhitespace):
   2759         - renamed to reflect usage
   2760         (WebCore::RenderBlock::findNextLineBreak):
   2761         - use skipTrailingWhitespace at end of line (as before but with new
   2762           name)
   2763 
   2764 2008-07-25  Dan Bernstein  <mitz (a] apple.com>
   2765 
   2766         Reviewed by Sam Weinig.
   2767 
   2768         - Finish fixing https://bugs.webkit.org/show_bug.cgi?id=17097
   2769           <rdar://problem/5715471> CGFontRefs (and HFONTs on Windows) leak because FontCache grows without bound
   2770 
   2771         * platform/graphics/FontCache.cpp:
   2772         (WebCore::FontDataCacheKeyTraits): Changed needsDestruction to true because FontPlatformData
   2773         instances hold references to the platform resources and release them in the destructor.
   2774         (WebCore::cTargetInactiveFontData): Added, replacing cInactiveFontDataPurgeRatio with the
   2775         number of inactive FontData instances to leave in the cache when automatically purging.
   2776         (WebCore::FontCache::getCachedFontData): Moved the code that checks if there are too many
   2777         inactive FontData instances and if so calls purgeInactiveFontData() from here...
   2778         (WebCore::FontCache::releaseFontData): ... to here.
   2779         (WebCore::FontCache::purgeInactiveFontData): Added code to also purge the platform font data
   2780         cache. All FontPlatformData instances that do not have entries in the font data cache are
   2781         removed, thus releasing the platform resources (such as HFONTs and NSFonts).
   2782 
   2783 2008-07-24  David Hyatt  <hyatt (a] apple.com>
   2784 
   2785         Add support for an alternate syntax for CSS variables.  Testers on www-style will be able to try out
   2786         both versions of the syntax in WebKit to help us make a decision regarding which one to go with.
   2787 
   2788         Reviewed by Dan
   2789 
   2790         Added fast/css/variables/alternate-syntax/ (duplicated all existing CSS variables tests)
   2791 
   2792         * css/CSSGrammar.y:
   2793         * css/CSSParser.cpp:
   2794         (WebCore::CSSParser::createVariablesRule):
   2795         (WebCore::CSSParser::checkForVariables):
   2796         * css/CSSParser.h:
   2797         * css/CSSParserValues.cpp:
   2798         (WebCore::CSSParserValue::isVariable):
   2799         (WebCore::CSSParserValueList::addValue):
   2800         (WebCore::CSSParserValueList::deleteValueAt):
   2801         (WebCore::CSSParserValue::createCSSValue):
   2802         * css/CSSParserValues.h:
   2803         * css/CSSPrimitiveValue.cpp:
   2804         (WebCore::CSSPrimitiveValue::cleanup):
   2805         (WebCore::CSSPrimitiveValue::getStringValue):
   2806         (WebCore::CSSPrimitiveValue::cssText):
   2807         (WebCore::CSSPrimitiveValue::parserValue):
   2808         * css/CSSPrimitiveValue.h:
   2809         (WebCore::CSSPrimitiveValue::):
   2810         (WebCore::CSSPrimitiveValue::isVariable):
   2811         * css/CSSStyleSelector.cpp:
   2812         (WebCore::CSSStyleSelector::addMatchedDeclaration):
   2813         * css/CSSVariablesRule.cpp:
   2814         (WebCore::CSSVariablesRule::CSSVariablesRule):
   2815         (WebCore::CSSVariablesRule::cssText):
   2816         * css/CSSVariablesRule.h:
   2817         (WebCore::CSSVariablesRule::create):
   2818         * css/maketokenizer:
   2819         * css/tokenizer.flex:
   2820 
   2821 2008-07-25  Maxime Britto  <britto (a] apple.com>
   2822 
   2823         Reviewed by Anders Carlsson.
   2824 
   2825         <rdar://6102387> "REGRESSION: horizontal scroll with the mouse wheel is inverted on some subframes"
   2826 
   2827         * page/EventHandler.cpp:
   2828         (WebCore::EventHandler::handleWheelEvent): Inverted the scroll direction relative to the delta value (positive scrolls left,negative scrolls right)
   2829 
   2830 2008-07-25  Adele Peterson  <adele (a] apple.com>
   2831 
   2832         Another build fix.
   2833 
   2834         * platform/win/PlatformScrollBarSafari.cpp:
   2835         (WebCore::PlatformScrollbar::paint):
   2836 
   2837 2008-07-25  Adele Peterson  <adele (a] apple.com>
   2838 
   2839         More build fixes.
   2840 
   2841         * platform/win/PlatformScrollBarSafari.cpp:
   2842         (WebCore::PlatformScrollbar::paint):
   2843 
   2844 2008-07-25  Adele Peterson  <adele (a] apple.com>
   2845 
   2846         Build fix.
   2847 
   2848         * platform/win/PlatformScrollBarSafari.cpp:
   2849 
   2850 2008-07-24  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   2851 
   2852         Reviewed by Simon
   2853 
   2854         Provide access to the underlying QKeyEvent in PlatformKeyboardEvent.
   2855 
   2856         * platform/PlatformKeyboardEvent.h: add accessor and member.
   2857         * platform/qt/PlatformKeyboardEventQt.cpp: copy pointer in ctor.
   2858         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
   2859 
   2860 2008-07-25  Simon Hausmann  <hausmann (a] webkit.org>
   2861 
   2862         Fix linking of QtWebKit against the statically built JavaScriptCore
   2863         library, under Windows/Mac we may need _d/_debug suffixes.
   2864 
   2865         * WebCore.pro:
   2866 
   2867 2008-07-25  Simon Hausmann  <hausmann (a] webkit.org>
   2868 
   2869         Rubber-stamped by Lars.
   2870 
   2871         Fix the Qt build by adapting to the latest ArgList API changes and
   2872         replacing the inclusion of npapi.h in MainThreadScheduler with a forward
   2873         declaration of NPP to avoid an include conflict. npapi.h on X11 includes
   2874         X headers, which include wonderful defines such as "#define Status" that
   2875         cause conflicts.
   2876 
   2877         * bridge/qt/qt_runtime.cpp:
   2878         (KJS::Bindings::findMethodIndex):
   2879         (KJS::Bindings::QtRuntimeConnectionMethod::call):
   2880         * plugins/PluginMainThreadScheduler.h:
   2881 
   2882 2008-07-25  Simon Hausmann  <hausmann (a] webkit.org>
   2883 
   2884         Discussed with and rubber-stamped by Lars.
   2885 
   2886         Fix the build system for the Qt port.
   2887 
   2888         Recent JavaScriptCore changes require the addition of JavaScriptCore/API to the
   2889         include search path. With a build process that combines JavaScriptCore and
   2890         WebCore in one build process/Makefile the existance of
   2891         JavaScriptCore/API/Node.h and WebCore/dom/Node.h causes include conflicts.
   2892 
   2893         This commit solves this by introducing a separate build of JavaScriptCore into
   2894         a static library.
   2895 
   2896         As a result of the split-up a race-condition due to broken dependencies of
   2897         regular source files to header files of generated sources showed up very
   2898         frequently when doing parallel builds (which the buildbot does). This commit at
   2899         the same time tries to address the dependency problem by making the
   2900         addExtraCompiler() function also generate a pseudo extra compiler that
   2901         represents the header file output, so that qmake is aware of the creation of
   2902         the header file for dependency calculation.
   2903 
   2904         At the same time I removed a lot of cruft from the pro files to ease maintenance.
   2905 
   2906         * WebCore.pro:
   2907 
   2908 2008-07-24  kevino  <kevino (a] theolliviers.com>
   2909 
   2910         wx build fix on Win for plugins coode.
   2911 
   2912         * plugins/PluginDatabase.cpp:
   2913         * plugins/PluginView.cpp:
   2914         (WebCore::PluginView::PluginView):
   2915         * plugins/PluginView.h:
   2916 
   2917 2008-07-24  Sam Weinig  <sam (a] webkit.org>
   2918 
   2919         Reviewed by Anders Carlsson.
   2920 
   2921         Make isElementNode() non-virtual for a speedup on many benchmarks
   2922         including 20% on http://ejohn.org/apps/fragment/.
   2923 
   2924         - Replace Node::m_attrWasSpecifiedOrElementHasRareData with bits in 
   2925           Element and Attr where space was available.  Use the new free bit
   2926           to represent if an node is an element or not.
   2927 
   2928         * dom/Attr.cpp:
   2929         (WebCore::Attr::Attr):
   2930         * dom/Attr.h:
   2931         (WebCore::Attr::specified):
   2932         (WebCore::Attr::setSpecified):
   2933         * dom/ContainerNode.cpp:
   2934         (WebCore::ContainerNode::ContainerNode):
   2935         * dom/ContainerNode.h:
   2936         * dom/Element.cpp:
   2937         (WebCore::Element::Element):
   2938         * dom/Element.h:
   2939         (WebCore::Element::hasRareData):
   2940         (WebCore::Element::setHasRareData):
   2941         * dom/EventTargetNode.cpp:
   2942         (WebCore::EventTargetNode::EventTargetNode):
   2943         * dom/EventTargetNode.h:
   2944         * dom/Node.cpp:
   2945         (WebCore::Node::Node):
   2946         * dom/Node.h:
   2947         (WebCore::Node::isElementNode):
   2948 
   2949 2008-07-24  Dan Bernstein  <mitz (a] apple.com>
   2950 
   2951         Reviewed by Dave Hyatt.
   2952 
   2953         - fix <rdar://problem/6082111> REGRESSION (r31876): Root element with percent height does not resize when resizing the window vertically
   2954 
   2955         Not testable in DumpRenderTree
   2956 
   2957         * rendering/RenderView.cpp:
   2958         (WebCore::RenderView::layout): Ensured that all children with percentage
   2959         heights get laid out again if the height changes.
   2960 
   2961 2008-07-24  kevino  <kevino (a] theolliviers.com>
   2962 
   2963         Windows build fix for wx. wx doesn't implement pan scrolling yet. 
   2964 
   2965         * page/EventHandler.cpp:
   2966         (WebCore::EventHandler::handleAutoscroll):
   2967         (WebCore::EventHandler::autoscrollTimerFired):
   2968         (WebCore::EventHandler::stopAutoscrollTimer):
   2969         (WebCore::EventHandler::handleMousePressEvent):
   2970 
   2971 2008-07-24  David Hyatt  <hyatt (a] apple.com>
   2972 
   2973         Fix for bug 18673, crash when using full page zoom on generated content.  Don't call
   2974         intrinsicSizeChanged when we are first setting our style.
   2975 
   2976         Reviewed by olliej
   2977 
   2978         * ChangeLog:
   2979         * rendering/RenderReplaced.cpp:
   2980         (WebCore::RenderReplaced::setStyle):
   2981 
   2982 2008-07-24  Julien Chaffraix  <jchaffraix (a] webkit.org>
   2983 
   2984         Reviewed by Eric.
   2985 
   2986         Bug 20053: .in files should use a custom format instead of XML
   2987 
   2988         - Remove our XML parser perl module (XML::Tiny)
   2989 
   2990         - Add a custom perl parser
   2991 
   2992         - Move XML files to the new format
   2993 
   2994         * bindings/scripts/InFilesParser.pm: Added.
   2995         * bindings/scripts/XMLTiny.pm: Removed.
   2996         * dom/make_names.pl: Switched to our new
   2997         parser.
   2998 
   2999         * html/HTMLAttributeNames.in: Switched to
   3000         our custom format.
   3001         * html/HTMLTagNames.in: Ditto.
   3002         * svg/svgattrs.in: Ditto.
   3003         * svg/svgtags.in: Ditto.
   3004         * svg/xlinkattrs.in: Ditto.
   3005         * xml/xmlattrs.in: Ditto.
   3006 
   3007 2008-07-23  Julien Chaffraix  <jchaffraix (a] webkit.org>
   3008 
   3009         Reviewed by Eric.
   3010 
   3011         Bug 19588: CRASH doing open() on destroyed window
   3012         https://bugs.webkit.org/show_bug.cgi?id=19588
   3013 
   3014         Add frame's page null check as it could have been
   3015         detached from the page.
   3016 
   3017         Test: fast/frames/crash-removed-iframe.html
   3018 
   3019         * bindings/js/JSDOMWindowBase.cpp:
   3020         (WebCore::windowProtoFuncOpen):
   3021         * page/FrameTree.cpp:
   3022         (WebCore::FrameTree::find):
   3023 
   3024 2008-07-23  Dan Bernstein  <mitz (a] apple.com>
   3025 
   3026         Reviewed by Alexey Proskuryakov.
   3027 
   3028         - fix a leak when using hex color values in CSS variables
   3029 
   3030         - fix CSSOM access to hex color values in variables declarations
   3031 
   3032         Test: fast/css/variables/color-hex-test.html
   3033 
   3034         Added a new unit/type, CSS_PARSER_HEXCOLOR, which serves as the unit for
   3035         CSSParserValues coming from colors in hex notation. CSSParserValues can
   3036         no longer have CSS_RGBCOLOR as their unit. CSS_PARSER_HEXCOLOR is also
   3037         used as the type for CSSValues in CSS variables declarations where the
   3038         parser value was a hex color. However the type of all other color
   3039         CSSValues remains CSS_RGBCOLOR.
   3040 
   3041         * css/CSSGrammar.y: Changed to use the new CSS_PARSER_HEXCOLOR value
   3042         for color values in hex notation.
   3043         * css/CSSParser.cpp:
   3044         (WebCore::CSSParser::parseColorFromValue): Updated for the new unit.
   3045         * css/CSSParserValues.cpp:
   3046         (WebCore::CSSParserValue::createCSSValue): Ditto.
   3047         * css/CSSPrimitiveValue.cpp:
   3048         (WebCore::CSSPrimitiveValue::cleanup): Fixed the leak by deref()ing the
   3049         string containing the color.
   3050         (WebCore::CSSPrimitiveValue::cssText): Added support for
   3051         CSS_PARSER_HEXCOLOR for when serializing variable values.
   3052         (WebCore::CSSPrimitiveValue::parserValue): Updated for the new unit.
   3053         * css/CSSPrimitiveValue.h:
   3054         (WebCore::CSSPrimitiveValue::): Added a new unti, CSS_PARSER_HEXCOLOR.
   3055 
   3056 2008-07-23  Beth Dakin  <bdakin (a] apple.com>
   3057 
   3058         Reviewed by Dan Bernstein.
   3059 
   3060         Fix for <rdar://problem/5997215> display: table-row-group 
   3061         for :before content causes a crash
   3062  
   3063         The actual bug fix here is to ddd the generated content container 
   3064         as a child before adding any of the generated content to the 
   3065         container. There are two correctness fixes as well that deal with 
   3066         style changes and correctly.
   3067 
   3068         This patch also makes Node::diff() a static function.
   3069 
   3070         * dom/Node.cpp:
   3071         (WebCore::Node::diff):
   3072         * dom/Node.h:
   3073         (WebCore::Node::):
   3074         (WebCore::Node::recalcStyle):
   3075         * rendering/RenderContainer.cpp:
   3076         (WebCore::findBeforeAfterParent):
   3077         (WebCore::RenderContainer::updateBeforeAfterContentForContainer):
   3078         * svg/SVGUseElement.cpp:
   3079         (WebCore::SVGUseElement::recalcStyle):
   3080 
   3081 2008-07-23  Timothy Hatcher  <timothy (a] apple.com>
   3082 
   3083         Updates the elements DOM tree when nodes are added or removed from
   3084         the inspected document.
   3085 
   3086         https://bugs.webkit.org/show_bug.cgi?id=6590
   3087         <rdar://problem/5712921>
   3088 
   3089         Reviewed by Adam Roben.
   3090 
   3091         * loader/FrameLoader.cpp:
   3092         (WebCore::FrameLoader::dispatchWindowObjectAvailable): Added a call to
   3093         InspectorController::inspectedWindowScriptObjectCleared.
   3094         * page/InspectorController.cpp:
   3095         (WebCore::InspectorController::inspectedWindowScriptObjectCleared):
   3096         Calls the WebInspector.inspectedWindowCleared script function.
   3097         * page/InspectorController.h:
   3098         * page/inspector/ElementsPanel.js:
   3099         (WebInspector.ElementsPanel): Create the event listener callback wrappers.
   3100         (WebInspector.ElementsPanel.prototype.show): Call _updateModifiedNodes if
   3101         there are any recently modified nodes.
   3102         (WebInspector.ElementsPanel.prototype.reset): Remove previous mutation event listeners.
   3103         Adds a check for InspectorController.isWindowVisible to prevent adding
   3104         event listeners when the window isn't visible.
   3105         (WebInspector.ElementsPanel.prototype.inspectedWindowCleared): 
   3106         (WebInspector.ElementsPanel.prototype._addMutationEventListeners): Add DOMNodeInserted,
   3107         DOMNodeRemoved and DOMContentLoaded event listeners to the passed in window or window's document.
   3108         (WebInspector.ElementsPanel.prototype._removeMutationEventListeners): Removes the event listeners
   3109         added in _addMutationEventListeners.
   3110         (WebInspector.ElementsPanel.prototype.updateMutationEventListeners): Call _addMutationEventListeners
   3111         again to reinstate the listners if the document changed or window cleared them.
   3112         (WebInspector.ElementsPanel.prototype.registerMutationEventListeners): Append the window to
   3113         _mutationMonitoredWindows and call _addMutationEventListeners.
   3114         (WebInspector.ElementsPanel.prototype.unregisterMutationEventListeners): Remove the window from
   3115         _mutationMonitoredWindows and call _removeMutationEventListeners.
   3116         (WebInspector.ElementsPanel.prototype.unregisterAllMutationEventListeners): Call
   3117         _removeMutationEventListeners for all windows in _mutationMonitoredWindows and
   3118         clear _mutationMonitoredWindows.
   3119         (WebInspector.ElementsPanel.prototype._contentLoaded): Append the node and parent
   3120         to the recentlyModifiedNodes array. Call _updateModifiedNodesSoon if visible.
   3121         (WebInspector.ElementsPanel.prototype._nodeInserted): Ditto.
   3122         (WebInspector.ElementsPanel.prototype._nodeRemoved): Ditto.
   3123         (WebInspector.ElementsPanel.prototype._updateModifiedNodesSoon): Call
   3124         _updateModifiedNodes on a zero timeout.
   3125         (WebInspector.ElementsPanel.prototype._updateModifiedNodes): Iterate over
   3126         the recentlyModifiedNodes array and call updateChildren on all the parent
   3127         elements that had changes. Only calls updateChildren once per parent element.
   3128         (WebInspector.ElementsPanel.prototype._isAncestorIncludingParentFrames): Return
   3129         false if the nodes are the same. Return true if the nodes are the same while
   3130         looking at ancestor frame elements. THis use to return false, which was incorrect.
   3131         (WebInspector.DOMNodeTreeElement.prototype.onpopulate): Call updateChildren.
   3132         (WebInspector.DOMNodeTreeElement.prototype.updateChildren): Copied from
   3133         onpopulate and changed to rebuild the children elements by adding new children,
   3134         moving existing children and removed old children.
   3135         (WebInspector.DOMNodeTreeElement.prototype.onexpand): If the node has a contentDocument
   3136         call registerMutationEventListeners to track any mutations.
   3137         * page/inspector/inspector.js:
   3138         (WebInspector.inspectedWindowCleared): Call ElementsPanel.inspectedWindowCleared.
   3139         * page/inspector/treeoutline.js:
   3140         (TreeElement.prototype.get hasChildren): Return _hasChildren.
   3141         (TreeElement.prototype.set hasChildren): Set _hasChildren and update the className.
   3142         (TreeElement.prototype.hasAncestor): Return true if the element has the passed in ancestor.
   3143         (TreeElement.prototype.expand): Fix an exception that can happen if expand is
   3144         called before _attach.
   3145         * WebCore/manual-tests/inspector/dom-mutation.html: Added.
   3146         * WebCore/manual-tests/inspector/resources/mutate-frame-2.html: Added.
   3147         * WebCore/manual-tests/inspector/resources/mutate-frame.html: Added.
   3148 
   3149 2008-07-22  Timothy Hatcher  <timothy (a] apple.com>
   3150 
   3151         Fix an exception that occurred when double clicking the closing tag
   3152         of an element in the DOM tree.
   3153 
   3154         Reviewed by Anders Carlsson.
   3155 
   3156         * page/inspector/ElementsPanel.js:
   3157         (WebInspector.ElementsPanel.prototype._ondblclick): Null check
   3158         element.ondblclick.
   3159 
   3160 2008-07-22  Timothy Hatcher  <timothy (a] apple.com>
   3161 
   3162         Fix a regression where elements in subframes would not be revealed
   3163         or selected when inspected from the context menu. This was caused by
   3164         JavaScript equality is not being true for JSInspectedObjectWrappers
   3165         of the same node wrapped with different global ExecStates. This change
   3166         adds a helper function that uses isSameNode to compare wrapped nodes.
   3167 
   3168         https://bugs.webkit.org/show_bug.cgi?id=19377
   3169 
   3170         Reviewed by Adam Roben.
   3171 
   3172         * page/inspector/ElementsPanel.js:
   3173         (WebInspector.ElementsPanel.prototype.set rootDOMNode): Use objectsAreSame
   3174         to compare nodes.
   3175         (WebInspector.ElementsPanel.prototype.set focusedDOMNode): Ditto.
   3176         (WebInspector.ElementsPanel.prototype.set hoveredDOMNode): Ditto. 
   3177         (WebInspector.ElementsPanel.prototype._updateModifiedNodes): Ditto.
   3178         (WebInspector.ElementsPanel.prototype.revealNode): Ditto.
   3179         (WebInspector.ElementsPanel.prototype.updateBreadcrumb): Ditto.
   3180         (WebInspector.DOMNodeTreeElement.prototype.updateChildren): Ditto.
   3181         * page/inspector/treeoutline.js:
   3182         (TreeOutline.prototype.findTreeElement): Add an equal argument
   3183         to accept a functions to compare two representedObjects. Defaults
   3184         to strict equal if not supplied. All current clients pass objectsAreSame.
   3185         * page/inspector/utilities.js:
   3186         (Node.prototype.enclosingNodeOrSelfWithNodeNameInArray): Use objectsAreSame
   3187         to compare nodes.
   3188         (Node.prototype.enclosingNodeOrSelfWithClass): Ditto.
   3189         (Element.prototype.query): Use the ownerDocument of the node, not document.
   3190         (objectsAreSame): Added. Compares strict equal first, then uses isSameNode if
   3191         it exists on both objects.
   3192         (isAncestorNode): Use objectsAreSame to compare nodes.
   3193         (firstCommonNodeAncestor): Ditto.
   3194         (traverseNextNode): Ditto.
   3195 
   3196 2008-07-21  Timothy Hatcher  <timothy (a] apple.com>
   3197 
   3198         Added InspectorController.isWindowVisible to the JavaScript class
   3199         for use in an upcoming change. This will allow the Inspector to not
   3200         perform selective actions while the window is hidden.
   3201 
   3202         Reviewed by Adam Roben.
   3203 
   3204         * page/InspectorController.cpp:
   3205         (WebCore::isWindowVisible): Call InspectorController::windowVisible.
   3206         (WebCore::InspectorController::windowScriptObjectAvailable): Add
   3207         the isWindowVisible function to the JavaScript class.
   3208 
   3209 2008-07-21  Timothy Hatcher  <timothy (a] apple.com>
   3210 
   3211         Added TreeOutline.removeChildAtIndex and TreeElement.removeChildAtIndex
   3212         for efficiency of callers that know the index of the child. This
   3213         will be used in an upcoming change.
   3214 
   3215         Reviewed by Adam Roben.
   3216 
   3217         * page/inspector/treeoutline.js:
   3218         (TreeOutline._removeChildAtIndex): Renamed from _removeChild
   3219         and modified to take an index.
   3220         (TreeOutline._removeChild): Call _removeChildAtIndex with the
   3221         child index found using indexOf.
   3222         (TreeOutline.prototype.removeChildAtIndex): Added. Calls
   3223         TreeOutline._removeChildAtIndex.
   3224         (TreeElement.prototype.removeChildAtIndex): Ditto.
   3225 
   3226 2008-07-21  Timothy Hatcher  <timothy (a] apple.com>
   3227 
   3228         Fixes a regression where TreeOutline.findTreeElement would
   3229         return the parent TreeElement of the representedObject instead
   3230         of the TreeElement for the representedObject. Regressed with the
   3231         fix for bug 19164.
   3232 
   3233         Reviewed by Adam Roben.
   3234 
   3235         * page/inspector/treeoutline.js:
   3236         (TreeOutline.prototype.findTreeElement): When performing a slow search,
   3237         do a final search for representedObject instead of returning item, which
   3238         is the parent of representedObject.
   3239 
   3240 2008-07-23  Adele Peterson  <adele (a] apple.com>
   3241 
   3242         Reviewed by Adam.
   3243 
   3244         WebCore part of fix for <rdar://problem/5698672>  Add drawing callback for a WebKit app to draw its own scrollbars
   3245 
   3246         * WebCore.base.exp: Added symbols.
   3247         * page/Chrome.cpp:
   3248         (WebCore::ChromeClient::paintCustomScrollbar): Added. Calls up to WebKit, which will call a new delegate method.
   3249         (WebCore::ChromeClient::paintCustomScrollCorner): ditto.
   3250         * page/ChromeClient.h:
   3251         * page/Settings.cpp:
   3252         (WebCore::Settings::Settings): Added the ability to store whether or not the application has decided to draw its own scrollbars.
   3253         (WebCore::Settings::setShouldPaintCustomScrollbars):
   3254         * page/Settings.h: (WebCore::Settings::shouldPaintCustomScrollbars):
   3255         * platform/ScrollBar.h: Moved ScrollbarControlSize enum to ScrollTypes.h
   3256         * platform/ScrollTypes.h: (WebCore::): Moved some existing types, and added new ones to be used in WebCore in WebKit.
   3257         * platform/win/PlatformScrollBar.h: Moved ScrollbarPart enum to ScrollTypes.h
   3258         * platform/win/PlatformScrollBarSafari.cpp:
   3259         (WebCore::ScrollbarPartToScrollBarPiece): Added helper function.
   3260         (WebCore::ScrollBarPieceMaskToScrollbarControlPartMask): ditto.
   3261         (WebCore::ScrollbarControlStateFromThemeState): ditto.
   3262         (WebCore::PlatformScrollbar::paint): Consolidated painting so the logic for the individual pieces is all in one place.
   3263          Added new code to paint the custom scrollbars if necessary.
   3264         * platform/win/ScrollViewWin.cpp: (WebCore::ScrollView::paint): Added code to paint the custom scroll corner if necessary.
   3265 
   3266 2008-07-23  Sam Weinig  <sam (a] webkit.org>
   3267 
   3268         Reviewed by Anders Carlsson.
   3269 
   3270         Cleanup and pack the member variables in Node.
   3271 
   3272         * bindings/js/JSNodeCustom.cpp:
   3273         (WebCore::JSNode::mark):
   3274         * dom/Attr.cpp:
   3275         (WebCore::Attr::Attr):
   3276         * dom/Attr.h:
   3277         (WebCore::Attr::specified):
   3278         (WebCore::Attr::setSpecified):
   3279         * dom/ContainerNode.cpp:
   3280         (WebCore::ContainerNode::setFocus):
   3281         * dom/Document.cpp:
   3282         (WebCore::Document::adoptNode):
   3283         * dom/Element.cpp:
   3284         (WebCore::Element::~Element):
   3285         (WebCore::Element::rareData):
   3286         (WebCore::Element::createRareData):
   3287         * dom/Element.h:
   3288         (WebCore::Element::hasRareData):
   3289         (WebCore::Element::setHasRareData):
   3290         * dom/Node.h:
   3291         (WebCore::Node::setIsLink):
   3292         (WebCore::Node::inSubtreeMark):
   3293         (WebCore::Node::setInSubtreeMark):
   3294         (WebCore::Node::attrWasSpecifiedOrElementHasRareData):
   3295         (WebCore::Node::setAttrWasSpecifiedOrElementHasRareData):
   3296         * html/HTMLAnchorElement.cpp:
   3297         (WebCore::HTMLAnchorElement::supportsFocus):
   3298         (WebCore::HTMLAnchorElement::isFocusable):
   3299         (WebCore::HTMLAnchorElement::defaultEventHandler):
   3300         (WebCore::HTMLAnchorElement::parseMappedAttribute):
   3301         (WebCore::HTMLAnchorElement::isLiveLink):
   3302         * html/HTMLImageElement.cpp:
   3303         (WebCore::HTMLImageElement::parseMappedAttribute):
   3304         * html/HTMLInputElement.cpp:
   3305         (WebCore::HTMLInputElement::setInputType):
   3306         * html/HTMLTableElement.cpp:
   3307         (WebCore::HTMLTableElement::attach):
   3308         * svg/SVGAElement.cpp:
   3309         (WebCore::SVGAElement::svgAttributeChanged):
   3310         (WebCore::SVGAElement::defaultEventHandler):
   3311 
   3312 2008-07-23  Kevin Calhoun  <kcalhoun (a] apple.com>
   3313 
   3314         Reviewed by Adele.
   3315 
   3316         Follow-up fix for <rdar://problem/6031039> don't disable track-types when media is in a standalone document
   3317 
   3318         Associate MovieControllers with Movies to support all of the media types QuickTime is able to play in standalone media documents.
   3319 
   3320         * platform/graphics/win/QTMovieWin.cpp:
   3321         (QTMovieWinPrivate::QTMovieWinPrivate):
   3322         (QTMovieWinPrivate::~QTMovieWinPrivate):
   3323         (QTMovieWinPrivate::task):
   3324         (QTMovieWinPrivate::createMovieController):
   3325         (QTMovieWinPrivate::createGWorld):
   3326         (QTMovieWinPrivate::setSize):
   3327         (QTMovieWinPrivate::deleteGWorld):
   3328         (QTMovieWin::play):
   3329         (QTMovieWin::pause):
   3330         (QTMovieWin::setRate):
   3331         (QTMovieWin::setCurrentTime):
   3332         (QTMovieWin::load):
   3333 
   3334 2008-07-23  Kevin Calhoun  <kcalhoun (a] apple.com>
   3335 
   3336         Reviewed by Adele.
   3337 
   3338         Added a debug mode for viewing frames per second for videos.  This is controlled by two 
   3339         independent compiler flags DRAW_FRAME_RATE in MediaPlayerPrivateQTKit.h and MediaPlayerPrivateQuickTimeWin.h.
   3340         Unless either flags is turned on there is no change to the code for video frame drawing.
   3341 
   3342         * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
   3343         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
   3344         (WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
   3345         (WebCore::MediaPlayerPrivate::play):
   3346         (WebCore::MediaPlayerPrivate::pause):
   3347         (WebCore::MediaPlayerPrivate::didEnd):
   3348         (WebCore::MediaPlayerPrivate::repaint):
   3349         (WebCore::MediaPlayerPrivate::paint):
   3350         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
   3351         (WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
   3352         (WebCore::MediaPlayerPrivate::play):
   3353         (WebCore::MediaPlayerPrivate::pause):
   3354         (WebCore::MediaPlayerPrivate::didEnd):
   3355         (WebCore::MediaPlayerPrivate::paint):
   3356         (WebCore::MediaPlayerPrivate::movieNewImageAvailable):
   3357         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.h:
   3358 
   3359 2008-07-23  Adele Peterson  <adele (a] apple.com>
   3360 
   3361         Reviewed by Sam.
   3362 
   3363         Fix for <rdar://problem/6080634> use lower quality CG interpolation in MediaPlayerPrivateQTKit to improve performance
   3364 
   3365         * platform/graphics/GraphicsContext.cpp: (WebCore::GraphicsContext::drawImage):
   3366         Call setImageInterpolationQuality(InterpolationNone) instead of setUseLowQualityImageInterpolation(true).
   3367         * platform/graphics/GraphicsContext.h:
   3368         (WebCore::): Added InterpolationQuality enum.
   3369         (WebCore::GraphicsContext::setImageInterpolationQuality): Renamed from setUseLowQualityImageInterpolation.
   3370         The implementation was always setting the quality to "none", and now we want to distinguish between "none" and "low".
   3371         (WebCore::GraphicsContext::imageInterpolationQuality): Renamed from useLowQualityImageInterpolation.
   3372         * platform/graphics/cg/GraphicsContextCG.cpp:
   3373         (WebCore::GraphicsContext::setImageInterpolationQuality): Added.
   3374         (WebCore::GraphicsContext::imageInterpolationQuality): Added.
   3375         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm: (WebCore::MediaPlayerPrivate::paint):
   3376         Calls setImageInterpolationQuality(InterpolationLow) which will improve the painting performance without degrading quality too much.
   3377 
   3378 2008-07-23  Sam Weinig  <sam (a] webkit.org>
   3379 
   3380         Reviewed by Anders Carlsson.
   3381 
   3382         Remove extraneous allocations by using equalIgnoringCase rather than
   3383         String::lower.
   3384 
   3385         * dom/StyledElement.cpp:
   3386         (WebCore::StyledElement::addCSSColor):
   3387         * html/HTMLCollection.cpp:
   3388         (WebCore::HTMLCollection::checkForNameMatch):
   3389         * html/HTMLFormCollection.cpp:
   3390         (WebCore::HTMLFormCollection::getNamedFormItem):
   3391         * html/HTMLLinkElement.cpp:
   3392         (WebCore::HTMLLinkElement::tokenizeRelAttribute):
   3393         * html/HTMLObjectElement.cpp:
   3394         (WebCore::HTMLObjectElement::containsJavaApplet):
   3395         * html/PreloadScanner.cpp:
   3396         (WebCore::PreloadScanner::emitCSSRule):
   3397         * loader/FrameLoader.cpp:
   3398         (WebCore::FrameLoader::createJavaAppletWidget):
   3399         * page/DOMSelection.cpp:
   3400         (WebCore::DOMSelection::modify):
   3401         * rendering/RenderPartObject.cpp:
   3402         (WebCore::RenderPartObject::updateWidget):
   3403 
   3404 2008-07-23  Maxime Britto  <britto (a] apple.com>
   3405 
   3406         Reviewed by Adam Roben.
   3407 
   3408         <rdar://6092952> "REGRESSION: Crash beneath EventHandler::stopAutoscrollTimer() when closing Gmail"
   3409         Add a check for the m_page member value before asking for page()->mainFrame()
   3410 
   3411         * page/EventHandler.cpp:
   3412         (WebCore::EventHandler::stopAutoscrollTimer):
   3413 
   3414 2008-07-23  Kevin Calhoun  <kcalhoun (a] apple.com>
   3415 
   3416        Reviewed by Adele.
   3417 
   3418        Fix for <rdar://problem/5710065> QT movies should be inactive when opened
   3419 
   3420        Implemented deferral of set-up of video rendering on Mac until the ready state is Loaded and 
   3421        until after movie tracks of unsupported types have been disabled, to make sure they never draw.
   3422 
   3423         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
   3424         (WebCore::MediaPlayerPrivate::load):
   3425         (WebCore::MediaPlayerPrivate::updateStates):
   3426         (WebCore::MediaPlayerPrivate::setVisible):
   3427 
   3428 2008-07-22  Maxime Britto  <britto (a] apple.com>
   3429 
   3430         Reviewed by John Sullivan.
   3431 
   3432         <rdar://problem/6083116>
   3433         When pan-scrolling, Back then Forward causes pan-scrolling to start again
   3434 
   3435         * page/Frame.cpp:
   3436         (WebCore::Frame::clearTimers): Ask to stop the autoscroll timer when we clear the timers from the frame
   3437         * loader/FrameLoader.cpp:
   3438         (WebCore::FrameLoader::scrollToAnchor): When the link is an anchor we Frame::clearTimers() isn't called since we're only scrolling the page so we need to ask to stop the autoscroll timer here too.
   3439 
   3440 2008-07-22  Geoffrey Garen  <ggaren (a] apple.com>
   3441 
   3442         Reviewed by Oliver Hunt and Sam Weinig.
   3443 
   3444         Next step toward putting doubles in registers: Prepare the Register class
   3445         and its clients for registers that don't contain JSValue*s.
   3446         
   3447 2008-07-22  Sam Weinig  <sam (a] webkit.org>
   3448 
   3449         Reviewed by Mark Rowe.
   3450 
   3451         <rdar://problem/5788451> toDataURL not implemented for Windows (need mapping of MIME type to UTI)
   3452         Add additional support for JPEG and GIF for toDataURL encoding canvases.
   3453 
   3454         * platform/MIMETypeRegistry.cpp:
   3455         (WebCore::initializeSupportedImageMIMETypesForEncoding):
   3456         * platform/graphics/cg/ImageBufferCG.cpp:
   3457         (WebCore::utiFromMIMEType):
   3458 
   3459 2008-07-22  Chris Fleizach  <cfleizach (a] apple.com>
   3460 
   3461         Reviewed by Dave Hyatt.
   3462 
   3463         <rdar://problem/6004877> internal anchors on this page are not showing up in the AXLinkedUIElements
   3464         Test: accessibility/internal-link-anchors2.html
   3465 
   3466         * page/AccessibilityRenderObject.cpp:
   3467         (WebCore::AccessibilityRenderObject::internalLinkElement):
   3468 
   3469 2008-07-22  Anders Carlsson  <andersca (a] apple.com>
   3470 
   3471         Reviewed by Adam.
   3472 
   3473         Allocate the empty StringImpl from the heap.
   3474         
   3475         * platform/text/StringImpl.cpp:
   3476         (WebCore::StringImpl::empty):
   3477 
   3478 2008-07-21  Kevin McCullough  <kmccullough (a] apple.com>
   3479 
   3480         Reviewed by Tim.
   3481 
   3482         <rdar://problem/5951532> JSProfiler: Implement heavy (or bottom-up)
   3483         view (19228)
   3484         - Implement UI for Heavy (Bottom Up) view.
   3485 
   3486         * English.lproj/localizedStrings.js:
   3487         * page/JavaScriptProfile.cpp: Expose the ability to get a heavy/tree
   3488         profile from a profile to the Web Inspector's JavaScript.
   3489         (WebCore::getHeavyProfileCallback):
   3490         (WebCore::getTreeProfileCallback):
   3491         (WebCore::ProfileClass):
   3492         * page/inspector/ProfileView.js: Implement the dropdown for changing
   3493         profile views.
   3494         * page/inspector/inspector.css:
   3495 
   3496 2008-07-22  Alexey Proskuryakov  <ap (a] webkit.org>
   3497 
   3498         Reviewed by Adam Roben.
   3499 
   3500         <rdar://problem/5955602> WebKit should support charset name x-windows-949
   3501 
   3502         Test: fast/encoding/char-decoding.html
   3503 
   3504         * platform/text/TextCodecICU.cpp:
   3505         (WebCore::TextCodecICU::registerExtendedEncodingNames): Added support for this name for
   3506         Firefox compatibility.
   3507 
   3508 2008-07-22  Gavin Barraclough  <barraclough (a] apple.com>
   3509 
   3510         Reviewed by Alexey Proskuryakov.
   3511 
   3512         New test to check that arrays fail gracefully (throw an out of memory exception)
   3513         when the vector grows to large.
   3514 
   3515         * manual-tests/array-out-of-memory.html: Added.
   3516 
   3517 2008-07-21  Alexey Proskuryakov  <ap (a] webkit.org>
   3518 
   3519         Reviewed by Dan Bernstein.
   3520 
   3521         https://bugs.webkit.org/show_bug.cgi?id=20117
   3522         setBaseAndExtent fails to reverse the current selection
   3523 
   3524         Test: editing/selection/setBaseAndExtent-revert-selection.html
   3525 
   3526         * editing/Selection.h: (WebCore::operator==): Compare direction, too.
   3527 
   3528 2008-07-21  Julien Chaffraix  <jchaffraix (a] webkit.org>
   3529 
   3530         Reviewed by Sam Weinig.
   3531 
   3532         Bug 19919: Add selectors' string parsing in CSSParser
   3533         https://bugs.webkit.org/show_bug.cgi?id=19919
   3534 
   3535         No functional change.
   3536 
   3537         * css/CSSGrammar.y: Added entry for parsing only a selector.
   3538         * css/CSSParser.cpp:
   3539         (WebCore::CSSParser::CSSParser):
   3540         (WebCore::CSSParser::parseSelector):
   3541         * css/CSSParser.h: Added m_floatingSelector to hold the
   3542         Selector parsed in parseSelector.
   3543 
   3544         * css/tokenizer.flex: Added "@-webkit-selector" token.
   3545         * dom/Node.cpp:
   3546         (WebCore::Node::querySelector):
   3547         (WebCore::Node::querySelectorAll): Switched to parseSelector
   3548         method.
   3549 
   3550 2008-07-21  Kevin Calhoun  <kcalhoun (a] apple.com>
   3551 
   3552         Reviewed by Adele.
   3553 
   3554         Fix for <rdar://problem/6081160> REGRESSION: Hang loading many pages if QuickTime isn't installed
   3555 
   3556         * platform/graphics/win/QTMovieWin.cpp:
   3557         (initializeSupportedTypes): Do a Quicktime version minimum version check.
   3558         (QTMovieWin::initializeQuickTime): Store the Quicktime version globally so in can be used in initializeSupportedTypes as well.
   3559 
   3560 2008-07-21  Kevin Calhoun  <kcalhoun (a] apple.com>
   3561 
   3562         Reviewed by Adele.
   3563 
   3564         Fix for <rdar://problem/5713336> <video> and <audio> elements that use a autoplay attribute fail to start playing when returning back to page
   3565 
   3566         * html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::willSaveToCache): Reset the ready state to DATA_UNAVAILABLE when saving to the cache
   3567         so that everything starts back up normally when the page is retrieved from the cache.
   3568 
   3569 2008-07-21  Sam Weinig  <sam (a] webkit.org>
   3570 
   3571         Reviewed by Mark Rowe.
   3572 
   3573         Remove unused interface declaration.
   3574 
   3575         * platform/network/mac/ResourceHandleMac.mm:
   3576 
   3577 2008-07-21  Mark Rowe  <mrowe (a] apple.com>
   3578 
   3579         Reviewed by Sam Weinig.
   3580 
   3581         <rdar://problem/6091287> Revamp the handling of CFBundleShortVersionString to be fixed at the major component of the version number.
   3582 
   3583         * Configurations/Version.xcconfig:
   3584         * Info.plist:
   3585 
   3586 2008-07-21  Kevin Calhoun  <kcalhoun (a] apple.com>
   3587 
   3588         Reviewed by Adele.
   3589 
   3590         Fix for <rdar://problem/6031039> don't disable track-types when media is in a standalone document
   3591 
   3592         * platform/graphics/MediaPlayer.cpp: (WebCore::MediaPlayer::inMediaDocument): Added.
   3593         * platform/graphics/MediaPlayer.h:
   3594         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm: (WebCore::MediaPlayerPrivate::updateStates):
   3595         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp: (WebCore::MediaPlayerPrivate::updateStates):
   3596 
   3597 2008-07-21  Anders Carlsson  <andersca (a] apple.com>
   3598 
   3599         Reviewed by Jon.
   3600 
   3601         Don't allow requests to be made when the document loader is stopping all loaders.
   3602 
   3603         * plugins/PluginView.cpp:
   3604         (WebCore::PluginView::load):
   3605 
   3606 2008-07-20  Maxime Britto  <britto (a] apple.com>
   3607 
   3608         Reviewed by John Sullivan.
   3609 
   3610         [PFR] <rdar://problem/6080639> New middle click scrolling speed seems much slower than in FF
   3611         Accelerate and enhance the smoothness of the pan scrollling.
   3612 
   3613         * page/EventHandler.cpp: Changed the TimerInterval from 0.1 to 0.05. The scrolling is way more fluid like this.
   3614         * rendering/RenderLayer.cpp: 
   3615         (WebCore::RenderLayer::panScrollFromPoint): Differentiate the speed within a 200 pixel side square, around the original click location to the speed for farther distances. This way we allow easyier handle when we are close to the center and very fast scrolling when we go far from the original point.
   3616 
   3617 2008-07-18  David Hyatt  <hyatt (a] apple.com>
   3618 
   3619         Change the cached clip rects to not assume they should be infinite when the root layer has been
   3620         shifted as the result of a transformation.
   3621 
   3622         Reviewed by Maciej
   3623 
   3624         Added fast/transforms/overflow-with-transform.html
   3625 
   3626         * rendering/RenderLayer.cpp:
   3627         (WebCore::RenderLayer::calculateClipRects):
   3628 
   3629 2008-07-21  Rob Buis  <buis (a] kde.org>
   3630 
   3631         Reviewed by Mitz.
   3632 
   3633         https://bugs.webkit.org/show_bug.cgi?id=19966
   3634         CSS variables crash when using hex notation for colors
   3635 
   3636         Support hex colors as values for the css variables.
   3637 
   3638         Test: fast/css/variables/color-hex-test.html
   3639 
   3640         * css/CSSParserValues.cpp:
   3641         (WebCore::CSSParserValue::createCSSValue):
   3642         * css/CSSPrimitiveValue.cpp:
   3643         (WebCore::CSSPrimitiveValue::parserValue):
   3644         * css/CSSVariablesRule.cpp:
   3645 
   3646 2008-07-21  Simon Hausmann  <hausmann (a] webkit.org>
   3647 
   3648         Reviewed by Holger.
   3649 
   3650         Fix drawing of windowless plugins on Windows with the Qt port by
   3651         avoiding the reset of the translation of the HDC to 0, 0.
   3652 
   3653         * plugins/win/PluginViewWin.cpp:
   3654         (WebCore::PluginView::paint):
   3655 
   3656 2008-07-21  Simon Hausmann  <hausmann (a] webkit.org>
   3657 
   3658         Reviewed by Holger.
   3659 
   3660         Fix rendering of transparent windowless netscape plugins by passing
   3661         the right conversion parameter to QPixmap::fromWinHBITMAP when
   3662         converting from HBITMAP to QPixmap.
   3663 
   3664         * platform/graphics/qt/GraphicsContextQt.cpp:
   3665         (WebCore::GraphicsContext::releaseWindowsContext):
   3666 
   3667 2008-07-21  Simon Hausmann  <hausmann (a] webkit.org>
   3668 
   3669         Reviewed by Holger.
   3670 
   3671         In the implementation of getValue for NPNVnetscapeWindow treat
   3672         windowHandleForPlatformWidget on the return value of
   3673         containingWindow() to receive the correct HWND for the Qt port.
   3674 
   3675         * plugins/win/PluginViewWin.cpp:
   3676         (WebCore::PluginView::getValue):
   3677 
   3678 2008-07-21  Simon Hausmann  <hausmann (a] webkit.org>
   3679 
   3680         Reviewed by Holger.
   3681 
   3682         Fix windowHandleForPlatformWidget to return 0 as HWND if we don't have
   3683         a QWidget. This can happen on page/view destruction for example.
   3684 
   3685         * plugins/win/PluginViewWin.cpp:
   3686         (windowHandleForPlatformWidget):
   3687 
   3688 2008-07-20  Steve Falkenburg  <sfalken (a] apple.com>
   3689 
   3690         Touch file to force rebuild for vsprops change.
   3691 
   3692         * WebCorePrefix.h:
   3693 
   3694 2008-07-20  Sam Weinig  <sam (a] webkit.org>
   3695 
   3696         Remove extra space Oliver Hunt left in.
   3697 
   3698         * page/Console.cpp:
   3699         (WebCore::Console::reportException):
   3700         (WebCore::Console::reportCurrentException):
   3701 
   3702 2008-07-20  Oliver Hunt  <oliver (a] apple.com>
   3703 
   3704         Reviewed by Dan Bernstein.
   3705 
   3706         Bug 19757: Crash when an ondragstart handler hides the element
   3707         <https://bugs.webkit.org/show_bug.cgi?id=19757>
   3708 
   3709         The solution to this is problem is just to null check the renderer
   3710         immediately before launching the system drag, and terminate the
   3711         drag if the renderer is gone.
   3712 
   3713         * page/EventHandler.cpp:
   3714         (WebCore::EventHandler::handleDrag):
   3715 
   3716 2008-07-20  Nikolas Zimmermann  <zimmermann (a] kde.org>
   3717 
   3718         Reviewed by Oliver.
   3719 
   3720         Fixes: https://bugs.webkit.org/show_bug.cgi?id=12171
   3721 
   3722         Remove manual SVG property <-> XML attribute synchronization in SVGPolyElement.
   3723         Added svg/custom/poly-points-attribute-changes.svg (testcase from Rob)
   3724 
   3725         * svg/SVGPointList.cpp:
   3726         (WebCore::SVGPointList::valueAsString):
   3727         * svg/SVGPointList.h:
   3728         (WebCore::SVGPointList::create):
   3729         * svg/SVGPolyElement.cpp:
   3730         (WebCore::SVGPolyElement::SVGPolyElement):
   3731         (WebCore::SVGPolyElement::svgAttributeChanged):
   3732         (WebCore::SVGPolyElement::updateAnimatedSVGAttribute):
   3733         * svg/SVGPolyElement.h:
   3734 
   3735 2008-07-20  Nikolas Zimmermann  <zimmermann (a] kde.org>
   3736 
   3737         Reviewed by Oliver.
   3738 
   3739         Cleanup JSSVGPODTypeWrapper code.
   3740 
   3741         Rename: JSSVGPODTypeWrapperCreatorReadOnly -> JSSVGStaticPODTypeWrapper
   3742                 JSSVGPODTypeWrapperReadWrite       -> JSSVGDynamicPODTypeWrapper
   3743                 JSSVGPODTypeWrapperCache           -> JSSVGDynamicPODTypeWrapperCacheCache
   3744 
   3745         No functional changes.
   3746 
   3747         * bindings/js/JSSVGMatrixCustom.cpp:
   3748         (WebCore::JSSVGMatrix::multiply):
   3749         (WebCore::JSSVGMatrix::inverse):
   3750         (WebCore::JSSVGMatrix::translate):
   3751         (WebCore::JSSVGMatrix::scale):
   3752         (WebCore::JSSVGMatrix::scaleNonUniform):
   3753         (WebCore::JSSVGMatrix::rotate):
   3754         (WebCore::JSSVGMatrix::rotateFromVector):
   3755         (WebCore::JSSVGMatrix::flipX):
   3756         (WebCore::JSSVGMatrix::flipY):
   3757         (WebCore::JSSVGMatrix::skewX):
   3758         (WebCore::JSSVGMatrix::skewY):
   3759         * bindings/js/JSSVGPODTypeWrapper.h:
   3760         (WebCore::JSSVGDynamicPODTypeWrapper::create):
   3761         (WebCore::JSSVGDynamicPODTypeWrapper::operator PODType):
   3762         (WebCore::JSSVGDynamicPODTypeWrapper::JSSVGDynamicPODTypeWrapper):
   3763         (WebCore::JSSVGStaticPODTypeWrapper::create):
   3764         (WebCore::JSSVGStaticPODTypeWrapper::operator PODType):
   3765         (WebCore::JSSVGStaticPODTypeWrapper::JSSVGStaticPODTypeWrapper):
   3766         (WebCore::JSSVGPODTypeWrapperCreatorForList::create):
   3767         (WebCore::JSSVGPODTypeWrapperCreatorForList::operator PODType):
   3768         (WebCore::JSSVGPODTypeWrapperCreatorForList::JSSVGPODTypeWrapperCreatorForList):
   3769         (WebCore::PODTypeWrapperCacheInfo::PODTypeWrapperCacheInfo):
   3770         (WebCore::PODTypeWrapperCacheInfo::operator==):
   3771         (WebCore::PODTypeWrapperCacheInfoHash::hash):
   3772         (WebCore::PODTypeWrapperCacheInfoHash::equal):
   3773         (WebCore::PODTypeWrapperCacheInfoTraits::emptyValue):
   3774         (WebCore::PODTypeWrapperCacheInfoTraits::constructDeletedValue):
   3775         (WebCore::PODTypeWrapperCacheInfoTraits::isDeletedValue):
   3776         (WebCore::JSSVGDynamicPODTypeWrapperCache::dynamicWrapperHashMap):
   3777         (WebCore::JSSVGDynamicPODTypeWrapperCache::lookupOrCreateWrapper):
   3778         (WebCore::JSSVGDynamicPODTypeWrapperCache::forgetWrapper):
   3779         * bindings/js/JSSVGPointListCustom.cpp:
   3780         (WebCore::finishGetter):
   3781         (WebCore::finishSetter):
   3782         (WebCore::finishSetterReadOnlyResult):
   3783         (WebCore::JSSVGPointList::initialize):
   3784         (WebCore::JSSVGPointList::insertItemBefore):
   3785         (WebCore::JSSVGPointList::replaceItem):
   3786         (WebCore::JSSVGPointList::appendItem):
   3787         * bindings/js/JSSVGTransformListCustom.cpp:
   3788         (WebCore::finishGetter):
   3789         (WebCore::finishSetter):
   3790         (WebCore::finishSetterReadOnlyResult):
   3791         (WebCore::JSSVGTransformList::initialize):
   3792         (WebCore::JSSVGTransformList::getItem):
   3793         (WebCore::JSSVGTransformList::insertItemBefore):
   3794         (WebCore::JSSVGTransformList::replaceItem):
   3795         (WebCore::JSSVGTransformList::removeItem):
   3796         (WebCore::JSSVGTransformList::appendItem):
   3797         * bindings/scripts/CodeGeneratorJS.pm:
   3798 
   3799 2008-07-19  Oliver Hunt  <oliver (a] apple.com>
   3800 
   3801         Reviewed by Mark Rowe.
   3802 
   3803         Bug 15979: Console logs in a database callback lose line number information
   3804         <https://bugs.webkit.org/show_bug.cgi?id=15979>
   3805 
   3806         The problem was that there were multiple versions of the logic to
   3807         log an exception to the console, many of which were incorrect.  We
   3808         resolve this by making one single shared reportException method,
   3809         which handles the exceptions correctly.
   3810 
   3811         This improves fidelity of callback errors, and ensures that
   3812         exceptions thrown in timer callbacks correctly report line numbers,
   3813         etc.
   3814 
   3815         Test: fast/js/exceptions-thrown-in-callbacks.html
   3816 
   3817         * bindings/js/JSCustomSQLStatementCallback.cpp:
   3818         (WebCore::JSCustomSQLStatementCallback::handleEvent):
   3819         * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
   3820         (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
   3821         * bindings/js/JSCustomSQLTransactionCallback.cpp:
   3822         (WebCore::JSCustomSQLTransactionCallback::handleEvent):
   3823         * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
   3824         (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent):
   3825         * bindings/js/JSCustomVoidCallback.cpp:
   3826         (WebCore::JSCustomVoidCallback::handleEvent):
   3827         * bindings/js/JSCustomXPathNSResolver.cpp:
   3828         (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
   3829         * bindings/js/JSEventListener.cpp:
   3830         (WebCore::JSAbstractEventListener::handleEvent):
   3831         * bindings/js/ScheduledAction.cpp:
   3832         (WebCore::ScheduledAction::execute):
   3833         * bindings/js/ScriptController.cpp:
   3834         (WebCore::ScriptController::evaluate):
   3835         * bindings/objc/WebScriptObject.mm:
   3836         (WebCore::addExceptionToConsole):
   3837         * page/Console.cpp:
   3838         (WebCore::Console::reportException):
   3839         * page/Console.h:
   3840 
   3841 2008-07-20  Nikolas Zimmermann  <zimmermann (a] kde.org>
   3842 
   3843         Rubber stamped by Oliver.
   3844 
   3845         Another attempt to fix the win build.
   3846 
   3847         * svg/SVGAnimatedProperty.h:
   3848 
   3849 2008-07-20  Alexey Proskuryakov  <ap (a] webkit.org>
   3850 
   3851         Reviewed by David Kilzer.
   3852 
   3853         Fix high CPU usage on testmyiphone.com.
   3854 
   3855         - Made the logic for determining when to stop looking for meta charset more strainghtforward.
   3856         Previously, this happened if a tag that's disallowed in HEAD was seen past the first 512
   3857         bytes. Now, the algorithm bails out at the boundary if we are lo longer in HEAD (i.e, an
   3858         offending tag was seen at any point before).
   3859 
   3860         - The above change made one of our regression tests fail, because it had its <meta>
   3861         declaration past the 512 byte boundary. Fixed it by raising the boundary to 1024 bytes.
   3862 
   3863         - Made the algorithm bail out quickly if a comment that's not in HEAD crosses the boundary.
   3864 
   3865         - Moved a check for XML content type out of the loop.
   3866 
   3867         * loader/TextResourceDecoder.cpp:
   3868         (WebCore::TextResourceDecoder::checkForHeadCharset): 
   3869 
   3870 2008-07-20  Oliver Hunt  <oliver (a] apple.com>
   3871 
   3872         Reviewed by NOBODY (build fix).
   3873 
   3874         Attempt to fix windows build
   3875 
   3876         * svg/SVGAnimatedProperty.h:
   3877 
   3878 2008-07-19  Nikolas Zimmermann  <zimmermann (a] kde.org>
   3879 
   3880         Reviewed by Oliver & parts by Eric.
   3881 
   3882         Fixes: https://bugs.webkit.org/show_bug.cgi?id=20051
   3883 
   3884         Rewrite animated property concept without heavy macro usage, replace by a templatified solution.
   3885         Fewer virtual function calls, no more usage of the tear-off's within internal code (synchronization needed it before.)
   3886 
   3887         * dom/Element.cpp:
   3888         (WebCore::Element::attributes):
   3889         (WebCore::Element::getAttribute):
   3890         (WebCore::Element::hasAttributes):
   3891         * dom/Element.h:
   3892         (WebCore::Element::updateAnimatedSVGAttribute): Take const String&, not StringImpl*.
   3893         * svg/SVGAElement.cpp:
   3894         (WebCore::SVGAElement::SVGAElement):
   3895         * svg/SVGAElement.h:
   3896         * svg/SVGAltGlyphElement.h:
   3897         * svg/SVGAnimatedProperty.h: Added.
   3898         * svg/SVGAnimatedTemplate.h:
   3899         (WebCore::lookupOrCreateWrapper):
   3900         * svg/SVGAnimationElement.h:
   3901         * svg/SVGCircleElement.cpp:
   3902         (WebCore::SVGCircleElement::SVGCircleElement):
   3903         * svg/SVGCircleElement.h:
   3904         * svg/SVGClipPathElement.cpp:
   3905         (WebCore::SVGClipPathElement::SVGClipPathElement):
   3906         * svg/SVGClipPathElement.h:
   3907         * svg/SVGComponentTransferFunctionElement.cpp:
   3908         (WebCore::SVGComponentTransferFunctionElement::SVGComponentTransferFunctionElement):
   3909         * svg/SVGComponentTransferFunctionElement.h:
   3910         * svg/SVGCursorElement.cpp:
   3911         (WebCore::SVGCursorElement::SVGCursorElement):
   3912         * svg/SVGCursorElement.h:
   3913         * svg/SVGDefsElement.h:
   3914         (WebCore::SVGDefsElement::contextElement):
   3915         * svg/SVGElement.cpp:
   3916         (WebCore::SVGElement::updateAnimatedSVGAttribute):
   3917         * svg/SVGElement.h:
   3918         (WebCore::SVGElement::supplementalTransform):
   3919         (WebCore::SVGElement::invokeSVGPropertySynchronizer):
   3920         (WebCore::SVGElement::invokeAllSVGPropertySynchronizers):
   3921         (WebCore::SVGElement::addSVGPropertySynchronizer):
   3922         * svg/SVGEllipseElement.cpp:
   3923         (WebCore::SVGEllipseElement::SVGEllipseElement):
   3924         * svg/SVGEllipseElement.h:
   3925         * svg/SVGExternalResourcesRequired.cpp:
   3926         (WebCore::SVGExternalResourcesRequired::SVGExternalResourcesRequired):
   3927         * svg/SVGExternalResourcesRequired.h:
   3928         * svg/SVGFEBlendElement.cpp:
   3929         (WebCore::SVGFEBlendElement::SVGFEBlendElement):
   3930         * svg/SVGFEBlendElement.h:
   3931         * svg/SVGFEColorMatrixElement.cpp:
   3932         (WebCore::SVGFEColorMatrixElement::SVGFEColorMatrixElement):
   3933         * svg/SVGFEColorMatrixElement.h:
   3934         * svg/SVGFEComponentTransferElement.cpp:
   3935         (WebCore::SVGFEComponentTransferElement::SVGFEComponentTransferElement):
   3936         * svg/SVGFEComponentTransferElement.h:
   3937         * svg/SVGFECompositeElement.cpp:
   3938         (WebCore::SVGFECompositeElement::SVGFECompositeElement):
   3939         * svg/SVGFECompositeElement.h:
   3940         * svg/SVGFEDiffuseLightingElement.cpp:
   3941         (WebCore::SVGFEDiffuseLightingElement::SVGFEDiffuseLightingElement):
   3942         * svg/SVGFEDiffuseLightingElement.h:
   3943         * svg/SVGFEDisplacementMapElement.cpp:
   3944         (WebCore::SVGFEDisplacementMapElement::SVGFEDisplacementMapElement):
   3945         * svg/SVGFEDisplacementMapElement.h:
   3946         * svg/SVGFEFloodElement.h:
   3947         * svg/SVGFEGaussianBlurElement.cpp:
   3948         (WebCore::SVGFEGaussianBlurElement::SVGFEGaussianBlurElement):
   3949         * svg/SVGFEGaussianBlurElement.h:
   3950         * svg/SVGFEImageElement.cpp:
   3951         (WebCore::SVGFEImageElement::SVGFEImageElement):
   3952         * svg/SVGFEImageElement.h:
   3953         * svg/SVGFELightElement.cpp:
   3954         (WebCore::SVGFELightElement::SVGFELightElement):
   3955         * svg/SVGFELightElement.h:
   3956         (WebCore::SVGFELightElement::contextElement):
   3957         * svg/SVGFEMergeElement.h:
   3958         * svg/SVGFEMergeNodeElement.cpp:
   3959         (WebCore::SVGFEMergeNodeElement::SVGFEMergeNodeElement):
   3960         * svg/SVGFEMergeNodeElement.h:
   3961         * svg/SVGFEOffsetElement.cpp:
   3962         (WebCore::SVGFEOffsetElement::SVGFEOffsetElement):
   3963         * svg/SVGFEOffsetElement.h:
   3964         * svg/SVGFESpecularLightingElement.cpp:
   3965         (WebCore::SVGFESpecularLightingElement::SVGFESpecularLightingElement):
   3966         * svg/SVGFESpecularLightingElement.h:
   3967         * svg/SVGFETileElement.cpp:
   3968         (WebCore::SVGFETileElement::SVGFETileElement):
   3969         * svg/SVGFETileElement.h:
   3970         * svg/SVGFETurbulenceElement.cpp:
   3971         (WebCore::SVGFETurbulenceElement::SVGFETurbulenceElement):
   3972         * svg/SVGFETurbulenceElement.h:
   3973         * svg/SVGFilterElement.cpp:
   3974         (WebCore::SVGFilterElement::SVGFilterElement):
   3975         * svg/SVGFilterElement.h:
   3976         * svg/SVGFilterPrimitiveStandardAttributes.cpp:
   3977         (WebCore::SVGFilterPrimitiveStandardAttributes::SVGFilterPrimitiveStandardAttributes):
   3978         * svg/SVGFilterPrimitiveStandardAttributes.h:
   3979         * svg/SVGFitToViewBox.cpp:
   3980         (WebCore::SVGFitToViewBox::SVGFitToViewBox):
   3981         * svg/SVGFitToViewBox.h:
   3982         * svg/SVGFontElement.h:
   3983         (WebCore::SVGFontElement::rendererIsNeeded):
   3984         (WebCore::SVGFontElement::contextElement):
   3985         * svg/SVGForeignObjectElement.cpp:
   3986         (WebCore::SVGForeignObjectElement::SVGForeignObjectElement):
   3987         * svg/SVGForeignObjectElement.h:
   3988         * svg/SVGGElement.h:
   3989         * svg/SVGGradientElement.cpp:
   3990         (WebCore::SVGGradientElement::SVGGradientElement):
   3991         * svg/SVGGradientElement.h:
   3992         (WebCore::SVGGradientElement::contextElement):
   3993         * svg/SVGImageElement.cpp:
   3994         (WebCore::SVGImageElement::SVGImageElement):
   3995         * svg/SVGImageElement.h:
   3996         * svg/SVGLineElement.cpp:
   3997         (WebCore::SVGLineElement::SVGLineElement):
   3998         * svg/SVGLineElement.h:
   3999         * svg/SVGLinearGradientElement.cpp:
   4000         (WebCore::SVGLinearGradientElement::SVGLinearGradientElement):
   4001         * svg/SVGLinearGradientElement.h:
   4002         * svg/SVGMarkerElement.cpp:
   4003         (WebCore::SVGMarkerElement::SVGMarkerElement):
   4004         (WebCore::SVGMarkerElement::canvasResource):
   4005         * svg/SVGMarkerElement.h:
   4006         * svg/SVGMaskElement.cpp:
   4007         (WebCore::SVGMaskElement::SVGMaskElement):
   4008         * svg/SVGMaskElement.h:
   4009         * svg/SVGPathElement.cpp:
   4010         (WebCore::SVGPathElement::SVGPathElement):
   4011         (WebCore::SVGPathElement::parseMappedAttribute):
   4012         * svg/SVGPathElement.h:
   4013         * svg/SVGPatternElement.cpp:
   4014         (WebCore::SVGPatternElement::SVGPatternElement):
   4015         * svg/SVGPatternElement.h:
   4016         (WebCore::SVGPatternElement::contextElement):
   4017         * svg/SVGPolyElement.h:
   4018         * svg/SVGPreserveAspectRatio.cpp:
   4019         * svg/SVGRadialGradientElement.cpp:
   4020         (WebCore::SVGRadialGradientElement::SVGRadialGradientElement):
   4021         * svg/SVGRadialGradientElement.h:
   4022         * svg/SVGRectElement.cpp:
   4023         (WebCore::SVGRectElement::SVGRectElement):
   4024         * svg/SVGRectElement.h:
   4025         * svg/SVGSVGElement.cpp:
   4026         (WebCore::SVGSVGElement::SVGSVGElement):
   4027         * svg/SVGSVGElement.h:
   4028         * svg/SVGScriptElement.cpp:
   4029         * svg/SVGScriptElement.h:
   4030         * svg/SVGStopElement.cpp:
   4031         (WebCore::SVGStopElement::SVGStopElement):
   4032         * svg/SVGStopElement.h:
   4033         * svg/SVGStyledElement.cpp:
   4034         (WebCore::SVGStyledElement::SVGStyledElement):
   4035         * svg/SVGStyledElement.h:
   4036         * svg/SVGStyledTransformableElement.cpp:
   4037         (WebCore::SVGStyledTransformableElement::SVGStyledTransformableElement):
   4038         * svg/SVGStyledTransformableElement.h:
   4039         * svg/SVGSwitchElement.h:
   4040         * svg/SVGSymbolElement.h:
   4041         (WebCore::SVGSymbolElement::contextElement):
   4042         * svg/SVGTRefElement.h:
   4043         * svg/SVGTSpanElement.h:
   4044         * svg/SVGTextContentElement.cpp:
   4045         (WebCore::SVGTextContentElement::SVGTextContentElement):
   4046         * svg/SVGTextContentElement.h:
   4047         (WebCore::SVGTextContentElement::contextElement):
   4048         * svg/SVGTextElement.cpp:
   4049         (WebCore::SVGTextElement::SVGTextElement):
   4050         * svg/SVGTextElement.h:
   4051         * svg/SVGTextPathElement.cpp:
   4052         (WebCore::SVGTextPathElement::SVGTextPathElement):
   4053         * svg/SVGTextPathElement.h:
   4054         * svg/SVGTextPositioningElement.cpp:
   4055         (WebCore::SVGTextPositioningElement::SVGTextPositioningElement):
   4056         * svg/SVGTextPositioningElement.h:
   4057         * svg/SVGTransformable.h:
   4058         * svg/SVGURIReference.cpp:
   4059         (WebCore::SVGURIReference::SVGURIReference):
   4060         * svg/SVGURIReference.h:
   4061         * svg/SVGUseElement.cpp:
   4062         (WebCore::SVGUseElement::SVGUseElement):
   4063         * svg/SVGUseElement.h:
   4064         * svg/SVGViewElement.h:
   4065         * svg/SVGViewSpec.h:
   4066 
   4067 2008-07-18  Maxime Britto  <britto (a] apple.com>
   4068 
   4069         Reviewed by Adele.
   4070         
   4071         Fixed <rdar://problem/6049803>
   4072         Prevent the autoscroll to trigger in WebClips when starting or hovering on an editable field.
   4073 
   4074         Test: fast/events/autoscroll-with-non-scrollable-parent.html
   4075 
   4076         * ChangeLog:
   4077         * page/EventHandler.cpp: Edited
   4078         (WebCore::EventHandler::handleMousePressEvent): changed the name of the funtion called to canBeProgramaticallyScrolled()
   4079         (WebCore::EventHandler::handleMouseDraggedEvent): prevent the autoscroll to keep looking for a renderer when it's already triggered
   4080         * rendering/RenderLayer.cpp:
   4081         (WebCore::RenderLayer::scrollRectToVisible): verifies that the top layer can be programmatically scrolled before asking him to make the rect visible
   4082         * rendering/RenderListBox.h:
   4083         (WebCore::RenderListBox::canBeProgramaticallyScrolled):
   4084         * rendering/RenderObject.cpp:
   4085         (WebCore::RenderObject::canBeProgramaticallyScrolled): Edited : For the 3rd case we want document's renderer to have scrollbar as it's the top layer   
   4086         (WebCore::RenderObject::hasScrollableView): Verifies that the Object has a view with scrollBars
   4087         * rendering/RenderObject.h: Renamed shouldAutosroll() for canBeProgramaticallyScrolled()
   4088         * rendering/RenderTextControl.h:
   4089         (WebCore::RenderTextControl::canBeProgramaticallyScrolled):
   4090 
   4091 2008-07-18  Sam Weinig  <sam (a] webkit.org>
   4092 
   4093         Reviewed by Anders Carlsson.
   4094 
   4095         <rdar://problem/6087283> Add support for uploading files via XMLHttpRequest
   4096 
   4097         - Overload XMLHttpRequests send() method to accept File tokens.
   4098 
   4099         * bindings/js/JSXMLHttpRequestCustom.cpp:
   4100         (WebCore::JSXMLHttpRequest::send): 
   4101         * xml/XMLHttpRequest.cpp:
   4102         (WebCore::XMLHttpRequest::send):
   4103         * xml/XMLHttpRequest.h:
   4104 
   4105 2008-07-18  Geoffrey Garen  <ggaren (a] apple.com>
   4106 
   4107         Reviewed by Cameron Zwarich.
   4108         
   4109         Three renames:
   4110         
   4111         "CallTypeNative" => "CallTypeHost"
   4112         "code" => "byteCode"
   4113         "generatedCode" => "generatedByteCode"
   4114 
   4115 2008-07-18  Adele Peterson  <adele (a] apple.com>
   4116 
   4117         Reviewed by Dan Bernstein.
   4118 
   4119         I recently made a change to avoid fading media controls in and out if a video element actually only contains audio,
   4120         which broke the code that did the same thing for audio elements that contain video (but don't actually display that video).
   4121         This change will now check both the media element and the player to decide whether or not to make the controls persistent.
   4122 
   4123         * rendering/RenderMedia.cpp: (WebCore::RenderMedia::updateControlVisibility):
   4124 
   4125 2008-07-18  Simon Fraser  <simon.fraser (a] apple.com>
   4126 
   4127         Reviewed by mitz
   4128 
   4129         Remove braces around single-line conditional.
   4130         
   4131         * css/CSSComputedStyleDeclaration.cpp:
   4132         (WebCore::computedTransform):
   4133 
   4134 2008-07-18  Simon Fraser  <simon.fraser (a] apple.com>
   4135 
   4136         Reviewed by Dave Hyatt
   4137 
   4138         getComputedStyle() for -webkit-transform should return 
   4139         'none' for elements with no renderer, or those with no
   4140         transform.
   4141 
   4142         https://bugs.webkit.org/show_bug.cgi?id=20008
   4143 
   4144         Testcase: LayoutTests/fast/css/computed-style-without-renderer
   4145                   LayoutTests/fast/css/computed-style-expected.txt
   4146 
   4147         * css/CSSComputedStyleDeclaration.cpp:
   4148         (WebCore::computedTransform):
   4149 
   4150 2008-07-18  Simon Fraser  <simon.fraser (a] apple.com>
   4151 
   4152         Reviewed by Dave Hyatt
   4153 
   4154         Fix assertion about creating Length values with percentage types
   4155         when blending transforms.
   4156         https://bugs.webkit.org/show_bug.cgi?id=20086
   4157 
   4158         * rendering/style/RenderStyle.cpp:
   4159         (WebCore::TranslateTransformOperation::blend):
   4160 
   4161 2008-07-17  Jacob Refstrup  <jacob.refstrup (a] hp.com>
   4162 
   4163         Reviewed by rwlbuis (a] gmail.com
   4164 
   4165         https://bugs.webkit.org/show_bug.cgi?id=19965
   4166 
   4167         - Added "@"{ident} rule (below other @-rules) to use flex for longest match
   4168           (if an earlier rule - e.g. @media - also matches then flex chooses that one
   4169            however, if a longer match - e.g. @mediaall matches flex will choose that)
   4170         - Updated grammar to defined ATKEYWORD token and to use that instead of '@'
   4171           in the error recovery grammar. 
   4172 
   4173         Test: css2.1/atrule_longest_match.html
   4174 
   4175         * ChangeLog:
   4176         * css/CSSGrammar.y:
   4177         * css/tokenizer.flex:
   4178 
   4179 2008-07-17  David Hyatt  <hyatt (a] apple.com>
   4180 
   4181         Make sure the check to see if a frame/iframe is being rendered inside a transparency layer is
   4182         recursive (and checks for transparency layers all the way up the ancestor document chain back to
   4183         the top-level frame).
   4184 
   4185         Reviewed by Dan
   4186 
   4187         * rendering/RenderView.cpp:
   4188         (WebCore::RenderView::paintBoxDecorations):
   4189 
   4190 2008-07-16  Jon Honeycutt  <jhoneycutt (a] apple.com>
   4191 
   4192         REGRESSION: Can't create windowless plug-in with Flash 9
   4193         https://bugs.webkit.org/show_bug.cgi?id=20070
   4194 
   4195         Reviewed by Mark Rowe.
   4196 
   4197         * plugins/win/PluginPackageWin.cpp:
   4198         (WebCore::PluginPackage::determineQuirks): Reverse argument order;
   4199         PlatformModuleVersion constructor takes leastSig, mostSig.
   4200 
   4201 2008-07-16  Eric Seidel  <eric (a] webkit.org>
   4202 
   4203         Reviewed by mitz.
   4204 
   4205         Attempt to make initializeATSUStyle human-readable by
   4206         splitting it out into better-named static inline functions.
   4207 
   4208         No functional changes, thus no tests.
   4209 
   4210         * platform/graphics/mac/FontMac.mm:
   4211         (WebCore::fontHasMirroringInfo):
   4212         (WebCore::disableLigatures):
   4213         (WebCore::initializeATSUStyle):
   4214 
   4215 2008-07-16  Eric Seidel  <eric (a] webkit.org>
   4216 
   4217         No review, build fix only.
   4218 
   4219         Attempt to fix Mac build
   4220 
   4221         * WebCore.xcodeproj/project.pbxproj: Make TextRun.h a private header.
   4222 
   4223 2008-07-16  Eric Seidel  <eric (a] webkit.org>
   4224 
   4225         Reviewed by mitz.
   4226 
   4227         Make ATSULayoutParameters a real C++ class
   4228         (Give it a destructor to clean up after itself)
   4229         (Also use OwnArrayPtr instead of manual member cleanup)
   4230 
   4231         * platform/graphics/mac/FontMac.mm:
   4232         (WebCore::ATSULayoutParameters::ATSULayoutParameters):
   4233         (WebCore::ATSULayoutParameters::~ATSULayoutParameters):
   4234         (WebCore::overrideLayoutOperation):
   4235         (WebCore::ATSULayoutParameters::initialize):
   4236         (WebCore::Font::selectionRectForComplexText):
   4237         (WebCore::Font::drawComplexText):
   4238         (WebCore::Font::floatWidthForComplexText):
   4239         (WebCore::Font::offsetForPositionForComplexText):
   4240 
   4241 2008-07-16  Eric Seidel  <eric (a] webkit.org>
   4242 
   4243         Reviewed by mitz.
   4244 
   4245         Make ownership of copied UChar buffer clearer
   4246         (and more leak-proof) by using a OwnArrayPtr.
   4247 
   4248         No functional changes, thus no tests.
   4249 
   4250         * platform/graphics/mac/FontMac.mm:
   4251         (WebCore::copyRunForDirectionalOverrideIfNecessary):
   4252         (WebCore::Font::selectionRectForComplexText):
   4253         (WebCore::Font::drawComplexText):
   4254         (WebCore::Font::offsetForPositionForComplexText):
   4255 
   4256 2008-07-16  Eric Seidel  <eric (a] webkit.org>
   4257 
   4258         Reviewed by Sam.
   4259 
   4260         Split out TextRun into its own header file.
   4261         Re-order members to place all bools together
   4262         (to allow compilers to better pack the struct)
   4263 
   4264         No functional changes, thus no tests.
   4265 
   4266         * WebCore.vcproj/WebCore.vcproj:
   4267         * WebCore.xcodeproj/project.pbxproj:
   4268         * platform/graphics/Font.h: Moved TextRun into its own file.
   4269         * platform/graphics/TextRun.h: Split out from Font.h
   4270 
   4271 2008-07-16  Simon Fraser  <simon.fraser (a] apple.com>
   4272 
   4273         Reviewed by Dave Hyatt
   4274 
   4275         AnimationController needs to adjust z-index in the blended
   4276         style in case opacity or transform were changed by blending.
   4277 
   4278         https://bugs.webkit.org/show_bug.cgi?id=20047
   4279         
   4280         Test: transitions/opacity-transition-zindex.html
   4281 
   4282         * page/AnimationController.cpp:
   4283         (WebCore::AnimationController::updateImplicitAnimations):
   4284 
   4285 2008-07-16  Nikolas Zimmermann  <zimmermann (a] kde.org>
   4286 
   4287         Reviewed by Sam.
   4288 
   4289         Fixes: https://bugs.webkit.org/show_bug.cgi?id=20052 
   4290         Prepare SVGAnimatedProperty introduction.
   4291 
   4292         Export the tag & attribute names as string literals for SVGNames/XLinkNames and one property in HTMLNames. SVGAnimatedProperty
   4293         contains two string literal template parameters, and we're using these exported string literals from {SVG,HTML,XLink}Names as input paramters.
   4294         See https://bugs.webkit.org/show_bug.cgi?id=20051 for details.
   4295 
   4296         * dom/make_names.pl: Handle new params "exportString" / "exportStrings".
   4297         * html/HTMLAttributeNames.in: Expose just the single "class" attribute, as string.
   4298         * svg/svgattrs.in: Export all SVG attributes as strings.
   4299         * svg/svgtags.in: Export all SVG tags as strings.
   4300         * svg/xlinkattrs.in: Expose all XLink attributes as strings.
   4301 
   4302 2008-07-16  Nikolas Zimmermann  <zimmermann (a] kde.org>
   4303 
   4304         Reviewed by Eric.
   4305 
   4306         Fixes: https://bugs.webkit.org/show_bug.cgi?id=10745 (SVGLength object needs some weight loss)
   4307         Don't store a context pointer in SVGLength, saving memory. Let the caller of the value() & convertToSpecifiedUnits() pass it.
   4308 
   4309         Remove some uneeded contextElement() functions, by moving into approriate shared base classes.
   4310 
   4311         * GNUmakefile.am:
   4312         * WebCore.pro:
   4313         * WebCore.vcproj/WebCore.vcproj:
   4314         * WebCore.xcodeproj/project.pbxproj:
   4315         * bindings/js/JSSVGLengthCustom.cpp: Added.
   4316         (WebCore::JSSVGLength::value):
   4317         (WebCore::JSSVGLength::convertToSpecifiedUnits):
   4318         * bindings/scripts/CodeGeneratorObjC.pm:
   4319         * css/CSSCursorImageValue.cpp:
   4320         (WebCore::CSSCursorImageValue::updateIfSVGCursorIsUsed):
   4321         * rendering/RenderForeignObject.cpp:
   4322         (WebCore::RenderForeignObject::translationForAttributes):
   4323         * rendering/RenderSVGImage.cpp:
   4324         (WebCore::RenderSVGImage::layout):
   4325         * rendering/RenderSVGRoot.cpp:
   4326         (WebCore::RenderSVGRoot::calcViewport):
   4327         * rendering/RenderSVGText.cpp:
   4328         (WebCore::RenderSVGText::layout):
   4329         * rendering/RenderSVGViewportContainer.cpp:
   4330         (WebCore::RenderSVGViewportContainer::calcViewport):
   4331         * rendering/SVGCharacterLayoutInfo.cpp:
   4332         (WebCore::SVGCharacterLayoutInfo::addLayoutInformation):
   4333         (WebCore::SVGCharacterLayoutInfo::addStackContent):
   4334         * rendering/SVGCharacterLayoutInfo.h:
   4335         * rendering/SVGRootInlineBox.cpp:
   4336         (WebCore::SVGRootInlineBox::buildTextChunks):
   4337         * svg/SVGAnimateElement.h:
   4338         * svg/SVGAnimateMotionElement.h:
   4339         * svg/SVGAnimateTransformElement.h:
   4340         * svg/SVGAnimationElement.h:
   4341         (WebCore::SVGAnimationElement::contextElement):
   4342         * svg/SVGCircleElement.cpp:
   4343         (WebCore::SVGCircleElement::SVGCircleElement):
   4344         (WebCore::SVGCircleElement::parseMappedAttribute):
   4345         (WebCore::SVGCircleElement::toPathData):
   4346         * svg/SVGCursorElement.cpp:
   4347         (WebCore::SVGCursorElement::SVGCursorElement):
   4348         (WebCore::SVGCursorElement::parseMappedAttribute):
   4349         * svg/SVGEllipseElement.cpp:
   4350         (WebCore::SVGEllipseElement::SVGEllipseElement):
   4351         (WebCore::SVGEllipseElement::parseMappedAttribute):
   4352         (WebCore::SVGEllipseElement::toPathData):
   4353         * svg/SVGFilterElement.cpp:
   4354         (WebCore::SVGFilterElement::SVGFilterElement):
   4355         (WebCore::SVGFilterElement::parseMappedAttribute):
   4356         (WebCore::SVGFilterElement::canvasResource):
   4357         * svg/SVGFilterPrimitiveStandardAttributes.cpp:
   4358         (WebCore::SVGFilterPrimitiveStandardAttributes::SVGFilterPrimitiveStandardAttributes):
   4359         (WebCore::SVGFilterPrimitiveStandardAttributes::parseMappedAttribute):
   4360         (WebCore::SVGFilterPrimitiveStandardAttributes::setStandardAttributes):
   4361         * svg/SVGForeignObjectElement.cpp:
   4362         (WebCore::SVGForeignObjectElement::SVGForeignObjectElement):
   4363         (WebCore::SVGForeignObjectElement::parseMappedAttribute):
   4364         * svg/SVGImageElement.cpp:
   4365         (WebCore::SVGImageElement::SVGImageElement):
   4366         (WebCore::SVGImageElement::parseMappedAttribute):
   4367         * svg/SVGLength.cpp:
   4368         (WebCore::SVGLength::SVGLength):
   4369         (WebCore::SVGLength::value):
   4370         (WebCore::SVGLength::convertToSpecifiedUnits):
   4371         (WebCore::SVGLength::PercentageOfViewport):
   4372         * svg/SVGLength.h:
   4373         * svg/SVGLength.idl:
   4374         * svg/SVGLengthList.cpp:
   4375         (WebCore::SVGLengthList::parse):
   4376         * svg/SVGLengthList.h:
   4377         * svg/SVGLineElement.cpp:
   4378         (WebCore::SVGLineElement::SVGLineElement):
   4379         (WebCore::SVGLineElement::parseMappedAttribute):
   4380         (WebCore::SVGLineElement::toPathData):
   4381         * svg/SVGLinearGradientElement.cpp:
   4382         (WebCore::SVGLinearGradientElement::SVGLinearGradientElement):
   4383         (WebCore::SVGLinearGradientElement::parseMappedAttribute):
   4384         * svg/SVGMarkerElement.cpp:
   4385         (WebCore::SVGMarkerElement::SVGMarkerElement):
   4386         (WebCore::SVGMarkerElement::parseMappedAttribute):
   4387         (WebCore::SVGMarkerElement::canvasResource):
   4388         * svg/SVGMaskElement.cpp:
   4389         (WebCore::SVGMaskElement::SVGMaskElement):
   4390         (WebCore::SVGMaskElement::parseMappedAttribute):
   4391         (WebCore::SVGMaskElement::drawMaskerContent):
   4392         * svg/SVGPatternElement.cpp:
   4393         (WebCore::SVGPatternElement::SVGPatternElement):
   4394         (WebCore::SVGPatternElement::parseMappedAttribute):
   4395         (WebCore::SVGPatternElement::buildPattern):
   4396         * svg/SVGRadialGradientElement.cpp:
   4397         (WebCore::SVGRadialGradientElement::SVGRadialGradientElement):
   4398         (WebCore::SVGRadialGradientElement::parseMappedAttribute):
   4399         * svg/SVGRectElement.cpp:
   4400         (WebCore::SVGRectElement::SVGRectElement):
   4401         (WebCore::SVGRectElement::parseMappedAttribute):
   4402         (WebCore::SVGRectElement::toPathData):
   4403         * svg/SVGSVGElement.cpp:
   4404         (WebCore::SVGSVGElement::SVGSVGElement):
   4405         (WebCore::SVGSVGElement::viewport):
   4406         (WebCore::SVGSVGElement::parseMappedAttribute):
   4407         (WebCore::SVGSVGElement::getCTM):
   4408         (WebCore::SVGSVGElement::getScreenCTM):
   4409         * svg/SVGTextContentElement.cpp:
   4410         (WebCore::SVGTextContentElement::SVGTextContentElement):
   4411         (WebCore::SVGTextContentElement::parseMappedAttribute):
   4412         * svg/SVGTextPathElement.cpp:
   4413         (WebCore::SVGTextPathElement::SVGTextPathElement):
   4414         (WebCore::SVGTextPathElement::parseMappedAttribute):
   4415         * svg/SVGTextPositioningElement.cpp:
   4416         (WebCore::SVGTextPositioningElement::parseMappedAttribute):
   4417         * svg/SVGUseElement.cpp:
   4418         (WebCore::SVGUseElement::SVGUseElement):
   4419         (WebCore::SVGUseElement::parseMappedAttribute):
   4420         (WebCore::SVGUseElement::buildPendingResource):
   4421         (WebCore::SVGUseElement::buildInstanceTree):
   4422         (WebCore::SVGUseElement::handleDeepUseReferencing):
   4423         (WebCore::SVGUseElement::alterShadowTreeForSVGTag):
   4424         (WebCore::SVGUseElement::expandUseElementsInShadowTree):
   4425         (WebCore::SVGUseElement::expandSymbolElementsInShadowTree):
   4426         * svg/SVGUseElement.h:
   4427         * svg/SynchronizableTypeWrapper.h:
   4428         * svg/graphics/SVGImage.cpp:
   4429         (WebCore::SVGImage::size):
   4430 
   4431 2008-07-16  Geoffrey Garen  <ggaren (a] apple.com>
   4432 
   4433         Reviewed by Oliver Hunt.
   4434 
   4435         Support for JavaScriptCore's first step toward putting doubles in
   4436         registers: Treat ArgList iterators as Register*'s, not JSValue*'s.
   4437 
   4438         * bindings/js/ScheduledAction.cpp:
   4439         (WebCore::ScheduledAction::ScheduledAction):
   4440 
   4441 2008-07-15  Maxime Britto  <britto (a] apple.com>
   4442 
   4443         Reviewed by Eric.
   4444 
   4445         https://bugs.webkit.org/show_bug.cgi?id=17589
   4446         <rdar://problem/5770893>
   4447         Retrieve the wheel sensitivity setting from windows system settings for the horizontal and the vertical scrolling.
   4448         Allows the page scrolling with the wheel (if activated in windows settings) on both horizontal and vertical ways
   4449         For the other platforms, nothing is changed but if someone want to activate this feature 
   4450         he/she has to retrieve the settings and fill out the m_lineScrollSensitivity and/or m_charScrollSensitivity in his/her PlatformWheelEvent constructor.
   4451 
   4452         * ChangeLog:
   4453         * page/EventHandler.cpp:
   4454         (WebCore::scrollAndAcceptEvent): static inline function to avoid copy/paste in the member functions
   4455         (WebCore::EventHandler::handleWheelEvent): Call to the above mentionned static inline function with the right parameters 
   4456         * platform/PlatformWheelEvent.h:
   4457         (WebCore::PlatformWheelEvent::deltaX): Now returns the delta multiplied by the user settings for the number of lines to scroll
   4458         (WebCore::PlatformWheelEvent::deltaY): Now returns the delta multiplied by the user settings for the number of chars to scroll
   4459         (WebCore::PlatformWheelEvent::isPageXScrollModeEnabled):
   4460         (WebCore::PlatformWheelEvent::isPageYScrollModeEnabled):
   4461         * platform/gtk/WheelEventGtk.cpp: Add the values to avoid build break but the factors are initialized to 1 not to change the previous behavior
   4462         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
   4463         * platform/mac/WheelEventMac.mm: Add the values to avoid build break but the factors are initialized to 1 not to change the previous behavior
   4464         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
   4465         * platform/qt/WheelEventQt.cpp: Add the values to avoid build break but the factors are initialized to 1 not to change the previous behavior
   4466         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
   4467         * platform/win/ScrollViewWin.cpp: Added the page scroll (horiz/vertical) and reduced the number of pixels to scroll per line to keep the standard behavior with the factor
   4468         (WebCore::adjustDeltaForPageScrollMode): static inline function to avoid copy/paste in the member functions
   4469         (WebCore::ScrollView::updateScrollbars):
   4470         (WebCore::ScrollView::wheelEvent):
   4471         * platform/win/WheelEventWin.cpp: Retrieves the new values by using the win32 API.
   4472         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
   4473         * platform/wx/MouseWheelEventWx.cpp: Add the values to avoid build break but the factors are initialized to 1 not to change the previous behavior
   4474         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
   4475 
   4476 2008-07-15  Kevin Ollivier  <kevino (a] theolliviers.com>
   4477 
   4478         wx build fix - adding AccessibilityImageMapLink.cpp to the wx build.
   4479 
   4480         * WebCoreSources.bkl:
   4481 
   4482 2008-07-15  Kevin McCullough  <kmccullough (a] apple.com>
   4483 
   4484         Reviewed by Dan.
   4485 
   4486         <rdar://problem/5620273> REGRESSION: Apparent caching between form
   4487         submits twice (on Maconomy) (18401)
   4488 
   4489         Frames did not set the createdByParser flag even when they were.
   4490 
   4491         * html/HTMLElementFactory.cpp:
   4492         (WebCore::frameConstructor):
   4493         (WebCore::iframeConstructor):
   4494 
   4495 2008-07-15  Dan Bernstein  <mitz (a] apple.com>
   4496 
   4497         Reviewed by Dave Hyatt.
   4498 
   4499         - fix https://bugs.webkit.org/show_bug.cgi?id=19525
   4500           <rdar://problem/5961768> -webkit-box-reflect in hyperlink causes webkit to crash
   4501 
   4502         Test: fast/reflections/inline-crash.html
   4503 
   4504         * rendering/RenderInline.cpp:
   4505         (WebCore::RenderInline::setStyle): Added setHasReflection(false).
   4506         Inline flows never have reflections.
   4507 
   4508 2008-07-14  David Hyatt  <hyatt (a] apple.com>
   4509 
   4510         Allow <style> and <link> pretty much anywhere.  They will still be moved to the <head> if
   4511         no <body> exists yet though.
   4512 
   4513         Reviewed by Sam
   4514 
   4515         Added fast/css/style-parsed-outside-of-head.html
   4516 
   4517         * html/HTMLElement.cpp:
   4518         (WebCore::inlineTagList):
   4519 
   4520 2008-07-15  Kevin McCullough  <kmccullough (a] apple.com>
   4521 
   4522         Reviewed by Geoff.
   4523 
   4524         Rename pageGroupIdentifier to profileGroup to keep mention of a
   4525         pageGroup out of JavaScriptCore.
   4526 
   4527         * bindings/js/JSQuarantinedObjectWrapper.cpp:
   4528         (WebCore::JSQuarantinedObjectWrapper::allowsUnwrappedAccessFrom):
   4529         * bindings/js/ScriptController.cpp:
   4530         (WebCore::ScriptController::clear):
   4531         (WebCore::ScriptController::initScript):
   4532         * history/CachedPage.cpp:
   4533         (WebCore::CachedPage::restore):
   4534 
   4535 2008-07-15  Adam Roben  <aroben (a] apple.com>
   4536 
   4537         WebCore part of adding WebKit[Set]ShouldUseFontSmoothing functions
   4538 
   4539         <rdar://6059127>
   4540 
   4541         Reviewed by John Sullivan.
   4542 
   4543         * platform/graphics/win/FontCGWin.cpp:
   4544         (WebCore::Font::drawGlyphs): Pass the result of
   4545         WebCoreShouldUseFontSmoothing() into wkSetFontSmoothingStyle.
   4546         * platform/win/WebCoreTextRenderer.cpp:
   4547         (WebCore::WebCoreSetShouldUseFontSmoothing):
   4548         (WebCore::WebCoreShouldUseFontSmoothing):
   4549         Added.
   4550         * platform/win/WebCoreTextRenderer.h:
   4551 
   4552 2008-07-15  Adam Roben  <aroben (a] apple.com>
   4553 
   4554         Windows build fix
   4555 
   4556         * WebCore.vcproj/WebCore.vcproj: Add AccessibilityImageMapLink.{cpp,h}
   4557         to the project.
   4558 
   4559 2008-07-15  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   4560 
   4561         Build fix for the Gtk+ and Qt platform.
   4562 
   4563         * GNUmakefile.am: Add AccessibilityImageMapLink.cpp to the build
   4564         * WebCore.pro: Add AccessibilityImageMapLink.cpp to the build
   4565 
   4566 2008-07-14  Dan Bernstein  <mitz (a] apple.com>
   4567 
   4568         - Tiger build fix
   4569 
   4570         * platform/mac/WidgetMac.mm:
   4571         (WebCore::Widget::paint):
   4572 
   4573 2008-07-14  Dan Bernstein  <mitz (a] apple.com>
   4574 
   4575         Reviewed by John Sullivan.
   4576 
   4577         - WebCore part of fixing <rdar://problem/6071850> Subviews not drawn correctly when using -cacheDisplayInRect:toBitmapImageRep:
   4578 
   4579         * platform/mac/WidgetMac.mm:
   4580         (WebCore::Widget::paint): Changed to account for the case of drawing
   4581         into a bitmap context that is not a window's backing store. In that
   4582         case, -displayRectIgnoringOpacity:inContext: is used to redirect the
   4583         drawing to the correct context, after setting up the right transform
   4584         on it. For subframes, additional code ensures that the scroll view will
   4585         not paint the background behind a transparent frame.
   4586 
   4587 2008-07-14  chris fleizach  <cfleizach (a] apple.com>
   4588 
   4589         Reviewed by Beth Dakin
   4590 
   4591         <rdar://problem/6038106> AXChildren returned for this web area is null
   4592         Accessibility of image maps needed to be updated
   4593 
   4594         Tests: accessibility/image-map1.html
   4595                accessibility/image-map2.html
   4596 
   4597         * WebCore.xcodeproj/project.pbxproj:
   4598         * page/AXObjectCache.cpp:
   4599         (WebCore::AXObjectCache::get):
   4600         * page/AccessibilityImageMapLink.cpp: Added.
   4601         (WebCore::AccessibilityImageMapLink::AccessibilityImageMapLink):
   4602         (WebCore::AccessibilityImageMapLink::~AccessibilityImageMapLink):
   4603         (WebCore::AccessibilityImageMapLink::create):
   4604         (WebCore::AccessibilityImageMapLink::parentObject):
   4605         (WebCore::AccessibilityImageMapLink::anchorElement):
   4606         (WebCore::AccessibilityImageMapLink::accessibilityDescription):
   4607         (WebCore::AccessibilityImageMapLink::title):
   4608         (WebCore::AccessibilityImageMapLink::elementRect):
   4609         (WebCore::AccessibilityImageMapLink::size):
   4610         * page/AccessibilityImageMapLink.h: Added.
   4611         (WebCore::AccessibilityImageMapLink::setHTMLAreaElement):
   4612         (WebCore::AccessibilityImageMapLink::setHTMLMapElement):
   4613         (WebCore::AccessibilityImageMapLink::roleValue):
   4614         (WebCore::AccessibilityImageMapLink::accessibilityIsIgnored):
   4615         (WebCore::AccessibilityImageMapLink::isLink):
   4616         * page/AccessibilityListBoxOption.h:
   4617         * page/AccessibilityObject.cpp:
   4618         (WebCore::AccessibilityObject::selectedChildren):
   4619         (WebCore::AccessibilityObject::visibleChildren):
   4620         * page/AccessibilityObject.h:
   4621         (WebCore::):
   4622         * page/AccessibilityRenderObject.cpp:
   4623         (WebCore::AccessibilityRenderObject::parentObject):
   4624         (WebCore::AccessibilityRenderObject::isAnchor):
   4625         (WebCore::AccessibilityRenderObject::anchorElement):
   4626         (WebCore::AccessibilityRenderObject::helpText):
   4627         (WebCore::AccessibilityRenderObject::intValue):
   4628         (WebCore::AccessibilityRenderObject::stringValue):
   4629         (WebCore::AccessibilityRenderObject::title):
   4630         (WebCore::AccessibilityRenderObject::accessibilityDescription):
   4631         (WebCore::AccessibilityRenderObject::elementRect):
   4632         (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
   4633         (WebCore::AccessibilityRenderObject::roleValue):
   4634         (WebCore::AccessibilityRenderObject::canSetFocusAttribute):
   4635         (WebCore::AccessibilityRenderObject::addChildren):
   4636         * page/AccessibilityRenderObject.h:
   4637         * page/mac/AccessibilityObjectWrapper.mm:
   4638         (convertToNSArray):
   4639         (RoleEntry::):
   4640 
   4641 2008-07-14  Sam Weinig  <sam (a] webkit.org>
   4642 
   4643         Rubber-stamped by David Hyatt.
   4644 
   4645         Remove unused ExceptionCode parameter from compareDocumentPosition.
   4646 
   4647         * dom/Document.cpp:
   4648         (WebCore::Document::addStyleSheetCandidateNode):
   4649         * dom/Node.cpp:
   4650         (WebCore::Node::compareDocumentPosition):
   4651         * dom/Node.h:
   4652         * dom/Node.idl:
   4653 
   4654 2008-07-14  David Hyatt  <hyatt (a] apple.com>
   4655 
   4656         Fix for bugzilla bug 5476, link and style elements should be allowed outside the <head>.
   4657 
   4658         Reviewed by Sam
   4659 
   4660         Added fast/css/style-outside-head.html
   4661         Added fast/css/link-outside-head.html
   4662 
   4663         * dom/Document.cpp:
   4664         (WebCore::Document::addStyleSheetCandidateNode):
   4665         (WebCore::Document::removeStyleSheetCandidateNode):
   4666         (WebCore::Document::recalcStyleSelector):
   4667         * dom/Document.h:
   4668         * dom/Node.cpp:
   4669         (WebCore::Node::compareDocumentPosition):
   4670         * dom/ProcessingInstruction.cpp:
   4671         (WebCore::ProcessingInstruction::checkStyleSheet):
   4672         (WebCore::ProcessingInstruction::insertedIntoDocument):
   4673         (WebCore::ProcessingInstruction::removedFromDocument):
   4674         (WebCore::ProcessingInstruction::finishParsingChildren):
   4675         * dom/ProcessingInstruction.h:
   4676         (WebCore::ProcessingInstruction::setCreatedByParser):
   4677         * dom/StyleElement.cpp:
   4678         (WebCore::StyleElement::removedFromDocument):
   4679         * dom/XMLTokenizer.cpp:
   4680         (WebCore::XMLTokenizer::startElementNs):
   4681         (WebCore::XMLTokenizer::processingInstruction):
   4682         (WebCore::):
   4683         * html/HTMLElementFactory.cpp:
   4684         (WebCore::linkConstructor):
   4685         * html/HTMLLinkElement.cpp:
   4686         (WebCore::HTMLLinkElement::HTMLLinkElement):
   4687         (WebCore::HTMLLinkElement::insertedIntoDocument):
   4688         (WebCore::HTMLLinkElement::removedFromDocument):
   4689         (WebCore::HTMLLinkElement::finishParsingChildren):
   4690         * html/HTMLLinkElement.h:
   4691         (WebCore::HTMLLinkElement::setCreatedByParser):
   4692         * html/HTMLStyleElement.cpp:
   4693         (WebCore::HTMLStyleElement::insertedIntoDocument):
   4694         (WebCore::HTMLStyleElement::removedFromDocument):
   4695         * svg/SVGStyleElement.cpp:
   4696         (WebCore::SVGStyleElement::insertedIntoDocument):
   4697         (WebCore::SVGStyleElement::removedFromDocument):
   4698 
   4699 2008-07-14  Sam Weinig  <sam (a] webkit.org>
   4700 
   4701         Reviewed by Mark Rowe.
   4702 
   4703         Sort interface extended attributes to appease *the* Mark Rowe.
   4704 
   4705         * page/DOMWindow.idl:
   4706 
   4707 2008-07-14  Anders Carlsson  <andersca (a] apple.com>
   4708 
   4709         Reviewed by Geoff.
   4710 
   4711         <rdar://problem/6073974>
   4712         https://bugs.webkit.org/show_bug.cgi?id=18106
   4713         The "onscroll" event bubbles, which is inconsistent with Firefox and IE
   4714 
   4715         Don't bubble the scroll event.
   4716         
   4717         * rendering/RenderLayer.cpp:
   4718         (WebCore::RenderLayer::scrollToOffset):
   4719         * rendering/RenderListBox.cpp:
   4720         (WebCore::RenderListBox::valueChanged):
   4721 
   4722 2008-07-14  Adele Peterson  <adele (a] apple.com>
   4723 
   4724         Reviewed by Geoff.
   4725 
   4726         Fix for <rdar://problem/5784890> REGRESSION (Safari 3): Can't edit SpeedStream 4100 DSL modem settings
   4727 
   4728         The web server on this particular piece of hardware doesn't handle "text/xml" in the 
   4729         Accept header if the headers are sent in a certain order.  Safari 2 used to send "*/*" in 
   4730         the Accept header.  Firefox 2 sent "text/xml" but in an acceptable order for the web 
   4731         server.  And Firefox 3 doesn't send "text/xml" at all in the Accept header since it 
   4732         is being deprecated in favor of "application/xml".  We decided that the best solution is 
   4733         to match Firefox 3 and stop sending "text/xml" in the Accept header.
   4734 
   4735         No test.  There appears to be no way to get the raw headers in the original order in perl/php.
   4736 
   4737         * loader/FrameLoader.cpp: (WebCore::FrameLoader::addExtraFieldsToRequest):
   4738 
   4739 2008-07-14  Sam Weinig  <sam (a] webkit.org>
   4740 
   4741         Reviewed by Adele Peterson.
   4742 
   4743         Fix for <rdar://problem/5769819>
   4744 
   4745         Test: http/tests/security/cross-frame-access-object-prototype.html
   4746 
   4747         * bindings/js/JSDOMWindowCustom.cpp:
   4748         (WebCore::JSDOMWindow::getPropertyAttributes): Perform security check.
   4749         (WebCore::JSDOMWindow::defineGetter): Ditto.
   4750         (WebCore::JSDOMWindow::defineSetter): Ditto.
   4751         (WebCore::JSDOMWindow::lookupGetter): Ditto.
   4752         (WebCore::JSDOMWindow::lookupSetter): Ditto.
   4753         * bindings/scripts/CodeGeneratorJS.pm: Add support for custom versions
   4754         of all the core JSObject functionality.
   4755         * page/DOMWindow.idl: Override remaining core JSObject functionality,
   4756         to inject security checks.
   4757 
   4758 2008-07-14  Adam Roben  <aroben (a] apple.com>
   4759 
   4760         Windows build fixes
   4761 
   4762         * WebCore.vcproj/WebCore.vcproj: Add include/pthreads to the include
   4763         path.
   4764         * bindings/scripts/CodeGeneratorCOM.pm: Touched this to force COM
   4765         bindings to regenerate.
   4766         * loader/FTPDirectoryDocument.cpp:
   4767         * loader/FTPDirectoryParser.cpp:
   4768         Fixed some duplicate macro definitions now that we're including
   4769         pthread.h again.
   4770 
   4771 2008-07-14  Alexey Proskuryakov  <ap (a] webkit.org>
   4772 
   4773         Reviewed by Kevin McCullough.
   4774 
   4775         Make JSGlobalData refcounted in preparation to adding a way to create contexts that share
   4776         global data.
   4777 
   4778         * bindings/js/JSDOMWindowBase.cpp:
   4779         (WebCore::JSDOMWindowBase::commonJSGlobalData): Create JSGlobalData with create() method.
   4780 
   4781 2008-07-14  Simon Hausmann  <hausmann (a] webkit.org>
   4782 
   4783         Reviewed by Holger.
   4784 
   4785         Make listDirectory() in the Qt port work with empty namefilters.
   4786         Don't include . and .. to avoid scanning the parent directory.
   4787 
   4788         * platform/qt/FileSystemQt.cpp:
   4789         (WebCore::listDirectory):
   4790 
   4791 2008-07-14  Alexey Proskuryakov  <ap (a] webkit.org>
   4792 
   4793         Reviewed by Geoff Garen.
   4794 
   4795         Eliminate per-thread JavaScript global data instance support and make arbitrary
   4796         global data/global object combinations possible.
   4797 
   4798         * bindings/js/JSDOMWindowBase.h:
   4799         * bindings/js/JSDOMWindowBase.cpp: (WebCore::JSDOMWindowBase::commonJSGlobalData): Added.
   4800         WebCore uses its own instance of JSGlobalData, as JSC no longer provides a per-thread one.
   4801 
   4802         * bindings/js/JSDOMWindowShell.cpp:
   4803         (WebCore::JSDOMWindowShell::JSDOMWindowShell):
   4804         (WebCore::JSDOMWindowShell::operator new):
   4805         * bindings/js/ScriptController.cpp:
   4806         (WebCore::ScriptController::clear):
   4807         * bindings/scripts/CodeGeneratorJS.pm:
   4808         Pass commonJSGlobalData() as an allocator.
   4809 
   4810         * bridge/c/c_utility.cpp:
   4811         (KJS::Bindings::identifierFromNPIdentifier):
   4812         * bridge/jni/jni_class.cpp:
   4813         (JavaClass::JavaClass):
   4814         * history/CachedPage.cpp:
   4815         (WebCore::CachedPage::restore):
   4816         * storage/Database.cpp:
   4817         (WebCore::Database::Database):
   4818         * bindings/js/GCController.cpp:
   4819         (WebCore::collect):
   4820         (WebCore::GCController::gcTimerFired):
   4821         (WebCore::GCController::garbageCollectNow):
   4822         Use JSDOMWindow::commonJSGlobalData().
   4823 
   4824         * ForwardingHeaders/wtf/ThreadSpecific.h: Added (collector.h now includes this header, so
   4825         it need to be accesible outside of JSC).
   4826 
   4827         * WebCore.base.exp: Export JSDOMWindowBase::commonJSGlobalData().
   4828 
   4829 2008-07-14  Ariya Hidayat  <ariya.hidayat (a] trolltech.com>
   4830 
   4831         Reviewed by Simon.
   4832 
   4833         MinGW build fixes
   4834 
   4835         * plugins/win/PluginDatabaseWin.cpp:
   4836         * plugins/win/PluginViewWin.cpp:
   4837         (WebCore::PluginView::handleKeyboardEvent):
   4838         (WebCore::PluginView::handleMouseEvent):
   4839         * svg/SynchronizableTypeWrapper.h:
   4840         (WebCore::::SynchronizableTypeWrapper):
   4841 
   4842 2008-07-13  Sam Weinig  <sam (a] webkit.org>
   4843 
   4844         Reviewed by Oliver Hunt and Dan Bernstein.
   4845 
   4846         Fix for <rdar://problem/5888127>
   4847         https://bugs.webkit.org/show_bug.cgi?id=18699
   4848 
   4849         - Match Firefox in restricting the size of custom cursor to images to
   4850           128x128 px.
   4851         - Restrict custom cursor hotspots to values within the bounds of the
   4852           cursor image.
   4853 
   4854         * manual-tests/cursor-max-size.html: Added.
   4855         * page/EventHandler.cpp:
   4856         (WebCore::EventHandler::selectCursor):
   4857 
   4858 2008-07-13  Kevin Ollivier  <kevino (a] theolliviers.com>
   4859 
   4860         wx build fix.
   4861 
   4862         * platform/graphics/wx/AffineTransformWx.cpp:
   4863         (WebCore::AffineTransform::a):
   4864         (WebCore::AffineTransform::b):
   4865         (WebCore::AffineTransform::c):
   4866         (WebCore::AffineTransform::d):
   4867         (WebCore::AffineTransform::e):
   4868         (WebCore::AffineTransform::f):
   4869 
   4870 2008-07-12  Dan Bernstein  <mitz (a] apple.com>
   4871 
   4872         Reviewed by Oliver Hunt.
   4873 
   4874         - fix https://bugs.webkit.org/show_bug.cgi?id=18088
   4875           <rdar://problem/6036232> white-space:nowrap; float:left; causing the misalignment issue
   4876 
   4877         Test: fast/block/basic/min-pref-width-nowrap-floats.html
   4878 
   4879         * rendering/RenderBlock.cpp:
   4880         (WebCore::RenderBlock::calcInlinePrefWidths): Fixed a case where a
   4881         float's width was added to the minimum preferred widths instead of just
   4882         acting as a lower bound on the minimum preferred width (since the float
   4883         can always be pushed down to be the only thing on the line).
   4884 
   4885 2008-07-12  David D. Kilzer  <ddkilzer (a] webkit.org>
   4886 
   4887         Bug 13067: Manually adding #hash to URL reloads entire page instead of jumping to #hash location in cached page
   4888 
   4889         <https://bugs.webkit.org/show_bug.cgi?id=13067>
   4890 
   4891         Reviewed by Darin.
   4892 
   4893         Test: WebCore/manual-tests/hash-ref.html
   4894 
   4895         * loader/FrameLoader.cpp:
   4896         (WebCore::FrameLoader::load(const KURL& newURL, const String& referrer,
   4897              FrameLoadType newLoadType, const String& frameName, Event* event,
   4898              PassRefPtr<FormState> formState)): Extracted logic into
   4899         shouldScrollToAnchor() for determining when to scroll to an anchor.
   4900 
   4901         (WebCore::FrameLoader::load(DocumentLoader* loader, FrameLoadType type,
   4902              PassRefPtr<FormState> formState)): Added check for
   4903         shouldScrollToAnchor() to catch cases when the user manually added a
   4904         hash ref to the URL in the address bar.  This is the bug fix.
   4905 
   4906         (WebCore::FrameLoader::shouldReload): Simplified early return logic.
   4907         We only need to check if the destinationURL has a hash ref, not the
   4908         currentURL, per the comment in the method.
   4909 
   4910         (WebCore::FrameLoader::shouldScrollToAnchor): Added.  Logic extracted
   4911         from the FrameLoader::load(const KURL& newURL, ...) method.  Fixed order
   4912         of arguments to shouldReload() since they were backwards, although the
   4913         previous logic in the method made this irrelevant.
   4914 
   4915         (WebCore::FrameLoader::loadItem): Removed call to shouldReload().  Since
   4916         we're navigating to a HistoryItem, it doesn't make sense to ask whether
   4917         we need to reload the page or not.  Additionally, the logic at the end
   4918         of shouldReload() is also checked in urlsMatchItem(), so there's no need
   4919         to call the method.  This fixed the fast/css/target-fragment-match.html
   4920         test from continuously reloading after the other changes.
   4921 
   4922         * loader/FrameLoader.h:
   4923         (WebCore::FrameLoader::shouldScrollToAnchor): Added.
   4924 
   4925         * manual-tests/hash-ref.html: Added.
   4926         * manual-tests/resources/hash-ref-test.html: Added.
   4927 
   4928 2008-07-11  Stephanie Lewis  <slewis (a] apple.com>
   4929 
   4930         Reviewed by Darin Adler.
   4931 
   4932         No Functionality Changed.  Change all the leak counting code to use the new WTF leak counter class.
   4933 
   4934         * bindings/js/JSCustomSQLTransactionCallback.cpp:
   4935         (WebCore::JSCustomSQLTransactionCallback::JSCustomSQLTransactionCallback):
   4936         (WebCore::JSCustomSQLTransactionCallback::~JSCustomSQLTransactionCallback):
   4937         * bindings/js/JSEventListener.cpp:
   4938         (WebCore::JSEventListener::JSEventListener):
   4939         (WebCore::JSEventListener::~JSEventListener):
   4940         * dom/Node.cpp:
   4941         (WebCore::Node::Node):
   4942         (WebCore::Node::~Node):
   4943         * dom/Range.cpp:
   4944         (WebCore::Range::Range):
   4945         (WebCore::Range::~Range):
   4946         * history/CachedPage.cpp:
   4947         (WebCore::CachedPage::CachedPage):
   4948         (WebCore::CachedPage::~CachedPage):
   4949         * loader/SubresourceLoader.cpp:
   4950         (WebCore::SubresourceLoader::SubresourceLoader):
   4951         (WebCore::SubresourceLoader::~SubresourceLoader):
   4952         * page/Frame.cpp:
   4953         (WebCore::Frame::Frame):
   4954         (WebCore::Frame::~Frame):
   4955         * page/Page.cpp:
   4956         (WebCore::Page::Page):
   4957         (WebCore::Page::~Page):
   4958         * rendering/RenderObject.cpp:
   4959         (WebCore::RenderObject::RenderObject):
   4960         (WebCore::RenderObject::~RenderObject):
   4961         * rendering/bidi.cpp:
   4962         (WebCore::throw):
   4963         (WebCore::BidiRun::operator delete):
   4964 
   4965 2008-07-11  Sam Weinig  <sam (a] webkit.org>
   4966 
   4967         Reviewed by Mark Rowe.
   4968 
   4969         Update getSubStringLength and selectSubString methods exception throwing conditions
   4970         based on SVG working group errata.
   4971 
   4972         Test: svg/custom/selectSubString.html
   4973 
   4974         * svg/SVGTextContentElement.cpp:
   4975         (WebCore::SVGTextContentElement::getSubStringLength):
   4976         (WebCore::SVGTextContentElement::selectSubString):
   4977 
   4978 2008-07-11  Sam Weinig  <sam (a] webkit.org>
   4979 
   4980         Reviewed by Mark Rowe.
   4981 
   4982         We can only use the Id fast path for querySelector and querySelectorAll
   4983         if the selector is purely an Id selector.
   4984 
   4985         Test: fast/dom/SelectorAPI/id-fastpath.html
   4986 
   4987         * dom/Node.cpp:
   4988         (WebCore::Node::querySelector):
   4989         * dom/SelectorNodeList.cpp:
   4990         (WebCore::createSelectorNodeList):
   4991 
   4992 2008-07-11  David Hyatt  <hyatt (a] apple.com>
   4993 
   4994         Implement the DOM level 3 compareDocumentPosition method on Node.
   4995 
   4996         Reviewed by Darin
   4997 
   4998         * dom/Node.cpp:
   4999         (WebCore::Node::compareDocumentPosition):
   5000         * dom/Node.h:
   5001         * dom/Node.idl:
   5002 
   5003 2008-07-11  Brady Eidson  <beidson (a] apple.com>
   5004 
   5005         Rubberstamped by Sam
   5006 
   5007         Removed unneeded export
   5008 
   5009         * WebCore.base.exp:
   5010 
   5011 2008-07-11  Kevin McCullough  <kmccullough (a] apple.com>
   5012 
   5013         Reviewed by Geoff.
   5014 
   5015         <rdar://problem/6067178> REGRESSION: Start profile button in profiler
   5016         now profiles inspector rather than actual page (19833)
   5017         - The JSQuarantinedObjectWrapper should use the wrapped exec state
   5018         so that calls to it execute in its quarantined world.
   5019 
   5020         * bindings/js/JSQuarantinedObjectWrapper.cpp:
   5021         (WebCore::JSQuarantinedObjectWrapper::construct):
   5022         (WebCore::JSQuarantinedObjectWrapper::call):
   5023 
   5024 2008-07-11  Simon Fraser  <simon.fraser (a] apple.com>
   5025 
   5026         Reviewed by Dave Hyatt
   5027 
   5028         StyleRareNonInheritedData needs to initialize and compare
   5029         m_maskBoxImage.
   5030         <https://bugs.webkit.org/show_bug.cgi?id=20005>
   5031 
   5032         * rendering/style/RenderStyle.cpp:
   5033         (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
   5034         (WebCore::StyleRareNonInheritedData::operator==):
   5035 
   5036 2008-07-11  Simon Fraser  <simon.fraser (a] apple.com>
   5037 
   5038         Reviewed by Dave Hyatt
   5039 
   5040         Bug 18885: RenderLayer::enclosingPositionedAncestor() should
   5041         look for transforms, since transforms create containing
   5042         blocks.
   5043         <https://bugs.webkit.org/show_bug.cgi?id=18885>
   5044 
   5045         Test: fast/transforms/transform-positioned-ancestor.html
   5046 
   5047         * rendering/RenderLayer.cpp:
   5048         (WebCore::RenderLayer::stackingContext):
   5049         (WebCore::RenderLayer::enclosingPositionedAncestor):
   5050         (WebCore::RenderLayer::enclosingTransformedAncestor):
   5051 
   5052 2008-07-11  Jacob Refstrup  <jacob.refstrup (a] hp.com>
   5053 
   5054         Reviewed by Darin Adler
   5055 
   5056         http://bugs.webkit.org/show_bug.cgi?id=19978
   5057         GTK port always ends up with # at the end of resource URLs (and hence can't load files)
   5058 
   5059         - Optimized KURL::removeRef() and used it rather than setRef("")
   5060           which after r35040 does the wrong thing.
   5061 
   5062         * platform/KURL.cpp:
   5063         (WebCore::KURL::removeRef):
   5064         * platform/network/curl/ResourceHandleManager.cpp:
   5065         (WebCore::ResourceHandleManager::initializeHandle):
   5066 
   5067 2008-07-11  Simon Hausmann  <hausmann (a] webkit.org>
   5068 
   5069         Fix the Qt/Windows build, include windows.h for HWND directly
   5070         instead of implicit inclusion through Timer.h.
   5071 
   5072         * plugins/win/PluginMessageThrottlerWin.h:
   5073 
   5074 2008-07-11  Dan Bernstein  <mitz (a] apple.com>
   5075 
   5076         Reviewed by Darin Adler.
   5077 
   5078         - fix popularity tracking for cached resources, which regressed in r23923
   5079 
   5080         * loader/Cache.cpp:
   5081         (WebCore::Cache::requestResource): Changed to increase the access count
   5082         whenever this function returns a CachedResource and the cache is
   5083         enabled, instead of only when creating a new CachedResources. The
   5084         incorrect behavior resulted in all resources in the cache having an
   5085         access count of exactly 1 at all times.
   5086         (WebCore::Cache::requestUserCSSStyleSheet): Ditto.
   5087 
   5088 2008-07-11  Ariya Hidayat  <ariya.hidayat (a] trolltech.com>
   5089 
   5090         Reviewed by Simon.
   5091 
   5092         Enable Netscape plugins for the Qt/Windows build.
   5093 
   5094         This required various smaller fixes across a wider set of
   5095         files described below.
   5096 
   5097         * WebCore.pro: Add various windows specific files to the build.
   5098         * page/Page.h: Extend the #ifdeffery for windows types to include the
   5099         Qt/Windows build.
   5100         * platform/graphics/GraphicsContext.h: Added inTransparencyLayer() for
   5101         the Qt port, as PluginViewWin.cpp uses it.
   5102         * platform/graphics/qt/GraphicsContextQt.cpp:
   5103         (WebCore::GraphicsContext::inTransparencyLayer): Implemented function.
   5104         * platform/qt/TemporaryLinkStubs.cpp: Mask out some stubs as they
   5105         are now implemented through *Win.cpp files.
   5106         * plugins/PluginDatabase.cpp: Change PLATFORM(WIN) to WIN_OS.
   5107         * plugins/PluginView.cpp: Change PLATFORM(WIN) to WIN_OS.
   5108         (WebCore::PluginView::setFrameGeometry): Ditto.
   5109         (WebCore::PluginView::PluginView): Ditto.
   5110         * plugins/PluginView.h: Introduce the PlatformPluginWidget typedef,
   5111         which expands to HWND directly for the Qt/Windows build and
   5112         PlatformWidget for the remaining platforms. That is because
   5113         PlatformWidget is QWidget* for the Qt build but for the plugin
   5114         window we need a native window, aka HWND.
   5115         * plugins/win/PluginPackageWin.cpp: Fix compilation, include shlwapi.h
   5116         after config.h.
   5117         * plugins/win/PluginViewWin.cpp:
   5118         (windowHandleForPlatformWidget): Added a little helper function to
   5119         determine the HWND from a PlatformWidget.
   5120         (WebCore::registerPluginView): For the Qt port we need to set the
   5121         global application instance handle here in the library, as the
   5122         browser doesn't do it.
   5123         (WebCore::PluginView::handleMouseEvent): Mask out
   5124         ignoreNextSetCursor/lastSetCursor for the Qt port, it's not used.
   5125         (WebCore::PluginView::invalidateRect): Convert from IntRect to RECT
   5126         manually just here to avoid compiling in IntRectWin.cpp.
   5127         (WebCore::PluginView::invalidateRegion): Ditto.
   5128         (WebCore::PluginView::forceRedraw): Call windowHandleForPlatformWidget
   5129         on containingWindow() to get the correct HWND for the Qt port.
   5130         (WebCore::PluginView::init): Determine the parent HWND for m_window
   5131         using windowHandleForPlatformWidget.
   5132 
   5133 2008-07-11  Simon Hausmann  <hausmann (a] webkit.org>
   5134 
   5135         Rubber-stamped by Holger.
   5136 
   5137         Enable Database and Icondatabase functionality for the Qt/Windows
   5138         build when building inside Qt, as we can use the builtin copy of
   5139         sqlite then.
   5140 
   5141         * WebCore.pro:
   5142 
   5143 2008-07-11  Ariya Hidayat  <ariya.hidayat (a] trolltech.com>
   5144 
   5145         Reviewed by Adam Roben.
   5146 
   5147         Fix compile with MinGW since it does not like friend static function.
   5148 
   5149         * plugins/PluginView.h:
   5150         * plugins/win/PluginViewWin.cpp:
   5151 
   5152 2008-07-11  Ariya Hidayat  <ariya.hidayat (a] trolltech.com>
   5153 
   5154         Reviewed by Simon.
   5155 
   5156         Fix Qt/Win32 build.
   5157 
   5158         * platform/graphics/qt/GraphicsContextQt.cpp:
   5159 
   5160 2008-07-10  Sam Weinig  <sam (a] webkit.org>
   5161 
   5162         Reviewed by Oliver Hunt.
   5163 
   5164         Add support for NSResolver to resolve namespaces for querySelector 
   5165         and querySelectorAll.
   5166 
   5167         - Namespace resolution is done after parsing by iterating over all the
   5168           parts of the CSSSelector.
   5169 
   5170         Tests: fast/dom/SelectorAPI/NSResolver-basic.xhtml
   5171                fast/dom/SelectorAPI/NSResolver-exceptions.xhtml
   5172 
   5173         * GNUmakefile.am: Updated with new files.
   5174         * WebCore.pro: Ditto.
   5175         * WebCore.vcproj/WebCore.vcproj: Ditto.
   5176         * WebCore.xcodeproj/project.pbxproj: Ditto.
   5177         * WebCoreSources.bkl: Ditto.
   5178 
   5179         * bindings/js/JSDOMBinding.cpp:
   5180         (WebCore::execStateFromNode):
   5181         * bindings/js/JSDOMBinding.h:
   5182         Move execStateFromNode here from NodeFilter.
   5183 
   5184         * bindings/js/JSDocumentCustom.cpp:
   5185         (WebCore::JSDocument::querySelector): Don't throw a NOT_SUPPORTED_ERR for NSResolver
   5186         and instead create one if the argument is not undefined or null.
   5187         (WebCore::JSDocument::querySelectorAll): Ditto.
   5188         * bindings/js/JSDocumentFragmentCustom.cpp:
   5189         (WebCore::JSDocumentFragment::querySelector): Ditto.
   5190         (WebCore::JSDocumentFragment::querySelectorAll): Ditto.
   5191         * bindings/js/JSElementCustom.cpp:
   5192         (WebCore::JSElement::querySelector): Ditto.
   5193         (WebCore::JSElement::querySelectorAll): Ditto.
   5194 
   5195         * bindings/js/JSNSResolver.cpp: Added.
   5196         (WebCore::JSNSResolver::JSNSResolver):
   5197         (WebCore::JSNSResolver::mark):
   5198         (WebCore::JSNSResolver::lookupNamespaceURI): Try and get the function
   5199         from the passed in argument, either the value itself, or the result of
   5200         getting the lookupNamespaceURI property, and call it.
   5201         (WebCore::toNSResolver):
   5202         * bindings/js/JSNSResolver.h: Added.
   5203         (WebCore::JSNSResolver::create):
   5204 
   5205         * dom/Document.idl: Update with NSResolver parameter.
   5206         * dom/DocumentFragment.idl: Ditto.
   5207         * dom/Element.idl: Ditto.
   5208 
   5209         * dom/NSResolver.h: Added.
   5210         (WebCore::NSResolver::~NSResolver):
   5211         (WebCore::NSResolver::mark):
   5212         Abstract base class.
   5213 
   5214         * dom/NSResolver.idl: Added.
   5215 
   5216         * dom/Node.cpp:
   5217         (WebCore::forEachTagSelector):
   5218         (WebCore::forEachSelector):
   5219         Functions to iterate over all parts of the selector.
   5220 
   5221         (WebCore::SelectorNeedsNamespaceResolutionFunctor::operator()):
   5222         Functor to be passed to forEachSelector to determine if a selector
   5223         needs namespace resolution, for the case when no NSResolver is passed
   5224         and we need to determine whether to throw a NAMESPACE_ERR.
   5225 
   5226         (WebCore::ResolveNamespaceFunctor::ResolveNamespaceFunctor):
   5227         (WebCore::ResolveNamespaceFunctor::operator()):
   5228         Functor to resolve namespaces for the selector.
   5229 
   5230         (WebCore::selectorNeedsNamespaceResolution):
   5231         (WebCore::resolveNamespacesForSelector):
   5232         (WebCore::Node::querySelector): Resolve namepspaces, including the defaultNamespace
   5233         if a NSResolver is passed in.
   5234         (WebCore::Node::querySelectorAll): Ditto.
   5235         * dom/Node.h:
   5236 
   5237         * dom/NodeFilter.cpp:
   5238         * dom/NodeFilter.h:
   5239         * dom/NodeIterator.h:
   5240         (WebCore::NodeIterator::nextNode):
   5241         (WebCore::NodeIterator::previousNode):
   5242         * dom/TreeWalker.h:
   5243         (WebCore::TreeWalker::parentNode):
   5244         (WebCore::TreeWalker::firstChild):
   5245         (WebCore::TreeWalker::lastChild):
   5246         (WebCore::TreeWalker::previousSibling):
   5247         (WebCore::TreeWalker::nextSibling):
   5248         (WebCore::TreeWalker::previousNode):
   5249         (WebCore::TreeWalker::nextNode):
   5250         Use the version of execStateFromNode in JSDOMBinding.
   5251 
   5252 2008-07-10  Mark Rowe  <mrowe (a] apple.com>
   5253 
   5254         Reviewed by Sam Weinig.
   5255 
   5256         Define WEBKIT_VERSION_MIN_REQUIRED=WEBKIT_VERSION_LATEST when building WebKit to ensure that no symbols end up with the weak_import attribute.
   5257 
   5258         * Configurations/WebCore.xcconfig:
   5259 
   5260 2008-07-10  Dean Jackson  <dino (a] apple.com>
   5261 
   5262         Reviewed by hyatt.
   5263 
   5264         Calculate computed style for -webkit-transform property
   5265         https://bugs.webkit.org/show_bug.cgi?id=19864
   5266 
   5267         Test: css3/transform-computed-style-001.html
   5268 
   5269         * css/CSSComputedStyleDeclaration.cpp:
   5270         (WebCore::computedTransform):
   5271         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
   5272             handles -webkit-transform property now
   5273         * manual-tests/computed-transform-value.html: Added.
   5274 
   5275 2008-07-10  Dan Bernstein  <mitz (a] apple.com>
   5276 
   5277         Reviewed by Adam Roben.
   5278 
   5279         - fix a parse error in inspector.js
   5280 
   5281         * page/inspector/inspector.js: Added missing brace.
   5282 
   5283 2008-07-10  Adam Roben  <aroben (a] apple.com>
   5284 
   5285         Build fix
   5286 
   5287         * WebCore.vcproj/QTMovieWin.vcproj: Add
   5288         OSXCompatibilityHeaders[/GNUCompatibility] to the include path.
   5289 
   5290 2008-07-10  Chris Fleizach  <cfleizach (a] apple.com>
   5291 
   5292         Reviewed by Dan Bernstein
   5293 
   5294         <rdar://problem/6067408> AX: internal anchors broken
   5295 
   5296         * page/AccessibilityRenderObject.cpp:
   5297         (WebCore::AccessibilityRenderObject::internalLinkElement):
   5298         * platform/KURL.cpp:
   5299         (WebCore::KURL::removeRef):
   5300         * platform/KURL.h:
   5301 
   5302 2008-07-10  Mark Rowe  <mrowe (a] apple.com>
   5303 
   5304         Build fix.
   5305 
   5306         * bridge/npapi.h: Remove extra comma.
   5307 
   5308 2008-07-10  Sam Weinig  <sam (a] webkit.org>
   5309 
   5310         Reviewed by Mark Rowe.
   5311 
   5312         Remove no-op debug method.
   5313 
   5314         * css/CSSSelector.cpp:
   5315         * css/CSSSelector.h:
   5316 
   5317 2008-07-10  Sam Weinig  <sam (a] webkit.org>
   5318 
   5319         Reviewed by Dave Hyatt and Darin Adler.
   5320 
   5321         Add support for calling querySelector and querySelectorAll on DocumentFragments
   5322 
   5323         - Fixes bug where nodes not in the document tree would not match based on ID due
   5324           to over optimization.
   5325 
   5326         Test: fast/dom/SelectorAPI/detached-element.html
   5327 
   5328         * GNUmakefile.am:
   5329         * WebCore.pro:
   5330         * WebCore.vcproj/WebCore.vcproj:
   5331         * WebCore.xcodeproj/project.pbxproj:
   5332         * WebCoreSources.bkl:
   5333         * bindings/js/JSDocumentFragmentCustom.cpp: Added.
   5334         (WebCore::JSDocumentFragment::querySelector): Add custom code matching JSElement
   5335         and JSDocument that checks for a 2nd arguments and throws an exception indicating
   5336         we do not currently support the optional NSResolver part of the Selectors API spec.
   5337         (WebCore::JSDocumentFragment::querySelectorAll): Ditto.
   5338         * dom/DocumentFragment.idl: Add querySelector and querySelectorAll declarations.
   5339 
   5340         * dom/Node.cpp:
   5341         (WebCore::Node::querySelector): Make the CSS parser parse the selector
   5342         according to the strictness of the document so that mixed case ID selectors
   5343         match in quirks mode.  Also, don't use the fast ID path if the root is not
   5344         in the DOM tree, as it won't work.
   5345         (WebCore::Node::querySelectorAll): Ditto.
   5346         * dom/SelectorNodeList.cpp:
   5347         (WebCore::createSelectorNodeList): Don't use the fast ID path if the root is not
   5348         in the DOM tree, as it won't work.
   5349 
   5350 2008-07-10  Anthony Ricaud  <rik24d (a] gmail.com>
   5351 
   5352         Bug 19389: querySelectorAll exception while searching invalid CSS selector
   5353         <https://bugs.webkit.org/show_bug.cgi?id=19389>
   5354 
   5355         Reviewed by Tim Hatcher.
   5356 
   5357         * page/inspector/inspector.js: Added a try/catch block.
   5358 
   5359 2008-07-10  Brent Fulgham  <bfulgham (a] gmail.com>
   5360 
   5361         Correct a build regression due to an uninitialized variable.
   5362 
   5363         <https://bugs.webkit.org/show_bug.cgi?id=19976>
   5364 
   5365         Reviewed by Darin.
   5366 
   5367         * platform/graphics/cairo/FontCairo.cpp:
   5368         (WebCore::Font::drawGlyphs):
   5369 
   5370 2008-07-10  Adam Roben  <aroben (a] apple.com>
   5371 
   5372         Fix Bug 19580: REGRESSION (r34432): PGO-only crash in
   5373         HTMLCollection::resetCollectionInfo (codegen issue?)
   5374 
   5375         <https://bugs.webkit.org/show_bug.cgi?id=19580>
   5376         <rdar://6029794>
   5377 
   5378         Reviewed by Cameron Zwarich.
   5379 
   5380         * WebCore.vcproj/WebCore.vcproj: Disable LTCG for HTMLFormElement.cpp,
   5381         which was causing some bad codegen in HTMLFormElement::elements.
   5382         * html/HTMLFormElement.cpp: Touched this file to force it to rebuild.
   5383 
   5384 2008-07-10  Anders Carlsson  <andersca (a] apple.com>
   5385 
   5386         Reviewed by Jon.
   5387 
   5388         <rdar://problem/6067135>
   5389         WebKit should respond true to a query for NPNVSupportsWindowless.
   5390         
   5391         Handle NPNVSupportsWindowless and return true.
   5392         
   5393         * bridge/npapi.h:
   5394         * plugins/win/PluginViewWin.cpp:
   5395         (WebCore::PluginView::getValue):
   5396 
   5397 2008-07-10  Kevin McCullough  <kmccullough (a] apple.com>
   5398 
   5399         Reviewed by Darin.
   5400 
   5401         -Minor cleanup. Renamed callTree() to head() and no longer use m_head
   5402         directly but instead keep it private and access via a method().
   5403 
   5404         * page/JavaScriptProfile.cpp:
   5405         (WebCore::getHeadCallback):
   5406 
   5407 2008-07-10  Simon Fraser  <simon.fraser (a] apple.com>
   5408 
   5409         When a mask image changes, ensure that elements
   5410         that use that mask image are repainted correctly.
   5411         
   5412         <https://bugs.webkit.org/show_bug.cgi?id=19954>
   5413         
   5414         Reviewed by Dave Hyatt
   5415 
   5416         * manual-tests/canvas-mask-redraw.html
   5417           Manual testcase
   5418         * rendering/RenderBox.cpp:
   5419         (WebCore::RenderBox::imageChanged):
   5420         (WebCore::RenderBox::repaintLayerRectsForImage):
   5421         * rendering/RenderBox.h:
   5422         Loop through background layers and mask layers, and
   5423         if this image is used in a layer, compute a repaint
   5424         rect and repaint.
   5425         * rendering/RenderImage.cpp:
   5426         (WebCore::RenderImage::imageChanged):
   5427         If this image has a mask, call the base class method.
   5428         * rendering/RenderObject.cpp:
   5429         Remove a bogus 'return'.
   5430 
   5431 2008-07-10  Simon Fraser  <simon.fraser (a] apple.com>
   5432 
   5433         Transforms create a containing block, so
   5434         RenderLayer::shouldBeOverflowOnly() needs to look for transforms.
   5435         <https://bugs.webkit.org/show_bug.cgi?id=18886>
   5436         
   5437         Reviewed by Dave Hyatt
   5438 
   5439         Test: fast/transforms/transform-overflow.html
   5440 
   5441         * rendering/RenderLayer.cpp:
   5442         (WebCore::RenderLayer::shouldBeOverflowOnly):
   5443 
   5444 2008-07-09  Alex Mathews  <possessedpenguinbob (a] gmail.com>
   5445 
   5446         Reviewed by Oliver Hunt.
   5447 
   5448         bug 19835: WebKit needs cross-platform filter system
   5449         <https://bugs.webkit.org/show_bug.cgi?id=19835>
   5450 
   5451         More class refactoring in preparation for cross-platform filter 
   5452         implementation.
   5453 
   5454         * WebCore.xcodeproj/project.pbxproj:
   5455         * rendering/SVGRenderTreeAsText.h:
   5456         (WebCore::operator<<):
   5457         * svg/FilterEffect.cpp:
   5458         (WebCore::FilterEffect::externalRepresentation):
   5459         * svg/FilterEffect.h:
   5460         * svg/SVGFEBlendElement.cpp:
   5461         (WebCore::SVGFEBlendElement::build):
   5462         * svg/SVGFEBlendElement.h:
   5463         * svg/SVGFEColorMatrixElement.cpp:
   5464         (WebCore::SVGFEColorMatrixElement::build):
   5465         * svg/SVGFEColorMatrixElement.h:
   5466         * svg/SVGFEComponentTransferElement.cpp:
   5467         (WebCore::SVGFEComponentTransferElement::build):
   5468         * svg/SVGFEComponentTransferElement.h:
   5469         * svg/SVGFECompositeElement.cpp:
   5470         (WebCore::SVGFECompositeElement::build):
   5471         * svg/SVGFECompositeElement.h:
   5472         * svg/SVGFEDiffuseLightingElement.cpp:
   5473         (WebCore::SVGFEDiffuseLightingElement::filterEffect):
   5474         (WebCore::SVGFEDiffuseLightingElement::build):
   5475         (WebCore::SVGFEDiffuseLightingElement::findLights):
   5476         * svg/SVGFEDiffuseLightingElement.h:
   5477         * svg/SVGFEDisplacementMapElement.cpp:
   5478         (WebCore::SVGFEDisplacementMapElement::SVGFEDisplacementMapElement):
   5479         (WebCore::SVGFEDisplacementMapElement::stringToChannel):
   5480         (WebCore::SVGFEDisplacementMapElement::filterEffect):
   5481         (WebCore::SVGFEDisplacementMapElement::build):
   5482         * svg/SVGFEDisplacementMapElement.h:
   5483         * svg/SVGFEFloodElement.cpp:
   5484         (WebCore::SVGFEFloodElement::filterEffect):
   5485         (WebCore::SVGFEFloodElement::build):
   5486         * svg/SVGFEFloodElement.h:
   5487         (WebCore::SVGFEFloodElement::contextElement):
   5488         * svg/SVGFEGaussianBlurElement.cpp:
   5489         (WebCore::SVGFEGaussianBlurElement::filterEffect):
   5490         (WebCore::SVGFEGaussianBlurElement::build):
   5491         * svg/SVGFEGaussianBlurElement.h:
   5492         * svg/SVGFEImageElement.cpp:
   5493         (WebCore::SVGFEImageElement::filterEffect):
   5494         (WebCore::SVGFEImageElement::build):
   5495         * svg/SVGFEImageElement.h:
   5496         * svg/SVGFEMergeElement.cpp:
   5497         (WebCore::SVGFEMergeElement::filterEffect):
   5498         (WebCore::SVGFEMergeElement::build):
   5499         * svg/SVGFEMergeElement.h:
   5500         (WebCore::SVGFEMergeElement::contextElement):
   5501         * svg/SVGFEOffsetElement.cpp:
   5502         (WebCore::SVGFEOffsetElement::filterEffect):
   5503         (WebCore::SVGFEOffsetElement::build):
   5504         * svg/SVGFEOffsetElement.h:
   5505         * svg/SVGFESpecularLightingElement.cpp:
   5506         (WebCore::SVGFESpecularLightingElement::filterEffect):
   5507         (WebCore::SVGFESpecularLightingElement::findLights):
   5508         (WebCore::SVGFESpecularLightingElement::build):
   5509         * svg/SVGFESpecularLightingElement.h:
   5510         * svg/SVGFETileElement.cpp:
   5511         (WebCore::SVGFETileElement::filterEffect):
   5512         (WebCore::SVGFETileElement::build):
   5513         * svg/SVGFETileElement.h:
   5514         * svg/SVGFETurbulenceElement.cpp:
   5515         (WebCore::SVGFETurbulenceElement::SVGFETurbulenceElement):
   5516         (WebCore::SVGFETurbulenceElement::parseMappedAttribute):
   5517         (WebCore::SVGFETurbulenceElement::filterEffect):
   5518         (WebCore::SVGFETurbulenceElement::build):
   5519         * svg/SVGFETurbulenceElement.h:
   5520         * svg/SVGFilterPrimitiveStandardAttributes.h:
   5521         * svg/graphics/filters/SVGFEConvolveMatrix.cpp:
   5522         (WebCore::FEConvolveMatrix::FEConvolveMatrix):
   5523         (WebCore::FEConvolveMatrix::create):
   5524         (WebCore::FEConvolveMatrix::kernelSize):
   5525         (WebCore::FEConvolveMatrix::setKernelSize):
   5526         (WebCore::FEConvolveMatrix::kernel):
   5527         (WebCore::FEConvolveMatrix::setKernel):
   5528         (WebCore::FEConvolveMatrix::divisor):
   5529         (WebCore::FEConvolveMatrix::setDivisor):
   5530         (WebCore::FEConvolveMatrix::bias):
   5531         (WebCore::FEConvolveMatrix::setBias):
   5532         (WebCore::FEConvolveMatrix::targetOffset):
   5533         (WebCore::FEConvolveMatrix::setTargetOffset):
   5534         (WebCore::FEConvolveMatrix::edgeMode):
   5535         (WebCore::FEConvolveMatrix::setEdgeMode):
   5536         (WebCore::FEConvolveMatrix::kernelUnitLength):
   5537         (WebCore::FEConvolveMatrix::setKernelUnitLength):
   5538         (WebCore::FEConvolveMatrix::preserveAlpha):
   5539         (WebCore::FEConvolveMatrix::setPreserveAlpha):
   5540         (WebCore::FEConvolveMatrix::apply):
   5541         (WebCore::FEConvolveMatrix::dump):
   5542         (WebCore::operator<<):
   5543         (WebCore::FEConvolveMatrix::externalRepresentation):
   5544         * svg/graphics/filters/SVGFEConvolveMatrix.h:
   5545         (WebCore::):
   5546         * svg/graphics/filters/SVGFEDiffuseLighting.cpp:
   5547         (WebCore::FEDiffuseLighting::FEDiffuseLighting):
   5548         (WebCore::FEDiffuseLighting::create):
   5549         (WebCore::FEDiffuseLighting::~FEDiffuseLighting):
   5550         (WebCore::FEDiffuseLighting::lightingColor):
   5551         (WebCore::FEDiffuseLighting::setLightingColor):
   5552         (WebCore::FEDiffuseLighting::surfaceScale):
   5553         (WebCore::FEDiffuseLighting::setSurfaceScale):
   5554         (WebCore::FEDiffuseLighting::diffuseConstant):
   5555         (WebCore::FEDiffuseLighting::setDiffuseConstant):
   5556         (WebCore::FEDiffuseLighting::kernelUnitLengthX):
   5557         (WebCore::FEDiffuseLighting::setKernelUnitLengthX):
   5558         (WebCore::FEDiffuseLighting::kernelUnitLengthY):
   5559         (WebCore::FEDiffuseLighting::setKernelUnitLengthY):
   5560         (WebCore::FEDiffuseLighting::lightSource):
   5561         (WebCore::FEDiffuseLighting::setLightSource):
   5562         (WebCore::FEDiffuseLighting::apply):
   5563         (WebCore::FEDiffuseLighting::dump):
   5564         (WebCore::FEDiffuseLighting::externalRepresentation):
   5565         * svg/graphics/filters/SVGFEDiffuseLighting.h:
   5566         * svg/graphics/filters/SVGFEDisplacementMap.cpp:
   5567         (WebCore::FEDisplacementMap::FEDisplacementMap):
   5568         (WebCore::FEDisplacementMap::create):
   5569         (WebCore::FEDisplacementMap::xChannelSelector):
   5570         (WebCore::FEDisplacementMap::setXChannelSelector):
   5571         (WebCore::FEDisplacementMap::yChannelSelector):
   5572         (WebCore::FEDisplacementMap::setYChannelSelector):
   5573         (WebCore::FEDisplacementMap::scale):
   5574         (WebCore::FEDisplacementMap::setScale):
   5575         (WebCore::FEDisplacementMap::apply):
   5576         (WebCore::FEDisplacementMap::dump):
   5577         (WebCore::operator<<):
   5578         (WebCore::FEDisplacementMap::externalRepresentation):
   5579         * svg/graphics/filters/SVGFEDisplacementMap.h:
   5580         (WebCore::):
   5581         * svg/graphics/filters/SVGFEFlood.cpp:
   5582         (WebCore::FEFlood::FEFlood):
   5583         (WebCore::FEFlood::create):
   5584         (WebCore::FEFlood::floodColor):
   5585         (WebCore::FEFlood::setFloodColor):
   5586         (WebCore::FEFlood::floodOpacity):
   5587         (WebCore::FEFlood::setFloodOpacity):
   5588         (WebCore::FEFlood::apply):
   5589         (WebCore::FEFlood::dump):
   5590         (WebCore::FEFlood::externalRepresentation):
   5591         * svg/graphics/filters/SVGFEFlood.h:
   5592         * svg/graphics/filters/SVGFEGaussianBlur.cpp:
   5593         (WebCore::FEGaussianBlur::FEGaussianBlur):
   5594         (WebCore::FEGaussianBlur::create):
   5595         (WebCore::FEGaussianBlur::stdDeviationX):
   5596         (WebCore::FEGaussianBlur::setStdDeviationX):
   5597         (WebCore::FEGaussianBlur::stdDeviationY):
   5598         (WebCore::FEGaussianBlur::setStdDeviationY):
   5599         (WebCore::FEGaussianBlur::apply):
   5600         (WebCore::FEGaussianBlur::dump):
   5601         (WebCore::FEGaussianBlur::externalRepresentation):
   5602         * svg/graphics/filters/SVGFEGaussianBlur.h:
   5603         * svg/graphics/filters/SVGFEImage.cpp:
   5604         (WebCore::FEImage::FEImage):
   5605         (WebCore::FEImage::create):
   5606         (WebCore::FEImage::~FEImage):
   5607         (WebCore::FEImage::cachedImage):
   5608         (WebCore::FEImage::apply):
   5609         (WebCore::FEImage::dump):
   5610         (WebCore::FEImage::externalRepresentation):
   5611         * svg/graphics/filters/SVGFEImage.h:
   5612         * svg/graphics/filters/SVGFEMerge.cpp:
   5613         (WebCore::FEMerge::FEMerge):
   5614         (WebCore::FEMerge::create):
   5615         (WebCore::FEMerge::mergeInputs):
   5616         (WebCore::FEMerge::setMergeInputs):
   5617         (WebCore::FEMerge::apply):
   5618         (WebCore::FEMerge::dump):
   5619         (WebCore::FEMerge::externalRepresentation):
   5620         * svg/graphics/filters/SVGFEMerge.h:
   5621         * svg/graphics/filters/SVGFEMorphology.cpp:
   5622         (WebCore::FEMorphology::FEMorphology):
   5623         (WebCore::FEMorphology::create):
   5624         (WebCore::FEMorphology::morphologyOperator):
   5625         (WebCore::FEMorphology::setMorphologyOperator):
   5626         (WebCore::FEMorphology::radiusX):
   5627         (WebCore::FEMorphology::setRadiusX):
   5628         (WebCore::FEMorphology::radiusY):
   5629         (WebCore::FEMorphology::setRadiusY):
   5630         (WebCore::FEMorphology::apply):
   5631         (WebCore::FEMorphology::dump):
   5632         (WebCore::operator<<):
   5633         (WebCore::FEMorphology::externalRepresentation):
   5634         * svg/graphics/filters/SVGFEMorphology.h:
   5635         (WebCore::):
   5636         * svg/graphics/filters/SVGFEOffset.cpp:
   5637         (WebCore::FEOffset::FEOffset):
   5638         (WebCore::FEOffset::create):
   5639         (WebCore::FEOffset::dx):
   5640         (WebCore::FEOffset::setDx):
   5641         (WebCore::FEOffset::dy):
   5642         (WebCore::FEOffset::setDy):
   5643         (WebCore::FEOffset::apply):
   5644         (WebCore::FEOffset::dump):
   5645         (WebCore::FEOffset::externalRepresentation):
   5646         * svg/graphics/filters/SVGFEOffset.h:
   5647         * svg/graphics/filters/SVGFESpecularLighting.cpp:
   5648         (WebCore::FESpecularLighting::FESpecularLighting):
   5649         (WebCore::FESpecularLighting::create):
   5650         (WebCore::FESpecularLighting::~FESpecularLighting):
   5651         (WebCore::FESpecularLighting::lightingColor):
   5652         (WebCore::FESpecularLighting::setLightingColor):
   5653         (WebCore::FESpecularLighting::surfaceScale):
   5654         (WebCore::FESpecularLighting::setSurfaceScale):
   5655         (WebCore::FESpecularLighting::specularConstant):
   5656         (WebCore::FESpecularLighting::setSpecularConstant):
   5657         (WebCore::FESpecularLighting::specularExponent):
   5658         (WebCore::FESpecularLighting::setSpecularExponent):
   5659         (WebCore::FESpecularLighting::kernelUnitLengthX):
   5660         (WebCore::FESpecularLighting::setKernelUnitLengthX):
   5661         (WebCore::FESpecularLighting::kernelUnitLengthY):
   5662         (WebCore::FESpecularLighting::setKernelUnitLengthY):
   5663         (WebCore::FESpecularLighting::lightSource):
   5664         (WebCore::FESpecularLighting::setLightSource):
   5665         (WebCore::FESpecularLighting::apply):
   5666         (WebCore::FESpecularLighting::dump):
   5667         (WebCore::FESpecularLighting::externalRepresentation):
   5668         * svg/graphics/filters/SVGFESpecularLighting.h:
   5669         * svg/graphics/filters/SVGFETile.cpp:
   5670         (WebCore::FETile::FETile):
   5671         (WebCore::FETile::create):
   5672         (WebCore::FETile::apply):
   5673         (WebCore::FETile::dump):
   5674         (WebCore::FETile::externalRepresentation):
   5675         * svg/graphics/filters/SVGFETile.h:
   5676         * svg/graphics/filters/SVGFETurbulence.cpp:
   5677         (WebCore::FETurbulence::FETurbulence):
   5678         (WebCore::FETurbulence::create):
   5679         (WebCore::FETurbulence::type):
   5680         (WebCore::FETurbulence::setType):
   5681         (WebCore::FETurbulence::baseFrequencyY):
   5682         (WebCore::FETurbulence::setBaseFrequencyY):
   5683         (WebCore::FETurbulence::baseFrequencyX):
   5684         (WebCore::FETurbulence::setBaseFrequencyX):
   5685         (WebCore::FETurbulence::seed):
   5686         (WebCore::FETurbulence::setSeed):
   5687         (WebCore::FETurbulence::numOctaves):
   5688         (WebCore::FETurbulence::setNumOctaves):
   5689         (WebCore::FETurbulence::stitchTiles):
   5690         (WebCore::FETurbulence::setStitchTiles):
   5691         (WebCore::FETurbulence::apply):
   5692         (WebCore::FETurbulence::dump):
   5693         (WebCore::operator<<):
   5694         (WebCore::FETurbulence::externalRepresentation):
   5695         * svg/graphics/filters/SVGFETurbulence.h:
   5696         (WebCore::):
   5697         * svg/graphics/filters/cg/SVGFEDiffuseLightingCg.mm:
   5698         * svg/graphics/filters/cg/SVGFEDisplacementMapCg.mm:
   5699         * svg/graphics/filters/cg/SVGFEFloodCg.mm:
   5700         * svg/graphics/filters/cg/SVGFEGaussianBlurCg.mm:
   5701         * svg/graphics/filters/cg/SVGFEHelpersCg.h:
   5702         * svg/graphics/filters/cg/SVGFEHelpersCg.mm:
   5703         (WebCore::getVectorForChannel):
   5704         * svg/graphics/filters/cg/SVGFEImageCg.mm:
   5705         * svg/graphics/filters/cg/SVGFEMergeCg.mm:
   5706         * svg/graphics/filters/cg/SVGFEOffsetCg.mm:
   5707         * svg/graphics/filters/cg/SVGFESpecularLightingCg.mm:
   5708         * svg/graphics/filters/cg/SVGFETileCg.mm:
   5709 
   5710 2008-07-09  Mark Rowe  <mrowe (a] apple.com>
   5711 
   5712         Reviewed by Geoff Garen.
   5713 
   5714         Don't warn about deprecated functions in production builds.
   5715 
   5716         * Configurations/Base.xcconfig:
   5717         * Configurations/DebugRelease.xcconfig:
   5718 
   5719 2008-07-09  Brady Eidson  <beidson (a] apple.com>
   5720 
   5721         Reviewed by Darin
   5722 
   5723         <rdar://problem/5823684> - Crash manipulating frame tree of a new frame before the new frame
   5724         has been installed in a frame tree.
   5725 
   5726         The root of this problem was that calling init() on a new frame could end up calling arbitrary
   5727         javascript that might end up removing the frame from the tree.  This opened up a small can of worms
   5728         such as the frame not having yet been installed in its frame tree, and other assumed behavior while
   5729         destroying the frame.
   5730 
   5731         Test: fast/loader/frame-creation-removal.html
   5732 
   5733         * loader/FrameLoader.cpp:
   5734         (WebCore::FrameLoader::endIfNotLoadingMainResource):  If the frame doesn't have a page, don't close up
   5735           the document and parser because they don't exist, and this frame is on its way out.
   5736         (WebCore::FrameLoader::finishedParsing):  We can't rely on the refCount check to discover "am I being deleted?"
   5737           because we no longer store refCounts of 0.  The new check is "do I have a FrameView?" while will always be
   5738           false if the Frame is being destroyed.
   5739 
   5740 2008-07-09  Dean Jackson  <dino (a] apple.com>
   5741 
   5742         Changed to use the correct license in header comment (via Darin)
   5743 
   5744         * css/WebKitCSSTransformValue.idl:
   5745 
   5746 2008-07-09  Dean Jackson  <dino (a] apple.com>
   5747 
   5748         Add DOM interface for WebKitCSSTransformValue.
   5749         https://bugs.webkit.org/show_bug.cgi?id=19863
   5750 
   5751         Reviewed by Hyatt.
   5752 
   5753         * bindings/objc/DOMInternal.h:
   5754         * css/WebKitCSSTransformValue.idl: Added.
   5755 
   5756         * bindings/scripts/CodeGeneratorObjC.pm:
   5757             make sure new class inherits from CSSValue not Node
   5758 
   5759         * DerivedSources.make:
   5760         * GNUmakefile.am:
   5761         * WebCore.pro:
   5762         * WebCore.vcproj/WebCore.vcproj:
   5763         * WebCore.xcodeproj/project.pbxproj:
   5764         * WebCoreSources.bkl:
   5765             Adding new generated files
   5766 
   5767 2008-07-09  Maxime Britto  <britto (a] apple.com>
   5768 
   5769         Reviewed by Adele.
   5770 
   5771         http://bugs.webkit.org/show_bug.cgi?id=14227
   5772         Add the middle click panning feature to the windows release.
   5773         Details on almost each method below.
   5774         Manual test is included in the patch.
   5775 
   5776         * ChangeLog:
   5777         * WebCore.vcproj/WebCore.vcproj:
   5778         * manual-tests/panScroll.html: Added.
   5779         * manual-tests/resources/big-page.html: Added.
   5780         * page/EventHandler.cpp: Added the panScroll start/stop handlers and adapted the autoscroll for both to share some functions.
   5781         (WebCore::EventHandler::EventHandler): Initialize the new class members for the panScroll
   5782         (WebCore::EventHandler::handleMouseDraggedEvent): Prevent the autoscroll to trigger if the panScroll is in progress
   5783         (WebCore::EventHandler::handleMouseReleaseEvent): Prevent the autoscroll to stop the panScroll on mouse release
   5784         (WebCore::EventHandler::handleAutoscroll): Added the specific calls for the panScroll (save mouse position, draw the panScroll icon) to the shared code
   5785         (WebCore::EventHandler::autoscrollTimerFired): Specify the calls to perform for each function (autoscroll and panScroll)
   5786         (WebCore::EventHandler::stopAutoscrollTimer): Specify the calls to perform for each function (autoscroll and panScroll)
   5787         (WebCore::EventHandler::handleMousePressEvent): Trigger for the panScroll. Test is the button is the middle button and try to find a renderer where the panScroll is possible. If it finds one, it calls the handleAutoscroll method.
   5788         * page/EventHandler.h:
   5789         (WebCore::EventHandler::panScrollInProgress): Getter used by the sub frames's EventHandler to notice the main frame EventHandler
   5790         (WebCore::EventHandler::setPanScrollInProgress): Setter used by the sub frames's EventHandler to notice the main frame EventHandler
   5791         * platform/ScrollView.h: Added a method used by the RenderObject to test if the view can be scrolled. Added the print/remove panScroll icon methods between the windows platform flags
   5792         * platform/gtk/ScrollViewGtk.cpp:
   5793         (WebCore::ScrollView::isScrollable): Not implemented : returns true
   5794         * platform/mac/ScrollViewMac.mm: Implemented because it was useful for the autoscroll feature.
   5795         (WebCore::ScrollView::isScrollable):
   5796         * platform/qt/ScrollViewQt.cpp:
   5797         (WebCore::ScrollView::isScrollable): Not implemented : returns true
   5798         * platform/win/ScrollViewWin.cpp:
   5799         (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate): Added a boolean and an IntPoint to draw the icon.
   5800         (WebCore::ScrollView::ScrollViewPrivate::scrollBackingStore): If the icon must be drawn, define the rect to invalidate to erase the previous icon and to display the new one.
   5801         (WebCore::ScrollView::updateContents): I split this method to be able to invalidate a rect with window coordinates instead of contents coordinates. This function now converts the contents coord in window coord and calls the new updateWindowRect() method  
   5802         (WebCore::ScrollView::updateWindowRect): New method which performs the work that was doing the end of the old updateContents : invalidate a rect with window coordinates
   5803         (WebCore::ScrollView::isScrollable): checks is the view has scrollbars
   5804         (WebCore::ScrollView::printPanScrollIcon): sets the boolean and the IntPoint for the icon. Invalidate his rect and ask for repaint.
   5805         (WebCore::ScrollView::removePanScrollIcon): sets the boolean to false. Invalidate his rect and ask for repaint.
   5806         (WebCore::ScrollView::paint): Modified to draw the icon if needed.
   5807         * platform/wx/ScrollViewWx.cpp:
   5808         (WebCore::ScrollView::isScrollable): Not implemented : returns true
   5809         * rendering/RenderLayer.cpp:
   5810         (WebCore::RenderLayer::panScrollFromPoint): Receives the Middle click location and retrieves the currentMouse position from the EventHandler. With these informations it computes the direction to scroll to and the speed then calls for the final scroll.
   5811         * rendering/RenderLayer.h:
   5812         * rendering/RenderListBox.cpp: Adapt the panScroll to the ListBox object to scroll by lines instead of pixels
   5813         (WebCore::RenderListBox::panScroll):
   5814         (WebCore::RenderListBox::scrollToward):
   5815         (WebCore::RenderListBox::autoscroll):
   5816         * rendering/RenderListBox.h:
   5817         (WebCore::RenderListBox::shouldPanScroll):
   5818         * rendering/RenderObject.cpp: 
   5819         (WebCore::RenderObject::shouldAutoscroll): Improved the verification to avoid triggering the autoscroll/panScroll when the root object can't scroll
   5820         (WebCore::RenderObject::panScroll): Calls the RenderLayer's panScrollFromPoint() method
   5821         * rendering/RenderObject.h:
   5822         (WebCore::RenderObject::stopPanScroll): 
   5823 
   5824 2008-07-09  Dean Jackson  <dino (a] apple.com>
   5825 
   5826         Rename CSSTransformValue to WebKitCSSTransformValue as it is non-standard for
   5827         the moment. Also, WebKitCSSTransformValue is a CSSValueList (comma sep)
   5828         https://bugs.webkit.org/show_bug.cgi?id=19861
   5829 
   5830         Reviewed by Hyatt
   5831 
   5832         * css/CSSParser.cpp:
   5833         * css/CSSStyleSelector.cpp:
   5834         * css/CSSTransformValue.cpp: Removed.
   5835         * css/CSSTransformValue.h: Removed.
   5836         * css/CSSValueList.h:
   5837         * css/WebKitCSSTransformValue.cpp: Added.
   5838         * css/WebKitCSSTransformValue.h: Added.
   5839 
   5840         * GNUmakefile.am:
   5841         * WebCore.order:
   5842         * WebCore.pro:
   5843         * WebCore.vcproj/WebCore.vcproj:
   5844         * WebCore.xcodeproj/project.pbxproj:
   5845         * WebCoreSources.bkl:
   5846             updated for new file names
   5847         
   5848 
   5849 2008-07-09  David Hyatt  <hyatt (a] apple.com>
   5850 
   5851         Switch transitions back to a "destination" model as far as choosing which transitions should apply on a style
   5852         change.  Preserve the behavior of allowing stale transitions (in the absence of property changes) to run to
   5853         completion.
   5854 
   5855         Reviewed by Dean
   5856 
   5857         * manual-tests/transitions.html:
   5858         * manual-tests/transitions2.html:
   5859         * page/AnimationController.cpp:
   5860         (WebCore::ImplicitAnimation::reset):
   5861         (WebCore::CompositeImplicitAnimation::animate):
   5862         (WebCore::AnimationControllerPrivate::get):
   5863         (WebCore::AnimationController::updateImplicitAnimations):
   5864 
   5865 2008-07-09  Michelangelo De Simone  <m.des (a] mac.com>
   5866 
   5867         Reviewed by Adele.
   5868 
   5869         Added the virtual function Node::isTextControl() in order to simplify text field and textarea checks.
   5870 
   5871         * css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
   5872         Clean up in PseudoReadOnly and PseudoReadWrite cases removing unnecessary checks and casts in favor of the sole isTextControl() check.
   5873         * dom/Node.h: Added base isTextControl().
   5874         * html/HTMLInputElement.h: Added isTextControl() which wraps HTMLInputElement::isTextField().
   5875         * html/HTMLTextAreaElement.h: Added isTextControl().
   5876 
   5877 2008-07-09  Rob Buis  <buis (a] kde.org>
   5878 
   5879         Reviewed by Eric.
   5880 
   5881         https://bugs.webkit.org/show_bug.cgi?id=15431
   5882         SVGRenderStyle should store pre-modified resource URIs
   5883 
   5884         Store pre-modified resource URIs to decrease string
   5885         operations during layout/rendering.
   5886 
   5887         * css/SVGCSSStyleSelector.cpp:
   5888         (WebCore::CSSStyleSelector::applySVGProperty):
   5889         * rendering/RenderPath.cpp:
   5890         (WebCore::RenderPath::absoluteClippedOverflowRect):
   5891         (WebCore::RenderPath::drawMarkersIfNeeded):
   5892         * rendering/RenderSVGContainer.cpp:
   5893         (WebCore::RenderSVGContainer::selfWillPaint):
   5894         (WebCore::RenderSVGContainer::absoluteClippedOverflowRect):
   5895         * rendering/RenderSVGImage.cpp:
   5896         (WebCore::RenderSVGImage::calculateAbsoluteBounds):
   5897         * rendering/RenderSVGRoot.cpp:
   5898         (WebCore::RenderSVGRoot::paint):
   5899         (WebCore::RenderSVGRoot::absoluteClippedOverflowRect):
   5900         * rendering/RenderSVGText.cpp:
   5901         (WebCore::RenderSVGText::absoluteClippedOverflowRect):
   5902         * rendering/SVGRenderSupport.cpp:
   5903         (WebCore::prepareToRenderSVGContent):
   5904 
   5905 2008-07-09  Anders Carlsson  <andersca (a] apple.com>
   5906 
   5907         Reviewed by Mitz.
   5908 
   5909         Remove an unused instance variable.
   5910 
   5911         * loader/DocumentLoader.h:
   5912 
   5913 2008-07-09  Dan Bernstein  <mitz (a] apple.com>
   5914 
   5915         Reviewed by Anders Carlsson.
   5916 
   5917         - remove unused #includes
   5918 
   5919         * dom/XMLTokenizer.cpp:
   5920         * html/PreloadScanner.cpp:
   5921         * loader/CachedCSSStyleSheet.cpp:
   5922         * loader/CachedScript.cpp:
   5923         * loader/CachedXBLDocument.cpp:
   5924         * loader/CachedXSLStyleSheet.cpp:
   5925         * page/mac/FrameMac.mm:
   5926         * xml/XSLTProcessor.cpp:
   5927 
   5928 2008-07-08  Geoffrey Garen  <ggaren (a] apple.com>
   5929 
   5930         Reviewed by Oliver Hunt.
   5931         
   5932         Only artificially mark JS DOM wrappers if they have custom properties.
   5933         
   5934         21X speedup on http://nerget.com/jstests/dom-mandelbrot.html.
   5935         
   5936         No, that is not a typo.
   5937 
   5938         * bindings/js/JSDOMBinding.cpp:
   5939         (WebCore::ScriptInterpreter::markDOMNodesForDocument):
   5940 
   5941 2008-07-08  Kevin Watters  <kevinwatters (a] gmail.com>
   5942 
   5943         Reviewed by Kevin Ollivier.
   5944 
   5945         Fix to previous patch for handling mouse up events.
   5946         
   5947         https://bugs.webkit.org/show_bug.cgi?id=18464
   5948 
   5949         * platform/wx/MouseEventWx.cpp:
   5950         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
   5951 
   5952 2008-07-08  Dan Bernstein  <mitz (a] apple.com>
   5953 
   5954         Reviewed by Brady Eidson.
   5955 
   5956         - initialize the Archives log channel's state
   5957 
   5958         * platform/mac/LoggingMac.mm:
   5959         (WebCore::InitializeLoggingChannelsIfNecessary):
   5960 
   5961 2008-07-08  Kevin McCullough  <kmccullough (a] apple.com>
   5962 
   5963         Added manual test for the new heavy view.
   5964 
   5965         * manual-tests/inspector/profiler-test-heavy-view.html: Added.
   5966 
   5967 2008-07-08  Darin Adler  <darin (a] apple.com>
   5968 
   5969         Reviewed by Mitz.
   5970 
   5971         - fix <rdar://problem/6043731> REGRESSION (3-4): RedEnvelope.com
   5972           looks wrong due to OpenCube QuickMenu appVersion check
   5973 
   5974         * page/Navigator.cpp:
   5975         (WebCore::shouldHideFourDot): Add dqm_loader.js as another filename.
   5976 
   5977 2008-07-08  Dan Bernstein  <mitz (a] apple.com>
   5978 
   5979         Reviewed by John Sullivan.
   5980 
   5981         - WebCore part of <rdar://problem/6008409> Need a way to disable updates in offscreen views
   5982 
   5983         Added a setting, updatesWhenOffscreen(), which controls whether an
   5984         offscreen web view gets marked as needing update when its contents
   5985         change (the existing behavior) or not (a new behavior), in which case it
   5986         will be marked as needing update just before it goes on screen. The
   5987         existing behavior (updating while offscreen) remains the default.
   5988 
   5989         * WebCore.base.exp: Added Settings::setUpdatesWhenOffscreen().
   5990         * page/FrameView.cpp:
   5991         (WebCore::FrameView::shouldUpdateWhenOffscreen): Added. Returns the
   5992         value from settings.
   5993         * page/FrameView.h:
   5994         * page/Settings.cpp:
   5995         (WebCore::Settings::setUpdatesWhenOffscreen): Added.
   5996         * page/Settings.h:
   5997         (WebCore::Settings::updatesWhenOffscreen): Added.
   5998         * platform/ScrollView.h:
   5999         * platform/mac/ScrollViewMac.mm:
   6000         (WebCore::ScrollView::updateContents): Added code to return early and
   6001         not call -setNeedsDisplayInRect: if the view is not in a visible window
   6002         and the setting is not to update when offscreen.
   6003 
   6004 2008-07-08  Simon Hausmann  <hausmann (a] webkit.org>
   6005 
   6006         Fix the build with enabled SVG filters.
   6007 
   6008         * svg/SVGFESpecularLightingElement.cpp: The last argument to
   6009         ANIMATED_PROPERTY_DEFINITIONS has to be full class name, including
   6010         the attr suffix.
   6011 
   6012 2008-07-07  Sam Weinig  <sam (a] webkit.org>
   6013 
   6014         Reviewed by Anders Carlsson.
   6015 
   6016         Remove extraneous null check.
   6017 
   6018         * dom/Node.cpp:
   6019         (WebCore::Node::querySelector):
   6020         (WebCore::Node::querySelectorAll):
   6021 
   6022 2008-07-07  Sam Weinig  <sam (a] webkit.org>
   6023 
   6024         Reviewed by Anders Carlsson.
   6025 
   6026         Fix for https://bugs.webkit.org/show_bug.cgi?id=19928
   6027         Use of CSS3 Namespaces syntax in Selectors API should throw an exception
   6028 
   6029         - Throw an NAMESPACE_ERR exception if a non-null or "*" namespace is
   6030           used in a selector passed to querySelector or querySelectorAll.
   6031 
   6032         Test: fast/dom/SelectorAPI/not-supported-namespace-in-selector.html
   6033 
   6034         * dom/Node.cpp:
   6035         (WebCore::selectorNeedsNamespaceResolution):
   6036         (WebCore::Node::querySelector):
   6037         (WebCore::Node::querySelectorAll):
   6038 
   6039 2008-07-07  Simon Fraser  <simon.fraser (a] apple.com>
   6040 
   6041         Reviewed by Darin.
   6042 
   6043         Fix for https://bugs.webkit.org/show_bug.cgi?id=19933
   6044         nodeIterator with filter fails on documents not in a frame
   6045 
   6046         Tests: traversal/node-iterator-009.html
   6047                traversal/tree-walker-006.html
   6048 
   6049         * bindings/js/JSNodeFilterCondition.cpp:
   6050         * bindings/js/JSNodeFilterCondition.h:
   6051         * bindings/js/JSNodeFilterCustom.cpp:
   6052         * bindings/js/JSNodeIteratorCustom.cpp:
   6053         * bindings/js/JSTreeWalkerCustom.cpp:
   6054         * bindings/objc/DOM.mm:
   6055         * dom/NodeFilter.cpp:
   6056         * dom/NodeFilter.h:
   6057         * dom/NodeFilterCondition.cpp:
   6058         * dom/NodeFilterCondition.h:
   6059         * dom/NodeIterator.cpp:
   6060         * dom/NodeIterator.h:
   6061         * dom/Traversal.cpp:
   6062         * dom/Traversal.h:
   6063         * dom/TreeWalker.cpp:
   6064         * dom/TreeWalker.h:
   6065 
   6066 2008-07-07  Adele Peterson  <adele (a] apple.com>
   6067 
   6068         Reviewed by Dan Bernstein.
   6069 
   6070         Fix for https://bugs.webkit.org/show_bug.cgi?id=19924
   6071         <rdar://problem/6057160> Disabled file input element updates its displayed file info when a file is dropped from the Finder.
   6072 
   6073         * page/DragController.cpp: (WebCore::DragController::concludeDrag):
   6074         Check that the file control is enabled before taking dropped files.
   6075 
   6076 2008-07-07  Adele Peterson  <adele (a] apple.com>
   6077 
   6078         Reviewed by Beth.
   6079 
   6080         Fix for <rdar://problem/5860507> <AUDIO> playback noticeably more quiet than QuickTime
   6081 
   6082         Change default volume setting to 1.0.
   6083 
   6084         * html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::HTMLMediaElement):
   6085         * platform/graphics/MediaPlayer.cpp: (WebCore::MediaPlayer::MediaPlayer):
   6086 
   6087 2008-07-07  Darin Adler  <darin (a] apple.com>
   6088 
   6089         Reviewed by Mark Rowe.
   6090 
   6091         - fix <rdar://problem/6020441> REGRESSION: Layers on NWA.com render ugly
   6092 
   6093         The old version of the OpenCube QuickMenu library used on this site still has code
   6094         that detects Netscape 4 by checking appVersion to see if it has the substring "4."
   6095         in it. We decided to special-case the filename of the script and tweak the appVersion
   6096         for files with that name.
   6097 
   6098         * bindings/js/ScriptController.cpp:
   6099         (WebCore::ScriptController::ScriptController): Replace m_processingInlineCode with
   6100         m_sourceURL. Use false instead of 0 to initialize a boolean.
   6101         (WebCore::ScriptController::evaluate): Call argument sourceURL, not filename.
   6102         Store current sourceURL in m_sourceURL. This fixes a mistake in the code that
   6103         maintained the value of m_processingInlineCode, since the old code set it to
   6104         false rather than restoring it. Renamed a local variable named sourceURL to
   6105         exceptionSourceURL for clarity.
   6106         (WebCore::ScriptController::processingUserGesture): Code that formerly used
   6107         m_processingInlineCode to detect that it was evaluating code with no URL now
   6108         uses m_sourceURL to do the same check.
   6109 
   6110         * bindings/js/ScriptController.h: Renamed filename argument to sourceURL; it has always
   6111         been a URL, not a file path. Added a public sourceURL function and m_sourceURL and
   6112         removed m_processingInlineCode.
   6113 
   6114         * page/Navigator.cpp:
   6115         (WebCore::shouldHideFourDot): Added. Returns true if the currently running script has
   6116         a source URL ending in "/dqm_script.js" and if the settings say we should do
   6117         site-specific quirks (really JavaScript-library-specific in this case).
   6118         (WebCore::Navigator::appVersion): Replace "4." with "4_" if shouldHideFourDot is true.
   6119 
   6120 2008-07-07  Cameron Zwarich  <cwzwarich (a] uwaterloo.ca>
   6121 
   6122         Reviewed by Geoff.
   6123 
   6124         Bug 19907: REGRESSION(r34824-r34941): Reproducible crash trying to log in to MediaTemple.net Account Center
   6125         <https://bugs.webkit.org/show_bug.cgi?id=19907>
   6126 
   6127         Clear exceptions set on ExecStates before returning from NPAPI
   6128         callbacks, in order to avoid causing problems for the next script that
   6129         executes.
   6130 
   6131         While fixing this bug, the question was raised of whether we are
   6132         correctly propagating exception information back to the caller:
   6133 
   6134         Bug 19936: Correctly propagate exception information from NPAPI callbacks
   6135         <https://bugs.webkit.org/show_bug.cgi?id=19936>
   6136 
   6137         * bridge/NP_jsobject.cpp:
   6138         (_NPN_InvokeDefault):
   6139         (_NPN_Invoke):
   6140         (_NPN_Evaluate):
   6141         (_NPN_GetProperty):
   6142         (_NPN_SetProperty):
   6143         (_NPN_RemoveProperty):
   6144         (_NPN_HasProperty):
   6145         (_NPN_HasMethod):
   6146         (_NPN_Enumerate):
   6147 
   6148 2008-07-07  Dan Bernstein  <mitz (a] apple.com>
   6149 
   6150         Reviewed by Darin Adler.
   6151 
   6152         - fix <rdar://problem/6057650> REGRESSION (r35025): Crash beneath FontCache::invalidate() when activating Safari with no windows open
   6153 
   6154         * css/CSSFontFaceSource.cpp:
   6155         (WebCore::CSSFontFaceSource::getFontData): Added a null check because
   6156         docLoader() can return 0 now.
   6157         * css/CSSFontSelector.cpp:
   6158         (WebCore::CSSFontSelector::docLoader): Added a null check of m_document.
   6159         (WebCore::CSSFontSelector::addFontFaceRule): Ditto.
   6160         (WebCore::CSSFontSelector::fontLoaded): Ditto.
   6161         (WebCore::CSSFontSelector::fontCacheInvalidated): Ditto.
   6162         (WebCore::fontDataForGenericFamily): Added a null check of document.
   6163         * css/CSSFontSelector.h:
   6164         (WebCore::CSSFontSelector::clearDocument): Added.
   6165         * css/CSSStyleSelector.cpp:
   6166         (WebCore::CSSStyleSelector::~CSSStyleSelector): Added a call to
   6167         CSSFontSelector::clearDocument(). When the style selector is destroyed,
   6168         there is no guarantee that the document will continue to exist.
   6169 
   6170 2008-07-07  Julien Chaffraix  <jchaffraix (a] webkit.org>
   6171 
   6172         Not reviewed.
   6173 
   6174         No svg build fix.
   6175 
   6176         * DerivedSources.make: Add JSSVGElementWrapperFactory.cpp target.
   6177         * svg/animation/SMILTimeContainer.cpp: Add ENABLE(SVG) guard.
   6178 
   6179 2008-07-07  Michelangelo De Simone  <m.des (a] mac.com>
   6180 
   6181         Reviewed by Adele.
   6182 
   6183         Support for CSS3 :read-only and :read-write pseudoclasses for readonly text controls.
   6184 
   6185         URL: http://www.w3.org/TR/web-forms-2/#relation
   6186 
   6187         Tests: fast/css/readonly-pseudoclass-opera-001.html
   6188                fast/css/readonly-pseudoclass-opera-002.html
   6189                fast/css/readonly-pseudoclass-opera-003.html
   6190                fast/css/readonly-pseudoclass-opera-004.html
   6191                fast/css/readonly-pseudoclass-opera-005.html
   6192 
   6193         * css/CSSSelector.cpp: (WebCore::CSSSelector::extractPseudoType):
   6194         Added "read-only" and "read-write" values for PseudoType extraction.
   6195         * css/CSSSelector.h: (WebCore::CSSSelector::):
   6196         Added PseudoReadOnly and PseudoReadWrite entries in PseudoType enum.
   6197         * css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
   6198         Checks to determine whether to match :read-only and :read-write pseudoclasses on
   6199         text controls.
   6200 
   6201 2008-07-07  Sam Weinig  <sam (a] webkit.org>
   6202 
   6203         Reviewed by Geoffrey Garen.
   6204 
   6205         Fix for https://bugs.webkit.org/show_bug.cgi?id=19928
   6206         querySelectorAll should throw an exception if a NSResolver is passed in.
   6207 
   6208         - Throw an NOT_SUPPORTED_ERR if a non-null or undefined parameter is passed
   6209           as the second argument to querySelector or querySelectorAll.
   6210 
   6211         Test: fast/dom/SelectorAPI/not-supported-NSResolver.html
   6212 
   6213         * bindings/js/JSDocumentCustom.cpp:
   6214         (WebCore::JSDocument::querySelector):
   6215         (WebCore::JSDocument::querySelectorAll):
   6216         * bindings/js/JSElementCustom.cpp:
   6217         (WebCore::JSElement::querySelector):
   6218         (WebCore::JSElement::querySelectorAll):
   6219         * dom/Document.idl:
   6220         * dom/Element.idl:
   6221 
   6222 2008-07-07  Brady Eidson  <beidson (a] apple.com>
   6223 
   6224         Reviewed by Mitz and Geoff
   6225 
   6226         Test: fast/loader/empty-ref-versus-no-ref.html
   6227 
   6228         Fix for https://bugs.webkit.org/show_bug.cgi?id=18951 and <rdar://problem/5921760>
   6229         "all DOM operations stop working when location.hash set to '#'"
   6230 
   6231         The underlying problem is that KURL didn't really know the difference between "empty ref"
   6232         and "no ref at all" when changing the ref.  So changing to the empty ref in JS ended up 
   6233         affecting removal of the ref, which ended up causing an infinite load load, also killing
   6234         javascript.
   6235 
   6236         * platform/KURL.cpp:
   6237         (WebCore::KURL::setRef):  Changed "isEmpty()" to "isNull()", since NULL has the special 
   6238           meaning of "no ref at all" while empty means "empty ref"
   6239 
   6240 2008-07-07  Kevin McCullough  <kmccullough (a] apple.com>
   6241 
   6242         Reviewed by Darin.
   6243 
   6244         Because profiler.h no longer #includes profile.h we need to explicitly
   6245         include it in console.cpp.
   6246 
   6247         * page/Console.cpp:
   6248 
   6249 2008-07-07  Nikolas Zimmermann  <zimmermann (a] kde.org>
   6250 
   6251         Not reviewed. Build fix.
   6252 
   6253         Fix --svg-filters build (affects Qt build, mac/win don't have it on by default)
   6254 
   6255         * svg/SVGFEColorMatrixElement.cpp:
   6256         * svg/SVGFEDiffuseLightingElement.cpp:
   6257         * svg/SVGFEImageElement.cpp:
   6258         * svg/SVGFELightElement.cpp:
   6259         * svg/SVGFESpecularLightingElement.cpp:
   6260 
   6261 2008-07-07  Nikolas Zimmermann  <zimmermann (a] kde.org>
   6262 
   6263         Reviewed by Antti.
   6264 
   6265         Fixes: http://bugs.webkit.org/show_bug.cgi?id=17779 (SVG 1.1 Errata demands "SVG JavaScript Liveness" support)
   6266 
   6267         Revised version of the patch, not using pointer-to-member function callbacks anymore - after discussion with Adam Roben.
   6268         Remove unneccessary parameters of all macros.
   6269 
   6270         SVG Errata states: "All SVG DOM objects that directly correspond to an
   6271         attribute, e.g. the SVGAnimatedLength 'ry' in an SVGRectElement, are live. This
   6272         means that any changes made to the attribute are immediately reflected in the
   6273         corresponding SVG DOM object." (see linked URL on bug report)
   6274 
   6275         Until now only XML -> SVG DOM changes took affect, aka. changing the 'rx' attribute of a <rect>
   6276         element resuted in changes when accessing 'rx' through SVG DOM (rx.baseVal.value).
   6277 
   6278         Add a new synchronization layer to handle SVG DOM -> XML changes.
   6279 
   6280         Added test: svg/custom/svg-xml-dom-sync.html
   6281         Fixed test: svg/hixie/dynamic/005-broken.xml (renamed to 005.xml)
   6282 
   6283         * dom/Element.cpp:
   6284         (WebCore::Element::Element): Initialize the two new bits.
   6285         (WebCore::Element::attributes): Add hooks to call into SVG attribute synchronization code, wrapped in ENABLE(SVG) blocks.
   6286         (WebCore::Element::getAttribute): Ditto.
   6287         (WebCore::Element::hasAttributes): Ditto.
   6288         * dom/Element.h: Add two bits: m_areSVGAttributesValid/m_synchronizingSVGAttributes, to track synchronization status.
   6289         (WebCore::Element::updateAnimatedSVGAttribute): New virtual function, handling the synronication, similar to updateStyleAttribute.
   6290         * dom/NamedAttrMap.h: Make addAttribute/removeAttribute protected, from use within the ANIMATED_* macros.
   6291         * svg/SVGAElement.cpp:
   6292         * svg/SVGAElement.h:
   6293         * svg/SVGAnimatedTemplate.h:
   6294         (WebCore::lookupOrCreateWrapper): Take new AnimatedPropertySynchronizer callback as parameter, and associate it with the wrappers.
   6295         * svg/SVGCircleElement.cpp:
   6296         (WebCore::SVGCircleElement::SVGCircleElement):
   6297         * svg/SVGCircleElement.h:
   6298         * svg/SVGClipPathElement.cpp:
   6299         * svg/SVGClipPathElement.h:
   6300         * svg/SVGComponentTransferFunctionElement.cpp:
   6301         * svg/SVGComponentTransferFunctionElement.h:
   6302         * svg/SVGCursorElement.cpp:
   6303         (WebCore::SVGCursorElement::SVGCursorElement):
   6304         * svg/SVGCursorElement.h:
   6305         * svg/SVGElement.cpp:
   6306         (WebCore::SVGElement::updateAnimatedSVGAttribute): Override virtual function from Element, to handle SVG<->XML DOM synchronization.
   6307         (WebCore::SVGElement::setSynchronizedSVGAttributes):
   6308         * svg/SVGElement.h:
   6309         (WebCore::SVGElement::invokeSVGPropertySynchronizer):
   6310         (WebCore::SVGElement::invokeAllSVGPropertySynchronizers):
   6311         (WebCore::SVGElement::addSVGPropertySynchronizer):
   6312         * svg/SVGEllipseElement.cpp:
   6313         * svg/SVGEllipseElement.h:
   6314         * svg/SVGExternalResourcesRequired.cpp:
   6315         * svg/SVGExternalResourcesRequired.h:
   6316         * svg/SVGFEBlendElement.cpp:
   6317         * svg/SVGFEBlendElement.h:
   6318         * svg/SVGFEColorMatrixElement.cpp:
   6319         * svg/SVGFEColorMatrixElement.h:
   6320         * svg/SVGFEComponentTransferElement.cpp:
   6321         * svg/SVGFEComponentTransferElement.h:
   6322         * svg/SVGFECompositeElement.cpp:
   6323         * svg/SVGFECompositeElement.h:
   6324         * svg/SVGFEDiffuseLightingElement.cpp:
   6325         * svg/SVGFEDiffuseLightingElement.h:
   6326         * svg/SVGFEDisplacementMapElement.cpp:
   6327         * svg/SVGFEDisplacementMapElement.h:
   6328         * svg/SVGFEGaussianBlurElement.cpp:
   6329         * svg/SVGFEGaussianBlurElement.h:
   6330         * svg/SVGFEImageElement.cpp:
   6331         * svg/SVGFEImageElement.h:
   6332         * svg/SVGFELightElement.cpp:
   6333         * svg/SVGFELightElement.h:
   6334         * svg/SVGFEMergeNodeElement.cpp:
   6335         * svg/SVGFEMergeNodeElement.h:
   6336         * svg/SVGFEOffsetElement.cpp:
   6337         * svg/SVGFEOffsetElement.h:
   6338         * svg/SVGFESpecularLightingElement.cpp:
   6339         * svg/SVGFESpecularLightingElement.h:
   6340         * svg/SVGFETileElement.cpp:
   6341         * svg/SVGFETileElement.h:
   6342         * svg/SVGFETurbulenceElement.cpp:
   6343         * svg/SVGFETurbulenceElement.h:
   6344         * svg/SVGFilterElement.cpp:
   6345         * svg/SVGFilterElement.h:
   6346         * svg/SVGFilterPrimitiveStandardAttributes.cpp:
   6347         * svg/SVGFilterPrimitiveStandardAttributes.h:
   6348         * svg/SVGFitToViewBox.cpp:
   6349         * svg/SVGFitToViewBox.h:
   6350         * svg/SVGForeignObjectElement.cpp:
   6351         * svg/SVGForeignObjectElement.h:
   6352         * svg/SVGGradientElement.cpp:
   6353         * svg/SVGGradientElement.h:
   6354         * svg/SVGImageElement.cpp:
   6355         * svg/SVGImageElement.h:
   6356         * svg/SVGLineElement.cpp:
   6357         * svg/SVGLineElement.h:
   6358         * svg/SVGLinearGradientElement.cpp:
   6359         * svg/SVGLinearGradientElement.h:
   6360         * svg/SVGMarkerElement.cpp:
   6361         * svg/SVGMarkerElement.h:
   6362         * svg/SVGMaskElement.cpp:
   6363         * svg/SVGMaskElement.h:
   6364         * svg/SVGPathElement.cpp:
   6365         * svg/SVGPathElement.h:
   6366         * svg/SVGPatternElement.cpp:
   6367         * svg/SVGPatternElement.h:
   6368         * svg/SVGRadialGradientElement.cpp:
   6369         * svg/SVGRadialGradientElement.h:
   6370         * svg/SVGRectElement.cpp:
   6371         * svg/SVGRectElement.h:
   6372         * svg/SVGSVGElement.cpp:
   6373         * svg/SVGSVGElement.h:
   6374         * svg/SVGScriptElement.h:
   6375         * svg/SVGStopElement.cpp:
   6376         * svg/SVGStopElement.h:
   6377         * svg/SVGStyledElement.cpp:
   6378         * svg/SVGStyledElement.h:
   6379         * svg/SVGStyledTransformableElement.cpp:
   6380         * svg/SVGStyledTransformableElement.h:
   6381         * svg/SVGSymbolElement.h:
   6382         * svg/SVGTextContentElement.cpp:
   6383         * svg/SVGTextContentElement.h:
   6384         * svg/SVGTextElement.cpp:
   6385         * svg/SVGTextElement.h:
   6386         * svg/SVGTextPathElement.cpp:
   6387         * svg/SVGTextPathElement.h:
   6388         * svg/SVGTextPositioningElement.cpp:
   6389         * svg/SVGTextPositioningElement.h:
   6390         * svg/SVGURIReference.cpp:
   6391         * svg/SVGURIReference.h:
   6392         * svg/SVGUseElement.cpp:
   6393         * svg/SVGUseElement.h:
   6394         * svg/SVGViewElement.h:
   6395         * svg/SynchronizableTypeWrapper.h: Added.
   6396 
   6397 2008-07-07  Nikolas Zimmermann  <zimmermann (a] kde.org>
   6398 
   6399         Reviewed by Oliver.
   6400 
   6401         Working on: http://bugs.webkit.org/show_bug.cgi?id=17779 (SVG 1.1 Errata demands "SVG JavaScript Liveness" support)
   6402 
   6403         Splitting up large patch in small chunk: Land valueAsString() implementation on it's own.
   6404 
   6405         Added valueAsString() conversion for all SVG primitive types, needed by the SVG<->XML synchronization layer.
   6406         Unify "null value for a SVG animated type" concept, which was implemented in SVGDocumentExtensions before,
   6407         in SVGAnimatedTemplate.
   6408 
   6409         * svg/SVGAnimatedTemplate.h:
   6410         (WebCore::SVGAnimatedTemplate::associatedAttributeName):
   6411         (WebCore::lookupOrCreateWrapper):
   6412         (WebCore::SVGAnimatedTypeValue::null):
   6413         (WebCore::SVGAnimatedTypeValue::toString):
   6414         (WebCore::):
   6415         * svg/SVGDocumentExtensions.h:
   6416         (WebCore::SVGDocumentExtensions::baseValue):
   6417         * svg/SVGLengthList.cpp:
   6418         (WebCore::SVGLengthList::valueAsString):
   6419         * svg/SVGLengthList.h:
   6420         * svg/SVGNumberList.cpp:
   6421         (WebCore::SVGNumberList::valueAsString):
   6422         * svg/SVGNumberList.h:
   6423         * svg/SVGPreserveAspectRatio.cpp:
   6424         (WebCore::SVGPreserveAspectRatio::valueAsString):
   6425         * svg/SVGPreserveAspectRatio.h:
   6426         * svg/SVGTransformList.cpp:
   6427         (SVGTransformList::valueAsString):
   6428         * svg/SVGTransformList.h:
   6429 
   6430 2008-07-06  Sam Weinig  <sam (a] webkit.org>
   6431 
   6432         Reviewed by Dan Bernstein.
   6433 
   6434         Rename "Access-Contol-Origin" to "Origin" to match the latest
   6435         Access Control for Cross-Site Request draft. (Editor's Draft 25 May 2008)
   6436 
   6437         * xml/XMLHttpRequest.cpp:
   6438         (WebCore::XMLHttpRequest::makeSimpleCrossSiteAccessRequest):
   6439         (WebCore::XMLHttpRequest::makeCrossSiteAccessRequestWithPreflight):
   6440         (WebCore::XMLHttpRequest::handleAsynchronousPreflightResult):
   6441 
   6442 2008-07-06  Dan Bernstein  <mitz (a] apple.com>
   6443 
   6444         - try to fix the Windows build
   6445 
   6446         * WebCore.vcproj/WebCore.vcproj:
   6447 
   6448 2008-07-06  Dan Bernstein  <mitz (a] apple.com>
   6449 
   6450         - add missing brace
   6451 
   6452         * platform/graphics/qt/FontCacheQt.cpp:
   6453 
   6454 2008-07-06  Dan Bernstein  <mitz (a] apple.com>
   6455 
   6456         - try to fix the Qt build
   6457 
   6458         * platform/graphics/qt/FontCacheQt.cpp:
   6459         (WebCore::FontCache::addClient):
   6460         (WebCore::FontCache::removeClient):
   6461 
   6462 2008-07-06  Sam Weinig  <sam (a] webkit.org>
   6463 
   6464         Reviewed by Cameron Zwarich.
   6465 
   6466         Add #include for kjs/protect.h.
   6467 
   6468         * xml/XMLHttpRequest.cpp:
   6469         (WebCore::XMLHttpRequest::loadRequestAsynchronously):
   6470 
   6471 2008-07-06  David Kilzer  <ddkilzer (a] apple.com>
   6472 
   6473         Save a few more bits in RenderStyle
   6474 
   6475         Reviewed by Darin.
   6476 
   6477         No test cases added since there is no change in behavior.
   6478 
   6479         This changes WebCore::StyleMarqueeData from using 6 bits to 5 bits,
   6480         WebCore::RenderStyle::inherited_flags from using 36 bits to 35 bits,
   6481         and WebCore::RenderStyle::noninherited_flags from using 49 bits to
   6482         47 bits.
   6483 
   6484         * rendering/style/RenderStyle.h:
   6485         (WebCore::StyleMarqueeData::behavior): Reduce from 3 bits to 2 bits
   6486         since EMarqueeBehavior has 4 items.
   6487         (WebCore::RenderStyle::inherited_flags._text_align): Reduce from
   6488         4 bits to 3 bits since ETextAlign has 8 items.
   6489         (WebCore::RenderStyle::noninherited_flags._overflowX): Reduce from
   6490         4 bits to 3 bits since EOverflow has 6 items.
   6491         (WebCore::RenderStyle::noninherited_flags._overflowY): Ditto.
   6492 
   6493 2008-07-06  Dan Bernstein  <mitz (a] apple.com>
   6494 
   6495         Reviewed by Darin Adler.
   6496 
   6497         - fix <rdar://problem/5735163> WebCore caching makes text look wrong after font changes; need to respond appropriately instead
   6498 
   6499         * css/CSSFontSelector.cpp:
   6500         (WebCore::CSSFontSelector::CSSFontSelector): Added a call to
   6501         FontCache::addClient().
   6502         (WebCore::CSSFontSelector::~CSSFontSelector): Added a call to
   6503         FontCache::removeClient().
   6504         (WebCore::CSSFontSelector::fontCacheInvalidated): Added. Called by the
   6505         font cache when it is invalidated, and ensures that the document is
   6506         updated.
   6507 
   6508         * css/CSSFontSelector.h:
   6509 
   6510         * platform/graphics/Font.cpp:
   6511         (WebCore::Font::operator==): Added code to compare the font fallback
   6512         lists' font cache generations.
   6513 
   6514         * platform/graphics/FontCache.cpp:
   6515         (WebCore::FontCache::addClient): Added.
   6516         (WebCore::FontCache::removeClient): Added.
   6517         (WebCore::FontCache::generation): Added.
   6518         (WebCore::FontCache::invalidate): Added. Deletes the platform data
   6519         cache, increments the generation counter, and notifies all clients.
   6520 
   6521         * platform/graphics/FontCache.h:
   6522 
   6523         * platform/graphics/FontFallbackList.cpp:
   6524         (WebCore::FontFallbackList::FontFallbackList): Added initialization of
   6525         m_generation.
   6526         (WebCore::FontFallbackList::invalidate): Added code to reset
   6527         m_generation.
   6528         (WebCore::FontFallbackList::fontDataAt): Added an assertion.
   6529         (WebCore::FontFallbackList::fontDataForCharacters): Ditto.
   6530         (WebCore::FontFallbackList::setPlatformFont): Ditto.
   6531 
   6532         * platform/graphics/FontFallbackList.h:
   6533         (WebCore::FontFallbackList::generation): Added. Returns the font cache
   6534         generation used to populate the list.
   6535 
   6536         * platform/graphics/FontSelector.h:
   6537         (WebCore::FontSelector::fontCacheInvalidated): Added.
   6538 
   6539         * platform/graphics/mac/FontCacheMac.mm:
   6540         (WebCore::fontCacheATSNotificationCallback): Added. Calls
   6541         FontCache::invalidate().
   6542         (WebCore::FontCache::platformInit): Added code to register for ATS
   6543         notifications.
   6544 
   6545         * svg/SVGFontFaceElement.cpp: Removed unneeded #inlcudes.
   6546 
   6547 2008-07-05  Sam Weinig  <sam (a] webkit.org>
   6548 
   6549         Rubber-stamped by Cameron Zwarich.
   6550 
   6551         Rename list.h/cpp to ArgList.h/cpp.
   6552 
   6553         * ForwardingHeaders/kjs/ArgList.h: Copied from WebCore/ForwardingHeaders/kjs/list.h.
   6554         * ForwardingHeaders/kjs/list.h: Removed.
   6555         * WebCore.vcproj/WebCore.vcproj:
   6556         * bridge/qt/qt_instance.cpp:
   6557         * page/Console.cpp:
   6558 
   6559 2008-07-05  Sam Weinig  <sam (a] webkit.org>
   6560 
   6561         Rubber-stamped by Cameron Zwarich.
   6562 
   6563         Split Arguments, IndexToNameMap, PrototypeFunction, GlobalEvalFunction and 
   6564         the functions on the global object out of JSFunction.h/cpp.
   6565 
   6566         * ForwardingHeaders/kjs/PrototypeFunction.h: Added.
   6567         * bindings/js/JSDOMBinding.cpp:
   6568 
   6569 2008-07-05  Dan Bernstein  <mitz (a] apple.com>
   6570 
   6571         Rubber-stamped by Sam Weinig.
   6572 
   6573         - rename BidiIterator and BidiState
   6574 
   6575         Renamed BidiIterator to InlineIterator and BidiState
   6576         to InlineBidiResolver. Renamed variables of type InlineBidiResolver{*,&}
   6577         to "resolver".
   6578 
   6579         * rendering/RenderBlock.h:
   6580         * rendering/RootInlineBox.h:
   6581         * rendering/bidi.cpp:
   6582         (WebCore::InlineIterator::InlineIterator):
   6583         (WebCore::operator==):
   6584         (WebCore::operator!=):
   6585         (WebCore::bidiNext):
   6586         (WebCore::bidiFirst):
   6587         (WebCore::InlineIterator::increment):
   6588         (WebCore::InlineBidiResolver::increment):
   6589         (WebCore::InlineIterator::atEnd):
   6590         (WebCore::InlineIterator::current):
   6591         (WebCore::InlineIterator::direction):
   6592         (WebCore::chopMidpointsAt):
   6593         (WebCore::checkMidpoints):
   6594         (WebCore::addMidpoint):
   6595         (WebCore::appendRunsForObject):
   6596         (WebCore::InlineBidiResolver::appendRun):
   6597         (WebCore::RenderBlock::bidiReorderLine):
   6598         (WebCore::buildCompactRuns):
   6599         (WebCore::RenderBlock::layoutInlineChildren):
   6600         (WebCore::RenderBlock::determineStartPosition):
   6601         (WebCore::RenderBlock::determineEndPosition):
   6602         (WebCore::RenderBlock::matchedEndLine):
   6603         (WebCore::skipNonBreakingSpace):
   6604         (WebCore::requiresLineBox):
   6605         (WebCore::RenderBlock::generatesLineBoxesForInlineChild):
   6606         (WebCore::RenderBlock::skipWhitespace):
   6607         (WebCore::shouldSkipWhitespaceAfterStartObject):
   6608         (WebCore::RenderBlock::findNextLineBreak):
   6609 
   6610 2008-07-05  Jan Michael Alonzo  <jmalonzo (a] webkit.org>
   6611 
   6612         Rubber-stamped by Oliver Hunt
   6613 
   6614         Coding style fix
   6615 
   6616         * html/CanvasRenderingContext2D.cpp: Indentation fix
   6617 
   6618 2008-07-04  Oliver Hunt  <oliver (a] apple.com>
   6619 
   6620         Fix windows build
   6621 
   6622         * WebCore.vcproj/WebCore.vcproj:
   6623 
   6624 2008-07-04  Sam Weinig  <sam (a] webkit.org>
   6625 
   6626         Fix Qt build.
   6627 
   6628         * bridge/qt/qt_instance.cpp:
   6629 
   6630 2008-07-04  Sam Weinig  <sam (a] webkit.org>
   6631 
   6632         Rubber-stamped by Dan Bernstein.
   6633 
   6634         Split Error and GetterSetter out of JSObject.h.
   6635 
   6636         * ForwardingHeaders/kjs/Error.h: Added.
   6637         * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
   6638         * bindings/js/JSClipboardCustom.cpp:
   6639         * bindings/js/JSDOMWindowBase.cpp:
   6640         * bindings/js/JSEventTargetBase.cpp:
   6641         * bindings/js/JSHTMLDocumentCustom.cpp:
   6642         * bindings/js/JSXMLHttpRequestCustom.cpp:
   6643         * bindings/scripts/CodeGeneratorJS.pm:
   6644         * bridge/NP_jsobject.cpp:
   6645         * bridge/jni/jni_instance.cpp:
   6646         * bridge/jni/jni_runtime.cpp:
   6647         * bridge/objc/objc_instance.mm:
   6648         * bridge/objc/objc_runtime.mm:
   6649         * bridge/objc/objc_utility.h:
   6650         * bridge/runtime_array.cpp:
   6651         * bridge/runtime_method.cpp:
   6652         * bridge/runtime_object.cpp:
   6653 
   6654 2008-07-04  David D. Kilzer  <ddkilzer (a] webkit.org>
   6655 
   6656         Bug 15290: REGRESSION (r14184-r14216): Duplicate DOCTYPE definitions when saving files as webarchives
   6657 
   6658         <https://bugs.webkit.org/show_bug.cgi?id=15290>
   6659         <rdar://problem/5509173>
   6660 
   6661         Reviewed by Dan Bernstein.
   6662 
   6663         Tests: webarchive/archive-empty-frame-dom.html
   6664                webarchive/doctype.html
   6665 
   6666         * editing/markup.cpp:
   6667         (WebCore::createFullMarkup): If the Node is a Document or a
   6668         DocumentType, don't prepend the <!DOCTYPE> tag since that will
   6669         cause it to be duplicated.
   6670         * loader/archive/cf/LegacyWebArchive.cpp:
   6671         (WebCore::LegacyWebArchive::create): Ditto.
   6672 
   6673 2008-07-04  Jan Michael Alonzo  <jmalonzo (a] webkit.org>
   6674 
   6675         Gtk build fix
   6676 
   6677         * GNUmakefile.am:
   6678 
   6679 2008-07-04  Cameron Zwarich  <cwzwarich (a] uwaterloo.ca>
   6680 
   6681         Reviewed by Eric Seidel.
   6682 
   6683         Bring our implementation of the Netscape plugin API closer to current
   6684         code style guidelines.
   6685 
   6686         * bridge/NP_jsobject.cpp:
   6687         (getListFromVariantArgs):
   6688         (jsAllocate):
   6689         (jsDeallocate):
   6690         (_NPN_CreateScriptObject):
   6691         (_NPN_CreateNoScriptObject):
   6692         (_NPN_InvokeDefault):
   6693         (_NPN_Invoke):
   6694         (_NPN_Evaluate):
   6695         (_NPN_GetProperty):
   6696         (_NPN_SetProperty):
   6697         (_NPN_RemoveProperty):
   6698         (_NPN_HasProperty):
   6699         (_NPN_HasMethod):
   6700         (_NPN_Enumerate):
   6701         * bridge/npruntime_impl.h:
   6702 
   6703 2008-07-04  Simon Hausmann  <hausmann (a] webkit.org>
   6704 
   6705         Fix the Qt/Windows build.
   6706 
   6707         * WebCore.pro: Moved PluginMainThreadScheduler.cpp to the main
   6708         sources, so that it is always compiled.
   6709         * platform/qt/CursorQt.cpp: #undef CopyCursor, as it's defined by some
   6710         Windows header.
   6711         * platform/qt/KeyboardCodes.h: Don't re-define some of the keycodes
   6712         that are defined by Windows already.
   6713         * platform/qt/TemporaryLinkStubs.cpp: Removed the PluginDatabase stubs
   6714         that are now platform-independent in plugin/PluginDatabase.cpp.
   6715 
   6716 2008-07-04  Simon Hausmann  <hausmann (a] webkit.org>
   6717 
   6718         Fix the Mac build for real, don't define listDirectory() twice.
   6719 
   6720         * platform/mac/FileSystemMac.mm:
   6721 
   6722 2008-07-04  Simon Hausmann  <hausmann (a] webkit.org>
   6723 
   6724         Prospective Mac build fix.
   6725 
   6726         * platform/mac/FileSystemMac.mm: Include NotImplemented.h.
   6727         * platform/posix/FileSystemPOSIX.cpp: Ditto.
   6728 
   6729 2008-07-04  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   6730 
   6731         Reviewed by Simon.
   6732 
   6733         Move duplicated code from each PluginDatabaseXX-implementation
   6734         to PluginDabase.cpp -- ifdefed based on the XP_PLATFORM we are
   6735         compiling plugins for.
   6736 
   6737         This make the code cleaner and we can share common patterns.
   6738         The only implementation left which is specific is the Win
   6739         implementation (also used by QtWebKit/Win), but we might
   6740         want to move that too.
   6741 
   6742         * GNUmakefile.am: Removed PluginDatabaseGtk.cpp from the build.
   6743         * WebCore.pro: Removed PluginDatabaseQt.cpp from the build.
   6744         * plugins/PluginDatabase.cpp:
   6745         (WebCore::PluginDatabase::defaultPluginDirectories):
   6746         (WebCore::PluginDatabase::isPreferredPluginDirectory):
   6747         (WebCore::PluginDatabase::getPluginPathsInDirectories):
   6748         * plugins/gtk/PluginDatabaseGtk.cpp: Removed.
   6749         * plugins/qt/PluginDatabaseQt.cpp: Removed.
   6750         * plugins/wx/PluginDatabaseWx.cpp: Removed.
   6751         * webcore-wx.bkl: Removed PluginDatabaseWx.cpp from the build.
   6752 
   6753 2008-07-04  Simon Hausmann  <hausmann (a] webkit.org>
   6754 
   6755         Fix the Wx build.
   6756 
   6757         * WebCoreSources.bkl: Add plugins/PluginMainThreadScheduler.cpp to the
   6758         build.
   6759         * page/FocusController.cpp:
   6760         (WebCore::FocusController::setActive): Extend MAC #ifdef to WX as
   6761         layoutIfNeededRecursive does not exist for the Wx port.
   6762 
   6763 2008-07-04  Simon Hausmann  <hausmann (a] webkit.org>
   6764 
   6765         Fix the Gtk build, adapt to renamed files.
   6766 
   6767         * GNUmakefile.am:
   6768 
   6769 2008-07-04  Simon Hausmann  <hausmann (a] webkit.org>
   6770 
   6771         Fix the Qt build, adapt to renamed files.
   6772 
   6773         * WebCore.pro:
   6774 
   6775 2008-07-03  Oliver Hunt  <oliver (a] apple.com>
   6776 
   6777         Reviewed by Eric Seidel.
   6778 
   6779         Move filter implementations to platform directory.
   6780 
   6781         * WebCore.vcproj/WebCore.vcproj
   6782         * WebCore.xcodeproj/project.pbxproj:
   6783         * svg/SVGComponentTransferFunctionElement.h:
   6784         * svg/SVGFEBlendElement.h:
   6785         * svg/SVGFEColorMatrixElement.h:
   6786         * svg/SVGFEComponentTransferElement.h:
   6787         * svg/SVGFECompositeElement.h:
   6788         * platform/graphics/filters/FEBlend.cpp: Renamed from WebCore/svg/graphics/filters/SVGFEBlend.cpp.
   6789         * platform/graphics/filters/FEBlend.h: Renamed from WebCore/svg/graphics/filters/SVGFEBlend.h.
   6790         * platform/graphics/filters/FEColorMatrix.cpp: Renamed from WebCore/svg/graphics/filters/SVGFEColorMatrix.cpp.
   6791         * platform/graphics/filters/FEColorMatrix.h: Renamed from WebCore/svg/graphics/filters/SVGFEColorMatrix.h.
   6792         * platform/graphics/filters/FEComponentTransfer.cpp: Renamed from WebCore/svg/graphics/filters/SVGFEComponentTransfer.cpp.
   6793         * platform/graphics/filters/FEComponentTransfer.h: Renamed from WebCore/svg/graphics/filters/SVGFEComponentTransfer.h.
   6794         * platform/graphics/filters/FEComposite.cpp: Renamed from WebCore/svg/graphics/filters/SVGFEComposite.cpp.
   6795         * platform/graphics/filters/FEComposite.h: Renamed from WebCore/svg/graphics/filters/SVGFEComposite.h.
   6796 
   6797 2008-07-03  Alex Mathews  <possessedpenguinbob (a] gmail.com>
   6798 
   6799         Reviewed by Oliver Hunt.
   6800 
   6801         Bug 19835: WebKit needs cross-platform filter system
   6802         <https://bugs.webkit.org/show_bug.cgi?id=19835>
   6803 
   6804         More class refactoring in preparation for cross-platform filter
   6805         implementation.
   6806 
   6807         * WebCore.xcodeproj/project.pbxproj:
   6808         * svg/FilterEffect.h:
   6809         * svg/SVGComponentTransferFunctionElement.cpp:
   6810         (WebCore::SVGComponentTransferFunctionElement::SVGComponentTransferFunctionElement):
   6811         (WebCore::SVGComponentTransferFunctionElement::parseMappedAttribute):
   6812         (WebCore::SVGComponentTransferFunctionElement::transferFunction):
   6813         * svg/SVGComponentTransferFunctionElement.h:
   6814         * svg/SVGFEColorMatrixElement.cpp:
   6815         (WebCore::SVGFEColorMatrixElement::SVGFEColorMatrixElement):
   6816         (WebCore::SVGFEColorMatrixElement::parseMappedAttribute):
   6817         (WebCore::SVGFEColorMatrixElement::filterEffect):
   6818         (WebCore::SVGFEColorMatrixElement::build):
   6819         * svg/SVGFEColorMatrixElement.h:
   6820         * svg/SVGFEComponentTransferElement.cpp:
   6821         (WebCore::SVGFEComponentTransferElement::filterEffect):
   6822         (WebCore::SVGFEComponentTransferElement::build):
   6823         * svg/SVGFEComponentTransferElement.h:
   6824         * svg/SVGFECompositeElement.cpp:
   6825         (WebCore::SVGFECompositeElement::SVGFECompositeElement):
   6826         (WebCore::SVGFECompositeElement::parseMappedAttribute):
   6827         (WebCore::SVGFECompositeElement::filterEffect):
   6828         (WebCore::SVGFECompositeElement::build):
   6829         * svg/SVGFECompositeElement.h:
   6830         * svg/graphics/filters/SVGFEBlend.cpp:
   6831         * svg/graphics/filters/SVGFEBlend.h:
   6832         * svg/graphics/filters/SVGFEColorMatrix.cpp:
   6833         (WebCore::FEColorMatrix::FEColorMatrix):
   6834         (WebCore::FEColorMatrix::create):
   6835         (WebCore::FEColorMatrix::type):
   6836         (WebCore::FEColorMatrix::setType):
   6837         (WebCore::FEColorMatrix::values):
   6838         (WebCore::FEColorMatrix::setValues):
   6839         (WebCore::FEColorMatrix::apply):
   6840         (WebCore::FEColorMatrix::dump):
   6841         * svg/graphics/filters/SVGFEColorMatrix.h:
   6842         (WebCore::):
   6843         * svg/graphics/filters/SVGFEComponentTransfer.cpp:
   6844         (WebCore::FEComponentTransfer::FEComponentTransfer):
   6845         (WebCore::FEComponentTransfer::create):
   6846         (WebCore::FEComponentTransfer::redFunction):
   6847         (WebCore::FEComponentTransfer::setRedFunction):
   6848         (WebCore::FEComponentTransfer::greenFunction):
   6849         (WebCore::FEComponentTransfer::setGreenFunction):
   6850         (WebCore::FEComponentTransfer::blueFunction):
   6851         (WebCore::FEComponentTransfer::setBlueFunction):
   6852         (WebCore::FEComponentTransfer::alphaFunction):
   6853         (WebCore::FEComponentTransfer::setAlphaFunction):
   6854         (WebCore::FEComponentTransfer::apply):
   6855         (WebCore::FEComponentTransfer::dump):
   6856         * svg/graphics/filters/SVGFEComponentTransfer.h:
   6857         (WebCore::):
   6858         (WebCore::ComponentTransferFunction::ComponentTransferFunction):
   6859         * svg/graphics/filters/SVGFEComposite.cpp:
   6860         (WebCore::FEComposite::FEComposite):
   6861         (WebCore::FEComposite::create):
   6862         (WebCore::FEComposite::operation):
   6863         (WebCore::FEComposite::setOperation):
   6864         (WebCore::FEComposite::k1):
   6865         (WebCore::FEComposite::setK1):
   6866         (WebCore::FEComposite::k2):
   6867         (WebCore::FEComposite::setK2):
   6868         (WebCore::FEComposite::k3):
   6869         (WebCore::FEComposite::setK3):
   6870         (WebCore::FEComposite::k4):
   6871         (WebCore::FEComposite::setK4):
   6872         (WebCore::FEComposite::apply):
   6873         (WebCore::FEComposite::dump):
   6874         * svg/graphics/filters/SVGFEComposite.h:
   6875         (WebCore::):
   6876         * svg/graphics/filters/cg/SVGFEColorMatrixCg.mm: Removed.
   6877         * svg/graphics/filters/cg/SVGFEComponentTransferCg.mm: Removed.
   6878         * svg/graphics/filters/cg/SVGFECompositeCg.mm: Removed.
   6879 
   6880 2008-07-03  Dan Bernstein  <mitz (a] apple.com>
   6881 
   6882         Reviewed by John Sullivan.
   6883 
   6884         - fix <rdar://problem/6020930> Bidi Problem When Resizing Window
   6885 
   6886         Test: fast/text/international/bidi-AN-after-empty-run.html
   6887 
   6888         * platform/text/BidiResolver.h:
   6889         (WebCore::::appendRun): Changed to reset the current direction and
   6890         "end of run" direction even in the empty run case.
   6891         * rendering/bidi.cpp:
   6892         (WebCore::BidiState::appendRun): Ditto.
   6893 
   6894 2008-07-02  Jon Honeycutt  <jhoneycutt (a] apple.com>
   6895 
   6896         <rdar://5983747> Safari crashes trying to load the SilverLight plugin
   6897 
   6898         If a plug-in returned an error code from NPP_NewStream, we would call
   6899         NPP_DestroyStream while cleaning up the request. We now only call
   6900         NPP_DestroyStream if NPP_NewStream was successful, matching Firefox.
   6901 
   6902         Reviewed by Anders.
   6903 
   6904         * plugins/PluginStream.cpp:
   6905         (WebCore::PluginStream::startStream): If NPP_NewStream returns an error,
   6906         don't set m_streamState to StreamStarted, and return after calling
   6907         cancelAndDestroyStream.
   6908         (WebCore::PluginStream::destroyStream): Don't call NPP_DestroyStream if
   6909         the stream didn't start successfully.
   6910 
   6911 2008-07-03  David Hyatt  <hyatt (a] apple.com>
   6912 
   6913         Revise Dan's fix for an assert on Windows, since layoutIfNeededRecursive doesn't exist on the
   6914         Mac.  Revert updateControlTints and add the layout call outside of it in the already-existing
   6915         !PLATFORM(MAC) ifdef in FocusController's setActive method.
   6916 
   6917         Reviewed by ggaren, weinig
   6918 
   6919         * page/FocusController.cpp:
   6920         (WebCore::FocusController::setActive):
   6921         * page/FrameView.cpp:
   6922         (WebCore::FrameView::updateControlTints):
   6923 
   6924 2008-07-03  Alexey Proskuryakov  <ap (a] webkit.org>
   6925 
   6926         Reviewed by Darin.
   6927 
   6928         https://bugs.webkit.org/show_bug.cgi?id=19884
   6929         Locating a store at www.366.ru doesn't work
   6930 
   6931         Test: fast/forms/submit-with-base.html
   6932 
   6933         * html/HTMLFormElement.cpp: (WebCore::HTMLFormElement::submit): Treat empty action the same
   6934         as missing one - ignore base URL.
   6935 
   6936 2008-07-03  Dan Bernstein  <mitz (a] apple.com>
   6937 
   6938         Reviewed by John Sullivan.
   6939 
   6940         - fix <rdar://problem/6048904> Assert in WebCore::Frame::paint in Windows
   6941 
   6942         * page/FrameView.cpp:
   6943         (WebCore::FrameView::updateControlTints): Changed to update layout
   6944         recursively and not just for the top-level frame.
   6945 
   6946 2008-07-03  Cameron Zwarich  <cwzwarich (a] uwaterloo.ca>
   6947 
   6948         Reviewed by Geoff.
   6949 
   6950         Bug 19853: REGRESSION (r34838): Crash when visiting http://www.thewebsiteisdown.com/salesguy.html
   6951         https://bugs.webkit.org/show_bug.cgi?id=19853
   6952 
   6953         Remove the body of _NPN_SetException(), because it was simply calling
   6954         throwError(), which sets an exception on an ExecState but does not
   6955         actually handle it. The presence of an exception on the global ExecState
   6956         causes assertions that there is no exception set on that ExecState to
   6957         fail, as well as causing Machine::execute() to mistakingly return 0 in
   6958         some cases, as it assumes the presence of an exception implies that it
   6959         has run out of memory.
   6960 
   6961         * bridge/NP_jsobject.cpp:
   6962         (_NPN_SetException):
   6963 
   6964 2008-07-03  Maciej Katafiasz  <mathrick (a] gmail.com>
   6965 
   6966         Gtk build fix with SVG filters enabled
   6967 
   6968         * GNUmakefile.am: Include missing SVG filter sources
   6969 
   6970 2008-07-03  Simon Hausmann  <hausmann (a] webkit.org>
   6971 
   6972         Fix the Qt build, added FilterEffect to the build.
   6973 
   6974         * WebCore.pro:
   6975 
   6976 2008-07-02  Brady Eidson  <beidson (a] apple.com>
   6977 
   6978         Reviewed by Mitz Pettel and John Sullivan
   6979 
   6980         Fix for <rdar://problem/5549871> - Crash when calling [WebView stopLoading:] or [WebFrame stopLoading] 
   6981         inside of the frame load delegate method -webView:didStartProvisionalLoadForFrame:.
   6982 
   6983         Test: fast/loader/stop-provisional-loads.html
   6984 
   6985         * loader/FrameLoader.cpp:
   6986         (WebCore::FrameLoader::continueLoadAfterWillSubmitForm): Since the provisionalDocumentLoader may have been cleared
   6987           by the prepareForLoadStart() call, null check it again.
   6988 
   6989 2008-07-01  Alex Mathews  <possessedpenguinbob (a] gmail.com>
   6990 
   6991         Reviewed by Oliver Hunt.
   6992 
   6993         Renaming of class SVGFEBlend to FEBlend as well as removing
   6994         a little bit of antiquated code. This includes the removal of
   6995         SVGFEBlendCg.mm; the feBlend element will now no longer
   6996         render. 
   6997 
   6998         * WebCore.xcodeproj/project.pbxproj:
   6999         * svg/FilterBuilder.h:
   7000         (WebCore::FilterBuilder::add):
   7001         (WebCore::FilterBuilder::getEffectById):
   7002         * svg/SVGFEBlendElement.cpp:
   7003         (WebCore::SVGFEBlendElement::SVGFEBlendElement):
   7004         (WebCore::SVGFEBlendElement::parseMappedAttribute):
   7005         (WebCore::SVGFEBlendElement::filterEffect):
   7006         (WebCore::SVGFEBlendElement::build):
   7007         * svg/SVGFEBlendElement.h:
   7008         * svg/SVGFilterPrimitiveStandardAttributes.h:
   7009         * svg/graphics/filters/SVGFEBlend.cpp:
   7010         (WebCore::FEBlend::FEBlend):
   7011         (WebCore::FEBlend::create):
   7012         (WebCore::FEBlend::in2):
   7013         (WebCore::FEBlend::setIn2):
   7014         (WebCore::FEBlend::blendMode):
   7015         (WebCore::FEBlend::setBlendMode):
   7016         (WebCore::FEBlend::apply):
   7017         (WebCore::FEBlend::dump):
   7018         * svg/graphics/filters/SVGFEBlend.h:
   7019         (WebCore::):
   7020         * svg/graphics/filters/cg/SVGFEBlendCg.mm: Removed.
   7021 
   7022 2008-07-02  Beth Dakin  <bdakin (a] apple.com>
   7023 
   7024         Reviewed by Darin.
   7025 
   7026         Fix for <rdar://problem/6015523> Implement ARIA ranges/sliders
   7027         and
   7028         <rdar://problem/5934355> Need to implement ARIA role="spinbutton"
   7029 
   7030         * page/AccessibilityObject.h:
   7031         (WebCore::AccessibilityObject::isSlider):
   7032         * page/AccessibilityRenderObject.cpp:
   7033         (WebCore::AccessibilityRenderObject::isSlider):
   7034         (WebCore::AccessibilityRenderObject::valueForRange):
   7035         (WebCore::AccessibilityRenderObject::maxValueForRange):
   7036         (WebCore::AccessibilityRenderObject::minValueForRange):
   7037         (WebCore::AccessibilityRenderObject::accessibilityIsIgnored): We 
   7038         were addressing the generic has-an-ARIA-role case too early here.
   7039         (WebCore::AccessibilityRenderObject::focusedUIElement): This is a 
   7040         bug I ran into while testing role='spinbutton', spinbutton is a 
   7041         role that can have an active descendant. But we were always trying 
   7042         to forward focus to the active descendant, even if one was not 
   7043         specified. 
   7044         (WebCore::AccessibilityRenderObject::shouldFocusActiveDescendant): 
   7045         'spinbutton' maps to ProgressIndicatorRole.
   7046         (WebCore::RoleEntry::):
   7047         (WebCore::AccessibilityRenderObject::canSetValueAttribute):
   7048         * page/AccessibilityRenderObject.h:
   7049         * page/mac/AccessibilityObjectWrapper.mm:
   7050         (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
   7051         (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
   7052 
   7053 2008-07-02  Dan Bernstein  <mitz (a] apple.com>
   7054 
   7055         Reviewed by Adam Roben.
   7056 
   7057         - Windows build fix
   7058 
   7059         Renamed the ERROR token in the XPath grammar to XPATH_ERROR, because
   7060         the ERROR macro is defined in <wingdi.h>.
   7061 
   7062         * xml/XPathGrammar.y:
   7063         * xml/XPathParser.cpp:
   7064         (WebCore::XPath::Parser::lexString):
   7065         (WebCore::XPath::Parser::nextTokenInternal):
   7066 
   7067 2008-07-02  Alexey Proskuryakov  <ap (a] webkit.org>
   7068 
   7069         Inspired and reviewed by Mark Rowe.
   7070 
   7071         Change non-API includes from JavaScriptCore/ to kjs/ and wtf/ to match prevalent style.
   7072 
   7073         * bindings/objc/ExceptionHandlers.h:
   7074         * bindings/objc/WebScriptObject.mm:
   7075         * dom/Document.cpp:
   7076         * dom/Node.cpp:
   7077         * page/Frame.cpp:
   7078         * page/InspectorController.cpp:
   7079         * page/JavaScriptProfileNode.cpp:
   7080         * page/mac/FrameMac.mm:
   7081         * platform/mac/ThreadCheck.mm:
   7082         * xml/XMLHttpRequest.cpp:
   7083 
   7084 2008-07-02  Simon Hausmann  <hausmann (a] webkit.org>
   7085 
   7086         Fix the Gtk build.
   7087 
   7088         * plugins/gtk/PluginViewGtk.cpp: Adapt to JSLock API changes.
   7089         (WebCore::PluginView::paint):
   7090         (WebCore::PluginView::handleKeyboardEvent):
   7091         (WebCore::PluginView::handleMouseEvent):
   7092         (WebCore::PluginView::setNPWindowRect):
   7093         (WebCore::PluginView::stop):
   7094         (WebCore::PluginView::init):
   7095 
   7096 2008-07-02  Simon Hausmann  <hausmann (a] webkit.org>
   7097 
   7098         Build fixes.
   7099 
   7100         * WebCore.pro: Added plugins/PluginMainThreadScheduler.cpp to the
   7101         build.
   7102         * bridge/qt/qt_instance.cpp: Adjust to JSLock API change.
   7103         * bridge/qt/qt_runtime.cpp: Ditto.
   7104         (KJS::Bindings::convertValueToQVariant):
   7105         (KJS::Bindings::convertQVariantToValue):
   7106         (KJS::Bindings::QtRuntimeMetaMethod::call):
   7107         (KJS::Bindings::QtRuntimeConnectionMethod::call):
   7108         (KJS::Bindings::QtConnectionObject::execute):
   7109         * page/JavaScriptProfileNode.cpp: Inlude kjs/JSValue.h instead of
   7110         JavaScriptCore/JSValue.h.
   7111         * plugins/qt/PluginViewQt.cpp: Adjust to JSLock API changes.
   7112         (WebCore::PluginView::setNPWindowRect): Ditto.
   7113         (WebCore::PluginView::stop): Ditto.
   7114         (WebCore::PluginView::init): Ditto.
   7115 
   7116 2008-07-02  Alexey Proskuryakov  <ap (a] webkit.org>
   7117 
   7118         Build fix.
   7119 
   7120         * plugins/PluginView.cpp:
   7121         (WebCore::PluginView::start):
   7122         (WebCore::getString):
   7123         (WebCore::PluginView::performRequest):
   7124         (WebCore::PluginView::bindingInstance):
   7125         * plugins/win/PluginViewWin.cpp:
   7126         (WebCore::PluginView::dispatchNPEvent):
   7127         (WebCore::PluginView::setNPWindowRect):
   7128         (WebCore::PluginView::stop):
   7129         Pass false to JSLock and JSLock::DropAllLocks constructors.
   7130 
   7131 2008-07-01  Oliver Hunt  <oliver (a] apple.com>
   7132 
   7133         Reviewed by Geoff Garen.
   7134 
   7135         <rdar://problem/5974306> CanvasRenderingContext2D becomes invalid when source canvas element is collected
   7136 
   7137         In order to fix this we now make the rendering context and the canvas element
   7138         share the same reference count, ensuring that references to the rendering
   7139         context will force the canvas element to remain live as well.
   7140 
   7141         Test: fast/canvas/canvas-longlived-context.html
   7142 
   7143         * html/CanvasRenderingContext2D.cpp:
   7144         (WebCore::CanvasRenderingContext2D::clearPathForDashboardBackwardCompatibilityMode):
   7145         (WebCore::CanvasRenderingContext2D::createImageData):
   7146         (WebCore::CanvasRenderingContext2D::getImageData):
   7147         (WebCore::CanvasRenderingContext2D::putImageData):
   7148         * html/CanvasRenderingContext2D.h:
   7149         (WebCore::CanvasRenderingContext2D::create):
   7150         * html/HTMLCanvasElement.cpp:
   7151         (WebCore::HTMLCanvasElement::getContext):
   7152         * html/HTMLCanvasElement.h:
   7153 
   7154 2008-07-01  Alexey Proskuryakov  <ap (a] webkit.org>
   7155 
   7156         Reviewed by Darin.
   7157 
   7158         Disable JSLock for per-thread contexts.
   7159 
   7160         * bridge/runtime_root.cpp:
   7161         (KJS::Bindings::RootObject::invalidate):
   7162         (KJS::Bindings::RootObject::gcProtect):
   7163         (KJS::Bindings::RootObject::gcUnprotect):
   7164         Don't lock while calling gcProtect/gcUnprotect, which now has its own implicit lock.
   7165 
   7166         * storage/Database.cpp: (WebCore::Database::Database): Call Heap::setGCProtectNeedsLocking
   7167         to indicate that protected value list can be concurrently accessed from multiple threads now.
   7168 
   7169         * xml/XMLHttpRequest.cpp:
   7170         (WebCore::XMLHttpRequest::loadRequestSynchronously): There is no need to drop the locks here,
   7171         as fake locks cannot deadlock, and there is no danger that someone will try to take a real
   7172         JSLock on the main thread while we are waiting for response.
   7173         (WebCore::XMLHttpRequest::loadRequestAsynchronously): There is no need to explicitly lock
   7174         around gcProtect/gcUnprotect now.
   7175         (WebCore::XMLHttpRequest::dropProtection): Access heap directly, rather than via
   7176         JSGlobalData::threadInstance().
   7177 
   7178         * bindings/js/GCController.cpp:
   7179         (WebCore::collect):
   7180         (WebCore::GCController::gcTimerFired):
   7181         (WebCore::GCController::garbageCollectNow):
   7182         (WebCore::GCController::garbageCollectOnAlternateThreadForDebugging):
   7183         * bindings/js/JSCustomSQLStatementCallback.cpp:
   7184         (WebCore::JSCustomSQLStatementCallback::handleEvent):
   7185         * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
   7186         (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
   7187         * bindings/js/JSCustomSQLTransactionCallback.cpp:
   7188         (WebCore::JSCustomSQLTransactionCallback::handleEvent):
   7189         * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
   7190         (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent):
   7191         * bindings/js/JSCustomVoidCallback.cpp:
   7192         (WebCore::JSCustomVoidCallback::handleEvent):
   7193         * bindings/js/JSCustomXPathNSResolver.cpp:
   7194         (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
   7195         * bindings/js/JSDOMWindowBase.cpp:
   7196         (WebCore::DOMWindowTimer::~DOMWindowTimer):
   7197         (WebCore::JSDOMWindowBase::clear):
   7198         (WebCore::JSDOMWindowBase::timerFired):
   7199         * bindings/js/JSEventCustom.cpp:
   7200         (WebCore::toJS):
   7201         * bindings/js/JSEventListener.cpp:
   7202         (WebCore::JSAbstractEventListener::handleEvent):
   7203         (WebCore::JSLazyEventListener::parseCode):
   7204         * bindings/js/JSNodeFilterCondition.cpp:
   7205         (WebCore::JSNodeFilterCondition::acceptNode):
   7206         * bindings/js/ScheduledAction.cpp:
   7207         (WebCore::ScheduledAction::execute):
   7208         * bindings/js/ScriptController.cpp:
   7209         (WebCore::ScriptController::evaluate):
   7210         (WebCore::ScriptController::clear):
   7211         (WebCore::ScriptController::createHTMLEventHandler):
   7212         (WebCore::ScriptController::createSVGEventHandler):
   7213         (WebCore::ScriptController::initScript):
   7214         (WebCore::ScriptController::updateDocument):
   7215         * bindings/objc/WebScriptObject.mm:
   7216         (-[WebScriptObject callWebScriptMethod:withArguments:]):
   7217         (-[WebScriptObject evaluateWebScript:]):
   7218         (-[WebScriptObject setValue:forKey:]):
   7219         (-[WebScriptObject valueForKey:]):
   7220         (-[WebScriptObject removeWebScriptKey:]):
   7221         (-[WebScriptObject stringRepresentation]):
   7222         (-[WebScriptObject webScriptValueAtIndex:]):
   7223         (-[WebScriptObject setWebScriptValueAtIndex:value:]):
   7224         (+[WebScriptObject _convertValueToObjcValue:originRootObject:rootObject:]):
   7225         * bridge/NP_jsobject.cpp:
   7226         (_NPN_InvokeDefault):
   7227         (_NPN_Invoke):
   7228         (_NPN_Evaluate):
   7229         (_NPN_GetProperty):
   7230         (_NPN_SetProperty):
   7231         (_NPN_RemoveProperty):
   7232         (_NPN_HasProperty):
   7233         (_NPN_HasMethod):
   7234         (_NPN_SetException):
   7235         (_NPN_Enumerate):
   7236         * bridge/c/c_class.cpp:
   7237         (KJS::Bindings::CClass::~CClass):
   7238         (KJS::Bindings::CClass::methodsNamed):
   7239         (KJS::Bindings::CClass::fieldNamed):
   7240         * bridge/c/c_instance.cpp:
   7241         (KJS::Bindings::CInstance::invokeMethod):
   7242         (KJS::Bindings::CInstance::invokeDefaultMethod):
   7243         (KJS::Bindings::CInstance::getPropertyNames):
   7244         * bridge/c/c_runtime.cpp:
   7245         (KJS::Bindings::CField::valueFromInstance):
   7246         (KJS::Bindings::CField::setValueToInstance):
   7247         * bridge/c/c_utility.cpp:
   7248         (KJS::Bindings::convertValueToNPVariant):
   7249         (KJS::Bindings::convertNPVariantToValue):
   7250         * bridge/jni/jni_class.cpp:
   7251         (JavaClass::JavaClass):
   7252         (JavaClass::~JavaClass):
   7253         * bridge/jni/jni_instance.cpp:
   7254         (JavaInstance::stringValue):
   7255         * bridge/jni/jni_jsobject.mm:
   7256         (JavaJSObject::call):
   7257         (JavaJSObject::eval):
   7258         (JavaJSObject::getMember):
   7259         (JavaJSObject::setMember):
   7260         (JavaJSObject::removeMember):
   7261         (JavaJSObject::getSlot):
   7262         (JavaJSObject::setSlot):
   7263         (JavaJSObject::toString):
   7264         (JavaJSObject::convertValueToJObject):
   7265         (JavaJSObject::convertJObjectToValue):
   7266         * bridge/jni/jni_objc.mm:
   7267         (KJS::Bindings::dispatchJNICall):
   7268         * bridge/jni/jni_runtime.cpp:
   7269         (JavaMethod::signature):
   7270         * bridge/jni/jni_runtime.h:
   7271         (KJS::Bindings::JavaString::JavaString):
   7272         (KJS::Bindings::JavaString::_commonInit):
   7273         (KJS::Bindings::JavaString::~JavaString):
   7274         (KJS::Bindings::JavaString::UTF8String):
   7275         * bridge/jni/jni_utility.cpp:
   7276         (KJS::Bindings::convertArrayInstanceToJavaArray):
   7277         (KJS::Bindings::convertValueToJValue):
   7278         * bridge/npruntime.cpp:
   7279         (_NPN_GetStringIdentifier):
   7280         * bridge/objc/objc_instance.mm:
   7281         (ObjcInstance::moveGlobalExceptionToExecState):
   7282         (ObjcInstance::invokeMethod):
   7283         (ObjcInstance::invokeDefaultMethod):
   7284         (ObjcInstance::setValueOfUndefinedField):
   7285         (ObjcInstance::getValueOfUndefinedField):
   7286         * bridge/objc/objc_runtime.mm:
   7287         (ObjcField::valueFromInstance):
   7288         (ObjcField::setValueToInstance):
   7289         * bridge/objc/objc_utility.mm:
   7290         (KJS::Bindings::convertValueToObjcValue):
   7291         (KJS::Bindings::convertNSStringToString):
   7292         (KJS::Bindings::convertObjcValueToValue):
   7293         * bridge/runtime.cpp:
   7294         (KJS::Bindings::Instance::createRuntimeObject):
   7295         * dom/Document.cpp:
   7296         (WebCore::Document::~Document):
   7297         * dom/Node.cpp:
   7298         (WebCore::Node::setDocument):
   7299         * history/CachedPage.cpp:
   7300         (WebCore::CachedPage::CachedPage):
   7301         (WebCore::CachedPage::restore):
   7302         (WebCore::CachedPage::clear):
   7303         * html/HTMLPlugInElement.cpp:
   7304         (WebCore::HTMLPlugInElement::createNPObject):
   7305         * loader/FrameLoader.cpp:
   7306         (WebCore::getString):
   7307         * page/Frame.cpp:
   7308         (WebCore::Frame::bindingRootObject):
   7309         (WebCore::Frame::windowScriptNPObject):
   7310         (WebCore::Frame::clearScriptObjects):
   7311         * page/InspectorController.cpp:
   7312         (WebCore::jsStringRef):
   7313         (WebCore::ConsoleMessage::ConsoleMessage):
   7314         (WebCore::XMLHttpRequestResource::XMLHttpRequestResource):
   7315         (WebCore::XMLHttpRequestResource::~XMLHttpRequestResource):
   7316         (WebCore::getResourceDocumentNode):
   7317         (WebCore::search):
   7318         (WebCore::inspectedWindow):
   7319         (WebCore::wrapCallback):
   7320         (WebCore::currentCallFrame):
   7321         (WebCore::profiles):
   7322         (WebCore::InspectorController::focusNode):
   7323         (WebCore::InspectorController::addDatabaseScriptResource):
   7324         (WebCore::InspectorController::addScriptProfile):
   7325         * page/JavaScriptCallFrame.cpp:
   7326         (WebCore::JavaScriptCallFrame::evaluate):
   7327         * page/JavaScriptProfileNode.cpp:
   7328         (WebCore::getTotalTime):
   7329         (WebCore::getSelfTime):
   7330         (WebCore::getTotalPercent):
   7331         (WebCore::getSelfPercent):
   7332         (WebCore::getNumberOfCalls):
   7333         (WebCore::getChildren):
   7334         (WebCore::getVisible):
   7335         * page/mac/FrameMac.mm:
   7336         (WebCore::Frame::windowScriptObject):
   7337         Pass a parameter (always false) to JSLock and JSLock::DropAllLocks to indicate that WebCore
   7338         doesn't need locking. In the future, it may be possible to remove some of these if we
   7339         establish that this won't make JSC assertions fail (and that we don't want to add such
   7340         assertions either).
   7341         Added includes that are now needed.
   7342 
   7343 2008-07-01  Dan Bernstein  <mitz (a] apple.com>
   7344 
   7345         Reviewed by Oliver Hunt.
   7346 
   7347         - fix a CSSParserValueList leak seen on the build bot
   7348 
   7349         * css/CSSParser.cpp:
   7350         (WebCore::BorderImageParseContext::commitBorderImage):
   7351 
   7352 2008-07-01  Alex Mathews  <possessedpenguinbob (a] gmail.com>
   7353 
   7354         Reviewed by Oliver Hunt.
   7355 
   7356         Prep for more Filter class name changes. Added the first few files for
   7357         the new Filter architecture to come.
   7358 
   7359         * WebCore.xcodeproj/project.pbxproj:
   7360         * svg/Filter.cpp: Added.
   7361         (WebCore::Filter::Filter):
   7362         (WebCore::Filter::create):
   7363         * svg/Filter.h: Added.
   7364         * svg/FilterBuilder.h: Added.
   7365         (WebCore::FilterBuilder::add):
   7366         (WebCore::FilterBuilder::getEffectById):
   7367         (WebCore::FilterBuilder::filter):
   7368         * svg/FilterEffect.cpp: Added.
   7369         (WebCore::FilterEffect::FilterEffect):
   7370         (WebCore::FilterEffect::~FilterEffect):
   7371         * svg/FilterEffect.h: Added.
   7372 
   7373 2008-07-01  Christian Dywan  <christian (a] twotoasts.de>
   7374 
   7375         Gtk+ build fix.
   7376 
   7377         * GNUmakefile.am: add WebCore/plugins/PluginMainThreadScheduler.cpp
   7378 
   7379 2008-07-01  Anders Carlsson  <andersca (a] apple.com>
   7380 
   7381         Reviewed by Darin.
   7382 
   7383         Add PluginMainThreadScheduler.{cpp|h} to build.
   7384         
   7385         * WebCore.base.exp:
   7386         * WebCore.xcodeproj/project.pbxproj:
   7387         * plugins/PluginMainThreadScheduler.cpp:
   7388 
   7389 2008-07-01  Dan Bernstein  <mitz (a] apple.com>
   7390 
   7391         Reviewed by Darin Adler.
   7392 
   7393         - move the method to set the base writing direction from Frame to Editor
   7394 
   7395         * WebCore.base.exp: Updated.
   7396         * editing/Editor.cpp:
   7397         (WebCore::Editor::setBaseWritingDirection): Changed the parameter to a
   7398         WritingDirection enum value and added the special behavior when the
   7399         focused node is a text field or a text area.
   7400         * editing/Editor.h:
   7401         * page/ContextMenuController.cpp:
   7402         (WebCore::ContextMenuController::contextMenuItemSelected): Changed back
   7403         to call the Editor method.
   7404         * page/Frame.cpp: Removed setSelectionBaseWritingDirection().
   7405         * page/Frame.h:
   7406 
   7407 2008-07-01  Darin Adler  <darin (a] apple.com>
   7408 
   7409         Reviewed by Oliver.
   7410 
   7411         - slight tweak of the setHash fix
   7412 
   7413         * bindings/js/JSLocationCustom.cpp:
   7414         (WebCore::JSLocation::setHash): Use oldRef instead of recomputing url.ref().
   7415 
   7416 2008-07-01  Dan Bernstein  <mitz (a] apple.com>
   7417 
   7418         Reviewed by Anders Carlsson.
   7419 
   7420         - Mac release build fix
   7421 
   7422         * page/Console.cpp:
   7423 
   7424 2008-07-01  Dan Bernstein  <mitz (a] apple.com>
   7425 
   7426         Reviewed by Anders Carlsson.
   7427 
   7428         - fix <rdar://problem/6045896> REGRESSION: Leak in WebCore::StringImpl::create
   7429 
   7430         * css/CSSPrimitiveValue.cpp:
   7431         (WebCore::CSSPrimitiveValue::cleanup):
   7432 
   7433 2008-07-01  Anders Carlsson  <andersca (a] apple.com>
   7434 
   7435         Reviewed by Jon.
   7436 
   7437         Don't add the Mozilla user agent quirk for Flash 10.
   7438         
   7439         * plugins/win/PluginPackageWin.cpp:
   7440         (WebCore::PluginPackage::isPluginBlacklisted):
   7441         (WebCore::PluginPackage::determineQuirks):
   7442 
   7443 2008-07-01  David Kilzer  <ddkilzer (a] apple.com>
   7444 
   7445         Move data: URL parsing code in HTMLObjectElement to KURL
   7446 
   7447         Reviewed by Ada and Darin.
   7448 
   7449         No test cases added since there is no change in behavior.
   7450 
   7451         * html/HTMLObjectElement.cpp:
   7452         (WebCore::HTMLObjectElement::isImageType): Extracted data: URL
   7453         parsing code into WebCore::mimeTypeFromDataURL() in KURL.cpp.
   7454         * platform/KURL.cpp:
   7455         (WebCore::mimeTypeFromDataURL): Added.
   7456         * platform/KURL.h:
   7457         (WebCore::mimeTypeFromDataURL): Added.
   7458 
   7459 2008-07-01  Dan Bernstein  <mitz (a] apple.com>
   7460 
   7461         Reviewed by Dave Hyatt.
   7462 
   7463         - fix <rdar://problem/6045890> REGRESSION: Leak in WebCore::CSSParser::createFloatingValueList()
   7464 
   7465         * css/CSSParser.cpp:
   7466         (WebCore::CSSParser::addUnresolvedProperty):
   7467 
   7468 2008-07-01  Cameron Zwarich  <cwzwarich (a] uwaterloo.ca>
   7469 
   7470         Reviewed by Brady Eidson.
   7471 
   7472         Bug 19822: REGRESSION (r30243): setting location.hash to "#" causes a reload
   7473         <https://bugs.webkit.org/show_bug.cgi?id=19822>
   7474 
   7475         Change JSLocation::setHash() to not schedule navigation in the case
   7476         where the old fragment is the null String and the new fragment is an
   7477         empty String.
   7478 
   7479         * bindings/js/JSLocationCustom.cpp:
   7480         (WebCore::JSLocation::setHash):
   7481 
   7482 2008-06-30  Anders Carlsson  <andersca (a] apple.com>
   7483 
   7484         Reviewed by Adam.
   7485 
   7486         Add PluginMainThreadScheduler, a singleton which is responsible for scheduling plug-in 
   7487         callbacks on the main thread. Use this to implement NPN_PluginThreadAsyncCall on Windows.
   7488         
   7489         * WebCore.vcproj/WebCore.vcproj:
   7490         Add PluginMainThreadScheduler.{cpp|h}
   7491         
   7492         * plugins/PluginMainThreadScheduler.cpp: Added.
   7493         * plugins/PluginMainThreadScheduler.h: Added.
   7494 
   7495         * plugins/PluginView.cpp:
   7496         (WebCore::PluginView::start):
   7497         Register with the thread scheduler.
   7498         
   7499         * plugins/npapi.cpp:
   7500         (NPN_PluginThreadAsyncCall):
   7501         Call the thread scheduler.
   7502         
   7503         * plugins/win/PluginPackageWin.cpp:
   7504         (WebCore::PluginPackage::load):
   7505         Initialize the NPN_PluginThreadAsyncCall callback.
   7506         
   7507         * plugins/win/PluginViewWin.cpp:
   7508         (WebCore::PluginView::stop):
   7509         Unregister with the scheduler. This makes sure that we won't try to deliver callbacks
   7510         after the plug-in has been destroyed.
   7511 
   7512 2008-07-01  Adam Roben  <aroben (a] apple.com>
   7513 
   7514         Roll out r34913, as it broke the Windows build due to bad casting
   7515 
   7516         r34913 introduced code that assigned pointers-to-member from a derived
   7517         class into a base class pointer-to-member type (e.g., assigned a void
   7518         (SVGUseElement::*)() into a void (SVGElement::*)()). This is bad
   7519         because it could allow us to call SVGUseElement member functions on a
   7520         different SVGElement-derived class. MSVC rightly flagged this as an
   7521         error.
   7522 
   7523         Rubberstamped by Anders Carlsson.
   7524 
   7525 2008-07-01  Darin Adler  <darin (a] apple.com>
   7526 
   7527         - fix build
   7528 
   7529         * bindings/scripts/CodeGeneratorJS.pm: Fix warnings that indicate this was
   7530         not working propertly.
   7531 
   7532 2008-07-01  Dan Bernstein  <mitz (a] apple.com>
   7533 
   7534         Reviewed by Darin Adler.
   7535 
   7536         - fix <rdar://problem/6045893> REGRESSION: Leak in WebCore::HTMLCanvasElement::createPlatformImage() const
   7537 
   7538         * html/CanvasRenderingContext2D.cpp:
   7539         (WebCore::CanvasRenderingContext2D::createPattern):
   7540 
   7541 2008-07-01  Sam Weinig  <sam (a] webkit.org>
   7542 
   7543         Reviewed by Darin Adler.
   7544 
   7545         Split JSCell and JSNumberCell class declarations out of JSValue.h
   7546 
   7547         * ForwardingHeaders/kjs/JSNumberCell.h: Added.
   7548         * bindings/scripts/CodeGeneratorJS.pm:
   7549         * bridge/c/c_instance.cpp:
   7550 
   7551 2008-07-01  chris fleizach  <cfleizach (a] apple.com>
   7552 
   7553         Reviewed by Beth Dakin
   7554 
   7555         <rdar://problem/6041580> REGRESSION: AX: AXSize of radio buttons is 0,0
   7556 
   7557         Test: accessibility/radio-button-checkbox-size.html
   7558 
   7559         * page/AccessibilityRenderObject.cpp:
   7560         (WebCore::AccessibilityRenderObject::checkboxOrRadioRect):
   7561 
   7562 2008-07-01  Dan Bernstein  <mitz (a] apple.com>
   7563 
   7564         Reviewed by Antti Koivisto.
   7565 
   7566         - fix SVG pointer-events layout test failures
   7567 
   7568         * css/SVGCSSParser.cpp:
   7569         (WebCore::CSSParser::parseSVGValue):
   7570 
   7571 2008-07-01  Nikolas Zimmermann  <zimmermann (a] kde.org>
   7572 
   7573         Reviewed by Antti.
   7574 
   7575         Fixes: https://bugs.webkit.org/show_bug.cgi?id=19841
   7576         Fix two small problems in the gradient & pattern code.
   7577 
   7578         Added 12 new layout tests: svg/dynamic-updates/SVGLinearGradientElement*.html
   7579 
   7580         * svg/SVGLinearGradientElement.cpp:
   7581         (WebCore::SVGLinearGradientElement::collectGradientProperties): Compare against already computed bounding box information, instead of querying attributes.
   7582         * svg/SVGPatternElement.cpp:
   7583         (WebCore::SVGPatternElement::collectPatternProperties): Ditto.
   7584         * svg/SVGRadialGradientElement.cpp:
   7585         (WebCore::SVGRadialGradientElement::collectGradientProperties): Ditto.
   7586         (WebCore::SVGRadialGradientElement::svgAttributeChanged): 'fxAttr' updating wasn't handled. Copy'n'paste error.
   7587 
   7588 2008-07-01  Simon Hausmann  <hausmann (a] webkit.org>
   7589 
   7590         Fix the build, include SVGTransformList.h instead of
   7591         SVGTransformlist.h
   7592 
   7593         * svg/SVGGradientElement.h:
   7594 
   7595 2008-07-01  Alexey Proskuryakov  <ap (a] webkit.org>
   7596 
   7597         Reviewed by Antti.
   7598 
   7599         <rdar://problem/6033080> REGRESSION: Some CH characters display as garbage on webpage for
   7600         the first time.
   7601 
   7602         Test: fast/encoding/preload-encoding.html
   7603 
   7604         * html/PreloadScanner.cpp:
   7605         (WebCore::PreloadScanner::tokenize): Reset charset when entering a tag, not just when
   7606         starting a load.
   7607 
   7608 2008-07-01  Nikolas Zimmermann  <zimmermann (a] kde.org>
   7609 
   7610         Reviewed by Antti & Eric.
   7611 
   7612         Fixes: http://bugs.webkit.org/show_bug.cgi?id=17779 (SVG 1.1 Errata demands "SVG JavaScript Liveness" support)
   7613 
   7614         SVG Errata states: "All SVG DOM objects that directly correspond to an
   7615         attribute, e.g. the SVGAnimatedLength 'ry' in an SVGRectElement, are live. This
   7616         means that any changes made to the attribute are immediately reflected in the
   7617         corresponding SVG DOM object." (see linked URL on bug report)
   7618 
   7619         Until now only XML -> SVG DOM changes took affect, aka. changing the 'rx' attribute of a <rect>
   7620         element resuted in changes when accessing 'rx' through SVG DOM (rx.baseVal.value).
   7621 
   7622         Add a new synchronization layer to handle SVG DOM -> XML changes.
   7623 
   7624         Global macro change #1: ANIMATED_PROPERTY_FORWARD_DECLARATIONS contains the class name where it's defined as first parameter.
   7625         Global macro change #2: Add ANIMATED_PROPERTY_START_DECLARATIONS to all direct base-classes.
   7626         Global macro change #3: Rename ANIMATED_PROPERTY_DEFINITIONS to ANIMATED_PROPERTY_DEFINITIONS_REFCOUNTED for refcounted types (ie. SVGTransformList*).
   7627 
   7628         Added test: svg/custom/svg-xml-dom-sync.html
   7629         Fixed test: svg/hixie/dynamic/005-broken.xml (renamed to 005.xml)
   7630 
   7631         * dom/Element.cpp:
   7632         (WebCore::Element::Element): Initialize the two new bits.
   7633         (WebCore::Element::attributes): Add hooks to call into SVG attribute synchronization code, wrapped in ENABLE(SVG) blocks.
   7634         (WebCore::Element::getAttribute): Ditto.
   7635         (WebCore::Element::hasAttributes): Ditto.
   7636         * dom/Element.h: Add two bits: m_synchronizedSVGAttributes/m_synchronizingSVGAttribute, to track synchronization status.
   7637         (WebCore::Element::updateAnimatedSVGAttribute): New virtual function, handling the synronication, similar to updateStyleAttribute.
   7638         * dom/NamedAttrMap.h: Make addAttribute/removeAttribute protected, from use within the ANIMATED_* macros.
   7639         * svg/SVGAElement.h: Apply global macro change for ANIMATED_PROPERTY_FORWARD_DECLARATIONS.
   7640         (WebCore::SVGAElement::contextElement): Return non-const value.
   7641         * svg/SVGAltGlyphElement.h:
   7642         (WebCore::SVGAltGlyphElement::contextElement): Ditto.
   7643         * svg/SVGAnimateElement.h:
   7644         (WebCore::SVGAnimateElement::contextElement): Ditto.
   7645         * svg/SVGAnimateMotionElement.h:
   7646         (WebCore::SVGAnimateMotionElement::contextElement): Ditto.
   7647         * svg/SVGAnimateTransformElement.h:
   7648         (WebCore::SVGAnimateTransformElement::contextElement): Ditto.
   7649         * svg/SVGAnimatedTemplate.h: Add toString() conversion to all SVGAnimated* classes
   7650         (WebCore::SVGAnimatedTemplate::toString):
   7651         (WebCore::SVGAnimatedTemplate::associatedAttributeName):
   7652         (WebCore::lookupOrCreateWrapper):
   7653         (WebCore::SVGAnimatedAngle::SVGAnimatedAngle): 
   7654         (WebCore::SVGAnimatedAngle::toString):
   7655         (WebCore::SVGAnimatedBoolean::SVGAnimatedBoolean):
   7656         (WebCore::SVGAnimatedBoolean::toString):
   7657         (WebCore::SVGAnimatedEnumeration::SVGAnimatedEnumeration):
   7658         (WebCore::SVGAnimatedEnumeration::toString):
   7659         (WebCore::SVGAnimatedInteger::SVGAnimatedInteger):
   7660         (WebCore::SVGAnimatedInteger::toString):
   7661         (WebCore::SVGAnimatedLength::SVGAnimatedLength):
   7662         (WebCore::SVGAnimatedLength::toString):
   7663         (WebCore::SVGAnimatedLengthList::SVGAnimatedLengthList):
   7664         (WebCore::SVGAnimatedLengthList::toString):
   7665         (WebCore::SVGAnimatedNumber::SVGAnimatedNumber):
   7666         (WebCore::SVGAnimatedNumber::toString):
   7667         (WebCore::SVGAnimatedNumberList::SVGAnimatedNumberList):
   7668         (WebCore::SVGAnimatedNumberList::toString):
   7669         (WebCore::SVGAnimatedPreserveAspectRatio::SVGAnimatedPreserveAspectRatio):
   7670         (WebCore::SVGAnimatedPreserveAspectRatio::toString):
   7671         (WebCore::SVGAnimatedRect::SVGAnimatedRect):
   7672         (WebCore::SVGAnimatedRect::toString):
   7673         (WebCore::SVGAnimatedString::SVGAnimatedString):
   7674         (WebCore::SVGAnimatedString::toString):
   7675         (WebCore::SVGAnimatedTransformList::SVGAnimatedTransformList):
   7676         (WebCore::SVGAnimatedTransformList::toString):
   7677         (WebCore::SVGAnimatedType::SVGAnimatedType):
   7678         * svg/SVGAnimationElement.h: Apply global macro change for ANIMATED_PROPERTY_FORWARD_DECLARATIONS.
   7679         * svg/SVGCircleElement.h: Apply global macro change for ANIMATED_PROPERTY_FORWARD_DECLARATIONS.
   7680         (WebCore::SVGCircleElement::contextElement): Return non-const value.
   7681         * svg/SVGClipPathElement.h: Apply global macro change for ANIMATED_PROPERTY_FORWARD_DECLARATIONS.
   7682         (WebCore::SVGClipPathElement::contextElement): Return non-const value.
   7683         * svg/SVGComponentTransferFunctionElement.cpp: Apply ANIMATED_PROPERTY_DEFINITIONS_REFCOUNTED change.
   7684         * svg/SVGComponentTransferFunctionElement.h: Add ANIMATED_PROPERTY_START_DECLARATIONS, as this class is a base class.
   7685         * svg/SVGCursorElement.cpp: Wrap SVGLength objects in SVGLength() statements.
   7686         (WebCore::SVGCursorElement::SVGCursorElement):
   7687         * svg/SVGCursorElement.h: Apply global macro change for ANIMATED_PROPERTY_FORWARD_DECLARATIONS. Add ANIMATED_PROPERTY_START_DECLARATIONS.
   7688         (WebCore::SVGCursorElement::contextElement): Return non-const value.
   7689         * svg/SVGDefsElement.h: Apply global macro change for ANIMATED_PROPERTY_FORWARD_DECLARATIONS.
   7690         (WebCore::SVGDefsElement::contextElement): Return non-const value.
   7691         * svg/SVGElement.cpp:
   7692         (WebCore::SVGElement::updateAnimatedSVGAttribute): Override virtual function from Element, to handle SVG<->XML DOM synchronization.
   7693         (WebCore::SVGElement::setSynchronizedSVGAttributes):
   7694         * svg/SVGElement.h: Add helper class "StoredTypeWithDirtyFlag".
   7695         (StoredTypeWithDirtyFlag::StoredTypeWithDirtyFlag): Tracks a type and a flag indicating that SVG<->XML DOM synchronization has to be done.
   7696         (StoredTypeWithDirtyFlag::operator=):
   7697         (StoredTypeWithDirtyFlag::operator==):
   7698         (StoredTypeWithDirtyFlag::operator!=):
   7699         (StoredTypeWithDirtyFlag::operator StoredType):
   7700         (WebCore::SVGElement::invokeSVGPropertySynchronizer): New set of functions taking care of invoking the update handlers.
   7701         (WebCore::SVGElement::invokeAllSVGPropertySynchronizers): Ditto.
   7702         (WebCore::SVGElement::addSVGPropertySynchronizer): Ditto.
   7703         * svg/SVGEllipseElement.cpp: Wrap SVGLength objects in SVGLength() statements.
   7704         (WebCore::SVGEllipseElement::SVGEllipseElement):
   7705         * svg/SVGEllipseElement.h: Apply global macro change for ANIMATED_PROPERTY_FORWARD_DECLARATIONS.
   7706         (WebCore::SVGEllipseElement::contextElement): Return non-const value.
   7707         * svg/SVGExternalResourcesRequired.h: Change contextElement() to return a non-const value.
   7708         * svg/SVGFEBlendElement.h:
   7709         (WebCore::SVGFEBlendElement::contextElement): Return non-const value.
   7710         * svg/SVGFEColorMatrixElement.cpp: Apply ANIMATED_PROPERTY_DEFINITIONS_REFCOUNTED change.
   7711         * svg/SVGFEColorMatrixElement.h:
   7712         (WebCore::SVGFEColorMatrixElement::contextElement): Return non-const value.
   7713         * svg/SVGFEComponentTransferElement.h:
   7714         (WebCore::SVGFEComponentTransferElement::contextElement): Return non-const value.
   7715         * svg/SVGFECompositeElement.h:
   7716         (WebCore::SVGFECompositeElement::contextElement): Return non-const value.
   7717         * svg/SVGFEDiffuseLightingElement.h:
   7718         (WebCore::SVGFEDiffuseLightingElement::contextElement): Return non-const value.
   7719         * svg/SVGFEDisplacementMapElement.h:
   7720         (WebCore::SVGFEDisplacementMapElement::contextElement): Return non-const value.
   7721         * svg/SVGFEFloodElement.h:
   7722         (WebCore::SVGFEFloodElement::contextElement): Return non-const value.
   7723         * svg/SVGFEGaussianBlurElement.h:
   7724         (WebCore::SVGFEGaussianBlurElement::contextElement): Return non-const value.
   7725         * svg/SVGFEImageElement.cpp: Apply ANIMATED_PROPERTY_DEFINITIONS_REFCOUNTED change.
   7726         * svg/SVGFEImageElement.h: Apply global macro change for ANIMATED_PROPERTY_FORWARD_DECLARATIONS.
   7727         (WebCore::SVGFEImageElement::contextElement): Return non-const value.
   7728         * svg/SVGFELightElement.h: Add ANIMATED_PROPERTY_START_DECLARATIONS, as this is a base class.
   7729         * svg/SVGFEMergeElement.h:
   7730         (WebCore::SVGFEMergeElement::contextElement): Return non-const value.
   7731         * svg/SVGFEMergeNodeElement.h: Add ANIMATED_PROPERTY_START_DECLARATIONS, as this is a base class.
   7732         (WebCore::SVGFEMergeNodeElement::contextElement): Return non-const value.
   7733         * svg/SVGFEOffsetElement.h:
   7734         (WebCore::SVGFEOffsetElement::contextElement): Return non-const value.
   7735         * svg/SVGFESpecularLightingElement.h:
   7736         (WebCore::SVGFESpecularLightingElement::contextElement): Return non-const value.
   7737         * svg/SVGFETileElement.h:
   7738         (WebCore::SVGFETileElement::contextElement): Return non-const value.
   7739         * svg/SVGFETurbulenceElement.h:
   7740         (WebCore::SVGFETurbulenceElement::contextElement): Return non-const value.
   7741         * svg/SVGFilterElement.cpp: Wrap SVGLength objects in SVGLength() statements.
   7742         (WebCore::SVGFilterElement::SVGFilterElement):
   7743         * svg/SVGFilterElement.h: Apply global macro change for ANIMATED_PROPERTY_FORWARD_DECLARATIONS.
   7744         (WebCore::SVGFilterElement::contextElement): Return non-const value.
   7745         * svg/SVGFilterPrimitiveStandardAttributes.cpp: Wrap SVGLength objects in SVGLength() statements.
   7746         (WebCore::SVGFilterPrimitiveStandardAttributes::SVGFilterPrimitiveStandardAttributes):
   7747         * svg/SVGFilterPrimitiveStandardAttributes.h: Apply global macro change for ANIMATED_PROPERTY_FORWARD_DECLARATIONS.
   7748         (WebCore::SVGFilterPrimitiveStandardAttributes::contextElement): Return non-const value.
   7749         * svg/SVGFitToViewBox.cpp: Apply ANIMATED_PROPERTY_DEFINITIONS_REFCOUNTED change.
   7750         * svg/SVGFitToViewBox.h: Change contextElement() to return a non-const value.
   7751         * svg/SVGFontElement.h:
   7752         (WebCore::SVGFontElement::contextElement): Return non-const value.
   7753         * svg/SVGForeignObjectElement.cpp: Wrap SVGLength objects in SVGLength() statements.
   7754         (WebCore::SVGForeignObjectElement::SVGForeignObjectElement):
   7755         * svg/SVGForeignObjectElement.h: Apply global macro change for ANIMATED_PROPERTY_FORWARD_DECLARATIONS.
   7756         (WebCore::SVGForeignObjectElement::contextElement): Return non-const value.
   7757         * svg/SVGGElement.h: Apply global macro change for ANIMATED_PROPERTY_FORWARD_DECLARATIONS.
   7758         (WebCore::SVGGElement::contextElement): Return non-const value.
   7759         * svg/SVGGradientElement.cpp: Apply ANIMATED_PROPERTY_DEFINITIONS_REFCOUNTED change.
   7760         * svg/SVGGradientElement.h: Apply global macro change for ANIMATED_PROPERTY_FORWARD_DECLARATIONS.
   7761         * svg/SVGImageElement.cpp: Apply ANIMATED_PROPERTY_DEFINITIONS_REFCOUNTED change. Wrap SVGLength objects in SVGLength() statements.
   7762         (WebCore::SVGImageElement::SVGImageElement):
   7763         * svg/SVGImageElement.h: Apply global macro change for ANIMATED_PROPERTY_FORWARD_DECLARATIONS.
   7764         (WebCore::SVGImageElement::contextElement): Return non-const value.
   7765         * svg/SVGLengthList.cpp:
   7766         (WebCore::SVGLengthList::valueAsString): Add new function converting SVG values to strings.
   7767         * svg/SVGLengthList.h:
   7768         * svg/SVGLineElement.cpp: Wrap SVGLength objects in SVGLength() statements.
   7769         (WebCore::SVGLineElement::SVGLineElement):
   7770         * svg/SVGLineElement.h: Apply global macro change for ANIMATED_PROPERTY_FORWARD_DECLARATIONS.
   7771         (WebCore::SVGLineElement::contextElement): Return non-const value.
   7772         * svg/SVGLinearGradientElement.cpp:
   7773         (WebCore::SVGLinearGradientElement::SVGLinearGradientElement): Wrap SVGLength objects in SVGLength() statements.
   7774         (WebCore::SVGLinearGradientElement::collectGradientProperties):
   7775         * svg/SVGLinearGradientElement.h:
   7776         (WebCore::SVGLinearGradientElement::contextElement): Return non-const value.
   7777         * svg/SVGMPathElement.h:
   7778         (WebCore::SVGMPathElement::contextElement): Return non-const value.
   7779         * svg/SVGMarkerElement.cpp: Apply ANIMATED_PROPERTY_DEFINITIONS_REFCOUNTED change. Wrap SVGLength objects in SVGLength() statements.
   7780         (WebCore::SVGMarkerElement::SVGMarkerElement):
   7781         * svg/SVGMarkerElement.h: Apply global macro change for ANIMATED_PROPERTY_FORWARD_DECLARATIONS.
   7782         (WebCore::SVGMarkerElement::contextElement): Return non-const value.
   7783         * svg/SVGMaskElement.cpp: Wrap SVGLength objects in SVGLength() statements.
   7784         (WebCore::SVGMaskElement::SVGMaskElement):
   7785         * svg/SVGMaskElement.h: Apply global macro change for ANIMATED_PROPERTY_FORWARD_DECLARATIONS.
   7786         (WebCore::SVGMaskElement::contextElement): Return non-const value.
   7787         * svg/SVGNumberList.cpp:
   7788         (WebCore::SVGNumberList::valueAsString): Add new function converting SVG values to strings.
   7789         * svg/SVGNumberList.h:
   7790         * svg/SVGPathElement.h: Apply global macro change for ANIMATED_PROPERTY_FORWARD_DECLARATIONS.
   7791         (WebCore::SVGPathElement::contextElement): Return non-const value.
   7792         * svg/SVGPatternElement.cpp: Apply ANIMATED_PROPERTY_DEFINITIONS_REFCOUNTED change. Wrap SVGLength objects in SVGLength() statements.
   7793         (WebCore::SVGPatternElement::SVGPatternElement):
   7794         (WebCore::SVGPatternElement::collectPatternProperties):
   7795         * svg/SVGPatternElement.h: Apply global macro change for ANIMATED_PROPERTY_FORWARD_DECLARATIONS.
   7796         (WebCore::SVGPatternElement::contextElement): Return non-const value.
   7797         * svg/SVGPolyElement.h: Apply global macro change for ANIMATED_PROPERTY_FORWARD_DECLARATIONS.
   7798         (WebCore::SVGPolyElement::contextElement): Return non-const value.
   7799         * svg/SVGPreserveAspectRatio.cpp:
   7800         (WebCore::SVGPreserveAspectRatio::valueAsString): Add new function converting SVG values to strings.
   7801         * svg/SVGPreserveAspectRatio.h:
   7802         * svg/SVGRadialGradientElement.cpp: Wrap SVGLength objects in SVGLength() statements.
   7803         (WebCore::SVGRadialGradientElement::SVGRadialGradientElement):
   7804         (WebCore::SVGRadialGradientElement::svgAttributeChanged):
   7805         (WebCore::SVGRadialGradientElement::collectGradientProperties):
   7806         * svg/SVGRadialGradientElement.h:
   7807         (WebCore::SVGRadialGradientElement::contextElement): Return non-const value.
   7808         * svg/SVGRectElement.cpp: Wrap SVGLength objects in SVGLength() statements.
   7809         (WebCore::SVGRectElement::SVGRectElement):
   7810         * svg/SVGRectElement.h: Apply global macro change for ANIMATED_PROPERTY_FORWARD_DECLARATIONS.
   7811         (WebCore::SVGRectElement::contextElement): Return non-const value.
   7812         * svg/SVGSVGElement.cpp: Wrap SVGLength objects in SVGLength() statements.
   7813         (WebCore::SVGSVGElement::SVGSVGElement):
   7814         (WebCore::SVGSVGElement::currentView): Pass non-const SVGSVGElement* object to SVGViewSpec.
   7815         * svg/SVGSVGElement.h: Apply global macro change for ANIMATED_PROPERTY_FORWARD_DECLARATIONS.
   7816         (WebCore::SVGSVGElement::contextElement): Return non-const value.
   7817         * svg/SVGScriptElement.h: Apply global macro change for ANIMATED_PROPERTY_FORWARD_DECLARATIONS.
   7818         (WebCore::SVGScriptElement::contextElement): Return non-const value.
   7819         * svg/SVGStyledElement.h: Add ANIMATED_PROPERTY_START_DECLARATIONS, as this is a base class.
   7820         * svg/SVGStyledTransformableElement.cpp: Apply ANIMATED_PROPERTY_DEFINITIONS_REFCOUNTED change.
   7821         * svg/SVGStyledTransformableElement.h:
   7822         * svg/SVGSwitchElement.h: Apply global macro change for ANIMATED_PROPERTY_FORWARD_DECLARATIONS.
   7823         (WebCore::SVGSwitchElement::contextElement): Return non-const value.
   7824         * svg/SVGSymbolElement.h: Apply global macro change for ANIMATED_PROPERTY_FORWARD_DECLARATIONS.
   7825         (WebCore::SVGSymbolElement::contextElement): Return non-const value.
   7826         * svg/SVGTRefElement.h: Apply global macro change for ANIMATED_PROPERTY_FORWARD_DECLARATIONS.
   7827         (WebCore::SVGTRefElement::contextElement): Return non-const value.
   7828         * svg/SVGTSpanElement.h:
   7829         (WebCore::SVGTSpanElement::contextElement): Return non-const value.
   7830         * svg/SVGTextContentElement.cpp: Wrap SVGLength objects in SVGLength() statements.
   7831         (WebCore::SVGTextContentElement::SVGTextContentElement):
   7832         * svg/SVGTextContentElement.h: Apply global macro change for ANIMATED_PROPERTY_FORWARD_DECLARATIONS.
   7833         * svg/SVGTextElement.cpp: Apply ANIMATED_PROPERTY_DEFINITIONS_REFCOUNTED change.
   7834         * svg/SVGTextElement.h:
   7835         (WebCore::SVGTextElement::contextElement): Return non-const value.
   7836         * svg/SVGTextPathElement.cpp: Wrap SVGLength objects in SVGLength() statements.
   7837         (WebCore::SVGTextPathElement::SVGTextPathElement):
   7838         * svg/SVGTextPathElement.h: Apply global macro change for ANIMATED_PROPERTY_FORWARD_DECLARATIONS.
   7839         (WebCore::SVGTextPathElement::contextElement): Return non-const value.
   7840         * svg/SVGTextPositioningElement.cpp: Apply ANIMATED_PROPERTY_DEFINITIONS_REFCOUNTED change.
   7841         * svg/SVGTextPositioningElement.h:
   7842         * svg/SVGTransformList.cpp:
   7843         (SVGTransformList::valueAsString): Add new function converting SVG values to strings.
   7844         * svg/SVGTransformList.h:
   7845         * svg/SVGURIReference.h: Change contextElement() to return a non-const value.
   7846         * svg/SVGUseElement.cpp: Wrap SVGLength objects in SVGLength() statements.
   7847         (WebCore::SVGUseElement::SVGUseElement):
   7848         * svg/SVGUseElement.h: Apply global macro change for ANIMATED_PROPERTY_FORWARD_DECLARATIONS.
   7849         (WebCore::SVGUseElement::contextElement): Return non-const value.
   7850         * svg/SVGViewElement.h: Apply global macro change for ANIMATED_PROPERTY_FORWARD_DECLARATIONS.
   7851         (WebCore::SVGViewElement::contextElement): Return non-const value.
   7852         * svg/SVGViewSpec.cpp:
   7853         (WebCore::SVGViewSpec::SVGViewSpec): Pass non-const context element in constructor.
   7854         (WebCore::SVGViewSpec::contextElement): Return non-const value.
   7855         * svg/SVGViewSpec.h:
   7856 
   7857 2008-07-01  Alex Mathews  <possessedpenguinbob (a] gmail.com>
   7858 
   7859         Reviewed by Nikolas Zimmermann.
   7860 
   7861         Class name changes for SVG Light Effect files. The class names that changed :
   7862 
   7863         SVGLightSource -> LightSource
   7864         SVGDistantLightSource -> DistantLightSource
   7865         SVGPointLightSource -> PointLightSource
   7866         SVGSpotLightSource -> SpotLightSource
   7867 
   7868         Every other file that is changed is just propagating the class name changes to
   7869         dependent files.
   7870 
   7871         * svg/SVGFEDiffuseLightingElement.cpp:
   7872         (WebCore::SVGFEDiffuseLightingElement::updateLights):
   7873         * svg/SVGFEDistantLightElement.cpp:
   7874         (WebCore::SVGFEDistantLightElement::lightSource):
   7875         * svg/SVGFEDistantLightElement.h:
   7876         * svg/SVGFELightElement.h:
   7877         * svg/SVGFEPointLightElement.cpp:
   7878         (WebCore::SVGFEPointLightElement::lightSource):
   7879         * svg/SVGFEPointLightElement.h:
   7880         * svg/SVGFESpecularLightingElement.cpp:
   7881         (WebCore::SVGFESpecularLightingElement::updateLights):
   7882         * svg/SVGFESpotLightElement.cpp:
   7883         (WebCore::SVGFESpotLightElement::lightSource):
   7884         * svg/SVGFESpotLightElement.h:
   7885         * svg/graphics/filters/SVGDistantLightSource.h:
   7886         (WebCore::DistantLightSource::DistantLightSource):
   7887         (WebCore::DistantLightSource::azimuth):
   7888         (WebCore::DistantLightSource::elevation):
   7889         * svg/graphics/filters/SVGFEDiffuseLighting.cpp:
   7890         (WebCore::SVGFEDiffuseLighting::lightSource):
   7891         (WebCore::SVGFEDiffuseLighting::setLightSource):
   7892         * svg/graphics/filters/SVGFEDiffuseLighting.h:
   7893         * svg/graphics/filters/SVGFESpecularLighting.cpp:
   7894         (WebCore::SVGFESpecularLighting::lightSource):
   7895         (WebCore::SVGFESpecularLighting::setLightSource):
   7896         * svg/graphics/filters/SVGFESpecularLighting.h:
   7897         * svg/graphics/filters/SVGLightSource.cpp:
   7898         (WebCore::PointLightSource::externalRepresentation):
   7899         (WebCore::SpotLightSource::externalRepresentation):
   7900         (WebCore::DistantLightSource::externalRepresentation):
   7901         * svg/graphics/filters/SVGLightSource.h:
   7902         (WebCore::):
   7903         (WebCore::LightSource::LightSource):
   7904         (WebCore::LightSource::~LightSource):
   7905         (WebCore::LightSource::type):
   7906         * svg/graphics/filters/SVGPointLightSource.h:
   7907         (WebCore::PointLightSource::PointLightSource):
   7908         (WebCore::PointLightSource::position):
   7909         * svg/graphics/filters/SVGSpotLightSource.h:
   7910         (WebCore::SpotLightSource::SpotLightSource):
   7911         (WebCore::SpotLightSource::position):
   7912         (WebCore::SpotLightSource::direction):
   7913         (WebCore::SpotLightSource::specularExponent):
   7914         (WebCore::SpotLightSource::limitingConeAngle):
   7915         * svg/graphics/filters/cg/SVGFEDiffuseLightingCg.mm:
   7916         (WebCore::SVGFEDiffuseLighting::getCIFilter):
   7917         * svg/graphics/filters/cg/SVGFEHelpersCg.h:
   7918         * svg/graphics/filters/cg/SVGFEHelpersCg.mm:
   7919         (WebCore::getLightVectors):
   7920         * svg/graphics/filters/cg/SVGFESpecularLightingCg.mm:
   7921         (WebCore::SVGFESpecularLighting::getCIFilter):
   7922 
   7923 2008-07-01  Alp Toker  <alp (a] nuanti.com>
   7924 
   7925         Rubber-stamped by Holger.
   7926 
   7927         autotools cleanup: move some GTK+-specific sources from libwebcore to
   7928         libwebcoregtk.
   7929 
   7930         * GNUmakefile.am:
   7931 
   7932 2008-07-01  Dan Bernstein  <mitz (a] apple.com>
   7933 
   7934         Reviewed by Oliver Hunt.
   7935 
   7936         - fix the non-SVG build
   7937 
   7938         * css/CSSValueKeywords.in: Added 'all'.
   7939         * css/SVGCSSValueKeywords.in: Removed 'all'.
   7940 
   7941 2008-07-01  Simon Hausmann  <hausmann (a] webkit.org>
   7942 
   7943         Build fix, include DateInstance.h.
   7944 
   7945         * bridge/qt/qt_runtime.cpp:
   7946 
   7947 2008-06-30  Adele Peterson  <adele (a] apple.com>
   7948 
   7949         Reviewed by Oliver.
   7950 
   7951         Fix for <rdar://problem/5882050> clicking in hidden close box area of empty searchfield causes mousedown to stop firing
   7952 
   7953         Test: fast/forms/search-hidden-cancel-button.html
   7954 
   7955         * html/HTMLTextFieldInnerElement.cpp: (WebCore::HTMLSearchFieldCancelButtonElement::defaultEventHandler):
   7956           Don't start capturing mouse events if the cancel button isn't visible.  This was causing the button to start but never stop capturing mouse events.
   7957 
   7958 2008-06-30  Sam Weinig  <sam (a] webkit.org>
   7959 
   7960         Rubber-stamped by Darin Adler.
   7961 
   7962         Split InternalFunction into its own header file.
   7963 
   7964         * ForwardingHeaders/kjs/InternalFunction.h: Added.
   7965         * bridge/runtime_method.h:
   7966 
   7967 2008-06-30  Adele Peterson  <adele (a] apple.com>
   7968 
   7969         Reviewed by Anders.
   7970 
   7971         Fix for <rdar://problem/5301322> REGRESSION: Select All selects the whole page when used in readonly textareas
   7972 
   7973         Test: editing/selection/select-all-textarea.html
   7974 
   7975         * dom/Node.cpp:
   7976         (WebCore::Node::shadowAncestorNode): Break out code to find the root of the shadow tree into a new helper function.
   7977         (WebCore::Node::shadowTreeRootNode): Added helper function.
   7978         * dom/Node.h:
   7979         * dom/Range.cpp: (WebCore::Range::shadowTreeRootNode): Added helper function.
   7980         * dom/Range.h:
   7981         * editing/Selection.cpp: (WebCore::Selection::shadowTreeRootNode): ditto.
   7982         * editing/Selection.h:
   7983         * editing/SelectionController.h: (WebCore::SelectionController::shadowTreeRootNode): ditto.
   7984         * editing/SelectionController.cpp: (WebCore::SelectionController::selectAll):
   7985         If the selection is in a shadow tree, only select the contents of that shadow tree, not the whole document.
   7986         * page/Frame.cpp:
   7987         (WebCore::Frame::findString): Use the new shadowTreeRootNode helper functions.
   7988         (WebCore::Frame::markAllMatchesForText): ditto.
   7989 
   7990 2008-06-30  chris fleizach  <cfleizach (a] apple.com>
   7991 
   7992         Reviewed by Beth Dakin
   7993 
   7994         <rdar://problem/4180780> Add attribute to get all the radio buttons in a set
   7995 
   7996         * page/AccessibilityObject.cpp:
   7997         (WebCore::AccessibilityObject::linkedUIElements):
   7998         * page/AccessibilityObject.h:
   7999         * page/AccessibilityRenderObject.cpp:
   8000         (WebCore::AccessibilityRenderObject::internalLinkElement):
   8001         (WebCore::AccessibilityRenderObject::addRadioButtonGroupMembers):
   8002         (WebCore::AccessibilityRenderObject::linkedUIElements):
   8003         * page/AccessibilityRenderObject.h:
   8004         * page/mac/AccessibilityObjectWrapper.mm:
   8005         (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
   8006 
   8007 2008-06-30  Dan Bernstein  <mitz (a] apple.com>
   8008 
   8009         Reviewed by Adele Peterson.
   8010 
   8011         - WebCore part of <rdar://problem/3881497> Writing direction context menu item has no effect on text typed in Safari
   8012 
   8013         * WebCore.base.exp: Removed Editor::setBaseWritingDirection() and added
   8014         Frame::setSelectionBaseWritingDirection().
   8015         * page/ContextMenuController.cpp:
   8016         (WebCore::ContextMenuController::contextMenuItemSelected): Changed to
   8017         call Frame::setSelectionBaseWritingDirection().
   8018         * page/Frame.cpp:
   8019         (WebCore::Frame::setSelectionBaseWritingDirection): Added. If the
   8020         focused node is a text field or text area, changes its 'dir' attribute.
   8021         This is what IE does when the user changes the writing direction in a
   8022         text control. Otherwise, calls down to Editor::setBaseWritingDirection().
   8023         * page/Frame.h:
   8024 
   8025 2008-06-30  David Kilzer  <ddkilzer (a] apple.com>
   8026 
   8027         Improve HTMLObjectElement data encapsulation
   8028 
   8029         Reviewed by Dave Hyatt.
   8030 
   8031         HTMLObjectElement has some public member variables that should be
   8032         private with accessor methods.
   8033 
   8034         No test cases added since there is no change in behavior.
   8035 
   8036         * html/HTMLObjectElement.cpp:
   8037         (WebCore::HTMLObjectElement::HTMLObjectElement): Reorder
   8038         initialization of member variables to match defined order in header.
   8039         * html/HTMLObjectElement.h:
   8040         (WebCore::HTMLObjectElement::classId): Added.
   8041         (WebCore::HTMLObjectElement::url): Added.
   8042         (WebCore::HTMLObjectElement::serviceType): Added.
   8043         * rendering/RenderPartObject.cpp:
   8044         (WebCore::RenderPartObject::updateWidget): Use new accessor methods
   8045         in HTMLObjectElement now that its member variables are private.
   8046 
   8047 2008-06-30  Dan Bernstein  <mitz (a] apple.com>
   8048 
   8049         Reviewed by Anders Carlsson.
   8050 
   8051         - remove unused member variable
   8052 
   8053         * page/Page.h: Removed Page::m_focusedNode.
   8054 
   8055 2008-06-30  Anders Carlsson  <andersca (a] apple.com>
   8056 
   8057         Reviewed by Adam.
   8058 
   8059         <rdar://problem/6014209>
   8060         Crash when loading manifest from application cache fails
   8061         
   8062         There is no need to set any handles to 0 after calling cacheUpdateFailed(), since
   8063         that is done inside the function. Furthermore, after calling cacheUpdateFailed() the cache
   8064         group could be deleted causing us to access freed memory and then crashing.
   8065         
   8066         * loader/appcache/ApplicationCacheGroup.cpp:
   8067         (WebCore::ApplicationCacheGroup::didReceiveResponse):
   8068         (WebCore::ApplicationCacheGroup::didFail):
   8069         (WebCore::ApplicationCacheGroup::didFailToLoadManifest):
   8070 
   8071 2008-06-30  Adam Roben  <aroben (a] apple.com>
   8072 
   8073         Fix <rdar://5954749> Assertion failure due to HashTable's use of
   8074         operator&
   8075 
   8076         Reviewed by Ada Chan.
   8077 
   8078         * bindings/js/JSSVGPODTypeWrapper.h:
   8079         * dom/Document.h:
   8080         * dom/StyledElement.cpp:
   8081         * platform/graphics/FontCache.cpp:
   8082         * platform/graphics/IntSizeHash.h:
   8083         (WTF::):
   8084         * platform/text/StringHash.h:
   8085         * platform/win/COMPtr.h:
   8086         * svg/SVGAnimatedTemplate.h:
   8087         Updated all custom HashTraits for HashTable changes.
   8088 
   8089 2008-06-30  Simon Hausmann  <hausmann (a] webkit.org>
   8090 
   8091         Fix the Qt build.
   8092 
   8093         Added missing includes and changed getItem array calls to use get()
   8094         instead.
   8095 
   8096         * bridge/qt/qt_runtime.cpp:
   8097         (KJS::Bindings::convertValueToQVariant):
   8098 
   8099 2008-06-29  David Smith  <catfish.man (a] gmail.com>
   8100 
   8101         Rubberstamped by Sam Weinig.
   8102 
   8103         Change a redundant node->isElement() check to an ASSERT for a 1.3% speedup on getElementsByTagName.
   8104 
   8105         * dom/TagNodeList.cpp:
   8106         (WebCore::TagNodeList::nodeMatches):
   8107 
   8108 2008-06-29  Dan Bernstein  <mitz (a] apple.com>
   8109 
   8110         Reviewed by Darin Adler.
   8111 
   8112         - fix SVG layout test regressions
   8113 
   8114         * css/CSSFontSelector.cpp:
   8115         (WebCore::CSSFontSelector::addFontFaceRule): Made this function work
   8116         again with primitive values, because the @font-face rules SVG fonts
   8117         create still use a single primitive value rather than a value list.
   8118 
   8119 2008-06-29  Dan Bernstein  <mitz (a] apple.com>
   8120 
   8121         Reviewed by Sam Weinig.
   8122 
   8123         - fix <rdar://problem/5734440> Specifying a font-weight for @font-face not working
   8124 
   8125         Tests: fast/css/font-face-descriptor-multiple-values-parsing.html
   8126                fast/css/font-face-descriptor-multiple-values.html
   8127 
   8128         * css/CSSFontSelector.cpp:
   8129         (WebCore::CSSFontSelector::addFontFaceRule): Changed to work with value
   8130         lists for the descriptor properties.
   8131 
   8132         * css/CSSParser.cpp:
   8133         (WebCore::CSSParser::CSSParser): Initialize m_hasFontFaceOnlyValues.
   8134         (WebCore::CSSParser::parseValue): Added a call to
   8135         deleteFontFaceOnlyValues() if necessary.
   8136         (WebCore::CSSParser::parseDeclaration): Ditto.
   8137         (WebCore::CSSParser::clearProperties): Added code to reset
   8138         m_hasFontFaceOnlyValues to false.
   8139         (WebCore::CSSParser::parseFontStyle): Added. If there is a single
   8140         valid identifier other than 'all', creates a CSSPrimitiveValue and
   8141         assigns it to the property. If 'all' is the only value, or if there are
   8142         multiple valid identifiers that are not 'all', creates a CSSValueList
   8143         and assigns it to the property, and sets m_hasFontFaceOnlyValues to
   8144         true.
   8145         (WebCore::CSSParser::parseFontVariant): Ditto.
   8146         (WebCore::CSSParser::parseFontWeight): Ditto.
   8147         (WebCore::CSSParser::createStyleRule): Added a call to
   8148         deleteFontFaceOnlyValues().
   8149         (WebCore::CSSParser::createFontFaceRule): Added code to change
   8150         font descriptor properties that had only one value, and therefore were
   8151         assigned a CSSPrimitiveValue, into CSSValueLists containing that value.
   8152         (WebCore::CSSParser::deleteFontFaceOnlyValues): Added. Retroactively
   8153         invalidates font descriptor properties that had values that are only
   8154         allowed in @font-face. Those are identified by having CSSValueLists
   8155         rather than CSSPrimitiveValues as their values.
   8156         * css/CSSParser.h: Added m_hasFontFaceOnlyValues, a flag that says that
   8157         font descriptor property values that are only valid in @font-face were
   8158         encountered. This is used when the style declaration is created (and we
   8159         finally know if it is @font-face or not) to delete invalid properties
   8160         if needed.
   8161 
   8162 2008-06-28  Darin Adler  <darin (a] apple.com>
   8163 
   8164         Reviewed by Sam and Cameron.
   8165 
   8166         - fix https://bugs.webkit.org/show_bug.cgi?id=19805
   8167           Array.concat turns missing array elements into "undefined"
   8168 
   8169         * bridge/jni/jni_utility.cpp:
   8170         (KJS::Bindings::convertArrayInstanceToJavaArray):
   8171         Use get instead of getItem, since we always want to consider values from the
   8172         prototypes when looking at JavaScript arrays.
   8173 
   8174 2008-06-28  Dan Bernstein  <mitz (a] apple.com>
   8175 
   8176         Reviewed by Darin Adler.
   8177 
   8178         - allow document markers to touch or overlap if they are not of the same type
   8179 
   8180         Cannot be tested in DumpRenderTree
   8181 
   8182         * dom/Document.cpp:
   8183         (WebCore::Document::addMarker):
   8184         * rendering/InlineTextBox.cpp:
   8185         (WebCore::InlineTextBox::paintDocumentMarkers):
   8186 
   8187 2008-06-28  Sam Weinig  <sam (a] webkit.org>
   8188 
   8189         Rubber-stamped by Darin Adler.
   8190 
   8191         Update includes after remaming string_object.h to StringObject.h and
   8192         splitting out StringObjectThatMasqueradesAsUndefined, StringConstructor
   8193         and StringPrototype.
   8194 
   8195         * ForwardingHeaders/kjs/StringObject.h: Copied from WebCore/ForwardingHeaders/kjs/string_object.h.
   8196         * ForwardingHeaders/kjs/StringObjectThatMasqueradesAsUndefined.h: Added.
   8197         * ForwardingHeaders/kjs/StringPrototype.h: Added.
   8198         * ForwardingHeaders/kjs/string_object.h: Removed.
   8199         * bindings/js/JSCSSStyleDeclarationCustom.cpp:
   8200 
   8201 2008-06-28  Sam Weinig  <sam (a] webkit.org>
   8202 
   8203         Rubber-stamped by Oliver Hunt.
   8204 
   8205         Update includes after remaming object_object.h to ObjectPrototype.h and
   8206         splitting FunctionConstructor out of FunctionPrototype.h
   8207 
   8208         * ForwardingHeaders/kjs/FunctionConstructor.h: Added.
   8209         * ForwardingHeaders/kjs/ObjectPrototype.h: Copied from WebCore/ForwardingHeaders/kjs/object_object.h.
   8210         * ForwardingHeaders/kjs/object_object.h: Removed.
   8211         * bindings/js/JSEventListener.cpp:
   8212         * bindings/scripts/CodeGeneratorJS.pm:
   8213         * bridge/qt/qt_instance.cpp:
   8214 
   8215 2008-06-28  Dan Bernstein  <mitz (a] apple.com>
   8216 
   8217         Reviewed by Darin Adler.
   8218 
   8219         - fix <rdar://problem/5994621> REGRESSION (r31090-r31114): Weather widget shows missing image icons briefly when (re)loaded
   8220 
   8221         * html/HTMLImageLoader.cpp:
   8222         (WebCore::HTMLImageLoader::updateFromElement): Changed to not load an
   8223         image if the 'src' attribute is the empty string and the document's base
   8224         URI is a file: URL.
   8225 
   8226 2008-06-27  Sam Weinig  <sam (a] webkit.org>
   8227 
   8228         Reviewed by Dan Bernstein.
   8229 
   8230         <rdar://problem/6025499> Make Cross-site XHR match the final specification
   8231 
   8232         Update the implemented subset of Access-Control for XMLHttpRequest to the 
   8233         latest version. (Editor's Draft 25 May 2008)
   8234 
   8235         - Now differentiates between simple and non-simple cross-site requests, the later
   8236           requiring a preflight.
   8237         - Now sends request headers cross-site, limited by a blacklist.
   8238         - Now allows access to cross-site response headers, limited by a whitelist.
   8239         - Now sends request entity body for non-get cross-site requests after preflight.
   8240 
   8241         Tests: http/tests/xmlhttprequest/access-control-basic-blacklist-request-headers.html
   8242                http/tests/xmlhttprequest/access-control-basic-get-fail-non-simple.html
   8243                http/tests/xmlhttprequest/access-control-basic-whitelist-response-headers.html
   8244 
   8245         * xml/XMLHttpRequest.cpp:
   8246         (WebCore::isOnAccessControllRequestHeaderBlackList):
   8247         (WebCore::isOnAccessControlSimpleRequestHeaderWhitelist):
   8248         (WebCore::isOnAccessControlResponseHeaderWhitelist):
   8249         (WebCore::XMLHttpRequest::XMLHttpRequest):
   8250         (WebCore::XMLHttpRequest::createRequest):
   8251         (WebCore::XMLHttpRequest::makeSameOriginRequest):
   8252         (WebCore::XMLHttpRequest::isSimpleCrossSiteAccessRequest):
   8253         (WebCore::XMLHttpRequest::makeCrossSiteAccessRequest):
   8254         (WebCore::XMLHttpRequest::makeSimpleCrossSiteAccessRequest):
   8255         (WebCore::XMLHttpRequest::makeCrossSiteAccessRequestWithPreflight):
   8256         (WebCore::XMLHttpRequest::handleAsynchronousPreflightResult):
   8257         (WebCore::XMLHttpRequest::loadRequestAsynchronously):
   8258         (WebCore::XMLHttpRequest::abort):
   8259         (WebCore::XMLHttpRequest::clearRequest):
   8260         (WebCore::XMLHttpRequest::setRequestHeader):
   8261         (WebCore::XMLHttpRequest::setRequestHeaderInternal):
   8262         (WebCore::XMLHttpRequest::getAllResponseHeaders):
   8263         (WebCore::XMLHttpRequest::getResponseHeader):
   8264         (WebCore::XMLHttpRequest::didFinishLoading):
   8265         (WebCore::XMLHttpRequest::didFinishLoadingPreflight):
   8266         (WebCore::XMLHttpRequest::didReceiveResponse):
   8267         (WebCore::XMLHttpRequest::didReceiveResponsePreflight):
   8268         (WebCore::XMLHttpRequest::didReceiveData):
   8269         * xml/XMLHttpRequest.h:
   8270 
   8271 2008-06-27  Sam Weinig  <sam (a] webkit.org>
   8272 
   8273         Rubber-stamped by Mark Rowe.
   8274 
   8275         Clean up sorting in WebCore.xcodeproj.
   8276 
   8277         * WebCore.xcodeproj/project.pbxproj:
   8278 
   8279 2008-06-27  Jan Michael Alonzo  <jmalonzo (a] webkit.org>
   8280 
   8281         Reviewed by Darin Adler.
   8282 
   8283         Remove unnecessary options to make_names.pl command line
   8284         http://bugs.webkit.org/show_bug.cgi?id=19777
   8285 
   8286         * DerivedSources.make:
   8287         * GNUmakefile.am:
   8288 
   8289 2008-06-27  Adam Barth  <abarth (a] webkit.org>
   8290 
   8291         Reviewed by Darin Adler.
   8292 
   8293         https://bugs.webkit.org/show_bug.cgi?id=19784
   8294 
   8295         Properly handle untermianted <!-- comments in <textarea>s.
   8296 
   8297         Tests: fast/parser/open-comment-in-script-tricky.html
   8298                fast/parser/open-comment-in-style.html
   8299                fast/parser/open-comment-in-textarea.html
   8300 
   8301         * html/HTMLTokenizer.cpp:
   8302         (WebCore::HTMLTokenizer::finish):
   8303 
   8304 2008-06-27  Adam Barth  <abarth (a] webkit.org>
   8305 
   8306         Reviewed by Darin Alder.
   8307 
   8308         Fix <https://bugs.webkit.org/show_bug.cgi?id=19784>:
   8309           Text areas in Wikipedia edit pages are empty, following content is missing
   8310 
   8311         Don't treat entities as comment starters in parseSpecial.
   8312 
   8313         Tests: fast/parser/comment-in-iframe.html
   8314                fast/parser/entity-comment-in-iframe.html
   8315                fast/parser/entity-comment-in-script-tricky.html
   8316                fast/parser/entity-comment-in-style.html
   8317                fast/parser/entity-comment-in-textarea.html
   8318                fast/parser/entity-comment-in-title.html
   8319 
   8320         * html/HTMLTokenizer.cpp:
   8321         (WebCore::HTMLTokenizer::parseSpecial):
   8322 
   8323 2008-06-27  Antti Koivisto  <antti (a] apple.com>
   8324 
   8325         Reviewed by Oliver.
   8326         
   8327         <rdar://problem/6030720> 
   8328         REGRESSION: Discrete animation between incompatible paths does not work
   8329 
   8330         Fall back to discrete path animation if paths are not suitable for morphing.
   8331         
   8332         Test: svg/custom/animate-path-discrete.svg
   8333         
   8334         * svg/SVGAnimateElement.cpp:
   8335         (WebCore::SVGAnimateElement::calculateAnimatedValue):
   8336 
   8337 2008-06-26  David Smith  <catfish.man (a] gmail.com>
   8338 
   8339         Reviewed by Sam Weinig.
   8340         
   8341         https://bugs.webkit.org/show_bug.cgi?id=19002
   8342         
   8343         Optimize simple id selectors in querySelector/querySelectorAll. 
   8344         ~4.4x speedup on the 4 subtests of http://webkit.org/perf/slickspeed/ that it applies to.
   8345 
   8346         * dom/Document.h:
   8347         (WebCore::Document::containsMultipleElementsWithId): Added to allow optimizing the common case of no duplicates
   8348         * dom/Node.cpp:
   8349         (WebCore::Node::querySelector): Uses getElementById instead of DOM traversal where possible now
   8350         * dom/SelectorNodeList.cpp:
   8351         (WebCore::createSelectorNodeList): Uses getElementById instead of DOM traversal where possible now
   8352 
   8353 2008-06-26  Dan Bernstein  <mitz (a] apple.com>
   8354 
   8355         Reviewed by Darin Adler.
   8356 
   8357         - fix <rdar://problem/3099526> Find command doesn't search form input controls (textareas and text fields)
   8358           http://bugs.webkit.org/show_bug.cgi?id=7023
   8359 
   8360         Test: editing/selection/find-in-text-control.html
   8361 
   8362         * WebCore.base.exp: Updated the TextIterator constructor signature.
   8363 
   8364         * editing/TextIterator.cpp:
   8365         (WebCore::TextIterator::TextIterator): Added an enterTextControls
   8366         boolean parameter that determines whether the iterator should visit text
   8367         inside text areas and text fields. Added code to initialize the
   8368         m_inShadowContent member variable based on whether the range is in
   8369         shadow content.
   8370         (WebCore::TextIterator::advance): Added code to step out of shadow
   8371         content.
   8372         (WebCore::TextIterator::handleReplacedElement): Added code to enter
   8373         text controls if desired.
   8374         (WebCore::CharacterIterator::CharacterIterator): Added an
   8375         enterTextControls boolean parameter that determines whether the iterator
   8376         should visit text inside text areas and text fields. This is passed to
   8377         the TextIterator constructor.
   8378         (WebCore::findPlainText): Changed to use a CharacterIterator that
   8379         visits text controls.
   8380 
   8381         * editing/TextIterator.h: Added member variables to track whether the
   8382         current node is in a shadow tree and whether the iterator should visit
   8383         text controls.
   8384 
   8385         * page/Frame.cpp:
   8386         (WebCore::Frame::findString): Changed to find inside text controls.
   8387         (WebCore::Frame::markAllMatchesForText): Ditto.
   8388 
   8389         * rendering/RenderTextControl.cpp:
   8390         (WebCore::RenderTextControl::innerTextElement): Added.
   8391         * rendering/RenderTextControl.h: Added innerTextElement(), a private
   8392         accessor method that is accessible to TextIterator through class
   8393         friendship.
   8394 
   8395 2008-06-26  Darin Adler  <darin (a] apple.com>
   8396 
   8397         Reviewed by Geoff.
   8398 
   8399         * bridge/runtime.h: Added include of JSString.h since jsString will soon
   8400         change to return a JSString*.
   8401 
   8402 2008-06-26  Adele Peterson  <adele (a] apple.com>
   8403 
   8404         Fix suggested by Eric Carlson, added by me, reviewed by Adam.
   8405 
   8406         Fix for <rdar://problem/5733006> <video> and <audio> element should not prompt user for missing files
   8407 
   8408         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm: (WebCore::MediaPlayerPrivate::createQTMovie):
   8409         Set object with key QTMovieAskUnresolvedDataRefsAttribute to NO in the attributes dictionary passed to -[QTMovie initWithAttributes:]
   8410 
   8411 2008-06-26  Sam Weinig  <sam (a] webkit.org>
   8412 
   8413         Reviewed by John Sullivan.
   8414 
   8415         <rdar://problem/6031969> Crash in SecurityOrigin code going Forward to a page in the back/forward cache
   8416 
   8417         * loader/FrameLoader.cpp:
   8418         (WebCore::FrameLoader::open): Make sure to update the SecurityOrigin and URL of the 
   8419         DOMWindow when opening a CachedPage.
   8420 
   8421 2008-06-26  Eric Seidel  <eric (a] webkit.org>
   8422 
   8423         Reviewed by Beth Dakin.
   8424 
   8425         CSS @import statements can cause DocLoader to use
   8426         a dead Frame pointer.
   8427         https://bugs.webkit.org/show_bug.cgi?id=19618
   8428         
   8429         The fix is to get rid of the Frame pointer on DocLoader.
   8430         
   8431         I also took this opportunity to clean up Document::detach
   8432         a little to make it clear why we clear the m_frame pointer
   8433         there, and to note that in the future we should stop
   8434         using Node::detach to mean "tear down the whole rendering
   8435         tree and detach from the frame".
   8436 
   8437         Test: I don't know how to make a good test for this, the test
   8438         we have is network timing dependent and does not make a good
   8439         layout test.
   8440 
   8441         * dom/Document.cpp:
   8442         (WebCore::Document::Document):
   8443         (WebCore::Document::detach):
   8444         (WebCore::Document::clearFramePointer):
   8445         * dom/Document.h:
   8446         * loader/DocLoader.cpp:
   8447         (WebCore::DocLoader::frame):
   8448         * loader/DocLoader.h:
   8449 
   8450 2008-06-26  Anders Carlsson  <andersca (a] apple.com>
   8451 
   8452         Reviewed by Brady.
   8453 
   8454         Don't enumerate document.applets trying to determine if a page contains applets.
   8455         Instead, set m_containsPlugIns to true when an applet has been created.
   8456         
   8457         * loader/FrameLoader.cpp:
   8458         (WebCore::FrameLoader::canCachePage):
   8459         (WebCore::FrameLoader::createJavaAppletWidget):
   8460 
   8461 2008-06-26  Alexey Proskuryakov  <ap (a] webkit.org>
   8462 
   8463         Reviewed by Maciej.
   8464 
   8465         Make JSGlobalData per-thread.
   8466 
   8467         * bindings/js/JSDOMBinding.h:
   8468         (WebCore::DOMObject::DOMObject):
   8469         * bindings/js/JSDOMWindowBase.cpp:
   8470         (WebCore::JSDOMWindowBase::JSDOMWindowBase):
   8471         * bridge/runtime_object.cpp:
   8472         (RuntimeObjectImp::RuntimeObjectImp):
   8473         Removed collectOnMainThreadOnly() calls. WebCore objects live in their own heap now, so
   8474         there is no danger for them to be collected on a wrong thread.
   8475 
   8476 2008-06-26  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   8477 
   8478         Reviewed by Simon.
   8479 
   8480         [svg] Disable plugins for SVG images
   8481         The Qt platform allows to have a plugin factory per Page. Now SVG Images
   8482         are using a Page and dummy/empty clients for Chrome. The only way to get
   8483         the kit from the WebCore::Page is to go through the ChromeClient but this
   8484         is not possible when the ChromeClient is an empty client. This leads to a
   8485         crash in PluginDataQt.cpp. One way to avoid this would have been the
   8486         addition of a rtti like field to ChromeClient to see if it is an empty
   8487         client. The other possibility is to not enable plugins for images.
   8488 
   8489         The SVGImage relies on the fact that the document is a SVGDocument and
   8490         that the rootElement is a SVGSVGElement. If plugins are used we could
   8491         end up with a PluginDocument and crash badly. Do not try to use plugins
   8492         if plugins are disabled for the WebCore::Page.
   8493 
   8494         * dom/DOMImplementation.cpp:
   8495         (WebCore::DOMImplementation::createDocument):
   8496         * svg/graphics/SVGImage.cpp:
   8497         (WebCore::SVGImage::dataChanged):
   8498 
   8499 2008-06-25  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   8500 
   8501         Reviewed by Simon.
   8502 
   8503         CodingStyle fixes
   8504 
   8505         * platform/graphics/qt/SimpleFontDataQt.cpp:
   8506         (WebCore::SimpleFontData::SimpleFontData):
   8507 
   8508 2008-06-25  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   8509 
   8510         Reviewed by Simon.
   8511 
   8512         [svg] Make QtWebKit build more of the SVG support
   8513         Add the proper defines and files, update SVGResourceFilterQt.cpp
   8514         to be enabled by the filter option and not by experimental svg support
   8515 
   8516         * WebCore.pro:
   8517         * svg/graphics/qt/SVGResourceFilterQt.cpp:
   8518         (WebCore::SVGResourceFilter::createPlatformData):
   8519         (WebCore::SVGResourceFilter::prepareFilter):
   8520 
   8521 2008-06-25  Sam Weinig  <sam (a] webkit.org>
   8522 
   8523         Reviewed by Brady Eidson.
   8524 
   8525         Move XMLHttpRequestState enum into XMLHttpRequest and rename to State.
   8526 
   8527         * xml/XMLHttpRequest.cpp:
   8528         (WebCore::XMLHttpRequest::readyState):
   8529         (WebCore::XMLHttpRequest::changeState):
   8530         (WebCore::XMLHttpRequest::open):
   8531         * xml/XMLHttpRequest.h:
   8532         (WebCore::XMLHttpRequest::create):
   8533         (WebCore::XMLHttpRequest::):
   8534 
   8535 2008-06-25  Justin Garcia  <justin.garcia (a] apple.com>
   8536 
   8537         Reviewed by John.
   8538 
   8539         <rdar://problem/5994480> Line break lost on some pastes
   8540         
   8541         Merging the the first paragraph of inserted content with the content that came
   8542         before the selection that was pasted into would also move content after 
   8543         the selection that was pasted into if:
   8544         
   8545         1) Only one paragraph was being pasted, and it was not wrapped in a block
   8546         2) The selection that was pasted into ended at the end of a block
   8547         3) The next paragraph didn't start at the start of a block.
   8548         
   8549         Insert a line break just after the inserted content to separate it from what 
   8550         comes after and prevent that from happening.
   8551         
   8552         Doing this exposed a bug in deletion where it would insert an unnecessary placeholder
   8553         when deleting a paragraph that started or ended with an input element.  This was
   8554         because its m_startBlock and m_endBlock were still computed with the old deprecated
   8555         enclosingBlockFlowOrTableElement().
   8556         
   8557         * editing/DeleteSelectionCommand.cpp:
   8558         (WebCore::DeleteSelectionCommand::initializePositionData): Use the new method for
   8559         getting an enclosing block.
   8560         (WebCore::DeleteSelectionCommand::doApply): The new method for getting an enclosing
   8561         block will return 0 if it reaches the root editable element before finding a block,
   8562         so if we're deleting inside an inline editable root, m_start/endBlock will
   8563         be 0.  Removed an early return for this case (we already have test coverage for it).
   8564         * editing/ReplaceSelectionCommand.cpp:
   8565         (WebCore::ReplaceSelectionCommand::doApply): Insert a line break just after the inserted 
   8566         content to separate it from what comes after.
   8567         * dom/Node.h: Removed enclosingBlockFlowOrTableElement().
   8568         * dom/Node.cpp: Ditto.
   8569 
   8570 2008-06-25  Anders Carlsson  <andersca (a] apple.com>
   8571 
   8572         Reviewed by Dave Hyatt.
   8573 
   8574         Fix refcount leak in CSSVariablesRule.
   8575 
   8576         * css/CSSParser.cpp:
   8577         (WebCore::CSSParser::createVariablesRule):
   8578         * css/CSSVariablesRule.h:
   8579         (WebCore::CSSVariablesRule::create):
   8580         (WebCore::CSSVariablesRule::setDeclaration):
   8581 
   8582 2008-06-25  Anders Carlsson  <andersca (a] apple.com>
   8583 
   8584         Reviewed by Mitz.
   8585 
   8586         <rdar://problem/6007111> 
   8587         https://bugs.webkit.org/show_bug.cgi?id=19516
   8588         DOM modification causes Access Violation (NULL pointer?)
   8589         
   8590         Null check the document element.
   8591         
   8592         * html/HTMLParser.cpp:
   8593         (WebCore::HTMLParser::handleError):
   8594 
   8595 2008-06-25  Dan Bernstein  <mitz (a] apple.com>
   8596 
   8597         Reviewed by Dave Hyatt.
   8598 
   8599         - fix <rdar://problem/5873639> REGRESSION (r31620): css2.1/t1506-c525-font-wt-00-b fails on Windows
   8600 
   8601         - fix https://bugs.webkit.org/show_bug.cgi?id=18863
   8602           <rdar://problem/5908890> weight mappings with @font-face aren't consistent
   8603 
   8604         Tests: fast/css/font-face-locally-installed.html
   8605                fast/css/font-face-multiple-faces.html
   8606 
   8607         * WebCore.vcproj/WebCore.vcproj: Added FontTraitsMask.h.
   8608 
   8609         * WebCore.xcodeproj/project.pbxproj: Ditto.
   8610 
   8611         * css/CSSFontFace.h:
   8612         Made CSSFontFace store descriptors from the @font-face rule, as follows:
   8613         (WebCore::CSSFontFace::create): Added a FontTraitsMask argument.
   8614         (WebCore::CSSFontFace::traitsMask): Added this accessor.
   8615         (WebCore::CSSFontFace::addRange): Added.
   8616         (WebCore::CSSFontFace::ranges): Added.
   8617         (WebCore::CSSFontFace::UnicodeRange::UnicodeRange):
   8618         (WebCore::CSSFontFace::UnicodeRange::from):
   8619         (WebCore::CSSFontFace::UnicodeRange::to):
   8620         (WebCore::CSSFontFace::CSSFontFace): Added a FontTraitsMask and a vector
   8621         of UnicodeRanges as member variables.
   8622 
   8623         * css/CSSFontFaceSource.cpp:
   8624         Changed the hash key from the font size alone to the font size and
   8625         the synthetic style bits, needed if the same source supplies different
   8626         synthesized versions.
   8627         (WebCore::CSSFontFaceSource::pruneTable):
   8628         (WebCore::CSSFontFaceSource::getFontData):
   8629 
   8630         * css/CSSFontFaceSource.h:
   8631 
   8632         * css/CSSFontSelector.cpp:
   8633         (WebCore::CSSFontSelector::~CSSFontSelector): Added code to delete
   8634         the contents of the font face, locally-installed font face and segmented
   8635         font tables.
   8636         (WebCore::CSSFontSelector::addFontFaceRule): Changed this function to
   8637         not create segmented font faces, but instead just collect font faces
   8638         and annotate them with descriptors (traits and unicode ranges).
   8639         (WebCore::compareFontFaces): Added. Used in getFontData() to sort the
   8640         font faces by proximity to the desired traits.
   8641         (WebCore::CSSFontSelector::getFontData): Changed to create the segmented
   8642         font face here and cache it.
   8643 
   8644         * css/CSSFontSelector.h:
   8645 
   8646         * css/CSSSegmentedFontFace.cpp:
   8647         Changed to keep a vector of font faces instead of font face ranges, as
   8648         font faces now know their Unicode ranges.
   8649         (WebCore::CSSSegmentedFontFace::~CSSSegmentedFontFace):
   8650         (WebCore::CSSSegmentedFontFace::isLoaded):
   8651         (WebCore::CSSSegmentedFontFace::isValid):
   8652         (WebCore::CSSSegmentedFontFace::appendFontFace):
   8653         (WebCore::CSSSegmentedFontFace::getFontData): Removed the synthetic
   8654         traits parameters, and instead changed to set them on each FontData
   8655         separately based on the difference between the desired traits and
   8656         the font face's traits.
   8657 
   8658         * css/CSSSegmentedFontFace.h:
   8659 
   8660         * platform/graphics/FontCache.h:
   8661         Removed fontExists() and added getTraitsInFamily().
   8662 
   8663         * platform/graphics/FontDescription.cpp:
   8664         (WebCore::FontDescription::traitsMask): Added.
   8665 
   8666         * platform/graphics/FontDescription.h:
   8667 
   8668         * platform/graphics/FontTraitsMask.h: Added.
   8669 
   8670         * platform/graphics/GlyphPageTreeNode.cpp:
   8671         (WebCore::GlyphPageTreeNode::initializePage): Changed to fill in with
   8672         glyphs from all fonts in the segmented font, using each font in turn to
   8673         fill in characters not covered by earlier fonts.
   8674 
   8675         * platform/graphics/gtk/FontCacheGtk.cpp:
   8676         (WebCore::FontCache::getTraitsInFamily): Added a stub.
   8677 
   8678         * platform/graphics/mac/FontCacheMac.mm:
   8679         (WebCore::FontCache::getTraitsInFamily): Added.
   8680 
   8681         * platform/graphics/qt/FontCacheQt.cpp:
   8682         (WebCore::FontCache::getTraitsInFamily): Added a stub.
   8683 
   8684         * platform/graphics/win/FontCacheWin.cpp:
   8685         (WebCore::TraitsInFamilyProcData::TraitsInFamilyProcData): Added.
   8686         (WebCore::traitsInFamilyEnumProc): Added.
   8687         (WebCore::FontCache::getTraitsInFamily): Added.
   8688 
   8689         * platform/graphics/wx/FontCacheWx.cpp:
   8690         (WebCore::FontCache::getTraitsInFamily): Added a stub.
   8691 
   8692         * platform/mac/WebFontCache.h:
   8693         * platform/mac/WebFontCache.mm:
   8694         (toTraitsMask): Added.
   8695         (+[WebFontCache getTraits:inFamily:]): Added.
   8696 
   8697 2008-06-24  Anonymous
   8698 
   8699         Reviewed by Darin Adler.  Committed by Adam Barth.
   8700 
   8701         https://bugs.webkit.org/show_bug.cgi?id=19470
   8702 
   8703         Check for a null documentElement() to fix four crashes.
   8704 
   8705         * WebCore/dom/Document.cpp:
   8706         * WebCore/dom/Node.cpp:
   8707 
   8708 2008-06-24  Adam Barth  <abarth (a] webkit.org>
   8709 
   8710         Reviewed by Darin Adler.
   8711 
   8712         Fix <https://bugs.webkit.org/show_bug.cgi?id=19597>
   8713 
   8714         Correctly parse <!-- </textarea> --> inside a <textarea>, matching
   8715         Internet Explorer, Firefox, Opera, and HTML 5.
   8716 
   8717         Tests: fast/parser/comment-in-script-tricky.html
   8718                fast/parser/comment-in-style.html
   8719                fast/parser/comment-in-textarea.html
   8720                fast/parser/comment-in-title.html
   8721 
   8722         * html/HTMLTokenizer.cpp:
   8723         (WebCore::HTMLTokenizer::parseSpecial):
   8724 
   8725 2008-06-24  Justin Garcia  <justin.garcia (a] apple.com>
   8726 
   8727         Reviewed by John.
   8728 
   8729         <rdar://problem/6026335> REGRESSION: Caret disappears after deleting a particular selection involving a ToDo
   8730         
   8731         * editing/CompositeEditCommand.cpp:
   8732         (WebCore::CompositeEditCommand::moveParagraphs): If asked to preserveStyle, we
   8733         apply styles from the moved paragraph to the destination with applyStyle, which
   8734         does selection preservation when it needs to apply block styles.  Selection preservation 
   8735         uses relatively untested code in TextIterator to count VisiblePositions which fails in 
   8736         this particular test case because it doesn't handle changes in editability properly.  
   8737         We can avoid this bug by not applying block styles from moved paragraphs.  This is 
   8738         something that should be done anyway, since the moved paragraph should assume the 
   8739         block styles of the destination.
   8740         * editing/EditCommand.cpp:
   8741         (WebCore::EditCommand::styleAtPosition): Added a FIXME about how it is misleading for
   8742         this function to also include the typing style.
   8743         * editing/TextIterator.h: Added a FIXME about how the code path used for selection preservation
   8744         is buggy and should be phased out when we rewrite moveParagraphs.
   8745 
   8746 2008-06-24  Kevin McCullough  <kmccullough (a] apple.com>
   8747 
   8748         -Added a manual test for the profiler.
   8749 
   8750         * manual-tests/inspector/profiler-test-compare-multiple-profiles.html: Added.
   8751 
   8752 2008-06-24  Sam Weinig  <sam (a] webkit.org>
   8753 
   8754         Reviewed by Anders Carlsson.
   8755 
   8756         Add support for loadstart, abort and error events for XMLHttpRequests.
   8757 
   8758         Tests: http/tests/xmlhttprequest/onabort-event.html
   8759                http/tests/xmlhttprequest/onerror-event.html
   8760                http/tests/xmlhttprequest/onloadstart-event.html
   8761 
   8762         * bindings/js/JSXMLHttpRequestCustom.cpp:
   8763         (WebCore::JSXMLHttpRequest::mark):
   8764         (WebCore::JSXMLHttpRequest::onreadystatechange):
   8765         (WebCore::JSXMLHttpRequest::onabort):
   8766         (WebCore::JSXMLHttpRequest::setOnabort):
   8767         (WebCore::JSXMLHttpRequest::onerror):
   8768         (WebCore::JSXMLHttpRequest::setOnerror):
   8769         (WebCore::JSXMLHttpRequest::onload):
   8770         (WebCore::JSXMLHttpRequest::onloadstart):
   8771         (WebCore::JSXMLHttpRequest::setOnloadstart):
   8772         (WebCore::JSXMLHttpRequest::onprogress):
   8773         * dom/EventNames.h:
   8774         * xml/XMLHttpRequest.cpp:
   8775         (WebCore::XMLHttpRequest::callReadyStateChangeListener):
   8776         (WebCore::XMLHttpRequest::createRequest):
   8777         (WebCore::XMLHttpRequest::abort):
   8778         (WebCore::XMLHttpRequest::networkError):
   8779         (WebCore::XMLHttpRequest::abortError):
   8780         (WebCore::XMLHttpRequest::didFail):
   8781         (WebCore::XMLHttpRequest::updateAndDispatchOnProgress):
   8782         (WebCore::XMLHttpRequest::dispatchReadyStateChangeEvent):
   8783         (WebCore::XMLHttpRequest::dispatchXMLHttpRequestProgressEvent):
   8784         (WebCore::XMLHttpRequest::dispatchAbortEvent):
   8785         (WebCore::XMLHttpRequest::dispatchErrorEvent):
   8786         (WebCore::XMLHttpRequest::dispatchLoadEvent):
   8787         (WebCore::XMLHttpRequest::dispatchLoadStartEvent):
   8788         (WebCore::XMLHttpRequest::dispatchProgressEvent):
   8789         * xml/XMLHttpRequest.h:
   8790         (WebCore::XMLHttpRequest::setOnAbortListener):
   8791         (WebCore::XMLHttpRequest::onAbortListener):
   8792         (WebCore::XMLHttpRequest::setOnErrorListener):
   8793         (WebCore::XMLHttpRequest::onErrorListener):
   8794         (WebCore::XMLHttpRequest::setOnLoadStartListener):
   8795         (WebCore::XMLHttpRequest::onLoadStartListener):
   8796         * xml/XMLHttpRequest.idl:
   8797 
   8798 2008-06-24  Anders Carlsson  <andersca (a] apple.com>
   8799 
   8800         Reviewed by Mitz.
   8801 
   8802         <rdar://problem/5957606>
   8803         CrashTracer: [USER] 2 crashes in Safari at com.apple.WebCore: WebCore::DocumentLoader::cancelPendingSubstituteLoad + 23
   8804 
   8805         Remove the loader from the document loader after calling didFail, so that the loader will be deferred corectly
   8806         in case the call do didFail starts a new run loop.
   8807         
   8808         * loader/NetscapePlugInStreamLoader.cpp:
   8809         (WebCore::NetscapePlugInStreamLoader::didCancel):
   8810 
   8811 2008-06-24  Alexey Proskuryakov  <ap (a] webkit.org>
   8812 
   8813         Release build fix.
   8814 
   8815         * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
   8816         (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
   8817         * bindings/js/JSCustomSQLTransactionCallback.cpp:
   8818         (WebCore::JSCustomSQLTransactionCallback::handleEvent):
   8819         Initialize callbackCallType, as the compiler is not smart enough to figure out data flow.
   8820 
   8821 2008-06-24  Alexey Proskuryakov  <ap (a] webkit.org>
   8822 
   8823         Reviewed by Darin.
   8824 
   8825         https://bugs.webkit.org/show_bug.cgi?id=19723
   8826         REGRESSION(r34648): Some SVG tests crash when running under --threaded
   8827 
   8828         * rendering/RenderSVGInlineText.cpp: (WebCore::RenderSVGInlineText::destroy): Do not attempt
   8829         to paint during document destruction, because rendering structures are not kept in a
   8830         consistent state then.
   8831 
   8832 2008-06-24  Jonathon Jongsma  <jonathon.jongsma (a] collabora.co.uk>
   8833 
   8834         Reviewed by Darin.
   8835 
   8836         https://bugs.webkit.org/show_bug.cgi?id=19727
   8837 
   8838         Return bool from GraphicsContext::getShadow() so the tests aren't duplicated so
   8839         many times in Cairo and Qt ports.
   8840 
   8841         * platform/graphics/GraphicsContext.h:
   8842         * platform/graphics/GraphicsContext.cpp:
   8843         (WebCore::GraphicsContext::getShadow): return a boolean from getShadow()
   8844         which indicates whether there is a visible shadow to draw or not.  Ports
   8845         without a platform shadow implementation can use this flag to determine
   8846         whether a shadow needs to be drawn manually
   8847         * platform/graphics/cairo/FontCairo.cpp:
   8848         (WebCore::Font::drawGlyphs):
   8849         * platform/graphics/qt/FontQt.cpp:
   8850         (WebCore::Font::drawText):
   8851         * platform/graphics/qt/GraphicsContextQt.cpp:
   8852         (WebCore::GraphicsContext::drawLine): use return from getShadow() to
   8853         determine whether to draw the shadow
   8854 
   8855 2008-06-24  Jonathon Jongsma  <jonathon.jongsma (a] collabora.co.uk>
   8856 
   8857         Reviewed by Simon.
   8858 
   8859         https://bugs.webkit.org/show_bug.cgi?id=18459
   8860 
   8861         Clean up and remove unused platform shadow code.
   8862 
   8863         Minor edits by Simon, removed unused TextShadow struct.
   8864 
   8865         * platform/graphics/qt/GraphicsContextQt.cpp:
   8866         (WebCore::GraphicsContext::setPlatformShadow):
   8867         (WebCore::GraphicsContext::clearPlatformShadow): Qt doesn't support a
   8868         platform shadow, so just make these functions empty.  The shadows are
   8869         drawn manually in function like drawLine(), etc.
   8870 
   8871 2008-06-24  Jonathon Jongsma  <jonathon.jongsma (a] collabora.co.uk>
   8872 
   8873         Reviewed by Simon.
   8874 
   8875         https://bugs.webkit.org/show_bug.cgi?id=18459
   8876 
   8877         Implemented basic text-shadow support for the Qt port.
   8878 
   8879         * platform/graphics/qt/FontQt.cpp:
   8880         (WebCore::Font::drawText): implement text-shadow support in the Qt port
   8881         * platform/graphics/qt/GraphicsContextQt.cpp:
   8882         (WebCore::GraphicsContext::drawLine): also draw shadows for text
   8883         decorations such as unerlines
   8884 
   8885 2008-06-24  Simon Hausmann  <hausmann (a] webkit.org>
   8886 
   8887         Fix the Qt build, adapt to various JSCore API changes.
   8888 
   8889         * bridge/qt/qt_instance.cpp:
   8890         (KJS::Bindings::QtRuntimeObjectImp::construct):
   8891         (KJS::Bindings::QtInstance::getRuntimeObject):
   8892         (KJS::Bindings::QtInstance::invokeDefaultMethod):
   8893         * bridge/qt/qt_runtime.cpp:
   8894         (KJS::Bindings::convertQVariantToValue):
   8895         (KJS::Bindings::QtRuntimeMetaMethod::getCallData):
   8896         (KJS::Bindings::QtRuntimeConnectionMethod::call):
   8897         (KJS::Bindings::QtRuntimeConnectionMethod::getCallData):
   8898         (KJS::Bindings::QtConnectionObject::execute):
   8899         * bridge/qt/qt_runtime.h:
   8900         (KJS::Bindings::QtRuntimeConnectionMethod::d_func):
   8901 
   8902 2008-06-24  Alexey Proskuryakov  <ap (a] webkit.org>
   8903 
   8904         Remove XMLHttpRequestProgressEvent.cpp from more project files.
   8905 
   8906         * GNUmakefile.am:
   8907         * WebCore.pro:
   8908 
   8909 2008-06-24  Ariya Hidayat  <ariya.hidayat (a] trolltech.com>
   8910 
   8911         Reviewed by Simon.
   8912 
   8913         For the Qt port, fix linking with MinGW.
   8914 
   8915         * WebCore.pro:
   8916 
   8917 2008-06-23  Darin Adler  <darin (a] apple.com>
   8918 
   8919         Reviewed by Geoff.
   8920 
   8921         Update for JavaScript changes.
   8922 
   8923         - Use CallData and ConstructData instead of the obsolete implementsCall,
   8924           callAsFunction, and construct functions.
   8925 
   8926         - Updated native function arguments, specifically to allow a JSValue
   8927           rather than a JSObject for the this argument, and to call toThisObject
   8928           as needed when treating it as an object.
   8929 
   8930         - Made some more class members private and protected, including virtual
   8931           function overrides.
   8932 
   8933         - Eliminated the use of getCallData in the JavaScript bridging code as
   8934           a way to check if an instance supports invokeDefaultMethod.
   8935 
   8936         - Eliminated unnecessary polymorphism in the NodeIterator and TreeWalker
   8937           classes. They were using virtual functions simply to share an instance
   8938           of the RefCounted template, which was not helpful.
   8939 
   8940         * bindings/js/JSAudioConstructor.cpp:
   8941         (WebCore::constructAudio):
   8942         (WebCore::JSAudioConstructor::getConstructData):
   8943         * bindings/js/JSAudioConstructor.h:
   8944         (WebCore::JSAudioConstructor::document):
   8945         (WebCore::JSAudioConstructor::classInfo):
   8946         * bindings/js/JSClipboardCustom.cpp:
   8947         (WebCore::JSClipboard::types):
   8948         * bindings/js/JSCustomSQLStatementCallback.cpp:
   8949         (WebCore::JSCustomSQLStatementCallback::handleEvent):
   8950         * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
   8951         (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
   8952         * bindings/js/JSCustomSQLTransactionCallback.cpp:
   8953         (WebCore::JSCustomSQLTransactionCallback::handleEvent):
   8954         * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
   8955         (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent):
   8956         * bindings/js/JSCustomVoidCallback.cpp:
   8957         (WebCore::JSCustomVoidCallback::handleEvent):
   8958         * bindings/js/JSCustomXPathNSResolver.cpp:
   8959         (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
   8960         * bindings/js/JSDOMBinding.h:
   8961         (WebCore::DOMObject::DOMObject):
   8962         * bindings/js/JSDOMWindowBase.cpp:
   8963         (WebCore::windowProtoFuncAToB):
   8964         (WebCore::windowProtoFuncBToA):
   8965         (WebCore::windowProtoFuncOpen):
   8966         (WebCore::windowProtoFuncSetTimeout):
   8967         (WebCore::windowProtoFuncClearTimeout):
   8968         (WebCore::windowProtoFuncSetInterval):
   8969         (WebCore::windowProtoFuncAddEventListener):
   8970         (WebCore::windowProtoFuncRemoveEventListener):
   8971         (WebCore::windowProtoFuncShowModalDialog):
   8972         (WebCore::windowProtoFuncNotImplemented):
   8973         (WebCore::toJSDOMWindow):
   8974         * bindings/js/JSDOMWindowBase.h:
   8975         * bindings/js/JSDOMWindowShell.h:
   8976         (WebCore::JSDOMWindowShell::classInfo):
   8977         * bindings/js/JSEventListener.cpp:
   8978         (WebCore::JSAbstractEventListener::handleEvent):
   8979         (WebCore::JSLazyEventListener::parseCode):
   8980         * bindings/js/JSEventTargetBase.cpp:
   8981         (WebCore::retrieveEventTargetAndCorrespondingNode):
   8982         (WebCore::jsEventTargetAddEventListener):
   8983         (WebCore::jsEventTargetRemoveEventListener):
   8984         (WebCore::jsEventTargetDispatchEvent):
   8985         * bindings/js/JSEventTargetBase.h:
   8986         * bindings/js/JSHTMLAppletElementCustom.cpp:
   8987         (WebCore::JSHTMLAppletElement::customGetOwnPropertySlot):
   8988         (WebCore::JSHTMLAppletElement::customPut):
   8989         (WebCore::JSHTMLAppletElement::getCallData):
   8990         * bindings/js/JSHTMLCollectionCustom.cpp:
   8991         (WebCore::callHTMLCollection):
   8992         (WebCore::JSHTMLCollection::getCallData):
   8993         * bindings/js/JSHTMLDocumentCustom.cpp:
   8994         (WebCore::JSHTMLDocument::open):
   8995         * bindings/js/JSHTMLEmbedElementCustom.cpp:
   8996         (WebCore::JSHTMLEmbedElement::customGetOwnPropertySlot):
   8997         (WebCore::JSHTMLEmbedElement::customPut):
   8998         (WebCore::JSHTMLEmbedElement::getCallData):
   8999         * bindings/js/JSHTMLInputElementBase.cpp:
   9000         (WebCore::jsHTMLInputElementBaseFunctionSetSelectionRange):
   9001         * bindings/js/JSHTMLInputElementBase.h:
   9002         * bindings/js/JSHTMLObjectElementCustom.cpp:
   9003         (WebCore::JSHTMLObjectElement::customGetOwnPropertySlot):
   9004         (WebCore::JSHTMLObjectElement::customPut):
   9005         (WebCore::JSHTMLObjectElement::getCallData):
   9006         * bindings/js/JSHTMLOptionElementConstructor.cpp:
   9007         (WebCore::constructHTMLOptionElement):
   9008         (WebCore::JSHTMLOptionElementConstructor::getConstructData):
   9009         * bindings/js/JSHTMLOptionElementConstructor.h:
   9010         (WebCore::JSHTMLOptionElementConstructor::document):
   9011         (WebCore::JSHTMLOptionElementConstructor::classInfo):
   9012         * bindings/js/JSImageConstructor.cpp:
   9013         (WebCore::constructImage):
   9014         (WebCore::JSImageConstructor::getConstructData):
   9015         * bindings/js/JSImageConstructor.h:
   9016         (WebCore::JSImageConstructor::document):
   9017         (WebCore::JSImageConstructor::classInfo):
   9018         * bindings/js/JSInspectedObjectWrapper.h:
   9019         (WebCore::JSInspectedObjectWrapper::classInfo):
   9020         * bindings/js/JSInspectorCallbackWrapper.cpp:
   9021         (WebCore::JSInspectorCallbackWrapper::prepareIncomingValue):
   9022         * bindings/js/JSJavaScriptCallFrameCustom.cpp:
   9023         (WebCore::JSJavaScriptCallFrame::scopeChain):
   9024         * bindings/js/JSNodeFilterCondition.cpp:
   9025         (WebCore::JSNodeFilterCondition::JSNodeFilterCondition):
   9026         (WebCore::JSNodeFilterCondition::mark):
   9027         (WebCore::JSNodeFilterCondition::acceptNode):
   9028         * bindings/js/JSNodeFilterCondition.h:
   9029         (WebCore::JSNodeFilterCondition::create):
   9030         * bindings/js/JSNodeFilterCustom.cpp:
   9031         (WebCore::toNodeFilter):
   9032         * bindings/js/JSNodeListCustom.cpp:
   9033         (WebCore::callNodeList):
   9034         (WebCore::JSNodeList::getCallData):
   9035         (WebCore::JSNodeList::canGetItemsForName):
   9036         (WebCore::JSNodeList::nameGetter):
   9037         * bindings/js/JSPluginElementFunctions.cpp:
   9038         (WebCore::runtimeObjectGetter):
   9039         (WebCore::runtimeObjectPropertyGetter):
   9040         (WebCore::runtimeObjectCustomGetOwnPropertySlot):
   9041         (WebCore::runtimeObjectCustomPut):
   9042         (WebCore::runtimeObjectGetCallData):
   9043         (WebCore::pluginInstance):
   9044         (WebCore::getRuntimeObject):
   9045         (WebCore::callPlugin):
   9046         * bindings/js/JSPluginElementFunctions.h:
   9047         * bindings/js/JSQuarantinedObjectWrapper.cpp:
   9048         (WebCore::JSQuarantinedObjectWrapper::put):
   9049         (WebCore::JSQuarantinedObjectWrapper::construct):
   9050         (WebCore::JSQuarantinedObjectWrapper::getConstructData):
   9051         (WebCore::JSQuarantinedObjectWrapper::hasInstance):
   9052         (WebCore::JSQuarantinedObjectWrapper::call):
   9053         (WebCore::JSQuarantinedObjectWrapper::getCallData):
   9054         * bindings/js/JSQuarantinedObjectWrapper.h:
   9055         (WebCore::JSQuarantinedObjectWrapper::className):
   9056         * bindings/js/JSRGBColor.cpp:
   9057         * bindings/js/JSXMLHttpRequestConstructor.cpp:
   9058         (WebCore::constructXMLHttpRequest):
   9059         (WebCore::JSXMLHttpRequestConstructor::getConstructData):
   9060         * bindings/js/JSXMLHttpRequestConstructor.h:
   9061         (WebCore::JSXMLHttpRequestConstructor::document):
   9062         (WebCore::JSXMLHttpRequestConstructor::classInfo):
   9063         * bindings/js/JSXSLTProcessorConstructor.cpp:
   9064         (WebCore::constructXSLTProcessor):
   9065         (WebCore::JSXSLTProcessorConstructor::getConstructData):
   9066         * bindings/js/JSXSLTProcessorConstructor.h:
   9067         (WebCore::JSXSLTProcessorConstructor::classInfo):
   9068         * bindings/js/ScheduledAction.cpp:
   9069         (WebCore::ScheduledAction::ScheduledAction):
   9070         (WebCore::ScheduledAction::execute):
   9071         * bindings/js/ScheduledAction.h:
   9072         * bindings/objc/WebScriptObject.mm:
   9073         (-[WebScriptObject callWebScriptMethod:withArguments:]):
   9074         * bindings/scripts/CodeGeneratorJS.pm:
   9075         * bridge/NP_jsobject.cpp:
   9076         (_NPN_InvokeDefault):
   9077         (_NPN_Invoke):
   9078         * bridge/c/c_instance.cpp:
   9079         (KJS::Bindings::CInstance::supportsInvokeDefaultMethod):
   9080         * bridge/c/c_instance.h:
   9081         * bridge/jni/jni_jsobject.mm:
   9082         (JavaJSObject::call):
   9083         * bridge/objc/objc_instance.h:
   9084         * bridge/objc/objc_instance.mm:
   9085         (ObjcInstance::supportsInvokeDefaultMethod):
   9086         * bridge/objc/objc_runtime.h:
   9087         (KJS::Bindings::ObjcFallbackObjectImp::propertyName):
   9088         (KJS::Bindings::ObjcFallbackObjectImp::classInfo):
   9089         * bridge/objc/objc_runtime.mm:
   9090         (Bindings::webScriptObjectClass):
   9091         (Bindings::webUndefinedClass):
   9092         (ObjcFallbackObjectImp::ObjcFallbackObjectImp):
   9093         (callObjCFallbackObject):
   9094         (ObjcFallbackObjectImp::getCallData):
   9095         * bridge/qt/qt_instance.h:
   9096         * bridge/runtime.cpp:
   9097         (KJS::Bindings::Instance::createRuntimeObject):
   9098         (KJS::Bindings::Instance::getInstance):
   9099         * bridge/runtime.h:
   9100         (KJS::Bindings::Field::~Field):
   9101         (KJS::Bindings::Method::~Method):
   9102         (KJS::Bindings::Class::~Class):
   9103         (KJS::Bindings::Instance::supportsInvokeDefaultMethod):
   9104         * bridge/runtime_method.cpp:
   9105         (KJS::callRuntimeMethod):
   9106         (KJS::RuntimeMethod::getCallData):
   9107         * bridge/runtime_method.h:
   9108         (KJS::RuntimeMethod::methods):
   9109         * bridge/runtime_object.cpp:
   9110         (RuntimeObjectImp::defaultValue):
   9111         (callRuntimeObject):
   9112         (RuntimeObjectImp::getCallData):
   9113         * bridge/runtime_object.h:
   9114         (KJS::RuntimeObjectImp::getInternalInstance):
   9115         (KJS::RuntimeObjectImp::classInfo):
   9116         * dom/NodeIterator.h:
   9117         * dom/Traversal.cpp:
   9118         * dom/Traversal.h:
   9119         * dom/TreeWalker.h:
   9120 
   9121 2008-06-23  Adam Barth  <abarth (a] webkit.org>
   9122 
   9123         Reviewed by Darin Adler.
   9124 
   9125         https://bugs.webkit.org/show_bug.cgi?id=16756
   9126 
   9127         Move isAllowedToLoadLocalResources into SecurityOrigin.
   9128 
   9129         * dom/Document.cpp:
   9130         (WebCore::Document::Document):
   9131         (WebCore::Document::setURL):
   9132         (WebCore::Document::initSecurityContext):
   9133         * dom/Document.h:
   9134         * loader/FrameLoader.cpp:
   9135         (WebCore::FrameLoader::canLoad):
   9136         * platform/SecurityOrigin.cpp:
   9137         (WebCore::SecurityOrigin::SecurityOrigin):
   9138         (WebCore::SecurityOrigin::isLocal):
   9139         * platform/SecurityOrigin.h:
   9140         (WebCore::SecurityOrigin::protocol):
   9141         (WebCore::SecurityOrigin::host):
   9142         (WebCore::SecurityOrigin::domain):
   9143         (WebCore::SecurityOrigin::port):
   9144         (WebCore::SecurityOrigin::canLoadLocalResources):
   9145         (WebCore::SecurityOrigin::grantLoadLocalResources):
   9146         * xml/XMLHttpRequest.cpp:
   9147         (WebCore::XMLHttpRequest::setRequestHeader):
   9148 
   9149 2008-06-23  Mark Rowe  <mrowe (a] apple.com>
   9150 
   9151         Fix the Windows build.
   9152 
   9153         * WebCore.vcproj/WebCore.vcproj: Add generated files related to CSS variables to the Windows project file.
   9154 
   9155 2008-06-23  Steve Falkenburg  <sfalken (a] apple.com>
   9156 
   9157         Fix a math error in my last change.
   9158         
   9159         Reviewed by Ada Chan.
   9160 
   9161         * platform/win/FileSystemWin.cpp:
   9162         (WebCore::openTemporaryFile):
   9163 
   9164 2008-06-23  Kevin McCullough  <kmccullough (a] apple.com>
   9165 
   9166         -Build fix.
   9167 
   9168         * WebCore.vcproj/WebCore.vcproj:
   9169 
   9170 2008-06-23  chris fleizach  <cfleizach (a] apple.com>
   9171 
   9172         Reviewed by Darin Adler.
   9173 
   9174         <rdar://problem/6024267> VO unable to read massive emails because AccessibilityObject::lengthForVisiblePositionRange makes the string
   9175 
   9176         * page/AccessibilityObject.cpp:
   9177         (WebCore::replacedNodeNeedsCharacter):
   9178         (WebCore::AccessibilityObject::stringForVisiblePositionRange):
   9179         (WebCore::AccessibilityObject::lengthForVisiblePositionRange):
   9180 
   9181 2008-06-23  Steve Falkenburg  <sfalken (a] apple.com>
   9182 
   9183         Added our own mechanism for generating temporary file names.
   9184         
   9185         Reviewed by Ada Chan, Darin Adler.
   9186 
   9187         * platform/win/FileSystemWin.cpp:
   9188         (WebCore::openTemporaryFile):
   9189 
   9190 2008-06-23  Sam Weinig  <sam (a] webkit.org>
   9191 
   9192         Remove XMLHttpRequestProgressEvent.cpp from project files.
   9193 
   9194         * WebCore.vcproj/WebCore.vcproj:
   9195         * WebCore.xcodeproj/project.pbxproj:
   9196         * WebCoreSources.bkl:
   9197 
   9198 2008-06-23  Sam Weinig  <sam (a] webkit.org>
   9199 
   9200         Reviewed by Dave Hyatt.
   9201 
   9202         Remove empty file.
   9203 
   9204         * xml/XMLHttpRequestProgressEvent.cpp: Removed.
   9205 
   9206 2008-06-23  Sam Weinig  <sam (a] webkit.org>
   9207 
   9208         Rubber-stamped by Tim Hatcher.
   9209 
   9210         Rename XMLHttpRequest::sameOriginRequest to XMLHttpRequest::makeSameOriginRequest
   9211         and XMLHttpRequest::crossSiteAccessRequest to XMLHttpRequest::makeCrossSiteAccessRequest.
   9212 
   9213         * xml/XMLHttpRequest.cpp:
   9214         (WebCore::XMLHttpRequest::createRequest):
   9215         (WebCore::XMLHttpRequest::makeSameOriginRequest):
   9216         (WebCore::XMLHttpRequest::makeCrossSiteAccessRequest):
   9217         * xml/XMLHttpRequest.h:
   9218 
   9219 2008-06-23  Sam Weinig  <sam (a] webkit.org>
   9220 
   9221         Reviewed by Alexey Proskuryakov.
   9222 
   9223         Some XMLHttpRequest re-organization to aid further enhancements coming soon.
   9224 
   9225         * bindings/js/JSXMLHttpRequestCustom.cpp:
   9226         (WebCore::JSXMLHttpRequest::send): Explicitly call overloaded versions of send,
   9227         instead of always calling though send(DOMString).
   9228         * dom/Document.idl: Adds native converter.
   9229 
   9230         * xml/XMLHttpRequest.cpp:
   9231         (WebCore::XMLHttpRequest::open):
   9232         (WebCore::XMLHttpRequest::initSend):
   9233         (WebCore::XMLHttpRequest::send):
   9234         (WebCore::XMLHttpRequest::createRequest):
   9235         (WebCore::XMLHttpRequest::sameOriginRequest):
   9236         (WebCore::XMLHttpRequest::crossSiteAccessRequest):
   9237         (WebCore::XMLHttpRequest::abort):
   9238         (WebCore::XMLHttpRequest::clearResponse):
   9239         (WebCore::XMLHttpRequest::clearRequest):
   9240         (WebCore::XMLHttpRequest::genericError):
   9241         (WebCore::XMLHttpRequest::dispatchProgressEvent):
   9242         * xml/XMLHttpRequest.h:
   9243         (WebCore::XMLHttpRequest::setOnReadyStateChangeListener): Inline.
   9244         (WebCore::XMLHttpRequest::onReadyStateChangeListener): Ditto.
   9245         (WebCore::XMLHttpRequest::setOnLoadListener): Ditto.
   9246         (WebCore::XMLHttpRequest::onLoadListener): Ditto.
   9247         (WebCore::XMLHttpRequest::setOnProgressListener): Ditto.
   9248         (WebCore::XMLHttpRequest::onProgressListener): Ditto.
   9249         Makes the request entity body a member variable so that the send method
   9250         can be more easily broken up.
   9251 
   9252 2008-06-23  Timothy Hatcher  <timothy (a] apple.com>
   9253 
   9254         Make profiles of the same name in the Inspector group in the
   9255         sidebar under a collapsable item that contains all the runs.
   9256 
   9257         https://bugs.webkit.org/show_bug.cgi?id=19713
   9258 
   9259         Reviewed by Darin Adler.
   9260 
   9261         * English.lproj/localizedStrings.js: New strings.
   9262         * page/inspector/Images/profileGroupIcon.png: Added.
   9263         * page/inspector/Images/profileSmallIcon.png: Added.
   9264         * page/inspector/ProfilesPanel.js:
   9265         (WebInspector.ProfilesPanel.prototype.reset): Clear _profileGroups.
   9266         Remove the "some-expandable" class from the sidebarTree.
   9267         (WebInspector.ProfilesPanel.prototype.addProfile): Append new profiles
   9268         that have the same name as a previous profile into a group. When a
   9269         group has 2 profiles a ProfileGroupSidebarTreeElement is made and the
   9270         ProfileSidebarTreeElements are appended to the group's element. 
   9271         (WebInspector.ProfileSidebarTreeElement.prototype.get mainTitle):
   9272         Return _mainTitle is it is set.
   9273         (WebInspector.ProfileSidebarTreeElement.prototype.set mainTitle):
   9274         Set _mainTitle which is an override title.
   9275         (WebInspector.ProfileGroupSidebarTreeElement): Inherit SidebarTreeElement.
   9276         (WebInspector.ProfileGroupSidebarTreeElement.prototype.onselect):
   9277         Show the last profile in the group when selected.
   9278         * page/inspector/SidebarTreeElement.js:
   9279         (WebInspector.SidebarTreeElement.prototype.get small): Return _small.
   9280         (WebInspector.SidebarTreeElement.prototype.set small): Set _small and
   9281         update the style to match.
   9282         (WebInspector.SidebarTreeElement.prototype.onattach): Set the small
   9283         class if the small property is true.
   9284         * page/inspector/inspector.css: New styles for profiles groups
   9285         and for the small profiles.
   9286 
   9287 2008-06-23  Anders Carlsson  <andersca (a] apple.com>
   9288 
   9289         Reviewed by Geoff.
   9290 
   9291         Make changedDocuments a HashSet.
   9292 
   9293         * dom/Document.cpp:
   9294         (WebCore::Document::setDocumentChanged):
   9295         (WebCore::Document::updateDocumentsRendering):
   9296 
   9297 2008-06-23  Alexey Proskuryakov  <ap (a] webkit.org>
   9298 
   9299         Reviewed by Mark Rowe.
   9300 
   9301         Restore a collectOnMainThreadOnly call that was accidentally removed in r34659. It will not
   9302         be needed when heaps are actually per-thread, but this isn't the case yet, and collecting
   9303         on a different thread causes crashes.
   9304 
   9305         * bindings/js/JSDOMBinding.h:
   9306         (WebCore::DOMObject::DOMObject):
   9307 
   9308 2008-06-22  Jonathon Jongsma  <jonathon.jongsma (a] collabora.co.uk>
   9309 
   9310         Reviewed by Darin Adler.
   9311 
   9312         Fix https://bugs.webkit.org/show_bug.cgi?id=19465
   9313         Bug 19465: Cursor sometimes gets 'stuck' in textareas when trying to navigate with arrow keys
   9314 
   9315         Test: editing/input/textarea-arrow-navigation.html
   9316 
   9317         * rendering/RenderText.cpp:
   9318         (WebCore::RenderText::positionForCoordinates): In the case when the next position is to the right
   9319         of the last text box but the text offset is 0, set the affinity to DOWNSTREAM instead of UPSTREAM so
   9320         that the cursor doesn't remain on the previous line.
   9321 
   9322 2008-06-22  Robert Blaut  <webkit (a] blaut.biz>
   9323 
   9324         Reviewed by Darin Adler.
   9325 
   9326         Fix for https://bugs.webkit.org/show_bug.cgi?id=17421
   9327         Bug 17421: Lack of end tag for SELECT element causes the rest of page to not be rendered
   9328 
   9329         Test: fast/parser/input-textarea-inside-select-element.html
   9330 
   9331         * html/HTMLParser.cpp:
   9332         (WebCore::HTMLParser::handleError):
   9333 
   9334 2008-06-22  David Krause  <david.krause (a] gmail.com>
   9335 
   9336         Reviewed by Darin Adler.
   9337 
   9338         Fix https://bugs.webkit.org/show_bug.cgi?id=19426
   9339         Bug 19426: LOW_BANDWIDTH_DISPLAY build broken
   9340 
   9341         Change ref to addClient and deref to removeClient in code wrapped
   9342         by USE(LOW_BANDWIDTH_DISPLAY) to match changes in r31834.
   9343 
   9344         * loader/FrameLoader.cpp:
   9345         (WebCore::FrameLoader::addLowBandwidthDisplayRequest):
   9346         (WebCore::FrameLoader::removeAllLowBandwidthDisplayRequests):
   9347         (WebCore::FrameLoader::notifyFinished):
   9348 
   9349 2008-06-22  Robert Blaut  <webkit (a] blaut.biz>
   9350 
   9351         Reviewed by Darin Adler.
   9352 
   9353         Fix https://bugs.webkit.org/show_bug.cgi?id=19520
   9354         Bug 19520: WebKit incorrectly accepts hidden as the value of outline-style
   9355 
   9356         Test: fast/css/outline-hidden-illegal-value.html
   9357 
   9358         * css/CSSParser.cpp:
   9359         (WebCore::CSSParser::parseValue):
   9360         * rendering/RenderFlow.cpp:
   9361         (WebCore::RenderFlow::paintOutline):
   9362         * rendering/RenderObject.cpp:
   9363         (WebCore::RenderObject::paintOutline):
   9364         * rendering/style/RenderStyle.h:
   9365         (WebCore::RenderStyle::outlineWidth):
   9366         (WebCore::RenderStyle::outlineOffset):
   9367 
   9368 2008-06-22  Jonathon Jongsma  <jonathon.jongsma (a] collabora.co.uk>
   9369 
   9370         Reviewed by Dan Bernstein.
   9371 
   9372         Fix https://bugs.webkit.org/show_bug.cgi?id=19675
   9373         Bug 19675: [GTK] negative text-shadows are not rendered
   9374 
   9375         * platform/graphics/cairo/FontCairo.cpp:
   9376         (WebCore::Font::drawGlyphs): The IntSize::isEmpty() call checks that the
   9377         sizes are > 0, while we need to check for != 0.
   9378 
   9379 2008-06-22  kuchhal  <kuchhal (a] yahoo.com>
   9380 
   9381         Reviewed by Darin Adler.
   9382 
   9383         Fix https://bugs.webkit.org/show_bug.cgi?id=19696
   9384         Bug 19696: Memory leak in WebCore/editing/DeleteButtonController.cpp
   9385 
   9386         * editing/DeleteButtonController.cpp:
   9387         (WebCore::DeleteButtonController::createDeletionUI): Delete the Image instance
   9388         if the platform resource could not be loaded.
   9389 
   9390 2008-06-22  kuchhal  <kuchhal (a] yahoo.com>
   9391 
   9392         Reviewed by Darin Adler.
   9393 
   9394         Fix https://bugs.webkit.org/show_bug.cgi?id=19697
   9395         Bug 19697: Redundant releaseRef causing memory leak
   9396 
   9397         * platform/win/ClipboardUtilitiesWin.cpp:
   9398         (WebCore::fragmentFromCF_HTML):
   9399 
   9400 2008-06-21  Sam Weinig  <sam (a] webkit.org>
   9401 
   9402         Fix Windows build.
   9403 
   9404         * bindings/scripts/CodeGeneratorCOM.pm:
   9405         * html/HTMLInputElement.idl:
   9406 
   9407 2008-06-21  Timothy Hatcher  <timothy (a] apple.com>
   9408 
   9409         Fix a typo "new" in the keywords list for hte JavaScript
   9410         syntax highlighter. And adds "get" and "set" to the keyword list.
   9411 
   9412         Reviewed by Sam Weinig.
   9413 
   9414         * page/inspector/SourceFrame.js:
   9415         (WebInspector.SourceFrame.prototype._syntaxHighlightJavascriptLine):
   9416         Fixes the "new" typo and adds "get" and "set".
   9417 
   9418 2008-06-21  David Kilzer  <ddkilzer (a] apple.com>
   9419 
   9420         Bug 7931: Escaped elements within a textarea block can cause the textarea box to be closed prematurely
   9421 
   9422         <https://bugs.webkit.org/show_bug.cgi?id=7931>
   9423 
   9424         Reviewed by Darin.
   9425 
   9426         Tests: fast/parser/entity-end-iframe-tag.html
   9427                fast/parser/entity-end-script-tag.html
   9428                fast/parser/entity-end-style-tag.html
   9429                fast/parser/entity-end-textarea-tag.html
   9430                fast/parser/entity-end-title-tag.html
   9431                fast/parser/entity-end-xmp-tag.html
   9432 
   9433         Previously the parser accepted end tags for textarea, title and
   9434         iframe elements that contained entity-escaped characters such as
   9435         '&lt;'.  The fix is to save the position of the last entity-escaped
   9436         character converted and to use that to make sure the end tag does
   9437         not contain an escaped character.
   9438 
   9439         Note that this was not an issue for script, style and xmp elements
   9440         since they already ignored entity-escaped characters.
   9441 
   9442         * html/HTMLTokenizer.cpp:
   9443         (WebCore::HTMLTokenizer::parseSpecial): When looking for a closing
   9444         tag, ignore any text with entity-escaped characters by making sure
   9445         lastDecodedEntityPosition is less than the first character of the
   9446         end tag.
   9447 
   9448 2008-06-21  Sam Weinig  <sam (a] webkit.org>
   9449 
   9450         Reviewed by Dan Bernstein.
   9451 
   9452         Fix for https://bugs.webkit.org/show_bug.cgi?id=19647
   9453         REGRESSION: Problem with extjs (insertAdjacentHTML)
   9454 
   9455         Test: fast/dynamic/insertAdjacentHTML-allowed-parents.html
   9456 
   9457         * html/HTMLElement.cpp:
   9458         (WebCore::HTMLElement::insertAdjacentHTML): Don't use innerHTML logic for creating
   9459         the DocumentFragment from the html string.
   9460 
   9461 2008-06-21  Adam Barth  <abarth (a] webkit.org>
   9462 
   9463         Reviewed by Sam Weinig.
   9464 
   9465         Log error messages to the console when we deny a request for a URL.
   9466         These error messages do not appear in LayoutTests, but they do
   9467         appear in the WebInspector.
   9468 
   9469         * dom/XMLTokenizer.cpp:
   9470         (WebCore::shouldAllowExternalLoad):
   9471         * loader/DocLoader.cpp:
   9472         (WebCore::DocLoader::requestResource):
   9473         (WebCore::DocLoader::printAccessDeniedMessage):
   9474         * loader/DocLoader.h:
   9475         * xml/XSLTProcessor.cpp:
   9476         (WebCore::docLoaderFunc):
   9477 
   9478 2008-06-21  Adam Barth  <abarth (a] webkit.org>
   9479 
   9480         Reviewed by Sam Weinig.
   9481 
   9482         Fix <https://bugs.webkit.org/show_bug.cgi?id=19649>:
   9483           XSL style sheets allowed across origins
   9484 
   9485         Block cross-orgin loads of XSL style sheets, matching Internet
   9486         Explorer, Firefox, and Opera.  Also, we now block loading of XBL
   9487         across origins, matching Firefox.  The XBL behavior does not appear
   9488         testable because XBL seems to not be enabled.
   9489 
   9490         Test: http/tests/security/cross-origin-xsl-BLOCKED.html
   9491 
   9492         * loader/DocLoader.cpp:
   9493         (WebCore::DocLoader::requestResource):
   9494 
   9495 2008-06-21  Brett Wilson  <brettw (a] chromium.org>
   9496 
   9497         Reviewed by Dave Hyatt.
   9498 
   9499         - fix https://bugs.webkit.org/show_bug.cgi?id=19542
   9500           <rdar://problem/6007976> Crash in Font::glyphDataForCharacter when getting small caps data
   9501 
   9502         Adds a NULL check for getting the small caps page of glyph data. The
   9503         page() function can explicitly return null in some cases, and every
   9504         other usage in this function does the check.
   9505 
   9506         * platform/graphics/Font.cpp:
   9507         (WebCore::Font::glyphDataForCharacter):
   9508 
   9509 2008-06-21  Alex Taylor  <darwin (a] milliamp.org>
   9510 
   9511         Reviewed by Dan Bernstein.
   9512 
   9513         Fixes <https://bugs.webkit.org/show_bug.cgi?id=12425>
   9514 
   9515         Adds support for border-radius on legend elements.
   9516         Fieldsets with a legend and rounded borders now have a clipping region set
   9517         around the legend.
   9518         
   9519         Test: fast/borders/fieldsetBorderRadius.html
   9520 
   9521         * rendering/RenderFieldset.cpp:
   9522         (WebCore::RenderFieldset::paintBoxDecorations):
   9523         (WebCore::RenderFieldset::paintBorderMinusLegend): Removed a FIXME.
   9524 
   9525 2008-06-21  Kevin Ollivier  <kevino (a] theolliviers.com>
   9526 
   9527         wx build fix. Adding CSSVariable* API sources to the Bakefiles.
   9528 
   9529         * WebCoreSources.bkl:
   9530 
   9531 2008-06-20  Sam Weinig  <sam (a] webkit.org>
   9532 
   9533         Fix Windows build.
   9534 
   9535         * bindings/scripts/CodeGeneratorCOM.pm:
   9536 
   9537 2008-06-20  Jan Michael Alonzo  <jmalonzo (a] webkit.org>
   9538 
   9539         Gtk build fix: Add files missing in the previous fix (r34705)
   9540 
   9541         * GNUmakefile.am:
   9542 
   9543 2008-06-20  Dan Bernstein  <mitz (a] apple.com>
   9544 
   9545         Reviewed by Sam Weinig.
   9546 
   9547         - fix leak of mask images
   9548 
   9549         * rendering/RenderObject.cpp:
   9550         (WebCore::RenderObject::arenaDelete): Added a call to removeClient() on
   9551         the mask box image.
   9552 
   9553 2008-06-20  Jan Michael Alonzo  <jmalonzo (a] webkit.org>
   9554 
   9555         Gtk build fix for r34702, r34700 and r34693
   9556         Qt build fix for r34700 and r34693
   9557 
   9558         * GNUmakefile.am:
   9559         * WebCore.pro:
   9560         * platform/gtk/RenderThemeGtk.cpp:
   9561         * platform/gtk/RenderThemeGtk.h:
   9562         * platform/qt/RenderThemeQt.cpp:
   9563         * platform/qt/RenderThemeQt.h:
   9564 
   9565 2008-06-20  Sam Weinig  <sam (a] webkit.org>
   9566 
   9567         Reviewed by Adele Peterson.
   9568 
   9569         Add 'files' property to the HTMLInputElement, which returns a FileList object 
   9570         (when type=file, null otherwise) containing a list of all the files selected.
   9571         It currently always contains only 0 or 1 files as multifile input is not supported 
   9572         yet.  The list contains File objects which contains the name and size of the file. 
   9573         The inspiration for these interfaces is from:
   9574             - http://developer.mozilla.org/en/docs/nsIDOMFileList
   9575             - http://developer.mozilla.org/en/docs/nsIDOMFile
   9576 
   9577         Also fixes <rdar://problem/6022802>
   9578 
   9579         * DerivedSources.make:
   9580         * GNUmakefile.am:
   9581         * WebCore.pro:
   9582         * WebCore.vcproj/WebCore.vcproj:
   9583         * WebCore.xcodeproj/project.pbxproj:
   9584         * WebCoreSources.bkl:
   9585         * bindings/objc/DOMInternal.h:
   9586         * bindings/scripts/CodeGenerator.pm:
   9587         * bindings/scripts/IDLStructure.pm:
   9588         * html/File.cpp: Added.
   9589         (WebCore::File::File):
   9590         (WebCore::File::fileSize):
   9591         * html/File.h: Added.
   9592         (WebCore::File::create):
   9593         (WebCore::File::fileName):
   9594         (WebCore::File::path):
   9595         * html/File.idl: Added.
   9596         * html/FileList.cpp: Added.
   9597         (WebCore::FileList::FileList):
   9598         (WebCore::FileList::item):
   9599         * html/FileList.h: Added.
   9600         (WebCore::FileList::create):
   9601         (WebCore::FileList::length):
   9602         (WebCore::FileList::isEmpty):
   9603         (WebCore::FileList::clear):
   9604         (WebCore::FileList::append):
   9605         * html/FileList.idl: Added.
   9606         * html/HTMLInputElement.cpp:
   9607         (WebCore::HTMLInputElement::setInputType):
   9608         (WebCore::HTMLInputElement::appendFormData):
   9609         (WebCore::HTMLInputElement::value):
   9610         (WebCore::HTMLInputElement::setValue):
   9611         (WebCore::HTMLInputElement::setValueFromRenderer):
   9612         (WebCore::HTMLInputElement::files):
   9613         * html/HTMLInputElement.h:
   9614         * html/HTMLInputElement.idl:
   9615         * page/DOMWindow.idl:
   9616 
   9617 2008-06-20  David Hyatt  <hyatt (a] apple.com>
   9618 
   9619         Make sure CSS variables work inside the inline style attribute.
   9620 
   9621         Reviewed by Beth
   9622 
   9623         Added fast/css/variables/inline-style-test.html
   9624 
   9625         * css/CSSMutableStyleDeclaration.cpp:
   9626         (WebCore::CSSMutableStyleDeclaration::removeProperty):
   9627         (WebCore::CSSMutableStyleDeclaration::addParsedProperties):
   9628 
   9629 2008-06-20  David Hyatt  <hyatt (a] apple.com>
   9630 
   9631         Add support for the CSSVariablesRule and CSSVariablesDeclaration DOM APIs.  These allow querying of
   9632         variables names and values, as well as iteration, setting and removal.
   9633 
   9634         Reviewed by Sam
   9635 
   9636         Added multiple new tests to fast/css/variables/
   9637 
   9638         * DerivedSources.make:
   9639         * WebCore.xcodeproj/project.pbxproj:
   9640         * bindings/js/JSCSSRuleCustom.cpp:
   9641         (WebCore::toJS):
   9642         * bindings/objc/DOMInternal.h:
   9643         * bindings/scripts/CodeGeneratorJS.pm:
   9644         * css/CSSPrimitiveValue.cpp:
   9645         (WebCore::CSSPrimitiveValue::parserValue):
   9646         * css/CSSVariablesDeclaration.cpp:
   9647         (WebCore::CSSVariablesDeclaration::removeVariable):
   9648         (WebCore::CSSVariablesDeclaration::setVariable):
   9649         (WebCore::CSSVariablesDeclaration::setCssText):
   9650         (WebCore::CSSVariablesDeclaration::setChanged):
   9651         * css/CSSVariablesDeclaration.h:
   9652         * css/CSSVariablesDeclaration.idl: Added.
   9653         * css/CSSVariablesRule.h:
   9654         * css/CSSVariablesRule.idl: Added.
   9655 
   9656 2008-06-20  Kevin McCullough  <kmccullough (a] apple.com>
   9657 
   9658         Rubber stamped by Adele. 
   9659 
   9660         * manual-tests/inspector/profiler-test-stop-profiling-after-setTimeout.html: Added.
   9661 
   9662 2008-06-20  Kevin McCullough  <kmccullough (a] apple.com>
   9663 
   9664         Reviewed by Tim.
   9665 
   9666         <rdar://problem/5958770> JSProfiler: Time incorrectly given to (idle)
   9667         if profiling is started and finished within the same function. (19230)
   9668         - Now we profile one more stack frame up from the last frame to allocate
   9669         the time spent in it, if it exists.
   9670 
   9671         * page/Console.cpp:
   9672         * manual-tests/inspector/profiler-test-start-and-stop-profiling-in-the-same-function.html: Added.
   9673         (WebCore::Console::profile): When stating the profiler give a client for
   9674         the callback of when the profile actually finishes.
   9675         (WebCore::Console::profileEnd): No longer needs to handle the return of
   9676         the profile object since it will be retruned in the client's callback.
   9677         (WebCore::Console::finishedProfiling): Implemenet the ProfileClient
   9678         callback method.
   9679         * page/Console.h: Inherit from the ProfileClient.
   9680         * page/InspectorController.cpp:
   9681         (WebCore::InspectorController::startUserInitiatedProfiling): Use the
   9682         client callback.
   9683         (WebCore::InspectorController::stopUserInitiatedProfiling): Does not
   9684         need to handle the profile being returned as it is now handled by the
   9685         client callback.
   9686         (WebCore::InspectorController::finishedProfiling): Implement the
   9687         ProfileClient callback method.
   9688         * page/InspectorController.h: Inherit from the ProfileClient.
   9689 
   9690 2008-06-20  Timothy Hatcher  <timothy (a] apple.com>
   9691 
   9692         Makes the JavaScript syntax highlighter process lines in chunks
   9693         so the user interface isn't blocked for large script files.
   9694 
   9695         https://bugs.webkit.org/show_bug.cgi?id=19677
   9696 
   9697         Reviewed by Adam Roben.
   9698 
   9699         * page/inspector/SourceFrame.js:
   9700         (WebInspector.SourceFrame.prototype._addMessageToSource): Use the cells
   9701         property on the row instead of getElementsByTagName.
   9702         (WebInspector.SourceFrame.prototype.syntaxHighlightJavascript): Use the
   9703         cells property on the row instead of getElementsByTagName. Added
   9704         a nested processChunk function that highlights 10 lines at a time
   9705         This processChunk function is called at an interval of 25ms. The
   9706         code is still highlighted quickly, and the user can't tell it wasn't
   9707         highlighted all at once.
   9708 
   9709 2008-06-20  Timothy Hatcher  <timothy (a] apple.com>
   9710 
   9711         Fixes a bug where the source view in the Resources panel had a
   9712         couple of extra pixels at the bottom when fully scrolled.
   9713 
   9714         Reviewed by Adam Roben.
   9715 
   9716         * page/inspector/SourceFrame.js:
   9717         (WebInspector.SourceFrame.prototype.set autoSizesToFitContentHeight):
   9718         Call removeStyleClass instead of addStyleClass for "webkit-height-sized-to-fit"
   9719         when sizing to fit is being disabled.
   9720         * page/inspector/inspector.css:
   9721         (.resource-view.headers-visible .source-view-frame): Added the
   9722         vertical-align: top property to prevent line alignment from adding extra
   9723         pixels on the bottom.
   9724 
   9725 2008-06-20  Timothy Hatcher  <timothy (a] apple.com>
   9726 
   9727         Changed all lineHeight, baselinePosition and verticalPositionHint
   9728         calls to return int instead of short. The short was overflowing
   9729         when a value greater than 32,767 was encountered.
   9730 
   9731         Fixes: iframes with a height of 32,768px or greater do not layout correctly
   9732         https://bugs.webkit.org/show_bug.cgi?id=19679
   9733 
   9734         Reviewed by Dave Hyatt.
   9735 
   9736         Test: fast/css/line-height-overflow.html
   9737 
   9738         * rendering/RenderBR.cpp:
   9739         (WebCore::RenderBR::baselinePosition):
   9740         * rendering/RenderBR.h:
   9741         * rendering/RenderBlock.cpp:
   9742         (WebCore::RenderBlock::lineHeight):
   9743         * rendering/RenderBlock.h:
   9744         * rendering/RenderFlow.cpp:
   9745         * rendering/RenderFlow.h:
   9746         * rendering/RenderListBox.cpp:
   9747         * rendering/RenderListBox.h:
   9748         * rendering/RenderListMarker.cpp:
   9749         (WebCore::RenderListMarker::lineHeight):
   9750         * rendering/RenderListMarker.h:
   9751         * rendering/RenderObject.cpp:
   9752         (WebCore::RenderObject::verticalPositionHint):
   9753         * rendering/RenderObject.h:
   9754         (WebCore::):
   9755         * rendering/RenderPath.cpp:
   9756         (WebCore::RenderPath::lineHeight):
   9757         * rendering/RenderPath.h:
   9758         * rendering/RenderReplaced.cpp:
   9759         (WebCore::RenderReplaced::lineHeight):
   9760         * rendering/RenderReplaced.h:
   9761         * rendering/RenderSVGContainer.cpp:
   9762         (WebCore::RenderSVGContainer::lineHeight):
   9763         * rendering/RenderSVGContainer.h:
   9764         * rendering/RenderSVGHiddenContainer.cpp:
   9765         (WebCore::RenderSVGHiddenContainer::lineHeight):
   9766         * rendering/RenderSVGHiddenContainer.h:
   9767         * rendering/RenderSVGRoot.cpp:
   9768         (WebCore::RenderSVGRoot::lineHeight):
   9769         * rendering/RenderSVGRoot.h:
   9770         * rendering/RenderSlider.cpp:
   9771         * rendering/RenderSlider.h:
   9772         * rendering/RenderTableCell.cpp:
   9773         * rendering/RenderTableCell.h:
   9774         * rendering/RenderTableCol.h:
   9775         * rendering/RenderTableRow.h:
   9776         * rendering/RenderTableSection.h:
   9777         * rendering/RenderText.cpp:
   9778         * rendering/RenderText.h:
   9779         * rendering/RenderTextControl.cpp:
   9780         * rendering/RenderTextControl.h:
   9781         * rendering/RenderTheme.cpp:
   9782         * rendering/RenderTheme.h:
   9783         * rendering/RenderThemeMac.h:
   9784         * rendering/RenderThemeMac.mm:
   9785         * rendering/RenderThemeSafari.cpp:
   9786         * rendering/RenderThemeSafari.h:
   9787 
   9788 2008-06-20  Dan Bernstein  <mitz (a] apple.com>
   9789 
   9790         Reviewed by Darin Adler.
   9791 
   9792         - fix https://bugs.webkit.org/show_bug.cgi?id=19519
   9793           <rdar://problem/6007345> DOM modification causes stack exhaustion (BUTTON OBJECT COLGROUP)
   9794 
   9795         Test: fast/table/prepend-in-anonymous-table.html
   9796 
   9797         * rendering/RenderBlock.cpp:
   9798         (WebCore::RenderBlock::addChildToFlow): Added code to handle the case
   9799         of inserting before a child that has been wrapped by an anonymous table,
   9800         in which case if the new child is the type that needs to be in a table,
   9801         it is inserted into the table, and otherwise it is inserted before the
   9802         table.
   9803         * rendering/RenderTable.cpp:
   9804         (WebCore::RenderTable::addChild): Added table-column-group alongside
   9805         table-caption as content that can exist inside an anonymous table
   9806         without being wrapped in a table section.
   9807 
   9808 2008-06-20  David Hyatt  <hyatt (a] apple.com>
   9809 
   9810         Allow CSS variables to support arbitrary expressions as values instead of just a single term.
   9811 
   9812         Reviewed by Sam
   9813 
   9814         Removed fast/css/variables/single-term-test.html and replaced with multiple-term-test.html
   9815 
   9816         * css/CSSGrammar.y:
   9817         * css/CSSParser.cpp:
   9818         (WebCore::CSSParser::addVariable):
   9819         * css/CSSParser.h:
   9820         * css/CSSStyleSelector.cpp:
   9821         (WebCore::CSSStyleSelector::addMatchedDeclaration):
   9822         * css/CSSVariablesDeclaration.cpp:
   9823         (WebCore::CSSVariablesDeclaration::CSSVariablesDeclaration):
   9824         (WebCore::CSSVariablesDeclaration::getVariableValue):
   9825         (WebCore::CSSVariablesDeclaration::addParsedVariable):
   9826         (WebCore::CSSVariablesDeclaration::getParsedVariable):
   9827         * css/CSSVariablesDeclaration.h:
   9828         (WebCore::CSSVariablesDeclaration::create):
   9829 
   9830 2008-06-19  Dan Bernstein  <mitz (a] apple.com>
   9831 
   9832         Reviewed by John Sullivan.
   9833 
   9834         - fix a bug where anonymous tables were inserted in the wrong place
   9835 
   9836         Tests: tables/mozilla/bugs/bug2479-2.html
   9837                tables/mozilla/bugs/bug278266.html
   9838                tables/mozilla/bugs/bug8411.xml
   9839 
   9840         * rendering/RenderContainer.cpp:
   9841         (WebCore::RenderContainer::addChild): Changed to create an anonymous
   9842         table and insert it before beforeChild unless the insertion point is
   9843         right after an existing anonymous table, in which case the existing
   9844         table is used.
   9845 
   9846 2008-06-19  Justin Garcia  <justin.garcia (a] apple.com>
   9847 
   9848         Reviewed by Oliver.
   9849 
   9850         <https://bugs.webkit.org/show_bug.cgi?id=16049>
   9851         execCommand('backColor') fails on collapsed selections
   9852 
   9853         * editing/EditorCommand.cpp:
   9854         (WebCore::CommandEntry::): Enable BackColor for caret selections, and
   9855         disable ForeColor in plaintext-only regions.
   9856 
   9857 2008-06-19  Justin Garcia  <justin.garcia (a] apple.com>
   9858 
   9859         Reviewed by John.
   9860 
   9861         <https://bugs.webkit.org/show_bug.cgi?id=19653>
   9862         Typing style lost when creating list from, indenting or outdenting an empty paragraph
   9863         
   9864         There were two problems.  First, moveParagraphs didn't preserve the style of empty paragraphs.
   9865         Second, indent, outdent and list creation returned false from preservesTypingStyle.
   9866         The second problem couldn't be fixed by just adding preservesTypingStyle() { return true; }
   9867         to those commands, though, because of other bugs.
   9868         
   9869         Cleaned up the implementation of typing style enough to remove FIXMEs for:
   9870         
   9871         <rdar://problem/3769899> Implementation of typing style needs improvement 
   9872         
   9873         which has actually been closed for some time now anyway.
   9874         
   9875         * dom/Document.cpp: Removed an unused header.
   9876         * editing/CompositeEditCommand.cpp:
   9877         (WebCore::CompositeEditCommand::moveParagraphs): Preserve the style of an empty paragraph, too.
   9878         * editing/DeleteSelectionCommand.cpp:
   9879         (WebCore::DeleteSelectionCommand::saveTypingStyleState): Removed FIXME.
   9880         (WebCore::DeleteSelectionCommand::calculateTypingStyleAfterDelete): 
   9881         Removed FIXME.  
   9882         If there is a typing style to apply after a delete, apply it to any line break that acts as a paragraph
   9883         placeholder, not only one that was inserted by deletion.  This fixes a bug where deleting
   9884         <div><b>Bold</b><br></div>, changing the selection and then coming back and typing wouldn't 
   9885         produce bold text.  
   9886         Don't set the EditCommand's typingStyle, it has been removed (more on that later).
   9887         (WebCore::DeleteSelectionCommand::doApply): We don't need to pass calculateTypingStyleAfterDelete
   9888         the inserted placeholder because it will find it.
   9889         (WebCore::DeleteSelectionCommand::preservesTypingStyle): Normally deletion doesn't preserve the 
   9890         typing style that was present before it.  For example, type a character, Bold, then delete the 
   9891         character and start typing.  The Bold typing style shouldn't stick around.  We got this right before 
   9892         purely by chance. Deletion should preserve a typing style that *it* sets, however.
   9893         * editing/DeleteSelectionCommand.h: No longer need to pass calculateTypingStyleAfterDelete
   9894         the inserted placeholder.
   9895         * editing/EditCommand.cpp:
   9896         (WebCore::EditCommand::apply): 
   9897         Clearing or not clearing a removed anchor should not be determined by whether or not a command 
   9898         preservesTypingStyle().  For example, the deletion that removed an anchor (and stored it), may 
   9899         not preserve the typing style, but that doesn't mean that it should then go and clear the removed 
   9900         anchor.  All high level commands, and all commands that a TypingCommand spawns, except for
   9901         text insertions, which should restore a removed anchor, should clear it.
   9902         There is no longer a typing style on EditCommand, removed code that cleared it.  Code that clears the 
   9903         *actual* typing style is now in Editor::appliedEditing, just like before.
   9904         There is no longer a typing style on EditCommand, removed code to set one.
   9905         (WebCore::EditCommand::styleAtPosition): Removed FIXME.
   9906         * editing/EditCommand.h: 
   9907         Removed code assosiated with m_typingStyle.
   9908         Made preservesTypingStyle() public, so that we can call it from Editor::appliedEditing().
   9909         * editing/Editor.cpp:
   9910         (WebCore::Editor::appliedEditing):
   9911         Removed code to preserve the removedAnchor during the call to setSelection, because we no longer
   9912         request to clear the typing style with that call.  Also removed the FIXME about this.
   9913         Before, a command would set the Frame's typing style by setting its own typingStyle, and then 
   9914         letting code here, in appliedEditing pick that up and set it on the Frame.  Now, the command 
   9915         itself sets the Frame's typing style.  Deletion is the only command that does this right now.
   9916         * editing/IndentOutdentCommand.h:
   9917         (WebCore::IndentOutdentCommand::preservesTypingStyle): Added, returns true.
   9918         * editing/InsertLineBreakCommand.cpp:
   9919         (WebCore::InsertLineBreakCommand::doApply): Removed FIXME.
   9920         * editing/InsertListCommand.h:
   9921         (WebCore::InsertListCommand::preservesTypingStyle): Added.
   9922         * editing/InsertParagraphSeparatorCommand.cpp:
   9923         (WebCore::InsertParagraphSeparatorCommand::applyStyleAfterInsertion): Removed FIXME.
   9924         * editing/InsertTextCommand.cpp:
   9925         (WebCore::InsertTextCommand::input): Removed FIXME.
   9926         * editing/ReplaceSelectionCommand.cpp:
   9927         (WebCore::ReplaceSelectionCommand::doApply): Removed FIXME and also added one about clearing
   9928         the typing style here.  It seems like it's something that could wait until after the command
   9929         has been performed, since there is no code between this point and the end of the operation
   9930         that queries or uses the typing style.
   9931 
   9932 2008-06-19  Dan Bernstein  <mitz (a] apple.com>
   9933 
   9934         Reviewed by Alexey Proskuryakov.
   9935 
   9936         - fix crash in CSSStyleDeclaration::copyPropertiesInSet()
   9937 
   9938         Covered by many editing tests
   9939 
   9940         * css/CSSStyleDeclaration.cpp:
   9941         (WebCore::CSSStyleDeclaration::copyPropertiesInSet): Re-ordered to avoid
   9942         null pointer deref.
   9943 
   9944 2008-06-19  David Hyatt  <hyatt (a] apple.com>
   9945 
   9946         Fix out of bounds bug in CSSVariablesDeclaration's item() method.
   9947 
   9948         Reviewed by Sam, Darin
   9949 
   9950         * css/CSSVariablesDeclaration.cpp:
   9951         (WebCore::CSSVariablesDeclaration::item):
   9952         * css/CSSVariablesDeclaration.h:
   9953 
   9954 2008-06-19  John Sullivan  <sullivan (a] apple.com>
   9955 
   9956         Reviewed by Darin
   9957         
   9958         Tweak to previous checkin
   9959 
   9960         * page/FrameView.cpp:
   9961         (WebCore::FrameView::performPostLayoutTasks):
   9962         clear m_firstLayoutCallbackPending before performing callback, to avoid recursion
   9963 
   9964 2008-06-19  John Sullivan  <sullivan (a] apple.com>
   9965 
   9966         Reviewed by Darin
   9967         
   9968         - fixed <rdar://problem/6021353> Assertion failure (!root->needsLayout()) after certain steps
   9969         
   9970         The didFirstLayout callback was called in a place where trouble would ensue if the client
   9971         did any work that would cause the layout to be dirtied. Fixed by delaying the callback
   9972         until performPostLayoutTasks.
   9973 
   9974         * page/FrameView.cpp:
   9975         new m_firstLayoutCallbackPending instance member variable in FrameViewPrivate
   9976         (WebCore::FrameViewPrivate::reset):
   9977         set m_firstLayoutCallbackPending to false
   9978         (WebCore::FrameView::layout):
   9979         set m_firstLayoutCallbackPending instead of a local variable; don't do didFirstLayout callback here
   9980         (WebCore::FrameView::performPostLayoutTasks):
   9981         if m_firstLayoutCallbackPending is set, do didFirstLayout callback here, then clear m_firstLayoutCallbackPending
   9982 
   9983 2008-06-19  David Hyatt  <hyatt (a] apple.com>
   9984 
   9985         Implement some cleanup of CSS variables based off Darin's review comments.
   9986 
   9987         Reviewed by darin
   9988 
   9989         * css/CSSParser.cpp:
   9990         (WebCore::CSSParser::parseVariable):
   9991         (WebCore::CSSParser::checkForVariables):
   9992         (WebCore::CSSParser::addUnresolvedProperty):
   9993         * css/CSSStyleSelector.cpp:
   9994         (WebCore::CSSStyleSelector::addMatchedDeclaration):
   9995         * css/CSSVariableDependentValue.h:
   9996         * css/CSSVariablesRule.cpp:
   9997         (WebCore::CSSVariablesRule::CSSVariablesRule):
   9998 
   9999 2008-06-19  John Sullivan  <sullivan (a] apple.com>
   10000 
   10001         Rubber-stamped by Dan
   10002         
   10003         Prepended all FrameViewPrivate instance member variables with "m_" (in preparation
   10004         for adding a new one in a future patch)
   10005 
   10006         * page/FrameView.cpp:
   10007         (WebCore::FrameViewPrivate::FrameViewPrivate):
   10008         (WebCore::FrameViewPrivate::reset):
   10009         (WebCore::FrameView::~FrameView):
   10010         (WebCore::FrameView::resetScrollbars):
   10011         (WebCore::FrameView::didFirstLayout):
   10012         (WebCore::FrameView::initScrollbars):
   10013         (WebCore::FrameView::layoutCount):
   10014         (WebCore::FrameView::needsFullRepaint):
   10015         (WebCore::FrameView::layoutRoot):
   10016         (WebCore::FrameView::layout):
   10017         (WebCore::FrameView::scrollTo):
   10018         (WebCore::FrameView::useSlowRepaints):
   10019         (WebCore::FrameView::setUseSlowRepaints):
   10020         (WebCore::FrameView::removeSlowRepaintObject):
   10021         (WebCore::FrameView::setScrollbarsMode):
   10022         (WebCore::FrameView::setVScrollbarMode):
   10023         (WebCore::FrameView::setHScrollbarMode):
   10024         (WebCore::FrameView::scheduleRelayout):
   10025         (WebCore::FrameView::scheduleRelayoutOfSubtree):
   10026         (WebCore::FrameView::layoutPending):
   10027         (WebCore::FrameView::needsLayout):
   10028         (WebCore::FrameView::unscheduleRelayout):
   10029         (WebCore::FrameView::isTransparent):
   10030         (WebCore::FrameView::setTransparent):
   10031         (WebCore::FrameView::baseBackgroundColor):
   10032         (WebCore::FrameView::setBaseBackgroundColor):
   10033         (WebCore::FrameView::performPostLayoutTasks):
   10034         (WebCore::FrameView::updateOverflowStatus):
   10035 
   10036 2008-06-19  David Hyatt  <hyatt (a] apple.com>
   10037 
   10038         Add initial support for CSS variables.  Non-dynamic cases should (hopefully) all work.  Things will get
   10039         confused if you use the CSS OM to remove variables/inject variables, etc.  In addition no DOM APIs are
   10040         exposed yet for the new variable interfaces.
   10041 
   10042         Reviewed by Beth
   10043 
   10044         Added many tests to fast/css/variables/
   10045 
   10046         * WebCore.xcodeproj/project.pbxproj:
   10047         * css/CSSFunctionValue.cpp: Added.
   10048         (WebCore::CSSFunctionValue::CSSFunctionValue):
   10049         (WebCore::CSSFunctionValue::~CSSFunctionValue):
   10050         (WebCore::CSSFunctionValue::cssText):
   10051         (WebCore::CSSFunctionValue::parserValue):
   10052         * css/CSSFunctionValue.h: Added.
   10053         (WebCore::CSSFunctionValue::create):
   10054         * css/CSSGrammar.y:
   10055         * css/CSSMutableStyleDeclaration.cpp:
   10056         (WebCore::CSSMutableStyleDeclaration::CSSMutableStyleDeclaration):
   10057         (WebCore::CSSMutableStyleDeclaration::copy):
   10058         * css/CSSMutableStyleDeclaration.h:
   10059         (WebCore::CSSMutableStyleDeclaration::create):
   10060         (WebCore::CSSMutableStyleDeclaration::hasVariableDependentValue):
   10061         * css/CSSParser.cpp:
   10062         (WebCore::equal):
   10063         (WebCore::equalIgnoringCase):
   10064         (WebCore::CSSParser::~CSSParser):
   10065         (WebCore::CSSParserString::lower):
   10066         (WebCore::CSSParser::document):
   10067         (WebCore::CSSParser::validUnit):
   10068         (WebCore::unitFromString):
   10069         (WebCore::CSSParser::checkForOrphanedUnits):
   10070         (WebCore::CSSParser::parseValue):
   10071         (WebCore::CSSParser::parseFillShorthand):
   10072         (WebCore::CSSParser::parseTransitionShorthand):
   10073         (WebCore::CSSParser::parseContent):
   10074         (WebCore::CSSParser::parseFillImage):
   10075         (WebCore::CSSParser::parseFillPosition):
   10076         (WebCore::CSSParser::parseFillSize):
   10077         (WebCore::CSSParser::parseFillProperty):
   10078         (WebCore::CSSParser::parseTransitionDuration):
   10079         (WebCore::CSSParser::parseTransitionRepeatCount):
   10080         (WebCore::CSSParser::parseTimingFunctionValue):
   10081         (WebCore::CSSParser::parseTransitionTimingFunction):
   10082         (WebCore::CSSParser::parseTransitionProperty):
   10083         (WebCore::skipCommaInDashboardRegion):
   10084         (WebCore::CSSParser::parseDashboardRegions):
   10085         (WebCore::CSSParser::parseCounterContent):
   10086         (WebCore::CSSParser::parseShape):
   10087         (WebCore::CSSParser::parseFont):
   10088         (WebCore::CSSParser::parseFontFamily):
   10089         (WebCore::CSSParser::parseFontFaceSrc):
   10090         (WebCore::CSSParser::parseFontFaceUnicodeRange):
   10091         (WebCore::CSSParser::parseColorParameters):
   10092         (WebCore::CSSParser::parseHSLParameters):
   10093         (WebCore::CSSParser::parseColor):
   10094         (WebCore::CSSParser::parseColorFromValue):
   10095         (WebCore::ShadowParseContext::commitLength):
   10096         (WebCore::CSSParser::parseShadow):
   10097         (WebCore::CSSParser::parseReflect):
   10098         (WebCore::BorderImageParseContext::commitNumber):
   10099         (WebCore::BorderImageParseContext::commitWidth):
   10100         (WebCore::BorderImageParseContext::commitBorderImage):
   10101         (WebCore::CSSParser::parseBorderImage):
   10102         (WebCore::CSSParser::parseCounter):
   10103         (WebCore::parseGradientPoint):
   10104         (WebCore::parseGradientColorStop):
   10105         (WebCore::CSSParser::parseGradient):
   10106         (WebCore::CSSParser::parseCanvas):
   10107         (WebCore::TransformOperationInfo::TransformOperationInfo):
   10108         (WebCore::CSSParser::parseTransform):
   10109         (WebCore::CSSParser::lex):
   10110         (WebCore::CSSParser::text):
   10111         (WebCore::CSSParser::createFloatingValueList):
   10112         (WebCore::CSSParser::sinkFloatingValueList):
   10113         (WebCore::CSSParser::createFloatingFunction):
   10114         (WebCore::CSSParser::sinkFloatingFunction):
   10115         (WebCore::CSSParser::sinkFloatingValue):
   10116         (WebCore::CSSParser::createFloatingMediaQueryExp):
   10117         (WebCore::CSSParser::createCharsetRule):
   10118         (WebCore::CSSParser::createImportRule):
   10119         (WebCore::CSSParser::createVariablesRule):
   10120         (WebCore::CSSParser::addVariable):
   10121         (WebCore::CSSParser::clearVariables):
   10122         (WebCore::CSSParser::parseVariable):
   10123         (WebCore::CSSParser::parsePropertyWithResolvedVariables):
   10124         (WebCore::CSSParser::checkForVariables):
   10125         (WebCore::CSSParser::addUnresolvedProperty):
   10126         (WebCore::cssPropertyID):
   10127         (WebCore::cssValueKeywordID):
   10128         * css/CSSParser.h:
   10129         * css/CSSParserValues.cpp: Added.
   10130         (WebCore::CSSParserValueList::~CSSParserValueList):
   10131         (WebCore::CSSParserValueList::addValue):
   10132         (WebCore::CSSParserValueList::deleteValueAt):
   10133         (WebCore::CSSParserValue::createCSSValue):
   10134         * css/CSSParserValues.h: Added.
   10135         (WebCore::CSSParserString::operator String):
   10136         (WebCore::CSSParserString::operator AtomicString):
   10137         (WebCore::CSSParserValue::):
   10138         (WebCore::CSSParserValueList::CSSParserValueList):
   10139         (WebCore::CSSParserValueList::size):
   10140         (WebCore::CSSParserValueList::current):
   10141         (WebCore::CSSParserValueList::next):
   10142         (WebCore::CSSParserValueList::valueAt):
   10143         (WebCore::CSSParserValueList::clear):
   10144         (WebCore::CSSParserValueList::containsVariables):
   10145         (WebCore::CSSParserFunction::~CSSParserFunction):
   10146         * css/CSSPrimitiveValue.cpp:
   10147         (WebCore::CSSPrimitiveValue::getStringValue):
   10148         (WebCore::CSSPrimitiveValue::cssText):
   10149         (WebCore::CSSPrimitiveValue::parserValue):
   10150         * css/CSSPrimitiveValue.h:
   10151         (WebCore::CSSPrimitiveValue::):
   10152         (WebCore::CSSPrimitiveValue::setPrimitiveType):
   10153         * css/CSSRule.h:
   10154         (WebCore::CSSRule::):
   10155         * css/CSSRule.idl:
   10156         * css/CSSStyleDeclaration.cpp:
   10157         (WebCore::CSSStyleDeclaration::copyPropertiesInSet):
   10158         * css/CSSStyleSelector.cpp:
   10159         (WebCore::CSSStyleSelector::addMatchedDeclaration):
   10160         (WebCore::CSSStyleSelector::addVariables):
   10161         (WebCore::CSSStyleSelector::resolveVariableDependentValue):
   10162         (WebCore::CSSRuleSet::addRulesFromSheet):
   10163         (WebCore::CSSStyleSelector::applyDeclarations):
   10164         * css/CSSStyleSelector.h:
   10165         * css/CSSValue.h:
   10166         (WebCore::CSSValue::isVariableDependentValue):
   10167         (WebCore::CSSValue::parserValue):
   10168         * css/CSSValueList.cpp:
   10169         (WebCore::CSSValueList::CSSValueList):
   10170         (WebCore::CSSValueList::createParserValueList):
   10171         * css/CSSValueList.h:
   10172         (WebCore::CSSValueList::createFromParserValueList):
   10173         * css/CSSVariableDependentValue.cpp: Added.
   10174         (WebCore::CSSVariableDependentValue::CSSVariableDependentValue):
   10175         (WebCore::CSSVariableDependentValue::~CSSVariableDependentValue):
   10176         (WebCore::CSSVariableDependentValue::cssText):
   10177         * css/CSSVariableDependentValue.h: Added.
   10178         (WebCore::CSSVariableDependentValue::create):
   10179         (WebCore::CSSVariableDependentValue::isVariableDependentValue):
   10180         (WebCore::CSSVariableDependentValue::valueList):
   10181         * css/CSSVariablesDeclaration.cpp: Added.
   10182         (WebCore::CSSVariablesDeclaration::CSSVariablesDeclaration):
   10183         (WebCore::CSSVariablesDeclaration::~CSSVariablesDeclaration):
   10184         (WebCore::CSSVariablesDeclaration::getVariableValue):
   10185         (WebCore::CSSVariablesDeclaration::removeVariable):
   10186         (WebCore::CSSVariablesDeclaration::setVariable):
   10187         (WebCore::CSSVariablesDeclaration::addParsedVariable):
   10188         (WebCore::CSSVariablesDeclaration::getParsedVariable):
   10189         (WebCore::CSSVariablesDeclaration::length):
   10190         (WebCore::CSSVariablesDeclaration::item):
   10191         (WebCore::CSSVariablesDeclaration::parentRule):
   10192         (WebCore::CSSVariablesDeclaration::cssText):
   10193         * css/CSSVariablesDeclaration.h: Added.
   10194         (WebCore::CSSVariablesDeclaration::create):
   10195         * css/CSSVariablesRule.cpp: Added.
   10196         (WebCore::CSSVariablesRule::CSSVariablesRule):
   10197         (WebCore::CSSVariablesRule::~CSSVariablesRule):
   10198         (WebCore::CSSVariablesRule::cssText):
   10199         * css/CSSVariablesRule.h: Added.
   10200         (WebCore::CSSVariablesRule::media):
   10201         (WebCore::CSSVariablesRule::variables):
   10202         (WebCore::CSSVariablesRule::type):
   10203         (WebCore::CSSVariablesRule::isVariablesRule):
   10204         (WebCore::CSSVariablesRule::setDeclaration):
   10205         * css/MediaQueryExp.cpp:
   10206         (WebCore::MediaQueryExp::MediaQueryExp):
   10207         * css/MediaQueryExp.h:
   10208         * css/SVGCSSParser.cpp:
   10209         (WebCore::CSSParser::parseSVGValue):
   10210         (WebCore::CSSParser::parseSVGStrokeDasharray):
   10211         * css/StyleBase.h:
   10212         (WebCore::StyleBase::isVariablesRule):
   10213         * css/tokenizer.flex:
   10214 
   10215 2008-06-19  Julien Chaffraix  <jchaffraix (a] webkit.org>
   10216 
   10217         Reviewed by Darin.
   10218 
   10219         Bug 19529 : Empty clients need to be refactored
   10220         https://bugs.webkit.org/show_bug.cgi?id=19529
   10221 
   10222         - SVGImageEmptyClients' refactoring in order to be able to use them for other
   10223         elements.
   10224 
   10225         - Trimmed empty spaces that were pointed out by git.
   10226 
   10227         * WebCore.xcodeproj/project.pbxproj:
   10228         * loader/EmptyClients.h: Copied from WebCore/svg/graphics/SVGImageEmptyClients.h.
   10229 
   10230         (WebCore::EmptyChromeClient::~EmptyChromeClient):
   10231         (WebCore::EmptyFrameLoaderClient::~EmptyFrameLoaderClient):
   10232         (WebCore::EmptyEditorClient::~EmptyEditorClient):
   10233         (WebCore::EmptyEditorClient::smartInsertDeleteEnabled):
   10234         (WebCore::EmptyContextMenuClient::~EmptyContextMenuClient):
   10235         (WebCore::EmptyDragClient::~EmptyDragClient):
   10236         (WebCore::EmptyDragClient::createDragImageForLink):
   10237         (WebCore::EmptyInspectorClient::~EmptyInspectorClient):
   10238         Renamed SVGImageEmpty*Client classes to Empty*Client.
   10239 
   10240         * svg/graphics/SVGImage.cpp:
   10241         (WebCore::SVGImage::dataChanged):
   10242         * svg/graphics/SVGImageEmptyClients.h: Removed.
   10243 
   10244 2008-06-19  Dan Bernstein  <mitz (a] apple.com>
   10245 
   10246         Reviewed by Darin Adler.
   10247 
   10248         - fix <rdar://problem/6008098> REGRESSION: Crash at FontFallbackList::fontDataAt()
   10249 
   10250         Test: fast/css/font-face-multiple-families.html
   10251 
   10252         Made changes to reflect the fact that the relationship between
   10253         CSSFontFace and CSSSegmentedFontFace is in fact many-to-many.
   10254 
   10255         * css/CSSFontFace.cpp:
   10256         (WebCore::CSSFontFace::addedToSegmentedFontFace): Added.
   10257         (WebCore::CSSFontFace::removedFromSegmentedFontFace): Added.
   10258         (WebCore::CSSFontFace::fontLoaded): Changed to notify all segmented font
   10259         faces that include this font face.
   10260         (WebCore::CSSFontFace::getFontData): Updated to get the font selector
   10261         from one of the segmented font faces.
   10262         * css/CSSFontFace.h:
   10263         (WebCore::CSSFontFace::CSSFontFace):
   10264         * css/CSSFontSelector.cpp:
   10265         (WebCore::CSSFontSelector::addFontFaceRule): Fixed the direct cause of
   10266         the crash, namely releasing the font face when adding it to the first
   10267         family that uses it, making it impossible to add it to the second and
   10268         onwards families.
   10269         * css/CSSSegmentedFontFace.cpp:
   10270         (WebCore::CSSSegmentedFontFace::~CSSSegmentedFontFace): Added code to
   10271         call CSSFontFace::removedFromSegmentedFontFace().
   10272         (WebCore::CSSSegmentedFontFace::overlayRange): Added code to call
   10273         CSSFontFace::{addedTo, removedFrom}SegmentedFontFace().
   10274 
   10275 2008-06-19  Alexey Proskuryakov  <ap (a] webkit.org>
   10276 
   10277         Qt build fix.
   10278 
   10279         * bridge/qt/qt_runtime.h: Include completion.h.
   10280 
   10281 2008-06-17  Alexey Proskuryakov  <ap (a] webkit.org>
   10282 
   10283         Reviewed by Darin.
   10284 
   10285         Prepare JavaScript heap for being per-thread.
   10286 
   10287         * ForwardingHeaders/kjs/JSGlobalData.h: Added.
   10288         * bindings/js/GCController.cpp:
   10289         (WebCore::collect):
   10290         (WebCore::GCController::gcTimerFired):
   10291         (WebCore::GCController::garbageCollectNow):
   10292         * bindings/js/JSAudioConstructor.cpp:
   10293         (WebCore::JSAudioConstructor::JSAudioConstructor):
   10294         * bindings/js/JSCSSRuleCustom.cpp:
   10295         (WebCore::toJS):
   10296         * bindings/js/JSCSSStyleDeclarationCustom.cpp:
   10297         (WebCore::JSCSSStyleDeclaration::nameGetter):
   10298         * bindings/js/JSCSSValueCustom.cpp:
   10299         (WebCore::toJS):
   10300         * bindings/js/JSCanvasPixelArrayCustom.cpp:
   10301         (WebCore::JSCanvasPixelArray::indexGetter):
   10302         (WebCore::toJS):
   10303         * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
   10304         (WebCore::toJS):
   10305         * bindings/js/JSClipboardCustom.cpp:
   10306         (WebCore::JSClipboard::types):
   10307         (WebCore::JSClipboard::getData):
   10308         * bindings/js/JSCustomXPathNSResolver.cpp:
   10309         (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
   10310         * bindings/js/JSDOMApplicationCacheCustom.cpp:
   10311         (WebCore::JSDOMApplicationCache::addEventListener):
   10312         (WebCore::JSDOMApplicationCache::removeEventListener):
   10313         (WebCore::JSDOMApplicationCache::setOnchecking):
   10314         (WebCore::JSDOMApplicationCache::setOnerror):
   10315         (WebCore::JSDOMApplicationCache::setOnnoupdate):
   10316         (WebCore::JSDOMApplicationCache::setOndownloading):
   10317         (WebCore::JSDOMApplicationCache::setOnprogress):
   10318         (WebCore::JSDOMApplicationCache::setOnupdateready):
   10319         (WebCore::JSDOMApplicationCache::setOncached):
   10320         * bindings/js/JSDOMBinding.cpp:
   10321         (WebCore::jsStringOrNull):
   10322         (WebCore::jsOwnedStringOrNull):
   10323         (WebCore::jsStringOrUndefined):
   10324         (WebCore::jsStringOrFalse):
   10325         (WebCore::nonCachingStaticFunctionGetter):
   10326         (WebCore::objectToStringFunctionGetter):
   10327         * bindings/js/JSDOMBinding.h:
   10328         (WebCore::DOMObject::DOMObject):
   10329         (WebCore::cacheDOMObject):
   10330         (WebCore::cacheSVGDOMObject):
   10331         * bindings/js/JSDOMWindowBase.cpp:
   10332         (WebCore::JSDOMWindowBase::JSDOMWindowBase):
   10333         (WebCore::JSDOMWindowBase::getValueProperty):
   10334         (WebCore::JSDOMWindowBase::setListener):
   10335         (WebCore::JSDOMWindowBase::findOrCreateJSEventListener):
   10336         (WebCore::JSDOMWindowBase::findJSUnprotectedEventListener):
   10337         (WebCore::JSDOMWindowBase::findOrCreateJSUnprotectedEventListener):
   10338         (WebCore::windowProtoFuncAToB):
   10339         (WebCore::windowProtoFuncBToA):
   10340         (WebCore::windowProtoFuncSetTimeout):
   10341         (WebCore::windowProtoFuncSetInterval):
   10342         (WebCore::windowProtoFuncAddEventListener):
   10343         * bindings/js/JSDOMWindowBase.h:
   10344         * bindings/js/JSDOMWindowShell.cpp:
   10345         (WebCore::JSDOMWindowShell::operator new):
   10346         * bindings/js/JSDOMWindowShell.h:
   10347         * bindings/js/JSDocumentCustom.cpp:
   10348         (WebCore::toJS):
   10349         * bindings/js/JSElementCustom.cpp:
   10350         (WebCore::toJSNewlyCreated):
   10351         * bindings/js/JSEventCustom.cpp:
   10352         (WebCore::toJS):
   10353         * bindings/js/JSEventListener.cpp:
   10354         (WebCore::JSLazyEventListener::eventParameterName):
   10355         (WebCore::JSLazyEventListener::parseCode):
   10356         * bindings/js/JSEventTargetBase.cpp:
   10357         (WebCore::jsEventTargetAddEventListener):
   10358         * bindings/js/JSEventTargetBase.h:
   10359         (WebCore::JSEventTargetPrototype::self):
   10360         * bindings/js/JSEventTargetNode.cpp:
   10361         (WebCore::JSEventTargetNode::setListener):
   10362         * bindings/js/JSHTMLCollectionCustom.cpp:
   10363         (WebCore::getNamedItems):
   10364         (WebCore::toJS):
   10365         * bindings/js/JSHTMLFormElementCustom.cpp:
   10366         (WebCore::JSHTMLFormElement::nameGetter):
   10367         * bindings/js/JSHTMLInputElementBase.cpp:
   10368         (WebCore::JSHTMLInputElementBase::getValueProperty):
   10369         * bindings/js/JSHTMLOptionElementConstructor.cpp:
   10370         (WebCore::JSHTMLOptionElementConstructor::JSHTMLOptionElementConstructor):
   10371         * bindings/js/JSHTMLOptionsCollectionCustom.cpp:
   10372         (WebCore::JSHTMLOptionsCollection::length):
   10373         * bindings/js/JSInspectedObjectWrapper.cpp:
   10374         (WebCore::JSInspectedObjectWrapper::wrap):
   10375         * bindings/js/JSInspectorCallbackWrapper.cpp:
   10376         (WebCore::JSInspectorCallbackWrapper::wrap):
   10377         * bindings/js/JSLocationCustom.cpp:
   10378         (WebCore::JSLocation::toString):
   10379         * bindings/js/JSNamedNodesCollection.cpp:
   10380         (WebCore::JSNamedNodesCollection::lengthGetter):
   10381         * bindings/js/JSNavigatorCustom.cpp:
   10382         (WebCore::JSNavigator::appVersion):
   10383         * bindings/js/JSNodeCustom.cpp:
   10384         (WebCore::createWrapper):
   10385         * bindings/js/JSNodeFilterCustom.cpp:
   10386         (WebCore::JSNodeFilter::acceptNode):
   10387         * bindings/js/JSPluginElementFunctions.cpp:
   10388         (WebCore::getRuntimeObject):
   10389         * bindings/js/JSRGBColor.cpp:
   10390         (WebCore::getJSRGBColor):
   10391         * bindings/js/JSSQLResultSetRowListCustom.cpp:
   10392         (WebCore::JSSQLResultSetRowList::item):
   10393         * bindings/js/JSSVGLazyEventListener.cpp:
   10394         (WebCore::JSSVGLazyEventListener::eventParameterName):
   10395         * bindings/js/JSStorageCustom.cpp:
   10396         (WebCore::JSStorage::nameGetter):
   10397         * bindings/js/JSStyleSheetCustom.cpp:
   10398         (WebCore::toJS):
   10399         * bindings/js/JSTextCustom.cpp:
   10400         (WebCore::toJSNewlyCreated):
   10401         * bindings/js/JSXMLHttpRequestConstructor.cpp:
   10402         (WebCore::JSXMLHttpRequestConstructor::construct):
   10403         * bindings/js/JSXMLHttpRequestCustom.cpp:
   10404         (WebCore::JSXMLHttpRequest::setOnreadystatechange):
   10405         (WebCore::JSXMLHttpRequest::setOnload):
   10406         (WebCore::JSXMLHttpRequest::setOnprogress):
   10407         (WebCore::JSXMLHttpRequest::getResponseHeader):
   10408         (WebCore::JSXMLHttpRequest::addEventListener):
   10409         (WebCore::JSXMLHttpRequest::removeEventListener):
   10410         * bindings/js/JSXSLTProcessorConstructor.cpp:
   10411         (WebCore::JSXSLTProcessorConstructor::construct):
   10412         * bindings/js/JSXSLTProcessorCustom.cpp:
   10413         (WebCore::JSXSLTProcessor::getParameter):
   10414         * bindings/scripts/CodeGeneratorJS.pm:
   10415         * bridge/c/c_instance.cpp:
   10416         (KJS::Bindings::CInstance::defaultValue):
   10417         (KJS::Bindings::CInstance::stringValue):
   10418         (KJS::Bindings::CInstance::numberValue):
   10419         (KJS::Bindings::CInstance::valueOf):
   10420         * bridge/c/c_instance.h:
   10421         * bridge/c/c_utility.cpp:
   10422         (KJS::Bindings::convertNPVariantToValue):
   10423         * bridge/jni/jni_instance.cpp:
   10424         (JavaInstance::stringValue):
   10425         (JavaInstance::numberValue):
   10426         (JavaInstance::invokeMethod):
   10427         (JavaInstance::defaultValue):
   10428         (JavaInstance::valueOf):
   10429         * bridge/jni/jni_instance.h:
   10430         * bridge/jni/jni_jsobject.h:
   10431         * bridge/jni/jni_jsobject.mm:
   10432         (JavaJSObject::call):
   10433         (JavaJSObject::setMember):
   10434         (JavaJSObject::setSlot):
   10435         (JavaJSObject::convertJObjectToValue):
   10436         (JavaJSObject::getListFromJArray):
   10437         * bridge/jni/jni_objc.mm:
   10438         (KJS::Bindings::dispatchJNICall):
   10439         * bridge/jni/jni_runtime.cpp:
   10440         (JavaArray::convertJObjectToArray):
   10441         (JavaField::dispatchValueFromInstance):
   10442         (JavaField::valueFromInstance):
   10443         (JavaField::dispatchSetValueToInstance):
   10444         (JavaArray::valueAt):
   10445         * bridge/jni/jni_utility.h:
   10446         * bridge/objc/objc_class.mm:
   10447         (KJS::Bindings::ObjcClass::fallbackObject):
   10448         * bridge/objc/objc_instance.h:
   10449         * bridge/objc/objc_instance.mm:
   10450         (ObjcInstance::defaultValue):
   10451         (ObjcInstance::stringValue):
   10452         (ObjcInstance::numberValue):
   10453         (ObjcInstance::valueOf):
   10454         * bridge/objc/objc_utility.h:
   10455         * bridge/objc/objc_utility.mm:
   10456         (KJS::Bindings::convertNSStringToString):
   10457         (KJS::Bindings::convertObjcValueToValue):
   10458         * bridge/runtime.cpp:
   10459         (KJS::Bindings::Instance::createRuntimeObject):
   10460         * bridge/runtime.h:
   10461         (KJS::Bindings::Instance::valueOf):
   10462         * bridge/runtime_array.cpp:
   10463         (RuntimeArray::lengthGetter):
   10464         * bridge/runtime_method.cpp:
   10465         (RuntimeMethod::lengthGetter):
   10466         * bridge/runtime_object.cpp:
   10467         (RuntimeObjectImp::RuntimeObjectImp):
   10468         (RuntimeObjectImp::methodGetter):
   10469         (RuntimeObjectImp::defaultValue):
   10470         * dom/make_names.pl:
   10471         * xml/XMLHttpRequest.cpp:
   10472         (WebCore::XMLHttpRequest::dropProtection):
   10473         * bridge/qt/qt_class.cpp:
   10474         (KJS::Bindings::QtClass::fallbackObject):
   10475         * bridge/qt/qt_instance.cpp:
   10476         (KJS::Bindings::QtRuntimeObjectImp::construct):
   10477         (KJS::Bindings::QtInstance::getRuntimeObject):
   10478         (KJS::Bindings::QtInstance::invokeDefaultMethod):
   10479         (KJS::Bindings::QtInstance::defaultValue):
   10480         (KJS::Bindings::QtInstance::stringValue):
   10481         (KJS::Bindings::QtInstance::numberValue):
   10482         (KJS::Bindings::QtInstance::valueOf):
   10483         * bridge/qt/qt_instance.h:
   10484         * bridge/qt/qt_runtime.cpp:
   10485         (KJS::Bindings::convertValueToQVariant):
   10486         (KJS::Bindings::convertQVariantToValue):
   10487         (KJS::Bindings::QtRuntimeMetaMethod::lengthGetter):
   10488         (KJS::Bindings::QtRuntimeMetaMethod::connectGetter):
   10489         (KJS::Bindings::QtRuntimeMetaMethod::disconnectGetter):
   10490         (KJS::Bindings::QtRuntimeConnectionMethod::lengthGetter):
   10491         (KJS::Bindings::QtConnectionObject::execute):
   10492         Pass ExecState* where now required.
   10493 
   10494 2008-06-19  Timothy Hatcher  <timothy (a] apple.com>
   10495 
   10496         Update the JavaScript syntax highlight colors to match Xcode.
   10497         This matches the other Xcode colors we are using for HTML.
   10498 
   10499         Reviewed by Dan Bernstein.
   10500 
   10501         * page/inspector/SourceFrame.js:
   10502 
   10503 2008-06-19  Keishi Hattori  <casey.hattori (a] gmail.com>
   10504 
   10505         Added JavaScript syntax highlighting to the Web Inspector.
   10506 
   10507         https://bugs.webkit.org/show_bug.cgi?id=14360
   10508 
   10509         Reviewed by Tim Hatcher and Adam Roben.
   10510 
   10511         * page/inspector/ScriptView.js: Added a call to syntaxHighlightJavascript.
   10512         * page/inspector/SourceFrame.js:
   10513         (WebInspector.SourceFrame.prototype._syntaxHighlightJavascriptLine): Added.
   10514         Modifies a line content element.
   10515         (WebInspector.SourceFrame.prototype.syntaxHighlightJavascript): Added.
   10516         Syntax highlights the entire script.
   10517         * page/inspector/SourceView.js: Added a call to syntaxHighlightJavascript.
   10518 
   10519 2008-06-19  Alex Mathews  <possessedpenguinbob (a] gmail.com>
   10520 
   10521         Reviewed by Oliver.
   10522 
   10523         Starting to clean up the SVG Filter code. Mostly adding 'create' wrapper
   10524         functions and changing raw pointer fields to RefPtrs.
   10525 
   10526         * Configurations/WebCore.xcconfig:
   10527         * WebCore.xcodeproj/project.pbxproj:
   10528         * svg/SVGFEBlendElement.cpp:
   10529         (WebCore::SVGFEBlendElement::~SVGFEBlendElement):
   10530         (WebCore::SVGFEBlendElement::filterEffect):
   10531         * svg/SVGFEBlendElement.h:
   10532         * svg/SVGFEColorMatrixElement.cpp:
   10533         (WebCore::SVGFEColorMatrixElement::~SVGFEColorMatrixElement):
   10534         (WebCore::SVGFEColorMatrixElement::filterEffect):
   10535         * svg/SVGFEColorMatrixElement.h:
   10536         * svg/SVGFEComponentTransferElement.cpp:
   10537         (WebCore::SVGFEComponentTransferElement::~SVGFEComponentTransferElement):
   10538         (WebCore::SVGFEComponentTransferElement::filterEffect):
   10539         * svg/SVGFEComponentTransferElement.h:
   10540         * svg/SVGFECompositeElement.cpp:
   10541         (WebCore::SVGFECompositeElement::~SVGFECompositeElement):
   10542         (WebCore::SVGFECompositeElement::filterEffect):
   10543         * svg/SVGFECompositeElement.h:
   10544         * svg/SVGFEDiffuseLightingElement.cpp:
   10545         (WebCore::SVGFEDiffuseLightingElement::~SVGFEDiffuseLightingElement):
   10546         (WebCore::SVGFEDiffuseLightingElement::filterEffect):
   10547         * svg/SVGFEDiffuseLightingElement.h:
   10548         * svg/SVGFEDisplacementMapElement.cpp:
   10549         (WebCore::SVGFEDisplacementMapElement::~SVGFEDisplacementMapElement):
   10550         (WebCore::SVGFEDisplacementMapElement::filterEffect):
   10551         * svg/SVGFEDisplacementMapElement.h:
   10552         * svg/SVGFEFloodElement.cpp:
   10553         (WebCore::SVGFEFloodElement::~SVGFEFloodElement):
   10554         (WebCore::SVGFEFloodElement::filterEffect):
   10555         * svg/SVGFEFloodElement.h:
   10556         * svg/SVGFEGaussianBlurElement.cpp:
   10557         (WebCore::SVGFEGaussianBlurElement::~SVGFEGaussianBlurElement):
   10558         (WebCore::SVGFEGaussianBlurElement::filterEffect):
   10559         * svg/SVGFEGaussianBlurElement.h:
   10560         * svg/SVGFEImageElement.cpp:
   10561         (WebCore::SVGFEImageElement::~SVGFEImageElement):
   10562         (WebCore::SVGFEImageElement::filterEffect):
   10563         * svg/SVGFEImageElement.h:
   10564         * svg/SVGFEMergeElement.cpp:
   10565         (WebCore::SVGFEMergeElement::~SVGFEMergeElement):
   10566         (WebCore::SVGFEMergeElement::filterEffect):
   10567         * svg/SVGFEMergeElement.h:
   10568         * svg/SVGFEOffsetElement.cpp:
   10569         (WebCore::SVGFEOffsetElement::~SVGFEOffsetElement):
   10570         (WebCore::SVGFEOffsetElement::filterEffect):
   10571         * svg/SVGFEOffsetElement.h:
   10572         * svg/SVGFESpecularLightingElement.cpp:
   10573         (WebCore::SVGFESpecularLightingElement::~SVGFESpecularLightingElement):
   10574         (WebCore::SVGFESpecularLightingElement::filterEffect):
   10575         * svg/SVGFESpecularLightingElement.h:
   10576         * svg/SVGFETileElement.cpp:
   10577         (WebCore::SVGFETileElement::~SVGFETileElement):
   10578         (WebCore::SVGFETileElement::filterEffect):
   10579         * svg/SVGFETileElement.h:
   10580         * svg/SVGFETurbulenceElement.cpp:
   10581         (WebCore::SVGFETurbulenceElement::~SVGFETurbulenceElement):
   10582         (WebCore::SVGFETurbulenceElement::filterEffect):
   10583         * svg/SVGFETurbulenceElement.h:
   10584         * svg/graphics/SVGResourceFilter.cpp:
   10585         (WebCore::SVGResourceFilter::addFilterEffect):
   10586         * svg/graphics/SVGResourceFilter.h:
   10587         * svg/graphics/filters/SVGFEBlend.cpp:
   10588         (WebCore::SVGFEBlend::create):
   10589         * svg/graphics/filters/SVGFEBlend.h:
   10590         * svg/graphics/filters/SVGFEColorMatrix.cpp:
   10591         (WebCore::SVGFEColorMatrix::create):
   10592         * svg/graphics/filters/SVGFEColorMatrix.h:
   10593         * svg/graphics/filters/SVGFEComponentTransfer.cpp:
   10594         (WebCore::SVGFEComponentTransfer::create):
   10595         * svg/graphics/filters/SVGFEComponentTransfer.h:
   10596         * svg/graphics/filters/SVGFEComposite.cpp:
   10597         (WebCore::SVGFEComposite::create):
   10598         * svg/graphics/filters/SVGFEComposite.h:
   10599         * svg/graphics/filters/SVGFEConvolveMatrix.cpp:
   10600         (WebCore::SVGFEConvolveMatrix::create):
   10601         * svg/graphics/filters/SVGFEConvolveMatrix.h:
   10602         * svg/graphics/filters/SVGFEDiffuseLighting.cpp:
   10603         (WebCore::SVGFEDiffuseLighting::create):
   10604         (WebCore::SVGFEDiffuseLighting::~SVGFEDiffuseLighting):
   10605         (WebCore::SVGFEDiffuseLighting::lightSource):
   10606         (WebCore::SVGFEDiffuseLighting::setLightSource):
   10607         * svg/graphics/filters/SVGFEDiffuseLighting.h:
   10608         * svg/graphics/filters/SVGFEDisplacementMap.cpp:
   10609         (WebCore::SVGFEDisplacementMap::create):
   10610         * svg/graphics/filters/SVGFEDisplacementMap.h:
   10611         * svg/graphics/filters/SVGFEFlood.cpp:
   10612         (WebCore::SVGFEFlood::create):
   10613         * svg/graphics/filters/SVGFEFlood.h:
   10614         * svg/graphics/filters/SVGFEGaussianBlur.cpp:
   10615         (WebCore::SVGFEGaussianBlur::create):
   10616         * svg/graphics/filters/SVGFEGaussianBlur.h:
   10617         * svg/graphics/filters/SVGFEImage.cpp:
   10618         (WebCore::SVGFEImage::create):
   10619         * svg/graphics/filters/SVGFEImage.h:
   10620         * svg/graphics/filters/SVGFEMerge.cpp:
   10621         (WebCore::SVGFEMerge::SVGFEMerge):
   10622         (WebCore::SVGFEMerge::create):
   10623         * svg/graphics/filters/SVGFEMerge.h:
   10624         * svg/graphics/filters/SVGFEOffset.cpp:
   10625         (WebCore::SVGFEOffset::create):
   10626         * svg/graphics/filters/SVGFEOffset.h:
   10627         * svg/graphics/filters/SVGFESpecularLighting.cpp:
   10628         (WebCore::SVGFESpecularLighting::create):
   10629         (WebCore::SVGFESpecularLighting::~SVGFESpecularLighting):
   10630         (WebCore::SVGFESpecularLighting::lightSource):
   10631         (WebCore::SVGFESpecularLighting::setLightSource):
   10632         * svg/graphics/filters/SVGFESpecularLighting.h:
   10633         * svg/graphics/filters/SVGFETile.cpp: Added.
   10634         (WebCore::SVGFETile::SVGFETile):
   10635         (WebCore::SVGFETile::create):
   10636         * svg/graphics/filters/SVGFETile.h:
   10637         * svg/graphics/filters/SVGFETurbulence.cpp:
   10638         (WebCore::SVGFETurbulence::create):
   10639         * svg/graphics/filters/SVGFETurbulence.h:
   10640         * svg/graphics/filters/SVGFilterEffect.h:
   10641         * svg/graphics/filters/SVGLightSource.h:
   10642 
   10643 2008-06-18  Adele Peterson  <adele (a] apple.com>
   10644 
   10645         Reviewed by Dan Bernstein.
   10646 
   10647         Fix assertion in fast/dom/ImageDocument-image-deletion.html caused by new media document creation.
   10648 
   10649         * dom/DOMImplementation.cpp: (WebCore::DOMImplementation::createDocument):
   10650           Create the media document after we're done processing pdfs and images.
   10651 
   10652 192008-06-17  Dan Bernstein  <mitz (a] apple.com>
   10653 
   10654         Reviewed by Darin Adler.
   10655 
   10656         - fix https://bugs.webkit.org/show_bug.cgi?id=19598
   10657           Crash in WebCore::RenderBlock::determineStartPosition
   10658 
   10659         Test: fast/dynamic/floating-to-positioned-2.html
   10660 
   10661         * rendering/RenderObject.cpp:
   10662         (WebCore::RenderObject::setStyle): Changed to also remove relatively
   10663         positioned floats from object lists when they become positioned, because
   10664         then they cease to be floating.
   10665 
   10666 2008-06-18  Darin Adler  <darin (a] apple.com>
   10667 
   10668         Reviewed by Mark Rowe.
   10669 
   10670         - fix storage leak
   10671 
   10672         * css/CSSMutableStyleDeclaration.cpp:
   10673         (WebCore::CSSMutableStyleDeclaration::copy): Added an adoptRef that
   10674         I missed when changing these objects to start with a refcount of 1.
   10675 
   10676 2008-06-18  Timothy Hatcher  <timothy (a] apple.com>
   10677 
   10678         Add a script build phase to remove the WebKit.qrc file from
   10679         WebCore's resources. This file is used for the Qt port, but we
   10680         copy the whole inspector folder for connivence and get this file.
   10681 
   10682         Reviewed by Adam Roben.
   10683 
   10684         * WebCore.xcodeproj/project.pbxproj: New script phase.
   10685 
   10686 2008-06-18  Timothy Hatcher  <timothy (a] apple.com>
   10687 
   10688         Combine the Web Inspector's JavaScript resources into one large
   10689         script file to speed up loading of the Inspector. This is only
   10690         done for Release and Production builds.
   10691 
   10692         Reviewed by Adam Roben.
   10693 
   10694         * WebCore.xcodeproj/project.pbxproj: Added a Streamline Inspector Source
   10695         script build phase that calls combine-javascript-resources and
   10696         moves files around in the build directory.
   10697         * combine-javascript-resources: Added.
   10698 
   10699 2008-06-18  Rob Buis  <buis (a] kde.org>
   10700 
   10701         Reviewed by Darin.
   10702 
   10703         https://bugs.webkit.org/show_bug.cgi?id=18786
   10704         Once rendered, SVG text elements removed from DOM continue to be displayed
   10705 
   10706         Repaint the text visual rect before removing it.
   10707 
   10708         * rendering/RenderSVGInlineText.cpp:
   10709         (WebCore::RenderSVGInlineText::destroy):
   10710         * rendering/RenderSVGInlineText.h:
   10711 
   10712 2008-06-18  Christian Dywan  <christian (a] twotoasts.de>
   10713 
   10714         Gtk build fix, brought up by Dirk Schulze.
   10715 
   10716         * page/gtk/AccessibilityObjectWrapperAtk.cpp:
   10717 
   10718 2008-06-17  Beth Dakin  <bdakin (a] apple.com>
   10719 
   10720         Reviewed by Tim.
   10721 
   10722         This patch removes all instances of the phrase "TextMarker" from 
   10723         function names in the C++ accessibility code. TextMarkers only 
   10724         exists in the Objective-C code.
   10725 
   10726         * page/AccessibilityObject.cpp:
   10727         (WebCore::AccessibilityObject::visiblePositionRangeForLine):
   10728         (WebCore::AccessibilityObject::visiblePositionRangeForUnorderedPositions):
   10729         (WebCore::AccessibilityObject::positionOfLeftWord):
   10730         (WebCore::AccessibilityObject::positionOfRightWord):
   10731         (WebCore::AccessibilityObject::leftLineVisiblePositionRange):
   10732         (WebCore::AccessibilityObject::rightLineVisiblePositionRange):
   10733         (WebCore::AccessibilityObject::sentenceForPosition):
   10734         (WebCore::AccessibilityObject::paragraphForPosition):
   10735         (WebCore::AccessibilityObject::styleRangeForPosition):
   10736         (WebCore::AccessibilityObject::visiblePositionRangeForRange):
   10737         (WebCore::AccessibilityObject::stringForVisiblePositionRange):
   10738         (WebCore::AccessibilityObject::boundsForVisiblePositionRange):
   10739         (WebCore::AccessibilityObject::lengthForVisiblePositionRange):
   10740         (WebCore::AccessibilityObject::setSelectedVisiblePositionRange):
   10741         (WebCore::AccessibilityObject::visiblePositionForPoint):
   10742         (WebCore::AccessibilityObject::nextVisiblePosition):
   10743         (WebCore::AccessibilityObject::previousVisiblePosition):
   10744         (WebCore::AccessibilityObject::nextWordEnd):
   10745         (WebCore::AccessibilityObject::previousWordStart):
   10746         (WebCore::AccessibilityObject::nextLineEndPosition):
   10747         (WebCore::AccessibilityObject::previousLineStartPosition):
   10748         (WebCore::AccessibilityObject::nextSentenceEndPosition):
   10749         (WebCore::AccessibilityObject::previousSentenceStartPosition):
   10750         (WebCore::AccessibilityObject::nextParagraphEndPosition):
   10751         (WebCore::AccessibilityObject::previousParagraphStartPosition):
   10752         (WebCore::AccessibilityObject::visiblePositionForIndex):
   10753         (WebCore::AccessibilityObject::accessibilityObjectForPosition):
   10754         (WebCore::AccessibilityObject::lineForPosition):
   10755         (WebCore::AccessibilityObject::plainTextRangeForVisiblePositionRange):
   10756         (WebCore::AccessibilityObject::index):
   10757         (WebCore::AccessibilityObject::doAXRangeForPosition):
   10758         (WebCore::AccessibilityObject::doAXStyleRangeForIndex):
   10759         (WebCore::AccessibilityObject::doAXLineForIndex):
   10760         * page/AccessibilityObject.h:
   10761         * page/AccessibilityRenderObject.cpp:
   10762         (WebCore::AccessibilityRenderObject::visiblePositionRangeForLine):
   10763         (WebCore::AccessibilityRenderObject::boundsForVisiblePositionRange):
   10764         (WebCore::AccessibilityRenderObject::setSelectedVisiblePositionRange):
   10765         (WebCore::AccessibilityRenderObject::visiblePositionForPoint):
   10766         (WebCore::AccessibilityRenderObject::visiblePositionForIndex):
   10767         (WebCore::AccessibilityRenderObject::index):
   10768         (WebCore::AccessibilityRenderObject::doAXBoundsForRange):
   10769         * page/AccessibilityRenderObject.h:
   10770         * page/mac/AccessibilityObjectWrapper.mm:
   10771         (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
   10772         (-[AccessibilityObjectWrapper accessibilitySetValue:forAttribute:]):
   10773         (-[AccessibilityObjectWrapper doAXAttributedStringForRange:]):
   10774         (-[AccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):
   10775 
   10776 2008-06-17  Mark Rowe  <mrowe (a] apple.com>
   10777 
   10778         Reviewed by Darin Adler.
   10779 
   10780         <rdar://problem/5775802> WebCore should not force use of GCC 4.0.
   10781 
   10782         * WebCore.xcodeproj/project.pbxproj:
   10783 
   10784 2008-06-17  Darin Adler  <darin (a] apple.com>
   10785 
   10786         Reviewed by Sam.
   10787 
   10788         - eliminate the last RefCounted client that needs the "start at 0" behavior, NodeFilter
   10789 
   10790         - move handling of non-Attr arguments from the code generation script to the DOM
   10791           itself (as with every other type of argument)
   10792 
   10793         * bindings/js/JSNodeFilterCustom.cpp:
   10794         (WebCore::toNodeFilter): Changed return type to PassRefPtr. Use create instead of new.
   10795 
   10796         * bindings/objc/DOM.mm:
   10797         (-[DOMDocument createNodeIterator:whatToShow:filter:expandEntityReferences:]):
   10798         Use create instead of new.
   10799         (-[DOMDocument createTreeWalker:whatToShow:filter:expandEntityReferences:]):
   10800         Ditto.
   10801 
   10802         * bindings/scripts/CodeGeneratorJS.pm: Use PassRefPtr and RefPtr for toNodeFilter and
   10803         the local variable for NodeFilter arguments. Remove the TypeCanFailConversion mechanism:
   10804         It's no longer needed for Attr, was not having any effect for VoidCallback, and was
   10805         returning false for all other types.
   10806 
   10807         * dom/Element.cpp:
   10808         (WebCore::Element::setAttributeNode): Added code to return TYPE_MISMATCH_ERR when
   10809         the attr is 0 -- this matches what the autogenerated bindings did before.
   10810         (WebCore::Element::setAttributeNodeNS): Ditto.
   10811         (WebCore::Element::removeAttributeNode): Ditto.
   10812 
   10813         * dom/NodeFilter.h: Added create, made constructor private, and got rid of code to
   10814         initialize the refcount to 0.
   10815 
   10816         * html/CanvasPattern.h: Made CachedResourceClient base class private in a
   10817         more-explicit way.
   10818 
   10819 2008-06-17  Adam Roben  <aroben (a] apple.com>
   10820 
   10821         Fix <rdar://6016755> Assertion failure when WebView is child of
   10822         message-only window
   10823 
   10824         Reviewed by Ada Chan.
   10825 
   10826         No test possible.
   10827 
   10828         * platform/win/WindowMessageBroadcaster.cpp:
   10829         (WebCore::WindowMessageBroadcaster::addListener): Only subclass the
   10830         window when we're adding our first listener. Removed an assertion that
   10831         an old WNDPROC was returned -- this will be 0 in the case of a
   10832         message-only window. Added an assertion to help catch cases where we
   10833         try to subclass the window twice.
   10834         (WebCore::WindowMessageBroadcaster::unsubclassWindow): Removed an
   10835         assertion that is not correct in the message-only window case.
   10836 
   10837 2008-06-17  Adele Peterson  <adele (a] apple.com>
   10838 
   10839         Attempt to fix builds by wrapping new code in #if ENABLE(VIDEO)
   10840 
   10841         * loader/MediaDocument.cpp:
   10842         * loader/MediaDocument.h:
   10843 
   10844 2008-06-17  Adele Peterson  <adele (a] apple.com>
   10845 
   10846         Attempt to fix builds by wrapping new code in #if ENABLE(VIDEO)
   10847 
   10848         * dom/DOMImplementation.cpp: (WebCore::DOMImplementation::createDocument):
   10849 
   10850 2008-06-17  Adele Peterson  <adele (a] apple.com>
   10851 
   10852         Reviewed by Brady.
   10853 
   10854         Fix for <rdar://problem/5605768> Render full-page video/audio with <video>/<audio> instead of QuickTime plug-in
   10855 
   10856         * WebCore.xcodeproj/project.pbxproj: Added MediaDocument class.
   10857         * GNUmakefile.am: ditto.
   10858         * WebCore.pro: ditto.
   10859         * WebCore.vcproj/WebCore.vcproj: ditto.
   10860         * WebCoreSources.bkl: ditto.
   10861 
   10862         * dom/DOMImplementation.cpp: (WebCore::DOMImplementation::createDocument):
   10863           Check to see if the type can be played by our MediaPlayer, if so create a MediaDocument
   10864         * dom/Document.h: (WebCore::Document::isMediaDocument): Added.
   10865 
   10866         * loader/MediaDocument.cpp: Added.
   10867         (WebCore::MediaTokenizer::MediaTokenizer):
   10868         (WebCore::MediaTokenizer::wantsRawData):
   10869         (WebCore::MediaTokenizer::write):
   10870         (WebCore::MediaTokenizer::createDocumentStructure):
   10871         (WebCore::MediaTokenizer::writeRawData):
   10872         (WebCore::MediaTokenizer::stopParsing):
   10873         (WebCore::MediaTokenizer::finish):
   10874         (WebCore::MediaTokenizer::isWaitingForScripts):
   10875         (WebCore::MediaDocument::MediaDocument):
   10876         (WebCore::MediaDocument::createTokenizer):
   10877         * loader/MediaDocument.h: Added.
   10878         (WebCore::MediaDocument::create):
   10879         (WebCore::MediaDocument::isMediaDocument):
   10880 
   10881         * page/InspectorController.cpp: (WebCore::getResourceDocumentNode):
   10882           Added MediaDocument case so it is handled the same as a PluginDocument or ImageDocument.
   10883         * platform/graphics/MediaPlayer.cpp: (WebCore::MediaPlayer::supportsType): Added.
   10884         * platform/graphics/MediaPlayer.h:
   10885         * rendering/RenderMedia.cpp: (WebCore::RenderMedia::updateControlVisibility):
   10886           Instead of checking the html element to decide if the media is audio, check the player.
   10887           This means that if a video element actually only contains audio, then we will still avoid fading the controls in and out.
   10888 
   10889 2008-06-17  Timothy Hatcher  <timothy (a] apple.com>
   10890 
   10891         Adds the file name and line number for call frames next to
   10892         the function name in the Call Stack pane.
   10893 
   10894         https://bugs.webkit.org/show_bug.cgi?id=19586
   10895 
   10896         Reviewed by Adam Roben.
   10897 
   10898         * English.lproj/localizedStrings.js: Updated strings.
   10899         * page/inspector/CallStackSidebarPane.js:
   10900         (WebInspector.CallStackSidebarPane.prototype.update): Create a subtitle
   10901         based on the URL and line number.
   10902 
   10903 2008-06-17  Timothy Hatcher  <timothy (a] apple.com>
   10904 
   10905         Use accurate call frame title's based on the call frame type.
   10906 
   10907         https://bugs.webkit.org/show_bug.cgi?id=19585
   10908 
   10909         Reviewed by Geoff Garen.
   10910 
   10911         * English.lproj/localizedStrings.js: Updated strings.
   10912         * bindings/js/JSJavaScriptCallFrameCustom.cpp:
   10913         (WebCore::JSJavaScriptCallFrame::evaluate): Removed the isValid()
   10914         check since the evaluate() functiondoes the check already.
   10915         (WebCore::JSJavaScriptCallFrame::thisObject): Removed the isValid()
   10916         check, since thisObject() does the check and returns null if invalid.
   10917         (WebCore::JSJavaScriptCallFrame::type): Return a string
   10918         based on the enum value of the type.
   10919         (WebCore::JSJavaScriptCallFrame::scopeChain): Removed the isValid()
   10920         check, since scopeChain() does the check and returns null if invalid.
   10921         So just null check scopeChain().
   10922         * page/JavaScriptCallFrame.cpp:
   10923         (WebCore::JavaScriptCallFrame::type): Return the DebuggerCallFrame::Type.
   10924         Return DebuggerCallFrame::UnknownType if the call frame is invalid.
   10925         * page/JavaScriptCallFrame.h:
   10926         * page/JavaScriptCallFrame.idl: Add the type property.
   10927         * page/inspector/CallStackSidebarPane.js:
   10928         (WebInspector.CallStackSidebarPane.prototype.update): Check the type
   10929         of the call frame to create the correct title.
   10930         * page/inspector/ScriptsPanel.js:
   10931         (WebInspector.ScriptsPanel.prototype._addScriptToFilesMenu): Use the
   10932         "(program)" title for the file menu to match the call frames.
   10933 
   10934 2008-06-17  Timothy Hatcher  <timothy (a] apple.com>
   10935 
   10936         Remember the expanded state of objects in the Scope Variables pane when stepping.
   10937         https://bugs.webkit.org/show_bug.cgi?id=19584
   10938 
   10939         Reviewed by Adam Roben.
   10940 
   10941         * page/inspector/ObjectPropertiesSection.js:
   10942         (WebInspector.ObjectPropertiesSection): Add an optional argument
   10943         that is the treeElementConstructor to use when making TreeElements.
   10944         (WebInspector.ObjectPropertiesSection.prototype.onpopulate): Use
   10945         the treeElementConstructor to create TreeElements.
   10946         (WebInspector.ObjectPropertyTreeElement.prototype.onpopulate): Use
   10947         the treeElementConstructor to create TreeElements.
   10948         * page/inspector/ScopeChainSidebarPane.js:
   10949         (WebInspector.ScopeChainSidebarPane.prototype.update): Create an
   10950         _expandedProperties object on the callframe if one doesn't exist yet.
   10951         Pass WebInspector.ScopeVariableTreeElement to the ObjectPropertiesSection
   10952         as the TreeElement constructor we want to use.
   10953         (WebInspector.ScopeVariableTreeElement): Added.
   10954         (WebInspector.ScopeVariableTreeElement.prototype.onattach): Expand if the
   10955         propertyIdentifier is in the pane's _expandedProperties.
   10956         (WebInspector.ScopeVariableTreeElement.prototype.onexpand): Add the
   10957         propertyIdentifier to the pane's _expandedProperties.
   10958         (WebInspector.ScopeVariableTreeElement.prototype.oncollapse): Remove the
   10959         propertyIdentifier from the pane's _expandedProperties.
   10960         (WebInspector.ScopeVariableTreeElement.prototype.get propertyIdentifier):
   10961         Return an identifier that has the section title, subtile and propertyPath concatenated.
   10962         (WebInspector.ScopeVariableTreeElement.prototype.get propertyPath): Return a string
   10963         that has the propertyNames up to the root ancestor concatenated with a period.
   10964 
   10965 2008-06-17  Timothy Hatcher  <timothy (a] apple.com>
   10966 
   10967         Focus the mainPanelsElement in a timeout so it happens after the
   10968         initial focus, so it doesn't get reset to the first toolbar button.
   10969         This initial focus happens on Mac when the window is made key and
   10970         the WebHTMLView becomes the first responder.
   10971 
   10972         https://bugs.webkit.org/show_bug.cgi?id=19587
   10973 
   10974         Reviewed by Adele Peterson.
   10975 
   10976         * page/inspector/inspector.js:
   10977         (WebInspector.loaded): Focus the mainPanelsElement in a timeout.
   10978 
   10979 2008-06-17  Timothy Hatcher  <timothy (a] apple.com>
   10980 
   10981         Use tabIndex in the Web Inspector for focusable areas.
   10982         https://bugs.webkit.org/show_bug.cgi?id=19583
   10983 
   10984         Reviewed by Adam Roben.
   10985 
   10986         * page/inspector/Console.js:
   10987         (WebInspector.Console): No longer make the messagesElement
   10988         focusable since the engine handles the case for us. The promptElement
   10989         now handles the key events.
   10990         (WebInspector.Console.prototype.show): Set the current focus element
   10991         to the prompt element.
   10992         (WebInspector.Console.prototype.hide): Set the current focus element
   10993         to WebInspector.previousFocusElement.
   10994         (WebInspector.Console.prototype._messagesFocused): Removed.
   10995         * page/inspector/DataGrid.js:
   10996         (WebInspector.DataGrid): Remove the focusable class.
   10997         * page/inspector/DatabaseQueryView.js:
   10998         (WebInspector.DatabaseQueryView): Remove the focusable class. Set
   10999         tabIndex to 0. The promptElement now handles the key events.
   11000         (WebInspector.DatabaseQueryView.prototype._focused): Removed.
   11001         * page/inspector/inspector.css: Updated selectors to use :focus
   11002         instead of .focused and .blurred.
   11003         * page/inspector/inspector.html: Removed focusable, focused and blurred
   11004         classes and added tabindex attributes.
   11005         * page/inspector/inspector.js:
   11006         (WebInspector.get previousFocusElement): Added. Returns _previousFocusElement.
   11007         (WebInspector.set currentFocusElement): Simplified. Stores the previous element
   11008         in _previousFocusElement for clients that need it. Calls focus on the passed
   11009         in element or blur on the previous element.
   11010         (WebInspector.loaded): Removed the event listener for mousedown. Renamed
   11011         changeFocus to focusChanged.
   11012         (WebInspector.focusChanged): Renamed from changeFocus. Just sets the
   11013         currentFocusElement to the event target.
   11014         (WebInspector.startEditing): Changed to use tabIndex and blur events.
   11015         Add a more robust check for restoring focus to the previous element
   11016         when editing finishes that catches focused descendants.
   11017 
   11018 2008-06-17  Timothy Hatcher  <timothy (a] apple.com>
   11019 
   11020         Removed redundant if statements and early returns from
   11021         AccessibilityRenderObject::ariaRoleAttribute.
   11022 
   11023         Reviewed by Sam Wenig.
   11024 
   11025         * page/AccessibilityRenderObject.cpp:
   11026         (AccessibilityRenderObject::ariaRoleAttribute): Removed redundant if
   11027         statements and early returns.
   11028 
   11029 2008-06-17  Timothy Hatcher  <timothy (a] apple.com>
   11030 
   11031         Removed duplicate implementations of setTabIndex. They all matched
   11032         the HTMLElement::setTabIndex implementation.
   11033 
   11034         Reviewed by Sam Wenig.
   11035 
   11036         * html/HTMLAnchorElement.cpp: Removed setTabIndex.
   11037         * html/HTMLAreaElement.cpp: Ditto.
   11038         * html/HTMLFormControlElement.cpp: Ditto.
   11039         * html/HTMLFormControlElement.h: Ditto.
   11040         * html/HTMLObjectElement.cpp: Ditto.
   11041         * html/HTMLObjectElement.h: Ditto.
   11042 
   11043 2008-06-17  Darin Adler  <darin (a] apple.com>
   11044 
   11045         Reviewed by Sam.
   11046 
   11047         - more of https://bugs.webkit.org/show_bug.cgi?id=17257
   11048           start ref counts at 1 instead of 0 for speed
   11049 
   11050         Change StyleBase and all classes derived from it.
   11051 
   11052         * bindings/js/JSRGBColor.cpp:
   11053         (WebCore::JSRGBColor::getValueProperty):
   11054         * bindings/objc/DOMRGBColor.mm:
   11055         (-[DOMRGBColor red]):
   11056         (-[DOMRGBColor green]):
   11057         (-[DOMRGBColor blue]):
   11058         (-[DOMRGBColor alpha]):
   11059         * css/CSSBorderImageValue.cpp:
   11060         (WebCore::CSSBorderImageValue::cssText):
   11061         * css/CSSBorderImageValue.h:
   11062         (WebCore::CSSBorderImageValue::create):
   11063         * css/CSSCanvasValue.h:
   11064         (WebCore::CSSCanvasValue::create):
   11065         (WebCore::CSSCanvasValue::setName):
   11066         (WebCore::CSSCanvasValue::CSSCanvasValue):
   11067         * css/CSSCharsetRule.cpp:
   11068         (WebCore::CSSCharsetRule::CSSCharsetRule):
   11069         * css/CSSCharsetRule.h:
   11070         (WebCore::CSSCharsetRule::create):
   11071         (WebCore::CSSCharsetRule::encoding):
   11072         (WebCore::CSSCharsetRule::isCharsetRule):
   11073         (WebCore::CSSCharsetRule::type):
   11074         * css/CSSComputedStyleDeclaration.cpp:
   11075         (WebCore::valueForShadow):
   11076         (WebCore::valueForNinePieceImage):
   11077         (WebCore::valueForReflection):
   11078         (WebCore::getPositionOffsetValue):
   11079         (WebCore::currentColorOrValidColor):
   11080         (WebCore::getBorderRadiusCornerValue):
   11081         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
   11082         * css/CSSComputedStyleDeclaration.h:
   11083         (WebCore::computedStyle):
   11084         * css/CSSCursorImageValue.h:
   11085         (WebCore::CSSCursorImageValue::create):
   11086         * css/CSSFontFaceRule.cpp:
   11087         (WebCore::CSSFontFaceRule::CSSFontFaceRule):
   11088         * css/CSSFontFaceRule.h:
   11089         (WebCore::CSSFontFaceRule::create):
   11090         (WebCore::CSSFontFaceRule::isFontFaceRule):
   11091         (WebCore::CSSFontFaceRule::type):
   11092         * css/CSSFontFaceSrcValue.h:
   11093         (WebCore::CSSFontFaceSrcValue::create):
   11094         (WebCore::CSSFontFaceSrcValue::createLocal):
   11095         (WebCore::CSSFontFaceSrcValue::~CSSFontFaceSrcValue):
   11096         (WebCore::CSSFontFaceSrcValue::CSSFontFaceSrcValue):
   11097         * css/CSSGradientValue.h:
   11098         (WebCore::CSSGradientColorStop::CSSGradientColorStop):
   11099         (WebCore::CSSGradientValue::create):
   11100         (WebCore::CSSGradientValue::CSSGradientValue):
   11101         * css/CSSImageGeneratorValue.h:
   11102         (WebCore::CSSImageGeneratorValue::isImageGeneratorValue):
   11103         * css/CSSImageValue.h:
   11104         (WebCore::CSSImageValue::create):
   11105         * css/CSSImportRule.cpp:
   11106         (WebCore::CSSImportRule::CSSImportRule):
   11107         (WebCore::CSSImportRule::setCSSStyleSheet):
   11108         * css/CSSImportRule.h:
   11109         (WebCore::CSSImportRule::create):
   11110         (WebCore::CSSImportRule::isImportRule):
   11111         (WebCore::CSSImportRule::type):
   11112         * css/CSSInheritedValue.h:
   11113         (WebCore::CSSInheritedValue::create):
   11114         (WebCore::CSSInheritedValue::CSSInheritedValue):
   11115         * css/CSSInitialValue.h:
   11116         (WebCore::CSSInitialValue::createExplicit):
   11117         (WebCore::CSSInitialValue::createImplicit):
   11118         (WebCore::CSSInitialValue::CSSInitialValue):
   11119         * css/CSSMediaRule.cpp:
   11120         (WebCore::CSSMediaRule::CSSMediaRule):
   11121         * css/CSSMediaRule.h:
   11122         (WebCore::CSSMediaRule::create):
   11123         (WebCore::CSSMediaRule::isMediaRule):
   11124         (WebCore::CSSMediaRule::type):
   11125         * css/CSSMutableStyleDeclaration.cpp:
   11126         (WebCore::CSSMutableStyleDeclaration::setProperty):
   11127         (WebCore::CSSMutableStyleDeclaration::setStringProperty):
   11128         * css/CSSMutableStyleDeclaration.h:
   11129         (WebCore::CSSMutableStyleDeclaration::create):
   11130         * css/CSSPageRule.cpp:
   11131         (WebCore::CSSPageRule::CSSPageRule):
   11132         * css/CSSPageRule.h:
   11133         (WebCore::CSSPageRule::create):
   11134         * css/CSSParser.cpp:
   11135         (WebCore::CSSParser::parseColor):
   11136         (WebCore::CSSParser::parseValue):
   11137         (WebCore::CSSParser::addFillValue):
   11138         (WebCore::CSSParser::parseFillShorthand):
   11139         (WebCore::CSSParser::addTransitionValue):
   11140         (WebCore::CSSParser::parseTransitionShorthand):
   11141         (WebCore::CSSParser::parseShorthand):
   11142         (WebCore::CSSParser::parseContent):
   11143         (WebCore::CSSParser::parseBackgroundColor):
   11144         (WebCore::CSSParser::parseFillPositionXY):
   11145         (WebCore::CSSParser::parseFillPosition):
   11146         (WebCore::CSSParser::parseFillSize):
   11147         (WebCore::CSSParser::parseFillProperty):
   11148         (WebCore::CSSParser::parseTransitionDuration):
   11149         (WebCore::CSSParser::parseTransitionRepeatCount):
   11150         (WebCore::CSSParser::parseTransitionTimingFunction):
   11151         (WebCore::CSSParser::parseTransitionProperty):
   11152         (WebCore::CSSParser::parseDashboardRegions):
   11153         (WebCore::CSSParser::parseCounterContent):
   11154         (WebCore::CSSParser::parseShape):
   11155         (WebCore::CSSParser::parseFont):
   11156         (WebCore::CSSParser::parseFontFamily):
   11157         (WebCore::CSSParser::parseFontFaceSrc):
   11158         (WebCore::CSSParser::parseFontFaceUnicodeRange):
   11159         (WebCore::ShadowParseContext::commitValue):
   11160         (WebCore::ShadowParseContext::commitLength):
   11161         (WebCore::CSSParser::parseShadow):
   11162         (WebCore::CSSParser::parseReflect):
   11163         (WebCore::BorderImageParseContext::commitNumber):
   11164         (WebCore::BorderImageParseContext::commitBorderImage):
   11165         (WebCore::CSSParser::parseBorderImage):
   11166         (WebCore::CSSParser::parseCounter):
   11167         (WebCore::parseGradientPoint):
   11168         (WebCore::parseGradientColorStop):
   11169         (WebCore::CSSParser::parseGradient):
   11170         (WebCore::CSSParser::parseCanvas):
   11171         (WebCore::CSSParser::parseTransform):
   11172         (WebCore::CSSParser::createMediaList):
   11173         (WebCore::CSSParser::createCharsetRule):
   11174         (WebCore::CSSParser::createImportRule):
   11175         (WebCore::CSSParser::createMediaRule):
   11176         (WebCore::CSSParser::createStyleRule):
   11177         (WebCore::CSSParser::createFontFaceRule):
   11178         * css/CSSPrimitiveValue.h:
   11179         (WebCore::CSSPrimitiveValue::):
   11180         (WebCore::CSSPrimitiveValue::createIdentifier):
   11181         (WebCore::CSSPrimitiveValue::createColor):
   11182         (WebCore::CSSPrimitiveValue::create):
   11183         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
   11184         (WebCore::CSSPrimitiveValue::isPrimitiveValue):
   11185         * css/CSSQuirkPrimitiveValue.h:
   11186         (WebCore::CSSQuirkPrimitiveValue::create):
   11187         * css/CSSReflectValue.h:
   11188         (WebCore::CSSReflectValue::create):
   11189         * css/CSSRule.cpp:
   11190         (WebCore::CSSRule::parentRule):
   11191         (WebCore::CSSRule::setCssText):
   11192         * css/CSSRule.h:
   11193         (WebCore::CSSRule::CSSRule):
   11194         (WebCore::CSSRule::isRule):
   11195         * css/CSSStyleDeclaration.cpp:
   11196         (WebCore::CSSStyleDeclaration::copyPropertiesInSet):
   11197         * css/CSSStyleDeclaration.h:
   11198         * css/CSSStyleRule.cpp:
   11199         (WebCore::CSSStyleRule::CSSStyleRule):
   11200         * css/CSSStyleRule.h:
   11201         (WebCore::CSSStyleRule::create):
   11202         (WebCore::CSSStyleRule::isStyleRule):
   11203         (WebCore::CSSStyleRule::type):
   11204         * css/CSSStyleSelector.cpp:
   11205         (WebCore::CSSStyleSelector::CSSStyleSelector):
   11206         (WebCore::parseUASheet):
   11207         (WebCore::CSSRuleSet::addRulesFromSheet):
   11208         (WebCore::CSSStyleSelector::applyProperty):
   11209         * css/CSSStyleSheet.cpp:
   11210         (WebCore::CSSStyleSheet::checkLoaded):
   11211         * css/CSSStyleSheet.h:
   11212         (WebCore::CSSStyleSheet::create):
   11213         (WebCore::CSSStyleSheet::isCSSStyleSheet):
   11214         (WebCore::CSSStyleSheet::type):
   11215         * css/CSSTimingFunctionValue.h:
   11216         (WebCore::CSSTimingFunctionValue::create):
   11217         (WebCore::CSSTimingFunctionValue::CSSTimingFunctionValue):
   11218         (WebCore::CSSTimingFunctionValue::isTransitionTimingFunctionValue):
   11219         * css/CSSTransformValue.cpp:
   11220         (WebCore::CSSTransformValue::CSSTransformValue):
   11221         (WebCore::CSSTransformValue::~CSSTransformValue):
   11222         (WebCore::CSSTransformValue::addValue):
   11223         (WebCore::CSSTransformValue::cssText):
   11224         * css/CSSTransformValue.h:
   11225         (WebCore::CSSTransformValue::create):
   11226         * css/CSSUnicodeRangeValue.h:
   11227         (WebCore::CSSUnicodeRangeValue::create):
   11228         (WebCore::CSSUnicodeRangeValue::CSSUnicodeRangeValue):
   11229         * css/CSSUnknownRule.h:
   11230         * css/CSSValue.h:
   11231         (WebCore::CSSValue::isImageGeneratorValue):
   11232         (WebCore::CSSValue::isImageValue):
   11233         (WebCore::CSSValue::isPrimitiveValue):
   11234         (WebCore::CSSValue::isValueList):
   11235         (WebCore::CSSValue::isSVGColor):
   11236         (WebCore::CSSValue::isSVGPaint):
   11237         (WebCore::CSSValue::CSSValue):
   11238         * css/CSSValueList.h:
   11239         (WebCore::CSSValueList::createCommaSeparated):
   11240         (WebCore::CSSValueList::createSpaceSeparated):
   11241         (WebCore::CSSValueList::isValueList):
   11242         * css/FontFamilyValue.h:
   11243         (WebCore::FontFamilyValue::create):
   11244         * css/FontValue.h:
   11245         (WebCore::FontValue::create):
   11246         (WebCore::FontValue::FontValue):
   11247         (WebCore::FontValue::isFontValue):
   11248         * css/MediaList.cpp:
   11249         (WebCore::MediaList::MediaList):
   11250         (WebCore::MediaList::deleteMedium):
   11251         (WebCore::MediaList::setMediaText):
   11252         * css/MediaList.h:
   11253         (WebCore::MediaList::create):
   11254         (WebCore::MediaList::createAllowingDescriptionSyntax):
   11255         (WebCore::MediaList::length):
   11256         (WebCore::MediaList::mediaQueries):
   11257         * css/MediaQueryEvaluator.cpp:
   11258         (WebCore::MediaQueryEvaluator::eval):
   11259         * css/MediaQueryExp.cpp:
   11260         (WebCore::MediaQueryExp::MediaQueryExp):
   11261         * css/SVGCSSComputedStyleDeclaration.cpp:
   11262         (WebCore::glyphOrientationToCSSPrimitiveValue):
   11263         (WebCore::CSSComputedStyleDeclaration::getSVGPropertyCSSValue):
   11264         * css/SVGCSSParser.cpp:
   11265         (WebCore::CSSParser::parseSVGValue):
   11266         (WebCore::CSSParser::parseSVGStrokeDasharray):
   11267         (WebCore::CSSParser::parseSVGPaint):
   11268         (WebCore::CSSParser::parseSVGColor):
   11269         * css/ShadowValue.h:
   11270         (WebCore::ShadowValue::create):
   11271         * css/StyleBase.h:
   11272         (WebCore::StyleBase::isCSSStyleSheet):
   11273         (WebCore::StyleBase::isFontFaceRule):
   11274         (WebCore::StyleBase::isRule):
   11275         (WebCore::StyleBase::isStyleRule):
   11276         (WebCore::StyleBase::isStyleSheet):
   11277         (WebCore::StyleBase::isXSLStyleSheet):
   11278         (WebCore::StyleBase::StyleBase):
   11279         * css/StyleList.cpp:
   11280         * css/StyleList.h:
   11281         (WebCore::StyleList::StyleList):
   11282         * css/StyleSheet.h:
   11283         (WebCore::StyleSheet::styleSheetChanged):
   11284         (WebCore::StyleSheet::isStyleSheet):
   11285         * dom/CSSMappedAttributeDeclaration.h:
   11286         (WebCore::CSSMappedAttributeDeclaration::create):
   11287         (WebCore::CSSMappedAttributeDeclaration::CSSMappedAttributeDeclaration):
   11288         * dom/DOMImplementation.cpp:
   11289         (WebCore::DOMImplementation::createCSSStyleSheet):
   11290         * dom/Document.cpp:
   11291         (WebCore::Document::createCSSStyleDeclaration):
   11292         (WebCore::Document::setCSSStyleSheet):
   11293         (WebCore::Document::elementSheet):
   11294         (WebCore::Document::mappedElementSheet):
   11295         (WebCore::Document::recalcStyleSelector):
   11296         * dom/Node.cpp:
   11297         (WebCore::Node::querySelector):
   11298         (WebCore::Node::querySelectorAll):
   11299         * dom/Position.cpp:
   11300         (WebCore::Position::computedStyle):
   11301         * dom/ProcessingInstruction.cpp:
   11302         (WebCore::ProcessingInstruction::checkStyleSheet):
   11303         (WebCore::ProcessingInstruction::setCSSStyleSheet):
   11304         (WebCore::ProcessingInstruction::setXSLStyleSheet):
   11305         * dom/ProcessingInstruction.h:
   11306         * dom/StyleElement.cpp:
   11307         (WebCore::StyleElement::createSheet):
   11308         * dom/StyledElement.cpp:
   11309         (WebCore::StyledElement::createInlineStyleDecl):
   11310         (WebCore::StyledElement::createMappedDecl):
   11311         * editing/ApplyStyleCommand.cpp:
   11312         (WebCore::ApplyStyleCommand::ApplyStyleCommand):
   11313         (WebCore::hasTextDecorationProperty):
   11314         (WebCore::ApplyStyleCommand::extractAndNegateTextDecorationStyle):
   11315         * editing/CompositeEditCommand.cpp:
   11316         (WebCore::CompositeEditCommand::breakOutOfEmptyListItem):
   11317         * editing/DeleteSelectionCommand.cpp:
   11318         (WebCore::DeleteSelectionCommand::calculateTypingStyleAfterDelete):
   11319         * editing/Editor.cpp:
   11320         (WebCore::Editor::selectionHasStyle):
   11321         (WebCore::Editor::setBaseWritingDirection):
   11322         * editing/EditorCommand.cpp:
   11323         (WebCore::executeApplyStyle):
   11324         (WebCore::executeToggleStyle):
   11325         (WebCore::executeApplyParagraphStyle):
   11326         (WebCore::stateStyle):
   11327         * editing/InsertParagraphSeparatorCommand.cpp:
   11328         (WebCore::InsertParagraphSeparatorCommand::applyStyleAfterInsertion):
   11329         * editing/RemoveFormatCommand.cpp:
   11330         (WebCore::RemoveFormatCommand::doApply):
   11331         * editing/ReplaceSelectionCommand.cpp:
   11332         (WebCore::ReplacementFragment::insertFragmentForTestRendering):
   11333         * editing/markup.cpp:
   11334         (WebCore::styleFromMatchedRulesForElement):
   11335         (WebCore::appendStartMarkup):
   11336         * html/HTMLBodyElement.cpp:
   11337         (WebCore::HTMLBodyElement::createLinkDecl):
   11338         * html/HTMLLinkElement.cpp:
   11339         (WebCore::HTMLLinkElement::process):
   11340         (WebCore::HTMLLinkElement::setCSSStyleSheet):
   11341         * html/HTMLMediaElement.cpp:
   11342         (WebCore::HTMLMediaElement::pickMedia):
   11343         * html/HTMLTableElement.cpp:
   11344         (WebCore::HTMLTableElement::additionalAttributeStyleDecls):
   11345         (WebCore::HTMLTableElement::addSharedCellBordersDecl):
   11346         (WebCore::HTMLTableElement::addSharedCellPaddingDecl):
   11347         (WebCore::HTMLTableElement::addSharedGroupDecls):
   11348         * page/DOMWindow.cpp:
   11349         (WebCore::DOMWindow::getComputedStyle):
   11350         * page/Frame.cpp:
   11351         (WebCore::Frame::computeAndSetTypingStyle):
   11352         (WebCore::Frame::selectionComputedStyle):
   11353         * page/Frame.h:
   11354         * rendering/style/RenderStyle.cpp:
   11355         (WebCore::StyleCachedImage::cssValue):
   11356         * rendering/style/RenderStyle.h:
   11357         * svg/SVGColor.h:
   11358         (WebCore::SVGColor::create):
   11359         (WebCore::SVGColor::isSVGColor):
   11360         * svg/SVGFontFaceElement.cpp:
   11361         (WebCore::SVGFontFaceElement::SVGFontFaceElement):
   11362         (WebCore::SVGFontFaceElement::rebuildFontFace):
   11363         * svg/SVGFontFaceNameElement.cpp:
   11364         (WebCore::SVGFontFaceNameElement::srcValue):
   11365         * svg/SVGFontFaceSrcElement.cpp:
   11366         (WebCore::SVGFontFaceSrcElement::srcValue):
   11367         * svg/SVGFontFaceUriElement.cpp:
   11368         (WebCore::SVGFontFaceUriElement::srcValue):
   11369         * svg/SVGPaint.cpp:
   11370         (WebCore::SVGPaint::SVGPaint):
   11371         * svg/SVGPaint.h:
   11372         (WebCore::SVGPaint::create):
   11373         (WebCore::SVGPaint::isSVGPaint):
   11374         * svg/animation/SMILTimeContainer.cpp:
   11375         (WebCore::SMILTimeContainer::baseValueFor):
   11376         * xml/XSLImportRule.cpp:
   11377         (WebCore::XSLImportRule::XSLImportRule):
   11378         (WebCore::XSLImportRule::setXSLStyleSheet):
   11379         * xml/XSLImportRule.h:
   11380         (WebCore::XSLImportRule::create):
   11381         (WebCore::XSLImportRule::href):
   11382         (WebCore::XSLImportRule::isImportRule):
   11383         * xml/XSLStyleSheet.cpp:
   11384         (WebCore::XSLStyleSheet::checkLoaded):
   11385         (WebCore::XSLStyleSheet::loadChildSheet):
   11386         * xml/XSLStyleSheet.h:
   11387         (WebCore::XSLStyleSheet::create):
   11388         (WebCore::XSLStyleSheet::createEmbedded):
   11389         * xml/XSLTProcessor.cpp:
   11390         (WebCore::xsltStylesheetPointer):
   11391 
   11392 2008-06-17  Michelangelo De Simone  <m.des (a] mac.com>
   11393 
   11394         Reviewed by Adele.
   11395         
   11396         Fix for https://bugs.webkit.org/show_bug.cgi?id=18887
   11397         Added support for autofocus controls.
   11398 
   11399         When authors specify the "autofocus" attribute on form controls these 
   11400         acquire focus automatically as the document is rendered.
   11401 
   11402         Tests: fast/forms/autofocus-attribute.html
   11403                fast/forms/autofocus-opera-001.html
   11404                fast/forms/autofocus-opera-002.html
   11405                fast/forms/autofocus-opera-003.html
   11406                fast/forms/autofocus-opera-004.html
   11407                fast/forms/autofocus-opera-005.html
   11408                fast/forms/autofocus-opera-006.html
   11409                fast/forms/autofocus-opera-007.html
   11410                fast/forms/autofocus-opera-008.html
   11411 
   11412         * dom/Document.cpp: (WebCore::Document::Document): Initialize the flag to ignore autofocus.
   11413         * dom/Document.h:
   11414         * html/HTMLAttributeNames.in:
   11415         * html/HTMLButtonElement.idl:
   11416         * html/HTMLFormControlElement.cpp:
   11417         (WebCore::HTMLFormControlElement::attach): Sets focus onto the appropriate "autofocus" control
   11418         (WebCore::HTMLFormControlElement::autofocus): Autofocus attribute getter
   11419         (WebCore::HTMLFormControlElement::setAutofocus): Autofocus attribute setter
   11420         * html/HTMLFormControlElement.h:
   11421         * html/HTMLInputElement.idl:
   11422         * html/HTMLSelectElement.idl:
   11423         * html/HTMLTextAreaElement.idl:
   11424         * rendering/RenderTextControl.cpp: (WebCore::RenderTextControl::setUserEdited):
   11425           Sets the "ignore autofocus" flag on document if the user edited the control.
   11426         * rendering/RenderTextControl.h:
   11427 
   11428 2008-06-17  Alp Toker  <alp (a] nuanti.com>
   11429 
   11430         Reviewed by Dave Hyatt and Mark Rowe.
   11431 
   11432         https://bugs.webkit.org/show_bug.cgi?id=19190
   11433         [CAIRO] Canvas rendered as black
   11434 
   11435         Make sure the frame alpha transparency flag is set to true unless
   11436         we're certain the image data is solid and can be blitted, since the
   11437         Cairo backend implements a fast-path for blittable BitmapImages.
   11438 
   11439         Thanks to Dirk Schulze for helping to track down this problem.
   11440 
   11441         * platform/graphics/BitmapImage.cpp:
   11442         (WebCore::BitmapImage::frameHasAlphaAtIndex):
   11443         * platform/graphics/cairo/ImageCairo.cpp:
   11444         (WebCore::BitmapImage::BitmapImage):
   11445         * platform/graphics/cg/ImageCG.cpp:
   11446         (WebCore::BitmapImage::BitmapImage):
   11447 
   11448 2008-06-17  Ariya Hidayat  <ariya.hidayat (a] trolltech.com>
   11449 
   11450         Reviewed by Simon.
   11451 
   11452         Fix the Qt port by adding ExecState when necessary.
   11453 
   11454         * bridge/qt/qt_instance.cpp:
   11455         (KJS::Bindings::QtInstance::getPropertyNames):
   11456         (KJS::Bindings::QtInstance::invokeDefaultMethod):
   11457         * bridge/qt/qt_runtime.cpp:
   11458         (KJS::Bindings::convertValueToQVariant):
   11459         (KJS::Bindings::convertQVariantToValue):
   11460         (KJS::Bindings::QtRuntimeConnectionMethod::callAsFunction):
   11461         (KJS::Bindings::QtConnectionObject::execute):
   11462 
   11463 2008-06-17  David Hyatt  <hyatt (a] apple.com>
   11464 
   11465         Fix for slow performance on CSS selector tests at:
   11466 
   11467         http://jpsykes.com/153/more-css-performance-testing-pt-2
   11468 
   11469         Fix <style> element processing so that we don't reparse the entire stylesheet as chunks come in from
   11470         the network (since this is O(n^2)).   Wait for the parser to deliver all of the data before we
   11471         process the sheet for the first time.
   11472 
   11473         Reviewed by olliej
   11474 
   11475         * html/HTMLStyleElement.cpp:
   11476         (WebCore::HTMLStyleElement::finishParsingChildren):
   11477         (WebCore::HTMLStyleElement::childrenChanged):
   11478 
   11479 2008-06-16  Dan Bernstein  <mitz (a] apple.com>
   11480 
   11481         Reviewed by Justin Garcia.
   11482 
   11483         - fix <rdar://problem/5973313> REGRESSION (r32508): Down arrow doesn't change caret with non-user entered newlines in textareas
   11484 
   11485         Test: editing/selection/after-line-break.html
   11486 
   11487         * dom/Position.cpp:
   11488         (WebCore::Position::getInlineBoxAndOffset): Changed to not include the
   11489         position after a line break in its line box, because that position is
   11490         actually on the next line.
   11491 
   11492 2008-06-16  Alexey Proskuryakov  <ap (a] webkit.org>
   11493 
   11494         Reviewed by Geoff Garen.
   11495 
   11496         Make Identifier construction use an explicitly passed IdentifierTable.
   11497 
   11498         * platform/text/AtomicString.cpp:
   11499         * platform/text/AtomicString.h:
   11500         * platform/text/PlatformString.h:
   11501         * platform/text/String.cpp:
   11502         Removed "operator KJS::Identifier".
   11503 
   11504         * bindings/js/JSCustomSQLStatementCallback.cpp:
   11505         (WebCore::JSCustomSQLStatementCallback::handleEvent):
   11506         * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
   11507         (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
   11508         * bindings/js/JSCustomSQLTransactionCallback.cpp:
   11509         (WebCore::JSCustomSQLTransactionCallback::handleEvent):
   11510         * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
   11511         (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent):
   11512         * bindings/js/JSCustomVoidCallback.cpp:
   11513         (WebCore::JSCustomVoidCallback::handleEvent):
   11514         * bindings/js/JSCustomXPathNSResolver.cpp:
   11515         (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
   11516         * bindings/js/JSDOMWindowBase.cpp:
   11517         (WebCore::JSDOMWindowBase::JSDOMWindowBase):
   11518         (WebCore::JSDOMWindowBase::updateDocument):
   11519         (WebCore::createWindow):
   11520         (WebCore::showModalDialog):
   11521         (WebCore::JSDOMWindowBase::getOwnPropertySlot):
   11522         (WebCore::JSDOMWindowBase::put):
   11523         (WebCore::JSDOMWindowBase::clear):
   11524         * bindings/js/JSDOMWindowCustom.cpp:
   11525         (WebCore::JSDOMWindow::setLocation):
   11526         * bindings/js/JSDOMWindowCustom.h:
   11527         (WebCore::JSDOMWindow::customGetOwnPropertySlot):
   11528         * bindings/js/JSEventListener.cpp:
   11529         (WebCore::JSAbstractEventListener::handleEvent):
   11530         (WebCore::JSLazyEventListener::parseCode):
   11531         * bindings/js/JSEventTargetBase.h:
   11532         (WebCore::JSEventTargetPrototype::self):
   11533         * bindings/js/JSHTMLCollectionCustom.cpp:
   11534         (WebCore::JSHTMLCollection::callAsFunction):
   11535         (WebCore::JSHTMLCollection::item):
   11536         (WebCore::JSHTMLCollection::namedItem):
   11537         * bindings/js/JSHTMLDocumentCustom.cpp:
   11538         (WebCore::JSHTMLDocument::all):
   11539         (WebCore::JSHTMLDocument::setAll):
   11540         (WebCore::JSHTMLDocument::open):
   11541         * bindings/js/JSHTMLInputElementBase.cpp:
   11542         (WebCore::JSHTMLInputElementBase::getOwnPropertySlot):
   11543         * bindings/js/JSHistoryCustom.cpp:
   11544         (WebCore::JSHistory::customGetOwnPropertySlot):
   11545         * bindings/js/JSLocationCustom.cpp:
   11546         (WebCore::JSLocation::customGetOwnPropertySlot):
   11547         (WebCore::JSLocation::customPut):
   11548         * bindings/js/JSNavigatorCustom.cpp:
   11549         (WebCore::needsYouTubeQuirk):
   11550         * bindings/js/JSSQLResultSetRowListCustom.cpp:
   11551         (WebCore::JSSQLResultSetRowList::item):
   11552         * bindings/js/JSStorageCustom.cpp:
   11553         (WebCore::JSStorage::customGetPropertyNames):
   11554         * bindings/js/ScheduledAction.cpp:
   11555         (WebCore::ScheduledAction::execute):
   11556         * bindings/js/ScriptController.cpp:
   11557         (WebCore::ScriptController::evaluate):
   11558         * bindings/objc/WebScriptObject.mm:
   11559         (WebCore::addExceptionToConsole):
   11560         (-[WebScriptObject callWebScriptMethod:withArguments:]):
   11561         (-[WebScriptObject setValue:forKey:]):
   11562         (-[WebScriptObject valueForKey:]):
   11563         (-[WebScriptObject removeWebScriptKey:]):
   11564         (+[WebScriptObject _convertValueToObjcValue:originRootObject:rootObject:]):
   11565         * bindings/scripts/CodeGeneratorJS.pm:
   11566         * bridge/NP_jsobject.cpp:
   11567         (_NPN_Enumerate):
   11568         * bridge/c/c_instance.cpp:
   11569         (KJS::Bindings::CInstance::getPropertyNames):
   11570         * bridge/c/c_utility.cpp:
   11571         (KJS::Bindings::identifierFromNPIdentifier):
   11572         * bridge/jni/jni_class.cpp:
   11573         (JavaClass::JavaClass):
   11574         * bridge/jni/jni_jsobject.mm:
   11575         (JavaJSObject::call):
   11576         (JavaJSObject::getMember):
   11577         (JavaJSObject::setMember):
   11578         (JavaJSObject::removeMember):
   11579         * bridge/runtime_method.cpp:
   11580         (RuntimeMethod::callAsFunction):
   11581         Adapted to JavaScriptCore changes by explicitly constructing Identifiers, and always passing
   11582         an ExecState or JSGlobalData pointer. Since WebCore is not a legacy client, this can use
   11583         JSGlobalData::threadInstance(), as performance permits.
   11584 
   11585 2008-06-16  Jonathon Jongsma  <jonathon.jongsma (a] collabora.co.uk>
   11586 
   11587         Reviewed by Dan Bernstein.
   11588 
   11589         - fix https://bugs.webkit.org/show_bug.cgi?id=19592
   11590           Mismatched GraphicsContext::save()/restore() pairs in shadow painting code
   11591 
   11592         * rendering/InlineFlowBox.cpp:
   11593         (WebCore::InlineFlowBox::paintTextDecorations): remove an extra context->save()
   11594         from the shadow painting code.
   11595 
   11596 2008-06-16  Adriaan de Groot  <groot (a] kde.org>
   11597 
   11598         Reviewed by Simon.
   11599 
   11600         Fix compilation on Sun Studio 12
   11601 
   11602         make_pair is a function template with two template arguments. This is to force
   11603         it to have the correct type according to the pair<> structure.
   11604 
   11605         * editing/TextIterator.cpp:
   11606         (WebCore::plainTextToMallocAllocatedBuffer):
   11607         * page/Chrome.cpp:
   11608         (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
   11609 
   11610 2008-06-10  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   11611 
   11612         Reviewed by Simon
   11613 
   11614         https://bugs.webkit.org/show_bug.cgi?id=19462
   11615 
   11616         Fill the background of scrollbars to the window color before
   11617         letting the QStyle paint its primitive elements.
   11618 
   11619         * platform/qt/PlatformScrollBarQt.cpp:
   11620         (WebCore::PlatformScrollbar::paint):
   11621 
   11622 2008-06-15  Darin Adler  <darin (a] apple.com>
   11623 
   11624         Rubber stamped by Sam.
   11625 
   11626         - renamed kjs_html.h/cpp to JSPluginElementFunctions.h/cpp
   11627         - renamed kjs_events.h/cpp to JSEventListener.h/cpp
   11628 
   11629         * GNUmakefile.am:
   11630         * WebCore.pro:
   11631         * WebCore.vcproj/WebCore.vcproj:
   11632         * WebCore.xcodeproj/project.pbxproj:
   11633         * WebCoreSources.bkl:
   11634         * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
   11635         * bindings/js/JSDOMApplicationCacheCustom.cpp:
   11636         * bindings/js/JSDOMWindowBase.cpp:
   11637         * bindings/js/JSEventCustom.cpp:
   11638         * bindings/js/JSEventListener.cpp: Copied from WebCore/bindings/js/kjs_events.cpp.
   11639         * bindings/js/JSEventListener.h: Copied from WebCore/bindings/js/kjs_events.h.
   11640         * bindings/js/JSEventTargetBase.h:
   11641         * bindings/js/JSHTMLAppletElementCustom.cpp:
   11642         * bindings/js/JSHTMLCollectionCustom.cpp:
   11643         * bindings/js/JSHTMLDocumentCustom.cpp:
   11644         * bindings/js/JSHTMLEmbedElementCustom.cpp:
   11645         * bindings/js/JSHTMLInputElementBase.h:
   11646         * bindings/js/JSHTMLObjectElementCustom.cpp:
   11647         * bindings/js/JSHTMLSelectElementCustom.cpp:
   11648         * bindings/js/JSPluginElementFunctions.cpp: Copied from WebCore/bindings/js/kjs_html.cpp.
   11649         * bindings/js/JSPluginElementFunctions.h: Copied from WebCore/bindings/js/kjs_html.h.
   11650         * bindings/js/JSSVGLazyEventListener.h:
   11651         * bindings/js/JSXMLHttpRequestCustom.cpp:
   11652         * bindings/js/ScriptController.cpp:
   11653         * bindings/js/kjs_events.cpp: Removed.
   11654         * bindings/js/kjs_events.h: Removed.
   11655         * bindings/js/kjs_html.cpp: Removed.
   11656         * bindings/js/kjs_html.h: Removed.
   11657 
   11658 2008-06-15  Darin Adler  <darin (a] apple.com>
   11659 
   11660         - give Frame object functions shorter names: scriptProxy() -> script(),
   11661           selectionController() -> selection(), animationController() -> animation()
   11662 
   11663         * WebCore.base.exp:
   11664         * bindings/js/JSCustomSQLStatementCallback.cpp:
   11665         (WebCore::JSCustomSQLStatementCallback::handleEvent):
   11666         * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
   11667         (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
   11668         * bindings/js/JSCustomSQLTransactionCallback.cpp:
   11669         (WebCore::JSCustomSQLTransactionCallback::handleEvent):
   11670         * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
   11671         (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent):
   11672         * bindings/js/JSCustomVoidCallback.cpp:
   11673         (WebCore::JSCustomVoidCallback::handleEvent):
   11674         * bindings/js/JSCustomXPathNSResolver.cpp:
   11675         (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
   11676         * bindings/js/JSDOMWindowBase.cpp:
   11677         (WebCore::JSDOMWindowBase::~JSDOMWindowBase):
   11678         (WebCore::allowPopUp):
   11679         (WebCore::createWindow):
   11680         (WebCore::windowProtoFuncOpen):
   11681         (WebCore::toJS):
   11682         (WebCore::toJSDOMWindow):
   11683         * bindings/js/JSDOMWindowCustom.cpp:
   11684         (WebCore::JSDOMWindow::setLocation):
   11685         * bindings/js/JSDOMWindowShell.cpp:
   11686         (WebCore::toJS):
   11687         (WebCore::toJSDOMWindowShell):
   11688         * bindings/js/JSDocumentCustom.cpp:
   11689         (WebCore::JSDocument::setLocation):
   11690         * bindings/js/JSLocationCustom.cpp:
   11691         (WebCore::navigateIfAllowed):
   11692         (WebCore::JSLocation::reload):
   11693         * bindings/js/JSNodeFilterCondition.cpp:
   11694         (WebCore::JSNodeFilterCondition::acceptNode):
   11695         * bindings/js/ScheduledAction.cpp:
   11696         (WebCore::ScheduledAction::execute):
   11697         * bindings/js/kjs_events.cpp:
   11698         (WebCore::JSAbstractEventListener::handleEvent):
   11699         (WebCore::JSLazyEventListener::parseCode):
   11700         * bindings/js/kjs_html.cpp:
   11701         (WebCore::runtimeObjectImplementsCall):
   11702         * bindings/objc/DOMInternal.mm:
   11703         (-[WebScriptObject _initializeScriptDOMNodeImp]):
   11704         * bridge/jni/jni_jsobject.mm:
   11705         (createRootObject):
   11706         * css/CSSStyleSelector.cpp:
   11707         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
   11708         * dom/Document.cpp:
   11709         (WebCore::Document::nodeWillBeRemoved):
   11710         (WebCore::Document::createHTMLEventListener):
   11711         * dom/Element.cpp:
   11712         (WebCore::Element::updateFocusAppearance):
   11713         * dom/EventTarget.cpp:
   11714         (WebCore::EventTarget::dispatchGenericEvent):
   11715         * dom/XMLTokenizer.cpp:
   11716         (WebCore::XMLTokenizer::startElementNs):
   11717         * editing/DeleteButtonController.cpp:
   11718         (WebCore::DeleteButtonController::respondToChangedSelection):
   11719         (WebCore::DeleteButtonController::enable):
   11720         (WebCore::DeleteButtonController::deleteTarget):
   11721         * editing/EditCommand.cpp:
   11722         (WebCore::EditCommand::EditCommand):
   11723         * editing/Editor.cpp:
   11724         (WebCore::Editor::selectionForCommand):
   11725         (WebCore::Editor::canEdit):
   11726         (WebCore::Editor::canEditRichly):
   11727         (WebCore::Editor::canDHTMLCut):
   11728         (WebCore::Editor::canDHTMLCopy):
   11729         (WebCore::Editor::canCopy):
   11730         (WebCore::Editor::canDelete):
   11731         (WebCore::Editor::deleteWithDirection):
   11732         (WebCore::Editor::deleteSelectionWithSmartDelete):
   11733         (WebCore::Editor::replaceSelectionWithFragment):
   11734         (WebCore::Editor::selectedRange):
   11735         (WebCore::Editor::tryDHTMLCopy):
   11736         (WebCore::Editor::tryDHTMLCut):
   11737         (WebCore::Editor::fontForSelection):
   11738         (WebCore::Editor::selectionUnorderedListState):
   11739         (WebCore::Editor::selectionOrderedListState):
   11740         (WebCore::Editor::increaseSelectionListLevel):
   11741         (WebCore::Editor::increaseSelectionListLevelOrdered):
   11742         (WebCore::Editor::increaseSelectionListLevelUnordered):
   11743         (WebCore::Editor::decreaseSelectionListLevel):
   11744         (WebCore::Editor::dispatchCPPEvent):
   11745         (WebCore::Editor::applyStyle):
   11746         (WebCore::Editor::applyParagraphStyle):
   11747         (WebCore::Editor::applyStyleToSelection):
   11748         (WebCore::Editor::applyParagraphStyleToSelection):
   11749         (WebCore::Editor::selectionHasStyle):
   11750         (WebCore::Editor::appliedEditing):
   11751         (WebCore::Editor::unappliedEditing):
   11752         (WebCore::Editor::reappliedEditing):
   11753         (WebCore::Editor::insertLineBreak):
   11754         (WebCore::Editor::insertParagraphSeparator):
   11755         (WebCore::Editor::paste):
   11756         (WebCore::Editor::selectComposition):
   11757         (WebCore::Editor::confirmComposition):
   11758         (WebCore::Editor::setComposition):
   11759         (WebCore::Editor::advanceToNextMisspelling):
   11760         (WebCore::Editor::isSelectionUngrammatical):
   11761         (WebCore::Editor::guessesForUngrammaticalSelection):
   11762         (WebCore::Editor::getCompositionSelection):
   11763         (WebCore::Editor::transpose):
   11764         * editing/EditorCommand.cpp:
   11765         (WebCore::expandSelectionToGranularity):
   11766         (WebCore::executeDeleteToMark):
   11767         (WebCore::executeMoveBackward):
   11768         (WebCore::executeMoveBackwardAndModifySelection):
   11769         (WebCore::executeMoveDown):
   11770         (WebCore::executeMoveDownAndModifySelection):
   11771         (WebCore::executeMoveForward):
   11772         (WebCore::executeMoveForwardAndModifySelection):
   11773         (WebCore::executeMoveLeft):
   11774         (WebCore::executeMoveLeftAndModifySelection):
   11775         (WebCore::executeMovePageDown):
   11776         (WebCore::executeMovePageDownAndModifySelection):
   11777         (WebCore::executeMovePageUp):
   11778         (WebCore::executeMovePageUpAndModifySelection):
   11779         (WebCore::executeMoveRight):
   11780         (WebCore::executeMoveRightAndModifySelection):
   11781         (WebCore::executeMoveToBeginningOfDocument):
   11782         (WebCore::executeMoveToBeginningOfDocumentAndModifySelection):
   11783         (WebCore::executeMoveToBeginningOfLine):
   11784         (WebCore::executeMoveToBeginningOfLineAndModifySelection):
   11785         (WebCore::executeMoveToBeginningOfParagraph):
   11786         (WebCore::executeMoveToBeginningOfParagraphAndModifySelection):
   11787         (WebCore::executeMoveToBeginningOfSentence):
   11788         (WebCore::executeMoveToBeginningOfSentenceAndModifySelection):
   11789         (WebCore::executeMoveToEndOfDocument):
   11790         (WebCore::executeMoveToEndOfDocumentAndModifySelection):
   11791         (WebCore::executeMoveToEndOfSentence):
   11792         (WebCore::executeMoveToEndOfSentenceAndModifySelection):
   11793         (WebCore::executeMoveToEndOfLine):
   11794         (WebCore::executeMoveToEndOfLineAndModifySelection):
   11795         (WebCore::executeMoveToEndOfParagraph):
   11796         (WebCore::executeMoveToEndOfParagraphAndModifySelection):
   11797         (WebCore::executeMoveParagraphBackwardAndModifySelection):
   11798         (WebCore::executeMoveParagraphForwardAndModifySelection):
   11799         (WebCore::executeMoveUp):
   11800         (WebCore::executeMoveUpAndModifySelection):
   11801         (WebCore::executeMoveWordBackward):
   11802         (WebCore::executeMoveWordBackwardAndModifySelection):
   11803         (WebCore::executeMoveWordForward):
   11804         (WebCore::executeMoveWordForwardAndModifySelection):
   11805         (WebCore::executeMoveWordLeft):
   11806         (WebCore::executeMoveWordLeftAndModifySelection):
   11807         (WebCore::executeMoveWordRight):
   11808         (WebCore::executeMoveWordRightAndModifySelection):
   11809         (WebCore::executeSelectAll):
   11810         (WebCore::executeSelectToMark):
   11811         (WebCore::executeSetMark):
   11812         (WebCore::executeSwapWithMark):
   11813         (WebCore::executeUnselect):
   11814         (WebCore::enabledAnySelection):
   11815         (WebCore::enabledAnySelectionAndMark):
   11816         (WebCore::enabledInRichlyEditableText):
   11817         (WebCore::enabledRangeInEditableText):
   11818         (WebCore::enabledRangeInRichlyEditableText):
   11819         * editing/ModifySelectionListLevel.cpp:
   11820         (WebCore::IncreaseSelectionListLevelCommand::canIncreaseSelectionListLevel):
   11821         (WebCore::DecreaseSelectionListLevelCommand::canDecreaseSelectionListLevel):
   11822         * editing/RemoveFormatCommand.cpp:
   11823         (WebCore::RemoveFormatCommand::doApply):
   11824         * editing/SelectionController.cpp:
   11825         (WebCore::SelectionController::setSelection):
   11826         (WebCore::SelectionController::selectFrameElementInParentIfFullySelected):
   11827         * editing/TypingCommand.cpp:
   11828         (WebCore::TypingCommand::deleteSelection):
   11829         (WebCore::TypingCommand::insertText):
   11830         (WebCore::TypingCommand::deleteKeyPressed):
   11831         (WebCore::TypingCommand::forwardDeleteKeyPressed):
   11832         * history/CachedPage.cpp:
   11833         (WebCore::CachedPage::CachedPage):
   11834         (WebCore::CachedPage::restore):
   11835         * html/HTMLAnchorElement.cpp:
   11836         (WebCore::HTMLAnchorElement::defaultEventHandler):
   11837         (WebCore::HTMLAnchorElement::setActive):
   11838         * html/HTMLInputElement.cpp:
   11839         (WebCore::HTMLInputElement::defaultEventHandler):
   11840         * html/HTMLPlugInElement.cpp:
   11841         (WebCore::HTMLPlugInElement::createNPObject):
   11842         * html/HTMLScriptElement.cpp:
   11843         (WebCore::HTMLScriptElement::evaluateScript):
   11844         * html/HTMLTokenizer.cpp:
   11845         (WebCore::HTMLTokenizer::parseTag):
   11846         (WebCore::HTMLTokenizer::processToken):
   11847         * loader/FrameLoader.cpp:
   11848         (WebCore::FrameLoader::executeScript):
   11849         (WebCore::FrameLoader::clear):
   11850         (WebCore::FrameLoader::userGestureHint):
   11851         (WebCore::FrameLoader::open):
   11852         (WebCore::FrameLoader::dispatchWindowObjectAvailable):
   11853         (WebCore::FrameLoader::switchOutLowBandwidthDisplayIfReady):
   11854         * loader/archive/cf/LegacyWebArchive.cpp:
   11855         (WebCore::LegacyWebArchive::createFromSelection):
   11856         * page/AccessibilityRenderObject.cpp:
   11857         (WebCore::AccessibilityRenderObject::selection):
   11858         (WebCore::AccessibilityRenderObject::setSelectedTextRange):
   11859         (WebCore::AccessibilityRenderObject::isFocused):
   11860         (WebCore::AccessibilityRenderObject::doAXTextMarkerRangeForLine):
   11861         (WebCore::AccessibilityRenderObject::doSetAXSelectedTextMarkerRange):
   11862         (WebCore::AccessibilityRenderObject::doAXRangeForLine):
   11863         (WebCore::AccessibilityRenderObject::handleActiveDescendantChanged):
   11864         * page/ContextMenuController.cpp:
   11865         (WebCore::ContextMenuController::contextMenuItemSelected):
   11866         * page/DOMSelection.cpp:
   11867         (WebCore::DOMSelection::anchorNode):
   11868         (WebCore::DOMSelection::baseNode):
   11869         (WebCore::DOMSelection::anchorOffset):
   11870         (WebCore::DOMSelection::baseOffset):
   11871         (WebCore::DOMSelection::focusNode):
   11872         (WebCore::DOMSelection::extentNode):
   11873         (WebCore::DOMSelection::focusOffset):
   11874         (WebCore::DOMSelection::extentOffset):
   11875         (WebCore::DOMSelection::isCollapsed):
   11876         (WebCore::DOMSelection::type):
   11877         (WebCore::DOMSelection::rangeCount):
   11878         (WebCore::DOMSelection::collapse):
   11879         (WebCore::DOMSelection::collapseToEnd):
   11880         (WebCore::DOMSelection::collapseToStart):
   11881         (WebCore::DOMSelection::empty):
   11882         (WebCore::DOMSelection::setBaseAndExtent):
   11883         (WebCore::DOMSelection::setPosition):
   11884         (WebCore::DOMSelection::modify):
   11885         (WebCore::DOMSelection::extend):
   11886         (WebCore::DOMSelection::getRangeAt):
   11887         (WebCore::DOMSelection::removeAllRanges):
   11888         (WebCore::DOMSelection::addRange):
   11889         (WebCore::DOMSelection::deleteFromDocument):
   11890         (WebCore::DOMSelection::containsNode):
   11891         (WebCore::DOMSelection::toString):
   11892         * page/DragController.cpp:
   11893         (WebCore::DragController::dragIsMove):
   11894         (WebCore::DragController::tryDocumentDrag):
   11895         (WebCore::setSelectionToDragCaret):
   11896         (WebCore::DragController::concludeDrag):
   11897         (WebCore::prepareClipboardForImageDrag):
   11898         (WebCore::DragController::startDrag):
   11899         * page/EventHandler.cpp:
   11900         (WebCore::EventHandler::selectClosestWordFromMouseEvent):
   11901         (WebCore::EventHandler::selectClosestWordOrLinkFromMouseEvent):
   11902         (WebCore::EventHandler::handleMousePressEventDoubleClick):
   11903         (WebCore::EventHandler::handleMousePressEventTripleClick):
   11904         (WebCore::EventHandler::handleMousePressEventSingleClick):
   11905         (WebCore::EventHandler::handleMousePressEvent):
   11906         (WebCore::EventHandler::updateSelectionForMouseDrag):
   11907         (WebCore::EventHandler::handleMouseReleaseEvent):
   11908         (WebCore::nodeIsNotBeingEdited):
   11909         (WebCore::EventHandler::selectCursor):
   11910         (WebCore::EventHandler::dispatchMouseEvent):
   11911         (WebCore::EventHandler::sendContextMenuEvent):
   11912         (WebCore::EventHandler::handleKeyboardSelectionMovement):
   11913         (WebCore::EventHandler::handleDrag):
   11914         * page/FocusController.cpp:
   11915         (WebCore::FocusController::setFocusedFrame):
   11916         (WebCore::clearSelectionIfNeeded):
   11917         (WebCore::FocusController::setActive):
   11918         * page/Frame.cpp:
   11919         (WebCore::Frame::~Frame):
   11920         (WebCore::Frame::script):
   11921         (WebCore::Frame::setDocument):
   11922         (WebCore::Frame::selectedText):
   11923         (WebCore::Frame::selection):
   11924         (WebCore::Frame::animation):
   11925         (WebCore::Frame::notifyRendererOfSelectionChange):
   11926         (WebCore::Frame::invalidateSelection):
   11927         (WebCore::Frame::clearCaretRectIfNeeded):
   11928         (WebCore::Frame::setFocusedNodeIfNeeded):
   11929         (WebCore::Frame::selectionLayoutChanged):
   11930         (WebCore::Frame::caretBlinkTimerFired):
   11931         (WebCore::Frame::paintCaret):
   11932         (WebCore::Frame::shouldChangeSelection):
   11933         (WebCore::Frame::updateSecureKeyboardEntryIfActive):
   11934         (WebCore::Frame::computeAndSetTypingStyle):
   11935         (WebCore::Frame::selectionComputedStyle):
   11936         (WebCore::Frame::bindingRootObject):
   11937         (WebCore::Frame::windowScriptNPObject):
   11938         (WebCore::Frame::clearScriptController):
   11939         (WebCore::Frame::selectionTextRects):
   11940         (WebCore::Frame::currentForm):
   11941         (WebCore::Frame::revealSelection):
   11942         (WebCore::Frame::revealCaret):
   11943         (WebCore::Frame::clearTimers):
   11944         (WebCore::Frame::styleForSelectionStart):
   11945         (WebCore::Frame::setSelectionFromNone):
   11946         (WebCore::Frame::findString):
   11947         (WebCore::Frame::pageDestroyed):
   11948         (WebCore::Frame::respondToChangedSelection):
   11949         (WebCore::FramePrivate::FramePrivate):
   11950         * page/Frame.h:
   11951         * page/FramePrivate.h:
   11952         * page/InspectorController.cpp:
   11953         (WebCore::canPassNodeToJavaScript):
   11954         (WebCore::InspectorController::windowScriptObjectAvailable):
   11955         * page/JavaScriptDebugServer.cpp:
   11956         (WebCore::JavaScriptDebugServer::setJavaScriptPaused):
   11957         * page/Page.cpp:
   11958         (WebCore::Page::findString):
   11959         (WebCore::Page::selection):
   11960         (WebCore::Page::setDebugger):
   11961         * page/mac/FrameMac.mm:
   11962         (WebCore::Frame::baseWritingDirectionForSelectionStart):
   11963         (WebCore::Frame::dragImageForSelection):
   11964         (WebCore::Frame::createScriptInstanceForWidget):
   11965         (WebCore::Frame::windowScriptObject):
   11966         * page/win/FrameWin.cpp:
   11967         (WebCore::Frame::dragImageForSelection):
   11968         * platform/ContextMenu.cpp:
   11969         (WebCore::selectionContainsPossibleWord):
   11970         (WebCore::ContextMenu::populate):
   11971         (WebCore::ContextMenu::checkOrEnableIfNeeded):
   11972         * plugins/PluginView.cpp:
   11973         (WebCore::PluginView::performRequest):
   11974         (WebCore::PluginView::bindingInstance):
   11975         * rendering/HitTestResult.cpp:
   11976         (WebCore::HitTestResult::isSelected):
   11977         * rendering/RenderBlock.cpp:
   11978         (WebCore::RenderBlock::paintCaret):
   11979         * rendering/RenderListBox.cpp:
   11980         (WebCore::RenderListBox::paintItemForeground):
   11981         (WebCore::RenderListBox::paintItemBackground):
   11982         * rendering/RenderObject.cpp:
   11983         (WebCore::RenderObject::selectionBackgroundColor):
   11984         (WebCore::RenderObject::selectionForegroundColor):
   11985         (WebCore::RenderObject::setAnimatableStyle):
   11986         (WebCore::RenderObject::destroy):
   11987         (WebCore::RenderObject::animation):
   11988         * rendering/RenderObject.h:
   11989         * rendering/RenderTextControl.cpp:
   11990         (WebCore::RenderTextControl::selectionStart):
   11991         (WebCore::RenderTextControl::selectionEnd):
   11992         (WebCore::RenderTextControl::setSelectionRange):
   11993         (WebCore::RenderTextControl::selectionChanged):
   11994         (WebCore::RenderTextControl::capsLockStateMayHaveChanged):
   11995         * rendering/RenderTheme.cpp:
   11996         (WebCore::RenderTheme::isFocused):
   11997         * rendering/RenderTreeAsText.cpp:
   11998         (WebCore::writeSelection):
   11999         * rendering/RenderWidget.cpp:
   12000         (WebCore::RenderWidget::destroy):
   12001         * svg/SVGDocumentExtensions.cpp:
   12002         (WebCore::SVGDocumentExtensions::createSVGEventListener):
   12003         * svg/SVGSVGElement.cpp:
   12004         (WebCore::SVGSVGElement::deselectAll):
   12005         * svg/SVGTextContentElement.cpp:
   12006         (WebCore::SVGTextContentElement::selectSubString):
   12007 
   12008 2008-06-15  Sam Weinig  <sam (a] webkit.org>
   12009 
   12010         Reviewed by Darin Adler.
   12011 
   12012         Remove outdated comment.
   12013 
   12014         * bindings/js/ScriptController.h:
   12015 
   12016 2008-06-15  Darin Adler  <darin (a] apple.com>
   12017 
   12018         - try to fix Qt build
   12019 
   12020         * dom/XMLTokenizer.cpp: Use create instead of new.
   12021 
   12022         - rename KJS::List to KJS::ArgList
   12023 
   12024         * bindings/js/JSAudioConstructor.cpp:
   12025         (WebCore::JSAudioConstructor::construct):
   12026         * bindings/js/JSAudioConstructor.h:
   12027         * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
   12028         (WebCore::JSCanvasRenderingContext2D::setFillColor):
   12029         (WebCore::JSCanvasRenderingContext2D::setStrokeColor):
   12030         (WebCore::JSCanvasRenderingContext2D::strokeRect):
   12031         (WebCore::JSCanvasRenderingContext2D::drawImage):
   12032         (WebCore::JSCanvasRenderingContext2D::drawImageFromRect):
   12033         (WebCore::JSCanvasRenderingContext2D::setShadow):
   12034         (WebCore::JSCanvasRenderingContext2D::createPattern):
   12035         (WebCore::JSCanvasRenderingContext2D::putImageData):
   12036         * bindings/js/JSClipboardCustom.cpp:
   12037         (WebCore::JSClipboard::types):
   12038         (WebCore::JSClipboard::clearData):
   12039         (WebCore::JSClipboard::getData):
   12040         (WebCore::JSClipboard::setData):
   12041         (WebCore::JSClipboard::setDragImage):
   12042         * bindings/js/JSConsoleCustom.cpp:
   12043         (WebCore::JSConsole::debug):
   12044         (WebCore::JSConsole::error):
   12045         (WebCore::JSConsole::info):
   12046         (WebCore::JSConsole::log):
   12047         (WebCore::JSConsole::warn):
   12048         (WebCore::JSConsole::assertCondition):
   12049         (WebCore::JSConsole::profile):
   12050         (WebCore::JSConsole::profileEnd):
   12051         * bindings/js/JSCustomSQLStatementCallback.cpp:
   12052         (WebCore::JSCustomSQLStatementCallback::handleEvent):
   12053         * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
   12054         (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
   12055         * bindings/js/JSCustomSQLTransactionCallback.cpp:
   12056         (WebCore::JSCustomSQLTransactionCallback::handleEvent):
   12057         * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
   12058         (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent):
   12059         * bindings/js/JSCustomVoidCallback.cpp:
   12060         (WebCore::JSCustomVoidCallback::handleEvent):
   12061         * bindings/js/JSCustomXPathNSResolver.cpp:
   12062         (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
   12063         * bindings/js/JSDOMApplicationCacheCustom.cpp:
   12064         (WebCore::JSDOMApplicationCache::add):
   12065         (WebCore::JSDOMApplicationCache::remove):
   12066         (WebCore::JSDOMApplicationCache::addEventListener):
   12067         (WebCore::JSDOMApplicationCache::removeEventListener):
   12068         (WebCore::JSDOMApplicationCache::dispatchEvent):
   12069         * bindings/js/JSDOMWindowBase.cpp:
   12070         (WebCore::windowProtoFuncAToB):
   12071         (WebCore::windowProtoFuncBToA):
   12072         (WebCore::windowProtoFuncOpen):
   12073         (WebCore::windowProtoFuncSetTimeout):
   12074         (WebCore::windowProtoFuncClearTimeout):
   12075         (WebCore::windowProtoFuncSetInterval):
   12076         (WebCore::windowProtoFuncAddEventListener):
   12077         (WebCore::windowProtoFuncRemoveEventListener):
   12078         (WebCore::windowProtoFuncShowModalDialog):
   12079         (WebCore::windowProtoFuncNotImplemented):
   12080         (WebCore::JSDOMWindowBase::installTimeout):
   12081         * bindings/js/JSDOMWindowBase.h:
   12082         * bindings/js/JSDOMWindowCustom.cpp:
   12083         (WebCore::JSDOMWindow::postMessage):
   12084         * bindings/js/JSDatabaseCustom.cpp:
   12085         (WebCore::JSDatabase::changeVersion):
   12086         (WebCore::JSDatabase::transaction):
   12087         * bindings/js/JSElementCustom.cpp:
   12088         (WebCore::JSElement::setAttribute):
   12089         (WebCore::JSElement::setAttributeNode):
   12090         (WebCore::JSElement::setAttributeNS):
   12091         (WebCore::JSElement::setAttributeNodeNS):
   12092         * bindings/js/JSEventTargetBase.cpp:
   12093         (WebCore::jsEventTargetAddEventListener):
   12094         (WebCore::jsEventTargetRemoveEventListener):
   12095         (WebCore::jsEventTargetDispatchEvent):
   12096         * bindings/js/JSEventTargetBase.h:
   12097         * bindings/js/JSHTMLAppletElementCustom.cpp:
   12098         (WebCore::JSHTMLAppletElement::callAsFunction):
   12099         * bindings/js/JSHTMLCollectionCustom.cpp:
   12100         (WebCore::JSHTMLCollection::callAsFunction):
   12101         (WebCore::JSHTMLCollection::item):
   12102         (WebCore::JSHTMLCollection::namedItem):
   12103         * bindings/js/JSHTMLDocumentCustom.cpp:
   12104         (WebCore::JSHTMLDocument::open):
   12105         (WebCore::writeHelper):
   12106         (WebCore::JSHTMLDocument::write):
   12107         (WebCore::JSHTMLDocument::writeln):
   12108         * bindings/js/JSHTMLEmbedElementCustom.cpp:
   12109         (WebCore::JSHTMLEmbedElement::callAsFunction):
   12110         * bindings/js/JSHTMLInputElementBase.cpp:
   12111         (WebCore::jsHTMLInputElementBaseFunctionSetSelectionRange):
   12112         * bindings/js/JSHTMLInputElementBase.h:
   12113         * bindings/js/JSHTMLObjectElementCustom.cpp:
   12114         (WebCore::JSHTMLObjectElement::callAsFunction):
   12115         * bindings/js/JSHTMLOptionElementConstructor.cpp:
   12116         (WebCore::JSHTMLOptionElementConstructor::construct):
   12117         * bindings/js/JSHTMLOptionElementConstructor.h:
   12118         * bindings/js/JSHTMLOptionsCollectionCustom.cpp:
   12119         (WebCore::JSHTMLOptionsCollection::add):
   12120         (WebCore::JSHTMLOptionsCollection::remove):
   12121         * bindings/js/JSHTMLSelectElementCustom.cpp:
   12122         (WebCore::JSHTMLSelectElement::remove):
   12123         * bindings/js/JSImageConstructor.cpp:
   12124         (WebCore::JSImageConstructor::construct):
   12125         * bindings/js/JSImageConstructor.h:
   12126         * bindings/js/JSJavaScriptCallFrameCustom.cpp:
   12127         (WebCore::JSJavaScriptCallFrame::evaluate):
   12128         (WebCore::JSJavaScriptCallFrame::scopeChain):
   12129         * bindings/js/JSLocationCustom.cpp:
   12130         (WebCore::JSLocation::replace):
   12131         (WebCore::JSLocation::reload):
   12132         (WebCore::JSLocation::assign):
   12133         (WebCore::JSLocation::toString):
   12134         * bindings/js/JSNodeCustom.cpp:
   12135         (WebCore::JSNode::insertBefore):
   12136         (WebCore::JSNode::replaceChild):
   12137         (WebCore::JSNode::removeChild):
   12138         (WebCore::JSNode::appendChild):
   12139         * bindings/js/JSNodeFilterCondition.cpp:
   12140         (WebCore::JSNodeFilterCondition::acceptNode):
   12141         * bindings/js/JSNodeFilterCustom.cpp:
   12142         (WebCore::JSNodeFilter::acceptNode):
   12143         * bindings/js/JSNodeIteratorCustom.cpp:
   12144         (WebCore::JSNodeIterator::nextNode):
   12145         (WebCore::JSNodeIterator::previousNode):
   12146         * bindings/js/JSNodeListCustom.cpp:
   12147         (WebCore::JSNodeList::callAsFunction):
   12148         * bindings/js/JSQuarantinedObjectWrapper.cpp:
   12149         (WebCore::JSQuarantinedObjectWrapper::construct):
   12150         (WebCore::JSQuarantinedObjectWrapper::callAsFunction):
   12151         * bindings/js/JSQuarantinedObjectWrapper.h:
   12152         * bindings/js/JSSQLResultSetRowListCustom.cpp:
   12153         (WebCore::JSSQLResultSetRowList::item):
   12154         * bindings/js/JSSQLTransactionCustom.cpp:
   12155         (WebCore::JSSQLTransaction::executeSql):
   12156         * bindings/js/JSSVGMatrixCustom.cpp:
   12157         (WebCore::JSSVGMatrix::multiply):
   12158         (WebCore::JSSVGMatrix::inverse):
   12159         (WebCore::JSSVGMatrix::translate):
   12160         (WebCore::JSSVGMatrix::scale):
   12161         (WebCore::JSSVGMatrix::scaleNonUniform):
   12162         (WebCore::JSSVGMatrix::rotate):
   12163         (WebCore::JSSVGMatrix::rotateFromVector):
   12164         (WebCore::JSSVGMatrix::flipX):
   12165         (WebCore::JSSVGMatrix::flipY):
   12166         (WebCore::JSSVGMatrix::skewX):
   12167         (WebCore::JSSVGMatrix::skewY):
   12168         * bindings/js/JSSVGPathSegListCustom.cpp:
   12169         (WebCore::JSSVGPathSegList::clear):
   12170         (WebCore::JSSVGPathSegList::initialize):
   12171         (WebCore::JSSVGPathSegList::getItem):
   12172         (WebCore::JSSVGPathSegList::insertItemBefore):
   12173         (WebCore::JSSVGPathSegList::replaceItem):
   12174         (WebCore::JSSVGPathSegList::removeItem):
   12175         (WebCore::JSSVGPathSegList::appendItem):
   12176         * bindings/js/JSSVGPointListCustom.cpp:
   12177         (WebCore::JSSVGPointList::clear):
   12178         (WebCore::JSSVGPointList::initialize):
   12179         (WebCore::JSSVGPointList::getItem):
   12180         (WebCore::JSSVGPointList::insertItemBefore):
   12181         (WebCore::JSSVGPointList::replaceItem):
   12182         (WebCore::JSSVGPointList::removeItem):
   12183         (WebCore::JSSVGPointList::appendItem):
   12184         * bindings/js/JSSVGTransformListCustom.cpp:
   12185         (WebCore::JSSVGTransformList::clear):
   12186         (WebCore::JSSVGTransformList::initialize):
   12187         (WebCore::JSSVGTransformList::getItem):
   12188         (WebCore::JSSVGTransformList::insertItemBefore):
   12189         (WebCore::JSSVGTransformList::replaceItem):
   12190         (WebCore::JSSVGTransformList::removeItem):
   12191         (WebCore::JSSVGTransformList::appendItem):
   12192         * bindings/js/JSTreeWalkerCustom.cpp:
   12193         (WebCore::JSTreeWalker::parentNode):
   12194         (WebCore::JSTreeWalker::firstChild):
   12195         (WebCore::JSTreeWalker::lastChild):
   12196         (WebCore::JSTreeWalker::nextSibling):
   12197         (WebCore::JSTreeWalker::previousSibling):
   12198         (WebCore::JSTreeWalker::previousNode):
   12199         (WebCore::JSTreeWalker::nextNode):
   12200         * bindings/js/JSXMLHttpRequestConstructor.cpp:
   12201         (WebCore::JSXMLHttpRequestConstructor::construct):
   12202         * bindings/js/JSXMLHttpRequestConstructor.h:
   12203         * bindings/js/JSXMLHttpRequestCustom.cpp:
   12204         (WebCore::JSXMLHttpRequest::open):
   12205         (WebCore::JSXMLHttpRequest::setRequestHeader):
   12206         (WebCore::JSXMLHttpRequest::send):
   12207         (WebCore::JSXMLHttpRequest::getResponseHeader):
   12208         (WebCore::JSXMLHttpRequest::overrideMimeType):
   12209         (WebCore::JSXMLHttpRequest::addEventListener):
   12210         (WebCore::JSXMLHttpRequest::removeEventListener):
   12211         (WebCore::JSXMLHttpRequest::dispatchEvent):
   12212         * bindings/js/JSXSLTProcessorConstructor.cpp:
   12213         (WebCore::JSXSLTProcessorConstructor::construct):
   12214         * bindings/js/JSXSLTProcessorConstructor.h:
   12215         * bindings/js/JSXSLTProcessorCustom.cpp:
   12216         (WebCore::JSXSLTProcessor::importStylesheet):
   12217         (WebCore::JSXSLTProcessor::transformToFragment):
   12218         (WebCore::JSXSLTProcessor::transformToDocument):
   12219         (WebCore::JSXSLTProcessor::setParameter):
   12220         (WebCore::JSXSLTProcessor::getParameter):
   12221         (WebCore::JSXSLTProcessor::removeParameter):
   12222         * bindings/js/ScheduledAction.cpp:
   12223         (WebCore::ScheduledAction::ScheduledAction):
   12224         (WebCore::ScheduledAction::execute):
   12225         * bindings/js/ScheduledAction.h:
   12226         * bindings/js/kjs_events.cpp:
   12227         (WebCore::JSAbstractEventListener::handleEvent):
   12228         (WebCore::JSLazyEventListener::parseCode):
   12229         * bindings/js/kjs_html.cpp:
   12230         (WebCore::runtimeObjectCallAsFunction):
   12231         * bindings/js/kjs_html.h:
   12232         * bindings/objc/WebScriptObject.mm:
   12233         (getListFromNSArray):
   12234         (-[WebScriptObject callWebScriptMethod:withArguments:]):
   12235         * bindings/scripts/CodeGeneratorJS.pm:
   12236         * bridge/NP_jsobject.cpp:
   12237         (getListFromVariantArgs):
   12238         (_NPN_InvokeDefault):
   12239         (_NPN_Invoke):
   12240         * bridge/c/c_instance.cpp:
   12241         (KJS::Bindings::CInstance::invokeMethod):
   12242         (KJS::Bindings::CInstance::invokeDefaultMethod):
   12243         * bridge/c/c_instance.h:
   12244         * bridge/jni/jni_instance.cpp:
   12245         (JavaInstance::invokeMethod):
   12246         * bridge/jni/jni_instance.h:
   12247         * bridge/jni/jni_jsobject.h:
   12248         * bridge/jni/jni_jsobject.mm:
   12249         (JavaJSObject::call):
   12250         (JavaJSObject::getListFromJArray):
   12251         * bridge/objc/objc_instance.h:
   12252         * bridge/objc/objc_instance.mm:
   12253         (ObjcInstance::invokeMethod):
   12254         (ObjcInstance::invokeDefaultMethod):
   12255         * bridge/objc/objc_runtime.h:
   12256         * bridge/objc/objc_runtime.mm:
   12257         (ObjcFallbackObjectImp::callAsFunction):
   12258         * bridge/qt/qt_instance.cpp:
   12259         (KJS::Bindings::QtRuntimeObjectImp::construct):
   12260         (KJS::Bindings::QtInstance::invokeMethod):
   12261         (KJS::Bindings::QtInstance::invokeDefaultMethod):
   12262         * bridge/qt/qt_instance.h:
   12263         * bridge/qt/qt_runtime.cpp:
   12264         (KJS::Bindings::convertQVariantToValue):
   12265         (KJS::Bindings::findMethodIndex):
   12266         (KJS::Bindings::QtRuntimeMetaMethod::callAsFunction):
   12267         (KJS::Bindings::QtRuntimeConnectionMethod::callAsFunction):
   12268         (KJS::Bindings::QtConnectionObject::execute):
   12269         * bridge/qt/qt_runtime.h:
   12270         * bridge/runtime.h:
   12271         (KJS::Bindings::Instance::invokeDefaultMethod):
   12272         * bridge/runtime_method.cpp:
   12273         (RuntimeMethod::callAsFunction):
   12274         * bridge/runtime_method.h:
   12275         * bridge/runtime_object.cpp:
   12276         (RuntimeObjectImp::callAsFunction):
   12277         * bridge/runtime_object.h:
   12278         * page/Console.cpp:
   12279         (WebCore::printToStandardOut):
   12280         (WebCore::Console::debug):
   12281         (WebCore::Console::error):
   12282         (WebCore::Console::info):
   12283         (WebCore::Console::log):
   12284         (WebCore::Console::assertCondition):
   12285         (WebCore::Console::profile):
   12286         (WebCore::Console::profileEnd):
   12287         (WebCore::Console::warn):
   12288         * page/Console.h:
   12289         * page/InspectorController.cpp:
   12290         (WebCore::ConsoleMessage::ConsoleMessage):
   12291         (WebCore::InspectorController::addMessageToConsole):
   12292         * page/InspectorController.h:
   12293 
   12294 2008-06-15  Darin Adler  <darin (a] apple.com>
   12295 
   12296         * platform/graphics/gtk/VideoSinkGStreamer.h: Undo a bogus rename done by the script.
   12297 
   12298 2008-06-15  Adam Barth  <abarth (a] webkit.org>
   12299 
   12300         Reviewed by Sam Weinig.
   12301 
   12302         Fix our implementation of Document.documentURI (DOM Core Level 3).
   12303 
   12304         Tests: fast/dom/documenturi-affects-relative-paths.html
   12305                fast/dom/documenturi-assigned-junk-implies-baseuri-null.html
   12306                fast/dom/documenturi-assigned-junk-implies-relative-urls-do-not-resolve.html
   12307                fast/dom/documenturi-can-hold-arbitrary-string.html
   12308                fast/dom/documenturi-loses-to-base-tag.html
   12309                fast/dom/documenturi-not-affected-by-base-tag.html
   12310 
   12311         * dom/Document.cpp:
   12312         (WebCore::Document::setDocumentURI):
   12313         (WebCore::Document::setURL):
   12314         (WebCore::Document::updateBaseURL):
   12315         * dom/Document.h:
   12316         * page/AccessibilityRenderObject.cpp:
   12317         (WebCore::AccessibilityRenderObject::url):
   12318 
   12319 2008-06-15  Adam Barth  <abarth (a] webkit.org>
   12320 
   12321         Reviewed by Sam Weinig.
   12322 
   12323         Refactor our handling of Document::m_baseURL in preparation for
   12324         correcting our implementation of Document.documentURI.
   12325 
   12326         * dom/Document.cpp:
   12327         (WebCore::Document::documentURI):
   12328         (WebCore::Document::open):
   12329         (WebCore::Document::setURL):
   12330         (WebCore::Document::setBaseElementURL):
   12331         (WebCore::Document::updateBaseURL):
   12332         (WebCore::Document::elementSheet):
   12333         (WebCore::Document::mappedElementSheet):
   12334         (WebCore::Document::completeURL):
   12335         * dom/Document.h:
   12336         (WebCore::Document::url):
   12337         (WebCore::Document::baseURL):
   12338         * html/HTMLBaseElement.cpp:
   12339         (WebCore::HTMLBaseElement::removedFromDocument):
   12340         (WebCore::HTMLBaseElement::process):
   12341         * loader/FrameLoader.cpp:
   12342         (WebCore::FrameLoader::begin):
   12343         (WebCore::FrameLoader::switchOutLowBandwidthDisplayIfReady):
   12344         * xml/XSLTProcessor.cpp:
   12345         (WebCore::XSLTProcessor::createDocumentFromSource):
   12346 
   12347 2008-06-15  Darin Adler  <darin (a] apple.com>
   12348 
   12349         - new names for more JavaScriptCore files
   12350 
   12351         * ForwardingHeaders/kjs/ArrayPrototype.h: Copied from WebCore/ForwardingHeaders/kjs/array_object.h.
   12352         * ForwardingHeaders/kjs/BooleanObject.h: Copied from WebCore/ForwardingHeaders/kjs/bool_object.h.
   12353         * ForwardingHeaders/kjs/FunctionPrototype.h: Copied from WebCore/ForwardingHeaders/kjs/function_object.h.
   12354         * ForwardingHeaders/kjs/JSArray.h: Copied from WebCore/ForwardingHeaders/kjs/array_instance.h.
   12355         * ForwardingHeaders/kjs/PropertyMap.h: Copied from WebCore/ForwardingHeaders/kjs/property_map.h.
   12356         * ForwardingHeaders/kjs/array_instance.h: Removed.
   12357         * ForwardingHeaders/kjs/array_object.h: Removed.
   12358         * ForwardingHeaders/kjs/bool_object.h: Removed.
   12359         * ForwardingHeaders/kjs/function_object.h: Removed.
   12360         * ForwardingHeaders/kjs/property_map.h: Removed.
   12361         * WebCore.vcproj/WebCore.vcproj:
   12362         * bindings/js/JSClipboardCustom.cpp:
   12363         * bindings/js/JSDatabaseCustom.cpp:
   12364         * bindings/js/JSJavaScriptCallFrameCustom.cpp:
   12365         * bindings/js/kjs_events.cpp:
   12366         * bridge/jni/jni_utility.cpp:
   12367         * bridge/qt/qt_runtime.cpp:
   12368         * bridge/runtime_array.cpp:
   12369 
   12370 2008-06-15  Darin Adler  <darin (a] apple.com>
   12371 
   12372         - new names for a few key JavaScriptCore files
   12373 
   12374         * ForwardingHeaders/kjs/JSFunction.h: Copied from WebCore/ForwardingHeaders/kjs/function.h.
   12375         * ForwardingHeaders/kjs/JSObject.h: Copied from WebCore/ForwardingHeaders/kjs/object.h.
   12376         * ForwardingHeaders/kjs/JSString.h: Copied from WebCore/ForwardingHeaders/kjs/internal.h.
   12377         * ForwardingHeaders/kjs/JSValue.h: Copied from WebCore/ForwardingHeaders/kjs/value.h.
   12378         * ForwardingHeaders/kjs/function.h: Removed.
   12379         * ForwardingHeaders/kjs/internal.h: Removed.
   12380         * ForwardingHeaders/kjs/object.h: Removed.
   12381         * ForwardingHeaders/kjs/value.h: Removed.
   12382         * WebCore.vcproj/WebCore.vcproj:
   12383         * bindings/js/JSCustomSQLStatementCallback.h:
   12384         * bindings/js/JSCustomSQLStatementErrorCallback.h:
   12385         * bindings/js/JSCustomSQLTransactionErrorCallback.h:
   12386         * bindings/js/JSCustomVoidCallback.h:
   12387         * bindings/js/JSDOMBinding.h:
   12388         * bindings/js/JSDOMWindowCustom.cpp:
   12389         * bindings/js/JSDOMWindowShell.cpp:
   12390         * bindings/js/JSQuarantinedObjectWrapper.h:
   12391         * bridge/objc/objc_runtime.h:
   12392         * bridge/objc/objc_utility.h:
   12393         * bridge/qt/qt_runtime.cpp:
   12394         * bridge/runtime.h:
   12395         * bridge/runtime_array.h:
   12396         * bridge/runtime_method.h:
   12397         * bridge/runtime_object.h:
   12398         * bridge/testbindings.cpp:
   12399         * bridge/testbindings.mm:
   12400         * bridge/testqtbindings.cpp:
   12401         * loader/FrameLoader.cpp:
   12402         * page/JavaScriptCallFrame.cpp:
   12403         * page/JavaScriptProfile.cpp:
   12404         * page/JavaScriptProfileNode.cpp:
   12405         * platform/graphics/gtk/VideoSinkGStreamer.h:
   12406         * plugins/PluginView.cpp:
   12407         * plugins/gtk/PluginViewGtk.cpp:
   12408         * plugins/qt/PluginViewQt.cpp:
   12409         * plugins/win/PluginViewWin.cpp:
   12410 
   12411 2008-06-15  Darin Adler  <darin (a] apple.com>
   12412 
   12413         Rubber stamped by Sam.
   12414 
   12415         - cut down on confusing uses of "Object" and "Imp" in
   12416           JavaScriptCore class names
   12417 
   12418         * bindings/js/JSCSSStyleDeclarationCustom.cpp:
   12419         (WebCore::JSCSSStyleDeclaration::nameGetter):
   12420         * bridge/qt/qt_runtime.cpp:
   12421         (KJS::Bindings::valueRealType):
   12422         (KJS::Bindings::convertValueToQVariant):
   12423         (KJS::Bindings::convertQVariantToValue):
   12424         (KJS::Bindings::QtRuntimeMethod::QtRuntimeMethod):
   12425         * bridge/qt/qt_runtime.h:
   12426         * bridge/runtime_method.cpp:
   12427         (RuntimeMethod::RuntimeMethod):
   12428         (RuntimeMethod::getOwnPropertySlot):
   12429         * bridge/runtime_method.h:
   12430 
   12431 2008-06-15  Dan Bernstein  <mitz (a] apple.com>
   12432 
   12433         Reviewed by Darin Adler.
   12434 
   12435         - fix <rdar://problem/5825683> Three slash URLs are modified by WebKit
   12436 
   12437         Test: fast/loader/url-parse-1.html
   12438 
   12439         URIs in which the scheme is followed by "://" are ambiguous, because
   12440         "//" can be either the beginning of a net_path or the beginning of an
   12441         abs_path whose first path segment is empty. In the case of ":///", the
   12442         net_path interpretation is invalid, because the authority (the part
   12443         between the second and third slashes) cannot be empty. However, for
   12444         historical reasons, this is allowed in http:, https: and file: URLs,
   12445         in which an empty authority means the local host.
   12446 
   12447         * platform/KURL.cpp:
   12448         (WebCore::KURL::parse): Changed to interpret URLs in which the scheme
   12449         is followed by ":///" as abs_path-only URLs, unless the scheme is http,
   12450         https or file.
   12451 
   12452 2008-06-15  Darin Adler  <darin (a] apple.com>
   12453 
   12454         Rubber stamped by Sam.
   12455 
   12456         - use JS prefix and simpler names for basic JavaScriptCore types,
   12457           to complement JSValue and JSObject
   12458 
   12459         * bindings/js/JSNavigatorCustom.cpp:
   12460         (WebCore::needsYouTubeQuirk):
   12461         * bindings/js/kjs_events.cpp:
   12462         (WebCore::JSLazyEventListener::parseCode):
   12463         * bridge/jni/jni_utility.cpp:
   12464         (KJS::Bindings::convertArrayInstanceToJavaArray):
   12465         (KJS::Bindings::convertValueToJValue):
   12466         * bridge/qt/qt_runtime.cpp:
   12467         (KJS::Bindings::valueRealType):
   12468         (KJS::Bindings::convertValueToQVariant):
   12469         (KJS::Bindings::QtConnectionObject::execute):
   12470         * bridge/runtime_array.cpp:
   12471 
   12472 2008-06-15  Darin Adler  <darin (a] apple.com>
   12473 
   12474         Reviewed by Mitz.
   12475 
   12476         - fix https://bugs.webkit.org/show_bug.cgi?id=19556
   12477           REGRESSION (r34544): Crash while visiting bigglook.com
   12478 
   12479         This fix eliminates the crash, but the logic remaining seems a little strange.
   12480         We create an IconRecord and then immediately destroy it. Worth taking another
   12481         look at this later.
   12482 
   12483         * loader/icon/IconDatabase.cpp:
   12484         (WebCore::IconDatabase::setIconDataForIconURL): Added code to remove the icon
   12485         just as in the other cases where we might be holding the single reference to it.
   12486         (WebCore::IconDatabase::setIconURLForPageURL): Fixed comment typo.
   12487         (WebCore::IconDatabase::writeToDatabase): Removed unused local variable.
   12488 
   12489 2008-06-15  Darin Adler  <darin (a] apple.com>
   12490 
   12491         Reviewed and tweaked by Sam Weinig.
   12492 
   12493         Fix for <rdar://problem/5908591>
   12494         https://bugs.webkit.org/show_bug.cgi?id=18743
   12495 
   12496         Makes DOMImplementation per-document.
   12497 
   12498         Test: http/tests/security/cross-frame-access-DOMImplementation.html
   12499 
   12500         * bindings/objc/DOMImplementationFront.cpp:
   12501         (WebCore::DOMImplementationFront::getInterface):
   12502         * bindings/objc/DOMImplementationFront.h:
   12503         * dom/DOMImplementation.cpp:
   12504         (WebCore::DOMImplementation::hasFeature):
   12505         (WebCore::DOMImplementation::createDocumentType):
   12506         (WebCore::DOMImplementation::getInterface):
   12507         (WebCore::DOMImplementation::createDocument):
   12508         (WebCore::DOMImplementation::createHTMLDocument):
   12509         * dom/DOMImplementation.h:
   12510         (WebCore::DOMImplementation::create):
   12511         * dom/Document.cpp:
   12512         (WebCore::Document::Document):
   12513         (WebCore::Document::implementation):
   12514         * dom/Document.h:
   12515         (WebCore::Document::create):
   12516         (WebCore::Document::createXHTML):
   12517         * dom/DocumentType.cpp:
   12518         * dom/DocumentType.h:
   12519         (WebCore::DocumentType::create):
   12520         (WebCore::DocumentType::entities):
   12521         (WebCore::DocumentType::notations):
   12522         (WebCore::DocumentType::name):
   12523         (WebCore::DocumentType::publicId):
   12524         (WebCore::DocumentType::systemId):
   12525         (WebCore::DocumentType::internalSubset):
   12526         * dom/Node.cpp:
   12527         (WebCore::Node::isSupported):
   12528         * dom/XMLTokenizer.cpp:
   12529         (WebCore::XMLTokenizer::internalSubset):
   12530         * html/HTMLDocument.cpp:
   12531         (WebCore::HTMLDocument::HTMLDocument):
   12532         * html/HTMLDocument.h:
   12533         (WebCore::HTMLDocument::create):
   12534         (WebCore::HTMLDocument::isHTMLDocument):
   12535         * html/HTMLParser.cpp:
   12536         (WebCore::HTMLParser::parseDoctypeToken):
   12537         * html/HTMLViewSourceDocument.cpp:
   12538         (WebCore::HTMLViewSourceDocument::HTMLViewSourceDocument):
   12539         (WebCore::HTMLViewSourceDocument::createTokenizer):
   12540         * html/HTMLViewSourceDocument.h:
   12541         (WebCore::HTMLViewSourceDocument::create):
   12542         * loader/CachedFont.cpp:
   12543         (WebCore::CachedFont::ensureSVGFontData):
   12544         * loader/FTPDirectoryDocument.cpp:
   12545         (WebCore::FTPDirectoryDocument::FTPDirectoryDocument):
   12546         * loader/FTPDirectoryDocument.h:
   12547         (WebCore::FTPDirectoryDocument::create):
   12548         * loader/FrameLoader.cpp:
   12549         (WebCore::FrameLoader::begin):
   12550         * loader/ImageDocument.cpp:
   12551         (WebCore::ImageDocument::ImageDocument):
   12552         * loader/ImageDocument.h:
   12553         (WebCore::ImageDocument::create):
   12554         (WebCore::ImageDocument::isImageDocument):
   12555         * loader/PluginDocument.cpp:
   12556         (WebCore::PluginDocument::PluginDocument):
   12557         * loader/PluginDocument.h:
   12558         (WebCore::PluginDocument::create):
   12559         (WebCore::PluginDocument::isPluginDocument):
   12560         * loader/TextDocument.cpp:
   12561         (WebCore::TextTokenizer::checkBuffer):
   12562         (WebCore::TextDocument::TextDocument):
   12563         (WebCore::createTextTokenizer):
   12564         * loader/TextDocument.h:
   12565         (WebCore::TextDocument::create):
   12566         * svg/SVGDocument.cpp:
   12567         (WebCore::SVGDocument::SVGDocument):
   12568         * svg/SVGDocument.h:
   12569         (WebCore::SVGDocument::create):
   12570         * svg/SVGElement.cpp:
   12571         (WebCore::SVGElement::isSupported):
   12572         * svg/SVGTests.cpp:
   12573         (WebCore::SVGTests::isValid):
   12574         * xml/DOMParser.cpp:
   12575         (WebCore::DOMParser::parseFromString):
   12576 
   12577 2008-06-15  Cameron Zwarich  <cwzwarich (a] uwaterloo.ca>
   12578 
   12579         Reviewed by Maciej.
   12580 
   12581         Mac build fix.
   12582 
   12583         * WebCore.base.exp:
   12584         * WebCore.order:
   12585 
   12586 2008-06-14  Darin Adler  <darin (a] apple.com>
   12587 
   12588         Rubber stamped by Sam.
   12589 
   12590         - new names for kjs_binding.h and kjs_proxy.h
   12591 
   12592         * GNUmakefile.am:
   12593         * WebCore.pro:
   12594         * WebCore.vcproj/WebCore.vcproj:
   12595         * WebCore.xcodeproj/project.pbxproj:
   12596         * WebCoreSources.bkl:
   12597         * bindings/js/JSAudioConstructor.h:
   12598         * bindings/js/JSCustomSQLStatementCallback.cpp:
   12599         * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
   12600         * bindings/js/JSCustomSQLTransactionCallback.cpp:
   12601         * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
   12602         * bindings/js/JSCustomVoidCallback.cpp:
   12603         * bindings/js/JSCustomXPathNSResolver.cpp:
   12604         * bindings/js/JSDOMBinding.cpp: Copied from WebCore/bindings/js/kjs_binding.cpp.
   12605         * bindings/js/JSDOMBinding.h: Copied from WebCore/bindings/js/kjs_binding.h.
   12606         * bindings/js/JSDOMWindowBase.cpp:
   12607         * bindings/js/JSDOMWindowBase.h:
   12608         * bindings/js/JSDOMWindowCustom.cpp:
   12609         * bindings/js/JSDOMWindowShell.cpp:
   12610         * bindings/js/JSDOMWindowShell.h:
   12611         * bindings/js/JSDocumentCustom.cpp:
   12612         * bindings/js/JSHTMLCollectionCustom.cpp:
   12613         * bindings/js/JSHTMLFrameElementCustom.cpp:
   12614         * bindings/js/JSHTMLFrameSetElementCustom.cpp:
   12615         * bindings/js/JSHTMLIFrameElementCustom.cpp:
   12616         * bindings/js/JSHTMLInputElementBase.h:
   12617         * bindings/js/JSHTMLOptionElementConstructor.h:
   12618         * bindings/js/JSImageConstructor.h:
   12619         * bindings/js/JSLocationCustom.cpp:
   12620         * bindings/js/JSNamedNodeMapCustom.cpp:
   12621         * bindings/js/JSNamedNodesCollection.h:
   12622         * bindings/js/JSNodeFilterCondition.cpp:
   12623         * bindings/js/JSNodeFilterCustom.cpp:
   12624         * bindings/js/JSRGBColor.h:
   12625         * bindings/js/JSSVGPathSegCustom.cpp:
   12626         * bindings/js/JSXMLHttpRequestConstructor.h:
   12627         * bindings/js/JSXSLTProcessorConstructor.h:
   12628         * bindings/js/JSXSLTProcessorCustom.cpp:
   12629         * bindings/js/ScheduledAction.cpp:
   12630         (WebCore::ScheduledAction::execute):
   12631         * bindings/js/ScriptController.cpp: Copied from WebCore/bindings/js/kjs_proxy.cpp.
   12632         * bindings/js/ScriptController.h: Copied from WebCore/bindings/js/kjs_proxy.h.
   12633         * bindings/js/kjs_binding.cpp: Removed.
   12634         * bindings/js/kjs_binding.h: Removed.
   12635         * bindings/js/kjs_events.cpp:
   12636         (WebCore::JSAbstractEventListener::handleEvent):
   12637         * bindings/js/kjs_html.cpp:
   12638         * bindings/js/kjs_html.h:
   12639         * bindings/js/kjs_proxy.cpp: Removed.
   12640         * bindings/js/kjs_proxy.h: Removed.
   12641         * bindings/objc/DOMInternal.mm:
   12642         * bindings/scripts/CodeGeneratorJS.pm:
   12643         * bridge/jni/jni_jsobject.mm:
   12644         * dom/Document.cpp:
   12645         * dom/EventTarget.cpp:
   12646         * dom/Node.cpp:
   12647         * dom/XMLTokenizer.cpp:
   12648         (WebCore::XMLTokenizer::startElementNs):
   12649         * history/CachedPage.cpp:
   12650         (WebCore::CachedPage::CachedPage):
   12651         (WebCore::CachedPage::restore):
   12652         * html/HTMLPlugInElement.cpp:
   12653         * html/HTMLScriptElement.cpp:
   12654         * html/HTMLTokenizer.cpp:
   12655         (WebCore::HTMLTokenizer::processToken):
   12656         * loader/FrameLoader.cpp:
   12657         (WebCore::FrameLoader::executeScript):
   12658         * page/Frame.cpp:
   12659         (WebCore::Frame::scriptProxy):
   12660         * page/Frame.h:
   12661         * page/FramePrivate.h:
   12662         * page/InspectorController.cpp:
   12663         * page/JavaScriptDebugServer.cpp:
   12664         * page/JavaScriptProfileNode.cpp:
   12665         * page/Page.cpp:
   12666         * page/gtk/FrameGtk.cpp:
   12667         * page/mac/FrameMac.mm:
   12668         * page/qt/FrameQt.cpp:
   12669         * page/win/FrameWin.cpp:
   12670         * plugins/PluginView.cpp:
   12671         (WebCore::getString):
   12672         * plugins/gtk/PluginViewGtk.cpp:
   12673         * plugins/qt/PluginViewQt.cpp:
   12674         * plugins/win/PluginViewWin.cpp:
   12675         * svg/SVGDocumentExtensions.cpp:
   12676         * xml/XMLHttpRequest.cpp:
   12677 
   12678 2008-06-14  Darin Adler  <darin (a] apple.com>
   12679 
   12680         Rubber stamped by Sam.
   12681 
   12682         - renamed HTMLGenericFormElement to HTMLFormControlElement
   12683 
   12684         * GNUmakefile.am:
   12685         * WebCore.pro:
   12686         * WebCore.vcproj/WebCore.vcproj:
   12687         * WebCore.xcodeproj/project.pbxproj:
   12688         * WebCoreSources.bkl:
   12689         * html/HTMLButtonElement.cpp:
   12690         (WebCore::HTMLButtonElement::HTMLButtonElement):
   12691         (WebCore::HTMLButtonElement::parseMappedAttribute):
   12692         (WebCore::HTMLButtonElement::defaultEventHandler):
   12693         * html/HTMLButtonElement.h:
   12694         * html/HTMLFieldSetElement.cpp:
   12695         (WebCore::HTMLFieldSetElement::HTMLFieldSetElement):
   12696         * html/HTMLFieldSetElement.h:
   12697         * html/HTMLFormCollection.cpp:
   12698         (WebCore::HTMLFormCollection::item):
   12699         (WebCore::HTMLFormCollection::getNamedFormItem):
   12700         (WebCore::HTMLFormCollection::updateNameCache):
   12701         * html/HTMLFormControlElement.cpp: Copied from WebCore/html/HTMLGenericFormElement.cpp.
   12702         * html/HTMLFormControlElement.h: Copied from WebCore/html/HTMLGenericFormElement.h.
   12703         * html/HTMLFormElement.cpp:
   12704         (WebCore::HTMLFormElement::formData):
   12705         (WebCore::HTMLFormElement::submit):
   12706         (WebCore::HTMLFormElement::formElementIndex):
   12707         (WebCore::HTMLFormElement::registerFormElement):
   12708         (WebCore::HTMLFormElement::removeFormElement):
   12709         (WebCore::HTMLFormElement::elementForAlias):
   12710         (WebCore::HTMLFormElement::addElementAlias):
   12711         (WebCore::HTMLFormElement::getNamedElements):
   12712         (WebCore::HTMLFormElement::CheckedRadioButtons::addButton):
   12713         (WebCore::HTMLFormElement::CheckedRadioButtons::removeButton):
   12714         * html/HTMLFormElement.h:
   12715         * html/HTMLGenericFormElement.cpp: Removed.
   12716         * html/HTMLGenericFormElement.h: Removed.
   12717         * html/HTMLInputElement.h:
   12718         * html/HTMLIsIndexElement.cpp:
   12719         (WebCore::HTMLIsIndexElement::parseMappedAttribute):
   12720         * html/HTMLKeygenElement.cpp:
   12721         (WebCore::HTMLKeygenElement::parseMappedAttribute):
   12722         * html/HTMLLegendElement.cpp:
   12723         (WebCore::HTMLLegendElement::HTMLLegendElement):
   12724         * html/HTMLLegendElement.h:
   12725         * html/HTMLOptGroupElement.cpp:
   12726         (WebCore::HTMLOptGroupElement::HTMLOptGroupElement):
   12727         (WebCore::HTMLOptGroupElement::insertBefore):
   12728         (WebCore::HTMLOptGroupElement::replaceChild):
   12729         (WebCore::HTMLOptGroupElement::removeChild):
   12730         (WebCore::HTMLOptGroupElement::appendChild):
   12731         (WebCore::HTMLOptGroupElement::removeChildren):
   12732         (WebCore::HTMLOptGroupElement::childrenChanged):
   12733         (WebCore::HTMLOptGroupElement::parseMappedAttribute):
   12734         (WebCore::HTMLOptGroupElement::attach):
   12735         (WebCore::HTMLOptGroupElement::detach):
   12736         * html/HTMLOptGroupElement.h:
   12737         * html/HTMLOptionElement.cpp:
   12738         (WebCore::HTMLOptionElement::HTMLOptionElement):
   12739         (WebCore::HTMLOptionElement::attach):
   12740         (WebCore::HTMLOptionElement::detach):
   12741         (WebCore::HTMLOptionElement::parseMappedAttribute):
   12742         (WebCore::HTMLOptionElement::childrenChanged):
   12743         (WebCore::HTMLOptionElement::disabled):
   12744         (WebCore::HTMLOptionElement::insertedIntoDocument):
   12745         * html/HTMLOptionElement.h:
   12746         * html/HTMLSelectElement.h:
   12747         * html/HTMLTextAreaElement.h:
   12748         * page/Frame.cpp:
   12749         (WebCore::scanForForm):
   12750         (WebCore::Frame::currentForm):
   12751         * page/mac/FrameMac.mm:
   12752         * rendering/RenderFieldset.cpp:
   12753         (WebCore::RenderFieldset::RenderFieldset):
   12754         * rendering/RenderFieldset.h:
   12755         * rendering/RenderLegend.cpp:
   12756         (WebCore::RenderLegend::RenderLegend):
   12757         * rendering/RenderLegend.h:
   12758         * rendering/RenderTextControl.cpp:
   12759         (WebCore::RenderTextControl::createInnerTextStyle):
   12760         (WebCore::RenderTextControl::updateFromElement):
   12761         (WebCore::RenderTextControl::subtreeHasChanged):
   12762         (WebCore::RenderTextControl::selectionChanged):
   12763 
   12764 2008-06-14  Sam Weinig  <sam (a] webkit.org>
   12765 
   12766         Windows build fix.
   12767 
   12768         * bindings/scripts/CodeGeneratorCOM.pm:
   12769 
   12770 2008-06-14  Darin Adler  <darin (a] apple.com>
   12771 
   12772         - more build fixing
   12773 
   12774         * platform/gtk/DragDataGtk.cpp: Added missing header.
   12775         * platform/wx/DragDataWx.cpp: Ditto.
   12776 
   12777 2008-06-14  Darin Adler  <darin (a] apple.com>
   12778 
   12779         Reviewed by Sam.
   12780 
   12781         - fix https://bugs.webkit.org/show_bug.cgi?id=19544
   12782           DashboardRegion pieces are leaking
   12783 
   12784         My recent change introduced a leak of objects owned by each DashboardRegion,
   12785         because I made ~Rect non-virtual. By using a separate RefCounted class for
   12786         each of Rect and DashboardRegion, the leak is gone. It's not clear if the
   12787         DashboardRegion class should really exist -- it doesn't have a DOM binding,
   12788         so it could conceivably be removed some day.
   12789 
   12790         * css/DashboardRegion.h: Derive from RectBase instead of from Rect.
   12791         * css/Rect.h: Added RectBase. Changed Rect to derive from RectBase.
   12792 
   12793 2008-06-14  Darin Adler  <darin (a] apple.com>
   12794 
   12795         Reviewed by Sam.
   12796 
   12797         - https://bugs.webkit.org/show_bug.cgi?id=19545
   12798           use PassRefPtr, not RefPtr, for return values
   12799 
   12800         * css/CSSParser.cpp:
   12801         (WebCore::CSSParser::parseGradient): Call release() when assigning result to avoid
   12802         a little bit of refcount churn.
   12803 
   12804         * css/CSSStyleSelector.cpp:
   12805         (WebCore::CSSStyleSelector::styleRulesForElement): Changed return value to PassRefPtr.
   12806         (WebCore::CSSStyleSelector::pseudoStyleRulesForElement): Ditto.
   12807         * css/CSSStyleSelector.h: Ditto.
   12808 
   12809         * svg/SVGElementInstanceList.cpp:
   12810         (WebCore::SVGElementInstanceList::length): Tweaked formatting.
   12811         (WebCore::SVGElementInstanceList::item): Changed return value to raw pointer.
   12812         * svg/SVGElementInstanceList.h: Ditto.
   12813 
   12814         * xml/XSLTProcessor.cpp:
   12815         (WebCore::XSLTProcessor::createDocumentFromSource): Changed return value to PassRefPtr.
   12816         (WebCore::XSLTProcessor::transformToDocument): Ditto.
   12817         (WebCore::XSLTProcessor::transformToFragment): Ditto.
   12818         * xml/XSLTProcessor.h: Ditto.
   12819 
   12820 2008-06-14  Darin Adler  <darin (a] apple.com>
   12821 
   12822         - try to fix the gtk build
   12823 
   12824         * platform/gtk/DragDataGtk.cpp:
   12825         (WebCore::DragData::createClipboard): Changed return type to PassRefPtr.
   12826 
   12827 2008-06-14  Darin Adler  <darin (a] apple.com>
   12828 
   12829         - another try at fixing the wx build
   12830 
   12831         * platform/wx/DragDataWx.cpp:
   12832         (WebCore::DragData::createClipboard): Changed return type to PassRefPtr.
   12833 
   12834 2008-06-14  Darin Adler  <darin (a] apple.com>
   12835 
   12836         - try to fix Windows build
   12837 
   12838         * svg/graphics/SVGImageEmptyClients.h: Added missing include.
   12839 
   12840 2008-06-14  Darin Adler  <darin (a] apple.com>
   12841 
   12842         - fix wx build
   12843 
   12844         * platform/wx/TemporaryLinkStubs.cpp: Removed unneeded Icon constructor.
   12845 
   12846 2008-06-14  Darin Adler  <darin (a] apple.com>
   12847 
   12848         Reviewed by Sam.
   12849 
   12850         - more work on https://bugs.webkit.org/show_bug.cgi?id=17257
   12851           start ref counts at 1 instead of 0 for speed
   12852 
   12853         * WebCore.base.exp: Added some new exports needed for functions that are now
   12854         non-virtual.
   12855 
   12856         * WebCore.xcodeproj/project.pbxproj: Moved the "icon" group to the correct
   12857         location in the project. Before it was inside "appcache"!
   12858 
   12859         * css/CSSStyleSelector.cpp:
   12860         (WebCore::CSSStyleSelector::applyProperty):
   12861         * dom/Clipboard.cpp:
   12862         (WebCore::Clipboard::Clipboard):
   12863         * editing/mac/EditorMac.mm:
   12864         (WebCore::Editor::newGeneralClipboard):
   12865         * editing/qt/EditorQt.cpp:
   12866         (WebCore::Editor::newGeneralClipboard):
   12867         * editing/wx/EditorWx.cpp:
   12868         (WebCore::Editor::newGeneralClipboard):
   12869         * loader/DocumentLoader.cpp:
   12870         (WebCore::DocumentLoader::DocumentLoader):
   12871         * loader/DocumentLoader.h:
   12872         (WebCore::DocumentLoader::create):
   12873         * loader/icon/IconDatabase.cpp:
   12874         (WebCore::IconDatabase::defaultIcon):
   12875         (WebCore::IconDatabase::setIconDataForIconURL):
   12876         (WebCore::IconDatabase::setIconURLForPageURL):
   12877         (WebCore::IconDatabase::getOrCreateIconRecord):
   12878         (WebCore::IconDatabase::performURLImport):
   12879         * loader/icon/IconDatabase.h:
   12880         * loader/icon/IconRecord.cpp:
   12881         (WebCore::IconRecord::IconRecord):
   12882         * loader/icon/IconRecord.h:
   12883         (WebCore::IconRecord::create):
   12884         * page/EventHandler.h:
   12885         * page/Frame.cpp:
   12886         (WebCore::Frame::Frame):
   12887         * page/Frame.h:
   12888         (WebCore::Frame::create):
   12889         * page/gtk/EventHandlerGtk.cpp:
   12890         (WebCore::EventHandler::createDraggingClipboard):
   12891         * page/mac/EventHandlerMac.mm:
   12892         (WebCore::EventHandler::createDraggingClipboard):
   12893         * page/qt/EventHandlerQt.cpp:
   12894         (WebCore::EventHandler::createDraggingClipboard):
   12895         * page/win/EventHandlerWin.cpp:
   12896         (WebCore::EventHandler::createDraggingClipboard):
   12897         * page/wx/EventHandlerWx.cpp:
   12898         (WebCore::EventHandler::createDraggingClipboard):
   12899         * platform/Cursor.h:
   12900         (WebCore::SharedCursor::create):
   12901         (WebCore::SharedCursor::~SharedCursor):
   12902         (WebCore::SharedCursor::SharedCursor):
   12903         * platform/DragData.h:
   12904         * platform/PopupMenu.h:
   12905         (WebCore::PopupMenu::create):
   12906         (WebCore::PopupMenu::isActive):
   12907         * platform/ScrollBar.cpp:
   12908         (WebCore::Scrollbar::Scrollbar):
   12909         * platform/SearchPopupMenu.h:
   12910         (WebCore::SearchPopupMenu::create):
   12911         * platform/graphics/FontFamily.cpp:
   12912         (WebCore::FontFamily::FontFamily):
   12913         (WebCore::operator==):
   12914         * platform/graphics/FontFamily.h:
   12915         (WebCore::FontFamily::FontFamily):
   12916         (WebCore::SharedFontFamily::create):
   12917         (WebCore::SharedFontFamily::SharedFontFamily):
   12918         (WebCore::operator!=):
   12919         (WebCore::FontFamily::next):
   12920         (WebCore::FontFamily::appendFamily):
   12921         (WebCore::FontFamily::releaseNext):
   12922         * platform/graphics/Icon.h:
   12923         * platform/graphics/gtk/IconGtk.cpp:
   12924         (WebCore::Icon::Icon):
   12925         (WebCore::Icon::~Icon):
   12926         (WebCore::Icon::newIconForFile):
   12927         * platform/graphics/mac/IconMac.mm:
   12928         (WebCore::Icon::Icon):
   12929         (WebCore::Icon::newIconForFile):
   12930         * platform/graphics/qt/IconQt.cpp:
   12931         (WebCore::Icon::Icon):
   12932         (WebCore::Icon::newIconForFile):
   12933         * platform/graphics/win/IconWin.cpp:
   12934         (WebCore::Icon::Icon):
   12935         (WebCore::Icon::~Icon):
   12936         (WebCore::Icon::newIconForFile):
   12937         * platform/gtk/ClipboardGtk.cpp:
   12938         (WebCore::Editor::newGeneralClipboard):
   12939         * platform/gtk/ClipboardGtk.h:
   12940         (WebCore::ClipboardGtk::create):
   12941         * platform/gtk/PlatformScrollBar.h:
   12942         (WebCore::PlatformScrollbar::create):
   12943         * platform/gtk/PopupMenuGtk.cpp:
   12944         (WebCore::PopupMenu::PopupMenu):
   12945         * platform/gtk/ScrollViewGtk.cpp:
   12946         (WebCore::ScrollViewScrollbar::create):
   12947         (WebCore::ScrollView::ScrollViewPrivate::setHasHorizontalScrollbar):
   12948         (WebCore::ScrollView::ScrollViewPrivate::setHasVerticalScrollbar):
   12949         * platform/mac/ClipboardMac.h:
   12950         (WebCore::ClipboardMac::create):
   12951         * platform/mac/DragDataMac.mm:
   12952         (WebCore::DragData::createClipboard):
   12953         (WebCore::DragData::containsCompatibleContent):
   12954         * platform/mac/PlatformScrollBar.h:
   12955         (WebCore::PlatformScrollbar::create):
   12956         (WebCore::PlatformScrollbar::horizontalScrollbarHeight):
   12957         (WebCore::PlatformScrollbar::verticalScrollbarWidth):
   12958         * platform/mac/PopupMenuMac.mm:
   12959         (WebCore::PopupMenu::PopupMenu):
   12960         * platform/qt/ClipboardQt.h:
   12961         (WebCore::ClipboardQt::create):
   12962         * platform/qt/DragDataQt.cpp:
   12963         (WebCore::DragData::createClipboard):
   12964         * platform/qt/PlatformScrollBar.h:
   12965         (WebCore::PlatformScrollbar::create):
   12966         * platform/qt/PopupMenuQt.cpp:
   12967         (WebCore::PopupMenu::PopupMenu):
   12968         * platform/qt/ScrollViewQt.cpp:
   12969         (WebCore::ScrollView::ScrollViewPrivate::setHasHorizontalScrollbar):
   12970         (WebCore::ScrollView::ScrollViewPrivate::setHasVerticalScrollbar):
   12971         * platform/win/ClipboardWin.h:
   12972         (WebCore::ClipboardWin::create):
   12973         * platform/win/CursorWin.cpp:
   12974         (WebCore::Cursor::Cursor):
   12975         (WebCore::loadSharedCursor):
   12976         * platform/win/DragDataWin.cpp:
   12977         (WebCore::DragData::createClipboard):
   12978         * platform/win/EditorWin.cpp:
   12979         (WebCore::Editor::newGeneralClipboard):
   12980         * platform/win/PlatformScrollBar.h:
   12981         (WebCore::PlatformScrollbar::create):
   12982         * platform/win/PopupMenuWin.cpp:
   12983         (WebCore::PopupMenu::PopupMenu):
   12984         (WebCore::PopupMenu::show):
   12985         * platform/win/ScrollViewWin.cpp:
   12986         (WebCore::ScrollView::ScrollViewPrivate::setHasHorizontalScrollbar):
   12987         (WebCore::ScrollView::ScrollViewPrivate::setHasVerticalScrollbar):
   12988         * platform/wx/ClipboardWx.h:
   12989         (WebCore::ClipboardWx::create):
   12990         * platform/wx/PlatformScrollBar.h:
   12991         (WebCore::PlatformScrollbar::create):
   12992         * platform/wx/PopupMenuWx.cpp:
   12993         (WebCore::PopupMenu::PopupMenu):
   12994         * platform/wx/TemporaryLinkStubs.cpp:
   12995         (Icon::Icon):
   12996         (Icon::newIconForFile):
   12997         * rendering/RenderLayer.cpp:
   12998         (WebCore::RenderLayer::createScrollbar):
   12999         * rendering/RenderListBox.cpp:
   13000         (WebCore::RenderListBox::updateFromElement):
   13001         * svg/graphics/SVGImage.cpp:
   13002         (WebCore::SVGImage::dataChanged):
   13003         * svg/graphics/SVGImageEmptyClients.h:
   13004         (WebCore::SVGEmptyFrameLoaderClient::createDocumentLoader):
   13005 
   13006 2008-06-14  Sam Weinig  <sam (a] webkit.org>
   13007 
   13008         Reviewed by Dan Bernstein.
   13009 
   13010         Fix for <rdar://problem/5775192>
   13011         insertAdjacentHTML and insertAdjacentText are not implemented although insertAdjacentElement is.
   13012 
   13013         - Implements insertAdjacentHTML and insertAdjacentText for HTMLElement.
   13014         - Moves the insertAdjacentElement implementation from Element to HTMLElement.
   13015 
   13016         Tests: fast/dynamic/insertAdjacentHTML.html
   13017                fast/dynamic/insertAdjacentText.html
   13018 
   13019         * dom/Element.cpp:
   13020         * dom/Element.h:
   13021         * dom/Element.idl:
   13022         * html/HTMLElement.cpp:
   13023         (WebCore::HTMLElement::insertAdjacent):
   13024         (WebCore::HTMLElement::insertAdjacentElement):
   13025         (WebCore::HTMLElement::insertAdjacentHTML):
   13026         (WebCore::HTMLElement::insertAdjacentText):
   13027         * html/HTMLElement.h:
   13028         * html/HTMLElement.idl:
   13029 
   13030 2008-06-14  Darin Adler  <darin (a] apple.com>
   13031 
   13032         Reviewed by Maciej.
   13033 
   13034         - fix https://bugs.webkit.org/show_bug.cgi?id=19538
   13035           <rdar://problem/5957595> Reading transition property from the style JS gives the wrong value
   13036 
   13037         Test: fast/dom/CSSStyleDeclaration/transition-property-names.html
   13038 
   13039         * css/CSSPrimitiveValue.cpp:
   13040         (WebCore::valueOrPropertyName): Added.
   13041         (WebCore::CSSPrimitiveValue::getStringValue): Use valueOrPropertyName since the ident can either
   13042         be a value or property ID.
   13043         (WebCore::CSSPrimitiveValue::cssText): Ditto.
   13044 
   13045         * css/makeprop.pl: Assign property IDs starting at 1001 instead of 1 so they can be stored along
   13046         with value IDs with no ambiguity.
   13047 
   13048 2008-06-14  Adam Barth  <abarth (a] webkit.org>
   13049 
   13050         Reviewed by David Kilzer.
   13051 
   13052         Fix typo.
   13053 
   13054         * dom/XMLTokenizer.cpp:
   13055         (WebCore::shouldAllowExternalLoad):
   13056 
   13057 2008-06-14  Darin Adler  <darin (a] apple.com>
   13058 
   13059         - fix build
   13060 
   13061         * plugins/PluginStream.h: Move functions back into public section.
   13062 
   13063 2008-06-14  Darin Adler  <darin (a] apple.com>
   13064 
   13065         Reviewed by Sam.
   13066 
   13067         - more work on https://bugs.webkit.org/show_bug.cgi?id=17257
   13068           start ref counts at 1 instead of 0 for speed
   13069 
   13070         * WebCore.base.exp:
   13071         * bindings/js/JSSVGMatrixCustom.cpp:
   13072         (WebCore::JSSVGMatrix::multiply):
   13073         (WebCore::JSSVGMatrix::inverse):
   13074         (WebCore::JSSVGMatrix::translate):
   13075         (WebCore::JSSVGMatrix::scale):
   13076         (WebCore::JSSVGMatrix::scaleNonUniform):
   13077         (WebCore::JSSVGMatrix::rotate):
   13078         (WebCore::JSSVGMatrix::rotateFromVector):
   13079         (WebCore::JSSVGMatrix::flipX):
   13080         (WebCore::JSSVGMatrix::flipY):
   13081         (WebCore::JSSVGMatrix::skewX):
   13082         (WebCore::JSSVGMatrix::skewY):
   13083         * bindings/js/JSSVGPODTypeWrapper.h:
   13084         (WebCore::JSSVGPODTypeWrapperCreatorReadWrite::create):
   13085         (WebCore::JSSVGPODTypeWrapperCreatorReadWrite::JSSVGPODTypeWrapperCreatorReadWrite):
   13086         (WebCore::JSSVGPODTypeWrapperCreatorReadOnly::create):
   13087         (WebCore::JSSVGPODTypeWrapperCreatorReadOnly::JSSVGPODTypeWrapperCreatorReadOnly):
   13088         (WebCore::JSSVGPODTypeWrapperCreatorForList::create):
   13089         (WebCore::JSSVGPODTypeWrapperCreatorForList::JSSVGPODTypeWrapperCreatorForList):
   13090         (WebCore::JSSVGPODTypeWrapperCache::lookupOrCreateWrapper):
   13091         (WebCore::JSSVGPODTypeWrapperCache::forgetWrapper):
   13092         * bindings/js/JSSVGPointListCustom.cpp:
   13093         (WebCore::finishGetter):
   13094         (WebCore::finishSetter):
   13095         (WebCore::finishSetterReadOnlyResult):
   13096         (WebCore::JSSVGPointList::clear):
   13097         (WebCore::JSSVGPointList::initialize):
   13098         (WebCore::JSSVGPointList::getItem):
   13099         (WebCore::JSSVGPointList::insertItemBefore):
   13100         (WebCore::JSSVGPointList::replaceItem):
   13101         (WebCore::JSSVGPointList::removeItem):
   13102         (WebCore::JSSVGPointList::appendItem):
   13103         * bindings/js/JSSVGTransformListCustom.cpp:
   13104         (WebCore::finishGetter):
   13105         (WebCore::finishSetter):
   13106         (WebCore::finishSetterReadOnlyResult):
   13107         (WebCore::JSSVGTransformList::clear):
   13108         (WebCore::JSSVGTransformList::initialize):
   13109         (WebCore::JSSVGTransformList::getItem):
   13110         (WebCore::JSSVGTransformList::insertItemBefore):
   13111         (WebCore::JSSVGTransformList::replaceItem):
   13112         (WebCore::JSSVGTransformList::removeItem):
   13113         (WebCore::JSSVGTransformList::appendItem):
   13114         * bindings/scripts/CodeGeneratorJS.pm:
   13115         * css/CSSFontSelector.cpp:
   13116         (WebCore::CSSFontSelector::CSSFontSelector):
   13117         (WebCore::CSSFontSelector::~CSSFontSelector):
   13118         * css/CSSFontSelector.h:
   13119         (WebCore::CSSFontSelector::create):
   13120         * css/CSSStyleSelector.cpp:
   13121         (WebCore::CSSStyleSelector::CSSStyleSelector):
   13122         (WebCore::CSSStyleSelector::applyProperty):
   13123         * dom/Attribute.cpp:
   13124         (WebCore::Attribute::clone):
   13125         * dom/Attribute.h:
   13126         (WebCore::Attribute::create):
   13127         (WebCore::Attribute::Attribute):
   13128         * dom/BeforeTextInsertedEvent.h:
   13129         (WebCore::BeforeTextInsertedEvent::create):
   13130         * dom/BeforeUnloadEvent.h:
   13131         (WebCore::BeforeUnloadEvent::create):
   13132         * dom/CharacterData.cpp:
   13133         (WebCore::CharacterData::dispatchModifiedEvent):
   13134         * dom/ClipboardEvent.cpp:
   13135         (WebCore::ClipboardEvent::ClipboardEvent):
   13136         * dom/ClipboardEvent.h:
   13137         (WebCore::ClipboardEvent::create):
   13138         * dom/ContainerNode.cpp:
   13139         (WebCore::ContainerNode::removeChild):
   13140         (WebCore::dispatchChildInsertionEvents):
   13141         (WebCore::dispatchChildRemovalEvents):
   13142         * dom/Document.cpp:
   13143         (WebCore::Document::createTextNode):
   13144         (WebCore::Document::createComment):
   13145         (WebCore::Document::createCDATASection):
   13146         (WebCore::Document::createProcessingInstruction):
   13147         (WebCore::Document::createEntityReference):
   13148         (WebCore::Document::createEditingTextNode):
   13149         (WebCore::Document::createEvent):
   13150         (WebCore::Document::createAttributeNS):
   13151         (WebCore::Document::finishedParsing):
   13152         * dom/Document.h:
   13153         * dom/Element.cpp:
   13154         (WebCore::Element::createAttribute):
   13155         * dom/Element.h:
   13156         * dom/Event.cpp:
   13157         (WebCore::Event::Event):
   13158         * dom/Event.h:
   13159         (WebCore::Event::create):
   13160         * dom/EventTargetNode.cpp:
   13161         (WebCore::EventTargetNode::dispatchSubtreeModifiedEvent):
   13162         (WebCore::EventTargetNode::dispatchWindowEvent):
   13163         (WebCore::EventTargetNode::dispatchUIEvent):
   13164         (WebCore::EventTargetNode::dispatchKeyEvent):
   13165         (WebCore::EventTargetNode::dispatchMouseEvent):
   13166         (WebCore::EventTargetNode::dispatchWheelEvent):
   13167         (WebCore::EventTargetNode::dispatchHTMLEvent):
   13168         (WebCore::EventTargetNode::dispatchProgressEvent):
   13169         (WebCore::EventTargetNode::dispatchStorageEvent):
   13170         * dom/KeyboardEvent.h:
   13171         (WebCore::KeyboardEvent::create):
   13172         * dom/MappedAttribute.cpp:
   13173         (WebCore::MappedAttribute::clone):
   13174         * dom/MappedAttribute.h:
   13175         (WebCore::MappedAttribute::create):
   13176         (WebCore::MappedAttribute::setDecl):
   13177         (WebCore::MappedAttribute::MappedAttribute):
   13178         * dom/MessageEvent.cpp:
   13179         (WebCore::MessageEvent::MessageEvent):
   13180         * dom/MessageEvent.h:
   13181         (WebCore::MessageEvent::create):
   13182         * dom/MouseEvent.cpp:
   13183         (WebCore::MouseEvent::MouseEvent):
   13184         (WebCore::MouseEvent::initMouseEvent):
   13185         * dom/MouseEvent.h:
   13186         (WebCore::MouseEvent::create):
   13187         * dom/MouseRelatedEvent.cpp:
   13188         (WebCore::MouseRelatedEvent::MouseRelatedEvent):
   13189         * dom/MouseRelatedEvent.h:
   13190         * dom/MutationEvent.cpp:
   13191         (WebCore::MutationEvent::MutationEvent):
   13192         (WebCore::MutationEvent::initMutationEvent):
   13193         * dom/MutationEvent.h:
   13194         (WebCore::MutationEvent::create):
   13195         * dom/OverflowEvent.h:
   13196         (WebCore::OverflowEvent::create):
   13197         * dom/ProgressEvent.h:
   13198         (WebCore::ProgressEvent::create):
   13199         * dom/StyledElement.cpp:
   13200         (WebCore::StyledElement::getMappedAttributeDecl):
   13201         (WebCore::StyledElement::setMappedAttributeDecl):
   13202         (WebCore::StyledElement::removeMappedAttributeDecl):
   13203         (WebCore::StyledElement::createAttribute):
   13204         * dom/StyledElement.h:
   13205         * dom/TextEvent.cpp:
   13206         (WebCore::TextEvent::TextEvent):
   13207         (WebCore::TextEvent::initTextEvent):
   13208         * dom/TextEvent.h:
   13209         (WebCore::TextEvent::create):
   13210         * dom/UIEvent.cpp:
   13211         (WebCore::UIEvent::UIEvent):
   13212         (WebCore::UIEvent::initUIEvent):
   13213         * dom/UIEvent.h:
   13214         (WebCore::UIEvent::create):
   13215         * dom/UIEventWithKeyState.h:
   13216         (WebCore::UIEventWithKeyState::ctrlKey):
   13217         (WebCore::UIEventWithKeyState::shiftKey):
   13218         (WebCore::UIEventWithKeyState::altKey):
   13219         (WebCore::UIEventWithKeyState::metaKey):
   13220         (WebCore::UIEventWithKeyState::UIEventWithKeyState):
   13221         * dom/WheelEvent.cpp:
   13222         (WebCore::WheelEvent::WheelEvent):
   13223         (WebCore::WheelEvent::initWheelEvent):
   13224         * dom/WheelEvent.h:
   13225         (WebCore::WheelEvent::create):
   13226         * editing/AppendNodeCommand.cpp:
   13227         (WebCore::AppendNodeCommand::AppendNodeCommand):
   13228         * editing/AppendNodeCommand.h:
   13229         (WebCore::AppendNodeCommand::create):
   13230         * editing/ApplyStyleCommand.cpp:
   13231         (WebCore::ApplyStyleCommand::applyBlockStyle):
   13232         * editing/ApplyStyleCommand.h:
   13233         (WebCore::ApplyStyleCommand::create):
   13234         * editing/BreakBlockquoteCommand.h:
   13235         (WebCore::BreakBlockquoteCommand::create):
   13236         * editing/CompositeEditCommand.cpp:
   13237         (WebCore::CompositeEditCommand::applyStyle):
   13238         (WebCore::CompositeEditCommand::applyStyledElement):
   13239         (WebCore::CompositeEditCommand::removeStyledElement):
   13240         (WebCore::CompositeEditCommand::insertParagraphSeparator):
   13241         (WebCore::CompositeEditCommand::insertLineBreak):
   13242         (WebCore::CompositeEditCommand::insertNodeBefore):
   13243         (WebCore::CompositeEditCommand::appendNode):
   13244         (WebCore::CompositeEditCommand::removeNode):
   13245         (WebCore::CompositeEditCommand::removeNodePreservingChildren):
   13246         (WebCore::CompositeEditCommand::splitTextNode):
   13247         (WebCore::CompositeEditCommand::splitElement):
   13248         (WebCore::CompositeEditCommand::mergeIdenticalElements):
   13249         (WebCore::CompositeEditCommand::wrapContentsInDummySpan):
   13250         (WebCore::CompositeEditCommand::splitTextNodeContainingElement):
   13251         (WebCore::CompositeEditCommand::joinTextNodes):
   13252         (WebCore::CompositeEditCommand::inputText):
   13253         (WebCore::CompositeEditCommand::insertTextIntoNode):
   13254         (WebCore::CompositeEditCommand::deleteTextFromNode):
   13255         (WebCore::CompositeEditCommand::replaceTextInNode):
   13256         (WebCore::CompositeEditCommand::deleteSelection):
   13257         (WebCore::CompositeEditCommand::removeCSSProperty):
   13258         (WebCore::CompositeEditCommand::removeNodeAttribute):
   13259         (WebCore::CompositeEditCommand::setNodeAttribute):
   13260         (WebCore::CompositeEditCommand::appendBlockPlaceholder):
   13261         (WebCore::CompositeEditCommand::insertBlockPlaceholder):
   13262         (WebCore::CompositeEditCommand::addBlockPlaceholderIfNeeded):
   13263         (WebCore::CompositeEditCommand::moveParagraphContentsToNewBlockIfNecessary):
   13264         (WebCore::CompositeEditCommand::moveParagraphs):
   13265         (WebCore::CompositeEditCommand::splitTreeToNode):
   13266         * editing/CompositeEditCommand.h:
   13267         (WebCore::CompositeEditCommand::isFirstCommand):
   13268         * editing/CreateLinkCommand.h:
   13269         (WebCore::CreateLinkCommand::create):
   13270         * editing/DeleteButtonController.cpp:
   13271         (WebCore::DeleteButtonController::deleteTarget):
   13272         * editing/DeleteFromTextNodeCommand.cpp:
   13273         (WebCore::DeleteFromTextNodeCommand::DeleteFromTextNodeCommand):
   13274         * editing/DeleteFromTextNodeCommand.h:
   13275         (WebCore::DeleteFromTextNodeCommand::create):
   13276         * editing/DeleteSelectionCommand.h:
   13277         (WebCore::DeleteSelectionCommand::create):
   13278         * editing/EditCommand.h:
   13279         (WebCore::SimpleEditCommand::SimpleEditCommand):
   13280         * editing/Editor.cpp:
   13281         (WebCore::Editor::deleteSelectionWithSmartDelete):
   13282         (WebCore::Editor::replaceSelectionWithFragment):
   13283         (WebCore::Editor::removeFormattingAndStyle):
   13284         (WebCore::Editor::clearLastEditCommand):
   13285         (WebCore::Editor::dispatchCPPEvent):
   13286         (WebCore::Editor::applyStyle):
   13287         (WebCore::Editor::applyParagraphStyle):
   13288         (WebCore::Editor::indent):
   13289         (WebCore::Editor::outdent):
   13290         (WebCore::dispatchEditableContentChangedEvents):
   13291         * editing/Editor.h:
   13292         * editing/EditorCommand.cpp:
   13293         (WebCore::executeInsertFragment):
   13294         (WebCore::executeCreateLink):
   13295         (WebCore::executeFormatBlock):
   13296         (WebCore::executeIndent):
   13297         (WebCore::executeInsertOrderedList):
   13298         (WebCore::executeInsertUnorderedList):
   13299         (WebCore::executeOutdent):
   13300         (WebCore::executeUnlink):
   13301         * editing/FormatBlockCommand.h:
   13302         (WebCore::FormatBlockCommand::create):
   13303         * editing/IndentOutdentCommand.cpp:
   13304         (WebCore::IndentOutdentCommand::indentRegion):
   13305         (WebCore::IndentOutdentCommand::outdentParagraph):
   13306         * editing/IndentOutdentCommand.h:
   13307         (WebCore::IndentOutdentCommand::create):
   13308         * editing/InsertIntoTextNodeCommand.cpp:
   13309         (WebCore::InsertIntoTextNodeCommand::InsertIntoTextNodeCommand):
   13310         * editing/InsertIntoTextNodeCommand.h:
   13311         (WebCore::InsertIntoTextNodeCommand::create):
   13312         * editing/InsertLineBreakCommand.h:
   13313         (WebCore::InsertLineBreakCommand::create):
   13314         * editing/InsertListCommand.cpp:
   13315         (WebCore::InsertListCommand::doApply):
   13316         * editing/InsertListCommand.h:
   13317         (WebCore::InsertListCommand::create):
   13318         * editing/InsertNodeBeforeCommand.cpp:
   13319         (WebCore::InsertNodeBeforeCommand::InsertNodeBeforeCommand):
   13320         * editing/InsertNodeBeforeCommand.h:
   13321         (WebCore::InsertNodeBeforeCommand::create):
   13322         * editing/InsertParagraphSeparatorCommand.cpp:
   13323         (WebCore::InsertParagraphSeparatorCommand::doApply):
   13324         * editing/InsertParagraphSeparatorCommand.h:
   13325         (WebCore::InsertParagraphSeparatorCommand::create):
   13326         * editing/InsertTextCommand.h:
   13327         (WebCore::InsertTextCommand::create):
   13328         * editing/JoinTextNodesCommand.cpp:
   13329         (WebCore::JoinTextNodesCommand::JoinTextNodesCommand):
   13330         * editing/JoinTextNodesCommand.h:
   13331         (WebCore::JoinTextNodesCommand::create):
   13332         * editing/MergeIdenticalElementsCommand.cpp:
   13333         (WebCore::MergeIdenticalElementsCommand::MergeIdenticalElementsCommand):
   13334         * editing/MergeIdenticalElementsCommand.h:
   13335         (WebCore::MergeIdenticalElementsCommand::create):
   13336         * editing/ModifySelectionListLevel.cpp:
   13337         (WebCore::IncreaseSelectionListLevelCommand::increaseSelectionListLevelWithType):
   13338         * editing/MoveSelectionCommand.cpp:
   13339         (WebCore::MoveSelectionCommand::doApply):
   13340         * editing/MoveSelectionCommand.h:
   13341         (WebCore::MoveSelectionCommand::create):
   13342         * editing/RemoveCSSPropertyCommand.cpp:
   13343         (WebCore::RemoveCSSPropertyCommand::RemoveCSSPropertyCommand):
   13344         * editing/RemoveCSSPropertyCommand.h:
   13345         (WebCore::RemoveCSSPropertyCommand::create):
   13346         * editing/RemoveFormatCommand.h:
   13347         (WebCore::RemoveFormatCommand::create):
   13348         * editing/RemoveNodeAttributeCommand.cpp:
   13349         (WebCore::RemoveNodeAttributeCommand::RemoveNodeAttributeCommand):
   13350         * editing/RemoveNodeAttributeCommand.h:
   13351         (WebCore::RemoveNodeAttributeCommand::create):
   13352         * editing/RemoveNodeCommand.cpp:
   13353         (WebCore::RemoveNodeCommand::RemoveNodeCommand):
   13354         * editing/RemoveNodeCommand.h:
   13355         (WebCore::RemoveNodeCommand::create):
   13356         * editing/RemoveNodePreservingChildrenCommand.cpp:
   13357         (WebCore::RemoveNodePreservingChildrenCommand::RemoveNodePreservingChildrenCommand):
   13358         (WebCore::RemoveNodePreservingChildrenCommand::doApply):
   13359         * editing/RemoveNodePreservingChildrenCommand.h:
   13360         (WebCore::RemoveNodePreservingChildrenCommand::create):
   13361         * editing/ReplaceSelectionCommand.cpp:
   13362         (WebCore::ReplacementFragment::hasInterchangeNewlineAtStart):
   13363         (WebCore::ReplacementFragment::hasInterchangeNewlineAtEnd):
   13364         (WebCore::ReplacementFragment::ReplacementFragment):
   13365         * editing/ReplaceSelectionCommand.h:
   13366         (WebCore::ReplaceSelectionCommand::create):
   13367         * editing/SetNodeAttributeCommand.cpp:
   13368         (WebCore::SetNodeAttributeCommand::SetNodeAttributeCommand):
   13369         * editing/SetNodeAttributeCommand.h:
   13370         (WebCore::SetNodeAttributeCommand::create):
   13371         * editing/SplitElementCommand.cpp:
   13372         (WebCore::SplitElementCommand::SplitElementCommand):
   13373         * editing/SplitElementCommand.h:
   13374         (WebCore::SplitElementCommand::create):
   13375         * editing/SplitTextNodeCommand.cpp:
   13376         (WebCore::SplitTextNodeCommand::SplitTextNodeCommand):
   13377         * editing/SplitTextNodeCommand.h:
   13378         (WebCore::SplitTextNodeCommand::create):
   13379         * editing/SplitTextNodeContainingElementCommand.cpp:
   13380         (WebCore::SplitTextNodeContainingElementCommand::SplitTextNodeContainingElementCommand):
   13381         * editing/SplitTextNodeContainingElementCommand.h:
   13382         (WebCore::SplitTextNodeContainingElementCommand::create):
   13383         * editing/TypingCommand.cpp:
   13384         (WebCore::TypingCommand::deleteSelection):
   13385         (WebCore::TypingCommand::deleteKeyPressed):
   13386         (WebCore::TypingCommand::forwardDeleteKeyPressed):
   13387         (WebCore::TypingCommand::insertText):
   13388         (WebCore::TypingCommand::insertLineBreak):
   13389         (WebCore::TypingCommand::insertParagraphSeparatorInQuotedContent):
   13390         (WebCore::TypingCommand::insertParagraphSeparator):
   13391         (WebCore::TypingCommand::insertTextRunWithoutNewlines):
   13392         * editing/TypingCommand.h:
   13393         (WebCore::TypingCommand::create):
   13394         (WebCore::TypingCommand::smartDelete):
   13395         * editing/UnlinkCommand.h:
   13396         (WebCore::UnlinkCommand::create):
   13397         * editing/WrapContentsInDummySpanCommand.cpp:
   13398         (WebCore::WrapContentsInDummySpanCommand::WrapContentsInDummySpanCommand):
   13399         * editing/WrapContentsInDummySpanCommand.h:
   13400         (WebCore::WrapContentsInDummySpanCommand::create):
   13401         * html/HTMLTableElement.cpp:
   13402         (WebCore::HTMLTableElement::additionalAttributeStyleDecls):
   13403         (WebCore::HTMLTableElement::addSharedCellBordersDecl):
   13404         (WebCore::HTMLTableElement::addSharedCellPaddingDecl):
   13405         (WebCore::HTMLTableElement::addSharedGroupDecls):
   13406         * html/HTMLTokenizer.cpp:
   13407         (WebCore::Token::addAttribute):
   13408         * html/HTMLViewSourceDocument.cpp:
   13409         (WebCore::HTMLViewSourceDocument::createContainingTable):
   13410         (WebCore::HTMLViewSourceDocument::addSpanWithClassName):
   13411         (WebCore::HTMLViewSourceDocument::addLine):
   13412         (WebCore::HTMLViewSourceDocument::addLink):
   13413         * loader/FrameLoader.cpp:
   13414         (WebCore::FrameLoader::didOpenURL):
   13415         * loader/appcache/DOMApplicationCache.cpp:
   13416         (WebCore::DOMApplicationCache::callListener):
   13417         * page/ContextMenuController.cpp:
   13418         (WebCore::ContextMenuController::contextMenuItemSelected):
   13419         * page/DOMWindow.cpp:
   13420         (WebCore::PostMessageTimer::PostMessageTimer):
   13421         (WebCore::PostMessageTimer::fired):
   13422         (WebCore::DOMWindow::postMessage):
   13423         * page/DragController.cpp:
   13424         (WebCore::DragController::concludeDrag):
   13425         * page/EventHandler.cpp:
   13426         (WebCore::EventHandler::dispatchDragEvent):
   13427         (WebCore::EventHandler::keyEvent):
   13428         (WebCore::EventHandler::handleTextInputEvent):
   13429         * page/Frame.cpp:
   13430         (WebCore::Frame::computeAndSetTypingStyle):
   13431         (WebCore::Frame::shouldClose):
   13432         * page/FrameView.cpp:
   13433         (WebCore::FrameView::updateOverflowStatus):
   13434         * page/mac/EventHandlerMac.mm:
   13435         (WebCore::EventHandler::currentKeyboardEvent):
   13436         * page/mac/FrameMac.mm:
   13437         * platform/DeprecatedValueListImpl.cpp:
   13438         (WebCore::DeprecatedValueListImpl::Private::Private):
   13439         (WebCore::DeprecatedValueListImpl::DeprecatedValueListImpl):
   13440         (WebCore::DeprecatedValueListImpl::copyOnWrite):
   13441         * platform/graphics/FontSelector.h:
   13442         * platform/graphics/GlyphPageTreeNode.cpp:
   13443         (WebCore::GlyphPageTreeNode::initializePage):
   13444         * platform/graphics/GlyphPageTreeNode.h:
   13445         (WebCore::GlyphPage::create):
   13446         (WebCore::GlyphPage::GlyphPage):
   13447         * rendering/RenderLayer.cpp:
   13448         (WebCore::RenderLayer::scrollToOffset):
   13449         (WebCore::RenderLayer::updateOverflowStatus):
   13450         (WebCore::RenderLayer::updateReflectionStyle):
   13451         * rendering/style/RenderStyle.h:
   13452         (WebCore::TransformOperation::~TransformOperation):
   13453         (WebCore::ScaleTransformOperation::create):
   13454         (WebCore::ScaleTransformOperation::ScaleTransformOperation):
   13455         (WebCore::RotateTransformOperation::create):
   13456         (WebCore::RotateTransformOperation::RotateTransformOperation):
   13457         (WebCore::SkewTransformOperation::create):
   13458         (WebCore::SkewTransformOperation::operator==):
   13459         (WebCore::SkewTransformOperation::SkewTransformOperation):
   13460         (WebCore::TranslateTransformOperation::create):
   13461         (WebCore::TranslateTransformOperation::operator==):
   13462         (WebCore::TranslateTransformOperation::TranslateTransformOperation):
   13463         (WebCore::MatrixTransformOperation::create):
   13464         (WebCore::MatrixTransformOperation::MatrixTransformOperation):
   13465         (WebCore::StyleReflection::create):
   13466         (WebCore::StyleReflection::StyleReflection):
   13467         * storage/StorageEvent.cpp:
   13468         (WebCore::StorageEvent::StorageEvent):
   13469         (WebCore::StorageEvent::initStorageEvent):
   13470         * storage/StorageEvent.h:
   13471         (WebCore::StorageEvent::create):
   13472         (WebCore::StorageEvent::StorageEvent):
   13473         * svg/SVGAngle.cpp:
   13474         (WebCore::SVGAngle::SVGAngle):
   13475         * svg/SVGAngle.h:
   13476         (WebCore::SVGAngle::create):
   13477         * svg/SVGAnimatedTemplate.h:
   13478         (WebCore::SVGAnimatedTemplate::SVGAnimatedTemplate):
   13479         (WebCore::lookupOrCreateWrapper):
   13480         * svg/SVGElement.cpp:
   13481         (WebCore::SVGElement::sendSVGLoadEventIfPossible):
   13482         * svg/SVGElement.h:
   13483         * svg/SVGMarkerElement.cpp:
   13484         (WebCore::SVGMarkerElement::SVGMarkerElement):
   13485         (WebCore::SVGMarkerElement::parseMappedAttribute):
   13486         (WebCore::SVGMarkerElement::setOrientToAngle):
   13487         * svg/SVGMarkerElement.h:
   13488         * svg/SVGSVGElement.cpp:
   13489         (WebCore::SVGSVGElement::createSVGAngle):
   13490         * svg/SVGSVGElement.h:
   13491         * svg/SVGZoomEvent.h:
   13492         (WebCore::SVGZoomEvent::create):
   13493         * svg/graphics/SVGImage.cpp:
   13494         * xml/XMLHttpRequest.cpp:
   13495         (WebCore::XMLHttpRequest::callReadyStateChangeListener):
   13496         (WebCore::XMLHttpRequest::dispatchProgressEvent):
   13497         * xml/XMLHttpRequestProgressEvent.cpp:
   13498         * xml/XMLHttpRequestProgressEvent.h:
   13499         (WebCore::XMLHttpRequestProgressEvent::create):
   13500         (WebCore::XMLHttpRequestProgressEvent::position):
   13501         (WebCore::XMLHttpRequestProgressEvent::totalSize):
   13502         (WebCore::XMLHttpRequestProgressEvent::XMLHttpRequestProgressEvent):
   13503 
   13504 2008-06-13  Adam Barth  <abarth (a] webkit.org>
   13505 
   13506         Reviewed by Eric Seidel.
   13507 
   13508         https://bugs.webkit.org/show_bug.cgi?id=19199
   13509 
   13510         Prevent external entities from loading across origins.
   13511 
   13512         Test: http/tests/security/xss-DENIED-xsl-external-entity.xml
   13513 
   13514         * dom/XMLTokenizer.cpp:
   13515         (WebCore::shouldAllowExternalLoad):
   13516         (WebCore::openFunc):
   13517 
   13518 2008-06-13  Adam Barth  <abarth (a] webkit.org>
   13519 
   13520         Reviewed by Darin Adler.
   13521 
   13522         https://bugs.webkit.org/show_bug.cgi?id=19450
   13523 
   13524         Allow loads of same-origin documents only.
   13525 
   13526         Test: http/tests/security/xss-DENIED-xsl-document.xml
   13527 
   13528         * xml/XSLTProcessor.cpp:
   13529         (WebCore::docLoaderFunc):
   13530 
   13531 2008-06-13  Adam Barth  <abarth (a] webkit.org>
   13532 
   13533         Reviewed by Darin Adler.
   13534 
   13535         Fixes <https://bugs.webkit.org/show_bug.cgi?id=15100>:
   13536           XMLHttpRequest::urlMatchesDocumentDomain raises error if port
   13537           information does not match exactly
   13538 
   13539         Refactor our security check for XMLHttpRequest into SecurityOrigin so
   13540         we can reuse it in other places.  This leverages our default port
   13541         technology in SecurityOrigin.
   13542 
   13543         I wasn't sure how to write a test for this because the LayoutTests run
   13544         on non-default ports.
   13545 
   13546         * platform/SecurityOrigin.cpp:
   13547         (WebCore::SecurityOrigin::canRequest):
   13548         * platform/SecurityOrigin.h:
   13549         * xml/XMLHttpRequest.cpp:
   13550         (WebCore::XMLHttpRequest::send):
   13551         (WebCore::XMLHttpRequest::willSendRequest):
   13552         * xml/XMLHttpRequest.h:
   13553 
   13554 2008-06-13  Adam Barth  <abarth (a] webkit.org>
   13555 
   13556         Reviewed by Eric Seidel.
   13557 
   13558         Removed unnecessary dependencies.
   13559 
   13560         * platform/SecurityOrigin.cpp:
   13561         * platform/SecurityOrigin.h:
   13562 
   13563 2008-06-13  Darin Adler  <darin (a] apple.com>
   13564 
   13565         Reviewed by John Sullivan.
   13566 
   13567         - added FormState argument to action policy functions
   13568 
   13569         * loader/FrameLoader.cpp:
   13570         (WebCore::FrameLoader::checkNewWindowPolicy):
   13571         (WebCore::FrameLoader::checkNavigationPolicy):
   13572         * loader/FrameLoaderClient.h:
   13573         * svg/graphics/SVGImageEmptyClients.h:
   13574         (WebCore::SVGEmptyFrameLoaderClient::dispatchDecidePolicyForNewWindowAction):
   13575         (WebCore::SVGEmptyFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
   13576 
   13577 2008-06-13  Justin Garcia  <justin.garcia (a] apple.com>
   13578 
   13579         Reviewed by Jess.
   13580 
   13581         <rdar://problem/5702248> Crash on Copy Image from the contextual menu on a broken image in Mail
   13582 
   13583         * platform/mac/PasteboardMac.mm:
   13584         (WebCore::Pasteboard::writeImage): Check to see the image loaded successfully
   13585         before trying to put data for it on the Pasteboard.  Mail shouldn't really
   13586         include the Copy Image menu item, but if it does and the user selects it,
   13587         we shouldn't crash.
   13588 
   13589 2008-06-11  Marc Ordinas i Llopis  <marc.ordinasillopis (a] collabora.co.uk>
   13590         With help from Siraj Razick  <siraj.razick (a] collabora.co.uk>
   13591 
   13592         Reviewed by Simon.
   13593 
   13594         https://bugs.webkit.org/show_bug.cgi?id=19367
   13595         [Qt] Plugins are drawn over the scrollbars
   13596 
   13597         * plugins/qt/PluginViewQt.cpp:
   13598         (WebCore::PluginView::updateWindow): Call setMask on the
   13599         QX11EmbedContainer to set the plugin clipping.
   13600 
   13601 2008-06-12  Darin Adler  <darin (a] apple.com>
   13602 
   13603         - try to fix no-SVG build
   13604 
   13605         * css/CSSComputedStyleDeclaration.cpp:
   13606         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Added a case for
   13607         CSSPropertyWebkitMask.
   13608 
   13609 2008-06-12  Darin Adler  <darin (a] apple.com>
   13610 
   13611         - try to fix Windows build
   13612 
   13613         * dom/Element.idl: Turn off ElementTraversal functions when generating COM.
   13614         Not sure why they're failing, but turning them off for now seems OK.
   13615 
   13616 2008-06-12  Adam Barth  <abarth (a] webkit.org>
   13617 
   13618         Rubberstamped by Maciej.
   13619 
   13620         Roll 34504 back in.
   13621 
   13622         Test: http/tests/xmlhttprequest/access-control-basic-allow-access-control-origin-header-data-url.html
   13623 
   13624         * platform/SecurityOrigin.cpp:
   13625         (WebCore::SecurityOrigin::toString):
   13626 
   13627 2008-06-11  Dan Bernstein  <mitz (a] apple.com>
   13628 
   13629         Reviewed by Dave Hyatt.
   13630 
   13631         - fix <rdar://problem/5876370> Safari 3.1.1 bad rendering of pages from http://www.legifrance.gouv.fr/
   13632 
   13633         Tests: fast/parser/p-in-scope-strict.html
   13634                fast/parser/p-in-scope.html
   13635 
   13636         * html/HTMLParagraphElement.h:
   13637         (WebCore::HTMLParagraphElement::endTagRequirement): Changed to require
   13638         an end tag. The explicit closing of one P element by another is now
   13639         done in error checking, and therefore takes scope into account, allowing
   13640         for <p><button><p>, for example.
   13641 
   13642         * html/HTMLParser.cpp:
   13643         (WebCore::HTMLParser::HTMLParser): Initialize m_hasPElementInScope.
   13644         (WebCore::isScopingTag): Added. Returns whether the given tag represents
   13645         a scoping element as defined in HTML 5 section 8.2.3.2.
   13646         (WebCore::HTMLParser::formCreateErrorCheck): Added a call to
   13647         pCloserCreateErrorCheck().
   13648         (WebCore::HTMLParser::ddCreateErrorCheck): Ditto.
   13649         (WebCore::HTMLParser::dtCreateErrorCheck): Ditto.
   13650         (WebCore::HTMLParser::nestedPCloserCreateErrorCheck): Added for use with
   13651         <li>, which both closes P elements in scope and any previous LI.
   13652         (WebCore::HTMLParser::pCloserCreateErrorCheck): Added. If there is a P
   13653         element in scope, acts as if a </p> tag was seen.
   13654         (WebCore::HTMLParser::pCloserStrictCreateErrorCheck): Ditto, but only
   13655         in strict mode. Used for <table>.
   13656         (WebCore::HTMLParser::getNode): Added entries for tags that close a P
   13657         element in scope.
   13658         (WebCore::HTMLParser::handleResidualStyleCloseTagAcrossBlocks): Added
   13659         code to reset m_hasPElementInScope.
   13660         (WebCore::HTMLParser::pushBlock): Added code to update
   13661         m_hasPElementInScope.
   13662         (WebCore::HTMLParser::popOneBlockCommon): Ditto.
   13663         (WebCore::HTMLParser::checkIfHasPElementInScope): Added. Updates
   13664         m_hasPElementInScope.
   13665 
   13666         * html/HTMLParser.h:
   13667         (WebCore::HTMLParser::hasPElementInScope): Added. Calls
   13668         checkIfHasPElementInScope() if needed and returns whether there
   13669         is a P element in scope.
   13670 
   13671 2008-06-11  Adam Barth  <abarth (a] webkit.org>
   13672 
   13673         Reviewed by Sam Weinig.
   13674 
   13675         https://bugs.webkit.org/show_bug.cgi?id=19460
   13676 
   13677         Update the security context of a document after calling document.open
   13678         or document.write.  Basically, when a script open()s a document, the
   13679         document gains the security context of the script.  Our implementation
   13680         now matches Firefox 3 on all these tests.
   13681 
   13682         Tests: http/tests/security/aboutBlank/security-context-alias.html
   13683                http/tests/security/aboutBlank/security-context-grandchildren-alias.html
   13684                http/tests/security/aboutBlank/security-context-grandchildren.html
   13685                http/tests/security/aboutBlank/security-context-window-open.html
   13686                http/tests/security/aboutBlank/security-context-with-base-tag.html
   13687                http/tests/security/aboutBlank/security-context-write.html
   13688                http/tests/security/aboutBlank/security-context-writeln.html
   13689                http/tests/security/aboutBlank/security-context.html
   13690                http/tests/security/cookies/document-open.html
   13691 
   13692         * bindings/js/JSDOMWindowBase.cpp:
   13693         (WebCore::createWindow):
   13694         * bindings/js/JSHTMLDocumentCustom.cpp:
   13695         (WebCore::JSHTMLDocument::open):
   13696         (WebCore::JSHTMLDocument::write):
   13697         (WebCore::JSHTMLDocument::writeln):
   13698         * dom/Document.cpp:
   13699         (WebCore::Document::open):
   13700         (WebCore::Document::write):
   13701         (WebCore::Document::writeln):
   13702         * dom/Document.h:
   13703 
   13704 2008-06-11  Adam Barth  <abarth (a] webkit.org>
   13705 
   13706         Reviewed by Sam Weinig.
   13707 
   13708         https://bugs.webkit.org/show_bug.cgi?id=19460
   13709 
   13710         Compute the cookie context at the same time as the SecurityOrigin.
   13711 
   13712         Tests: http/tests/security/cookies/create-document.html
   13713                http/tests/security/cookies/xmlhttprequest.html
   13714 
   13715         * dom/Document.cpp:
   13716         (WebCore::Document::cookie):
   13717         (WebCore::Document::initSecurityOrigin):
   13718         * dom/Document.h:
   13719         * platform/SecurityOrigin.cpp:
   13720         * platform/SecurityOrigin.h:
   13721 
   13722 2008-06-11  Adam Barth  <abarth (a] webkit.org>
   13723 
   13724         Reviewed and tweaked by Sam Weinig.
   13725 
   13726         Fix for https://bugs.webkit.org/show_bug.cgi?id=19242
   13727         Data URLs should set an Access-Control-Origin of "null"
   13728 
   13729         Correctly generate "null" as the value of the Access-Control-Origin
   13730         header for cross-site XMLHttpRequests for data URLs.
   13731 
   13732         Test: http/tests/xmlhttprequest/access-control-basic-allow-access-control-origin-header-data-url.html
   13733 
   13734         * platform/SecurityOrigin.cpp:
   13735         (WebCore::SecurityOrigin::toString):
   13736         * xml/XMLHttpRequest.cpp:
   13737         (WebCore::XMLHttpRequest::accessControlOrigin):
   13738         (WebCore::XMLHttpRequest::crossSiteAccessRequest):
   13739         (WebCore::XMLHttpRequest::handleAsynchronousMethodCheckResult):
   13740         * xml/XMLHttpRequest.h:
   13741 
   13742 2008-06-11  Sam Weinig  <sam (a] webkit.org>
   13743 
   13744         Reviewed by Adam Roben.
   13745 
   13746         Add support for "*" wildcarding for Access-Control.
   13747 
   13748         Test: http/tests/xmlhttprequest/access-control-basic-allow-star.html
   13749 
   13750         * xml/AccessItem.cpp:
   13751         (WebCore::AccessItem::AccessItem):
   13752         (WebCore::AccessItem::parseAccessItem):
   13753         (WebCore::AccessItem::matches):
   13754 
   13755 2008-06-11  Justin Garcia  <justin.garcia (a] apple.com>
   13756 
   13757         Reviewed by Eric.
   13758 
   13759         <https://bugs.webkit.org/show_bug.cgi?id=19455>
   13760         Crash at RenderObject::childAt during JustifyCenter
   13761 
   13762         * editing/ApplyStyleCommand.cpp:
   13763         (WebCore::ApplyStyleCommand::surroundNodeRangeWithElement): Added a FIXME.
   13764         * editing/CompositeEditCommand.cpp:
   13765         (WebCore::CompositeEditCommand::moveParagraphs): If we're removing a line
   13766         break that consists of a single '\n' in a text node by itself, remove
   13767         the whole text node instead of just emptying it out.
   13768         * editing/Selection.cpp:
   13769         (WebCore::Selection::validate): Added a FIXME about canonicalizing
   13770         to positions that aren't candidates.
   13771         * editing/SelectionController.cpp:
   13772         (WebCore::SelectionController::nodeWillBeRemoved): When the base and/or
   13773         extent are about to be removed but the start and end aren't, change the 
   13774         base and extent to the start and end, but don't re-validate the selection, 
   13775         since doing so could move the start and end into the node that is about 
   13776         to be removed.
   13777 
   13778 2008-06-11  Gregory Hughes  <ghughes (a] apple.com>
   13779 
   13780         Reviewed by David Harrison.
   13781 
   13782         <rdar://problem/5990049> AXTextMarker bytes getting messed up when getting AXTextMarkerRangeForUnorderedTextMarkersParameterizedAttribute
   13783 
   13784         * page/mac/AccessibilityObjectWrapper.mm:
   13785         (textMarkerForVisiblePosition):
   13786 
   13787 2008-06-11  Adriaan de Groot  <groot (a] kde.org>
   13788 
   13789         Reviewed by Simon.
   13790 
   13791         Fix compilation with Sun Studio 12
   13792 
   13793         It seems like the compiler instantiates a different template version. I.e.,
   13794         instead of parseUASheet<char [nnnn]>, it's probably instantiating
   13795         parseUASheet<char *>, which then passes 4 or 8 as the size value.
   13796 
   13797         * css/CSSStyleSelector.cpp:
   13798         (WebCore::loadDefaultStyle):
   13799         (WebCore::CSSStyleSelector::styleForElement):
   13800 
   13801 2008-06-11  Benjamin Meyer  <bmeyer (a] trolltech.com>
   13802 
   13803         Reviewed by Simon.
   13804 
   13805         Fixed a crash when a slot connect to QWebPage::unsupportedContent would show a
   13806         modal dialog with an event loop.
   13807 
   13808         We have a queued connection to various signals in the QNetworkReply, for which
   13809         it can happen that after releasing the QNetworkReply and disconnecting from it
   13810         a slot connected to one of the signals may still be called due to a posted
   13811         MetaCall event due to the queued connections. This patch removes the posted
   13812         events explicitly, fixes the coding style a bit and makes sure the same happens
   13813         when abort() is called.
   13814 
   13815         * platform/network/qt/QNetworkReplyHandler.cpp:
   13816         (WebCore::QNetworkReplyHandler::abort):
   13817         (WebCore::QNetworkReplyHandler::release):
   13818         * platform/network/qt/QNetworkReplyHandler.h:
   13819 
   13820 2008-06-10  Kevin Ollivier  <kevino (a] theolliviers.com>
   13821 
   13822         wx build fix. Reorder include dirs so that WebCore/html/HTMLElementFactory.h
   13823         appears before WebCore/DerivedSources/HTMLElementFactory.h. (See note in commit
   13824         for more details. This is probably not the right fix, but this will get us building
   13825         until the right fix is in place.)
   13826 
   13827         * webcore-base.bkl:
   13828 
   13829 2008-06-10  Eric Seidel  <eric (a] webkit.org>
   13830 
   13831         Reviewed by mjs.
   13832 
   13833         Fix disconnected event listener crasher
   13834         m_disconnectedNodesWithEventListeners not updated when nodes adopted
   13835         https://bugs.webkit.org/show_bug.cgi?id=19451
   13836 
   13837         I failed to find a way to make this crash DRT, I can crash Debug Safari consistently.
   13838 
   13839         * dom/EventTarget.cpp:
   13840         (WebCore::EventTarget::willMoveToNewOwnerDocument):
   13841         (WebCore::EventTarget::didMoveToNewOwnerDocument):
   13842         * dom/EventTarget.h:
   13843         * dom/EventTargetNode.cpp:
   13844         (WebCore::EventTargetNode::willMoveToNewOwnerDocument):
   13845         (WebCore::EventTargetNode::didMoveToNewOwnerDocument):
   13846         * dom/EventTargetNode.h:
   13847 
   13848 2008-06-10  Julien Chaffraix  <jchaffraix (a] webkit.org>
   13849 
   13850         Reviewed by Eric.
   13851 
   13852         Part of bug 19200: *.in files should embed more information
   13853         https://bugs.webkit.org/show_bug.cgi?id=19200
   13854 
   13855         Move more parameters to the XML files.
   13856 
   13857         * dom/make_names.pl:
   13858         * html/HTMLAttributeNames.in:
   13859         * html/HTMLTagNames.in:
   13860         * svg/svgattrs.in:
   13861         * svg/svgtags.in:
   13862 
   13863 2008-06-09  Dan Bernstein  <mitz (a] apple.com>
   13864 
   13865         Reviewed by Justin Garcia.
   13866 
   13867         - fix https://bugs.webkit.org/show_bug.cgi?id=19443
   13868           <rdar://problem/5994544> REGRESSION (r32531-r32652): Moving the insertion point past a newline inserted in a text area skips the next character
   13869 
   13870         Tests added to editing/selection/move-left-right.html
   13871 
   13872         * editing/VisiblePosition.cpp:
   13873         (WebCore::VisiblePosition::leftVisuallyDistinctCandidate): When falling
   13874         back from visual to logical movement, restart at the original position
   13875         rather than an intermediate position.
   13876         (WebCore::VisiblePosition::rightVisuallyDistinctCandidate): Ditto.
   13877 
   13878 2008-06-07  Brent Fulgham  <bfulgham (a] gmail.com>
   13879 
   13880         Reviewed by Maciej.
   13881 
   13882         Windows build fix.
   13883 
   13884         * platform/graphics/win/QTMovieWin.cpp:
   13885         (initializeSupportedTypes):
   13886 
   13887 2008-06-07  Julien Chaffraix  <jchaffraix (a] webkit.org>
   13888 
   13889         Reviewed by Darin Adler.
   13890 
   13891         Part of bug 19200: *.in files should embed more information
   13892         https://bugs.webkit.org/show_bug.cgi?id=19200
   13893 
   13894         - Added a parameters hash that will hold the parameters we used to give in the
   13895         command line.
   13896 
   13897         - Added "tags" / "attrs" XML tag parsing to fill the parameters hash.
   13898 
   13899         - Moved namespace, namespaceURI, namespacePrefix and cppNamespace in the *.in
   13900         files.
   13901 
   13902         * dom/make_names.pl:
   13903         * html/HTMLAttributeNames.in:
   13904         * html/HTMLTagNames.in:
   13905         * svg/svgattrs.in:
   13906         * svg/svgtags.in:
   13907         * svg/xlinkattrs.in:
   13908         * xml/xmlattrs.in:
   13909 
   13910 2008-06-09  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   13911 
   13912         Reviewed by Simon
   13913 
   13914         Use the text color from QStyle when styling form elements.
   13915 
   13916         * platform/qt/RenderThemeQt.cpp:
   13917         (WebCore::RenderThemeQt::adjustButtonStyle):
   13918         (WebCore::RenderThemeQt::adjustTextFieldStyle):
   13919         (WebCore::RenderThemeQt::adjustMenuListStyle):
   13920         (WebCore::RenderThemeQt::adjustMenuListButtonStyle):
   13921 
   13922 2008-06-09  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   13923 
   13924         Reviewed by Darin.
   13925 
   13926         Incorporated Darin's comments to bug 18965.
   13927 
   13928         * rendering/RenderTheme.cpp:
   13929 
   13930 2008-06-08  Adam Barth  <abarth (a] webkit.org>
   13931 
   13932         Reviewed by Darin Adler.
   13933 
   13934         Inherit document.URL from parent's document.URL, not document.baseURI.
   13935 
   13936         https://bugs.webkit.org/show_bug.cgi?id=19257
   13937 
   13938         Tests: http/tests/security/cookies/assign-document-url.html
   13939                http/tests/security/cookies/base-about-blank.html
   13940                http/tests/security/cookies/base-tag.html
   13941                http/tests/security/cookies/basic.html
   13942 
   13943         * dom/Document.cpp:
   13944         (WebCore::Document::open):
   13945 
   13946 2008-06-08  Kevin Ollivier  <kevino (a] theolliviers.com>
   13947 
   13948         Reviewed by Darin Adler.
   13949 
   13950         Fix font asserts in wx port. Our computeHash function should generate the same hash
   13951         for two identical fonts which are different objects, which it wasn't doing before.
   13952         
   13953         https://bugs.webkit.org/show_bug.cgi?id=19310
   13954 
   13955         * platform/graphics/wx/FontPlatformData.h:
   13956         (WebCore::FontPlatformData::computeHash):
   13957 
   13958 2008-06-08  Dan Bernstein  <mitz (a] apple.com>
   13959 
   13960         Reviewed by Darin Adler.
   13961 
   13962         - fix <rdar://problem/5961977> Crash in RenderBlock::layoutColumns()
   13963 
   13964         Test: fast/multicol/content-height-zero-crash.html
   13965 
   13966         * rendering/RenderBlock.cpp:
   13967         (WebCore::RenderBlock::layoutColumns): Changed to not keep creating
   13968         overflow columns that have zero height, because they do not help with
   13969         fitting content in.
   13970 
   13971 2008-06-08  Adam Roben  <aroben (a] apple.com>
   13972 
   13973         Fix Bug 18837: Database panel fails to display tables if any value is
   13974         NULL
   13975 
   13976         <https://bugs.webkit.org/show_bug.cgi?id=18837>
   13977 
   13978         Reviewed by Darin Adler.
   13979 
   13980         Test: manual-tests/inspector/display-sql-null.html
   13981 
   13982         * manual-tests/inspector/display-sql-null.html: Added.
   13983         * page/inspector/DatabasesPanel.js:
   13984         (WebInspector.DatabasesPanel.prototype.dataGridForResult): Convert all
   13985         objects to strings before operating on them.
   13986 
   13987 2008-06-08  Adam Roben  <aroben (a] apple.com>
   13988 
   13989         Fix Bug 19438: Transaction errors are never displayed in database
   13990         query view
   13991 
   13992         <https://bugs.webkit.org/show_bug.cgi?id=19438>
   13993 
   13994         Reviewed by Darin Adler.
   13995 
   13996         Test: manual-tests/inspector/display-sql-transaction-error.html
   13997 
   13998         * manual-tests/inspector/display-sql-transaction-error.html: Added.
   13999         * page/inspector/DatabaseQueryView.js:
   14000         (WebInspector.DatabaseQueryView.prototype._enterKeyPressed): Use
   14001         _executeSqlError as the error callback for executeSql.
   14002         (WebInspector.DatabaseQueryView.prototype._queryError): Changed to
   14003         only take two parameters. This matches what we'll be passed if
   14004         db.transaction fails.
   14005         (WebInspector.DatabaseQueryView.prototype._executeSqlError): Added.
   14006         Calls through to _queryError.
   14007 
   14008 2008-06-08  Dirk Schulze  <vbs85 (a] gmx.de>
   14009 
   14010         Reviewed by Eric Seidel.
   14011 
   14012         https://bugs.webkit.org/show_bug.cgi?id=18840
   14013         [CAIRO] Clipping-support for SVG
   14014 
   14015         Support for clipping in SVG/Cairo and fixes transformation of paths.
   14016 
   14017         * platform/graphics/cairo/PathCairo.cpp:
   14018         (WebCore::Path::transform):
   14019         * svg/graphics/cairo/SVGResourceClipperCairo.cpp:
   14020         (WebCore::SVGResourceClipper::applyClip):
   14021 
   14022 2008-06-08  Dirk Schulze  <vbs85 (a] gmx.de>
   14023 
   14024         Reviewed by Eric Seidel.
   14025 
   14026         https://bugs.webkit.org/show_bug.cgi?id=18663
   14027         Add text-stroke support to Cairo.
   14028 
   14029         * platform/graphics/cairo/FontCairo.cpp:
   14030         (WebCore::Font::drawGlyphs):
   14031 
   14032 2008-06-08  Vincent Ricard  <magic (a] magicninja.org>
   14033 
   14034         Reviewed by Darin.
   14035 
   14036         https://bugs.webkit.org/show_bug.cgi?id=16489
   14037         WebKit does not support ElementTraversal specification
   14038 
   14039         Tests: fast/dom/Element/element-traversal.html
   14040 
   14041         * dom/Element.cpp:
   14042         (WebCore::Element::firstElementChild):
   14043         (WebCore::Element::lastElementChild):
   14044         (WebCore::Element::previousElementSibling):
   14045         (WebCore::Element::nextElementSibling):
   14046         (WebCore::Element::childElementCount):
   14047         * dom/Element.h:
   14048         * dom/Element.idl:
   14049 
   14050 2008-06-08  Bradley Meck  <genisis329 (a] gmail.com>
   14051 
   14052         Reviewed by Darin.
   14053 
   14054         - fix https://bugs.webkit.org/show_bug.cgi?id=17051
   14055           safari should treat "url()" as a valid CSS value
   14056 
   14057         Test: fast/css/invalid-cursor-property-crash.html
   14058 
   14059         Changed check for empty url() to be a check for null since url() is valid
   14060         CSS even if it is empty.
   14061 
   14062         * css/CSSParser.cpp:
   14063         (WebCore::CSSParser::parseValue):
   14064         (WebCore::CSSParser::parseFillImage):
   14065         (WebCore::CSSParser::parseBorderImage):
   14066 
   14067 2008-06-08  Vincent Ricard  <magic (a] magicninja.org>
   14068 
   14069         Reviewed by Darin.
   14070 
   14071         Bug 18041: DOMNodeRemoved events are sent twice
   14072 
   14073         Test: fast/dom/Node/DOMNodeRemovedEvent.html
   14074 
   14075         * dom/ContainerNode.cpp:
   14076         (WebCore::ContainerNode::removeChild):
   14077 
   14078 2008-06-08  Tony Chang  <idealisms (a] gmail.com>
   14079 
   14080         Reviewed by Eric Seidel.
   14081 
   14082         - fix https://bugs.webkit.org/show_bug.cgi?id=18167
   14083           there should be no text-drag delay on any platform except for Mac
   14084 
   14085         Move the drag text delay value into the platform specific files.
   14086 
   14087         Test: editing/selection/drag-text-delay.html
   14088 
   14089         * page/EventHandler.cpp:
   14090         * page/EventHandler.h:
   14091         * page/gtk/EventHandlerGtk.cpp:
   14092         * page/mac/EventHandlerMac.mm:
   14093         * page/qt/EventHandlerQt.cpp:
   14094         * page/win/EventHandlerWin.cpp:
   14095         * page/wx/EventHandlerWx.cpp:
   14096 
   14097 2008-06-08  Rob Buis  <buis (a] kde.org>
   14098 
   14099         Reviewed by Darin.
   14100 
   14101         - fix https://bugs.webkit.org/show_bug.cgi?id=18512
   14102           getPresentationAttribute returns a shared object
   14103 
   14104         Test: svg/custom/getPresentationAttribute-modify.svg
   14105 
   14106         * svg/SVGStyledElement.cpp:
   14107         (WebCore::SVGStyledElement::getPresentationAttribute): Unshare the mapped style
   14108         declaration if it is shared before returning the presentation attribute.
   14109 
   14110 2008-06-08  Alp Toker  <alp (a] nuanti.com>
   14111 
   14112         autotools/GTK+ build system cleanup. Don't include WebKit API in the
   14113         WebCore build as it's no longer needed since r34426.
   14114 
   14115         * GNUmakefile.am:
   14116 
   14117 2008-06-08  Jonathan Haas <myrdred (a] gmail.com>
   14118 
   14119         Reviewed by Eric Seidel.
   14120         Tweaked by Darin while landing to make it compile.
   14121 
   14122         - fix http://bugs.webkit.org/show_bug.cgi?id=19128
   14123           SVG fonts don't work with medial Arabic characters
   14124 
   14125         Haven't figured out a way to make an automated test for this.
   14126 
   14127         * svg/SVGGlyphElement.h: Made arabicForm unsigned so it fits into
   14128         its 3-bit field. Did the same for orientation's 2-bit field.
   14129 
   14130         * svg/SVGFont.cpp: Did a bit of minor tweaking.
   14131         (WebCore::isCompatibleArabicForm): Added a cast to avoid a warning
   14132         since the type is now different.
   14133 
   14134 2008-06-08  Eric Carlson  <eric.carlson (a] apple.com>
   14135 
   14136         Reviewed by Antti.
   14137 
   14138         - fix https://bugs.webkit.org/show_bug.cgi?id=19299
   14139           <rdar://problem/5969392>
   14140 
   14141         Generate the media MIME type list dynamically.
   14142 
   14143         * platform/graphics/win/QTMovieWin.cpp:
   14144         (initializeSupportedTypes):
   14145 
   14146 2008-06-08  Christian Persch  <chpe (a] gnome.org>
   14147 
   14148         Reviewed by Darin.
   14149 
   14150         - https://bugs.webkit.org/show_bug.cgi?id=19309
   14151           uninitialised variable in PluginView
   14152 
   14153         * plugins/PluginView.cpp:
   14154         (WebCore::PluginView::PluginView): Initialise the NPP's pdata member to 0.
   14155 
   14156 2008-06-08  Darin Adler  <darin (a] apple.com>
   14157 
   14158         Reviewed by Mitz.
   14159 
   14160         - https://bugs.webkit.org/show_bug.cgi?id=19435
   14161           fix warning in PluginDebug.h
   14162 
   14163         * plugins/PluginDebug.h: Don't compile the errorStrings array if LOG_DISABLED is set.
   14164 
   14165 2008-06-07  Dan Bernstein  <mitz (a] apple.com>
   14166 
   14167         Reviewed by Dave Hyatt.
   14168 
   14169         - fix https://bugs.webkit.org/show_bug.cgi?id=19431
   14170           <rdar://problem/5994060> REGRESSION (r32406): tabs retain hover color after mouse out
   14171 
   14172         Covered by fast/css/remove-shorthand.html
   14173 
   14174         * css/CSSMutableStyleDeclaration.cpp:
   14175         (WebCore::initShorthandMap): Fixed a typo which mapped the background
   14176         shorthand to the mask properties.
   14177 
   14178 2008-06-07  Brent Fulgham  <bfulgham (a] gmail.com>
   14179 
   14180         Cairo build fix for r34432
   14181 
   14182         * html/CanvasPattern.cpp:
   14183         (WebCore::CanvasPattern::CanvasPattern):
   14184 
   14185 2008-06-07  Darin Adler  <darin (a] apple.com>
   14186 
   14187         Reviewed by Mitz.
   14188 
   14189         - work on https://bugs.webkit.org/show_bug.cgi?id=17257
   14190           start ref counts at 1 instead of 0 for speed
   14191 
   14192         * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
   14193         (WebCore::toHTMLCanvasStyle):
   14194         * bindings/js/JSDOMWindowBase.cpp:
   14195         (WebCore::JSDOMWindowBase::findOrCreateJSEventListener):
   14196         (WebCore::JSDOMWindowBase::findOrCreateJSUnprotectedEventListener):
   14197         * bindings/js/JSNodeFilterCondition.h:
   14198         (WebCore::JSNodeFilterCondition::create):
   14199         * bindings/js/JSNodeFilterCustom.cpp:
   14200         (WebCore::toNodeFilter):
   14201         * bindings/js/JSSVGLazyEventListener.h:
   14202         (WebCore::JSSVGLazyEventListener::create):
   14203         * bindings/js/JSSVGMatrixCustom.cpp:
   14204         (WebCore::JSSVGMatrix::multiply):
   14205         (WebCore::JSSVGMatrix::inverse):
   14206         (WebCore::JSSVGMatrix::translate):
   14207         (WebCore::JSSVGMatrix::scale):
   14208         (WebCore::JSSVGMatrix::scaleNonUniform):
   14209         (WebCore::JSSVGMatrix::rotate):
   14210         (WebCore::JSSVGMatrix::rotateFromVector):
   14211         (WebCore::JSSVGMatrix::flipX):
   14212         (WebCore::JSSVGMatrix::flipY):
   14213         (WebCore::JSSVGMatrix::skewX):
   14214         (WebCore::JSSVGMatrix::skewY):
   14215         * bindings/js/JSSVGPODTypeWrapper.h:
   14216         (WebCore::JSSVGPODTypeWrapperCreatorReadWrite::create):
   14217         (WebCore::JSSVGPODTypeWrapperCreatorReadWrite::JSSVGPODTypeWrapperCreatorReadWrite):
   14218         (WebCore::JSSVGPODTypeWrapperCreatorReadOnly::create):
   14219         (WebCore::JSSVGPODTypeWrapperCreatorReadOnly::JSSVGPODTypeWrapperCreatorReadOnly):
   14220         (WebCore::JSSVGPODTypeWrapperCreatorForList::create):
   14221         (WebCore::JSSVGPODTypeWrapperCreatorForList::JSSVGPODTypeWrapperCreatorForList):
   14222         (WebCore::JSSVGPODTypeWrapperCache::lookupOrCreateWrapper):
   14223         (WebCore::JSSVGPODTypeWrapperCache::forgetWrapper):
   14224         * bindings/js/JSSVGPointListCustom.cpp:
   14225         (WebCore::commonExit):
   14226         (WebCore::commonExitReadOnly):
   14227         (WebCore::JSSVGPointList::initialize):
   14228         (WebCore::JSSVGPointList::getItem):
   14229         (WebCore::JSSVGPointList::insertItemBefore):
   14230         (WebCore::JSSVGPointList::replaceItem):
   14231         (WebCore::JSSVGPointList::removeItem):
   14232         (WebCore::JSSVGPointList::appendItem):
   14233         * bindings/js/JSSVGTransformListCustom.cpp:
   14234         (WebCore::JSSVGTransformList::initialize):
   14235         (WebCore::JSSVGTransformList::getItem):
   14236         (WebCore::JSSVGTransformList::insertItemBefore):
   14237         (WebCore::JSSVGTransformList::replaceItem):
   14238         (WebCore::JSSVGTransformList::removeItem):
   14239         (WebCore::JSSVGTransformList::appendItem):
   14240         * bindings/js/kjs_binding.cpp:
   14241         (WebCore::setDOMException):
   14242         * bindings/js/kjs_events.h:
   14243         (WebCore::JSUnprotectedEventListener::create):
   14244         (WebCore::JSEventListener::create):
   14245         (WebCore::JSLazyEventListener::create):
   14246         * bindings/js/kjs_proxy.cpp:
   14247         (WebCore::KJSProxy::createHTMLEventHandler):
   14248         (WebCore::KJSProxy::createSVGEventHandler):
   14249         * bindings/objc/DOM.mm:
   14250         (WebCore::ObjCNodeFilterCondition::create):
   14251         (WebCore::ObjCNodeFilterCondition::ObjCNodeFilterCondition):
   14252         (WebCore::ObjCNodeFilterCondition::acceptNode):
   14253         (-[DOMDocument createNodeIterator:whatToShow:filter:expandEntityReferences:]):
   14254         (-[DOMDocument createTreeWalker:whatToShow:filter:expandEntityReferences:]):
   14255         * bindings/scripts/CodeGeneratorJS.pm:
   14256         * css/CSSComputedStyleDeclaration.cpp:
   14257         (WebCore::valueForNinePieceImage):
   14258         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
   14259         * css/CSSFontFace.h:
   14260         (WebCore::CSSFontFace::create):
   14261         (WebCore::CSSFontFace::CSSFontFace):
   14262         * css/CSSFontSelector.cpp:
   14263         (WebCore::CSSFontSelector::addFontFaceRule):
   14264         * css/CSSParser.cpp:
   14265         (WebCore::CSSParser::parseDashboardRegions):
   14266         (WebCore::CSSParser::parseCounterContent):
   14267         (WebCore::CSSParser::parseShape):
   14268         (WebCore::BorderImageParseContext::commitBorderImage):
   14269         * css/CSSSegmentedFontFace.cpp:
   14270         (WebCore::CSSSegmentedFontFace::CSSSegmentedFontFace):
   14271         * css/CSSSegmentedFontFace.h:
   14272         (WebCore::CSSSegmentedFontFace::create):
   14273         * css/Counter.h:
   14274         (WebCore::Counter::create):
   14275         (WebCore::Counter::Counter):
   14276         * css/DashboardRegion.h:
   14277         (WebCore::DashboardRegion::create):
   14278         (WebCore::DashboardRegion::DashboardRegion):
   14279         * css/Rect.h:
   14280         (WebCore::Rect::create):
   14281         (WebCore::Rect::Rect):
   14282         * dom/ChildNodeList.h:
   14283         (WebCore::ChildNodeList::create):
   14284         * dom/ClassNodeList.h:
   14285         (WebCore::ClassNodeList::create):
   14286         * dom/Clipboard.h:
   14287         * dom/DOMCoreException.h:
   14288         (WebCore::DOMCoreException::create):
   14289         * dom/DOMImplementation.cpp:
   14290         (WebCore::DOMImplementation::instance):
   14291         * dom/DOMImplementation.h:
   14292         (WebCore::DOMImplementation::DOMImplementation):
   14293         * dom/Document.cpp:
   14294         (WebCore::Document::addWindowEventListener):
   14295         (WebCore::Document::removeWindowEventListener):
   14296         (WebCore::Document::setDecoder):
   14297         (WebCore::Document::images):
   14298         (WebCore::Document::applets):
   14299         (WebCore::Document::embeds):
   14300         (WebCore::Document::plugins):
   14301         (WebCore::Document::objects):
   14302         (WebCore::Document::scripts):
   14303         (WebCore::Document::links):
   14304         (WebCore::Document::forms):
   14305         (WebCore::Document::anchors):
   14306         (WebCore::Document::all):
   14307         (WebCore::Document::windowNamedItems):
   14308         (WebCore::Document::documentNamedItems):
   14309         * dom/Document.h:
   14310         * dom/DynamicNodeList.h:
   14311         * dom/EventException.h:
   14312         (WebCore::EventException::create):
   14313         (WebCore::EventException::EventException):
   14314         * dom/EventListener.h:
   14315         * dom/EventTarget.cpp:
   14316         (WebCore::EventTarget::addEventListener):
   14317         (WebCore::EventTarget::removeEventListener):
   14318         * dom/ExceptionBase.cpp:
   14319         (WebCore::ExceptionBase::ExceptionBase):
   14320         * dom/ExceptionBase.h:
   14321         * dom/NameNodeList.h:
   14322         (WebCore::NameNodeList::create):
   14323         * dom/Node.cpp:
   14324         (WebCore::Node::childNodes):
   14325         (WebCore::Node::getElementsByTagNameNS):
   14326         (WebCore::Node::getElementsByName):
   14327         (WebCore::Node::getElementsByClassName):
   14328         (WebCore::Node::querySelectorAll):
   14329         * dom/NodeFilterCondition.h:
   14330         * dom/NodeList.h:
   14331         * dom/RangeException.h:
   14332         (WebCore::RangeException::create):
   14333         (WebCore::RangeException::RangeException):
   14334         * dom/RegisteredEventListener.h:
   14335         (WebCore::RegisteredEventListener::create):
   14336         * dom/SelectorNodeList.cpp:
   14337         (WebCore::createSelectorNodeList):
   14338         * dom/SelectorNodeList.h:
   14339         * dom/StaticNodeList.cpp:
   14340         (WebCore::StaticNodeList::StaticNodeList):
   14341         * dom/StaticNodeList.h:
   14342         (WebCore::StaticNodeList::adopt):
   14343         * dom/TagNodeList.h:
   14344         (WebCore::TagNodeList::create):
   14345         * history/HistoryItem.cpp:
   14346         (WebCore::defaultNotifyHistoryItemChanged):
   14347         (WebCore::HistoryItem::HistoryItem):
   14348         (WebCore::HistoryItem::copy):
   14349         * history/HistoryItem.h:
   14350         (WebCore::HistoryItem::create):
   14351         * html/CanvasGradient.h:
   14352         * html/CanvasPattern.cpp:
   14353         (WebCore::CanvasPattern::CanvasPattern):
   14354         * html/CanvasPattern.h:
   14355         (WebCore::CanvasPattern::create):
   14356         * html/CanvasRenderingContext2D.cpp:
   14357         (WebCore::CanvasRenderingContext2D::State::State):
   14358         (WebCore::CanvasRenderingContext2D::setStrokeColor):
   14359         (WebCore::CanvasRenderingContext2D::setFillColor):
   14360         (WebCore::CanvasRenderingContext2D::createPattern):
   14361         * html/CanvasStyle.cpp:
   14362         (WebCore::CanvasStyle::CanvasStyle):
   14363         * html/CanvasStyle.h:
   14364         (WebCore::CanvasStyle::create):
   14365         * html/HTMLCollection.cpp:
   14366         (WebCore::HTMLCollection::HTMLCollection):
   14367         (WebCore::HTMLCollection::create):
   14368         * html/HTMLCollection.h:
   14369         * html/HTMLElement.cpp:
   14370         (WebCore::HTMLElement::children):
   14371         * html/HTMLFormCollection.cpp:
   14372         (WebCore::HTMLFormCollection::create):
   14373         * html/HTMLFormCollection.h:
   14374         * html/HTMLFormElement.cpp:
   14375         (WebCore::HTMLFormElement::elements):
   14376         * html/HTMLMapElement.cpp:
   14377         (WebCore::HTMLMapElement::areas):
   14378         * html/HTMLMediaElement.cpp:
   14379         (WebCore::HTMLMediaElement::load):
   14380         (WebCore::HTMLMediaElement::mediaPlayerNetworkStateChanged):
   14381         (WebCore::HTMLMediaElement::willSaveToCache):
   14382         * html/HTMLNameCollection.h:
   14383         (WebCore::HTMLNameCollection::create):
   14384         * html/HTMLOptionsCollection.cpp:
   14385         (WebCore::HTMLOptionsCollection::create):
   14386         * html/HTMLOptionsCollection.h:
   14387         * html/HTMLSelectElement.cpp:
   14388         (WebCore::HTMLSelectElement::options):
   14389         * html/HTMLTableElement.cpp:
   14390         (WebCore::HTMLTableElement::rows):
   14391         (WebCore::HTMLTableElement::tBodies):
   14392         * html/HTMLTableRowElement.cpp:
   14393         (WebCore::HTMLTableRowElement::cells):
   14394         * html/HTMLTableRowsCollection.cpp:
   14395         (WebCore::HTMLTableRowsCollection::HTMLTableRowsCollection):
   14396         (WebCore::HTMLTableRowsCollection::create):
   14397         * html/HTMLTableRowsCollection.h:
   14398         * html/HTMLTableSectionElement.cpp:
   14399         (WebCore::HTMLTableSectionElement::rows):
   14400         * html/MediaError.h:
   14401         (WebCore::MediaError::create):
   14402         (WebCore::MediaError::MediaError):
   14403         * loader/CachedCSSStyleSheet.cpp:
   14404         (WebCore::CachedCSSStyleSheet::CachedCSSStyleSheet):
   14405         * loader/CachedFont.cpp:
   14406         (WebCore::CachedFont::ensureSVGFontData):
   14407         * loader/CachedXSLStyleSheet.cpp:
   14408         (WebCore::CachedXSLStyleSheet::CachedXSLStyleSheet):
   14409         * loader/FrameLoader.cpp:
   14410         (WebCore::FrameLoader::write):
   14411         (WebCore::FrameLoader::createHistoryItem):
   14412         * loader/ImageDocument.cpp:
   14413         (WebCore::ImageEventListener::create):
   14414         (WebCore::ImageEventListener::ImageEventListener):
   14415         (WebCore::ImageDocument::createDocumentStructure):
   14416         * loader/TextResourceDecoder.h:
   14417         (WebCore::TextResourceDecoder::create):
   14418         * page/Page.cpp:
   14419         (WebCore::Page::userStyleSheet):
   14420         * svg/SVGException.h:
   14421         (WebCore::SVGException::create):
   14422         (WebCore::SVGException::SVGException):
   14423         * svg/animation/SVGSMILElement.cpp:
   14424         (WebCore::ConditionEventListener::create):
   14425         (WebCore::ConditionEventListener::ConditionEventListener):
   14426         (WebCore::SVGSMILElement::connectConditions):
   14427         * xml/XMLHttpRequest.cpp:
   14428         (WebCore::XMLHttpRequest::didReceiveData):
   14429         * xml/XMLHttpRequestException.h:
   14430         (WebCore::XMLHttpRequestException::create):
   14431         (WebCore::XMLHttpRequestException::XMLHttpRequestException):
   14432         * xml/XPathException.h:
   14433         (WebCore::XPathException::create):
   14434         (WebCore::XPathException::XPathException):
   14435         * xml/XPathResult.cpp:
   14436         (WebCore::InvalidatingEventListener::create):
   14437         (WebCore::InvalidatingEventListener::InvalidatingEventListener):
   14438         (WebCore::XPathResult::XPathResult):
   14439         * xml/XSLTProcessor.cpp:
   14440         (WebCore::XSLTProcessor::createDocumentFromSource):
   14441 
   14442 2008-06-07  Christian Dywan  <christian (a] twotoasts.de>
   14443 
   14444         Reviewed by Alp Toker.
   14445 
   14446         https://bugs.webkit.org/show_bug.cgi?id=17324
   14447         Remove PLATFORM ifdefs from ContextMenu.cpp
   14448 
   14449         * platform/ContextMenu.cpp:
   14450         (WebCore::ContextMenu::populate):
   14451 
   14452 2008-06-07  Eric Seidel  <eric (a] webkit.org>
   14453 
   14454         Reviewed by ap.
   14455 
   14456         Still more CSSParser cleanup
   14457         - use c++ style member initializers in CSSParser()
   14458         - change m_styleElement to m_styleSheet and make it a CSSStyleSheet
   14459         - finally add my copyright to the files I've been cleaning
   14460 
   14461         * css/CSSGrammar.y:
   14462         * css/CSSParser.cpp:
   14463         (WebCore::CSSParser::CSSParser):
   14464         (WebCore::CSSParser::setupParser):
   14465         (WebCore::CSSParser::parseValue):
   14466         (WebCore::CSSParser::parseColor):
   14467         (WebCore::CSSParser::parseDeclaration):
   14468         (WebCore::CSSParser::parseContent):
   14469         (WebCore::CSSParser::parseFillImage):
   14470         (WebCore::CSSParser::parseFontFaceSrc):
   14471         (WebCore::CSSParser::parseBorderImage):
   14472         (WebCore::CSSParser::createCharsetRule):
   14473         (WebCore::CSSParser::createImportRule):
   14474         (WebCore::CSSParser::createMediaRule):
   14475         (WebCore::CSSParser::createStyleRule):
   14476         * css/CSSParser.h:
   14477         * css/SVGCSSParser.cpp:
   14478 
   14479 2008-06-07  Eric Seidel  <eric (a] webkit.org>
   14480 
   14481         Reviewed by ap.
   14482 
   14483         More CSSParser cleanup
   14484         - rename CSSParser::id to m_id
   14485         - rename CSSParser::data to m_data
   14486         - fix a few whitespace and argument name issues
   14487 
   14488         * css/CSSGrammar.y:
   14489         * css/CSSParser.cpp:
   14490         (WebCore::CSSParser::CSSParser):
   14491         (WebCore::CSSParser::~CSSParser):
   14492         (WebCore::CSSParser::setupParser):
   14493         (WebCore::CSSParser::parseValue):
   14494         * css/CSSParser.h:
   14495 
   14496 2008-06-07  Eric Seidel  <eric (a] webkit.org>
   14497 
   14498         Reviewed by ap.
   14499 
   14500         Rename CSSParser::strict to m_strict
   14501 
   14502         * css/CSSGrammar.y:
   14503         * css/CSSParser.cpp:
   14504         (WebCore::CSSParser::CSSParser):
   14505         (WebCore::CSSParser::parseColor):
   14506         (WebCore::CSSParser::parseValue):
   14507         (WebCore::CSSParser::parseBackgroundColor):
   14508         (WebCore::CSSParser::parseFillPositionXY):
   14509         (WebCore::CSSParser::parseFillSize):
   14510         (WebCore::CSSParser::parseTransitionDuration):
   14511         (WebCore::CSSParser::parseTransitionRepeatCount):
   14512         (WebCore::CSSParser::parseTimingFunctionValue):
   14513         (WebCore::CSSParser::parseDashboardRegions):
   14514         (WebCore::CSSParser::parseShape):
   14515         (WebCore::CSSParser::parseFont):
   14516         (WebCore::CSSParser::parseColorFromValue):
   14517         (WebCore::CSSParser::parseShadow):
   14518         (WebCore::CSSParser::parseReflect):
   14519         (WebCore::CSSParser::parseBorderImage):
   14520         * css/CSSParser.h:
   14521 
   14522 2008-06-07  Eric Seidel  <eric (a] webkit.org>
   14523 
   14524         Reviewed by ap.
   14525 
   14526         Rename CSSParser::defaultNamespace to m_defaultNamespace
   14527 
   14528         * css/CSSGrammar.y:
   14529         * css/CSSParser.cpp:
   14530         (WebCore::CSSParser::CSSParser):
   14531         (WebCore::CSSParser::parseSheet):
   14532         * css/CSSParser.h:
   14533         * css/CSSStyleSheet.cpp:
   14534         (WebCore::CSSStyleSheet::addNamespace):
   14535 
   14536 2008-06-07  Eric Seidel  <eric (a] webkit.org>
   14537 
   14538         Reviewed by ap.
   14539 
   14540         Rename CSSParser::important to m_important
   14541 
   14542         * css/CSSGrammar.y:
   14543         * css/CSSParser.cpp:
   14544         (WebCore::CSSParser::CSSParser):
   14545         (WebCore::CSSParser::parseValue):
   14546         (WebCore::CSSParser::parseFontFaceSrc):
   14547         (WebCore::CSSParser::parseFontFaceUnicodeRange):
   14548         * css/CSSParser.h:
   14549 
   14550 2008-06-07  Eric Seidel  <eric (a] webkit.org>
   14551 
   14552         Reviewed by ap.
   14553 
   14554         Rename CSSParser::rule to m_rule
   14555 
   14556         * css/CSSGrammar.y:
   14557         * css/CSSParser.cpp:
   14558         (WebCore::CSSParser::parseSheet):
   14559         (WebCore::CSSParser::parseRule):
   14560         (WebCore::CSSParser::parseValue):
   14561         (WebCore::CSSParser::parseColor):
   14562         (WebCore::CSSParser::parseDeclaration):
   14563         * css/CSSParser.h:
   14564 
   14565 2008-06-07  Eric Seidel  <eric (a] webkit.org>
   14566 
   14567         Reviewed by ap.
   14568 
   14569         Yet another cleanup patch for CSSParser
   14570         Rename CSSParser::valueList to m_valueList
   14571 
   14572         * css/CSSGrammar.y:
   14573         * css/CSSParser.cpp:
   14574         (WebCore::CSSParser::CSSParser):
   14575         (WebCore::CSSParser::~CSSParser):
   14576         (WebCore::CSSParser::checkForOrphanedUnits):
   14577         (WebCore::CSSParser::parseValue):
   14578         (WebCore::CSSParser::parseFillShorthand):
   14579         (WebCore::CSSParser::parseTransitionShorthand):
   14580         (WebCore::CSSParser::parseShorthand):
   14581         (WebCore::CSSParser::parse4Values):
   14582         (WebCore::CSSParser::parseContent):
   14583         (WebCore::CSSParser::parseFillImage):
   14584         (WebCore::CSSParser::parseFillPositionXY):
   14585         (WebCore::CSSParser::parseFillPosition):
   14586         (WebCore::CSSParser::parseFillSize):
   14587         (WebCore::CSSParser::parseFillProperty):
   14588         (WebCore::CSSParser::parseTransitionProperty):
   14589         (WebCore::CSSParser::parseDashboardRegions):
   14590         (WebCore::CSSParser::parseShape):
   14591         (WebCore::CSSParser::parseFont):
   14592         (WebCore::CSSParser::parseFontFamily):
   14593         (WebCore::CSSParser::parseFontFaceSrc):
   14594         (WebCore::CSSParser::parseFontFaceUnicodeRange):
   14595         (WebCore::CSSParser::parseColor):
   14596         (WebCore::CSSParser::parseShadow):
   14597         (WebCore::CSSParser::parseReflect):
   14598         (WebCore::BorderImageParseContext::commitBorderImage):
   14599         (WebCore::CSSParser::parseBorderImage):
   14600         (WebCore::CSSParser::parseCounter):
   14601         (WebCore::CSSParser::parseGradient):
   14602         (WebCore::CSSParser::parseCanvas):
   14603         (WebCore::CSSParser::parseTransform):
   14604         (WebCore::CSSParser::parseTransformOrigin):
   14605         * css/CSSParser.h:
   14606         * css/SVGCSSParser.cpp:
   14607         (WebCore::CSSParser::parseSVGValue):
   14608         (WebCore::CSSParser::parseSVGStrokeDasharray):
   14609         (WebCore::CSSParser::parseSVGPaint):
   14610         (WebCore::CSSParser::parseSVGColor):
   14611 
   14612 2008-06-07  Eric Seidel  <eric (a] webkit.org>
   14613 
   14614         Reviewed by ap.
   14615 
   14616         More cleanup to CSSParser, rename mediaQuery to m_mediaQuery
   14617         Remove CSSParser::current and CSSParser::currentParser and use
   14618         the magic of YYLEX_PARAM instead.
   14619 
   14620         * css/CSSParser.cpp:
   14621         (WebCore::enterGeneratedParser):
   14622         (WebCore::CSSParser::parseSheet):
   14623         (WebCore::CSSParser::parseRule):
   14624         (WebCore::CSSParser::parseValue):
   14625         (WebCore::CSSParser::parseColor):
   14626         (WebCore::CSSParser::parseDeclaration):
   14627         (WebCore::CSSParser::parseMediaQuery):
   14628         * css/CSSParser.h:
   14629 
   14630 2008-06-07  Julien Chaffraix  <jchaffraix (a] webkit.org>
   14631 
   14632         Reviewed by Eric.
   14633 
   14634         Part of bug 19200: *.in files should embed more information
   14635         https://bugs.webkit.org/show_bug.cgi?id=19200
   14636 
   14637         - Added XML attributes' parsing.
   14638 
   14639         - Moved (most) capitalization and audio hacks in the *.in files.
   14640 
   14641         * dom/make_names.pl:
   14642         * html/HTMLTagNames.in:
   14643         * svg/svgtags.in:
   14644 
   14645 2008-06-07  Pierre-Luc Beaudoin  <pierre-luc.beaudoin (a] collabora.co.uk>
   14646 
   14647         With the help of Jonathon Jongsma.
   14648 
   14649         Reviewed by Dan Bernstein.
   14650 
   14651         Fix for https://bugs.webkit.org/show_bug.cgi?id=19279
   14652         REGRESSION (r32660): Text not redrawn correctly when selection changes
   14653 
   14654         * rendering/InlineTextBox.cpp:
   14655         (WebCore::InlineTextBox::paint):
   14656         Add a condition for when ePos <= sPos 
   14657 
   14658 2008-06-06  Julien Chaffraix  <jchaffraix (a] webkit.org>
   14659 
   14660         Reviewed by Eric.
   14661 
   14662         Part of bug 19200: *.in files should embed more information
   14663         https://bugs.webkit.org/show_bug.cgi?id=19200
   14664 
   14665         - Switched *.in files to XML format.
   14666 
   14667         - Added (simple) parsing facilities in make_names.pl using the XML::Tiny Perl parser.
   14668 
   14669         - Updated the build systems to include bindings/scripts when executing make_names.pl
   14670         (for XMLTiny dependency).
   14671 
   14672         - Cleaned-up make_names.pl a little.
   14673 
   14674         * DerivedSources.make:
   14675         * GNUmakefile.am:
   14676         * WebCore.pro:
   14677         * bindings/scripts/XMLTiny.pm: Added.
   14678         * dom/make_names.pl:
   14679         * html/HTMLAttributeNames.in:
   14680         * html/HTMLTagNames.in:
   14681         * svg/svgattrs.in:
   14682         * svg/svgtags.in:
   14683         * svg/xlinkattrs.in:
   14684         * xml/xmlattrs.in:
   14685 
   14686 2008-06-06  Robert Blaut  <webkit (a] blaut.biz>
   14687 
   14688         Reviewed by Darin Adler.
   14689 
   14690         Fix for https://bugs.webkit.org/show_bug.cgi?id=19407 
   14691         CSS3 Selector Test: *= ~= ^= $= should all accept the empty string, but match nothing
   14692 
   14693         Test: fast/css/begin-end-contain-selector-empty-value.html
   14694 
   14695         * css/CSSStyleSelector.cpp:
   14696         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
   14697 
   14698 2008-06-06  Eric Seidel  <eric (a] webkit.org>
   14699 
   14700         Reviewed by mitz.
   14701 
   14702         More cleanup of CSSParser.
   14703         Rename CSSParser::numParsedProperties and maxNumParsedProperites to m_*
   14704 
   14705         * css/CSSGrammar.y:
   14706         * css/CSSParser.cpp:
   14707         (WebCore::CSSParser::CSSParser):
   14708         (WebCore::CSSParser::parseValue):
   14709         (WebCore::CSSParser::parseColor):
   14710         (WebCore::CSSParser::parseDeclaration):
   14711         (WebCore::CSSParser::addProperty):
   14712         (WebCore::CSSParser::rollbackLastProperties):
   14713         (WebCore::CSSParser::clearProperties):
   14714         (WebCore::CSSParser::parse4Values):
   14715         (WebCore::CSSParser::createStyleRule):
   14716         (WebCore::CSSParser::createFontFaceRule):
   14717         * css/CSSParser.h:
   14718         * css/SVGCSSParser.cpp:
   14719         (WebCore::CSSParser::parseSVGValue):
   14720 
   14721 2008-06-06  Eric Seidel  <eric (a] webkit.org>
   14722 
   14723         Reviewed by mitz.
   14724 
   14725         More cleanup of CSSParser.
   14726         Rename CSSParser::parsedProperties to m_parsedProperties.
   14727 
   14728         * css/CSSParser.cpp:
   14729         (WebCore::CSSParser::CSSParser):
   14730         (WebCore::CSSParser::~CSSParser):
   14731         (WebCore::CSSParser::parseValue):
   14732         (WebCore::CSSParser::parseColor):
   14733         (WebCore::CSSParser::parseDeclaration):
   14734         (WebCore::CSSParser::addProperty):
   14735         (WebCore::CSSParser::rollbackLastProperties):
   14736         (WebCore::CSSParser::clearProperties):
   14737         (WebCore::CSSParser::parse4Values):
   14738         (WebCore::CSSParser::createStyleRule):
   14739         (WebCore::CSSParser::createFontFaceRule):
   14740         * css/CSSParser.h:
   14741         * css/SVGCSSParser.cpp:
   14742         (WebCore::CSSParser::parseSVGValue):
   14743 
   14744 2008-06-06  Eric Seidel  <eric (a] webkit.org>
   14745 
   14746         Reviewed by mitz.
   14747 
   14748         Start the cleanup of CSSParser.
   14749         Rename CSSParser::styleElement to CSSParser::m_styleElement
   14750 
   14751         * css/CSSGrammar.y:
   14752         * css/CSSParser.cpp:
   14753         (WebCore::CSSParser::document):
   14754         (WebCore::CSSParser::parseValue):
   14755         (WebCore::CSSParser::parseContent):
   14756         (WebCore::CSSParser::parseFillImage):
   14757         (WebCore::CSSParser::parseFontFaceSrc):
   14758         (WebCore::CSSParser::parseBorderImage):
   14759         (WebCore::CSSParser::createCharsetRule):
   14760         (WebCore::CSSParser::createImportRule):
   14761         (WebCore::CSSParser::createMediaRule):
   14762         (WebCore::CSSParser::createStyleRule):
   14763         * css/CSSParser.h:
   14764 
   14765 2008-06-06  Anthony Ricaud  <rik24d (a] gmail.com>
   14766 
   14767         Reviewed by adele.  Landed by eseidel.
   14768 
   14769         https://bugs.webkit.org/show_bug.cgi?id=18337
   14770         
   14771         Calls listBoxOnChange() in typeAheadFind() when the <select> tag is a listBox.
   14772         
   14773         * html/HTMLSelectElement.cpp:
   14774         (WebCore::HTMLSelectElement::typeAheadFind):
   14775 
   14776 2008-06-05  Justin Garcia  <justin.garcia (a] apple.com>
   14777 
   14778         Reviewed by John.
   14779 
   14780         <rdar://problem/5890684> REGRESSION(r23969): Deleting a line break changes the style of text after the break
   14781         
   14782         Serialization of font-family:-webkit-monospace when it came from a 
   14783         CSSMutableStyleDeclaration would wrap the value in single quotes but 
   14784         serialization of the same property value pair from a CSSComputedStyleDeclaration 
   14785         wouldn't, which kept code that checked for and removed non-redundant styles from 
   14786         style spans from working correctly.
   14787 
   14788         A redundant style left on a style span would not normally create a rendering 
   14789         difference, but it did in this case because an element with 
   14790         font-family:-webkit-monospace does not appear to inherit font-size.  
   14791         Added a FIXME about how we might need to keep font-size on a style span if its 
   14792         non-redundant styles include font-family:-webkit-monospace, although I couldn't 
   14793         create a test case to produce this scenario.
   14794 
   14795         * css/FontFamilyValue.cpp:
   14796         (WebCore::isValidCSSIdentifier): Don't return false if the String starts
   14797         with a '-'.  This function now appears identical to isCSSTokenizerIdentifier,
   14798         so perhaps we should use a single function.
   14799         * editing/ReplaceSelectionCommand.cpp:
   14800         (WebCore::ReplaceSelectionCommand::handleStyleSpans): Added FIXME.  Removed the
   14801         creation of two Strings that were never used.
   14802 
   14803 2008-06-06  Justin Garcia  <justin.garcia (a] apple.com>
   14804 
   14805         Reviewed by Darin.
   14806 
   14807         <https://bugs.webkit.org/show_bug.cgi?id=19087>
   14808         Editing crash in IndentOutdentCommand::prepareBlockquoteLevelForInsertion, ASSERT in debug mode
   14809 
   14810         * editing/DeleteSelectionCommand.cpp:
   14811         (WebCore::DeleteSelectionCommand::calculateTypingStyleAfterDelete): applyStyle
   14812         can destroy insertedPlaceholder if it needs to move it, but it will set an
   14813         endingSelection() at [movedPlaceholder, 0] if it does so.  Re-fetch insertedPlaceholder
   14814         if that happens.  The long term solution for these crashes is to make moveParagraphs
   14815         not copy/destroy/move content, and to make VisiblePositions update themselves on DOM 
   14816         mutations.
   14817         * editing/IndentOutdentCommand.cpp:
   14818         (WebCore::IndentOutdentCommand::indentRegion): Early return to avoid crashes like this
   14819         in the future, but ASSERT to catch them in debug builds.
   14820 
   14821 2008-06-05  Justin Garcia  <justin.garcia (a] apple.com>
   14822 
   14823         Reviewed by Eric.
   14824 
   14825         <https://bugs.webkit.org/show_bug.cgi?id=19403>
   14826         ASSERT in InsertIntoTextNodeCommand::InsertIntoTextNodeCommand during RemoveFormat call
   14827 
   14828         * editing/RemoveFormatCommand.cpp:
   14829         (WebCore::RemoveFormatCommand::doApply): If the selection was all
   14830         formatting (like an empty list) the format-less text will be empty.
   14831         Early return to avoid the ASSERT that fires if input(...) is called
   14832         with an empty String.
   14833 
   14834 2008-06-05  Alp Toker  <alp (a] nuanti.com>
   14835 
   14836         Build fix for r34387.
   14837 
   14838         * GNUmakefile.am:
   14839 
   14840 2008-06-05  Justin Garcia  <justin.garcia (a] apple.com>
   14841 
   14842         Reviewed by Eric.
   14843 
   14844         <https://bugs.webkit.org/show_bug.cgi?id=19089> Editing ASSERT in Range::compareBoundaryPoints
   14845         
   14846         ApplyStyleCommand::applyInlineStyle does some work and then checks to see
   14847         if the start offset of the Range it's operating on is now past the caretMaxOffset
   14848         of the start container.  If it is, applyInlineStyle updates the position to 
   14849         [startContainer->traverseNextNode(), 0] and then operates on that new start
   14850         position.
   14851         
   14852         caretMaxOffset was incorrect for horizontal rules.  It should be 1 and it was 0.  So,
   14853         if the horizontal rule was the last node in the document, applyInlineStyle would update
   14854         its start position to [0, 0] and then try to operate on that position, assuming it was
   14855         non-null, leading to the ASSERT.
   14856         
   14857         * rendering/RenderObject.cpp:
   14858         (WebCore::RenderObject::caretMaxOffset):
   14859 
   14860 2008-06-05  Chris Fleizach  <cfleizach (a] apple.com>
   14861 
   14862         Reviewed by John Sullivan.
   14863 
   14864         <rdar://problem/5947396> AccessibilityListBoxOptions should return their string as AXValue, not AXTitle
   14865 
   14866         * page/AccessibilityListBoxOption.cpp:
   14867         (WebCore::AccessibilityListBoxOption::stringValue):
   14868         * page/AccessibilityListBoxOption.h:
   14869 
   14870 2008-06-05  Justin Garcia  <justin.garcia (a] apple.com>
   14871 
   14872         Reviewed by Harrison.
   14873 
   14874         <rdar://problem/5658933> GoogleDocs: Crash indenting a particular selection twice
   14875         <rdar://problem/5831310> CrashTracer: [USER] 4 crashes in Mail at WebCore::IndentOutdentCommand::prepareBlockquoteLevelForInsertion
   14876         <rdar://problem/5480141> GoogleDocs: Attempting to indent content in <td> closes <table> element
   14877         
   14878         A crash would occur when indenting a selection that started just before a table
   14879         and ended inside that table.  With a selection like this, we'd indent the entire
   14880         table, then try and indent paragraphs inside it, but the stored position for the
   14881         next paragraph to indent was inside content that had been removed from the document 
   14882         during the first Indent.
   14883         
   14884         Fixed the crash adjusting the selection to perform the indent on to prepare it
   14885         for paragraph iteration using selectionForParagraphIteration.  We do this adjustment
   14886         for paragraph iteration in InsertList as well.
   14887         
   14888         Also, indenting paragraphs inside table cells would break table structure because 
   14889         we were splitting the DOM all the way up to the root editable element to insert
   14890         a blockquote.  Fixed this by only splitting up to the enclosing table cell.  This 
   14891         matches FF.  Lastly, fixed a bug where indenting several paragraphs inside different 
   14892         table cells would move all the selected text into the same table cell. FF still has 
   14893         this bug.
   14894 
   14895         * editing/IndentOutdentCommand.cpp:
   14896         (WebCore::IndentOutdentCommand::indentRegion):
   14897 
   14898 2008-06-05  chris fleizach  <cfleizach (a] apple.com>
   14899 
   14900         Reviewed by Alice Liu.
   14901 
   14902          <rdar://problem/5979998> AXList controls should have AXSelectedChildren and its children's AXSelected attribute writable
   14903 
   14904         * page/AccessibilityListBox.cpp:
   14905         (WebCore::AccessibilityListBox::canSetSelectedChildrenAttribute):
   14906         (WebCore::AccessibilityListBox::setSelectedChildren):
   14907         (WebCore::AccessibilityListBox::selectedChildren):
   14908         (WebCore::AccessibilityListBox::visibleChildren):
   14909         * page/AccessibilityListBox.h:
   14910         * page/AccessibilityListBoxOption.cpp:
   14911         (WebCore::AccessibilityListBoxOption::canSetSelectedAttribute):
   14912         (WebCore::AccessibilityListBoxOption::setSelected):
   14913         * page/AccessibilityListBoxOption.h:
   14914         (WebCore::AccessibilityListBoxOption::selectedChildren):
   14915         (WebCore::AccessibilityListBoxOption::visibleChildren):
   14916         * page/AccessibilityObject.cpp:
   14917         (WebCore::AccessibilityObject::setSelected):
   14918         (WebCore::AccessibilityObject::getDocumentLinks):
   14919         * page/AccessibilityObject.h:
   14920         (WebCore::AccessibilityObject::canSetSelectedAttribute):
   14921         (WebCore::AccessibilityObject::canSetSelectedChildrenAttribute):
   14922         (WebCore::AccessibilityObject::children):
   14923         * page/AccessibilityRenderObject.cpp:
   14924         (WebCore::AccessibilityRenderObject::getDocumentLinks):
   14925         (WebCore::AccessibilityRenderObject::children):
   14926         (WebCore::AccessibilityRenderObject::addChildren):
   14927         (WebCore::AccessibilityRenderObject::ariaListboxSelectedChildren):
   14928         (WebCore::AccessibilityRenderObject::selectedChildren):
   14929         (WebCore::AccessibilityRenderObject::ariaListboxVisibleChildren):
   14930         (WebCore::AccessibilityRenderObject::visibleChildren):
   14931         * page/AccessibilityRenderObject.h:
   14932         * page/mac/AccessibilityObjectWrapper.mm:
   14933         (convertToVector):
   14934         (convertToNSArray):
   14935         (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
   14936         (-[AccessibilityObjectWrapper accessibilityIsAttributeSettable:]):
   14937         (-[AccessibilityObjectWrapper accessibilitySetValue:forAttribute:]):
   14938 
   14939 2008-06-04  David Hyatt  <hyatt (a] apple.com>
   14940 
   14941         Fix for <rdar://problem/5957994> Height doesn't animate
   14942 
   14943         Improve the behavior when transitions are dynamically changed.  Make sure to leave older transitions
   14944         running and let them obsolete themselves when they finish.
   14945 
   14946         Reviewed by Dan Bernstein
   14947 
   14948         Added WebCore/manual-tests/transitions2.html (must be tested manually)
   14949 
   14950         * manual-tests/transitions.html:
   14951         * manual-tests/transitions2.html: Added.
   14952         * page/AnimationController.cpp:
   14953         (WebCore::ImplicitAnimation::property):
   14954         (WebCore::ImplicitAnimation::setFinished):
   14955         (WebCore::ImplicitAnimation::markedForDeath):
   14956         (WebCore::ImplicitAnimation::setMarkedForDeath):
   14957         (WebCore::ImplicitAnimation::ImplicitAnimation):
   14958         (WebCore::ImplicitAnimation::reset):
   14959         (WebCore::ImplicitAnimation::animate):
   14960         (WebCore::CompositeImplicitAnimation::animate):
   14961 
   14962 2008-06-05  Eric Seidel  <eric (a] webkit.org>
   14963 
   14964         Reviewed by mjs.
   14965 
   14966         Get rid of Uninitialized Memory Reads (UMRs) in the XPath::Value copy constructor.
   14967 
   14968         No functional changes, thus no tests.
   14969 
   14970         * xml/XPathValue.h:
   14971         (WebCore::XPath::Value::Value): initialize all values in each constructor
   14972 
   14973 2008-06-05  Eric Seidel  <eric (a] webkit.org>
   14974 
   14975         Reviewed by hyatt.
   14976 
   14977         No functional changes, thus no tests.
   14978 
   14979         * platform/graphics/Color.h: remove unnecessary bitfield use
   14980 
   14981 2008-06-05  Antti Koivisto  <antti (a] apple.com>
   14982 
   14983         Reviewed by Dave Hyatt.
   14984         
   14985         Make hasFeature() return true for the animation stuff.
   14986 
   14987         * dom/DOMImplementation.cpp:
   14988         (WebCore::isSVG11Feature):
   14989 
   14990 2008-06-05  Dan Bernstein  <mitz (a] apple.com>
   14991 
   14992         Reviewed by Darin Adler.
   14993 
   14994         - fix https://bugs.webkit.org/show_bug.cgi?id=19397
   14995           REGRESSION (3.1-TOT): Box-shadow renders weird when rotating a div with border radius
   14996 
   14997         Test: fast/transforms/shadows.html
   14998 
   14999         * platform/graphics/cg/GraphicsContextCG.cpp:
   15000         (WebCore::GraphicsContext::setPlatformShadow): In Core Graphics, shadow
   15001         dimensions are always in device space. Account for that, and apply the
   15002         current context transform to shadow offset, and multiply the blur radius
   15003         by the inverse of the operator norm of the inverse transform (which is
   15004         the radius of the circle inscribed in the transformed unit circle). 
   15005         * rendering/RenderObject.cpp:
   15006         (WebCore::RenderObject::paintBoxShadow): Added 1px separation between
   15007         the edge of the filled shape and the edge of the clipped-out shape,
   15008         because in a transformed context, due to antialiasing, the fill can
   15009         bleed into the clip if they touch.
   15010 
   15011 2008-06-05  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   15012 
   15013         Reviewed by Simon.
   15014 
   15015         Prevent cycles when converting from DOM objects to
   15016         QVariant, due to cycles in the DOM tree.
   15017 
   15018         * bridge/qt/qt_runtime.cpp:
   15019         (KJS::Bindings::convertValueToQVariant):
   15020 
   15021 2008-06-04  Anders Carlsson  <andersca (a] apple.com>
   15022 
   15023         Reviewed by Mitz.
   15024 
   15025         Get rid of DeprecatedPtrList from StyleSheetList.
   15026         
   15027         * css/CSSStyleSelector.cpp:
   15028         (WebCore::CSSStyleSelector::CSSStyleSelector):
   15029         * css/StyleSheetList.cpp:
   15030         (WebCore::StyleSheetList::~StyleSheetList):
   15031         (WebCore::StyleSheetList::length):
   15032         (WebCore::StyleSheetList::item):
   15033         * css/StyleSheetList.h:
   15034         (WebCore::StyleSheetList::swap):
   15035         * dom/Document.cpp:
   15036         (WebCore::Document::recalcStyleSelector):
   15037 
   15038 2008-06-04  Anders Carlsson  <andersca (a] apple.com>
   15039 
   15040         Reviewed by Darin.
   15041 
   15042         Convert more classes over to start out with a ref count of 1.
   15043         
   15044         * css/CSSImageGeneratorValue.cpp:
   15045         (WebCore::CSSImageGeneratorValue::generatedImage):
   15046         * css/CSSImageValue.cpp:
   15047         (WebCore::CSSImageValue::cachedImage):
   15048         * css/CSSMediaRule.cpp:
   15049         (WebCore::CSSMediaRule::CSSMediaRule):
   15050         * css/CSSParser.cpp:
   15051         (WebCore::CSSParser::parseValue):
   15052         (WebCore::CSSParser::parseFillSize):
   15053         (WebCore::CSSParser::parseCounter):
   15054         (WebCore::CSSParser::createRuleList):
   15055         * css/CSSRuleList.cpp:
   15056         (WebCore::CSSRuleList::CSSRuleList):
   15057         * css/CSSRuleList.h:
   15058         (WebCore::CSSRuleList::create):
   15059         * css/CSSStyleSelector.cpp:
   15060         (WebCore::CSSStyleSelector::matchRules):
   15061         (WebCore::CSSStyleSelector::styleRulesForElement):
   15062         * css/CSSStyleSelector.h:
   15063         * css/CSSStyleSheet.cpp:
   15064         (WebCore::CSSStyleSheet::cssRules):
   15065         (WebCore::CSSStyleSheet::addSubresourceURLStrings):
   15066         * css/CSSStyleSheet.h:
   15067         (WebCore::CSSStyleSheet::rules):
   15068         * css/Pair.h:
   15069         (WebCore::Pair::create):
   15070         (WebCore::Pair::Pair):
   15071         * html/HTMLMediaElement.cpp:
   15072         (WebCore::HTMLMediaElement::buffered):
   15073         (WebCore::HTMLMediaElement::played):
   15074         (WebCore::HTMLMediaElement::seekable):
   15075         * html/TimeRanges.cpp:
   15076         (TimeRanges::TimeRanges):
   15077         * html/TimeRanges.h:
   15078         (WebCore::TimeRanges::create):
   15079         (WebCore::TimeRanges::TimeRanges):
   15080         * rendering/style/RenderStyle.cpp:
   15081         (WebCore::RenderStyle::addCursor):
   15082         (WebCore::RenderStyle::clearCursorList):
   15083         * rendering/style/RenderStyle.h:
   15084         (WebCore::StyleImage::~StyleImage):
   15085         (WebCore::StyleImage::StyleImage):
   15086         (WebCore::StyleCachedImage::create):
   15087         (WebCore::StyleCachedImage::StyleCachedImage):
   15088         (WebCore::StyleGeneratedImage::create):
   15089         (WebCore::StyleGeneratedImage::StyleGeneratedImage):
   15090         (WebCore::CursorList::create):
   15091         (WebCore::CursorList::CursorList):
   15092 
   15093 2008-06-04  chris fleizach  <cfleizach (a] apple.com>
   15094 
   15095         Reviewed by Dave Hyatt, Alice, Liu
   15096 
   15097         <rdar://problem/5983804> Editable web areas do not properly report the AXFocused attribute
   15098 
   15099         * page/AccessibilityRenderObject.cpp:
   15100         (WebCore::AccessibilityRenderObject::isFocused):
   15101 
   15102 2008-06-03  Beth Dakin  <bdakin (a] apple.com>
   15103 
   15104         Reviewed by Adele.
   15105 
   15106         Fix for https://bugs.webkit.org/show_bug.cgi?id=19381 WebKit 
   15107         Crashing Constantly on Gmail with accessibility turned on
   15108 
   15109         There was a missing null-check!
   15110 
   15111         * page/AccessibilityRenderObject.cpp:
   15112         (WebCore::AccessibilityRenderObject::roleValue):
   15113 
   15114 2008-06-04  Anders Carlsson  <andersca (a] apple.com>
   15115 
   15116         Reviewed by Sam.
   15117 
   15118         Convert more classes to start with a ref count of 1.
   15119         
   15120         * bindings/js/JSCustomVoidCallback.cpp:
   15121         (WebCore::toVoidCallback):
   15122         * bindings/js/JSCustomVoidCallback.h:
   15123         (WebCore::JSCustomVoidCallback::create):
   15124         * css/StyleSheetList.cpp:
   15125         (WebCore::StyleSheetList::StyleSheetList):
   15126         * css/StyleSheetList.h:
   15127         (WebCore::StyleSheetList::create):
   15128         * dom/Document.cpp:
   15129         (WebCore::Document::Document):
   15130         (WebCore::Document::createNodeIterator):
   15131         (WebCore::Document::createTreeWalker):
   15132         * dom/NodeIterator.h:
   15133         (WebCore::NodeIterator::create):
   15134         * dom/Traversal.cpp:
   15135         (WebCore::Traversal::Traversal):
   15136         * dom/Traversal.h:
   15137         * dom/TreeWalker.h:
   15138         (WebCore::TreeWalker::create):
   15139         * history/CachedPage.cpp:
   15140         (WebCore::CachedPage::create):
   15141         (WebCore::CachedPage::CachedPage):
   15142         * html/CanvasGradient.cpp:
   15143         (WebCore::CanvasGradient::CanvasGradient):
   15144         * html/CanvasGradient.h:
   15145         (WebCore::CanvasGradient::create):
   15146         * html/CanvasRenderingContext2D.cpp:
   15147         (WebCore::CanvasRenderingContext2D::CanvasRenderingContext2D):
   15148         (WebCore::CanvasRenderingContext2D::createLinearGradient):
   15149         (WebCore::CanvasRenderingContext2D::createRadialGradient):
   15150         * html/CanvasRenderingContext2D.h:
   15151         (WebCore::CanvasRenderingContext2D::create):
   15152         * html/HTMLCanvasElement.cpp:
   15153         (WebCore::HTMLCanvasElement::getContext):
   15154         * html/VoidCallback.h:
   15155         (WebCore::VoidCallback::VoidCallback):
   15156         * loader/FormState.cpp:
   15157         (WebCore::FormState::create):
   15158         (WebCore::FormState::FormState):
   15159         * platform/text/RegularExpression.cpp:
   15160         (WebCore::RegularExpression::Private::create):
   15161         (WebCore::RegularExpression::Private::Private):
   15162         (WebCore::RegularExpression::RegularExpression):
   15163         * storage/SQLResultSet.cpp:
   15164         (WebCore::SQLResultSet::SQLResultSet):
   15165         * storage/SQLResultSetRowList.h:
   15166         (WebCore::SQLResultSetRowList::create):
   15167         (WebCore::SQLResultSetRowList::SQLResultSetRowList):
   15168 
   15169 2008-06-04  Dan Bernstein  <mitz (a] apple.com>
   15170 
   15171         Reviewed by Dave Hyatt.
   15172 
   15173         - fix <rdar://problem/5962118> Crash in RenderBlock::calcColumnWidth()
   15174 
   15175         Test: fast/multicol/gap-non-negative.html
   15176 
   15177         * css/CSSParser.cpp:
   15178         (WebCore::CSSParser::parseValue): Changed to not allow negative
   15179         values for column-gap, per
   15180         <http://www.w3.org/TR/2001/WD-css3-multicol-20010118/#column-gap>.
   15181 
   15182 2008-06-04  Dan Bernstein  <mitz (a] apple.com>
   15183 
   15184         Reviewed by Dave Hyatt.
   15185 
   15186         - fix <rdar://problem/5962270> Crash in WebCore::RenderTableCell::computeAbsoluteRepaintRect()
   15187 
   15188         Test: fast/reflections/table-cell.html
   15189 
   15190         * rendering/RenderTableCell.cpp:
   15191         (WebCore::RenderTableCell::computeAbsoluteRepaintRect): Null-check
   15192         parent().
   15193         (WebCore::RenderTableCell::absolutePosition): Ditto.
   15194 
   15195 2008-06-04  Alexey Proskuryakov  <ap (a] webkit.org>
   15196 
   15197         Reviewed by Darin.
   15198 
   15199         Fix JSClassCreate to work with old JSCore API threading model.
   15200 
   15201         * ForwardingHeaders/wtf/StrHash.h: Removed (moved into ustring.h).
   15202 
   15203 2008-06-03  Antti Koivisto  <antti (a] apple.com>
   15204 
   15205         Reviewed by Darin.
   15206         
   15207         https://bugs.webkit.org/show_bug.cgi?id=19384
   15208         Implement path morphing for SVG animation
   15209         
   15210         You can animate smoothly between paths that have equal number of control points of matching type.
   15211 
   15212         Test: svg/custom/animate-path-morphing.svg
   15213 
   15214         * svg/SVGAnimateElement.cpp:
   15215         (WebCore::SVGAnimateElement::determinePropertyType):
   15216         (WebCore::SVGAnimateElement::calculateAnimatedValue):
   15217         (WebCore::SVGAnimateElement::calculateFromAndToValues):
   15218         (WebCore::SVGAnimateElement::resetToBaseValue):
   15219         (WebCore::SVGAnimateElement::applyResultsToTarget):
   15220         * svg/SVGAnimateElement.h:
   15221         (WebCore::SVGAnimateElement::):
   15222         * svg/SVGPathSegList.cpp:
   15223         (WebCore::blendFunc):
   15224         (WebCore::SVGPathSegList::createAnimated):
   15225         * svg/SVGPathSegList.h:
   15226 
   15227 2008-06-03  Darin Adler  <darin (a] apple.com>
   15228 
   15229         - try to fix the Qt build
   15230 
   15231         * bridge/qt/qt_runtime.cpp:
   15232         (KJS::Bindings::QtRuntimeMetaMethod::lengthGetter): Remove the originalObject argument.
   15233         (KJS::Bindings::QtRuntimeMetaMethod::connectGetter): Ditto.
   15234         (KJS::Bindings::QtRuntimeMetaMethod::disconnectGetter): Ditto.
   15235         (KJS::Bindings::QtRuntimeConnectionMethod::lengthGetter): Ditto.
   15236         (KJS::Bindings::QtConnectionObject::execute): Use callAsFunction.
   15237         * bridge/qt/qt_runtime.h: More of the same.
   15238 
   15239 2008-06-03  Justin Garcia  <justin.garcia (a] apple.com>
   15240 
   15241         Reviewed by John.
   15242 
   15243         <rdar://problem/5763082> GMail: Hang when removing indent from nested list
   15244         <rdar://problem/5775449> In Gmail and GoogleDocs, a hang occurs when I attempt to apply a list style to a large selection of text
   15245         <rdar://problem/5937624> 9D32: Hang in Safari. Using 100% of processor
   15246 
   15247         * editing/InsertListCommand.cpp:
   15248         (WebCore::InsertListCommand::modifyRange): doApply() may operate on and remove 
   15249         the last paragraph of the selection from the document if it's in the same list 
   15250         item as startOfCurrentParagraph.  Return early to avoid an infinite loop and 
   15251         because there is no more work to be done.  Added a FIXME (<rdar://problem/5983974>)
   15252         about the incorrect endingSelection()s.
   15253 
   15254 2008-06-03  Oliver Hunt  <oliver (a] apple.com>
   15255 
   15256         Reviewed by Tim.
   15257 
   15258         Bug 12983: Web Inspector break on the debugger keyword
   15259         <https://bugs.webkit.org/show_bug.cgi?id=12983>
   15260 
   15261         Added support for the new debugger didReachBreakpoint 
   15262         callback so that WebInspector receives the debugger event
   15263         and breaks.
   15264 
   15265         * page/JavaScriptDebugServer.cpp:
   15266         (WebCore::JavaScriptDebugServer::didReachBreakpoint):
   15267         * page/JavaScriptDebugServer.h:
   15268 
   15269 2008-06-03  Darin Adler  <darin (a] apple.com>
   15270 
   15271         Reviewed by Geoff.
   15272 
   15273         - https://bugs.webkit.org/show_bug.cgi?id=19269
   15274           speed up SunSpider by eliminating the toObject call for most get/put/delete
   15275 
   15276         Eliminate the originalObject argument from property getter functions; it's no longer
   15277         available and was used only for JavaScript function-based getters and setters.
   15278 
   15279         Updated callers of PropertySlot::setUndefined. It no longer takes a base argument.
   15280 
   15281         * bindings/js/JSQuarantinedObjectWrapper.cpp:
   15282         (WebCore::JSQuarantinedObjectWrapper::cachedValueGetter): Removed the originalObject
   15283         argument.
   15284         (WebCore::JSQuarantinedObjectWrapper::getOwnPropertySlot): Changed to initialize the
   15285         PropertySlot with the original object -- this is a new requirement.
   15286 
   15287         * bindings/js/JSCSSStyleDeclarationCustom.cpp:
   15288         (WebCore::JSCSSStyleDeclaration::nameGetter):
   15289         * bindings/js/JSCanvasPixelArrayCustom.cpp:
   15290         (WebCore::JSCanvasPixelArray::indexGetter):
   15291         * bindings/js/JSDOMWindowBase.cpp:
   15292         (WebCore::JSDOMWindowBase::childFrameGetter):
   15293         (WebCore::JSDOMWindowBase::indexGetter):
   15294         (WebCore::JSDOMWindowBase::namedItemGetter):
   15295         (WebCore::JSDOMWindowBase::getOwnPropertySlot):
   15296         * bindings/js/JSDOMWindowBase.h:
   15297         * bindings/js/JSDOMWindowCustom.h:
   15298         (WebCore::JSDOMWindow::customGetOwnPropertySlot):
   15299         * bindings/js/JSHTMLAppletElementCustom.cpp:
   15300         (WebCore::JSHTMLAppletElement::nameGetter):
   15301         * bindings/js/JSHTMLCollectionCustom.cpp:
   15302         (WebCore::JSHTMLCollection::nameGetter):
   15303         * bindings/js/JSHTMLDocumentCustom.cpp:
   15304         (WebCore::JSHTMLDocument::nameGetter):
   15305         * bindings/js/JSHTMLEmbedElementCustom.cpp:
   15306         (WebCore::JSHTMLEmbedElement::nameGetter):
   15307         * bindings/js/JSHTMLFormElementCustom.cpp:
   15308         (WebCore::JSHTMLFormElement::nameGetter):
   15309         * bindings/js/JSHTMLFrameSetElementCustom.cpp:
   15310         (WebCore::JSHTMLFrameSetElement::nameGetter):
   15311         * bindings/js/JSHTMLObjectElementCustom.cpp:
   15312         (WebCore::JSHTMLObjectElement::nameGetter):
   15313         * bindings/js/JSHistoryCustom.cpp:
   15314         (WebCore::JSHistory::customGetOwnPropertySlot):
   15315         * bindings/js/JSLocationCustom.cpp:
   15316         (WebCore::JSLocation::customGetOwnPropertySlot):
   15317         * bindings/js/JSMimeTypeArrayCustom.cpp:
   15318         (WebCore::JSMimeTypeArray::nameGetter):
   15319         * bindings/js/JSNamedNodeMapCustom.cpp:
   15320         (WebCore::JSNamedNodeMap::nameGetter):
   15321         * bindings/js/JSNamedNodesCollection.cpp:
   15322         (WebCore::JSNamedNodesCollection::lengthGetter):
   15323         (WebCore::JSNamedNodesCollection::indexGetter):
   15324         * bindings/js/JSNamedNodesCollection.h:
   15325         * bindings/js/JSNodeListCustom.cpp:
   15326         (WebCore::JSNodeList::nameGetter):
   15327         * bindings/js/JSPluginArrayCustom.cpp:
   15328         (WebCore::JSPluginArray::nameGetter):
   15329         * bindings/js/JSPluginCustom.cpp:
   15330         (WebCore::JSPlugin::nameGetter):
   15331         * bindings/js/JSQuarantinedObjectWrapper.h:
   15332         * bindings/js/JSStorageCustom.cpp:
   15333         (WebCore::JSStorage::nameGetter):
   15334         * bindings/js/JSStyleSheetListCustom.cpp:
   15335         (WebCore::JSStyleSheetList::nameGetter):
   15336         * bindings/js/kjs_binding.cpp:
   15337         (WebCore::nonCachingStaticFunctionGetter):
   15338         (WebCore::objectToStringFunctionGetter):
   15339         * bindings/js/kjs_binding.h:
   15340         * bindings/js/kjs_html.cpp:
   15341         (WebCore::runtimeObjectGetter):
   15342         (WebCore::runtimeObjectPropertyGetter):
   15343         * bindings/js/kjs_html.h:
   15344         * bindings/scripts/CodeGeneratorJS.pm:
   15345         * bridge/objc/objc_runtime.mm:
   15346         (ObjcFallbackObjectImp::getOwnPropertySlot):
   15347         * bridge/runtime_array.cpp:
   15348         (RuntimeArray::lengthGetter):
   15349         (RuntimeArray::indexGetter):
   15350         * bridge/runtime_array.h:
   15351         * bridge/runtime_method.cpp:
   15352         (RuntimeMethod::lengthGetter):
   15353         * bridge/runtime_method.h:
   15354         * bridge/runtime_object.cpp:
   15355         (RuntimeObjectImp::fallbackObjectGetter):
   15356         (RuntimeObjectImp::fieldGetter):
   15357         (RuntimeObjectImp::methodGetter):
   15358         * bridge/runtime_object.h:
   15359         Removed originalObject arguments from getter fnctions and base arguments from
   15360         calls to setUndefined.
   15361 
   15362 2008-06-03  Darin Adler  <darin (a] apple.com>
   15363 
   15364         Fix build with GCC.
   15365 
   15366         * page/AccessibilityRenderObject.cpp:
   15367         (WebCore::AccessibilityRenderObject::ariaRoleHasPresentationalChildren):
   15368         Put a default case back in the switch statement so we don't get warned about
   15369         all the unhandled cases with GCC. Remove the unreachable code that was causing
   15370         a warning in Visual Studio.
   15371 
   15372 2008-06-03  Steve Falkenburg  <sfalken (a] apple.com>
   15373 
   15374         Fix build
   15375 
   15376         * page/AccessibilityRenderObject.cpp:
   15377         (WebCore::AccessibilityRenderObject::ariaRoleHasPresentationalChildren):
   15378 
   15379 2008-06-03  Justin Garcia  <justin.garcia (a] apple.com>
   15380 
   15381         Reviewed by John Sullivan.
   15382 
   15383         <rdar://problem/5943515> SelectionController()->modify Backward/Forward with LineGranularity sometimes don't work
   15384         
   15385         next/previousLinePosition didn't work if the input position was the last line in its
   15386         block.  The code for handling such a position assumed that the input position was
   15387         editable, and that the position to be returned needed to also be editable.  Changed
   15388         this code to just maintain the same editability.
   15389         
   15390         No test case for now because we haven't enabled selection extension operations for
   15391         non-editable selections.  I enabled them temporarily to test the fix, however.
   15392 
   15393         * dom/Node.cpp: Removed the now unused nextEditable(int).
   15394         * dom/Node.h:
   15395         * editing/visible_units.cpp:
   15396         (WebCore::previousLeafWithSameEditability): Added.  Like previousEditable but just returns
   15397         a node of the same editability.
   15398         (WebCore::previousLinePosition): Call previousLeaf instead of previousEditable.
   15399         (WebCore::nextLeafWithSameEditability): Added.
   15400         (WebCore::nextLinePosition): Same as above.
   15401 
   15402 2008-06-02  Anders Carlsson  <andersca (a] apple.com>
   15403 
   15404         Reviewed by John and Sam.
   15405 
   15406         <rdar://problem/5955218> 
   15407         Assertion failure in ApplicationCacheGroup::addEntry when reloading a page with a cache manifest (19182)
   15408         
   15409         * loader/appcache/ApplicationCacheGroup.h:
   15410         (WebCore::ApplicationCacheGroup::hasNewestCache):
   15411         Add new accessor.
   15412         
   15413         * loader/appcache/ApplicationCacheStorage.cpp:
   15414         (WebCore::ApplicationCacheStorage::cacheGroupDestroyed):
   15415         Don't call newestCache since it will always be null. Instead, call hasNewestCache which returns the saved newest cache pointer.
   15416         
   15417 2008-06-03  Dan Bernstein  <mitz (a] apple.com>
   15418 
   15419         Reviewed by Dave Hyatt.
   15420 
   15421         - fix <rdar://problem/5965410>
   15422           In fixed table layout, the width of cells with auto width should be
   15423           proportional to their column span, to match Firefox and IE.
   15424 
   15425         Test: fast/table/fixed-with-auto-with-colspan.html
   15426 
   15427         * rendering/FixedTableLayout.cpp:
   15428         (WebCore::FixedTableLayout::layout):
   15429 
   15430 2008-06-03  Alp Toker  <alp (a] nuanti.com>
   15431 
   15432         Rubber-stamped by Alexey.
   15433 
   15434         Remove GenerateNativeConverter added in r34331 to fix JS regressions.
   15435         (JSTextCustom.cpp added in r34141 is now unused in any code path.)
   15436 
   15437         * dom/Text.idl:
   15438 
   15439 2008-06-03  Alexander Vassilev <avasilev (a] voipgate.com>
   15440 
   15441         Reviewed, tweaked and landed by Alexey.
   15442 
   15443         https://bugs.webkit.org/show_bug.cgi?id=19363
   15444         Compiler error in Entity.h
   15445 
   15446         * dom/Entity.h:
   15447         (WebCore::Entity::Entity): Add a private constructor to shut down the errors.
   15448 
   15449 2008-06-02  Geoffrey Garen  <ggaren (a] apple.com>
   15450 
   15451         Reviewed by Alexey Proskuryakov.
   15452         
   15453         Removed JSObject::call, since it just called JSObject::callAsFunction.
   15454         
   15455         SunSpider reports no change.
   15456 
   15457 2008-06-02  Alp Toker  <alp (a] nuanti.com>
   15458 
   15459         Reviewed by Maciej.
   15460 
   15461         Two of the toJSNewlyCreated() optimisations in r34141 were never
   15462         reached due to a generator bug and missing IDL attribute.
   15463 
   15464         Fix header generation to provide the necessary toJSNewlyCreated()
   15465         overloads.
   15466 
   15467         Patch includes a related build fix by Jan Michael Alonzo.
   15468 
   15469         * GNUmakefile.am:
   15470         * bindings/scripts/CodeGeneratorJS.pm:
   15471         * dom/Text.idl:
   15472 
   15473 2008-06-02  Alice Liu  <alice.liu (a] apple.com>
   15474 
   15475         Reviewed by Beth Dakin.
   15476 
   15477         Some ARIA roles are designated to have presentational children, which
   15478         means that their descendants aren't exposed to assistive technologies
   15479         on an individual basis.  What this means in webcore is that descendants
   15480         of such roles need to be ignored in terms of accessibility.
   15481 
   15482         * page/AccessibilityObject.cpp:
   15483         (WebCore::AccessibilityObject::isPresentationalChildOfAriaRole):
   15484         (WebCore::AccessibilityObject::ariaRoleHasPresentationalChildren):
   15485         * page/AccessibilityObject.h:
   15486         * page/AccessibilityRenderObject.cpp:
   15487         (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
   15488         (WebCore::RoleEntry::):
   15489         (WebCore::AccessibilityRenderObject::isPresentationalChildOfAriaRole):
   15490         (WebCore::AccessibilityRenderObject::ariaRoleHasPresentationalChildren):
   15491         * page/AccessibilityRenderObject.h:
   15492 
   15493 2008-06-02  David Hyatt  <hyatt (a] apple.com>
   15494 
   15495         Fix for https://bugs.webkit.org/show_bug.cgi?id=19303
   15496 
   15497         When the right slice value is omitted in border-image it should use the value of the left slice and not
   15498         the top slice.
   15499 
   15500         Reviewed by darin
   15501 
   15502         Added fast/borders/border-image-omit-right-slice.html
   15503 
   15504         * css/CSSParser.cpp:
   15505         (WebCore::BorderImageParseContext::commitBorderImage)
   15506 
   15507 2008-06-02  Anders Carlsson  <andersca (a] apple.com>
   15508 
   15509         Reviewed by David Hyatt and Mitz.
   15510 
   15511         <rdar://problem/5704119> 
   15512         repro crash in WebCore::RenderPart::setWidget (plugin-related?)
   15513         
   15514         Test: platform/mac/plugins/update-widget-from-style-recalc.html
   15515 
   15516         Make sure to update the document's rendering before calling updateWidget.
   15517         
   15518         * html/HTMLEmbedElement.cpp:
   15519         (WebCore::HTMLEmbedElement::updateWidget):
   15520         * html/HTMLObjectElement.cpp:
   15521         (WebCore::HTMLObjectElement::updateWidget):
   15522 
   15523 2008-06-02  Kevin McCullough  <kmccullough (a] apple.com>
   15524 
   15525         Reviewed by Adam.
   15526 
   15527         <rdar://problem/5954226> JSProfiler: Move the calls from
   15528         JavaScriptProfileNode to JavaScriptProfile in WebCore (19231)
   15529         - This Makes the profiler now call sorting function s on a per-profile
   15530         basis instead of on a node in the profile.
   15531         - This is also needed to remove the recursion limit in the profiler
   15532         <rdar://problem/5969992> JSProfiler: Remove the recursion limit in the
   15533         profiler
   15534         since once the limit is removed calling sort on a node will only sort
   15535         that node's children not the entire sub-tree of that node.
   15536 
   15537         * page/JavaScriptProfile.cpp: All of these functions were moved from 
   15538         JavaScriptProfileNode.
   15539         (WebCore::sortTotalTimeDescending):
   15540         (WebCore::sortTotalTimeAscending):
   15541         (WebCore::sortSelfTimeDescending):
   15542         (WebCore::sortSelfTimeAscending):
   15543         (WebCore::sortCallsDescending):
   15544         (WebCore::sortCallsAscending):
   15545         (WebCore::sortFunctionNameDescending):
   15546         (WebCore::sortFunctionNameAscending):
   15547         (WebCore::ProfileClass):
   15548         * page/JavaScriptProfileNode.cpp:
   15549         (WebCore::ProfileNodeClass):
   15550         * page/inspector/ProfileView.js: Change uses of JavaScriptProfileNode
   15551         for sorting to JavaScriptProfile.
   15552 
   15553 2008-06-02  Dan Bernstein  <mitz (a] apple.com>
   15554 
   15555         Reviewed by Oliver Hunt.
   15556 
   15557         - fix more cases of https://bugs.webkit.org/show_bug.cgi?id=19344
   15558           <rdar://problem/5977300> Regression: Shadow offsets seem to have changed in 10.5.3 in canvas
   15559 
   15560         Tests: fast/canvas/shadow-offset-1.html
   15561                fast/canvas/shadow-offset-2.html
   15562                fast/canvas/shadow-offset-3.html
   15563                fast/canvas/shadow-offset-4.html
   15564                fast/canvas/shadow-offset-5.html
   15565                fast/canvas/shadow-offset-6.html
   15566                fast/canvas/shadow-offset-7.html
   15567 
   15568         * html/CanvasRenderingContext2D.cpp:
   15569         (WebCore::adjustedShadowSize): Added this helper function.
   15570         (WebCore::CanvasRenderingContext2D::setShadow): Changed to call
   15571         adjustedShadowSize().
   15572         (WebCore::CanvasRenderingContext2D::applyShadow): Ditto.
   15573 
   15574 2008-06-02  Julien Chaffraix  <jchaffraix (a] webkit.org>
   15575 
   15576         Reviewed by Darin.
   15577 
   15578         Bug 18066: REGRESSION: createAttribute throws NAMESPACE_ERR exception
   15579         https://bugs.webkit.org/show_bug.cgi?id=18066
   15580 
   15581         Test: fast/dom/createAttribute-exception.html
   15582 
   15583         * dom/Document.cpp:
   15584         (WebCore::Document::createAttributeNS):
   15585         * dom/Document.h: Add a bool parameter shouldIgnoreNamespaceChecks
   15586         to createNamespaceNS() used by createAttribute() to bypass namespace
   15587         checking.
   15588 
   15589 2008-06-02  Darin Adler  <darin (a] apple.com>
   15590 
   15591         Reviewed by John Sullivan.
   15592 
   15593         - fix https://bugs.webkit.org/show_bug.cgi?id=18799
   15594           apl.aip.org menu does not work (property names should be case sensitive)
   15595           <rdar://problem/5900484>
   15596 
   15597         Test: fast/dom/CSSStyleDeclaration/css-properties-case-sensitive.html
   15598 
   15599         * bindings/js/JSCSSStyleDeclarationCustom.cpp:
   15600         (WebCore::hasCSSPropertyNamePrefix): Tweak implementation a tiny bit for
   15601         improved performance when the first character does not match.
   15602         (WebCore::cssPropertyName): Reject property names with a leading uppercase
   15603         letter.
   15604 
   15605 2008-06-02  Darin Adler  <darin (a] apple.com>
   15606 
   15607         Reviewed by Mitz.
   15608 
   15609         - fix https://bugs.webkit.org/show_bug.cgi?id=19358
   15610           <rdar://problem/5951986> first line break in <pre> elements ignored
   15611           (chess boards at http://rankzero.de/)
   15612 
   15613         Test: fast/parser/pre-first-line-break.html
   15614 
   15615         * editing/markup.cpp:
   15616         (WebCore::appendStartMarkup): Fix handling of <listing>. Not part of the
   15617         bug mentioned above, but uncovered by the regression test.
   15618 
   15619         * html/HTMLTokenizer.cpp:
   15620         (WebCore::HTMLTokenizer::write): Clear the "discardLF" flag when
   15621         processing a new tag.
   15622 
   15623 2008-06-02  Timothy Hatcher  <timothy (a] apple.com>
   15624 
   15625         Fixes a bug where only the last breakpoint would be hit after reloading
   15626         the page. Also fixes a bug where disabled breakpoints would be hit
   15627         after reloading the page.
   15628 
   15629         Reviewed by Darin Adler.
   15630 
   15631         * page/inspector/BreakpointsSidebarPane.js:
   15632         (WebInspector.BreakpointsSidebarPane.prototype.addBreakpoint): Don't call
   15633         InspectorController.addBreakpoint() unless the breakpoint is enabled.
   15634         * page/inspector/ScriptsPanel.js:
   15635         (WebInspector.ScriptsPanel.prototype.addScript): Move the addBreakpoint()
   15636         call inside the for loop so each breakpoint is added. Also check the
   15637         breakpoint's enabled state before calling addBreakpoint().
   15638 
   15639 2008-06-02  Timothy Hatcher  <timothy (a] apple.com>
   15640 
   15641         Fixes a bug where the line highlight and the execution line were conflicting.
   15642         The line highlight no longer shows up when the execution line changes, only
   15643         when showResource or showScript is called with a line number.
   15644 
   15645         Reviewed by Darin Adler.
   15646 
   15647         * page/inspector/ScriptsPanel.js:
   15648         (WebInspector.ScriptsPanel.prototype.showScript): Pass true for shouldHighlightLine.
   15649         (WebInspector.ScriptsPanel.prototype.showResource): Ditto.
   15650         (WebInspector.ScriptsPanel.prototype._showScriptOrResource): Added a shouldHighlightLine
   15651         argument that triggers the highlightLine() call on the SourceFrame.
   15652         (WebInspector.ScriptsPanel.prototype._goBack): Pass false for shouldHighlightLine since
   15653         we need to pass true for fromBackForwardAction.
   15654         (WebInspector.ScriptsPanel.prototype._goForward): Ditto.
   15655 
   15656 2008-06-02  Timothy Hatcher  <timothy (a] apple.com>
   15657 
   15658         Bring the Web Inspector forward when the debugger pauses.
   15659 
   15660         https://bugs.webkit.org/show_bug.cgi?id=19095
   15661 
   15662         Reviewed by Darin Adler.
   15663 
   15664         * page/inspector/ScriptsPanel.js:
   15665         (WebInspector.ScriptsPanel.prototype.debuggerPaused): Call window.focus() and
   15666         make the Scripts panel the current panel.
   15667 
   15668 2008-06-02  Jan Michael Alonzo  <jmalonzo (a] webkit.org>
   15669 
   15670         Reviewed by Alp Toker.
   15671 
   15672         Build WebCore GTK+ sources as part of WebCore, not WebKit.
   15673         Split common and GTK+-specific sources into separate file lists.
   15674 
   15675         * GNUmakefile.am:
   15676 
   15677 2008-05-30  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   15678 
   15679         Reviewed by Simon.
   15680 
   15681         Implement basic media element controls for the QtWebKit port.
   15682 
   15683         * platform/qt/RenderThemeQt.cpp:
   15684         (WebCore::WorldMatrixTransformer::WorldMatrixTransformer):
   15685         (WebCore::WorldMatrixTransformer::~WorldMatrixTransformer):
   15686         (WebCore::RenderThemeQt::getMediaElementFromRenderObject):
   15687         (WebCore::RenderThemeQt::paintMediaBackground):
   15688         (WebCore::RenderThemeQt::getMediaControlForegroundColor):
   15689         (WebCore::RenderThemeQt::paintMediaFullscreenButton):
   15690         (WebCore::RenderThemeQt::paintMediaMuteButton):
   15691         (WebCore::RenderThemeQt::paintMediaPlayButton):
   15692         (WebCore::RenderThemeQt::paintMediaSeekBackButton):
   15693         (WebCore::RenderThemeQt::paintMediaSeekForwardButton):
   15694         (WebCore::RenderThemeQt::paintMediaSliderTrack):
   15695         (WebCore::RenderThemeQt::paintMediaSliderThumb):
   15696         (WebCore::RenderThemeQt::adjustSliderThumbSize):
   15697         * platform/qt/RenderThemeQt.h:
   15698         * platform/qt/html4-adjustments-qt.css:
   15699 
   15700 2008-05-30  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   15701 
   15702         Reviewed by Simon.
   15703 
   15704         Change default styling of media elements to allow controls
   15705         to be placed at any position within the media element.
   15706 
   15707         * css/html4.css:
   15708 
   15709 2008-05-30  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   15710 
   15711         Reviewed by Simon.
   15712 
   15713         Use intrinsic size for media elements with no natural size.
   15714 
   15715         * rendering/RenderVideo.cpp:
   15716         (WebCore::RenderVideo::videoSizeChanged):
   15717 
   15718 2008-05-28  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   15719 
   15720         Reviewed by Simon.
   15721 
   15722         Allow platform specific adjustments to the default style sheet.
   15723 
   15724         Clients will change the #ifdef in RenderTheme.cpp and implement
   15725         any platform specific adjustments in RenderThemeXXX.cpp, either
   15726         by loading a file as the Qt port does, or by modifying the style
   15727         directly.
   15728 
   15729         * WebCore.pro: Add new resource file
   15730         * css/CSSStyleSelector.cpp:
   15731         (WebCore::loadDefaultStyle): adjust default stylesheet
   15732         * platform/qt/RenderThemeQt.cpp:
   15733         (WebCore::RenderTheme::adjustDefaultStyleSheet): Qt adjustments
   15734         * platform/qt/WebCoreResources.qrc: Added.
   15735         * platform/qt/html4-adjustments-qt.css: Added.
   15736         * rendering/RenderTheme.cpp: Default adjustments (none)
   15737         * rendering/RenderTheme.h:
   15738 
   15739 2008-06-02  Siraj Razick  <siraj.razick (a] collabora.co.uk>
   15740 
   15741         Reviewed by Simon
   15742 
   15743         Allow button fonts to scale based on the text size multiplier.
   15744 
   15745         https://bugs.webkit.org/show_bug.cgi?id=19251
   15746 
   15747         * platform/qt/RenderThemeQt.cpp:
   15748         (WebCore::RenderThemeQt::adjustButtonStyle):
   15749 
   15750 2008-06-01  Rob Buis  <buis (a] kde.org>
   15751 
   15752         Reviewed by Darin.
   15753 
   15754         https://bugs.webkit.org/show_bug.cgi?id=15823
   15755         getPropertyValue for border returns null, should compute the shorthand value
   15756 
   15757         Compute the value for the border shorthand property by computing
   15758         its shorthand subproperties.
   15759 
   15760         Test: fast/css/getPropertyValue-border.html
   15761 
   15762         * css/CSSMutableStyleDeclaration.cpp:
   15763         (WebCore::CSSMutableStyleDeclaration::getPropertyValue):
   15764         (WebCore::CSSMutableStyleDeclaration::getCommonValue):
   15765         * css/CSSMutableStyleDeclaration.h:
   15766 
   15767 2008-06-01  Dan Bernstein  <mitz (a] apple.com>
   15768 
   15769         Reviewed by Darin Adler.
   15770 
   15771         - fix https://bugs.webkit.org/show_bug.cgi?id=19344
   15772           <rdar://problem/5977300> Regression: Shadow offsets seem to have changed in 10.5.3 in canvas
   15773 
   15774         Test: fast/canvas/shadow-offset.html
   15775 
   15776         * html/CanvasRenderingContext2D.cpp:
   15777         (WebCore::CanvasRenderingContext2D::applyShadow): Slightly increase the
   15778         magnitude of the offsets passed to CGContextSetShadow* to ensure that
   15779         the end result after truncation is the desired integer offsets. This is
   15780         the same workaround for <rdar://problem/5539388> that is used in
   15781         GraphicsContext::setShadow(). Also correct a recent regression where
   15782         shadow Y offsets were flipped.
   15783 
   15784 2008-05-31  Maciej Stachowiak  <mjs (a] apple.com>
   15785 
   15786         Reviewed by Sam.
   15787 
   15788         - avoid assertion in updateDocument() when running debug
   15789 
   15790         * bindings/js/kjs_proxy.cpp:
   15791         (WebCore::KJSProxy::updateDocument): Exit early if the document is null. We
   15792         don't need to update in this case.
   15793 
   15794 2008-05-30  Dan Bernstein  <mitz (a] apple.com>
   15795 
   15796         Reviewed by Darin Adler.
   15797 
   15798         - fix https://bugs.webkit.org/show_bug.cgi?id=19278
   15799           <rdar://problem/5968621> REGRESSION (r31114-r31132): image float disappears on refresh
   15800 
   15801         Test: fast/dynamic/float-in-trailing-whitespace-after-last-line-break.html
   15802 
   15803         * rendering/bidi.cpp:
   15804         (WebCore::RenderBlock::layoutInlineChildren): Ensured that floats
   15805         occurring in trailing whitespace after a line break are added to the
   15806         last line's floats vector.
   15807 
   15808 2008-05-30  Timothy Hatcher  <timothy (a] apple.com>
   15809 
   15810         Implements the back and forward buttons in the Scripts panel.
   15811 
   15812         Reviewed by Adam Roben.
   15813 
   15814         * page/inspector/ScriptsPanel.js:
   15815         (WebInspector.ScriptsPanel): Add the back and forward button elements
   15816         and remove the FIXMEs.
   15817         (WebInspector.ScriptsPanel.prototype.reset): Reset _backForwardList
   15818         and _currentBackForwardIndex. Then call _updateBackAndForwardButtons().
   15819         (WebInspector.ScriptsPanel.prototype._showScriptOrResource):
   15820         Added a fromBackForwardAction argument. If fromBackForwardAction is false
   15821         then update the _currentBackForwardIndex and _backForwardList.
   15822         (WebInspector.ScriptsPanel.prototype._updateBackAndForwardButtons):
   15823         Update the disabled state of the buttons.
   15824         (WebInspector.ScriptsPanel.prototype._goBack): Update the _currentBackForwardIndex
   15825         and call _showScriptOrResource() and _updateBackAndForwardButtons().
   15826         (WebInspector.ScriptsPanel.prototype._goForward): Ditto.
   15827 
   15828 2008-05-30  Timothy Hatcher  <timothy (a] apple.com>
   15829 
   15830         Made clicking a Console message URL originating from a JavaScript
   15831         source show the Resource in the Scripts panel. This only happens
   15832         when the debugger is attached.
   15833 
   15834         Reviewed by Adam Roben.
   15835 
   15836         * page/inspector/Console.js:
   15837         (WebInspector.Console.prototype._formaterror):
   15838         Add a preferredPanel of "scripts".
   15839         (WebInspector.ConsoleMessage.prototype.toMessageElement):
   15840         Add a preferredPanel of "scripts" when the source is JS.
   15841         * page/inspector/ScriptView.js:
   15842         (WebInspector.ScriptView.prototype.highlightLine): Added.
   15843         Calls through to the sourceFrame. Matches SourceView.
   15844         * page/inspector/ScriptsPanel.js:
   15845         (WebInspector.ScriptsPanel.prototype.canShowResource): Added.
   15846         Returns true if the debugger is attached and the resource has scripts.
   15847         (WebInspector.ScriptsPanel.prototype._showScriptOrResource): Call
   15848         highlightLine on the view.
   15849         * page/inspector/inspector.js:
   15850         (WebInspector.documentClick): Pass the preferredPanel to showResourceForURL.
   15851         (WebInspector.showResourceForURL): Resolve the preferredPanel from the string
   15852         passed in. Checks if the panel implements showResource and canShowResource.
   15853         Reverts to the Resources panel if any of that is false or not implemented.
   15854 
   15855 2008-05-30  Timothy Hatcher  <timothy (a] apple.com>
   15856 
   15857         Fixed an "undefined type" exception that was being thrown when
   15858         selecting a eval script from the file menu in the Scripts panel.
   15859         This would also happen when stepping into an eval which would
   15860         break other parts of the Inspector interface.
   15861 
   15862         Reviewed by Adam Roben.
   15863 
   15864         * page/inspector/ScriptsPanel.js:
   15865         (WebInspector.ScriptsPanel.prototype._showScriptOrResource):
   15866         Use the scriptOrResource variable instead of the undefined script variable.
   15867 
   15868 2008-05-30  Timothy Hatcher  <timothy (a] apple.com>
   15869 
   15870         Made the starting line number of scripts be 1-based throughout the engine.
   15871         This cleans up script line numbers so they are all consistent now and fixes
   15872         some cases where script execution was shown as off by one line in the debugger.
   15873 
   15874         Doing this also exposed a bug where JSLazyEventListener created in XHML or SVG
   15875         documents would always have a line number of 0. So this change fixed that bug
   15876         to pass all the SVG and XHTML tests.
   15877 
   15878         All layout tests pass.
   15879 
   15880         Reviewed by Oliver Hunt.
   15881 
   15882         * bindings/js/kjs_events.cpp:
   15883         (WebCore::JSLazyEventListener::JSLazyEventListener): Set the line number to 1
   15884         if it was passed in as 0. This can happen when listeners are created with
   15885         a setAttribute call from JavaScript.
   15886         (WebCore::JSLazyEventListener::parseCode): Add a FIXME about the URL being
   15887         incorrect when listeners are created with a setAttribute call from JavaScript.
   15888         * bindings/js/kjs_events.h: Remove the default value for lineNumber, since no
   15889         callers need it.
   15890         * bindings/objc/WebScriptObject.mm:
   15891         (-[WebScriptObject evaluateWebScript:]): Pass a line number of 1 instead of 0
   15892         to Interpreter::evaluate().
   15893         * bridge/NP_jsobject.cpp:
   15894         (_NPN_Evaluate): Ditto.
   15895         * bridge/jni/jni_jsobject.mm:
   15896         (JavaJSObject::eval): Ditto.
   15897         * dom/XMLTokenizer.cpp:
   15898         (WebCore::XMLTokenizer::startElementNs): Call KJSProxy::setEventHandlerLineno()
   15899         around the call to handleElementAttributes, so any JSLazyEventListener created
   15900         from those attributes have line numbers.
   15901         (WebCore::XMLTokenizer::endElementNs): Remove a minus 1 of the line number.
   15902         (WebCore::XMLTokenizer::notifyFinished): Pass a line number of 1 instead of 0.
   15903         (WebCore::XMLTokenizer::parseEndElement): Remove a minus 1 of the line number.
   15904         * html/HTMLScriptElement.cpp:
   15905         (WebCore::HTMLScriptElement::evaluateScript): Add a FIXME about the starting
   15906         line number being incorrect in some cases when this function is called.
   15907         * html/HTMLTokenizer.cpp:
   15908         (WebCore::HTMLTokenizer::parseSpecial): Add a plus 1 to the line number when
   15909         setting scriptStartLineno so it is 1-based. Same for calling setEventHandlerLineno().
   15910         (WebCore::HTMLTokenizer::processToken): Ditto.
   15911         * html/HTMLTokenizer.h: Change the default line number on scriptExecution() to 1 from 0.
   15912         * loader/FrameLoader.cpp:
   15913         (FrameLoader::executeIfJavaScriptURL): Pass a line number of 1 instead of 0 to executeScript().
   15914 
   15915 2008-05-30  Maciej Stachowiak  <mjs (a] apple.com>
   15916 
   15917         Reviewed by Oliver (earlier version reviewed by Alexey).
   15918 
   15919         - speculative fix for "REGRESSION(r34143?): Frequent crash while browsing"
   15920         https://bugs.webkit.org/show_bug.cgi?id=19285
   15921         
   15922         ("This Time for Sure" Edition)
   15923 
   15924         I'm pretty sure this fixes it but I have not been able to
   15925         reproduce and am unsure if my theory of the bug is right.
   15926 
   15927         I belive the bug was because JSDOMWindowBase accessed
   15928         JSDOMWindowShell in its destructor to remove itself from a
   15929         hashtable, but GC destructor order is not guaranteed, so the
   15930         hashtable may have been freed already. This patch changes things
   15931         so that a non-GC object (the KJSProxy) does the tracking of live
   15932         window objects for a frame. JSDOMWindowBase can null check the frame
   15933         pointer to verify if it is still good.
   15934         
   15935         In addition, we must create a similar setup between DOMWindow and
   15936         Frame; since the DOMWindow of a given frame can now change over
   15937         time, we must ensure that the Frame disconnects every live
   15938         DOMWindow when destroyed, not just the last.
   15939 
   15940         * bindings/js/JSDOMWindowBase.cpp:
   15941         (WebCore::JSDOMWindowBase::~JSDOMWindowBase):
   15942         * bindings/js/JSDOMWindowShell.cpp:
   15943         (WebCore::JSDOMWindowShell::JSDOMWindowShell):
   15944         * bindings/js/JSDOMWindowShell.h:
   15945         (WebCore::JSDOMWindowShell::setWindow):
   15946         * bindings/js/kjs_proxy.cpp:
   15947         (WebCore::KJSProxy::clear):
   15948         (WebCore::KJSProxy::initScript):
   15949         (WebCore::KJSProxy::updateDocument):
   15950         * bindings/js/kjs_proxy.h:
   15951         (WebCore::KJSProxy::clearFormerWindow):
   15952         * page/DOMWindow.cpp:
   15953         (WebCore::DOMWindow::~DOMWindow):
   15954         * page/Frame.cpp:
   15955         (WebCore::Frame::~Frame):
   15956         (WebCore::Frame::setDocument):
   15957         (WebCore::Frame::clearDOMWindow):
   15958         (WebCore::Frame::clearFormerDOMWindow):
   15959         * page/Frame.h:
   15960         * page/FramePrivate.h:
   15961 
   15962 2008-05-30  Dan Bernstein  <mitz (a] apple.com>
   15963 
   15964         Reviewed by Darin Adler and Dave Hyatt.
   15965 
   15966         - eliminate excessive repainting when an object's final position
   15967           after layout is unchanged
   15968 
   15969         * rendering/RenderBlock.cpp:
   15970         (WebCore::RenderBlock::layoutBlockChildren): Removed the full repaint
   15971         for the case that the final position is unchanged but the position at
   15972         which an intermediate layout occurred was different. Any repainting
   15973         done during the intermediate layout would have happened at the object's
   15974         initial (and also final) coordinates, since layoutDelta is factored
   15975         into repaint rect calculations.
   15976 
   15977 2008-05-30  Chris Fleizach  <cfleizach (a] apple.com>
   15978 
   15979         Reviewed by Beth Dakin.
   15980 
   15981         <rdar://problem/5959478> r34079: AX: crash at stringForReplacedNode
   15982 
   15983         * page/AccessibilityObject.cpp:
   15984         (WebCore::stringForReplacedNode):
   15985 
   15986 2008-05-30  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   15987 
   15988         Reviewed by Simon.
   15989 
   15990         Fix the build dependencies for the Qt build. Don't generate
   15991         SVGCSSPropertyNames.cpp for every build.
   15992 
   15993         * WebCore.pro: The output file was renamed, so the compiler rule needs
   15994         to be adjusted in order for qmake to generate correct depdencies.
   15995 
   15996 2008-05-30  Maciej Stachowiak  <mjs (a] apple.com>
   15997 
   15998         Revert fix for 19285, it just caused more crashes and I need time
   15999         to fix it properly.
   16000 
   16001         * bindings/js/JSDOMWindowBase.cpp:
   16002         (WebCore::JSDOMWindowBase::~JSDOMWindowBase):
   16003         * bindings/js/JSDOMWindowShell.cpp:
   16004         (WebCore::JSDOMWindowShell::JSDOMWindowShell):
   16005         (WebCore::JSDOMWindowShell::updateDocument):
   16006         * bindings/js/JSDOMWindowShell.h:
   16007         (WebCore::JSDOMWindowShell::setWindow):
   16008         (WebCore::JSDOMWindowShell::clearFormerWindow):
   16009         * bindings/js/kjs_proxy.cpp:
   16010         (WebCore::KJSProxy::clear):
   16011         (WebCore::KJSProxy::initScript):
   16012         * bindings/js/kjs_proxy.h:
   16013         * page/Frame.cpp:
   16014         (WebCore::Frame::setDocument):
   16015 
   16016 2008-05-30  Adam Treat  <treat (a] kde.org>
   16017 
   16018         Reviewed by Simon.
   16019 
   16020         Fix a huge memory leak by ensuring that on application shutdown
   16021         the shared timer is fired one last time if it is active. This
   16022         ensures that the GCController timer is fired at the end to free
   16023         references to JavaScript objects.
   16024 
   16025         * platform/qt/SharedTimerQt.h:
   16026         (WebCore::SharedTimerQt::cleanup):
   16027         (WebCore::SharedTimerQt::inst):
   16028 
   16029 2008-05-30  Alexey Proskuryakov  <ap (a] webkit.org>
   16030 
   16031         Reviewed by Darin.
   16032 
   16033         http://bugs.webkit.org/show_bug.cgi?id=7466
   16034         <rdar://problem/4657563> Use of Ctrl as access key modifier conflicts with Mac OS X
   16035         emacs-style keybindings
   16036 
   16037         * page/EventHandler.cpp:
   16038         (WebCore::EventHandler::handleAccessKey): Use Ctrl+Option for access keys on Mac OS X.
   16039 
   16040 2008-05-30  Maciej Stachowiak  <mjs (a] apple.com>
   16041 
   16042         Reviewed by Alexey.
   16043         
   16044         - speculative fix for "REGRESSION(r34143?): Frequent crash while browsing"
   16045         https://bugs.webkit.org/show_bug.cgi?id=19285
   16046 
   16047         I'm pretty sure this fixes it but I have not been able to
   16048         reproduce and am unsure if my theory of the bug is right.
   16049 
   16050         I belive the bug was because JSDOMWindowBase accessed
   16051         JSDOMWindowShell in its destructor to remove itself from a
   16052         hashtable, but GC destructor order is not guaranteed, so the
   16053         hashtable may have been freed already. This patch changes things
   16054         so that a non-GC object (the KJSProxy) does the tracking of live
   16055         window objects for a frame. JSDOMWindowBase can null check the frame
   16056         pointer to verify if it is still good.
   16057         
   16058         * bindings/js/JSDOMWindowBase.cpp:
   16059         (WebCore::JSDOMWindowBase::~JSDOMWindowBase):
   16060         * bindings/js/JSDOMWindowShell.cpp:
   16061         (WebCore::JSDOMWindowShell::JSDOMWindowShell):
   16062         * bindings/js/JSDOMWindowShell.h:
   16063         (WebCore::JSDOMWindowShell::setWindow):
   16064         * bindings/js/kjs_proxy.cpp:
   16065         (WebCore::KJSProxy::clear):
   16066         (WebCore::KJSProxy::initScript):
   16067         (WebCore::KJSProxy::updateDocument):
   16068         * bindings/js/kjs_proxy.h:
   16069         (WebCore::KJSProxy::clearFormerWindow):
   16070         * page/Frame.cpp:
   16071         (WebCore::Frame::setDocument):
   16072 
   16073 2008-05-29  Chris Fleizach  <cfleizach (a] apple.com>
   16074 
   16075         Reviewed by Darin Adler.
   16076 
   16077         <rdar://problem/4783102> Radio button/checkbox embedded with <label> tag should combine the text and the label as a single element
   16078         <rdar://problem/5091386> Seed: VO reads form labels twice in Safari
   16079 
   16080         * page/AccessibilityObject.cpp:
   16081         (WebCore::AccessibilityObject::titleUIElement):
   16082         * page/AccessibilityObject.h:
   16083         (WebCore::AccessibilityObject::isControl):
   16084         * page/AccessibilityRenderObject.cpp:
   16085         (WebCore::AccessibilityRenderObject::isControl):
   16086         (WebCore::AccessibilityRenderObject::labelElementContainer):
   16087         (WebCore::AccessibilityRenderObject::title):
   16088         (WebCore::AccessibilityRenderObject::checkboxOrRadioRect):
   16089         (WebCore::AccessibilityRenderObject::elementRect):
   16090         (WebCore::AccessibilityRenderObject::titleUIElement):
   16091         (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
   16092         (WebCore::AccessibilityRenderObject::roleValue):
   16093         * page/AccessibilityRenderObject.h:
   16094         * page/mac/AccessibilityObjectWrapper.mm:
   16095         (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
   16096         (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
   16097 
   16098 2008-05-29  Timothy Hatcher  <timothy (a] apple.com>
   16099 
   16100         Fixes the regression where image resources don't have a preview icon.
   16101 
   16102         https://bugs.webkit.org/show_bug.cgi?id=18500
   16103 
   16104         Reviewed by Adam Roben.
   16105 
   16106         * page/inspector/ResourcesPanel.js:
   16107         (WebInspector.ResourceSidebarTreeElement): Call createIconElement before
   16108         calling the superclass.
   16109         (WebInspector.ResourceSidebarTreeElement.prototype.createIconElement):
   16110         Create an iconElement, if the category is images then make a div that
   16111         contains a preview image. Otherwise just make an img element. If there
   16112         was a previous iconElement, then replace it.
   16113         (WebInspector.ResourceSidebarTreeElement.prototype.refresh): Call
   16114         createIconElement if the category changed.
   16115         * page/inspector/SidebarTreeElement.js:
   16116         (WebInspector.SidebarTreeElement): Create an iconElement if one hasn't
   16117         been made already by a subclass.
   16118         (WebInspector.SidebarTreeElement.prototype.onattach): Append the iconElement
   16119         instead of creating one each time.
   16120         * page/inspector/inspector.css: New and updated style rules.
   16121 
   16122 2008-05-29  Timothy Hatcher  <timothy (a] apple.com>
   16123 
   16124         Removes a use of the internal _childrenListNode property by adding
   16125         a getter/setter for smallChildren to SidebarSectionTreeElement.
   16126 
   16127         Reviewed by Adam Roben.
   16128 
   16129         * page/inspector/ResourcesPanel.js:
   16130         (WebInspector.ResourcesPanel.prototype._toggleLargerResources):
   16131         Toggle smallChildren on the resourcesTreeElement instead of setting
   16132         the style class directly.
   16133         * page/inspector/SidebarTreeElement.js:
   16134         (WebInspector.SidebarSectionTreeElement.prototype.smallChildren):
   16135         Sets or removes the small class on the _childrenListNode.
   16136 
   16137 2008-05-29  Timothy Hatcher  <timothy (a] apple.com>
   16138 
   16139         Fixes a bug where the className would be reset for Resource
   16140         tree elements and the selected state would be lost. This could
   16141         happen when sorting the resources.
   16142 
   16143         https://bugs.webkit.org/show_bug.cgi?id=19211
   16144 
   16145         Reviewed by Adam Roben.
   16146 
   16147         * page/inspector/ResourcesPanel.js:
   16148         (WebInspector.ResourceSidebarTreeElement.prototype.refresh): Call
   16149         removeMatchingStyleClasses to remove previous category classes instead
   16150         of setting the whole className directly.
   16151         * page/inspector/utilities.js:
   16152         (Element.prototype.removeStyleClass): Moved code to
   16153         removeMatchingStyleClasses and call removeMatchingStyleClasses.
   16154         (Element.prototype.removeMatchingStyleClasses): Added. Code moved from
   16155         removeStyleClass and don't escape the string.
   16156 
   16157 2008-05-29  David Hyatt  <hyatt (a] apple.com>
   16158 
   16159         Improve the performance of the GUIMark benchmark by 2x in the CoreGraphics code path.
   16160 
   16161         Whenever a foreground image changes size rapidly, we will now dynamically shift into rendering it
   16162         using low quality scaling.  Once the animation completes, the image will repaint at high quality.
   16163         Scaled images will still render at high quality by default, only shifting into low quality if
   16164         the scale factor is rapidly changing.  This change raises GUIMark from 21fps to 34fps on my machine.
   16165 
   16166         Rewrite the Image draw method to avoid the use of throwaway CG subimages.  Instead the entire image is
   16167         always drawn (with the appropriate clip and scale set up to make sure the correct subimage portion shows up
   16168         in the destination rect).  This change raises GUIMark from 34fps to 43fps on my machine.
   16169 
   16170         Reviewed by Darin
   16171 
   16172         * platform/graphics/GraphicsContext.cpp:
   16173         (WebCore::GraphicsContext::drawImage):
   16174         * platform/graphics/cg/ImageCG.cpp:
   16175         (WebCore::BitmapImage::draw):
   16176         * rendering/RenderImage.cpp:
   16177         (WebCore::RenderImageScaleData::RenderImageScaleData):
   16178         (WebCore::RenderImageScaleData::~RenderImageScaleData):
   16179         (WebCore::RenderImageScaleData::size):
   16180         (WebCore::RenderImageScaleData::time):
   16181         (WebCore::RenderImageScaleData::useLowQualityScale):
   16182         (WebCore::RenderImageScaleData::hiqhQualityRepaintTimer):
   16183         (WebCore::RenderImageScaleData::setSize):
   16184         (WebCore::RenderImageScaleData::setTime):
   16185         (WebCore::RenderImageScaleData::setUseLowQualityScale):
   16186         (WebCore::RenderImageScaleObserver::shouldImagePaintAtLowQuality):
   16187         (WebCore::RenderImageScaleObserver::imageDestroyed):
   16188         (WebCore::RenderImageScaleObserver::highQualityRepaintTimerFired):
   16189         (WebCore::RenderImage::highQualityRepaintTimerFired):
   16190         (WebCore::RenderImage::~RenderImage):
   16191         (WebCore::RenderImage::paintReplaced):
   16192         * rendering/RenderImage.h:
   16193 
   16194 2008-05-29  Justin Garcia  <justin.garcia (a] apple.com>
   16195 
   16196         Reviewed by Eric.
   16197 
   16198         <rdar://problem/5847330> REGRESSION CrashTracer: [USER] 536 crashes at WebCore::highestAncestor
   16199 
   16200         * editing/CompositeEditCommand.cpp:
   16201         (WebCore::CompositeEditCommand::breakOutOfEmptyListItem): Don't break out of an empty
   16202         list item if its parent is non-editable, since doing so will move into non-editable content.
   16203         * editing/DeleteSelectionCommand.cpp:
   16204         (WebCore::DeleteSelectionCommand::initializePositionData): We want to prevent merges from
   16205         table cells even if those table cells are non-editable.
   16206         * editing/htmlediting.cpp:
   16207         (WebCore::enclosingNodeOfType): Can now return non-editable nodes, for cases where the caller 
   16208         isn't going to do editing in the returned node.
   16209         * editing/htmlediting.h:
   16210 
   16211 2008-05-29  Anders Carlsson  <andersca (a] apple.com>
   16212 
   16213         Reviewed by Mitz.
   16214 
   16215         <rdar://problem/5971845>
   16216         https://bugs.webkit.org/show_bug.cgi?id=19313
   16217         Add version member to NPCocoaEvent
   16218         
   16219         * bridge/npapi.h:
   16220 
   16221 2008-05-29  Alexey Proskuryakov  <ap (a] webkit.org>
   16222 
   16223         Reviewed by Adam Roben.
   16224 
   16225         <rdar://problem/5960682> REGRESSION(r30535): Crashes on iExploder in checkForHeadCharset().
   16226 
   16227         I don't see how to make a reliable test, but iExploder catches this quickly.
   16228 
   16229         * loader/TextResourceDecoder.cpp:
   16230         (WebCore::TextResourceDecoder::checkForHeadCharset): Correct the length passed to
   16231         findIgnoringCase().
   16232 
   16233 2008-05-29  Peter Kasting  <pkasting (a] google.com>
   16234 
   16235         Reviewed by Dave Hyatt.
   16236 
   16237         https://bugs.webkit.org/show_bug.cgi?id=19273
   16238         Handle looping GIFs correctly (at least in the open source GIF decoder) even when
   16239         the loop count doesn't appear in the initial data packets.
   16240 
   16241         * platform/graphics/BitmapImage.cpp:
   16242         (WebCore::BitmapImage::cacheFrame):
   16243         (WebCore::BitmapImage::startAnimation):
   16244         (WebCore::BitmapImage::advanceAnimation):
   16245         * platform/image-decoders/gif/GIFImageDecoder.cpp:
   16246         (WebCore::GIFImageDecoder::GIFImageDecoder):
   16247         (WebCore::GIFImageDecoder::repetitionCount):
   16248         (WebCore::GIFImageDecoder::gifComplete):
   16249         * platform/image-decoders/gif/GIFImageDecoder.h:
   16250 
   16251 2008-05-29  Brent Fulgham  <bfulgham (a] gmail.com>
   16252 
   16253         Reviewed by Alp Toker.
   16254 
   16255         http://bugs.webkit.org/show_bug.cgi?id=19284
   16256         Correct Windows (Cairo) Build Regressions
   16257 
   16258         Correct small Windows (Cairo) build regressions in recent updates.
   16259 
   16260         * platform/graphics/SimpleFontData.h:  Correct build regression due
   16261           to r32781 (additional use of m_syntheticBoldOffset in GDI code).
   16262         * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h:
   16263           Correct build regression due to r31830 (change of clip signature
   16264           to use FloatRect rather than IntRect).
   16265         * platform/graphics/win/SimpleFontDataCairoWin.cpp:
   16266         (WebCore::SimpleFontData::platformInit):  Initialize
   16267         m_syntheticBoldOffset
   16268         * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
   16269         (WebCore::JPEGImageReader::JPEGImageReader):  Work around build
   16270           error due to warnings about _setjmp treated as errors.
   16271         * platform/image-decoders/png/PNGImageDecoder.cpp:  Work around
   16272           build error due to warnings about _setjmp treated as errors.
   16273         * platform/network/curl/ResourceHandleCurl.cpp:  Correct build error
   16274           due to different order (and content) of include files when building
   16275           with CoreFoundation (but not CoreGraphics).
   16276         * platform/network/curl/ResourceHandleManager.cpp:
   16277         (WebCore::ResourceHandleManager::setupPOST):  Correct build error
   16278           due to Visual Studio compiler bug.
   16279 
   16280 2008-05-29  Alexey Proskuryakov  <ap (a] webkit.org>
   16281 
   16282         Reviewed by Darin.
   16283 
   16284         https://bugs.webkit.org/show_bug.cgi?id=19215
   16285         REGRESSION: transformToDocument fails when xsl includes &#160;
   16286 
   16287         Test: fast/xsl/nbsp-in-stylesheet.html
   16288 
   16289         * editing/markup.cpp:
   16290         (WebCore::appendAttributeValue):
   16291         (WebCore::appendEscapedContent):
   16292         (WebCore::escapeContentText):
   16293         (WebCore::appendQuotedURLAttributeValue):
   16294         (WebCore::appendNamespace):
   16295         (WebCore::appendStartMarkup):
   16296         (WebCore::appendDocumentType):
   16297         (WebCore::createMarkup):
   16298         Only escape non-breaking spaces in HTML documents. In Firefox, this behavior is also limited
   16299         to innerHTML, but we don't have a separate code path for it, and do not necessarily want to.
   16300 
   16301         * page/Frame.cpp:
   16302         (WebCore::Frame::documentTypeString):
   16303         * dom/CDATASection.cpp:
   16304         * dom/CDATASection.h:
   16305         * dom/Comment.cpp:
   16306         * dom/Comment.h:
   16307         * dom/DocumentType.cpp:
   16308         * dom/DocumentType.h:
   16309         * dom/ProcessingInstruction.cpp:
   16310         * dom/ProcessingInstruction.h:
   16311         While at it, I also wanted to fix escaping for these nodes, but it turned out that FIXMEs were
   16312         incorrect. So, I just moved their serialization to markup.cpp for consistency.
   16313 
   16314 2008-05-29  Maciej Stachowiak  <mjs (a] apple.com>
   16315 
   16316         Reviewed by Dave Hyatt.
   16317 
   16318         - speed up DHTML using lazy style resolution and renderer creation
   16319 
   16320         This change introduces the concept of "lazy attach" - when a node
   16321         is lazy attached, then instead of resolving style and creating a
   16322         renderer right away, we just mark it as needing a style recalc.
   16323         
   16324         The patch makes use of this mechanism when inserting nodes directly
   16325         using DOM APIs from script. For now this is only done for the
   16326         JavaScript language binding but could also be done for other
   16327         bindings in the future.
   16328         
   16329         Lazy attach helps some common DHTML patterns - when a node is
   16330         added to the DOM, and then subsequently changed in a
   16331         style-affecting way, this causes an extra style recalc. This is a
   16332         fairly common pattern so it is better to be lazy.
   16333         
   16334         * bindings/js/JSNodeCustom.cpp:
   16335         (WebCore::JSNode::insertBefore): Request lazy attach.
   16336         (WebCore::JSNode::replaceChild): ditto
   16337         (WebCore::JSNode::appendChild): ditto
   16338         * dom/ContainerNode.cpp:
   16339         (WebCore::ContainerNode::insertBefore): Support lazy attach.
   16340         (WebCore::ContainerNode::replaceChild): ditto
   16341         (WebCore::ContainerNode::appendChild): ditto
   16342         (WebCore::ContainerNode::detach): Clear "changed child" bit if still set.
   16343         * dom/ContainerNode.h:
   16344         * dom/Element.cpp:
   16345         (WebCore::Element::recalcStyle): Adjusted to properly reattach a
   16346         lazy-attached node.
   16347         * dom/Node.cpp:
   16348         (WebCore::Node::insertBefore): Extra parameter for lazy attach
   16349         (still doesn't do anything).
   16350         (WebCore::Node::replaceChild): ditto
   16351         (WebCore::Node::appendChild): ditto
   16352         (WebCore::Node::setChanged): Unrelated but obvious optimization -
   16353         stop marking ancestor as having a changed child once we already reach
   16354         an ancestor so marked.
   16355         (WebCore::outermostLazyAttachedAncestor): Helper function for lazyAttach.
   16356         (WebCore::Node::lazyAttach): Implement lazy attach.
   16357         (WebCore::Node::canLazyAttach): Virtual method - true for most nodes.
   16358         * dom/Node.h:
   16359         * dom/Text.cpp:
   16360         (WebCore::Text::recalcStyle): Properly handle the case of a reattached node.
   16361         * html/HTMLEmbedElement.h:
   16362         (WebCore::HTMLEmbedElement::canLazyAttach): Refuse lazy attach, since
   16363         plugins and frames do important work at rederer creation time.
   16364         * html/HTMLFrameElementBase.h:
   16365         (WebCore::HTMLFrameElementBase::canLazyAttach): Refuse lazy attach, since
   16366         plugins and frames do important work at rederer creation time.
   16367         * html/HTMLFrameSetElement.cpp:
   16368         (WebCore::HTMLFrameSetElement::recalcStyle): Change order so that
   16369         reattach works properly.
   16370         * html/HTMLObjectElement.h:
   16371         (WebCore::HTMLObjectElement::canLazyAttach): Refuse lazy attach, since
   16372         plugins and frames do important work at rederer creation time.
   16373         * html/HTMLOptGroupElement.cpp:
   16374         (WebCore::HTMLOptGroupElement::insertBefore): Pass along extra param.
   16375         (WebCore::HTMLOptGroupElement::replaceChild): ditto
   16376         (WebCore::HTMLOptGroupElement::appendChild): ditto
   16377         * html/HTMLOptGroupElement.h:
   16378         * html/HTMLSelectElement.cpp:
   16379         (WebCore::HTMLSelectElement::insertBefore): Pass along extra param.
   16380         (WebCore::HTMLSelectElement::replaceChild): ditto
   16381         (WebCore::HTMLSelectElement::appendChild): ditto
   16382         * html/HTMLSelectElement.h:
   16383         * svg/SVGLocatable.cpp:
   16384         (WebCore::SVGLocatable::getBBox): Add missing updateLayout call.
   16385         * svg/SVGTextContentElement.cpp:
   16386         (WebCore::SVGTextContentElement::getNumberOfChars): ditto
   16387         (WebCore::SVGTextContentElement::getComputedTextLength): ditto
   16388         (WebCore::SVGTextContentElement::getSubStringLength): ditto
   16389         (WebCore::SVGTextContentElement::getStartPositionOfChar): ditto
   16390         (WebCore::SVGTextContentElement::getEndPositionOfChar): ditto
   16391         (WebCore::SVGTextContentElement::getExtentOfChar): ditto
   16392         (WebCore::SVGTextContentElement::getRotationOfChar): ditto
   16393         (WebCore::SVGTextContentElement::getCharNumAtPosition): ditto
   16394 
   16395 2008-05-28  Ada Chan  <adachan (a] apple.com>
   16396 
   16397         <rdar://problem/5957036> REGRESSION (r31960): 20-30% slowdown in i-Bench JavaScript test on XP Home
   16398         Conditionalize the timer latency change (r31960) only for vista since it does not
   16399         help xp anyway.
   16400 
   16401         Reviewed by Steve Falkenburg.
   16402 
   16403         * platform/win/SharedTimerWin.cpp:
   16404         (WebCore::isRunningOnVistaOrLater):
   16405         (WebCore::TimerWindowWndProc):
   16406         (WebCore::setSharedTimerFireTime):
   16407 
   16408 2008-05-28  Anders Carlsson  <andersca (a] apple.com>
   16409 
   16410         Build fix.
   16411         
   16412         * storage/LocalStorage.cpp:
   16413         (WebCore::LocalStorage::scheduleImport):
   16414 
   16415 2008-05-28  Anders Carlsson  <andersca (a] apple.com>
   16416 
   16417         Reviewed by Tim.
   16418 
   16419         <rdar://problem/5965960>
   16420         CrashTracer: [USER] 4 crashes in Safari at libxml2.2.dylib: xmlGenericErrorDefaultFunc + 76
   16421         
   16422         Turns out that while libxml has two different error callbacks, they both use the same context, so we need to 
   16423         set both error callbacks to prevent one of the error callbacks from using the context as a FILE pointer.
   16424         
   16425         * xml/XSLStyleSheet.cpp:
   16426         (WebCore::XSLStyleSheet::parseString):
   16427         * xml/XSLTProcessor.cpp:
   16428         (WebCore::XSLTProcessor::genericErrorFunc):
   16429         (WebCore::docLoaderFunc):
   16430         * xml/XSLTProcessor.h:
   16431 
   16432 2008-05-28  Brady Eidson  <beidson (a] apple.com>
   16433 
   16434         Reviewed by Adam
   16435 
   16436         Fix hang I introduced to WebKit clients without their LocalStorage paths set
   16437         Such as DRT...
   16438 
   16439         * storage/LocalStorage.cpp:
   16440         (WebCore::LocalStorage::scheduleImport): Return a bool, namely to signify
   16441           whether or not there is a LocalStorageThread to schedule the import on.
   16442         * storage/LocalStorage.h:
   16443 
   16444         * storage/LocalStorageArea.cpp:
   16445         (WebCore::LocalStorageArea::LocalStorageArea): If the scheduleImport failed,
   16446           mark the imported flag as true so the LocalStorageArea doesn't wait around
   16447           locking the main thread.
   16448 
   16449 2008-05-28  Anthony Ricaud  <rik24d (a] gmail.com>
   16450 
   16451         User stylesheets are now non-editable and displayed as user-stylesheets
   16452 
   16453         <https://bugs.webkit.org/show_bug.cgi?id=17602>
   16454         <rdar://problem/5967637>
   16455 
   16456         Reviewed by Tim Hatcher.
   16457 
   16458         * English.lproj/localizedStrings.js: Added a string
   16459         * page/inspector/StylesSidebarPane.js:
   16460 
   16461 2008-05-28  Anders Carlsson  <andersca (a] apple.com>
   16462 
   16463         Reviewed by Mitz.
   16464 
   16465         <rdar://problem/5819989> 
   16466         Crash in WebKit!KJS::Window::printErrorMessage quitting Safari after pop up window on uk.real.com was closed
   16467 
   16468         Add null check for Frame::settings().
   16469         
   16470         * bindings/js/JSDOMWindowBase.cpp:
   16471         (WebCore::JSDOMWindowBase::printErrorMessage):
   16472 
   16473 2008-05-27  Geoffrey Garen  <ggaren (a] apple.com>
   16474 
   16475         Reviewed by Tim Hatcher.
   16476 
   16477         Fixed https://bugs.webkit.org/show_bug.cgi?id=19183
   16478         REGRESSION (r33979): Crash in DebuggerCallFrame::functionName when
   16479         clicking button in returnEvent-crash.html
   16480         
   16481         Added implementations for willExecuteProgram and didExecuteProgram. They
   16482         take care to update our call frame when entering and exiting programs,
   16483         preventing us from keeping around a stale global frame after executing
   16484         a program.
   16485         
   16486         eval programs now show up as "anonymous function" in a new scope. This
   16487         is slightly better than what they used to do -- overwriting the current
   16488         scope -- but obviously we can do better.
   16489 
   16490 2008-05-28  Brady Eidson  <beidson (a] apple.com>
   16491 
   16492         Reviewed by Dan Bernstein
   16493 
   16494         <rdar://problem/5946834> - LocalStorage threads appearing in apps that don't want them.
   16495 
   16496         Decided to fix this bug from a few different avenues to make sure we only create LocalStorage resources
   16497         when we *really* want them.
   16498 
   16499         * page/DOMWindow.cpp:
   16500         (WebCore::DOMWindow::localStorage): Account for the possibility that the LocalStorage object might be null.
   16501 
   16502         * storage/LocalStorage.cpp:
   16503         (WebCore::LocalStorage::LocalStorage): Don't create the thread if there is no path name - we know we'll never
   16504           be needing it when there is no file backing us on disk.
   16505         (WebCore::LocalStorage::scheduleImport): Null check the thread, as it might not exist.
   16506         (WebCore::LocalStorage::scheduleSync): Ditto
   16507 
   16508         * storage/LocalStorageThread.cpp:
   16509         (WebCore::LocalStorageThread::localStorageThread): Clear the threadID after termination - clear way to signify
   16510           that this thread is truly done.
   16511         (WebCore::LocalStorageThread::scheduleImport): ASSERT that the queue is live, and the threadID exists
   16512         (WebCore::LocalStorageThread::scheduleSync): Ditto
   16513         (WebCore::LocalStorageThread::terminate): Don't schedule termination and wait for it to complete if the thread 
   16514           isn't live.
   16515 
   16516 2008-05-28  Alexander Vassilev  <avasilev (a] voipgate.com>
   16517 
   16518         Reviewed by Kevin Ollivier.
   16519 
   16520         Rescale image to fit the destination rect so that we don't get a crash when drawing
   16521         in a destination rect that's bigger than the image rect. Also adds an optimization for
   16522         drawing an image that is a solid color.
   16523         
   16524         https://bugs.webkit.org/show_bug.cgi?id=18465
   16525 
   16526         * platform/graphics/wx/ImageWx.cpp:
   16527         (WebCore::BitmapImage::draw):
   16528 
   16529 2008-05-27  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   16530 
   16531         Reviewed by Simon
   16532 
   16533         Close the video widget explicitly so we don't hang
   16534         when exiting the application.
   16535 
   16536         * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
   16537         (WebCore::MediaPlayerPrivate::~MediaPlayerPrivate):
   16538 
   16539 2008-05-27  Justin Garcia  <justin.garcia (a] apple.com>
   16540 
   16541         Reviewed by Oliver.
   16542 
   16543         <rdar://problem/5803706> Pressing return at the end of a header doesn't break out of header (17460)
   16544         
   16545         It wasn't enough to break out of the header, to match other browsers we 
   16546         also need to not preserve the typing style.
   16547 
   16548         * editing/InsertParagraphSeparatorCommand.cpp:
   16549         (WebCore::InsertParagraphSeparatorCommand::applyStyleAfterInsertion):
   16550         (WebCore::InsertParagraphSeparatorCommand::doApply):
   16551         * editing/InsertParagraphSeparatorCommand.h:
   16552 
   16553 2008-05-27  Timothy Hatcher  <timothy (a] apple.com>
   16554 
   16555         <rdar://problem/5966961> REGRESSION: Font previews in the Web
   16556         Inspector always show in Lucida Grande (not the real font)
   16557 
   16558         Reviewed by Adam Roben.
   16559 
   16560         * page/inspector/FontView.js: Add a style element that loads the
   16561         @font-face rule that is excepted by the preview element.
   16562 
   16563 2008-05-27  Timothy Hatcher  <timothy (a] apple.com>
   16564 
   16565         Fixes a regression where the Image and Font preview views do not
   16566         size correctly.
   16567 
   16568         <rdar://problem/5966723> REGRESSION (r33991): Image and font previews
   16569         are shrunken and can't be made larger (19281)
   16570 
   16571         Reviewed by Adam Roben.
   16572 
   16573         * page/inspector/FontView.js: Adjust the font size based only on the
   16574         container width minus padding.
   16575         * page/inspector/inspector.css: Updated styles for the image and
   16576         font views.
   16577 
   16578 2008-05-27  Adam Roben  <aroben (a] apple.com>
   16579 
   16580         Fix Bug 19276: XHR resources are classified as "Other" until Inspector
   16581         is closed and reopened
   16582 
   16583         <https://bugs.webkit.org/show_bug.cgi?id=19276>
   16584         <rdar://problem/5965742>
   16585 
   16586         Reviewed by Tim Hatcher.
   16587 
   16588         * page/InspectorController.cpp:
   16589         (WebCore::InspectorController::updateScriptResourceResponse): Moved
   16590         code that updates the resource's type from here...
   16591         (WebCore::InspectorController::updateScriptResourceType): ...to here.
   16592         (WebCore::InspectorController::resourceRetrievedByXMLHttpRequest):
   16593         Call updateScriptResourceType now that we know this resource was
   16594         retrieved via an XHR.
   16595         * page/InspectorController.h:
   16596 
   16597 2008-05-27  Timothy Hatcher  <timothy (a] apple.com>
   16598 
   16599         Removes a redundant call to InspectorController::stopDebugging().
   16600 
   16601         Rubber-stamped by Adam Roben.
   16602 
   16603         * page/InspectorController.cpp:
   16604         (WebCore::InspectorController::showWindow):
   16605 
   16606 2008-05-27  Kevin McCullough  <kmccullough (a] apple.com>
   16607 
   16608         Reviewed by Tim.
   16609 
   16610         - Added and updated some manual test for the profiler.
   16611 
   16612         * manual-tests/inspector/profiler-test-anonymous-function-calls-eval.html:
   16613         * manual-tests/inspector/profiler-test-apply.html:
   16614         * manual-tests/inspector/profiler-test-call.html:
   16615         * manual-tests/inspector/profiler-test-deep-recursion.html: Added.
   16616         * manual-tests/inspector/profiler-test-simple-event-call.html: Added.
   16617 
   16618 2008-05-27  Kevin Ollivier  <kevino (a] theolliviers.com>
   16619 
   16620         wx build fix. Accidently left a couple fixes out of the previous commit.
   16621 
   16622         * webcore-base.bkl:
   16623 
   16624 2008-05-27  Kevin Ollivier  <kevino (a] theolliviers.com>
   16625 
   16626         wx build fix. Adding JSHTMLElementWrapperFactory.cpp.
   16627         
   16628         * WebCoreSources.bkl:
   16629 
   16630 2008-05-27  Ariya Hidayat  <ariya.hidayat (a] trolltech.com>
   16631 
   16632         Reviewed by Simon.
   16633 
   16634         Fix linking error (missing gdi32 and user32 libraries).
   16635 
   16636         * WebCore.pro:
   16637 
   16638 2008-05-27  Ariya Hidayat  <ariya.hidayat (a] trolltech.com>
   16639 
   16640         Reviewed by Simon.
   16641 
   16642         Update the WebKit.qrc so that Web Inspector is functional again.
   16643 
   16644         * page/inspector/WebKit.qrc:
   16645 
   16646 2008-05-26  Alp Toker  <alp (a] nuanti.com>
   16647 
   16648         Reviewed by Anders.
   16649 
   16650         http://bugs.webkit.org/show_bug.cgi?id=16495
   16651         [GTK] Accessibility support with ATK/AT-SPI
   16652 
   16653         Implement basic action, text and editable text accessibility.
   16654 
   16655         Provide utility functions to simplify const string return and casting
   16656         and add some more stubs.
   16657 
   16658         It's now possible to navigate and manipulate forms and text using
   16659         assistive technologies.
   16660 
   16661         * page/gtk/AccessibilityObjectWrapperAtk.cpp:
   16662         (returnString):
   16663         (core):
   16664         * platform/gtk/LocalizedStringsGtk.cpp:
   16665         (WebCore::AXButtonActionVerb):
   16666         (WebCore::AXRadioButtonActionVerb):
   16667         (WebCore::AXTextFieldActionVerb):
   16668         (WebCore::AXCheckedCheckBoxActionVerb):
   16669         (WebCore::AXUncheckedCheckBoxActionVerb):
   16670         (WebCore::AXLinkActionVerb):
   16671         (WebCore::imageTitle):
   16672 
   16673 2008-05-25  Maciej Stachowiak  <mjs (a] apple.com>
   16674 
   16675         Reviewed by Anders.
   16676 
   16677         - bind the window's "document" and "window" properties to static slots
   16678         1.7% speedup on Acid3 test 26
   16679         
   16680         Only the "document" part matters for Acid3, but since I was doing
   16681         this anyway, "window" also seemed like a good one to optimize.
   16682 
   16683         * bindings/js/JSDOMWindowBase.cpp:
   16684         (WebCore::JSDOMWindowBase::JSDOMWindowBase): Allocate variable
   16685         slots for document and window; but just put null in the document
   16686         slot for now.
   16687         (WebCore::JSDOMWindowBase::updateDocument): Fill in the document
   16688         slot.        
   16689         (WebCore::JSDOMWindowBase::~JSDOMWindowBase): Make our shell stop
   16690         tracking us.
   16691         * bindings/js/JSDOMWindowBase.h:
   16692         * bindings/js/JSDOMWindowShell.cpp:
   16693         (WebCore::JSDOMWindowShell::JSDOMWindowShell): Allocate HashSet
   16694         for our still-not-dead inner windows.
   16695         (WebCore::JSDOMWindowShell::updateDocument): Update all our
   16696         inner windows ever (to make sure the update to the document
   16697         property shows up everywhere).
   16698         * bindings/js/JSDOMWindowShell.h:
   16699         (WebCore::JSDOMWindowShell::setWindow): Update our hash.
   16700         (WebCore::JSDOMWindowShell::clearFormerWindow): Ditto.
   16701         * bindings/js/JSDocumentCustom.cpp:
   16702         (WebCore::toJS): Don't set self as a property map property of
   16703         the window, this is no longer necessary.
   16704         * bindings/js/kjs_proxy.cpp:
   16705         (WebCore::KJSProxy::initScript): Update document for the
   16706         newly created window.
   16707         * bindings/js/kjs_proxy.h:
   16708         * page/Frame.cpp:
   16709         (WebCore::Frame::setDocument): If the document is not null,
   16710         update our window.
   16711 
   16712 2008-05-26  Anders Carlsson  <andersca (a] apple.com>
   16713 
   16714         Reviewed by Sam.
   16715 
   16716         This patch does two things:
   16717         
   16718         * It adds a toJSNewlyCreated function for creating JS wrappers for nodes where we know
   16719         that the node doesn't have a wrapper. This avoids a hash lookup.
   16720         
   16721         * It adds toJSNewlyCreated methods for JSElement and JSText. 
   16722         
   16723         All in all this is a 4.3% speedup on Acid 3 test 26.
   16724         
   16725         * WebCore.vcproj/WebCore.vcproj:
   16726         * WebCore.xcodeproj/project.pbxproj:
   16727         * bindings/js/JSElementCustom.cpp:
   16728         (WebCore::toJSNewlyCreated):
   16729         * bindings/js/JSNodeCustom.cpp:
   16730         (WebCore::createWrapper):
   16731         (WebCore::toJSNewlyCreated):
   16732         (WebCore::toJS):
   16733         * bindings/js/JSTextCustom.cpp: Added.
   16734         (WebCore::toJSNewlyCreated):
   16735         * bindings/scripts/CodeGeneratorJS.pm:
   16736         * dom/Document.idl:
   16737 
   16738 2008-05-26  Sam Weinig  <sam (a] webkit.org>
   16739 
   16740         Reviewed by Anders Carlsson.
   16741 
   16742         Inline the getOwnPropertySlot for JSNode, JSEventTargetNode, JSElement,
   16743         and JSDocument for a 1-2% speedup on Acid 3 test 26.
   16744 
   16745         * bindings/js/JSEventTargetNode.cpp:
   16746         * bindings/js/JSEventTargetNode.h:
   16747         (WebCore::JSEventTargetNode::getOwnPropertySlot):
   16748         (WebCore::JSEventTargetNode::getValueProperty):
   16749         (WebCore::JSEventTargetNode::put):
   16750         (WebCore::JSEventTargetNode::putValueProperty):
   16751         * bindings/scripts/CodeGeneratorJS.pm:
   16752         * dom/Document.idl:
   16753         * dom/Element.idl:
   16754         * dom/Node.idl:
   16755 
   16756 2008-05-26  Darin Adler  <darin (a] apple.com>
   16757 
   16758         Reviewed by Maciej.
   16759 
   16760         - https://bugs.webkit.org/show_bug.cgi?id=19239
   16761 
   16762         Removed code that would only useful if if there was any way to create an Entity
   16763         node or if we populated EntityReference nodes. It's likely that we'll remove
   16764         these node types entirely in some future version of WebKit, depending in part
   16765         on what happens with these in HTML 5.
   16766 
   16767         1.8% speedup of Acid3 test 26.
   16768 
   16769         The only read-only nodes we ever create are EntityReference nodes.
   16770         These are only created by explicit calls to the Document.createEntityReference
   16771         function. Since the created nodes are read-only, there can be no children of
   16772         these nodes, so no other types of nodes can be read-only despite the rule that
   16773         makes descendants of Entity and EntityReference nodes read-only.
   16774 
   16775         * bindings/objc/DOM.mm: Removed unneeded include.
   16776 
   16777         * dom/Attr.cpp:
   16778         (WebCore::Attr::setValue): Removed unnecessary isReadOnlyNode check.
   16779         (WebCore::Attr::setNodeValue): Ditto.
   16780         * dom/CharacterData.cpp:
   16781         (WebCore::CharacterData::setData): Removed unnecessary isReadOnlyNode check.
   16782         (WebCore::CharacterData::substringData): Don't initialize the ec variable before
   16783         calling checkCharDataOperation, since that function already does it.
   16784         (WebCore::CharacterData::appendData): Removed unnecessary isReadOnlyNode check.
   16785         (WebCore::CharacterData::insertData): Don't initialize ec.
   16786         (WebCore::CharacterData::deleteData): Ditto.
   16787         (WebCore::CharacterData::replaceData): Ditto.
   16788         (WebCore::CharacterData::setNodeValue): Removed now-misleading comment.
   16789         (WebCore::CharacterData::checkCharDataOperation): Removed unnecessary
   16790         isReadOnlyNode check.
   16791         * dom/CharacterData.h: Made checkCharDataOperation private and non-virtual
   16792         since it's never used or defined in any other class.
   16793 
   16794         * dom/Element.cpp:
   16795         (WebCore::Element::setAttribute): Removed unneeded isReadOnlyNode check.
   16796 
   16797         * dom/Entity.cpp: Removed the entire contents of this file.
   16798 
   16799         * dom/Entity.h: Replaced the class with a stub -- just enough to keep the
   16800         public bindings (JavaScript and Objective-C compiling), but the class is
   16801         abstract and can't be instantianted.
   16802 
   16803         * dom/EntityReference.cpp: Removed unused constructor.
   16804         (WebCore::EntityReference::cloneNode): Removed unneeded code and comments
   16805         to clone nonexistent child nodes.
   16806         * dom/EntityReference.h: Removed unused constructor and unnecessary override
   16807         of childTypeAllowed, since no children are allowed at all.
   16808 
   16809         * dom/NamedAttrMap.cpp:
   16810         (WebCore::NamedAttrMap::setNamedItem): Removed unneeded isReadOnlyNode check.
   16811         (WebCore::NamedAttrMap::removeNamedItem): Ditto.
   16812         * dom/NamedAttrMap.h: Removed isReadOnlyNode function.
   16813 
   16814         * dom/Node.cpp: Removed the old isReadOnlyNode function. It made lots of
   16815         virtual nodeType function calls.
   16816         * dom/Node.h:
   16817         (WebCore::Node::isReadOnlyNode): Replaced the old virtual isReadOnlyNode
   16818         function with a new simple non-virtual one.
   16819 
   16820         * dom/ProcessingInstruction.cpp:
   16821         (WebCore::ProcessingInstruction::setData): Removed unneeded isReadOnlyNode
   16822         check.
   16823 
   16824         * dom/Text.cpp:
   16825         (WebCore::Text::splitText): Removed unneeded isReadOnlyNode check.
   16826         (WebCore::Text::replaceWholeText): Removed unnecessary isReadOnlyNode assertion.
   16827         There is no reason for this function to go out of its way to mention the
   16828         read-only node issue when none of the other DOM mutation functions do.
   16829 
   16830 2008-05-26  Adam Barth  <abarth (a] webkit.org>
   16831 
   16832         Reviewed by Sam.
   16833 
   16834         Cleanup SecurityOrigin::canAccess.  Removed comment referring to an
   16835         old version of the code.  Removed some useless code.
   16836 
   16837         * platform/SecurityOrigin.cpp:
   16838         (WebCore::SecurityOrigin::canAccess):
   16839 
   16840 2008-05-26  Gwenole Beauchesne  <gbeauchesne (a] splitted-desktop.org>
   16841 
   16842         Reviewed by Alp Toker.
   16843 
   16844         * platform/gtk/LocalizedStringsGtk.cpp:
   16845         (WebCore::contextMenuItemTagSelectAll): Fix GTK+ version check.
   16846 
   16847 2008-05-25  Chris Fleizach  <cfleizach (a] apple.com>
   16848 
   16849         Reviewed by David Harrison
   16850 
   16851         <rdar://problem/3582905> elements on separate pages need to be distinct
   16852 
   16853         * page/AccessibilityListBox.h:
   16854         * page/AccessibilityObject.h:
   16855         (WebCore::AccessibilityObject::accessibilityShouldUseUniqueId):
   16856         * page/AccessibilityRenderObject.cpp:
   16857         * page/AccessibilityRenderObject.h:
   16858 
   16859 2008-05-25  Maciej Stachowiak  <mjs (a] apple.com>
   16860 
   16861         Reviewed by Darin.
   16862 
   16863         - don't repaint nodes that are removed before layout
   16864         4.3% speedup on Acid3 test 26
   16865 
   16866         Mitz points out the new flag can also be used to optimize other
   16867         cases of needless repaint such as
   16868         <https://bugs.webkit.org/show_bug.cgi?id=15129>.
   16869         
   16870         * rendering/RenderContainer.cpp:
   16871         (WebCore::RenderContainer::removeChildNode): If the child has never had a layout,
   16872         don't bother to repaint it, since there's nothing to dirty.
   16873         * rendering/RenderObject.cpp:
   16874         (WebCore::RenderObject::RenderObject): Initialize m_everHadLayout to false.
   16875         (WebCore::RenderObject::setNeedsLayout): Set m_everHadLayout to true if we
   16876         are being marked as not needing layout.
   16877         * rendering/RenderObject.h:
   16878 
   16879 2008-05-25  Dan Bernstein  <mitz (a] apple.com>
   16880 
   16881         Reviewed by Darin Adler.
   16882 
   16883         - fix https://bugs.webkit.org/show_bug.cgi?id=19086
   16884           <rdar://problem/5962254> REGRESSION (r28519-r28535): Caret doesn't paint past the right edge of a block
   16885 
   16886         Test: fast/repaint/caret-outside-block.html
   16887 
   16888         * editing/SelectionController.cpp:
   16889         (WebCore::repaintRectForCaret): Restored this function which was removed
   16890         in r28523, but changed it to inflate only the width.
   16891         (WebCore::SelectionController::caretRepaintRect): Changed back to use
   16892         repaintRectForCaret().
   16893         (WebCore::SelectionController::recomputeCaretRect): Ditto.
   16894 
   16895 2008-05-25  Marco Barisione  <marco.barisione (a] collabora.co.uk>
   16896 
   16897         Reviewed by Alp Toker.
   16898 
   16899         http://bugs.webkit.org/show_bug.cgi?id=18940
   16900         [CURL] Allow \n as line terminator for headers
   16901 
   16902         The line terminator for message-header fields should be CRLF. However,
   16903         it is recommended to recognise as a line terminator also a single LF.
   16904 
   16905         * platform/network/curl/ResourceHandleManager.cpp:
   16906         (WebCore::headerCallback): Allow headers to be terminated by "\n" and
   16907         not just by "\r\n".
   16908 
   16909 2008-05-25  Jan Michael Alonzo  <jmalonzo (a] webkit.org>
   16910 
   16911         Reviewed by Alp Toker.
   16912 
   16913         WARNING: NO TEST CASES ADDED OR CHANGED
   16914 
   16915         http://bugs.webkit.org/show_bug.cgi?id=19142
   16916         [Gtk] Remove build options --svg-experimental and --cross-document-messaging
   16917 
   16918         * GNUmakefile.am:
   16919 
   16920 2008-05-24  Rob Buis  <buis (a] kde.org>
   16921 
   16922         Reviewed by Eric.
   16923 
   16924         https://bugs.webkit.org/show_bug.cgi?id=18927
   16925         Unify path data debug output
   16926 
   16927         Implement unified path data output for Mac svg tests.
   16928 
   16929         * platform/graphics/cg/PathCG.cpp:
   16930         (WebCore::CGPathToCFStringApplierFunction):
   16931         (WebCore::CFStringFromCGPath):
   16932 
   16933 2008-05-24  Timothy Hatcher  <timothy (a] apple.com>
   16934 
   16935         Fixes a huge leak with the Inspector where it was protecting
   16936         a large object that was not being unprotected.
   16937 
   16938         <rdar://problem/5961999> Inspector protects a large JavaScript
   16939         object and never unprotects it (large leak)
   16940 
   16941         Reviewed by Darin Adler.
   16942 
   16943         * page/InspectorController.cpp:
   16944         (WebCore::InspectorController::inspectedPageDestroyed): Call close()
   16945         and removed a call to stopDebugging() and moved it to close().
   16946         (WebCore::InspectorController::close): Add stopDebugging() and
   16947         stopUserInitiatedProfiling(). Removed an ASSERT and added an
   16948         if statement before calling JSValueUnprotect. We don't always have
   16949         a m_scriptContext and m_scriptObject.
   16950 
   16951 2008-05-24  Alp Toker  <alp (a] nuanti.com>
   16952 
   16953         Win32/gcc3 build fix in Pango font backend. UChar needs to be
   16954         explicitly cast to gunichar2.
   16955 
   16956         * platform/graphics/gtk/FontGtk.cpp:
   16957         (WebCore::utf16_to_utf8):
   16958 
   16959 2008-05-24  Timothy Hatcher  <timothy (a] apple.com>
   16960 
   16961         Fixes a crash where a new Inspector would get an old
   16962         JSInspectedObjectWrapper for a user agent CSSStyleDeclaration.
   16963         Since these style objects shared between pages, the wrapper cache
   16964         would have a wrapper for the object still. But the wrapper was
   16965         for a previous global object and with a disconnected frame. This
   16966         fixes the wrapper cache so wrappers are remembered per global object
   16967         and the object they are wrapping.
   16968 
   16969         <rdar://problem/5958567> repro crash in WebCore::Frame::keepAlive()
   16970         opening inspector window after closing it
   16971 
   16972         Reviewed by Darin Adler.
   16973 
   16974         * bindings/js/JSInspectedObjectWrapper.cpp:
   16975         (WebCore::wrappers): Return a GlobalObjectWrapperMap reference.
   16976         (WebCore::JSInspectedObjectWrapper::wrap): Find the WrapperMap
   16977         by the dynamicGlobalObject then find the wrapper for unwrappedObject.
   16978         (WebCore::JSInspectedObjectWrapper::JSInspectedObjectWrapper): Changes
   16979         how the wrapper is added to the wrapper cache.
   16980         (WebCore::JSInspectedObjectWrapper::~JSInspectedObjectWrapper): Changes
   16981         how the wrapper is removed from the wrapper cache.
   16982         * bindings/js/JSQuarantinedObjectWrapper.h:
   16983         (WebCore::JSQuarantinedObjectWrapper:unwrappedGlobalObject): Added.
   16984 
   16985 2008-05-24  Alexey Proskuryakov  <ap (a] webkit.org>
   16986 
   16987         Reviewed by Maciej.
   16988 
   16989         Optimize Node::textContent() to avoid O(n^2) string appending behavior.
   16990 
   16991         1.6% speedup at Acid3 test 26.
   16992 
   16993         * WebCore.xcodeproj/project.pbxproj:
   16994         * GNUmakefile.am:
   16995         * WebCore.pro:
   16996         * WebCoreSources.bkl:
   16997         * WebCore.vcproj/WebCore.vcproj:
   16998         * platform/text/StringBuilder.cpp: Added.
   16999         (WebCore::StringBuilder::append):
   17000         (WebCore::StringBuilder::toString):
   17001         * platform/text/StringBuilder.h: Added.
   17002         (WebCore::StringBuilder::StringBuilder):
   17003         (WebCore::StringBuilder::isNull):
   17004         Added a simple class to efficiently build a string by appending. Potentially, it can be
   17005         extended to be more like java.lang.StringBuilder, but we don't need that much flexibility now.
   17006 
   17007         * dom/Node.cpp:
   17008         (WebCore::Node::appendTextContent):
   17009         (WebCore::Node::textContent):
   17010         * dom/Node.h:
   17011         Changed to use StringBuilder.
   17012 
   17013 2008-05-24  Julien Chaffraix  <jchaffraix (a] webkit.org>
   17014 
   17015         Reviewed by Eric.
   17016 
   17017         Bug 9191: JS*ElementWrapperFactory should be autogenerated
   17018         https://bugs.webkit.org/show_bug.cgi?id=9191
   17019 
   17020         This is a first pass for generation of JS*ElementWrapperFactory, in the long term we should move the make_names.pl
   17021         intelligence to the *.in files.
   17022 
   17023         - Add a new parameter to make_names.pl --wrapperFactory which works like --wrapper but generates the
   17024         JS*ElementWrapperFactory files.
   17025 
   17026         - Removed JS*ElementWrapperFactory files in WebCore/bindings/js, replaced by the generated ones.
   17027 
   17028         - Updated the build systems to account for the previous changes.
   17029 
   17030         * DerivedSources.make:
   17031         * GNUmakefile.am:
   17032         * WebCore.pro:
   17033         * WebCore.vcproj/WebCore.vcproj:
   17034         * WebCore.xcodeproj/project.pbxproj:
   17035         * WebCoreSources.bkl:
   17036         * bindings/js/JSHTMLElementWrapperFactory.cpp: Removed.
   17037         * bindings/js/JSHTMLElementWrapperFactory.h: Removed.
   17038         * bindings/js/JSSVGElementWrapperFactory.cpp: Removed.
   17039         * bindings/js/JSSVGElementWrapperFactory.h: Removed.
   17040         * dom/make_names.pl:
   17041 
   17042 2008-05-24  Oleg Finkelshteyn <olegfink (a] gmail.com>
   17043 
   17044         Rubber-stamped and landed by Alexey.
   17045 
   17046         Build fix for gcc 4.3.
   17047 
   17048         * WebCore/page/Console.cpp:
   17049         Add missing standard includes.
   17050 
   17051 2008-05-23  Timothy Hatcher  <timothy (a] apple.com>
   17052 
   17053         Fixes a bug where a timer would keep firing after the Inspector
   17054         was closed. It turns out this timer wasn't needed anymore now
   17055         that we can add an event listener to the inspected page and have
   17056         it get called in the Inspector's context.
   17057 
   17058         https://bugs.webkit.org/show_bug.cgi?id=18577
   17059 
   17060         Reviewed by Mark Rowe.
   17061 
   17062         * page/inspector/ElementsPanel.js:
   17063 
   17064 2008-05-23  Anthony Ricaud  <rik24d (a] gmail.com>
   17065 
   17066         Changes the largerResourcesButton tooltip to toggle.
   17067 
   17068         https://bugs.webkit.org/show_bug.cgi?id=19210
   17069 
   17070         Reviewed by Tim Hatcher.
   17071 
   17072         * WebCore/English.lproj/localizedStrings.js: New string and clean an
   17073         double string "Dock to main window."
   17074         * WebCore/page/inspector/ResourcesPanel.js: Toggle the tooltip and
   17075         change the default tooltip
   17076 
   17077 2008-05-23  Justin Garcia  <justin.garcia (a] apple.com>
   17078 
   17079         Reviewed by Darin.
   17080 
   17081         <rdar://problem/5939887> REGRESSION: With no selection, copy does not fire oncopy handler (affects CIFilterBrowser widget)
   17082         
   17083         Execute cut, copy and paste if they are invoked explicitly, via execCommand or -[WebView copy:], even
   17084         if they are disabled.  This will fire oncopy, oncut and onpaste, but won't perform any other work, like
   17085         writing to the pasteboard during cut/copy or deleting the selection during cut/paste.  This matches FF3,
   17086         which actually goes further and fires oncopy on any Command-C.
   17087         
   17088         * editing/EditorCommand.cpp:
   17089         (WebCore::CommandEntry::):
   17090         (WebCore::Editor::Command::execute):
   17091 
   17092 2008-05-23  Timothy Hatcher  <timothy (a] apple.com>
   17093 
   17094         Adds a percentage toggle button the profile view status bar that
   17095         changes the time columns between absolute and percents.
   17096 
   17097         https://bugs.webkit.org/show_bug.cgi?id=19224
   17098 
   17099         Reviewed by Kevin McCullough.
   17100 
   17101         * English.lproj/localizedStrings.js: New strings.
   17102         * page/inspector/Images/percentButtons.png: Added.
   17103         * page/inspector/ProfileView.js: Make the button and add it to the
   17104         status bar. Make clicking toggle the showAsPercent* properties.
   17105         * page/inspector/inspector.css: New styles.
   17106 
   17107 2008-05-23  Timothy Hatcher  <timothy (a] apple.com>
   17108 
   17109         Fixes a bug where excluding nodes from the profile could
   17110         show an empty parent node.
   17111 
   17112         <rdar://problem/5959573> Excluding nodes from the profile could show
   17113         an empty parent node
   17114 
   17115         Reviewed by Kevin McCullough.
   17116 
   17117         * page/inspector/ProfileView.js: Only say we have children if
   17118         all of our children nodes are visible.
   17119 
   17120 2008-05-23  Anders Carlsson  <andersca (a] apple.com>
   17121 
   17122         Reviewed by Adam.
   17123 
   17124         Add IconFetcher to project.
   17125         
   17126         * WebCore.vcproj/WebCore.vcproj:
   17127 
   17128 2008-05-23  Timothy Hatcher  <timothy (a] apple.com>
   17129 
   17130         Fixes a bug where the Web Insepctor would jump back to
   17131         Elements each time it is opened instead of staying at the
   17132         last selected panel.
   17133 
   17134         <rdar://problem/5959475> Inspector jumps to the Elements panel
   17135         each time it is opened, instead of staying at the previous panel
   17136 
   17137         Reviewed by Adam Roben.
   17138 
   17139         * page/InspectorController.cpp:
   17140         (WebCore::InspectorController::setWindowVisible): Reset
   17141         m_showAfterVisible to CurrentPanel, so the next time setWindowVisible
   17142         is called it will use CurrentPanel unless showPanel was called again.
   17143 
   17144 2008-05-23  chris fleizach  <cfleizach (a] apple.com>
   17145 
   17146         Reviewed by Darin Adler.
   17147 
   17148         <rdar://problem/5933759> REGRESSION: Frames don't appear as AX children of the top level web area
   17149 
   17150         * page/AccessibilityRenderObject.cpp:
   17151         (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
   17152 
   17153 2008-05-23  Ariya Hidayat  <ariya.hidayat (a] trolltech.com>
   17154 
   17155         Reviewed by Simon.
   17156 
   17157         For Qt port, support painting to native Windows HDC.
   17158 
   17159         * platform/graphics/GraphicsContext.h:
   17160         * platform/graphics/qt/GraphicsContextQt.cpp:
   17161         (WebCore::GraphicsContext::getWindowsContext):
   17162         (WebCore::GraphicsContext::releaseWindowsContext):
   17163 
   17164 2008-05-23  Timothy Hatcher  <timothy (a] apple.com>
   17165 
   17166         Fixes a bug where the Inspector could have 0ms timers firing
   17167         even after it is closed.
   17168 
   17169         https://bugs.webkit.org/show_bug.cgi?id=18577
   17170 
   17171         Reviewed by Oliver Hunt.
   17172 
   17173         * page/inspector/DatabasesPanel.js: Removes setTimeouts that call
   17174         the same function with a 0ms delay. These we not doing any good anyway,
   17175         so they weren't needed and just caused problems.
   17176         * page/inspector/ElementsPanel.js: Ditto.
   17177         * page/inspector/ProfilesPanel.js: Ditto.
   17178         * page/inspector/ResourcesPanel.js: Ditto.
   17179 
   17180 2008-05-23  Timothy Hatcher  <timothy (a] apple.com>
   17181 
   17182         Make the Inspector correctly populate the profiles when
   17183         closed and re-opened.
   17184 
   17185         Reviewed by Adam Roben.
   17186 
   17187         * page/InspectorController.cpp:
   17188         (WebCore::InspectorController::populateScriptObjects): Call populateInterface
   17189         in inspector.js.
   17190         * page/inspector/ProfilesPanel.js:
   17191         (WebInspector.ProfilesPanel.prototype.populateInterface): If visible,
   17192         call _populateProfiles. Else just set this._shouldPopulateProfiles to true.
   17193         (WebInspector.ProfilesPanel.prototype.reset): Don't call _populateProfiles.
   17194         Just set this._shouldPopulateProfiles to true.
   17195         (WebInspector.ProfilesPanel.prototype._populateProfiles): Delete
   17196         this._shouldPopulateProfiles.
   17197         * page/inspector/inspector.js:
   17198         (WebInspector.populateInterface): Added. Call populateInterface on all the
   17199         panels if they implement it.
   17200 
   17201 2008-05-23  Kevin McCullough  <kmccullough (a] apple.com>
   17202 
   17203         RS = Adam.
   17204 
   17205         Editorial changes
   17206 
   17207         * manual-tests/inspector/profiler-test-apply.html:
   17208         * manual-tests/inspector/profiler-test-document-dot-write.html:
   17209         * manual-tests/inspector/profiler-test-execution-context-and-eval-on-same-line.html:
   17210         * manual-tests/inspector/profiler-test-one-execution-context.html:
   17211         * manual-tests/inspector/profiler-test-two-execution-contexts.html:
   17212 
   17213 2008-05-23  Timothy Hatcher  <timothy (a] apple.com>
   17214 
   17215         Fixes the bug where the profile was not added when finished.
   17216 
   17217         <rdar://problem/5958851> Stop Profiling from the Develop menu does
   17218         not add the Profile to the Inspector
   17219 
   17220         Reviewed by Adam Roben.
   17221 
   17222         * page/InspectorController.cpp:
   17223         (WebCore::InspectorController::stopUserInitiatedProfiling): Call
   17224         addProfile with the result of stopProfiling.
   17225 
   17226 2008-05-23  Timothy Hatcher  <timothy (a] apple.com>
   17227 
   17228         Tweak the Web Insector toolbar look to be smaller when attached to
   17229         the inspected page.
   17230 
   17231         Reviewed by Adam Roben.
   17232 
   17233         * page/inspector/inspector.css:
   17234 
   17235 2008-05-23  Simon Hausmann  <hausmann (a] webkit.org>
   17236 
   17237         Fix compilation without accessibility by providing an empty stub for
   17238         AXObjectCache::handleAriaRoleChanged.
   17239 
   17240         * page/AXObjectCache.h:
   17241 
   17242 2008-05-23  Alice Liu  <alice.liu (a] apple.com>
   17243 
   17244         Reviewed by Mark Rowe.
   17245 
   17246         Remove call to function whose body was commented out. Returning the
   17247         children for a menu button by the normal calculation works just as well. 
   17248 
   17249         * page/AccessibilityRenderObject.cpp:
   17250         (WebCore::AccessibilityRenderObject::addChildren):
   17251         * page/AccessibilityRenderObject.h:
   17252 
   17253 2008-05-22  Timothy Hatcher  <timothy (a] apple.com>
   17254 
   17255         Fixes the bug where resource would show up multiple times in the
   17256         Inspector. This happened when a resource was used multiple times or
   17257         when the preloader was scanning ahead to fetch resources.
   17258 
   17259         <rdar://problem/5689373> Cached resources re-appear in Web Inspector
   17260         for each access (18223)
   17261 
   17262         Reviewed by Adam Roben.
   17263 
   17264         * page/InspectorController.cpp:
   17265         (WebCore::InspectorController::addResource): Add the URL to m_knownResources.
   17266         (WebCore::InspectorController::removeResource): Remove the URL from m_knownResources
   17267         (WebCore::InspectorController::didLoadResourceFromMemoryCache): If the URL
   17268         is in m_knownResources, then early return.
   17269         * page/InspectorController.h: Added m_knownResources.
   17270 
   17271 2008-05-22  Alice Liu  <alice.liu (a] apple.com>
   17272 
   17273         Reviewed by Adele, Dan Bernstein.
   17274 
   17275         Fixed <rdar://problem/5943104> Need to implement ARIA role="menu" and related roles
   17276         <rdar://problem/5943132> Need to implement ARIA role="menuitem"
   17277         <rdar://problem/5943173> Need to implement ARIA role="menubar" 
   17278 
   17279         These changes added a handler for determining the ARIA role when the
   17280         attribute changes.  Before we were querying for the attribute over and
   17281         over every time we queried for the role.
   17282         * dom/Element.cpp:
   17283         (WebCore::Element::attributeChanged):
   17284         * page/AXObjectCache.cpp:
   17285         (WebCore::AXObjectCache::handleAriaRoleChanged):
   17286         * page/AXObjectCache.h:
   17287 
   17288         The rest of these changes implement menu, menuitem, and menubar. the last 2 of those
   17289         have to, for now, be represented as a Group and MenuButton instead, because AppKit 
   17290         won't recognize menubar and menubaritems within apps. 
   17291         * page/AccessibilityObject.h:
   17292         (WebCore::AccessibilityObject::isMenuRelated):
   17293         (WebCore::AccessibilityObject::isMenu):
   17294         (WebCore::AccessibilityObject::isMenuBar):
   17295         (WebCore::AccessibilityObject::isMenuButton):
   17296         (WebCore::AccessibilityObject::isMenuItem):
   17297         * page/AccessibilityRenderObject.cpp:
   17298         (WebCore::AccessibilityRenderObject::AccessibilityRenderObject):
   17299         (WebCore::AccessibilityRenderObject::parentObject):
   17300         (WebCore::AccessibilityRenderObject::isMenuRelated):
   17301         (WebCore::AccessibilityRenderObject::isMenu):
   17302         (WebCore::AccessibilityRenderObject::isMenuBar):
   17303         (WebCore::AccessibilityRenderObject::isMenuButton):
   17304         (WebCore::AccessibilityRenderObject::isMenuItem):
   17305         (WebCore::siblingWithAriaRole):
   17306         (WebCore::AccessibilityRenderObject::menuElementForMenuButton):
   17307         (WebCore::AccessibilityRenderObject::menuForMenuButton):
   17308         (WebCore::AccessibilityRenderObject::menuItemElementForMenu):
   17309         (WebCore::AccessibilityRenderObject::menuButtonForMenu):
   17310         (WebCore::AccessibilityRenderObject::title):
   17311         (WebCore::AccessibilityRenderObject::accessibilityShouldUseUniqueId):
   17312         (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
   17313         (WebCore::RoleEntry::):
   17314         (WebCore::AccessibilityRenderObject::determineAriaRoleAttribute):
   17315         (WebCore::AccessibilityRenderObject::setAriaRole):
   17316         (WebCore::AccessibilityRenderObject::ariaRoleAttribute):
   17317         (WebCore::AccessibilityRenderObject::addChildren):
   17318         (WebCore::AccessibilityRenderObject::ariaMenuButtonChildren):
   17319         * page/AccessibilityRenderObject.h:
   17320         * page/mac/AccessibilityObjectWrapper.mm:
   17321         (-[AccessibilityObjectWrapper accessibilityActionNames]):
   17322         (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
   17323         (-[AccessibilityObjectWrapper roleDescription]):
   17324         (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
   17325         (-[AccessibilityObjectWrapper accessibilityParameterizedAttributeNames]):
   17326 
   17327 2008-05-22  Adam Roben  <aroben (a] apple.com>
   17328 
   17329         Make top-level resources show their full URLs again instead of just
   17330         "/"
   17331 
   17332         Reviewed by Tim Hatcher.
   17333 
   17334         * page/inspector/Resource.js:
   17335         (WebInspector.Resource.prototype.displayName): If the title has gotten
   17336         down to just "/", which will happen for, e.g., http://webkit.org/,
   17337         just show the entire URL.
   17338 
   17339 2008-05-22  Timothy Hatcher  <timothy (a] apple.com>
   17340 
   17341         Shorten URLs shown in the Web Inspector to the file name. This makes
   17342         finding files in the Console or the Scripts panel easier.
   17343 
   17344         Reviewed by Adam Roben.
   17345 
   17346         * page/inspector/Console.js:
   17347         (WebInspector.ConsoleMessage.prototype.get shortURL): Removed dead code.
   17348         (WebInspector.ConsoleMessage.prototype.toMessageElement): Call WebInspector.displayNameForURL
   17349         for the URL before making the link element.
   17350         * page/inspector/ProfileView.js:
   17351         (WebInspector.ProfileDataGridNode.prototype.createCell): Use WebInspector.displayNameForURL.
   17352         * page/inspector/Resource.js:
   17353         (WebInspector.Resource.prototype.get displayName): Use trimURL to
   17354         trim the URL with the main resource's domain.
   17355         * page/inspector/ScriptsPanel.js:
   17356         (WebInspector.ScriptsPanel.prototype._addScriptToFilesMenu): Use WebInspector.displayNameForURL.
   17357         * page/inspector/StylesSidebarPane.js:
   17358         (WebInspector.StylePropertiesSection): Ditto.
   17359         * page/inspector/inspector.js:
   17360         (WebInspector.displayNameForURL): Added.
   17361         (WebInspector.resourceForURL): Check for a direct match in resourceURLMap first.
   17362 
   17363 2008-05-22  Adam Roben  <aroben (a] apple.com>
   17364 
   17365         Fix Bug 19204: Inspector should highlight source lines when following
   17366         links to them
   17367 
   17368         <https://bugs.webkit.org/show_bug.cgi?id=19204>
   17369 
   17370         Reviewed by Tim Hatcher.
   17371 
   17372         Test: manual-tests/inspector/highlight-source-line.html
   17373 
   17374         * manual-tests/inspector/highlight-source-line.html: Added.
   17375         * page/inspector/ResourcesPanel.js:
   17376         (WebInspector.ResourcesPanel.prototype.showResource): Call
   17377         highlightLine on the view if that function exists.
   17378         * page/inspector/SourceFrame.js:
   17379         (WebInspector.SourceFrame.prototype.highlightLine): Added. Adds the
   17380         webkit-highlighted-line class to the relevant line, then removes it
   17381         after a short delay.
   17382         (WebInspector.SourceFrame.prototype._loaded): Added styles for the
   17383         highlighted line(s).
   17384         * page/inspector/SourceView.js:
   17385         (WebInspector.SourceView.prototype.highlightLine): Added. Calls
   17386         through to the SourceFrame.
   17387 
   17388 2008-05-22  Rob Buis  <buis (a] kde.org>
   17389 
   17390         Reviewed by Eric.
   17391 
   17392         https://bugs.webkit.org/show_bug.cgi?id=12053
   17393         SVGPathSeg*(Abs|Rel) classses should be combined to reduce code size
   17394 
   17395         Reduce code size through shared base classes.
   17396 
   17397         * svg/SVGPathSeg.h:
   17398         (WebCore::SVGPathSegSingleCoord::SVGPathSegSingleCoord):
   17399         (WebCore::SVGPathSegSingleCoord::setX):
   17400         (WebCore::SVGPathSegSingleCoord::x):
   17401         (WebCore::SVGPathSegSingleCoord::setY):
   17402         (WebCore::SVGPathSegSingleCoord::y):
   17403         (WebCore::SVGPathSegSingleCoord::toString):
   17404         * svg/SVGPathSegArc.cpp:
   17405         (WebCore::SVGPathSegArcAbs::SVGPathSegArcAbs):
   17406         (WebCore::SVGPathSegArcRel::SVGPathSegArcRel):
   17407         * svg/SVGPathSegArc.h:
   17408         (WebCore::SVGPathSegArc::SVGPathSegArc):
   17409         (WebCore::SVGPathSegArc::toString):
   17410         (WebCore::SVGPathSegArc::setX):
   17411         (WebCore::SVGPathSegArc::x):
   17412         (WebCore::SVGPathSegArc::setY):
   17413         (WebCore::SVGPathSegArc::y):
   17414         (WebCore::SVGPathSegArc::setR1):
   17415         (WebCore::SVGPathSegArc::r1):
   17416         (WebCore::SVGPathSegArc::setR2):
   17417         (WebCore::SVGPathSegArc::r2):
   17418         (WebCore::SVGPathSegArc::setAngle):
   17419         (WebCore::SVGPathSegArc::angle):
   17420         (WebCore::SVGPathSegArc::setLargeArcFlag):
   17421         (WebCore::SVGPathSegArc::largeArcFlag):
   17422         (WebCore::SVGPathSegArc::setSweepFlag):
   17423         (WebCore::SVGPathSegArc::sweepFlag):
   17424         (WebCore::SVGPathSegArcAbs::create):
   17425         (WebCore::SVGPathSegArcAbs::pathSegType):
   17426         (WebCore::SVGPathSegArcAbs::pathSegTypeAsLetter):
   17427         (WebCore::SVGPathSegArcRel::create):
   17428         (WebCore::SVGPathSegArcRel::pathSegTypeAsLetter):
   17429         * svg/SVGPathSegCurvetoCubic.cpp:
   17430         (WebCore::SVGPathSegCurvetoCubicAbs::SVGPathSegCurvetoCubicAbs):
   17431         (WebCore::SVGPathSegCurvetoCubicRel::SVGPathSegCurvetoCubicRel):
   17432         * svg/SVGPathSegCurvetoCubic.h:
   17433         (WebCore::SVGPathSegCurvetoCubic::SVGPathSegCurvetoCubic):
   17434         (WebCore::SVGPathSegCurvetoCubic::toString):
   17435         (WebCore::SVGPathSegCurvetoCubic::setX):
   17436         (WebCore::SVGPathSegCurvetoCubic::x):
   17437         (WebCore::SVGPathSegCurvetoCubic::setY):
   17438         (WebCore::SVGPathSegCurvetoCubic::y):
   17439         (WebCore::SVGPathSegCurvetoCubic::setX1):
   17440         (WebCore::SVGPathSegCurvetoCubic::x1):
   17441         (WebCore::SVGPathSegCurvetoCubic::setY1):
   17442         (WebCore::SVGPathSegCurvetoCubic::y1):
   17443         (WebCore::SVGPathSegCurvetoCubic::setX2):
   17444         (WebCore::SVGPathSegCurvetoCubic::x2):
   17445         (WebCore::SVGPathSegCurvetoCubic::setY2):
   17446         (WebCore::SVGPathSegCurvetoCubic::y2):
   17447         (WebCore::SVGPathSegCurvetoCubicAbs::create):
   17448         (WebCore::SVGPathSegCurvetoCubicAbs::pathSegType):
   17449         (WebCore::SVGPathSegCurvetoCubicAbs::pathSegTypeAsLetter):
   17450         (WebCore::SVGPathSegCurvetoCubicRel::create):
   17451         (WebCore::SVGPathSegCurvetoCubicRel::pathSegTypeAsLetter):
   17452         * svg/SVGPathSegCurvetoCubicSmooth.cpp:
   17453         (WebCore::SVGPathSegCurvetoCubicSmoothAbs::SVGPathSegCurvetoCubicSmoothAbs):
   17454         (WebCore::SVGPathSegCurvetoCubicSmoothRel::SVGPathSegCurvetoCubicSmoothRel):
   17455         * svg/SVGPathSegCurvetoCubicSmooth.h:
   17456         (WebCore::SVGPathSegCurvetoCubicSmooth::SVGPathSegCurvetoCubicSmooth):
   17457         (WebCore::SVGPathSegCurvetoCubicSmooth::toString):
   17458         (WebCore::SVGPathSegCurvetoCubicSmooth::setX):
   17459         (WebCore::SVGPathSegCurvetoCubicSmooth::x):
   17460         (WebCore::SVGPathSegCurvetoCubicSmooth::setY):
   17461         (WebCore::SVGPathSegCurvetoCubicSmooth::y):
   17462         (WebCore::SVGPathSegCurvetoCubicSmooth::setX2):
   17463         (WebCore::SVGPathSegCurvetoCubicSmooth::x2):
   17464         (WebCore::SVGPathSegCurvetoCubicSmooth::setY2):
   17465         (WebCore::SVGPathSegCurvetoCubicSmooth::y2):
   17466         (WebCore::SVGPathSegCurvetoCubicSmoothAbs::create):
   17467         (WebCore::SVGPathSegCurvetoCubicSmoothAbs::pathSegType):
   17468         (WebCore::SVGPathSegCurvetoCubicSmoothAbs::pathSegTypeAsLetter):
   17469         (WebCore::SVGPathSegCurvetoCubicSmoothRel::create):
   17470         (WebCore::SVGPathSegCurvetoCubicSmoothRel::pathSegType):
   17471         (WebCore::SVGPathSegCurvetoCubicSmoothRel::pathSegTypeAsLetter):
   17472         * svg/SVGPathSegCurvetoQuadratic.cpp:
   17473         (WebCore::SVGPathSegCurvetoQuadraticAbs::SVGPathSegCurvetoQuadraticAbs):
   17474         (WebCore::SVGPathSegCurvetoQuadraticRel::SVGPathSegCurvetoQuadraticRel):
   17475         * svg/SVGPathSegCurvetoQuadratic.h:
   17476         (WebCore::SVGPathSegCurvetoQuadratic::SVGPathSegCurvetoQuadratic):
   17477         (WebCore::SVGPathSegCurvetoQuadratic::toString):
   17478         (WebCore::SVGPathSegCurvetoQuadratic::setX):
   17479         (WebCore::SVGPathSegCurvetoQuadratic::x):
   17480         (WebCore::SVGPathSegCurvetoQuadratic::setY):
   17481         (WebCore::SVGPathSegCurvetoQuadratic::y):
   17482         (WebCore::SVGPathSegCurvetoQuadratic::setX1):
   17483         (WebCore::SVGPathSegCurvetoQuadratic::x1):
   17484         (WebCore::SVGPathSegCurvetoQuadratic::setY1):
   17485         (WebCore::SVGPathSegCurvetoQuadratic::y1):
   17486         (WebCore::SVGPathSegCurvetoQuadraticAbs::create):
   17487         (WebCore::SVGPathSegCurvetoQuadraticAbs::pathSegType):
   17488         (WebCore::SVGPathSegCurvetoQuadraticAbs::pathSegTypeAsLetter):
   17489         (WebCore::SVGPathSegCurvetoQuadraticRel::create):
   17490         (WebCore::SVGPathSegCurvetoQuadraticRel::pathSegType):
   17491         (WebCore::SVGPathSegCurvetoQuadraticRel::pathSegTypeAsLetter):
   17492         * svg/SVGPathSegCurvetoQuadraticSmooth.cpp:
   17493         (WebCore::SVGPathSegCurvetoQuadraticSmoothAbs::SVGPathSegCurvetoQuadraticSmoothAbs):
   17494         (WebCore::SVGPathSegCurvetoQuadraticSmoothRel::SVGPathSegCurvetoQuadraticSmoothRel):
   17495         * svg/SVGPathSegCurvetoQuadraticSmooth.h:
   17496         (WebCore::SVGPathSegCurvetoQuadraticSmoothAbs::create):
   17497         (WebCore::SVGPathSegCurvetoQuadraticSmoothAbs::pathSegTypeAsLetter):
   17498         (WebCore::SVGPathSegCurvetoQuadraticSmoothRel::create):
   17499         (WebCore::SVGPathSegCurvetoQuadraticSmoothRel::pathSegTypeAsLetter):
   17500         * svg/SVGPathSegLineto.cpp:
   17501         (WebCore::SVGPathSegLinetoAbs::SVGPathSegLinetoAbs):
   17502         (WebCore::SVGPathSegLinetoRel::SVGPathSegLinetoRel):
   17503         * svg/SVGPathSegLineto.h:
   17504         (WebCore::SVGPathSegLinetoAbs::create):
   17505         (WebCore::SVGPathSegLinetoAbs::pathSegTypeAsLetter):
   17506         (WebCore::SVGPathSegLinetoRel::pathSegTypeAsLetter):
   17507         * svg/SVGPathSegLinetoHorizontal.cpp:
   17508         (WebCore::SVGPathSegLinetoHorizontalAbs::SVGPathSegLinetoHorizontalAbs):
   17509         (WebCore::SVGPathSegLinetoHorizontalRel::SVGPathSegLinetoHorizontalRel):
   17510         * svg/SVGPathSegLinetoHorizontal.h:
   17511         (WebCore::SVGPathSegLinetoHorizontal::SVGPathSegLinetoHorizontal):
   17512         (WebCore::SVGPathSegLinetoHorizontal::toString):
   17513         (WebCore::SVGPathSegLinetoHorizontal::setX):
   17514         (WebCore::SVGPathSegLinetoHorizontal::x):
   17515         (WebCore::SVGPathSegLinetoHorizontalAbs::create):
   17516         (WebCore::SVGPathSegLinetoHorizontalAbs::pathSegTypeAsLetter):
   17517         (WebCore::SVGPathSegLinetoHorizontalRel::create):
   17518         (WebCore::SVGPathSegLinetoHorizontalRel::pathSegTypeAsLetter):
   17519         * svg/SVGPathSegLinetoVertical.cpp:
   17520         (WebCore::SVGPathSegLinetoVerticalAbs::SVGPathSegLinetoVerticalAbs):
   17521         (WebCore::SVGPathSegLinetoVerticalRel::SVGPathSegLinetoVerticalRel):
   17522         * svg/SVGPathSegLinetoVertical.h:
   17523         (WebCore::SVGPathSegLinetoVertical::SVGPathSegLinetoVertical):
   17524         (WebCore::SVGPathSegLinetoVertical::toString):
   17525         (WebCore::SVGPathSegLinetoVertical::setY):
   17526         (WebCore::SVGPathSegLinetoVertical::y):
   17527         (WebCore::SVGPathSegLinetoVerticalAbs::create):
   17528         (WebCore::SVGPathSegLinetoVerticalAbs::pathSegTypeAsLetter):
   17529         (WebCore::SVGPathSegLinetoVerticalRel::create):
   17530         (WebCore::SVGPathSegLinetoVerticalRel::pathSegTypeAsLetter):
   17531         * svg/SVGPathSegMoveto.cpp:
   17532         (WebCore::SVGPathSegMovetoAbs::SVGPathSegMovetoAbs):
   17533         (WebCore::SVGPathSegMovetoRel::SVGPathSegMovetoRel):
   17534         * svg/SVGPathSegMoveto.h:
   17535         (WebCore::SVGPathSegMovetoAbs::create):
   17536         (WebCore::SVGPathSegMovetoAbs::pathSegTypeAsLetter):
   17537         (WebCore::SVGPathSegMovetoRel::create):
   17538         (WebCore::SVGPathSegMovetoRel::pathSegTypeAsLetter):
   17539 
   17540 2008-05-22  Alp Toker  <alp (a] nuanti.com>
   17541 
   17542         GTK+/DirectFB build fix attempt.
   17543 
   17544         * plugins/PluginDatabase.cpp:
   17545         (WebCore::PluginDatabase::isPreferredPluginDirectory):
   17546         * plugins/gtk/PluginDatabaseGtk.cpp:
   17547         (WebCore::PluginDatabase::isPreferredPluginDirectory):
   17548 
   17549 2008-05-22  Timothy Hatcher  <timothy (a] apple.com>
   17550 
   17551         Adds Focus, Exclude and Restore buttons to the Profile view
   17552         Status bar. Also adds a Record button to create new profiles.
   17553 
   17554         <rdar://problem/5950867> JSProfiler: Allow the profiler to "Focus" a profile node.
   17555         <rdar://problem/5951529> JSProfiler: Allow the profiler to "Exclude" a profile node.
   17556 
   17557         Reviewed by Adam Roben.
   17558 
   17559         * English.lproj/localizedStrings.js: Added new strings.
   17560         * page/JavaScriptProfile.cpp:
   17561         (WebCore::restoreAll): Call Profile::restoreAll.
   17562         (WebCore::ProfileClass): Added restoreAll to the static functions.
   17563         * page/inspector/Images/excludeButtons.png: Added.
   17564         * page/inspector/Images/focusButtons.png: Added.
   17565         * page/inspector/Images/recordButtons.png: Added.
   17566         * page/inspector/Images/reloadButtons.png: Added.
   17567         * page/inspector/ProfileView.js:
   17568         (WebInspector.ProfileView): Create the buttons elements.
   17569         (WebInspector.ProfileView.prototype.get statusBarItems): Return the three
   17570         status bar buttons.
   17571         (WebInspector.ProfileView.prototype.refresh): Only create ProfileDataGridNodes
   17572         for ProfileNodes that are visible.
   17573         (WebInspector.ProfileView.prototype.refreshShowAsPercents): Just call
   17574         refresh on the children, now that they have access to the ProfileView's properties.
   17575         (WebInspector.ProfileView.prototype._focusClicked): Call focus
   17576         on the profile, refresh the ProfileView and show the reset button.
   17577         (WebInspector.ProfileView.prototype._excludeClicked): Call exclude
   17578         on the profile, refresh the ProfileView and show the reset button.
   17579         (WebInspector.ProfileView.prototype._resetClicked): Call restoreAll
   17580         on the profile, refresh the ProfileView and hide the reset button.
   17581         (WebInspector.ProfileView.prototype._dataGridNodeSelected): Enable the 
   17582         focus and exclude buttons.
   17583         (WebInspector.ProfileView.prototype._dataGridNodeDeselected): Disable the
   17584         focus and exclude buttons.
   17585         (WebInspector.ProfileDataGridNode): Take a ProfileView, and remove the 
   17586         showPercentAs* arguments.
   17587         * page/inspector/ProfilesPanel.js: Add a record status bar button and
   17588         th ability to have per-view status bar buttons.
   17589         * page/inspector/inspector.css: New styles.
   17590 
   17591 2008-05-22  Mark Rowe  <mrowe (a] apple.com>
   17592 
   17593         Reviewed by Tim Hatcher.
   17594 
   17595         <rdar://problem/5956612> ibtool crashes during build
   17596 
   17597         SCDynamicStoreCreate will return null if it cannot create a dynamic store object.  We need
   17598         to check for failure rather than continuing with a null store as this results in us
   17599         passing a null CFRunLoopSourceRef to CFRunLoopAddSource, which promptly crashes.
   17600 
   17601         * platform/network/mac/NetworkStateNotifierMac.cpp:
   17602         (WebCore::NetworkStateNotifier::NetworkStateNotifier): Null check SCDynamicStoreCreate and
   17603         SCDynamicStoreCreateRunLoopSource as it is possible for them to fail.
   17604 
   17605 2008-05-22  Adam Roben  <aroben (a] apple.com>
   17606 
   17607         Add a test for calling a NodeList as a function while profiling
   17608 
   17609         Reviewed by Kevin McCullough.
   17610 
   17611         * manual-tests/inspector/profiler-test-call-nodelist-as-function.html: Added.
   17612 
   17613 2008-05-22  Kevin McCullough  <kmccullough (a] apple.com>
   17614 
   17615         Rubber stamped by Adam.
   17616 
   17617         -Added new profiler tests.
   17618 
   17619         * manual-tests/inspector/profiler-test-calling-the-function-that-started-the-profiler-from-another-scope.html: Added.
   17620         * manual-tests/inspector/profiler-test-constructor.html: Added.
   17621         * manual-tests/inspector/profiler-test-document-dot-write.html: Added.
   17622         * manual-tests/inspector/profiler-test-simple-no-level-change.html: Added.
   17623         * manual-tests/inspector/profiler-test-throw-exception-from-eval.html: Added.
   17624         * manual-tests/inspector/profiler-test-window-dot-eval.html: Added.
   17625 
   17626 2008-05-22  Kevin McCullough  <kmccullough (a] apple.com>
   17627 
   17628         Reviewed by Tim.
   17629 
   17630         <rdar://problem/5951529> JSProfiler: Allow the profiler to "Exclude" a
   17631         profile node.
   17632         -Expose the 'exclude' function to the WebInspector.
   17633         -Also fix a bug with 'focus' and expose whether or not a node is visible
   17634 
   17635         * page/JavaScriptProfile.cpp: Renamed profileClass to have a capital P.
   17636         (WebCore::getTitleCallback):
   17637         (WebCore::getHeadCallback):
   17638         (WebCore::focus): Now correctly compares against a ProfileNodeClass
   17639         instead of ProfileClass.
   17640         (WebCore::exclude): Expose 'exclude' function to the WebInspector.
   17641         (WebCore::ProfileClass):
   17642         (WebCore::toJS):
   17643         * page/JavaScriptProfileNode.cpp: Declare the ProfileNodeClass in the
   17644         header so that ProfileClass can use it.
   17645         (WebCore::getVisible): Expose a node's visiblity to the WebInspector.
   17646         (WebCore::ProfileNodeClass):
   17647         * page/JavaScriptProfileNode.h:
   17648 
   17649 2008-05-22  Sam Weinig  <sam (a] webkit.org>
   17650 
   17651         Reviewed by Anders Carlsson.
   17652 
   17653         <rdar://problem/5838772> Support cross-site XMLHttpRequest
   17654 
   17655         - Implement support for cross-site non-GET requests using the HTTP header
   17656           Access-control mechanism.
   17657 
   17658         Tests: http/tests/xmlhttprequest/access-control-basic-allow-async.html
   17659                http/tests/xmlhttprequest/access-control-basic-not-get-allow-async.html
   17660                http/tests/xmlhttprequest/access-control-basic-not-get-allow.html
   17661 
   17662         * xml/XMLHttpRequest.cpp:
   17663         (WebCore::XMLHttpRequest::XMLHttpRequest):
   17664         (WebCore::XMLHttpRequest::send):
   17665         Don't continue send if inside the method check preflight (only happens for async).
   17666         
   17667         (WebCore::XMLHttpRequest::crossSiteAccessRequest):
   17668         Add support for non-GET requests, starting off a method check preflight.
   17669 
   17670         (WebCore::XMLHttpRequest::handleAsynchronousMethodCheckResult):
   17671         Handler for finishing up after an asynchronous method check has completed.
   17672 
   17673         (WebCore::XMLHttpRequest::didFinishLoading):
   17674         (WebCore::XMLHttpRequest::didFinishLoadingMethodCheck):
   17675         (WebCore::XMLHttpRequest::didReceiveResponse):
   17676         (WebCore::XMLHttpRequest::didReceiveResponseMethodCheck):
   17677         (WebCore::XMLHttpRequest::didReceiveData):
   17678         Do a limited set of access control when in the method check preflight.
   17679         * xml/XMLHttpRequest.h:
   17680 
   17681 2008-05-22  Timothy Hatcher  <timothy (a] apple.com>
   17682 
   17683         Make sure we don't call findTreeElement with the same representedObject
   17684         again, to prevent infinite recursion. Added many comments to this
   17685         code so it can be understood later.
   17686 
   17687         https://bugs.webkit.org/show_bug.cgi?id=19164
   17688 
   17689         Reviewed by Adam Roben.
   17690 
   17691         * page/inspector/treeoutline.js:
   17692 
   17693 2008-05-22  Timothy Hatcher  <timothy (a] apple.com>
   17694 
   17695         Re-word the "Attach Debugger" overlay to never say "Attach". The new
   17696         wording is "Start Debugging". This makes the overlay consistent with
   17697         other wording used for starting the debugger. Also fixes the tooltips
   17698         for the Pause on Exceptions button.
   17699 
   17700         Reviewed by Adam Roben and Dan Bernstein.
   17701 
   17702         * English.lproj/localizedStrings.js: Adds new strings.
   17703         * page/inspector/ScriptsPanel.js: Changes the wording. Flips the
   17704         tooltips for the Pause on Exceptions buttons so the tooltip says
   17705         what will happen when the button is pressed.
   17706 
   17707 2008-05-22  Timothy Hatcher  <timothy (a] apple.com>
   17708 
   17709         Remove some non-functional elements from the Scripts panel
   17710         so they don't confuse users why they aren't working.
   17711 
   17712         Reviewed by Adam Roben.
   17713 
   17714         * page/inspector/ScriptsPanel.js: Removes the back/forward buttons
   17715         and the function menu.
   17716         * page/inspector/inspector.css: Make the files menu wider since there
   17717         is more room now.
   17718 
   17719 2008-05-22  Timothy Hatcher  <timothy (a] apple.com>
   17720 
   17721         <rdar://problem/5956403> Update the Develop menu to match the new Inspector items
   17722 
   17723         Reviewed by Adam Roben.
   17724 
   17725         * English.lproj/localizedStrings.js:
   17726         * WebCore.base.exp:
   17727         * page/InspectorController.cpp:
   17728         (WebCore::InspectorController::InspectorController):
   17729         (WebCore::InspectorController::inspect):
   17730         (WebCore::InspectorController::setWindowVisible):
   17731         (WebCore::InspectorController::showPanel):
   17732         (WebCore::InspectorController::startUserInitiatedProfiling):
   17733         (WebCore::InspectorController::stopUserInitiatedProfiling):
   17734         (WebCore::InspectorController::startDebuggingAndReloadInspectedPage):
   17735         (WebCore::InspectorController::stopDebugging):
   17736         * page/InspectorController.h:
   17737         (WebCore::InspectorController::):
   17738         (WebCore::InspectorController::isRecordingUserInitiatedProfile):
   17739         * page/inspector/ProfilesPanel.js:
   17740         * page/inspector/ScriptsPanel.js:
   17741         * page/inspector/inspector.js:
   17742 
   17743 2008-05-22  Josh Aas  <joshmoz (a] gmail.com>
   17744 
   17745         Reviewed by Anders.
   17746 
   17747         <rdar://problem/5956429> 
   17748         https://bugs.webkit.org/show_bug.cgi?id=19192
   17749         remove NPNVpluginEventModel, fix example plugin
   17750         
   17751         Remove NPNVpluginEventModel enum variable.
   17752         
   17753         * bridge/npapi.h:
   17754 
   17755 2008-05-22  Stephanie Lewis  <slewis (a] apple.com>
   17756 
   17757         Reviewed by Dan.
   17758 
   17759         Fix <rdar://problem/5952405>.  The unbeforeunload count cannot be cleared when it is dispatched because it is possible to be called again.  Clear it after the unload event is dispatched.
   17760 
   17761         Test: fast/events/onunload-clears-onbeforeunload.html
   17762 
   17763         * loader/FrameLoader.cpp:
   17764         (WebCore::FrameLoader::stopLoading):
   17765         * page/Frame.cpp:
   17766         (WebCore::Frame::shouldClose):
   17767 
   17768 2008-05-22  Simon Hausmann  <hausmann (a] webkit.org>
   17769 
   17770         Reviewed by Oliver.
   17771 
   17772         Qt build fix.
   17773 
   17774         * bindings/js/StringSourceProvider.h: Remove text at end of
   17775         preprocessor statement.
   17776         * bridge/qt/qt_instance.cpp:
   17777         (KJS::Bindings::QtRuntimeObjectImp::getConstructData): Replaced
   17778         implementsConstruct() with getConstructData().
   17779         (KJS::Bindings::QtInstance::getCallData): Replaced implementsCall with
   17780         getCallData().
   17781         (KJS::Bindings::QtInstance::invokeDefaultMethod): Use getCallData()
   17782         instead of implementsCall().
   17783         * bridge/qt/qt_instance.h:
   17784 
   17785 2008-05-22  Adam Roben  <aroben (a] apple.com>
   17786 
   17787         Massively speed up date-format-tofte with the debugger attached
   17788 
   17789         On a debug Windows build (I know, hardly a good testcase) this patch
   17790         makes this test run 57.25x as fast.
   17791 
   17792         Reviewed by Mark Rowe.
   17793 
   17794         * page/inspector/ScriptsPanel.js:
   17795         (WebInspector.ScriptsPanel.prototype.reset): Clear the
   17796         _scriptsForURLsInFilesSelect object.
   17797         (WebInspector.ScriptsPanel.prototype._showScriptOrResource): Instead
   17798         of looping over all the options in the select to find the option we
   17799         want, get the script object from _scriptsForURLsInFilesSelect and get
   17800         the option element from the script object.
   17801         (WebInspector.ScriptsPanel.prototype._addScriptToFilesMenu): Use
   17802         _scriptsForURLsInFilesSelect to cache the script objects. Store the
   17803         option element for each script on the script object so we can quickly
   17804         retrieve it later.
   17805 
   17806 2008-05-22  Adam Roben  <aroben (a] apple.com>
   17807 
   17808         Remove some dead code from ScriptsPanel.js
   17809 
   17810         Reviewed by Mark Rowe.
   17811 
   17812         * page/inspector/ScriptsPanel.js:
   17813 
   17814 2008-05-21  Adam Roben  <aroben (a] apple.com>
   17815 
   17816         Fix Bug 19178: Inspector should support sorting resources by latency
   17817 
   17818         <https://bugs.webkit.org/show_bug.cgi?id=19178>
   17819 
   17820         I replaced "Sort by Time" with the following sorting options:
   17821           - Sort by Start Time
   17822           - Sort by Response Time
   17823           - Sort by End Time
   17824           - Sort by Duration
   17825           - Sort by Latency
   17826 
   17827         You can no longer sort by Size when looking at the Time graph, and you
   17828         can't use any of the time-based sorting functions when looking at the
   17829         Size graph.
   17830 
   17831         Reviewed by Tim Hatcher.
   17832 
   17833         * page/inspector/Resource.js:
   17834         (WebInspector.Resource.prototype.get duration): Added.
   17835         (WebInspector.Resource.prototype.get latency): Added.
   17836         (WebInspector.Resource.CompareByStartTime): Added.
   17837         (WebInspector.Resource.CompareByResponseReceivedTime): Added.
   17838         (WebInspector.Resource.CompareByEndTime): Added.
   17839         (WebInspector.Resource.CompareByDuration): Added.
   17840         (WebInspector.Resource.CompareByLatency): Added.
   17841         * page/inspector/ResourcesPanel.js:
   17842         (WebInspector.ResourcesPanel):
   17843           - Each graph sidebar item now holds a list of sorting options
   17844           - Graph sidebar items no longer have a calculator property. This is
   17845             stored on the sorting options instead, to allow each kind of
   17846             sorting to have a different calculator.
   17847           - The sortingSelectElement starts out empty, and is populated in
   17848             _graphSelected
   17849           - The sortingFunction starts out uninitialized and is set as a
   17850             side-effect of _graphSelected.
   17851         (WebInspector.ResourcesPanel.prototype.set calculator): Don't do
   17852         anything if the calculator hasn't changed.
   17853         (WebInspector.ResourcesPanel.prototype.closeVisibleResource): Use the
   17854         _lastSelectedGraphTreeElement property instead of getting the graph
   17855         element from the calculator.
   17856         (WebInspector.ResourcesPanel.prototype._graphSelected):
   17857           - Store the tree element in the _lastSelectedGraphTreeElement
   17858             property
   17859           - Popuplate sortingSelectElement with the sortingOptions and select
   17860             the option that was last selected
   17861         (WebInspector.ResourcesPanel.prototype._changeSortingFunction): Set
   17862         our calculator from the sorting option.
   17863         (WebInspector.ResourceTimeCalculator): Renamed from
   17864         ResourceTransferTimeCalculator. Now takes a parameter to specify
   17865         whether the bars should all start at zero.
   17866         (WebInspector.ResourceTimeCalculator.prototype.computeBarGraphPercentages):
   17867         Take this.startAtZero into account.
   17868         (WebInspector.ResourceTimeCalculator.prototype.updateBoundries):
   17869         Abstracted the lower/upper bounds of a resource into methods.
   17870         (WebInspector.ResourceTimeCalculator.prototype._lowerBound): Added.
   17871         (WebInspector.ResourceTimeCalculator.prototype._upperBound): Added.
   17872         (WebInspector.ResourceTransferTimeCalculator): Added. This is now a
   17873         subclass of ResourceTimeCalculator
   17874         (WebInspector.ResourceTransferDurationCalculator): Added.
   17875         (WebInspector.ResourceSidebarTreeElement.CompareByAscendingStartTime): Added.
   17876         (WebInspector.ResourceSidebarTreeElement.CompareByAscendingResponseReceivedTime): Added.
   17877         (WebInspector.ResourceSidebarTreeElement.CompareByAscendingEndTime): Added.
   17878         (WebInspector.ResourceSidebarTreeElement.CompareByDescendingDuration): Added.
   17879         (WebInspector.ResourceSidebarTreeElement.CompareByDescendingLatency): Added.
   17880         (WebInspector.ResourceSidebarTreeElement.CompareByDescendingSize):
   17881         Changed to call CompareBySize.
   17882 
   17883 2008-05-21  Adam Roben  <aroben (a] apple.com>
   17884 
   17885         Fix Bug 19173: Tool tips for Inspector debugger status bar buttons are
   17886         wrong/missing
   17887 
   17888         <https://bugs.webkit.org/show_bug.cgi?id=19173>
   17889 
   17890         Reviewed by Tim Hatcher.
   17891 
   17892         * manual-tests/inspector/debugger-status-bar-buttons-state.html:
   17893         Added.
   17894         * page/inspector/ScriptsPanel.js:
   17895         (WebInspector.ScriptsPanel.prototype._toggleDebugging): Call
   17896         _clearInterface (which updates the buttons' tool tips) after
   17897         attaching/detaching the debugger so that the buttons will reflect the
   17898         new state.
   17899         (WebInspector.ScriptsPanel.prototype._updatePauseOnExceptionsButton):
   17900         Set the title of the pauseOnExceptionsButton, not the debuggingButton.
   17901 
   17902 2008-05-20  Adam Roben  <aroben (a] apple.com>
   17903 
   17904         Fix Bug 19153: Inspector should support console.debug
   17905 
   17906         <https://bugs.webkit.org/show_bug.cgi?id=19153>
   17907         <rdar://problem/5950856>
   17908 
   17909         Reviewed by Tim Hatcher.
   17910 
   17911         Test: manual-tests/inspector/console-log-formatting.html
   17912 
   17913         * bindings/js/JSConsoleCustom.cpp:
   17914         (WebCore::JSConsole::debug): Added.
   17915         * manual-tests/inspector/console-log-formatting.html: Changed to test
   17916         console.debug as well.
   17917         * page/Console.cpp:
   17918         (WebCore::Console::debug): Added. Just calls through to log().
   17919         * page/Console.h:
   17920         * page/Console.idl: Added debug() declaration.
   17921 
   17922 2008-05-21  Kevin McCullough  <kmccullough (a] apple.com>
   17923 
   17924         Reviewed by Adam.
   17925 
   17926         <rdar://problem/5950867> JSProfiler: Allow the profiler to "Focus" a
   17927         profile node.
   17928         - Expose the Profile's 'focus' ability to WebCore and the WebInspector.
   17929 
   17930         * page/JavaScriptProfile.cpp:
   17931         (WebCore::focus):
   17932         (WebCore::profileClass):
   17933 
   17934 2008-05-21  Timothy Hatcher  <timothy (a] apple.com>
   17935 
   17936         Remove the rest of the debug code inside DEBUG_DEBUGGER_CALLBACKS
   17937         since the parts the remain aren't useful.
   17938 
   17939         * page/JavaScriptDebugServer.cpp:
   17940         (WebCore::JavaScriptDebugServer::sourceParsed):
   17941 
   17942 2008-05-21  Beth Dakin  <bdakin (a] apple.com>
   17943 
   17944         Reviewed by Anders.
   17945 
   17946         Fix for <rdar://problem/5848161> REGRESSION (r31438?): Crash 
   17947         beneath ResourceHandle::setDefersLoading while running fast/loader/
   17948         simultaneous-reloads-assert.html (null CFURLConnection)
   17949 
   17950         * platform/network/cf/ResourceHandleCFNet.cpp:
   17951         (WebCore::ResourceHandle::setDefersLoading): Added simple null-
   17952         check.
   17953 
   17954 2008-05-21  Timothy Hatcher  <timothy (a] apple.com>
   17955 
   17956         Adds the Request and Response headers to the Resource view.
   17957 
   17958         <rdar://problem/5940782> REGRESSION: Resource Request and Response
   17959         headers aren't shown (18451)
   17960 
   17961         Reviewed by Adam Roben.
   17962 
   17963         * English.lproj/localizedStrings.js: Added new strings.
   17964         * css/view-source.css: Add comments to make sure a couple of
   17965         style rules stay in sync with inspector.css.
   17966         * page/inspector/Resource.js:
   17967         (WebInspector.Resource.prototype.set url): Dispatch an event when
   17968         this property changes.
   17969         (WebInspector.Resource.prototype.set requestHeaders): Ditto.
   17970         (WebInspector.Resource.prototype.set responseHeaders): Ditto.
   17971         * page/inspector/ResourceView.js:
   17972         (WebInspector.ResourceView): Add new elements for the headers
   17973         and a headers TreeOutline. Add event listeners for resource
   17974         property changes. Calls the three new refresh functions.
   17975         (WebInspector.ResourceView.prototype.set headersVisible): Implemented.
   17976         Toggles the headers-visible class name.
   17977         (WebInspector.ResourceView.prototype._refreshURL): Update the URL
   17978         tree element.
   17979         (WebInspector.ResourceView.prototype._refreshRequestHeaders): Call _refreshHeaders.
   17980         (WebInspector.ResourceView.prototype._refreshResponseHeaders): Ditto.
   17981         (WebInspector.ResourceView.prototype._refreshHeaders): Remove the previous
   17982         headers fromm the tree element. Loop throuh the headers and create new
   17983         tree elements and append them.
   17984         * page/inspector/ResourcesPanel.js:
   17985         (WebInspector.ResourcesPanel.prototype._updateSidebarWidth): Call resize
   17986         on the visible view if it is implemented.
   17987         * page/inspector/SourceFrame.js:
   17988         (WebInspector.SourceFrame.prototype.get autoSizesToFitContentHeight):
   17989         (WebInspector.SourceFrame.prototype.set autoSizesToFitContentHeight):
   17990         (WebInspector.SourceFrame.prototype.sizeToFitContentHeight):
   17991         (WebInspector.SourceFrame.prototype._loaded): 
   17992         (WebInspector.SourceFrame.prototype._windowResized): 
   17993         * page/inspector/SourceView.js:
   17994         (WebInspector.SourceView): Move the SourceFrame creation so it is
   17995         available when headersVisible is set. Add a gutter element to fill
   17996         the vertical space no covered by the SourceFrame now.
   17997         (WebInspector.SourceView.prototype.set headersVisible): Set the
   17998         SourceFrame.autoSizesToFitContentHeight when this property changes.
   17999         (WebInspector.SourceView.prototype.resize): Call SourceFrame.sizeToFitContentHeight
   18000         when autoSizesToFitContentHeight is true. This happens when resizing the 
   18001         Resources sidebar.
   18002         * page/inspector/inspector.css: Add a copy of webkit-line-gutter-backdrop
   18003         and a comment to keep in sync with view-source.css. Adds other styles
   18004         for the headers area of resource-view.
   18005 
   18006 2008-05-21  Sam Weinig  <sam (a] webkit.org>
   18007 
   18008         Reviewed by Anders Carlsson.
   18009 
   18010         <rdar://problem/5838772> Support cross-site XMLHttpRequest
   18011 
   18012         - Implement support for cross-site GET requests using the HTTP header
   18013           Access-control mechanism.
   18014 
   18015         Tests: http/tests/xmlhttprequest/access-control-basic-allow-headers.html
   18016                http/tests/xmlhttprequest/access-control-basic-allow.html
   18017                http/tests/xmlhttprequest/access-control-basic-denied.html
   18018                http/tests/xmlhttprequest/access-control-basic-exclude.html
   18019 
   18020         * xml/AccessControlList.cpp:
   18021         (WebCore::AccessControlList::checkOrigin): Implement the list check algorithm.
   18022         * xml/AccessControlList.h:
   18023 
   18024         * xml/AccessItem.cpp:
   18025         (WebCore::AccessItem::AccessItem):
   18026         (WebCore::AccessItem::matches):
   18027         * xml/AccessItem.h:
   18028         Temporarily use a SecurityOrigin as the bases of AccessItem matching. Using
   18029         the isSameSchemeHostPort test of the SecurityOrigin allows for a legal subset
   18030         of the AccessItem match algorithm to be used, until the complete parsing of
   18031         the wildcards and optional pieces is complete. 
   18032 
   18033         * xml/AccessItemRule.cpp:
   18034         (WebCore::matchesAny):
   18035         (WebCore::AccessItemRule::allowListMatchesAny):
   18036         (WebCore::AccessItemRule::excludeListMatchesAny):
   18037         * xml/AccessItemRule.h:
   18038         More of the implementation of the list check algorithm.  Check if any of the items
   18039         in the rule match the control origin.
   18040 
   18041         * xml/XMLHttpRequest.cpp:
   18042         (WebCore::XMLHttpRequest::XMLHttpRequest):
   18043         (WebCore::XMLHttpRequest::open): Don't throw a SECURITY_ERR for cross-domain requests anymore.
   18044         (WebCore::XMLHttpRequest::send): Use different paths for same origin and cross-domain requests.
   18045         (WebCore::XMLHttpRequest::crossSiteAccessRequest): Temporarily only support the GET method for
   18046         cross-domain requests.  
   18047         (WebCore::XMLHttpRequest::loadRequestSynchronously):
   18048         (WebCore::XMLHttpRequest::processSyncLoadResults):
   18049         This can now throw an exception if a cross-domain request is denied by the access control
   18050         (WebCore::XMLHttpRequest::didFinishLoading):
   18051         Add support for cross-domain GET request.  ASSERT temporarily that the method is GET, since we
   18052         should have bailed out much earlier for non-GET methods.
   18053         (WebCore::XMLHttpRequest::willSendRequest):
   18054         (WebCore::XMLHttpRequest::didReceiveResponse):
   18055         Do the HTTP header access-control check as soon as the headers arrive.
   18056         * xml/XMLHttpRequest.h:
   18057 
   18058 2008-05-21  Alp Toker  <alp (a] nuanti.com>
   18059 
   18060         Rubber-stamped by Maciej.
   18061 
   18062         Replace non-standard #pragma marks with comments to avoid compiler
   18063         warnings.
   18064 
   18065         * page/InspectorController.cpp:
   18066 
   18067 === End merge of squirrelfish ===
   18068 
   18069 2008-05-21  Geoffrey Garen  <ggaren (a] apple.com>
   18070 
   18071         Reviewed by Tim Hatcher.
   18072 
   18073         Merged with trunk WebCore's new debugger.
   18074 
   18075         * page/InspectorController.cpp:
   18076         (WebCore::currentCallFrame): Updated to use the DebuggerCallFrame API.
   18077         (WebCore::InspectorController::pauseInDebugger): Updated for name change
   18078         explained below.
   18079         (WebCore::InspectorController::resumeDebugger): ditto
   18080         (WebCore::InspectorController::didParseSource): Fixed a bug that would
   18081         produce garbled text in some cases: Don't treat JS source as null-
   18082         terminated UTF8; it's UTF16.
   18083 
   18084         * page/JavaScriptCallFrame.cpp:
   18085         * page/JavaScriptCallFrame.h: Changed this class to do all of its processing
   18086         through a JavaScriptCore DebuggerCallFrame. We have to copy the DebuggerCallFrame
   18087         because it's a temporary.
   18088         (WebCore::JavaScriptCallFrame::update): Added an API for updating a call
   18089         frame during execution: this is how we handle "with" and "eval".
   18090 
   18091         * page/JavaScriptDebugServer.cpp: Separated "m_paused" from
   18092         "m_doneProcessingDebuggerEvents", because they have different semantics:
   18093         "m_paused" is the flag the debug server uses to indicate that new debugger
   18094         callbacks should be ignored, because they come from the debugger's own
   18095         JS code; "m_doneProcessingDebuggerEvents" is the flag the debugger UI
   18096         uses to indicate that it's done processing events, and would like execution
   18097         to continue. When these flags were one, the debugger would erroneously
   18098         process callbacks that ocurred while unwinding from its own JS code.
   18099 
   18100         (WebCore::toPage): Removed some unnecessary NULL checking. Added some
   18101         missing NULL checking.
   18102         
   18103         (WebCore::JavaScriptDebugServer::pauseIfNeeded): Changed pause tracking
   18104         to track a JavaScriptCallFrame instead of an ExecState, since ExecState
   18105         is no longer a unique identifier for a call frame.
   18106 
   18107         I removed the updateCurrentCallFrame scheme, and replaced it with
   18108         individual tracking inside these callbacks:
   18109         
   18110         (WebCore::JavaScriptDebugServer::callEvent):
   18111         (WebCore::JavaScriptDebugServer::atStatement):
   18112         (WebCore::JavaScriptDebugServer::returnEvent):
   18113         (WebCore::JavaScriptDebugServer::exception):
   18114         
   18115         The updateCurrentCallFrame scheme was just too incompatible with the
   18116         squirrelfish execution model. Everything still works as before, except
   18117         for eval, which no longer shows up as an independent call frame. We'll
   18118         need to augment our debugger callbacks to bring back support for that.
   18119 
   18120         * page/inspector/ScopeChainSidebarPane.js: Updated to use the activation
   18121         class's new name.
   18122 
   18123 2008-05-21  Maciej Stachowiak  <mjs (a] apple.com>
   18124 
   18125         Reviewed by Oliver.
   18126 
   18127         - write directly to the slot we used to check for override properties, when possible
   18128         2.6% speedup on in-browser SunSpider
   18129 
   18130         * bindings/js/JSDOMWindowCustom.h:
   18131         (WebCore::JSDOMWindow::customPut):
   18132 
   18133 2008-05-20  Maciej Stachowiak  <mjs (a] apple.com>
   18134 
   18135         Reviewed by Oliver.
   18136 
   18137         - inline JSDOMWindow security checks
   18138         0.9% speedup to SunSpider in-browser
   18139 
   18140         * bindings/js/JSDOMWindowBase.cpp:
   18141         * bindings/js/JSDOMWindowCustom.h:
   18142         (WebCore::JSDOMWindowBasePrivate::JSDOMWindowBasePrivate):
   18143         (WebCore::JSDOMWindowBase::allowsAccessFrom):
   18144         (WebCore::JSDOMWindowBase::allowsAccessFromNoErrorMessage):
   18145         (WebCore::JSDOMWindowBase::allowsAccessFromPrivate):
   18146         * bindings/js/kjs_binding.cpp:
   18147 
   18148 2008-05-20  Maciej Stachowiak  <mjs (a] apple.com>
   18149 
   18150         Reviewed by Adam.
   18151 
   18152         - use ALWAYS_INLINE on customGetOwnPropertySlot since it wasn't inlining
   18153         2% speedup to SunSpider in-browser
   18154 
   18155         * bindings/js/JSDOMWindowCustom.h:
   18156         (WebCore::JSDOMWindow::customGetOwnPropertySlot):
   18157 
   18158 2008-05-20  Maciej Stachowiak  <mjs (a] apple.com>
   18159 
   18160         Reviewed by Adam.
   18161 
   18162         - inline JSDOMWindow's customPut and customGetOwnPropertySlot methods
   18163         1.2% speedup to SunSpider in-browser
   18164         
   18165         The approach here is to make the code generator include a
   18166         JS{classname}Custom.h header in the autogenerated implementation,
   18167         which we can use to provide inline versions.
   18168 
   18169         * bindings/js/JSCSSStyleDeclarationCustom.cpp:
   18170         * bindings/js/JSCSSStyleDeclarationCustom.h: Added.
   18171         * bindings/js/JSDOMWindowCustom.cpp:
   18172         * bindings/js/JSDOMWindowCustom.h:
   18173         (WebCore::asJSDOMWindow):
   18174         (WebCore::JSDOMWindow::customGetOwnPropertySlot):
   18175         (WebCore::JSDOMWindow::customPut):
   18176         * bindings/js/JSHTMLAppletElementCustom.cpp:
   18177         * bindings/js/JSHTMLAppletElementCustom.h: Added.
   18178         * bindings/js/JSHTMLEmbedElementCustom.cpp:
   18179         * bindings/js/JSHTMLEmbedElementCustom.h: Added.
   18180         * bindings/js/JSHTMLObjectElementCustom.cpp:
   18181         * bindings/js/JSHTMLObjectElementCustom.h: Added.
   18182         * bindings/js/JSHistoryCustom.cpp:
   18183         * bindings/js/JSHistoryCustom.h: Added.
   18184         * bindings/js/JSLocationCustom.cpp:
   18185         * bindings/js/JSLocationCustom.h: Added.
   18186         * bindings/js/JSStorageCustom.cpp:
   18187         * bindings/js/JSStorageCustom.h: Added.
   18188         * bindings/scripts/CodeGeneratorJS.pm:
   18189 
   18190 2008-05-19  Maciej Stachowiak  <mjs (a] apple.com>
   18191 
   18192         Reviewed by Anders.
   18193 
   18194         - inline asDOMWindow (using a new JSDOMWindowCustom.h header) since it is just a cast
   18195         1% speedup to SunSpider in-browser
   18196 
   18197         * WebCore.vcproj/WebCore.vcproj:
   18198         * WebCore.xcodeproj/project.pbxproj:
   18199         * bindings/js/JSCustomVoidCallback.cpp:
   18200         * bindings/js/JSCustomXPathNSResolver.cpp:
   18201         * bindings/js/JSDOMApplicationCacheCustom.cpp:
   18202         * bindings/js/JSDOMWindowBase.cpp:
   18203         * bindings/js/JSDOMWindowBase.h:
   18204         * bindings/js/JSDOMWindowCustom.cpp:
   18205         * bindings/js/JSDOMWindowCustom.h: Added.
   18206         (WebCore::asJSDOMWindow):
   18207         * bindings/js/JSDatabaseCustom.cpp:
   18208         * bindings/js/JSDocumentCustom.cpp:
   18209         * bindings/js/JSLocationCustom.cpp:
   18210         * bindings/js/JSSQLTransactionCustom.cpp:
   18211         * bindings/js/JSXMLHttpRequestCustom.cpp:
   18212         * page/JavaScriptDebugServer.cpp:
   18213 
   18214 2008-05-19  Maciej Stachowiak  <mjs (a] apple.com>
   18215 
   18216         Reviewed by Oliver.
   18217 
   18218         - obtain current inner window of outer window in a more efficient way
   18219         1.6% speedup to SunSpider in-browser
   18220 
   18221         * bindings/js/JSDOMWindowBase.cpp:
   18222         (WebCore::JSDOMWindowBase::allowsAccessFromPrivate):
   18223 
   18224 2008-05-19  Maciej Stachowiak  <mjs (a] apple.com>
   18225 
   18226         Reviewed by Adam.
   18227 
   18228         - make impl() method for JSWindow inline
   18229         0.6% speedup to SunSpider in-browser
   18230 
   18231         * WebCore.base.exp: Remove now-inline symbol
   18232         * bindings/scripts/CodeGeneratorJS.pm: Make the codegen script inline impl()
   18233         even for classes with a parent class.
   18234 
   18235 2008-05-17  Geoffrey Garen  <ggaren (a] apple.com>
   18236 
   18237         Reviewed by Oliver Hunt.
   18238 
   18239         Updated for API changes in KJS::Debugger.
   18240 
   18241 2008-05-13  Geoffrey Garen  <ggaren (a] apple.com>
   18242 
   18243         Reviewed by Oliver Hunt.
   18244 
   18245         Updated for API changes in KJS::Debugger.
   18246 
   18247         * page/JavaScriptDebugServer.cpp:
   18248         (WebCore::JavaScriptDebugServer::callEvent):
   18249         (WebCore::JavaScriptDebugServer::atStatement):
   18250         (WebCore::JavaScriptDebugServer::returnEvent):
   18251         (WebCore::JavaScriptDebugServer::exception):
   18252         * page/JavaScriptDebugServer.h:
   18253 
   18254 2008-05-13  Geoffrey Garen  <ggaren (a] apple.com>
   18255 
   18256         Reviewed by Oliver Hunt.
   18257         
   18258         Updated JavaScriptDebugServer API to accept a SourceProvider instead
   18259         of a UString, to avoid copying.
   18260 
   18261         * page/JavaScriptDebugServer.cpp:
   18262         (WebCore::JavaScriptDebugServer::sourceParsed): Updated this function
   18263         not to return a value.
   18264 
   18265 2008-05-10  Maciej Stachowiak  <mjs (a] apple.com>
   18266 
   18267         Build fix.
   18268         
   18269         - add missing forwarding header
   18270 
   18271         * ForwardingHeaders/kjs/SourceProvider.h: Added.
   18272 
   18273 2008-05-10  Maciej Stachowiak  <mjs (a] apple.com>
   18274 
   18275         Reviewed by Oliver.
   18276 
   18277         - WebCore part of fix for: "SQUIRRELFISH: function toString broken after calling"
   18278         https://bugs.webkit.org/show_bug.cgi?id=18869
   18279 
   18280         * bindings/js/StringSourceProvider.h: Added. SourceProvider subclass backed by a WebCore::String.
   18281         (WebCore::StringSourceProvider::create):
   18282         (WebCore::StringSourceProvider::getRange):
   18283         (WebCore::StringSourceProvider::data):
   18284         (WebCore::StringSourceProvider::length):
   18285         (WebCore::StringSourceProvider::StringSourceProvider):
   18286         * bindings/js/kjs_proxy.cpp:
   18287         (WebCore::KJSProxy::evaluate): Pass a StringSourceProvider to
   18288         evaluate() instead of UChar* / length.
   18289         * html/HTMLScriptElement.cpp:
   18290         (WebCore::HTMLScriptElement::text): Modified to return the
   18291         original string as-is when the script element contains only a
   18292         single text node, to avoid excess memory use.
   18293         
   18294         * WebCore.vcproj/WebCore.vcproj: Add new file to build.
   18295         * WebCore.xcodeproj/project.pbxproj: ditto
   18296 
   18297 2008-05-09  Oliver Hunt  <oliver (a] apple.com>
   18298 
   18299         Reviewed by Geoff.
   18300 
   18301         Build fixes for SquirrelFish on windows.
   18302 
   18303         * bindings/js/JSNavigatorCustom.cpp:
   18304 
   18305 2008-05-08  Geoffrey Garen  <ggaren (a] apple.com>
   18306 
   18307         Reviewed by Oliver Hunt.
   18308 
   18309         Fixed platform/mac/plugins/bindings-test-objc.html.
   18310         
   18311         I've restored -[WebScriptObject setException] and
   18312         +[WebScriptObject throwException].
   18313         
   18314         Instead of mucking around in the JavaScript engine's execution state,
   18315         throwing an exception sets a global exception string, along with the
   18316         environment in which to throw it. An ObjC callback checks the global
   18317         exception string and, if it's non-nil and the environment matches the
   18318         current exceution environment, throws the global exception string as a
   18319         JS exception.
   18320 
   18321         I also removed the old currentGlobalObject infrastructure: it's no longer
   18322         used.
   18323 
   18324 2008-05-06  Oliver Hunt  <oliver (a] apple.com>
   18325 
   18326         Reviewed by Maciej.
   18327 
   18328         Bug 18866: SQUIRRELFISH: JS/ObjC bridge is broken <https://bugs.webkit.org/show_bug.cgi?id=18866>
   18329         Bug 18867: SQUIRRELFISH: JS/NPRuntime bridge is broken <https://bugs.webkit.org/show_bug.cgi?id=18867>
   18330 
   18331         This fixes function binding logic for the ObjC and NPRuntime by
   18332         replacing incorrect implementations of implementsCall (which is
   18333         no longer virtual) with implementations of getCallData.
   18334 
   18335         * bindings/js/JSQuarantinedObjectWrapper.cpp:
   18336         (WebCore::JSQuarantinedObjectWrapper::getCallData):
   18337         * bindings/js/JSQuarantinedObjectWrapper.h:
   18338         * bridge/c/c_instance.cpp:
   18339         * bridge/c/c_instance.h:
   18340         * bridge/objc/objc_instance.h:
   18341         * bridge/objc/objc_instance.mm:
   18342         * bridge/objc/objc_runtime.h:
   18343         * bridge/objc/objc_runtime.mm:
   18344         (ObjcFallbackObjectImp::getCallData):
   18345         * bridge/runtime.h:
   18346         * bridge/runtime_object.cpp:
   18347         (RuntimeObjectImp::getCallData):
   18348         * bridge/runtime_object.h:
   18349 
   18350 2008-04-30  Geoffrey Garen  <ggaren (a] apple.com>
   18351 
   18352         Build fix: supply a parameter that used to be implicit to
   18353         Interpreter::evaluate.
   18354 
   18355 2008-04-30  Geoffrey Garen  <ggaren (a] apple.com>
   18356 
   18357         Build fix: #ifdef'd out some code that doesn't work anymore.
   18358 
   18359         * bindings/objc/WebScriptObject.mm:
   18360         (+[WebScriptObject throwException:]):
   18361         (-[WebScriptObject setException:]):
   18362 
   18363 2008-04-14  Gabor Loki  <loki (a] inf.u-szeged.hu>
   18364 
   18365         Reviewed by Geoffrey Garen.
   18366 
   18367         Bug 18489: Squirrelfish doesn't build on linux
   18368         <https://bugs.webkit.org/show_bug.cgi?id=18489>
   18369 
   18370         * WebCore.pro: Add JavaScriptCore/VM into include path
   18371 
   18372 2008-04-10  Sam Weinig  <sam (a] webkit.org>
   18373 
   18374         Reviewed by Geoffrey Garen.
   18375 
   18376         Adjusted WebCore JS functions to the new "getConstructData" calling convention.
   18377 
   18378 2008-03-30  Geoffrey Garen  <ggaren (a] apple.com>
   18379 
   18380         Reviewed by Oliver Hunt.
   18381         
   18382         Adjusted WebCore JS functions to the new "getCallData" calling convention.
   18383 
   18384 === Start merge of squirrelfish ===
   18385 
   18386 2008-05-21  Anders Carlsson  <andersca (a] apple.com>
   18387 
   18388         Reviewed by Mitz.
   18389 
   18390         Add IconFetcher implementation.
   18391 
   18392         * WebCore.base.exp:
   18393         * WebCore.xcodeproj/project.pbxproj:
   18394         * html/HTMLLinkElement.h:
   18395         (WebCore::HTMLLinkElement::isIcon):
   18396         * loader/icon/IconFetcher.cpp: Added.
   18397         (WebCore::IconLinkEntry::):
   18398         (WebCore::IconLinkEntry::IconLinkEntry):
   18399         (WebCore::IconLinkEntry::type):
   18400         (WebCore::IconLinkEntry::url):
   18401         (WebCore::IconLinkEntry::buffer):
   18402         (WebCore::parseIconLink):
   18403         (WebCore::IconFetcher::create):
   18404         (WebCore::IconFetcher::IconFetcher):
   18405         (WebCore::IconFetcher::~IconFetcher):
   18406         (WebCore::IconFetcher::cancel):
   18407         (WebCore::IconFetcher::createIcon):
   18408         (WebCore::IconFetcher::loadEntry):
   18409         (WebCore::IconFetcher::loadFailed):
   18410         (WebCore::IconFetcher::didReceiveResponse):
   18411         (WebCore::IconFetcher::didReceiveData):
   18412         (WebCore::IconFetcher::didFinishLoading):
   18413         (WebCore::IconFetcher::didFail):
   18414         * loader/icon/IconFetcher.h: Added.
   18415         (WebCore::IconFetcherClient::~IconFetcherClient):
   18416 
   18417 2008-05-21  Dan Bernstein  <mitz (a] apple.com>
   18418 
   18419         Reviewed by Dave Hyatt.
   18420 
   18421         - fix https://bugs.webkit.org/show_bug.cgi?id=18352
   18422           <rdar://problem/5854517> crash loading malicious font
   18423 
   18424         * platform/graphics/mac/SimpleFontDataMac.mm:
   18425         (WebCore::SimpleFontData::platformInit): In the case of a custom font,
   18426         there is no NSFont to base the fallback font on, so get a font based on
   18427         fallback family name alone.
   18428 
   18429 2008-05-21  Timothy Hatcher  <timothy (a] apple.com>
   18430 
   18431         Adds the files and line numbers to the Profile call tree.
   18432 
   18433         <rdar://problem/5952924> Inspector needs to show file and line number
   18434         in the Profile call tree
   18435 
   18436         Reviewed by Geoff Garen.
   18437 
   18438         * page/JavaScriptProfileNode.cpp:
   18439         (WebCore::getFunctionName): Fixes a JSStringRef leak.
   18440         (WebCore::getURL): Call ProfileNode::url.
   18441         (WebCore::getLineNumber): Call ProfileNode::lineNumber.
   18442         (WebCore::ProfileNodeClass): Add the url and lineNumber properties.
   18443         * page/inspector/ProfileView.js:
   18444         (WebInspector.ProfileDataGridNode.prototype.createCell): Overload the
   18445         DataGridNode.createCell and add the file and lineNumber to the
   18446         cell if the column is the function column.
   18447         * page/inspector/inspector.css: New styles for the file and line.
   18448 
   18449 2008-05-21  Timothy Hatcher  <timothy (a] apple.com>
   18450 
   18451         Restores logging of console calls to the STDOUT
   18452         when Interpreter::shouldPrintExceptions() is true.
   18453 
   18454         <rdar://problem/5636442> REGRESSION: Console.log no longer logs to
   18455         the system console or terminal
   18456 
   18457         <rdar://problem/5146079> JavaScript exception logging should print
   18458         accurate file and line info when called from WebScriptObject
   18459 
   18460         Reviewed by Adam Roben.
   18461 
   18462         * bindings/js/JSCustomSQLStatementCallback.cpp:
   18463         (WebCore::JSCustomSQLStatementCallback::handleEvent): Remove existing
   18464         printf and check for Interpreter::shouldPrintExceptions() since there is
   18465         a call to Console::addMessage.
   18466         * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
   18467         (WebCore::JSCustomSQLStatementErrorCallback::handleEvent): Ditto.
   18468         * bindings/js/JSCustomSQLTransactionCallback.cpp:
   18469         (WebCore::JSCustomSQLTransactionCallback::handleEvent): Ditto.
   18470         * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
   18471         (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent): Ditto.
   18472         * bindings/js/JSCustomVoidCallback.cpp:
   18473         (WebCore::JSCustomVoidCallback::handleEvent): Ditto.
   18474         * bindings/js/JSCustomXPathNSResolver.cpp:
   18475         (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI): Ditto.
   18476         * bindings/js/JSDOMWindowBase.cpp:
   18477         (WebCore::JSDOMWindowBase::printErrorMessage): Ditto.
   18478         * bindings/js/ScheduledAction.cpp:
   18479         (WebCore::ScheduledAction::execute): Ditto.
   18480         * bindings/js/kjs_events.cpp:
   18481         (WebCore::JSAbstractEventListener::handleEvent): Ditto.
   18482         * loader/FrameLoader.cpp:
   18483         (WebCore::FrameLoader::shouldAllowNavigation): Ditto.
   18484         * bindings/objc/WebScriptObject.mm:
   18485         (WebCore::addExceptionToConsole): Added helper static function that
   18486         calls Console::addMessage.
   18487         (-[WebScriptObject callWebScriptMethod:withArguments:]): Call addExceptionToConsole.
   18488         (-[WebScriptObject evaluateWebScript:]): Ditto.
   18489         (-[WebScriptObject setValue:forKey:]): Ditto.
   18490         (-[WebScriptObject valueForKey:]): Ditto.
   18491         (-[WebScriptObject removeWebScriptKey:]): Ditto.
   18492         (-[WebScriptObject webScriptValueAtIndex:]): Ditto.
   18493         (-[WebScriptObject setWebScriptValueAtIndex:value:]): Ditto.
   18494         * page/Console.cpp:
   18495         (WebCore::Console::addMessage): Print the level, message,
   18496         URL and line number to STDOUT.
   18497         (WebCore::printToStandardOut): Helper static function that
   18498         takes a prefix string, ExecState, an argument List and URL.
   18499         Prints the prefix and loops through the arguments calling
   18500         toString on each and printing the string. Finally printing
   18501         the URL and new line.
   18502         (WebCore::Console::error): Call printToStandardOut.
   18503         (WebCore::Console::info): Ditto.
   18504         (WebCore::Console::log): Ditto.
   18505         (WebCore::Console::assertCondition): Ditto.
   18506         (WebCore::Console::warn): Ditto.
   18507 
   18508 2008-05-20  Timothy Hatcher  <timothy (a] apple.com>
   18509 
   18510         Changes to work with the new Profiler API. The Profile is now
   18511         stored by the InspectorController when Console.profileEnd is called.
   18512         This solves three issues with the previous design. First, we don't
   18513         keep profiles around unless the Inspector is enabled. Second, we
   18514         only show Profiles initiated by the Page in it's Inspector, not every
   18515         Profile for the whole process. Third, we now show Profiles in the
   18516         Inspector when they are created.
   18517 
   18518         <rdar://problem/5951562> New profiles aren't added to the Inspector
   18519         as they finish
   18520 
   18521         Reviewed by Kevin McCullough.
   18522 
   18523         * bindings/js/JSConsoleCustom.cpp:
   18524         (WebCore::JSConsole::profileEnd): Added. Calls impl()->profileEnd()
   18525         and passes the ExecState and arguments.
   18526         * page/Console.cpp:
   18527         (WebCore::Console::profile):
   18528         (WebCore::Console::profileEnd): Accept the optional title argument
   18529         and pass it to Profilier::stopProfiling along with the ExecState.
   18530         Calls InspectorController::addProfile with the result Profile.
   18531         * page/Console.h:
   18532         * page/Console.idl: Made profileEnd Custom so we can get the ExecState.
   18533         * page/InspectorController.cpp:
   18534         (WebCore::profiles): Renamed from allProfiles. Uses the controller's
   18535         profiles vector.
   18536         (WebCore::InspectorController::addProfile): Appends to m_profiles.
   18537         Calls addScriptProfile if the window is visible.
   18538         (WebCore::InspectorController::windowScriptObjectAvailable): Renamed
   18539         allProfiles to profiles.
   18540         (WebCore::InspectorController::addScriptProfile): Calls addProfile on
   18541         the JavaScript side.
   18542         (WebCore::InspectorController::didCommitLoad): Clears m_profiles.
   18543         * page/InspectorController.h:
   18544         * page/inspector/ProfilesPanel.js: Populates the profiles sidebar the first
   18545         time the panel is shown after a rest.
   18546         * page/inspector/inspector.js: Added addProfile, calls ProfilesPanel's
   18547         addProfile function.
   18548 
   18549 2008-05-21  Alexey Proskuryakov  <ap (a] webkit.org>
   18550 
   18551         Reviewed by Darin.
   18552 
   18553         https://bugs.webkit.org/show_bug.cgi?id=19169
   18554         <rdar://5952342> REGRESSION: nakarte.ru searches don't work
   18555 
   18556         Test: http/tests/xmlhttprequest/encode-request-url.html
   18557 
   18558         * platform/KURL.cpp: (WebCore::KURL::init): Don't allow UTF-8 encoded data to be implicitly
   18559         converted to String, as it will be encoded again by parse().
   18560 
   18561 2008-05-21  Ariya Hidayat  <ariya.hidayat (a] trolltech.com>
   18562 
   18563         Reviewed by Simon.
   18564 
   18565         For the Qt port, fix building with Qt for Embedded Linux.
   18566 
   18567         * WebCore.pro:
   18568 
   18569 2008-05-21  Ariya Hidayat  <ariya.hidayat (a] trolltech.com>
   18570 
   18571         Reviewed by Simon.
   18572 
   18573         For the Qt port, allow building without NPAPI plugin support.
   18574 
   18575         * WebCore.pro:
   18576         * plugins/PluginView.h:
   18577 
   18578 2008-05-20  Kevin McCullough  <kmccullough (a] apple.com>
   18579 
   18580         Reviewed by Tim.
   18581 
   18582         Added all of my personal manual tests for the profiler.
   18583 
   18584         * manual-tests/inspector/profiler-test-anonymous-event-handler.html: Added.
   18585         * manual-tests/inspector/profiler-test-anonymous-function-called-from-different-contexts.html: Added.
   18586         * manual-tests/inspector/profiler-test-anonymous-function-calls-built-in-functions.html: Added.
   18587         * manual-tests/inspector/profiler-test-anonymous-function-calls-eval.html: Added.
   18588         * manual-tests/inspector/profiler-test-apply.html: Added.
   18589         * manual-tests/inspector/profiler-test-built-in-function-calls-anonymous.html: Added.
   18590         * manual-tests/inspector/profiler-test-built-in-function-calls-user-defined-function.html: Added.
   18591         * manual-tests/inspector/profiler-test-call.html: Added.
   18592         * manual-tests/inspector/profiler-test-dead-time.html: Added.
   18593         * manual-tests/inspector/profiler-test-event-handler.html: Added.
   18594         * manual-tests/inspector/profiler-test-execution-context-and-eval-on-same-line.html: Added.
   18595         * manual-tests/inspector/profiler-test-inline-event-handler.html: Added.
   18596         * manual-tests/inspector/profiler-test-many-calls-in-the-same-scope.html: Added.
   18597         * manual-tests/inspector/profiler-test-multiple-and-different-scoped-anonymous-function-calls.html: Added.
   18598         * manual-tests/inspector/profiler-test-multiple-and-different-scoped-function-calls.html: Added.
   18599         * manual-tests/inspector/profiler-test-multiple-frames.html: Added.
   18600         * manual-tests/inspector/profiler-test-multiple-windows.html: Added.
   18601         * manual-tests/inspector/profiler-test-nested-anonymous-functon.html: Added.
   18602         * manual-tests/inspector/profiler-test-nested-start-and-stop-profiler.html: Added.
   18603         * manual-tests/inspector/profiler-test-no-execution-context.html: Added.
   18604         * manual-tests/inspector/profiler-test-one-execution-context.html: Added.
   18605         * manual-tests/inspector/profiler-test-profile-calls-in-included-file.html: Added.
   18606         * manual-tests/inspector/profiler-test-profiling-from-a-nested-location-but-stop-profiling-outside-the-nesting.html: Added.
   18607         * manual-tests/inspector/profiler-test-profiling-from-a-nested-location.html: Added.
   18608         * manual-tests/inspector/profiler-test-start-and-stop-profiler-multiple-times.html: Added.
   18609         * manual-tests/inspector/profiler-test-two-execution-contexts.html: Added.
   18610         * manual-tests/inspector/profiler-test-user-defined-function-calls-built-in-functions.html: Added.
   18611         * manual-tests/inspector/resources: Added.
   18612         * manual-tests/inspector/resources/other-frame.html: Added.
   18613         * manual-tests/inspector/resources/other-window.html: Added.
   18614         * manual-tests/inspector/resources/profiler-test-JS-resources.js: Added.
   18615 
   18616 2008-05-20  Adam Roben  <aroben (a] apple.com>
   18617 
   18618         Use KJS::List::getSlice instead of reimplementing it
   18619 
   18620         Rubberstamped and suggested by Sam Weinig.
   18621 
   18622         * bindings/js/JSConsoleCustom.cpp:
   18623         (WebCore::JSConsole::assertCondition):
   18624 
   18625 2008-05-20  Kevin Calhoun  <kcalhoun (a] apple.com>
   18626 
   18627         Reviewed by Darin.
   18628 
   18629         Fix <rdar://problem/5929010> Adopt new QTKit methods for <video> implementation
   18630 
   18631         If the class QTVideoRendererWebKitOnly is present use it to render video,
   18632         otherwise fall back to existing use of QTMovieView/QTMovieContentView.
   18633 
   18634         * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
   18635         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
   18636         (WebCore::MediaPlayerPrivate::~MediaPlayerPrivate):
   18637         (WebCore::MediaPlayerPrivate::createQTMovie):
   18638         (WebCore::QTVideoRendererClass):
   18639         (WebCore::MediaPlayerPrivate::detachQTMovieView):
   18640         (WebCore::MediaPlayerPrivate::createQTVideoRenderer):
   18641         (WebCore::MediaPlayerPrivate::destroyQTVideoRenderer):
   18642         (WebCore::MediaPlayerPrivate::setUpVideoRendering):
   18643         (WebCore::MediaPlayerPrivate::tearDownVideoRendering):
   18644         (WebCore::MediaPlayerPrivate::load):
   18645         (WebCore::MediaPlayerPrivate::cancelLoad):
   18646         (WebCore::MediaPlayerPrivate::setVisible):
   18647         (WebCore::MediaPlayerPrivate::paint):
   18648         (-[WebCoreMovieObserver newImageAvailable:]):
   18649 
   18650 2008-05-19  Adam Roben  <aroben (a] apple.com>
   18651 
   18652         Fix Bug 19134: Inspector should support console.assert
   18653 
   18654         <https://bugs.webkit.org/show_bug.cgi?id=19134>
   18655 
   18656         Reviewed by Tim Hatcher.
   18657 
   18658         Test: manual-tests/inspector/console-assert.html
   18659 
   18660         * bindings/js/JSConsoleCustom.cpp:
   18661         (WebCore::JSConsole::assertCondition): Added.
   18662         * bindings/scripts/CodeGeneratorJS.pm: Added parsing of the
   18663         ImplementationFunction extended attribute, which allows you to
   18664         override the name of the C++ function used to implement this method.
   18665         * manual-tests/inspector/console-assert.html: Added.
   18666         * page/Console.cpp:
   18667         (WebCore::Console::assertCondition): Added.
   18668         * page/Console.h:
   18669         * page/Console.idl: Added assert().
   18670 
   18671 2008-05-20  Alice Liu  <alice.liu (a] apple.com>
   18672 
   18673         Reviewed by Brady.
   18674 
   18675         fix <rdar://problem/5908580> 10A58: Dictionary Panel hangs in WebCore::Cache::pruneDeadResources()
   18676 
   18677         * loader/Cache.cpp:
   18678         (WebCore::Cache::requestUserCSSStyleSheet):
   18679         Add a call to resourceAccessed() to more closely mirror what is done in requestResource()
   18680         (WebCore::Cache::insertInLRUList):
   18681         Assert that any resource in the LRU list has been accessed.  This is early detection of a
   18682         potential hang later when pruning resources, and also agrees with the early return in 
   18683         removeFromLRUList().
   18684 
   18685 2008-05-20  Dan Bernstein  <mitz (a] apple.com>
   18686 
   18687         Reviewed by Darin Adler.
   18688 
   18689         - fix https://bugs.webkit.org/show_bug.cgi?id=17655
   18690           <rdar://problem/5778077> REGRESSION (3.1.1-TOT): Reproducible crash calling querySelector on viewless Document
   18691 
   18692         Test: fast/dom/SelectorAPI/viewless-document.html
   18693 
   18694         * css/CSSStyleSelector.cpp:
   18695         (WebCore::CSSStyleSelector::CSSStyleSelector): Updated to initialize the
   18696         selector checker.
   18697         (WebCore::CSSStyleSelector::init): Removed initialization of
   18698         m_collectRulesOnly, which is now part of the selector checker.
   18699         (WebCore::CSSStyleSelector::matchRules): Updated for renames and data
   18700         moved into the selector checker.
   18701         (WebCore::CSSStyleSelector::matchRulesForList): Ditto.
   18702         (WebCore::CSSStyleSelector::initForStyleResolve): Added a PseudoId
   18703         argument, which is used to initialize a data member of the selector
   18704         checker. Updated for renames. Removed initialization of m_isXMLDoc
   18705         because this bit is now initialized only once in the selector checker's
   18706         constructor.
   18707         (WebCore::CSSStyleSelector::SelectorChecker::SelectorChecker): Added.
   18708         (WebCore::CSSStyleSelector::SelectorChecker::checkPseudoState): Changed
   18709         into a SelectorChecker method.
   18710         (WebCore::CSSStyleSelector::SelectorChecker::checkSelector): Added. Used
   18711         by querySelector() and querySelectorAll().
   18712         (WebCore::CSSStyleSelector::canShareStyleWithElement): Updated for data
   18713         moved into the selector checker.
   18714         (WebCore::CSSStyleSelector::matchUARules): Ditto.
   18715         (WebCore::CSSStyleSelector::styleForElement):
   18716         (WebCore::CSSStyleSelector::pseudoStyleForElement): Ditto. Also removed
   18717         code that set the parentStyle variable after the last place it is
   18718         accessed, and changed to ensure that m_style is set early in this
   18719         function.
   18720         (WebCore::CSSStyleSelector::adjustRenderStyle): Updated for data moved
   18721         into the selector checker.
   18722         (WebCore::CSSStyleSelector::styleRulesForElement): Ditto.
   18723         (WebCore::CSSStyleSelector::checkSelector): Ditto. Also changed to pass
   18724         the element's style and the parent style to the selector checker, as
   18725         well as the dynamic pseudo variable and the selector attributes vector.
   18726         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector): Added
   18727         arguments for the style of the base element and its parent. When the
   18728         elementStyle argument is 0, the style is fetched from the element
   18729         and its parent as needed. Also changed to take a reference to the
   18730         dynamic pseudo ID and a pointer to the vector of attributes affecting
   18731         the match.
   18732         (WebCore::CSSStyleSelector::applyProperty): Updated for data moved
   18733         into the selector checker.
   18734         (WebCore::CSSStyleSelector::checkForGenericFamilyChange): Ditto.
   18735         (WebCore::CSSStyleSelector::getComputedSizeFromSpecifiedSize): Ditto.
   18736         (WebCore::CSSStyleSelector::fontSizeForKeyword): Ditto.
   18737         (WebCore::CSSStyleSelector::getColorFromPrimitiveValue): Ditto.
   18738         (WebCore::CSSStyleSelector::SelectorChecker::allVisitedStateChanged):
   18739         Changed into a SelectorChecker method.
   18740         (WebCore::CSSStyleSelector::SelectorChecker::visitedStateChanged):
   18741         Ditto.
   18742 
   18743         * css/CSSStyleSelector.h:
   18744         Added a SelectorChecker class and moved data and methods used in
   18745         checking selectors into it.
   18746         (WebCore::CSSStyleSelector::allVisitedStateChanged): Changed to call the
   18747         SelectorChecker method.
   18748         (WebCore::CSSStyleSelector::visitedStateChanged): Ditto.
   18749         * dom/Node.cpp:
   18750         (WebCore::Node::querySelector): Changed to use a SelectorChecker instead
   18751         of the document's style selector.
   18752         * dom/SelectorNodeList.cpp:
   18753         (WebCore::SelectorNodeList::SelectorNodeList): Ditto.
   18754 
   18755 2008-05-20  Timothy Hatcher  <timothy (a] apple.com>
   18756 
   18757         Implements the Profiles panel and Profile view.
   18758 
   18759         Reviewed by Kevin McCullough.
   18760 
   18761         * English.lproj/localizedStrings.js: Added new strings.
   18762         * page/inspector/Images/profileIcon.png: Added.
   18763         * page/inspector/Images/profilesIcon.png: Changed. New icon design
   18764         that fits in with the other toolbar icons.
   18765         * page/inspector/ProfileView.js:
   18766         (WebInspector.ProfileView): Remove custom table elements
   18767         and create a DataGrid. Sorts the profile by descending total time,
   18768         since the profiles aren't sorted by default.
   18769         (WebInspector.ProfileView.prototype.refresh): Clears the DataGrid
   18770         and recreates all the nodes. The selection is preserved.
   18771         (WebInspector.ProfileView.prototype.refreshShowAsPercents): Traverse
   18772         all the children and change showTotalTimeAsPercent and showSelfTimeAsPercent
   18773         to match the ProfileView values. Then call refresh on the child.
   18774         (WebInspector.ProfileView.prototype._sortData): Determine the sort
   18775         function to call on the head profile node. Call it and then call
   18776         refresh to rebuild the DataGrid.
   18777         (WebInspector.ProfileView.prototype._mouseDownInDataGrid): Return early
   18778         if the event is not a double-click. When it is a double-click, determine
   18779         the column that was targeted and if it was total or self toggle the
   18780         show as percent property. Call refreshShowAsPercents.
   18781         (WebInspector.ProfileDataGridNode): 
   18782         (WebInspector.ProfileDataGridNode.prototype.get data): 
   18783         (WebInspector.ProfileDataGridNode.prototype.expand): 
   18784         (WebInspector.ProfileDataGridNode.prototype.collapse): 
   18785         (WebInspector.ProfileDataGridNode.prototype._populate): 
   18786         * page/inspector/ProfilesPanel.js:
   18787         (WebInspector.ProfilesPanel): 
   18788         (WebInspector.ProfilesPanel.prototype.show): Populate the sidebar
   18789         with all profiles. This is a workaround until the Inspector
   18790         is told about new profiles.
   18791         (WebInspector.ProfilesPanel.prototype.reset): Clear the sidebar and
   18792         profile views.
   18793         (WebInspector.ProfilesPanel.prototype.handleKeyEvent): Pass the key
   18794         event to the sidebar.
   18795         (WebInspector.ProfilesPanel.prototype.addProfile): Create a
   18796         ProfileSidebarTreeElement object and add it to the sidebar.
   18797         (WebInspector.ProfilesPanel.prototype.showProfile): Create a ProfileView
   18798         and show it.
   18799         (WebInspector.ProfilesPanel.prototype.closeVisibleView): Hide the
   18800         visible view.
   18801         (WebInspector.ProfilesPanel.prototype._startSidebarDragging): Call
   18802         WebInspector.elementDragStart.
   18803         (WebInspector.ProfilesPanel.prototype._sidebarDragging): Call _updateSidebarWidth.
   18804         (WebInspector.ProfilesPanel.prototype._endSidebarDragging):
   18805         Call WebInspector.elementDragEnd.
   18806         (WebInspector.ProfilesPanel.prototype._updateSidebarWidth): Update the
   18807         sidebar width based on the passed in value.
   18808         (WebInspector.ProfileSidebarTreeElement): Subclass WebInspector.SidebarTreeElement.
   18809         (WebInspector.ProfileSidebarTreeElement.prototype.onselect): Call ProfilesPanel.showProfile.
   18810         (WebInspector.ProfileSidebarTreeElement.prototype.get mainTitle): Return profile.title.
   18811         (WebInspector.ProfileSidebarTreeElement.prototype.set mainTitle): Do nothing.
   18812         (WebInspector.ProfileSidebarTreeElement.prototype.get subtitle): Ditto.
   18813         (WebInspector.ProfileSidebarTreeElement.prototype.set subtitle): Ditto.
   18814         * page/inspector/inspector.css: New styles for the profile sidebar
   18815         item and profile data grid columns.
   18816         * page/inspector/inspector.js:
   18817         * page/inspector/utilities.js:
   18818         (Number.secondsToString): Added a higherResolution argument
   18819         that returns fractional milliseconds.
   18820 
   18821 2008-05-20  chris fleizach  <cfleizach (a] apple.com>
   18822 
   18823         Reviewed by Darin Adler, Alice Liu
   18824 
   18825         <rdar://problem/3438014> Might need accessibility solution for context menus in web pages
   18826         <rdar://problem/5060458> Elements without AXActions should not return kAXErrorFailure
   18827 
   18828         * page/AccessibilityObject.cpp:
   18829         (WebCore::AccessibilityObject::clickPoint):
   18830         * page/AccessibilityObject.h:
   18831         * page/mac/AccessibilityObjectWrapper.mm:
   18832         (-[AccessibilityObjectWrapper accessibilityActionNames]):
   18833         (-[AccessibilityObjectWrapper accessibilityPerformPressAction]):
   18834         (-[AccessibilityObjectWrapper accessibilityPerformShowMenuAction]):
   18835         (-[AccessibilityObjectWrapper accessibilityShowContextMenu]):
   18836         (-[AccessibilityObjectWrapper accessibilityPerformAction:]):
   18837 
   18838 2008-05-20  Timothy Hatcher  <timothy (a] apple.com>
   18839 
   18840         Expose the ProfileNode functionName sorting functions on
   18841         JavaScriptProfileNode.
   18842 
   18843         Reviewed by Kevin McCullough.
   18844 
   18845         * page/JavaScriptProfileNode.cpp:
   18846         (WebCore::sortFunctionNameDescending): Call ProfileNode.
   18847         (WebCore::sortFunctionNameAscending): Ditto.
   18848         (WebCore::ProfileNodeClass): Add static functions.
   18849 
   18850 2008-05-20  Darin Adler  <darin (a] apple.com>
   18851 
   18852         Reviewed by Mitz.
   18853 
   18854         - a first small step of CSS DOM refactoring -- the eventual goal is to
   18855           reduce StyleBase and possibly eliminate it, since it has multiple
   18856           purposes and unneccessarily ties many classes together
   18857 
   18858         * css/CSSCursorImageValue.cpp:
   18859         (WebCore::isSVGCursorIdentifier): Mark static so it has internal linkage.
   18860         (WebCore::resourceReferencedByCursorElement): Ditto.
   18861         (WebCore::CSSCursorImageValue::CSSCursorImageValue): Removed unused style
   18862         argument.
   18863         (WebCore::CSSCursorImageValue::updateIfSVGCursorIsUsed): Removed code to
   18864         check if X and Y changed before changing them -- there's no reason to do
   18865         that. Removed code that depended on the internals of CSSImageValue. The
   18866         new code uses only protected functions rather than going right at the
   18867         fields and uing internal knowledge of the base class.
   18868         * css/CSSCursorImageValue.h: Added a create function, made constructor
   18869         private, removed unused style argument.
   18870 
   18871         * css/CSSImageValue.cpp:
   18872         (WebCore::CSSImageValue::CSSImageValue): Removed unused style argument.
   18873         (WebCore::CSSImageValue::cachedImageURL): Added. A protected function for
   18874         use by CSSCursorImageValue that gives the URL.
   18875         (WebCore::CSSImageValue::clearCachedImage): Added. A protected function for
   18876         use by CSSCursorImageValue that clears the CachedImage.
   18877         * css/CSSImageValue.h: Added create functions, made constructors protected
   18878         and private, removed unused style argument, made data members private, added
   18879         some protected functions for use by CSSCursorImageValue.
   18880 
   18881         * css/CSSImportRule.cpp:
   18882         (WebCore::CSSImportRule::setCSSStyleSheet): Changed to call checkLoaded on
   18883         the parent. This is part of preparation to move the checkLoaded function from
   18884         StyleBase to StyleSheet.
   18885         (WebCore::CSSImportRule::insertedIntoParent): Changed code to check the URL
   18886         of the style sheet to use the href function of the style sheet rather than
   18887         the baseURL function. This eliminates an O(n^2) algorithm here and reduces
   18888         the use of baseURL, part of preparation to move it from StyleBase
   18889         to CSSStyleSheet.
   18890 
   18891         * css/CSSMutableStyleDeclaration.cpp:
   18892         (WebCore::CSSMutableStyleDeclaration::setImageProperty): Changed to use create
   18893         function instead of a direct call to new for the CSSImageValue classes.
   18894         * css/CSSParser.cpp:
   18895         (WebCore::CSSParser::parseValue): Ditto.
   18896         (WebCore::CSSParser::parseContent): Ditto.
   18897         (WebCore::CSSParser::parseFillImage): Ditto.
   18898         (WebCore::CSSParser::parseBorderImage): Ditto.
   18899 
   18900         * css/CSSStyleSelector.cpp: Removed unneeded include of CSSImageValue.h.
   18901         * rendering/style/RenderStyle.h: Removed unneeded include of
   18902         CSSCursorImageValue.h, which was causing us to rebuild the world way too often.
   18903 
   18904         * xml/XSLImportRule.cpp:
   18905         (WebCore::XSLImportRule::setXSLStyleSheet): See change to CSSImportRule above.
   18906         (WebCore::XSLImportRule::loadSheet): Ditto.
   18907 
   18908 2008-05-20  Kevin McCullough  <kmccullough (a] apple.com>
   18909 
   18910         Rubber stamped by Adam.
   18911 
   18912         -Minor fix. Should not use a reference since the original may disappear.
   18913 
   18914         * page/Console.cpp:
   18915         (WebCore::Console::profile):
   18916 
   18917 2008-05-20  Kevin Ollivier  <kevino (a] theolliviers.com>
   18918 
   18919         wx build fix. userAgent should return a value.
   18920 
   18921         * plugins/wx/PluginViewWx.cpp:
   18922         (WebCore::PluginView::userAgent):
   18923 
   18924 2008-05-19  Timothy Hatcher  <timothy (a] apple.com>
   18925 
   18926         Expose the ProfileNode sorting functions on JavaScriptProfileNode.
   18927 
   18928         Reviewed by Kevin McCullough.
   18929 
   18930         * page/JavaScriptProfileNode.cpp:
   18931         (WebCore::sortTotalTimeDescending): Call ProfileNode.
   18932         (WebCore::sortTotalTimeAscending): Ditto.
   18933         (WebCore::sortSelfTimeDescending): Ditto.
   18934         (WebCore::sortSelfTimeAscending): Ditto.
   18935         (WebCore::sortCallsDescending): Ditto.
   18936         (WebCore::sortCallsAscending): Ditto.
   18937         (WebCore::ProfileNodeClass): Add static functions.
   18938 
   18939 2008-05-19  Timothy Hatcher  <timothy (a] apple.com>
   18940 
   18941         * page/InspectorController.cpp: Change the include for
   18942         JavaScriptProfile.h to sue double quotes instead of backets.
   18943 
   18944 2008-05-19  Timothy Hatcher  <timothy (a] apple.com>
   18945 
   18946         Adds a DataGrid object that is used for multi-column data
   18947         and can contain hierarchical content with disclosure arrows.
   18948         A lot of DataGrid was copied from treeoutline.js. This change
   18949         makes the database views use the DataGrid. It will later be
   18950         used by the ProfileView.
   18951 
   18952         Reviewed by Adam Roben.
   18953 
   18954         * page/inspector/DataGrid.js: Added. Most copied from treeoutline.js
   18955         and modified to work with table elements.
   18956         * page/inspector/DatabaseQueryView.js:
   18957         (WebInspector.DatabaseQueryView.prototype._queryFinished):
   18958         Call DatabasesPanel.dataGridForResult and adds the inline style to
   18959         the DataGrid element.
   18960         * page/inspector/DatabaseTableView.js:
   18961         (WebInspector.DatabaseTableView.prototype._queryFinished):
   18962         Call DatabasesPanel.dataGridForResult.
   18963         * page/inspector/DatabasesPanel.js:
   18964         (WebInspector.DatabasesPanel.prototype._tableForResult): Removed.
   18965         (WebInspector.DatabasesPanel.prototype.dataGridForResult): Added.
   18966         Similar to the previous _tableForResult function, but makes a DataGrid.
   18967         * page/inspector/inspector.css: Changes to the data-grid
   18968         style rules.
   18969         * WebCore.vcproj/WebCore.vcproj: Add DataGrid.js.
   18970         * page/inspector/WebKit.qrc: Ditto.
   18971         * page/inspector/inspector.html: Ditto.
   18972 
   18973 2008-05-19  Kevin McCullough  <kmccullough (a] apple.com>
   18974 
   18975         Reviewed by Adam.
   18976 
   18977         -build fix.
   18978 
   18979         * bindings/js/JSConsoleCustom.cpp:
   18980         (WebCore::JSConsole::profile):
   18981         * page/Console.cpp:
   18982         (WebCore::Console::profile):
   18983         * page/Console.h:
   18984         * page/Console.idl:
   18985 
   18986 2008-05-19  Alp Toker  <alp (a] nuanti.com>
   18987 
   18988         Reviewed by Maciej.
   18989 
   18990         GTK+/soup fixes:
   18991 
   18992         Remove the fragment part of the URL since the file backend doesn't
   18993         deal with it.
   18994 
   18995         Fix a typo in the cleanup function.
   18996 
   18997         * platform/network/soup/ResourceHandleSoup.cpp:
   18998         (WebCore::cleanupGioOperation):
   18999         (WebCore::ResourceHandle::startGio):
   19000 
   19001 2008-05-19  Kevin McCullough  <kmccullough (a] apple.com>
   19002 
   19003         Reviewed by Adam.
   19004 
   19005         <rdar://problem/5770054> JavaScript profiler (10928)
   19006         - Send the executing context to the profiler so it can attribute time
   19007         correctly to parent functions when calling profile() and profileEnd()
   19008         while nested.
   19009 
   19010         * page/Console.cpp:
   19011         (WebCore::Console::profile):
   19012         (WebCore::Console::profileEnd):
   19013         * page/Console.h:
   19014 
   19015 2008-05-19  Alp Toker  <alp (a] nuanti.com>
   19016 
   19017         Reviewed by Anders and Beth.
   19018 
   19019         http://bugs.webkit.org/show_bug.cgi?id=16495
   19020         [GTK] Accessibility support with ATK/AT-SPI
   19021 
   19022         Initial ATK/AT-SPI accessibility support for the GTK+ port.
   19023 
   19024         * GNUmakefile.am:
   19025         * page/AccessibilityObject.cpp:
   19026         (WebCore::AccessibilityObject::AccessibilityObject):
   19027         (WebCore::AccessibilityObject::detach):
   19028         * page/AccessibilityObject.h:
   19029         * page/gtk/AXObjectCacheAtk.cpp: Added.
   19030         (WebCore::AXObjectCache::detachWrapper):
   19031         (WebCore::AXObjectCache::attachWrapper):
   19032         (WebCore::AXObjectCache::postNotification):
   19033         (WebCore::AXObjectCache::postNotificationToElement):
   19034         (WebCore::AXObjectCache::handleFocusedUIElementChanged):
   19035         * page/gtk/AccessibilityObjectWrapperAtk.cpp: Added.
   19036         (WebCore::AccessibilityObject::wrapper):
   19037         (WebCore::AccessibilityObject::setWrapper):
   19038         * page/gtk/AccessibilityObjectWrapperAtk.h: Added.
   19039 
   19040 2008-05-19  Anders Carlsson  <andersca (a] apple.com>
   19041 
   19042         Reviewed by Adam.
   19043 
   19044         <rdar://problem/5946454>
   19045         Support navigator.onLine from HTML5.
   19046 
   19047         Add Windows NetworkStateNotifier implementation using the IP Helper API.
   19048 
   19049         * WebCore.vcproj/WebCore.vcproj:
   19050         * platform/network/NetworkStateNotifier.h:
   19051         (WebCore::updateState):
   19052         * platform/network/win/NetworkStateNotifierWin.cpp: Added.
   19053         (WebCore::NetworkStateNotifier::updateState):
   19054         (WebCore::NetworkStateNotifier::addressChanged):
   19055         (WebCore::NetworkStateNotifier::callAddressChanged):
   19056         (WebCore::NetworkStateNotifier::addrChangeCallback):
   19057         (WebCore::NetworkStateNotifier::registerForAddressChange):
   19058         (WebCore::NetworkStateNotifier::NetworkStateNotifier):
   19059 
   19060 2008-05-19  Steve Falkenburg  <sfalken (a] apple.com>
   19061 
   19062         Disable C4273, C4565 for CSSGrammar.cpp, XPathGrammar.cpp to fix build.
   19063         
   19064         Reviewed by Adam Roben.
   19065 
   19066         * WebCore.vcproj/WebCore.vcproj:
   19067 
   19068 2008-05-19  Adam Roben  <aroben (a] apple.com>
   19069 
   19070         Fix Bug 19065: Resources with a space in their URL don't get
   19071         error/warning bubbles
   19072 
   19073         <https://bugs.webkit.org/show_bug.cgi?id=19065>
   19074 
   19075         Reviewed by Dan Bernstein.
   19076 
   19077         Test: manual-tests/inspector/errors-with-space in-url.html
   19078 
   19079         * manual-tests/inspector/errors-with-space in-url.html: Added.
   19080         * page/Console.cpp:
   19081         (WebCore::Console::error):
   19082         (WebCore::Console::info):
   19083         (WebCore::Console::log):
   19084         (WebCore::Console::warn):
   19085         Pass the raw URL to the Inspector, not the pretty URL, to match the
   19086         URL that was used when initially telling the Inspector about this
   19087         resource. We continue to pass the pretty URL to the ChromeClient for
   19088         backwards compatibility.
   19089 
   19090 2008-05-19  Stephanie Lewis  <slewis (a] apple.com>
   19091 
   19092         Reviewed by Darin.
   19093 
   19094         more fast teardown performance work, WebCore plumbing
   19095 
   19096         * page/Chrome.cpp:
   19097         (WebCore::Chrome::disableSuddenTermination):
   19098         (WebCore::Chrome::enableSuddenTermination):
   19099         (WebCore::ChromeClient::disableSuddenTermination):
   19100         (WebCore::ChromeClient::enableSuddenTermination):
   19101         * page/Chrome.h:
   19102         * page/ChromeClient.h:
   19103         * page/Page.cpp:
   19104         (WebCore::Page::changePendingUnloadEventCount):
   19105         (WebCore::Page::changePendingBeforeUnloadEventCount):
   19106 
   19107 2008-05-19  Kuchhal  <kuchal (a] yahoo.com>
   19108 
   19109         Reviewed by Justin.
   19110 
   19111         <rdar://problem/5863412> Crash when Ctrl C is pressed after a series of specific mouse events (18506)
   19112 
   19113         * editing/markup.cpp:
   19114         (WebCore::createMarkup): Null check.
   19115 
   19116 2008-05-19  Chris Fleizach  <cfleizach (a] apple.com>
   19117 
   19118         Reviewed by Beth Dakin.
   19119 
   19120         <rdar://problem/5912195> CrashTracer: [USER] 1 crash in Mail at -[AccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]
   19121 
   19122         * page/mac/AccessibilityObjectWrapper.mm:
   19123         (visiblePositionForTextMarker):
   19124 
   19125 2008-05-19  Ada Chan  <adachan (a] apple.com>
   19126 
   19127         Added CookieStorageWin.h/cpp, introducing methods to get/set the current CFHTTPCookieStorageRef.
   19128         When setting cookies-related attributes in CFURLRequest, make sure we get them from the
   19129         current CFHTTPCookieStorageRef.  Also, set the cookie storage in CFURLRequest.
   19130 
   19131         Reviewed by Steve Falkenburg.
   19132 
   19133         * WebCore.vcproj/WebCore.vcproj:
   19134         * platform/network/cf/ResourceHandleCFNet.cpp:
   19135         (WebCore::makeFinalRequest):
   19136         * platform/network/cf/ResourceRequestCFNet.cpp:
   19137         (WebCore::ResourceRequest::doUpdatePlatformRequest):
   19138         * platform/network/win/CookieJarCFNetWin.cpp:
   19139         (WebCore::setCookies):
   19140         (WebCore::cookies):
   19141         (WebCore::cookiesEnabled):
   19142         * platform/network/win/CookieStorageWin.cpp: Added.
   19143         (WebCore::currentCookieStorage):
   19144         (WebCore::setCurrentCookieStorage):
   19145         * platform/network/win/CookieStorageWin.h: Added.
   19146 
   19147 2008-05-19  Alexey Proskuryakov  <ap (a] webkit.org>
   19148 
   19149         Reviewed by Darin.
   19150 
   19151         http://bugs.webkit.org/show_bug.cgi?id=18308
   19152         SVG Encoding error with fill attribute
   19153 
   19154         This is caused by problems with data: URL loading. Besides what is fixed by this patch,
   19155         I filed <rdar://problem/5845875> for CFNetwork.
   19156 
   19157         While at it, fixed a related javascript: URL issue.
   19158 
   19159         Tests: fast/loader/data-url-encoding-html.html
   19160                fast/loader/data-url-encoding-svg.html
   19161                fast/loader/javascript-url-encoding.html
   19162 
   19163         * platform/KURL.cpp:
   19164         (WebCore::KURL::parse): Fix a FIXME, use UTF-8 instead of dropping high bytes. This fixes
   19165         javascript: URL handling.
   19166         (WebCore::encodeRelativeString): Like mailto: URLs, data: ones are all UTF-8. Restructured
   19167         the code to not search for "#" if both parts are to be encoded as UTF-8 anyway.
   19168 
   19169 2008-05-19  Alexey Proskuryakov  <ap (a] webkit.org>
   19170 
   19171         Reviewed by Darin.
   19172 
   19173         https://bugs.webkit.org/show_bug.cgi?id=18421
   19174         <rdar://problem/5857369> XMLHttpRequest does not properly encode & and < in outgoing messages
   19175 
   19176         Test: http/tests/xmlhttprequest/serialize-document.html
   19177 
   19178         * bindings/js/JSXMLHttpRequestCustom.cpp:
   19179         (WebCore::JSXMLHttpRequest::send): Use createMarkup() instead of Document::toString().
   19180 
   19181         * dom/Attr.cpp:
   19182         * dom/Attr.h:
   19183         * dom/Document.cpp:
   19184         * dom/Document.h:
   19185         * dom/DocumentFragment.cpp:
   19186         * dom/DocumentFragment.h:
   19187         * dom/Element.cpp:
   19188         * dom/Element.h:
   19189         * dom/Entity.cpp:
   19190         * dom/Entity.h:
   19191         * dom/EntityReference.cpp:
   19192         * dom/EntityReference.h:
   19193         * dom/Node.h:
   19194         * dom/Text.cpp:
   19195         * dom/Text.h:
   19196         * html/HTMLElement.cpp:
   19197         * html/HTMLElement.h:
   19198         Removed most Node::toString() methods, which were massively wrong, and only used for
   19199         XMLHttpRequest::send(). The remanining ones are still used in markup.cpp, but should probably
   19200         be folded into it for consistency.
   19201 
   19202 2008-05-19  Anders Carlsson  <andersca (a] apple.com>
   19203 
   19204         Fix Windows build.
   19205         
   19206         * plugins/win/PluginViewWin.cpp:
   19207         (WebCore::PluginView::userAgentStatic):
   19208         (WebCore::PluginView::getValueStatic):
   19209         (WebCore::PluginView::getValue):
   19210 
   19211 2008-05-19  Chris Fleizach  <cfleizach (a] apple.com>
   19212 
   19213         Reviewed by Darin Adler.
   19214 
   19215         <rdar://problem/5935694> AX: crash in text marker range
   19216 
   19217         * page/mac/AccessibilityObjectWrapper.mm:
   19218         (textMarkerRangeFromMarkers):
   19219 
   19220 2008-05-19  Darin Adler  <darin (a] apple.com>
   19221 
   19222         - fix WebKit build
   19223 
   19224         * WebCore.xcodeproj/project.pbxproj: Make CSSReflectionDirection.h "private" instead of "project".
   19225 
   19226 2008-05-19  chris fleizach  <cfleizach (a] apple.com>
   19227 
   19228         Reviewed by Darin Adler
   19229 
   19230         <rdar://problem/5700830> VO: VoiceOver should fall back to title attr if form element is not labeled
   19231 
   19232         * page/AccessibilityRenderObject.cpp:
   19233         (WebCore::AccessibilityRenderObject::title):
   19234 
   19235 2008-05-19  Darin Adler  <darin (a] apple.com>
   19236 
   19237         Reviewed by Mitz.
   19238 
   19239         - tweak CSSReflectValue, possibly fixing the leaks seen on the buildbot
   19240 
   19241         * WebCore.vcproj/WebCore.vcproj: Added CSSReflectionDirection.h. 
   19242         * WebCore.xcodeproj/project.pbxproj: Ditto.
   19243         * css/CSSReflectionDirection.h: Added.
   19244 
   19245         * css/CSSComputedStyleDeclaration.cpp:
   19246         (WebCore::valueForReflection): Changed to use CSSReflectValue::create.
   19247         * css/CSSParser.cpp:
   19248         (WebCore::CSSParser::parseReflect): Ditto.
   19249 
   19250         * css/CSSReflectValue.h: Added a create function. Got rid of the setter
   19251         functions, which had const PassRefPtr& arguments -- those probably caused
   19252         the leaks although I'm not exactly sure why. Made the contructor and all
   19253         the data members private.
   19254 
   19255         * rendering/style/RenderStyle.h: Changed to include CSSReflectionDirection.h
   19256         instead of CSSReflectValue.h so we can tweak CSSReflectValue without
   19257         recompiling the world.
   19258 
   19259 2008-05-19  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   19260 
   19261         Rubber Stamped by Simon.
   19262 
   19263         Enforce the WebKit Coding Style.
   19264 
   19265         * plugins/PluginView.cpp:
   19266         (WebCore::PluginView::load):
   19267         (WebCore::PluginView::setValue):
   19268         * plugins/gtk/PluginViewGtk.cpp:
   19269         (WebCore::PluginView::setFocus):
   19270         (WebCore::PluginView::show):
   19271         (WebCore::PluginView::hide):
   19272         (WebCore::PluginView::attachToWindow):
   19273         (WebCore::PluginView::detachFromWindow):
   19274         (WebCore::PluginView::getValueStatic):
   19275         (WebCore::PluginView::getValue):
   19276         * plugins/qt/PluginViewQt.cpp:
   19277         (WebCore::PluginView::updateWindow):
   19278         (WebCore::PluginView::detachFromWindow):
   19279         (WebCore::PluginView::handlePostReadFile):
   19280         (WebCore::PluginView::getValueStatic):
   19281         (WebCore::PluginView::getValue):
   19282 
   19283 2008-05-14  Marc Ordinas i Llopis  <marc.ordinasillopis (a] collabora.co.uk>
   19284 
   19285         Reviewed by Holger.
   19286 
   19287         https://bugs.webkit.org/show_bug.cgi?id=18882
   19288         https://bugs.webkit.org/show_bug.cgi?id=18892
   19289         Based also on work by Chris Lord.
   19290         
   19291         Provides support for NPAPI plugins that pass NULL as their instance
   19292         info. There are two kinds:
   19293         - Some call NPN_UserAgent and NPN_GetValue before a PluginView has
   19294         been created. For those we provide static versions of those functions.
   19295         - Others call NPN_* functions with a NULL instance inside NPP_*
   19296         calls, for those we've added extra currentPluginView guards.
   19297 
   19298         * plugins/PluginView.cpp: Add additional currentPluginView guards and
   19299         some small style changes.
   19300         (WebCore::PluginView::start):
   19301         (WebCore::PluginView::performRequest):
   19302         (WebCore::PluginView::bindingInstance):
   19303         (WebCore::PluginView::handlePost):
   19304         * plugins/PluginView.h: Added static versions of NPN_UserAgent and
   19305         NPN_GetValue.
   19306         * plugins/gtk/PluginViewGtk.cpp: Add additional currentPluginView
   19307         guards and some small style changes.
   19308         (WebCore::PluginView::setNPWindowRect):
   19309         (WebCore::PluginView::stop):
   19310         (WebCore::PluginView::userAgentStatic): Added to deal with plugins
   19311         that query this before having a PluginView.
   19312         (WebCore::PluginView::getValueStatic): Added to deal with plugins
   19313         that call this before we have created a PluginView.
   19314         (WebCore::PluginView::getValue): Moved some code to getValueStatic.
   19315         (WebCore::PluginView::init):
   19316         * plugins/npapi.cpp: Call PluginView::userAgentStatic
   19317         and PluginView::getValueStatic if no PluginView is
   19318         present.
   19319         (NPN_UserAgent):
   19320         (NPN_GetValue):
   19321         * plugins/qt/PluginPackageQt.cpp:
   19322         (WebCore::PluginPackage::fetchInfo): Corrected split args because ignoring
   19323         empty entries crashed.
   19324         (WebCore::PluginPackage::load): Resolve all symbols when loading plugins
   19325         to protect against XPCOM dependencies.
   19326         * plugins/qt/PluginViewQt.cpp: Add additional currentPluginView guards and
   19327         some small style changes.
   19328         (WebCore::PluginView::updateWindow):
   19329         (WebCore::PluginView::setNPWindowRect):
   19330         (WebCore::PluginView::stop):
   19331         (WebCore::PluginView::userAgentStatic): Added to deal with plugins
   19332         that query this before having a PluginView.
   19333         (WebCore::PluginView::handlePostReadFile):
   19334         (WebCore::PluginView::getValueStatic): Added to deal with plugins
   19335         that call this before we have created a PluginView.
   19336         (WebCore::PluginView::getValue): Moved some code to getValueStatic.
   19337         (WebCore::PluginView::init): m_needsXEmbed init was moved to constructor.
   19338 
   19339 2008-05-19  Alp Toker  <alp (a] nuanti.com>
   19340 
   19341         GTK+ build fix on Mac. Conditionalize XP_UNIX use.
   19342 
   19343         * plugins/gtk/PluginPackageGtk.cpp:
   19344         (WebCore::PluginPackage::fetchInfo):
   19345         (WebCore::PluginPackage::load):
   19346         * plugins/gtk/PluginViewGtk.cpp:
   19347 
   19348 2008-05-18  Chris Fleizach  <cfleizach (a] apple.com>
   19349 
   19350         Reviewed by Darin Adler
   19351 
   19352         <rdar://problem/5942076> WebKit can no longer find URL links with VoiceOVer-U command (19100)
   19353 
   19354         * page/AccessibilityObject.h:
   19355 
   19356 2008-05-18  Darin Adler  <darin (a] apple.com>
   19357 
   19358         Reviewed by Sam.
   19359 
   19360         - fix <rdar://problem/5943569> crash due to stale ownerNode pointer
   19361 
   19362         Test: fast/dom/StyleSheet/ownerNode-lifetime.html
   19363 
   19364         * bindings/js/JSStyleSheetCustom.cpp:
   19365         (WebCore::JSStyleSheet::mark): Added code to mark ownerNode. Includes a comment about how
   19366         it would be even better to solve this in the DOM rather than just in the JavaScript binding.
   19367 
   19368         * css/StyleSheet.idl: Added CustomMarkFunction attribute.
   19369 
   19370 2008-05-18  Brady Eidson  <beidson (a] apple.com>
   19371 
   19372         Reviewed by Sam Weinig
   19373 
   19374         Fix for https://bugs.webkit.org/show_bug.cgi?id=19111
   19375         Allow `delete storage.itemName` syntax as an alias for `storage.removeItem("itemName")`
   19376 
   19377         Tests: storage/domstorage/localstorage/delete-removal.html
   19378                storage/domstorage/sessionstorage/delete-removal.html
   19379 
   19380         * bindings/js/JSStorageCustom.cpp:
   19381         (WebCore::JSStorage::deleteProperty): Only do the delete for non-built in properties
   19382         * storage/Storage.idl:
   19383 
   19384 2008-05-17  Sam Weinig  <sam (a] webkit.org>
   19385 
   19386         Reviewed by Mark Rowe.
   19387 
   19388         Re-factor core setRequestHeader logic into setRequestHeaderInternal.
   19389 
   19390         * xml/XMLHttpRequest.cpp:
   19391         (WebCore::XMLHttpRequest::sameOriginRequest):
   19392         (WebCore::XMLHttpRequest::setRequestHeader):
   19393         (WebCore::XMLHttpRequest::setRequestHeaderInternal):
   19394         * xml/XMLHttpRequest.h:
   19395 
   19396 2008-05-17  Sam Weinig  <sam (a] webkit.org>
   19397 
   19398         Reviewed by Mark Rowe.
   19399 
   19400         Differentiate between cancelation errors and generic network error in XHR.
   19401 
   19402         * loader/FrameLoader.cpp:
   19403         (WebCore::FrameLoader::requestFromDelegate):
   19404         (WebCore::FrameLoader::cancelledError):
   19405         * platform/network/ResourceErrorBase.h:
   19406         (WebCore::ResourceErrorBase::setIsCancelation):
   19407         (WebCore::ResourceErrorBase::isCancelation):
   19408         (WebCore::ResourceErrorBase::ResourceErrorBase):
   19409         Add state that differentiates between errors created by cancelation and those made
   19410         by all other generic network errors as this differentiation is needed by some specs.
   19411 
   19412         * xml/XMLHttpRequest.cpp:
   19413         (WebCore::XMLHttpRequest::open):
   19414         (WebCore::XMLHttpRequest::loadRequestSynchronously):
   19415         (WebCore::XMLHttpRequest::clearResponseEntityBody):
   19416         (WebCore::XMLHttpRequest::genericError):
   19417         (WebCore::XMLHttpRequest::networkError):
   19418         (WebCore::XMLHttpRequest::abortError):
   19419         (WebCore::XMLHttpRequest::didFail):
   19420         * xml/XMLHttpRequest.h:
   19421         * xml/XMLHttpRequestException.h:
   19422         (WebCore::XMLHttpRequestException::):
   19423         * xml/XMLHttpRequestException.idl:
   19424         Add ABORT_ERR. This error cannot be raised with the current WebKit architecture
   19425         as it requires the ability to cancel a synchronous XHR, which we cannot currently
   19426         do.  It may be possible in the future though.
   19427 
   19428 2008-05-17  Mark Rowe  <mrowe (a] apple.com>
   19429 
   19430         Reviewed by Sam Weinig.
   19431 
   19432         Including wtf/Platform.h or using any of the macros it defines in headers that may be
   19433         included from outside of the WebKit project causes any project using those headers to
   19434         fail to build.
   19435 
   19436         * page/mac/WebDashboardRegion.h:
   19437 
   19438 2008-05-17  Sam Weinig  <sam (a] webkit.org>
   19439 
   19440         Reviewed by Brady Eidson.
   19441 
   19442         Re-factor send() logic a little to make adding cross-site requests easier.
   19443 
   19444         * xml/XMLHttpRequest.cpp:
   19445         (WebCore::XMLHttpRequest::send):
   19446         (WebCore::XMLHttpRequest::sameOriginRequest):
   19447         (WebCore::XMLHttpRequest::loadRequestSynchronously):
   19448         (WebCore::XMLHttpRequest::loadRequestAsynchronously):
   19449         * xml/XMLHttpRequest.h:
   19450 
   19451 2008-05-16  Anders Carlsson  <andersca (a] apple.com>
   19452 
   19453         Reviewed by Mitz.
   19454 
   19455         Copy appcache headers.
   19456         
   19457         * WebCore.vcproj/WebCore.vcproj:
   19458 
   19459 2008-05-16  Antti Koivisto  <antti (a] apple.com>
   19460 
   19461         Reviewed by Anders.
   19462         
   19463         Fix <rdar://problem/5934400> 
   19464         Movie controller does not update on first load of http://www.apple.com/getamac/ads/
   19465         
   19466         The issue is that we execute scripts while there are still pending stylesheet loads.
   19467         If the script depends on a stylesheet having been applied it may fail.
   19468         
   19469         This will make external script execution block on external stylesheet loads. A full
   19470         fix (as discussed with Hyatt) will also need to block inline script execution.
   19471 
   19472         Test: http/tests/local/stylesheet-and-script-load-order-http.html
   19473 
   19474         * html/HTMLTokenizer.cpp:
   19475         (WebCore::HTMLTokenizer::notifyFinished):
   19476 
   19477 2008-05-16  chris fleizach  <cfleizach (a] apple.com>
   19478 
   19479         Reviewed by Jon Honeycutt
   19480 
   19481         <rdar://problem/5582483> Mail compose area needs to allow AXValue to be settable
   19482 
   19483         * page/AccessibilityRenderObject.cpp:
   19484         (WebCore::AccessibilityRenderObject::isReadOnly):
   19485         (WebCore::AccessibilityRenderObject::canSetValueAttribute):
   19486 
   19487 2008-05-16  Stephanie Lewis  <slewis (a] apple.com>
   19488 
   19489         Reviewed by Maciej.
   19490 
   19491         track onbeforeunlaod event counts. Pretty much identical to unload event tracking.
   19492         Also rename methods from onunload tracking to be more clear.
   19493 
   19494         increment/decrement event counts when onunload and onbeforeunload events are added/removed
   19495         * dom/Document.cpp:
   19496         (WebCore::Document::removeHTMLWindowEventListener):
   19497         (WebCore::Document::addWindowEventListener):
   19498         (WebCore::Document::removeWindowEventListener):
   19499         (WebCore::Document::addPendingFrameUnloadEventCount):
   19500         (WebCore::Document::removePendingFrameUnloadEventCount):
   19501         (WebCore::Document::addPendingFrameBeforeUnloadEventCount):
   19502         (WebCore::Document::removePendingFrameBeforeUnloadEventCount):
   19503         * dom/Document.h:
   19504         
   19505         clear onunload count after unload events are dispatched
   19506         * loader/FrameLoader.cpp:
   19507         (WebCore::FrameLoader::stopLoading):
   19508 
   19509         track onunload and onbeforeunload event counts for each frame
   19510         * page/EventHandler.cpp:
   19511         (WebCore::EventHandler::EventHandler):
   19512         (WebCore::EventHandler::addPendingFrameUnloadEventCount):
   19513         (WebCore::EventHandler::removePendingFrameUnloadEventCount):
   19514         (WebCore::EventHandler::clearPendingFrameUnloadEventCount):
   19515         (WebCore::EventHandler::pendingFrameBeforeUnloadEventCount):
   19516         (WebCore::EventHandler::addPendingFrameBeforeUnloadEventCount):
   19517         (WebCore::EventHandler::removePendingFrameBeforeUnloadEventCount):
   19518         (WebCore::EventHandler::clearPendingFrameBeforeUnloadEventCount):
   19519         * page/EventHandler.h:
   19520         
   19521         clear unbeforeunload count after unbeforeunload events are detached
   19522         * page/Frame.cpp:
   19523         (WebCore::Frame::shouldClose):
   19524 
   19525         track total event count at page level
   19526         * page/Page.cpp:
   19527         (WebCore::Page::Page):
   19528         (WebCore::Page::changePendingUnloadEventCount):
   19529         (WebCore::Page::pendingBeforeUnloadEventCount):
   19530         (WebCore::Page::changePendingBeforeUnloadEventCount):
   19531         * page/Page.h:
   19532 
   19533 2008-05-16  Anders Carlsson  <andersca (a] apple.com>
   19534 
   19535         Reviewed by Mitz.
   19536 
   19537         <rdar://problem/5787788>
   19538         REGRESSION: fast/loader/xmlhttprequest-missing-file-exception.html fails on Windows.
   19539         
   19540         Replicate the Mac behavior when a sync load fails.
   19541         
   19542         * platform/network/cf/ResourceHandleCFNet.cpp:
   19543         (WebCore::ResourceHandle::loadResourceSynchronously):
   19544 
   19545 2008-05-16  Anders Carlsson  <andersca (a] apple.com>
   19546 
   19547         Reviewed by Brady.
   19548 
   19549         Parse and set the headers on the response.
   19550 
   19551         * loader/appcache/ApplicationCacheStorage.cpp:
   19552         (WebCore::ApplicationCacheStorage::store):
   19553         (WebCore::parseHeader):
   19554         (WebCore::parseHeaders):
   19555         (WebCore::ApplicationCacheStorage::loadCache):
   19556 
   19557 2008-05-16  Timothy Hatcher  <timothy (a] apple.com>
   19558 
   19559         Adds the "this" object to the Local scope section of the
   19560         Scope Variables pane.
   19561 
   19562         <rdar://problem/5774773> Web Inspector doesn't show the "this"
   19563         object in its variables list (10438)
   19564 
   19565         Reviewed by Oliver Hunt.
   19566 
   19567         * bindings/js/JSJavaScriptCallFrameCustom.cpp:
   19568         (WebCore::JSJavaScriptCallFrame::thisObject): Returns the thisObject
   19569         of the JavaScriptCallFrame impl. Returns jsNull if the impl is invalid.
   19570         * page/JavaScriptCallFrame.cpp:
   19571         (WebCore::JavaScriptCallFrame::thisObject): Return the thisValue from
   19572         the ExecState. Return 0 if m_exec is null.
   19573         * page/JavaScriptCallFrame.h:
   19574         * page/JavaScriptCallFrame.idl: Add thisObject.
   19575         * page/inspector/ObjectPropertiesSection.js:
   19576         (WebInspector.ObjectPropertiesSection): Adds two new arguments.
   19577         The ignoreHasOwnProperty tells the section to show all properties,
   19578         including inherited ones. And extraProperties is an object of
   19579         additional properties to show.
   19580         (WebInspector.ObjectPropertiesSection.prototype): Honor the
   19581         extraProperties and ignoreHasOwnProperty properties.
   19582         * page/inspector/ScopeChainSidebarPane.js:
   19583         (WebInspector.ScopeChainSidebarPane.prototype.update): Add a this
   19584         property to an extra object that is passed to the ObjectPropertiesSection.
   19585         Also pass true for ignoreHasOwnProperty since we want to show all properties.
   19586 
   19587 2008-05-16  Anders Carlsson  <andersca (a] apple.com>
   19588 
   19589         Reviewed by Brady.
   19590 
   19591         Add mimeType and textEncodingName to the resource table.
   19592         
   19593         * loader/appcache/ApplicationCacheStorage.cpp:
   19594         (WebCore::ApplicationCacheStorage::openDatabase):
   19595         (WebCore::ApplicationCacheStorage::store):
   19596         (WebCore::ApplicationCacheStorage::loadCache):
   19597 
   19598 2008-05-16  Kevin McCullough  <kmccullough (a] apple.com>
   19599 
   19600         Reviewed by Tim.
   19601 
   19602         <rdar://problem/5770054> JavaScript profiler (10928)
   19603         Use a Vector instead of a Deque since we don't use the extra capabilities
   19604         of the Deque.
   19605 
   19606         * page/JavaScriptProfileNode.cpp:
   19607         (WebCore::getChildren):
   19608         (WebCore::toJS):
   19609 
   19610 2008-05-16  Anders Carlsson  <andersca (a] apple.com>
   19611 
   19612         Reviewed by Brady.
   19613 
   19614         Add a version table to the database.
   19615 
   19616         * loader/appcache/ApplicationCacheStorage.cpp:
   19617         (WebCore::ApplicationCacheStorage::verifySchemaVersion):
   19618         (WebCore::ApplicationCacheStorage::openDatabase):
   19619         * loader/appcache/ApplicationCacheStorage.h:
   19620 
   19621 2008-05-16  Timothy Hatcher  <timothy (a] apple.com>
   19622 
   19623         Adds the ability to evaluate expressions in the local scope
   19624         of the selected call frame.
   19625 
   19626         https://bugs.webkit.org/show_bug.cgi?id=19052
   19627 
   19628         Reviewed by Geoff Garen.
   19629 
   19630         * bindings/js/JSJavaScriptCallFrameCustom.cpp:
   19631         (WebCore::JSJavaScriptCallFrame::evaluate): Pass the exception
   19632         from evaluate to the calling ExecState.
   19633         * page/JavaScriptCallFrame.cpp:
   19634         (WebCore::JavaScriptCallFrame::evaluate): Added an exception out
   19635         argument. Simplified the code by calling KJS:eval directly.
   19636         * page/JavaScriptCallFrame.h: Change evalutate to take an exception
   19637         out argument.
   19638         * page/inspector/Console.js: Check if the debugger is paused and
   19639         call evaluateInSelectedCallFrame on the Scripts panel.
   19640         * page/inspector/ScriptsPanel.js: Added a paused getter and
   19641         evaluateInSelectedCallFrame which does the evaluation and updates
   19642         the scope variables pane afterwards.
   19643 
   19644 2008-05-16  Timothy Hatcher  <timothy (a] apple.com>
   19645 
   19646         Fixed the bug where the Inspector node highlight would not show
   19647         in the correct place for nodes in frames.
   19648 
   19649         <rdar://problem/5712834> Elements in iframes are highlighted incorrectly (14408)
   19650 
   19651         Reviewed by John Sullivan.
   19652 
   19653         * page/InspectorController.cpp:
   19654         (WebCore::convertFromFrameToMainFrame): Helper function to convert
   19655         IntRect coordinates from one frame to the main frame.
   19656         (WebCore::InspectorController::drawNodeHighlight): Call the
   19657         convertFromFrameToMainFrame helper for all the rects we get from
   19658         the node since they are in the owner frame's coordinate space.
   19659 
   19660 2008-05-16  Julien Chaffraix  <jchaffraix (a] webkit.org>
   19661 
   19662         Reviewed by Eric.
   19663 
   19664         Preparatory work for bug 9191: JS*ElementWrapperFactory should be autogenerated
   19665 
   19666         Make video tags use a header guard so that make_names.pl for factory generation.
   19667 
   19668         - Add video tag guard in HTMLTagNames.in & give an extraDefines parameter to make_names.pl
   19669         when generating HTMLNames.
   19670 
   19671         - Modify the different build systems to accomodate the new parameter.
   19672 
   19673         - Small make_names.pl clean up (mainly code generated coding style issue).
   19674 
   19675         * DerivedSources.make: Add HTML_FLAGS and pass it to make_names.pl
   19676         if it is defined (similar to SVG) 
   19677 
   19678         * GNUmakefile.am: Add HTML_FEATURES & HTML_FLAGS and pass it to
   19679         make_names.pl if HTML_FLAGS is defined.
   19680 
   19681         * WebCore.pro: Pass $${DEFINES} to make_names.pl.
   19682 
   19683         * dom/make_names.pl: 
   19684         * html/HTMLElement.cpp:
   19685         (WebCore::inlineTagList): Add ENABLE(VIDEO) guard.
   19686         * html/HTMLTagNames.in: Ditto.
   19687 
   19688 2008-05-16  Anders Carlsson  <andersca (a] apple.com>
   19689 
   19690         Reviewed by Mitz.
   19691 
   19692         Fire progress events.
   19693         
   19694         * loader/appcache/ApplicationCacheGroup.cpp:
   19695         (WebCore::ApplicationCacheGroup::startLoadingEntry):
   19696 
   19697 2008-05-16  Anders Carlsson  <andersca (a] apple.com>
   19698 
   19699         Reviewed by John.
   19700 
   19701         Handle the case where the main resource load is cancelled while the cache attempt is in progress.
   19702         
   19703         * loader/DocumentLoader.cpp:
   19704         (WebCore::DocumentLoader::mainReceivedError):
   19705         Tell the group that the main resource failed to load.
   19706         
   19707         * loader/appcache/ApplicationCacheGroup.cpp:
   19708         (WebCore::ApplicationCacheGroup::failedLoadingMainResource):
   19709         Call cacheUpdateFailed.
   19710         
   19711         (WebCore::ApplicationCacheGroup::cacheUpdateFailed):
   19712         Stop loading if the update failed.
   19713         
   19714         * loader/appcache/ApplicationCacheGroup.h:
   19715 
   19716 2008-05-16  Chris Fleizach  <cfleizach (a] apple.com>
   19717 
   19718         Reviewed by Alice Liu
   19719 
   19720         <rdar://problem/5710317> REGRESSION:Selecting ranges of text should be possible using the keyboard (15310)
   19721 
   19722         * WebCore.base.exp:
   19723         * editing/VisiblePosition.cpp:
   19724         (WebCore::VisiblePosition::leftVisuallyDistinctCandidate):
   19725         (WebCore::VisiblePosition::rightVisuallyDistinctCandidate):
   19726         * page/AXObjectCache.cpp:
   19727         * page/AXObjectCache.h:
   19728         (WebCore::AXObjectCache::enableEnhancedUserInterfaceAccessibility):
   19729         (WebCore::AXObjectCache::accessibilityEnabled):
   19730         (WebCore::AXObjectCache::accessibilityEnhancedUserInterfaceEnabled):
   19731         * page/AccessibilityRenderObject.cpp:
   19732         (WebCore::AccessibilityRenderObject::visiblePositionRange):
   19733         (WebCore::AccessibilityRenderObject::doSetAXSelectedTextMarkerRange):
   19734         (WebCore::AccessibilityRenderObject::addChildren):
   19735         (WebCore::AccessibilityRenderObject::actionVerb):
   19736         * page/EventHandler.cpp:
   19737         (WebCore::EventHandler::handleKeyboardSelectionMovement):
   19738         (WebCore::EventHandler::defaultKeyboardEventHandler):
   19739         * page/EventHandler.h:
   19740 
   19741 2008-05-15  Ariya Hidayat  <ariya.hidayat (a] trolltech.com>
   19742 
   19743         Reviewed by Simon.
   19744 
   19745         Since WebKitGtk is fully using autotools now, clean-up the .pro/.pri files
   19746         from gtk-port.
   19747 
   19748         * WebCore.pro:
   19749 
   19750 2008-05-16  Simon Hausmann  <hausmann (a] webkit.org>
   19751 
   19752         Fix the Gtk build.
   19753 
   19754         * GNUmakefile.am: Added rendering/style to the include paths.
   19755 
   19756 2008-05-16  Simon Hausmann  <hausmann (a] webkit.org>
   19757 
   19758         Fix the Qt build.
   19759 
   19760         * WebCore.pro: Added rendering/style to the include paths
   19761         * page/AXObjectCache.cpp:
   19762         (WebCore::AXObjectCache::handleActiveDescendantChanged): Don't compile
   19763         this method unless a17n is enabled.
   19764 
   19765 2008-05-15  Rob Buis  <buis (a] kde.org>
   19766 
   19767         Reviewed by Dave Hyatt.
   19768 
   19769         https://bugs.webkit.org/show_bug.cgi?id=17433
   19770         getComputedStyle() -> clip returns empty string
   19771 
   19772         Make getComputedStyle return a shape value for clip
   19773         if it is set.
   19774 
   19775         Tests: fast/css/getPropertyValue-clip.html
   19776 
   19777         * css/CSSComputedStyleDeclaration.cpp:
   19778         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
   19779 
   19780 2008-05-15  Kevin Ollivier  <kevino (a] theolliviers.com>
   19781 
   19782         wx build fix. Add rendering/style to includes dir.
   19783 
   19784         * webcore-base.bkl:
   19785 
   19786 2008-05-15  Alice Liu  <alice.liu (a] apple.com>
   19787 
   19788         Reviewed by Beth Dakin.
   19789 
   19790         Fixed <rdar://problem/5882283> Implement ARIA aria-activedescendant
   19791         Also added support for aria roles listbox and option, and aria-selected, 
   19792         and aria-multiselectable for listboxes
   19793 
   19794         * dom/Element.cpp:
   19795         (WebCore::Element::attributeChanged):
   19796         * dom/Element.h:
   19797         * dom/StyledElement.cpp:
   19798         (WebCore::StyledElement::attributeChanged):
   19799         * html/HTMLAttributeNames.in:
   19800         * page/AXObjectCache.cpp:
   19801         (WebCore::AXObjectCache::handleActiveDescendantChanged):
   19802         * page/AXObjectCache.h:
   19803         (WebCore::AXObjectCache::accessibilityEnabled):
   19804         (WebCore::AXObjectCache::handleActiveDescendantChanged):
   19805         * page/AccessibilityListBox.cpp:
   19806         (WebCore::AccessibilityListBox::selectedChildren):
   19807         (WebCore::AccessibilityListBox::visibleChildren):
   19808         * page/AccessibilityListBox.h:
   19809         * page/AccessibilityListBoxOption.h:
   19810         (WebCore::AccessibilityListBoxOption::selectedChildren):
   19811         (WebCore::AccessibilityListBoxOption::visibleChildren):
   19812         * page/AccessibilityObject.cpp:
   19813         * page/AccessibilityObject.h:
   19814         (WebCore::AccessibilityObject::isListBox):
   19815         (WebCore::AccessibilityObject::shouldFocusActiveDescendant):
   19816         (WebCore::AccessibilityObject::activeDescendant):
   19817         (WebCore::AccessibilityObject::handleActiveDescendantChanged):
   19818         * page/AccessibilityRenderObject.cpp:
   19819         (WebCore::AccessibilityRenderObject::title):
   19820         (WebCore::AccessibilityRenderObject::accessibilityShouldUseUniqueId):
   19821         (WebCore::AccessibilityRenderObject::focusedUIElement):
   19822         (WebCore::AccessibilityRenderObject::shouldFocusActiveDescendant):
   19823         (WebCore::AccessibilityRenderObject::activeDescendant):
   19824         (WebCore::AccessibilityRenderObject::handleActiveDescendantChanged):
   19825         (WebCore::RoleEntry::):
   19826         (WebCore::AccessibilityRenderObject::ariaRoleAttribute):
   19827         (WebCore::AccessibilityRenderObject::ariaListboxSelectedChildren):
   19828         (WebCore::AccessibilityRenderObject::selectedChildren):
   19829         (WebCore::AccessibilityRenderObject::ariaListboxVisibleChildren):
   19830         (WebCore::AccessibilityRenderObject::visibleChildren):
   19831         * page/AccessibilityRenderObject.h:
   19832         (WebCore::AccessibilityRenderObject::isDetached):
   19833         * page/mac/AccessibilityObjectWrapper.mm:
   19834         (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
   19835 
   19836 2008-05-15  Timothy Hatcher  <timothy (a] apple.com>
   19837 
   19838         Adds an error and warning count indicator at the bottom right in the
   19839         Inspector's status bar.
   19840 
   19841         https://bugs.webkit.org/show_bug.cgi?id=18650
   19842 
   19843         Initial implementation by Adam Roben.
   19844         Reviewed by Sam Weinig.
   19845 
   19846         Test: manual-tests/inspector/error-warning-count.html
   19847 
   19848         * English.lproj/localizedStrings.js: Added new strings.
   19849         * manual-tests/inspector/error-warning-count.html: Added.
   19850         * page/inspector/Console.js:
   19851         (WebInspector.Console.prototype.show): Don't do anything if visible.
   19852         (WebInspector.Console.prototype.hide): Don't do anything if hidden.
   19853         Temporally set properties and classes to mimic the post-animation
   19854         values so panels like Elements in their updateStatusBarItems call will
   19855         size things to fit the final location. 
   19856         * page/inspector/ElementsPanel.js:
   19857         (WebInspector.ElementsPanel.prototype.updateBreadcrumbSizes):
   19858         Account for the #error-warning-count width when sizing breadcrumbs. 
   19859         * page/inspector/Resource.js:
   19860         (WebInspector.Resource.prototype.set errors): Update the global error count.
   19861         (WebInspector.Resource.prototype.set warnings): Update the global warning count.
   19862         * page/inspector/inspector.css: Make .hidden's display property
   19863         !important to ensure things really hide, and added styling for the new
   19864         #error-warning-count element.
   19865         * page/inspector/inspector.html: Added an #error-warning-count div
   19866         in the #anchored-status-bar-items div.
   19867         * page/inspector/inspector.js:
   19868         (WebInspector.get errors): Added.
   19869         (WebInspector.set errors): Added. Calls _updateErrorAndWarningCounts.
   19870         (WebInspector.get warnings): Added.
   19871         (WebInspector.set warnings): Added. Calls _updateErrorAndWarningCounts.
   19872         (WebInspector._updateErrorAndWarningCounts): Added. Update the
   19873         #error-warning-count div with the current error/warning count.
   19874         (WebInspector.loaded): Add a click event listener to the
   19875         #error-warning-count element that will show the Console. Call
   19876         _updateErrorAndWarningCounts to display the initial error/warning counts.
   19877 
   19878 2008-05-15  Timothy Hatcher  <timothy (a] apple.com>
   19879 
   19880         Fixes a bug in the view source parsing of text within <script>,
   19881         <style>, <xmp>, <textarea> and other special tags. The text was
   19882         being parsed as HTML and would be syntax highlighted if a "<"
   19883         was encountered.
   19884 
   19885         <rdar://problem/5790805> Inspector's source view missing some words,
   19886         doubles others in JS source in <script> tag (17752)
   19887 
   19888         Reviewed by Dave Hyatt.
   19889 
   19890         Added test: fast/frames/viewsource-plain-text-tags.html
   19891 
   19892         * html/HTMLTokenizer.cpp:
   19893         (WebCore::HTMLTokenizer::scriptHandler): Set scriptCodeSize and
   19894         scriptCodeResync to zero before an early return in view source mode.
   19895         This was causing text from a previous script tag to show up in
   19896         then next style tag.
   19897         (WebCore::HTMLTokenizer::parseTag): Enter an if block in view source
   19898         mode even if n is null. The n is property guarded in other places
   19899         and not used by view source mode. Removes a redundant null check on n.
   19900         Add a new null check of n before setting scriptSrcCharset. Other code
   19901         in HTMLTokenizer is already guarded for this code path. 
   19902 
   19903 2008-05-15  Timothy Hatcher  <timothy (a] apple.com>
   19904 
   19905         Changes the Web Inspector node highlight to be less aggressive
   19906         and only highlight when hovering over the selected node in the DOM
   19907         tree or breadcrumbs. You can highlight on hover for any node if
   19908         you hold down the Alt/Option key while hovering.
   19909 
   19910         Reviewed by Kevin McCullough.
   19911 
   19912         * page/inspector/ElementsPanel.js:
   19913         * page/inspector/inspector.js:
   19914 
   19915 2008-05-15  Stephanie Lewis  <slewis (a] apple.com>
   19916 
   19917         Fix windows build
   19918 
   19919         * loader/FrameLoader.cpp:
   19920         (WebCore::FrameLoader::stopLoading):
   19921 
   19922 2008-05-15  Stephanie Lewis  <slewis (a] apple.com>
   19923 
   19924         Reviewed by Anders.
   19925         
   19926         export a symbol needed for fast teardown
   19927 
   19928         * WebCore.base.exp:
   19929 
   19930 2008-05-15  Stephanie Lewis  <slewis (a] apple.com>
   19931 
   19932         Reviewed by Anders.
   19933 
   19934         Keep track on pending unload event counts
   19935 
   19936         No change in behavior so no new tests, but I am dumping the 
   19937         unload event count to track the new variable.
   19938 
   19939         * WebCore.base.exp:
   19940 
   19941         increment/decrement the count when an event is added/removed
   19942         * dom/Document.cpp:
   19943         (WebCore::Document::removeHTMLWindowEventListener):
   19944         (WebCore::Document::addWindowEventListener):
   19945         (WebCore::Document::removeWindowEventListener):
   19946         (WebCore::Document::setPendingFrameUnloadEventCount):
   19947         * dom/Document.h:
   19948 
   19949         set the count to 0 for each frame after the unload event has been dispatched
   19950         * loader/FrameLoader.cpp:
   19951         (WebCore::FrameLoader::stopLoading):
   19952 
   19953         keep track of the number of pending unload events for the eventHandler's frame
   19954         * page/EventHandler.cpp:
   19955         (WebCore::EventHandler::EventHandler):
   19956        (WebCore::EventHandler::pendingFrameUnloadEventCount):
   19957         (WebCore::EventHandler::setPendingFrameUnloadEventCount):
   19958         * page/EventHandler.h:
   19959 
   19960         keep track of the total number of pending unload events for all of the frames
   19961         * page/Page.cpp:
   19962         (WebCore::Page::Page):
   19963         (WebCore::Page::pendingUnloadEventCount):
   19964         (WebCore::Page::setPendingUnloadEventCount):
   19965         * page/Page.h:
   19966 
   19967 2008-05-15  Steve Falkenburg  <sfalken (a] apple.com>
   19968 
   19969         Fix build.
   19970 
   19971         * WebCore.vcproj/WebCore.vcproj:
   19972 
   19973 2008-05-15  Steve Falkenburg  <sfalken (a] apple.com>
   19974 
   19975         Fix build.
   19976 
   19977         * WebCore.vcproj/WebCore.vcproj:
   19978 
   19979 2008-05-15  Steve Falkenburg  <sfalken (a] apple.com>
   19980 
   19981         Fix build.
   19982 
   19983         * WebCore.vcproj/WebCore.vcproj:
   19984 
   19985 2008-05-15  David Kilzer  <ddkilzer (a] apple.com>
   19986 
   19987         Bug 19085: font-family: initial sets font-family differently than font: initial
   19988 
   19989         <https://bugs.webkit.org/show_bug.cgi?id=19085>
   19990         <rdar://problem/5939391>
   19991 
   19992         Reviewed by David Hyatt.
   19993 
   19994         Test: fast/css/font-family-initial.html
   19995 
   19996         * css/CSSStyleSelector.cpp:
   19997         (WebCore::CSSStyleSelector::applyProperty): Don't set family if first
   19998         family of initial font description is empty.
   19999 
   20000 2008-05-15  David Hyatt  <hyatt (a] apple.com>
   20001 
   20002         Move RenderStyle into a new subdirectory, rendering/style/, in preparation for breaking it up into
   20003         a bunch of smaller files.
   20004 
   20005         Reviewed by Dan Bernstein
   20006 
   20007         * GNUmakefile.am:
   20008         * WebCore.pro:
   20009         * WebCore.vcproj/WebCore.vcproj:
   20010         * WebCore.xcodeproj/project.pbxproj:
   20011         * WebCoreSources.bkl:
   20012         * rendering/RenderStyle.cpp: Removed.
   20013         * rendering/RenderStyle.h: Removed.
   20014         * rendering/style: Added.
   20015         * rendering/style/RenderStyle.cpp: Copied from rendering/RenderStyle.cpp.
   20016         * rendering/style/RenderStyle.h: Copied from rendering/RenderStyle.h.
   20017 
   20018 2008-05-15  David Kilzer  <ddkilzer (a] apple.com>
   20019 
   20020         Fix leaks when stopping a page from loading
   20021 
   20022         Patch suggested by Antti.  Reviewed by Antti.
   20023 
   20024         * loader/DocLoader.cpp:
   20025         (WebCore::DocLoader::clearPreloads): If a resource is in m_preloads but
   20026         never made it to the cache, delete it to prevent it from leaking.
   20027 
   20028 2008-05-15  Julien Chaffraix  <jchaffraix (a] webkit.org>
   20029 
   20030         Reviewed by Darin.
   20031 
   20032         https://bugs.webkit.org/show_bug.cgi?id=13942
   20033         ASSERTION FAILED: !attrName.contains('/') in HTMLTokenizer.cpp:132 when loading http://bamanzi.blogeden.cn/
   20034 
   20035         In HTML, when an attribute was null (for example when we parse '="somevalue"'
   20036         (attribute forgotten or there is a space between the attribute and the '=')),
   20037         the fallback was to assign the value to the attribute. However if the value was
   20038         a url or did contain a '/', we would trigger the assertion.
   20039 
   20040         To avoid that, we check the value before assigning it now and do not assign it
   20041         if it means adding a '/'.
   20042 
   20043         Test: fast/parser/assertion-empty-attribute.html
   20044 
   20045         * html/HTMLTokenizer.cpp:
   20046         (WebCore::HTMLTokenizer::parseTag): Add check for '/' in value before
   20047         assigning it to an attribute when the attribute is null.
   20048 
   20049 2008-05-15  Kevin Ollivier  <kevino (a] theolliviers.com>
   20050 
   20051         wx build fix for recent breakages. Add EventLoopWx.cpp, update the Bakefiles,
   20052         and add stubs for new Plugins functions. Also move plugin functions outside of
   20053         TemporaryLinkStubs.cpp so that they are more noticeable.
   20054 
   20055         * WebCoreSources.bkl:
   20056         * platform/wx/EventLoopWx.cpp: Added.
   20057         (WebCore::EventLoop::cycle):
   20058         * platform/wx/TemporaryLinkStubs.cpp:
   20059         * plugins/wx: Added.
   20060         * plugins/wx/PluginDataWx.cpp: Added.
   20061         (WebCore::PluginData::initPlugins):
   20062         (WebCore::PluginData::refresh):
   20063         * plugins/wx/PluginDatabaseWx.cpp: Added.
   20064         (WebCore::PluginDatabase::getPluginPathsInDirectories):
   20065         (WebCore::PluginDatabase::defaultPluginDirectories):
   20066         (WebCore::PluginDatabase::isPreferredPluginDirectory):
   20067         * plugins/wx/PluginPackageWx.cpp: Added.
   20068         (WebCore::PluginPackage::determineQuirks):
   20069         (WebCore::PluginPackage::fetchInfo):
   20070         (WebCore::PluginPackage::load):
   20071         (WebCore::PluginPackage::hash):
   20072         (WebCore::PluginPackage::equal):
   20073         (WebCore::PluginPackage::compareFileVersion):
   20074         * plugins/wx/PluginViewWx.cpp: Added.
   20075         (WebCore::PluginView::updateWindow):
   20076         (WebCore::PluginView::setFocus):
   20077         (WebCore::PluginView::show):
   20078         (WebCore::PluginView::hide):
   20079         (WebCore::PluginView::paint):
   20080         (WebCore::PluginView::handleKeyboardEvent):
   20081         (WebCore::PluginView::handleMouseEvent):
   20082         (WebCore::PluginView::setParent):
   20083         (WebCore::PluginView::setNPWindowRect):
   20084         (WebCore::PluginView::attachToWindow):
   20085         (WebCore::PluginView::detachFromWindow):
   20086         (WebCore::PluginView::stop):
   20087         (WebCore::PluginView::userAgent):
   20088         (WebCore::PluginView::handlePostReadFile):
   20089         (WebCore::PluginView::getValue):
   20090         (WebCore::PluginView::invalidateRect):
   20091         (WebCore::PluginView::invalidateRegion):
   20092         (WebCore::PluginView::forceRedraw):
   20093         (WebCore::PluginView::~PluginView):
   20094         (WebCore::PluginView::init):
   20095         * webcore-wx.bkl:
   20096 
   20097 2008-05-15  Adam Treat  <treat (a] kde.org>
   20098 
   20099         Reviewed by Simon.
   20100 
   20101         Don't try to setCompositionMode for devices that do not support PorterDuff
   20102 
   20103         * platform/graphics/qt/GraphicsContextQt.cpp:
   20104         (WebCore::TransparencyLayer::TransparencyLayer):
   20105         (WebCore::GraphicsContext::strokeRect):
   20106         (WebCore::GraphicsContext::clip):
   20107 
   20108 2008-05-15  Adele Peterson  <adele (a] apple.com>
   20109 
   20110         Reviewed and landed by Alexey.
   20111 
   20112         Use TextIterator in +[NSAttributedString _web_attributedStringFromRange:].
   20113 
   20114         * WebCore.base.exp: Exported TextIterator methods.
   20115 
   20116 2008-05-15  Simon Hausmann  <hausmann (a] webkit.org>
   20117 
   20118         Fix the Qt build by adding NetworkStateNotifier.cpp to the build.
   20119 
   20120         * WebCore.pro:
   20121 
   20122 2008-05-14  Dan Bernstein  <mitz (a] apple.com>
   20123 
   20124         Reviewed by Mark Rowe.
   20125 
   20126         - fix <rdar://problem/5907633> Memory corruption after closing a document that uses box-reflect
   20127 
   20128         Test: fast/reflections/teardown-crash.html
   20129 
   20130         * rendering/RenderLayer.cpp:
   20131         (WebCore::RenderLayer::~RenderLayer): Changed to not call removeLayers()
   20132         on the reflection if the document is being destroyed, because in that
   20133         case the layer tree is not being maintained.
   20134 
   20135 2008-05-14  Kevin McCullough  <kmccullough (a] apple.com>
   20136 
   20137         Reviewed by Tim.
   20138 
   20139         <rdar://problem/5770054> JavaScript profiler (10928)
   20140         - Expose the new Profiler functions to the WebInspector.
   20141 
   20142         * page/JavaScriptProfileNode.cpp:
   20143         (WebCore::getTotalPercent):
   20144         (WebCore::getSelfPercent):
   20145         (WebCore::ProfileNodeClass):
   20146 
   20147 2008-05-14  Timothy Hatcher  <timothy (a] apple.com>
   20148 
   20149         Fixes a crash in JavaScriptDebugServer::returnEvent when debugging
   20150         code that contains an eval. This change makes stepping into eval
   20151         code work as expected.
   20152 
   20153         http://bugs.webkit.org/show_bug.cgi?id=19038
   20154 
   20155         Reviewed by Kevin McCullough.
   20156 
   20157         Tested with: manual-tests/inspector/returnEvent-crash.html
   20158 
   20159         * manual-tests/inspector/returnEvent-crash.html: Added.
   20160         * page/JavaScriptDebugServer.cpp:
   20161         (WebCore::JavaScriptDebugServer::sourceParsed): Adds #ifdefed
   20162         debugging code to prevent the sourceID and URL.
   20163         (WebCore::updateCurrentCallFrame): Added. A helper function that
   20164         is called from all 4 of the debugger hooks below. This function will
   20165         update and/or create JavaScriptCallFrames to match the exec state,
   20166         sourceID and lineNumber passed into it. Contains #ifdefed debugging
   20167         code that was helpful while fixing this bug.
   20168         (WebCore::JavaScriptDebugServer::callEvent): Call updateCurrentCallFrame
   20169         before pauseIfNeeded.
   20170         (WebCore::JavaScriptDebugServer::atStatement): Ditto.
   20171         (WebCore::JavaScriptDebugServer::returnEvent): Ditto.
   20172         (WebCore::JavaScriptDebugServer::exception): Ditto.
   20173 
   20174 2008-05-14  Alp Toker  <alp (a] nuanti.com>
   20175 
   20176         GTK+ build fix for r33457. Add NetworkStateNotifier.cpp to the build.
   20177 
   20178         * GNUmakefile.am:
   20179 
   20180 2008-05-14  Alp Toker  <alp (a] nuanti.com>
   20181 
   20182         GTK+ build fix. Include value.h from kjs, not JavaScriptCore.
   20183 
   20184         * page/JavaScriptProfile.cpp:
   20185         * page/JavaScriptProfileNode.cpp:
   20186 
   20187 2008-05-14  Adam Roben  <aroben (a] apple.com>
   20188 
   20189         Windows release build fix
   20190 
   20191         * WebCore.vcproj/WebCore.vcproj: Make sure the warnings we disable on
   20192         XPathGrammar.cpp are disabled for all configurations, not just
   20193         Debug_Internal.
   20194 
   20195 2008-05-14  Kevin McCullough  <kmccullough (a] apple.com>
   20196 
   20197         Reviewed by Sam.
   20198 
   20199         <rdar://problem/5770054> JavaScript profiler (10928)
   20200         - Rename FunctionCallProfile to ProfileNode
   20201 
   20202         * ForwardingHeaders/profiler/FunctionCallProfile.h: Removed.
   20203         * ForwardingHeaders/profiler/ProfileNode.h: Copied from ForwardingHeaders/profiler/FunctionCallProfile.h.
   20204         * GNUmakefile.am:
   20205         * WebCore.pro:
   20206         * WebCore.vcproj/WebCore.vcproj:
   20207         * WebCore.xcodeproj/project.pbxproj:
   20208         * WebCoreSources.bkl:
   20209         * page/JavaScriptFunctionCallProfile.cpp: Removed.
   20210         * page/JavaScriptFunctionCallProfile.h: Removed.
   20211         * page/JavaScriptProfile.cpp:
   20212         * page/JavaScriptProfileNode.cpp: Copied from page/JavaScriptFunctionCallProfile.cpp.
   20213         (WebCore::ProfileNodeCache):
   20214         (WebCore::getFunctionName):
   20215         (WebCore::getTotalTime):
   20216         (WebCore::getSelfTime):
   20217         (WebCore::getNumberOfCalls):
   20218         (WebCore::getChildren):
   20219         (WebCore::finalize):
   20220         (WebCore::ProfileNodeClass):
   20221         (WebCore::toJS):
   20222         * page/JavaScriptProfileNode.h: Copied from page/JavaScriptFunctionCallProfile.h.
   20223 
   20224 2008-05-13  Beth Dakin  <bdakin (a] apple.com>
   20225 
   20226         Reviewed by Brady.
   20227 
   20228         This patch adds support for the ARIA progressbar role and the 
   20229         following ARIA states (ie HTML attributes): aria-checked, aria-
   20230         level, aria-pressed, aria-valuenow, aria-valuemin, and aria-
   20231         valuemax.
   20232 
   20233         * html/HTMLAttributeNames.in:
   20234         * page/AccessibilityObject.h:
   20235         (WebCore::AccessibilityObject::isProgressIndicator):
   20236         (WebCore::AccessibilityObject::valueForRange):
   20237         (WebCore::AccessibilityObject::maxValueForRange):
   20238         (WebCore::AccessibilityObject::minValueForRange):
   20239         * page/AccessibilityRenderObject.cpp:
   20240         (WebCore::AccessibilityRenderObject::isProgressIndicator):
   20241         (WebCore::AccessibilityRenderObject::isPressed): Check the aria-
   20242         pressed attribute if this is an ARIA button.
   20243         (WebCore::AccessibilityRenderObject::headingLevel): Check the aria-
   20244         level attribute if this is an ARIA heading.
   20245         (WebCore::AccessibilityRenderObject::intValue): Check the aria-
   20246         checked attribute if this is an ARIA radio button or checkbox.
   20247         (WebCore::AccessibilityRenderObject::valueForRange):
   20248         (WebCore::AccessibilityRenderObject::maxValueForRange):
   20249         (WebCore::AccessibilityRenderObject::minValueForRange):
   20250         (WebCore::RoleEntry::):
   20251         (WebCore::AccessibilityRenderObject::canSetValueAttribute):
   20252         * page/AccessibilityRenderObject.h:
   20253         * page/mac/AccessibilityObjectWrapper.mm:
   20254         (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
   20255         (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
   20256 
   20257 2008-05-14  Kevin McCullough  <kmccullough (a] apple.com>
   20258 
   20259         Reviewed by John.
   20260 
   20261         -<rdar://problem/5770054> JavaScript profiler (10928)
   20262         Use the FunctionCallProfile's new total and self time functions.
   20263 
   20264         * page/JavaScriptFunctionCallProfile.cpp:
   20265         (WebCore::getTotalTime):
   20266         (WebCore::getSelfTime):
   20267 
   20268 2008-05-14  Anders Carlsson  <andersca (a] apple.com>
   20269 
   20270         Reviewed by Adam.
   20271 
   20272         Don't try to store the resource data if it's empty.
   20273         
   20274         * loader/appcache/ApplicationCacheStorage.cpp:
   20275         (WebCore::ApplicationCacheStorage::store):
   20276 
   20277 2008-05-14  Adam Roben  <aroben (a] apple.com>
   20278 
   20279         Windows build fix
   20280 
   20281         * platform/network/NetworkStateNotifier.cpp: Added a missing #include.
   20282         * platform/network/NetworkStateNotifier.h:
   20283         (WebCore::NetworkStateNotifier::NetworkStateNotifier): Removed 'void'
   20284         return type from the constructor, and fixed the spelling of a member
   20285         variable.
   20286 
   20287 2008-05-14  Kevin McCullough  <kmccullough (a] apple.com>
   20288 
   20289         Reviewed by Adam.
   20290 
   20291         <rdar://problem/5770054> JavaScript profiler (10928)
   20292         - Add support for interacting with the JavaScriptCore profiler.
   20293 
   20294         * ForwardingHeaders/profiler/FunctionCallProfile.h: Added.
   20295         * ForwardingHeaders/profiler/Profile.h: Added.
   20296         * GNUmakefile.am: Add the new files to all the projects.
   20297         * WebCore.pro:
   20298         * WebCore.vcproj/WebCore.vcproj:
   20299         * WebCore.xcodeproj/project.pbxproj:
   20300         * WebCoreSources.bkl:
   20301         * page/InspectorController.cpp: Add the ability to retrieve all of the
   20302         profiles in JavaScript from the InspectorController.
   20303         (WebCore::allProfiles):
   20304         (WebCore::InspectorController::windowScriptObjectAvailable):
   20305         * page/JavaScriptFunctionCallProfile.cpp: Added. Wrapper around the JSC
   20306         FunctionCallProfile.
   20307         (WebCore::functionCallProfileCache): This cache makes sure we don't
   20308         needlessly create duplicate wrappers around the same
   20309         FunctionCallProfile*.
   20310         (WebCore::getFunctionName): Callback to return the name of the function.
   20311         (WebCore::getTotalTime): Callback to return the total time spent in the
   20312         function.
   20313         (WebCore::getSelfTime): Callback to return the time spent in self (total
   20314         - time in children) in the function.
   20315         (WebCore::getNumberOfCalls): Callback to return the number of times this
   20316         function was called.
   20317         (WebCore::getChildren): Callback to return the children of this function
   20318         where the children are the functions this function called.
   20319         (WebCore::finalize): Cleanup.
   20320         (WebCore::functionCallProfileClass): Define the JSClassRef for this
   20321         object.
   20322         (WebCore::toJS): Create a conversion function to make a usable JSValue
   20323         to wrap the FunctionCallProfile in JSC.
   20324         * page/JavaScriptFunctionCallProfile.h: Added.
   20325         * page/JavaScriptProfile.cpp: Added. Wrapper around the JSC Profile.
   20326         (WebCore::profileCache): This cache makes sure we don't needlessly
   20327         create duplicate wrappers aroudn the same Profile*.
   20328         (WebCore::getHeadCallback): Callback to return the head of the graph of
   20329         the functions profiled durring this profile's run.
   20330         (WebCore::finalize):
   20331         (WebCore::profileClass): Define the JSClassRef for this object.
   20332         (WebCore::toJS): Create a conversion function to make a usable JSValue
   20333         to wrap the Profile from JSC.
   20334         * page/JavaScriptProfile.h: Added.
   20335 
   20336 2008-05-14  David Hyatt  <hyatt (a] apple.com>
   20337 
   20338         Fix for bug https://bugs.webkit.org/show_bug.cgi?id=16130.
   20339 
   20340         Opacity, transforms, reflections and masks should not honor z-index unless the element is also
   20341         positioned.  Always reset to auto if the element is not positioned (and then the following code will
   20342         adjust auto to 0 as needed).
   20343 
   20344         Reviewed by Dan Bernstein
   20345 
   20346         * css/CSSStyleSelector.cpp:
   20347         (WebCore::CSSStyleSelector::adjustRenderStyle):
   20348 
   20349 2008-05-14  Anders Carlsson  <andersca (a] apple.com>
   20350 
   20351         Reviewed by Brady.
   20352 
   20353         <rdar://problem/5931742> Support navigator.onLine from HTML5
   20354         
   20355         * WebCore.vcproj/WebCore.vcproj:
   20356         * WebCore.xcodeproj/project.pbxproj:
   20357         Add NetworkStateNotifier files.
   20358         
   20359         * dom/EventNames.h:
   20360         Add offline and online events.
   20361         
   20362         * page/Navigator.cpp:
   20363         (WebCore::Navigator::onLine):
   20364         * page/Navigator.h:
   20365         * page/Navigator.idl:
   20366         Add navigator.onLine.
   20367         
   20368         * page/Page.cpp:
   20369         (WebCore::networkStateChanged):
   20370         Dispatch offline/online events to all frames.
   20371         
   20372         (WebCore::Page::Page):
   20373         Set state change callback.
   20374         
   20375         * platform/network/NetworkStateNotifier.cpp: Added.
   20376         * platform/network/NetworkStateNotifier.h: Added.
   20377 
   20378         * platform/network/mac/NetworkStateNotifierMac.cpp: Added.
   20379         Mac network state notifier.
   20380 
   20381 2008-05-14  Adam Roben  <aroben (a] apple.com>
   20382 
   20383         Fix Bug 18888: REGRESSION (r32731): console.log always prints
   20384         "undefined"
   20385 
   20386         <https://bugs.webkit.org/show_bug.cgi?id=18888>
   20387 
   20388         Reviewed by Tim Hatcher.
   20389 
   20390         Tested by pre-existing
   20391         manual-tests/inspector/console-log-formatting.html.
   20392 
   20393         * page/inspector/Console.js:
   20394         (WebInspector.ConsoleMessage.prototype._format): Changed to explicitly
   20395         wrap Console._format instead of using bind to do it. Using bind was
   20396         causing us to pass plainText in as the first parameter instead of as
   20397         the second.
   20398 
   20399 2008-05-14  Timothy Hatcher  <timothy (a] apple.com>
   20400 
   20401         Fixes the bug where stepping out of a function would show the wrong
   20402         call stack (would look like it stepped out twice.)
   20403 
   20404         Reviewed by Adam Roben.
   20405 
   20406         * page/JavaScriptDebugServer.cpp:
   20407         (WebCore::JavaScriptDebugServer::returnEvent):
   20408         Call pauseIfNeeded before setting m_currentCallFrame to the caller.
   20409 
   20410 2008-05-14  Stephanie Lewis  <slewis (a] apple.com>
   20411    
   20412         Fix 64bit build
   20413 
   20414         * plugins/PluginView.h:
   20415 
   20416 2008-05-14  David Kilzer  <ddkilzer (a] apple.com>
   20417 
   20418         REGRESSION (r26474): WebKit fails jQuery test 64 core module: text(String) subtest 1 Check escaped text (createTextNode)
   20419 
   20420         <https://bugs.webkit.org/show_bug.cgi?id=18976>
   20421         <rdar://problem/5924793>
   20422 
   20423         Reviewed by Darin.
   20424 
   20425         Tests: fast/dom/dom-parse-serialize-expected.txt:
   20426                fast/xsl/xslt-processor-expected.txt:
   20427                fast/xsl/xslt-text-expected.txt:
   20428 
   20429         Commit r26474 removed escaping of '>' characters to '&gt;' in serialized
   20430         HTML content, which broke one jQuery test.  This change restores that
   20431         serialization behavior to both attributes and content for consistency.
   20432 
   20433         * editing/markup.cpp:
   20434         (WebCore::appendAttributeValue): Escape '>' as '&gt;'.
   20435         (WebCore::escapeContentText): Ditto.
   20436         (WebCore::appendEscapedContent): Ditto.  This is the bug fix for the jQuery test.
   20437 
   20438 2008-05-14  Adam Roben  <aroben (a] apple.com>
   20439 
   20440         Fix Bug 19051: REGRESSION (r33447): Assertion in
   20441         JSDebugServer::removeListener closing tab with Inspector open
   20442 
   20443         <https://bugs.webkit.org/show_bug.cgi?id=19051>
   20444 
   20445         m_inspectedPage is now cleared when the Page is destroyed, which never
   20446         used to happen. Some of InspectorController's code was not prepared
   20447         for this.
   20448 
   20449         Reviewed by Dave Hyatt.
   20450 
   20451         * page/InspectorController.cpp:
   20452         (WebCore::InspectorController::~InspectorController): Removed a call
   20453         to stopDebugging and added an assertion. Debugging should have already
   20454         been stopped by this point.
   20455         (WebCore::InspectorController::inspectedPageDestroyed): Moved here
   20456         from the header file. Added a call to stopDebugging.
   20457         (WebCore::InspectorController::enabled): Return false if our inspected
   20458         Page has already been destroyed, since we can't really do much at this
   20459         point anyway.
   20460         (WebCore::InspectorController::didCommitLoad):
   20461         (WebCore::InspectorController::didLoadResourceFromMemoryCache):
   20462         (WebCore::InspectorController::identifierForInitialRequest):
   20463         (WebCore::InspectorController::startDebuggingAndReloadInspectedPage):
   20464         (WebCore::InspectorController::stopDebugging):
   20465         (WebCore::InspectorController::drawNodeHighlight):
   20466         Assert that m_inspectedPage hasn't been cleared.
   20467         * page/InspectorController.h:
   20468 
   20469 2008-05-14  Justin Garcia  <justin.garcia (a] apple.com>
   20470 
   20471         Reviewed by Darin.
   20472 
   20473         <rdar://problem/5914803> Improve performance of WebCore::Editor::setComposition
   20474 
   20475         * editing/Editor.cpp:
   20476         (WebCore::Editor::confirmComposition): Remove the previous composition
   20477         when we insert the new one, not with a separate, slower, delete operation.
   20478         (WebCore::Editor::setComposition): Ditto.
   20479         * editing/InsertTextCommand.cpp:
   20480         (WebCore::InsertTextCommand::performTrivialReplace): Remove the selected
   20481         text with a low level operation that doesn't perform a layout and insert
   20482         the new text in a way that won't trigger a layout from the removal.
   20483         (WebCore::InsertTextCommand::input): Call the optimized replace.
   20484         * editing/InsertTextCommand.h:
   20485         * editing/htmlediting.cpp:
   20486         (WebCore::isTabSpanNode): Check to see if the node is a span, to avoid 
   20487         the expense of getAttribute in the common case.
   20488         * page/Frame.cpp:
   20489         (WebCore::Frame::selectionLayoutChanged): Selection::start() and end()
   20490         will already be at VisiblePosition deepEquivalents. Selection::validate()
   20491         ensures this.
   20492 
   20493 2008-05-14  Adam Roben  <aroben (a] apple.com>
   20494 
   20495         Make the Inspector able to handle being reloaded
   20496 
   20497         When Reload was selected from the context menu in the Inspector, the
   20498         Inspector window would close and never be openable again. Now it
   20499         closes, then reopens when the page finishes loading.
   20500 
   20501         Reviewed by Tim Hatcher.
   20502 
   20503         * page/InspectorController.cpp:
   20504         (WebCore::InspectorController::close): Removed code that cleared out
   20505         m_page. This is now handled by pageDestroyed.
   20506         * page/InspectorController.h:
   20507         (WebCore::InspectorController::inspectedPageDestroyed): Added.
   20508         * page/Page.cpp:
   20509         (WebCore::Page::~Page): Fixed a bug and added a call to the new
   20510         inspectedPageDestroyed. If we have a parent InspectorController, that
   20511         means that we are the Page in the Inspector's window (i.e., we are the
   20512         Inspector's UI), so when we are destroyed we should call
   20513         InspectorController::pageDestroyed. We also need to call
   20514         inspectedPageDestroyed on our own InspectorController so that it won't
   20515         try to call into us.
   20516 
   20517 2008-05-14  Timothy Hatcher  <timothy (a] apple.com>
   20518 
   20519         Add pause on exception support to the Inspector debugger
   20520         with a toggle buttons to enable or disable it.
   20521 
   20522         Reviewed by Adam Roben.
   20523 
   20524         * page/InspectorController.cpp:
   20525         (WebCore::pauseOnExceptions): Call the InspectorController.
   20526         (WebCore::setPauseOnExceptions): Ditto.
   20527         (WebCore::InspectorController::windowScriptObjectAvailable): Add the new
   20528         setPauseOnExceptions and pauseOnExceptions functions to the JS class.
   20529         (WebCore::InspectorController::pauseOnExceptions): Call JavaScriptDebugServer.
   20530         (WebCore::InspectorController::setPauseOnExceptions): Ditto.
   20531         * page/InspectorController.h:
   20532         * page/JavaScriptDebugServer.cpp:
   20533         (WebCore::JavaScriptDebugServer::setPauseOnExceptions): Set m_pauseOnExceptions.
   20534         (WebCore::JavaScriptDebugServer::exception): Check m_pauseOnExceptions
   20535         and set m_pauseOnNextStatement to true before calling pauseIfNeeded.
   20536         * page/JavaScriptDebugServer.h:
   20537         * page/inspector/Images/pauseOnExceptionButtons.png: Added.
   20538         * page/inspector/ScriptsPanel.js: Adds a status bar button that calls
   20539         the new InspectorController functions.
   20540         * page/inspector/inspector.css: New styles.
   20541 
   20542 2008-05-14  Timothy Hatcher  <timothy (a] apple.com>
   20543 
   20544         Rename the Scope Chain pane to Scope Variables. Name the global
   20545         object Global. Name objects before the locals "With Block".
   20546         Name colsure scopes "Closure". Name any element or document
   20547         after Local, "Event Target" and "Event Document", respectfully.
   20548 
   20549         Reviewed by Adam Roben.
   20550 
   20551         * English.lproj/localizedStrings.js: Add new strings.
   20552         * page/inspector/ObjectPropertiesSection.js:
   20553         (WebInspector.ObjectPropertiesSection): Add a new argument that is used
   20554         for the empty placeholder text.
   20555         (WebInspector.ObjectPropertiesSection.prototype.onpopulate): Use the
   20556         empty placeholder text.
   20557         * page/inspector/ScopeChainSidebarPane.js:
   20558         (WebInspector.ScopeChainSidebarPane): Rename Scope Chain to Scope Variables.
   20559         (WebInspector.ScopeChainSidebarPane.prototype.update): Use the object name as
   20560         the subtitle. Use "Global" for the global object title. Use "With Block" for
   20561         the title of objects before the locals. Use "No Variables" for the empty
   20562         placeholder text for locals.
   20563 
   20564 2008-05-14  Michael A. Puls II  <shadow2531 (a] gmail.com>
   20565 
   20566         Reviewed by Alexey.
   20567 
   20568         Fix for https://bugs.webkit.org/show_bug.cgi?id=16923 
   20569         Attr nodes with a value of "" should not have any childNodes
   20570         
   20571         In Opera, Firefox and IE, when an attribute node has a value
   20572         of "", the attribute node doesn't have any childNodes. This
   20573         is true in WebKit also, but not when you assign "" to the
   20574         Attr's value when the existing value is non-empty.
   20575         
   20576         Test: fast/dom/attribute-empty-value-no-children.html
   20577 
   20578         * dom/Attr.cpp: (WebCore::Attr::setValue): Use createTextChild(), which only appends
   20579         a child text node if the value being assigned is not empty.
   20580 
   20581 2008-05-14  Julien Chaffraix  <jchaffraix (a] webkit.org>
   20582 
   20583         Reviewed by Eric.
   20584 
   20585         GCC 4.3 build fix.
   20586         Removes some compiler warnings.
   20587 
   20588         * dom/Document.h:
   20589         (WebCore::FormElementKey::hashTableDeletedValue): GCC complained about the const keyword
   20590         so remove it as it is only used inside FormElementKey.
   20591 
   20592         * html/HTMLSelectElement.cpp:
   20593         (WebCore::HTMLSelectElement::menuListDefaultEventHandler): Correct coding style (removes
   20594         a warning too).
   20595 
   20596         * loader/appcache/ApplicationCacheResource.cpp: Include stdio.h for gcc4.3 build.
   20597 
   20598         * plugins/PluginPackage.cpp:
   20599         (WebCore::PluginPackage::PluginPackage): Changed initialization order in the constructor.
   20600         * plugins/PluginView.cpp:
   20601         (WebCore::PluginView::PluginView): Ditto.
   20602         * plugins/PluginView.h:
   20603         * xml/AccessControlList.cpp: Include stdio.h
   20604         * xml/AccessItem.cpp: Ditto.
   20605         * xml/AccessItemRule.cpp: Ditto.
   20606 
   20607 2008-05-14  Ariya Hidayat  <ariya.hidayat (a] trolltech.com>
   20608 
   20609         Reviewed by Simon.
   20610 
   20611         Qt build fix. Add JSJavaScriptCallFrameCustom.cpp to the build
   20612         and implemented EventLoopQt.
   20613 
   20614         * WebCore.pro:
   20615         * platform/qt/EventLoopQt.cpp: Added.
   20616 
   20617 2008-05-14  Ariya Hidayat  <ariya.hidayat (a] trolltech.com>
   20618 
   20619         Reviewed by Simon.
   20620 
   20621         Qt build fix. Add JavaScriptCallFrame.{idl,cpp} to the build.
   20622 
   20623         * WebCore.pro:
   20624 
   20625 2008-05-13  Dan Bernstein  <mitz (a] apple.com>
   20626 
   20627         Reviewed by John Sullivan.
   20628 
   20629         - Windows part of <rdar://problem/5725912> improve render quality of transformed text
   20630 
   20631         * platform/graphics/win/FontCGWin.cpp:
   20632         (WebCore::Font::drawGlyphs): Added call to
   20633         wkSetCGContextFontRenderingStyle().
   20634 
   20635 2008-05-13  Alp Toker  <alp (a] nuanti.com>
   20636 
   20637         GTK+ build fix. Implement EventLoopGtk.cpp.
   20638 
   20639         * GNUmakefile.am:
   20640         * platform/gtk/EventLoopGtk.cpp: Added.
   20641         (WebCore::EventLoop::cycle):
   20642 
   20643 2008-05-13  Alp Toker  <alp (a] nuanti.com>
   20644 
   20645         GTK+ build fix. Fix IDL filename typo and add JavaScriptCallFrame.cpp
   20646         to the build.
   20647 
   20648         * GNUmakefile.am:
   20649 
   20650 2008-05-13  Matt Lilek  <webkit (a] mattlilek.com>
   20651 
   20652         Not reviewed, partial Gtk build fix.
   20653 
   20654         * GNUmakefile.am:
   20655 
   20656 2008-05-13  Timothy Hatcher  <timothy (a] apple.com>
   20657 
   20658         Fixes a crash when stepping out in the Inspector's debugger.
   20659 
   20660         http://bugs.webkit.org/show_bug.cgi?id=19037
   20661 
   20662         Reviewed by Dan Bernstein.
   20663 
   20664         * page/InspectorController.cpp:
   20665         (WebCore::currentCallFrame): Adds a null check of currentCallFrame,
   20666         since it can be null. Also returns JSNull to better signify this.
   20667         * page/inspector/ScriptsPanel.js: Updates the debugger interface
   20668         when stepping so the currentCallFrame isn't accessed when not paused.
   20669         Adds a _clearInterface function to remove duplicate code.
   20670 
   20671 2008-05-13  chris fleizach  <cfleizach (a] apple.com>
   20672 
   20673         Reviewed by Beth Dakin
   20674 
   20675         <rdar://problem/5932677> AX: Submit buttons aren't returning AXTitle
   20676 
   20677         * page/AccessibilityRenderObject.cpp:
   20678         (WebCore::AccessibilityRenderObject::title):
   20679 
   20680 2008-05-13  Timothy Hatcher  <timothy (a] apple.com>
   20681 
   20682         Adds an overlay window that covers the scripts panel and
   20683         informs the user that they need to attach the debugger.
   20684         Provides an "Attach Debugger" button below the info text.
   20685 
   20686         Reviewed by Dan Bernstein.
   20687 
   20688         * English.lproj/localizedStrings.js: New strings.
   20689         * page/inspector/ScriptsPanel.js:
   20690         (WebInspector.ScriptsPanel): Create the overlay elements and
   20691         append to the main panel element.
   20692         * page/inspector/inspector.css: New styles for the over lay elements.
   20693 
   20694 2008-05-13  Timothy Hatcher  <timothy (a] apple.com>
   20695 
   20696         Fixes the assertion and crash that would happen when inspecting a element from a frame.
   20697         This change makes JSInspectedObjectWrapper pass unwrapped objects around for global objects
   20698         that share the same page group identifier. Also returns jsUndefined() instead of 0 to prevent
   20699         crashing in release builds if the page groups don't match.
   20700 
   20701         Passes all the tests in: manual-tests/inspector-wrappers
   20702 
   20703         Reviewed by Adam Roben.
   20704 
   20705         * bindings/js/JSInspectedObjectWrapper.cpp:
   20706         (WebCore::JSInspectedObjectWrapper::prepareIncomingValue): Return jsUndefined() instead of 0.
   20707         Call allowsUnwrappedAccessFrom instead of unwrappedExecStateMatches.
   20708         * bindings/js/JSQuarantinedObjectWrapper.cpp:
   20709         (WebCore::JSQuarantinedObjectWrapper::allowsUnwrappedAccessFrom): Renamed from unwrappedExecStateMatches.
   20710         Return true if the pageGroupIdentifier of both wrappers match.
   20711         (WebCore::JSQuarantinedObjectWrapper::callAsFunction): Return jsUndefined() instead of 0.
   20712         * bindings/js/JSQuarantinedObjectWrapper.h: Renamed unwrappedExecStateMatches to allowsUnwrappedAccessFrom.
   20713 
   20714 2008-05-13  Timothy Hatcher  <timothy (a] apple.com>
   20715 
   20716         Fixes the hang that could happen when option-clicking to expand
   20717         a disclosure triangle in the Properties pane. This change limits
   20718         the recursion depth when expanding the tree elements.
   20719 
   20720         <rdar://problem/5847681> Safari hangs when option-clicking a
   20721         disclosure triangle in the Inspector's Properties pane
   20722 
   20723         Reviewed by John Sullivan.
   20724 
   20725         * page/inspector/treeoutline.js:
   20726         (TreeElement.prototype.expandRecursively): Pass an empty info object to
   20727         traverseNextTreeElement to get the depthChange value. This is used to
   20728         compute a current depth. If the depth exceeds the maxDepth argument, the
   20729         item isn't expanded and children wont be populated when traverseNextTreeElement
   20730         is called until the depth goes below the maxDepth.
   20731         (TreeElement.prototype.traverseNextTreeElement): Added a new info
   20732         argument that can be optionally used to return extra info like depth change.
   20733 
   20734 2008-05-13  Timothy Hatcher  <timothy (a] apple.com>
   20735 
   20736         Adds info text to panes and sections in the Inspector's sidebars
   20737         that would normally be empty. These help the user know why there
   20738         is nothing in these sections.
   20739 
   20740         Reviewed by John Sullivan.
   20741 
   20742         * English.lproj/localizedStrings.js: Add strings.
   20743         * page/inspector/BreakpointsSidebarPane.js: Adds "No Breakpoints".
   20744         * page/inspector/CallStackSidebarPane.js: Adds "Not Paused".
   20745         * page/inspector/ObjectPropertiesSection.js: Adds "No Properties".
   20746         * page/inspector/ScopeChainSidebarPane.js: Adds "Not Paused".
   20747         * page/inspector/inspector.css: Adds style rules for the info elements.
   20748 
   20749 2008-05-13  Timothy Hatcher  <timothy (a] apple.com>
   20750 
   20751         Implements the rest of the Scripts panel to get the debugger
   20752         mostly working. "Basic debugging seems to work."
   20753 
   20754         Reviewed by Geoff Garen.
   20755 
   20756         * English.lproj/localizedStrings.js: Adds new strings.
   20757         * page/inspector/Resource.js:
   20758         (WebInspector.Resource.prototype.get scripts): Returns _scripts and 
   20759         creates it lazily.
   20760         (WebInspector.Resource.prototype.addScript): Add the script object to the
   20761         front of the _scripts array.
   20762         (WebInspector.Resource.prototype.removeAllScripts): Removed all the scripts
   20763         and removes the resource back-reference.
   20764         (WebInspector.Resource.prototype.removeScript): Removes the script and
   20765         breaks the resource back-reference.
   20766         * page/inspector/ResourceView.js:
   20767         (WebInspector.ResourceView): Adds a reminder comment.
   20768         (WebInspector.ResourceView.prototype.get headersVisible): Returns _headersVisible. 
   20769         (WebInspector.ResourceView.prototype.set headersVisible): Stubs out
   20770         a setter that currently just sets _headersVisible. Has a comment that
   20771         points out this needs implemented when network headers are added.
   20772         * page/inspector/ResourcesPanel.js:
   20773         (WebInspector.ResourcesPanel.prototype.show): Sets the headersVisible property of
   20774         the visible view to true and shows it again, in case it was being shown in Scripts.
   20775         (WebInspector.ResourcesPanel.prototype.recreateViewForResourceIfNeeded):
   20776         Copies the headersVisible property from the old view to the new view.
   20777         (WebInspector.ResourcesPanel.prototype.showResource): Sets the headersVisible
   20778         property to true before showing.
   20779         * page/inspector/ScriptView.js:
   20780         (WebInspector.ScriptView): Passes in _addBreakpoint for the add breakpoint delegate.
   20781         (WebInspector.ScriptView.prototype._addBreakpoint): Calls ScriptsPanel's addBreakpoint
   20782         for the current Script.sourceID and line.
   20783         * page/inspector/ScriptsPanel.js:
   20784         (WebInspector.ScriptsPanel): 
   20785         (WebInspector.ScriptsPanel.prototype.show): Sets the headersVisible property of
   20786         the visible view to false and shows it again, in case it was being shown in Resources.
   20787         (WebInspector.ScriptsPanel.prototype.addScript): Makes a new Script object and
   20788         adds it to a Resource if one is found. Registers any breakpoint that match
   20789         the new Script's source URL, and sets the sourceID of the breakpoints.
   20790         (WebInspector.ScriptsPanel.prototype.addBreakpoint): Adds the breakpoint to the
   20791         BreakpointsSidebarPane. Also adds it to _breakpointsURLMap so it can be found
   20792         later in addScript by URL. Finally adds the breakpoint to the SourceFrame that
   20793         represents the resources or script.
   20794         (WebInspector.ScriptsPanel.prototype.removeBreakpoint): Removes the breakpoint from
   20795         the BreakpointsSidebarPane, _breakpointsURLMap and SourceFrame.
   20796         (WebInspector.ScriptsPanel.prototype.debuggerPaused): Update the debugger
   20797         state variables, the buttons and the CallStackSidebarPane.
   20798         (WebInspector.ScriptsPanel.prototype.reset): Clears and resets debugger
   20799         and interface state.
   20800         (WebInspector.ScriptsPanel.prototype.get visibleView): Returns _visibleView.
   20801         (WebInspector.ScriptsPanel.prototype.set visibleView): Sets _visibleView and
   20802         calls hide on the old view and show on the new view.
   20803         (WebInspector.ScriptsPanel.prototype.showScript): Calls _showScriptOrResource.
   20804         (WebInspector.ScriptsPanel.prototype.showResource): Ditto.
   20805         (WebInspector.ScriptsPanel.prototype.scriptViewForScript): Lazily creates a
   20806         ScriptView for the Script and returns it. 
   20807         (WebInspector.ScriptsPanel.prototype.sourceFrameForScript): Returns the SourceFrame
   20808         for the Script.
   20809         (WebInspector.ScriptsPanel.prototype._sourceFrameForScriptOrResource): Returns the
   20810         SourceFrame based on the type of object passed in.
   20811         (WebInspector.ScriptsPanel.prototype._showScriptOrResource): Shows the view based on
   20812         the type of object passed in. If the object is a resource and there are breakpoints
   20813         defined for that Resource URL, then populate the SourceFrame with the breakpoints.
   20814         (WebInspector.ScriptsPanel.prototype._addScriptToFilesMenu): Adds a script to the 
   20815         files menu. If the Script is part of a resource, that resource is added.
   20816         (WebInspector.ScriptsPanel.prototype._removeScriptFromFilesMenu): Remove a script from
   20817         the files menu. If that script is part of a resource and it is the last script of that
   20818         resource, then remove the whole resource.
   20819         (WebInspector.ScriptsPanel.prototype._clearCurrentExecutionLine): Clears the execution
   20820         line from the SourceFrame that is showing it.
   20821         (WebInspector.ScriptsPanel.prototype._callFrameSelected): Event listener for when the
   20822         call frame changes in the CallStackSidebarPane. Triggers updates to the ScopeChainSidebarPane
   20823         and the visible view.
   20824         (WebInspector.ScriptsPanel.prototype._changeVisibleFile): Event listener for the change state
   20825         of the files select element.
   20826         (WebInspector.ScriptsPanel.prototype._updateDebuggerButtons): Update more of the 
   20827         buttons to reflect the current debugger state. Updates the status text too.
   20828         (WebInspector.ScriptsPanel.prototype._toggleDebugging): Reset the UI and state when
   20829         the debugger is attached/detached.
   20830         (WebInspector.ScriptsPanel.prototype._togglePause): Call InspectorController.resumeDebugger or
   20831         InspectorController.pauseInDebugger depending on the paused state.
   20832         (WebInspector.ScriptsPanel.prototype._stepOverClicked): Call InspectorController.stepOverStatementInDebugger.
   20833         (WebInspector.ScriptsPanel.prototype._stepIntoClicked): Call InspectorController.stepIntoStatementInDebugger.
   20834         (WebInspector.ScriptsPanel.prototype._stepOutClicked): InspectorController.stepOutOfFunctionInDebugger.
   20835         * page/inspector/SourceView.js:
   20836         (WebInspector.SourceView): Passes in _addBreakpoint for the add breakpoint delegate.
   20837         (WebInspector.SourceView.prototype._addBreakpoint): Calls ScriptsPanel's addBreakpoint
   20838         for the nearest Script's sourceID and passed in line.
   20839         * page/inspector/inspector.css: New style rules for the UI changes.
   20840         * page/inspector/inspector.js:
   20841         (WebInspector.loaded): Add the ScriptsPanel to the panels list.
   20842         (WebInspector.parsedScriptSource): Call ScriptsPanel.addScript.
   20843         (WebInspector.failedToParseScriptSource): Ditto.
   20844         (WebInspector.pausedScript): Call ScriptsPanel.debuggerPaused.
   20845 
   20846 2008-05-13  Timothy Hatcher  <timothy (a] apple.com>
   20847 
   20848         Adds implementations of the Scope Chain and Call Stack sidebar panes.
   20849         These panes use the JSJavaScriptCallFrame object that will be passed
   20850         to the update functions.
   20851 
   20852         Reviewed by Kevin McCullough.
   20853 
   20854         * English.lproj/localizedStrings.js: Adds new strings.
   20855         * WebCore.vcproj/WebCore.vcproj: Adds new files.
   20856         * page/inspector/CallStackSidebarPane.js:
   20857         (WebInspector.CallStackSidebarPane.prototype.update): Walk the 
   20858         caller chain of the call frame and make placards for each.
   20859         (WebInspector.CallStackSidebarPane.prototype.get selectedCallFrame):
   20860         Return _selectedCallFrame. 
   20861         (WebInspector.CallStackSidebarPane.prototype.set selectedCallFrame):
   20862         Set _selectedCallFrame and dispatch the "call frame selected" event.
   20863         (WebInspector.CallStackSidebarPane.prototype._placardSelected):
   20864         Set the selectedCallFrame based on the clicked placard.
   20865         * page/inspector/Placard.js: Added. A user interface object that can
   20866         be used to show a title and a subtitle block with a selected state.
   20867         * page/inspector/ScopeChainSidebarPane.js: Added.
   20868         (WebInspector.ScopeChainSidebarPane): Call the base object and set the title.
   20869         (WebInspector.ScopeChainSidebarPane.prototype.update): Iterate over the
   20870         call frame's scope chain and make ObjectPropertiesSections for each.
   20871         * page/inspector/SidebarPane.js:
   20872         (WebInspector.SidebarPane.prototype): Inherit from WebInspector.Object.
   20873         * page/inspector/WebKit.qrc: Add new files.
   20874         * page/inspector/inspector.css: Add placard styles.
   20875         * page/inspector/inspector.html: Add new files.
   20876 
   20877 2008-05-13  Timothy Hatcher  <timothy (a] apple.com>
   20878 
   20879         Fixes the bug where SourceViews would be blank if shown before
   20880         the Resource finished loading.
   20881 
   20882         <rdar://problem/5807420> Safari's Web Inspector won't display the
   20883         contents of some CSS and JS files
   20884 
   20885         Reviewed by Kevin McCullough.
   20886 
   20887         * page/inspector/Resource.js:
   20888         (WebInspector.Resource.prototype.set finished): Dispatch the finished event
   20889         (WebInspector.Resource.prototype): Inherit from WebInspector.Object.prototype.
   20890         * page/inspector/SourceView.js:
   20891         (WebInspector.SourceView): Register for the finished event on the resource.
   20892         When the event fires, setup the source frame and deregister the event.
   20893 
   20894 2008-05-13  Timothy Hatcher  <timothy (a] apple.com>
   20895 
   20896         Factored most of SourceView out into SourceFrame so it can be shared
   20897         by the new ScriptView. Added the ScriptView class to be used for
   20898         scripts that arn't Resources (like eval code.) Added a simple Script
   20899         object that hold the data from the debugger parsedSource hooks. A
   20900         ScriptView holds a Script object, and uses it for source data.
   20901 
   20902         Added breakpoint and execution line support to the SourceFrame
   20903         where they are visually represented in the source.
   20904 
   20905         Reviewed by Kevin McCullough.
   20906 
   20907         * page/inspector/inspector.js:
   20908         (WebInspector.performSearch): Change the caller of sourceFrameForResource
   20909         to use the SourceFrame result's element property.
   20910         * page/inspector/ResourcesPanel.js: Use the new SourceFrame.
   20911         * page/inspector/Script.js: Added.
   20912         * page/inspector/ScriptView.js: Added.
   20913         * page/inspector/SourceFrame.js: Added.
   20914         * page/inspector/SourceView.js: Use the new SourceFrame.
   20915         * WebCore.vcproj/WebCore.vcproj: Add new files.
   20916         * page/inspector/WebKit.qrc: Ditto.
   20917         * page/inspector/inspector.html: Ditto.
   20918 
   20919 2008-05-13  Timothy Hatcher  <timothy (a] apple.com>
   20920 
   20921         Adds a Breakpoint object and basic add/remove functions on
   20922         BreakpointsSidebarPane that call the InspectorController to
   20923         add/remove the breakpoint.
   20924 
   20925         Reviewed by Kevin McCullough.
   20926 
   20927         * page/inspector/Breakpoint.js:
   20928         (WebInspector.Breakpoint): 
   20929         (WebInspector.Breakpoint.prototype.get enabled): Return _enabled.
   20930         (WebInspector.Breakpoint.prototype.set enabled): Set _enabled and
   20931         dispatch the enabled/disabled event to listeners.
   20932         * page/inspector/BreakpointsSidebarPane.js:
   20933         (WebInspector.BreakpointsSidebarPane): Add a breakpoints array.
   20934         (WebInspector.BreakpointsSidebarPane.prototype.addBreakpoint):
   20935         Adds the breakpoint to the breakpoints array. Registers for the disabled
   20936         and enabled event types. Call InspectorController.addBreakpoint if attached.
   20937         (WebInspector.BreakpointsSidebarPane.prototype.removeBreakpoint):
   20938         Removes the breakpoint from the breakpoints array. Deregisters for the disabled
   20939         and enabled event types. Call InspectorController.removeBreakpoint if attached.
   20940         (WebInspector.BreakpointsSidebarPane.prototype._breakpointEnableChanged):
   20941         Call InspectorController.addBreakpoint or InspectorController.removeBreakpoint
   20942         depending on the enabled state of the breakpoint.
   20943         * WebCore.vcproj/WebCore.vcproj: Add new files.
   20944         * page/inspector/WebKit.qrc: Ditto.
   20945         * page/inspector/inspector.html: Ditto.
   20946 
   20947 2008-05-13  Timothy Hatcher  <timothy (a] apple.com>
   20948 
   20949         Make addSourceToFrame not dependent on InspectorResource so it
   20950         can be used to add source of a passed in string and mime-type to
   20951         a frame. Added addResourceSourceToFrame for use by SourceView.
   20952 
   20953         Also fixes an assertion because of an incorrect static_cast of identifiers
   20954         to unsigned long long, when they can be unsigned.
   20955 
   20956         Reviewed by Geoff Garen.
   20957 
   20958         * page/InspectorController.cpp:
   20959         (WebCore::addSourceToFrame): Helper function used by addSourceToFrame
   20960         and addResourceSourceToFrame.
   20961         (WebCore::addSourceToFrame): Generalized to take a source and mime-type string.
   20962         (WebCore::addResourceSourceToFrame): Renamed from addSourceToFrame.
   20963         (WebCore::getResourceDocumentNode): Fixes the static_cast to be long long.
   20964         (WebCore::InspectorController::windowScriptObjectAvailable): Adds
   20965         addResourceSourceToFrame to the JavaScript class.
   20966         * page/inspector/SourceView.js: Use the new addResourceSourceToFrame.
   20967 
   20968 2008-05-13  Timothy Hatcher  <timothy (a] apple.com>
   20969 
   20970         Add debugger related functions to the InspectorController and
   20971         expose them to the JavaScript side of InspectorController.
   20972 
   20973         Reviewed by Geoff Garen.
   20974 
   20975         * page/InspectorController.cpp:
   20976         (WebCore::jsStringRef): Added helper to convert a UString to a JSStringRef.
   20977         (WebCore::currentCallFrame): Call InspectorController::currentCallFrame.
   20978         (WebCore::pauseInDebugger): Call InspectorController::pauseInDebugger.
   20979         (WebCore::resumeDebugger): Call InspectorController::resumeDebugger.
   20980         (WebCore::stepOverStatementInDebugger): Call InspectorController::stepOverStatementInDebugger.
   20981         (WebCore::stepIntoStatementInDebugger): Call InspectorController::stepIntoStatementInDebugger.
   20982         (WebCore::stepOutOfFunctionInDebugger): Call InspectorController::stepOutOfFunctionInDebugger.
   20983         (WebCore::addBreakpoint): Call InspectorController::addBreakpoint.
   20984         (WebCore::removeBreakpoint): Call InspectorController::removeBreakpoint.
   20985         (WebCore::InspectorController::windowScriptObjectAvailable): Add the new functions to the
   20986         InspectorController JavaScript class.
   20987         (WebCore::InspectorController::startDebuggingAndReloadInspectedPage): Clear breakpoints.
   20988         (WebCore::InspectorController::currentCallFrame): Return the currentCallFrame from the
   20989         JavaScriptDebugServer.
   20990         (WebCore::InspectorController::pauseInDebugger): Call JavaScriptDebugServer's pauseOnNextStatement.
   20991         (WebCore::InspectorController::resumeDebugger): Call JavaScriptDebugServer's resume.
   20992         (WebCore::InspectorController::stepOverStatementInDebugger):  Call JavaScriptDebugServer's stepOverStatement.
   20993         (WebCore::InspectorController::stepIntoStatementInDebugger): Call JavaScriptDebugServer's stepIntoStatement.
   20994         (WebCore::InspectorController::stepOutOfFunctionInDebugger): Call JavaScriptDebugServer's stepOutOfFunction.
   20995         (WebCore::InspectorController::addBreakpoint): Call JavaScriptDebugServer's addBreakpoint.
   20996         (WebCore::InspectorController::removeBreakpoint): Call JavaScriptDebugServer's removeBreakpoint.
   20997         (WebCore::InspectorController::didParseSource): Call into the Inspector's JavaScript.
   20998         (WebCore::InspectorController::failedToParseSource): Ditto.
   20999         (WebCore::InspectorController::didPause): Ditto.
   21000         * page/InspectorController.h: Add new functions.
   21001 
   21002 2008-05-13  Timothy Hatcher  <timothy (a] apple.com>
   21003 
   21004         Implements more debugger APIs on JavaScriptDebugServer and reduces
   21005         the number of callbacks to JavaScriptDebugListeners. These changes
   21006         will better facilitate debugger optimizations when SquirrelFish merges.
   21007 
   21008         Reviewed by Kevin McCullough.
   21009 
   21010         * page/InspectorController.cpp:
   21011         (WebCore::InspectorController::didParseSource): Removed the ExecState.
   21012         (WebCore::InspectorController::failedToParseSource): Ditto.
   21013         (WebCore::InspectorController::didPause): Added.
   21014         * page/InspectorController.h: Changed the JavaScriptDebugListener functions.
   21015         * page/JavaScriptDebugListener.h: Removed some callbacks and added didPause.
   21016         * page/JavaScriptDebugServer.cpp:
   21017         (WebCore::JavaScriptDebugServer::JavaScriptDebugServer): Initialize new data members.
   21018         (WebCore::JavaScriptDebugServer::~JavaScriptDebugServer): Delete all values of m_breakpoints.
   21019         (WebCore::JavaScriptDebugServer::removeListener): Call resume if the last listener was removed.
   21020         (WebCore::JavaScriptDebugServer::hasListenersInterestedInPage): Returns true if there are any
   21021         global listeners or a listener for the page.
   21022         (WebCore::JavaScriptDebugServer::addBreakpoint): Adds and entry to m_breakpoints.
   21023         (WebCore::JavaScriptDebugServer::removeBreakpoint): Removes a entry in m_breakpoints.
   21024         (WebCore::JavaScriptDebugServer::hasBreakpoint):  Checks if there is a breakpoint for the
   21025         sourceID and line.
   21026         (WebCore::JavaScriptDebugServer::clearBreakpoints): Removed all breakpoints.
   21027         (WebCore::JavaScriptDebugServer::pauseOnNextStatement): Sets m_pauseOnNextStatement to true.
   21028         (WebCore::JavaScriptDebugServer::resume): Sets m_paused to false.
   21029         (WebCore::JavaScriptDebugServer::stepIntoStatement): Calls resume and sets
   21030         m_pauseOnNextStatement to true.
   21031         (WebCore::JavaScriptDebugServer::stepOverStatement): Calls resume and sets m_pauseOnExecState to
   21032         the current call frame's ExecState.
   21033         (WebCore::JavaScriptDebugServer::stepOutOfFunction): Calls resume and sets m_pauseOnExecState to
   21034         the current call frame's caller ExecState.
   21035         (WebCore::JavaScriptDebugServer::currentCallFrame): Returns m_currentCallFrame if paused.
   21036         (WebCore::dispatchDidParseSource): Removed the ExecState argument.
   21037         (WebCore::dispatchFailedToParseSource): Ditto.
   21038         (WebCore::JavaScriptDebugServer::sourceParsed): Doesn't pass the ExecState to dispatchDidParseSource
   21039         or dispatchFailedToParseSource.
   21040         (WebCore::dispatchFunctionToListeners):
   21041         (WebCore::JavaScriptDebugServer::dispatchFunctionToListeners): Removes all the arguments passed
   21042         to the callback.
   21043         (WebCore::JavaScriptDebugServer::setJavaScriptPaused): Various overloaded functions
   21044         to pause parts of WebCore to prevent JavaScript execution while paused.
   21045         (WebCore::JavaScriptDebugServer::pauseIfNeeded): Decides if the debugger should pause based
   21046         on the passed in ExecState, source ID and line number. This checks for breakpoints, stepping, etc.
   21047         Calls didPause on all the listeners and spins a EventLoop until resume is called.
   21048         (WebCore::JavaScriptDebugServer::callEvent): Call pauseIfNeeded.
   21049         (WebCore::JavaScriptDebugServer::atStatement): Ditto.
   21050         (WebCore::JavaScriptDebugServer::returnEvent): Ditto.
   21051         (WebCore::JavaScriptDebugServer::exception): Ditto.
   21052         * page/JavaScriptDebugServer.h: Added new functions.
   21053 
   21054 2008-05-13  Timothy Hatcher  <timothy (a] apple.com>
   21055 
   21056         Change View.show to call detach if the parentNode dosen't
   21057         match before appending to the passed in parent element.
   21058         This also prevents appending to the same parent element
   21059         multiple times.
   21060 
   21061         Reviewed by John Sullivan.
   21062 
   21063         * page/inspector/FontView.js:
   21064         (WebInspector.FontView.prototype.show): Pass the parent element to View.show.
   21065         * page/inspector/ResourceView.js: Optimize the attach method to no append if
   21066         there is a parentNode already.
   21067         * page/inspector/SourceView.js: Ditto.
   21068         * page/inspector/View.js: Call detach before appending if the parentNode
   21069         doesn't match the passed in element.
   21070 
   21071 2008-05-13  Timothy Hatcher  <timothy (a] apple.com>
   21072 
   21073         Optimize the panel attach method to no append if there is a
   21074         parentNode already.
   21075 
   21076         Reviewed by Adam Roben.
   21077 
   21078         * page/inspector/Panel.js:
   21079         (WebInspector.Panel.prototype.attach): Don't append to main-panels
   21080         if the panel element already has a parentNode.
   21081 
   21082 2008-05-13  Timothy Hatcher  <timothy (a] apple.com>
   21083 
   21084         Add Widget::isPluginView so the JavaScriptDebugServer can identify
   21085         plugins that need to be paused during debugging. This will be used
   21086         in a upcoming commit.
   21087 
   21088         Reviewed by Kevin McCullough.
   21089 
   21090         * platform/Widget.h: Add isPluginView. Return false.
   21091         * plugins/PluginView.h: Add isPluginView. Return true.
   21092 
   21093 2008-05-13  Timothy Hatcher  <timothy (a] apple.com>
   21094 
   21095         Adds an event loop abstraction to platform. This abstraction will be
   21096         used by the JavaScriptDebugServer to implement pausing.
   21097 
   21098         Reviewed by Kevin McCullough.
   21099 
   21100         * platform/EventLoop.h: Added.
   21101         (WebCore::EventLoop::EventLoop):
   21102         (WebCore::EventLoop::ended): Return m_ended.
   21103         * platform/mac/EventLoopMac.mm: Added.
   21104         (WebCore::EventLoop::cycle): Call nextEventMatchingMask and then sendEvent.
   21105         * platform/win/EventLoopWin.cpp: Added.
   21106         (WebCore::EventLoop::cycle): Call GetMessage, TranslateMessage and DispatchMessage.
   21107         * WebCore.xcodeproj/project.pbxproj: Add new files.
   21108         * WebCore.vcproj/WebCore.vcproj: Ditto.
   21109 
   21110 2008-05-13  Timothy Hatcher  <timothy (a] apple.com>
   21111 
   21112         Breaks out ObjectPropertiesSection from PropertiesSidebarPane
   21113         so it can be used by the Scripts panel's Scope Chain pane.
   21114 
   21115         Rubber-stamped by Adam Roben.
   21116 
   21117         * page/inspector/ObjectPropertiesSection.js: Added.
   21118         * page/inspector/PropertiesSidebarPane.js: Moved ObjectPropertiesSection
   21119         to ObjectPropertiesSection.js.
   21120         * WebCore.vcproj/WebCore.vcproj: Add the new file.
   21121         * page/inspector/WebKit.qrc: Ditto.
   21122         * page/inspector/inspector.html: Ditto.
   21123 
   21124 2008-05-13  Timothy Hatcher  <timothy (a] apple.com>
   21125 
   21126         Add a helper function to the Inspector's Array prototype
   21127         that will remove any identical values/objects from the array.
   21128 
   21129         Reviewed by Kevin McCullough.
   21130 
   21131         * page/inspector/utilities.js:
   21132         (Array.prototype.remove): Iterate over the array and strict
   21133         compare to the passed in value. If they match, splice that index
   21134         out of the array. If onlyFirst is true, return after the first splice.
   21135 
   21136 2008-05-13  Timothy Hatcher  <timothy (a] apple.com>
   21137 
   21138         Adds a JavaScriptCallFrame object and JavaScript binding with an IDL.
   21139         This object will expose the stack to the Inspector's debugger.
   21140 
   21141         Reviewed by Adam Roben.
   21142 
   21143         * DerivedSources.make: Add JavaScriptCallFrame.
   21144         * bindings/js/JSJavaScriptCallFrameCustom.cpp: Added.
   21145         (WebCore::JSJavaScriptCallFrame::evaluate): Calls impl evaluate and returns the result.
   21146         (WebCore::JSJavaScriptCallFrame::scopeChain): Makes an array of the ScopeChain.
   21147         * page/JavaScriptCallFrame.cpp: Added.
   21148         (WebCore::JavaScriptCallFrame::JavaScriptCallFrame):
   21149         (WebCore::JavaScriptCallFrame::caller): Returns m_caller.
   21150         (WebCore::JavaScriptCallFrame::functionName): Returns the function
   21151         name from the ExecState if this is not global code or anonymous.
   21152         (WebCore::JavaScriptCallFrame::evaluate): Evaluates a script string
   21153         in the scope of the call frame.
   21154         * page/JavaScriptCallFrame.h: Added.
   21155         (WebCore::JavaScriptCallFrame::create): Call the ctor can return in a PassRefPtr.
   21156         (WebCore::JavaScriptCallFrame::invalidate): Sets m_mexec to 0. This prevents a
   21157         stale ExecState from being accessed after the lifetime of the ExecState.
   21158         (WebCore::JavaScriptCallFrame::isValid): Checks if m_exec is 0.
   21159         (WebCore::JavaScriptCallFrame::execState): Returns m_exec.
   21160         (WebCore::JavaScriptCallFrame::sourceIdentifier): Returns m_sourceID.
   21161         (WebCore::JavaScriptCallFrame::line): Returns m_line.
   21162         (WebCore::JavaScriptCallFrame::setLine): Sets m_line.
   21163         (WebCore::JavaScriptCallFrame::scopeChain): Returns by reference m_exec->scopeChain().
   21164         * page/JavaScriptCallFrame.idl: Added.
   21165         * WebCore.xcodeproj/project.pbxproj: Add new files.
   21166         * WebCore.vcproj/WebCore.vcproj: Ditto.
   21167 
   21168 2008-05-13  Timothy Hatcher  <timothy (a] apple.com>
   21169 
   21170         Add a new WebInspector.Object base class that will be used for
   21171         a few objects in the Web Inspector to support listeners on any
   21172         object. This will help add more abstraction to the Inspector.
   21173 
   21174         Reviewed by Adam Roben.
   21175 
   21176         * page/inspector/Object.js: Added.
   21177         (WebInspector.Object): Does nothing.
   21178         (WebInspector.Object.prototype.addEventListener): Adds the listener to
   21179         the _listeners map by type. Supports a this object argument, for easy
   21180         addition of listeners without the need for bind.
   21181         (WebInspector.Object.prototype.removeEventListener): Remove the listener
   21182         from the _listeners map. If the listener is null and the thisObject was
   21183         passed, remove any listener for that thisObject.
   21184         (WebInspector.Object.prototype.dispatchEventToListeners): Sends an event
   21185         for a type to all listeners for that type. Mimics some of the DOMEvent
   21186         methods and properties for the event object passed to the listeners.
   21187         * WebCore.vcproj/WebCore.vcproj: Add new files.
   21188         * page/inspector/WebKit.qrc: Ditto.
   21189         * page/inspector/inspector.html: Ditto.
   21190 
   21191 2008-05-13  Timothy Hatcher  <timothy (a] apple.com>
   21192 
   21193         Update the view source CSS to better match the new Inspector mock-ups.
   21194 
   21195         Reviewed by Kevin McCullough.
   21196 
   21197         * css/view-source.css:
   21198 
   21199 2008-05-13  John Sullivan  <sullivan (a] apple.com>
   21200 
   21201         Reviewed by Dan Bernstein and Kevin Decker
   21202         
   21203         - fixed <rdar://problem/5879597> reproducible crash in HTMLSelectElement::typeAheadFind
   21204 
   21205         Test: fast/forms/select-type-ahead-list-box-no-selection.html
   21206 
   21207         * html/HTMLSelectElement.cpp:
   21208         (WebCore::HTMLSelectElement::typeAheadFind):
   21209         When there's no initially-selected element, we were accessing index -1. Check for this
   21210         case and start at 0.
   21211 
   21212 2008-05-13  Sam Weinig  <sam (a] webkit.org>
   21213 
   21214         Reviewed by Dan Bernstein.
   21215 
   21216         Small cleanup to XMLHttpRequest in preparation for Access Control changes.
   21217 
   21218         * xml/XMLHttpRequest.cpp:
   21219         (WebCore::XMLHttpRequest::XMLHttpRequest):
   21220         (WebCore::XMLHttpRequest::~XMLHttpRequest):
   21221         (WebCore::XMLHttpRequest::open):
   21222         (WebCore::XMLHttpRequest::send):
   21223         (WebCore::XMLHttpRequest::internalAbort):
   21224         (WebCore::XMLHttpRequest::processSyncLoadResults):
   21225         (WebCore::XMLHttpRequest::didFinishLoading):
   21226         (WebCore::XMLHttpRequest::didReceiveResponse):
   21227         (WebCore::XMLHttpRequest::didReceiveData):
   21228         * xml/XMLHttpRequest.h:
   21229 
   21230 2008-05-13  chris fleizach  <cfleizach (a] apple.com>
   21231 
   21232         Beth Dakin
   21233 
   21234         <rdar://problem/5701210> VO: If image is missing, VoiceOver does not speak the alternative text.
   21235 
   21236         * page/AccessibilityRenderObject.cpp:
   21237         (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
   21238 
   21239 2008-05-13  chris fleizach  <cfleizach (a] apple.com>
   21240 
   21241         Beth Dakin
   21242 
   21243         <rdar://problem/5908446> AX: webkit needs to return blockquote information for all AX objects, not just in AXTextMarker info
   21244 
   21245         * page/mac/AccessibilityObjectWrapper.mm:
   21246         (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
   21247         (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
   21248 
   21249 2008-05-13  Alexey Proskuryakov  <ap (a] webkit.org>
   21250 
   21251         Reviewed by John Sullivan.
   21252 
   21253         <rdar://problem/4852077> REGRESSION: The content of the HTML file which is saved as Thai
   21254         (ISO 8859-11) disappear.
   21255 
   21256         <rdar://problem/5842597> Thai ISO-8859-11 should be upgraded to Windows-874
   21257 
   21258         Test: fast/encoding/char-decoding.html
   21259 
   21260         * platform/text/TextCodecICU.cpp: (WebCore::TextCodecICU::registerExtendedEncodingNames):
   21261         Register ISO-8859-11, which doesn't have a standard IANA name, despite following
   21262         the usual 8859 naming scheme. Also, made TIS-620 map to windows-874-2000 explicitly.
   21263 
   21264 2008-05-13  chris fleizach  <cfleizach (a] apple.com>
   21265 
   21266         Reviewed by Beth Dakin
   21267 
   21268         <rdar://problem/5471973> Some AXLinks are not getting AXTitles though there is title text
   21269 
   21270         * page/AccessibilityRenderObject.cpp:
   21271         (WebCore::AccessibilityRenderObject::title):
   21272 
   21273 2008-05-13  Alexey Proskuryakov  <ap (a] webkit.org>
   21274 
   21275         Reviewed by Eric Seidel.
   21276 
   21277         https://bugs.webkit.org/show_bug.cgi?id=18681
   21278         <rdar://problem/5888130> WebKit should not remove BOM characters from content.
   21279 
   21280         We were only trying to match Firefox, and it doesn't do this any more.
   21281 
   21282         Tests: fast/encoding/bom-in-content.html
   21283                fast/encoding/bom-in-content-utf16.html
   21284 
   21285         * platform/text/TextDecoder.cpp: (WebCore::TextDecoder::checkForBOM): Skip the BOM if it's
   21286         at the start of input stream.
   21287 
   21288         * platform/text/TextCodec.cpp:
   21289         * platform/text/TextCodec.h:
   21290         * platform/text/TextCodecICU.cpp:
   21291         (WebCore::TextCodecICU::decode):
   21292         * platform/text/TextCodecUTF16.cpp:
   21293         (WebCore::TextCodecUTF16::decode):
   21294         * platform/text/mac/TextCodecMac.cpp:
   21295         (WebCore::TextCodecMac::decode):
   21296         Don't remove the BOM.
   21297 
   21298 2008-05-13  Anders Carlsson  <andersca (a] apple.com>
   21299 
   21300         Reviewed by Darin.
   21301 
   21302         Don't crash when a document loader is destroyed while an initial caching attempt
   21303         is in progress.
   21304 
   21305         * loader/appcache/ApplicationCacheGroup.cpp:
   21306         (WebCore::ApplicationCacheGroup::~ApplicationCacheGroup):
   21307         Stop loading.
   21308         
   21309         (WebCore::ApplicationCacheGroup::stopLoading):
   21310         New method that stops a cache update.
   21311         
   21312         (WebCore::ApplicationCacheGroup::documentLoaderDestroyed):
   21313         Delete ourselves here.
   21314         
   21315         * loader/appcache/ApplicationCacheGroup.h:
   21316 
   21317 2008-05-13  Alexey Proskuryakov  <ap (a] webkit.org>
   21318 
   21319         Reviewed by Darin.
   21320 
   21321         <rdar://problem/5841351> Turkish ISO 8859-9 encoding should be treated as windows-1254
   21322 
   21323         Match IE and upgrade ISO-8859-9 to windows-1254, which is its strict superset.
   21324 
   21325         Test: fast/encoding/char-decoding.html
   21326 
   21327         * platform/text/TextCodecICU.cpp:
   21328         (WebCore::TextCodecICU::registerExtendedEncodingNames): Register the standard name
   21329         unconditionally. Previously, we registered windows-949-2000 as a special case that lacked 
   21330         an IANA standard name, and got away with not registering GBK because it happened
   21331         to be reported by ICU normally earlier than any encoding upgraded to it.
   21332 
   21333 2008-05-13  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   21334 
   21335         Reviewed by Simon
   21336 
   21337         Fix QtWebKit build on Qt embedded.
   21338 
   21339         * WebCore.pro:
   21340         * platform/FileSystem.h:
   21341         * platform/qt/FileSystemQt.cpp:
   21342 
   21343 2008-05-13  Ariya Hidayat  <ariya.hidayat (a] trolltech.com>
   21344 
   21345         Reviewed by Simon.
   21346 
   21347         For Gtk/X11 and Qt/X11, use a more extensive plug-ins scan directories set
   21348 
   21349         * plugins/PluginDatabase.cpp:
   21350         (WebCore::addMozillaPluginDirectories):
   21351         (WebCore::PluginDatabase::isPreferredPluginDirectory):
   21352 
   21353 2008-05-12  Adam Roben  <aroben (a] apple.com>
   21354 
   21355         Turn on warnings as errors in WebCore.vcproj
   21356 
   21357         Rubberstamped by Anders Carlsson.
   21358 
   21359         * WebCore.vcproj/WebCore.vcproj: Also let VS reformat the file as it
   21360         saw fit. The important part is the removal of the WarnAsError="false"
   21361         lines.
   21362 
   21363 2008-05-12  Adam Roben  <aroben (a] apple.com>
   21364 
   21365         Fix a MSVC warning in PluginViewWin
   21366 
   21367         Reviewed by Anders Carlsson.
   21368 
   21369         Test: http/tests/plugins/post-url-file.html
   21370 
   21371         * plugins/win/PluginViewWin.cpp:
   21372         (WebCore::PluginView::handlePostReadFile): Added a missing return
   21373         statement.
   21374 
   21375 2008-05-12  Adam Roben  <aroben (a] apple.com>
   21376 
   21377         Fix a MSVC warning in GetEOTHeader
   21378 
   21379         Reviewed by Dan Bernstein.
   21380 
   21381         * platform/graphics/win/GetEOTHeader.cpp:
   21382         (WebCore::getEOTHeader): MSVC complains that having a 0-sized array in
   21383         a struct is a non-standard extension. I've replaced the 0-sized arrays
   21384         with arrays of 1 element, and replaced sizeof(structType) with
   21385         offsetof(structType, arrayMember).
   21386 
   21387 2008-05-09  Adam Roben  <aroben (a] apple.com>
   21388 
   21389         Fix a MSVC warning in TextCodecICU
   21390 
   21391         Reviewed by John Sullivan and Dan Bernstein.
   21392 
   21393         * platform/text/TextCodecICU.cpp:
   21394         (WebCore::ErrorCallbackSetter::~ErrorCallbackSetter):
   21395         UCNV_SUB_STOP_ON_ILLEGAL is a string literal, so using == with it
   21396         doesn't really do what we want. Use strcmp instead. It's OK to pass an
   21397         unknown value to strcmp here since 1) UCNV_SUB_STOP_ON_ILLEGAL is only
   21398         a single character long so we're not going to ready more than 2 bytes
   21399         from oldContext, and 2) we're inside an ASSERT which will cause a
   21400         crash anyway if it fails.
   21401 
   21402 2008-05-09  Adam Roben  <aroben (a] apple.com>
   21403 
   21404         Fix a MSVC warning in CSSComputedStyleDeclaration
   21405 
   21406         Reviewed by Geoff Garen.
   21407 
   21408         * css/CSSComputedStyleDeclaration.cpp:
   21409         (WebCore::valueForRepeatRule): Removed some unreachable code.
   21410 
   21411 2008-05-09  Adam Roben  <aroben (a] apple.com>
   21412 
   21413         Fix a MSVC warning in InlineTextBox
   21414 
   21415         Reviewed by Dan Bernstein.
   21416 
   21417         * rendering/InlineTextBox.cpp:
   21418         (WebCore::InlineTextBox::paint): Initialize some variables that MSVC
   21419         isn't smart enough to figure out will always be initialized in the
   21420         cases where they are used.
   21421 
   21422 2008-05-09  Adam Roben  <aroben (a] apple.com>
   21423 
   21424         Fix a MSVC warning in Position
   21425 
   21426         Reviewed by Darin Adler.
   21427 
   21428         * dom/Position.cpp:
   21429         (WebCore::Position::getInlineBoxAndOffset): Use parentheses to make
   21430         the precedence of our expressions explicit.
   21431 
   21432 2008-05-09  Adam Roben  <aroben (a] apple.com>
   21433 
   21434         Fix a MSVC warning in String
   21435 
   21436         Reviewed by Geoff Garen.
   21437 
   21438         * platform/text/String.cpp:
   21439         (WebCore::toIntegralType): Disable a bogus warning about using unary -
   21440         on an unsigned value. MSVC isn't smart enough to figure out that
   21441         isNegative will always be false when value is unsigned.
   21442 
   21443 2008-05-09  Adam Roben  <aroben (a] apple.com>
   21444 
   21445         Fix a MSVC warning in XMLHttpRequest
   21446 
   21447         Reviewed by Geoff Garen.
   21448 
   21449         * xml/XMLHttpRequest.cpp:
   21450         (WebCore::XMLHttpRequest::XMLHttpRequest): Added static_cast<unsigned
   21451         long>.
   21452 
   21453 2008-05-12  Anders Carlsson  <andersca (a] apple.com>
   21454 
   21455         Reviewed by Adam.
   21456 
   21457         Handle the case when a resource with the same URL as the manifest is listed in the manifest.
   21458 
   21459         * loader/appcache/ApplicationCacheGroup.cpp:
   21460         (WebCore::ApplicationCacheGroup::addEntry):
   21461 
   21462 2008-05-12  Sam Weinig  <sam (a] webkit.org>
   21463 
   21464         Reviewed by Dan Bernstein.
   21465 
   21466         Add parsing of AccessControlHeader and AccessItemRule.
   21467 
   21468         * xml/AccessControlList.cpp:
   21469         (WebCore::AccessControlList::parseAccessControlHeader): When multiple http headers are sent
   21470         in the response, the engine will concatenate them with commas separating the rules.  This simply
   21471         reverses that process by splitting on the commas.
   21472         (WebCore::AccessControlList::show):
   21473         * xml/AccessControlList.h:
   21474         * xml/AccessItem.cpp:
   21475         (WebCore::AccessItem::AccessItem):
   21476         (WebCore::AccessItem::show):
   21477         * xml/AccessItem.h:
   21478         (WebCore::AccessItem::isValid):
   21479         * xml/AccessItemRule.cpp:
   21480         (WebCore::skipLWS):
   21481         (WebCore::AccessItemRule::parseAccessItemRule): Parse the rule according to the BNF provided by
   21482         the Access Control spec.
   21483         (WebCore::AccessItemRule::parsePatternList):
   21484         (WebCore::AccessItemRule::invalidate):
   21485         (WebCore::AccessItemRule::show):
   21486         * xml/AccessItemRule.h:
   21487 
   21488 2008-05-12  David Kilzer  <ddkilzer (a] apple.com>
   21489 
   21490         Fix logic error in DocLoader::clearPreloads()
   21491 
   21492         Reviewed by Antti.
   21493 
   21494         * loader/DocLoader.cpp:
   21495         (WebCore::DocLoader::clearPreloads): Be sure to decrease the preload count for
   21496         the cached resource before trying to remove it from the cache.  A non-zero
   21497         preload count can prevent the resource from being removed from the cache.
   21498 
   21499 2008-05-12  Anders Carlsson  <andersca (a] apple.com>
   21500 
   21501         Reviewed by Adam.
   21502 
   21503         Handle empty manifest files without crashing.
   21504         
   21505         * loader/appcache/ApplicationCacheGroup.cpp:
   21506         (WebCore::ApplicationCacheGroup::startLoadingEntry):
   21507 
   21508 2008-05-12  Alp Toker  <alp (a] nuanti.com>
   21509 
   21510         GTK+ build fix for breakage in r33056. Include limits.h for INT_MAX.
   21511 
   21512         * platform/graphics/FontCache.h:
   21513 
   21514 2008-05-12  Anders Carlsson  <andersca (a] apple.com>
   21515 
   21516         Reviewed by Adam.
   21517 
   21518         Add user agent to requests when loading/updating the cache.
   21519     
   21520         * loader/FrameLoader.h:
   21521         * loader/appcache/ApplicationCacheGroup.cpp:
   21522         (WebCore::ApplicationCacheGroup::update):
   21523         (WebCore::ApplicationCacheGroup::startLoadingEntry):
   21524 
   21525 2008-05-12  Anders Carlsson  <andersca (a] apple.com>
   21526 
   21527         Reviewed by Adam.
   21528 
   21529         Make it possible to perform synchronous loads from the application cache.
   21530         
   21531         * loader/DocumentLoader.cpp:
   21532         (WebCore::DocumentLoader::shouldLoadResourceFromApplicationCache):
   21533         Factor out code from scheduleApplicationCacheLoad in its own method.
   21534         
   21535         (WebCore::DocumentLoader::scheduleApplicationCacheLoad):
   21536         Call shouldLoadResourceFromApplicationCache here instead.
   21537         
   21538         * loader/DocumentLoader.h:
   21539         
   21540         * loader/FrameLoader.cpp:
   21541         (WebCore::FrameLoader::loadResourceSynchronously):
   21542         Call shouldLoadResourceFromApplicationCache.
   21543 
   21544 2008-05-12  Dan Bernstein  <mitz (a] apple.com>
   21545 
   21546         Reviewed by Ada Chan and Sam Weinig.
   21547 
   21548         - WebCore changes for https://bugs.webkit.org/show_bug.cgi?id=17097
   21549           <rdar://problem/5715471> CGFontRefs (and HFONTs on Windows) leak because FontCache grows without bound
   21550 
   21551         Added a way for clients to let the cache know that they no longer need
   21552         font data, which lets the cache release it. Changed clients to track
   21553         most of the font data they get from the cache so that they can later
   21554         release it. Some instances of font data -- namely, those used for system
   21555         font fallback -- are still not tracked and will therefore remain in the
   21556         cache indefinitely.
   21557 
   21558         * WebCore.base.exp: Added exports for WebCoreStatistics in WebKit.
   21559 
   21560         * platform/graphics/Font.cpp:
   21561         (WebCore::Font::Font): Changed to use FontFallbackList::create().
   21562         (WebCore::Font::update): Ditto.
   21563 
   21564         * platform/graphics/FontCache.cpp:
   21565         (WebCore::FontCache::getCachedFontData): Added code to track the number
   21566         of times a SimpleFontData instance has been requested from the cache,
   21567         remove requested instances from the inactive list, and purge inactive
   21568         font data if the inactive list has grown above its maximum allowed size.
   21569         (WebCore::FontCache::releaseFontData): Added. Called by clients to let
   21570         the cache know that they no longer need the font data. Adds the font
   21571         data to the inactive list if the last client has released it.
   21572         (WebCore::FontCache::purgeInactiveFontData): Added. Removes inactive
   21573         font data from the cache (and the inactive list).
   21574         (WebCore::FontCache::fontDataCount): Added to provide statistics.
   21575         (WebCore::FontCache::inactiveFontDataCount): Ditto.
   21576 
   21577         * platform/graphics/FontCache.h:
   21578 
   21579         * platform/graphics/FontData.h:
   21580         (WebCore::FontData::FontData): Added a member variable to store the
   21581         highest glyph page tree level in which there is a node for this FontData.
   21582         This is used to limit the depth of the search when pruning glyph page
   21583         trees.
   21584         (WebCore::FontData::setMaxGlyphPageTreeLevel): Added this accessor.
   21585         (WebCore::FontData::maxGlyphPageTreeLevel): Ditto.
   21586 
   21587         * platform/graphics/FontFallbackList.cpp:
   21588         (WebCore::FontFallbackList::FontFallbackList): Changed to start with a
   21589         refcount of 1.
   21590         (WebCore::FontFallbackList::invalidate): Added a call to
   21591         releaseFontData().
   21592         (WebCore::FontFallbackList::releaseFontData): Added. Lets the font cache
   21593         know that we no longer need the FontData in our font list.
   21594         (WebCore::FontFallbackList::fontDataAt): Changed to record in the font
   21595         list whether the font data is a custom font data or not.
   21596         (WebCore::FontFallbackList::setPlatformFont): Ditto.
   21597 
   21598         * platform/graphics/FontFallbackList.h:
   21599         (WebCore::FontFallbackList::create): Added and made the constructor
   21600         private.
   21601         (WebCore::FontFallbackList::~FontFallbackList): Added a call to
   21602         releaseFontData().
   21603 
   21604         * platform/graphics/GlyphPageTreeNode.cpp:
   21605         (WebCore::GlyphPageTreeNode::treeGlyphPageCount): Added to provide
   21606         statistics.
   21607         (WebCore::GlyphPageTreeNode::pageCount): Ditto.
   21608 
   21609         (WebCore::GlyphPageTreeNode::pruneTreeFontData): Added.
   21610         (WebCore::GlyphPageTreeNode::getChild): Added code to update the font
   21611         data's maximum glyph page tree level.
   21612         (WebCore::GlyphPageTreeNode::pruneFontData): Added.
   21613 
   21614         * platform/graphics/GlyphPageTreeNode.h:
   21615 
   21616         * platform/graphics/SimpleFontData.cpp:
   21617         (WebCore::SimpleFontData::~SimpleFontData): Added code to let the font
   21618         cache know that we no longer need the small caps font data and to prune
   21619         the glyph page trees.
   21620 
   21621 2008-05-12  Anders Carlsson  <andersca (a] apple.com>
   21622 
   21623         Reviewed by Alexey.
   21624 
   21625         Add ApplicationCacheStorage::empty() method which will empty
   21626         the application cache database.
   21627         
   21628         * WebCore.base.exp:
   21629         * loader/appcache/ApplicationCache.cpp:
   21630         (WebCore::ApplicationCache::clearStorageID):
   21631         * loader/appcache/ApplicationCache.h:
   21632         * loader/appcache/ApplicationCacheGroup.cpp:
   21633         (WebCore::ApplicationCacheGroup::clearStorageID):
   21634         * loader/appcache/ApplicationCacheGroup.h:
   21635         * loader/appcache/ApplicationCacheResource.h:
   21636         (WebCore::ApplicationCacheResource::clearStorageID):
   21637         * loader/appcache/ApplicationCacheStorage.cpp:
   21638         (WebCore::ApplicationCacheStorage::empty):
   21639         * loader/appcache/ApplicationCacheStorage.h:
   21640 
   21641 2008-05-12  Anders Carlsson  <andersca (a] apple.com>
   21642 
   21643         Reviewed by John.
   21644 
   21645         Don't throw an exception if the string passed in is an invalid URL.
   21646         
   21647         * loader/appcache/DOMApplicationCache.cpp:
   21648         (WebCore::DOMApplicationCache::remove):
   21649 
   21650 2008-05-12  Anders Carlsson  <andersca (a] apple.com>
   21651 
   21652         Reviewed by Mitz.
   21653 
   21654         Add the variable enums for getting the input vtables.
   21655         
   21656         * bridge/npapi.h:
   21657 
   21658 2008-05-12  Adam Roben  <aroben (a] apple.com>
   21659 
   21660         Windows build fix
   21661 
   21662         * WebCorePrefix.cpp: Touched this so that it will rebuild now that
   21663         ENABLE_CROSS_DOCUMENT_MESSAGING has been removed.
   21664 
   21665 2008-05-12  Alexey Proskuryakov  <ap (a] webkit.org>
   21666 
   21667         Roll out recent  threading changes (r32807, r32810, r32819, r32822) to simplify
   21668         SquirrelFish merging.
   21669 
   21670         * bindings/js/GCController.cpp:
   21671         (WebCore::collect):
   21672         (WebCore::GCController::gcTimerFired):
   21673         (WebCore::GCController::garbageCollectNow):
   21674         * bindings/js/JSAudioConstructor.cpp:
   21675         (WebCore::JSAudioConstructor::JSAudioConstructor):
   21676         * bindings/js/JSCSSRuleCustom.cpp:
   21677         (WebCore::toJS):
   21678         * bindings/js/JSCSSStyleDeclarationCustom.cpp:
   21679         (WebCore::JSCSSStyleDeclaration::nameGetter):
   21680         * bindings/js/JSCSSValueCustom.cpp:
   21681         (WebCore::toJS):
   21682         * bindings/js/JSCanvasPixelArrayCustom.cpp:
   21683         (WebCore::JSCanvasPixelArray::indexGetter):
   21684         (WebCore::toJS):
   21685         * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
   21686         (WebCore::toJS):
   21687         * bindings/js/JSClipboardCustom.cpp:
   21688         (WebCore::JSClipboard::types):
   21689         (WebCore::JSClipboard::getData):
   21690         * bindings/js/JSCustomXPathNSResolver.cpp:
   21691         (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
   21692         * bindings/js/JSDOMApplicationCacheCustom.cpp:
   21693         (WebCore::JSDOMApplicationCache::addEventListener):
   21694         (WebCore::JSDOMApplicationCache::removeEventListener):
   21695         (WebCore::JSDOMApplicationCache::setOnchecking):
   21696         (WebCore::JSDOMApplicationCache::setOnerror):
   21697         (WebCore::JSDOMApplicationCache::setOnnoupdate):
   21698         (WebCore::JSDOMApplicationCache::setOndownloading):
   21699         (WebCore::JSDOMApplicationCache::setOnprogress):
   21700         (WebCore::JSDOMApplicationCache::setOnupdateready):
   21701         (WebCore::JSDOMApplicationCache::setOncached):
   21702         * bindings/js/JSDOMWindowBase.cpp:
   21703         (WebCore::JSDOMWindowBase::JSDOMWindowBase):
   21704         (WebCore::JSDOMWindowBase::getValueProperty):
   21705         (WebCore::JSDOMWindowBase::setListener):
   21706         (WebCore::JSDOMWindowBase::findOrCreateJSEventListener):
   21707         (WebCore::JSDOMWindowBase::findJSUnprotectedEventListener):
   21708         (WebCore::JSDOMWindowBase::findOrCreateJSUnprotectedEventListener):
   21709         (WebCore::windowProtoFuncAToB):
   21710         (WebCore::windowProtoFuncBToA):
   21711         (WebCore::windowProtoFuncSetTimeout):
   21712         (WebCore::windowProtoFuncSetInterval):
   21713         (WebCore::windowProtoFuncAddEventListener):
   21714         * bindings/js/JSDOMWindowBase.h:
   21715         * bindings/js/JSDOMWindowShell.cpp:
   21716         * bindings/js/JSDOMWindowShell.h:
   21717         * bindings/js/JSDocumentCustom.cpp:
   21718         (WebCore::toJS):
   21719         * bindings/js/JSEventCustom.cpp:
   21720         (WebCore::toJS):
   21721         * bindings/js/JSEventTargetBase.cpp:
   21722         (WebCore::jsEventTargetAddEventListener):
   21723         * bindings/js/JSEventTargetBase.h:
   21724         (WebCore::JSEventTargetPrototype::self):
   21725         * bindings/js/JSEventTargetNode.cpp:
   21726         (WebCore::JSEventTargetNode::setListener):
   21727         * bindings/js/JSHTMLCollectionCustom.cpp:
   21728         (WebCore::getNamedItems):
   21729         (WebCore::toJS):
   21730         * bindings/js/JSHTMLElementWrapperFactory.cpp:
   21731         (WebCore::createJSHTMLWrapper):
   21732         * bindings/js/JSHTMLFormElementCustom.cpp:
   21733         (WebCore::JSHTMLFormElement::nameGetter):
   21734         * bindings/js/JSHTMLInputElementBase.cpp:
   21735         (WebCore::JSHTMLInputElementBase::getValueProperty):
   21736         * bindings/js/JSHTMLOptionElementConstructor.cpp:
   21737         (WebCore::JSHTMLOptionElementConstructor::JSHTMLOptionElementConstructor):
   21738         * bindings/js/JSHTMLOptionsCollectionCustom.cpp:
   21739         (WebCore::JSHTMLOptionsCollection::length):
   21740         * bindings/js/JSInspectedObjectWrapper.cpp:
   21741         (WebCore::JSInspectedObjectWrapper::wrap):
   21742         * bindings/js/JSInspectorCallbackWrapper.cpp:
   21743         (WebCore::JSInspectorCallbackWrapper::wrap):
   21744         * bindings/js/JSLocationCustom.cpp:
   21745         (WebCore::JSLocation::toString):
   21746         * bindings/js/JSNamedNodesCollection.cpp:
   21747         (WebCore::JSNamedNodesCollection::lengthGetter):
   21748         * bindings/js/JSNavigatorCustom.cpp:
   21749         (WebCore::JSNavigator::appVersion):
   21750         * bindings/js/JSNodeCustom.cpp:
   21751         (WebCore::toJS):
   21752         * bindings/js/JSNodeFilterCustom.cpp:
   21753         (WebCore::JSNodeFilter::acceptNode):
   21754         * bindings/js/JSRGBColor.cpp:
   21755         (WebCore::getJSRGBColor):
   21756         * bindings/js/JSSQLResultSetRowListCustom.cpp:
   21757         (WebCore::JSSQLResultSetRowList::item):
   21758         * bindings/js/JSSVGElementWrapperFactory.cpp:
   21759         (WebCore::createJSSVGWrapper):
   21760         * bindings/js/JSSVGLazyEventListener.cpp:
   21761         (WebCore::JSSVGLazyEventListener::eventParameterName):
   21762         * bindings/js/JSStorageCustom.cpp:
   21763         (WebCore::JSStorage::nameGetter):
   21764         * bindings/js/JSStyleSheetCustom.cpp:
   21765         (WebCore::toJS):
   21766         * bindings/js/JSXMLHttpRequestConstructor.cpp:
   21767         (WebCore::JSXMLHttpRequestConstructor::construct):
   21768         * bindings/js/JSXMLHttpRequestCustom.cpp:
   21769         (WebCore::JSXMLHttpRequest::setOnreadystatechange):
   21770         (WebCore::JSXMLHttpRequest::setOnload):
   21771         (WebCore::JSXMLHttpRequest::setOnprogress):
   21772         (WebCore::JSXMLHttpRequest::getResponseHeader):
   21773         (WebCore::JSXMLHttpRequest::addEventListener):
   21774         (WebCore::JSXMLHttpRequest::removeEventListener):
   21775         * bindings/js/JSXSLTProcessorConstructor.cpp:
   21776         (WebCore::JSXSLTProcessorConstructor::construct):
   21777         * bindings/js/JSXSLTProcessorCustom.cpp:
   21778         (WebCore::JSXSLTProcessor::getParameter):
   21779         * bindings/js/kjs_binding.cpp:
   21780         (WebCore::jsStringOrNull):
   21781         (WebCore::jsOwnedStringOrNull):
   21782         (WebCore::jsStringOrUndefined):
   21783         (WebCore::jsStringOrFalse):
   21784         (WebCore::nonCachingStaticFunctionGetter):
   21785         (WebCore::objectToStringFunctionGetter):
   21786         * bindings/js/kjs_binding.h:
   21787         (WebCore::DOMObject::DOMObject):
   21788         (WebCore::cacheDOMObject):
   21789         (WebCore::cacheSVGDOMObject):
   21790         * bindings/js/kjs_events.cpp:
   21791         (WebCore::JSLazyEventListener::eventParameterName):
   21792         (WebCore::JSLazyEventListener::parseCode):
   21793         * bindings/js/kjs_html.cpp:
   21794         (WebCore::getRuntimeObject):
   21795         * bindings/scripts/CodeGeneratorJS.pm:
   21796         * bridge/c/c_instance.cpp:
   21797         (KJS::Bindings::CInstance::defaultValue):
   21798         (KJS::Bindings::CInstance::stringValue):
   21799         (KJS::Bindings::CInstance::numberValue):
   21800         (KJS::Bindings::CInstance::valueOf):
   21801         * bridge/c/c_instance.h:
   21802         * bridge/c/c_utility.cpp:
   21803         (KJS::Bindings::convertNPVariantToValue):
   21804         * bridge/jni/jni_instance.cpp:
   21805         (JavaInstance::stringValue):
   21806         (JavaInstance::numberValue):
   21807         (JavaInstance::invokeMethod):
   21808         (JavaInstance::defaultValue):
   21809         (JavaInstance::valueOf):
   21810         * bridge/jni/jni_instance.h:
   21811         * bridge/jni/jni_jsobject.h:
   21812         * bridge/jni/jni_jsobject.mm:
   21813         (JavaJSObject::call):
   21814         (JavaJSObject::setMember):
   21815         (JavaJSObject::setSlot):
   21816         (JavaJSObject::convertJObjectToValue):
   21817         (JavaJSObject::getListFromJArray):
   21818         * bridge/jni/jni_objc.mm:
   21819         (KJS::Bindings::dispatchJNICall):
   21820         * bridge/jni/jni_runtime.cpp:
   21821         (JavaArray::convertJObjectToArray):
   21822         (JavaField::dispatchValueFromInstance):
   21823         (JavaField::valueFromInstance):
   21824         (JavaField::dispatchSetValueToInstance):
   21825         (JavaArray::valueAt):
   21826         * bridge/jni/jni_utility.h:
   21827         * bridge/objc/objc_class.mm:
   21828         (KJS::Bindings::ObjcClass::fallbackObject):
   21829         * bridge/objc/objc_instance.h:
   21830         * bridge/objc/objc_instance.mm:
   21831         (ObjcInstance::defaultValue):
   21832         (ObjcInstance::stringValue):
   21833         (ObjcInstance::numberValue):
   21834         (ObjcInstance::valueOf):
   21835         * bridge/objc/objc_utility.h:
   21836         * bridge/objc/objc_utility.mm:
   21837         (KJS::Bindings::convertNSStringToString):
   21838         (KJS::Bindings::convertObjcValueToValue):
   21839         * bridge/qt/qt_class.cpp:
   21840         (KJS::Bindings::QtClass::fallbackObject):
   21841         * bridge/qt/qt_instance.cpp:
   21842         (KJS::Bindings::QtRuntimeObjectImp::construct):
   21843         (KJS::Bindings::QtInstance::getRuntimeObject):
   21844         (KJS::Bindings::QtInstance::invokeDefaultMethod):
   21845         (KJS::Bindings::QtInstance::defaultValue):
   21846         (KJS::Bindings::QtInstance::stringValue):
   21847         (KJS::Bindings::QtInstance::numberValue):
   21848         (KJS::Bindings::QtInstance::valueOf):
   21849         * bridge/qt/qt_instance.h:
   21850         * bridge/qt/qt_runtime.cpp:
   21851         (KJS::Bindings::convertValueToQVariant):
   21852         (KJS::Bindings::convertQVariantToValue):
   21853         (KJS::Bindings::QtRuntimeMetaMethod::lengthGetter):
   21854         (KJS::Bindings::QtRuntimeMetaMethod::connectGetter):
   21855         (KJS::Bindings::QtRuntimeMetaMethod::disconnectGetter):
   21856         (KJS::Bindings::QtRuntimeConnectionMethod::lengthGetter):
   21857         (KJS::Bindings::QtConnectionObject::execute):
   21858         * bridge/runtime.cpp:
   21859         (KJS::Bindings::Instance::createRuntimeObject):
   21860         * bridge/runtime.h:
   21861         (KJS::Bindings::Instance::valueOf):
   21862         * bridge/runtime_array.cpp:
   21863         (RuntimeArray::lengthGetter):
   21864         * bridge/runtime_method.cpp:
   21865         (RuntimeMethod::lengthGetter):
   21866         * bridge/runtime_object.cpp:
   21867         (RuntimeObjectImp::RuntimeObjectImp):
   21868         (RuntimeObjectImp::methodGetter):
   21869         (RuntimeObjectImp::defaultValue):
   21870         * xml/XMLHttpRequest.cpp:
   21871         (WebCore::XMLHttpRequest::dropProtection):
   21872 
   21873 2008-05-11  Robin Dunn  <robin (a] alldunn.com>
   21874 
   21875         Reviewed by Kevin Ollivier.
   21876 
   21877         Since wx popup menus dismiss themselves when an item is selected we need to
   21878         call hidePopup so webkit's internal state is correct.
   21879         
   21880         https://bugs.webkit.org/show_bug.cgi?id=19000
   21881 
   21882         * platform/wx/PopupMenuWx.cpp:
   21883         (WebCore::PopupMenu::OnMenuItemSelected):
   21884         (WebCore::PopupMenu::hide):
   21885 
   21886 2008-05-11  Sam Weinig  <sam (a] webkit.org>
   21887 
   21888         Reviewed by Mark Rowe.
   21889 
   21890         Move some generic parsing functions into a new ParserUtilities header so that
   21891         they can be used for non-SVG builds too.
   21892 
   21893         * WebCore.vcproj/WebCore.vcproj:
   21894         * WebCore.xcodeproj/project.pbxproj:
   21895         * platform/text/ParserUtilities.h: Added.
   21896         (WebCore::skipString):
   21897         * svg/SVGParserUtilities.h:
   21898         (WebCore::isWhitespace):
   21899         (WebCore::skipOptionalSpaces):
   21900         (WebCore::skipOptionalSpacesOrDelimiter):
   21901 
   21902 2008-05-11  Sam Weinig  <sam (a] webkit.org>
   21903 
   21904         Reviewed by Dan Bernstein.
   21905 
   21906         Add scaffolding for the implementation of Access Control for Cross-site Requests. 
   21907 
   21908         * GNUmakefile.am:
   21909         * WebCore.pro:
   21910         * WebCore.vcproj/WebCore.vcproj:
   21911         * WebCore.xcodeproj/project.pbxproj:
   21912         * WebCoreSources.bkl:
   21913         * xml/AccessControlList.cpp: Added.
   21914         (WebCore::AccessControlList::AccessControlList):
   21915         (WebCore::AccessControlList::~AccessControlList):
   21916         (WebCore::AccessControlList::parseAccessControlHeader):
   21917         (WebCore::AccessControlList::checkOrigin):
   21918         * xml/AccessControlList.h: Added.
   21919         * xml/AccessItem.cpp: Added.
   21920         (WebCore::AccessItem::AccessItem):
   21921         (WebCore::AccessItem::parseAccessItem):
   21922         (WebCore::AccessItem::matches):
   21923         * xml/AccessItem.h: Added.
   21924         * xml/AccessItemRule.cpp: Added.
   21925         (WebCore::AccessItemRule::AccessItemRule):
   21926         (WebCore::AccessItemRule::parseAccessItemRule):
   21927         * xml/AccessItemRule.h: Added.
   21928 
   21929 2008-05-11  Julien Chaffraix  <jchaffraix (a] webkit.org>
   21930 
   21931         Debug build fix.
   21932 
   21933         * loader/appcache/ApplicationCache.cpp: Include stdio.h
   21934         as we are using printf in ApplicationCache::dump().
   21935 
   21936 2008-05-10  Dan Bernstein  <mitz (a] apple.com>
   21937 
   21938         Reviewed by Jessica Kahn.
   21939 
   21940         - add a copy assignment operator to FontPlatformData on Mac to properly
   21941           retain the m_font data member.
   21942 
   21943         * platform/graphics/mac/FontPlatformData.h:
   21944         * platform/graphics/mac/FontPlatformDataMac.mm:
   21945         (WebCore::FontPlatformData::FontPlatformData):
   21946         (WebCore::~FontPlatformData):
   21947         (WebCore::FontPlatformData::operator=):
   21948         (WebCore::FontPlatformData::setFont):
   21949 
   21950 2008-05-10  Adele Peterson  <adele (a] apple.com>
   21951 
   21952         Reviewed by Tim Hatcher.
   21953 
   21954         Fix crash for WebKit clients that don't set a group name for the WebView/Page.
   21955 
   21956         * page/PageGroup.cpp: (WebCore::PageGroup::PageGroup): Instead of adding the Page directly to the group,
   21957           call the addPage method, since it does extra work initializing m_localStorage.
   21958 
   21959 2008-05-09  Sam Weinig  <sam (a] webkit.org>
   21960 
   21961         Reviewed by Mark Rowe.
   21962 
   21963         Fix for https://bugs.webkit.org/show_bug.cgi?id=18958
   21964         NULL pointer dereference in NamedAttrMap::setNamedItem
   21965 
   21966         Test: fast/dom/NamedNodeMap-setNamedItem-crash.html
   21967 
   21968         * dom/NamedAttrMap.cpp:
   21969         (WebCore::NamedAttrMap::setNamedItem): Null check the argument.
   21970 
   21971 2008-05-09  Kevin McCullough  <kmccullough (a] apple.com>
   21972 
   21973         Build fix.
   21974 
   21975         * page/Console.cpp:
   21976         (WebCore::Console::profile):
   21977 
   21978 2008-05-09  Sam Weinig  <sam (a] webkit.org>
   21979 
   21980         Rubber-stamped by Mark Rowe.
   21981 
   21982         Remove the ENABLE_CROSS_DOCUMENT_MESSAGING #ifdefs.
   21983 
   21984         * Configurations/WebCore.xcconfig:
   21985         * WebCore.vcproj/WebCore.vcproj:
   21986         * WebCore.vcproj/build-generated-files.sh:
   21987         * bindings/js/JSDOMWindowCustom.cpp:
   21988         (WebCore::JSDOMWindow::customGetOwnPropertySlot):
   21989         (WebCore::JSDOMWindow::postMessage):
   21990         * bindings/js/JSEventCustom.cpp:
   21991         (WebCore::toJS):
   21992         * bindings/objc/DOMEvents.mm:
   21993         (+[DOMEvent _wrapEvent:WebCore::]):
   21994         * dom/Document.cpp:
   21995         (WebCore::Document::createEvent):
   21996         * dom/Event.cpp:
   21997         (WebCore::Event::isMessageEvent):
   21998         * dom/Event.h:
   21999         * dom/MessageEvent.cpp:
   22000         * dom/MessageEvent.h:
   22001         * dom/MessageEvent.idl:
   22002         * page/DOMWindow.cpp:
   22003         (WebCore::DOMWindow::postMessageTimerFired):
   22004         * page/DOMWindow.h:
   22005         * page/DOMWindow.idl:
   22006 
   22007 2008-05-09  Adam Barth  <abarth-webkit (a] adambarth.com>
   22008 
   22009         Reviewed by Sam Weinig.
   22010 
   22011         https://bugs.webkit.org/show_bug.cgi?id=18771
   22012 
   22013         Make postMessage generate an event on the window instead of the
   22014         document.
   22015 
   22016         Test: http/tests/messaging/cross-domain-message-event-dispatch.html
   22017 
   22018         * dom/EventTargetNode.cpp:
   22019         (WebCore::EventTargetNode::dispatchWindowEvent):
   22020         * dom/EventTargetNode.h:
   22021         * page/DOMWindow.cpp:
   22022         (WebCore::DOMWindow::postMessageTimerFired):
   22023 
   22024 2008-05-09  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   22025 
   22026         Reviewed by Simon.
   22027 
   22028         Replaced all instances of qDebug() with LOG(Media, ...)
   22029         in MediaPlayerPrivatePhonon.
   22030 
   22031         * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
   22032         (WebCore::MediaPlayerPrivate::updateStates):
   22033 
   22034 2008-05-09  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   22035 
   22036         Reviewed by Simon
   22037 
   22038         Fix the Qt/Mac build.
   22039 
   22040         * platform/qt/FileSystemQt.cpp:
   22041 
   22042 2008-05-08  Sam Weinig  <sam (a] webkit.org>
   22043 
   22044         Reviewed by Anders Carlsson.
   22045 
   22046         Rename the XMLHttpRequestState enum values to match the spec.
   22047 
   22048         * xml/XMLHttpRequest.cpp:
   22049         (WebCore::XMLHttpRequest::responseXML):
   22050         (WebCore::XMLHttpRequest::XMLHttpRequest):
   22051         (WebCore::XMLHttpRequest::callReadyStateChangeListener):
   22052         (WebCore::XMLHttpRequest::open):
   22053         (WebCore::XMLHttpRequest::send):
   22054         (WebCore::XMLHttpRequest::abort):
   22055         (WebCore::XMLHttpRequest::setRequestHeader):
   22056         (WebCore::XMLHttpRequest::getAllResponseHeaders):
   22057         (WebCore::XMLHttpRequest::getResponseHeader):
   22058         (WebCore::XMLHttpRequest::status):
   22059         (WebCore::XMLHttpRequest::statusText):
   22060         (WebCore::XMLHttpRequest::processSyncLoadResults):
   22061         (WebCore::XMLHttpRequest::didFinishLoading):
   22062         (WebCore::XMLHttpRequest::didReceiveData):
   22063         * xml/XMLHttpRequest.h:
   22064 
   22065 2008-05-08  Dan Bernstein  <mitz (a] apple.com>
   22066 
   22067         Reviewed by Mark Rowe.
   22068 
   22069         - fix https://bugs.webkit.org/show_bug.cgi?id=18818
   22070           <rdar://problem/5901544> REGRESSION (3.1.1-TOT): Character order (float:left ordered after the first letter)
   22071 
   22072         Test: fast/css/first-letter-float-after-float.html
   22073 
   22074         * rendering/RenderBlock.cpp:
   22075         (WebCore::RenderBlock::updateFirstLetter): Changed to add the first
   22076         letter container right before the rest of the text it is taken from,
   22077         instead of at the beginning of the block.
   22078 
   22079 2008-05-08  Chris Fleizach  <cfleizach (a] apple.com>
   22080 
   22081         Reviewed by Darin Adler.
   22082 
   22083         <rdar://problem/5921046> AX: list box options have wrong AXPosition
   22084 
   22085         * page/AccessibilityObject.cpp:
   22086         (WebCore::AccessibilityObject::documentFrameView):
   22087         * page/AccessibilityObject.h:
   22088 
   22089 2008-05-08  Julien Chaffraix  <jchaffraix (a] webkit.org>
   22090 
   22091         Reviewed by Eric.
   22092 
   22093         Bug 18916: make_names.pl --factory needs to support custom c++ guard
   22094 
   22095         Add --guardFactoryWith to handle the cpp guard around generated factories.
   22096 
   22097         * DerivedSources.make: Set the guardFactoryWith variable for SVG factory.
   22098         * GNUmakefile.am: Ditto.
   22099         * WebCore.pro: Ditto.
   22100         * dom/make_names.pl: Add guardFactoryWith option.
   22101 
   22102 2008-05-08  Julien Chaffraix  <jchaffraix (a] webkit.org>
   22103 
   22104         Reviewed by Adam Roben.
   22105 
   22106         wx & Gtk build fix.
   22107 
   22108         Should also fix the cURL backend for the Windows port.
   22109 
   22110         * WebCore.vcproj/WebCore.vcproj: Add FormDataStreamCurl information.
   22111         * platform/network/curl/FormDataStreamCurl.h: Include stdio.h which
   22112         fixes the build on some machine.
   22113 
   22114         * webcore-wx.bkl: Add FormDataStreamCurl.cpp.
   22115 
   22116 2008-05-08  Timothy Hatcher  <timothy (a] apple.com>
   22117 
   22118         Fixes the bug where the Web Inspector could not
   22119         find any localization strings.
   22120 
   22121         Reviewed by Mark Rowe.
   22122 
   22123         * WebCore.xcodeproj/project.pbxproj: Add the localizedStrings.js
   22124         file to the WebCore Copy Resources phase. Also removes an idl from
   22125         the Copy Resources phase.
   22126 
   22127 2008-05-08  Dan Bernstein  <mitz (a] apple.com>
   22128 
   22129         Reviewed by Adam Roben.
   22130 
   22131         - fix <rdar://problem/5697957> "No recent searches" label in a narrow search field's history popup is truncated
   22132 
   22133         * platform/win/PopupMenuWin.cpp:
   22134         (WebCore::PopupMenu::calculatePositionAndSize): Changed to use a bold
   22135         font for measuring labels.
   22136 
   22137 2008-05-08  Dan Bernstein  <mitz (a] apple.com>
   22138 
   22139         Reviewed by Geoffrey Garen.
   22140 
   22141         - cross-platform fix for http://bugs.webkit.org/show_bug.cgi?id=17590 
   22142           ASSERTION FAILED: subject in jsRegExpExecute()
   22143 
   22144         * page/Frame.cpp:
   22145         (WebCore::Frame::matchLabelsAgainstElement):
   22146 
   22147 2008-05-08  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   22148 
   22149         Reviewed by Simon.
   22150 
   22151         Simple ImageBuffer::image implementation.
   22152 
   22153         In contrast to cg and cairo we do not use a special BitmapImage because
   22154         the ownership of the FrameData inside the BitmapImage is a bit backward
   22155         (actually owned by the ImageDecoderQt...). Further work is needed for image
   22156         and pixmap handling in the qt port...
   22157 
   22158         * WebCore.pro:
   22159         * platform/graphics/ImageBuffer.h:
   22160         * platform/graphics/qt/ImageBufferQt.cpp:
   22161         (WebCore::ImageBuffer::image):
   22162         * platform/graphics/qt/ImageQt.cpp:
   22163         * platform/graphics/qt/StillImageQt.cpp: Added.
   22164         (WebCore::StillImage::StillImage):
   22165         (WebCore::StillImage::size):
   22166         (WebCore::StillImage::getPixmap):
   22167         (WebCore::StillImage::draw):
   22168         * platform/graphics/qt/StillImageQt.h: Added.
   22169 
   22170 2008-05-08  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   22171 
   22172         Reviewed by Simon.
   22173 
   22174         Update the WebKit.qrc of the inspector to be functional again
   22175 
   22176         * page/inspector/WebKit.qrc:
   22177 
   22178 2008-05-08  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   22179 
   22180         Reviewed by Simon
   22181 
   22182         Fix the Qt/Mac build.
   22183 
   22184         * platform/FileSystem.h:
   22185 
   22186 2008-05-08  Ariya Hidayat  <ariya.hidayat (a] trolltech.com>
   22187 
   22188         Reviewed by Simon.
   22189 
   22190         Use native Windows library handling (instead of QLibrary) 
   22191         for Qt/Win32's PlatformModule.
   22192 
   22193         * platform/FileSystem.h:
   22194         (WebCore::PlatformModuleVersion::PlatformModuleVersion):
   22195         * platform/qt/FileSystemQt.cpp:
   22196         (WebCore::unloadModule):
   22197 
   22198 2008-05-08  Simon Hausmann  <hausmann (a] webkit.org>
   22199 
   22200         Reviewed and found by Holger.
   22201 
   22202         Include .css in the list of extensions for text/css. Fixes
   22203         fast/loader/local-css-allowed-in-strict-mode.html.
   22204 
   22205         * platform/qt/MIMETypeRegistryQt.cpp:
   22206 
   22207 2008-05-08  Simon Hausmann  <hausmann (a] webkit.org>
   22208 
   22209         Fix the Qt and Wx build when compiling without offline app support.
   22210 
   22211         * loader/FrameLoader.cpp:
   22212         (WebCore::FrameLoader::canCachePage):
   22213 
   22214 2008-05-07  Sam Weinig  <sam (a] webkit.org>
   22215 
   22216         Reviewed by Adele Peterson
   22217 
   22218         Update MessageEvent to match the latest version of the HTML5 spec,
   22219         adding the lastEventId attribute.
   22220 
   22221         * dom/MessageEvent.cpp:
   22222         (WebCore::MessageEvent::MessageEvent):
   22223         (WebCore::MessageEvent::initMessageEvent):
   22224         * dom/MessageEvent.h:
   22225         (WebCore::MessageEvent::lastEventId):
   22226         * dom/MessageEvent.idl:
   22227         * page/DOMWindow.cpp:
   22228         (WebCore::DOMWindow::postMessage):
   22229 
   22230 2008-05-07  Stephanie Lewis <slewis (a] apple.com>
   22231 
   22232         Reviewed by Maciej.
   22233 
   22234         remove non-functioning code.  If onunload should be fired from these nodes then
   22235         a WindowEventListener needs to be set.  However, Firefox and IE also do not
   22236         fire onunload events for these cases.
   22237 
   22238         Test: fast/events/onunload-not-on-body.html 
   22239         
   22240         * html/HTMLFrameElementBase.cpp:
   22241         (WebCore::HTMLFrameElementBase::parseMappedAttribute):
   22242         * html/HTMLObjectElement.cpp
   22243         (WebCore::HTMLObjectElement::parseMappedAttribute):
   22244 
   22245 2008-05-07  Dan Bernstein  <mitz (a] apple.com>
   22246 
   22247         Reviewed by John Sullivan.
   22248 
   22249         - fix https://bugs.webkit.org/show_bug.cgi?id=18909
   22250           <rdar://problem/5914165> REGRESSION (r31872-r31878): Viewed photos not closing completely at indycar.com
   22251 
   22252         Test: fast/dynamic/positioned-movement-with-positioned-children.html
   22253 
   22254         * rendering/RenderBlock.cpp:
   22255         (WebCore::RenderBlock::layoutOnlyPositionedObjects): Cover the case of
   22256         a positioned object that has only moved and has only positioned children
   22257         that have changed.
   22258         * rendering/RenderObject.h:
   22259         (WebCore::RenderObject::needsPositionedMovementLayout): Added this
   22260         accessor.
   22261 
   22262 2008-05-07  Anders Carlsson  <andersca (a] apple.com>
   22263 
   22264         Reviewed by John.
   22265 
   22266         When no document loaders are associated with an application cache group,
   22267         release the reference to the newest cache group. This prevents reference cycles.
   22268         
   22269         * loader/appcache/ApplicationCacheGroup.cpp:
   22270         (WebCore::ApplicationCacheGroup::ApplicationCacheGroup):
   22271         (WebCore::ApplicationCacheGroup::documentLoaderDestroyed):
   22272         (WebCore::ApplicationCacheGroup::cacheDestroyed):
   22273         * loader/appcache/ApplicationCacheGroup.h:
   22274         
   22275         * loader/appcache/ApplicationCacheStorage.cpp:
   22276         (WebCore::ApplicationCacheStorage::cacheGroupForURL):
   22277         Return early if the datbase wasn't open.
   22278         
   22279         (WebCore::ApplicationCacheStorage::loadCache):
   22280         Add error.
   22281 
   22282 2008-05-07  Anders Carlsson  <andersca (a] apple.com>
   22283 
   22284         Reviewed by Adam.
   22285 
   22286         Don't put pages with an application cache in the BF cache.
   22287         
   22288         * loader/FrameLoader.cpp:
   22289         (WebCore::FrameLoader::canCachePage):
   22290 
   22291 2008-05-07  Justin Garcia  <justin.garcia (a] apple.com>
   22292 
   22293         Reviewed by John Sullivan.
   22294 
   22295         <rdar://problem/5666354> Crashes in Mail at WebCore::RemoveNodeCommand::doApply
   22296         
   22297         When a single tab or series of tabs was copied, we weren't putting them into a 
   22298         tab span.  On Paste, we would be given a text node with a single tab or series
   22299         of tabs in it, and we would crash when inserting it at the start of a block
   22300         (where that kind of text becomes completely unrendered).
   22301 
   22302         * editing/ReplaceSelectionCommand.cpp:
   22303         (WebCore::ReplaceSelectionCommand::removeUnrenderedTextNodesAtEnds): Clean
   22304         up correctly and early return if we removed everything that was inserted.
   22305         * editing/markup.cpp:
   22306         (WebCore::createMarkup):  Include the tab span when the only thing copied
   22307         was a tab or a series of tabs.
   22308 
   22309 2008-05-07  Julien Chaffraix  <jchaffraix (a] webkit.org>
   22310 
   22311         Reviewed by Adam Roben.
   22312 
   22313         wx & Gtk build fix.
   22314 
   22315         * platform/network/curl/FormDataStreamCurl.cpp: Added stdint.h include. We need to define
   22316         __STDC_LIMIT_MACROS to have SIZE_MAX exported.
   22317         * platform/network/curl/FormDataStreamCurl.h: Removed cstdint include (replaced by stdint.h)
   22318         as it is not present on the build bots.
   22319         * plugins/gtk/PluginDatabaseGtk.cpp: Added missing #endif.
   22320 
   22321 2008-05-07  David Kilzer  <ddkilzer (a] apple.com>
   22322 
   22323         Bug 18900: Password field has focus but can't type text (i.rememberthemilk.com)
   22324         <https://bugs.webkit.org/show_bug.cgi?id=18900>
   22325         <rdar://problem/5912383>
   22326 
   22327         Original patch by Aaron Golden and Tim Omernick.  Reviewed by Adele.
   22328 
   22329         Test: fast/forms/textfield-to-password-on-focus.html
   22330 
   22331         * html/HTMLInputElement.cpp:
   22332         (WebCore::HTMLInputElement::setInputType): If the current node has
   22333         focus, call updateFocusAppearance() to make sure its state is correct
   22334         after changing its type.
   22335 
   22336 2008-05-07  Chris Fleizach  <cfleizach (a] apple.com>
   22337 
   22338         Reviewed by Alice Liu
   22339 
   22340         <rdar://problem/4867889> REGRESSION: "Choose File.." buttons are exposed as AXGroup instead of AXButton
   22341 
   22342         * page/AccessibilityObject.h:
   22343         (WebCore::AccessibilityObject::isFileUploadButton):
   22344         * page/AccessibilityRenderObject.cpp:
   22345         (WebCore::AccessibilityRenderObject::isFileUploadButton):
   22346         (WebCore::AccessibilityRenderObject::actionElement):
   22347         (WebCore::AccessibilityRenderObject::textUnderElement):
   22348         (WebCore::AccessibilityRenderObject::stringValue):
   22349         (WebCore::AccessibilityRenderObject::roleValue):
   22350         * page/AccessibilityRenderObject.h:
   22351         * rendering/RenderFileUploadControl.cpp:
   22352         (WebCore::RenderFileUploadControl::buttonValue):
   22353         (WebCore::RenderFileUploadControl::fileTextValue):
   22354         * rendering/RenderFileUploadControl.h:
   22355 
   22356 2008-05-07  Julien Chaffraix  <jchaffraix (a] webkit.org>
   22357 
   22358         Reviewed by Eric.
   22359 
   22360         Bug 17971: [Curl] FormData processing should be moved to its own class
   22361 
   22362         Move FormData treatment into FormDataStream. The aim is to have FormDataStream behave like a stream that cURL
   22363         could manipulate.
   22364 
   22365         First step into having complete file uploading facility in cURL.
   22366 
   22367         No test case as it is only code refactoring.
   22368 
   22369         * GNUmakefile.am: Add FormDataStreamCurl.cpp
   22370         * platform/network/ResourceHandleInternal.h: Move code to FormStreamDataCurl.h
   22371         (WebCore::ResourceHandleInternal::ResourceHandleInternal):
   22372         * platform/network/curl/FormDataStreamCurl.cpp: Added.
   22373         (WebCore::FormDataStream::~FormDataStream):
   22374         (WebCore::FormDataStream::read):
   22375         * platform/network/curl/FormDataStreamCurl.h: Added.
   22376         (WebCore::FormDataStream::FormDataStream):
   22377         * platform/network/curl/ResourceHandleCurl.cpp:
   22378         (WebCore::ResourceHandleInternal::~ResourceHandleInternal):
   22379         * platform/network/curl/ResourceHandleManager.cpp:
   22380         (WebCore::readCallback): Move code to FormDataStreamCurl.cpp
   22381 
   22382 2008-05-07  Adam Treat  <treat (a] kde.org>
   22383 
   22384         Reviewed by Simon.
   22385 
   22386         https://bugs.webkit.org/show_bug.cgi?id=18898
   22387 
   22388         Fixed wrong transform being used for creating the pixmap for a new
   22389         transparency layer. This fixes the popup menus on dell.com.
   22390 
   22391         * platform/graphics/qt/GraphicsContextQt.cpp:
   22392         (WebCore::GraphicsContext::beginTransparencyLayer):
   22393 
   22394 2008-05-07  Ariya Hidayat  <ariya.hidayat (a] trolltech.com>
   22395 
   22396         Reviewed by Simon.
   22397 
   22398         Share the plug-in directories between Gtk and Qt/X11 port.
   22399 
   22400         * platform/qt/FileSystemQt.cpp:
   22401         (WebCore::homeDirectoryPath): Implement it for Qt.
   22402         * plugins/PluginDatabase.cpp:
   22403         (WebCore::addMozillaPluginDirectories): Shared code.
   22404         (WebCore::PluginDatabase::defaultPluginDirectories):
   22405         (WebCore::PluginDatabase::isPreferredPluginDirectory): Shared code.
   22406         * plugins/gtk/PluginDatabaseGtk.cpp:
   22407         (WebCore::PluginDatabase::isPreferredPluginDirectory): Refactored.
   22408         * plugins/qt/PluginDatabaseQt.cpp: Refactored.
   22409 
   22410 2008-05-07  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   22411 
   22412         Reviewed by Simon
   22413 
   22414         Fix build issues on Mac and refeactor the .pro file a bit.
   22415 
   22416         * WebCore.pro:
   22417         * platform/qt/TemporaryLinkStubs.cpp:
   22418         (PluginPackage::fetchInfo):
   22419 
   22420 2008-05-07  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   22421 
   22422         Reviewed by Simon
   22423 
   22424         Draw scrollview corners (between scrollbars) using the Qt style.
   22425 
   22426         https://bugs.webkit.org/show_bug.cgi?id=18894
   22427 
   22428         * platform/qt/ScrollViewQt.cpp:
   22429         (WebCore::drawScrollbarCorner):
   22430         (WebCore::ScrollView::paint):
   22431 
   22432 2008-05-07  Simon Hausmann  <hausmann (a] webkit.org>
   22433 
   22434         Fix the Qt build, added AccessibilityListBox and ListBoxOption.cpp to
   22435         the build.
   22436 
   22437         * WebCore.pro:
   22438 
   22439 2008-05-07  Ariya Hidayat  <ariya.hidayat (a] trolltech.com>
   22440 
   22441         Rubber-stamped by Holger.
   22442 
   22443         Fix building without storage support.
   22444 
   22445         * page/PageGroup.cpp:
   22446         (WebCore::PageGroup::closeLocalStorage): proper #if
   22447 
   22448 2008-05-07  Ariya Hidayat  <ariya.hidayat (a] trolltech.com>
   22449 
   22450         Rubber-stamped by Oliver Hunt.
   22451 
   22452         Fix building without accessibility.
   22453 
   22454         * page/AXObjectCache.cpp:
   22455         (WebCore::AXObjectCache::selectedChildrenChanged): proper #if
   22456 
   22457 2008-05-06  Dan Bernstein  <mitz (a] apple.com>
   22458 
   22459         Reviewed by Darin Adler.
   22460 
   22461         - fix <rdar://problem/5914544> Crash in layoutInlineChildren()
   22462 
   22463         Test: fast/block/float/float-on-zero-height-line.html
   22464 
   22465         * rendering/RenderBlock.cpp:
   22466         (WebCore::RenderBlock::markLinesDirtyInVerticalRange):
   22467 
   22468 2008-05-06  Alice Liu  <alice.liu (a] apple.com>
   22469 
   22470         Reviewed by Adele Peterson and John Sullivan.
   22471 
   22472         changes needed to build on Windows after r32911 and r32927
   22473 
   22474         * WebCore.vcproj/WebCore.vcproj:
   22475         * page/AXObjectCache.cpp:
   22476         (WebCore::AXObjectCache::selectedChildrenChanged):
   22477         * page/AccessibilityObject.h:
   22478         (WebCore::AccessibilityObject::document):
   22479         (WebCore::AccessibilityObject::topDocumentFrameView):
   22480         (WebCore::AccessibilityObject::documentFrameView):
   22481         * page/AccessibilityRenderObject.cpp:
   22482         (WebCore::AccessibilityRenderObject::document):
   22483         (WebCore::AccessibilityRenderObject::topDocumentFrameView):
   22484         (WebCore::AccessibilityRenderObject::documentFrameView):
   22485         * page/AccessibilityRenderObject.h:
   22486         * page/mac/AXObjectCacheMac.mm:
   22487         * page/mac/AccessibilityObjectWrapper.mm:
   22488         (-[AccessibilityObjectWrapper position]):
   22489         (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
   22490 
   22491 2008-05-06  Brady Eidson  <beidson (a] apple.com>
   22492 
   22493         Reviewed by Sam Weinig
   22494 
   22495         Fix a few bugs with the final sync'ing of LocalStorageAreas when the thread is shut down.
   22496         1 - A sync task actually needs to be scheduled for each LocalStorageArea when the shut down occurs.
   22497         2 - Pending sync timers all need to be cancelled.
   22498 
   22499         * storage/LocalStorage.cpp:
   22500         (WebCore::LocalStorage::storageArea):
   22501         (WebCore::LocalStorage::close): Tell each LocalStorageArea to schedule it's final sync before scheduling
   22502           thread termination.
   22503         * storage/LocalStorage.h:  Change the map to be of LocalStorageAreas instead of StorageAreas
   22504 
   22505         * storage/LocalStorageArea.cpp:
   22506         (WebCore::LocalStorageArea::LocalStorageArea):
   22507         (WebCore::LocalStorageArea::~LocalStorageArea): ASSERT the timer has been cancelled, but make SURE it is
   22508           in release builds.
   22509         (WebCore::LocalStorageArea::scheduleFinalSync): Cancel the sync timer, schedule the final sync, and set the
   22510           "final sync scheduled" flag
   22511         (WebCore::LocalStorageArea::scheduleItemForSync): ASSERT that the final sync hasn't already been scheduled
   22512         (WebCore::LocalStorageArea::scheduleClear): Ditto
   22513         * storage/LocalStorageArea.h:
   22514 
   22515 2008-05-06  Kevin Ollivier  <kevino (a] theolliviers.com>
   22516 
   22517         wx build fix. Adding files added in  r32925 to the bakefiles.
   22518 
   22519         * WebCoreSources.bkl:
   22520 
   22521 2008-05-06  Alp Toker  <alp (a] nuanti.com>
   22522 
   22523         GTK+ build fix. Add empty stub to keep non-accessible ports building.
   22524 
   22525         * page/AXObjectCache.h:
   22526         (WebCore::AXObjectCache::selectedChildrenChanged):
   22527 
   22528 2008-05-06  Beth Dakin  <bdakin (a] apple.com>
   22529 
   22530         Reviewed by Darin.
   22531 
   22532         Fix for <rdar://problem/5907916> Implement 'aria-labeledby' and 
   22533         'aria-describedby' attributes.
   22534 
   22535         * html/HTMLAttributeNames.in: Added new attributes. Added both the 
   22536         British spelling (since that is what is specified in the spec), and 
   22537         the American spelling (since the bug filer and I are two Americans 
   22538         who keep spelling it the American way by accident). 
   22539         * page/AccessibilityObject.cpp: Added empty wrappers. These 
   22540         functions can't do anything meaningful without a renderer.
   22541         (WebCore::AccessibilityObject::ariaAccessiblityName):
   22542         (WebCore::AccessibilityObject::ariaLabeledByAttribute):
   22543         (WebCore::AccessibilityObject::ariaDescribedByAttribute):
   22544         * page/AccessibilityObject.h:
   22545 
   22546         Here is where the real work is done.
   22547         * page/AccessibilityRenderObject.h:
   22548         * page/AccessibilityRenderObject.cpp:
   22549         (WebCore::accessibleNameForNode): Takes a node and finds its 
   22550         contribution to the accessible name, as defined by the Mozilla ARIA 
   22551         Implementer's Guide. 
   22552         (WebCore::AccessibilityRenderObject::ariaAccessiblityName): Takes a 
   22553         string of space-separated IDs, fetches the corresponding element 
   22554         for each ID, and concatenates an accessible name based on the 
   22555         elements.
   22556         (WebCore::AccessibilityRenderObject::ariaLabeledByAttribute): 
   22557         Retrieve the labeledby attribute and send its contents to 
   22558         ariaAccessibilityName().
   22559         (WebCore::AccessibilityRenderObject::title): Return the ARIA 
   22560         labeledby value if one exists.
   22561         (WebCore::AccessibilityRenderObject::ariaDescribedByAttribute): 
   22562         Retrieve the describedby attribute and send its contents to 
   22563         ariaAccessibilityName().
   22564         (WebCore::AccessibilityRenderObject::accessibilityDescription): 
   22565         Return the ARIA describedby attribute if one exists. 
   22566 
   22567         These are two bugs I spotted. 
   22568         (WebCore::AccessibilityRenderObject::accessibilityIsIgnored): Don't 
   22569         ignore anything with an ARIA role.
   22570         (WebCore::AccessibilityRenderObject::roleValue): Button tags maps 
   22571         to ButtonRole.
   22572 
   22573 2008-05-06  Anders Carlsson  <andersca (a] apple.com>
   22574 
   22575         Reviewed by Brady.
   22576 
   22577         Support reading back app caches from the database.
   22578     
   22579         * loader/appcache/ApplicationCache.cpp:
   22580         (WebCore::ApplicationCache::ApplicationCache):
   22581         Initialize m_storageID to 0.
   22582         
   22583         * loader/appcache/ApplicationCacheGroup.cpp:
   22584         (WebCore::ApplicationCacheGroup::cacheDestroyed):
   22585         If the cache being destroyed is not the newest cache, it should no longer be 
   22586         stored in the database. Remove it.
   22587         
   22588         (WebCore::ApplicationCacheGroup::setNewestCache):
   22589         Don't store the cache here.
   22590         
   22591         (WebCore::ApplicationCacheGroup::checkIfLoadIsComplete):
   22592         Store it here instead.
   22593         
   22594         * loader/appcache/ApplicationCacheStorage.cpp:
   22595         (WebCore::ApplicationCacheStorage::loadCacheGroup):
   22596         New method that loads a cache group with a given manifest URL (or returns 0 if the load fails).
   22597         
   22598         (WebCore::ApplicationCacheStorage::findOrCreateCacheGroup):
   22599         Search for the group in the database.
   22600         
   22601         (WebCore::ApplicationCacheStorage::loadManifestHostHashes):
   22602         New method that loads the host hashes from the database.
   22603         
   22604         (WebCore::ApplicationCacheStorage::cacheGroupForURL):
   22605         Search in the database for a cache that contains the resource.
   22606         
   22607         (WebCore::ApplicationCacheStorage::loadCache):
   22608         New method that loads a cache with a given ID.
   22609         
   22610         (WebCore::ApplicationCacheStorage::remove):
   22611         New method that removes a cache.
   22612         
   22613         * loader/appcache/ApplicationCacheStorage.h:
   22614         Add definitions.
   22615 
   22616 2008-05-06  Alp Toker  <alp (a] nuanti.com>
   22617 
   22618         Partial GTK+ build fix. Add files from r32925 to the build and replace
   22619         'nil' return with 0.
   22620 
   22621         * GNUmakefile.am:
   22622         * page/AccessibilityListBoxOption.cpp:
   22623         (WebCore::AccessibilityListBoxOption::parentObject):
   22624 
   22625 2008-05-06  Brady Eidson  <beidson (a] apple.com>
   22626 
   22627         Reviewed by Anders
   22628 
   22629         Make LocalStorage persistent using a SQLite database.
   22630 
   22631         There's a few things going on here.  Whenever an item is changed, we add it to a set of
   22632         "items to be sync'ed."  Instead of immediately scheduling the sync'ing on the background
   22633         thread, we set a "sync timer" instead.  This is to shield against a series of rapid changes
   22634         to avoid thread churn.
   22635 
   22636         When the sync timer fires, we move the "items to be sync'ed" set to a background thread set
   22637         and schedule the sync task which is where the items are actually committed to disk.
   22638 
   22639         Current design for reading items back in from disk is to be as aggressive as possible.
   22640         When a page first accesses it's LocalStorage area, we begin to import all items in from disk so
   22641         they are immediately available.  A future enhancement will be to being this pre-fetching the
   22642         moment we start loading a page when we know that page has LocalStorage.
   22643 
   22644         * storage/LocalStorageArea.cpp:
   22645         (WebCore::LocalStorageArea::LocalStorageArea):
   22646         (WebCore::LocalStorageArea::length): Return the length, or wait for the import to complete then return it.
   22647         (WebCore::LocalStorageArea::key): Return the key, or wait for the import to complete then return it.
   22648         (WebCore::LocalStorageArea::getItem): Return the item, or wait for the import to complete then return it.
   22649         (WebCore::LocalStorageArea::setItem): Set the item, or hold the import lock and set it.  The second case is
   22650           because if the item is set while the import is still in progress, the new value should override whatever
   22651           the imported value is.
   22652         (WebCore::LocalStorageArea::removeItem): Remove the item, or hold the import lock and remove it.  See the 
   22653           explanation for setItem()
   22654         (WebCore::LocalStorageArea::contains): Return whether or not the item is contained.  Do the same dance with
   22655           the import flag, import lock, and import condition that the above methods do.
   22656 
   22657         (WebCore::LocalStorageArea::itemChanged): Schedule the item for sync'ing
   22658         (WebCore::LocalStorageArea::itemRemoved): Schedule the removal of the item for sync'ing
   22659         (WebCore::LocalStorageArea::areaCleared): Schedule the clear for sync'ing, and clear all previously 
   22660           scheduled items.
   22661 
   22662         (WebCore::LocalStorageArea::scheduleItemForSync): Add an item to the sync set.
   22663         (WebCore::LocalStorageArea::scheduleClear): Set a bool flag denoting "All items removed."  If any
   22664           items are later set before the actual removal takes place, they will be written *after* the removal.
   22665         (WebCore::LocalStorageArea::syncTimerFired): Move the current sync-set to the background thread sync set, then 
   22666           schedule a sync task.  Also transfer the "items cleared" flag to the "background thread items cleared" flag
   22667         (WebCore::LocalStorageArea::performImport): Import all items from disk, then signal the import complete.
   22668         (WebCore::LocalStorageArea::markImported): Set the imported flag and signal the import complete
   22669         (WebCore::LocalStorageArea::performSync): If the clear flag is set then drop all items.  Then update or delete 
   22670           each item waiting to be sync'ed
   22671         * storage/LocalStorageArea.h:
   22672 
   22673 2008-05-06  Brady Eidson  <beidson (a] apple.com>
   22674 
   22675         Rubberstamped by Mitz Pettel RTL
   22676 
   22677         * storage/LocalStorage.cpp:
   22678         (WebCore::LocalStorage::fullDatabaseFilename): Filename extensions for localstorage = all lowercase
   22679 
   22680 2008-05-06  Brady Eidson  <beidson (a] apple.com>
   22681 
   22682         Reviewed by Darin, Sam Weinig, and Anders
   22683 
   22684         Preparation for upcoming work making LocalStorage persistent.
   22685 
   22686         The final step before code that actually does storage and retrieval of LocalStorage items.
   22687 
   22688         The LocalStorage set is responsible for controlling the path and filenames that individual
   22689         LocalStorageAreas will use for their persistent store.  This adds the ability to return that
   22690         filename.
   22691 
   22692         Also, add the scheduling methods that LocalStorageArea will use for importing and syncing 
   22693         it's persistent items.
   22694 
   22695         * storage/LocalStorage.cpp:
   22696         (WebCore::LocalStorage::storageArea):  Add some comments re: the future direction of this
   22697           method once we actually do quota tracking.
   22698         (WebCore::LocalStorage::fullDatabaseFilename):
   22699         (WebCore::LocalStorage::scheduleImport):
   22700         (WebCore::LocalStorage::scheduleSync):
   22701         * storage/LocalStorage.h:
   22702 
   22703 2008-05-06  Chris Fleizach  <cfleizach (a] apple.com>
   22704 
   22705         Reviewed by Beth Dakin.
   22706 
   22707         rdar://problem/5408464> REGRESSION: Unable to use Voiceover on combo boxes (disneyjobs.com)
   22708 
   22709         * WebCore.xcodeproj/project.pbxproj:
   22710         * html/HTMLOptGroupElement.cpp:
   22711         (WebCore::HTMLOptGroupElement::ownerSelectElement):
   22712         (WebCore::HTMLOptGroupElement::accessKeyAction):
   22713         * html/HTMLOptGroupElement.h:
   22714         * html/HTMLOptionElement.cpp:
   22715         (WebCore::HTMLOptionElement::accessKeyAction):
   22716         (WebCore::HTMLOptionElement::index):
   22717         (WebCore::HTMLOptionElement::setSelected):
   22718         (WebCore::HTMLOptionElement::childrenChanged):
   22719         (WebCore::HTMLOptionElement::ownerSelectElement):
   22720         (WebCore::HTMLOptionElement::insertedIntoDocument):
   22721         * html/HTMLOptionElement.h:
   22722         * html/HTMLSelectElement.cpp:
   22723         (WebCore::HTMLSelectElement::childrenChanged):
   22724         (WebCore::HTMLSelectElement::accessKeySetSelectedIndex):
   22725         * html/HTMLSelectElement.h:
   22726         * page/AXObjectCache.cpp:
   22727         (WebCore::AXObjectCache::get):
   22728         * page/AccessibilityListBox.cpp: Added.
   22729         (WebCore::AccessibilityListBox::AccessibilityListBox):
   22730         (WebCore::AccessibilityListBox::~AccessibilityListBox):
   22731         (WebCore::AccessibilityListBox::create):
   22732         (WebCore::AccessibilityListBox::addChildren):
   22733         (WebCore::AccessibilityListBox::selectedChildren):
   22734         (WebCore::AccessibilityListBox::visibleChildren):
   22735         (WebCore::AccessibilityListBox::listBoxOptionAccessibilityObject):
   22736         (WebCore::AccessibilityListBox::doAccessibilityHitTest):
   22737         * page/AccessibilityListBox.h: Added.
   22738         (WebCore::AccessibilityListBox::accessibilityShouldUseUniqueId):
   22739         (WebCore::AccessibilityListBox::isListBox):
   22740         (WebCore::AccessibilityListBox::canSetFocusAttribute):
   22741         (WebCore::AccessibilityListBox::roleValue):
   22742         (WebCore::AccessibilityListBox::accessibilityIsIgnored):
   22743         * page/AccessibilityListBoxOption.cpp: Added.
   22744         (WebCore::AccessibilityListBoxOption::AccessibilityListBoxOption):
   22745         (WebCore::AccessibilityListBoxOption::~AccessibilityListBoxOption):
   22746         (WebCore::AccessibilityListBoxOption::create):
   22747         (WebCore::AccessibilityListBoxOption::isEnabled):
   22748         (WebCore::AccessibilityListBoxOption::isSelected):
   22749         (WebCore::AccessibilityListBoxOption::elementRect):
   22750         (WebCore::AccessibilityListBoxOption::title):
   22751         (WebCore::AccessibilityListBoxOption::size):
   22752         (WebCore::AccessibilityListBoxOption::actionElement):
   22753         (WebCore::AccessibilityListBoxOption::parentObject):
   22754         (WebCore::AccessibilityListBoxOption::listBoxOptionParentNode):
   22755         (WebCore::AccessibilityListBoxOption::listBoxOptionIndex):
   22756         * page/AccessibilityListBoxOption.h: Added.
   22757         (WebCore::AccessibilityListBoxOption::setHTMLElement):
   22758         (WebCore::AccessibilityListBoxOption::roleValue):
   22759         (WebCore::AccessibilityListBoxOption::accessibilityIsIgnored):
   22760         (WebCore::AccessibilityListBoxOption::isListBoxOption):
   22761         * page/AccessibilityObject.h:
   22762         (WebCore::AccessibilityObject::isListBox):
   22763         * page/AccessibilityRenderObject.cpp:
   22764         (WebCore::AccessibilityRenderObject::doAccessibilityHitTest):
   22765         * page/mac/AccessibilityObjectWrapper.mm:
   22766         (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
   22767         (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
   22768         * rendering/RenderListBox.cpp:
   22769         (WebCore::RenderListBox::selectionChanged):
   22770         * rendering/RenderListBox.h:
   22771 
   22772 2008-05-06  Chris Fleizach  <cfleizach (a] apple.com>
   22773 
   22774         Reviewed by Beth Dakin.
   22775 
   22776          <rdar://problem/5455287> AXWebArea should include AXURL
   22777 
   22778         * page/AccessibilityRenderObject.cpp:
   22779         (WebCore::AccessibilityRenderObject::url):
   22780         * page/mac/AccessibilityObjectWrapper.mm:
   22781         (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
   22782 
   22783 2008-05-06  Alice Liu  <alice.liu (a] apple.com>
   22784 
   22785         Rubber-stamped by Beth
   22786         
   22787         stab-in-the-dark attempt at fixing non-mac builds.
   22788 
   22789         * GNUmakefile.am:
   22790         * WebCore.pro:
   22791         * WebCore.vcproj/WebCore.vcproj:
   22792         * WebCoreSources.bkl:
   22793 
   22794 2008-05-06  Anders Carlsson  <andersca (a] apple.com>
   22795 
   22796         Reviewed by Adam.
   22797 
   22798         Only use the toplevel application cache when loading subframes.
   22799 
   22800         * loader/MainResourceLoader.cpp:
   22801         (WebCore::MainResourceLoader::load):
   22802 
   22803 2008-05-06  Adam Barth  <abarth-webkit (a] adambarth.com>
   22804 
   22805         Reviewed by Sam Weinig.
   22806 
   22807         https://bugs.webkit.org/show_bug.cgi?id=18725
   22808         Implement asynchronous postMessage.
   22809         MessageEvent no longer bubbles as per r1237 in the HTML 5 working draft.
   22810 
   22811         Collin Jackson <collinj-webkit (a] collinjackson.com> also contributed to this patch.
   22812 
   22813         Test: http/tests/security/postMessage/delivery-order.html
   22814 
   22815         * dom/MessageEvent.cpp:
   22816         (WebCore::MessageEvent::MessageEvent):
   22817         * page/DOMWindow.cpp:
   22818         (WebCore::PostMessageTimer::PostMessageTimer):
   22819         (WebCore::PostMessageTimer::event):
   22820         (WebCore::PostMessageTimer::targetOrigin):
   22821         (WebCore::PostMessageTimer::fired):
   22822         (WebCore::DOMWindow::postMessage):
   22823         (WebCore::DOMWindow::postMessageTimerFired):
   22824         * page/DOMWindow.h:
   22825         * page/DOMWindow.idl:
   22826         
   22827 2008-05-06  Anders Carlsson  <andersca (a] apple.com>
   22828 
   22829         Reviewed by Brady.
   22830 
   22831         Store cache to the database.
   22832 
   22833         * loader/appcache/ApplicationCache.cpp:
   22834         (WebCore::ApplicationCache::addResource):
   22835         If the cache has been saved to disk, save the resource as well.
   22836         
   22837         * loader/appcache/ApplicationCache.h:
   22838         (WebCore::ApplicationCache::onlineWhitelist):
   22839         New method which returns the online whitelist.
   22840 
   22841         (WebCore::ApplicationCache::setStorageId):
   22842         (WebCore::ApplicationCache::storageId):
   22843         Setter/getter for the application cache storage ID.
   22844 
   22845         * loader/appcache/ApplicationCacheGroup.cpp:
   22846         (WebCore::ApplicationCacheGroup::checkIfLoadIsComplete):
   22847         Save the cache/group to disk.
   22848         
   22849         * loader/appcache/ApplicationCacheGroup.h:
   22850         (WebCore::ApplicationCacheGroup::setStorageID):
   22851         (WebCore::ApplicationCacheGroup::storageID):
   22852         Setter/getter for the application cache group storage ID.
   22853         
   22854         * loader/appcache/ApplicationCacheResource.cpp:
   22855         (WebCore::ApplicationCacheResource::addType):
   22856         We can't add a new type if the resource has been saved to disk.
   22857         
   22858         * loader/appcache/ApplicationCacheResource.h:
   22859         (WebCore::ApplicationCacheResource::setStorageID):
   22860         (WebCore::ApplicationCacheResource::storageID):
   22861         Setter/getter for the application cache resource storage ID.
   22862 
   22863         * loader/appcache/ApplicationCacheStorage.cpp:
   22864         * loader/appcache/ApplicationCacheStorage.cpp:
   22865         (WebCore::ApplicationCacheStorage::executeSQLCommand):
   22866         New method for executing SQL and logging any errors.
   22867         
   22868         (WebCore::ApplicationCacheStorage::openDatabase):
   22869         Create new tables.
   22870         
   22871         (WebCore::ApplicationCacheStorage::executeStatement):
   22872         New method for executing an SQL statement and logging any errors.
   22873         
   22874         (WebCore::ApplicationCacheStorage::store):
   22875         New methods for storing a cache group, cache and cache resource to the store.
   22876 
   22877         (WebCore::ApplicationCacheStorage::storeNewestCache):
   22878         New method which stores the newest cache and updates the newest cache field in the cache group.
   22879         
   22880         * loader/appcache/ApplicationCacheStorage.h:
   22881         Add new methods.
   22882         
   22883         * platform/sql/SQLiteStatement.h:
   22884         (WebCore::SQLiteStatement::query):
   22885         Getter for the SQL query.
   22886 
   22887 2008-05-06  Brady Eidson  <beidson (a] apple.com>
   22888 
   22889         Reviewed by Darin Adler
   22890 
   22891         Preparation for upcoming work making LocalStorage persistent.
   22892 
   22893         Writing persistent values for LocalStorage will take place on a background thread.
   22894         Here is that background thread, as well as most of the hooks that will be utilized to
   22895         make the whole song and dance work.
   22896 
   22897         The thread itself is very simple and MessageQueue based.  LocalStorageTasks are what 
   22898         mark the work that needs to be done and come in 5 flavors:  Import and Sync a LocalStorage set,
   22899         Import and Sync a LocalStorageArea, and terminate the thread.
   22900 
   22901         This patch accomplished 2 things:
   22902         
   22903         1 - Each PageGroup has its own LocalStorage set.  Upon its creation its LocalStorageThread is 
   22904             created and started.
   22905 
   22906         2 - At application shutdown, each thread is synchronously terminated.
   22907 
   22908         What happens between steps 1 and 2 will come later.
   22909 
   22910         * GNUmakefile.am:
   22911         * WebCore.pro:
   22912         * WebCore.vcproj/WebCore.vcproj:
   22913         * WebCore.xcodeproj/project.pbxproj:
   22914         * WebCoreSources.bkl:
   22915 
   22916         * storage/LocalStorage.cpp: Add some threading ASSERTs to make it clear which thread each
   22917           method is meant to be called from.
   22918         (WebCore::LocalStorage::LocalStorage):
   22919         (WebCore::LocalStorage::storageArea):
   22920         (WebCore::LocalStorage::performImport): Placeholder for importing known origins and quotas
   22921         (WebCore::LocalStorage::performSync): Placeholder for writing out updated origins and quotas
   22922         (WebCore::LocalStorage::close): Synchronously terminate the thread.
   22923         * storage/LocalStorage.h:
   22924 
   22925         * storage/LocalStorageArea.cpp: Add some threading ASSERTs to make it clear which thread each
   22926           method is meant to be called from.
   22927         (WebCore::LocalStorageArea::itemChanged):
   22928         (WebCore::LocalStorageArea::itemRemoved):
   22929         (WebCore::LocalStorageArea::areaCleared):
   22930         (WebCore::LocalStorageArea::dispatchStorageEvent):
   22931         (WebCore::LocalStorageArea::performImport): Placeholder for importing all items for this 
   22932           LocalStorageArea to prime the page before the items are needed
   22933         (WebCore::LocalStorageArea::performSync): Placeholder for writing out dirty items to disk
   22934         * storage/LocalStorageArea.h:
   22935 
   22936         * storage/LocalStorageTask.cpp: Added.
   22937         (WebCore::LocalStorageTask::LocalStorageTask):
   22938         (WebCore::LocalStorageTask::performTask):
   22939         * storage/LocalStorageTask.h: Added.
   22940         (WebCore::LocalStorageTask::):
   22941         (WebCore::LocalStorageTask::createImport):
   22942         (WebCore::LocalStorageTask::createSync):
   22943         (WebCore::LocalStorageTask::createTerminate):
   22944 
   22945         * storage/LocalStorageThread.cpp: Added.
   22946         (WebCore::LocalStorageThread::create):
   22947         (WebCore::LocalStorageThread::LocalStorageThread):
   22948         (WebCore::LocalStorageThread::start):
   22949         (WebCore::LocalStorageThread::localStorageThreadStart):
   22950         (WebCore::LocalStorageThread::localStorageThread):
   22951         (WebCore::LocalStorageThread::scheduleImport):
   22952         (WebCore::LocalStorageThread::scheduleSync):
   22953         (WebCore::LocalStorageThread::terminate): 
   22954         (WebCore::LocalStorageThread::performTerminate):
   22955         * storage/LocalStorageThread.h: Added.
   22956 
   22957 2008-05-06  Anders Carlsson  <andersca (a] apple.com>
   22958 
   22959         Reviewed by Darin.
   22960 
   22961         Add NPN_PopUpContextMenu.
   22962         
   22963         * bridge/npapi.h:
   22964         * plugins/npfunctions.h:
   22965 
   22966 2008-05-06  Alp Toker  <alp (a] nuanti.com>
   22967 
   22968         GTK+ build fix. Add file from r32911 to the build.
   22969 
   22970         * GNUmakefile.am:
   22971 
   22972 2008-05-06  Gwenole Beauchesne  <gbeauchesne (a] splitted-desktop.org>
   22973 
   22974         Reviewed by Alp Toker.
   22975 
   22976         http://bugs.webkit.org/show_bug.cgi?id=18906
   22977         [GTK] Fix varargs terminator in g_build_filename()
   22978 
   22979         * plugins/gtk/PluginDatabaseGtk.cpp:
   22980         (WebCore::PluginDatabase::isPreferredPluginDirectory): Fix varargs
   22981         terminator.
   22982 
   22983 2008-05-06  Kevin McCullough  <kmccullough (a] apple.com>
   22984 
   22985         - Forgot to update localized Strings from previous checkin.
   22986 
   22987         * English.lproj/localizedStrings.js:
   22988 
   22989 2008-05-06  Chris Fleizach  <cfleizach (a] apple.com>
   22990 
   22991         Reviewed by Beth Dakin
   22992 
   22993         <rdar://problem/5408464> REGRESSION: Unable to use Voiceover on combo boxes (disneyjobs.com)
   22994         <rdar://problem/5895634> AX: AccessibilityObjectWrapper is being leaked all over the place
   22995         <rdar://problem/5893907> CrashTracer: [REGRESSION] 44 crashes in Safari at com.apple.WebCore: WebCore::AccessibilityObject::clearChildren + 9
   22996         
   22997         Initial prep work to support accessibility objects that do not have renderers. 
   22998 
   22999         * WebCore.xcodeproj/project.pbxproj:
   23000         * page/AXObjectCache.cpp:
   23001         (WebCore::AXObjectCache::~AXObjectCache):
   23002         (WebCore::AXObjectCache::get):
   23003         (WebCore::AXObjectCache::remove):
   23004         (WebCore::AXObjectCache::getAXID):
   23005         (WebCore::AXObjectCache::removeAXID):
   23006         (WebCore::AXObjectCache::childrenChanged):
   23007         * page/AXObjectCache.h:
   23008         (WebCore::AXObjectCache::isIDinUse):
   23009         * page/AccessibilityObject.cpp:
   23010         (WebCore::AccessibilityObject::AccessibilityObject):
   23011         (WebCore::AccessibilityObject::create):
   23012         (WebCore::AccessibilityObject::detach):
   23013         (WebCore::AccessibilityObject::firstChild):
   23014         (WebCore::AccessibilityObject::lastChild):
   23015         (WebCore::AccessibilityObject::previousSibling):
   23016         (WebCore::AccessibilityObject::nextSibling):
   23017         (WebCore::AccessibilityObject::parentObject):
   23018         (WebCore::AccessibilityObject::layoutCount):
   23019         (WebCore::AccessibilityObject::text):
   23020         (WebCore::AccessibilityObject::helpText):
   23021         (WebCore::AccessibilityObject::textUnderElement):
   23022         (WebCore::AccessibilityObject::isARIAInput):
   23023         (WebCore::AccessibilityObject::isARIAControl):
   23024         (WebCore::AccessibilityObject::intValue):
   23025         (WebCore::AccessibilityObject::stringValue):
   23026         (WebCore::AccessibilityObject::title):
   23027         (WebCore::AccessibilityObject::accessibilityDescription):
   23028         (WebCore::AccessibilityObject::boundingBoxRect):
   23029         (WebCore::AccessibilityObject::elementRect):
   23030         (WebCore::AccessibilityObject::size):
   23031         (WebCore::AccessibilityObject::linkedUIElement):
   23032         (WebCore::AccessibilityObject::textLength):
   23033         (WebCore::AccessibilityObject::ariaSelectedTextDOMRange):
   23034         (WebCore::AccessibilityObject::selectedText):
   23035         (WebCore::AccessibilityObject::accessKey):
   23036         (WebCore::AccessibilityObject::selection):
   23037         (WebCore::AccessibilityObject::selectedTextRange):
   23038         (WebCore::AccessibilityObject::setSelectedTextRange):
   23039         (WebCore::AccessibilityObject::url):
   23040         (WebCore::AccessibilityObject::setFocused):
   23041         (WebCore::AccessibilityObject::setValue):
   23042         (WebCore::AccessibilityObject::axObjectCache):
   23043         (WebCore::AccessibilityObject::getDocumentLinks):
   23044         (WebCore::AccessibilityObject::widget):
   23045         (WebCore::AccessibilityObject::widgetForAttachmentView):
   23046         (WebCore::AccessibilityObject::anchorElement):
   23047         (WebCore::AccessibilityObject::actionElement):
   23048         (WebCore::AccessibilityObject::visiblePositionRange):
   23049         (WebCore::AccessibilityObject::doAXTextMarkerRangeForLine):
   23050         (WebCore::AccessibilityObject::visiblePositionForIndex):
   23051         (WebCore::AccessibilityObject::indexForVisiblePosition):
   23052         (WebCore::AccessibilityObject::doAXBoundsForTextMarkerRange):
   23053         (WebCore::AccessibilityObject::doSetAXSelectedTextMarkerRange):
   23054         (WebCore::AccessibilityObject::doAXTextMarkerForPosition):
   23055         (WebCore::AccessibilityObject::textMarkerForIndex):
   23056         (WebCore::AccessibilityObject::rangeForTextMarkerRange):
   23057         (WebCore::AccessibilityObject::indexForTextMarker):
   23058         (WebCore::AccessibilityObject::doAXRangeForLine):
   23059         (WebCore::AccessibilityObject::doAXRangeForPosition):
   23060         (WebCore::AccessibilityObject::doAXRangeForIndex):
   23061         (WebCore::AccessibilityObject::doAXStyleRangeForIndex):
   23062         (WebCore::AccessibilityObject::doAXStringForRange):
   23063         (WebCore::AccessibilityObject::doAXBoundsForRange):
   23064         (WebCore::AccessibilityObject::doAccessibilityHitTest):
   23065         (WebCore::AccessibilityObject::focusedUIElement):
   23066         (WebCore::AccessibilityObject::observableObject):
   23067         (WebCore::AccessibilityObject::roleValue):
   23068         (WebCore::AccessibilityObject::ariaRoleAttribute):
   23069         (WebCore::AccessibilityObject::childrenChanged):
   23070         (WebCore::AccessibilityObject::addChildren):
   23071         (WebCore::AccessibilityObject::removeAXObjectID):
   23072         * page/AccessibilityObject.h:
   23073         (WebCore::PlainTextRange::PlainTextRange):
   23074         (WebCore::PlainTextRange::isNull):
   23075         (WebCore::AccessibilityObject::isAccessibilityRenderObject):
   23076         (WebCore::AccessibilityObject::isAnchor):
   23077         (WebCore::AccessibilityObject::isAttachment):
   23078         (WebCore::AccessibilityObject::isHeading):
   23079         (WebCore::AccessibilityObject::isLink):
   23080         (WebCore::AccessibilityObject::isImage):
   23081         (WebCore::AccessibilityObject::isNativeImage):
   23082         (WebCore::AccessibilityObject::isImageButton):
   23083         (WebCore::AccessibilityObject::isPasswordField):
   23084         (WebCore::AccessibilityObject::isTextControl):
   23085         (WebCore::AccessibilityObject::isNativeTextControl):
   23086         (WebCore::AccessibilityObject::isWebArea):
   23087         (WebCore::AccessibilityObject::isCheckboxOrRadio):
   23088         (WebCore::AccessibilityObject::isChecked):
   23089         (WebCore::AccessibilityObject::isEnabled):
   23090         (WebCore::AccessibilityObject::isSelected):
   23091         (WebCore::AccessibilityObject::isFocused):
   23092         (WebCore::AccessibilityObject::isHovered):
   23093         (WebCore::AccessibilityObject::isIndeterminate):
   23094         (WebCore::AccessibilityObject::isLoaded):
   23095         (WebCore::AccessibilityObject::isMultiSelect):
   23096         (WebCore::AccessibilityObject::isOffScreen):
   23097         (WebCore::AccessibilityObject::isPressed):
   23098         (WebCore::AccessibilityObject::isReadOnly):
   23099         (WebCore::AccessibilityObject::isVisited):
   23100         (WebCore::AccessibilityObject::canSetFocusAttribute):
   23101         (WebCore::AccessibilityObject::canSetTextRangeAttributes):
   23102         (WebCore::AccessibilityObject::canSetValueAttribute):
   23103         (WebCore::AccessibilityObject::hasIntValue):
   23104         (WebCore::AccessibilityObject::accessibilityShouldUseUniqueId):
   23105         (WebCore::AccessibilityObject::accessibilityIsIgnored):
   23106         (WebCore::AccessibilityObject::children):
   23107         (WebCore::AccessibilityObject::hasChildren):
   23108         (WebCore::AccessibilityObject::setWrapper):
   23109         (WebCore::AccessibilityObject::isDetached):
   23110         * page/AccessibilityRenderObject.cpp: Added.
   23111         (WebCore::AccessibilityRenderObject::AccessibilityRenderObject):
   23112         (WebCore::AccessibilityRenderObject::~AccessibilityRenderObject):
   23113         (WebCore::AccessibilityRenderObject::create):
   23114         (WebCore::AccessibilityRenderObject::detach):
   23115         (WebCore::AccessibilityRenderObject::firstChild):
   23116         (WebCore::AccessibilityRenderObject::lastChild):
   23117         (WebCore::AccessibilityRenderObject::previousSibling):
   23118         (WebCore::AccessibilityRenderObject::nextSibling):
   23119         (WebCore::AccessibilityRenderObject::parentObject):
   23120         (WebCore::AccessibilityRenderObject::isWebArea):
   23121         (WebCore::AccessibilityRenderObject::isImageButton):
   23122         (WebCore::AccessibilityRenderObject::isAnchor):
   23123         (WebCore::AccessibilityRenderObject::isNativeTextControl):
   23124         (WebCore::AccessibilityRenderObject::isTextControl):
   23125         (WebCore::AccessibilityRenderObject::isNativeImage):
   23126         (WebCore::AccessibilityRenderObject::isImage):
   23127         (WebCore::AccessibilityRenderObject::isAttachment):
   23128         (WebCore::AccessibilityRenderObject::isPasswordField):
   23129         (WebCore::AccessibilityRenderObject::isCheckboxOrRadio):
   23130         (WebCore::AccessibilityRenderObject::isPressed):
   23131         (WebCore::AccessibilityRenderObject::isIndeterminate):
   23132         (WebCore::AccessibilityRenderObject::isChecked):
   23133         (WebCore::AccessibilityRenderObject::isHovered):
   23134         (WebCore::AccessibilityRenderObject::isMultiSelect):
   23135         (WebCore::AccessibilityRenderObject::isReadOnly):
   23136         (WebCore::AccessibilityRenderObject::isOffScreen):
   23137         (WebCore::AccessibilityRenderObject::headingLevel):
   23138         (WebCore::AccessibilityRenderObject::isHeading):
   23139         (WebCore::AccessibilityRenderObject::isLink):
   23140         (WebCore::AccessibilityRenderObject::anchorElement):
   23141         (WebCore::AccessibilityRenderObject::actionElement):
   23142         (WebCore::AccessibilityRenderObject::mouseButtonListener):
   23143         (WebCore::AccessibilityRenderObject::helpText):
   23144         (WebCore::AccessibilityRenderObject::textUnderElement):
   23145         (WebCore::AccessibilityRenderObject::hasIntValue):
   23146         (WebCore::AccessibilityRenderObject::intValue):
   23147         (WebCore::AccessibilityRenderObject::stringValue):
   23148         (WebCore::labelForElement):
   23149         (WebCore::AccessibilityRenderObject::title):
   23150         (WebCore::AccessibilityRenderObject::accessibilityDescription):
   23151         (WebCore::AccessibilityRenderObject::boundingBoxRect):
   23152         (WebCore::AccessibilityRenderObject::elementRect):
   23153         (WebCore::AccessibilityRenderObject::size):
   23154         (WebCore::AccessibilityRenderObject::linkedUIElement):
   23155         (WebCore::AccessibilityRenderObject::accessibilityShouldUseUniqueId):
   23156         (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
   23157         (WebCore::AccessibilityRenderObject::isLoaded):
   23158         (WebCore::AccessibilityRenderObject::layoutCount):
   23159         (WebCore::AccessibilityRenderObject::text):
   23160         (WebCore::AccessibilityRenderObject::textLength):
   23161         (WebCore::AccessibilityRenderObject::ariaSelectedTextDOMRange):
   23162         (WebCore::AccessibilityRenderObject::selectedText):
   23163         (WebCore::AccessibilityRenderObject::accessKey):
   23164         (WebCore::AccessibilityRenderObject::selection):
   23165         (WebCore::AccessibilityRenderObject::selectedTextRange):
   23166         (WebCore::AccessibilityRenderObject::setSelectedTextRange):
   23167         (WebCore::AccessibilityRenderObject::url):
   23168         (WebCore::AccessibilityRenderObject::isVisited):
   23169         (WebCore::AccessibilityRenderObject::isSelected):
   23170         (WebCore::AccessibilityRenderObject::isFocused):
   23171         (WebCore::AccessibilityRenderObject::setFocused):
   23172         (WebCore::AccessibilityRenderObject::setValue):
   23173         (WebCore::AccessibilityRenderObject::isEnabled):
   23174         (WebCore::AccessibilityRenderObject::topRenderer):
   23175         (WebCore::AccessibilityRenderObject::widget):
   23176         (WebCore::AccessibilityRenderObject::axObjectCache):
   23177         (WebCore::AccessibilityRenderObject::getDocumentLinks):
   23178         (WebCore::AccessibilityRenderObject::widgetForAttachmentView):
   23179         (WebCore::AccessibilityRenderObject::frameViewIfRenderView):
   23180         (WebCore::AccessibilityRenderObject::visiblePositionRange):
   23181         (WebCore::AccessibilityRenderObject::doAXTextMarkerRangeForLine):
   23182         (WebCore::AccessibilityRenderObject::visiblePositionForIndex):
   23183         (WebCore::AccessibilityRenderObject::indexForVisiblePosition):
   23184         (WebCore::AccessibilityRenderObject::doAXBoundsForTextMarkerRange):
   23185         (WebCore::AccessibilityRenderObject::doSetAXSelectedTextMarkerRange):
   23186         (WebCore::AccessibilityRenderObject::doAXTextMarkerForPosition):
   23187         (WebCore::AccessibilityRenderObject::textMarkerForIndex):
   23188         (WebCore::AccessibilityRenderObject::indexForTextMarker):
   23189         (WebCore::AccessibilityRenderObject::doAXRangeForLine):
   23190         (WebCore::AccessibilityRenderObject::doAXRangeForIndex):
   23191         (WebCore::AccessibilityRenderObject::doAXStringForRange):
   23192         (WebCore::AccessibilityRenderObject::doAXBoundsForRange):
   23193         (WebCore::AccessibilityRenderObject::doAccessibilityHitTest):
   23194         (WebCore::AccessibilityRenderObject::focusedUIElement):
   23195         (WebCore::AccessibilityRenderObject::observableObject):
   23196         (WebCore::createARIARoleMap):
   23197         (WebCore::RoleEntry::):
   23198         (WebCore::ariaRoleToWebCoreRole):
   23199         (WebCore::AccessibilityRenderObject::ariaRoleAttribute):
   23200         (WebCore::AccessibilityRenderObject::roleValue):
   23201         (WebCore::AccessibilityRenderObject::canSetFocusAttribute):
   23202         (WebCore::AccessibilityRenderObject::canSetValueAttribute):
   23203         (WebCore::AccessibilityRenderObject::canSetTextRangeAttributes):
   23204         (WebCore::AccessibilityRenderObject::childrenChanged):
   23205         (WebCore::AccessibilityRenderObject::children):
   23206         (WebCore::AccessibilityRenderObject::addChildren):
   23207         (WebCore::AccessibilityRenderObject::removeAXObjectID):
   23208         (WebCore::AccessibilityRenderObject::actionVerb):
   23209         * page/AccessibilityRenderObject.h: Added.
   23210         (WebCore::AccessibilityRenderObject::isAccessibilityRenderObject):
   23211         (WebCore::AccessibilityRenderObject::areaElement):
   23212         (WebCore::AccessibilityRenderObject::setRenderer):
   23213         (WebCore::AccessibilityRenderObject::renderer):
   23214         (WebCore::AccessibilityRenderObject::setRenderObject):
   23215         (WebCore::AccessibilityRenderObject::isDetached):
   23216         * page/mac/AXObjectCacheMac.mm:
   23217         (WebCore::AXObjectCache::detachWrapper):
   23218         (WebCore::AXObjectCache::selectedChildrenChanged):
   23219         (WebCore::AXObjectCache::postNotification):
   23220         * page/mac/AccessibilityObjectWrapper.mm:
   23221         (textMarkerForVisiblePosition):
   23222         (CreateCGColorIfDifferent):
   23223         (AXAttributeStringSetHeadingLevel):
   23224         (AXLinkElementForNode):
   23225         (AXAttributeStringSetElement):
   23226         (AXAttributedStringAppendText):
   23227         (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
   23228         (-[AccessibilityObjectWrapper documentFrameView:]):
   23229         (-[AccessibilityObjectWrapper position]):
   23230         (RoleEntry::):
   23231         (-[AccessibilityObjectWrapper roleDescription]):
   23232         (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
   23233         (-[AccessibilityObjectWrapper accessibilityIsAttributeSettable:]):
   23234         (-[AccessibilityObjectWrapper accessibilityParameterizedAttributeNames]):
   23235         (-[AccessibilityObjectWrapper accessibilitySetValue:forAttribute:]):
   23236         (-[AccessibilityObjectWrapper _accessibilityParentForSubview:]):
   23237         (-[AccessibilityObjectWrapper doAXAttributedStringForRange:]):
   23238         (-[AccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):
   23239 
   23240 2008-05-06  Jonathan Haas  <myrdred (a] gmail.com>
   23241 
   23242         Reviewed by Rob Buis.
   23243 
   23244         https://bugs.webkit.org/show_bug.cgi?id=18859\
   23245         Prevented SVGRootInlineBox from static_casting a
   23246         node to a class it doesn't inherit
   23247         
   23248         * rendering/SVGRootInlineBox.cpp:
   23249         (WebCore::SVGRootInlineBox::buildTextChunks):
   23250 
   23251 2008-05-06  Brady Eidson  <beidson (a] apple.com>
   23252 
   23253         Reviewed by Darin Adler
   23254 
   23255         Preparation for upcoming work making LocalStorage persistent.
   23256 
   23257         When the application terminates, all pending local storage writes need to be
   23258         sync'ed out to disk.
   23259         This works n combination with platform specific code in WebKit that calls it.
   23260 
   23261         * WebCore.base.exp:
   23262 
   23263         * page/PageGroup.cpp:
   23264         (WebCore::PageGroup::closeLocalStorage): Close all open LocalStorage objects
   23265         * page/PageGroup.h:
   23266 
   23267         * storage/LocalStorage.cpp:
   23268         (WebCore::LocalStorage::close): Placeholder for what will sync and terminate the
   23269           local storage thread in the future.
   23270         * storage/LocalStorage.h:
   23271 
   23272 2008-05-06  Brady Eidson  <beidson (a] apple.com>
   23273 
   23274         Rubberstamped by David Kilzer
   23275 
   23276         * WebCore.base.exp:  Sort this mess!
   23277 
   23278 2008-05-05  Mark Rowe  <mrowe (a] apple.com>
   23279 
   23280         Reviewed by Dan Bernstein.
   23281 
   23282         Fix 60 crashes seen on the buildbots that were misreported as hangs.
   23283 
   23284         * dom/Document.cpp:
   23285         (WebCore::Document::detachNodeIterator): Null-check page() before dereferencing it.
   23286         (WebCore::Document::nodeWillBeRemoved): Ditto.
   23287         (WebCore::Document::textInserted): Ditto.
   23288         (WebCore::Document::textNodesMerged): Ditto.
   23289         (WebCore::Document::textRemoved): Ditto.
   23290 
   23291 2008-05-05  Brady Eidson  <beidson (a] apple.com>
   23292 
   23293         Reviewed by Mitz Pettel RTL
   23294 
   23295         Preparation for upcoming work making LocalStorage persistent.
   23296 
   23297         The other half of the StorageMap::importItem() addition.
   23298 
   23299         * storage/StorageArea.cpp:
   23300         (WebCore::StorageArea::importItem):
   23301         * storage/StorageArea.h:
   23302 
   23303 2008-05-05  Brady Eidson  <beidson (a] apple.com>
   23304 
   23305         Reviewed by Mitz Pettel RTL
   23306 
   23307         Preparation for upcoming work making LocalStorage persistent.
   23308 
   23309         - Create the LocalStorage object for a PageGroup the moment the first Page is added to it
   23310           The Settings of the first Page define what persistent path the LocalStorage will use
   23311         - Add a Frame argument for the LocalStorageArea request - this will allow a client object
   23312           to be queried before the LocalStorageArea is established
   23313 
   23314         * page/DOMWindow.cpp:
   23315         (WebCore::DOMWindow::localStorage):
   23316 
   23317         * page/PageGroup.cpp:
   23318         (WebCore::PageGroup::addPage):
   23319         (WebCore::PageGroup::localStorage):
   23320 
   23321         * storage/LocalStorage.cpp:
   23322         (WebCore::LocalStorage::LocalStorage): Take the path as a constructor argument.  Deep copy
   23323           the path as it will be used from another thread.
   23324         (WebCore::LocalStorage::storageArea):
   23325         * storage/LocalStorage.h:
   23326         (WebCore::LocalStorage::create):
   23327 
   23328 2008-05-05  Brady Eidson  <beidson (a] apple.com>
   23329 
   23330         Reviewed by Mitz Pettel RTL
   23331 
   23332         Preparation for upcoming work making LocalStorage persistent.
   23333 
   23334         StorageMaps normally have copy-on-write semantics to help support SessionStorage.
   23335         For LocalStorage, we never want this behavior.  When we forcefully import items into 
   23336         a StorageMap from the LocalStorage background thread, this new import method will be used.
   23337 
   23338         * storage/StorageMap.cpp:
   23339         (WebCore::StorageMap::importItem): Add a deep-copy of the item to the map without worrying
   23340           about copy-on-write.
   23341         * storage/StorageMap.h:
   23342 
   23343 2008-05-05  Kevin McCullough  <kmccullough (a] apple.com>
   23344 
   23345         Reviewed by Tim.
   23346 
   23347         -<rdar://problem/5770054> JavaScript profiler (10928)
   23348         -Begininings of a UI for the Profiler in the WebInspector.
   23349 
   23350         * English.lproj/InspectorLocalizedStrings.js: Add new strings to be
   23351         localized.
   23352         * page/inspector/DatabasesPanel.js: Changed the name of the Databae's
   23353         results table to be more generic as it is now also used by the profiler.
   23354         * page/inspector/Images/glossySelected.png: Added.
   23355         * page/inspector/Images/profilesIcon.png: Added.
   23356         * page/inspector/Images/treeUpTriangleBlack.png: Added.
   23357         * page/inspector/Images/treeUpTriangleWhite.png: Added.
   23358         * page/inspector/ProfileView.js: Added. Sets up the header of the table.
   23359         * page/inspector/ProfilesPanel.js: Added.
   23360         * page/inspector/ProfilesPanel.js: Added. Sets up the containers of the
   23361         profiler's content.
   23362         * page/inspector/inspector.css: Change database-result-table to be more
   23363         generic as well as add the styles needed by the profiler.
   23364         * page/inspector/inspector.html: Add profiler support.
   23365 
   23366 2008-05-05  Brady Eidson  <beidson (a] apple.com>
   23367 
   23368         Change by Darin, reviewed by Brady
   23369 
   23370         Small efficiency improvement Darin just spotted
   23371 
   23372         * storage/StorageMap.cpp:
   23373         (WebCore::StorageMap::setItem):
   23374 
   23375 2008-05-05  Antti Koivisto  <antti (a] apple.com>
   23376 
   23377         Reviewed by Anders.
   23378 
   23379         Fix https://bugs.webkit.org/show_bug.cgi?id=18899
   23380         Bug 18899: REGRESSION (r32871): Non-Safari crash in WTF::HashTable on startup
   23381 
   23382         * loader/loader.cpp:
   23383         (WebCore::Loader::Loader):
   23384 
   23385 2008-05-05  Brady Eidson  <beidson (a] apple.com>
   23386 
   23387         Reviewed by Sam Weinig
   23388 
   23389         Fix a bug in StorageMap iterator tracking where the iterator was not successfully
   23390         invalidated at an appropriate time.
   23391 
   23392         * storage/StorageMap.cpp:
   23393         (WebCore::StorageMap::setItem): ALWAYS invalidate it here
   23394 
   23395 2008-05-05  Justin Garcia  <justin.garcia (a] apple.com>
   23396 
   23397         Reviewed by Darin.
   23398 
   23399         <rdar://problem/5865171> REGRESSION: Creating a new quote places caret at beginning of quote instead of the end
   23400         
   23401         Disable Range mutation on document modifications in Tiger and Leopard Mail,
   23402         since they do their own mutation which interferes with ours.
   23403 
   23404         * WebCore.base.exp:
   23405         * dom/Document.cpp:
   23406         (WebCore::Document::nodeChildrenChanged):
   23407         (WebCore::Document::nodeWillBeRemoved):
   23408         (WebCore::Document::textInserted):
   23409         (WebCore::Document::textRemoved):
   23410         (WebCore::Document::textNodesMerged):
   23411         (WebCore::Document::textNodeSplit):
   23412         * page/Settings.cpp:
   23413         (WebCore::Settings::Settings):
   23414         (WebCore::Settings::disableRangeMutationForOldAppleMail):
   23415         * page/Settings.h:
   23416         (WebCore::Settings::rangeMutationDisabledForOldAppleMail):
   23417 
   23418 2008-05-05  Sam Weinig  <sam (a] webkit.org>
   23419 
   23420         Reviewed by Tim Hatcher.
   23421 
   23422         Make the Inspector's localizable strings file match the format used by Dashboard widgets.
   23423 
   23424         * English.lproj/InspectorLocalizedStrings.js: Removed.
   23425         * English.lproj/localizedStrings.js: Added.
   23426         * WebCore.vcproj/WebCore.vcproj:
   23427         * WebCore.xcodeproj/project.pbxproj:
   23428         * page/inspector/inspector.js:
   23429 
   23430 2008-05-05  Steve Falkenburg  <sfalken (a] apple.com>
   23431 
   23432         Add support for default button appearance.
   23433         Add WebCore setting for app chrome mode.
   23434         
   23435         Reviewed by Dave Hyatt.
   23436 
   23437         * css/CSSPrimitiveValueMappings.h:
   23438         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
   23439         * css/CSSValueKeywords.in: Added default-button value keyword.
   23440         * page/Settings.cpp:
   23441         (WebCore::Settings::Settings):
   23442         (WebCore::Settings::setApplicationChromeMode):
   23443         * page/Settings.h:
   23444         (WebCore::Settings::inApplicationChromeMode):
   23445         * rendering/RenderButton.cpp:
   23446         (WebCore::RenderButton::RenderButton):
   23447         (WebCore::RenderButton::setStyle):
   23448         (WebCore::RenderButton::timerFired):
   23449         * rendering/RenderButton.h:
   23450         * rendering/RenderStyle.h:
   23451         * rendering/RenderTheme.cpp:
   23452         (WebCore::RenderTheme::adjustStyle):
   23453         (WebCore::RenderTheme::paint):
   23454         (WebCore::RenderTheme::paintBorderOnly):
   23455         (WebCore::RenderTheme::paintDecorations):
   23456         (WebCore::RenderTheme::isControlStyled):
   23457         (WebCore::RenderTheme::isDefault):
   23458         * rendering/RenderTheme.h:
   23459         * rendering/RenderThemeSafari.cpp:
   23460         (WebCore::RenderThemeSafari::determineState):
   23461         (WebCore::RenderThemeSafari::adjustRepaintRect):
   23462         (WebCore::RenderThemeSafari::adjustButtonStyle):
   23463         * rendering/RenderThemeWin.cpp:
   23464         (WebCore::RenderThemeWin::supportsFocus):
   23465 
   23466 2008-05-05  Alexey Proskuryakov  <ap (a] webkit.org>
   23467 
   23468         Reviewed by Darin.
   23469 
   23470         https://bugs.webkit.org/show_bug.cgi?id=11947
   23471         nbsps should be converted to entities in innerHTML
   23472 
   23473         https://bugs.webkit.org/show_bug.cgi?id=18769
   23474         replacing &nbsp; with spaces using regexp creates inconsistent result
   23475 
   23476         Tests: fast/dom/innerHTML-nbsp.html
   23477                fast/dom/innerHTML-escaping-attribute.html
   23478 
   23479         * editing/markup.cpp:
   23480         (WebCore::appendAttributeValue):
   23481         (WebCore::escapeContentText):
   23482         (WebCore::appendEscapedContent):
   23483         Added U+00a0/nbsp to the list of characters to escape.
   23484 
   23485 2008-05-05  David Hyatt  <hyatt (a] apple.com>
   23486 
   23487         Fix for https://bugs.webkit.org/show_bug.cgi?id=18821.  Fix some bugs in both get/PutImageData of <canvas>.
   23488 
   23489         Reviewed by Eric
   23490 
   23491         New tests added in fast/canvas/
   23492 
   23493         * platform/graphics/cg/ImageBufferCG.cpp:
   23494         (WebCore::ImageBuffer::getImageData):
   23495         (WebCore::ImageBuffer::putImageData):
   23496 
   23497 2008-05-05  Dan Bernstein  <mitz (a] apple.com>
   23498 
   23499         Reviewed by Dave Hyatt.
   23500 
   23501         - fix https://bugs.webkit.org/show_bug.cgi?id=18809
   23502           Forms with block level generated content and absolutely positioned labels break inline layout (fixed on reflow)
   23503 
   23504         Test: fast/block/basic/adding-near-anonymous-block.html
   23505 
   23506         * rendering/RenderBlock.cpp:
   23507         (WebCore::RenderBlock::addChildToFlow): When adding a floating or
   23508         positioned object, if it follows an anonymous block, put it
   23509         inside the anonymous block. When adding an inline, check if it comes
   23510         after an anonymous block and put it in the anonymous block.
   23511 
   23512 2008-05-05  Antti Koivisto  <antti (a] apple.com>
   23513 
   23514         Reviewed by Darin.
   23515 
   23516         Speculative fix for <rdar://problem/5906790> 
   23517         Crash in Loader::servePendingRequests() due to hash table being modified during iteration
   23518         
   23519         I don't know how to reproduce this. It would require the load to fail (or succeed)
   23520         synchronously, something that should not usually happen.
   23521 
   23522         * loader/loader.cpp:
   23523         (WebCore::Loader::Loader):
   23524         (WebCore::Loader::load):
   23525         (WebCore::Loader::servePendingRequests):
   23526         (WebCore::Loader::cancelRequests):
   23527         (WebCore::Loader::Host::Host):
   23528         * loader/loader.h:
   23529         (WebCore::Loader::Host::name):
   23530 
   23531 2008-05-05  Ariya Hidayat  <ariya.hidayat (a] trolltech.com>
   23532 
   23533         Reviewed by Simon.
   23534 
   23535         Disable SVG As Image support in the Qt port again, as it
   23536         requires more work. Right now the chrome client is
   23537         assumed to be a ChromeClientQt, which the SVG Image support
   23538         changes.
   23539 
   23540         * WebCore.pro:
   23541 
   23542 2008-05-02  Antti Koivisto  <antti (a] apple.com>
   23543 
   23544         Reviewed by Mitz.
   23545 
   23546         Fix <rdar://problem/5840475>
   23547         CrashTracer: [USER] 2 crashes in Safari at com.apple.WebCore: WebCore::RenderBlock::insertPositionedObject
   23548         
   23549         Non-block objects can have transforms so containingBlock() could end up returning null. 
   23550         RenderObject::container() needs to match.
   23551 
   23552         Test: fast/transforms/container-transform-crash.html
   23553 
   23554         * rendering/RenderObject.cpp:
   23555         (WebCore::RenderObject::containingBlock):
   23556         (WebCore::RenderObject::container):
   23557 
   23558 2008-05-04  Sam Weinig  <sam (a] webkit.org>
   23559 
   23560         Roll out r32851.  It broke tiger builds.
   23561 
   23562         * bindings/objc/DOMUtility.mm:
   23563         (KJS::createDOMWrapper):
   23564         (WebCore::createDOMWrapper):
   23565 
   23566 2008-05-04  Dan Bernstein  <mitz (a] apple.com>
   23567 
   23568         Reviewed by Sam Weinig.
   23569 
   23570         - fix https://bugs.webkit.org/show_bug.cgi?id=18879
   23571           <rdar://problem/5909481> Reproducible crash when removing a gradient
   23572 
   23573         Test: fast/gradients/crash-on-remove.html
   23574 
   23575         * css/CSSImageGeneratorValue.cpp:
   23576         (WebCore::CSSImageGeneratorValue::CSSImageGeneratorValue):
   23577         (WebCore::CSSImageGeneratorValue::addClient): Added a call to ref() the
   23578         value.
   23579         (WebCore::CSSImageGeneratorValue::removeClient): Added code to deref()
   23580         the value.
   23581 
   23582 2008-05-03  Sam Weinig  <sam (a] webkit.org>
   23583 
   23584         Reviewed by Mark Rowe.
   23585 
   23586         Move createDOMWrapper(JSObject* object) out of the KJS namespace and into
   23587         the WebCore namespace now that the required compilers don't freak out about
   23588         this anymore.
   23589 
   23590         * bindings/objc/DOMUtility.mm:
   23591         (WebCore::createDOMWrapper):
   23592 
   23593 2008-05-03  Rob Buis  <buis (a] kde.org>
   23594 
   23595         Reviewed by Sam.
   23596 
   23597         https://bugs.webkit.org/show_bug.cgi?id=18652
   23598         onchange events don't seem to fire for input[type=range] controls.
   23599 
   23600         Fire changeEvent when clicking the slider outside the current
   23601         thumb position.
   23602 
   23603         * rendering/RenderSlider.cpp:
   23604         (WebCore::RenderSlider::setValueForPosition):
   23605 
   23606 2008-05-03  Sam Weinig  <sam (a] webkit.org>
   23607 
   23608         Reviewed by Mark Rowe.
   23609 
   23610         Remove unused enums from JSDOMWindowBase.
   23611 
   23612         * bindings/js/JSDOMWindowBase.h:
   23613         (WebCore::JSDOMWindowBase::):
   23614 
   23615 2008-05-03  Sam Weinig  <sam (a] webkit.org>
   23616 
   23617         Real build fix.
   23618 
   23619         * WebCore.xcodeproj/project.pbxproj:
   23620 
   23621 2008-05-03  Sam Weinig  <sam (a] webkit.org>
   23622 
   23623         Build fix.
   23624 
   23625         * bindings/js/kjs_events.cpp:
   23626         (WebCore::JSAbstractEventListener::handleEvent):
   23627 
   23628 2008-05-03  Sam Weinig  <sam (a] webkit.org>
   23629 
   23630         Rubber-stamped by Geoffrey Garen.
   23631 
   23632         Rename JSDOMWindowWrapper to JSDOMWindowShell.
   23633 
   23634 2008-05-01  Rob Buis  <buis (a] kde.org>
   23635 
   23636         Reviewed by Eric.
   23637 
   23638         https://bugs.webkit.org/show_bug.cgi?id=18568
   23639         background: currentColor fails
   23640 
   23641         Implement currentColor from CSS3 color module.
   23642 
   23643         Tests: fast/css/background-currentcolor.html
   23644 
   23645         * css/CSSParser.cpp:
   23646         (WebCore::CSSParser::parseValue):
   23647         (WebCore::CSSParser::parseBackgroundColor):
   23648         * css/CSSStyleSelector.cpp:
   23649         (WebCore::CSSStyleSelector::getColorFromPrimitiveValue):
   23650         * css/CSSValueKeywords.in:
   23651         * css/SVGCSSValueKeywords.in:
   23652 
   23653 2008-05-02  Anders Carlsson  <andersca (a] apple.com>
   23654 
   23655         Reviewed by Mark.
   23656 
   23657         Turns out calling locationInWindow on keyboard events will not throw an exception,
   23658         but the point returned is completely bogus, so remove coordinates from the keyboard event struct.
   23659         
   23660         * bridge/npapi.h:
   23661         (_NPCocoaEvent::):
   23662 
   23663 2008-05-02  Benjamin Otte  <otte (a] gnome.org>
   23664 
   23665         Reviewed by Alp Toker.
   23666 
   23667         http://bugs.webkit.org/show_bug.cgi?id=18856
   23668         [GTK] variable initialization missing
   23669 
   23670         Not initializing the m_needsXEmbed variable could have very funny
   23671         results. Most often those results would be crashes.
   23672 
   23673         * plugins/PluginView.cpp:
   23674         (WebCore::PluginView::PluginView):
   23675 
   23676 2008-05-02  Jan Michael Alonzo  <jmalonzo (a] unpluggable.com>
   23677 
   23678         Reviewed by Eric.
   23679 
   23680         https://bugs.webkit.org/show_bug.cgi?id=18811
   23681         Enable dashboard and offline web apps in autotools
   23682 
   23683         * GNUmakefile.am:
   23684 
   23685 2008-05-02  Anders Carlsson  <andersca (a] apple.com>
   23686 
   23687         Reviewed by Sam.
   23688 
   23689         Name the event union so it will work in plain C.
   23690 
   23691         * bridge/npapi.h:
   23692         (_NPCocoaEvent::):
   23693 
   23694 2008-05-02  Dan Bernstein  <mitz (a] apple.com>
   23695 
   23696         Reviewed by John Sullivan.
   23697 
   23698         - render text shadows with zero offset, as the shadow can be seen behind
   23699           the text if the text is translucent
   23700 
   23701         Test: fast/text/shadow-no-blur.html
   23702 
   23703         * platform/graphics/mac/FontMac.mm:
   23704         (WebCore::Font::drawComplexText): Removed the isEmpty() condition on the
   23705         shadow offset. Since isEmpty() is also true for sizes that have one or
   23706         more non-positive components, this also ensures that subpixel
   23707         antialiasing of the text is maintained with shadows in all directions.
   23708         (WebCore::Font::drawGlyphs): Ditto.
   23709         * platform/graphics/win/FontCGWin.cpp:
   23710         (WebCore::Font::drawGlyphs): Ditto.
   23711 
   23712 2008-05-02  Ariya Hidayat  <ariya.hidayat (a] trolltech.com>
   23713 
   23714         Reviewed by Simon.
   23715 
   23716         Build the Qt port with SVG Use and As Image support.
   23717 
   23718         * WebCore.pro:
   23719 
   23720 2008-05-02  Ariya Hidayat  <ariya.hidayat (a] trolltech.com>
   23721 
   23722         Reviewed by Simon.
   23723 
   23724         Fixed potential crash on SVG animation (added more checks to the assert).
   23725 
   23726         * svg/SVGUseElement.cpp:
   23727         (WebCore::SVGUseElement::associateInstancesWithShadowTreeElements):
   23728 
   23729 2008-05-02  Alexey Proskuryakov  <ap (a] webkit.org>
   23730 
   23731         Rubber-stamped by John Sullivan.
   23732 
   23733         Fix a debug-only crash in layout tests.
   23734 
   23735         * loader/CachedResource.cpp:
   23736         (WebCore::CachedResource::~CachedResource): Don't call resourceForURL() for null URLs.
   23737 
   23738 2008-05-02  Simon Hausmann  <shausman (a] trolltech.com>
   23739 
   23740         Fix the Qt build on Windows when Phonon is enabled for Audio/Video support
   23741 
   23742         * WebCore.pro: Don't use QT += phonon as it prepends the phonon
   23743         includes to the include paths. Instead add it manually and make sure
   23744         phonon comes last, to avoid the conflict of phonon's path.h with
   23745         WebCore's Path.h on case-insensitive filesystems.
   23746 
   23747 2008-05-02  Simon Hausmann  <hausmann (a] webkit.org>
   23748 
   23749         Fix the Qt build. Add ExecState where necessary.
   23750 
   23751         * bridge/qt/qt_class.cpp:
   23752         (KJS::Bindings::QtClass::fallbackObject):
   23753         * bridge/qt/qt_instance.cpp:
   23754         (KJS::Bindings::QtRuntimeObjectImp::construct):
   23755         (KJS::Bindings::QtInstance::getRuntimeObject):
   23756         (KJS::Bindings::QtInstance::invokeDefaultMethod):
   23757         (KJS::Bindings::QtInstance::defaultValue):
   23758         (KJS::Bindings::QtInstance::stringValue):
   23759         * bridge/qt/qt_instance.h:
   23760         (KJS::Bindings::QtInstance::getObject):
   23761         * bridge/qt/qt_runtime.cpp:
   23762         (KJS::Bindings::convertValueToQVariant):
   23763         (KJS::Bindings::convertQVariantToValue):
   23764         (KJS::Bindings::QtRuntimeMetaMethod::lengthGetter):
   23765         (KJS::Bindings::QtRuntimeMetaMethod::connectGetter):
   23766         (KJS::Bindings::QtRuntimeMetaMethod::disconnectGetter):
   23767         (KJS::Bindings::QtRuntimeConnectionMethod::lengthGetter):
   23768         (KJS::Bindings::QtConnectionObject::execute):
   23769         * bridge/runtime.cpp:
   23770         (KJS::Bindings::Instance::createRuntimeObject):
   23771 
   23772 2008-05-02  Simon Hausmann  <shausman (a] trolltech.com>
   23773 
   23774         Fix the Qt/Win build.
   23775 
   23776         * WebCore.pro:
   23777         * platform/qt/TemporaryLinkStubs.cpp:
   23778         (PluginDatabase::getPluginPathsInDirectories):
   23779         (PluginDatabase::defaultPluginDirectories):
   23780         (PluginDatabase::isPreferredPluginDirectory):
   23781         (PluginView::setNPWindowRect):
   23782         (PluginView::userAgent):
   23783         (PluginView::invalidateRect):
   23784         (PluginView::invalidateRegion):
   23785         (PluginView::forceRedraw):
   23786         (PluginView::setFocus):
   23787         (PluginView::show):
   23788         (PluginView::hide):
   23789         (PluginView::paint):
   23790         (PluginView::setParent):
   23791         (PluginView::attachToWindow):
   23792         (PluginView::detachFromWindow):
   23793         (PluginView::updateWindow):
   23794         (PluginView::handleKeyboardEvent):
   23795         (PluginView::handleMouseEvent):
   23796         (PluginView::handlePostReadFile):
   23797         (PluginView::getValue):
   23798         * plugins/qt/PluginPackageQt.cpp:
   23799         (WebCore::PluginPackage::load):
   23800 
   23801 2008-05-02  Alexey Proskuryakov  <ap (a] webkit.org>
   23802 
   23803         Reviewed by Geoffrey Garen.
   23804 
   23805         https://bugs.webkit.org/show_bug.cgi?id=18826
   23806         Make JavaScript heap per-thread
   23807 
   23808         This is mostly adaptation for JSC changes. The most prominent one is that JSObject
   23809         allocator now takes ExecState, e.g. "new (exec) JSXMLHttpRequestConstructor(...)". It is
   23810         OK to pass either the current or global one, whichever is faster to get hold of, as both
   23811         have the same reference to a per-thread JS heap.
   23812 
   23813         * bindings/scripts/CodeGeneratorJS.pm: Pass ExecState to functions that now need it.
   23814         JSDOMWindow, JSDOMWindowPrototype and JSDOMWindowWrapper are special, because they are
   23815         constructed before any ExecState comes into existence, so they use Heap::threadHeap()
   23816         directly for allocation.
   23817 
   23818         * bindings/js/JSDOMWindowWrapper.cpp:
   23819         (WebCore::JSDOMWindowWrapper::operator new):
   23820         * bindings/js/JSDOMWindowWrapper.h:
   23821         Added a custom operator new to use per-thread heap when there's no ExecState around.
   23822 
   23823         * bindings/js/JSAudioConstructor.cpp:
   23824         (WebCore::JSAudioConstructor::JSAudioConstructor):
   23825         * bindings/js/JSCSSRuleCustom.cpp:
   23826         (WebCore::toJS):
   23827         * bindings/js/JSCSSStyleDeclarationCustom.cpp:
   23828         (WebCore::JSCSSStyleDeclaration::nameGetter):
   23829         * bindings/js/JSCSSValueCustom.cpp:
   23830         (WebCore::toJS):
   23831         * bindings/js/JSCanvasPixelArrayCustom.cpp:
   23832         (WebCore::JSCanvasPixelArray::indexGetter):
   23833         (WebCore::toJS):
   23834         * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
   23835         (WebCore::toJS):
   23836         * bindings/js/JSClipboardCustom.cpp:
   23837         (WebCore::JSClipboard::types):
   23838         (WebCore::JSClipboard::getData):
   23839         * bindings/js/JSCustomXPathNSResolver.cpp:
   23840         (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
   23841         * bindings/js/JSDOMApplicationCacheCustom.cpp:
   23842         (WebCore::JSDOMApplicationCache::addEventListener):
   23843         (WebCore::JSDOMApplicationCache::removeEventListener):
   23844         (WebCore::JSDOMApplicationCache::setOnchecking):
   23845         (WebCore::JSDOMApplicationCache::setOnerror):
   23846         (WebCore::JSDOMApplicationCache::setOnnoupdate):
   23847         (WebCore::JSDOMApplicationCache::setOndownloading):
   23848         (WebCore::JSDOMApplicationCache::setOnprogress):
   23849         (WebCore::JSDOMApplicationCache::setOnupdateready):
   23850         (WebCore::JSDOMApplicationCache::setOncached):
   23851         * bindings/js/JSDOMWindowBase.cpp:
   23852         (WebCore::JSDOMWindowBase::JSDOMWindowBase):
   23853         (WebCore::JSDOMWindowBase::getValueProperty):
   23854         (WebCore::JSDOMWindowBase::setListener):
   23855         (WebCore::JSDOMWindowBase::findOrCreateJSEventListener):
   23856         (WebCore::JSDOMWindowBase::findJSUnprotectedEventListener):
   23857         (WebCore::JSDOMWindowBase::findOrCreateJSUnprotectedEventListener):
   23858         (WebCore::windowProtoFuncAToB):
   23859         (WebCore::windowProtoFuncBToA):
   23860         (WebCore::windowProtoFuncSetTimeout):
   23861         (WebCore::windowProtoFuncSetInterval):
   23862         (WebCore::windowProtoFuncAddEventListener):
   23863         * bindings/js/JSDOMWindowBase.h:
   23864         * bindings/js/JSDocumentCustom.cpp:
   23865         (WebCore::toJS):
   23866         * bindings/js/JSEventCustom.cpp:
   23867         (WebCore::toJS):
   23868         * bindings/js/JSEventTargetBase.cpp:
   23869         (WebCore::jsEventTargetAddEventListener):
   23870         * bindings/js/JSEventTargetBase.h:
   23871         (WebCore::JSEventTargetPrototype::self):
   23872         * bindings/js/JSEventTargetNode.cpp:
   23873         (WebCore::JSEventTargetNode::setListener):
   23874         * bindings/js/JSHTMLCollectionCustom.cpp:
   23875         (WebCore::getNamedItems):
   23876         (WebCore::toJS):
   23877         * bindings/js/JSHTMLElementWrapperFactory.cpp:
   23878         (WebCore::createJSHTMLWrapper):
   23879         * bindings/js/JSHTMLFormElementCustom.cpp:
   23880         (WebCore::JSHTMLFormElement::nameGetter):
   23881         * bindings/js/JSHTMLInputElementBase.cpp:
   23882         (WebCore::JSHTMLInputElementBase::getValueProperty):
   23883         * bindings/js/JSHTMLOptionElementConstructor.cpp:
   23884         (WebCore::JSHTMLOptionElementConstructor::JSHTMLOptionElementConstructor):
   23885         * bindings/js/JSHTMLOptionsCollectionCustom.cpp:
   23886         (WebCore::JSHTMLOptionsCollection::length):
   23887         * bindings/js/JSInspectedObjectWrapper.cpp:
   23888         (WebCore::JSInspectedObjectWrapper::wrap):
   23889         * bindings/js/JSInspectorCallbackWrapper.cpp:
   23890         (WebCore::JSInspectorCallbackWrapper::wrap):
   23891         * bindings/js/JSLocationCustom.cpp:
   23892         (WebCore::JSLocation::toString):
   23893         * bindings/js/JSNamedNodesCollection.cpp:
   23894         (WebCore::JSNamedNodesCollection::lengthGetter):
   23895         * bindings/js/JSNavigatorCustom.cpp:
   23896         (WebCore::JSNavigator::appVersion):
   23897         * bindings/js/JSNodeCustom.cpp:
   23898         (WebCore::toJS):
   23899         * bindings/js/JSNodeFilterCustom.cpp:
   23900         (WebCore::JSNodeFilter::acceptNode):
   23901         * bindings/js/JSRGBColor.cpp:
   23902         (WebCore::getJSRGBColor):
   23903         * bindings/js/JSSQLResultSetRowListCustom.cpp:
   23904         (WebCore::JSSQLResultSetRowList::item):
   23905         * bindings/js/JSSVGElementWrapperFactory.cpp:
   23906         (WebCore::createJSSVGWrapper):
   23907         * bindings/js/JSSVGLazyEventListener.cpp:
   23908         (WebCore::JSSVGLazyEventListener::eventParameterName):
   23909         * bindings/js/JSStorageCustom.cpp:
   23910         (WebCore::JSStorage::nameGetter):
   23911         * bindings/js/JSStyleSheetCustom.cpp:
   23912         (WebCore::toJS):
   23913         * bindings/js/JSXMLHttpRequestConstructor.cpp:
   23914         (WebCore::JSXMLHttpRequestConstructor::construct):
   23915         * bindings/js/JSXMLHttpRequestCustom.cpp:
   23916         (WebCore::JSXMLHttpRequest::setOnreadystatechange):
   23917         (WebCore::JSXMLHttpRequest::setOnload):
   23918         (WebCore::JSXMLHttpRequest::setOnprogress):
   23919         (WebCore::JSXMLHttpRequest::getResponseHeader):
   23920         (WebCore::JSXMLHttpRequest::addEventListener):
   23921         (WebCore::JSXMLHttpRequest::removeEventListener):
   23922         * bindings/js/JSXSLTProcessor.cpp:
   23923         (WebCore::jsXSLTProcessorPrototypeFunctionGetParameter):
   23924         (WebCore::JSXSLTProcessorConstructor::construct):
   23925         * bindings/js/kjs_binding.cpp:
   23926         (WebCore::jsStringOrNull):
   23927         (WebCore::jsOwnedStringOrNull):
   23928         (WebCore::jsStringOrUndefined):
   23929         (WebCore::jsStringOrFalse):
   23930         (WebCore::nonCachingStaticFunctionGetter):
   23931         (WebCore::objectToStringFunctionGetter):
   23932         * bindings/js/kjs_binding.h:
   23933         (WebCore::DOMObject::DOMObject):
   23934         (WebCore::cacheDOMObject):
   23935         (WebCore::cacheSVGDOMObject):
   23936         * bindings/js/kjs_events.cpp:
   23937         (WebCore::JSLazyEventListener::eventParameterName):
   23938         (WebCore::JSLazyEventListener::parseCode):
   23939         * bindings/js/kjs_html.cpp:
   23940         (WebCore::getRuntimeObject):
   23941         * bridge/c/c_instance.cpp:
   23942         (KJS::Bindings::CInstance::defaultValue):
   23943         (KJS::Bindings::CInstance::stringValue):
   23944         (KJS::Bindings::CInstance::numberValue):
   23945         (KJS::Bindings::CInstance::valueOf):
   23946         * bridge/c/c_instance.h:
   23947         * bridge/c/c_utility.cpp:
   23948         (KJS::Bindings::convertNPVariantToValue):
   23949         * bridge/jni/jni_instance.cpp:
   23950         (JavaInstance::stringValue):
   23951         (JavaInstance::numberValue):
   23952         (JavaInstance::invokeMethod):
   23953         (JavaInstance::defaultValue):
   23954         (JavaInstance::valueOf):
   23955         * bridge/jni/jni_instance.h:
   23956         * bridge/jni/jni_jsobject.h:
   23957         * bridge/jni/jni_jsobject.mm:
   23958         (JavaJSObject::call):
   23959         (JavaJSObject::setMember):
   23960         (JavaJSObject::setSlot):
   23961         (JavaJSObject::convertJObjectToValue):
   23962         (JavaJSObject::getListFromJArray):
   23963         * bridge/jni/jni_objc.mm:
   23964         (KJS::Bindings::dispatchJNICall):
   23965         * bridge/jni/jni_runtime.cpp:
   23966         (JavaArray::convertJObjectToArray):
   23967         (JavaField::dispatchValueFromInstance):
   23968         (JavaField::valueFromInstance):
   23969         (JavaField::dispatchSetValueToInstance):
   23970         (JavaArray::valueAt):
   23971         * bridge/jni/jni_utility.h:
   23972         * bridge/objc/objc_class.mm:
   23973         (KJS::Bindings::ObjcClass::fallbackObject):
   23974         * bridge/objc/objc_instance.h:
   23975         * bridge/objc/objc_instance.mm:
   23976         (ObjcInstance::defaultValue):
   23977         (ObjcInstance::stringValue):
   23978         (ObjcInstance::numberValue):
   23979         (ObjcInstance::valueOf):
   23980         * bridge/objc/objc_utility.h:
   23981         * bridge/objc/objc_utility.mm:
   23982         (KJS::Bindings::convertNSStringToString):
   23983         (KJS::Bindings::convertObjcValueToValue):
   23984         * bridge/runtime.cpp:
   23985         (KJS::Bindings::Instance::createRuntimeObject):
   23986         * bridge/runtime.h:
   23987         (KJS::Bindings::Instance::valueOf):
   23988         * bridge/runtime_array.cpp:
   23989         (RuntimeArray::lengthGetter):
   23990         * bridge/runtime_method.cpp:
   23991         (RuntimeMethod::lengthGetter):
   23992         * bridge/runtime_object.cpp:
   23993         (RuntimeObjectImp::RuntimeObjectImp):
   23994         (RuntimeObjectImp::methodGetter):
   23995         (RuntimeObjectImp::defaultValue):
   23996         * xml/XMLHttpRequest.cpp:
   23997         (WebCore::XMLHttpRequest::dropProtection):
   23998         * bindings/js/GCController.cpp:
   23999         (WebCore::GCController::gcTimerFired):
   24000         (WebCore::GCController::garbageCollectNow):
   24001         Adapted to JSC changes. Pass ExecState to functions that now need it. Removed
   24002         collectOnMainThreadOnly, as this is the only way to collect now. Replaced calls to static
   24003         Collector methods with calls to per-thread Heap ones.
   24004 
   24005 2008-05-02  Ariya Hidayat  <ariya.hidayat (a] trolltech.com>
   24006 
   24007         Reviewed by Simon.
   24008 
   24009         Build the Qt port with SVG Animation support.
   24010 
   24011         * WebCore.pro:
   24012 
   24013 2008-05-02  Simon Hausmann  <hausmann (a] webkit.org>
   24014 
   24015         Build fix for Qt/Gtk. Don't declare NP_InitializeFuncPtr twice
   24016         with different signatures.
   24017 
   24018         * plugins/npfunctions.h:
   24019 
   24020 2008-05-01  Robin Dunn  <robin (a] alldunn.com>
   24021 
   24022         Reviewed by Kevin Ollivier.
   24023 
   24024         Explicitly set the pen style in wx port to keep pen style changes from 
   24025         affecting URL underline or text field drawing.
   24026         
   24027         https://bugs.webkit.org/show_bug.cgi?id=18775
   24028 
   24029         * platform/graphics/wx/GraphicsContextWx.cpp:
   24030         (WebCore::GraphicsContext::fillRect):
   24031         (WebCore::GraphicsContext::drawLineForText):
   24032         * platform/wx/RenderThemeWx.cpp:
   24033         (WebCore::RenderThemeWx::paintTextField):
   24034 
   24035 2008-05-01  Robin Dunn  <robin (a] alldunn.com>
   24036 
   24037         Reviewed by Kevin Ollivier.
   24038 
   24039         Implement popup menu support for wx port.
   24040         
   24041         https://bugs.webkit.org/show_bug.cgi?id=18776
   24042 
   24043         * platform/PopupMenu.h:
   24044         * platform/wx/PopupMenuWx.cpp: Added.
   24045         (WebCore::PopupMenu::PopupMenu):
   24046         (WebCore::PopupMenu::~PopupMenu):
   24047         (WebCore::PopupMenu::show):
   24048         (WebCore::PopupMenu::OnMenuItemSelected):
   24049         (WebCore::PopupMenu::hide):
   24050         (WebCore::PopupMenu::updateFromElement):
   24051         (WebCore::PopupMenu::itemWritingDirectionIsNatural):
   24052         * platform/wx/TemporaryLinkStubs.cpp:
   24053         * webcore-wx.bkl:
   24054 
   24055 2008-05-01  Kevin Ollivier  <kevino (a] theolliviers.com>
   24056 
   24057         Reviewed by Eric Seidel.
   24058 
   24059         Make sure we properly set the button for all mouse events,
   24060         not just mouse down, set the click count to 0
   24061         for non-click events, and finally set the timestamp.
   24062         
   24063         https://bugs.webkit.org/show_bug.cgi?id=18464
   24064 
   24065         * platform/wx/MouseEventWx.cpp:
   24066         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
   24067 
   24068 2008-05-01  Sam Weinig  <sam (a] webkit.org>
   24069 
   24070         Reviewed by Mark Rowe (in his infinite wisdom).
   24071 
   24072         Auto-generate the JSXSLTProcessor binding.
   24073 
   24074         * DerivedSources.make:
   24075         * GNUmakefile.am:
   24076         * WebCore.pro:
   24077         * WebCore.vcproj/WebCore.vcproj:
   24078         * WebCore.xcodeproj/project.pbxproj:
   24079         * WebCoreSources.bkl:
   24080         * bindings/js/JSDOMWindowBase.cpp:
   24081         (WebCore::JSDOMWindowBase::getValueProperty):
   24082         * bindings/js/JSDOMWindowBase.h:
   24083         (WebCore::JSDOMWindowBase::):
   24084         * bindings/js/JSXSLTProcessor.cpp: Removed.
   24085         * bindings/js/JSXSLTProcessor.h: Removed.
   24086         * xml/XSLTProcessor.h:
   24087 
   24088 2008-05-01  Sam Weinig  <sam (a] webkit.org>
   24089 
   24090         Reviewed by Geoffrey Garen.
   24091 
   24092         Fixes:
   24093           - https://bugs.webkit.org/show_bug.cgi?id=17249
   24094             Incorrect lexical scope after navigation leads to UXSS
   24095             <rdar://problem/5738497>
   24096 
   24097           - https://bugs.webkit.org/show_bug.cgi?id=16824
   24098             Script authorization should follow lexical (not dynamic) scope
   24099             <rdar://problem/5683032>
   24100 
   24101         This patch changes us to perform same-origin checks based on the lexical global object) 
   24102         rather than dynamic global object, which is now possible we don't re-use the window on 
   24103         navigations, but rather switch in a new one and re-use the outer shell.  This is both
   24104         more secure and conforms with the HTML5 specification.  Now that all the checks are
   24105         done based on the lexical global object, we can remove the SecurityOrigin::Reason
   24106         concept, as it was only around to work around an ebay.com bug that required the check to
   24107         be done that way.
   24108 
   24109         An important thing to note is that we currently implement a stricter than necessary policy
   24110         and perform the same-origin check based on the currently active global object to avoid leaking
   24111         the document in cases when the target frame is navigated before access.  This will be fixed in
   24112         an upcoming patch.
   24113 
   24114         * bindings/js/JSDOMWindowBase.cpp:
   24115         (WebCore::JSDOMWindowBase::allowsAccessFrom):
   24116         (WebCore::JSDOMWindowBase::allowsAccessFromNoErrorMessage):
   24117         (WebCore::JSDOMWindowBase::allowsAccessFromPrivate):
   24118         (WebCore::JSDOMWindowBase::crossDomainAccessErrorMessage):
   24119         (WebCore::JSDOMWindowBase::printErrorMessage):
   24120         (WebCore::asJSDOMWindow):
   24121         * bindings/js/JSDOMWindowBase.h:
   24122         * html/CanvasRenderingContext2D.cpp:
   24123         (WebCore::CanvasRenderingContext2D::checkOrigin):
   24124         (WebCore::CanvasRenderingContext2D::createPattern):
   24125         * loader/FrameLoader.cpp:
   24126         (WebCore::FrameLoader::begin):
   24127         (WebCore::FrameLoader::write):
   24128         (WebCore::FrameLoader::setOpener):
   24129         (WebCore::FrameLoader::shouldAllowNavigation):
   24130         * page/DOMWindow.h:
   24131         (WebCore::DOMWindow::setSecurityOrigin):
   24132         (WebCore::DOMWindow::securityOrigin):
   24133         (WebCore::DOMWindow::setURL):
   24134         (WebCore::DOMWindow::url):
   24135         * platform/SecurityOrigin.cpp:
   24136         (WebCore::SecurityOrigin::canAccess):
   24137         (WebCore::SecurityOrigin::isSecureTransitionTo):
   24138         * platform/SecurityOrigin.h:
   24139 
   24140 2008-05-01  Anders Carlsson  <andersca (a] apple.com>
   24141 
   24142         Reviewed by Mark.
   24143 
   24144         Enable 64-bit NPAPI plugins.
   24145         
   24146         * WebCore.xcodeproj/project.pbxproj:
   24147         Don't remove NPAPI related symbols from the 64-bit .exp file.
   24148         
   24149         * bridge/npruntime.h:
   24150         Remove now unnecessary #error.
   24151 
   24152 2008-05-01  Maciej Stachowiak  <mjs (a] apple.com>
   24153 
   24154         Reviewed by Oliver (a while ago)
   24155 
   24156         - just a wee bit more bindings speedup
   24157         
   24158         Store the per-document Node --> JS wrapper cache in the document
   24159         instead of an external hashtable.
   24160 
   24161         * bindings/js/kjs_binding.cpp:
   24162         (WebCore::ScriptInterpreter::getDOMNodeForDocument):
   24163         (WebCore::ScriptInterpreter::forgetDOMNodeForDocument):
   24164         (WebCore::ScriptInterpreter::putDOMNodeForDocument):
   24165         (WebCore::ScriptInterpreter::forgetAllDOMNodesForDocument):
   24166         (WebCore::ScriptInterpreter::markDOMNodesForDocument):
   24167         * dom/Document.h:
   24168         (WebCore::Document::wrapperCache):
   24169 
   24170 2008-05-01  Anders Carlsson  <andersca (a] apple.com>
   24171 
   24172         Reviewed by Tim.
   24173 
   24174         Remove duplicate npfunctions.h header from WebKit.
   24175         
   24176         * WebCore.xcodeproj/project.pbxproj:
   24177         Add npfunctions.h and set its role to private.
   24178         
   24179         * plugins/npfunctions.h:
   24180         Merge Mac specific changes.
   24181 
   24182 2008-05-01  Sam Weinig  <sam (a] webkit.org>
   24183 
   24184         Reviewed by Geoffrey Garen.
   24185 
   24186         Rename toJSDOMWindow(KJS::JSGlobalObject) to asJSDOMWindow, as all it does is
   24187         cast.
   24188 
   24189         * bindings/js/JSCustomVoidCallback.cpp:
   24190         (WebCore::toVoidCallback):
   24191         * bindings/js/JSCustomXPathNSResolver.cpp:
   24192         (WebCore::JSCustomXPathNSResolver::create):
   24193         * bindings/js/JSDOMApplicationCacheCustom.cpp:
   24194         (WebCore::JSDOMApplicationCache::add):
   24195         (WebCore::JSDOMApplicationCache::remove):
   24196         * bindings/js/JSDOMWindowBase.cpp:
   24197         (WebCore::allowPopUp):
   24198         (WebCore::createWindow):
   24199         (WebCore::windowProtoFuncOpen):
   24200         (WebCore::asJSDOMWindow):
   24201         * bindings/js/JSDOMWindowBase.h:
   24202         * bindings/js/JSDOMWindowCustom.cpp:
   24203         (WebCore::JSDOMWindow::setLocation):
   24204         (WebCore::JSDOMWindow::postMessage):
   24205         * bindings/js/JSDatabaseCustom.cpp:
   24206         (WebCore::JSDatabase::changeVersion):
   24207         (WebCore::JSDatabase::transaction):
   24208         * bindings/js/JSDocumentCustom.cpp:
   24209         (WebCore::JSDocument::setLocation):
   24210         * bindings/js/JSLocationCustom.cpp:
   24211         (WebCore::navigateIfAllowed):
   24212         (WebCore::JSLocation::setHref):
   24213         (WebCore::JSLocation::replace):
   24214         (WebCore::JSLocation::reload):
   24215         (WebCore::JSLocation::assign):
   24216         * bindings/js/JSSQLTransactionCustom.cpp:
   24217         (WebCore::JSSQLTransaction::executeSql):
   24218         * bindings/js/JSXMLHttpRequestCustom.cpp:
   24219         (WebCore::JSXMLHttpRequest::open):
   24220         * page/JavaScriptDebugServer.cpp:
   24221         (WebCore::toPage):
   24222 
   24223 2008-05-01  Anatoli Papirovski  <apapirovski (a] mac.com>
   24224 
   24225         Reviewed by Dave Hyatt.
   24226 
   24227         - fix https://bugs.webkit.org/show_bug.cgi?id=18347
   24228           Absolutely positioned image percentage width does not respect container's padding
   24229 
   24230         Test: fast/replaced/absolute-position-percentage-width.html
   24231 
   24232         * rendering/RenderBox.cpp:
   24233         (WebCore::RenderBox::calcReplacedWidthUsing):
   24234 
   24235 2008-05-01  Dan Bernstein  <mitz (a] apple.com>
   24236 
   24237         - Windows build fix
   24238 
   24239         * platform/graphics/win/FontCGWin.cpp:
   24240         (WebCore::Font::drawGlyphs):
   24241 
   24242 2008-05-01  Dan Bernstein  <mitz (a] apple.com>
   24243 
   24244         Reviewed by Darin Adler.
   24245 
   24246         - make synthetic bold and synthetic italics work in GDI text
   24247         - account for synthetic bold in complex text on Windows
   24248 
   24249         * platform/graphics/win/FontCGWin.cpp:
   24250         (WebCore::Font::drawGlyphs): Adjusted the text rectangle's x coordinates
   24251         to fit italics. Added a skew transform for synthetic italics and a
   24252         second paint pass for synthetic bold.
   24253         * platform/graphics/win/SimpleFontDataWin.cpp:
   24254         (WebCore::SimpleFontData::widthForGDIGlyph): Added the synthetic bold
   24255         offset.
   24256         * platform/graphics/win/UniscribeController.cpp:
   24257         (WebCore::UniscribeController::shapeAndPlaceItem): Added the synthetic
   24258         bold offset.
   24259 
   24260 2008-05-01  Alp Toker  <alp (a] nuanti.com>
   24261 
   24262         Qt/Win build fix attempt following plugin changes. Add missing return
   24263         statements.
   24264 
   24265         Also fixes some newly introduced coding style issues in the Qt port.
   24266 
   24267         * platform/qt/FileSystemQt.cpp:
   24268         (WebCore::openTemporaryFile):
   24269         (WebCore::closeFile):
   24270         (WebCore::writeToFile):
   24271         (WebCore::unloadModule):
   24272 
   24273 2008-05-01  Anders Carlsson  <andersca (a] apple.com>
   24274 
   24275         Reviewed by Adam.
   24276 
   24277         Export methods needed to subclass Widget.  (See r32770.)
   24278 
   24279         * WebCore.base.exp:
   24280 
   24281 2008-05-01  Marc Ordinas i Llopis  <marc.ordinasillopis (a] collabora.co.uk>
   24282 
   24283         Reviewed by Alp Toker.
   24284         Qt parts OK'ed by Simon Hausmann.
   24285 
   24286         https://bugs.webkit.org/show_bug.cgi?id=14750
   24287         Added support for NPAPI plugins on Gtk and Qt-x11 ports.
   24288 
   24289         * GNUmakefile.am: Added Gtk plugin files.
   24290         * WebCore.pro: Added Qt plugins files, defined XP_UNIX and
   24291         ENABLE_NETSCAPE_PLUGIN_API
   24292         * bridge/npruntime_internal.h: Additional undefs that conflict
   24293         with Qt headers.
   24294         * page/gtk/FrameGtk.cpp: Create js bindings for PluginView.
   24295         (WebCore::Frame::createScriptInstanceForWidget):
   24296         * page/qt/FrameQt.cpp: Create js bindings for PluginView.
   24297         (WebCore::Frame::createScriptInstanceForWidget):
   24298         (WebCore::Frame::clearPlatformScriptObjects):
   24299         (WebCore::Frame::disconnectPlatformScriptObjects):
   24300         * platform/FileSystem.h: Qt FileSystem implementation.
   24301         * platform/Widget.h: Members to differentiate between Qt plugins and
   24302         NPAPI ones.
   24303         * platform/gtk/ScrollViewGtk.cpp:
   24304         (WebCore::ScrollView::addChild): Set containing window before calling setParent.
   24305         * platform/gtk/TemporaryLinkStubs.cpp: Removed implemented functions.
   24306         (PluginView::invalidateRegion):
   24307         * platform/qt/FileSystemQt.cpp: Implemented functions necessary for
   24308         NPAPI plugins.
   24309         (WebCore::openTemporaryFile):
   24310         (WebCore::closeFile):
   24311         (WebCore::writeToFile):
   24312         (WebCore::unloadModule): Delete module if unloaded.
   24313         * platform/qt/TemporaryLinkStubs.cpp: Removed implemented functions.
   24314         * platform/qt/WidgetQt.cpp: Differentiate between Qt plugins and
   24315         NPAPI ones.
   24316         (WebCore::WidgetPrivate::WidgetPrivate):
   24317         (WebCore::Widget::isNPAPIPlugin):
   24318         (WebCore::Widget::setIsNPAPIPlugin):
   24319         * plugins/PluginPackage.cpp:
   24320         (WebCore::PluginPackage::~PluginPackage): Unload the module before
   24321         destruction.
   24322         (WebCore::PluginPackage::compare): Moved here as it's platform
   24323         independent.
   24324         * plugins/PluginView.cpp: Moved platform-independent functions here.
   24325         (WebCore::PluginView::PluginView): Initialize m_npWindow.ws_info on
   24326         Unix platforms.
   24327         (WebCore::PluginView::freeStringArray):
   24328         (WebCore::startsWithBlankLine):
   24329         (WebCore::locationAfterFirstBlankLine):
   24330         (WebCore::findEOL):
   24331         (WebCore::capitalizeRFC822HeaderFieldName):
   24332         (WebCore::parseRFC822HeaderFields):
   24333         (WebCore::PluginView::handlePost):
   24334         * plugins/PluginView.h: Moved platform-independent functions here.
   24335         Added member to signal plugin needs XEmbed extension.
   24336         * plugins/gtk/PluginDataGtk.cpp: Added.
   24337         (WebCore::PluginData::initPlugins):
   24338         (WebCore::PluginData::refresh):
   24339         * plugins/gtk/PluginDatabaseGtk.cpp:
   24340         (WebCore::PluginDatabase::defaultPluginDirectories):
   24341         (WebCore::PluginDatabase::isPreferredPluginDirectory):
   24342         * plugins/gtk/PluginPackageGtk.cpp: Added.
   24343         (WebCore::PluginPackage::determineQuirks):
   24344         (WebCore::PluginPackage::fetchInfo):
   24345         (WebCore::PluginPackage::load):
   24346         (WebCore::PluginPackage::hash):
   24347         (WebCore::PluginPackage::equal):
   24348         (WebCore::PluginPackage::compareFileVersion):
   24349         * plugins/gtk/PluginViewGtk.cpp: Added.
   24350         (WebCore::PluginView::updateWindow):
   24351         (WebCore::PluginView::setFocus):
   24352         (WebCore::PluginView::show):
   24353         (WebCore::PluginView::hide):
   24354         (WebCore::PluginView::paint):
   24355         (WebCore::PluginView::handleKeyboardEvent):
   24356         (WebCore::PluginView::handleMouseEvent):
   24357         (WebCore::PluginView::setParent):
   24358         (WebCore::PluginView::setNPWindowRect):
   24359         (WebCore::PluginView::attachToWindow):
   24360         (WebCore::PluginView::detachFromWindow):
   24361         (WebCore::PluginView::stop):
   24362         (WebCore::PluginView::userAgent):
   24363         (WebCore::PluginView::handlePostReadFile):
   24364         (WebCore::PluginView::getValue):
   24365         (WebCore::PluginView::invalidateRect):
   24366         (WebCore::PluginView::forceRedraw):
   24367         (WebCore::PluginView::~PluginView):
   24368         (WebCore::plug_removed_cb): Added callback to handle plug removal.
   24369         (WebCore::PluginView::init):
   24370         * plugins/gtk/xembed.h: Added.
   24371         * plugins/npapi.cpp:
   24372         (NPN_GetValue): Return error if no view present.
   24373         * plugins/qt/PluginDataQt.cpp:
   24374         (WebCore::PluginData::initPlugins):
   24375         (WebCore::PluginData::refresh):
   24376         * plugins/qt/PluginDatabaseQt.cpp: Added.
   24377         (WebCore::PluginDatabase::getPluginPathsInDirectories):
   24378         (WebCore::addQtWebKitPluginDirectories):
   24379         (WebCore::addMozillaPluginDirectories):
   24380         (WebCore::PluginDatabase::defaultPluginDirectories):
   24381         (WebCore::PluginDatabase::isPreferredPluginDirectory):
   24382         * plugins/qt/PluginPackageQt.cpp: Added.
   24383         (WebCore::PluginPackage::determineQuirks):
   24384         (WebCore::PluginPackage::fetchInfo):
   24385         (WebCore::PluginPackage::load):
   24386         (WebCore::PluginPackage::hash):
   24387         (WebCore::PluginPackage::equal):
   24388         (WebCore::PluginPackage::compareFileVersion):
   24389         * plugins/qt/PluginViewQt.cpp: Added.
   24390         (WebCore::PluginView::updateWindow):
   24391         (WebCore::PluginView::setFocus):
   24392         (WebCore::PluginView::show):
   24393         (WebCore::PluginView::hide):
   24394         (WebCore::PluginView::paint):
   24395         (WebCore::PluginView::handleKeyboardEvent):
   24396         (WebCore::PluginView::handleMouseEvent):
   24397         (WebCore::PluginView::setParent):
   24398         (WebCore::PluginView::setNPWindowRect):
   24399         (WebCore::PluginView::attachToWindow):
   24400         (WebCore::PluginView::detachFromWindow):
   24401         (WebCore::PluginView::stop):
   24402         (WebCore::PluginView::userAgent):
   24403         (WebCore::PluginView::handlePostReadFile):
   24404         (WebCore::PluginView::getValue):
   24405         (WebCore::PluginView::invalidateRect):
   24406         (WebCore::PluginView::invalidateRegion):
   24407         (WebCore::PluginView::forceRedraw):
   24408         (WebCore::PluginView::~PluginView):
   24409         (WebCore::PluginView::init):
   24410         * plugins/win/PluginPackageWin.cpp: Moved platform-independent code
   24411         to plugins/PluginPackage.cpp
   24412         * plugins/win/PluginViewWin.cpp: Moved platform-independent code to
   24413         plugins/PluginView.cpp
   24414         (WebCore::PluginView::stop):
   24415         (WebCore::PluginView::handlePostReadFile):
   24416         (WebCore::PluginView::getValue): Moved this function to each platform.
   24417 
   24418 2008-05-01  Sam Weinig  <sam (a] webkit.org>
   24419 
   24420         Fix build.
   24421 
   24422         * ForwardingHeaders/wtf/StrHash.h: Added.
   24423 
   24424 2008-05-01  Anders Carlsson  <andersca (a] apple.com>
   24425 
   24426         Reviewed by Darin.
   24427 
   24428         Move management of cache groups to ApplicationCacheStorage. Also,
   24429         application caches now start out with a null group and will have their group set
   24430         when the cache has finished loading. 
   24431 
   24432         * loader/appcache/ApplicationCache.cpp:
   24433         (WebCore::ApplicationCache::ApplicationCache):
   24434         Initialize m_group to 0.
   24435         
   24436         (WebCore::ApplicationCache::~ApplicationCache):
   24437         Null check the group.
   24438         
   24439         (WebCore::ApplicationCache::setGroup):
   24440         New method for setting the group.
   24441         
   24442         * loader/appcache/ApplicationCache.h:        
   24443         (WebCore::ApplicationCache::create):
   24444         Remove the group argument.
   24445         
   24446         * loader/appcache/ApplicationCacheGroup.cpp:
   24447         (WebCore::ApplicationCacheGroup::~ApplicationCacheGroup):
   24448         Let the storage know that the cache group has been destroyed.
   24449         
   24450         (WebCore::ApplicationCacheGroup::cacheForMainRequest):
   24451         Call into the storage.
   24452         
   24453         (WebCore::ApplicationCacheGroup::selectCache):
   24454         Call into the storage.
   24455         
   24456         (WebCore::ApplicationCacheGroup::documentLoaderDestroyed):
   24457         When there are no document loaders associated with the cache group,
   24458         set the newest cache to 0.
   24459         
   24460         (WebCore::ApplicationCacheGroup::cacheDestroyed):
   24461         Delete the group if there are no associated caches.
   24462         
   24463         (WebCore::ApplicationCacheGroup::setNewestCache):
   24464         New method that will set the newest cache and associate the group with the cache.
   24465         
   24466         (WebCore::ApplicationCacheGroup::checkIfLoadIsComplete):
   24467         Call setNewestCache instead.
   24468         
   24469         * loader/appcache/ApplicationCacheStorage.cpp:
   24470         (WebCore::urlHostHash):
   24471         Move host hash method here.
   24472         
   24473         (WebCore::ApplicationCacheStorage::findOrCreateCacheGroup):
   24474         New method that finds a cache group with a given manifest URL or creates a new one.
   24475 
   24476         (WebCore::ApplicationCacheStorage::cacheGroupForURL):
   24477         New method that returns a cache group for a given URL.
   24478         
   24479         (WebCore::ApplicationCacheStorage::cacheGroupDestroyed):
   24480         When the cache group has been destroyed, remove it from the hash map.
   24481         
   24482         * loader/appcache/ApplicationCacheStorage.h:
   24483         Add new methods.I b
   24484 
   24485 2008-05-01  Dan Winship  <danw (a] gnome.org>
   24486 
   24487         Reviewed by Alp Toker.
   24488 
   24489         http://bugs.webkit.org/show_bug.cgi?id=18490
   24490         Add mostly-working file: support and mostly-broken ftp: support to
   24491         the soup backend.
   24492 
   24493         * platform/network/soup/ResourceHandleSoup.cpp (start): after
   24494         doing basic checks, delegate to one of three submethods
   24495         (startData): handles data: URLs
   24496         (startHttp): handles http: and https: URLs, via libsoup
   24497         (startGio, etc): handles file: and ftp: URLs, via gio. Lots of
   24498         FIXMEs detailing the parts that don't fully work yet.
   24499 
   24500         * platform/network/ResourceHandle.h:
   24501         * platform/network/ResourceHandleInternal.h: add new member
   24502         variables for gio-based loading
   24503 
   24504 2008-05-01  Alp Toker  <alp (a] nuanti.com>
   24505 
   24506         Rubber-stamped by Anders.
   24507 
   24508         GTK+ build fix for changes in r32752. Use int32, not int32_t types in
   24509         npapi.h.
   24510 
   24511         Additional fix to use same signedness in npapi.h and Mac for the
   24512         interval parameter.
   24513 
   24514         * bridge/npapi.h:
   24515 
   24516 2008-04-30  Anders Carlsson  <andersca (a] apple.com>
   24517 
   24518         Reviewed by Adam.
   24519 
   24520         Add new Cocoa event model type declarations.
   24521         
   24522         * bridge/npapi.h:
   24523 
   24524 2008-04-30  Beth Dakin  <bdakin (a] apple.com>
   24525 
   24526         Reviewed by Sam Weinig.
   24527 
   24528         This patch does three things:
   24529         1. Adds support for the "img" ARIA role
   24530         2. Switches over to a HashMap for converting ARIA role attributes 
   24531         to WebCore's AccessibilityRole type. 
   24532         3. Fixes a crash in the new ARIA code that I ran into while 
   24533         browsing with VoiceOver enabled.
   24534 
   24535         * page/AccessibilityObject.cpp:
   24536         (WebCore::AccessibilityObject::headingLevel): This is the crash 
   24537         fix. Make sure the node's renderer is not null before looking up 
   24538         its corresponding AccessibilityObject in the cache.
   24539         (WebCore::AccessibilityObject::accessibilityIsIgnored): Account for 
   24540         ARIA images.
   24541         (WebCore::createARIARoleMap): Switch to HashMap, and add "img" to 
   24542         the Map.
   24543         (WebCore::RoleEntry::): Same.
   24544         (WebCore::ariaRoleToWebCoreRole): Same.
   24545         (WebCore::AccessibilityObject::ariaRoleAttribute): Same.
   24546 
   24547 2008-04-30  Rob Buis  <buis (a] kde.org>
   24548 
   24549         Reviewed by Nikolas.
   24550 
   24551         https://bugs.webkit.org/show_bug.cgi?id=16447
   24552         onload called too many times for <svg:image>
   24553         https://bugs.webkit.org/show_bug.cgi?id=12282
   24554         SVG wastes time in malloc to send loadEvents to non-existent listeners
   24555 
   24556         Postpone load event dispatching for image when externalResourcesRequired
   24557         is true, delaying parents but not siblings, and make sure the load event
   24558         is sent once for image in all cases.
   24559 
   24560         * svg/SVGElement.cpp:
   24561         (WebCore::hasLoadListener):
   24562         (WebCore::SVGElement::sendSVGLoadEventIfPossible):
   24563         * svg/SVGImageElement.cpp:
   24564         (WebCore::SVGImageElement::haveLoadedRequiredResources):
   24565         * svg/SVGImageLoader.cpp:
   24566         (WebCore::SVGImageLoader::dispatchLoadEvent):
   24567 
   24568 2008-04-30  David Hyatt  <hyatt (a] apple.com>
   24569 
   24570         Fix crashes when dynamically removing <video> elements with layers that establish stacking contexts.  This
   24571         won't typically crash release builds because of arena recycling.
   24572 
   24573         Reviewed by Dan Bernstein
   24574         
   24575         * rendering/RenderLayer.cpp:
   24576         (WebCore::RenderLayer::~RenderLayer):
   24577         Make sure to remove the reflection's child layer from its parent.
   24578 
   24579         * rendering/RenderMedia.cpp:
   24580         (WebCore::RenderMedia::~RenderMedia):
   24581         (WebCore::RenderMedia::destroy):
   24582         (WebCore::RenderMedia::removeChild):
   24583         * rendering/RenderMedia.h:
   24584         Adjust the teardown of RenderMedia so that it does all of its teardown inside destroy() (this makes it more
   24585         like other renderers and doesn't leave you staring at a trashed layer hierarchy in the RenderMedia
   24586         destructor).
   24587 
   24588 2008-04-30  Rmi Zara  <remi_zara (a] mac.com>
   24589 
   24590         Reviewed by Dave Hyatt.
   24591 
   24592         fix https://bugs.webkit.org/show_bug.cgi?id=18618
   24593         <rdar://problem/5876063> REGRESSION (r31823-r31847): Patterns are upside down
   24594 
   24595         * svg/graphics/cg/SVGPaintServerPatternCg.cpp:
   24596         (WebCore::patternCallback): flip the y axis when drawing the tile
   24597 
   24598 2008-04-30  Timothy Hatcher  <timothy (a] apple.com>
   24599 
   24600         Fixes an undefined type exception that fires when adding a resource to the inspector
   24601         that has a MIME type warning.
   24602 
   24603         Reviewed by Adam Roben.
   24604 
   24605         * page/inspector/Resource.js:
   24606         (WebInspector.Resource.prototype._addTip): Call WebInspector.console instead of
   24607         WebInspector.consolePanel.
   24608         (WebInspector.Resource.prototype._checkWarning): Ditto.
   24609 
   24610 2008-04-30  Timothy Hatcher  <timothy (a] apple.com>
   24611 
   24612         Fixes the bug where the selected resource would be deselected after
   24613         changing the sort order in the Resources panel.
   24614 
   24615         Reviewed by Dan Bernstein.
   24616 
   24617         * page/inspector/ResourcesPanel.js:
   24618         (WebInspector.ResourcesPanel.prototype._sortResourcesIfNeeded):
   24619         Rememebr if the tree element that we are sorting was selected, so
   24620         the selection can be restored after it is re-inserted. The onSelect
   24621         is suppressed since we don't need to show the resource again.
   24622 
   24623 2008-04-29  Timothy Hatcher  <timothy (a] apple.com>
   24624 
   24625         Fixes the regression where error bubbles in source views always show
   24626         "undefined" for the content because the message property on
   24627         ConsoleMessage was removed. Adds support for a plain text formated
   24628         message that is stored in the message proeprty.
   24629 
   24630         Reviewed by Adam Roben.
   24631 
   24632         * page/inspector/Console.js:
   24633         (WebInspector.Console.prototype._format): Add a plainText argument that is passed to
   24634         the formatters.
   24635         (WebInspector.Console.prototype._formatvalue): Add a plainText argument, and a comment
   24636         about needing to honor it if the textContent of the output doesn't make sense.
   24637         (WebInspector.Console.prototype._formatvalue): Ditto.
   24638         (WebInspector.Console.prototype._formatstring): Ditto.
   24639         (WebInspector.Console.prototype._formatregexp): Ditto.
   24640         (WebInspector.Console.prototype._formatarray): Ditto.
   24641         (WebInspector.Console.prototype._formatnode): Ditto.
   24642         (WebInspector.Console.prototype._formatobject): Ditto.
   24643         (WebInspector.Console.prototype._formaterror): Ditto.
   24644         (WebInspector.ConsoleMessage): Call _format passing true for plainText. Get the 
   24645         textContnet of the result and assign to the message proeprty. This property is 
   24646         referenced from the SourceView.
   24647         (WebInspector.ConsoleMessage.prototype._format): Add a plainText argument. Build the 
   24648         result element as a local and return it, instead of using formatedMessage directly.
   24649 
   24650 2008-04-30  Timothy Hatcher  <timothy (a] apple.com>
   24651 
   24652         Adds a helper function to convert a JSValueRef to a String.
   24653 
   24654         Reviewed by Adam Roben.
   24655 
   24656         * page/InspectorController.cpp:
   24657         (WebCore::toString): Converts a JSValueRef to a String.
   24658         (WebCore::search): Use toString.
   24659         (WebCore::InspectorController::handleException): Ditto.
   24660 
   24661 2008-04-30  Ariya Hidayat  <ariya.hidayat (a] trolltech.com>
   24662 
   24663         Reviewed by Simon.
   24664         
   24665         Build the Qt port with SVG Foreign Object support.
   24666 
   24667         * WebCore.pro:
   24668 
   24669 2008-04-30  Simon Hausmann  <hausmann (a] webkit.org>
   24670 
   24671         Reviewed by Holger.
   24672 
   24673         Fix null pointer deference triggered by
   24674         LayoutTests/fast/loader/cancel-load-during-port-block-timer.html
   24675 
   24676         * platform/network/qt/ResourceHandleQt.cpp:
   24677         (WebCore::ResourceHandle::cancel): Check m_job before dereferencing.
   24678 
   24679 2008-04-29  David Hyatt  <hyatt (a] apple.com>
   24680 
   24681         Improve the performance of masks by adding code to set more precise clips on the transparency layers
   24682         used to paint the content under the mask, and then also avoid creating transparency layers for the masks
   24683         themselves in common cases.
   24684 
   24685         Reviewed by Dan Bernstein
   24686 
   24687         * platform/graphics/GraphicsContext.cpp:
   24688         (WebCore::GraphicsContext::drawTiledImage):
   24689         Fix a bug in drawTiledImage where the composite mode got lost in the double stretch case for nine piece
   24690         images.
   24691 
   24692         * rendering/InlineFlowBox.cpp:
   24693         (WebCore::InlineFlowBox::paintFillLayers):
   24694         (WebCore::InlineFlowBox::paintFillLayer):
   24695         (WebCore::InlineFlowBox::paintMask):
   24696         Optimize to only push a transparency layer for the mask if multiple images are combining.  Add a new
   24697         composite operator argument for use when painting fill layers to do direct destination-in compositing while
   24698         painting images.
   24699 
   24700 
   24701         * rendering/InlineFlowBox.h:
   24702         * rendering/RenderBox.cpp:
   24703         (WebCore::RenderBox::paintMask):
   24704         (WebCore::RenderBox::paintMaskImages):
   24705         Optimize to only push a transparency layer for the mask if multiple images are combining.
   24706 
   24707         (WebCore::RenderBox::maskClipRect):
   24708         A new method that attempts to compute a precise clip rect for the mask images.
   24709 
   24710         (WebCore::RenderBox::paintFillLayers):
   24711         (WebCore::RenderBox::paintFillLayer):
   24712         (WebCore::RenderBox::paintFillLayerExtended):
   24713         * rendering/RenderBox.h:
   24714         Added the composite operator argument to the paintFillLayer methods.
   24715 
   24716         * rendering/RenderFieldset.cpp:
   24717         (WebCore::RenderFieldset::paintMask):
   24718         Call the new base class paintMaskImages method for optimized mask painting.
   24719 
   24720         * rendering/RenderLayer.cpp:
   24721         (WebCore::transparencyClipBox):
   24722         Fix a coordinate space issue with transparencyClipBox when masks were used.  The border box was in the
   24723         wrong coordinate space.  Moved the code into the layer's boundingBox() method instead.
   24724 
   24725         (WebCore::RenderLayer::paintLayer):
   24726         Removed the code that always pushed a transparency layer before painting masks.
   24727 
   24728         (WebCore::RenderLayer::boundingBox):
   24729         Call maskClipRect to shrink the bounding box of the layer to fit the mask clip.
   24730 
   24731         * rendering/RenderObject.cpp:
   24732         (WebCore::RenderObject::paintNinePieceImage):
   24733         Added a composite operator argument for direct destination-in painting of nine piece images.
   24734 
   24735         * rendering/RenderObject.h:
   24736         (WebCore::RenderObject::maskClipRect):
   24737         (WebCore::RenderObject::paintFillLayerExtended):
   24738         Base class stubs for RenderBox-implemented methods.
   24739 
   24740         * rendering/RenderTable.cpp:
   24741         (WebCore::RenderTable::paintMask):
   24742         * rendering/RenderTableCell.cpp:
   24743         (WebCore::RenderTableCell::paintMask):
   24744         Modified to call the new paintMaskImages function.
   24745 
   24746         * svg/graphics/SVGImage.cpp:
   24747         (WebCore::SVGImage::draw):
   24748         SVG images now respect composite modes by pushing a transparency layer when the composite mode
   24749         is anything other than source-over.
   24750 
   24751 2008-04-30  Ariya Hidayat  <ariya.hidayat (a] trolltech.com>
   24752 
   24753         Rubber-stamped by Rob Buis.
   24754 
   24755         Fixed crash or assertion if SVG_FOREIGN_OBJECT is not enabled
   24756 
   24757         * svg/SVGUseElement.cpp:
   24758         (WebCore::SVGUseElement::associateInstancesWithShadowTreeElements):
   24759 
   24760 2008-04-30  Ariya Hidayat  <ariya.hidayat (a] trolltech.com>
   24761 
   24762         Rubber-stamped by Rob Buis.
   24763 
   24764         Fixed compile, due to API change in XMLSerializer
   24765 
   24766         * svg/SVGUseElement.cpp:
   24767         (WebCore::SVGUseElement::buildPendingResource):
   24768 
   24769 2008-04-30  Rob Buis  <buis (a] kde.org>
   24770 
   24771         Reviewed by Eric.
   24772 
   24773         https://bugs.webkit.org/show_bug.cgi?id=11939
   24774         Quirksmode: Ignores media types in stylesheet PIs
   24775 
   24776         Transfer the xml-stylesheet pseudo attribute media to the css
   24777         stylesheet created from the ProcessingInstruction.
   24778 
   24779         Tests: fast/css/xml-stylesheet-media-processing.xhtml
   24780 
   24781         * css/StyleSheet.cpp:
   24782         (WebCore::StyleSheet::setMedia):
   24783         * css/StyleSheet.h:
   24784         * dom/ProcessingInstruction.cpp:
   24785         (WebCore::ProcessingInstruction::checkStyleSheet):
   24786         (WebCore::ProcessingInstruction::setCSSStyleSheet):
   24787         * dom/ProcessingInstruction.h:
   24788 
   24789 2008-04-29  David D. Kilzer  <ddkilzer (a] apple.com>
   24790 
   24791         BUILD FIX for export of WTF::RefCounted<WebCore::FormData>::deref()
   24792 
   24793         On the buildbot, this is a fatal error:
   24794 
   24795         ld: symbols names listed in -exported_symbols_list: WebKitBuild/Release/DerivedSources/WebCore/WebCore.exp not in linked objects
   24796         __ZN3WTF10RefCountedIN7WebCore8FormDataEE5derefEv
   24797         /usr/bin/libtool: internal link edit command failed
   24798 
   24799         Newer dev tools only produce a warning:
   24800 
   24801         ld warning: cannot export hidden symbol __ZN3WTF10RefCountedIN7WebCore8FormDataEE5derefEv from WebKitBuild/WebCore.build/Release/WebCore.build/Objects-normal/i386/DocumentLoader.o
   24802 
   24803         * WebCore.base.exp: Remove hidden symbol from export list.
   24804 
   24805 2008-04-29  David Kilzer  <ddkilzer (a] apple.com>
   24806 
   24807         Another BUILD FIX for ENABLE(DASHBOARD_SUPPORT)
   24808 
   24809         * dom/make_names.pl: Added #if ENABLE(DASHBOARD_SUPPORT) to Dashboard code.
   24810 
   24811 2008-04-29  David Kilzer  <ddkilzer (a] apple.com>
   24812 
   24813         BUILD FIX for ENABLE(DASHBOARD_SUPPORT)
   24814 
   24815         * DerivedSources.make: Removed duplication of targets for
   24816         generating CSSPropertyNames.h and CSSValueKeywords.h.
   24817         * GNUmakefile.am: Ditto.  Added support for ENABLE_DASHBOARD_SUPPORT.
   24818         * WebCore.pro: Added support for ENABLE_DASHBOARD_SUPPORT.
   24819         Made both SVG and non-SVG variables of GENERATOR 6-A use new
   24820         DASHBOARDSUPPORTCSSPROPERTIES variable.
   24821 
   24822 2008-04-29  Ada Chan  <adachan (a] apple.com>
   24823 
   24824         Added missing return.        
   24825 
   24826         * platform/win/COMPtr.h:
   24827         (WTF::):
   24828 
   24829 2008-04-29  Alp Toker  <alp (a] nuanti.com>
   24830 
   24831         GTK+ build fix attempt following breakage in r32700 which
   24832         conditionalised dashboard support.
   24833 
   24834         * GNUmakefile.am:
   24835 
   24836 2008-04-29  Adam Roben  <aroben (a] apple.com>
   24837 
   24838         Restore the beloved COMPtr::operator&
   24839 
   24840         * platform/win/COMPtr.h: Removed the HashTableDeletedValueType
   24841         constructor and isHashTableDeletedValue and hashTableDeletedValue
   24842         functions.
   24843         (WTF::): Changed constructDeletedValue to play nicely with
   24844         COMPtr::operator&.
   24845 
   24846 2008-04-29  Adam Roben  <aroben (a] apple.com>
   24847 
   24848         Fix assertion on launch on Windows
   24849 
   24850         * platform/graphics/win/FontPlatformData.h: Pass
   24851         WTF::HashTableDeletedValue to the m_font constructor instead of a
   24852         bogus -1 value. This is needed because m_font is a RefPtr.
   24853 
   24854 2008-04-29  Greg Bolsinga  <bolsinga (a] apple.com>
   24855 
   24856         Reviewed by Darin.
   24857 
   24858         Wrapped Dashboard code with ENABLE(DASHBOARD_SUPPORT)
   24859 
   24860         * DerivedSources.make:
   24861         * WebCore.DashboardSupport.exp: Added.
   24862         * WebCore.base.exp:
   24863         * WebCore.xcodeproj/project.pbxproj:
   24864         * bindings/js/JSDOMWindowCustom.cpp:
   24865         (WebCore::JSDOMWindow::setLocation):
   24866         * css/CSSComputedStyleDeclaration.cpp:
   24867         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
   24868         * css/CSSParser.cpp:
   24869         (WebCore::CSSParser::parseValue):
   24870         * css/CSSPrimitiveValue.cpp:
   24871         (WebCore::CSSPrimitiveValue::cleanup):
   24872         (WebCore::CSSPrimitiveValue::cssText):
   24873         * css/CSSPropertyNames.in:
   24874         * css/CSSStyleSelector.cpp:
   24875         (WebCore::CSSStyleSelector::applyProperty):
   24876         * css/DashboardRegion.h:
   24877         * css/DashboardSupportCSSPropertyNames.in: Added.
   24878         * dom/DOMImplementation.cpp:
   24879         (WebCore::DOMImplementation::createDocument):
   24880         * dom/Document.cpp:
   24881         (WebCore::Document::Document):
   24882         (WebCore::Document::importNode):
   24883         * dom/Document.h:
   24884         * html/CanvasRenderingContext2D.cpp:
   24885         (WebCore::CanvasRenderingContext2D::fill):
   24886         (WebCore::CanvasRenderingContext2D::stroke):
   24887         (WebCore::CanvasRenderingContext2D::clip):
   24888         * html/CanvasRenderingContext2D.h:
   24889         * html/HTMLCanvasElement.cpp:
   24890         * html/HTMLCanvasElement.h:
   24891         * page/Chrome.cpp:
   24892         * page/ChromeClient.h:
   24893         * page/Frame.cpp:
   24894         (WebCore::Frame::paint):
   24895         * page/Frame.h:
   24896         * page/FrameView.cpp:
   24897         (WebCore::FrameView::layout):
   24898         * page/FrameView.h:
   24899         * page/Settings.cpp:
   24900         (WebCore::Settings::Settings):
   24901         * page/Settings.h:
   24902         * page/mac/EventHandlerMac.mm:
   24903         (WebCore::EventHandler::needsKeyboardEventDisambiguationQuirks):
   24904         * page/mac/FrameMac.mm:
   24905         * page/mac/WebDashboardRegion.h:
   24906         * page/mac/WebDashboardRegion.m:
   24907         * rendering/RenderLayer.cpp:
   24908         (WebCore::RenderLayer::scrollToOffset):
   24909         (WebCore::RenderLayer::setHasHorizontalScrollbar):
   24910         (WebCore::RenderLayer::setHasVerticalScrollbar):
   24911         (WebCore::RenderLayer::updateScrollInfoAfterLayout):
   24912         * rendering/RenderObject.cpp:
   24913         (WebCore::RenderObject::setStyle):
   24914         * rendering/RenderObject.h:
   24915         * rendering/RenderStyle.cpp:
   24916         (WebCore::StyleRareNonInheritedData::operator==):
   24917         (WebCore::RenderStyle::diff):
   24918         * rendering/RenderStyle.h:
   24919         * xml/XMLHttpRequest.cpp:
   24920         (WebCore::XMLHttpRequest::send):
   24921         (WebCore::XMLHttpRequest::setRequestHeader):
   24922 
   24923 2008-04-29  Adam Roben  <aroben (a] apple.com>
   24924 
   24925         Windows build fix
   24926 
   24927         This removes COMPtr::operator&, which didn't jive with HashTable. It
   24928         is replaced by COMPtr::adoptionPointer.
   24929 
   24930         Discussed with Darin Adler and Anders Carlsson.
   24931 
   24932         * platform/win/COMPtr.h: Replaced operator& with adoptionPointer.
   24933 
   24934 2008-04-29  David Hyatt  <hyatt (a] apple.com>
   24935 
   24936         Implement the new box-reflect property in CSS.  This property enables real-time reflections on
   24937         objects (yes you can reflect <video>!).
   24938 
   24939         Reviewed by Dan Bernstein
   24940 
   24941         Test cases added in fast/reflections/
   24942 
   24943         * GNUmakefile.am:
   24944         * WebCore.pro:
   24945         * WebCore.xcodeproj/project.pbxproj:
   24946         * WebCoreSources.bkl:
   24947         * css/CSSComputedStyleDeclaration.cpp:
   24948         (WebCore::valueForReflection):
   24949         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
   24950         * css/CSSParser.cpp:
   24951         (WebCore::CSSParser::parseValue):
   24952         (WebCore::CSSParser::parseReflect):
   24953         (WebCore::BorderImageParseContext::commitBorderImage):
   24954         (WebCore::CSSParser::parseBorderImage):
   24955         (WebCore::parseGradientColorStop):
   24956         (WebCore::CSSParser::parseTransform):
   24957         * css/CSSParser.h:
   24958         * css/CSSPropertyNames.in:
   24959         * css/CSSReflectValue.cpp: Added.
   24960         (WebCore::CSSReflectValue::cssText):
   24961         * css/CSSReflectValue.h: Added.
   24962         (WebCore::CSSReflectValue::CSSReflectValue):
   24963         (WebCore::CSSReflectValue::direction):
   24964         (WebCore::CSSReflectValue::offset):
   24965         (WebCore::CSSReflectValue::mask):
   24966         (WebCore::CSSReflectValue::setDirection):
   24967         (WebCore::CSSReflectValue::setOffset):
   24968         (WebCore::CSSReflectValue::setMask):
   24969         * css/CSSStyleSelector.cpp:
   24970         (WebCore::CSSStyleSelector::adjustRenderStyle):
   24971         (WebCore::CSSStyleSelector::applyProperty):
   24972         (WebCore::CSSStyleSelector::mapNinePieceImage):
   24973         * css/CSSStyleSelector.h:
   24974         * rendering/InlineFlowBox.cpp:
   24975         (WebCore::InlineFlowBox::placeBoxesVertically):
   24976         (WebCore::InlineFlowBox::paintMask):
   24977         * rendering/Length.h:
   24978         (WebCore::Length::calcFloatValue):
   24979         * rendering/RenderBlock.cpp:
   24980         (WebCore::RenderBlock::overflowHeight):
   24981         (WebCore::RenderBlock::overflowWidth):
   24982         (WebCore::RenderBlock::overflowLeft):
   24983         (WebCore::RenderBlock::overflowTop):
   24984         (WebCore::RenderBlock::overflowRect):
   24985         (WebCore::RenderBlock::layoutBlock):
   24986         * rendering/RenderBox.cpp:
   24987         (WebCore::RenderBox::setStyle):
   24988         (WebCore::RenderBox::paintMask):
   24989         (WebCore::RenderBox::imageChanged):
   24990         (WebCore::RenderBox::computeAbsoluteRepaintRect):
   24991         * rendering/RenderFlexibleBox.cpp:
   24992         (WebCore::RenderFlexibleBox::layoutBlock):
   24993         * rendering/RenderLayer.cpp:
   24994         (WebCore::RenderLayer::RenderLayer):
   24995         (WebCore::RenderLayer::~RenderLayer):
   24996         (WebCore::RenderLayer::updateLayerPositions):
   24997         (WebCore::RenderLayer::enclosingPositionedAncestor):
   24998         (WebCore::RenderLayer::enclosingTransformedAncestor):
   24999         (WebCore::RenderLayer::isTransparent):
   25000         (WebCore::transparencyClipBox):
   25001         (WebCore::RenderLayer::operator delete):
   25002         (WebCore::RenderLayer::destroy):
   25003         (WebCore::RenderLayer::removeOnlyThisLayer):
   25004         (WebCore::RenderLayer::insertOnlyThisLayer):
   25005         (WebCore::RenderLayer::paintLayer):
   25006         (WebCore::RenderLayer::updateZOrderLists):
   25007         (WebCore::RenderLayer::updateOverflowList):
   25008         (WebCore::RenderLayer::collectLayers):
   25009         (WebCore::RenderLayer::shouldBeOverflowOnly):
   25010         (WebCore::RenderLayer::styleChanged):
   25011         (WebCore::RenderLayer::reflectionLayer):
   25012         (WebCore::RenderLayer::createReflection):
   25013         (WebCore::RenderLayer::updateReflectionStyle):
   25014         * rendering/RenderLayer.h:
   25015         (WebCore::RenderLayer::hasReflection):
   25016         (WebCore::RenderLayer::reflection):
   25017         (WebCore::RenderLayer::paintingInsideReflection):
   25018         * rendering/RenderObject.cpp:
   25019         (WebCore::RenderObject::RenderObject):
   25020         (WebCore::RenderObject::requiresLayer):
   25021         (WebCore::RenderObject::setStyle):
   25022         (WebCore::RenderObject::updateImage):
   25023         (WebCore::RenderObject::reflectionBox):
   25024         (WebCore::RenderObject::reflectionOffset):
   25025         * rendering/RenderObject.h:
   25026         (WebCore::RenderObject::hasTransform):
   25027         (WebCore::RenderObject::setHasReflection):
   25028         (WebCore::RenderObject::hasReflection):
   25029         * rendering/RenderReplica.cpp: Added.
   25030         (WebCore::RenderReplica::RenderReplica):
   25031         (WebCore::RenderReplica::~RenderReplica):
   25032         (WebCore::RenderReplica::layout):
   25033         (WebCore::RenderReplica::calcPrefWidths):
   25034         (WebCore::RenderReplica::paint):
   25035         * rendering/RenderReplica.h: Added.
   25036         (WebCore::RenderReplica::renderName):
   25037         (WebCore::RenderReplica::requiresLayer):
   25038         * rendering/RenderStyle.cpp:
   25039         (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
   25040         (WebCore::StyleRareNonInheritedData::operator==):
   25041         (WebCore::StyleRareNonInheritedData::reflectionDataEquivalent):
   25042         (WebCore::RenderStyle::diff):
   25043         (WebCore::RenderStyle::applyTransform):
   25044         * rendering/RenderStyle.h:
   25045         (WebCore::TranslateTransformOperation::apply):
   25046         (WebCore::StyleReflection::StyleReflection):
   25047         (WebCore::StyleReflection::operator==):
   25048         (WebCore::StyleReflection::operator!=):
   25049         (WebCore::StyleReflection::direction):
   25050         (WebCore::StyleReflection::offset):
   25051         (WebCore::StyleReflection::mask):
   25052         (WebCore::StyleReflection::setDirection):
   25053         (WebCore::StyleReflection::setOffset):
   25054         (WebCore::StyleReflection::setMask):
   25055         (WebCore::RenderStyle::boxReflect):
   25056         (WebCore::RenderStyle::setBoxReflect):
   25057         (WebCore::RenderStyle::initialBoxReflect):
   25058         * rendering/RenderTable.cpp:
   25059         (WebCore::RenderTable::layout):
   25060         (WebCore::RenderTable::paintMask):
   25061         * rendering/RenderTableCell.cpp:
   25062         (WebCore::RenderTableCell::requiresLayer):
   25063         (WebCore::RenderTableCell::paintMask):
   25064 
   25065 2008-04-29  Beth Dakin  <bdakin (a] apple.com>
   25066 
   25067         Reviewed by Alice.
   25068 
   25069         Initial implementation of the following ARIA roles: button, 
   25070         checkbox, heading, link, radio, textbox.
   25071 
   25072         * html/HTMLAttributeNames.in: Add 'role' to list of attributes.
   25073 
   25074         * page/AccessibilityObject.cpp:
   25075          When an ARIA role is set, the role overrides whatever the actual 
   25076 element is when the element reports itself to the screen reader. So all of these isBlah functions report based on their roleValue now.
   25077         (WebCore::AccessibilityObject::isWebArea):
   25078         (WebCore::AccessibilityObject::isImageButton):
   25079         (WebCore::AccessibilityObject::isAnchor):
   25080         (WebCore::AccessibilityObject::isTextControl):
   25081         (WebCore::AccessibilityObject::isImage):
   25082         (WebCore::AccessibilityObject::isAttachment):
   25083         (WebCore::AccessibilityObject::isPasswordField):
   25084         (WebCore::AccessibilityObject::isCheckboxOrRadio):
   25085         (WebCore::AccessibilityObject::isHeading):
   25086         (WebCore::AccessibilityObject::isLink):
   25087 
   25088         Check for ARIA information:
   25089         (WebCore::AccessibilityObject::headingLevel):
   25090         (WebCore::AccessibilityObject::anchorElement):
   25091         (WebCore::AccessibilityObject::actionElement):
   25092         (WebCore::AccessibilityObject::hasIntValue):
   25093         (WebCore::AccessibilityObject::intValue):
   25094         (WebCore::AccessibilityObject::stringValue):
   25095         (WebCore::AccessibilityObject::title):
   25096         (WebCore::AccessibilityObject::accessibilityIsIgnored):
   25097         (WebCore::AccessibilityObject::roleValue):
   25098 
   25099         There are a few places in the code where it is important to identify the difference between ARIA and non-ARIA.
   25100         (WebCore::AccessibilityObject::isNativeImage):
   25101         (WebCore::AccessibilityObject::isNativeTextControl):
   25102         (WebCore::isARIAInput):
   25103         (WebCore::isARIAControl):
   25104 
   25105         A lot of spots in the code used to cast to RenderTextControl to get information about the text inside the element. Now that non-native text controls can run this code with the ARIA role 'textbox', it needs to be as general as possible. 
   25106         (WebCore::AccessibilityObject::text): Still calls into 
   25107         RenderTextControl's text() for native text controls. Uses Element's 
   25108         innerText() for ARIA textboxes.
   25109         (WebCore::AccessibilityObject::textLength): Call 
   25110         AccessibilityObject's text() instead of RenderTextControl's.
   25111         (WebCore::AccessibilityObject::ariaSelectedTextDOMRange):
   25112         (WebCore::AccessibilityObject::selectedText):
   25113         (WebCore::AccessibilityObject::selectedTextRange):
   25114         (WebCore::AccessibilityObject::selectionStart):
   25115         (WebCore::AccessibilityObject::selectionEnd):
   25116         (WebCore::AccessibilityObject::setSelectedTextRange):
   25117         (WebCore::AccessibilityObject::setValue):
   25118         (WebCore::AccessibilityObject::visiblePositionForIndex):
   25119         (WebCore::AccessibilityObject::indexForVisiblePosition):
   25120         (WebCore::AccessibilityObject::textMarkerRangeForRange):
   25121         (WebCore::AccessibilityObject::textMarkerForIndex):
   25122         (WebCore::AccessibilityObject::indexForTextMarker):
   25123         (WebCore::AccessibilityObject::doAXRangeForLine):
   25124         (WebCore::AccessibilityObject::doAXRangeForIndex):
   25125         (WebCore::AccessibilityObject::doAXStringForRange):
   25126         (WebCore::AccessibilityObject::doAXBoundsForRange):
   25127         
   25128         Reports ARIA role. If the role is not valid or simply not set, return UnknownRole.
   25129         (WebCore::AccessibilityObject::ariaRoleAttribute):
   25130         
   25131         Added several new functions. Most of them existed before but were static, or have been added to reduce the dependency on RenderTextControl for a lot of the text functionality.
   25132         * page/AccessibilityObject.h:
   25133 
   25134         Eliminated dependency on RenderTextControl cast. The information is generalized now and available directly through the AccessibilityObject.
   25135         * page/mac/AccessibilityObjectWrapper.mm:
   25136         (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
   25137         (-[AccessibilityObjectWrapper doAXAttributedStringForRange:]):
   25138 
   25139 2008-04-29  Timothy Hatcher  <timothy (a] apple.com>
   25140 
   25141         Make the exceptions that the InspectorController catches log the
   25142         original file and line number, if present on the exception object.
   25143 
   25144         Reviewed by Adam Roben.
   25145 
   25146         * page/InspectorController.cpp:
   25147         (WebCore::InspectorController::callFunction): Pass the context to HANDLE_EXCEPTION.
   25148         (WebCore::InspectorController::~InspectorController): Ditto.
   25149         (WebCore::InspectorController::scriptObjectReady): Ditto.
   25150         (WebCore::InspectorController::addScriptResource): Ditto.
   25151         (WebCore::InspectorController::updateScriptResourceRequest): Ditto.
   25152         (WebCore::InspectorController::updateScriptResourceResponse): Ditto.
   25153         (WebCore::InspectorController::updateScriptResource): Ditto.
   25154         (WebCore::InspectorController::addDatabaseScriptResource): Ditto.
   25155         (WebCore::InspectorController::addScriptConsoleMessage): Ditto.
   25156         (WebCore::InspectorController::handleException): Take a context. Pull the line
   25157         and sourceURL properties off the exception if it is an object.
   25158         * page/InspectorController.h: Change handleException to take a context.
   25159 
   25160 2008-04-29  Timothy Hatcher  <timothy (a] apple.com>
   25161 
   25162         Fixes a regression where the Page's debugger would not be reattached
   25163         when a new JSDOMWindow is created.
   25164 
   25165         Reviewed by Sam Weinig.
   25166 
   25167         * bindings/js/kjs_proxy.cpp:
   25168         (WebCore::KJSProxy::clear): Call attachDebugger after creating the JSDOMWindow.
   25169         * history/CachedPage.cpp:
   25170         (WebCore::CachedPage::restore): For the case where the CachedPage doesn't
   25171         contain a window, reattach the debugger to the new JSDOMWindow by calling
   25172         proxy->attachDebugger. Also restore the setPageGroupIdentifier.
   25173 
   25174 2008-04-29  Anatoli Papirovski  <apapirovski (a] mac.com>
   25175 
   25176         Reviewed by Darin Adler.
   25177 
   25178         Fix for https://bugs.webkit.org/show_bug.cgi?id=18355
   25179         Fixed RGB and RGBA parsing to ignore the declaration when the value is not
   25180         "either three integer values or three percentage values."
   25181 
   25182         * css/CSSParser.cpp:
   25183         (WebCore::CSSParser::parseColorParameters):
   25184 
   25185 2008-04-29  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   25186 
   25187         Reviewed by Simon.
   25188 
   25189         Fix crash when setHtml gets called from slots connected to QWebPage::unsupportedContent
   25190 
   25191         Ben found this crash in the demo browser.
   25192 
   25193         In void MainResourceLoader::continueAfterContentPolicy(PolicyAction contentPolicy,
   25194 
   25195         case PolicyDownload:
   25196         frameLoader()->client()->download(m_handle.get(), request(), m_handle.get()->request(), r);
   25197         receivedError(interruptionForPolicyChangeError());
   25198 
   25199         We are in a policy check, the download() call will call setHtml, which will start loading
   25200         the data into a frame. The loading will cancel all policy checks and call ResourceLoader::releaseResources
   25201         which will set m_frame to 0. Then we return and invoke interruptionForPolicyChangeError() which
   25202         will use the m_frame->loader() but it is gone. Do not call into receivedError and
   25203         interruptionForPolicyChangeError if we are gone anyway...
   25204 
   25205         * loader/MainResourceLoader.cpp:
   25206         (WebCore::MainResourceLoader::continueAfterContentPolicy):
   25207 
   25208 2008-04-29  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   25209 
   25210         Reviewed by Simon.
   25211 
   25212         Rely on auto-boxing of C++ for the QCursor c'tor
   25213 
   25214         * platform/qt/CursorQt.cpp:
   25215 
   25216 2008-04-29  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   25217 
   25218         Reviewed by Simon.
   25219 
   25220         Add the remaining cursors that defaulted to PointerCursor
   25221 
   25222         * Resources/WebKitResources.qrc:
   25223         * platform/qt/CursorQt.cpp:
   25224         (WebCore::verticalTextCursor):
   25225         (WebCore::cellCursor):
   25226         (WebCore::contextMenuCursor):
   25227         (WebCore::copyCursor):
   25228         (WebCore::progressCursor):
   25229         (WebCore::aliasCursor):
   25230 
   25231 2008-04-29  Alice Liu  <alice.liu (a] apple.com>
   25232 
   25233         Reviewed by Beth Dakin.
   25234 
   25235         Comply with HTML5 spec about parsing tabindex property according to
   25236         integer parsing rules
   25237 
   25238         Test: fast/parser/tabindex-parsing.html
   25239 
   25240         * html/HTMLElement.cpp:
   25241         (WebCore::HTMLElement::parseMappedAttribute):
   25242 
   25243 2008-04-29  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   25244 
   25245         Reviewed by Simon.
   25246 
   25247         Fixes: Fix timing problem where scrollbars in subframes were sometimes not property repainted.
   25248 
   25249         https://bugs.webkit.org/show_bug.cgi?id=18482
   25250 
   25251         We need to repaint scrollbars after a geometry change, and also make sure
   25252         the computed clipping rect for the corners between scrollbars is propagated
   25253         to the chrome client without beeing intersected by the visible content rect
   25254         of the frame.
   25255 
   25256         * platform/ScrollView.h:
   25257         * platform/qt/ScrollViewQt.cpp:
   25258         (WebCore::ScrollView::geometryChanged):
   25259         (WebCore::ScrollView::suppressScrollbars):
   25260         (WebCore::ScrollView::invalidateScrollbars):
   25261 
   25262 2008-04-29  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   25263 
   25264         Reviewed by Simon.
   25265 
   25266         Calling QWebView::setCursor will override the WebCore Cursor.
   25267         Calling QWebView::setCursor will override the WebCore Cursor using
   25268         QWidget::unsetCursor will revert to the WebCore Cursor.
   25269 
   25270         For detecting the unset we have to compare the shape of the
   25271         cursor to the default arrow. Qt::WA_SetCursor can not be used
   25272         as it is set unconditionally but conditionally removed.
   25273 
   25274         Calling QWidget::setCursor will immediately send the CursorChange
   25275         event. We listen to this event to decide if we currently use a
   25276         WebCore cursor, got a cursor from outside, or revert to the default.
   25277 
   25278         This should be race free and work reliable, the manual test for this
   25279         is WebCore/manual-tests/cursor.html
   25280 
   25281         * platform/qt/WidgetQt.cpp:
   25282         (WebCore::Widget::setCursor):
   25283 
   25284 2008-04-28  Dan Bernstein  <mitz (a] apple.com>
   25285 
   25286         Reviewed by Maciej Stachowiak.
   25287 
   25288         - fix https://bugs.webkit.org/show_bug.cgi?id=18795
   25289           REGRESSION (r32660): Text heavier with text-shadow
   25290 
   25291         * rendering/InlineTextBox.cpp:
   25292         (WebCore::paintTextWithShadows): The loop was doing one extra pass
   25293         without shadow even in cases where the last pass with a shadow was
   25294         painting the text at the right position (rather than outside the clip).
   25295         Fixed that. The only case where a separate pass without shadow is needed
   25296         is when there is text-stroke, since in that case all shadow passes
   25297         paint the text outside the clip.
   25298 
   25299 2008-04-28  Brady Eidson <beidson (a] apple.com>
   25300 
   25301         Reviewed by Sam Weinig
   25302 
   25303         Add Storage.clear(), per updates to HTML5
   25304 
   25305         Tests: storage/domstorage/localstorage/clear.html
   25306                storage/domstorage/sessionstorage/clear.html
   25307 
   25308         * storage/LocalStorageArea.cpp:
   25309         (WebCore::LocalStorageArea::areaCleared):
   25310         * storage/LocalStorageArea.h:
   25311 
   25312         * storage/SessionStorageArea.cpp:
   25313         (WebCore::SessionStorageArea::areaCleared):
   25314         * storage/SessionStorageArea.h:
   25315 
   25316         * storage/Storage.cpp:
   25317         (WebCore::Storage::clear):
   25318         * storage/Storage.h:
   25319         * storage/Storage.idl:
   25320 
   25321         * storage/StorageArea.cpp:
   25322         (WebCore::StorageArea::internalClear):
   25323         * storage/StorageArea.h:
   25324         (WebCore::StorageArea::clear):
   25325 
   25326 2008-04-28  Adele Peterson  <adele (a] apple.com>
   25327 
   25328         Reviewed by Dan Bernstein, Tim Hatcher, Anders Carlsson, and Darin Adler.
   25329 
   25330         WebCore part of fix for <rdar://problem/3709505>
   25331         Safari should have a way to upload bundles from the file upload control (as zip)
   25332 
   25333         * WebCore.base.exp: Added symbols.
   25334 
   25335         * html/HTMLFormElement.cpp: (WebCore::HTMLFormElement::formData): Ask the application if a file will need to be replaced before it's uploaded.
   25336           It will also give the replacement filename which is used to determine the correct mime-type and to construct the correct header.
   25337 
   25338         * loader/FrameLoader.cpp:
   25339         (WebCore::FrameLoader::submitForm): Asks the application to generate any files for the form data before a form submission starts.
   25340         (WebCore::FrameLoader::loadItem): ditto.
   25341         * loader/ResourceLoader.cpp:
   25342         (WebCore::ResourceLoader::didReceiveResponse): Tells the FormData from the request to remove any generated files if it needs to.
   25343         (WebCore::ResourceLoader::didCancel): ditto.
   25344         (WebCore::ResourceLoader::didFail): ditto.
   25345 
   25346         * platform/network/FormData.cpp:
   25347         (WebCore::FormData::FormData): Initializes m_hasGeneratedFiles, which keeps track of whether there are files that will need to be removed.
   25348         (WebCore::FormData::~FormData): Added.  Assert that there are no files that need to be removed, but if there are, release builds will still remove them here.
   25349         (WebCore::FormData::appendFile): Passes along a shouldGenerateFile flag to the FormDataElement.
   25350         (WebCore::FormData::generateFiles): Added. Iterates through the FormDataElements, and using the ChromeClient pointer, asks the application to
   25351          create any compressed files so the FormDataElements can store the paths.
   25352         (WebCore::FormData::removeGeneratedFilesIfNeeded): Added.  Removes generated files and their directories (if empty).
   25353         * platform/network/FormData.h:
   25354         (WebCore::FormDataElement::FormDataElement): Added a boolean to track whether the file will need to be generated,
   25355          and a string to hold the path of the generated file.
   25356 
   25357         * platform/network/mac/FormDataStreamMac.mm:
   25358         (WebCore::advanceCurrentStream): Uses the generated file path instead of the original file path when streaming the file.
   25359         (WebCore::setHTTPBody): Uses the generated file path when determining the size of the file to be uploaded.
   25360 
   25361         * platform/FileSystem.h: Added directoryName.
   25362         * platform/posix/FileSystemPOSIX.cpp: (WebCore::directoryName): Added.
   25363         * platform/gtk/FileSystemGtk.cpp: (WebCore::directoryName): Added empty implementation.
   25364         * platform/qt/FileSystemQt.cpp: (WebCore::directoryName): ditto.
   25365         * platform/win/FileSystemWin.cpp: (WebCore::directoryName): ditto.
   25366         * platform/wx/FileSystemWx.cpp: (WebCore::directoryName): ditto.
   25367 
   25368         Added new ChromeClient methods to give the application control over the file compression for uploading.
   25369         * page/Chrome.cpp:
   25370         (WebCore::ChromeClient::shouldReplaceWithGeneratedFileForUpload): Added a default implementation.
   25371         (WebCore::ChromeClient::generateReplacementFile): ditto.
   25372         * page/ChromeClient.h:
   25373 
   25374 2008-04-28  Anders Carlsson  <andersca (a] apple.com>
   25375 
   25376         Reviewed by Sam, Mark, Adele and Darin.
   25377 
   25378         Add a (currently not called) method for opening the application cache database.
   25379         
   25380         * WebCore.base.exp:
   25381         * loader/appcache/ApplicationCacheStorage.cpp:
   25382         (WebCore::ApplicationCacheStorage::setCacheDirectory):
   25383         (WebCore::ApplicationCacheStorage::openDatabase):
   25384         * loader/appcache/ApplicationCacheStorage.h:
   25385 
   25386 2008-04-28  Alice Liu  <alice.liu (a] apple.com>
   25387 
   25388         Reviewed by Darin.
   25389 
   25390         Fix <rdar://problem/4911289> Add tabindex property to all children 
   25391         of HTMLElement (7138)
   25392         http://bugs.webkit.org/show_bug.cgi?id=7138
   25393 
   25394         Test: fast/events/tabindex-focus-blur-all.html
   25395 
   25396         * WebCore.xcodeproj/project.pbxproj:
   25397         * bindings/objc/DOMPrivate.h:
   25398         -DOMHTMLLabelElementPrivate.h and DOMHTMLLegendElementPrivate.h are no
   25399          longer needed
   25400 
   25401         * bindings/objc/PublicDOMInterfaces.h:
   25402         -Moving focus, blur, tabindex to HTMLElement from its descendants.
   25403 
   25404         * dom/Node.cpp:
   25405         (WebCore::Node::Node):
   25406         (WebCore::Node::isFocusable):
   25407         (WebCore::Node::isKeyboardFocusable):
   25408         -The concept of being focusable now needs to account for tabindex
   25409         attribute.
   25410 
   25411         * dom/Node.h:
   25412         -Need to use a bit to keep track of whether tabindex was explicitly set
   25413          to 0 or was just initialized to 0.
   25414         (WebCore::Node::tabIndex):
   25415         -Make this virtual so that Anchors and GenericFormElements can determine
   25416          tabindex without accounting for focusability
   25417         (WebCore::Node::setTabIndexExplicitly):
   25418         -Renamed setTabIndex() to setTabIndexExplicitly() so as not to hide
   25419          behind and/or be confused for HTMLElement::setTabIndex
   25420 
   25421         * html/HTMLAnchorElement.cpp:
   25422         * html/HTMLAnchorElement.h:
   25423         (WebCore::HTMLAnchorElement::tabIndex):
   25424         * html/HTMLGenericFormElement.cpp:
   25425         * html/HTMLGenericFormElement.h:
   25426         (WebCore::HTMLGenericFormElement::tabIndex):
   25427         -Anchors and form elements are normally focusable, and need to avert the
   25428          check for focusability in HTMLElement::tabIndex
   25429          because tabIndex could be queried before a first layout happens.
   25430 
   25431         * html/HTMLElement.cpp:
   25432         (WebCore::HTMLElement::parseMappedAttribute):
   25433         -Function Node::setTabIndex changed to Node::setTabIndexExplicitly
   25434         (WebCore::HTMLElement::isFocusable):
   25435         -The concept of being focusable now needs to account for tabindex
   25436          attribute.
   25437         (WebCore::HTMLElement::tabIndex):
   25438         -HTML5 specifies that querying tabindex for elements that aren't
   25439          focusable shall return -1
   25440         (WebCore::HTMLElement::setTabIndex):
   25441         -New default implementation
   25442         * html/HTMLElement.h:
   25443 
   25444         * html/HTMLLegendElement.cpp:
   25445         (WebCore::HTMLLegendElement::focus):
   25446         -Now with HTML5's enhanced specification of tabindex, legend elements
   25447          themselves shall focus (if they should), and not the first form element 
   25448          they encapsulate.  This matches Firefox behavior.  HTMLLabelElements
   25449          still forward focus to the encapsulated element.  This also matches
   25450          other browsers. 
   25451 
   25452         * html/HTMLAreaElement.cpp:
   25453         (WebCore::HTMLAreaElement::isFocusable):
   25454         * html/HTMLAreaElement.h:
   25455         -HTMLAreaElement isn't subject to the same focusability requirements as
   25456          its parent, HTMLAnchorElement. Default HTMLElement implementation is
   25457          desired.  
   25458 
   25459         * html/HTMLFieldSetElement.cpp:
   25460         (WebCore::HTMLFieldSetElement::isFocusable):
   25461         * html/HTMLLegendElement.cpp:
   25462         (WebCore::HTMLLegendElement::isFocusable):
   25463         * html/HTMLOptGroupElement.cpp:
   25464         (WebCore::HTMLOptGroupElement::isFocusable):
   25465         * html/HTMLOptionElement.cpp:
   25466         (WebCore::HTMLOptionElement::isFocusable):
   25467         -These elements aren't subject to the same focusability requirements as
   25468          their parent, HTMLGenericFormElement. Default HTMLElement 
   25469          implementation is desired.  
   25470 
   25471         * html/HTMLAnchorElement.idl:
   25472         * html/HTMLAreaElement.idl:
   25473         * html/HTMLButtonElement.idl:
   25474         * html/HTMLElement.idl:
   25475         * html/HTMLInputElement.idl:
   25476         * html/HTMLLabelElement.idl:
   25477         * html/HTMLLegendElement.idl:
   25478         * html/HTMLObjectElement.idl:
   25479         * html/HTMLSelectElement.idl:
   25480         * html/HTMLTextAreaElement.idl:
   25481         -Moving tabindex attribute, focus and blur methods from descendants of
   25482          HTMLElement to HTMLElement
   25483 
   25484 2008-04-28  Dan Bernstein  <mitz (a] apple.com>
   25485 
   25486         Reviewed by Dave Hyatt.
   25487 
   25488         - support multiple box- and text-shadows
   25489 
   25490         Tests: fast/css/shadow-multiple.html
   25491                fast/repaint/shadow-multiple-horizontal.html
   25492                fast/repaint/shadow-multiple-strict-horizontal.html
   25493                fast/repaint/shadow-multiple-strict-vertical.html
   25494                fast/repaint/shadow-multiple-vertical.html
   25495 
   25496         * css/CSSComputedStyleDeclaration.cpp:
   25497         (WebCore::valueForShadow): Changed to account for reversing the order
   25498         of the shadow values in the ShadowData list.
   25499 
   25500         * css/CSSValueList.cpp:
   25501         (WebCore::CSSValueList::prepend): Added.
   25502         * css/CSSValueList.h:
   25503 
   25504         * rendering/InlineFlowBox.cpp:
   25505         (WebCore::InlineFlowBox::placeBoxesHorizontally): Changed to account for
   25506         all shadows in overflow calculation.
   25507         (WebCore::InlineFlowBox::placeBoxesVertically): Ditto.
   25508         (WebCore::InlineFlowBox::paint): Changed to account for all shadows
   25509         when testing for intersection with the damage rect.
   25510         (WebCore::InlineFlowBox::paintTextDecorations): Changed to paint all
   25511         shadows.
   25512 
   25513         * rendering/InlineTextBox.cpp:
   25514         (WebCore::paintTextWithShadows): Factored out from paint() and changed
   25515         to paint all shadows.
   25516         (WebCore::InlineTextBox::paint): Moved the text painting code out to
   25517         paintTextWithShadows(). Changed to not paint shadows for markers and
   25518         composition underlines and in "force black text" mode.
   25519         (WebCore::InlineTextBox::paintSelection):
   25520         (WebCore::InlineTextBox::paintCompositionBackground):
   25521         (WebCore::InlineTextBox::paintDecoration): Changed to paint all shadows.
   25522         * rendering/InlineTextBox.h: Changed some public methods to private
   25523         or protected.
   25524 
   25525         * rendering/RenderBlock.cpp:
   25526         (WebCore::RenderBlock::overflowHeight): Changed to account for all
   25527         shadows.
   25528         (WebCore::RenderBlock::overflowWidth): Ditto.
   25529         (WebCore::RenderBlock::overflowLeft): Ditto.
   25530         (WebCore::RenderBlock::overflowTop): Ditto.
   25531         (WebCore::RenderBlock::overflowRect): Ditto.
   25532         (WebCore::RenderBlock::layoutBlock): Ditto.
   25533 
   25534         * rendering/RenderFlexibleBox.cpp:
   25535         (WebCore::RenderFlexibleBox::layoutBlock): Ditto.
   25536 
   25537         * rendering/RenderLayer.cpp:
   25538         (WebCore::RenderLayer::calculateRects): Ditto.
   25539 
   25540         * rendering/RenderObject.cpp:
   25541         (WebCore::RenderObject::paintBoxShadow): Changed to paint all shadows.
   25542         Changed to avoid clipping out the box if it has a fully opaque
   25543         background.
   25544         (WebCore::RenderObject::repaintAfterLayoutIfNeeded): Changed to account
   25545         for all shadows.
   25546         (WebCore::RenderObject::selectionForegroundColor): Cleaned up.
   25547         (WebCore::RenderObject::adjustRectForOutlineAndShadow): Changed to
   25548         account for all shadows.
   25549 
   25550         * rendering/RenderReplaced.cpp:
   25551         (WebCore::RenderReplaced::adjustOverflowForBoxShadow): Ditto.
   25552 
   25553         * rendering/RenderStyle.cpp:
   25554         (WebCore::RenderStyle::setTextShadow): Changed to prepend when adding
   25555         so that the stacking order of shadows when painting will be "first o
   25556         top".
   25557         (WebCore::RenderStyle::setBoxShadow): Ditto.
   25558 
   25559         * rendering/RenderTable.cpp:
   25560         (WebCore::RenderTable::layout): Changed to account for all shadows.
   25561 
   25562 2008-04-28  Adam Roben  <aroben (a] apple.com>
   25563 
   25564         Fix some more Windows build errors in COMPtr
   25565 
   25566         * platform/win/COMPtr.h:
   25567         (WTF::): Define DefaultHash<COMPtr<P> > by using PtrHash<COMPtr<P> >,
   25568         which is just a copy of PtrHash<RefPtr<P> >.
   25569 
   25570 2008-04-28  Adam Roben  <aroben (a] apple.com>
   25571 
   25572         Fix some Windows build errors in COMPtr
   25573 
   25574         * platform/win/COMPtr.h: Explicitly name the WTF namespace when using
   25575         HashTableDeletedValueType.
   25576 
   25577 2008-04-28  Adam Roben  <aroben (a] apple.com>
   25578 
   25579         Fix some Windows build errors in FontPlatfomrData
   25580 
   25581         * platform/graphics/win/FontPlatformData.h: Removed the Deleted
   25582         constructor and replaced it with a HashTableDeletedValueType
   25583         constructor. Also added isHashTableDeletedValue() and
   25584         hashTableDeletedFontValue().
   25585 
   25586 2008-04-28  David Hyatt  <hyatt (a] apple.com>
   25587 
   25588         https://bugs.webkit.org/show_bug.cgi?id=18780
   25589 
   25590         Canvas can't draw itself into its own buffer.  Make sure the dirtying call comes after the image()
   25591         has been accessed.  Technically willDraw should be renamed to didDraw and all calls should be moved
   25592         to after draws have occurred (since if the draw op itself wants to reference the image it shouldn't get
   25593         a dirty copy either), but I'll take that up with olliej when he wakes up. :)
   25594 
   25595         Reviewed by Dan Bernstein
   25596 
   25597         Added fast/canvas/canvasDrawsIntoSelf.html
   25598 
   25599         * html/CanvasRenderingContext2D.cpp:
   25600         (WebCore::CanvasRenderingContext2D::drawImage):
   25601 
   25602 2008-04-28  Alexey Proskuryakov  <ap (a] webkit.org>
   25603 
   25604         Reviewed by Geoff Garen.
   25605 
   25606         <rdar://problem/5825192> Replace use of Gestalt with BSD sysctl
   25607 
   25608         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
   25609         (WebCore::MediaPlayerPrivate::isAvailable): There is no need to check QuickTime version post-Tiger,
   25610         as it will never be below 7.3 again. This change may make library loading happen earlier in
   25611         some cases, hopefully, that's not a big deal.
   25612 
   25613 2008-04-25  Alexey Proskuryakov  <ap (a] webkit.org>
   25614 
   25615         Reviewed by Darin.
   25616 
   25617         Fix run-webkit-tests --threading
   25618         and provisionally fix <https://bugs.webkit.org/show_bug.cgi?id=18661>
   25619         Proxy server issue in Sunday's Nightly
   25620 
   25621         Adjusted for JavaScriptCore changes: added a new member to ClassInfo objects, turned
   25622         ClassInfo::propHashTable into a function, made getPropertyAttributes() take an ExecState pointer.
   25623 
   25624         * bindings/js/JSAudioConstructor.cpp:
   25625         * bindings/js/JSDOMWindowBase.cpp:
   25626         * bindings/js/JSDOMWindowCustom.cpp:
   25627         (WebCore::JSDOMWindow::customGetOwnPropertySlot):
   25628         * bindings/js/JSDOMWindowWrapper.cpp:
   25629         (WebCore::JSDOMWindowWrapper::getPropertyAttributes):
   25630         * bindings/js/JSDOMWindowWrapper.h:
   25631         * bindings/js/JSEventTargetBase.h:
   25632         (WebCore::JSEventTargetPrototype::classInfo):
   25633         * bindings/js/JSHTMLInputElementBase.cpp:
   25634         * bindings/js/JSHTMLOptionElementConstructor.cpp:
   25635         * bindings/js/JSHistoryCustom.cpp:
   25636         (WebCore::JSHistory::customGetOwnPropertySlot):
   25637         * bindings/js/JSImageConstructor.cpp:
   25638         * bindings/js/JSInspectedObjectWrapper.cpp:
   25639         * bindings/js/JSInspectorCallbackWrapper.cpp:
   25640         * bindings/js/JSLocationCustom.cpp:
   25641         (WebCore::JSLocation::customGetOwnPropertySlot):
   25642         (WebCore::JSLocation::customPut):
   25643         * bindings/js/JSNamedNodesCollection.cpp:
   25644         * bindings/js/JSQuarantinedObjectWrapper.cpp:
   25645         * bindings/js/JSRGBColor.cpp:
   25646         * bindings/js/JSStorageCustom.cpp:
   25647         (WebCore::JSStorage::customPut):
   25648         * bindings/js/JSXMLHttpRequestConstructor.cpp:
   25649         * bindings/js/JSXSLTProcessor.cpp:
   25650         * bindings/scripts/CodeGeneratorJS.pm:
   25651         * bridge/objc/objc_runtime.mm:
   25652         * bridge/runtime_array.cpp:
   25653         * bridge/runtime_object.cpp:
   25654 
   25655 2008-04-28  David Hyatt  <hyatt (a] apple.com>
   25656 
   25657         https://bugs.webkit.org/show_bug.cgi?id=18779
   25658 
   25659         The arguments in drawImage were reversed when I switched away from the image buffer method.
   25660 
   25661         Reviewed by Tim Hatcher
   25662 
   25663         Added fast/canvas/drawImage.html
   25664 
   25665         * html/CanvasRenderingContext2D.cpp:
   25666         (WebCore::CanvasRenderingContext2D::drawImage):
   25667 
   25668 2008-04-28  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   25669 
   25670         Reviewed by Simon.
   25671 
   25672         Fix the crash on http://www.orad.pl. We called end too early.
   25673 
   25674         1. we need a ::write that will pause the parser due a pending
   25675         script
   25676         2. we need a second write to queue data (tricky part)
   25677         3. we need to get a finish call (document loaded)
   25678         4. we resume the script and parse, schedule loading of a new script
   25679         and have called end
   25680         5. we resume the new script and we get a crash
   25681 
   25682         This bug is hard to trigger, e.g. if the web server is only allowing
   25683         one connection per client/IP. This is why we need to sleep in the scripts. We
   25684         want to make sure that the page is first fully received before serving the
   25685         scripts.
   25686 
   25687         Test: http/tests/misc/xmltokenizer-do-not-crash.pl
   25688 
   25689         * dom/XMLTokenizer.cpp:
   25690 
   25691 2008-04-28  Ariya Hidayat  <ahidayat (a] trolltech.com>
   25692 
   25693         Reviewed by Simon.
   25694 
   25695         Fix rounded corner on combo box with CSS border
   25696 
   25697         * platform/qt/RenderThemeQt.cpp:
   25698         (WebCore::RenderThemeQt::adjustMenuListButtonStyle):
   25699 
   25700 2008-04-28  Ariya Hidayat  <ahidayat (a] trolltech.com>
   25701 
   25702         Reviewed by Simon.
   25703 
   25704         Fix CSS border does not show up for combo boxes
   25705 
   25706         Do not clear the border when painting the combo box for 'select' form element
   25707 
   25708         * platform/qt/RenderThemeQt.cpp:
   25709 
   25710 2008-04-28  Olivier Goffart  <ogoffart (a] trolltech.com>
   25711 
   25712         Reviewed by Simon.
   25713 
   25714         Avoid comparing to 0 in qFuzzyCompare for increased
   25715         numeric stability.
   25716 
   25717         * platform/graphics/qt/PathQt.cpp:
   25718         (WebCore::Path::addArc):
   25719 
   25720 2008-04-28  Benjamin Meyer  <bmeyer (a] trolltech.com>
   25721 
   25722         Reviewed by Simon.
   25723 
   25724         Fixes: Pages returning 404 with content are not displayed.
   25725 
   25726         A web page that returns 404 can still have content.
   25727 
   25728         * platform/network/qt/QNetworkReplyHandler.cpp:
   25729         (WebCore::QNetworkReplyHandler::finish):
   25730 
   25731 2008-04-28  Paul Olav Tvete  <paul (a] trolltech.com>
   25732 
   25733         Reviewed by Simon.
   25734 
   25735         Fix compiler warning; Avoid the implicity QString(const char *)
   25736         constructor
   25737 
   25738         * platform/qt/RenderThemeQt.cpp:
   25739         (WebCore::RenderThemeQt::fallbackStyle):
   25740 
   25741 2008-04-28  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   25742 
   25743         Reviewed by Simon.
   25744 
   25745         Prevent middle-click from triggering open URL from clipboard when the event has already been accepted.
   25746 
   25747         * platform/qt/PlatformScrollBarQt.cpp:
   25748         (WebCore::PlatformScrollbar::handleMousePressEvent):
   25749 
   25750 2008-04-28  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   25751 
   25752         Reviewed by Simon.
   25753 
   25754         Fix scrollbar behavior in QtWebKit to match QScrollBar.
   25755 
   25756         Right click context menu is now supported, along with
   25757         middle click to center slider thumb over mouse cursor.
   25758 
   25759         * platform/qt/PlatformScrollBar.h:
   25760         * platform/qt/PlatformScrollBarQt.cpp:
   25761         (tr):
   25762         (WebCore::PlatformScrollbar::pixelPosToRangeValue):
   25763         (WebCore::PlatformScrollbar::handleMousePressEvent):
   25764         (WebCore::PlatformScrollbar::handleMouseReleaseEvent):
   25765         (WebCore::PlatformScrollbar::handleContextMenuEvent):
   25766 
   25767 2008-04-28  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   25768 
   25769         Reviewed by Simon.
   25770 
   25771         Implemented channel-based logging for QtWebKit.
   25772 
   25773         Comma-separated log channels are read from the QT_WEBKIT_LOG environment variable.
   25774         Warnings for notImplemented() is still output by default, but can be disabled
   25775         by setting DISABLE_NI_WARNINGS=1.
   25776 
   25777         * WebCore.pro:
   25778         * platform/NotImplemented.h:
   25779         * platform/qt/LoggingQt.cpp: Added.
   25780         (WebCore::getChannelFromName):
   25781         (WebCore::InitializeLoggingChannelsIfNecessary):
   25782 
   25783 2008-04-28  Simon Hausmann  <shausman (a] trolltech.com>
   25784 
   25785         Reviewed by Holger.
   25786 
   25787         Fixes: Popups/Context menu in WebKit appearing at the wrong location when embedded in the graphics view or using multiple screens
   25788 
   25789         Give the popups the right parent widget and the right coordinates relative within the parent.
   25790 
   25791         * platform/qt/PopupMenuQt.cpp:
   25792         (WebCore::PopupMenu::show):
   25793 
   25794 2008-04-28  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   25795 
   25796         Reviewed by Simon.
   25797 
   25798         Fixes: Tabbing to a checkbox/button doesn't work on Win/X11
   25799 
   25800         Respect platform settings for tabbing to all controls.
   25801 
   25802         * page/qt/EventHandlerQt.cpp:
   25803 
   25804 2008-04-28  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   25805 
   25806         Reviewed by Simon.
   25807 
   25808         First part of the fix for tabbing to a checkbox/button doesn't work on Win/X11
   25809 
   25810         Draw controls instead of pimitive elements, to get focus rects for free.
   25811 
   25812         * platform/qt/RenderThemeQt.cpp:
   25813         (WebCore::RenderThemeQt::paintButton):
   25814 
   25815 2008-04-28  Lincoln Ramsay  <lincoln.ramsay (a] trolltech.com>
   25816 
   25817         Reviewed by Simon.
   25818 
   25819         Compile when QT_NO_CLIPBOARD is defined.
   25820 
   25821         * platform/qt/ClipboardQt.cpp:
   25822         (WebCore::ClipboardQt::ClipboardQt):
   25823         (WebCore::ClipboardQt::clearData):
   25824         (WebCore::ClipboardQt::clearAllData):
   25825         (WebCore::ClipboardQt::setData):
   25826         (WebCore::ClipboardQt::declareAndWriteDragImage):
   25827         (WebCore::ClipboardQt::writeURL):
   25828         (WebCore::ClipboardQt::writeRange):
   25829         * platform/qt/PasteboardQt.cpp:
   25830         (WebCore::Pasteboard::writeSelection):
   25831         (WebCore::Pasteboard::plainText):
   25832         (WebCore::Pasteboard::documentFragment):
   25833         (WebCore::Pasteboard::writeURL):
   25834         (WebCore::Pasteboard::writeImage):
   25835 
   25836 2008-04-28  Ariya Hidayat  <ariya.hidayat (a] trolltech.com>
   25837 
   25838         Reviewed by Simon.
   25839 
   25840         Draw the arrow button on the styled combo box using the fallback ("Windows") style
   25841 
   25842         * platform/qt/RenderThemeQt.cpp:
   25843         (WebCore::RenderThemeQt::RenderThemeQt):
   25844         (WebCore::RenderThemeQt::~RenderThemeQt):
   25845         (WebCore::RenderThemeQt::fallbackStyle):
   25846         (WebCore::RenderThemeQt::paintMenuListButton):
   25847         (WebCore::RenderThemeQt::adjustMenuListButtonStyle):
   25848         * platform/qt/RenderThemeQt.h:
   25849 
   25850 2008-04-28  Simon Hausmann  <hausmann (a] webkit.org>
   25851 
   25852         Reviewed by Holger.
   25853 
   25854         Fix positioning of native widgets (plugins).
   25855 
   25856         Correctly convert the coordinates of the Widget in Widget::setFrameGeometry()
   25857         to be relative to the containing toplevel QWidget using convertToContainingWindow().
   25858 
   25859         Note: convertToContainingWindow() takes child coordinates.
   25860 
   25861         * platform/qt/WidgetQt.cpp:
   25862         (WebCore::Widget::frameGeometry):
   25863         (WebCore::Widget::setFrameGeometry):
   25864 
   25865 2008-04-28  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   25866 
   25867         Reviewed by Simon.
   25868 
   25869         plugins: fix scrolling issues
   25870 
   25871         When scrolling you can see artefacts that remain on the screen, they
   25872         seem to originate from the backingstore handling. I'm not entirely sure
   25873         where they come from, my workarounds involved a
   25874         data->m_widget->parentWidget()->update() call in Widget::geometryChanged or
   25875         handling widgets with a native QWidget embedded like web pages with a
   25876         static background. This needs more investigations, I think the ScrollView
   25877         change is cleaner than the brute force in Widget::geometryChanged
   25878 
   25879         Focus handling seems to be broken as well and needs further work, we don't
   25880         clip plugin QWidgets and they can draw out of their bounds, e.g. on the ScrollBar,
   25881         the z-order is likely not honored as well.
   25882 
   25883         * platform/ScrollView.h:
   25884         * platform/qt/ScrollViewQt.cpp:
   25885         (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
   25886         (WebCore::ScrollView::ScrollViewPrivate::scrollBackingStore):
   25887         (WebCore::ScrollView::addChild):
   25888         (WebCore::ScrollView::removeChild):
   25889         (WebCore::ScrollView::incrementNativeWidgetCount):
   25890         (WebCore::ScrollView::decrementNativeWidgetCount):
   25891         (WebCore::ScrollView::hasNativeWidgets):
   25892 
   25893 2008-04-28  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   25894 
   25895         Reviewed by Simon.
   25896 
   25897         Add manual test to test placement of QWidgets in iframe's
   25898 
   25899         * manual-tests/qt/main.html: Added.
   25900         * manual-tests/qt/qtplugin.html: Added.
   25901 
   25902 2008-04-28  Simon Hausmann  <hausmann (a] webkit.org>
   25903 
   25904         Fix the build with ENABLE_DATABASE=0 (Qt/Windows) by including
   25905         SecurityOrigin.h. It's used in the file and also implicitly included
   25906         through the database headers.
   25907 
   25908         * page/DOMWindow.cpp:
   25909 
   25910 2008-04-28  Simon Hausmann  <hausmann (a] webkit.org>
   25911 
   25912         Prospective Wx build fix.
   25913 
   25914         * platform/graphics/wx/FontPlatformData.h:
   25915 
   25916 2008-04-28  Simon Hausmann  <hausmann (a] webkit.org>
   25917 
   25918         Reviewed by Alp.
   25919 
   25920         Gtk build fix, similar to the changes done in r32609.
   25921 
   25922         * platform/graphics/gtk/FontPlatformData.h:
   25923         (WebCore::FontPlatformData::FontPlatformData):
   25924         (WebCore::FontPlatformData::isHashTableDeletedValue):
   25925         (WebCore::FontPlatformData::hashTableDeletedFontValue):
   25926 
   25927 2008-04-28  Simon Hausmann  <hausmann (a] webkit.org>
   25928 
   25929         Prospective build fix. After r32609 it seems the workaround here
   25930         is not needed anymore. With gcc 4.2/4.3 before 32609 the workaround
   25931         is needed for compilation, after 32609 compilation only succeeds
   25932         without the workaround.
   25933 
   25934         * plugins/PluginPackage.h: Removed workaround of extra StorageTraits
   25935         specification for the custom hash function of PluginPackage used in
   25936         PluginSet.
   25937 
   25938 2008-04-28  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   25939 
   25940         Reviewed by Simon.
   25941 
   25942         https://bugs.webkit.org/show_bug.cgi?id=18713
   25943 
   25944         Fix scrollbar painting issues in QtWebKit.
   25945 
   25946         Hovering and click-draging outside of the scrollbar would
   25947         produce unexpected and inconcistent results. We also didn't
   25948         pass on leave-events to the underlying WebKit code, which
   25949         was nessecary to implement the paint fix.
   25950 
   25951         * platform/qt/PlatformScrollBarQt.cpp:
   25952         (WebCore::PlatformScrollbar::handleMouseMoveEvent):
   25953         (WebCore::PlatformScrollbar::handleMouseOutEvent):
   25954         (WebCore::PlatformScrollbar::handleMouseReleaseEvent):
   25955 
   25956 2008-04-27  Oliver Hunt  <oliver (a] apple.com>
   25957 
   25958         Reviewed by Maciej.
   25959 
   25960         Bug 17173: HTML5 Canvas API requires us to ignore certain operations
   25961         <https://bugs.webkit.org/show_bug.cgi?id=17173>
   25962 
   25963         This fixes the semantics of a number of Canvas functions to match
   25964         the new HTML5 non-throwing semantics.
   25965 
   25966         Test: fast/canvas/canvas-path-with-inf-nan-dimensions.html
   25967 
   25968         * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
   25969         (WebCore::JSCanvasRenderingContext2D::strokeRect):
   25970         * html/CanvasRenderingContext2D.cpp:
   25971         (WebCore::CanvasRenderingContext2D::moveTo):
   25972         (WebCore::CanvasRenderingContext2D::lineTo):
   25973         (WebCore::CanvasRenderingContext2D::quadraticCurveTo):
   25974         (WebCore::CanvasRenderingContext2D::bezierCurveTo):
   25975         (WebCore::CanvasRenderingContext2D::arcTo):
   25976         (WebCore::CanvasRenderingContext2D::arc):
   25977         (WebCore::validateRectForCanvas):
   25978         (WebCore::CanvasRenderingContext2D::rect):
   25979         (WebCore::CanvasRenderingContext2D::clearRect):
   25980         (WebCore::CanvasRenderingContext2D::fillRect):
   25981         (WebCore::CanvasRenderingContext2D::strokeRect):
   25982         * html/CanvasRenderingContext2D.h:
   25983         * html/CanvasRenderingContext2D.idl:
   25984 
   25985 2008-04-27  Rob Buis  <buis (a] kde.org>
   25986 
   25987         Reviewed by Adele.
   25988 
   25989         https://bugs.webkit.org/show_bug.cgi?id=18652
   25990         onchange events don't seem to fire for input[type=range] controls.
   25991 
   25992         Fire changeEvent when dragging the slider.
   25993 
   25994         Test: fast/forms/slider-onchange-event.html
   25995 
   25996         * rendering/RenderSlider.cpp:
   25997         (WebCore::RenderSlider::valueChanged):
   25998 
   25999 2008-04-25  Darin Adler  <darin (a] apple.com>
   26000 
   26001         Reviewed by Maciej.
   26002 
   26003         - update for compatibility with HashTable that no longer has optimization to share
   26004           implementation between hash tables with integers, pointers, RefPtr, and String
   26005           objects as keys
   26006 
   26007         * bindings/js/JSSVGPODTypeWrapper.h:
   26008         (WebCore::PODTypeReadWriteHashInfo::PODTypeReadWriteHashInfo): Added constructor
   26009         for HashTableDeletedValue.
   26010         (WebCore::PODTypeReadWriteHashInfo::isHashTableDeletedValue): Added.
   26011         (WebCore::PODTypeReadWriteHashInfoTraits::constructDeletedValue): Added.
   26012         (WebCore::PODTypeReadWriteHashInfoTraits::isDeletedValue): Added.
   26013 
   26014         * dom/Document.cpp: Made changedDocuments internal to the file rather than a
   26015         static data member of Document.
   26016         (WebCore::FormElementKey::ref): Removed unneeded check for deleted value -- this
   26017         will never be called on a deleted element.
   26018         (WebCore::FormElementKey::deref): Ditto.
   26019 
   26020         * dom/Document.h: Added HashTableDeletedValue constructor and isHashTableDeletedValue
   26021         to FormElementKey. Changed FormElementKeyHashTraits to use construct/isDeletedValue.
   26022         Got rid of the changedDocuments data member. Changed iconURL to be an inline that
   26023         returns a const String&.
   26024 
   26025         * dom/StyledElement.cpp: Changed MappedAttributeKeyTraits to use
   26026         construct/isDeletedValue.
   26027 
   26028         * page/mac/AXObjectCacheMac.mm:
   26029         (WebCore::AXObjectCache::getAXID): Call isDeletedValue instead of deletedValue.
   26030 
   26031         * platform/SecurityOriginHash.h: Added overload so that SecurityOriginHash can work
   26032         with raw pointers as well as RefPt (helpful with the new RefPtrHashMap). Eliminated
   26033         SecurityOriginTraits, since we can now use the default traits. Changed the value of
   26034         safeToCompareToEmptyOrDeleted to false, since it's not safe to compare a deleted
   26035         value using this hash function. I don't think it was safe before either; I'm not sure
   26036         why it didn't cause a problem before.
   26037 
   26038         * platform/cf/SchedulePair.h: Removed SchedulePairTraits -- custom traits are no
   26039         longer needed.
   26040 
   26041         * platform/graphics/FontCache.cpp:
   26042         (WebCore::FontPlatformDataCacheKey::FontPlatformDataCacheKey): Added constructor
   26043         for HashTableDeletedValue.
   26044         (WebCore::FontPlatformDataCacheKey::isHashTableDeletedValue): Added.
   26045         (WebCore::FontPlatformDataCacheKey::hashTableDeletedSize): Added.
   26046         (WebCore::FontPlatformDataCacheKeyTraits::constructDeletedValue): Added.
   26047         (WebCore::FontPlatformDataCacheKeyTraits::isDeletedValue): Added.
   26048         (WebCore::FontDataCacheKeyTraits::constructDeletedValue): Added.
   26049         (WebCore::FontDataCacheKeyTraits::isDeletedValue): Added.
   26050 
   26051         * platform/graphics/IntSizeHash.h: Changed HashTraits<IntSize> to use
   26052         construct/isDeletedValue.
   26053 
   26054         * platform/graphics/mac/FontPlatformData.h:
   26055         (WebCore::FontPlatformData::FontPlatformData): Added constructor for
   26056         HashTableDeletedValue.
   26057         (WebCore::FontPlatformData::isHashTableDeletedValue): Added.
   26058         (WebCore::FontPlatformData::hashTableDeletedFontValue): Added.
   26059 
   26060         * platform/text/PlatformString.h:
   26061         (WebCore::String::swap): Added. Avoids any refcount churn when swapping two strings.
   26062         (WebCore::String::String): Added constructor for HashTableDeletedValue.
   26063         (WebCore::String::isHashTableDeletedValue): Added.
   26064         (WebCore::swap): Added. Avoids any refcount churn when swapping two strings.
   26065 
   26066         * platform/text/StringHash.h: Changed specialization of HashTraits for
   26067         WebCore::String to use the deleted value now defined in that class and removed
   26068         the code to do ref/deref. Removed HashKeyStorageTraits specializations.
   26069         
   26070         * platform/win/COMPtr.h: Changed specialization of HashTraits for
   26071         COMPtr to use the deleted value now defined in that class and removed
   26072         the code to do ref/deref. Removed HashKeyStorageTraits specializations.
   26073         (COMPtr::COMPtr): Added constructor for HashTableDeletedValue.
   26074         (COMPtr::isHashTableDeletedValue): Added.
   26075         (COMPtr::query): Removed inline keyword not needed since functions defined in the
   26076         class definition are automatically marked inline.
   26077         (COMPtr::hashTableDeletedValue): Added.
   26078 
   26079         * storage/DatabaseTracker.h: Removed now-unneeded SecurityOriginTraits.
   26080         * storage/LocalStorage.h: Ditto.
   26081         * storage/OriginQuotaManager.h: Ditto.
   26082         * storage/SessionStorage.h: Ditto.
   26083 
   26084         * svg/SVGAnimatedTemplate.h:
   26085         (WebCore::SVGAnimatedTypeWrapperKey::SVGAnimatedTypeWrapperKey): Added constructor
   26086         for HashTableDeletedValue.
   26087         (WebCore::SVGAnimatedTypeWrapperKey::isHashTableDeletedValue): Added.
   26088         (WebCore::SVGAnimatedTypeWrapperKeyHashTraits::constructDeletedValue): Added.
   26089         (WebCore::SVGAnimatedTypeWrapperKeyHashTraits::isDeletedValue): Added.
   26090 
   26091 2008-04-27  Mark Rowe  <mrowe (a] apple.com>
   26092 
   26093         Reviewed by Tim Hatcher.
   26094 
   26095         Initialize the extra member of the xmlEntity struct when using libxml2 >= 2.6.27.
   26096 
   26097         * dom/XMLTokenizer.cpp:
   26098 
   26099 2008-04-27  Dan Bernstein  <mitz (a] apple.com>
   26100 
   26101         Reviewed by Darin Adler.
   26102 
   26103         - fix https://bugs.webkit.org/show_bug.cgi?id=3729
   26104           <rdar://problem/4036353> REGRESSION: arrow keys move insertion bar backwards in RTL text
   26105 
   26106         Test: editing/selection/move-left-right.html
   26107 
   26108         * editing/SelectionController.cpp:
   26109         (WebCore::SelectionController::modifyMovingRight): Added. Currently
   26110         implemented for character granularity, all other being treated as
   26111         "forward".
   26112         (WebCore::SelectionController::modifyMovingForward): Renamed
   26113         modifyMovingRightForward() to this.
   26114         (WebCore::SelectionController::modifyMovingLeft): Added. Currently
   26115         implemented for character granularity, all other being treated as
   26116         "backward".
   26117         (WebCore::SelectionController::modifyMovingBackward): Renamed
   26118         modifyMovingLeftBackward() to this.
   26119         (WebCore::SelectionController::modify): Changed to call either the
   26120         visual (left/right) or logical (backward/forward) methods depending on
   26121         the 'dir' argument for moves.
   26122         * editing/SelectionController.h:
   26123         * editing/VisiblePosition.cpp:
   26124         (WebCore::VisiblePosition::leftVisuallyDistinctCandidate): Added.
   26125         (WebCore::VisiblePosition::left): Added.
   26126         (WebCore::VisiblePosition::rightVisuallyDistinctCandidate): Added.
   26127         (WebCore::VisiblePosition::right): Added.
   26128         * editing/VisiblePosition.h:
   26129 
   26130 2008-04-27  Sam Weinig  <sam (a] webkit.org>
   26131 
   26132         Reviewed by Maciej Stachowiak.
   26133 
   26134         Fix for <rdar://problem/5893385> Need to provide access to the CanvasRenderingContext2D prototype
   26135         Add a JS constructor for CanvasRenderingContext2D.
   26136 
   26137         * html/CanvasRenderingContext2D.idl:
   26138         * page/DOMWindow.idl:
   26139 
   26140 2008-04-26  Adam Barth  <hk9565 (a] gmail.com>
   26141 
   26142         Reviewed by Adam Roben and Sam Weinig.
   26143 
   26144         Fixes bug http://bugs.webkit.org/show_bug.cgi?id=17331
   26145         Fixes bug http://bugs.webkit.org/show_bug.cgi?id=16848
   26146         
   26147         Updates postMessage implementation to match HTML 5 specification:
   26148         1) Adds origin parameter to postMessage.
   26149         2) Removes domain and uri attributes of MessageEvent in favor of
   26150            origin attribute.
   26151 
   26152         In order to do this correctly, we need to distinguish between hosts and domains
   26153         in the SecurityOrigin class. There are now three ways to compare security origins:
   26154         1) isSameSchemeHostPort compares scheme, host, and port, and is used for postMessage
   26155         2) equal compares all aspects of the security origin, and is used for hash keys
   26156         3) canAccess understands the semantics of schemes such as file:// and data:// URLs,
   26157            and should be used for scripting access checks.
   26158 
   26159         Changed SecurityOrigin::toString() to generate identifiers that are suitable for 
   26160         being used as a MessageEvent's origin property. In the future, they could be used 
   26161         as database string identifiers as well. Re-used KURL parser to parse serialized 
   26162         SecurityOrigins.
   26163 
   26164         Collin Jackson <collinj-webkit (a] collinjackson.com> also contributed to this patch.
   26165         
   26166         Tests: http/tests/security/postMessage/invalid-origin-throws-exception.html
   26167                http/tests/security/postMessage/javascript-page-still-sends-origin.html
   26168                http/tests/security/postMessage/origin-unaffected-by-base-tag.html
   26169                http/tests/security/postMessage/origin-unaffected-by-document-domain.html
   26170                http/tests/security/postMessage/target-origin.html
   26171 
   26172         * WebCore.base.exp:
   26173         * bindings/js/JSDOMWindowCustom.cpp:
   26174         (WebCore::JSDOMWindow::postMessage):
   26175         * dom/Document.cpp:
   26176         (WebCore::Document::domain):
   26177         * dom/MessageEvent.cpp:
   26178         (WebCore::MessageEvent::MessageEvent):
   26179         (WebCore::MessageEvent::initMessageEvent):
   26180         * dom/MessageEvent.h:
   26181         (WebCore::MessageEvent::origin):
   26182         * dom/MessageEvent.idl:
   26183         * html/CanvasRenderingContext2D.cpp:
   26184         (WebCore::CanvasRenderingContext2D::checkOrigin):
   26185         (WebCore::CanvasRenderingContext2D::createPattern):
   26186         * page/DOMWindow.cpp:
   26187         (WebCore::DOMWindow::postMessage):
   26188         * page/DOMWindow.h:
   26189         * page/DOMWindow.idl:
   26190         * platform/SecurityOrigin.cpp:
   26191         (WebCore::SecurityOrigin::SecurityOrigin):
   26192         (WebCore::SecurityOrigin::create):
   26193         (WebCore::SecurityOrigin::createForFrame):
   26194         (WebCore::SecurityOrigin::copy):
   26195         (WebCore::SecurityOrigin::setDomainFromDOM):
   26196         (WebCore::SecurityOrigin::canAccess):
   26197         (WebCore::SecurityOrigin::isSecureTransitionTo):
   26198         (WebCore::SecurityOrigin::toString):
   26199         (WebCore::SecurityOrigin::createFromString):
   26200         (WebCore::SecurityOrigin::createFromDatabaseIdentifier):
   26201         (WebCore::SecurityOrigin::databaseIdentifier):
   26202         (WebCore::SecurityOrigin::equal):
   26203         (WebCore::SecurityOrigin::isSameSchemeHostPort):
   26204         * platform/SecurityOrigin.h:
   26205         (WebCore::SecurityOrigin::host):
   26206         (WebCore::SecurityOrigin::domain):
   26207         * platform/SecurityOriginHash.h:
   26208         (WebCore::SecurityOriginTraits::deletedValue):
   26209         * storage/DatabaseTracker.cpp:
   26210         (WebCore::DatabaseTracker::hasEntryForDatabase):
   26211         (WebCore::DatabaseTracker::originPath):
   26212         (WebCore::DatabaseTracker::fullPathForDatabase):
   26213         (WebCore::DatabaseTracker::populateOrigins):
   26214         (WebCore::DatabaseTracker::databaseNamesForOrigin):
   26215         (WebCore::DatabaseTracker::detailsForNameAndOrigin):
   26216         (WebCore::DatabaseTracker::setDatabaseDetails):
   26217         (WebCore::DatabaseTracker::setQuota):
   26218         (WebCore::DatabaseTracker::addDatabase):
   26219         (WebCore::DatabaseTracker::deleteOrigin):
   26220         (WebCore::DatabaseTracker::deleteDatabase):
   26221 
   26222 2008-04-26  Kevin Ollivier  <kevino (a] theolliviers.com>
   26223 
   26224         wx build fix. Add the AX*ActionVerb functions to the wx build.
   26225         
   26226         * platform/wx/LocalizedStringsWx.cpp:
   26227         (WebCore::AXButtonActionVerb):
   26228         (WebCore::AXRadioButtonActionVerb):
   26229         (WebCore::AXTextFieldActionVerb):
   26230         (WebCore::AXCheckedCheckBoxActionVerb):
   26231         (WebCore::AXUncheckedCheckBoxActionVerb):
   26232         (WebCore::AXLinkActionVerb):
   26233 
   26234 2008-04-26  Robin Dunn  <robin (a] alldunn.com>
   26235 
   26236         Reviewed by Kevin Ollivier.
   26237 
   26238         wx build fix. Add needed wx includes for compilation.
   26239 
   26240         https://bugs.webkit.org/show_bug.cgi?id=18758
   26241 
   26242         * platform/wx/FileSystemWx.cpp:
   26243 
   26244 2008-04-26  Anatoli Papirovski  <apapirovski (a] mac.com>
   26245 
   26246         Reviewed by Dave Hyatt.
   26247 
   26248         Fix for https://bugs.webkit.org/show_bug.cgi?id=18583
   26249         WebKit should ignore declarations with a negative value for
   26250         line-height and font-size, including in the shorthand font form.
   26251 
   26252         Tests: fast/css/font-size-negative.html
   26253                fast/css/line-height-negative.html
   26254 
   26255         * css/CSSParser.cpp:
   26256         (WebCore::CSSParser::parseValue):
   26257         (WebCore::CSSParser::parseFont):
   26258 
   26259 2008-04-25  Anders Carlsson  <andersca (a] apple.com>
   26260 
   26261         Reviewed by Sam.
   26262 
   26263         Add empty ApplicationCacheStorage class.
   26264         
   26265         * WebCore.vcproj/WebCore.vcproj:
   26266         * WebCore.xcodeproj/project.pbxproj:
   26267         * loader/appcache/ApplicationCacheStorage.cpp: Added.
   26268         (WebCore::cacheStorage):
   26269         * loader/appcache/ApplicationCacheStorage.h: Added.
   26270 
   26271 2008-04-24  Sam Weinig  <sam (a] webkit.org>
   26272 
   26273         Reviewed by Geoffrey Garen.
   26274 
   26275         Replace the JSDOMWindow with a new one instead of clearing it.
   26276 
   26277         * bindings/js/JSDOMWindowBase.cpp:
   26278         (WebCore::JSDOMWindowBase::clear):
   26279         Don't reset the window.
   26280 
   26281         * bindings/js/kjs_proxy.cpp:
   26282         (WebCore::KJSProxy::clear):
   26283         Replace the current JSDOMWindow stored in the wrapper window
   26284         with a new one.
   26285 
   26286         * history/CachedPage.cpp:
   26287         (WebCore::CachedPage::CachedPage):
   26288         (WebCore::CachedPage::restore):
   26289         (WebCore::CachedPage::clear):
   26290         * history/CachedPage.h:
   26291         Instead of storing the builtins, properties and localstorage in
   26292         special holding structs, store the entire JSDOMWindow.
   26293 
   26294         For the case of a page that has no JSDOMWindow before it's first
   26295         navigation, has one created while it is in the cache and is then
   26296         navigated back, create a new JSDOMWindow to keep the assumption
   26297         in JSDOMWindowWrapper that it always has the correct window.
   26298 
   26299         * loader/FrameLoader.cpp:
   26300         (WebCore::FrameLoader::clear):
   26301         We must clear the DOMWindow first, so that we create a new JSDOMWindow,
   26302         it gets a new one.
   26303 
   26304         * page/Frame.cpp:
   26305         (WebCore::Frame::clearDOMWindow):
   26306         Null out the domWindow so that on the next access, a new one is
   26307         created.
   26308 
   26309 2008-04-25  Sam Weinig  <sam (a] webkit.org>
   26310 
   26311         Reviewed by Mark Rowe.
   26312 
   26313         The EventListeners need to operate and store JSDOMWindows, not JSDOMWrapperWindows.
   26314 
   26315         * bindings/js/JSDOMWindowBase.cpp:
   26316         (WebCore::JSDOMWindowBase::~JSDOMWindowBase):
   26317         (WebCore::JSDOMWindowBase::findOrCreateJSEventListener):
   26318         (WebCore::JSDOMWindowBase::findOrCreateJSUnprotectedEventListener):
   26319         * bindings/js/JSSVGLazyEventListener.cpp:
   26320         (WebCore::JSSVGLazyEventListener::JSSVGLazyEventListener):
   26321         * bindings/js/JSSVGLazyEventListener.h:
   26322         * bindings/js/kjs_events.cpp:
   26323         (WebCore::JSAbstractEventListener::handleEvent):
   26324         (WebCore::JSUnprotectedEventListener::JSUnprotectedEventListener):
   26325         (WebCore::JSUnprotectedEventListener::~JSUnprotectedEventListener):
   26326         (WebCore::JSUnprotectedEventListener::window):
   26327         (WebCore::JSUnprotectedEventListener::clearWindow):
   26328         (WebCore::JSEventListener::JSEventListener):
   26329         (WebCore::JSEventListener::~JSEventListener):
   26330         (WebCore::JSEventListener::window):
   26331         (WebCore::JSEventListener::clearWindow):
   26332         (WebCore::JSLazyEventListener::JSLazyEventListener):
   26333         (WebCore::JSLazyEventListener::parseCode):
   26334         * bindings/js/kjs_events.h:
   26335         * bindings/js/kjs_proxy.cpp:
   26336         (WebCore::KJSProxy::createHTMLEventHandler):
   26337         (WebCore::KJSProxy::createSVGEventHandler):
   26338 
   26339 2008-04-25  Mark Rowe  <mrowe (a] apple.com>
   26340 
   26341         Rubber-stamped by Sam Weinig.
   26342 
   26343         Add some content to an empty ICU header file to prevent verification errors.
   26344 
   26345         * icu/unicode/utf_old.h:
   26346 
   26347 2008-04-25  Anders Carlsson  <andersca (a] apple.com>
   26348 
   26349         Fix tyop.
   26350         
   26351         * loader/DocumentLoader.cpp:
   26352         (WebCore::DocumentLoader::scheduleApplicationCacheLoad):
   26353 
   26354 2008-04-25  Anders Carlsson  <andersca (a] apple.com>
   26355 
   26356         Reviewed by Sam.
   26357 
   26358         Add and honor offlineWebApplicationCacheEnabled setting.
   26359         
   26360         * WebCore.base.exp:
   26361         * loader/DocumentLoader.cpp:
   26362         (WebCore::DocumentLoader::scheduleApplicationCacheLoad):
   26363         * loader/MainResourceLoader.cpp:
   26364         (WebCore::MainResourceLoader::load):
   26365         * loader/appcache/ApplicationCacheGroup.cpp:
   26366         (WebCore::ApplicationCacheGroup::selectCache):
   26367         (WebCore::ApplicationCacheGroup::selectCacheWithoutManifestURL):
   26368         * page/Settings.cpp:
   26369         (WebCore::Settings::Settings):
   26370         (WebCore::Settings::setOfflineWebApplicationCacheEnabled):
   26371         * page/Settings.h:
   26372         (WebCore::Settings::offlineWebApplicationCacheEnabled):
   26373 
   26374 2008-04-25  Anders Carlsson  <andersca (a] apple.com>
   26375 
   26376         Reviewed by Adam.
   26377 
   26378         <rdar://problem/5629139>
   26379         PluginInfoStoreWin needs to implement pluginNameForMIMEType().
   26380         
   26381         * plugins/PluginInfoStore.cpp:
   26382         (WebCore::PluginInfoStore::pluginNameForMIMEType):
   26383 
   26384 2008-04-25  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   26385 
   26386         Reviewed by Simon.
   26387 
   26388         Respect antialiasing hint when drawing focus rects.
   26389 
   26390         * platform/graphics/qt/GraphicsContextQt.cpp:
   26391         (WebCore::GraphicsContext::drawFocusRing):
   26392 
   26393 2008-04-25  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   26394 
   26395         Reviewed by Simon.
   26396 
   26397         networking: Use Qt::QueuedConnection in QNetworkReplyHandler
   26398 
   26399         Make sure we leave the networking backend before calling
   26400         into WebCore. Otheriwse we might return to the networking
   26401         backend when it is already deleted.
   26402 
   26403         * platform/network/qt/QNetworkReplyHandler.cpp:
   26404         (WebCore::FormDataIODevice::setParent):
   26405         (WebCore::QNetworkReplyHandler::start):
   26406 
   26407 2008-04-25  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   26408 
   26409         Reviewed by Simon.
   26410 
   26411         Fix propagation of mouse double click events.
   26412 
   26413         Treat a mouse double click as a regular mouse press with just a different click count.
   26414 
   26415         * platform/qt/PlatformMouseEventQt.cpp:
   26416         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
   26417 
   26418 2008-04-25  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   26419 
   26420         Reviewed by Simon.
   26421 
   26422         Fixes: Fix strange button sizes (push, radio, and check) in QtWebKit.
   26423 
   26424         We now use pixel metrics instead of fixed sizes for the
   26425         button margins, or if the style supports layout rects we
   26426         use the delta between the content rect and the layout rect.
   26427 
   26428         In adition we compensate for the difference between the size
   26429         for content and the actual layout rect (if supported) by
   26430         reporting back the layout rect to WebKit for page layout,
   26431         and then inflating the rect we actually paint to.
   26432 
   26433         * platform/qt/RenderThemeQt.cpp:
   26434         (WebCore::StylePainter::StylePainter):
   26435         (WebCore::StylePainter::~StylePainter):
   26436         (WebCore::RenderThemeQt::RenderThemeQt):
   26437         (WebCore::inflateButtonRect):
   26438         (WebCore::RenderThemeQt::adjustRepaintRect):
   26439         (WebCore::RenderThemeQt::isControlStyled):
   26440         (WebCore::computeSizeBasedOnStyle):
   26441         (WebCore::RenderThemeQt::setCheckboxSize):
   26442         (WebCore::RenderThemeQt::paintCheckbox):
   26443         (WebCore::RenderThemeQt::setRadioSize):
   26444         (WebCore::RenderThemeQt::adjustButtonStyle):
   26445         (WebCore::RenderThemeQt::setButtonSize):
   26446         (WebCore::RenderThemeQt::setButtonPadding):
   26447         (WebCore::RenderThemeQt::paintButton):
   26448         (WebCore::RenderThemeQt::adjustMenuListStyle):
   26449         (WebCore::RenderThemeQt::setPopupPadding):
   26450         (WebCore::RenderThemeQt::paintMenuList):
   26451         * platform/qt/RenderThemeQt.h:
   26452 
   26453 2008-04-25  Benjamin Meyer  <bmeyer (a] trolltech.com>
   26454 
   26455         Reviewed by Holger.
   26456 
   26457         Fixes: Valgrind warnings about uninitilized variables used in jumps
   26458 
   26459         * rendering/RenderText.cpp:
   26460         (WebCore::RenderText::trimmedPrefWidths):
   26461 
   26462 2008-04-25  Warwick Allison  <warwick (a] trolltech.com>
   26463 
   26464         Reviewed by Simon.
   26465 
   26466         Added simple getter function to PlatformScrollBar to return the
   26467         maximum value. Needed in the WebKit/qt API.
   26468 
   26469         * platform/qt/PlatformScrollBar.h:
   26470 
   26471 2008-04-25  Benjamin Meyer  <bmeyer (a] trolltech.com>
   26472 
   26473         Reviewed by Holger, Simon.
   26474 
   26475         Implement NoDrop, ZoomIn, and ZoomOut cursors
   26476 
   26477         * Resources/WebKitResources.qrc:
   26478         * platform/qt/CursorQt.cpp:
   26479         (WebCore::noDropCursor):
   26480         (WebCore::notAllowedCursor):
   26481         (WebCore::zoomInCursor):
   26482         (WebCore::zoomOutCursor):
   26483 
   26484 2008-04-25  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   26485 
   26486         Reviewed by Simon.
   26487 
   26488         Handle the ListboxAppearance as 'TextField' as well. We are mainly interested in the background.
   26489 
   26490         RenderBox will call us to paint the outline/background, it is handled the same as a
   26491         TextAreaAppearance in RenderTheme, handle it the same in the RenderThemeQt
   26492 
   26493         * platform/qt/RenderThemeQt.cpp:
   26494         (WebCore::RenderThemeQt::paintTextField):
   26495 
   26496 2008-04-25  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   26497 
   26498         Reviewed by Simon.
   26499 
   26500         No reason to exit the application when we can not paint something. Replace the Q_ASSERT
   26501         with a runtime check. Return true to indicate that we did not handle the painting
   26502         of this element.
   26503 
   26504         * platform/qt/RenderThemeQt.cpp:
   26505         (WebCore::RenderThemeQt::paintTextField):
   26506 
   26507 2008-04-25  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   26508 
   26509         Reviewed by Simon.
   26510 
   26511         Correct the comment. We are in painTextField and don't paint a button.
   26512 
   26513         * platform/qt/RenderThemeQt.cpp:
   26514         (WebCore::RenderThemeQt::paintTextField):
   26515 
   26516 2008-04-25  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   26517 
   26518         Reviewed by Simon.
   26519 
   26520         Allow ListboxAppearance to take focus as well. Stolen from Tor Arne
   26521 
   26522         * platform/qt/RenderThemeQt.cpp:
   26523         (WebCore::RenderThemeQt::supportsFocus):
   26524 
   26525 2008-04-25  Simon Hausmann  <hausmann (a] webkit.org>
   26526 
   26527         Reviewed by Holger.
   26528 
   26529         Remove debug output.
   26530 
   26531         * platform/network/qt/ResourceHandleQt.cpp:
   26532         (WebCore::ResourceHandle::loadResourceSynchronously):
   26533 
   26534 2008-04-25  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   26535 
   26536         Reviewed by Simon.
   26537 
   26538         Change the string for searchableIndexIntroduction() to match the mac
   26539         and pass http/tests/misc/isindex-formdata.html
   26540 
   26541         * platform/qt/Localizations.cpp:
   26542 
   26543 2008-04-25  Simon Hausmann  <hausmann (a] webkit.org>
   26544 
   26545         Reviewed by Holger.
   26546 
   26547         When we encounter a new/unknown HTTP request type report it back to WebCore as loading error.
   26548 
   26549         * platform/network/qt/QNetworkReplyHandler.cpp:
   26550         (WebCore::QNetworkReplyHandler::start):
   26551 
   26552 2008-04-25  Benjamin Meyer  <bmeyer (a] trolltech.com>
   26553 
   26554         Reviewed by Simon.
   26555 
   26556         Fix crash in the networking layer.
   26557 
   26558         Set the m_reply to null right after calling deleteLater().
   26559 
   26560         * platform/network/qt/QNetworkReplyHandler.cpp:
   26561         (WebCore::QNetworkReplyHandler::finish):
   26562 
   26563 2008-04-24  Mark Rowe  <mrowe (a] apple.com>
   26564 
   26565         Rubber-stamped by Oliver Hunt.
   26566 
   26567         * WebCore.base.exp: Remove two symbols from the export list that don't need to be exported.
   26568 
   26569 2008-04-24  Dan Bernstein  <mitz (a] apple.com>
   26570 
   26571         Reviewed by Dave Hyatt.
   26572 
   26573         - fix https://bugs.webkit.org/show_bug.cgi?id=18722
   26574           <rdar://problem/5888360> REGRESSION (3.1 -> TOT): Webkit Nightly Build crashes when visiting i has a hotdog
   26575 
   26576         Test: fast/dynamic/float-remove-above-line.html
   26577 
   26578         * rendering/bidi.cpp:
   26579         (WebCore::RenderBlock::layoutInlineChildren): Avoid adding floats that
   26580         do not intrude into the line to its floats vector. When such floats go
   26581         away, they do not dirty the line (because they do not intersect with it)
   26582         and having it keep them in its floats vector is what caused the crash.
   26583 
   26584 2008-04-24  Justin Garcia  <justin.garcia (a] apple.com>
   26585 
   26586         Reviewed by John Sullivan.
   26587         
   26588         It is possible, despite our safeguards, for createMarkup to iterate past the end of the Range
   26589         that is passed to it.  Added a null check to prevent crashes in this situation (we won't crash but
   26590         we will create too much markup), and added an ASSERT to hopefully catch the scenario in a debugger 
   26591         and help us understand what's going on.
   26592 
   26593         * editing/markup.cpp:
   26594         (WebCore::createMarkup):
   26595 
   26596 2008-04-24  Mark Rowe  <mrowe (a] apple.com>
   26597 
   26598         Reviewed by Sam Weinig.
   26599 
   26600         Remove code for calculating the glyph cache size.
   26601 
   26602         * WebCore.base.exp: Remove unused symbol.
   26603         * platform/graphics/mac/FontCacheMac.mm: Remove code that is unused now that we do not compute the glyph cache size.
   26604         * platform/mac/WebCoreSystemInterface.h: Remove unused symbol.
   26605         * platform/mac/WebCoreSystemInterface.mm: Ditto.
   26606 
   26607 2008-04-24  Mark Rowe  <mrowe (a] apple.com>
   26608 
   26609         Reviewed by Sam Weinig.
   26610 
   26611         Add a definition of BUILDING_ON_LEOPARD to complement BUILDING_ON_TIGER.
   26612 
   26613         * WebCorePrefix.h:
   26614 
   26615 2008-04-24  Cameron McCormack  <cam (a] mcc.id.au>
   26616 
   26617         Reviewed by Maciej Stachowiak.
   26618 
   26619         Ensure that changes to rx="" and ry="" attributes on an SVG <rect>
   26620         element cause a relayout.
   26621 
   26622         Test: svg/dom/SVGRectElement/rect-modify-rx.svg
   26623 
   26624         * svg/SVGRectElement.cpp:
   26625         (WebCore::SVGRectElement::svgAttributeChanged): Call needsLayout()
   26626         when the attribute is rx or ry.
   26627         (WebCore::SVGRectElement::hasRelativeValues): Return true when the
   26628         attribute is rx or ry, since they also can have relative values.
   26629 
   26630 2008-04-24  Adam Barth  <hk9565 (a] gmail.com>
   26631 
   26632         Reviewed by Sam Weinig.
   26633 
   26634         Update the XMLHttpRequest header black list to match the spec.
   26635 
   26636         * xml/XMLHttpRequest.cpp:
   26637         (WebCore::isSafeRequestHeader):
   26638 
   26639 2008-04-22  Feng Qian  <feng (a] chromium.org>
   26640 
   26641         Reviewed by Geoff Garen.
   26642 
   26643         Fix https://bugs.webkit.org/show_bug.cgi?id=18677
   26644         Bug 18677: Synchronous event dispatch confuses the popup blocker into incorrectly blocking chat popups in gmail.com.
   26645 
   26646         Test: fast/events/nested-window-event.html
   26647 
   26648         * bindings/js/kjs_events.cpp:
   26649         (WebCore::JSAbstractEventListener::handleEvent): Save and restore the current event around the event dispatch.
   26650 
   26651 2008-04-24  Brady Eidson  <beidson (a] apple.com>
   26652 
   26653         Reviewed by Teh Mitzpettel
   26654 
   26655         Make it so PageGroups know what their own name is.
   26656 
   26657         * WebCore.base.exp:
   26658 
   26659         * page/Page.cpp:
   26660         (WebCore::Page::setGroupName):
   26661         (WebCore::Page::groupName):
   26662         * page/Page.h:
   26663 
   26664         * page/PageGroup.cpp: Move the PageGroupMap into the PageGroup class.
   26665         (WebCore::PageGroup::PageGroup): Added a c'tor that takes the group name as an argument instead of
   26666           the initial Page.
   26667         (WebCore::PageGroup::pageGroup): Handles creating and mapping names to groups
   26668         * page/PageGroup.h:
   26669         (WebCore::PageGroup::name):
   26670 
   26671 2008-04-24  Adele Peterson  <adele (a] apple.com>
   26672 
   26673         Reviewed by Darin.
   26674 
   26675         Consolidate two versions of pathGetFileName.
   26676 
   26677         * html/HTMLFormElement.cpp: (WebCore::HTMLFormElement::formData): Call FileSystem.h version of pathGetFileName and removed the static helper function.
   26678         * platform/posix/FileSystemPOSIX.cpp: (WebCore::pathGetFileName): Moved general case from HTMLFormElement version here.
   26679           If other platforms relied on that default they should implement this function for their platform specific version of FileSystem.cpp
   26680         * platform/win/FileSystemWin.cpp: (WebCore::pathGetFileName): Moved win implementation from HTMLFormElement here.
   26681         * platform/wx/FileSystemWx.cpp: (WebCore::pathGetFileName): Moved wx implementation from HTMLFormElement here.
   26682 
   26683 2008-04-24  Anders Carlsson  <andersca (a] apple.com>
   26684 
   26685         Windows build fix.
   26686         
   26687         * html/HTMLFormElement.cpp:
   26688         (WebCore::pathGetFilename):
   26689 
   26690 2008-04-24  Anders Carlsson  <andersca (a] apple.com>
   26691 
   26692         Don't crash when the string is empty.
   26693         
   26694         * html/HTMLMediaElement.cpp:
   26695         (WebCore::parseTimeOffset):
   26696 
   26697 2008-04-24  Dan Bernstein  <mitz (a] apple.com>
   26698 
   26699         Reviewed by Darin Adler.
   26700 
   26701         - preparation for https://bugs.webkit.org/show_bug.cgi?id=3729
   26702           <rdar://problem/4036353> REGRESSION: arrow keys move insertion bar backwards in RTL text
   26703 
   26704         The three main changes in this patch are:
   26705 
   26706         1) Making all inline boxes know their bidi level, instead of just text
   26707            boxes knowing whether their bidi level is odd or even. This is
   26708            required for the next change.
   26709 
   26710         2) Replacing RenderObject::inlineBox() with
   26711            Position::getInlineBoxAndOffset() in recognition of the fact that the
   26712            inline box containing the primary caret for a position in a given
   26713            node may belong to a different node's renderer.
   26714 
   26715         3) Changing RenderObject::caretRect() to take an InlineBox parameter,
   26716            and changing callers to call VisiblePosition::caretRect(), which
   26717            locates the inline box, then calls caretRect() on the renderer for
   26718            that box. This, combined with the previous change, ensures that the
   26719            primary caret is rendered at the right place for positions that
   26720            lie on a directionality boundary.
   26721 
   26722         Test: platform/mac/editing/input/caret-primary-bidi.html
   26723 
   26724         * WebCore.base.exp: Added the VisiblePosition(Node*, int, EAffinity)
   26725         constructor and VisiblePosition::caretRect(), and sorted.
   26726 
   26727         * dom/Position.cpp:
   26728         (WebCore::nextRenderedEditable): Adjusted for the removal of
   26729         RenderObject::inlineBox().
   26730         (WebCore::previousRenderedEditable): Ditto.
   26731         (WebCore::Position::rendersInDifferentPosition): Ditto.
   26732         (WebCore::Position::getInlineBoxAndOffset): Added. Gets the inline box
   26733         and the offset within that box at which the primary caret for this
   26734         position should render.
   26735 
   26736         * dom/Position.h:
   26737 
   26738         * editing/DeleteSelectionCommand.cpp:
   26739         (WebCore::DeleteSelectionCommand::mergeParagraphs): Changed to call
   26740         VisiblePosition::caretRect() instead of calling the RenderObject method.
   26741 
   26742         * editing/SelectionController.cpp:
   26743         (WebCore::caretY): Ditto.
   26744         (WebCore::SelectionController::xPosForVerticalArrowNavigation): Ditto.
   26745         (WebCore::SelectionController::layout): Ditto.
   26746 
   26747         * editing/VisiblePosition.cpp:
   26748         (WebCore::VisiblePosition::caretRect): Changed to call
   26749         getInlineBoxAndOffset() to get the correct inline box and call the
   26750         renderer for that box.
   26751 
   26752         * editing/VisiblePosition.h:
   26753         (WebCore::VisiblePosition::getInlineBoxAndOffset): Added convenience
   26754         methods for getting the inline box and caret offset for a visible
   26755         position, accounting for its affinity.
   26756 
   26757         * editing/visible_units.cpp:
   26758         (WebCore::rootBoxForLine): Changed to use getInlineBoxAndOffset()
   26759         instead of RenderObject::inlineBox().
   26760         (WebCore::startPositionForLine):
   26761         (WebCore::endPositionForLine):
   26762         (WebCore::previousLinePosition): Ditto.
   26763         (WebCore::nextLinePosition): Ditto.
   26764 
   26765         * page/AccessibilityObject.cpp:
   26766         (WebCore::updateAXLineStartForVisiblePosition): Ditto.
   26767 
   26768         * page/Frame.cpp:
   26769         (WebCore::Frame::firstRectForRange): Ditto.
   26770 
   26771         * rendering/InlineBox.cpp:
   26772         (WebCore::InlineBox::caretMinOffset): Changed to forward to the
   26773         renderer.
   26774         (WebCore::InlineBox::caretMaxOffset): Ditto.
   26775         * rendering/InlineBox.h: Replaced the m_reversed bit, intended for use
   26776         in InlineTextBox only, with six bits of the bidi level of the box,
   26777         intended for use in all leaf inline boxes.
   26778         (WebCore::InlineBox::InlineBox): Added missing initializer for
   26779         m_dirOverride and initialized the bidi level.
   26780         (WebCore::InlineBox::bidiLevel): Added this accessor.
   26781         (WebCore::InlineBox::setBidiLevel): Ditto.
   26782         (WebCore::InlineBox::direction): Ditto.
   26783         (WebCore::InlineBox::caretLeftmostOffset): Added this convenience
   26784         method.
   26785         (WebCore::InlineBox::caretRightmostOffset): Ditto.
   26786 
   26787         * rendering/InlineTextBox.cpp: Replaced all references to m_reversed
   26788         with checking of direction().
   26789         (WebCore::InlineTextBox::selectionRect):
   26790         (WebCore::InlineTextBox::placeEllipsisBox):
   26791         (WebCore::InlineTextBox::paint):
   26792         (WebCore::InlineTextBox::paintSelection):
   26793         (WebCore::InlineTextBox::paintCompositionBackground):
   26794         (WebCore::InlineTextBox::paintSpellingOrGrammarMarker):
   26795         (WebCore::InlineTextBox::paintTextMatchMarker):
   26796         (WebCore::InlineTextBox::textPos):
   26797         (WebCore::InlineTextBox::offsetForPosition):
   26798         (WebCore::InlineTextBox::positionForOffset):
   26799 
   26800         * rendering/RenderBR.cpp: Removed inlineBox().
   26801         * rendering/RenderBR.h: Ditto.
   26802 
   26803         * rendering/RenderBox.cpp:
   26804         (WebCore::RenderBox::caretRect): Changed to take an inline box and
   26805         account for the direction of the box (or the renderer) in positioning
   26806         the caret: in right-to-left boxes, the "before" position is to the right
   26807         while "after" is to the left.
   26808         * rendering/RenderBox.h:
   26809 
   26810         * rendering/RenderFlow.cpp:
   26811         (WebCore::RenderFlow::caretRect): Updated the signature.
   26812         * rendering/RenderFlow.h:
   26813 
   26814         * rendering/RenderObject.cpp:
   26815         (WebCore::RenderObject::caretRect): Updated the signature.
   26816         (WebCore::RenderObject::caretMaxOffset): Changed to return the child
   26817         node count (or 1 if there are no children) for replaced elements, such
   26818         as <select>s.
   26819         * rendering/RenderObject.h:
   26820 
   26821         * rendering/RenderReplaced.cpp: Removed caretMinOffset() and
   26822         caretMaxOffset() because the base class implementation does the right
   26823         thing for replaced objects now.
   26824         * rendering/RenderReplaced.h:
   26825 
   26826         * rendering/RenderSVGInlineText.cpp:
   26827         (WebCore::RenderSVGInlineText::caretRect): Updated the signature.
   26828         (WebCore::RenderSVGInlineText::positionForCoordinates): Updated for
   26829         the change from m_reversed to direction().
   26830         * rendering/RenderSVGInlineText.h:
   26831 
   26832         * rendering/RenderText.cpp:
   26833         (WebCore::RenderText::caretRect): Changed to take an inline box and
   26834         removed the code that used to find the inline for the given position.
   26835         Changed use of m_reversed to use direction().
   26836         (WebCore::RenderText::position): Changed use of m_reversed to use
   26837         direction().
   26838         * rendering/RenderText.h:
   26839 
   26840         * rendering/RenderTextControl.cpp:
   26841         (WebCore::RenderTextControl::textWithHardLineBreaks): Adjusted for the
   26842         removal of RenderObject::inlineBox().
   26843 
   26844         * rendering/RenderTreeAsText.cpp:
   26845         (WebCore::writeTextRun): Changed to use direction() instead of
   26846         m_reversed.
   26847 
   26848         * rendering/SVGInlineTextBox.cpp: Ditto.
   26849         (WebCore::SVGInlineTextBox::calculateGlyphBoundaries):
   26850         (WebCore::SVGInlineTextBoxClosestCharacterToPositionWalker::chunkPortionCallback):
   26851         (WebCore::SVGInlineTextBox::svgCharacterHitsPosition):
   26852 
   26853         * rendering/SVGRenderTreeAsText.cpp: Ditto.
   26854         (WebCore::writeSVGInlineTextBox):
   26855 
   26856         * rendering/SVGRootInlineBox.cpp: Ditto.
   26857         (WebCore::svgTextRunForInlineTextBox):
   26858         (WebCore::cummulatedWidthOrHeightOfTextChunk):
   26859         (WebCore::SVGRootInlineBox::buildLayoutInformationForTextBox):
   26860 
   26861         * rendering/bidi.cpp:
   26862         (WebCore::RenderBlock::constructLine): Made this function set the
   26863         bidi level on all leaf boxes.
   26864 
   26865         * svg/SVGTextContentElement.cpp: Changed to use direction() instead of
   26866         m_reversed.
   26867         (WebCore::cumulativeCharacterRangeLength):
   26868         (WebCore::SVGInlineTextBoxQueryWalker::chunkPortionCallback):
   26869 
   26870 2008-04-24  Sam Weinig  <sam (a] webkit.org>
   26871 
   26872         Fix the world.
   26873 
   26874         * bindings/js/kjs_proxy.cpp:
   26875         (WebCore::KJSProxy::clear):
   26876 
   26877 2008-04-24  Darin Adler  <darin (a] apple.com>
   26878 
   26879         Reviewed by Geoff.
   26880 
   26881         - fix crash in regression test where we'd ask a frame for a user agent string
   26882           after the WebView was already closed
   26883 
   26884         * loader/FrameLoader.cpp:
   26885         (WebCore::FrameLoader::scheduleHTTPRedirection): Quietly do nothing if this is
   26886         called on a frame that's already detached from its page.
   26887         (WebCore::FrameLoader::scheduleLocationChange): Ditto.
   26888         (WebCore::FrameLoader::scheduleRefresh): Ditto.
   26889         (WebCore::FrameLoader::scheduleHistoryNavigation): Ditto.
   26890         (WebCore::FrameLoader::redirectionTimerFired): Assert that this is never called
   26891         for a frame that's already detached from its page.
   26892         (WebCore::FrameLoader::scheduleRedirection): Ditto.
   26893         (WebCore::FrameLoader::startRedirectionTimer): Ditto.
   26894 
   26895 2008-04-23  Timothy Hatcher  <timothy (a] apple.com>
   26896 
   26897         Add a new callFunction helper function to remove duplicate code
   26898         for calling JavaScript functions with arguments.
   26899 
   26900         Reviewed by Darin Adler.
   26901 
   26902         * page/InspectorController.cpp:
   26903         (WebCore::InspectorController::callSimpleFunction): Call callFunction.
   26904         (WebCore::InspectorController::callFunction): Extended version of the original
   26905         callSimpleFunction, with script function arguments and an exception argument.
   26906         (WebCore::InspectorController::focusNode): Use callFunction.
   26907         (WebCore::InspectorController::addScriptResource): Ditto.
   26908         (WebCore::InspectorController::removeScriptResource): Ditto.
   26909         (WebCore::InspectorController::addDatabaseScriptResource): Ditto.
   26910         (WebCore::InspectorController::removeDatabaseScriptResource): Ditto.
   26911         (WebCore::InspectorController::addScriptConsoleMessage): Ditto.
   26912         * page/InspectorController.h: Add callFunction.
   26913 
   26914 2008-04-24  Anders Carlsson  <andersca (a] apple.com>
   26915 
   26916         Reviewed by Sam.
   26917 
   26918         Change some String arguments to be const references instead.
   26919         
   26920         * css/CSSRule.cpp:
   26921         (WebCore::CSSRule::setCssText):
   26922         * css/CSSRule.h:
   26923         * html/HTMLFormElement.cpp:
   26924         (WebCore::pathGetFilename):
   26925         * html/HTMLMediaElement.cpp:
   26926         (WebCore::parseTimeOffset):
   26927         * page/EditorClient.h:
   26928         * platform/SecurityOrigin.cpp:
   26929         (WebCore::isDefaultPortForProtocol):
   26930         * platform/graphics/MediaPlayer.cpp:
   26931         (WebCore::MediaPlayer::load):
   26932         * platform/graphics/MediaPlayer.h:
   26933         * rendering/MediaControlElements.cpp:
   26934         (WebCore::MediaControlInputElement::MediaControlInputElement):
   26935         * rendering/MediaControlElements.h:
   26936         * svg/animation/SVGSMILElement.cpp:
   26937         (WebCore::SVGSMILElement::Condition::Condition):
   26938         * svg/animation/SVGSMILElement.h:
   26939         * svg/graphics/SVGImageEmptyClients.h:
   26940         (WebCore::SVGEmptyEditorClient::shouldInsertText):
   26941         * xml/XSLTProcessor.cpp:
   26942         (WebCore::createFragmentFromSource):
   26943 
   26944 2008-04-24  Justin Garcia  <justin.garcia (a] apple.com>
   26945 
   26946         Reviewed by Darin Adler.
   26947 
   26948         <rdar://problem/5604313> FormatBlock to apply an h1 also inserts a style span around the first letter (16004)
   26949         
   26950         * editing/TextIterator.cpp:
   26951         (WebCore::TextIterator::advance): We emit an extra newline when leaving a
   26952         block element that has atypical margin/padding. When we emit the extra newline, 
   26953         it needs to be positioned after that block's contents, not after the block. 
   26954         This is how we position the first newline, too, since the range for emitted newlines 
   26955         should start where the line break begins visually.
   26956 
   26957 2008-04-24  Anders Carlsson  <andersca (a] apple.com>
   26958 
   26959         Reviewed by Adam.
   26960 
   26961         Only avoid implicit entries when doing the initial caching.
   26962         
   26963         * loader/appcache/ApplicationCacheGroup.cpp:
   26964         (WebCore::ApplicationCacheGroup::didReceiveResponse):
   26965         (WebCore::ApplicationCacheGroup::startLoadingEntry):
   26966 
   26967 2008-04-24  Kevin McCullough  <kmccullough (a] apple.com>
   26968 
   26969         Reviewed by Adam and Sam.
   26970 
   26971         -<rdar://problem/5770054> JavaScript profiler (10928)
   26972         -Only profile the page group that starts profiling to avoid profiling
   26973         tools that shouldn't be profiled unless explicitly requested to.
   26974 
   26975         * bindings/js/kjs_proxy.cpp: When a new global object is created set its
   26976         page group identifier.
   26977         (WebCore::KJSProxy::clear):
   26978         (WebCore::KJSProxy::initScript):
   26979         * page/Console.cpp: When calling console.profile set the identifier of
   26980         the page group being profiled.
   26981         (WebCore::Console::profile):
   26982         * page/PageGroup.cpp: Implement unique identifiers.
   26983         (WebCore::getUniqueIdentifier):
   26984         (WebCore::PageGroup::PageGroup):
   26985         * page/PageGroup.h: Ditto.
   26986         (WebCore::PageGroup::identifier):
   26987 
   26988 2008-04-24  John Sullivan  <sullivan (a] apple.com>
   26989 
   26990         Mac buid fix
   26991 
   26992         * page/mac/WebCoreViewFactory.h:
   26993         add declarations of six new AX methods that were added to LocalizedStrings.h
   26994         
   26995         * platform/mac/LocalizedStringsMac.mm:
   26996         (WebCore::AXButtonActionVerb):
   26997         implement by calling through to WebCoreViewFactory as we do with the other functions here
   26998         (WebCore::AXRadioButtonActionVerb):
   26999         ditto
   27000         (WebCore::AXTextFieldActionVerb):
   27001         ditto
   27002         (WebCore::AXCheckedCheckBoxActionVerb):
   27003         ditto
   27004         (WebCore::AXUncheckedCheckBoxActionVerb):
   27005         ditto
   27006         (WebCore::AXLinkActionVerb):
   27007         ditto
   27008 
   27009 2008-04-24  Simon Hausmann  <hausmann (a] webkit.org>
   27010 
   27011         Rubber-stamped by Lars
   27012 
   27013         Fix text rendering in -reverse mode on Qt/Mac.
   27014 
   27015         For Font::width() don't use a plain QFontMetrics object but also the properly
   27016         setup QTextLayout that has the RTL/LTR force flags set.
   27017 
   27018         * platform/graphics/qt/FontQt.cpp:
   27019         (WebCore::Font::width):
   27020 
   27021 2008-04-24  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   27022 
   27023         Reviewed by Simon.
   27024 
   27025         Don't do anti-aliasing for arcs, lines and rects, but continue to anti-alias
   27026         all drawing primitives in the HTML Canvas element.
   27027 
   27028         This speeds up drawing of dashed outlines significantly.
   27029 
   27030         Also preserve the anti-aliasing renderhint for transparency layers and
   27031         get rid of the mostly unused device pointer.
   27032 
   27033         * platform/graphics/qt/GraphicsContextQt.cpp:
   27034         (WebCore::TransparencyLayer::TransparencyLayer):
   27035         (WebCore::GraphicsContextPlatformPrivate::p):
   27036         (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
   27037         (WebCore::GraphicsContext::beginTransparencyLayer):
   27038         (WebCore::GraphicsContext::drawRect):
   27039         (WebCore::GraphicsContext::drawLine):
   27040         (WebCore::GraphicsContext::strokeArc):
   27041 
   27042 2008-04-24  Paul Olav Tvete <paul (a] trolltech.com>
   27043 
   27044         Reviewed by Simon.
   27045 
   27046         Fix various compiler warnings related to QString(const char *)
   27047         construction by using QLatin1String.
   27048 
   27049         * bridge/qt/qt_instance.cpp:
   27050         (KJS::Bindings::QtField::valueFromInstance):
   27051         (KJS::Bindings::QtField::setValueToInstance):
   27052         * dom/XMLTokenizer.cpp:
   27053         * platform/graphics/qt/PathQt.cpp:
   27054         (WebCore::Path::debugString):
   27055 
   27056 2008-04-24  Morten Johan Srvig  <msorvig (a] trolltech.com>
   27057 
   27058         Reviewed by Simon.
   27059 
   27060         Work around QMacStyle bug in repainting the vertical scrollbar.
   27061 
   27062         We draw the scrollbar using HITheme but somehow the translation and the
   27063         clipping we previously set using ClipCGContextToRegion is ignored. Drawing
   27064         without the translation fixes the clip.
   27065 
   27066         * platform/qt/PlatformScrollBarQt.cpp:
   27067         (WebCore::PlatformScrollbar::paint):
   27068 
   27069 2008-04-24  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   27070 
   27071         Reviewed by Simon.
   27072 
   27073         * Set an expiration date for local files as we do not know what will happen
   27074         to these files (in contrast to a http server with max-age and other headers)
   27075         * Remember the time when we started the job and use that for the expiration date
   27076         * QNetworkManager does not handle expiration at all, we might want to set the
   27077         expiration for all downloads but this will be a performance nightmare.
   27078 
   27079         * platform/network/qt/QNetworkReplyHandler.cpp:
   27080         (WebCore::QNetworkReplyHandler::QNetworkReplyHandler):
   27081         (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
   27082         (WebCore::QNetworkReplyHandler::start):
   27083         * platform/network/qt/QNetworkReplyHandler.h:
   27084 
   27085 2008-04-24  Simon Hausmann  <hausmann (a] webkit.org>
   27086 
   27087         Fix the Gtk and Qt builds.
   27088 
   27089         Added missing localization stubs for accessibility.
   27090 
   27091         * platform/gtk/LocalizedStringsGtk.cpp:
   27092         (WebCore::AXButtonActionVerb):
   27093         (WebCore::AXRadioButtonActionVerb):
   27094         (WebCore::AXTextFieldActionVerb):
   27095         (WebCore::AXCheckedCheckBoxActionVerb):
   27096         (WebCore::AXUncheckedCheckBoxActionVerb):
   27097         (WebCore::AXLinkActionVerb):
   27098         * platform/qt/Localizations.cpp:
   27099         (WebCore::AXButtonActionVerb):
   27100         (WebCore::AXRadioButtonActionVerb):
   27101         (WebCore::AXTextFieldActionVerb):
   27102         (WebCore::AXCheckedCheckBoxActionVerb):
   27103         (WebCore::AXUncheckedCheckBoxActionVerb):
   27104         (WebCore::AXLinkActionVerb):
   27105 
   27106 2008-04-24  Olivier Goffart  <ogoffart (a] trolltech.com>
   27107 
   27108         Reviewed by Simon
   27109 
   27110         Fix various compiler warnings in the Qt port.
   27111 
   27112         * platform/graphics/qt/ImageQt.cpp:
   27113         (loadResourcePixmap):
   27114         * platform/qt/CookieJarQt.cpp:
   27115         (WebCore::cookies):
   27116         * platform/qt/ScrollViewQt.cpp:
   27117         (WebCore::ScrollView::wheelEvent):
   27118         * plugins/qt/PluginDataQt.cpp:
   27119         (WebCore::PluginData::initPlugins):
   27120 
   27121 2008-04-24  Andre Poenitz  <andre.poenitz (a] trolltech.com>
   27122 
   27123         Reviewed by Simon.
   27124 
   27125         Removed spurious QHideEvent forward declaration.
   27126 
   27127         * platform/qt/QWebPopup.h:
   27128 
   27129 2008-04-24  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   27130 
   27131         Reviewed by Simon.
   27132 
   27133         Render text areas using Qt (ensures proper style).
   27134 
   27135         * platform/qt/RenderThemeQt.cpp:
   27136         (WebCore::RenderThemeQt::paintTextField):
   27137         (WebCore::RenderThemeQt::adjustTextFieldStyle):
   27138         (WebCore::RenderThemeQt::paintTextArea):
   27139         (WebCore::RenderThemeQt::supportsFocus):
   27140         * platform/qt/RenderThemeQt.h:
   27141 
   27142 2008-04-24  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   27143 
   27144         Reviewed by Simon.
   27145 
   27146         Make mouse wheel events over scrollbars behave the same as in Qt, i.e. both
   27147         horizontal and vertical wheel events will scroll the view in the orientation
   27148         of the scrollbar underneath the cursor.
   27149 
   27150         * platform/qt/ScrollViewQt.cpp:
   27151         (WebCore::ScrollView::paint):
   27152         (WebCore::ScrollView::wheelEvent):
   27153 
   27154 2008-04-23  Jon Honeycutt  <jhoneycutt (a] apple.com>
   27155 
   27156         Reviewed by Brady.
   27157 
   27158         * page/AccessibilityObject.cpp:
   27159         (WebCore::AccessibilityObject::press): Return false if this object
   27160         doesn't have an action element associated with it.
   27161         * page/AccessibilityObject.h: Added a performDefaultAction() method,
   27162         which just calls press(). Marked press() const and changed its return
   27163         type to bool.
   27164 
   27165 2008-04-23  Jon Honeycutt  <jhoneycutt (a] apple.com>
   27166 
   27167         Reviewed by Adam.
   27168 
   27169         Don't allow a hit test to return an AccessibilityObject that should be
   27170         ignored.
   27171 
   27172         * page/AccessibilityObject.cpp:
   27173         (WebCore::AccessibilityObject::doAccessibilityHitTest): If this result
   27174         object's accessibility is ignored, return the parent unignored object.
   27175 
   27176 2008-04-23  Jon Honeycutt  <jhoneycutt (a] apple.com>
   27177 
   27178         Reviewed by Adam.
   27179 
   27180         Fix a crash when performing a hit test on an AccessibilityObject with
   27181         no layer (e.g., an AccessibilityObject for a RenderText object).
   27182 
   27183         * page/AccessibilityObject.cpp:
   27184         (WebCore::AccessibilityObject::doAccessibilityHitTest): Added a null
   27185         check for layer. Removed a null check for m_renderer, which shouldn't
   27186         occur.
   27187 
   27188 2008-04-23  Jon Honeycutt  <jhoneycutt (a] apple.com>
   27189 
   27190         * page/AccessibilityObject.cpp:
   27191         (WebCore::AccessibilityObject::boundingBoxRect): Added FIXME about this
   27192         method not working correctly for objects with CSS transforms applied.
   27193 
   27194 2008-04-23  Jon Honeycutt  <jhoneycutt (a] apple.com>
   27195 
   27196         Reviewed by Adam.
   27197 
   27198         Implement contentsToScreen() and screenToContents() on Windows.
   27199 
   27200         * platform/ScrollView.h: Make these declarations conditional on
   27201         HAVE(ACCESSIBILITY) instead of PLATFORM(MAC).
   27202         * platform/win/ScrollViewWin.cpp:
   27203         (WebCore::ScrollView::contentsToScreen): Translate from coordinates
   27204         relative to the ScrollView to coordinates relative to the screen. Do
   27205         this by getting the offset of the ScrollView in screen coordinates and
   27206         moving the rect by this amount.
   27207         (WebCore::ScrollView::screenToContents): Translate from coordinates
   27208         relative to the screen to coordinates relative to the ScrollView.
   27209 
   27210 2008-04-23  Jon Honeycutt  <jhoneycutt (a] apple.com>
   27211 
   27212         Reviewed by Oliver.
   27213 
   27214         Add a method to get a localized, human-readable string stating this
   27215         object's default action, e.g., a button's default action is "press."
   27216 
   27217         * page/AccessibilityObject.cpp:
   27218         (WebCore::AccessibilityObject::actionVerb): Added.
   27219         * page/AccessibilityObject.h: Added declaration for actionVerb().
   27220         * platform/LocalizedStrings.h: Added declarations for:
   27221             AXButtonActionVerb()
   27222             AXRadioButtonActionVerb()
   27223             AXTextFieldActionVerb()
   27224             AXCheckedCheckBoxActionVerb()
   27225             AXUncheckedCheckBoxActionVerb()
   27226             AXLinkActionVerb()
   27227 
   27228 2008-04-24  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   27229 
   27230         Reviewed by Simon.
   27231 
   27232         Cleaned up copyright headers in the Qt port (removed misplaced class
   27233         descriptions and fixed inconsistent whitespace and indentation).
   27234 
   27235         * platform/graphics/qt/FontQt.cpp:
   27236         * platform/qt/WheelEventQt.cpp:
   27237 
   27238 2008-04-24  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   27239 
   27240         Reviewed by Simon.
   27241 
   27242         Disable vanlilla focus rings since Qt provides this as part of the style.
   27243 
   27244         * platform/qt/RenderThemeQt.cpp:
   27245 
   27246 2008-04-24  George Staikos  <george.staikos (a] torchmobile.com>
   27247 
   27248         Reviewed by Simon.
   27249 
   27250         This optimization in BitmapImage::drawPattern for the identity
   27251         transform is bogus and causes incorrect results on sites like youtube.
   27252 
   27253         * platform/graphics/qt/ImageQt.cpp:
   27254         (WebCore::BitmapImage::drawPattern):
   27255 
   27256 2008-04-23  Brady Eidson  <beidson (a] apple.com>
   27257 
   27258         Reviewed by Jon Honeycutt
   27259 
   27260         Preparing for making LocalStorageAreas persistent.
   27261 
   27262         Since LocalStorageAreas will need to do a lot of additional work for each of the basic
   27263         operations a Storage object supports, this patch makes the API entry points virtual so
   27264         LocalStorageArea can override them.  The behavior for both Local and Session StorageAreas
   27265         is unchanged with this patch, but LocalStorageArea will override them in the future.
   27266 
   27267         * storage/StorageArea.cpp: Rename the implementations to internalFoo
   27268         (WebCore::StorageArea::internalLength):
   27269         (WebCore::StorageArea::internalKey):
   27270         (WebCore::StorageArea::internalGetItem):
   27271         (WebCore::StorageArea::internalSetItem):
   27272         (WebCore::StorageArea::internalRemoveItem):
   27273         (WebCore::StorageArea::internalContains):
   27274 
   27275         * storage/StorageArea.h: Call internalFoo variants
   27276         (WebCore::StorageArea::length):
   27277         (WebCore::StorageArea::key):
   27278         (WebCore::StorageArea::getItem):
   27279         (WebCore::StorageArea::setItem):
   27280         (WebCore::StorageArea::removeItem):
   27281         (WebCore::StorageArea::contains):
   27282 
   27283 2008-04-23  David Hyatt  <hyatt (a] apple.com>
   27284 
   27285         Implement getComputedStyle for border-image.
   27286 
   27287         Reviewed by Dan Bernstein
   27288 
   27289         Added fast/css/getComputedStyle-border-image.html
   27290 
   27291         * css/CSSComputedStyleDeclaration.cpp:
   27292         (WebCore::valueForRepeatRule):
   27293         (WebCore::valueForNinePieceImage):
   27294         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
   27295 
   27296 2008-04-22  Darin Adler  <darin (a] apple.com>
   27297 
   27298         Reviewed by Anders.
   27299 
   27300         - simplify use of HashTraits to prepare for some upcoming hash table changes
   27301 
   27302         * page/AXObjectCache.h: Removed uneeded AXIDHashTraits, which are no different
   27303         from the default hash traits for unsigned.
   27304         * page/mac/AXObjectCacheMac.mm:
   27305         (WebCore::AXObjectCache::removeAXID): Remove assertion that's already done
   27306         by HashTable that the value is not the deleted value.
   27307 
   27308         * platform/graphics/StringTruncator.cpp: Removed unneeded include.
   27309         * svg/SVGFontFaceElement.cpp: Removed unneeded include.
   27310 
   27311 2008-04-23  Kevin Ollivier  <kevino (a] theolliviers.com>
   27312 
   27313         wx build fixes. Changing BackgroundLayer -> FillLayer and adding
   27314         Frame::disconnectPlatformScriptObjects().
   27315 
   27316         * platform/wx/RenderThemeWx.cpp:
   27317         (WebCore::RenderThemeWx::isControlStyled):
   27318         * platform/wx/TemporaryLinkStubs.cpp:
   27319         (Frame::disconnectPlatformScriptObjects):
   27320 
   27321 2008-04-23  David Hyatt  <hyatt (a] apple.com>
   27322 
   27323         Add support for mask-box-image (similar to border-image).  This property enables a single image
   27324         to overlay the entire mask area (with nine-piece slicing rules similar to border image).
   27325 
   27326         Reviewed by Dan Bernstein
   27327 
   27328         Added inline-mask-overlay.html, block-mask-overlay.html
   27329 
   27330         * css/CSSComputedStyleDeclaration.cpp:
   27331         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
   27332         * css/CSSParser.cpp:
   27333         (WebCore::CSSParser::parseValue):
   27334         (WebCore::CSSParser::parseBorderImage):
   27335         * css/CSSPropertyNames.in:
   27336         * css/CSSStyleSelector.cpp:
   27337         (WebCore::CSSStyleSelector::applyProperty):
   27338         * rendering/InlineFlowBox.cpp:
   27339         (WebCore::InlineFlowBox::paintMask):
   27340         * rendering/RenderBox.cpp:
   27341         (WebCore::RenderBox::paintMask):
   27342         * rendering/RenderFlow.cpp:
   27343         (WebCore::RenderFlow::paintLines):
   27344         * rendering/RenderObject.cpp:
   27345         (WebCore::RenderObject::paintNinePieceImage):
   27346         (WebCore::RenderObject::paintBorder):
   27347         * rendering/RenderObject.h:
   27348         * rendering/RenderStyle.cpp:
   27349         (WebCore::NinePieceImage::operator==):
   27350         * rendering/RenderStyle.h:
   27351         (WebCore::NinePieceImage::m_verticalRule):
   27352         (WebCore::NinePieceImage::horizontalRule):
   27353         (WebCore::NinePieceImage::verticalRule):
   27354         (WebCore::RenderStyle::borderImage):
   27355         (WebCore::RenderStyle::maskOverlayImage):
   27356         (WebCore::RenderStyle::hasMask):
   27357         (WebCore::RenderStyle::resetBorderImage):
   27358         (WebCore::RenderStyle::setBorderImage):
   27359         (WebCore::RenderStyle::setMaskOverlayImage):
   27360         (WebCore::RenderStyle::initialNinePieceImage):
   27361         * rendering/RenderTable.cpp:
   27362         (WebCore::RenderTable::paintMask):
   27363         * rendering/RenderTableCell.cpp:
   27364         (WebCore::RenderTableCell::paintMask):
   27365 
   27366 2008-04-23  Justin Garcia  <justin.garcia (a] apple.com>
   27367 
   27368         Reviewed by Darin Adler.
   27369 
   27370         <rdar://problem/5825350> OWA: Caret disappears when navigating with arrows keys in contenteditable div
   27371 
   27372         * editing/htmlediting.cpp:
   27373         (WebCore::firstEditablePositionAfterPositionInRoot): Return a null VisiblePosition if
   27374         this function moves out of highestRoot.  Re-wrote so as to not duplicate code inside
   27375         and outside of the while loop.
   27376         (WebCore::lastEditablePositionBeforePositionInRoot): Ditto.
   27377 
   27378 2008-04-23  Daniel Zucker  <zucker (a] wake3.com>
   27379 
   27380         Reviewed by Adam Roben.
   27381 
   27382         Fix build errors needed to compile Curl in Cairo build.  Add stubs for
   27383         didReceiveAuthenticationChallenge, receivedCredential,
   27384         receivedRequestToContinueWithoutCredential, and receivedCancellation.
   27385         <https://bugs.webkit.org/show_bug.cgi?id=18468>
   27386 
   27387         * platform/network/ResourceHandle.h:  
   27388         * platform/network/curl/ResourceHandleCurl.cpp:
   27389         (WebCore::ResourceHandle::didReceiveAuthenticationChallenge):
   27390         (WebCore::ResourceHandle::receivedCredential):
   27391         (WebCore::ResourceHandle::receivedRequestToContinueWithoutCredential):
   27392         (WebCore::ResourceHandle::receivedCancellation):
   27393 
   27394 2008-04-23  Dan Bernstein  <mitz (a] apple.com>
   27395 
   27396         Reviewed by Darin Adler.
   27397 
   27398         - fix a bug where moving forward in bidirectional text skips over the
   27399           position after the end of the line
   27400 
   27401         Test: editing/selection/move-past-trailing-space.html
   27402 
   27403         * dom/Position.cpp:
   27404         (WebCore::Position::upstream): Changed the logic for identifying when a
   27405         position is after the last character of a text box of a text node that
   27406         continues on the next line, to make it work correctly when boxes are not
   27407         laid out in logical order.
   27408         (WebCore::Position::downstream): Ditto.
   27409 
   27410 2008-04-23  Brad Hughes  <bhughes (a] trolltech.com>
   27411 
   27412         Reviewed by Simon.
   27413 
   27414         Fix release build with the intel compiler
   27415 
   27416         Intel compiler can't compile qtwebkit with -O2 or -O1, so we're left with -O0
   27417 
   27418         * WebCore.pro:
   27419 
   27420 2008-04-22  Dan Bernstein  <mitz (a] apple.com>
   27421 
   27422         Reviewed by Anders Carlsson.
   27423 
   27424         - remove unused calls to Position::upstream()
   27425 
   27426         * editing/InsertLineBreakCommand.cpp:
   27427         (WebCore::InsertLineBreakCommand::insertNodeAfterPosition):
   27428         (WebCore::InsertLineBreakCommand::insertNodeBeforePosition):
   27429 
   27430 2008-04-22  Jon Honeycutt  <jhoneycutt (a] apple.com>
   27431 
   27432         Reviewed by Sam.
   27433 
   27434         Add a method to query which modifier keys the platform uses for access
   27435         key actions.
   27436 
   27437         * page/EventHandler.cpp:
   27438         (WebCore::EventHandler::handleAccessKey): Bitwise and the event's
   27439         modifier keys with the platform's access key modifier mask to determine
   27440         whether this event can perform an access key action.
   27441         * page/EventHandler.h: Added s_accessKeyModifiers, a platform-defined
   27442         mask of modifier keys used for access key actions, and a getter.
   27443         * page/mac/EventHandlerMac.mm: Use PlatformKeyboardEvent::CtrlKey for
   27444         access key actions.
   27445         * page/qt/EventHandlerQt.cpp: Same.
   27446         * page/gtk/EventHandlerGtk.cpp: Use AltKey.
   27447         * page/win/EventHandlerWin.cpp: Same.
   27448         * page/wx/EventHandlerWx.cpp: Same.
   27449         * platform/PlatformKeyboardEvent.h: Added an enum, ModifierKey.
   27450         (WebCore::PlatformKeyboardEvent::):
   27451         (WebCore::PlatformKeyboardEvent::modifiers): Return which modifier keys
   27452         were active, a combination of ModifierKey values.
   27453 
   27454 2008-04-22  Sam Weinig  <sam (a] webkit.org>
   27455 
   27456         Reviewed by Maciej Stachowiak.
   27457 
   27458         Make the KJSProxy and FrameLoader member variables instead of pointers
   27459         in FramePrivate in a bid to do a little clean up before the last of the
   27460         split window patches.  Also, make the KJSProxy not lazily created, as the
   27461         real benefit comes from lazily creating the JSDOMWindowWrapper, which we
   27462         still do.
   27463 
   27464         * page/Frame.cpp:
   27465         (WebCore::Frame::~Frame):
   27466         (WebCore::Frame::init):
   27467         (WebCore::Frame::loader):
   27468         (WebCore::Frame::scriptProxy):
   27469         (WebCore::Frame::document):
   27470         (WebCore::Frame::setDocument):
   27471         (WebCore::Frame::clearScriptProxy):
   27472         (WebCore::Frame::pageDestroyed):
   27473         (WebCore::FramePrivate::FramePrivate):
   27474         (WebCore::FramePrivate::~FramePrivate):
   27475         * page/FramePrivate.h:
   27476 
   27477 2008-04-22  Anatoli Papirovski  <apapirovski (a] mac.com>
   27478 
   27479         Reviewed by Dan Bernstein.
   27480 
   27481         - fix https://bugs.webkit.org/show_bug.cgi?id=18584
   27482         border-color, outline-color, column-color, -webkit-text-stroke-color,
   27483         and -webkit-text-fill-color inheritance to correctly use parent's color
   27484         if the parent's corresponding (border, outline, etc.)-color property
   27485         wasn't set.
   27486 
   27487         Test: fast/borders/border-color-inherit.html
   27488 
   27489         * css/CSSStyleSelector.cpp:
   27490         (WebCore::CSSStyleSelector::applyProperty):
   27491 
   27492 2008-04-22  Alp Toker  <alp (a] nuanti.com>
   27493 
   27494         Rubber-stamped by Dave Hyatt.
   27495 
   27496         Move GraphicsContext::clipToImageBuffer() notImplemented() stub to
   27497         GraphicsContextCairo.
   27498 
   27499         * platform/graphics/GraphicsContext.cpp:
   27500         * platform/graphics/cairo/GraphicsContextCairo.cpp:
   27501         (WebCore::GraphicsContext::clipToImageBuffer):
   27502 
   27503 2008-04-22  David Hyatt  <hyatt (a] apple.com>
   27504 
   27505         Add support for mask-composite to match background-composite.
   27506 
   27507         Reviewed by Sam Weinig
   27508 
   27509         Added fast/backgrounds/mask-composite.html
   27510 
   27511         * css/CSSComputedStyleDeclaration.cpp:
   27512         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
   27513         * css/CSSParser.cpp:
   27514         (WebCore::CSSParser::parseValue):
   27515         (WebCore::CSSParser::parseFillProperty):
   27516         * css/CSSPropertyNames.in:
   27517         * css/CSSStyleSelector.cpp:
   27518         (WebCore::CSSStyleSelector::applyProperty):
   27519         * rendering/InlineFlowBox.cpp:
   27520         (WebCore::InlineFlowBox::paintMask):
   27521 
   27522 2008-04-22  David Hyatt  <hyatt (a] apple.com>
   27523 
   27524         Fix for bug 18688, background-color stopped painting on inlines.  Fix a virtual function
   27525         misnaming that led to the derived class not getting called properly.
   27526 
   27527         Reviewed by Mark Rowe
   27528 
   27529         * ChangeLog:
   27530         * rendering/InlineFlowBox.cpp:
   27531         (WebCore::InlineFlowBox::paintFillLayer):
   27532         * rendering/RenderObject.h:
   27533         (WebCore::RenderObject::paintFillLayerExtended):
   27534 
   27535 2008-04-22  Brady Eidson  <beidson (a] apple.com>
   27536 
   27537         Reviewed by Sam Weinig
   27538 
   27539         <rdar://problem/5733282> and https://bugs.webkit.org/show_bug.cgi?id=18680
   27540         Always loads default shortcut icon URL when an external <script> is referenced before the icon URL is set.
   27541 
   27542         * dom/Document.cpp:
   27543         (WebCore::Document::implicitClose): Call FrameLoader->startIconLoader() here, when the document is
   27544           finished parsing.
   27545 
   27546         * loader/FrameLoader.cpp:
   27547         (WebCore::FrameLoader::endIfNotLoadingMainResource):  Don't start the icon load here, when the
   27548           document is finished parsing.  This was often too early, as document parsing may be blocked
   27549           on an external script and therefore the correct iconURL is not set yet.
   27550           The isLoadingFromCachedPage() check was when we started the icon load based on *loading* instead parsing,
   27551           and is now irrelevant.
   27552         * loader/FrameLoader.h:  Make startIconLoader() public
   27553 
   27554 2008-04-22  Antti Koivisto  <antti (a] apple.com>
   27555 
   27556         Reviewed by Oliver.
   27557 
   27558         Support keyPoints attribute of <animateMotion>.
   27559         
   27560         Tested by SVG test suite test
   27561         animate-elem-33-t.svg
   27562 
   27563         * svg/SVGAnimateMotionElement.cpp:
   27564         (WebCore::SVGAnimateMotionElement::parseMappedAttribute):
   27565         * svg/SVGAnimationElement.cpp:
   27566         (WebCore::parseKeyTimes):
   27567         (WebCore::SVGAnimationElement::parseMappedAttribute):
   27568         (WebCore::SVGAnimationElement::calculatePercentForSpline):
   27569         (WebCore::SVGAnimationElement::calculatePercentFromKeyPoints):
   27570         (WebCore::SVGAnimationElement::currentValuesFromKeyPoints):
   27571         (WebCore::SVGAnimationElement::currentValuesForValuesAnimation):
   27572         (WebCore::SVGAnimationElement::startedActiveInterval):
   27573         (WebCore::SVGAnimationElement::updateAnimation):
   27574         * svg/SVGAnimationElement.h:
   27575 
   27576 2008-04-22  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   27577 
   27578         Unreviewed build fix.
   27579 
   27580         Update WebKit.qrc to catch up with the addition and removal of images
   27581         from page/inspector/Images in recent commits.
   27582 
   27583         * page/inspector/WebKit.qrc:
   27584 
   27585 2008-04-22  David Hyatt  <hyatt (a] apple.com>
   27586 
   27587         Fix for <rdar://5589634>.
   27588 
   27589         Implement CSS alpha masks.  The syntax is very similar to that used for backgrounds.  Multiple mask images
   27590         can be specified, and each one can be tiled, positioned, etc.  The following new properties have been
   27591         added (all of which are analogous to their background-* counterparts).
   27592 
   27593         mask, mask-image, mask-clip, mask-origin, mask-repeat, mask-attachment, mask-position
   27594 
   27595         The alpha values in the final composite image are used to determine how the mask applies (alpha of 1 = show,
   27596         alpha of 0 = don't show).
   27597 
   27598         SVG images and CSS gradients can also be used as masks.
   27599 
   27600         Reviewed by Dan
   27601 
   27602         Added fast/backgrounds/repeat/mask-negative-offset-repeat.html, fast/backgrounds/svg-as-mask.html
   27603 
   27604         * css/CSSMutableStyleDeclaration.cpp:
   27605         (WebCore::CSSMutableStyleDeclaration::getPropertyValue):
   27606         (WebCore::initShorthandMap):
   27607         * css/CSSParser.cpp:
   27608         (WebCore::CSSParser::parseFillProperty):
   27609         (WebCore::CSSParser::parseTransformOrigin):
   27610         * css/CSSStyleSelector.cpp:
   27611         (WebCore::CSSStyleSelector::adjustRenderStyle):
   27612         (WebCore::CSSStyleSelector::applyProperty):
   27613         * rendering/InlineFlowBox.cpp:
   27614         (WebCore::InlineFlowBox::paint):
   27615         (WebCore::InlineFlowBox::paintFillLayers):
   27616         (WebCore::InlineFlowBox::paintFillLayer):
   27617         (WebCore::InlineFlowBox::paintBoxDecorations):
   27618         (WebCore::InlineFlowBox::paintMask):
   27619         * rendering/InlineFlowBox.h:
   27620         * rendering/RenderBlock.cpp:
   27621         (WebCore::RenderBlock::paint):
   27622         (WebCore::RenderBlock::paintObject):
   27623         * rendering/RenderBox.cpp:
   27624         (WebCore::RenderBox::paintRootBoxDecorations):
   27625         (WebCore::RenderBox::paintBoxDecorations):
   27626         (WebCore::RenderBox::paintMask):
   27627         (WebCore::RenderBox::paintFillLayers):
   27628         (WebCore::RenderBox::paintFillLayer):
   27629         (WebCore::RenderBox::paintFillLayerExtended):
   27630         * rendering/RenderBox.h:
   27631         * rendering/RenderFieldset.cpp:
   27632         (WebCore::RenderFieldset::paintBoxDecorations):
   27633         (WebCore::RenderFieldset::paintMask):
   27634         * rendering/RenderFieldset.h:
   27635         * rendering/RenderInline.cpp:
   27636         (WebCore::RenderInline::requiresLayer):
   27637         * rendering/RenderLayer.cpp:
   27638         (WebCore::RenderLayer::isTransparent):
   27639         (WebCore::RenderLayer::paintLayer):
   27640         * rendering/RenderObject.cpp:
   27641         (WebCore::RenderObject::requiresLayer):
   27642         (WebCore::mustRepaintFillLayers):
   27643         (WebCore::RenderObject::mustRepaintBackgroundOrBorder):
   27644         (WebCore::RenderObject::setStyle):
   27645         (WebCore::RenderObject::updateFillImages):
   27646         * rendering/RenderObject.h:
   27647         (WebCore::RenderObject::hasMask):
   27648         (WebCore::RenderObject::paintMask):
   27649         (WebCore::RenderObject::paintFillExtended):
   27650         * rendering/RenderReplaced.cpp:
   27651         (WebCore::RenderReplaced::paint):
   27652         * rendering/RenderStyle.cpp:
   27653         (WebCore::FillLayer::FillLayer):
   27654         (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
   27655         * rendering/RenderStyle.h:
   27656         (WebCore::FillLayer::initialFillComposite):
   27657         (WebCore::FillLayer::initialFillSize):
   27658         (WebCore::FillLayer::FillLayer):
   27659         (WebCore::RenderStyle::hasMask):
   27660         * rendering/RenderTable.cpp:
   27661         (WebCore::RenderTable::paint):
   27662         (WebCore::RenderTable::paintBoxDecorations):
   27663         (WebCore::RenderTable::paintMask):
   27664         * rendering/RenderTable.h:
   27665         * rendering/RenderTableCell.cpp:
   27666         (WebCore::RenderTableCell::requiresLayer):
   27667         (WebCore::RenderTableCell::paintBackgroundsBehindCell):
   27668         (WebCore::RenderTableCell::paintMask):
   27669         * rendering/RenderTableCell.h:
   27670         * rendering/RenderWidget.cpp:
   27671         (WebCore::RenderWidget::paint):
   27672         * svg/graphics/SVGImage.cpp:
   27673         (WebCore::SVGImage::draw):
   27674         (WebCore::SVGImage::dataChanged):
   27675 
   27676 2008-04-22  Sam Weinig  <sam (a] webkit.org>
   27677 
   27678         Reviewed by Geoffrey Garen.
   27679 
   27680         Make DOMAbstractView have a weak reference to the Frame instead of ref'ing
   27681         the DOMWindow.
   27682 
   27683         To ensure that the WindowScriptObject (which is a DOMAbstractView) stays valid
   27684         after a navigation once the split window is completed, the DOMAbstractView must
   27685         wrap the Frame instead of a DOMWindow since the DOMWindow will change.
   27686 
   27687         * WebCore.xcodeproj/project.pbxproj:
   27688         * bindings/objc/DOMAbstractView.mm: Added.
   27689         (-[DOMAbstractView dealloc]):
   27690         (-[DOMAbstractView finalize]):
   27691         (-[DOMAbstractView document]):
   27692         (-[DOMAbstractView _disconnectFrame]):
   27693         (-[DOMAbstractView WebCore::]):
   27694         (-[DOMAbstractView _initWithFrame:WebCore::]):
   27695         (+[DOMAbstractView _wrapAbstractView:WebCore::]):
   27696         Add custom implementation to implement weak reference semantics.
   27697 
   27698         * bindings/objc/DOMAbstractViewFrame.h: Added.
   27699         Declare the [DOMAbstractView _disconectFrame] selector.
   27700         * bindings/objc/DOMInternal.h:
   27701         Remove DOMRGBColor Internal category since it is now generated.
   27702 
   27703         * bindings/objc/DOMUtility.mm:
   27704         (KJS::createDOMWrapper):
   27705         Don't ever create a DOMAbstractView from a JSDOMWindow, only from JSDOMWindowWrapper.
   27706 
   27707         * bindings/scripts/CodeGeneratorObjC.pm:
   27708         Generate internal header for IDLs that want custom implementations.
   27709 
   27710         * css/RGBColor.idl:
   27711         Make this a PODType as it really is in the implementation.
   27712 
   27713         * page/AbstractView.idl:
   27714         This now needs a custom objective-c binding implementation.
   27715 
   27716         * page/Frame.cpp:
   27717         (WebCore::Frame::~Frame):
   27718         disconnect the weak frame reference in the WindowScriptObject.
   27719 
   27720         * page/Frame.h:
   27721         * page/gtk/FrameGtk.cpp:
   27722         (WebCore::Frame::disconnectPlatformScriptObjects): Dummy implementation.
   27723         * page/mac/FrameMac.mm:
   27724         (WebCore::Frame::windowScriptObject): ASSERT that the windowScriptObject is a DOMAbstractView.
   27725         (WebCore::Frame::disconnectPlatformScriptObjects): Disconnect the frame pointer from the windowScriptObject.
   27726         * page/qt/FrameQt.cpp:
   27727         (WebCore::Frame::disconnectPlatformScriptObjects): Dummy implementation.
   27728         * page/win/FrameWin.cpp:
   27729         (WebCore::Frame::disconnectPlatformScriptObjects): Ditto.
   27730 
   27731 2008-04-22  Dan Bernstein  <mitz (a] apple.com>
   27732 
   27733         Reviewed by Sam Weinig.
   27734 
   27735         - preparation for https://bugs.webkit.org/show_bug.cgi?id=3729
   27736           <rdar://problem/4036353> REGRESSION: arrow keys move insertion bar backwards in RTL text
   27737 
   27738         * rendering/bidi.cpp:
   27739         (WebCore::RenderBlock::layoutInlineChildren): Make sure to give the
   27740         trailing white space a bidi level consistent with its position.
   27741 
   27742 2008-04-22  Timothy Hatcher  <timothy (a] apple.com>
   27743 
   27744         Remove many unused Web Inspector images.
   27745 
   27746         Rubber-stamped by Adam Roben and Sam Weinig.
   27747 
   27748         * page/inspector/Images/attachedShadow.png: Removed.
   27749         * page/inspector/Images/backNormal.png: Removed.
   27750         * page/inspector/Images/bottomShadow.png: Removed.
   27751         * page/inspector/Images/breadcrumbBackground.png: Removed.
   27752         * page/inspector/Images/console.png: Removed.
   27753         * page/inspector/Images/databaseBrowserViewNormal.png: Removed.
   27754         * page/inspector/Images/databaseBrowserViewNormalSelected.png: Removed.
   27755         * page/inspector/Images/databaseBrowserViewSmall.png: Removed.
   27756         * page/inspector/Images/databaseBrowserViewSmallSelected.png: Removed.
   27757         * page/inspector/Images/databaseQueryViewNormal.png: Removed.
   27758         * page/inspector/Images/databaseQueryViewNormalSelected.png: Removed.
   27759         * page/inspector/Images/databaseQueryViewSmall.png: Removed.
   27760         * page/inspector/Images/databaseQueryViewSmallSelected.png: Removed.
   27761         * page/inspector/Images/disclosureDownPressed.png: Removed.
   27762         * page/inspector/Images/disclosureRightDown.png: Removed.
   27763         * page/inspector/Images/disclosureRightPressed.png: Removed.
   27764         * page/inspector/Images/document.png: Removed.
   27765         * page/inspector/Images/domViewNormal.png: Removed.
   27766         * page/inspector/Images/domViewNormalSelected.png: Removed.
   27767         * page/inspector/Images/domViewSmall.png: Removed.
   27768         * page/inspector/Images/domViewSmallSelected.png: Removed.
   27769         * page/inspector/Images/downTriangle.png: Removed.
   27770         * page/inspector/Images/folder.png: Removed.
   27771         * page/inspector/Images/forwardNormal.png: Removed.
   27772         * page/inspector/Images/gradient.png: Removed.
   27773         * page/inspector/Images/gradientHighlight.png: Removed.
   27774         * page/inspector/Images/gradientHighlightBottom.png: Removed.
   27775         * page/inspector/Images/hideStatusWidget.png: Removed.
   27776         * page/inspector/Images/hideStatusWidgetPressed.png: Removed.
   27777         * page/inspector/Images/network.png: Removed.
   27778         * page/inspector/Images/plainDocument.png: Removed.
   27779         * page/inspector/Images/popupArrows.png: Removed.
   27780         * page/inspector/Images/popupArrowsBlack.png: Removed.
   27781         * page/inspector/Images/reload.png: Removed.
   27782         * page/inspector/Images/rightTriangle.png: Removed.
   27783         * page/inspector/Images/showStatusWidget.png: Removed.
   27784         * page/inspector/Images/showStatusWidgetPressed.png: Removed.
   27785         * page/inspector/Images/sidbarItemBackground.png: Removed.
   27786         * page/inspector/Images/sidebarActionWidget.png: Removed.
   27787         * page/inspector/Images/sidebarActionWidgetPressed.png: Removed.
   27788         * page/inspector/Images/sidebarAttachWidget.png: Removed.
   27789         * page/inspector/Images/sidebarAttachWidgetPressed.png: Removed.
   27790         * page/inspector/Images/sidebarDetachWidget.png: Removed.
   27791         * page/inspector/Images/sidebarDetachWidgetPressed.png: Removed.
   27792         * page/inspector/Images/sidebarResizeWidget.png: Removed.
   27793         * page/inspector/Images/sidebarStatusAreaBackground.png: Removed.
   27794         * page/inspector/Images/sourceViewNormal.png: Removed.
   27795         * page/inspector/Images/sourceViewNormalSelected.png: Removed.
   27796         * page/inspector/Images/sourceViewSmall.png: Removed.
   27797         * page/inspector/Images/sourceViewSmallSelected.png: Removed.
   27798         * page/inspector/Images/tab.png: Removed.
   27799         * page/inspector/Images/tabSelected.png: Removed.
   27800         * page/inspector/Images/toggleDown.png: Removed.
   27801         * page/inspector/Images/toggleUp.png: Removed.
   27802         * page/inspector/Images/toolbarButtonNormal.png: Removed.
   27803         * page/inspector/Images/toolbarButtonNormalInactive.png: Removed.
   27804         * page/inspector/Images/toolbarButtonNormalPressed.png: Removed.
   27805         * page/inspector/Images/toolbarButtonNormalSelected.png: Removed.
   27806         * page/inspector/Images/toolbarButtonNormalSelectedInactive.png: Removed.
   27807         * page/inspector/Images/toolbarButtonSmall.png: Removed.
   27808         * page/inspector/Images/toolbarButtonSmallInactive.png: Removed.
   27809         * page/inspector/Images/toolbarButtonSmallPressed.png: Removed.
   27810         * page/inspector/Images/toolbarButtonSmallSelected.png: Removed.
   27811         * page/inspector/Images/toolbarButtonSmallSelectedInactive.png: Removed.
   27812         * page/inspector/Images/toolbarPopupButtonNormal.png: Removed.
   27813         * page/inspector/Images/toolbarPopupButtonNormalInactive.png: Removed.
   27814         * page/inspector/Images/toolbarPopupButtonNormalPressed.png: Removed.
   27815         * page/inspector/Images/toolbarPopupButtonSmall.png: Removed.
   27816         * page/inspector/Images/toolbarPopupButtonSmallInactive.png: Removed.
   27817         * page/inspector/Images/toolbarPopupButtonSmallPressed.png: Removed.
   27818         * page/inspector/Images/toolbarSplitButtonDividerNormal.png: Removed.
   27819         * page/inspector/Images/toolbarSplitButtonDividerNormalInactive.png: Removed.
   27820         * page/inspector/Images/toolbarSplitButtonDividerSmall.png: Removed.
   27821         * page/inspector/Images/toolbarSplitButtonDividerSmallInactive.png: Removed.
   27822         * page/inspector/Images/treeLeftTriangleBlack.png: Removed.
   27823 
   27824 2008-04-22  Anders Carlsson  <andersca (a] apple.com>
   27825 
   27826         Reviewed by Darin.
   27827 
   27828         Add NPN_Construct and NPN_PluginThreadAsyncCall declarations.
   27829 
   27830         * bridge/npapi.h:
   27831         * bridge/npruntime.h:
   27832         * plugins/npfunctions.h:
   27833 
   27834 2008-04-22  Alice Liu  <alice.liu (a] apple.com>
   27835 
   27836         Reviewed by John Sullivan and Adam Roben.
   27837 
   27838         Test: fast/events/tabindex-focus-chain.html
   27839 
   27840         * dom/Document.cpp:
   27841         (WebCore::Document::nextFocusableNode):
   27842         (WebCore::Document::previousFocusableNode):
   27843         If the focused node has been removed from the normal tabbing order,
   27844         advancing focus from this node should advance to the next focusable
   27845         node in tree order, and not start over at the beginning of the focus
   27846         chain. 
   27847 
   27848 2008-04-22  Timothy Hatcher  <timothy (a] apple.com>
   27849 
   27850         Adds a debugger toggle button to the scripts status bar that will start
   27851         and stop debugging of the inspected page.
   27852 
   27853         Reviewed by Adam Roben.
   27854 
   27855         * English.lproj/InspectorLocalizedStrings.js: Adds the two new tooltip strings.
   27856         * page/InspectorController.cpp:
   27857         (WebCore::debuggerAttached): Call InspectorController::debuggerAttached.
   27858         (WebCore::InspectorController::InspectorController): Initialize
   27859         m_debuggerAttached to false.
   27860         (WebCore::InspectorController::windowScriptObjectAvailable): Add the debuggerAttached
   27861         property to the InspectorController class.
   27862         (WebCore::InspectorController::startDebuggingAndReloadInspectedPage):
   27863         Set m_debuggerAttached to true.
   27864         (WebCore::InspectorController::stopDebugging): Set m_debuggerAttached to false.
   27865         * page/InspectorController.h:
   27866         * page/inspector/Images/debuggingButtons.png: Added.
   27867         * page/inspector/ScriptsPanel.js:
   27868         (WebInspector.ScriptsPanel): Disable the pause button. Create the debugging
   27869         button and setup the id, className and event listener. Call reset.
   27870         (WebInspector.ScriptsPanel.prototype.get statusBarItems): Return an array
   27871         (WebInspector.ScriptsPanel.prototype.reset): Call _updateDebuggerButtons.
   27872         (WebInspector.ScriptsPanel.prototype._updateDebuggerButtons): Adjust the title of
   27873         the debugging button to match what will happen when clicked. Change the style class,
   27874         and toggle the disabled state of the pause button.
   27875         (WebInspector.ScriptsPanel.prototype._toggleDebugging): Start or stop debugging
   27876         depending on InspectorController.debuggerAttached().
   27877         * page/inspector/inspector.css: Added style rules for the debugger button.
   27878 
   27879 2008-04-21  Adam Roben  <aroben (a] apple.com>
   27880 
   27881         Change PlatformWheelEvent to use GET_WHEEL_DELTA_WPARAM
   27882 
   27883         Reviewed by Dan Bernstein.
   27884 
   27885         * platform/win/WheelEventWin.cpp:
   27886         (WebCore::PlatformWheelEvent::PlatformWheelEvent): Use
   27887         GET_WHEEL_DELTA_WPARAM, which is documented way of getting the wheel
   27888         delta (it is equivalent to what we were previously doing, however).
   27889 
   27890 2008-04-22  Simon Hausmann  <hausmann (a] webkit.org>
   27891 
   27892         Qt build fix.
   27893 
   27894         Adjust the Qt resource file to removed image files.
   27895 
   27896         * page/inspector/WebKit.qrc:
   27897 
   27898 2008-04-21  Timothy Hatcher  <timothy (a] apple.com>
   27899 
   27900         Use CSS gradients to replace many image files in the Web Inspector.
   27901 
   27902         Rubber-stamped by Adam Roben.
   27903 
   27904         * page/inspector/Images/alternateTableRows.png: Removed.
   27905         * page/inspector/Images/darkShadow.png: Removed.
   27906         * page/inspector/Images/paneHeader.png: Removed.
   27907         * page/inspector/Images/paneHeaderActive.png: Removed.
   27908         * page/inspector/Images/sidebarSelection.png: Removed.
   27909         * page/inspector/Images/sidebarSelectionBackground.png: Removed.
   27910         * page/inspector/Images/sidebarSelectionBackgroundFocused.png: Removed.
   27911         * page/inspector/Images/sidebarSelectionBackgroundInactive.png: Removed.
   27912         * page/inspector/Images/sidebarSelectionBlurred.png: Removed.
   27913         * page/inspector/Images/sidebarSelectionBlurredTall.png: Removed.
   27914         * page/inspector/Images/sidebarSelectionGray.png: Removed.
   27915         * page/inspector/Images/sidebarSelectionGrayTall.png: Removed.
   27916         * page/inspector/Images/sidebarSelectionTall.png: Removed.
   27917         * page/inspector/Images/sidebarSmallSelectionBackground.png: Removed.
   27918         * page/inspector/Images/sidebarSmallSelectionBackgroundFocused.png: Removed.
   27919         * page/inspector/Images/sidebarSmallSelectionBackgroundInactive.png: Removed.
   27920         * page/inspector/Images/toolbarBackground.png: Removed.
   27921         * page/inspector/Images/toolbarBackgroundInactive.png: Removed.
   27922         * page/inspector/inspector.css:
   27923 
   27924 2008-04-22  Andre Poenitz  <andre.poenitz (a] trolltech.com>
   27925 
   27926         Reviewed by Simon.
   27927 
   27928         Remove compiler warnings on string literals used to construct QStrings
   27929         in webkit.
   27930 
   27931         * bridge/qt/qt_instance.cpp:
   27932         (KJS::Bindings::QtField::valueFromInstance):
   27933         (KJS::Bindings::QtField::setValueToInstance):
   27934         * bridge/qt/qt_runtime.cpp:
   27935         (KJS::Bindings::convertValueToQVariant):
   27936         (KJS::Bindings::QtRuntimeConnectionMethod::callAsFunction):
   27937 
   27938 2008-04-22  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   27939 
   27940         Reviewed by Simon.
   27941 
   27942         Fall back to last path component for suggested filename if the HTTP content disposition is not set.
   27943 
   27944         * platform/network/qt/QNetworkReplyHandler.cpp:
   27945         (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
   27946 
   27947 2008-04-22  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   27948 
   27949         Reviewed by Simon.
   27950 
   27951         Implemented the generation of the title string for images.
   27952 
   27953         * platform/qt/Localizations.cpp:
   27954 
   27955 2008-04-22  Simon Hausmann  <hausmann (a] webkit.org>
   27956 
   27957         Qt build fix.
   27958 
   27959         * platform/qt/RenderThemeQt.cpp: Adjust isControlStyled signature to
   27960         the signature in the base class.
   27961         * platform/qt/RenderThemeQt.h: Ditto.
   27962 
   27963 2008-04-19  Jon Honeycutt  <jhoneycutt (a] apple.com>
   27964 
   27965         Reviewed by Darin.
   27966 
   27967         Add a method to get the AccessibilityObject's access key,
   27968 
   27969         * page/AccessibilityObject.cpp:
   27970         (WebCore::AccessibilityObject::accessKey): Added; returns the object's
   27971         access key attribute.
   27972         * page/AccessibilityObject.h: Added declaration for accessKey().
   27973 
   27974 2008-04-21  Sam Weinig  <sam (a] webkit.org>
   27975 
   27976         Reviewed by Anders Carlsson.
   27977 
   27978         Fix numerous crashing tests.
   27979 
   27980         * html/HTMLHtmlElement.cpp:
   27981         (WebCore::HTMLHtmlElement::insertedIntoDocument): Null check document->frame().
   27982 
   27983 2008-04-21  Dan Bernstein  <mitz (a] apple.com>
   27984 
   27985         Reviewed by Darin Adler.
   27986 
   27987         Tests: fast/media/implicit-media-all.html
   27988                fast/media/monochrome.html
   27989 
   27990         - allow implicit "all" media in media queries
   27991         - use a value of 0 for the monochrome media feature on color displays
   27992 
   27993         * css/CSSGrammar.y:
   27994         * css/CSSParser.cpp:
   27995         (WebCore::CSSParser::createFloatingMediaQuery):
   27996         * css/CSSParser.h:
   27997         * css/MediaQueryEvaluator.cpp:
   27998         (WebCore::monochromeMediaFeatureEval):
   27999 
   28000 2008-04-21  Brady Eidson  <beidson (a] apple.com>
   28001 
   28002         Rockingly reviewed by Adele
   28003 
   28004         Small StorageArea cleanups
   28005 
   28006         * storage/SessionStorageArea.cpp:
   28007         (WebCore::SessionStorageArea::copy): Pass "this" instead of the StorageMap belonging to this
   28008         (WebCore::SessionStorageArea::SessionStorageArea):
   28009         * storage/SessionStorageArea.h:
   28010 
   28011         * storage/StorageArea.cpp:  Changed to not expose the StorageMap at all - it's dangerous to expose
   28012           it since we rely explicitly on its ref-count
   28013         (WebCore::StorageArea::StorageArea): Take another StorageArea as the c'tor argument and get the 
   28014           StorageMap from that.
   28015         (WebCore::StorageArea::setItem):  The previous comment/code here was bogus.  All JS objects passed in
   28016           to this API are stringified, so there's no such thing as "null" for setItem()
   28017         * storage/StorageArea.h:
   28018 
   28019 2008-04-21  Justin Garcia  <justin.garcia (a] apple.com>
   28020 
   28021         Reviewed by John Sullivan.
   28022 
   28023         <rdar://problem/5803706> Pressing return at the end of a header doesn't break out of header (17460)
   28024         
   28025         If we're doing InsertParagraphSeparator at the end of a header element, do not clone it.
   28026         Renamed m_useDefaultParagraphElement to m_mustUseDefaultParagraphElement, since now,
   28027         when it is false, that does not necessarily mean that a default paragraph element
   28028         will not be used.  Callers that passed false for this argument are OK with this.
   28029 
   28030         * editing/InsertParagraphSeparatorCommand.cpp:
   28031         (WebCore::InsertParagraphSeparatorCommand::InsertParagraphSeparatorCommand): 
   28032         (WebCore::InsertParagraphSeparatorCommand::shouldUseDefaultParagraphElement):
   28033         (WebCore::InsertParagraphSeparatorCommand::doApply):
   28034         * editing/InsertParagraphSeparatorCommand.h:
   28035 
   28036 2008-04-21  Anders Carlsson  <andersca (a] apple.com>
   28037 
   28038         Reviewed by Adam.
   28039 
   28040         Perform cache selection. If a main resource has a URL that exists in a cache, load it from there.
   28041         
   28042         * html/HTMLAttributeNames.in:
   28043         Add manifest attribute.
   28044         
   28045         * html/HTMLHtmlElement.cpp:
   28046         (WebCore::HTMLHtmlElement::insertedIntoDocument):
   28047         * html/HTMLHtmlElement.h:
   28048         Perform cache selection.
   28049         
   28050         * loader/MainResourceLoader.cpp:
   28051         (WebCore::MainResourceLoader::load):
   28052         * loader/appcache/ApplicationCacheGroup.cpp:
   28053         (WebCore::cacheHostSet):
   28054         (WebCore::urlHostHash):
   28055         (WebCore::ApplicationCacheGroup::cacheForRequest):
   28056         (WebCore::ApplicationCacheGroup::selectCache):
   28057         * loader/appcache/ApplicationCacheGroup.h:
   28058         * platform/KURL.h:
   28059         (WebCore::KURL::hostStart):
   28060         (WebCore::KURL::hostEnd):
   28061 
   28062 2008-04-21  Mike Belshe  <mike (a] belshe.com>
   28063 
   28064         Reviewed by eseidel and darin.  Landed by eseidel.
   28065 
   28066         Fix broken optimization in createStrippingNullCharacters.
   28067 
   28068         * platform/text/StringImpl.cpp:
   28069         (WebCore::StringImpl::createStrippingNullCharacters):
   28070 
   28071 2008-04-21  David Hyatt  <hyatt (a] apple.com>
   28072 
   28073         Make the back end parsing of background properties generic.  Rename all the parsing functions from
   28074         background -> fill.
   28075 
   28076         Add a new set of properties for doing masks.  The code is now refactored so that the mask properties
   28077         and the background properties share parsing routines.
   28078 
   28079         Reviewed by Dan
   28080 
   28081         * css/CSSComputedStyleDeclaration.cpp:
   28082         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
   28083         * css/CSSParser.cpp:
   28084         (WebCore::CSSParser::parseValue):
   28085         (WebCore::CSSParser::addFillValue):
   28086         (WebCore::CSSParser::parseFillShorthand):
   28087         (WebCore::CSSParser::parseFillImage):
   28088         (WebCore::CSSParser::parseFillPositionXY):
   28089         (WebCore::CSSParser::parseFillPosition):
   28090         (WebCore::CSSParser::parseFillSize):
   28091         (WebCore::CSSParser::parseFillProperty):
   28092         (WebCore::CSSParser::parseTransformOrigin):
   28093         * css/CSSParser.h:
   28094         * css/CSSPropertyNames.in:
   28095         * css/CSSStyleSelector.cpp:
   28096         (WebCore::CSSStyleSelector::CSSStyleSelector):
   28097         (WebCore::CSSStyleSelector::mapFillAttachment):
   28098         (WebCore::CSSStyleSelector::mapFillClip):
   28099         (WebCore::CSSStyleSelector::mapFillComposite):
   28100         (WebCore::CSSStyleSelector::mapFillOrigin):
   28101         (WebCore::CSSStyleSelector::mapFillImage):
   28102         (WebCore::CSSStyleSelector::mapFillRepeat):
   28103         (WebCore::CSSStyleSelector::mapFillSize):
   28104         (WebCore::CSSStyleSelector::mapFillXPosition):
   28105         (WebCore::CSSStyleSelector::mapFillYPosition):
   28106         * rendering/RenderStyle.cpp:
   28107         (WebCore::FillLayer::FillLayer):
   28108         (WebCore::FillLayer::operator=):
   28109         (WebCore::FillLayer::operator==):
   28110         (WebCore::StyleBackgroundData::StyleBackgroundData):
   28111         (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
   28112         (WebCore::StyleRareNonInheritedData::operator==):
   28113         (WebCore::RenderStyle::diff):
   28114         * rendering/RenderStyle.h:
   28115         (WebCore::LengthSize::LengthSize):
   28116         (WebCore::FillLayer::type):
   28117         (WebCore::FillLayer::initialFillAttachment):
   28118         (WebCore::FillLayer::initialFillClip):
   28119         (WebCore::FillLayer::initialFillOrigin):
   28120         (WebCore::FillLayer::initialFillRepeat):
   28121         (WebCore::FillLayer::initialFillComposite):
   28122         (WebCore::FillLayer::initialFillSize):
   28123         (WebCore::FillLayer::initialFillXPosition):
   28124         (WebCore::FillLayer::initialFillYPosition):
   28125         (WebCore::FillLayer::initialFillImage):
   28126         (WebCore::RenderStyle::maskImage):
   28127         (WebCore::RenderStyle::maskRepeat):
   28128         (WebCore::RenderStyle::maskComposite):
   28129         (WebCore::RenderStyle::maskAttachment):
   28130         (WebCore::RenderStyle::maskClip):
   28131         (WebCore::RenderStyle::maskOrigin):
   28132         (WebCore::RenderStyle::maskXPosition):
   28133         (WebCore::RenderStyle::maskYPosition):
   28134         (WebCore::RenderStyle::maskSize):
   28135         (WebCore::RenderStyle::accessMaskLayers):
   28136         (WebCore::RenderStyle::maskLayers):
   28137         (WebCore::RenderStyle::clearBackgroundLayers):
   28138         (WebCore::RenderStyle::clearMaskLayers):
   28139         (WebCore::RenderStyle::inheritMaskLayers):
   28140 
   28141 2008-04-21  Timothy Hatcher  <timothy (a] apple.com>
   28142 
   28143         Fixes the issue were a Database view could still be visible after navigating to a new page.
   28144 
   28145         Reviewed by Darin Adler.
   28146 
   28147         * page/inspector/DatabasesPanel.js:
   28148         (WebInspector.DatabasesPanel.prototype.reset): Delete the _tableViews and _queryView properties
   28149         from all databases. Remove all the children from databaseViews.
   28150 
   28151 2008-04-21  Timothy Hatcher  <timothy (a] apple.com>
   28152 
   28153         Adds the ability to enter multi-line commands in the console by holding the
   28154         alt/option key when pressing enter/return.
   28155 
   28156         https://bugs.webkit.org/show_bug.cgi?id=18454
   28157 
   28158         Reviewed by Darin Adler.
   28159 
   28160         * page/inspector/Console.js:
   28161         (WebInspector.Console.prototype._enterKeyPressed): Return early if the
   28162         alt/option key is held when enter is pressed.
   28163         * page/inspector/inspector.css:
   28164         (.console-message-text): Added. Set white-space: pre-wrap.
   28165 
   28166 2008-04-21  Timothy Hatcher  <timothy (a] apple.com>
   28167 
   28168         Fixes the bug where the Database table names do not update when
   28169         running the CREATE TABLE or DROP TABLE queries. Also makes the
   28170         table names update every time the database is collapsed and expanded.
   28171 
   28172         https://bugs.webkit.org/show_bug.cgi?id=18453
   28173 
   28174         Reviewed by Darin Adler.
   28175 
   28176         * page/inspector/DatabasesPanel.js:
   28177         (WebInspector.DatabasesPanel.prototype.updateDatabaseTables):
   28178         Set shouldRefreshChildren to true on the Database's tree element.
   28179         The refreshChildren property was renamed to shouldRefreshChildren.
   28180         (WebInspector.DatabaseSidebarTreeElement.prototype.oncollapse):
   28181         Request a refresh after every collapse so the next expand will
   28182         have an updated table list.
   28183 
   28184 2008-04-21  Timothy Hatcher  <timothy (a] apple.com>
   28185 
   28186         Adds INDEX to the list of completion words for the Databases query view.
   28187 
   28188         https://bugs.webkit.org/show_bug.cgi?id=18452
   28189 
   28190         Reviewed by Darin Adler.
   28191 
   28192         * page/inspector/DatabaseQueryView.js:
   28193         (WebInspector.DatabaseQueryView.prototype.completions): Split up "CREATE TABLE "
   28194         and "DROP TABLE " into "CREATE ", "DROP ", "TABLE ". And added "INDEX ".
   28195 
   28196 2008-04-21  Timothy Hatcher  <timothy (a] apple.com>
   28197 
   28198         Adds the UI portions of the Scripts panel to the Web Inspector.
   28199         The Scripts panel has not been added to the toolbar yet.
   28200 
   28201         https://bugs.webkit.org/show_bug.cgi?id=18601
   28202 
   28203         Reviewed by Adam Roben.
   28204 
   28205         * English.lproj/InspectorLocalizedStrings.js: Changed "Show inherited properties"
   28206         to "Show inherited". Adds new strings for the Scripts' panel tooltips.
   28207         * page/inspector/BreakpointsSidebarPane.js: Added.
   28208         * page/inspector/CallStackSidebarPane.js: Added.
   28209         * page/inspector/Images/back.png: Added.
   28210         * page/inspector/Images/debuggerContinue.png: Added.
   28211         * page/inspector/Images/debuggerPause.png: Added.
   28212         * page/inspector/Images/debuggerStepInto.png: Added.
   28213         * page/inspector/Images/debuggerStepOut.png: Added.
   28214         * page/inspector/Images/debuggerStepOver.png: Added.
   28215         * page/inspector/Images/forward.png: Added.
   28216         * page/inspector/Images/statusbarResizerHorizontal.png: Added.
   28217         * page/inspector/PropertiesSection.js:
   28218         (WebInspector.PropertiesSection): Flip the order the subtile is appended
   28219         so it can float right in the CSS.
   28220         * page/inspector/ScriptsPanel.js: Added.
   28221         * page/inspector/StylesSidebarPane.js:
   28222         (WebInspector.StylePropertiesSection): Changed "Show inherited properties"
   28223         to "Show inherited".
   28224         * page/inspector/inspector.css: Added new CSS rules for the Scripts panel. 
   28225         Also changes the look of the section to match the mockup, this affects
   28226         Styles and Properties in Elements.
   28227         * page/inspector/inspector.html: Import new files.
   28228         * page/inspector/inspector.js:
   28229         (Preferences.minScriptsSidebarWidth): Added.
   28230 
   28231 2008-04-21  Kevin McCullough  <kmccullough (a] apple.com>
   28232 
   28233         Reviewed by Adam.
   28234 
   28235         <rdar://problem/5770054> JavaScript profiler (10928)
   28236         Took out debugging printing since we really want to hook into the
   28237         inspector and not to print to the terminal.
   28238 
   28239         * page/Console.cpp:
   28240         (WebCore::Console::profileEnd):
   28241 
   28242 2008-04-21  Sam Weinig  <sam (a] webkit.org>
   28243 
   28244         Reviewed by Alexey Proskuryakov.
   28245 
   28246         Fix up XMLHttpRequestProgressEvent.
   28247 
   28248         * bindings/js/JSEventCustom.cpp:
   28249         (WebCore::toJS):
   28250         * xml/XMLHttpRequestProgressEvent.cpp:
   28251         * xml/XMLHttpRequestProgressEvent.h:
   28252 
   28253 2008-04-21  Adam Roben  <aroben (a] apple.com>
   28254 
   28255         Fix Bug 18615: Crash in PluginPackage::hash
   28256 
   28257         <https://bugs.webkit.org/show_bug.cgi?id=18615>
   28258 
   28259         Reviewed by Anders Carlsson.
   28260 
   28261         * plugins/PluginDatabase.cpp:
   28262         (WebCore::PluginDatabase::refresh): Don't pass a null PluginPackage*
   28263         to add().
   28264 
   28265 2008-04-21  Anders Carlsson  <andersca (a] apple.com>
   28266 
   28267         Reviewed by Adam.
   28268 
   28269         Add cache group implementation.
   28270 
   28271         * loader/DocumentLoader.cpp:
   28272         (WebCore::DocumentLoader::scheduleApplicationCacheLoad):
   28273         * loader/appcache/ApplicationCache.cpp:
   28274         (WebCore::ApplicationCache::requestIsHTTPOrHTTPSGet):
   28275         (WebCore::ApplicationCache::resourceForRequest):
   28276         * loader/appcache/ApplicationCache.h:
   28277         * loader/appcache/ApplicationCacheGroup.cpp:
   28278         (WebCore::cacheGroupMap):
   28279         (WebCore::ApplicationCacheGroup::ApplicationCacheGroup):
   28280         (WebCore::ApplicationCacheGroup::selectCache):
   28281         (WebCore::ApplicationCacheGroup::selectCacheWithoutManifestURL):
   28282         (WebCore::ApplicationCacheGroup::finishedLoadingMainResource):
   28283         (WebCore::ApplicationCacheGroup::documentLoaderDestroyed):
   28284         (WebCore::ApplicationCacheGroup::cacheDestroyed):
   28285         (WebCore::ApplicationCacheGroup::update):
   28286         (WebCore::ApplicationCacheGroup::didReceiveResponse):
   28287         (WebCore::ApplicationCacheGroup::didReceiveData):
   28288         (WebCore::ApplicationCacheGroup::didFinishLoading):
   28289         (WebCore::ApplicationCacheGroup::didFail):
   28290         (WebCore::ApplicationCacheGroup::didReceiveManifestResponse):
   28291         (WebCore::ApplicationCacheGroup::didReceiveManifestData):
   28292         (WebCore::ApplicationCacheGroup::didFinishLoadingManifest):
   28293         (WebCore::ApplicationCacheGroup::cacheUpdateFailed):
   28294         (WebCore::ApplicationCacheGroup::didFailToLoadManifest):
   28295         (WebCore::ApplicationCacheGroup::checkIfLoadIsComplete):
   28296         (WebCore::ApplicationCacheGroup::startLoadingEntry):
   28297         (WebCore::ApplicationCacheGroup::addEntry):
   28298         (WebCore::ApplicationCacheGroup::associateDocumentLoaderWithCache):
   28299         (WebCore::ApplicationCacheGroup::callListenersOnAssociatedDocuments):
   28300         (WebCore::ApplicationCacheGroup::callListeners):
   28301         * loader/appcache/ApplicationCacheGroup.h:
   28302         (WebCore::ApplicationCacheGroup::status):
   28303         (WebCore::ApplicationCacheGroup::newestCache):
   28304         * platform/KURL.h:
   28305         (WebCore::KURL::hostStart):
   28306         (WebCore::KURL::hostEnd):
   28307 
   28308 2008-04-21  David Hyatt  <hyatt (a] apple.com>
   28309 
   28310         Rename BackgroundLayer -> FillLayer in preparation for it being used for other types of fills.
   28311 
   28312         Reviewed by Dan
   28313 
   28314         * css/CSSComputedStyleDeclaration.cpp:
   28315         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
   28316         * css/CSSPrimitiveValueMappings.h:
   28317         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
   28318         (WebCore::CSSPrimitiveValue::operator EFillBox):
   28319         (WebCore::CSSPrimitiveValue::operator EFillRepeat):
   28320         * css/CSSStyleSelector.cpp:
   28321         (WebCore::CSSStyleSelector::applyProperty):
   28322         (WebCore::CSSStyleSelector::mapFillAttachment):
   28323         (WebCore::CSSStyleSelector::mapFillClip):
   28324         (WebCore::CSSStyleSelector::mapFillComposite):
   28325         (WebCore::CSSStyleSelector::mapFillOrigin):
   28326         (WebCore::CSSStyleSelector::mapFillImage):
   28327         (WebCore::CSSStyleSelector::mapFillRepeat):
   28328         (WebCore::CSSStyleSelector::mapFillSize):
   28329         (WebCore::CSSStyleSelector::mapFillXPosition):
   28330         (WebCore::CSSStyleSelector::mapFillYPosition):
   28331         (WebCore::CSSStyleSelector::mapTransitionDuration):
   28332         (WebCore::CSSStyleSelector::mapTransitionRepeatCount):
   28333         (WebCore::CSSStyleSelector::mapTransitionTimingFunction):
   28334         (WebCore::CSSStyleSelector::mapTransitionProperty):
   28335         * css/CSSStyleSelector.h:
   28336         * page/AnimationController.cpp:
   28337         (WebCore::ImplicitAnimation::ImplicitAnimation):
   28338         (WebCore::CompositeImplicitAnimation::animate):
   28339         * rendering/InlineFlowBox.cpp:
   28340         (WebCore::InlineFlowBox::paintBackgrounds):
   28341         (WebCore::InlineFlowBox::paintBackground):
   28342         * rendering/InlineFlowBox.h:
   28343         * rendering/RenderBox.cpp:
   28344         (WebCore::RenderBox::paintRootBoxDecorations):
   28345         (WebCore::RenderBox::paintBackgrounds):
   28346         (WebCore::RenderBox::paintBackground):
   28347         (WebCore::RenderBox::calculateBackgroundSize):
   28348         (WebCore::RenderBox::imageChanged):
   28349         (WebCore::RenderBox::calculateBackgroundImageGeometry):
   28350         (WebCore::RenderBox::paintBackgroundExtended):
   28351         * rendering/RenderBox.h:
   28352         * rendering/RenderObject.cpp:
   28353         (WebCore::RenderObject::mustRepaintBackgroundOrBorder):
   28354         (WebCore::RenderObject::updateBackgroundImages):
   28355         (WebCore::RenderObject::arenaDelete):
   28356         * rendering/RenderObject.h:
   28357         (WebCore::RenderObject::paintBackgroundExtended):
   28358         * rendering/RenderStyle.cpp:
   28359         (WebCore::FillLayer::FillLayer):
   28360         (WebCore::FillLayer::~FillLayer):
   28361         (WebCore::FillLayer::operator=):
   28362         (WebCore::FillLayer::operator==):
   28363         (WebCore::FillLayer::fillUnsetProperties):
   28364         (WebCore::FillLayer::cullEmptyLayers):
   28365         (WebCore::Transition::fillUnsetProperties):
   28366         * rendering/RenderStyle.h:
   28367         (WebCore::FillLayer::image):
   28368         (WebCore::FillLayer::xPosition):
   28369         (WebCore::FillLayer::yPosition):
   28370         (WebCore::FillLayer::attachment):
   28371         (WebCore::FillLayer::clip):
   28372         (WebCore::FillLayer::origin):
   28373         (WebCore::FillLayer::repeat):
   28374         (WebCore::FillLayer::composite):
   28375         (WebCore::FillLayer::size):
   28376         (WebCore::FillLayer::next):
   28377         (WebCore::FillLayer::isImageSet):
   28378         (WebCore::FillLayer::isXPositionSet):
   28379         (WebCore::FillLayer::isYPositionSet):
   28380         (WebCore::FillLayer::isAttachmentSet):
   28381         (WebCore::FillLayer::isClipSet):
   28382         (WebCore::FillLayer::isOriginSet):
   28383         (WebCore::FillLayer::isRepeatSet):
   28384         (WebCore::FillLayer::isCompositeSet):
   28385         (WebCore::FillLayer::isSizeSet):
   28386         (WebCore::FillLayer::setImage):
   28387         (WebCore::FillLayer::setXPosition):
   28388         (WebCore::FillLayer::setYPosition):
   28389         (WebCore::FillLayer::setAttachment):
   28390         (WebCore::FillLayer::setClip):
   28391         (WebCore::FillLayer::setOrigin):
   28392         (WebCore::FillLayer::setRepeat):
   28393         (WebCore::FillLayer::setComposite):
   28394         (WebCore::FillLayer::setSize):
   28395         (WebCore::FillLayer::clearImage):
   28396         (WebCore::FillLayer::clearXPosition):
   28397         (WebCore::FillLayer::clearYPosition):
   28398         (WebCore::FillLayer::clearAttachment):
   28399         (WebCore::FillLayer::clearClip):
   28400         (WebCore::FillLayer::clearOrigin):
   28401         (WebCore::FillLayer::clearRepeat):
   28402         (WebCore::FillLayer::clearComposite):
   28403         (WebCore::FillLayer::clearSize):
   28404         (WebCore::FillLayer::setNext):
   28405         (WebCore::FillLayer::operator!=):
   28406         (WebCore::FillLayer::hasFixedImage):
   28407         (WebCore::Transition::isDurationSet):
   28408         (WebCore::Transition::isRepeatCountSet):
   28409         (WebCore::Transition::isTimingFunctionSet):
   28410         (WebCore::Transition::isPropertySet):
   28411         (WebCore::Transition::clearDuration):
   28412         (WebCore::Transition::clearRepeatCount):
   28413         (WebCore::Transition::clearTimingFunction):
   28414         (WebCore::Transition::clearProperty):
   28415         (WebCore::Transition::duration):
   28416         (WebCore::Transition::repeatCount):
   28417         (WebCore::Transition::timingFunction):
   28418         (WebCore::Transition::property):
   28419         (WebCore::Transition::setDuration):
   28420         (WebCore::Transition::setRepeatCount):
   28421         (WebCore::Transition::setTimingFunction):
   28422         (WebCore::Transition::setProperty):
   28423         (WebCore::RenderStyle::NonInheritedFlags::operator==):
   28424         (WebCore::RenderStyle::setBitDefaults):
   28425         (WebCore::RenderStyle::backgroundRepeat):
   28426         (WebCore::RenderStyle::backgroundComposite):
   28427         (WebCore::RenderStyle::backgroundAttachment):
   28428         (WebCore::RenderStyle::backgroundClip):
   28429         (WebCore::RenderStyle::backgroundOrigin):
   28430         (WebCore::RenderStyle::backgroundSize):
   28431         (WebCore::RenderStyle::accessBackgroundLayers):
   28432         (WebCore::RenderStyle::backgroundLayers):
   28433         (WebCore::RenderStyle::clearBackgroundLayers):
   28434         (WebCore::RenderStyle::inheritBackgroundLayers):
   28435         (WebCore::RenderStyle::initialFillAttachment):
   28436         (WebCore::RenderStyle::initialFillClip):
   28437         (WebCore::RenderStyle::initialFillOrigin):
   28438         (WebCore::RenderStyle::initialFillRepeat):
   28439         (WebCore::RenderStyle::initialFillComposite):
   28440         (WebCore::RenderStyle::initialFillSize):
   28441         (WebCore::RenderStyle::initialFillXPosition):
   28442         (WebCore::RenderStyle::initialFillYPosition):
   28443         (WebCore::RenderStyle::initialFillImage):
   28444         (WebCore::RenderStyle::initialWhiteSpace):
   28445         (WebCore::RenderStyle::initialColor):
   28446         * rendering/RenderTableCell.cpp:
   28447         (WebCore::RenderTableCell::paintBackgroundsBehindCell):
   28448         * rendering/RenderTheme.cpp:
   28449         (WebCore::RenderTheme::adjustStyle):
   28450         (WebCore::RenderTheme::isControlStyled):
   28451         * rendering/RenderTheme.h:
   28452         * rendering/RenderThemeMac.h:
   28453         * rendering/RenderThemeMac.mm:
   28454         (WebCore::RenderThemeMac::isControlStyled):
   28455 
   28456 2008-04-21  Julien Chaffraix  <jchaffraix (a] webkit.org>
   28457 
   28458         Rubber-stamped by Ap.
   28459 
   28460         Add 2 explicit casts.
   28461         Fixes built on 64-bit machines (64-bit to 32-bit conversion warning).
   28462 
   28463         * xml/XMLHttpRequest.cpp:
   28464         (WebCore::XMLHttpRequest::dispatchProgressEvent):
   28465 
   28466 2008-04-21  Anders Carlsson  <andersca (a] apple.com>
   28467 
   28468         Reviewed by Adam.
   28469 
   28470         Make it possible to load resources from the cache. 
   28471         (Currently no documents are ever associated with a cache though.)
   28472         
   28473         * loader/DocumentLoader.cpp:
   28474         (WebCore::DocumentLoader::setPrimaryLoadComplete):
   28475         (WebCore::DocumentLoader::mainResourceApplicationCache):
   28476         (WebCore::DocumentLoader::scheduleApplicationCacheLoad):
   28477         * loader/DocumentLoader.h:
   28478         * loader/MainResourceLoader.cpp:
   28479         (WebCore::MainResourceLoader::didFinishLoading):
   28480         (WebCore::MainResourceLoader::load):
   28481         * loader/MainResourceLoader.h:
   28482         (WebCore::MainResourceLoader::applicationCache):
   28483         * loader/ResourceLoader.cpp:
   28484         (WebCore::ResourceLoader::ResourceLoader):
   28485         (WebCore::ResourceLoader::load):
   28486         * loader/ResourceLoader.h:
   28487         * loader/appcache/ApplicationCacheGroup.h:
   28488         (WebCore::ApplicationCacheGroup::finishedLoadingMainResource):
   28489 
   28490 2008-04-21  Darin Fisher  <darin (a] chromium.org>
   28491 
   28492         Reviewed by eseidel.  Landed by eseidel.
   28493 
   28494         Add FrameLoader::policyDocumentLoader, and change
   28495         provisionalDocumentLoader to have a const signature to be
   28496         consistent with documentLoader and activeDocumentLoader.
   28497 
   28498         * WebCore.base.exp:
   28499         * WebCore.order:
   28500         * loader/FrameLoader.cpp:
   28501         (WebCore::FrameLoader::policyDocumentLoader):
   28502         (WebCore::FrameLoader::provisionalDocumentLoader):
   28503         * loader/FrameLoader.h:
   28504 
   28505 2008-04-21  Julien Chaffraix  <jchaffraix (a] webkit.org>
   28506 
   28507         Not reviewed, add missing files in my previous commit.
   28508 
   28509         Test: http/tests/xmlhttprequest/infoOnProgressEvent.html
   28510 
   28511         * xml/XMLHttpRequestProgressEvent.cpp: Added.
   28512         (WebCore::XMLHttpRequestProgressEvent::XMLHttpRequestProgressEvent):
   28513         (WebCore::XMLHttpRequestProgressEvent::position):
   28514         (WebCore::XMLHttpRequestProgressEvent::totalSize):
   28515         * xml/XMLHttpRequestProgressEvent.h: Added.
   28516         (WebCore::XMLHttpRequestProgressEvent::isXMLHttpRequestProgressEvent):
   28517         (WebCore::XMLHttpRequestProgressEvent::isProgressEvent):
   28518         (WebCore::XMLHttpRequestProgressEvent::lengthComputable):
   28519         (WebCore::XMLHttpRequestProgressEvent::loaded):
   28520         (WebCore::XMLHttpRequestProgressEvent::total):
   28521         * xml/XMLHttpRequestProgressEvent.idl: Added.
   28522 
   28523 2008-04-21  Julien Chaffraix  <jchaffraix (a] webkit.org>
   28524 
   28525         Reviewed by Ap.
   28526 
   28527         Bug 13596: Implement .onprogress handler on XMLHttpRequest objects to support
   28528         progressive download content length information.
   28529 
   28530         - Add the onprogress attribute to XMLHttpRequest and the necessary bindings.
   28531 
   28532         - We use a custom event XMLHttpRequestProgressEvent that is derived from ProgressEvent
   28533          (as specified by the XHR2 specification) but also implement LSProgressEvent interface
   28534          (to be compliant with Firefox event).
   28535 
   28536         Test: http/tests/xmlhttprequest/infoOnProgressEvent.html
   28537 
   28538         * DerivedSources.make:
   28539         * GNUmakefile.am:
   28540         * WebCore.pro:
   28541         * WebCore.vcproj/WebCore.vcproj:
   28542         * WebCore.xcodeproj/project.pbxproj:
   28543         * WebCoreSources.bkl:
   28544         * bindings/js/JSEventCustom.cpp:
   28545         (WebCore::toJS):
   28546         * bindings/js/JSXMLHttpRequestCustom.cpp:
   28547         (WebCore::JSXMLHttpRequest::mark):
   28548         (WebCore::JSXMLHttpRequest::onprogress):
   28549         (WebCore::JSXMLHttpRequest::setOnprogress):
   28550         * dom/Event.cpp:
   28551         (WebCore::Event::isXMLHttpRequestProgressEvent):
   28552         * dom/Event.h:
   28553         * dom/ProgressEvent.h: Replaced 'private' by 'protected' to enable derivation.
   28554         * xml/XMLHttpRequest.cpp:
   28555         (WebCore::XMLHttpRequest::onProgressListener): onprogress getter.
   28556         (WebCore::XMLHttpRequest::setOnProgressListener): onprogress setter.
   28557         (WebCore::XMLHttpRequest::XMLHttpRequest): initialize m_receivedLength.
   28558         (WebCore::XMLHttpRequest::internalAbort): reset m_receivedLength on abort.
   28559         (WebCore::XMLHttpRequest::didReceiveData): add updateAndDispatchOnProgress call.
   28560         (WebCore::XMLHttpRequest::updateAndDispatchOnProgress):
   28561         (WebCore::XMLHttpRequest::dispatchProgressEvent):
   28562         * xml/XMLHttpRequest.h:
   28563         * xml/XMLHttpRequest.idl: Add onprogress event handler.
   28564         * xml/XMLHttpRequestProgressEvent.cpp: Added.
   28565         (WebCore::XMLHttpRequestProgressEvent::XMLHttpRequestProgressEvent):
   28566         (WebCore::XMLHttpRequestProgressEvent::position):
   28567         (WebCore::XMLHttpRequestProgressEvent::totalSize):
   28568         The two previous methods are used for Firefox compatibility and map to the
   28569         same value as the ProgressEvent methods (but they are deprecated and display
   28570 
   28571         * xml/XMLHttpRequestProgressEvent.h: Added.
   28572         (WebCore::XMLHttpRequestProgressEvent::isXMLHttpRequestProgressEvent):
   28573         (WebCore::XMLHttpRequestProgressEvent::isProgressEvent):
   28574         (WebCore::XMLHttpRequestProgressEvent::lengthComputable):
   28575         (WebCore::XMLHttpRequestProgressEvent::loaded):
   28576         (WebCore::XMLHttpRequestProgressEvent::total):
   28577         * xml/XMLHttpRequestProgressEvent.idl: Added.
   28578 
   28579 2008-04-21  Michael Goddard  <michael.goddard (a] trolltech.com>
   28580 
   28581         Reviewed by Simon.
   28582 
   28583         Better handle Qt binding object lifetime in JS.
   28584         Add explicit marking of JS objects created for Qt
   28585         bindings, and remove the gcProtect calls.
   28586 
   28587         * bridge/qt/qt_class.cpp:
   28588         (KJS::Bindings::QtClass::fallbackObject):
   28589         * bridge/qt/qt_instance.cpp:
   28590         (KJS::Bindings::QtRuntimeObjectImp::mark):
   28591         (KJS::Bindings::QtInstance::~QtInstance):
   28592         (KJS::Bindings::QtInstance::mark):
   28593         (KJS::Bindings::QtInstance::invokeDefaultMethod):
   28594         (KJS::Bindings::QtField::valueFromInstance):
   28595         * bridge/qt/qt_instance.h:
   28596 
   28597 2008-04-21  Michael Goddard  <michael.goddard (a] trolltech.com>
   28598 
   28599         Reviewed by Simon.
   28600 
   28601         Add better support for RuntimeArray type conversions.
   28602         It seems that RuntimeArray claims to inherit ArrayInstance
   28603         (in the JS sense), but the C++ class doesn't, so properly
   28604         access RuntimeArrays.  Also, properly support turning
   28605         a JS object into a QVariantMap, since we support the
   28606         reverse.
   28607 
   28608         * bridge/qt/qt_runtime.cpp:
   28609         (KJS::Bindings::):
   28610         (KJS::Bindings::operator<<):
   28611         (KJS::Bindings::valueRealType):
   28612         (KJS::Bindings::convertValueToQVariant):
   28613         (KJS::Bindings::convertQVariantToValue):
   28614 
   28615 2008-04-21  Simon Hausmann  <hausmann (a] webkit.org>
   28616 
   28617         Reviewed by Holger.
   28618 
   28619         Fix painting of text fields in the CleanLooks style.
   28620 
   28621         The CleanLooks style calls painter->drawRect() and expects a painter
   28622         that has no brush set. This is a fairly common assumption and therefore
   28623         we now always set the brush to NoBrush before calling a style. This
   28624         is done by centralizing the painter setup code into StylePainter
   28625         and restore the old brush in the StylePainter destructor.
   28626 
   28627         In addition for textfields it is not necessary anymore to draw
   28628         PE_FrameLineEdit as we set the lineWidth in the style option correctly
   28629         and it's the style responsibility (QCommonStyle usually) to draw
   28630         PE_FrameLineEdit.
   28631 
   28632         * platform/qt/RenderThemeQt.cpp:
   28633         (WebCore::RenderThemeQt::paintButton):
   28634         (WebCore::RenderThemeQt::paintTextField):
   28635         (WebCore::RenderThemeQt::paintMenuList):
   28636         (WebCore::StylePainter::StylePainter):
   28637         (WebCore::StylePainter::~StylePainter):
   28638         * platform/qt/RenderThemeQt.h:
   28639         (WebCore::StylePainter::isValid):
   28640         (WebCore::StylePainter::drawPrimitive):
   28641         (WebCore::StylePainter::drawControl):
   28642         (WebCore::StylePainter::drawComplexControl):
   28643 
   28644 2008-04-21  Olivier Goffart  <ogoffart (a] trolltech.com>
   28645 
   28646         Reviewed by Simon.
   28647 
   28648         Fixes copy and paste of international characters.
   28649 
   28650         When exporting HTML to the clipboard we need meta tags for now that confirm the
   28651         conversion to utf-8 done inside QClipboard.
   28652 
   28653         * platform/qt/PasteboardQt.cpp:
   28654         (WebCore::Pasteboard::writeSelection):
   28655 
   28656 2008-04-21  Olivier Goffart  <ogoffart (a] trolltech.com>
   28657 
   28658         Reviewed by Simon.
   28659 
   28660         Fixes: Copying on X11 doesn't always work in webkit
   28661 
   28662         Calling QClipboard::clear right before QClipboard::setData create a race condition with klipper. So don't call QClipboard::clear since it's not required.
   28663 
   28664         * platform/qt/PasteboardQt.cpp:
   28665 
   28666 2008-04-21  Holger Hans Peter Freyther  <holger.freyther (a] trolltech.com>
   28667 
   28668         Reviewed by Simon.
   28669 
   28670         * Assume that our lineedit has a frame. This is needed for the motif style
   28671 
   28672         * platform/qt/RenderThemeQt.cpp:
   28673         (WebCore::RenderThemeQt::paintTextField):
   28674 
   28675 2008-04-21  Holger Hans Peter Freyther  <holger.freyther (a] trolltech.com>
   28676 
   28677         Reviewed by Simon.
   28678 
   28679         * Follow the windows render theme when determining whether to style
   28680         listboxes or not.
   28681 
   28682         * platform/qt/RenderThemeQt.cpp:
   28683         (WebCore::RenderThemeQt::isControlStyled):
   28684 
   28685 2008-04-21  Holger Hans Peter Freyther  <holger.freyther (a] trolltech.com>
   28686 
   28687         Reviewed by Simon.
   28688 
   28689         * Try to bring the notImplemented implementations closer together. This will
   28690         print each unimplemted method name only once.
   28691 
   28692         * We might want to change wtf/Assertions.cpp to use qDebug
   28693 
   28694         * platform/NotImplemented.h:
   28695 
   28696 2008-04-21  Holger Hans Peter Freyther  <holger.freyther (a] trolltech.com>
   28697 
   28698         Reviewed by Simon.
   28699 
   28700         * Remove the special Qt ctor of BitmapImage as it did not work. The Bitmap returned
   28701         0 as width and after intialising drawing would fail. BitmapImage relies on a proper
   28702         ImageSource.
   28703         * Instead of adding more special cases to BitmapImage create a new class called StillImage
   28704         which is getting one QPixmap and is implementing Image::draw and Image::size. This is
   28705         working well for the images created using Image::loadPlatformResource.
   28706 
   28707         * platform/graphics/BitmapImage.h:
   28708         * platform/graphics/qt/ImageQt.cpp:
   28709         (WebCore::BitmapImage::initPlatformData):
   28710         (WebCore::BitmapImage::getPixmap):
   28711         (WebCore::StillImage::StillImage):
   28712         (WebCore::StillImage::size):
   28713         (WebCore::StillImage::getPixmap):
   28714         (WebCore::StillImage::draw):
   28715 
   28716 2008-04-21  Holger Hans Peter Freyther  <holger.freyther (a] trolltech.com>
   28717 
   28718         Reviewed by Simon.
   28719 
   28720         * Package the Resources into a qrc
   28721 
   28722         * Resources/WebKitResources.qrc: Added.
   28723         * WebCore.pro:
   28724 
   28725 2008-04-21  Holger Hans Peter Freyther  <holger.freyther (a] trolltech.com>
   28726 
   28727         Reviewed by Simon.
   28728 
   28729         * Make sure every resource is available als png as well.
   28730 
   28731         * Resources/deleteButton.png: Added.
   28732         * Resources/deleteButtonPressed.png: Added.
   28733         * Resources/missingImage.png: Added.
   28734         * Resources/nullPlugin.png: Copied from WebKit/win/WebKit.vcproj/nullplugin.png.
   28735         * Resources/textAreaResizeCorner.png: Added.
   28736         * Resources/urlIcon.png: Copied from WebKit/win/WebKit.vcproj/urlIcon.png.
   28737 
   28738 2008-04-20  Sriram Neelakandan  <sriram.neelakandan (a] gmail.com>
   28739 
   28740         Reviewed by Alp Toker.
   28741 
   28742         Implement FileSystemGtk's getFileModificationTime() with GLib.
   28743 
   28744         * platform/gtk/FileSystemGtk.cpp:
   28745         (WebCore::getFileModificationTime):
   28746 
   28747 2008-04-20  Christian Persch  <chpe (a] gnome.org>
   28748 
   28749         Reviewed by Alp Toker.
   28750 
   28751         Bundle GTK+ Xt compatibility code from Mozilla. These files are used
   28752         by all currently proposed GTK+ plugin patches and will make the
   28753         proposed patches smaller and easier to review.
   28754 
   28755         These files should be kept as close to the upstream versions as
   28756         possible so fixes can be shared between projects and to ensure
   28757         compatibility with the reference implementation.
   28758 
   28759         * plugins/gtk/gtk2xtbin.c: Added.
   28760         (xt_event_prepare):
   28761         (xt_event_check):
   28762         (xt_event_dispatch):
   28763         (xt_event_polling_timer_callback):
   28764         (gtk_xtbin_get_type):
   28765         (gtk_xtbin_class_init):
   28766         (gtk_xtbin_init):
   28767         (gtk_xtbin_realize):
   28768         (gtk_xtbin_new):
   28769         (gtk_xtbin_set_position):
   28770         (gtk_xtbin_resize):
   28771         (gtk_xtbin_unrealize):
   28772         (gtk_xtbin_destroy):
   28773         (xt_client_init):
   28774         (xt_client_create):
   28775         (xt_client_unrealize):
   28776         (xt_client_destroy):
   28777         (xt_client_set_info):
   28778         (xt_client_handle_xembed_message):
   28779         (xt_client_event_handler):
   28780         (send_xembed_message):
   28781         (error_handler):
   28782         (trap_errors):
   28783         (untrap_error):
   28784         (xt_client_focus_listener):
   28785         (xt_add_focus_listener):
   28786         (xt_remove_focus_listener):
   28787         (xt_add_focus_listener_tree):
   28788         * plugins/gtk/gtk2xtbin.h: Added.
   28789 
   28790 2008-04-20  Dirk Schulze  <vbs85 (a] gmx.de>
   28791 
   28792         Reviewed by Alp Toker.
   28793 
   28794         http://bugs.webkit.org/show_bug.cgi?id=15449
   28795         [CAIRO] SVG gradients do not work properly
   28796 
   28797         Fixed SVG-gradients in Cairo.
   28798 
   28799         * svg/graphics/cairo/SVGPaintServerGradientCairo.cpp:
   28800         (WebCore::SVGPaintServerGradient::setup):
   28801 
   28802 2008-04-20  Simon Hausmann  <hausmann (a] webkit.org>
   28803 
   28804         Reviewed by Alp Toker.
   28805 
   28806         http://bugs.webkit.org/show_bug.cgi?id=18578
   28807         Share the printing code between the Gtk and the Qt port
   28808 
   28809         Share the printing code between the Gtk and the Qt port
   28810         and added printing to the Qt WebKit API.
   28811 
   28812         * GNUmakefile.am:
   28813         * WebCore.pro:
   28814         * page/PrintContext.cpp: Added.
   28815         (WebCore::PrintContext::PrintContext):
   28816         (WebCore::PrintContext::~PrintContext):
   28817         (WebCore::PrintContext::pageCount):
   28818         (WebCore::PrintContext::computePageRects):
   28819         (WebCore::PrintContext::begin):
   28820         (WebCore::PrintContext::spoolPage):
   28821         * page/PrintContext.h: Added.
   28822 
   28823 2008-04-19  Alp Toker  <alp (a] nuanti.com>
   28824 
   28825         Reviewed by Mark Rowe.
   28826 
   28827         Complete the Cairo (CSS) gradient implementation.
   28828 
   28829         * platform/graphics/Gradient.h:
   28830         * platform/graphics/cairo/GradientCairo.cpp:
   28831         (WebCore::Gradient::platformDestroy):
   28832         (WebCore::Gradient::fill):
   28833 
   28834 2008-04-19  Alp Toker  <alp (a] nuanti.com>
   28835 
   28836         Reviewed by Dave Hyatt.
   28837 
   28838         Restore Cairo canvas support following the recent changes in
   28839         BitmapImage and ImageBuffer integrating canvas with CSS. Some
   28840         drawing regressions remain unfixed.
   28841 
   28842         * platform/graphics/BitmapImage.h:
   28843         * platform/graphics/ImageBuffer.h:
   28844         * platform/graphics/cairo/ImageBufferCairo.cpp:
   28845         (WebCore::ImageBuffer::image):
   28846         * platform/graphics/cairo/ImageCairo.cpp:
   28847         (WebCore::BitmapImage::BitmapImage):
   28848         (WebCore::BitmapImage::draw):
   28849         * platform/graphics/cairo/ImageSourceCairo.cpp:
   28850         (WebCore::ImageSource::createFrameAtIndex):
   28851 
   28852 2008-04-19  Dan Bernstein  <mitz (a] apple.com>
   28853 
   28854         Reviewed by Dave Hyatt.
   28855 
   28856         - fix additional cases of https://bugs.webkit.org/show_bug.cgi?id=17921
   28857           namely cases where the trailing white space is already in a separate
   28858           run but still needs to be re-ordered.
   28859 
   28860         Test: fast/text/trailing-white-space-2.html
   28861 
   28862         * platform/text/BidiResolver.h:
   28863         (WebCore::::moveRunToEnd):
   28864         (WebCore::::moveRunToBeginning):
   28865         * rendering/bidi.cpp:
   28866         (WebCore::RenderBlock::layoutInlineChildren):
   28867 
   28868 2008-04-19  Alp Toker  <alp (a] nuanti.com>
   28869 
   28870         Reviewed by Nikolas.
   28871 
   28872         Add text shadow support for simple text in FontCairo.
   28873 
   28874         * platform/graphics/cairo/FontCairo.cpp:
   28875         (WebCore::Font::drawGlyphs):
   28876 
   28877 2008-04-19  David Hyatt  <hyatt (a] apple.com>
   28878 
   28879         Fix a minor typo in CSSGradientValue's cssText() method.
   28880 
   28881         Reviewed by olliej
   28882 
   28883         * css/CSSGradientValue.cpp:
   28884         (WebCore::CSSGradientValue::cssText):
   28885 
   28886 2008-04-19  Brady Eidson  <beidson (a] apple.com>
   28887 
   28888         Reviewed by Tim Hatcher
   28889 
   28890         Add LocalStorageDatabasePath to the settings for the location of persistent local storage.
   28891 
   28892         * WebCore.base.exp:
   28893 
   28894         * page/Settings.cpp:
   28895         (WebCore::Settings::setLocalStorageDatabasePath):
   28896         * page/Settings.h:
   28897         (WebCore::Settings::localStorageDatabasePath):
   28898 
   28899 2008-04-18 Jan  Michael Alonzo  <jmalonzo (a] unpluggable.com>
   28900 
   28901         Reviewed by Alp Toker.
   28902 
   28903         http://bugs.webkit.org/show_bug.cgi?id=16620
   28904         [GTK] Autotools make dist and make check support
   28905 
   28906         Cleanups.
   28907 
   28908         * GNUmakefile.am:
   28909 
   28910 2008-04-18  Jon Honeycutt  <jhoneycutt (a] apple.com>
   28911 
   28912         Reviewed by Ollie.
   28913 
   28914         Change when AccessibilityObject children are added.
   28915 
   28916         Children are now added when children() is called if the children vector
   28917         is not up to date. This removes the need for addChildren() and
   28918         hasChildren() to be called from outside of AccessibilityObject.
   28919 
   28920         * page/AccessibilityObject.cpp:
   28921         (WebCore::AccessibilityObject::AccessibilityObject): Initialize
   28922         m_haveChildren to false.
   28923         (WebCore::AccessibilityObject::clearChildren): Set m_haveChildren to
   28924         false.
   28925         (WebCore::AccessibilityObject::children): If m_haveChildren is false,
   28926         call addChildren().
   28927         (WebCore::AccessibilityObject::addChildren): Set m_haveChildren to true.
   28928         * page/AccessibilityObject.h: Removed hasChildren(). Made addChildren()
   28929         private and const. Added m_haveChildren. Made m_children mutable so
   28930         children() could modify it.
   28931         * page/mac/AccessibilityObjectWrapper.mm:
   28932         (-[AccessibilityObjectWrapper accessibilityAttributeValue:]): Don't
   28933         call hasChildren() or addChildren().
   28934 
   28935 2008-04-18  Marco Barisione  <marco.barisione (a] collabora.co.uk>
   28936 
   28937         Reviewed by Alexey.
   28938 
   28939         http://bugs.webkit.org/show_bug.cgi?id=18357
   28940         [GTK] Enter on buttons doesn't work
   28941 
   28942         * platform/gtk/KeyEventGtk.cpp:
   28943         (WebCore::singleCharacterString): Set the text of a keyboard event for
   28944         GDK_ISO_Enter, GDK_KP_Enter, GDK_Return to "\r" instead of an empty
   28945         string.
   28946 
   28947 2008-04-18  Marco Barisione  <marco (a] barisione.org>
   28948 
   28949         Reviewed by Alp Toker.
   28950 
   28951         https://bugs.webkit.org/show_bug.cgi?id=18576
   28952         [GTK] windowsKeyCodeForKeyEvent doesn't handle GDK_ISO_Enter and
   28953         GDK_KP_Enter
   28954 
   28955         * platform/gtk/KeyEventGtk.cpp:
   28956         (WebCore::windowsKeyCodeForKeyEvent): handle GDK_ISO_Enter and
   28957         GDK_KP_Enter in windowsKeyCodeForKeyEvent.
   28958 
   28959 2008-04-18  Jan Michael Alonzo  <jmalonzo (a] unpluggable.com>
   28960 
   28961         Reviewed by Mark Rowe.
   28962 
   28963         Gtk build fix.  Profiler.h does not live inside the kjs directory of JavaScriptCore
   28964         so it doesn't make sense to include it as kjs/Profiler.h from WebCore.
   28965 
   28966         * ForwardingHeaders/profiler/Profiler.h: Renamed from WebCore/ForwardingHeaders/kjs/Profiler.h.
   28967         * page/Console.cpp:
   28968 
   28969 2008-04-18  Antti Koivisto  <antti (a] apple.com>
   28970 
   28971         Reviewed by Oliver.
   28972 
   28973         Implement path animation for <animateMotion>.
   28974         
   28975         SVG test suite tests
   28976         animate-elem-07-t.svg
   28977         animate-elem-08-t.svg
   28978         animate-elem-24-t.svg
   28979         animate-elem-30-t.svg
   28980 
   28981         * svg/SVGAnimateMotionElement.cpp:
   28982         (WebCore::SVGAnimateMotionElement::SVGAnimateMotionElement):
   28983         (WebCore::SVGAnimateMotionElement::hasValidTarget):
   28984         (WebCore::SVGAnimateMotionElement::parseMappedAttribute):
   28985         (WebCore::SVGAnimateMotionElement::rotateMode):
   28986         (WebCore::SVGAnimateMotionElement::animationPath):
   28987         (WebCore::SVGAnimateMotionElement::calculateAnimatedValue):
   28988         (WebCore::SVGAnimateMotionElement::applyResultsToTarget):
   28989         * svg/SVGAnimateMotionElement.h:
   28990         (WebCore::SVGAnimateMotionElement::):
   28991         * svg/SVGAnimationElement.cpp:
   28992         (WebCore::SVGAnimationElement::animationMode):
   28993         (WebCore::SVGAnimationElement::startedActiveInterval):
   28994         * svg/SVGAnimationElement.h:
   28995         (WebCore::SVGAnimationElement::):
   28996         (WebCore::SVGAnimationElement::calculateDistance):
   28997         (WebCore::SVGAnimationElement::animationPath):
   28998 
   28999 2008-04-11  Mark Rowe  <mrowe (a] apple.com>
   29000 
   29001         Rubber-stamped by Antti Koivisto.
   29002 
   29003         Silence GCC 4.3 warnings by removing extraneous consts.
   29004 
   29005         * platform/graphics/Font.h:
   29006         * platform/network/ResourceRequestBase.cpp:
   29007         * platform/network/ResourceRequestBase.h:
   29008 
   29009 2008-04-18  Brady Eidson  <beidson (a] apple.com>
   29010 
   29011         Rubberstamped by Mark Rowe
   29012 
   29013         Roll out http://trac.webkit.org/projects/webkit/changeset/32204 as it was an incorrect build fix.
   29014         The feature in question was NOT database support.
   29015 
   29016         The proper build fix was later applied by Mark in http://trac.webkit.org/projects/webkit/changeset/32225
   29017 
   29018         * page/PageGroup.cpp:
   29019         (WebCore::PageGroup::localStorage):
   29020 
   29021 2008-04-18  Brady Eidson  <beidson (a] apple.com>
   29022 
   29023         Reviewed by Darin and Sam
   29024 
   29025         Don't forget PageGroups when their last Page goes away, as this hurts visited links and anything
   29026         else that will be per-PageGroup in the future (such as LocalStorage).
   29027 
   29028         This also fixes a leak, since PageGroups are ref-counted and therefore clearing the raw pointer out
   29029         of the PageGroups map without manual deletion leaked it!
   29030 
   29031         * page/Page.cpp:
   29032         (WebCore::Page::setGroupName):
   29033 
   29034 2008-04-18  Dan Bernstein  <mitz (a] apple.com>
   29035 
   29036         Reviewed by Brady Eidson.
   29037 
   29038         - fix <rdar://problem/5872671> REGRESSION (3.1.1-TOT): Repro crash going to Ortega Park home page
   29039 
   29040         Test: fast/dynamic/5872671.html
   29041 
   29042         * rendering/bidi.cpp:
   29043         (WebCore::RenderBlock::layoutInlineChildren): Added a missing null
   29044         check.
   29045 
   29046 2008-04-18  Sam Weinig  <sam (a] webkit.org>
   29047 
   29048         Rubber-stamped by Mark Rowe.
   29049 
   29050         responseText and responseXML don't throw exceptions so they don't need an ExceptionCode parameter.
   29051 
   29052         * bindings/js/JSXMLHttpRequestCustom.cpp:
   29053         * xml/XMLHttpRequest.cpp:
   29054         (WebCore::XMLHttpRequest::responseText):
   29055         (WebCore::XMLHttpRequest::responseXML):
   29056         * xml/XMLHttpRequest.h:
   29057         * xml/XMLHttpRequest.idl:
   29058 
   29059 2008-04-18  Kevin McCullough  <kmccullough (a] apple.com>
   29060 
   29061         Reviewed by Sam.
   29062 
   29063         - Build fix.
   29064 
   29065         * page/Console.cpp:
   29066         (WebCore::Console::profile):
   29067         * page/Console.h:
   29068         * page/Console.idl:
   29069 
   29070 2008-04-18  Eric Seidel  <eric (a] webkit.org>
   29071 
   29072         Reviewed by darin.
   29073 
   29074         Fix probable crasher caused by invalid static_cast
   29075         https://bugs.webkit.org/show_bug.cgi?id=18585
   29076 
   29077         * page/Frame.cpp:
   29078         (WebCore::Frame::contentRenderer):
   29079         (WebCore::Frame::ownerRenderer):
   29080         * rendering/RenderObject.h: sort the "is*" functions
   29081         (WebCore::RenderObject::isApplet):
   29082         (WebCore::RenderObject::isBR):
   29083         (WebCore::RenderObject::isBlockFlow):
   29084         (WebCore::RenderObject::isCounter):
   29085         (WebCore::RenderObject::isFrame):
   29086         (WebCore::RenderObject::isFrameSet):
   29087         (WebCore::RenderObject::isImage):
   29088         (WebCore::RenderObject::isInlineBlockOrInlineTable):
   29089         (WebCore::RenderObject::isInlineFlow):
   29090         (WebCore::RenderObject::isListBox):
   29091         (WebCore::RenderObject::isListItem):
   29092         (WebCore::RenderObject::isListMarker):
   29093         (WebCore::RenderObject::isMedia):
   29094         (WebCore::RenderObject::isMenuList):
   29095         (WebCore::RenderObject::isRenderBlock):
   29096         (WebCore::RenderObject::isRenderImage):
   29097         (WebCore::RenderObject::isRenderInline):
   29098         (WebCore::RenderObject::isRenderPart):
   29099         (WebCore::RenderObject::isRenderView):
   29100         (WebCore::RenderObject::isSlider):
   29101         (WebCore::RenderObject::isTable):
   29102         (WebCore::RenderObject::isTableCell):
   29103         (WebCore::RenderObject::isTableCol):
   29104         (WebCore::RenderObject::isTableRow):
   29105         (WebCore::RenderObject::isTableSection):
   29106         (WebCore::RenderObject::isTextArea):
   29107         * rendering/RenderPart.h:
   29108 
   29109 2008-04-17  Eric Seidel  <eric (a] webkit.org>
   29110 
   29111         Reviewed by beth.
   29112 
   29113         Rename Frame::renderer() to contentRenderer() and fix uses.
   29114 
   29115         * WebCore.base.exp:
   29116         * editing/Editor.cpp:
   29117         (WebCore::Editor::respondToChangedContents):
   29118         * loader/FrameLoader.cpp:
   29119         (WebCore::FrameLoader::gotoAnchor):
   29120         * page/DragController.cpp:
   29121         (WebCore::DragController::canProcessDrag):
   29122         (WebCore::DragController::mayStartDragAtEventLocation):
   29123         (WebCore::DragController::startDrag):
   29124         * page/EventHandler.cpp:
   29125         (WebCore::EventHandler::eventMayStartDrag):
   29126         (WebCore::EventHandler::updateSelectionForMouseDrag):
   29127         (WebCore::EventHandler::hitTestResultAtPoint):
   29128         (WebCore::EventHandler::hoverTimerFired):
   29129         (WebCore::EventHandler::handleDrag):
   29130         * page/Frame.cpp:
   29131         (WebCore::Frame::selectionLayoutChanged):
   29132         (WebCore::Frame::contentRenderer):
   29133         (WebCore::Frame::paint):
   29134         (WebCore::Frame::markAllMatchesForText):
   29135         (WebCore::Frame::documentAtPoint):
   29136         * page/Frame.h:
   29137         * page/FrameView.cpp:
   29138         (WebCore::FrameView::~FrameView):
   29139         (WebCore::FrameView::adjustViewSize):
   29140         (WebCore::FrameView::layout):
   29141         (WebCore::FrameView::scheduleRelayoutOfSubtree):
   29142         (WebCore::FrameView::needsLayout):
   29143         (WebCore::FrameView::setNeedsLayout):
   29144         (WebCore::FrameView::updateControlTints):
   29145         * rendering/RenderTreeAsText.cpp:
   29146         (WebCore::write):
   29147         * svg/graphics/SVGImage.cpp:
   29148         (WebCore::SVGImage::nativeImageForCurrentFrame):
   29149 
   29150 2008-04-18  Antti Koivisto  <antti (a] apple.com>
   29151 
   29152         Reviewed by Oliver.
   29153 
   29154         https://bugs.webkit.org/show_bug.cgi?id=18551
   29155         REGRESSION (r31801?): Crash in ContainerNode::removedFromDocument on many SVG tests
   29156         
   29157         Fix for test svg/W3C-SVG-1.1/animate-elem-62-t.svg which was still
   29158         crashing under guard malloc after the previous fix.
   29159         
   29160         If the event base element was a parent of the current element, dereffing it during 
   29161         removedFromDocument() would cause problems. Avoid this by not holding ref pointer
   29162         to the event base but instead checking from the ref count of the event listener whether
   29163         it is still alive and in need for unregistering.
   29164         
   29165         This shold not be a problem for syncbase pointers since those are always animation elements
   29166         and leaf nodes.
   29167 
   29168         * svg/animation/SVGSMILElement.cpp:
   29169         (WebCore::ConditionEventListener::ConditionEventListener):
   29170         (WebCore::ConditionEventListener::unregister):
   29171         (WebCore::ConditionEventListener::handleEvent):
   29172         (WebCore::SVGSMILElement::connectConditions):
   29173         (WebCore::SVGSMILElement::disconnectConditions):
   29174         (WebCore::SVGSMILElement::createInstanceTimesFromSyncbase):
   29175         * svg/animation/SVGSMILElement.h:
   29176 
   29177 2008-04-18  Kevin McCullough  <kmccullough (a] apple.com>
   29178 
   29179         Reviewed by Sam and Adam.
   29180 
   29181         -<rdar://problem/5770054> JavaScript profiler (10928)
   29182         - Added support for console.profile() and console.profileEnd().
   29183 
   29184         * ForwardingHeaders/kjs/FunctionCallProfile.h: Added.
   29185         * ForwardingHeaders/kjs/Profiler.h: Added.
   29186         * page/Console.cpp:
   29187         (WebCore::Console::profile):
   29188         (WebCore::Console::profileEnd):
   29189         * page/Console.h:
   29190         * page/Console.idl:
   29191 
   29192 2008-04-18  Kevin Ollivier  <kevino (a] theolliviers.com>
   29193 
   29194         wx build fix. Add the new loader/appcache files.
   29195 
   29196         * WebCoreSources.bkl:
   29197 
   29198 2008-04-18  Dan Bernstein  <mitz (a] apple.com>
   29199 
   29200         Reviewed by Darin Adler.
   29201 
   29202         - fix https://bugs.webkit.org/show_bug.cgi?id=17921
   29203           Extra white space at the end of right-aligned or justified text with -webkit-line-break: after-white-space
   29204 
   29205         Test: fast/text/trailing-white-space.html
   29206 
   29207         Made trailing white space on the line always behave like it has the base
   29208         bidi level of the block, meaning it will always go on the right (left)
   29209         of the line in a left-to-right (right-to-left) block. Made the trailing
   29210         white space vanish when it is next to a margin that the text should
   29211         be touching, and made its width not count when computing the center
   29212         point for center alignment.
   29213 
   29214         * platform/text/BidiResolver.h:
   29215         (WebCore::::prependRun): Added.
   29216         * rendering/RenderBlock.h:
   29217         * rendering/bidi.cpp:
   29218         (WebCore::RenderBlock::computeHorizontalPositionsForLine): Changed the
   29219         logicallyLastRun parameter to an optional trailingSpaceRun and changed
   29220         the alignment logic to implement the above rules.
   29221         (WebCore::RenderBlock::layoutInlineChildren): Added code to identify
   29222         when there is trailing white space that needs to be split into its own
   29223         run and optionally re-ordered.
   29224         (WebCore::RenderBlock::findNextLineBreak): Removed code that split some
   29225         trailing space into a separate run in one special case.
   29226 
   29227 2008-04-10  Mark Rowe  <mrowe (a] apple.com>
   29228 
   29229         Rubber-stamped by Brady Eidson.
   29230 
   29231         Fix builds that do not have DOM storage enabled.
   29232 
   29233         * page/DOMWindow.cpp:
   29234         * page/Page.cpp:
   29235         * page/PageGroup.cpp:
   29236         * page/PageGroup.h:
   29237 
   29238 2008-04-18  Timothy Hatcher  <timothy (a] apple.com>
   29239 
   29240         Fixes the regression where style rules in the Inspector always show "inline stylesheet"
   29241         for the source of the rule and not the URL or other sources.
   29242 
   29243         https://bugs.webkit.org/show_bug.cgi?id=18592
   29244 
   29245         Reviewed by Dan Bernstein.
   29246 
   29247         * page/inspector/StylesSidebarPane.js:
   29248         (WebInspector.StylesSidebarPane.prototype.update): Add parentStyleSheet to the anonymous obejct
   29249         that we make for each matched rule. The parentStyleSheet property is used later to make the subtitle.
   29250 
   29251 2008-04-18  Dean Jackson <dino (a] apple.com>
   29252 
   29253         Fixed marquee suspension on wrong document. Passes current
   29254         document into Frame::clearTimers.
   29255 
   29256         Reviewed by hyatt.
   29257 
   29258         * history/CachedPage.cpp:
   29259         (WebCore::CachedPage::clear):
   29260         * page/Frame.cpp:
   29261         (WebCore::Frame::clearTimers):
   29262         * page/Frame.h:
   29263 
   29264 2008-04-18  Dean Jackson <dino (a] apple.com>
   29265 
   29266         Add 'ease' timing function to transitions and
   29267         make it the default. See latest specification proposal at:
   29268         http://webkit.org/specs/CSSVisualEffects/CSSTransitions.html
   29269 
   29270         Reviewed by hyatt.
   29271 
   29272         NOTE: still working on a way to test animating/transitioning content
   29273 
   29274         * css/CSSParser.cpp:
   29275         (WebCore::CSSParser::parseTransitionTimingFunction):
   29276         * css/CSSStyleSelector.cpp:
   29277         (WebCore::CSSStyleSelector::mapTransitionTimingFunction):
   29278         * css/CSSValueKeywords.in:
   29279 
   29280 2008-04-18  Adam Roben  <aroben (a] apple.com>
   29281 
   29282         Change JavaScriptDebugListener to use KJS::UString instead of
   29283         WebCore::String
   29284 
   29285         This should reduce the number of string allocations performed while
   29286         debugging.
   29287 
   29288         Reviewed by Tim Hatcher.
   29289 
   29290         * page/InspectorController.cpp: Updated JavaScriptDebugListener
   29291         functions.
   29292         * page/InspectorController.h: Ditto.
   29293         * page/JavaScriptDebugListener.h: Changed to use KJS::UString instead
   29294         of WebCore::String.
   29295         * page/JavaScriptDebugServer.cpp: Ditto.
   29296         * platform/win/BString.cpp:
   29297         (WebCore::BString::BString): Added a constructor that takes a
   29298         KJS::UString.
   29299         * platform/win/BString.h:
   29300 
   29301 2008-04-18  Adam Roben  <aroben (a] apple.com>
   29302 
   29303         Mac build fix
   29304 
   29305         * WebCore.xcodeproj/project.pbxproj: Mark JavaScriptDebugListener.h
   29306         private.
   29307 
   29308 2008-04-18  Adam Roben  <aroben (a] apple.com>
   29309 
   29310         Make InspectorController a JavaScriptDebugListener
   29311 
   29312         I added two new functions to the InspectorController JS object:
   29313         reloadInspectedPageAndStartDebugging and stopDebugging. These control
   29314         when the InspectorController adds/removes itself to/from the
   29315         JavaScriptDebugServer.
   29316 
   29317         Reviewed by Tim Hatcher.
   29318 
   29319         * page/InspectorController.cpp:
   29320         (WebCore::reloadInspectedPageAndStartDebugging): Added. Just calls
   29321         through to InspectorController.
   29322         (WebCore::stopDebugging): Ditto.
   29323         (WebCore::InspectorController::~InspectorController): Make sure we
   29324         stop debugging before we are destroyed so the JavaScriptDebugServer
   29325         won't be left with a stale pointer.
   29326         (WebCore::InspectorController::windowScriptObjectAvailable): Added two
   29327         new functions to our JS object.
   29328         (WebCore::InspectorController::closeWindow): Stop debugging when the
   29329         window closes.
   29330         (WebCore::InspectorController::reloadInspectedPageAndStartDebugging):
   29331         Added.
   29332         (WebCore::InspectorController::stopDebugging): Added.
   29333 
   29334         (WebCore::InspectorController::didParseSource):
   29335         (WebCore::InspectorController::failedToParseSource):
   29336         (WebCore::InspectorController::didEnterCallFrame):
   29337         (WebCore::InspectorController::willExecuteStatement):
   29338         (WebCore::InspectorController::willLeaveCallFrame):
   29339         Added empty implementations of the JavaScriptDebugListener functions.
   29340 
   29341         * page/InspectorController.h:
   29342 
   29343 2008-04-17  Adam Roben  <aroben (a] apple.com>
   29344 
   29345         Rename ExecState* instances from state to exec
   29346 
   29347         Requested by Darin Adler and Sam Weinig.
   29348 
   29349         * bindings/js/JSConsoleCustom.cpp:
   29350 
   29351 2008-04-17  Adam Roben  <aroben (a] apple.com>
   29352 
   29353         Clean up InspectorController's use of JSStringRef
   29354 
   29355         All JSStringRef creation now happens through a helper function,
   29356         jsStringRef, which takes either a const char* or a const String& and
   29357         returns a JSRetainPtr<JSStringRef>.
   29358 
   29359         Reviewed by Mitz Pettel.
   29360 
   29361         * page/InspectorController.cpp:
   29362         Added jsStringRef and converted all callers to
   29363         JSStringCreateWithUTF8CString or JSStringCreateWithCharacters to use
   29364         it.
   29365 
   29366 2008-04-17  Adam Roben  <aroben (a] apple.com>
   29367 
   29368         Add wrappers around InspectorClient::{show,close}Window
   29369 
   29370         This will let us perform actions when the window is actually
   29371         showing/closing (InspectorController::show doesn't always directly
   29372         show the window).
   29373 
   29374         Reviewed by Tim Hatcher.
   29375 
   29376         * page/InspectorController.cpp:
   29377         (WebCore::InspectorController::scriptObjectReady): Call showWindow()
   29378         instead of m_client->showWindow().
   29379         (WebCore::InspectorController::show): Ditto.
   29380         (WebCore::InspectorController::close): Ditto for closeWindow().
   29381         (WebCore::InspectorController::showWindow):
   29382         (WebCore::InspectorController::closeWindow):
   29383         * page/InspectorController.h:
   29384 
   29385 2008-04-18  Simon Hausmann  <hausmann (a] webkit.org>
   29386 
   29387         Reviewed by Holger.
   29388 
   29389         Adapt to the API changes in WebKit/qt/
   29390 
   29391         * platform/graphics/qt/ImageQt.cpp:
   29392         (loadResourcePixmap):
   29393 
   29394 2008-04-18  Ariya Hidayat  <ariya.hidayat (a] trolltech.com>
   29395 
   29396         Reviewed by Adam Roben.
   29397 
   29398         https://bugs.webkit.org/show_bug.cgi?id=18477
   29399 
   29400         No resize indication is shown when moving/hovering over the frame
   29401         border/splitter.
   29402 
   29403         * page/EventHandler.cpp:
   29404         (WebCore::EventHandler::selectCursor):
   29405 
   29406 2008-04-18  Adam Roben  <aroben (a] apple.com>
   29407 
   29408         Windows build fix
   29409 
   29410         Same as before, but for fabs/fabsf.
   29411 
   29412         * svg/SVGAnimateTransformElement.cpp:
   29413         (WebCore::SVGAnimateTransformElement::calculateDistance): Changed to
   29414         use fabsf and removed narrowPrecisionToFloat.
   29415 
   29416 2008-04-18  Adam Roben  <aroben (a] apple.com>
   29417 
   29418         Windows build fix
   29419 
   29420         In MSVC, sqrt() has three overloads: float, double, and long
   29421         double. In GCC, sqrt() is only for doubles. Both MSVC and GCC have
   29422         sqrtf() to operate explicitly on floats.
   29423 
   29424         * svg/SVGAnimateMotionElement.cpp:
   29425         (WebCore::SVGAnimateMotionElement::calculateDistance): Changed to use
   29426         sqrtf and removed narrowPrecisionToFloat.
   29427         * svg/SVGAnimateTransformElement.cpp:
   29428         (WebCore::SVGAnimateTransformElement::calculateDistance): Ditto.
   29429 
   29430 2008-04-18  Simon Hausmann  <hausmann (a] webkit.org>
   29431 
   29432         Fix the build without Database support (fixes the Qt/win build).
   29433 
   29434         * page/PageGroup.cpp:
   29435         (WebCore::PageGroup::localStorage):
   29436 
   29437 2008-04-18  Simon Hausmann  <hausmann (a] webkit.org>
   29438 
   29439         Fix the Gtk build on the build bot.
   29440 
   29441         * GNUmakefile.am: Back out the previous LocalStorage, etc. additions
   29442         as they're already listed in another sources group that wasn't used
   29443         due to a local configure error.
   29444 
   29445 2008-04-18  Simon Hausmann  <hausmann (a] webkit.org>
   29446 
   29447         Prospective wx build fix.
   29448 
   29449         * webcore-base.bkl: Add loader/appcache to include paths.
   29450 
   29451 2008-04-18  Simon Hausmann  <hausmann (a] webkit.org>
   29452 
   29453         Build fix. Back out previous #include fix for PageGroup.h as it broke
   29454         the Mac build due to forwarding headers.
   29455 
   29456         * page/PageGroup.h:
   29457 
   29458 2008-04-18  Simon Hausmann  <hausmann (a] webkit.org>
   29459 
   29460         Build fix for Qt and gcc 4.3.
   29461 
   29462         * WebCore.pro: Added missing files and include paths, re-ordered
   29463         the storage/ include path to avoid conflict of storage/LocalStorage.h
   29464         with kjs/LocalStorage.h
   29465         * page/PageGroup.h: Include LocalStorage.h instead of forward
   29466         declaration to fix compilation with gcc 4.3.
   29467 
   29468 2008-04-18  Simon Hausmann  <hausmann (a] webkit.org>
   29469 
   29470         Build fix for Gtk and gcc 4.3.
   29471 
   29472         * GNUmakefile.am: Added missing files and include paths.
   29473         * storage/LocalStorage.h: Include LocalStorageArea.h instead of
   29474         forward declaring it due to the HashMap use where gcc 4.3 needs to
   29475         see the class.
   29476 
   29477 2008-04-17  Antti Koivisto  <antti (a] apple.com>
   29478 
   29479         Reviewed by Oliver.
   29480         
   29481         https://bugs.webkit.org/show_bug.cgi?id=18573
   29482 
   29483         Implement supplemental transforms and use them for <animateMotion> instead of the transform list.
   29484         This will allow <animateTransform> and <animateMotion> combine properly.
   29485 
   29486         * svg/SVGAnimateMotionElement.cpp:
   29487         (WebCore::SVGAnimateMotionElement::resetToBaseValue):
   29488         (WebCore::SVGAnimateMotionElement::calculateAnimatedValue):
   29489         (WebCore::SVGAnimateMotionElement::applyResultsToTarget):
   29490         * svg/SVGElement.h:
   29491         (WebCore::SVGElement::supplementalTransform):
   29492         * svg/SVGStyledTransformableElement.cpp:
   29493         (WebCore::SVGStyledTransformableElement::animatedLocalTransform):
   29494         * svg/SVGStyledTransformableElement.h:
   29495         (WebCore::SVGStyledTransformableElement::supplementalTransform):
   29496         * svg/SVGTextElement.cpp:
   29497         (WebCore::SVGTextElement::animatedLocalTransform):
   29498         * svg/SVGTextElement.h:
   29499         (WebCore::SVGTextElement::supplementalTransform):
   29500 
   29501 2008-04-17  Antti Koivisto  <antti (a] apple.com>
   29502 
   29503         Reviewed by Oliver.
   29504 
   29505         Implement calcMode=paced.
   29506         
   29507         Tested by SVG testsuite tests
   29508         animate-elem-11-t.svg
   29509         animate-elem-15-t.svg
   29510         animate-elem-82-t.svg
   29511 
   29512         * svg/SVGAnimateElement.cpp:
   29513         (WebCore::SVGAnimateElement::calculateDistance):
   29514         * svg/SVGAnimateElement.h:
   29515         * svg/SVGAnimateMotionElement.cpp:
   29516         (WebCore::SVGAnimateMotionElement::calculateDistance):
   29517         * svg/SVGAnimateMotionElement.h:
   29518         * svg/SVGAnimateTransformElement.cpp:
   29519         (WebCore::SVGAnimateTransformElement::calculateDistance):
   29520         * svg/SVGAnimateTransformElement.h:
   29521         * svg/SVGAnimationElement.cpp:
   29522         (WebCore::SVGAnimationElement::calculateKeyTimesForCalcModePaced):
   29523         (WebCore::SVGAnimationElement::startedActiveInterval):
   29524         * svg/SVGAnimationElement.h:
   29525         (WebCore::SVGAnimationElement::calculateDistance):
   29526 
   29527 2008-04-17  David Hyatt  <hyatt (a] apple.com>
   29528 
   29529         Fix a leak in ImageBuffer's clearImage method.
   29530 
   29531         Reviewed by olliej
   29532 
   29533         * platform/graphics/ImageBuffer.h:
   29534         (WebCore::ImageBuffer::clearImage):
   29535 
   29536 2008-04-17  Antti Koivisto  <antti (a] apple.com>
   29537 
   29538         Reviewed by Eric.
   29539         
   29540         https://bugs.webkit.org/show_bug.cgi?id=12438
   29541 
   29542         More SVG animation:
   29543         
   29544         - Make multiple additive animations work
   29545         - Support animating <use> instance trees
   29546 
   29547         * svg/SVGAnimateColorElement.cpp:
   29548         (WebCore::SVGAnimateColorElement::SVGAnimateColorElement):
   29549         * svg/SVGAnimateColorElement.h:
   29550         
   29551         Made this AnimateElement subclass. All functionality is now provided by AnimateElement.
   29552         
   29553         * svg/SVGAnimateElement.cpp:
   29554         (WebCore::SVGAnimateElement::determinePropertyType):
   29555         (WebCore::SVGAnimateElement::calculateAnimatedValue):
   29556         (WebCore::SVGAnimateElement::calculateFromAndToValues):
   29557         (WebCore::SVGAnimateElement::calculateFromAndByValues):
   29558         (WebCore::SVGAnimateElement::resetToBaseValue):
   29559         (WebCore::SVGAnimateElement::applyResultsToTarget):
   29560         * svg/SVGAnimateElement.h:
   29561         * svg/SVGAnimateMotionElement.cpp:
   29562         (WebCore::SVGAnimateMotionElement::resetToBaseValue):
   29563         (WebCore::SVGAnimateMotionElement::calculateAnimatedValue):
   29564         (WebCore::SVGAnimateMotionElement::applyResultsToTarget):
   29565         * svg/SVGAnimateMotionElement.h:
   29566         * svg/SVGAnimateTransformElement.cpp:
   29567         (WebCore::SVGAnimateTransformElement::resetToBaseValue):
   29568         (WebCore::SVGAnimateTransformElement::calculateAnimatedValue):
   29569         (WebCore::SVGAnimateTransformElement::calculateFromAndByValues):
   29570         (WebCore::SVGAnimateTransformElement::applyResultsToTarget):
   29571         * svg/SVGAnimateTransformElement.h:
   29572         
   29573         Switch to new model where
   29574         - resetToBaseValue() resets the animated value back to the base value
   29575         - calculateAnimatedValue() computes the value and adds it to the element used for accumulation
   29576         - applyResultsToTarget() sets the computed value the target element
   29577         
   29578         * svg/SVGAnimationElement.cpp:
   29579         (WebCore::SVGAnimationElement::fromValue):
   29580         (WebCore::SVGAnimationElement::attributeIsCSS):
   29581         (WebCore::SVGAnimationElement::targetAttributeIsCSS):
   29582         (WebCore::SVGAnimationElement::setTargetAttributeAnimatedValue):
   29583         
   29584         Update instances too.
   29585         
   29586         (WebCore::SVGAnimationElement::startedActiveInterval):
   29587         (WebCore::SVGAnimationElement::updateAnimation):
   29588         (WebCore::SVGAnimationElement::endedActiveInterval):
   29589         * svg/SVGAnimationElement.h:
   29590         * svg/SVGSVGElement.cpp:
   29591         (WebCore::SVGSVGElement::SVGSVGElement):
   29592         * svg/SVGSetElement.cpp:
   29593         (WebCore::SVGSetElement::SVGSetElement):
   29594         * svg/SVGSetElement.h:
   29595         
   29596         Made this AnimateElement subclass. All functionality is now provided by AnimateElement.
   29597         
   29598         * svg/animation/SMILTimeContainer.cpp:
   29599         (WebCore::SMILTimeContainer::SMILTimeContainer):
   29600         (WebCore::SMILTimeContainer::unschedule):
   29601         (WebCore::SMILTimeContainer::updateDocumentOrderIndexes):
   29602         (WebCore::PriorityCompare::PriorityCompare):
   29603         (WebCore::PriorityCompare::operator()):
   29604         (WebCore::SMILTimeContainer::sortByPriority):
   29605         (WebCore::applyOrderSortFunction):
   29606         (WebCore::sortByApplyOrder):
   29607         (WebCore::SMILTimeContainer::baseValueFor):
   29608         (WebCore::SMILTimeContainer::updateAnimations):
   29609         * svg/animation/SMILTimeContainer.h:
   29610         (WebCore::SMILTimeContainer::create):
   29611         (WebCore::SMILTimeContainer::setDocumentOrderIndexesDirty):
   29612         
   29613         Do additive animation with the following steps
   29614         - sort active animations based on their priority (begin time, document order).
   29615         - if not yet saved for each (element, attribute) pair save the base value.
   29616         - lowest priority animation for each (element, attribute) acts as the result element.
   29617         - animation results are resolved in priority order and results are accumulated to the result element.
   29618         - after all active animations have been processed the values in result elements are applied to the target elements.
   29619         
   29620         * svg/animation/SVGSMILElement.cpp:
   29621         (WebCore::SVGSMILElement::SVGSMILElement):
   29622         (WebCore::SVGSMILElement::insertedIntoDocument):
   29623         
   29624         Invalidate document order index.
   29625         
   29626         (WebCore::SVGSMILElement::attributeName):
   29627         (WebCore::SVGSMILElement::isInactive):
   29628         (WebCore::SVGSMILElement::isFrozen):
   29629         (WebCore::SVGSMILElement::beginListChanged):
   29630         (WebCore::SVGSMILElement::determineActiveState):
   29631         (WebCore::SVGSMILElement::isContributing):
   29632         (WebCore::SVGSMILElement::progress):
   29633         
   29634         Take care that animations in frozen state still contribute to the total. Since we now build the result starting
   29635         from the base value, fill="replace" works magically simply by not contributing anything.
   29636         
   29637         * svg/animation/SVGSMILElement.h:
   29638         (WebCore::SVGSMILElement::previousIntervalBegin):
   29639         (WebCore::SVGSMILElement::documentOrderIndex):
   29640         (WebCore::SVGSMILElement::setDocumentOrderIndex):
   29641 
   29642 2008-04-17  Jon Honeycutt  <jhoneycutt (a] apple.com>
   29643 
   29644         Reviewed by Darin, Alice.
   29645 
   29646         Implement AXObjectCache::detachWrapper() on Windows.
   29647 
   29648         * page/win/AXObjectCacheWin.cpp:
   29649         (WebCore::AXObjectCache::detachWrapper): If this object has a wrapper,
   29650         call its detach() method.
   29651 
   29652 2008-04-17  Jon Honeycutt  <jhoneycutt (a] apple.com>
   29653 
   29654         Reviewed by mrowe.
   29655 
   29656         Define HAVE_ACCESSIBILITY in a way that WebKit and WebCore can see it.
   29657 
   29658         * config.h: Remove HAVE_ACCESSIBILITY.
   29659         * page/AccessibilityObject.h: Include wtf/Platform.h to pick up
   29660         HAVE_ACCESSIBILITY.
   29661 
   29662 2008-04-17  Jon Honeycutt  <jhoneycutt (a] apple.com>
   29663 
   29664         Reviewed by aliu.
   29665 
   29666         * page/AccessibilityObject.cpp:
   29667         (WebCore::AccessibilityObject::layoutCount): Check isRenderView() before
   29668         casting to RenderView.
   29669 
   29670 2008-04-17  Antti Koivisto  <antti (a] apple.com>
   29671 
   29672         Reviewed by Oliver.
   29673         
   29674         Fix https://bugs.webkit.org/show_bug.cgi?id=18551
   29675         Bug 18551: REGRESSION (r31801?): Crash in ContainerNode::removedFromDocument on many SVG tests under guard malloc
   29676         
   29677         Freeing a RefPtr that is the last ref to the parent from removedFromDocument() is a bad idea.
   29678 
   29679         Caching the target element is too dangerous, let's simply not do it. Getting it is very cheap anyway.
   29680 
   29681         * svg/animation/SVGSMILElement.cpp:
   29682         (WebCore::SVGSMILElement::removedFromDocument):
   29683         (WebCore::SVGSMILElement::attributeChanged):
   29684         (WebCore::SVGSMILElement::targetElement):
   29685         * svg/animation/SVGSMILElement.h:
   29686 
   29687 2008-04-17  Sam Weinig  <sam (a] webkit.org>
   29688 
   29689         Reviewed by Anders Carlsson.
   29690 
   29691         Autogenerate the XMLHttpRequest javascript binding.
   29692 
   29693         * GNUmakefile.am:
   29694         * WebCore.pro:
   29695         * WebCore.vcproj/WebCore.vcproj:
   29696         * WebCoreSources.bkl:
   29697         * DerivedSources.make:
   29698         * WebCore.xcodeproj/project.pbxproj:
   29699         * bindings/js/JSDOMWindowBase.cpp:
   29700         * bindings/js/JSXMLHttpRequest.cpp: Removed.
   29701         * bindings/js/JSXMLHttpRequest.h: Removed.
   29702         * bindings/js/JSXMLHttpRequestConstructor.cpp: Added.
   29703         (WebCore::JSXMLHttpRequestConstructor::JSXMLHttpRequestConstructor):
   29704         (WebCore::JSXMLHttpRequestConstructor::implementsConstruct):
   29705         (WebCore::JSXMLHttpRequestConstructor::construct):
   29706         * bindings/js/JSXMLHttpRequestConstructor.h: Added.
   29707         (WebCore::JSXMLHttpRequestConstructor::classInfo):
   29708         * bindings/js/JSXMLHttpRequestCustom.cpp: Added.
   29709         (WebCore::JSXMLHttpRequest::mark):
   29710         (WebCore::JSXMLHttpRequest::onreadystatechange):
   29711         (WebCore::JSXMLHttpRequest::setOnreadystatechange):
   29712         (WebCore::JSXMLHttpRequest::onload):
   29713         (WebCore::JSXMLHttpRequest::setOnload):
   29714         (WebCore::JSXMLHttpRequest::responseXML):
   29715         (WebCore::JSXMLHttpRequest::open):
   29716         (WebCore::JSXMLHttpRequest::setRequestHeader):
   29717         (WebCore::JSXMLHttpRequest::send):
   29718         (WebCore::JSXMLHttpRequest::getResponseHeader):
   29719         (WebCore::JSXMLHttpRequest::overrideMimeType):
   29720         (WebCore::JSXMLHttpRequest::addEventListener):
   29721         (WebCore::JSXMLHttpRequest::removeEventListener):
   29722         (WebCore::JSXMLHttpRequest::dispatchEvent):
   29723         * xml/XMLHttpRequest.cpp:
   29724         (WebCore::XMLHttpRequest::readyState):
   29725         (WebCore::XMLHttpRequest::responseText):
   29726         * xml/XMLHttpRequest.h:
   29727         * xml/XMLHttpRequest.idl: Added.
   29728 
   29729 2008-04-17  Brady Eidson  <beidson (a] apple.com>
   29730 
   29731         Reviewed by Anders
   29732 
   29733         The SessionStorage for a Page has to be copied every time a new Page is created.
   29734 
   29735         I thought I had the right choke point for creating new Pages at FrameLoader::createWindow(),
   29736         but it just so happens there was another - in the ContextMenuController.
   29737 
   29738         The *real* choke point for this, then, is in the Chrome itself.
   29739 
   29740         * loader/FrameLoader.cpp:
   29741         (WebCore::FrameLoader::createWindow): Don't do the SessionStorage copy here...
   29742 
   29743         * page/Chrome.cpp:
   29744         (WebCore::Chrome::createWindow): Do it here, instead!
   29745 
   29746 2008-04-17  Alice Liu  <alice.liu (a] apple.com>
   29747 
   29748         Reviewed by Jon Honeycutt.
   29749 
   29750         Added some asserts to catch undesirable usage of setWrapper and addChildren.
   29751         * page/AccessibilityObject.cpp:
   29752         (WebCore::AccessibilityObject::addChildren):
   29753         * page/AccessibilityObject.h:
   29754         (WebCore::AccessibilityObject::setWrapper):
   29755 
   29756 2008-04-17  Brady Eidson  <beidson (a] apple.com>
   29757 
   29758         Reviewed by the Mitzpettel
   29759 
   29760         Before things get much more intertwined, move away from a global LocalStorage model
   29761         to a per-PageGroup LocalStorage model.
   29762 
   29763         * page/DOMWindow.cpp:
   29764         (WebCore::DOMWindow::localStorage): Get it from the current PageGroup, not the global
   29765           LocalStorage (which doesn't exist anymore).
   29766 
   29767         * page/Page.cpp:
   29768         * page/PageGroup.cpp:
   29769         (WebCore::PageGroup::localStorage): Create a LocalStorage object on demand.
   29770         * page/PageGroup.h:
   29771 
   29772         * storage/LocalStorage.cpp:
   29773         (WebCore::LocalStorage::LocalStorage): Hold a back pointer to the owning PageGroup.
   29774         (WebCore::LocalStorage::storageArea):
   29775         * storage/LocalStorage.h:
   29776         (WebCore::LocalStorage::create):
   29777 
   29778         * storage/LocalStorageArea.cpp:
   29779         (WebCore::LocalStorageArea::LocalStorageArea): Hold a back pointer to the owning LocalStorage.
   29780         * storage/LocalStorageArea.h:
   29781         (WebCore::LocalStorageArea::create):
   29782 
   29783 2008-04-17  Anders Carlsson  <andersca (a] apple.com>
   29784 
   29785         Fix indentation.
   29786         
   29787         * loader/DocumentLoader.cpp:
   29788         (WebCore::DocumentLoader::scheduleArchiveLoad):
   29789 
   29790 2008-04-17  Anders Carlsson  <andersca (a] apple.com>
   29791 
   29792         Reviewed by Brady.
   29793 
   29794         When in the web archive debug mode, don't call didFail immediately. Instead,
   29795         add the loader to the substitute resource map, but with a null resource, which
   29796         indicates to substituteResourceDeliveryTimerFired that the load should fail.
   29797         
   29798         * loader/DocumentLoader.cpp:
   29799         (WebCore::DocumentLoader::substituteResourceDeliveryTimerFired):
   29800         (WebCore::DocumentLoader::scheduleArchiveLoad):
   29801         * loader/ResourceLoader.cpp:
   29802         (WebCore::ResourceLoader::load):
   29803 
   29804 2008-04-17  Anders Carlsson  <andersca (a] apple.com>
   29805 
   29806         Reviewed by Sam.
   29807 
   29808         Add JS bindings for the DOMApplicationCache object.
   29809         
   29810         * bindings/js/JSDOMApplicationCacheCustom.cpp:
   29811         (WebCore::JSDOMApplicationCache::add):
   29812         (WebCore::JSDOMApplicationCache::remove):
   29813         (WebCore::JSDOMApplicationCache::addEventListener):
   29814         (WebCore::JSDOMApplicationCache::removeEventListener):
   29815         (WebCore::JSDOMApplicationCache::dispatchEvent):
   29816         (WebCore::JSDOMApplicationCache::setOnchecking):
   29817         (WebCore::JSDOMApplicationCache::onchecking):
   29818         (WebCore::JSDOMApplicationCache::setOnerror):
   29819         (WebCore::JSDOMApplicationCache::onerror):
   29820         (WebCore::JSDOMApplicationCache::setOnnoupdate):
   29821         (WebCore::JSDOMApplicationCache::onnoupdate):
   29822         (WebCore::JSDOMApplicationCache::setOndownloading):
   29823         (WebCore::JSDOMApplicationCache::ondownloading):
   29824         (WebCore::JSDOMApplicationCache::setOnprogress):
   29825         (WebCore::JSDOMApplicationCache::onprogress):
   29826         (WebCore::JSDOMApplicationCache::setOnupdateready):
   29827         (WebCore::JSDOMApplicationCache::onupdateready):
   29828         (WebCore::JSDOMApplicationCache::setOncached):
   29829         (WebCore::JSDOMApplicationCache::oncached):
   29830         (WebCore::JSDOMApplicationCache::mark):
   29831         * bindings/js/JSDOMWindowCustom.cpp:
   29832         (WebCore::JSDOMWindow::mark):
   29833         * bindings/js/JSEventTargetBase.cpp:
   29834         (WebCore::toJS):
   29835         * loader/appcache/DOMApplicationCache.idl:
   29836         * page/DOMWindow.idl:
   29837 
   29838 2008-04-17 Eric Carlson  <eric.carlson (a] apple.com> 
   29839 
   29840         Reviewed by Adele. 
   29841 
   29842         Fix for <rdar://problem/5861642> QTMovieWin returns uninitialized values
   29843 
   29844         * platform/graphics/win/QTMovieWin.cpp:
   29845         (QTMovieWin::rate):
   29846         (QTMovieWin::setRate):
   29847         (QTMovieWin::setVolume):
   29848         (QTMovieWin::getNaturalSize):
   29849 
   29850 2008-04-17  Marco Barisione  <marco.barisione (a] collabora.co.uk>
   29851 
   29852         Reviewed by Alp Toker.
   29853 
   29854         http://bugs.webkit.org/show_bug.cgi?id=18335
   29855         Pango font backend unable to display japanese properly
   29856 
   29857         Different fonts can have different glyph indices, so we need to pass
   29858         the right font when retrieving a glyph index.
   29859 
   29860         * platform/graphics/gtk/GlyphPageTreeNodePango.cpp:
   29861         (WebCore::pango_font_get_glyph): Temporarily override the font in the
   29862         PangoAnalysis passed to pango_shape.
   29863 
   29864 2008-04-17  Anders Carlsson  <andersca (a] apple.com>
   29865 
   29866         According to Sam and David, it's "topLevel", not "toplevel".
   29867         
   29868         * loader/DocumentLoader.cpp:
   29869         (WebCore::DocumentLoader::topLevelApplicationCache):
   29870         * loader/DocumentLoader.h:
   29871         * loader/appcache/DOMApplicationCache.cpp:
   29872         (WebCore::DOMApplicationCache::associatedCache):
   29873 
   29874 2008-04-17  Anders Carlsson  <andersca (a] apple.com>
   29875 
   29876         Reviewed by Sam.
   29877 
   29878         Add DOMApplicationCache implementation.
   29879         
   29880         * dom/EventNames.h:
   29881         Add new event names.
   29882         
   29883         * dom/EventTarget.cpp:
   29884         (WebCore::EventTarget::toDOMApplicationCache):
   29885         * dom/EventTarget.h:
   29886         Add EventTarget conversion method.
   29887         
   29888         * loader/appcache/ApplicationCacheGroup.h:
   29889         (WebCore::ApplicationCacheGroup::):
   29890         (WebCore::ApplicationCacheGroup::status):
   29891         (WebCore::ApplicationCacheGroup::update):
   29892         (WebCore::ApplicationCacheGroup::newestCache):
   29893         Add more stubs.
   29894         
   29895         * loader/appcache/DOMApplicationCache.cpp:
   29896         * loader/appcache/DOMApplicationCache.h:
   29897 
   29898         * page/DOMWindow.cpp:
   29899         (WebCore::DOMWindow::clear):
   29900         (WebCore::DOMWindow::applicationCache):
   29901         * page/DOMWindow.h:
   29902         (WebCore::DOMWindow::optionalApplicationCache):
   29903         Add ApplicationCache member.
   29904         
   29905 2008-04-17  Anders Carlsson  <andersca (a] apple.com>
   29906 
   29907         Build fix.
   29908 
   29909         * WebCore.vcproj/WebCore.vcproj:
   29910 
   29911 2008-04-17  Dean Jackson  <dino (a] apple.com>
   29912 
   29913         Reviewed by Hyatt.
   29914 
   29915         Fix for <rdar://problem/5849968> translate method should have Y=0 when only X is present
   29916 
   29917         Test: fast/css/transform-default-parameter.html
   29918 
   29919         * css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::applyProperty):
   29920         translate function with only X parameter now leaves the Y parameter as zero.
   29921 
   29922 2008-04-17  Anders Carlsson  <andersca (a] apple.com>
   29923 
   29924         Reviewed by Sam.
   29925         
   29926         Add plumbing for associating document loaders with application caches.
   29927         
   29928         * loader/DocumentLoader.cpp:
   29929         (WebCore::DocumentLoader::DocumentLoader):
   29930         (WebCore::DocumentLoader::~DocumentLoader):
   29931         (WebCore::DocumentLoader::originalURL):
   29932         (WebCore::DocumentLoader::requestURL):
   29933         (WebCore::DocumentLoader::responseURL):
   29934         (WebCore::DocumentLoader::responseMIMEType):
   29935         (WebCore::DocumentLoader::setCandidateApplicationCacheGroup):
   29936         (WebCore::DocumentLoader::setApplicationCache):
   29937         (WebCore::DocumentLoader::toplevelApplicationCache):
   29938         * loader/DocumentLoader.h:
   29939         (WebCore::DocumentLoader::candidateApplicationCacheGroup):
   29940         (WebCore::DocumentLoader::applicationCache):
   29941         * loader/appcache/ApplicationCacheGroup.h:
   29942         (WebCore::ApplicationCacheGroup::documentLoaderDestroyed):
   29943 
   29944 2008-04-17  Adam Roben  <aroben (a] apple.com>
   29945 
   29946         Fix Bug 18544: REGRESSION (r31951): Two fast/xsl tests crash
   29947 
   29948         <https://bugs.webkit.org/show_bug.cgi?id=18544>
   29949 
   29950         r31951 changed XSLTProcessor::parseErrorFunc to expect a Console* as
   29951         the context parameter. The caller in XSLTProcessor was changed, but
   29952         the one in XSLStyleSheet was missed.
   29953 
   29954         Reviewed by Alexey Proskuryakov.
   29955 
   29956         * xml/XSLStyleSheet.cpp:
   29957         (WebCore::XSLStyleSheet::parseString): Pass the Console as the context
   29958         to parseErrorFunc.
   29959 
   29960 2008-04-17  Adam Roben  <aroben (a] apple.com>
   29961 
   29962         Windows build fix after r31981
   29963 
   29964         * dom/Document.idl: Omit getCSSCanvasContext from the COM bindings.
   29965 
   29966 2008-04-17  Ariya Hidayat  <ariya.hidayat (a] trolltech.com>
   29967 
   29968         Reviewed by Simon.
   29969 
   29970         Implemented getFileModificationTime and pathGetFileName for the Qt port.
   29971 
   29972         * platform/qt/FileSystemQt.cpp:
   29973         (WebCore::getFileModificationTime):
   29974 
   29975 2008-04-17  Mark Rowe  <mrowe (a] apple.com>
   29976 
   29977         Fix the non-Mac builds that I broke with my Mac build fix.
   29978 
   29979         * css/CSSMutableStyleDeclaration.cpp:
   29980         (WebCore::CSSMutableStyleDeclaration::getLayeredShorthandValue): Explicitly use the size_t version of max
   29981         to avoid making assumptions about sizeof(size_t).
   29982 
   29983 2008-04-17  Mark Rowe  <mrowe (a] apple.com>
   29984 
   29985         Rubber-stamped by Dan Bernstein.
   29986 
   29987         Fix the Mac build.
   29988 
   29989         * css/CSSMutableStyleDeclaration.cpp:
   29990         (WebCore::CSSMutableStyleDeclaration::getLayeredShorthandValue): Update to use size_t in place of unsigned.
   29991         * dom/NamedNodeMap.h: Ditto.
   29992         * page/AccessibilityObject.h: Forward-declare AccessibilityObjectWrapper in the non-Objective-C case too.
   29993 
   29994 2008-04-16  Jon Honeycutt  <jhoneycutt (a] apple.com>
   29995 
   29996         Reviewed by Darin.
   29997 
   29998         Use size_t instead of unsigned where appropriate.
   29999 
   30000         * css/CSSValueList.h:
   30001         * dom/NamedAttrMap.h:
   30002         * rendering/RenderStyle.h:
   30003 
   30004 2008-04-15  Jon Honeycutt  <jhoneycutt (a] apple.com>
   30005 
   30006         Reviewed by Darin.
   30007 
   30008         Add some methods to check AccessibilityObject state.
   30009 
   30010         * page/AccessibilityObject.cpp:
   30011         (WebCore::AccessibilityObject::AccessibilityObject): Assert that the
   30012         passed renderer is not null.
   30013         (WebCore::AccessibilityObject::isPasswordField): Refactored to use early
   30014         return.
   30015         (WebCore::AccessibilityObject::isPressed): Return true if this is a
   30016         button in the pressed state.
   30017         (WebCore::AccessibilityObject::isIndeterminate): Return true if this is
   30018         a tri-state checkbox in the indeterminate state.
   30019         (WebCore::AccessibilityObject::isChecked): True if this is a radio
   30020         button or checkbox in the checked state.
   30021         (WebCore::AccessibilityObject::isHovered): True if object is currently
   30022         under the mouse cursor.
   30023         (WebCore::AccessibilityObject::isMultiSelect): True if this is a select
   30024         element capable of multi-select.
   30025         (WebCore::AccessibilityObject::isReadOnly): False if this object has
   30026         editable content.
   30027         (WebCore::AccessibilityObject::isOffScreen): True if this object is not
   30028         in the visible portion of the view.
   30029         * page/AccessibilityObject.h: Grouped methods into is-state and is-kind.
   30030 
   30031 2008-04-15  Jon Honeycutt  <jhoneycutt (a] apple.com>
   30032 
   30033         Reviewed by Darin.
   30034 
   30035         Add AccessibilityObjectWrapper to Windows.
   30036 
   30037         * WebCore.vcproj/WebCore.vcproj: Add AccessibilityObjectWrapperWin.h
   30038         * page/AccessibilityObject.h: Include COMPtr.h,
   30039         AccessibilityObjectWrapperWin.h on Windows. Define wrapper() and
   30040         setWrapper() if accessibility is present. Add an m_wrapper on Windows.
   30041         * page/AccessibilityObject.cpp:
   30042         (WebCore::AccessibilityObject::detach): Clear m_wrapper if
   30043         accessibility is present.
   30044         * page/win/AccessibilityObjectWrapperWin.h: Added; defines a wrapper for
   30045         AccessibilityObjects on Windows.
   30046         (WebCore::AccessibilityObjectWrapper::attached): Return true if attached
   30047         to an object.
   30048         (WebCore::AccessibilityObjectWrapper::accessibilityObject): Return the
   30049         wrapped object.
   30050         (WebCore::AccessibilityObjectWrapper::AccessibilityObjectWrapper):
   30051 
   30052 2008-04-15  Jon Honeycutt  <jhoneycutt (a] apple.com>
   30053 
   30054         Reviewed by Darin.
   30055 
   30056         Add AXObjectCache to Windows.
   30057 
   30058         * WebCore.vcproj/WebCore.vcproj: Add AXObjectCacheWin.cpp.
   30059         * page/AXObjectCache.h: Add handleFocusedUIElementChanged definition to
   30060         non-Mac platforms, and added stub for it. Replace PLATFORM(MAC)
   30061         conditional with HAVE(ACCESSIBILITY) for stubs.
   30062         (WebCore::AXObjectCache::enableAccessibility):
   30063         (WebCore::AXObjectCache::accessibilityEnabled):
   30064         * page/win/AXObjectCacheWin.cpp: Added; contains stubs for the methods
   30065         below.
   30066         (WebCore::AXObjectCache::detachWrapper):
   30067         (WebCore::AXObjectCache::attachWrapper):
   30068         (WebCore::AXObjectCache::postNotification):
   30069         (WebCore::AXObjectCache::postNotificationToElement):
   30070         * config.h: Define HAVE_ACCESSIBILITY on Mac and Windows.
   30071 
   30072 2008-04-15  Jon Honeycutt  <jhoneycutt (a] apple.com>
   30073 
   30074         Reviewed by Darin.
   30075 
   30076         * WebCore.vcproj/WebCore.vcproj: Fix path to AXObjectCache.h.
   30077 
   30078 2008-04-16  Brady Eidson  <beidson (a] apple.com>
   30079 
   30080         Reviewed by Darin Adler
   30081 
   30082         Merge the StorageAreaClient into the StorageArea class itself as pure virtual methods.
   30083         Add "LocalStorageArea" and "SessionStorageArea" implementations, and have SessionStorage
   30084         and LocalStorage instantiate the appropriate type of StorageArea object.
   30085 
   30086         This purpose of this change is because while adding the persistent store to LocalStorage,
   30087         it became obvious that the client approach wasn't scaling well.  Additionally, a StorageArea
   30088         backing a local storage area required vastly different data members compared to one backing
   30089         a session storage area.
   30090 
   30091         This will be much cleaner going forward.
   30092 
   30093         * GNUmakefile.am:
   30094         * WebCore.pro:
   30095         * WebCore.vcproj/WebCore.vcproj:
   30096         * WebCore.xcodeproj/project.pbxproj:
   30097         * WebCoreSources.bkl:
   30098 
   30099         * storage/LocalStorage.cpp:
   30100         (WebCore::LocalStorage::storageArea):
   30101         * storage/LocalStorage.h:
   30102 
   30103         * storage/LocalStorageArea.cpp: Added.
   30104         (WebCore::LocalStorageArea::LocalStorageArea):
   30105         (WebCore::LocalStorageArea::itemChanged):
   30106         (WebCore::LocalStorageArea::itemRemoved):
   30107         (WebCore::LocalStorageArea::dispatchStorageEvent):
   30108         * storage/LocalStorageArea.h: Added.
   30109         (WebCore::LocalStorageArea::create):
   30110 
   30111         * storage/SessionStorage.cpp:
   30112         (WebCore::SessionStorage::copy):
   30113         (WebCore::SessionStorage::storageArea):
   30114         * storage/SessionStorage.h:
   30115 
   30116         * storage/SessionStorageArea.cpp: Added.
   30117         (WebCore::SessionStorageArea::copy):
   30118         (WebCore::SessionStorageArea::SessionStorageArea):
   30119         (WebCore::SessionStorageArea::itemChanged):
   30120         (WebCore::SessionStorageArea::itemRemoved):
   30121         (WebCore::SessionStorageArea::dispatchStorageEvent):
   30122         * storage/SessionStorageArea.h: Added.
   30123         (WebCore::SessionStorageArea::create):
   30124         (WebCore::SessionStorageArea::page):
   30125 
   30126         * storage/StorageArea.cpp:
   30127         (WebCore::StorageArea::StorageArea):
   30128         (WebCore::StorageArea::setItem):
   30129         (WebCore::StorageArea::removeItem):
   30130         (WebCore::StorageArea::storageMap):
   30131         * storage/StorageArea.h:
   30132 
   30133         * storage/StorageAreaClient.h: Removed.
   30134 
   30135 2008-04-16  David Hyatt  <hyatt (a] apple.com>
   30136 
   30137         Add support for the ability to draw directly into CSS images using CanvasRenderingContext2D.
   30138 
   30139         Reviewed by olliej
   30140 
   30141         Added fast/canvas/canvas-bg.html
   30142 
   30143         * GNUmakefile.am:
   30144         * WebCore.pro:
   30145         * WebCore.vcproj/WebCore.vcproj:
   30146         * WebCore.xcodeproj/project.pbxproj:
   30147         * WebCoreSources.bkl:
   30148         * css/CSSCanvasValue.cpp: Added.
   30149         (WebCore::CSSCanvasValue::~CSSCanvasValue):
   30150         (WebCore::CSSCanvasValue::cssText):
   30151         (WebCore::CSSCanvasValue::canvasChanged):
   30152         (WebCore::CSSCanvasValue::canvasResized):
   30153         (WebCore::CSSCanvasValue::fixedSize):
   30154         (WebCore::CSSCanvasValue::element):
   30155         (WebCore::CSSCanvasValue::image):
   30156         * css/CSSCanvasValue.h: Added.
   30157         (WebCore::CSSCanvasValue::CSSCanvasValue):
   30158         (WebCore::CSSCanvasValue::isFixedSize):
   30159         (WebCore::CSSCanvasValue::setName):
   30160         * css/CSSGradientValue.cpp:
   30161         * css/CSSGradientValue.h:
   30162         * css/CSSImageGeneratorValue.cpp:
   30163         (WebCore::CSSImageGeneratorValue::generatedImage):
   30164         * css/CSSImageGeneratorValue.h:
   30165         (WebCore::CSSImageGeneratorValue::isFixedSize):
   30166         (WebCore::CSSImageGeneratorValue::fixedSize):
   30167         * css/CSSParser.cpp:
   30168         (WebCore::CSSParser::parseContent):
   30169         (WebCore::CSSParser::parseBackgroundImage):
   30170         (WebCore::CSSParser::parseBorderImage):
   30171         (WebCore::CSSParser::parseCanvas):
   30172         * css/CSSParser.h:
   30173         * dom/Document.cpp:
   30174         (WebCore::Document::getCSSCanvasContext):
   30175         (WebCore::Document::getCSSCanvasElement):
   30176         * dom/Document.h:
   30177         * dom/Document.idl:
   30178         * html/HTMLCanvasElement.cpp:
   30179         (WebCore::HTMLCanvasElement::HTMLCanvasElement):
   30180         (WebCore::HTMLCanvasElement::reset):
   30181         * html/HTMLCanvasElement.h:
   30182         (WebCore::HTMLCanvasElement::setSize):
   30183         * rendering/RenderBox.cpp:
   30184         (WebCore::RenderBox::calculateBackgroundSize):
   30185         (WebCore::RenderBox::imageChanged):
   30186         * rendering/RenderBox.h:
   30187         * rendering/RenderImage.cpp:
   30188         (WebCore::RenderImage::imageChanged):
   30189         * rendering/RenderImage.h:
   30190         (WebCore::RenderImage::imagePtr):
   30191         (WebCore::RenderImage::intrinsicSizeChanged):
   30192         * rendering/RenderImageGeneratedContent.h:
   30193         (WebCore::RenderImageGeneratedContent::imageSize):
   30194         (WebCore::RenderImageGeneratedContent::imagePtr):
   30195         * rendering/RenderListMarker.cpp:
   30196         (WebCore::RenderListMarker::layout):
   30197         (WebCore::RenderListMarker::imageChanged):
   30198         (WebCore::RenderListMarker::calcPrefWidths):
   30199         (WebCore::RenderListMarker::getRelativeMarkerRect):
   30200         * rendering/RenderListMarker.h:
   30201         * rendering/RenderObject.cpp:
   30202         (WebCore::RenderObject::paintBorderImage):
   30203         (WebCore::RenderObject::imageChanged):
   30204         * rendering/RenderObject.h:
   30205         (WebCore::RenderObject::imageChanged):
   30206         * rendering/RenderSVGImage.cpp:
   30207         (WebCore::RenderSVGImage::imageChanged):
   30208         * rendering/RenderSVGImage.h:
   30209         * rendering/RenderStyle.cpp:
   30210         (WebCore::StyleCachedImage::imageSize):
   30211         (WebCore::StyleGeneratedImage::imageSize):
   30212         * rendering/RenderStyle.h:
   30213         (WebCore::StyleCachedImage::data):
   30214         (WebCore::StyleGeneratedImage::StyleGeneratedImage):
   30215         (WebCore::StyleGeneratedImage::data):
   30216         (WebCore::StyleGeneratedImage::imageHasRelativeWidth):
   30217         (WebCore::StyleGeneratedImage::imageHasRelativeHeight):
   30218         (WebCore::StyleGeneratedImage::usesImageContainerSize):
   30219         * rendering/RenderTableCol.cpp:
   30220         (WebCore::RenderTableCol::imageChanged):
   30221         * rendering/RenderTableCol.h:
   30222         * rendering/RenderTableRow.cpp:
   30223         (WebCore::RenderTableRow::imageChanged):
   30224         * rendering/RenderTableRow.h:
   30225         * rendering/RenderTableSection.cpp:
   30226         (WebCore::RenderTableSection::imageChanged):
   30227         * rendering/RenderTableSection.h:
   30228 
   30229 2008-04-16  Anders Carlsson  <andersca (a] apple.com>
   30230 
   30231         Reviewed by Darin.
   30232 
   30233         Add manifest parser.
   30234 
   30235         * loader/appcache/ManifestParser.cpp:
   30236         (WebCore::parseManifest):
   30237         * loader/appcache/ManifestParser.h:
   30238         * platform/text/CharacterNames.h:
   30239 
   30240 2008-04-16  Darin Adler  <darin (a] apple.com>
   30241 
   30242         Reviewed by Mitz.
   30243 
   30244         - fix <rdar://problem/5858617> REGRESSION (r21452-Safari 3.1):
   30245           Safari does not find words containing  (German letter sharp-s)
   30246 
   30247         Test: fast/text/find-case-folding.html
   30248 
   30249         * platform/text/StringImpl.cpp:
   30250         (WebCore::StringImpl::foldCase):
   30251         Pass the folded length to foldCase rather than the original string length.
   30252         Without this, we get an error code every time.
   30253 
   30254 2008-04-16  Anders Carlsson  <andersca (a] apple.com>
   30255 
   30256         Fix build.
   30257         
   30258         * loader/appcache/ApplicationCache.cpp:
   30259         (WebCore::ApplicationCache::ApplicationCache):
   30260         (WebCore::ApplicationCache::setManifestResource):
   30261         (WebCore::ApplicationCache::addResource):
   30262 
   30263 2008-04-16  Anders Carlsson  <andersca (a] apple.com>
   30264 
   30265         Reviewed by Darin.
   30266 
   30267         Add new protocolHostAndPortAreEqual function.
   30268         
   30269         * platform/KURL.cpp:
   30270         (WebCore::KURL::host):
   30271         (WebCore::KURL::setHost):
   30272         (WebCore::KURL::setHostAndPort):
   30273         (WebCore::protocolHostAndPortAreEqual):
   30274         * platform/KURL.h:
   30275         (WebCore::KURL::hostStart):
   30276 
   30277 2008-04-16  Anders Carlsson  <andersca (a] apple.com>
   30278 
   30279         Reviewed by Sam.
   30280         
   30281         Fix some style nits.
   30282         
   30283         * loader/appcache/ApplicationCache.cpp:
   30284         (WebCore::ApplicationCache::ApplicationCache):
   30285         (WebCore::ApplicationCache::setManifestResource):
   30286         (WebCore::ApplicationCache::addResource):
   30287         (WebCore::ApplicationCache::removeResource):
   30288         (WebCore::ApplicationCache::dump):
   30289         * loader/appcache/ApplicationCacheGroup.h:
   30290 
   30291 2008-04-16  Anders Carlsson  <andersca (a] apple.com>
   30292 
   30293         Reviewed by Brady and Sam.
   30294 
   30295         Add ApplicationCache implementation. Stub out ApplicationCacheGroup methods
   30296         needed by ApplicationCache.
   30297         
   30298         * loader/appcache/ApplicationCache.cpp:
   30299         (WebCore::ApplicationCache::ApplicationCache):
   30300         (WebCore::ApplicationCache::~ApplicationCache):
   30301         (WebCore::ApplicationCache::setManifestResource):
   30302         (WebCore::ApplicationCache::addResource):
   30303         (WebCore::ApplicationCache::removeResource):
   30304         (WebCore::ApplicationCache::resourceForURL):
   30305         (WebCore::ApplicationCache::resourceForRequest):
   30306         (WebCore::ApplicationCache::numDynamicEntries):
   30307         (WebCore::ApplicationCache::dynamicEntry):
   30308         (WebCore::ApplicationCache::addDynamicEntry):
   30309         (WebCore::ApplicationCache::removeDynamicEntry):
   30310         (WebCore::ApplicationCache::setOnlineWhitelist):
   30311         (WebCore::ApplicationCache::isURLInOnlineWhitelist):
   30312         (WebCore::ApplicationCache::dump):
   30313         * loader/appcache/ApplicationCache.h:
   30314         (WebCore::ApplicationCache::create):
   30315         (WebCore::ApplicationCache::manifestResource):
   30316         (WebCore::ApplicationCache::group):
   30317         (WebCore::ApplicationCache::begin):
   30318         (WebCore::ApplicationCache::end):
   30319         * loader/appcache/ApplicationCacheGroup.h:
   30320         (WebCore::ApplicationCacheGroup::manifestURL):
   30321         (WebCore::ApplicationCacheGroup::cacheDestroyed):
   30322 
   30323 2008-04-16  Adam Roben  <aroben (a] apple.com>
   30324 
   30325         Fix Bug 18505: REGRESSION: Search is disabled and not functional
   30326 
   30327         <https://bugs.webkit.org/show_bug.cgi?id=18505>
   30328 
   30329         Reviewed by Tim Hatcher.
   30330 
   30331         * page/inspector/ResourcesPanel.js:
   30332         (WebInspector.ResourcesPanel.sourceFrameForResource): Added.
   30333         * page/inspector/inspector.css: Added back rules for the search field
   30334         that were removed in r31736.
   30335         * page/inspector/inspector.html:
   30336           - Removed the disabled attribute from the search field
   30337           - Added back the #searchResults and #searchResultsResizer divs which
   30338             were removed in r31736
   30339         * page/inspector/inspector.js:
   30340         (WebInspector.set showingSearchResults): Updated for class rename
   30341         panels -> main-panels.
   30342         (WebInspector.loaded): Added back the mousedown event listener for the
   30343         search results resizer that was removed in r31736.
   30344         (WebInspector.searchResultsResizerDrag): Updated for class rename
   30345         panels -> main-panels.
   30346         (WebInspector.performSearch):
   30347           - Changed to use sourceFrameForResource
   30348           - Changed to use showResource
   30349           - Changed to save/restore the focused element around the setting of
   30350             the current panel
   30351           - Changed to get the source document from the match range instead of
   30352             by crawling back up to the source view
   30353           - Changed to bind the onselect handlers to this so that we can
   30354             access the Elements/Resources panels
   30355 
   30356 2008-04-16  Brady Eidson  <beidson (a] apple.com>
   30357 
   30358         Reviewed by Sam Weinig
   30359 
   30360         Changing ThreadSafeShared to start with a ref count of 1, so updating all users to
   30361         adoptRef() that initial reference.
   30362 
   30363         * bindings/js/JSCustomSQLStatementCallback.h:
   30364         (WebCore::JSCustomSQLStatementCallback::create):
   30365         * bindings/js/JSCustomSQLStatementErrorCallback.h:
   30366         (WebCore::JSCustomSQLStatementErrorCallback::create):
   30367         * bindings/js/JSCustomSQLTransactionCallback.h:
   30368         (WebCore::JSCustomSQLTransactionCallback::create):
   30369         * bindings/js/JSCustomSQLTransactionErrorCallback.h:
   30370         (WebCore::JSCustomSQLTransactionErrorCallback::create):
   30371 
   30372         * bindings/js/JSDatabaseCustom.cpp:
   30373         (WebCore::JSDatabase::changeVersion):
   30374         (WebCore::JSDatabase::transaction):
   30375 
   30376         * bindings/js/JSSQLTransactionCustom.cpp:
   30377         (WebCore::JSSQLTransaction::executeSql):
   30378 
   30379         * dom/Document.cpp:
   30380         (WebCore::Document::databaseThread):
   30381 
   30382         * platform/SecurityOrigin.cpp:
   30383         (WebCore::SecurityOrigin::create):
   30384 
   30385         * platform/sql/SQLiteAuthorizer.h:
   30386         (WebCore::SQLiteAuthorizer::create):
   30387         (WebCore::SQLiteAuthorizer::SQLiteAuthorizer):
   30388 
   30389         * storage/ChangeVersionWrapper.cpp:
   30390         (WebCore::ChangeVersionWrapper::performPreflight):
   30391         (WebCore::ChangeVersionWrapper::performPostflight):
   30392         * storage/ChangeVersionWrapper.h:
   30393         (WebCore::ChangeVersionWrapper::create):
   30394 
   30395         * storage/Database.cpp:
   30396         (WebCore::Database::openAndVerifyVersion):
   30397         (WebCore::Database::markAsDeletedAndClose):
   30398         (WebCore::Database::changeVersion):
   30399         (WebCore::Database::transaction):
   30400         (WebCore::Database::scheduleTransaction):
   30401         (WebCore::Database::scheduleTransactionStep):
   30402         (WebCore::Database::tableNames):
   30403 
   30404         * storage/DatabaseAuthorizer.h:
   30405         (WebCore::DatabaseAuthorizer::create):
   30406 
   30407         * storage/DatabaseTask.h:
   30408         (WebCore::DatabaseOpenTask::create):
   30409         (WebCore::DatabaseCloseTask::create):
   30410         (WebCore::DatabaseTransactionTask::create):
   30411         (WebCore::DatabaseTableNamesTask::create):
   30412 
   30413         * storage/DatabaseThread.cpp:
   30414         (WebCore::DatabaseThread::scheduleTask): Change to take a PassRefPtr instead of raw
   30415         (WebCore::DatabaseThread::scheduleImmediateTask): Ditto
   30416         * storage/DatabaseThread.h:
   30417         (WebCore::DatabaseThread::create):
   30418 
   30419         * storage/SQLError.h:
   30420         (WebCore::SQLError::create):
   30421         (WebCore::SQLError::SQLError):
   30422 
   30423         * storage/SQLResultSet.h:
   30424         (WebCore::SQLResultSet::create):
   30425 
   30426         * storage/SQLStatement.cpp:
   30427         (WebCore::SQLStatement::create):
   30428         (WebCore::SQLStatement::execute):
   30429         (WebCore::SQLStatement::setDatabaseDeletedError):
   30430         (WebCore::SQLStatement::setVersionMismatchedError):
   30431         (WebCore::SQLStatement::setFailureDueToQuota):
   30432         * storage/SQLStatement.h:
   30433 
   30434         * storage/SQLTransaction.cpp:
   30435         (WebCore::SQLTransaction::create):
   30436         (WebCore::SQLTransaction::executeSQL):
   30437         (WebCore::SQLTransaction::openTransactionAndPreflight):
   30438         (WebCore::SQLTransaction::deliverTransactionCallback):
   30439         (WebCore::SQLTransaction::handleCurrentStatementError):
   30440         (WebCore::SQLTransaction::deliverStatementCallback):
   30441         (WebCore::SQLTransaction::postflightAndCommit):
   30442         * storage/SQLTransaction.h:
   30443 
   30444 2008-04-16  Anders Carlsson  <andersca (a] apple.com>
   30445 
   30446         Reviewed by Adam and Brady.
   30447         
   30448         Add implementation of ApplicationCacheResource.
   30449         
   30450         * loader/appcache/ApplicationCacheResource.cpp:
   30451         (WebCore::ApplicationCacheResource::ApplicationCacheResource):
   30452         (WebCore::ApplicationCacheResource::dumpType):
   30453         * loader/appcache/ApplicationCacheResource.h:
   30454         (WebCore::ApplicationCacheResource::):
   30455         (WebCore::ApplicationCacheResource::create):
   30456         (WebCore::ApplicationCacheResource::type):
   30457         (WebCore::ApplicationCacheResource::addType):
   30458 
   30459 2008-04-16  Timothy Hatcher  <timothy (a] apple.com>
   30460 
   30461         Fixes an issue where the source for a resource that had errors would
   30462         not be shown because the view was created before the resource load
   30463         finished. The right view is now created, even if the resource isn't 
   30464         finished. The SourceView just makes sure to not load the source until
   30465         the resource is finished. Only if the category changes, does the view
   30466         need to be recreated.
   30467 
   30468         Reviewed by Adam Roben.
   30469 
   30470         * page/inspector/Resource.js:
   30471         (WebInspector.Resource.prototype.set category): Call recreateViewForResourceIfNeeded.
   30472         * page/inspector/ResourcesPanel.js:
   30473         (WebInspector.ResourcesPanel.prototype.recreateViewForResourceIfNeeded):
   30474         Added. Tries to make a new view, if the view is the same prototype of the
   30475         previous view, return early. If they differ, close and detach the old view
   30476         and associate the resource with the new view. Calling updateErrorsAndWarnings
   30477         is needed, because the errors and warnings that might have been added to the
   30478         previous view will be lost, so make the tree element match.
   30479         (WebInspector.Resource.prototype._createResourceView): Always create a view
   30480         that matches the resource category. Ignore the loading and failed status.
   30481         * page/inspector/SourceView.js:
   30482         (WebInspector.SourceView.prototype.setupSourceFrameIfNeeded): Don't setup the
   30483         frame if the resource hasn't finished or if the load failed.
   30484 
   30485 2008-04-16  Timothy Hatcher  <timothy (a] apple.com>
   30486 
   30487         Adds a console formatter for Error objects. So typing a expression in the
   30488         console that ends in an exception will print meaningful info. Also calling
   30489         console.{log,error,warn,info} with an error object will output nicely.
   30490 
   30491         Reviewed by Adam Roben.
   30492 
   30493         * page/inspector/Console.js:
   30494         (WebInspector.Console.prototype._formaterror): Added. Formats an error
   30495         object by showing it like other exceptions, with a clickable file URL.
   30496 
   30497 2008-04-16  Timothy Hatcher  <timothy (a] apple.com>
   30498 
   30499         Refactors code that updates the errors and warnings count in the
   30500         resources sidebar so other functions can easily trigger updates.
   30501 
   30502         Reviewed by Adam Roben.
   30503 
   30504         * page/inspector/ResourcesPanel.js:
   30505         (WebInspector.ResourcesPanel.prototype.addMessageToResource): Call updateErrorsAndWarnings.
   30506         Removes code that updates the bubbleText and class names.
   30507         (WebInspector.ResourcesPanel.prototype.clearMessages): Ditto.
   30508         (WebInspector.ResourceSidebarTreeElement.prototype.updateErrorsAndWarnings):
   30509         Added. Updates the bubbleText and adds or removes the class names
   30510         depending on if the values are zero.
   30511 
   30512 2008-04-16  Antti Koivisto  <antti (a] apple.com>
   30513 
   30514         Reviewed by Alexey.
   30515         
   30516         Fix <rdar://problem/5863728>
   30517         REGRESSION: Garbage character shown in temperatures in the Weather widget (encoding issue with degree symbol)
   30518         
   30519         Parse the encoding attribute in PreloadScanner.
   30520 
   30521         Test: fast/encoding/script-preload-encoding.html
   30522 
   30523         * html/PreloadScanner.cpp:
   30524         (WebCore::PreloadScanner::processAttribute):
   30525         (WebCore::PreloadScanner::emitTag):
   30526         (WebCore::PreloadScanner::emitCSSRule):
   30527         * html/PreloadScanner.h:
   30528         * loader/DocLoader.cpp:
   30529         (WebCore::DocLoader::preload):
   30530         * loader/DocLoader.h:
   30531 
   30532 2008-04-16  Anders Carlsson  <andersca (a] apple.com>
   30533 
   30534         Reviewed by Adam.
   30535 
   30536         Generate the DOMApplicationCache JS wrapper, add JSDOMApplicationCacheCustom.cpp and 
   30537         fix typos in the #if line.
   30538         
   30539         * DerivedSources.make:
   30540         * WebCore.vcproj/WebCore.vcproj:
   30541         * WebCore.xcodeproj/project.pbxproj:
   30542         * bindings/js/JSDOMApplicationCacheCustom.cpp: Added.
   30543         * loader/appcache/ApplicationCache.cpp:
   30544         * loader/appcache/ApplicationCache.h:
   30545         * loader/appcache/ApplicationCacheGroup.cpp:
   30546         * loader/appcache/ApplicationCacheGroup.h:
   30547         * loader/appcache/ApplicationCacheResource.cpp:
   30548         * loader/appcache/ApplicationCacheResource.h:
   30549         * loader/appcache/DOMApplicationCache.cpp:
   30550         * loader/appcache/DOMApplicationCache.h:
   30551         * loader/appcache/DOMApplicationCache.idl:
   30552         * loader/appcache/ManifestParser.cpp:
   30553         * loader/appcache/ManifestParser.h:
   30554 
   30555 2008-04-16  Sam Weinig  <sam (a] webkit.org>
   30556 
   30557         Reviewed by Geoffrey Garen.
   30558 
   30559         - To keep the behavior of the WebKit and JavaScriptCore API's the same,
   30560           we need to hide the fact that the global object and the window object
   30561           are no longer the same thing, and the the global object now changes on
   30562           navigations.  To do this, only the wrapper should ever be exposed.  This
   30563           fixes the two remaining spots where the internal global object is exposed,
   30564           the windowScriptObject returned from [WebFrame windowObject] and the object
   30565           return by calling JSContextGetGlobalObject on [WebFrame globalContext]
   30566 
   30567         * bindings/js/JSDOMWindowWrapper.cpp:
   30568         (WebCore::JSDOMWindowWrapper::putWithAttributes):
   30569         * bindings/js/JSDOMWindowWrapper.h:
   30570         Forward this new method so that JSObjectSetProperty doesn't set properties on the 
   30571         wrapper.
   30572 
   30573         * page/mac/FrameMac.mm:
   30574         (WebCore::Frame::windowScriptObject):
   30575         Return the wrapper instead of the global object.
   30576 
   30577 2008-04-16  David Hyatt  <hyatt (a] apple.com>
   30578 
   30579         Eliminate the paintBuffer and drawImage(ImageBuffer*) methods from GraphicsContext* in favor of just
   30580         snagging an Image* from the ImageBuffer and drawing that instead.
   30581 
   30582         Enhance canvas with a CanvasObserver so that notifications of dirtying or resizing can be tracked by
   30583         a consumer.
   30584 
   30585         Reviewed by olliej
   30586 
   30587         * html/CanvasRenderingContext2D.cpp:
   30588         (WebCore::CanvasRenderingContext2D::drawImage):
   30589         * html/HTMLCanvasElement.cpp:
   30590         (WebCore::HTMLCanvasElement::HTMLCanvasElement):
   30591         (WebCore::HTMLCanvasElement::willDraw):
   30592         (WebCore::HTMLCanvasElement::reset):
   30593         (WebCore::HTMLCanvasElement::paint):
   30594         * html/HTMLCanvasElement.h:
   30595         (WebCore::CanvasObserver::~CanvasObserver):
   30596         (WebCore::HTMLCanvasElement::setSize):
   30597         (WebCore::HTMLCanvasElement::setObserver):
   30598         * platform/graphics/GraphicsContext.cpp:
   30599         (WebCore::GraphicsContext::drawImage):
   30600         (WebCore::GraphicsContext::drawTiledImage):
   30601         * platform/graphics/GraphicsContext.h:
   30602         * platform/graphics/ImageBuffer.h:
   30603         (WebCore::ImageBuffer::clearImage):
   30604         * platform/graphics/cairo/GraphicsContextCairo.cpp:
   30605         * platform/graphics/cg/GraphicsContextCG.cpp:
   30606         * platform/graphics/cg/ImageCG.cpp:
   30607         (WebCore::BitmapImage::draw):
   30608         (WebCore::Image::drawPattern):
   30609         * platform/graphics/cg/ImageSourceCG.cpp:
   30610         (WebCore::ImageSource::createFrameAtIndex):
   30611         * platform/graphics/qt/GraphicsContextQt.cpp:
   30612         * platform/graphics/wx/GraphicsContextWx.cpp:
   30613 
   30614 2008-04-16  Steve Falkenburg  <sfalken (a] apple.com>
   30615 
   30616         Improve timer latency/resolution.
   30617                 
   30618         The primary timing mechanism is now CreateTimerQueueTimer, with a PostMessage from
   30619         the callback proc.  This event will be delivered sooner than if we used SetTimer(),
   30620         since it is higher priority than other messages.
   30621         
   30622         If there is an input message pending, we'll use we SetTimer() based timers to avoid
   30623         starving user input.
   30624 
   30625         Don't call PostMessage immediately on all timers < 10ms.  Only call immediately if
   30626         timer is already expired.  This avoids the case where no timers would be processed,
   30627         causing the timer to be re-posted via the slower SetTimer method.
   30628 
   30629         Don't call PostMessage immediately if there's a pending WM_PAINT, since
   30630         we don't want to starve all paints when bombarded with a continuous stream of low
   30631         duration timers.
   30632 
   30633         Removed reentrancy check, since we're now looking for specific starvation cases,
   30634         and will typically defer non-expired timers through CreateTimerQueueTimer.
   30635 
   30636         The reason Windows wouldn't starve paints in favor of timers with the old code:
   30637         When we went to reset the timer when it fired, the timer reset code treated this as a
   30638         reentrant timer, causing us to hit the slow SetTimer code rather than calling PostMessage,
   30639         even for timers expiring in < 10ms. I corrected that, exposing the paint starvation problem.
   30640 
   30641         Use timeBeginPeriod/timeEndPeriod to improve resolution of system timers.
   30642         Limit this resolution change to within 20ms of the last high resolution timer request.
   30643                         
   30644         Corrected GetQueueStatus to check for specific input (and paint) messages rather than
   30645         checking QS_ALLINPUT.  Contrary to its name, QS_ALLINPUT actually indicates interest
   30646         in ALL queued messages, not just input messages.
   30647         
   30648         Fix SetTimer/KillTimer calls to pass our window handle.
   30649 
   30650         Reviewed by Brady.
   30651 
   30652         * platform/win/SharedTimerWin.cpp:
   30653         (WebCore::TimerWindowWndProc):
   30654         (WebCore::queueTimerProc):
   30655         (WebCore::setSharedTimerFireTime):
   30656         (WebCore::stopSharedTimer):
   30657 
   30658 2008-04-16  Adam Roben  <aroben (a] apple.com>
   30659 
   30660         Fix console-log-formatting to truly test formatting an undefined value
   30661 
   30662         Exceptions thrown by the test will also now be shown as errors.
   30663 
   30664         Reviewed by Tim Hatcher.
   30665 
   30666         * manual-tests/inspector/console-log-formatting.html:
   30667         (test): Use console.error to report exceptions.
   30668         (runTests): Use window.noSuchVariable instead of just noSuchVariable
   30669         to avoid an exception.
   30670 
   30671 2008-04-16  Anatoli Papirovski  <apapirovski (a] mac.com>
   30672 
   30673         Reviewed by David.
   30674 
   30675         Optimized the calculation of background-size.
   30676 
   30677         * rendering/RenderBox.cpp:
   30678         (WebCore::RenderBox::calculateBackgroundSize):
   30679 
   30680 2008-04-16  Adam Roben  <aroben (a] apple.com>
   30681 
   30682         Fix Bug 17228: console.{log,warn,info,error} should support format
   30683         strings, variable arguments
   30684 
   30685         <https://bugs.webkit.org/show_bug.cgi?id=17228>
   30686         <rdar://problem/5732828>
   30687 
   30688         Reviewed by Tim Hatcher.
   30689 
   30690         Test: manual-tests/inspector/console-log-formatting.html
   30691 
   30692         * page/inspector/Console.js:
   30693         (WebInspector.ConsoleMessage): Pass any extra arguments down to
   30694         _format.
   30695         (WebInspector.ConsoleMessage._format): This method constructs
   30696         this.formattedMessage. We treat the first parameter as a format
   30697         string. Any parameters that have not been used after substituting into
   30698         the format string are concatenated together, separated by spaces.
   30699         (WebInspector.ConsoleMessage.toMessageElement): Updated to use
   30700         this.formattedMessage.
   30701         (WebInspector.ConsoleMessage.toString): Ditto.
   30702 
   30703 2008-04-15  Adam Roben  <aroben (a] apple.com>
   30704 
   30705         Make String.format return an array of unused substitutions
   30706 
   30707         String.format now returns an object with two properties:
   30708         formattedResult and unusedSubstitutions.
   30709 
   30710         Reviewed by Tim Hatcher.
   30711 
   30712         * page/inspector/utilities.js:
   30713         (String.vsprintf): Updated for changes to String.format. We throw away
   30714         the array of unused substitutions.
   30715         (String.format): Changed to keep track of which substitutions are used
   30716         when formatting. We then return both the formatted result and the
   30717         array of unused substitutions.
   30718 
   30719 2008-04-15  Adam Roben  <aroben (a] apple.com>
   30720 
   30721         Generalize String.format some more
   30722 
   30723         String.format now takes an initial value and an append function which
   30724         it uses to build the result. Each time a token is processed,
   30725         append(valueSoFar, newValue) is called.
   30726 
   30727         Reviewed by Tim Hatcher.
   30728 
   30729         * page/inspector/utilities.js:
   30730         (String.vsprintf): Pass the empty string for the initial value, and
   30731         a function that concatenates two strings as the append function.
   30732         (String.format): Use initialValue and append to build the result
   30733         instead of only working with strings.
   30734 
   30735 2008-04-15  Adam Roben  <aroben (a] apple.com>
   30736 
   30737         Add String.format
   30738 
   30739         String.format is a more generic form of String.vsprintf that takes a
   30740         set of formatter functions, one for each supported format specifier.
   30741         Each formatter function is passed the relevant token and substitution
   30742         value, and returns the formatted result.
   30743 
   30744         Reviewed by Tim Hatcher.
   30745 
   30746         * page/inspector/utilities.js:
   30747         (String.standardFormatters): Added.
   30748         (String.vsprintf): Changed to call through to String.format.
   30749         (String.format): Added. Most of the code came from String.vsprintf,
   30750         except that we use the passed-in formatters to format the
   30751         substitutions rather than hard-coding how to handle each format
   30752         specifier.
   30753 
   30754 2008-04-15  Adam Roben  <aroben (a] apple.com>
   30755 
   30756         Refactor String.vsprintf to separate tokenizing and substituting
   30757 
   30758         This will eventually be useful for the various console methods that
   30759         take a format string.
   30760 
   30761         Reviewed by Tim Hatcher.
   30762 
   30763         * page/inspector/utilities.js:
   30764         (String.tokenizeFormatString): Added. This uses the format parsing
   30765         code from String.vsprintf but just returns an array of "string" and
   30766         "specifier" tokens.
   30767         (String.vsprintf): Now calls String.tokenizeFormatString and processes
   30768         the tokens one at a time.
   30769 
   30770 2008-04-15  Adam Roben  <aroben (a] apple.com>
   30771 
   30772         Pass all arguments to console.{log,warn,info,error} into the Inspector's JS
   30773 
   30774         Part of Bug 17228: console.{log,warn,info,error} should support format
   30775         strings, variable arguments
   30776         <http://bugs.webkit.org/show_bug.cgi?id=17228>
   30777         <rdar://problem/5732828>
   30778 
   30779         We don't use the extra arguments yet.
   30780 
   30781         Reviewed by Tim Hatcher.
   30782 
   30783         * page/Console.cpp:
   30784         (WebCore::Console::error): Pass the arguments list to
   30785         InspectorController.
   30786         (WebCore::Console::info): Ditto.
   30787         (WebCore::Console::log): Ditto.
   30788         (WebCore::Console::warn): Ditto.
   30789         * page/InspectorController.cpp:
   30790         (WebCore::ConsoleMessage::ConsoleMessage): Added a new constructor
   30791         that takes an ExecState and a List instead of a String. We wrap and
   30792         store the JSValues from the List in a Vector<ProtectedPtr<JSValue> >.
   30793         (WebCore::InspectorController::addMessageToConsole): Added an overload
   30794         that takes an ExecState and a List.
   30795         (WebCore::InspectorController::addConsoleMessage): Moved code here
   30796         from addMessageToConsole. Both overloads of addMessageToConsole now
   30797         call this helper method.
   30798         (WebCore::InspectorController::addScriptConsoleMessage): Updated for
   30799         the new parameter order of WebInspector.ConsoleMessage. If the
   30800         ConsoleMessage has a non-empty wrappedArguments Vector, we use that
   30801         instead of the ConsoleMessage's message String.
   30802         * page/InspectorController.h:
   30803         * page/inspector/Console.js:
   30804         (WebInspector.ConsoleMessage): Removed the explicit message parameter.
   30805         We now get the message from the unnamed 5th parameter.
   30806         * page/inspector/Resource.js: Updated for the change to
   30807         WebInspector.ConsoleMessage's parameter order.
   30808 
   30809 2008-04-15  Adam Roben  <aroben (a] apple.com>
   30810 
   30811         Change calls to Chrome::addMessageToConsole to use Console::addMessage
   30812 
   30813         Part of Bug 17228: console.{log,warn,info,error} should support format
   30814         strings, variable arguments
   30815         <http://bugs.webkit.org/show_bug.cgi?id=17228>
   30816         <rdar://problem/5732828>
   30817 
   30818         Console now takes care of calling ChromeClient::addMessageToConsole
   30819         for the appropriate messages (i.e., just messages from JavaScript). If
   30820         you ever want to add a message to the console, Console is the place to
   30821         do it.
   30822 
   30823         Reviewed by Darin Adler.
   30824 
   30825         * WebCore.xcodeproj/project.pbxproj: Mark Console.h Private.
   30826         * page/Chrome.cpp: Removed addMessageToConsole
   30827         * page/Chrome.h: Moved MessageSource/MessageLevel to Console.h.
   30828         * page/Console.cpp:
   30829         (WebCore::Console::addMessage): Added. Calls
   30830         ChromeClient::addMessageToConsole for JS messages, and calls
   30831         InspectorController::addMessageToConsole for all messages.
   30832         (WebCore::Console::error): Changed to call directly to
   30833         InspectorController in addition to ChromeClient.
   30834         (WebCore::Console::info): Ditto.
   30835         (WebCore::Console::log): Ditto.
   30836         (WebCore::Console::warn): Ditto.
   30837         * page/Console.h: Added MessageSource/MessageLevel enums from Chrome.h.
   30838 
   30839 2008-04-15  Adam Roben  <aroben (a] apple.com>
   30840 
   30841         Pass JSConsole's arguments unmodified to Console
   30842 
   30843         Part of Bug 17228: console.{log,warn,info,error} should support format
   30844         strings, variable arguments
   30845         <http://bugs.webkit.org/show_bug.cgi?id=17228>
   30846         <rdar://problem/5732828>
   30847 
   30848         All of JSConsole's methods are now custom, so that we can pass the
   30849         arguments unmodified to Console. Console now handles calling
   30850         toString() on the first argument. Later it will pass the arguments off
   30851         to InspectorController.
   30852 
   30853         There should be no behavioral changes caused by this patch.
   30854 
   30855         Reviewed by Darin Adler.
   30856 
   30857         * ForwardingHeaders/kjs/list.h: Added.
   30858         * GNUmakefile.am: Added JSConsoleCustom.cpp to the project.
   30859         * WebCore.pro: Ditto.
   30860         * WebCore.vcproj/WebCore.vcproj: Ditto.
   30861         * WebCore.xcodeproj/project.pbxproj: Ditto.
   30862         * WebCoreSources.bkl: Ditto.
   30863         * bindings/js/JSConsoleCustom.cpp: Added.
   30864         (WebCore::JSConsole::error):
   30865         (WebCore::JSConsole::info):
   30866         (WebCore::JSConsole::log):
   30867         (WebCore::JSConsole::warn):
   30868         * page/Console.cpp: Changed all methods to take an ExecState* and a
   30869         const List&. The first item in the List is toString()ed and passed to
   30870         Chrome.
   30871         (WebCore::Console::error):
   30872         (WebCore::Console::info):
   30873         (WebCore::Console::log):
   30874         (WebCore::Console::warn):
   30875         * page/Console.h:
   30876         * page/Console.idl:
   30877 
   30878 2008-04-16  Sam Weinig  <sam (a] webkit.org>
   30879 
   30880         Reviewed by Darin Adler.
   30881 
   30882         Rename kjs_strtod to KJS::strtod.
   30883 
   30884         * platform/text/String.cpp:
   30885         (WebCore::charactersToDouble):
   30886 
   30887 2008-04-16  Alexey Proskuryakov  <ap (a] webkit.org>
   30888 
   30889         Reviewed by Adam.
   30890 
   30891         http://bugs.webkit.org/show_bug.cgi?id=18259
   30892         XML+XSLT pages in iframe contains document.location of a parent window
   30893 
   30894         Test: fast/xsl/subframe-location.html
   30895 
   30896         * xml/XSLTProcessor.cpp:
   30897         (WebCore::XSLTProcessor::createDocumentFromSource): Set resulting document URL before opening
   30898         it, so that the document loader picks a correct URL, too.
   30899 
   30900 2008-04-16  Dan Bernstein  <mitz (a] apple.com>
   30901 
   30902         Rubber-stamped by John Sullivan.
   30903 
   30904         - remove unreachable code which was added in r8802
   30905 
   30906         * rendering/RenderText.cpp:
   30907         (WebCore::RenderText::caretRect):
   30908 
   30909 2008-04-15  Timothy Hatcher  <timothy (a] apple.com>
   30910 
   30911         Adds a script resource icon. Update the CSS icon to better match the script icon.
   30912 
   30913         https://bugs.webkit.org/show_bug.cgi?id=18499
   30914 
   30915         Rubber-stamped by Adele Peterson.
   30916 
   30917         * page/inspector/Images/resourceCSSIcon.png: Updated.
   30918         * page/inspector/Images/resourceJSIcon.png: Added.
   30919         * page/inspector/inspector.css: Changed the script icon rule to reference the new image.
   30920 
   30921 2008-04-16  Eric Seidel  <eric (a] webkit.org>
   30922 
   30923         Reviewed by hyatt.
   30924 
   30925         Fix leaky ImageBuffer code.
   30926 
   30927         * platform/graphics/GeneratedImage.cpp:
   30928         (WebCore::GeneratedImage::drawPattern):
   30929         * platform/graphics/ImageBuffer.h:
   30930         * platform/graphics/cg/ImageBufferCG.cpp:
   30931         (WebCore::ImageBuffer::image):
   30932 
   30933 2008-04-15  Justin Garcia  <justin.garcia (a] apple.com>
   30934 
   30935         Reviewed by Oliver.
   30936 
   30937         <rdar://problem/5665299> REGRESSION (r27369): Paste text into a contenteditable div creates a contenteditable div for each line (16661)
   30938 
   30939         * editing/markup.cpp:
   30940         (WebCore::createFragmentFromText): Don't use clones of the enclosing block to hold
   30941         paragraphs if the enclosing block is the root editable element.
   30942 
   30943 2008-04-15  Mark Rowe  <mrowe (a] apple.com>
   30944 
   30945         Reviewed by Jon Honeycutt.
   30946 
   30947         Don't treat the misnamed NSAccessibilitySortButtonRole as an accessibility role.  It is really
   30948         a subrole of NSAccessibilityButtonRole.  As it is not used inside WebCore there is no change in
   30949         behaviour as a result of doing this.  This fixes <rdar://problem/5866444>.
   30950 
   30951         * page/AccessibilityObject.cpp:
   30952         (WebCore::AccessibilityObject::canSetFocusAttribute): Remove SortButtonRole as it is unused.
   30953         * page/AccessibilityObject.h: Ditto.
   30954         * page/mac/AccessibilityObjectWrapper.mm:
   30955         (RoleEntry::):
   30956 
   30957 2008-04-15  Anders Carlsson  <andersca (a] apple.com>
   30958 
   30959         Fix leaks seen on bot.
   30960         
   30961         * loader/SubstituteResource.h:
   30962         (WebCore::SubstituteResource::~SubstituteResource):
   30963         Add a virtual destructor.
   30964 
   30965 2008-04-15  Brady Eidson  <beidson (a] apple.com>
   30966 
   30967         Reviewed by Anders Carlsson
   30968 
   30969         Fix for <rdar://problem/5820819> - Crash sometime occurs when interrupting a load.
   30970 
   30971         Each SubresourceLoader has a client.  That client is often a Loader::Host object.  
   30972         The Loader/Host/CachedResource system predates our ref-counting and ownership models, and therefore manages
   30973         object lifetime manually.
   30974 
   30975         The cause of this crash was that we would sometimes call "didFail()" on a Host object twice - Once when 
   30976         beginning the new navigation, and once when the new navigation is committed.
   30977 
   30978         The problem is after the first time Host::didFail() gets called, the Host is almost always deleted shortly 
   30979         thereafter.  But the SubresourceLoader had a dangling pointer to the Host which is now invalid.
   30980 
   30981         I explored a few options to fix this bug.  The one that was most obviously "clean" was to call cancel() on
   30982         the SubresourceLoader itself, which would end up calling Host::didFail() and doing the appropriate cache
   30983         cleanup.
   30984 
   30985         This problem with that approach was that it had other side effects - when you cut off a load that had already
   30986         partially displayed in the WebView, images that hadn't finished loading would be invalidated and immediately
   30987         turn into broken image icons.  This was visually jarring and pretty unacceptable. 
   30988 
   30989         So I decided to follow a much simpler approach, which was to have the Host clear the client pointer from each
   30990         SubresourceLoader before it forgets about it.  This leaves things the same visually and fixes the crash.
   30991 
   30992         Note that the layout test for this - if possible - will require other enhancements to DRT including possibly 
   30993         adding support for window.stop(). That task is non-trivial, and is documented in <rdar://problem/5061826> 
   30994 
   30995         * loader/SubresourceLoader.h:
   30996         (WebCore::SubresourceLoader::clearClient): Add a method to clear the SubresourceLoaderClient.  This is 
   30997           perfectly safe to do on an in-flight SubresourceLoader as they are already designed to be client-less,
   30998           and already null-check the client before calling it.
   30999 
   31000         * loader/loader.cpp:
   31001         (WebCore::Loader::Host::didFail): The SubresourceLoader itself might not be finished loading and might decide 
   31002           to call into its client later.  Since the client has no guaranteed lifetime and is liable to be deleted 
   31003           after didFail() is called, call clearClient() on the SubresourceLoader so such an invalid call can't happen.
   31004 
   31005 2008-04-15  Anders Carlsson  <andersca (a] apple.com>
   31006 
   31007         Reviewed by Adam.
   31008 
   31009         Add empty files for the application cache.
   31010         
   31011         * Configurations/WebCore.xcconfig:
   31012         * WebCore.vcproj/WebCore.vcproj:
   31013         * WebCore.vcproj/build-generated-files.sh:
   31014         Add ENABLE_OFFLINE_WEB_APPLICATIONS to FEATURE_DEFINES.
   31015         
   31016         * WebCore.xcodeproj/project.pbxproj:
   31017         * loader/appcache: Added.
   31018         * loader/appcache/ApplicationCache.cpp: Added.
   31019         * loader/appcache/ApplicationCache.h: Added.
   31020         * loader/appcache/ApplicationCacheGroup.cpp: Added.
   31021         * loader/appcache/ApplicationCacheGroup.h: Added.
   31022         * loader/appcache/ApplicationCacheResource.cpp: Added.
   31023         * loader/appcache/ApplicationCacheResource.h: Added.
   31024         * loader/appcache/DOMApplicationCache.cpp: Added.
   31025         * loader/appcache/DOMApplicationCache.h: Added.
   31026         * loader/appcache/DOMApplicationCache.idl: Added.
   31027         * loader/appcache/ManifestParser.cpp: Added.
   31028         * loader/appcache/ManifestParser.h: Added.
   31029 
   31030 2008-04-15  Kevin McCullough  <kmccullough (a] apple.com>
   31031 
   31032         Reviewed by Tim.
   31033 
   31034         - <rdar://problem/5792587> AJAX (XMLHttpRequest) support for the Inspector (17776)
   31035         - Add XMLHttpRequest support to the inspector.
   31036 
   31037         * English.lproj/InspectorLocalizedStrings.js: Specify capitalization
   31038         instead of using text-transform because XHR must capitalize all the letters.
   31039         * page/inspector/Resource.js: Assume XHRs are textType even though this
   31040         may not always be true.
   31041         Also add the XHR category and let all mime types be consistent with it.
   31042         * page/inspector/ResourcesPanel.js: Set the XHR category color.
   31043         * page/inspector/inspector.css: Make XHRs yellow and fonts red because
   31044         XHRs are more common than fonts and yellow next to orange (scripts) is
   31045         not as harsh on the eyes as red next to orange.
   31046         * page/inspector/inspector.js: Specify capitalization again.
   31047 
   31048 2008-04-15  David Hyatt  <hyatt (a] apple.com>
   31049 
   31050         Fix the zoom property so that it works properly with font-size.
   31051 
   31052         Reviewed by John Sullivan
   31053 
   31054         Added fast/css/zoom-font-size.html
   31055 
   31056         * css/CSSStyleSelector.cpp:
   31057         (WebCore::CSSStyleSelector::updateFont):
   31058         (WebCore::CSSStyleSelector::applyProperty):
   31059         (WebCore::CSSStyleSelector::checkForZoomChange):
   31060         * css/CSSStyleSelector.h:
   31061 
   31062 2008-04-15  Timothy Hatcher  <timothy (a] apple.com>
   31063 
   31064         Fixes the bug where a resource view could still be shown after the inspected
   31065         page navigates to another page.
   31066 
   31067         https://bugs.webkit.org/show_bug.cgi?id=18517
   31068 
   31069         Reviewed by Adam Roben.
   31070 
   31071         * page/inspector/ResourcesPanel.js:
   31072         (WebInspector.ResourcesPanel.prototype.reset): Close the visible resource.
   31073         Iterate over all the resources and zero errors and warnings and delete the
   31074         resource view and tree element. Removes all children of resourceViews. Passes
   31075         true to _updateGraphDividersIfNeeded to force an immediate update.
   31076         (WebInspector.ResourcesPanel.prototype.removeResource): Added. Closes
   31077         the resource view if it is visible. Removes the resource from the _resources
   31078         array. Removes the tree element from the outline tree. Zeros out the errors
   31079         and warnings properties. Deletes the tree element and resource view properties.
   31080         (WebInspector.ResourcesPanel.prototype.closeVisibleResource): Null check
   31081         this._calculator for times when reset is called before the calculator is set.
   31082         * page/inspector/inspector.js:
   31083         (WebInspector.removeResource): Call ResourcesPanel.removeResource.
   31084 
   31085 2008-04-15  Anders Carlsson  <andersca (a] apple.com>
   31086 
   31087         Reviewed by Adam.
   31088 
   31089         Rename "archive" to "substitute" in a couple of places.
   31090         
   31091         * loader/DocumentLoader.cpp:
   31092         (WebCore::DocumentLoader::DocumentLoader):
   31093         (WebCore::DocumentLoader::clearArchiveResources):
   31094         (WebCore::DocumentLoader::deliverSubstituteResourcesAfterDelay):
   31095         (WebCore::DocumentLoader::substituteResourceDeliveryTimerFired):
   31096         (WebCore::DocumentLoader::isSubstituteLoadPending):
   31097         (WebCore::DocumentLoader::cancelPendingSubstituteLoad):
   31098         (WebCore::DocumentLoader::scheduleArchiveLoad):
   31099         (WebCore::DocumentLoader::setDefersLoading):
   31100         * loader/DocumentLoader.h:
   31101         * loader/ResourceLoader.cpp:
   31102         (WebCore::ResourceLoader::load):
   31103         (WebCore::ResourceLoader::didCancel):
   31104 
   31105 2008-04-15  Anders Carlsson  <andersca (a] apple.com>
   31106 
   31107         Reviewed by Adam.
   31108 
   31109         Move the URL, response and data to SubstituteResource.
   31110         
   31111         * loader/SubstituteResource.h:
   31112         (WebCore::SubstituteResource::url):
   31113         (WebCore::SubstituteResource::response):
   31114         (WebCore::SubstituteResource::data):
   31115         (WebCore::SubstituteResource::SubstituteResource):
   31116         * loader/archive/ArchiveResource.cpp:
   31117         (WebCore::ArchiveResource::ArchiveResource):
   31118         * loader/archive/ArchiveResource.h:
   31119         (WebCore::ArchiveResource::frameName):
   31120 
   31121 2008-04-15  David Hyatt  <hyatt (a] apple.com>
   31122 
   31123         https://bugs.webkit.org/show_bug.cgi?id=18467
   31124 
   31125         Make sure to ignore zoom:0.  That is not supposed to actually do anything.  It's a hack in IE
   31126         to cause an element to set "hasLayout."
   31127 
   31128         Reviewed by Anders
   31129 
   31130         Added fast/css/zoom-property-parsing.html
   31131 
   31132         * css/CSSParser.cpp:
   31133         (WebCore::CSSParser::parseValue):
   31134         * css/CSSStyleSelector.cpp:
   31135         (WebCore::CSSStyleSelector::applyProperty):
   31136 
   31137 2008-04-15  Anders Carlsson  <andersca (a] apple.com>
   31138 
   31139         Reviewed by Adam.
   31140 
   31141         Add a (currently empty) SubstituteResource class and make ArchiveResource inherit from it.
   31142         
   31143         * WebCore.vcproj/WebCore.vcproj:
   31144         * WebCore.xcodeproj/project.pbxproj:
   31145         * loader/SubstituteResource.h: Added.
   31146         * loader/archive/ArchiveResource.h:
   31147 
   31148 2008-04-15  Antti Koivisto  <antti (a] apple.com>
   31149 
   31150         Reviewed by Geoff.
   31151 
   31152         Fix <rdar://problem/5862921>
   31153         REGRESSION: Leak in SVGSVGElement::SVGSVGElement
   31154         
   31155         In these strange days RefCounted starts with count of one.
   31156 
   31157         * svg/SVGSVGElement.cpp:
   31158         (WebCore::SVGSVGElement::SVGSVGElement):
   31159         * svg/animation/SMILTimeContainer.h:
   31160         (WebCore::SMILTimeContainer::create):
   31161 
   31162 2008-04-15  Anatoli Papirovski  <apapirovski (a] mac.com>
   31163 
   31164         Reviewed by hyatt
   31165 
   31166         [CSS1, CSS3] Fixed the background-origin calculation for root elements
   31167         (background-size and background-position are affected), r10794
   31168         [CSS3] Fixed the background-size transformation where width is specified in percentage and height is left to auto
   31169 
   31170         Test: fast/backgrounds/background-origin-root-element.html
   31171 
   31172         * rendering/RenderBox.cpp:
   31173         (WebCore::RenderBox::calculateBackgroundSize):
   31174         (WebCore::RenderBox::calculateBackgroundImageGeometry):
   31175 
   31176 2008-04-15  Timothy Hatcher  <timothy (a] apple.com>
   31177 
   31178         Fixes the regression where the error and warning counts did not show up in the Resources
   31179         sidebar next to resources.
   31180 
   31181         https://bugs.webkit.org/show_bug.cgi?id=18494
   31182 
   31183         Reviewed by Adam Roben.
   31184 
   31185         * page/inspector/ResourcesPanel.js:
   31186         (WebInspector.ResourcesPanel.prototype.addMessageToResource): Increment errors or warnings
   31187         on the resource. Set the bubbleText to the total of the errors and warnings. Add a error
   31188         or warning class to the bubble.
   31189         (WebInspector.ResourcesPanel.prototype.clearMessages): Zero out the errors and warnings
   31190         properties on each resource. Set the bubbleText back to an empty string.
   31191         * page/inspector/SidebarTreeElement.js:
   31192         (WebInspector.SidebarTreeElement): Create a statusElement.
   31193         (WebInspector.SidebarTreeElement.prototype.get bubbleText): Return _bubbleText.
   31194         (WebInspector.SidebarTreeElement.prototype.set bubbleText): Create bubbleElement if needed.
   31195         Assign the value to _bubbleText and bubbleElement.textContent.
   31196         (WebInspector.SidebarTreeElement.prototype.onattach): Append statusElement to _listItemNode.
   31197         * page/inspector/inspector.css: Style rules for bubbles and status elements.
   31198 
   31199 2008-04-15  Timothy Hatcher  <timothy (a] apple.com>
   31200 
   31201         Fixes the regression where error and warning bubbles would not be added
   31202         to the source view of a resource.
   31203 
   31204         https://bugs.webkit.org/show_bug.cgi?id=18495
   31205 
   31206         Reviewed by Adam Roben.
   31207 
   31208         * css/view-source.css:
   31209         (.webkit-html-message-bubble): Add a min-height to make sure the border-radius
   31210         has enough room to apply.
   31211         * page/inspector/Console.js:
   31212         (WebInspector.Console.prototype.addMessage): Removed code that added messages
   31213         to resource panels and incremented error and warning counts on resources.
   31214         Now just call ResourcesPanel.addMessageToResource after assigning the resource
   31215         to the console message.
   31216         (WebInspector.Console.prototype.clearMessages): Removed code that cleared error
   31217         and warning counts from resources an call ResourcesPanel.clearMessages.
   31218         * page/inspector/ResourcesPanel.js:
   31219         (WebInspector.ResourcesPanel.prototype.addMessageToResource): Call addMessage
   31220         on the resource's view, if it is implemented.
   31221         (WebInspector.ResourcesPanel.prototype.clearMessages): Call clearMessages
   31222         on all the resource views for the ones that implement it.
   31223         (WebInspector.ResourcesPanel.prototype.refreshResource): Call _resourceView
   31224         to make the resource's view if needed. Use a local view variable.
   31225         (WebInspector.ResourcesPanel.prototype._resourceView): Added helper function
   31226         to create a resource view if needed.
   31227         * page/inspector/SourceView.js:
   31228         (WebInspector.SourceView.prototype.setupSourceFrameIfNeeded): Delete the 
   31229         _frameNeedsSetup property at the beginning to prevent recursion. Get the
   31230         length of the messages array when assigning the local length variable.
   31231         (WebInspector.SourceView.prototype.addMessage): Renamed from addMessageToSource.
   31232         (WebInspector.SourceView.prototype.clearMessages): Added. Clear all the message
   31233         bubbles that might be sprinkled in the source. Also clears the messages array.
   31234         (WebInspector.SourceView.prototype._addMessageToSource): Create the image
   31235         element in the Inspector's document so we can use relative image URLs. Then
   31236         adopt the image element into the frame's document.
   31237 
   31238 2008-04-15  Brady Eidson  <beidson (a] apple.com>
   31239 
   31240         Reviewed by Anders
   31241 
   31242         Hook up event dispatching for window.localStorage changes.
   31243 
   31244         Tests: storage/domstorage/localstorage/enumerate-storage.html
   31245                storage/domstorage/localstorage/iframe-events.html
   31246                storage/domstorage/localstorage/index-get-and-set.html
   31247                storage/domstorage/localstorage/onstorage-attribute-markup.html
   31248                storage/domstorage/localstorage/onstorage-attribute-setattribute.html
   31249                storage/domstorage/localstorage/simple-events.html
   31250                storage/domstorage/localstorage/simple-usage.html
   31251                storage/domstorage/localstorage/window-open.html
   31252 
   31253         * storage/LocalStorage.cpp:
   31254         (WebCore::LocalStorage::dispatchStorageEvent): Walk every Page in the PageGroup, adding
   31255           each Frame that matches the storage area's security origin to a Vector.  Then dispatch
   31256           the StorageEvent to each Frame in the Vector
   31257 
   31258         * storage/SessionStorage.cpp:
   31259         (WebCore::SessionStorage::dispatchStorageEvent): Adopt the technique used in LocalStorage,
   31260           which is to only add the Frames to the Vector if their security origin matches
   31261 
   31262 2008-04-15  Olivier Goffart  <ogoffart (a] trolltech.com>
   31263 
   31264         Reviewed by Simon.
   31265 
   31266         Fixes: copy to clipboard when selecting, and paste when clicking with the middle button
   31267 
   31268         * platform/Pasteboard.h: Added Qt-specific selection mode
   31269         * platform/qt/PasteboardQt.cpp: Choose the clipboard or the selecton
   31270         according to the selection mode
   31271         (WebCore::Pasteboard::writeSelection):
   31272         (WebCore::Pasteboard::plainText):
   31273         (WebCore::Pasteboard::documentFragment):
   31274         (WebCore::Pasteboard::writeURL):
   31275         (WebCore::Pasteboard::clear):
   31276         (WebCore::Pasteboard::isSelectionMode):
   31277 
   31278 2008-04-15  Andre Poenitz  <andre.poenitz (a] trolltech.com>
   31279 
   31280         Reviewed by Simon.
   31281 
   31282         Fix compilation with Qt namespaces
   31283 
   31284         Qt can be configured to have all of its classes inside a specified namespaces.
   31285         This is for example used in plugin/component environments like Eclipse.
   31286 
   31287         This change makes it possible to let the Qt port compile against a namespaced
   31288         Qt by the use of macros Qt provides to properly forward declare Qt classes in
   31289         the namespace.
   31290 
   31291         * WebCore.pro:
   31292         * bridge/qt/qt_class.h:
   31293         * bridge/qt/qt_instance.h:
   31294         * html/HTMLCanvasElement.h:
   31295         * platform/DragData.h:
   31296         * platform/DragImage.h:
   31297         * platform/KURL.h:
   31298         * platform/PlatformKeyboardEvent.h:
   31299         * platform/PlatformMouseEvent.h:
   31300         * platform/PlatformWheelEvent.h:
   31301         * platform/Widget.h:
   31302         * platform/graphics/Color.h:
   31303         * platform/graphics/FloatPoint.h:
   31304         * platform/graphics/FloatRect.h:
   31305         * platform/graphics/Gradient.h:
   31306         * platform/graphics/GraphicsContext.h:
   31307         * platform/graphics/ImageBuffer.h:
   31308         * platform/graphics/ImageSource.h:
   31309         * platform/graphics/IntPoint.h:
   31310         * platform/graphics/IntRect.h:
   31311         * platform/graphics/IntSize.h:
   31312         * platform/graphics/Path.h:
   31313         * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
   31314         * platform/graphics/qt/MediaPlayerPrivatePhonon.h:
   31315         * platform/network/qt/QNetworkReplyHandler.h:
   31316         * platform/network/qt/ResourceRequest.h:
   31317         * platform/qt/ClipboardQt.h:
   31318         * platform/qt/RenderThemeQt.h:
   31319         * platform/text/PlatformString.h:
   31320         * platform/text/qt/TextCodecQt.h:
   31321         * svg/graphics/SVGPaintServer.h:
   31322         * svg/graphics/SVGPaintServerGradient.h:
   31323 
   31324 2008-04-14  Brady Eidson  <beidson (a] apple.com>
   31325 
   31326         Reviewed by Anders
   31327 
   31328         Lay the underpinnings for LocalStorage.
   31329 
   31330         For now, this just exposes window.localStorage to the dom which returns an in-memory Storage object, much
   31331         like SessionStorage.  The primary difference at this point is that the object returned is shared globally,
   31332         and isn't copied for new top-level browsing contexts like SessionStorage.
   31333 
   31334         Later, I'll add proper event dispatch and a persistent storage backing.
   31335 
   31336         * GNUmakefile.am:
   31337         * WebCore.base.exp:
   31338         * WebCore.pro:
   31339         * WebCore.vcproj/WebCore.vcproj:
   31340         * WebCore.xcodeproj/project.pbxproj:
   31341         * WebCoreSources.bkl:
   31342 
   31343         * bindings/js/JSDOMWindowCustom.cpp:
   31344         (WebCore::JSDOMWindow::mark): Mark the optionalLocalStorage
   31345 
   31346         * page/DOMWindow.cpp:
   31347         (WebCore::DOMWindow::clear):
   31348         (WebCore::DOMWindow::localStorage):
   31349         * page/DOMWindow.h:
   31350         (WebCore::DOMWindow::optionalLocalStorage):
   31351 
   31352         * storage/LocalStorage.cpp: Added.
   31353         (WebCore::LocalStorage::sharedLocalStorage):
   31354         (WebCore::LocalStorage::LocalStorage):
   31355         (WebCore::LocalStorage::storageArea):
   31356         (WebCore::LocalStorage::itemChanged):
   31357         (WebCore::LocalStorage::itemRemoved):
   31358         (WebCore::LocalStorage::dispatchStorageEvent):
   31359         * storage/LocalStorage.h: Added.
   31360 
   31361         * storage/SessionStorage.cpp: Refactor to use the client interface for event dispatching for sessionStorage objects
   31362         (WebCore::SessionStorage::SessionStorage):
   31363         (WebCore::SessionStorage::copy):
   31364         (WebCore::SessionStorage::storageArea):
   31365         (WebCore::SessionStorage::itemChanged):
   31366         (WebCore::SessionStorage::itemRemoved):
   31367         (WebCore::SessionStorage::dispatchStorageEvent):
   31368         * storage/SessionStorage.h:
   31369 
   31370         * storage/StorageArea.cpp: Add a client parameter, and call to the client when an item is changed or removed.
   31371         (WebCore::StorageArea::create):
   31372         (WebCore::StorageArea::StorageArea):
   31373         (WebCore::StorageArea::copy):
   31374         (WebCore::StorageArea::setItem):
   31375         (WebCore::StorageArea::removeItem):
   31376         (WebCore::StorageArea::setClient):
   31377         * storage/StorageArea.h:
   31378         (WebCore::StorageArea::page):
   31379         (WebCore::StorageArea::securityOrigin):
   31380 
   31381         * storage/StorageAreaClient.h: Added.  Break out "itemChanged" and "itemRemoved" to a StorageAreaClient
   31382           This way, both SessionStorage and LocalStorage areas can have different behavior on changes with
   31383           that behavior managed from a central location.
   31384         (WebCore::StorageAreaClient::~StorageAreaClient):
   31385         (WebCore::StorageAreaClient::StorageAreaClient):
   31386         (WebCore::StorageAreaClient::itemChanged):
   31387         (WebCore::StorageAreaClient::itemRemoved):
   31388 
   31389 2008-04-14  Brady Eidson  <beidson (a] apple.com>
   31390 
   31391         Reviewed by Anders
   31392 
   31393         Add a hidden pref to debug WebArchive loading.  With this pref on, when loading a WebArchive,
   31394         if the resource isn't in the ArchiveResourceCollection, the loader will not fall back to the 
   31395         network and will instead fail the load with a "cannot show URL" error.
   31396 
   31397         * loader/ResourceLoader.cpp:
   31398         (WebCore::ResourceLoader::load): Do the check here.
   31399 
   31400         * page/Settings.cpp:
   31401         (WebCore::Settings::Settings):
   31402         (WebCore::Settings::setWebArchiveDebugModeEnabled):
   31403         * page/Settings.h:
   31404         (WebCore::Settings::webArchiveDebugModeEnabled):
   31405 
   31406 2008-04-14  Antti Koivisto  <antti (a] apple.com>
   31407 
   31408         Reviewed by Eric.
   31409 
   31410         Some preparations for additive animations and animations in <use>.
   31411         - Disallow animation elements in instance trees.
   31412         - Fix buggy SVGUseElement::removeDisallowedElementsFromSubtree(), make it 
   31413           public and static
   31414         - Invoke it from SVGElementInstance::updateInstance() to clean up the instance tree
   31415           there as well.
   31416         - Add mechanism for blocking instance updates when an animation changes
   31417           the referenced tree.
   31418         
   31419         The added assert in SVGSMILElement::insertedIntoDocument() verifies the fixes
   31420         with the existing test cases.
   31421 
   31422         * svg/SVGAElement.cpp:
   31423         (WebCore::SVGAElement::defaultEventHandler):
   31424         * svg/SVGElementInstance.cpp:
   31425         (WebCore::SVGElementInstance::updateInstance):
   31426         * svg/SVGStyledElement.cpp:
   31427         (WebCore::SVGStyledElement::updateElementInstance):
   31428         (WebCore::SVGStyledElement::setInstanceUpdatesBlocked):
   31429         * svg/SVGStyledElement.h:
   31430         * svg/SVGUseElement.cpp:
   31431         (WebCore::isDisallowedElement):
   31432         (WebCore::SVGUseElement::removeDisallowedElementsFromSubtree):
   31433         * svg/SVGUseElement.h:
   31434         * svg/animation/SVGSMILElement.cpp:
   31435         (WebCore::SVGSMILElement::insertedIntoDocument):
   31436         (WebCore::SVGSMILElement::isSMILElement):
   31437         (WebCore::SVGSMILElement::connectConditions):
   31438         (WebCore::SVGSMILElement::disconnectConditions):
   31439         * svg/animation/SVGSMILElement.h:
   31440 
   31441 2008-04-14  Adam Roben  <aroben (a] apple.com>
   31442 
   31443         Don't let the inspected page overwrite properties of JS objects in the
   31444         Inspector
   31445 
   31446         <https://bugs.webkit.org/show_bug.cgi?id=16011>
   31447         <rdar://problem/5604409>
   31448 
   31449         <https://bugs.webkit.org/show_bug.cgi?id=16837>
   31450         <rdar://problem/5813850>
   31451 
   31452         Reviewed by Sam Weinig and Geoff Garen.
   31453 
   31454         Tests (contributed by Adam Barth and Collin Jackson):
   31455         manual-tests/inspector-wrappers
   31456 
   31457         * GNUmakefile.am:
   31458         * WebCore.pro:
   31459         * WebCore.vcproj/WebCore.vcproj:
   31460         * WebCore.xcodeproj/project.pbxproj:
   31461         * WebCoreSources.bkl:
   31462         Added new files to the projects.
   31463 
   31464         * bindings/js/JSQuarantinedObjectWrapper.cpp: Added.
   31465         (WebCore::JSQuarantinedObjectWrapper::asWrapper): Converts a JSValue
   31466         into a JSQuarantinedObjectWrapper, if the JSValue is in fact a
   31467         JSQuarantinedObjectWrapper.
   31468         (WebCore::JSQuarantinedObjectWrapper::cachedValueGetter): Callback to
   31469         be used with PropertySlot.
   31470         (WebCore::JSQuarantinedObjectWrapper::JSQuarantinedObjectWrapper):
   31471         Hold onto the object we're wrapping and its global object. Pass the
   31472         wrapped prototype up to the JSObject constructor.
   31473         (WebCore::JSQuarantinedObjectWrapper::~JSQuarantinedObjectWrapper):
   31474         (WebCore::JSQuarantinedObjectWrapper::unwrappedExecStateMatches):
   31475         Returns true if our underlying object originated from the same global
   31476         object as the passed-in ExecState.
   31477         (WebCore::JSQuarantinedObjectWrapper::unwrappedExecState):
   31478         (WebCore::JSQuarantinedObjectWrapper::transferExceptionToExecState):
   31479         Wraps and moves an exception from our underlying ExecState to the
   31480         passed-in one.
   31481         (WebCore::JSQuarantinedObjectWrapper::mark): Marks ourselves and the
   31482         objects we're holding references to.
   31483 
   31484         (WebCore::JSQuarantinedObjectWrapper::getOwnPropertySlot):
   31485         (WebCore::JSQuarantinedObjectWrapper::put):
   31486         (WebCore::JSQuarantinedObjectWrapper::deleteProperty):
   31487         (WebCore::JSQuarantinedObjectWrapper::implementsConstruct):
   31488         (WebCore::JSQuarantinedObjectWrapper::construct):
   31489         (WebCore::JSQuarantinedObjectWrapper::implementsHasInstance):
   31490         (WebCore::JSQuarantinedObjectWrapper::hasInstance):
   31491         (WebCore::JSQuarantinedObjectWrapper::implementsCall):
   31492         (WebCore::JSQuarantinedObjectWrapper::callAsFunction):
   31493         (WebCore::JSQuarantinedObjectWrapper::getPropertyNames):
   31494         JSObject overrides. These each check the appropriate permission before
   31495         allowing the call to proceed. We wrap all outgoing values using
   31496         m_wrapOutgoingValue, and we prepare all incoming values with the
   31497         virtual prepareIncomingValue function. If an exception is raised when
   31498         calling the underlying object, we transfer the exception in wrapped
   31499         form to the passed-in ExecState.
   31500 
   31501         * bindings/js/JSQuarantinedObjectWrapper.h: Added.
   31502         (WebCore::JSQuarantinedObjectWrapper::unwrappedObject):
   31503         (WebCore::JSQuarantinedObjectWrapper::className): We return the
   31504         underlying object's class name so that we can successfully masquerade
   31505         as that underlying object when, e.g., Object.prototype.toString is
   31506         called on us.
   31507         (WebCore::JSQuarantinedObjectWrapper::classInfo):
   31508 
   31509         (WebCore::JSQuarantinedObjectWrapper::allowsGetProperty):
   31510         (WebCore::JSQuarantinedObjectWrapper::allowsSetProperty):
   31511         (WebCore::JSQuarantinedObjectWrapper::allowsDeleteProperty):
   31512         (WebCore::JSQuarantinedObjectWrapper::allowsConstruct):
   31513         (WebCore::JSQuarantinedObjectWrapper::allowsHasInstance):
   31514         (WebCore::JSQuarantinedObjectWrapper::allowsCallAsFunction):
   31515         (WebCore::JSQuarantinedObjectWrapper::allowsGetPropertyNames):
   31516         These virtual methods let subclasses define the allowed operations on
   31517         the wrapped object. By default all operations are disabled.
   31518 
   31519         * bindings/js/JSInspectedObjectWrapper.cpp: Added. This subclass of
   31520         JSQuarantinedObjectWrapper is used to wrap objects from the inspected
   31521         page being passed to the Inspector.
   31522         (WebCore::wrappers):
   31523         (WebCore::JSInspectedObjectWrapper::wrap): Wraps the passed-in object
   31524         if needed and returns the wrapper. If this object has been wrapped
   31525         previously we'll return the old wrapper rather than make a new one.
   31526         (WebCore::JSInspectedObjectWrapper::JSInspectedObjectWrapper): Add
   31527         ourselves to the wrapper map.
   31528         (WebCore::JSInspectedObjectWrapper::~JSInspectedObjectWrapper): Remove
   31529         ourselves from the wrapper map.
   31530         (WebCore::JSInspectedObjectWrapper::prepareIncomingValue): Ensure that
   31531         any objects passed to the inspected object are either wrappers around
   31532         objects from the inspected page (in which case we unwrap them so that
   31533         the inspected page never sees the wrapper), or wrapped callbacks from
   31534         the Inspector.
   31535         * bindings/js/JSInspectedObjectWrapper.h: Added.
   31536         (WebCore::JSInspectedObjectWrapper::classInfo):
   31537         (WebCore::JSInspectedObjectWrapper::allowsGetProperty):
   31538         (WebCore::JSInspectedObjectWrapper::allowsSetProperty):
   31539         (WebCore::JSInspectedObjectWrapper::allowsDeleteProperty):
   31540         (WebCore::JSInspectedObjectWrapper::allowsConstruct):
   31541         (WebCore::JSInspectedObjectWrapper::allowsHasInstance):
   31542         (WebCore::JSInspectedObjectWrapper::allowsCallAsFunction):
   31543         (WebCore::JSInspectedObjectWrapper::allowsGetPropertyNames):
   31544         These all return true so that the Inspector can use objects from the
   31545         inspected page however it needs.
   31546         (WebCore::JSInspectedObjectWrapper::wrapOutgoingValue): Wrap all
   31547         outgoing values as JSInspectedObjectWrappers.
   31548 
   31549         * bindings/js/JSInspectorCallbackWrapper.cpp: Added. This subclass of
   31550         JSQuarantinedObjectWrapper is used to wrap callbacks that the
   31551         Inspector passes to the inspected page (e.g., for event listeners or
   31552         client-side storage callbacks).
   31553         (WebCore::wrappers):
   31554         (WebCore::JSInspectorCallbackWrapper::wrap): Wraps the passed-in
   31555         object if needed and returns the wrapper. If this object has been
   31556         wrapped previously we'll return the old wrapper rather than make a new
   31557         one.
   31558         (WebCore::JSInspectorCallbackWrapper::JSInspectorCallbackWrapper): Add
   31559         ourselves to the wrapper map.
   31560         (WebCore::JSInspectorCallbackWrapper::~JSInspectorCallbackWrapper):
   31561         Remove ourselves from the wrapper map.
   31562         (WebCore::JSInspectorCallbackWrapper::prepareIncomingValue): Ensure
   31563         that values passed from the inspected page to an Inspector callback
   31564         are wrapped in JSInspectedObjectWrappers. We also allow the inspected
   31565         page to pass ourselves in (which will happen in the case of a
   31566         client-side storage callback, where the callback itself is passed as
   31567         the `this` object). In this case we unwrap ourselves so that the
   31568         Inspector doesn't have to deal with the wrapper.
   31569         * bindings/js/JSInspectorCallbackWrapper.h: Added.
   31570         (WebCore::JSInspectorCallbackWrapper::classInfo):
   31571         (WebCore::JSInspectorCallbackWrapper::allowsCallAsFunction):
   31572         This is the only allowed operation on a JSInspectorCallbackWrapper.
   31573         (WebCore::JSInspectorCallbackWrapper::wrapOutgoingValue): Wrap all
   31574         outgoing values as JSInspectorCallbackWrappers.
   31575 
   31576         * page/InspectorController.cpp:
   31577         (WebCore::getResourceDocumentNode): Wrap the Document before passing
   31578         it to the Inspector.
   31579         (WebCore::highlightDOMNode): Unwrap the Node that the Inspector passed
   31580         to us.
   31581         (WebCore::databaseTableNames): Unwrap the Database that the Inspector
   31582         passed to us.
   31583         (WebCore::inspectedWindow): Wrap the Window before passing it to the
   31584         Inspector.
   31585         (WebCore::InspectorController::focusNode): Wrap the Node before
   31586         passing it to the Inspector.
   31587         (WebCore::wrapCallback): Wraps the passed-in callback in a
   31588         JSInspectorCallbackWrapper.
   31589         (WebCore::InspectorController::addDatabaseScriptResource): Wrap the
   31590         Database beore pasing it to the Inspector.
   31591         (WebCore::InspectorController::windowScriptObjectAvailable): Add the
   31592         new wrapCallback function to the InspectorController JS object.
   31593 
   31594         * page/inspector/ElementsPanel.js:
   31595         (WebInspector.ElementsPanel.reset): Wrap the contentLoaded callback.
   31596 
   31597         * page/inspector/DatabaseQueryView.js:
   31598         (WebInspector.DatabaseQueryView._enterKeyPressed):
   31599         * page/inspector/DatabaseTableView.js:
   31600         (WebInspector.DatabaseTableView.update):
   31601         Pass null instead of an empty array to executeSql since we're no
   31602         longer allowed to pass any unwrapped objects to the inspected page.
   31603         We now wrap all callbacks being passed to the inspected page using
   31604         InspectorController.wrapCallback.
   31605 
   31606 2008-04-14  Adam Roben  <aroben (a] apple.com>
   31607 
   31608         Use prototypes/constructors from the inspected page when operating on
   31609         objects from the inspected page
   31610 
   31611         Reviewed by Tim Hatcher.
   31612 
   31613         * page/inspector/Console.js:
   31614         (WebInspector.ConsolePanel._format): Use the Node constructor from the
   31615         inspected Window with the instanceof operator.
   31616         * page/inspector/ElementsPanel.js:
   31617         (WebInspector.DOMNodeTreeElement._attributeEditingCommitted): Use the
   31618         Element prototype from the inspected Window instead of the Element
   31619         prototype from this Window.
   31620         * page/inspector/inspector.js:
   31621         (WebInspector.performSearch): Ditto for Document prototype.
   31622         * page/inspector/utilities.js:
   31623         (Object.type): Now takes an optional Window parameter that is used to
   31624         find the built-in constructors.
   31625 
   31626 2008-04-14  Adam Roben  <aroben (a] apple.com>
   31627 
   31628         Don't store objects from the Inspector on CSSStyleRules from the
   31629         inspected page
   31630 
   31631         Reviewed by Tim Hatcher.
   31632 
   31633         * page/inspector/StylesSidebarPane.js:
   31634         (WebInspector.StylesSidebarPane.update): Don't store raw CSSStyleRules
   31635         from the inspected page in the styleRules array. Instead, always use a
   31636         wrapper object. This will keep us from setting Inspector objects as
   31637         properties of inspected objects.
   31638 
   31639 2008-04-14  Timothy Hatcher  <timothy (a] apple.com>
   31640 
   31641         Fixes a regression where clicking a resource URL in the Console would not
   31642         show the resource in the Resources panel.
   31643 
   31644         https://bugs.webkit.org/show_bug.cgi?id=18493
   31645 
   31646         Reviewed by Adam Roben.
   31647 
   31648         * page/inspector/Console.js:
   31649         (WebInspector.Console.prototype._messagesClicked): Removed console-message-url
   31650         handling to show resources. This is now handled by WebInspector.showResourceForURL.
   31651         (WebInspector.ConsoleMessage.prototype.toMessageElement): Add the webkit-html-resource-link
   31652         class name to the URL anchor. Also add the line number as a property to the anchor.
   31653         * page/inspector/ResourcesPanel.js:
   31654         (WebInspector.ResourcesPanel): Add a reference to the tree element to each calculator.
   31655         (WebInspector.ResourcesPanel.prototype.showResource): Select and reveal the resource in
   31656         the sidebar. Call showLine on the resource view if it is implemented.
   31657         (WebInspector.ResourcesPanel.prototype.closeVisibleResource): Select the current calculator's
   31658         tree element in the sidebar.
   31659         (WebInspector.ResourcesPanel.prototype._graphSelected): Call closeVisibleResource after
   31660         the calculator changes since closeVisibleResource uses the calculator.
   31661         * page/inspector/SourceView.js:
   31662         (WebInspector.SourceView.prototype.sourceRow): Early return if the line is null/zero.
   31663         (WebInspector.SourceView.prototype.showLine):  Renamed from showSourceLine.
   31664         * page/inspector/inspector.css:
   31665         (body.console-visible #main-panels): Made the bottom 24px to match
   31666         the height of #main-status-bar.
   31667         (.console-message-url): Make the color important so it wins over
   31668         the .webkit-html-resource-link rule.
   31669         (.resource-view .resource-view-content): Made more generic from .image
   31670         so all resource views get sized correctly.
   31671         (.resource-view.image .resource-view-content): Removed.
   31672         * page/inspector/inspector.js:
   31673         (WebInspector.documentClick): Pass the line number from the anchor to
   31674         WebInspector.showResourceForURL.
   31675         (WebInspector.showResourceForURL): Add line number support. Pass the line
   31676         to ResourcesPanel.showResource.
   31677         (WebInspector.addMainEventListeners): Use bind for the event listeners.
   31678 
   31679 2008-04-14  Xan Lopez  <xan (a] gnome.org>
   31680 
   31681         Reviewed by Alp Toker.
   31682 
   31683         http://bugs.webkit.org/show_bug.cgi?id=17917
   31684         Bug 17917: Cookie support for HTTP soup backend
   31685 
   31686         Initial implementation of cookies for the http soup backend.
   31687 
   31688         Moved CookieJarGtk to CookieJarSoup in network/soup and left the original
   31689         one as CookieJarCurl in network/curl.
   31690 
   31691         * GNUmakefile.am:
   31692         * platform/CookieJar.h:
   31693         * platform/network/curl/CookieJarCurl.cpp: Renamed from WebCore/platform/gtk/CookieJarGtk.cpp.
   31694         (WebCore::setCookies):
   31695         (WebCore::cookies):
   31696         * platform/network/soup/CookieJarSoup.cpp: Added.
   31697         (WebCore::getCookieJar):
   31698         (WebCore::setCookies):
   31699         (WebCore::cookies):
   31700         * platform/network/soup/ResourceHandleSoup.cpp:
   31701         (WebCore::ResourceHandle::start):
   31702 
   31703 2008-04-14  Holger Freyther  <zecke (a] selfish.org>
   31704 
   31705         Reviewed by Alp Toker.
   31706 
   31707         https://bugs.webkit.org/show_bug.cgi?id=18411
   31708         Enable Page caching and create FrameViews on the fly
   31709 
   31710         Create the FrameView on the fly and cache pages
   31711 
   31712         - Keep a copy of the GtkAdjustment to be able to reuse it for the
   31713           FrameViews
   31714         - Do not initially create a FrameView and update the WebKit code to
   31715           cope with not having a view.
   31716         - Cache seven pages by default.
   31717 
   31718         * platform/gtk/ScrollViewGtk.cpp:
   31719         (WebCore::ScrollView::setGtkAdjustments):
   31720 
   31721 2008-04-14  David Hyatt  <hyatt (a] apple.com>
   31722 
   31723         Add a new optimized layout path for positioned objects that move.  Also avoid always marking the <html>
   31724         object for layout when it has a percentage height, since the RenderView already does that when its size
   31725         changes.
   31726 
   31727         Reviewed by mjs
   31728 
   31729         * rendering/RenderBlock.cpp:
   31730         (WebCore::RenderBlock::layoutBlockChildren):
   31731         (WebCore::RenderBlock::layoutPositionedObjects):
   31732         * rendering/RenderBox.h:
   31733         (WebCore::RenderBox::layoutDoingPositionedMovementOnly):
   31734         * rendering/RenderObject.cpp:
   31735         (WebCore::RenderObject::RenderObject):
   31736         (WebCore::RenderObject::setNeedsLayout):
   31737         (WebCore::RenderObject::setChildNeedsLayout):
   31738         (WebCore::RenderObject::setNeedsPositionedMovementLayout):
   31739         (WebCore::RenderObject::setStyle):
   31740         * rendering/RenderObject.h:
   31741         (WebCore::RenderObject::needsLayout):
   31742         (WebCore::RenderObject::needsPositionedMovementLayoutOnly):
   31743         (WebCore::RenderObject::layoutDoingPositionedMovementOnly):
   31744         * rendering/RenderStyle.cpp:
   31745         (WebCore::positionedObjectMoved):
   31746         (WebCore::RenderStyle::diff):
   31747         * rendering/RenderStyle.h:
   31748         (WebCore::RenderStyle::):
   31749 
   31750 2008-04-14  David Hyatt  <hyatt (a] apple.com>
   31751 
   31752         Add support for gradients in the CSS content property.
   31753 
   31754         Reviewed by olliej
   31755 
   31756         Added fast/gradients/generated-gradients.html
   31757 
   31758         * GNUmakefile.am:
   31759         * WebCore.pro:
   31760         * WebCore.vcproj/WebCore.vcproj:
   31761         * WebCore.xcodeproj/project.pbxproj:
   31762         * WebCoreSources.bkl:
   31763         * css/CSSParser.cpp:
   31764         (WebCore::CSSParser::parseContent):
   31765         * css/CSSStyleSelector.cpp:
   31766         (WebCore::CSSStyleSelector::applyProperty):
   31767         (WebCore::CSSStyleSelector::styleImage):
   31768         (WebCore::CSSStyleSelector::mapBackgroundImage):
   31769         * css/CSSStyleSelector.h:
   31770         * html/HTMLImageElement.cpp:
   31771         (WebCore::HTMLImageElement::attach):
   31772         * rendering/RenderContainer.cpp:
   31773         (WebCore::RenderContainer::updateBeforeAfterContentForContainer):
   31774         * rendering/RenderImage.cpp:
   31775         (WebCore::RenderImage::RenderImage):
   31776         (WebCore::RenderImage::setCachedImage):
   31777         (WebCore::RenderImage::paintReplaced):
   31778         (WebCore::RenderImage::calcReplacedWidth):
   31779         (WebCore::RenderImage::calcReplacedHeight):
   31780         (WebCore::RenderImage::calcAspectRatioWidth):
   31781         (WebCore::RenderImage::calcAspectRatioHeight):
   31782         * rendering/RenderImage.h:
   31783         (WebCore::RenderImage::hasImage):
   31784         (WebCore::RenderImage::image):
   31785         (WebCore::RenderImage::errorOccurred):
   31786         (WebCore::RenderImage::usesImageContainerSize):
   31787         (WebCore::RenderImage::setImageContainerSize):
   31788         (WebCore::RenderImage::imageHasRelativeWidth):
   31789         (WebCore::RenderImage::imageHasRelativeHeight):
   31790         (WebCore::RenderImage::imageSize):
   31791         * rendering/RenderImageGeneratedContent.cpp: Added.
   31792         (WebCore::RenderImageGeneratedContent::RenderImageGeneratedContent):
   31793         (WebCore::RenderImageGeneratedContent::~RenderImageGeneratedContent):
   31794         (WebCore::RenderImageGeneratedContent::setStyleImage):
   31795         * rendering/RenderImageGeneratedContent.h: Added.
   31796         (WebCore::RenderImageGeneratedContent::hasImage):
   31797         (WebCore::RenderImageGeneratedContent::image):
   31798         (WebCore::RenderImageGeneratedContent::errorOccurred):
   31799         (WebCore::RenderImageGeneratedContent::usesImageContainerSize):
   31800         (WebCore::RenderImageGeneratedContent::setImageContainerSize):
   31801         (WebCore::RenderImageGeneratedContent::imageHasRelativeWidth):
   31802         (WebCore::RenderImageGeneratedContent::imageHasRelativeHeight):
   31803         (WebCore::RenderImageGeneratedContent::imageSize):
   31804         * rendering/RenderObject.cpp:
   31805         (WebCore::RenderObject::createObject):
   31806         * rendering/RenderStyle.cpp:
   31807         (WebCore::StyleCachedImage::imageHasRelativeWidth):
   31808         (WebCore::StyleCachedImage::imageHasRelativeHeight):
   31809         (WebCore::StyleCachedImage::usesImageContainerSize):
   31810         (WebCore::RenderStyle::contentDataEquivalent):
   31811         (WebCore::RenderStyle::setContent):
   31812         (WebCore::ContentData::clear):
   31813         * rendering/RenderStyle.h:
   31814         (WebCore::StyleGeneratedImage::imageHasRelativeWidth):
   31815         (WebCore::StyleGeneratedImage::imageHasRelativeHeight):
   31816         (WebCore::StyleGeneratedImage::usesImageContainerSize):
   31817         (WebCore::BackgroundLayer::setBackgroundImage):
   31818         (WebCore::ContentData::):
   31819         (WebCore::RenderStyle::setListStyleImage):
   31820 
   31821 2008-04-14  Brady Eidson  <beidson (a] apple.com>
   31822 
   31823         Reviewed by Sam, but Anders too, and he was more thorough in his review
   31824         and thats the only reason Sam beat him
   31825 
   31826         Swap the Page and SecurityOrigin arguments when creating a StorageArea.
   31827 
   31828         SecurityOrigin is really the primary identifying characteristic of a StorageArea,
   31829         and StorageAreas that represent LocalStorage won't have an owner Page.
   31830 
   31831         * storage/SessionStorage.cpp:
   31832         (WebCore::SessionStorage::copy):
   31833         (WebCore::SessionStorage::storageArea):
   31834 
   31835         * storage/StorageArea.cpp:
   31836         (WebCore::StorageArea::create):
   31837         (WebCore::StorageArea::StorageArea):
   31838         (WebCore::StorageArea::copy):
   31839         (WebCore::StorageArea::dispatchStorageEvent): Null check m_page here, as in the future
   31840           it might be null
   31841         * storage/StorageArea.h:
   31842 
   31843 2008-04-14  Timothy Hatcher  <timothy (a] apple.com>
   31844 
   31845         Add support for changing the sort order of the resources. The two sorting
   31846         methods supported current are Time and Size.
   31847 
   31848         Reviewed by Adam Roben.
   31849 
   31850         * page/inspector/Images/statusbarMenuButton.png: Added.
   31851         * page/inspector/Images/statusbarMenuButtonSelected.png: Added.
   31852         * page/inspector/ResourcesPanel.js:
   31853         (WebInspector.ResourcesPanel): Create the status bar menu button and
   31854         setup the event listener to call _changeSortingFunction. Each option in
   31855         the select references a sorting function.
   31856         (WebInspector.ResourcesPanel.get statusBarItems): Add the sorting menu to the
   31857         items returned.
   31858         (WebInspector.ResourcesPanel._changeSortingFunction): Set the sorting function
   31859         to the selected option's function in the sorting menu.
   31860         * page/inspector/inspector.css: Added CSS rules for select elements in status bars.
   31861 
   31862 2008-04-14  Timothy Hatcher  <timothy (a] apple.com>
   31863 
   31864         Add support for toggling between small and large resource rows
   31865         in the Resources panel.
   31866 
   31867         Reviewed by Adam Roben.
   31868 
   31869         * English.lproj/InspectorLocalizedStrings.js: Added new tooltip string.
   31870         * page/inspector/Images/largerResourcesButtons.png: Added.
   31871         * page/inspector/Images/resourceDocumentIconSmall.png: Added.
   31872         * page/inspector/Images/resourcePlainIconSmall.png: Added.
   31873         * page/inspector/ResourcesPanel.js:
   31874         (WebInspector.ResourcesPanel): Create the status bar button and
   31875         setup the event listener to call _toggleLargerResources.
   31876         (WebInspector.ResourcesPanel.get statusBarItems): Return the status bar button.
   31877         (WebInspector.ResourcesPanel._toggleLargerResources): Toggle the class names
   31878         for the resources children list and the status bar button.
   31879         * page/inspector/inspector.css: New style rules for small resources
   31880         and the status bar item.
   31881 
   31882 2008-04-14  Chris Fleizach  <cfleizach (a] apple.com>
   31883 
   31884         Reviewed by Darin Adler
   31885 
   31886         <rdar://problem/5854572> REGRESSION: AXPosition seems to be flipped in nightly build
   31887         AX was using the wrong method to determine the view to use to create the screen position 
   31888 
   31889         * page/AccessibilityObject.cpp:
   31890         (WebCore::AccessibilityObject::documentFrameView):
   31891         * page/mac/AccessibilityObjectWrapper.mm:
   31892         (-[AccessibilityObjectWrapper position]):
   31893 
   31894 2008-04-14  David Smith  <catfish.man (a] gmail.com>
   31895 
   31896         Reviewed by Timothy Hatcher.
   31897         
   31898         - Fix https://bugs.webkit.org/show_bug.cgi?id=14258
   31899         Response time vs. download time should be shown in the network profile
   31900 
   31901         * page/inspector/Resource.js: Change the sorting function to sort by response received time.
   31902         * page/inspector/ResourcesPanel.js: Hook up the existing infrastructure to two bars instead of one; one for the total time, one for the time post-response.
   31903         * page/inspector/inspector.css: Add a new rule to make the waiting bar have a lower opacity, and change the total bar opacity to handle the overlap
   31904 
   31905 2008-04-14  Julien Chaffraix  <jchaffraix (a] webkit.org>
   31906 
   31907         Reviewed by Ap.
   31908 
   31909         Bug 17403: WebKit Creates Invalid Xhtml Links with Ajax
   31910         http://bugs.webkit.org/show_bug.cgi?id=17403
   31911 
   31912         The previous code had callbacks for the normal parsing (full document) and fragment parsing.
   31913         The difference was induced by the method we were using which did not accept a xmlParserCtxt.
   31914         The code has been refactored to allow us to share the callbacks between the different cases.
   31915         A drawback is that we have to use xmlParseContent which is an internal libxml method and thus
   31916         some internal intialization is done in WebCore.
   31917 
   31918         Test: fast/parser/ampersand-escaped-parseXMLFragment.xhtml
   31919 
   31920         * dom/XMLTokenizer.cpp:
   31921         (WebCore::createStringParser): Moved didInit in the global scope as it is shared by the
   31922         2 create methods.
   31923 
   31924         (WebCore::createMemoryParser): Create a memory parser similar to the previous code.
   31925         Initialize the xmlParserContext to call xmlParseContent in parseXMLDocumentFragment.
   31926 
   31927         (WebCore::XMLTokenizer::initializeParserContext): Check m_parsingFragment to know
   31928         which create method to call.
   31929 
   31930         * dom/XMLTokenizer.h: Added parseXMLDocumentFragment as a friend of XMLTokenizer.
   31931 
   31932 2008-04-14  Rob Buis  <buis (a] kde.org>
   31933 
   31934         Reviewed by Eric.
   31935 
   31936         http://bugs.webkit.org/show_bug.cgi?id=18230
   31937         tspan in link not working
   31938 
   31939         Implement SVG Errata: "The 'a' element may contain any
   31940         element that its parent may contain, except itself."
   31941 
   31942         * svg/SVGAElement.cpp:
   31943         (WebCore::SVGAElement::childShouldCreateRenderer):
   31944 
   31945 2008-04-13  David Hyatt  <hyatt (a] apple.com>
   31946 
   31947         Fix for bug 18466, WebKit exhibits slow performance on Opera DHTML benchmark.  Improve layout's rect
   31948         invalidation code to only invalidate a single unioned rect once enough individual little rects have
   31949         been detected.
   31950 
   31951         Reviewed by olliej
   31952 
   31953         * page/FrameView.cpp:
   31954         (WebCore::FrameViewPrivate::reset):
   31955         (WebCore::FrameView::layout):
   31956         (WebCore::FrameView::repaintRectangle):
   31957         (WebCore::FrameView::beginDeferredRepaints):
   31958         (WebCore::FrameView::endDeferredRepaints):
   31959         * page/FrameView.h:
   31960 
   31961 2008-04-13  Eric Seidel  <eric (a] webkit.org>
   31962 
   31963         Reviewed by Oliver.
   31964 
   31965         Fix spelling error in function name, no test case.
   31966 
   31967         * svg/SVGTextContentElement.cpp:
   31968         (WebCore::SVGInlineTextBoxQueryWalker::chunkPortionCallback):
   31969 
   31970 2008-04-13  Eric Seidel  <eric (a] webkit.org>
   31971 
   31972         Reviewed by Oliver.
   31973 
   31974         Build fix for +SVG_ANIMATION -SVG_FOREIGN_OBJECT build, no tests.
   31975 
   31976         * svg/SVGAnimateMotionElement.cpp:
   31977         (WebCore::SVGAnimateMotionElement::hasValidTarget):
   31978 
   31979 2008-04-13  Jan Michael Alonzo  <jmalonzo (a] unpluggable.com>
   31980 
   31981         Reviewed by Oliver Hunt.
   31982 
   31983         http://bugs.webkit.org/show_bug.cgi?id=18239
   31984         [Gtk] Build breaks if SVG is enabled but SVG Fonts disabled
   31985 
   31986         * svg/SVGAltGlyphElement.idl: Add SVG_FONTS in Conditional
   31987 
   31988 2008-04-13  Julien Chaffraix  <jchaffraix (a] webkit.org>
   31989 
   31990         Reviewed by David.
   31991 
   31992         More SVG filters build fix.
   31993 
   31994         * svg/graphics/filters/SVGFEImage.cpp:
   31995         (WebCore::SVGFEImage::~SVGFEImage):
   31996         (WebCore::SVGFEImage::setCachedImage):
   31997 
   31998 2008-04-13  David Hyatt  <hyatt (a] apple.com>
   31999 
   32000         Fix build bustage on the filters SVG code path (not built by default).
   32001 
   32002         * svg/SVGFEImageElement.cpp:
   32003         (WebCore::SVGFEImageElement::~SVGFEImageElement):
   32004         (WebCore::SVGFEImageElement::parseMappedAttribute):
   32005 
   32006 2008-04-13  Dan Winship  <danw (a] gnome.org>
   32007 
   32008         Reviewed by Alp Toker.
   32009 
   32010         http://bugs.webkit.org/show_bug.cgi?id=18391
   32011         return body data incrementally from libsoup backend
   32012 
   32013         Fix libsoup backend to pass data to the loader incrementally
   32014         rather than all at once at the end.
   32015 
   32016         * platform/network/soup/ResourceHandleSoup.cpp
   32017         (ResourceHandle::start): connect to "got-headers" and "got-chunk"
   32018         signals on the message
   32019         (gotHeadersCallback): call client->didReceiveResponse() from here
   32020         (gotChunkCallback): call client->didReceiveData() from here
   32021         (finishedCallback): renamed from dataCallback. mostly just calls
   32022         client->didFinishLoading() now.
   32023 
   32024 2008-04-13  Dan Bernstein  <mitz (a] apple.com>
   32025 
   32026         Reviewed by Jessica Kahn.
   32027 
   32028         - remove duplicate condition in canHaveChildrenForEditing()
   32029 
   32030         * editing/htmlediting.cpp:
   32031         (WebCore::canHaveChildrenForEditing):
   32032 
   32033 2008-04-13  Dan Bernstein  <mitz (a] apple.com>
   32034 
   32035         Reviewed by Darin Adler.
   32036 
   32037         - fix http://bugs.webkit.org/show_bug.cgi?id=18307
   32038           <rdar://problem/5842546> REGRESSION (r31620): Incorrect Hiragino Kaku Gothic, font-weight:500
   32039 
   32040         Test: fast/css/font-weight-1.html
   32041 
   32042         * platform/graphics/mac/FontCacheMac.mm:
   32043         (WebCore::toAppKitFontWeight): Adjusted the mapping to cover the AppKit
   32044         weight range from 2 to 12, because AppKit weight 1 never occurs. The
   32045         new mapping matches font-weight: n00 to ISO weight Wn.
   32046         * platform/mac/WebFontCache.mm:
   32047         (betterChoice): Changed the midpoint used when deciding between two
   32048         candidates that deviate from the desired weight by the same amount.
   32049 
   32050 2008-04-12  David Hyatt  <hyatt (a] apple.com>
   32051 
   32052         Memory management cleanup for the new StyleCachedImage and StyleGeneratedImage classes.  Make the back end
   32053         values hold refptrs to cached front end values.  This will avoid malloc churn as RenderStyles get
   32054         re-resolved.
   32055 
   32056         Reviewed by olliej
   32057 
   32058         * css/CSSCursorImageValue.cpp:
   32059         (WebCore::CSSCursorImageValue::updateIfSVGCursorIsUsed):
   32060         (WebCore::CSSCursorImageValue::cachedImage):
   32061         * css/CSSCursorImageValue.h:
   32062         * css/CSSImageGeneratorValue.cpp:
   32063         (WebCore::CSSImageGeneratorValue::CSSImageGeneratorValue):
   32064         (WebCore::CSSImageGeneratorValue::generatedImage):
   32065         * css/CSSImageGeneratorValue.h:
   32066         * css/CSSImageValue.cpp:
   32067         (WebCore::CSSImageValue::CSSImageValue):
   32068         (WebCore::CSSImageValue::~CSSImageValue):
   32069         (WebCore::CSSImageValue::cachedImage):
   32070         * css/CSSImageValue.h:
   32071         * css/CSSStyleSelector.cpp:
   32072         (WebCore::CSSStyleSelector::applyProperty):
   32073         (WebCore::CSSStyleSelector::createStyleImage):
   32074         * css/CSSStyleSelector.h:
   32075         * rendering/RenderStyle.h:
   32076         (WebCore::StyleCachedImage::cachedImage):
   32077         (WebCore::StyleGeneratedImage::StyleGeneratedImage):
   32078         (WebCore::StyleGeneratedImage::data):
   32079 
   32080 2008-04-12  Julien Chaffraix  <jchaffraix (a] webkit.org>
   32081 
   32082         Not reviewed, Qt build fix.
   32083 
   32084         * dom/XMLTokenizer.cpp:
   32085        (WebCore::XMLTokenizer::parseEndElement):
   32086         * platform/graphics/qt/GraphicsContextQt.cpp:
   32087         (WebCore::GraphicsContext::clip):
   32088         * platform/qt/ClipboardQt.cpp:
   32089         (WebCore::ClipboardQt::setDragImage):
   32090 
   32091 2008-04-12  David Hyatt  <hyatt (a] apple.com>
   32092 
   32093         Add support for list-style-image gradients.  Also improve the image comparisons between two RenderStyles        
   32094         to not mistakenly believe that images have changed.
   32095 
   32096         Reviewed by olliej
   32097 
   32098         Added fast/gradients/list-item-gradient.html
   32099 
   32100         * css/CSSComputedStyleDeclaration.cpp:
   32101         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
   32102         * css/CSSParser.cpp:
   32103         (WebCore::CSSParser::parseValue):
   32104         * css/CSSStyleSelector.cpp:
   32105         (WebCore::CSSStyleSelector::applyProperty):
   32106         (WebCore::CSSStyleSelector::createStyleImage):
   32107         * rendering/RenderListMarker.cpp:
   32108         (WebCore::RenderListMarker::RenderListMarker):
   32109         (WebCore::RenderListMarker::paint):
   32110         (WebCore::RenderListMarker::imageChanged):
   32111         (WebCore::RenderListMarker::calcPrefWidths):
   32112         * rendering/RenderListMarker.h:
   32113         * rendering/RenderStyle.cpp:
   32114         (WebCore::imagesEquivalent):
   32115         (WebCore::BorderImage::operator==):
   32116         (WebCore::StyleCachedImage::errorOccurred):
   32117         (WebCore::BackgroundLayer::operator==):
   32118         (WebCore::StyleInheritedData::StyleInheritedData):
   32119         (WebCore::cursorDataEquivalent):
   32120         (WebCore::StyleInheritedData::operator==):
   32121         (WebCore::RenderStyle::diff):
   32122         * rendering/RenderStyle.h:
   32123         (WebCore::StyleImage::errorOccurred):
   32124         (WebCore::RenderStyle::listStyleImage):
   32125         (WebCore::RenderStyle::setListStyleImage):
   32126         (WebCore::RenderStyle::initialListStyleImage):
   32127 
   32128 2008-04-12  Dan Bernstein  <mitz (a] apple.com>
   32129 
   32130         - Windows build fix
   32131 
   32132         * platform/win/ClipboardWin.cpp:
   32133         (WebCore::ClipboardWin::setDragImage):
   32134 
   32135 2008-04-12  Kevin Ollivier  <kevino (a] theolliviers.com>
   32136 
   32137         wx build fix. Update clip to take a FloatRect.
   32138 
   32139         * platform/graphics/wx/GraphicsContextWx.cpp:
   32140         (WebCore::GraphicsContext::clip):
   32141 
   32142 2008-04-12  David Hyatt  <hyatt (a] apple.com>
   32143 
   32144         Add gradient support to border-image (even though it's mostly just weird).
   32145 
   32146         Reviewed by Dan
   32147 
   32148         Added fast/gradients/border-image-gradient.html
   32149               fast/gradients/border-image-gradient-sides-and-corners.html
   32150 
   32151         * css/CSSBorderImageValue.h:
   32152         (WebCore::CSSBorderImageValue::imageValue):
   32153         * css/CSSStyleSelector.cpp:
   32154         (WebCore::CSSStyleSelector::applyProperty):
   32155         * platform/graphics/GeneratedImage.cpp:
   32156         (WebCore::GeneratedImage::draw):
   32157         * rendering/InlineFlowBox.cpp:
   32158         (WebCore::InlineFlowBox::paintBoxDecorations):
   32159         * rendering/RenderBox.cpp:
   32160         (WebCore::RenderBox::imageChanged):
   32161         * rendering/RenderObject.cpp:
   32162         (WebCore::RenderObject::mustRepaintBackgroundOrBorder):
   32163         (WebCore::RenderObject::paintBorderImage):
   32164         (WebCore::RenderObject::paintBorder):
   32165         (WebCore::RenderObject::updateBackgroundImages):
   32166         (WebCore::RenderObject::arenaDelete):
   32167         * rendering/RenderStyle.cpp:
   32168         (WebCore::StyleCachedImage::isLoaded):
   32169         * rendering/RenderStyle.h:
   32170         (WebCore::StyleImage::isLoaded):
   32171         (WebCore::BorderImage::image):
   32172 
   32173 2008-04-11  Dan Bernstein  <mitz (a] apple.com>
   32174 
   32175         Reviewed by Dave Hyatt.
   32176 
   32177         - fix a regression from r31324 which caused most Arabic text to render
   32178           as missing glyphs
   32179 
   32180         Test: svg/W3C-SVG-1.1/fonts-glyph-02-t.svg
   32181 
   32182         * svg/SVGFont.cpp:
   32183         (WebCore::SVGTextRunWalker::walk): Changed to always process characters
   32184         in logical order and therefore dispatch the callbacks with a logically-
   32185         ordered glyph stream. Changed the call to isCompatibleGlyph() to check
   32186         for compatibility only with the range of characters the candidate glyph
   32187         is derived from rather than with the entire lookup range. Changed to
   32188         mark the <missing-glyph> glyph identifier as valid, to facilitate the
   32189         use of invalid glyph identifiers to mark font fallback.
   32190         (WebCore::drawTextUsingSVGFontCallback): Changed to only append the
   32191         glyph identifier to a vector.
   32192         (WebCore::drawTextMissingGlyphCallback): Changed to only append the
   32193         character to a vector and append an invalid glyph identifier to the
   32194         glyph vector.
   32195         (WebCore::Font::drawTextUsingSVGFont): Moved the drawing from the
   32196         callbacks into this function, iterating over the glyph and fallback
   32197         characters vector in visual order.
   32198 
   32199 2008-04-11  Dirk Schulze <vbs85 (a] gmx.de>
   32200 
   32201         Reviewed by eseidel.
   32202 
   32203         Attempt to fix Cairo build.
   32204 
   32205         * platform/graphics/cairo/GraphicsContextCairo.cpp:
   32206         * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h:
   32207 
   32208 2008-04-11  David Hyatt  <hyatt (a] apple.com>
   32209 
   32210         Rename CachedResource's ref/deref methods to addClient/removeClient.  This matches the new
   32211         StyleImage class and is a more accurate description of what those methods really do.
   32212 
   32213         Reviewed by olliej
   32214 
   32215         * WebCore.base.exp:
   32216         * css/CSSCursorImageValue.cpp:
   32217         (WebCore::CSSCursorImageValue::updateIfSVGCursorIsUsed):
   32218         * css/CSSFontFaceSource.cpp:
   32219         (WebCore::CSSFontFaceSource::CSSFontFaceSource):
   32220         (WebCore::CSSFontFaceSource::~CSSFontFaceSource):
   32221         * css/CSSImageValue.cpp:
   32222         (WebCore::CSSImageValue::~CSSImageValue):
   32223         (WebCore::CSSImageValue::image):
   32224         * css/CSSImportRule.cpp:
   32225         (WebCore::CSSImportRule::~CSSImportRule):
   32226         (WebCore::CSSImportRule::insertedIntoParent):
   32227         * dom/ProcessingInstruction.cpp:
   32228         (WebCore::ProcessingInstruction::~ProcessingInstruction):
   32229         (WebCore::ProcessingInstruction::checkStyleSheet):
   32230         (WebCore::ProcessingInstruction::parseStyleSheet):
   32231         * dom/XMLTokenizer.cpp:
   32232         (WebCore::XMLTokenizer::~XMLTokenizer):
   32233         (WebCore::XMLTokenizer::endElementNs):
   32234         (WebCore::XMLTokenizer::notifyFinished):
   32235         * html/CanvasPattern.cpp:
   32236         (WebCore::CanvasPattern::CanvasPattern):
   32237         (WebCore::CanvasPattern::~CanvasPattern):
   32238         * html/HTMLImageLoader.cpp:
   32239         (WebCore::HTMLImageLoader::~HTMLImageLoader):
   32240         (WebCore::HTMLImageLoader::setImage):
   32241         (WebCore::HTMLImageLoader::updateFromElement):
   32242         * html/HTMLLinkElement.cpp:
   32243         (WebCore::HTMLLinkElement::~HTMLLinkElement):
   32244         (WebCore::HTMLLinkElement::process):
   32245         * html/HTMLScriptElement.cpp:
   32246         (WebCore::HTMLScriptElement::~HTMLScriptElement):
   32247         (WebCore::HTMLScriptElement::parseMappedAttribute):
   32248         (WebCore::HTMLScriptElement::insertedIntoDocument):
   32249         (WebCore::HTMLScriptElement::removedFromDocument):
   32250         (WebCore::HTMLScriptElement::notifyFinished):
   32251         * html/HTMLTokenizer.cpp:
   32252         (WebCore::HTMLTokenizer::reset):
   32253         (WebCore::HTMLTokenizer::scriptHandler):
   32254         (WebCore::HTMLTokenizer::notifyFinished):
   32255         * loader/CachedCSSStyleSheet.cpp:
   32256         (WebCore::CachedCSSStyleSheet::addClient):
   32257         * loader/CachedCSSStyleSheet.h:
   32258         * loader/CachedFont.cpp:
   32259         (WebCore::CachedFont::addClient):
   32260         * loader/CachedFont.h:
   32261         * loader/CachedImage.cpp:
   32262         (WebCore::CachedImage::addClient):
   32263         * loader/CachedImage.h:
   32264         * loader/CachedResource.cpp:
   32265         (WebCore::CachedResource::addClient):
   32266         (WebCore::CachedResource::removeClient):
   32267         * loader/CachedResource.h:
   32268         * loader/CachedScript.cpp:
   32269         (WebCore::CachedScript::addClient):
   32270         * loader/CachedScript.h:
   32271         * loader/CachedXBLDocument.h:
   32272         * loader/CachedXSLStyleSheet.cpp:
   32273         (WebCore::CachedXSLStyleSheet::addClient):
   32274         * loader/CachedXSLStyleSheet.h:
   32275         * loader/mac/UserStyleSheetLoader.cpp:
   32276         (UserStyleSheetLoader::UserStyleSheetLoader):
   32277         (UserStyleSheetLoader::~UserStyleSheetLoader):
   32278         * platform/mac/ClipboardMac.mm:
   32279         (WebCore::ClipboardMac::setDragImage):
   32280         * rendering/RenderImage.cpp:
   32281         (WebCore::RenderImage::~RenderImage):
   32282         (WebCore::RenderImage::setCachedImage):
   32283         * rendering/RenderListMarker.cpp:
   32284         (WebCore::RenderListMarker::~RenderListMarker):
   32285         (WebCore::RenderListMarker::setStyle):
   32286         * rendering/RenderObject.cpp:
   32287         (WebCore::RenderObject::updateBackgroundImages):
   32288         (WebCore::RenderObject::arenaDelete):
   32289         * rendering/RenderStyle.cpp:
   32290         (WebCore::StyleCachedImage::addClient):
   32291         (WebCore::StyleCachedImage::removeClient):
   32292         * svg/SVGImageLoader.cpp:
   32293         (WebCore::SVGImageLoader::updateFromElement):
   32294         * xml/XSLImportRule.cpp:
   32295         (WebCore::XSLImportRule::~XSLImportRule):
   32296         (WebCore::XSLImportRule::loadSheet):
   32297 
   32298 2008-04-11  David Hyatt  <hyatt (a] apple.com>
   32299 
   32300         This patch adds support for CSS gradients as background images.  RenderStyles now hold a StyleImage
   32301         RefPtr, which is a wrapper for two types of images: CachedImages (loaded from URLs) and generated images
   32302         (patterns created on the fly such as gradients).
   32303 
   32304         All of the features of <canvas> are supported: gradients can be linear or radial, have multiple stops, and
   32305         can specify their points as percentages (for reusable gradients across different box sizes).
   32306 
   32307         Reviewed by olliej
   32308 
   32309         Added fast/gradients/simple-gradients.html
   32310 
   32311         * WebCore.xcodeproj/project.pbxproj:
   32312         * css/CSSBorderImageValue.cpp:
   32313         (WebCore::CSSBorderImageValue::CSSBorderImageValue):
   32314         * css/CSSBorderImageValue.h:
   32315         (WebCore::CSSBorderImageValue::imageValue):
   32316         (WebCore::CSSBorderImageValue::generatorValue):
   32317         * css/CSSComputedStyleDeclaration.cpp:
   32318         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
   32319         * css/CSSGradientValue.cpp: Added.
   32320         (WebCore::CSSGradientValue::cssText):
   32321         (WebCore::CSSGradientValue::createGradient):
   32322         (WebCore::CSSGradientValue::image):
   32323         (WebCore::compareStops):
   32324         (WebCore::CSSGradientValue::sortStopsIfNeeded):
   32325         (WebCore::CSSGradientValue::resolvePoint):
   32326         (WebCore::CSSGradientValue::resolveRadius):
   32327         * css/CSSGradientValue.h: Added.
   32328         (WebCore::CSSGradientColorStop::CSSGradientColorStop):
   32329         (WebCore::CSSGradientValue::CSSGradientValue):
   32330         (WebCore::CSSGradientValue::type):
   32331         (WebCore::CSSGradientValue::setType):
   32332         (WebCore::CSSGradientValue::setFirstX):
   32333         (WebCore::CSSGradientValue::setFirstY):
   32334         (WebCore::CSSGradientValue::setSecondX):
   32335         (WebCore::CSSGradientValue::setSecondY):
   32336         (WebCore::CSSGradientValue::setFirstRadius):
   32337         (WebCore::CSSGradientValue::setSecondRadius):
   32338         (WebCore::CSSGradientValue::addStop):
   32339         * css/CSSImageGeneratorValue.cpp: Added.
   32340         (WebCore::CSSImageGeneratorValue::~CSSImageGeneratorValue):
   32341         (WebCore::CSSImageGeneratorValue::addClient):
   32342         (WebCore::CSSImageGeneratorValue::removeClient):
   32343         (WebCore::CSSImageGeneratorValue::getImage):
   32344         (WebCore::CSSImageGeneratorValue::putImage):
   32345         * css/CSSImageGeneratorValue.h: Added.
   32346         (WebCore::CSSImageGeneratorValue::isImageGeneratorValue):
   32347         * css/CSSImageValue.h:
   32348         (WebCore::CSSImageValue::isImageValue):
   32349         * css/CSSParser.cpp:
   32350         (WebCore::CSSParser::parseBackgroundImage):
   32351         (WebCore::BorderImageParseContext::commitImage):
   32352         (WebCore::CSSParser::parseBorderImage):
   32353         (WebCore::parseGradientPoint):
   32354         (WebCore::parseGradientColorStop):
   32355         (WebCore::CSSParser::parseGradient):
   32356         * css/CSSParser.h:
   32357         * css/CSSStyleSelector.cpp:
   32358         (WebCore::CSSStyleSelector::applyProperty):
   32359         (WebCore::CSSStyleSelector::createStyleImage):
   32360         (WebCore::CSSStyleSelector::mapBackgroundImage):
   32361         * css/CSSStyleSelector.h:
   32362         * css/CSSValue.h:
   32363         (WebCore::CSSValue::isImageValue):
   32364         (WebCore::CSSValue::isImageGeneratorValue):
   32365         * html/CanvasRenderingContext2D.cpp:
   32366         (WebCore::CanvasRenderingContext2D::isPointInPath):
   32367         * platform/graphics/BitmapImage.cpp:
   32368         (WebCore::BitmapImage::BitmapImage):
   32369         (WebCore::BitmapImage::dataChanged):
   32370         (WebCore::BitmapImage::frameCount):
   32371         * platform/graphics/BitmapImage.h:
   32372         * platform/graphics/GraphicsContext.cpp:
   32373         (WebCore::GraphicsContext::clipToImageBuffer):
   32374         * platform/graphics/GraphicsContext.h:
   32375         * platform/graphics/ImageBuffer.h:
   32376         (WebCore::ImageBuffer::cgImage):
   32377         (WebCore::ImageBuffer::image):
   32378         * platform/graphics/cg/GraphicsContextCG.cpp:
   32379         (WebCore::GraphicsContext::clipToImageBuffer):
   32380         (WebCore::GraphicsContext::paintBuffer):
   32381         (WebCore::GraphicsContext::drawImage):
   32382         * platform/graphics/cg/ImageBufferCG.cpp:
   32383         (WebCore::ImageBuffer::create):
   32384         (WebCore::ImageBuffer::ImageBuffer):
   32385         (WebCore::ImageBuffer::~ImageBuffer):
   32386         (WebCore::ImageBuffer::image):
   32387         (WebCore::ImageBuffer::getImageData):
   32388         (WebCore::ImageBuffer::putImageData):
   32389         (WebCore::ImageBuffer::toDataURL):
   32390         * platform/graphics/cg/ImageCG.cpp:
   32391         (WebCore::BitmapImage::BitmapImage):
   32392         (WebCore::BitmapImage::draw):
   32393         (WebCore::Image::drawPattern):
   32394         * platform/graphics/qt/ImageQt.cpp:
   32395         (WebCore::BitmapImage::BitmapImage):
   32396         * rendering/InlineFlowBox.cpp:
   32397         (WebCore::InlineFlowBox::paintBackground):
   32398         * rendering/RenderBox.cpp:
   32399         (WebCore::RenderBox::calculateBackgroundSize):
   32400         (WebCore::RenderBox::imageChanged):
   32401         (WebCore::RenderBox::paintBackgroundExtended):
   32402         * rendering/RenderObject.cpp:
   32403         (WebCore::RenderObject::mustRepaintBackgroundOrBorder):
   32404         (WebCore::RenderObject::updateBackgroundImages):
   32405         (WebCore::RenderObject::arenaDelete):
   32406         * rendering/RenderStyle.cpp:
   32407         (WebCore::StyleCachedImage::cssValue):
   32408         (WebCore::StyleCachedImage::canRender):
   32409         (WebCore::StyleCachedImage::imageSize):
   32410         (WebCore::StyleCachedImage::setImageContainerSize):
   32411         (WebCore::StyleCachedImage::addClient):
   32412         (WebCore::StyleCachedImage::removeClient):
   32413         (WebCore::StyleCachedImage::image):
   32414         (WebCore::StyleGeneratedImage::cssValue):
   32415         (WebCore::StyleGeneratedImage::imageSize):
   32416         (WebCore::StyleGeneratedImage::setImageContainerSize):
   32417         (WebCore::StyleGeneratedImage::addClient):
   32418         (WebCore::StyleGeneratedImage::removeClient):
   32419         (WebCore::StyleGeneratedImage::image):
   32420         * rendering/RenderStyle.h:
   32421         (WebCore::StyleImage::StyleImage):
   32422         (WebCore::StyleImage::~StyleImage):
   32423         (WebCore::StyleImage::operator==):
   32424         (WebCore::StyleImage::canRender):
   32425         (WebCore::StyleImage::isCachedImage):
   32426         (WebCore::StyleImage::isGeneratedImage):
   32427         (WebCore::StyleCachedImage::StyleCachedImage):
   32428         (WebCore::StyleCachedImage::data):
   32429         (WebCore::StyleCachedImage::isCachedImage):
   32430         (WebCore::StyleGeneratedImage::StyleGeneratedImage):
   32431         (WebCore::StyleGeneratedImage::data):
   32432         (WebCore::StyleGeneratedImage::isGeneratedImage):
   32433         (WebCore::BackgroundLayer::backgroundImage):
   32434         (WebCore::BackgroundLayer::setBackgroundImage):
   32435         (WebCore::BackgroundLayer::containsImage):
   32436         (WebCore::RenderStyle::backgroundImage):
   32437         (WebCore::RenderStyle::initialBackgroundImage):
   32438         * svg/graphics/cg/SVGPaintServerGradientCg.cpp:
   32439         (WebCore::SVGPaintServerGradient::teardown):
   32440         * svg/graphics/cg/SVGResourceMaskerCg.mm:
   32441         (WebCore::SVGResourceMasker::applyMask):
   32442 
   32443 2008-04-11  Dan Bernstein  <mitz (a] apple.com>
   32444 
   32445         Reviewed by Oliver Hunt.
   32446 
   32447         - add SVGGlyphMap.h to project files
   32448 
   32449         * WebCore.vcproj/WebCore.vcproj:
   32450         * WebCore.xcodeproj/project.pbxproj:
   32451 
   32452 2008-04-11  Anders Carlsson  <andersca (a] apple.com>
   32453 
   32454         Fix release build.
   32455         
   32456         * WebCore.base.exp:
   32457         
   32458         * loader/archive/ArchiveResource.h:
   32459         (WebCore::ArchiveResource::response):
   32460         This should be const.
   32461 
   32462 2008-04-11  Antti Koivisto  <antti (a] apple.com>
   32463 
   32464         Try to fix Qt build.
   32465 
   32466         * svg/animation/SMILTime.cpp:
   32467 
   32468 2008-04-11  Anders Carlsson  <andersca (a] apple.com>
   32469 
   32470         Reviewed by Brady.
   32471 
   32472         Don't create the ArchiveResource response lazily.
   32473         
   32474         * loader/archive/ArchiveResource.cpp:
   32475         (WebCore::ArchiveResource::ArchiveResource):
   32476         * loader/archive/ArchiveResource.h:
   32477         (WebCore::ArchiveResource::response):
   32478 
   32479 2008-04-11  Jan Michael Alonzo  <jmalonzo (a] unpluggable.com>
   32480 
   32481         Reviewed by Mark Rowe.
   32482 
   32483         Added missing '\' in the svg include path
   32484 
   32485         * GNUmakefile.am:
   32486 
   32487 2008-04-11  Antti Koivisto  <antti (a] apple.com>
   32488 
   32489         Another attempted Qt build fix.
   32490 
   32491         * WebCore.pro:
   32492 
   32493 2008-04-11  Antti Koivisto  <antti (a] apple.com>
   32494 
   32495         Reviewed by Oliver.
   32496 
   32497         Fix build when SVG is enabled but SVG_ANIMATION is not.
   32498 
   32499         * ChangeLog:
   32500         * bindings/js/JSSVGElementWrapperFactory.cpp:
   32501         * bindings/objc/DOM.mm:
   32502         (WebCore::createElementClassMap):
   32503         * svg/SVGAElement.cpp:
   32504         (WebCore::SVGAElement::defaultEventHandler):
   32505         * svg/SVGAnimateColorElement.cpp:
   32506         * svg/SVGAnimateColorElement.h:
   32507         * svg/SVGAnimateColorElement.idl:
   32508         * svg/SVGAnimateMotionElement.h:
   32509         * svg/SVGAnimationElement.cpp:
   32510         (WebCore::SVGAnimationElement::animationMode):
   32511         * svg/SVGAnimationElement.h:
   32512         * svg/SVGAnimationElement.idl:
   32513         * svg/SVGSetElement.cpp:
   32514         * svg/SVGSetElement.h:
   32515         * svg/SVGSetElement.idl:
   32516         * svg/animation/SMILTimeContainer.cpp:
   32517         (WebCore::SMILTimeContainer::begin):
   32518         (WebCore::SMILTimeContainer::pause):
   32519         (WebCore::SMILTimeContainer::resume):
   32520         (WebCore::SMILTimeContainer::elapsed):
   32521         (WebCore::SMILTimeContainer::isPaused):
   32522         (WebCore::SMILTimeContainer::timerFired):
   32523         * svg/animation/SMILTimeContainer.h:
   32524         * svg/animation/SVGSMILElement.cpp:
   32525         * svg/animation/SVGSMILElement.h:
   32526         * svg/svgtags.in:
   32527 
   32528 2008-04-11  Anders Carlsson  <andersca (a] apple.com>
   32529 
   32530         Reviewed by Brady.
   32531 
   32532         Move archive loading from FrameLoader to DocumentLoader.
   32533         
   32534         * loader/DocumentLoader.cpp:
   32535         (WebCore::DocumentLoader::DocumentLoader):
   32536         (WebCore::DocumentLoader::clearArchiveResources):
   32537         (WebCore::DocumentLoader::deliverArchivedResourcesAfterDelay):
   32538         (WebCore::DocumentLoader::archiveResourceDeliveryTimerFired):
   32539         (WebCore::DocumentLoader::isArchiveLoadPending):
   32540         (WebCore::DocumentLoader::cancelPendingArchiveLoad):
   32541         (WebCore::DocumentLoader::scheduleArchiveLoad):
   32542         (WebCore::DocumentLoader::setDefersLoading):
   32543         * loader/DocumentLoader.h:
   32544         * loader/FrameLoader.cpp:
   32545         (WebCore::FrameLoader::FrameLoader):
   32546         (WebCore::FrameLoader::setDefersLoading):
   32547         (WebCore::FrameLoader::stopAllLoaders):
   32548         * loader/FrameLoader.h:
   32549         * loader/ResourceLoader.cpp:
   32550         (WebCore::ResourceLoader::load):
   32551         (WebCore::ResourceLoader::didCancel):
   32552 
   32553 2008-04-11  Timothy Hatcher  <timothy (a] apple.com>
   32554 
   32555         Fixes the regression where the DOM tree does not update when navigating
   32556         to another page with the Inspector open.
   32557 
   32558         https://bugs.webkit.org/show_bug.cgi?id=18418
   32559 
   32560         Reviewed by Adam Roben.
   32561 
   32562         * page/inspector/ElementsPanel.js:
   32563         (WebInspector.ElementsPanel.prototype.reset): If the inspected document does not have a
   32564         firstChild yet, add an event listener for DOMContentLoaded. The event listener just sets
   32565         a proeprty that a polling functions looks for then triggers the reset.
   32566         (WebInspector.ElementsPanel.prototype._focusedNodeChanged): Always call updateStyles with
   32567         forceUpdate as true. This makes sure the Styles pane clears when there isn't a focused node.
   32568 
   32569 2008-04-11  Dan Bernstein  <mitz (a] apple.com>
   32570 
   32571         Reviewed by Timothy Hatcher.
   32572 
   32573         - fix http://bugs.webkit.org/show_bug.cgi?id=18412
   32574           Inspector truncates text when editing a CSS property
   32575 
   32576         * page/inspector/inspector.css:
   32577 
   32578 2008-04-11  Antti Koivisto  <antti (a] apple.com>
   32579 
   32580         Try to fix Qt build by including some headers.
   32581 
   32582         * ChangeLog:
   32583         * platform/graphics/UnitBezier.h:
   32584         * svg/SVGAnimationElement.cpp:
   32585         * svg/animation/SMILTime.h:
   32586         * svg/animation/SVGSMILElement.cpp:
   32587 
   32588 2008-04-11  Antti Koivisto  <antti (a] apple.com>
   32589 
   32590         Try to fix Windows build by switching to std::sort().
   32591 
   32592         * svg/animation/SVGSMILElement.cpp:
   32593         (WebCore::sortTimeList):
   32594 
   32595 2008-04-11  Rob Buis  <buis (a] kde.org>
   32596 
   32597         Reviewed by Eric.
   32598 
   32599         http://bugs.webkit.org/show_bug.cgi?id=18340
   32600         Elements with display="none" in a <clipPath> still contribute to clipping path
   32601 
   32602         Skip elements in clip-path container that have display=none specified.
   32603 
   32604         * svg/SVGClipPathElement.cpp:
   32605         (WebCore::SVGClipPathElement::canvasResource):
   32606 
   32607 2008-04-10  Antti Koivisto  <antti (a] apple.com>
   32608 
   32609         Reviewed by Eric.
   32610 
   32611         Redo the SVG animation support.
   32612         
   32613         It does
   32614         - Full SMIL interval timing model including syncbase and event base timing (the hard part).
   32615         - CSS and XML attribute animation.
   32616         - Linear, discrete and spline calcModes.
   32617         - Values animation with keyTimes and keySplines.
   32618         - Link activated animations.
   32619         - Pretty good support for <animate> and <set> animations
   32620         - Basic support for <animateColor>, <animateMotion> and <animateTransform>.
   32621 
   32622         This passes some 35 of the 56 tests in W3C SVG animation test suite, a bunch more
   32623         with some subtest failures.
   32624 
   32625         What is still missing
   32626         - Additive animation with multiple animations operating on the same property. This is a
   32627           major architectural feature in animation code. It shouldn't be too hard to add.
   32628         - Only <animate> implements accumulate.
   32629         - <animateMotion> does not do paths, keypoints, rotate.
   32630         - <animateTransform> does not work correctly in all cases
   32631         - calcMode paced is missing.
   32632         - repeat, beginEvent, endEvent are missing.
   32633         - accesskey() is missing.
   32634         - JS does not see correct values for baseVal/animVal, changing values that are being
   32635           animted for a script produces wrong results. This problem needs to be solved outside
   32636           the animation code.
   32637         - Some other stuff I forgot or do not know about.
   32638 
   32639         * GNUmakefile.am:
   32640         * WebCore.pro:
   32641         * WebCore.vcproj/WebCore.vcproj:
   32642         * WebCore.xcodeproj/project.pbxproj:
   32643         * dom/Document.cpp:
   32644         * history/CachedPage.cpp:
   32645         (WebCore::CachedPage::CachedPage):
   32646         
   32647         Use cache notification mechanism to start/stop animations.
   32648 
   32649         * svg/SVGAElement.cpp:
   32650         (WebCore::SVGAElement::defaultEventHandler):
   32651         
   32652         Start target animation on link activation.
   32653         
   32654         * svg/SVGAnimateColorElement.cpp:
   32655         (WebCore::SVGAnimateColorElement::applyAnimatedValueToElement):
   32656         (WebCore::SVGAnimateColorElement::updateAnimatedValue):
   32657         (WebCore::SVGAnimateColorElement::calculateFromAndToValues):
   32658         (WebCore::SVGAnimateColorElement::calculateFromAndByValues):
   32659         * svg/SVGAnimateColorElement.h:
   32660         * svg/SVGAnimateElement.cpp:
   32661         (WebCore::SVGAnimateElement::SVGAnimateElement):
   32662         (WebCore::parseNumberValueAndUnit):
   32663         (WebCore::SVGAnimateElement::applyAnimatedValueToElement):
   32664         (WebCore::SVGAnimateElement::updateAnimatedValue):
   32665         (WebCore::isColorAttribute):
   32666         (WebCore::SVGAnimateElement::calculateFromAndToValues):
   32667         (WebCore::SVGAnimateElement::calculateFromAndByValues):
   32668         * svg/SVGAnimateElement.h:
   32669         (WebCore::SVGAnimateElement::):
   32670         * svg/SVGAnimateMotionElement.cpp:
   32671         (WebCore::SVGAnimateMotionElement::SVGAnimateMotionElement):
   32672         (WebCore::SVGAnimateMotionElement::parseMappedAttribute):
   32673         (WebCore::SVGAnimateMotionElement::updateAnimatedValue):
   32674         (WebCore::parsePoint):
   32675         (WebCore::SVGAnimateMotionElement::calculateFromAndToValues):
   32676         (WebCore::SVGAnimateMotionElement::calculateFromAndByValues):
   32677         (WebCore::SVGAnimateMotionElement::applyAnimatedValueToElement):
   32678         (WebCore::SVGAnimateMotionElement::startedActiveInterval):
   32679         * svg/SVGAnimateMotionElement.h:
   32680         * svg/SVGAnimateTransformElement.cpp:
   32681         (WebCore::SVGAnimateTransformElement::SVGAnimateTransformElement):
   32682         (WebCore::SVGAnimateTransformElement::hasValidTarget):
   32683         (WebCore::SVGAnimateTransformElement::updateAnimatedValue):
   32684         (WebCore::transformListFor):
   32685         (WebCore::SVGAnimateTransformElement::applyAnimatedValueToElement):
   32686         (WebCore::SVGAnimateTransformElement::calculateFromAndToValues):
   32687         (WebCore::SVGAnimateTransformElement::calculateFromAndByValues):
   32688         (WebCore::SVGAnimateTransformElement::startedActiveInterval):
   32689         (WebCore::SVGAnimateTransformElement::parseTransformValue):
   32690         * svg/SVGAnimateTransformElement.h:
   32691         
   32692         Concrete anmation element classes.
   32693         
   32694         * svg/SVGAnimationElement.cpp:
   32695         (WebCore::SVGAnimationElement::SVGAnimationElement):
   32696         (WebCore::SVGAnimationElement::~SVGAnimationElement):
   32697         (WebCore::parseKeyTimes):
   32698         (WebCore::parseKeySplines):
   32699         (WebCore::SVGAnimationElement::parseMappedAttribute):
   32700         (WebCore::SVGAnimationElement::attributeChanged):
   32701         (WebCore::SVGAnimationElement::getStartTime):
   32702         (WebCore::SVGAnimationElement::getCurrentTime):
   32703         (WebCore::SVGAnimationElement::getSimpleDuration):
   32704         (WebCore::SVGAnimationElement::beginElement):
   32705         (WebCore::SVGAnimationElement::beginElementAt):
   32706         (WebCore::SVGAnimationElement::endElement):
   32707         (WebCore::SVGAnimationElement::endElementAt):
   32708         (WebCore::SVGAnimationElement::animationMode):
   32709         (WebCore::SVGAnimationElement::calcMode):
   32710         (WebCore::SVGAnimationElement::attributeType):
   32711         (WebCore::SVGAnimationElement::toValue):
   32712         (WebCore::SVGAnimationElement::byValue):
   32713         (WebCore::SVGAnimationElement::fromValue):
   32714         (WebCore::SVGAnimationElement::attributeName):
   32715         (WebCore::SVGAnimationElement::isAdditive):
   32716         (WebCore::SVGAnimationElement::isAccumulated):
   32717         (WebCore::SVGAnimationElement::hasValidTarget):
   32718         (WebCore::SVGAnimationElement::targetAttributeIsCSS):
   32719         (WebCore::SVGAnimationElement::setTargetAttributeAnimatedValue):
   32720         (WebCore::SVGAnimationElement::targetAttributeBaseValue):
   32721         (WebCore::solveEpsilon):
   32722         (WebCore::SVGAnimationElement::currentValuesForValuesAnimation):
   32723         (WebCore::SVGAnimationElement::startedActiveInterval):
   32724         (WebCore::SVGAnimationElement::applyAnimation):
   32725         (WebCore::SVGAnimationElement::unapplyAnimation):
   32726         (WebCore::SVGAnimationElement::endedActiveInterval):
   32727         * svg/SVGAnimationElement.h:
   32728         (WebCore::SVGAnimationElement::):
   32729         
   32730         This is pretty much a complete rewrite of the SVGAnimationElement. Timing related functionality
   32731         was refactored to SMILTimingElement class that this class now inherits.
   32732         
   32733         * svg/SVGDocumentExtensions.cpp:
   32734         (WebCore::SVGDocumentExtensions::startAnimations):
   32735         * svg/SVGElement.cpp:
   32736         (WebCore::SVGElement::ownerSVGElement):
   32737         * svg/SVGSVGElement.cpp:
   32738         
   32739         We need to reach the <svg> element from <use> too so go out from the shadow tree.
   32740         
   32741         (WebCore::SVGSVGElement::SVGSVGElement):
   32742         (WebCore::SVGSVGElement::~SVGSVGElement):
   32743         (WebCore::SVGSVGElement::pauseAnimations):
   32744         (WebCore::SVGSVGElement::unpauseAnimations):
   32745         (WebCore::SVGSVGElement::animationsPaused):
   32746         (WebCore::SVGSVGElement::getCurrentTime):
   32747         (WebCore::SVGSVGElement::willSaveToCache):
   32748         (WebCore::SVGSVGElement::willRestoreFromCache):
   32749         * svg/SVGSVGElement.h:
   32750         (WebCore::SVGSVGElement::timeContainer):
   32751         * svg/SVGSetElement.cpp:
   32752         (WebCore::SVGSetElement::applyAnimatedValueToElement):
   32753         (WebCore::SVGSetElement::calculateFromAndToValues):
   32754         (WebCore::SVGSetElement::calculateFromAndByValues):
   32755         (WebCore::SVGSetElement::updateAnimatedValue):
   32756         * svg/SVGSetElement.h:
   32757         
   32758         Concrete anmation element classes.
   32759         
   32760         * svg/SVGTimer.cpp: Removed.
   32761         * svg/SVGTimer.h: Removed.
   32762         * svg/SVGUseElement.cpp:
   32763         (WebCore::SVGUseElement::removedFromDocument):
   32764         * svg/TimeScheduler.cpp: Removed.
   32765         * svg/TimeScheduler.h: Removed.
   32766         
   32767         Replaced these with SMILTimeContainer class.
   32768         
   32769         * svg/animation: Added.
   32770         * svg/animation/SMILTime.cpp: Added.
   32771         (WebCore::operator+):
   32772         (WebCore::operator-):
   32773         (WebCore::operator*):
   32774         * svg/animation/SMILTime.h: Added.
   32775         (WebCore::SMILTime::SMILTime):
   32776         (WebCore::SMILTime::unresolved):
   32777         (WebCore::SMILTime::indefinite):
   32778         (WebCore::SMILTime::operator=):
   32779         (WebCore::SMILTime::value):
   32780         (WebCore::SMILTime::isFinite):
   32781         (WebCore::SMILTime::isIndefinite):
   32782         (WebCore::SMILTime::isUnresolved):
   32783         (WebCore::operator==):
   32784         (WebCore::operator!=):
   32785         (WebCore::operator>):
   32786         (WebCore::operator<):
   32787         (WebCore::operator>=):
   32788         (WebCore::operator<=):
   32789         (WebCore::max):
   32790         (WebCore::min):
   32791         
   32792         A floating point number with special values "indefinite" and "unresolved". Defines math for those.
   32793         
   32794         * svg/animation/SMILTimeContainer.cpp: Added.
   32795         (WebCore::SMILTimeContainer::SMILTimeContainer):
   32796         (WebCore::SMILTimeContainer::schedule):
   32797         (WebCore::SMILTimeContainer::unschedule):
   32798         (WebCore::SMILTimeContainer::elapsed):
   32799         (WebCore::SMILTimeContainer::isActive):
   32800         (WebCore::SMILTimeContainer::isPaused):
   32801         (WebCore::SMILTimeContainer::begin):
   32802         (WebCore::SMILTimeContainer::pause):
   32803         (WebCore::SMILTimeContainer::resume):
   32804         (WebCore::SMILTimeContainer::startTimer):
   32805         (WebCore::SMILTimeContainer::timerFired):
   32806         (WebCore::SMILTimeContainer::updateAnimations):
   32807         * svg/animation/SMILTimeContainer.h: Added.
   32808         
   32809         Manages the clock and time line for active animations in a document.
   32810         
   32811         * svg/animation/SVGSMILElement.cpp: Added.
   32812         (WebCore::ConditionEventListener::ConditionEventListener):
   32813         (WebCore::ConditionEventListener::handleEvent):
   32814         (WebCore::SVGSMILElement::Condition::Condition):
   32815         (WebCore::SVGSMILElement::SVGSMILElement):
   32816         (WebCore::SVGSMILElement::~SVGSMILElement):
   32817         (WebCore::SVGSMILElement::insertedIntoDocument):
   32818         (WebCore::SVGSMILElement::removedFromDocument):
   32819         (WebCore::SVGSMILElement::finishParsingChildren):
   32820         (WebCore::SVGSMILElement::parseOffsetValue):
   32821         (WebCore::SVGSMILElement::parseClockValue):
   32822         (WebCore::smilTimeSortFunction):
   32823         (WebCore::sortTimeList):
   32824         (WebCore::SVGSMILElement::parseCondition):
   32825         (WebCore::SVGSMILElement::isTimingElement):
   32826         (WebCore::SVGSMILElement::parseBeginOrEnd):
   32827         (WebCore::SVGSMILElement::parseMappedAttribute):
   32828         (WebCore::SVGSMILElement::attributeChanged):
   32829         (WebCore::SVGSMILElement::connectConditions):
   32830         (WebCore::SVGSMILElement::disconnectConditions):
   32831         (WebCore::SVGSMILElement::reschedule):
   32832         (WebCore::SVGSMILElement::targetElement):
   32833         (WebCore::SVGSMILElement::elapsed):
   32834         (WebCore::SVGSMILElement::restart):
   32835         (WebCore::SVGSMILElement::fill):
   32836         (WebCore::SVGSMILElement::xlinkHref):
   32837         (WebCore::SVGSMILElement::dur):
   32838         (WebCore::SVGSMILElement::repeatDur):
   32839         (WebCore::SVGSMILElement::repeatCount):
   32840         (WebCore::SVGSMILElement::maxValue):
   32841         (WebCore::SVGSMILElement::minValue):
   32842         (WebCore::SVGSMILElement::simpleDuration):
   32843         (WebCore::SVGSMILElement::addBeginTime):
   32844         (WebCore::SVGSMILElement::addEndTime):
   32845         (WebCore::SVGSMILElement::findInstanceTime):
   32846         (WebCore::SVGSMILElement::repeatingDuration):
   32847         (WebCore::SVGSMILElement::resolveActiveEnd):
   32848         (WebCore::SVGSMILElement::resolveInterval):
   32849         (WebCore::SVGSMILElement::resolveFirstInterval):
   32850         (WebCore::SVGSMILElement::resolveNextInterval):
   32851         (WebCore::SVGSMILElement::nextProgressTime):
   32852         (WebCore::SVGSMILElement::beginListChanged):
   32853         (WebCore::SVGSMILElement::endListChanged):
   32854         (WebCore::SVGSMILElement::checkRestart):
   32855         (WebCore::SVGSMILElement::calculateAnimationPercentAndRepeat):
   32856         (WebCore::SVGSMILElement::calculateNextProgressTime):
   32857         (WebCore::SVGSMILElement::determineActiveState):
   32858         (WebCore::SVGSMILElement::progress):
   32859         (WebCore::SVGSMILElement::notifyDependentsIntervalChanged):
   32860         (WebCore::SVGSMILElement::createInstanceTimesFromSyncbase):
   32861         (WebCore::SVGSMILElement::addTimeDependent):
   32862         (WebCore::SVGSMILElement::removeTimeDependent):
   32863         (WebCore::SVGSMILElement::handleConditionEvent):
   32864         (WebCore::SVGSMILElement::beginByLinkActivation):
   32865         * svg/animation/SVGSMILElement.h: Added.
   32866         (WebCore::SVGSMILElement::timeContainer):
   32867         (WebCore::SVGSMILElement::):
   32868         (WebCore::SVGSMILElement::intervalBegin):
   32869         (WebCore::SVGSMILElement::intervalEnd):
   32870         (WebCore::SVGSMILElement::Condition::):
   32871         
   32872             This abstract class implements the SMIL timing model. As an output it produces calls
   32873             to these virtual functions:
   32874         
   32875             virtual void startedActiveInterval() = 0;
   32876             virtual void applyAnimation(float percent, unsigned repeat) = 0;
   32877             virtual void unapplyAnimation() = 0;
   32878             virtual void endedActiveInterval() = 0;
   32879 
   32880 2008-04-10  Antti Koivisto  <antti (a] apple.com>
   32881 
   32882         Reviewed by Eric.
   32883 
   32884         Move CurveData out from AnimationController.cpp and rename
   32885         it to UnitBezier. This makes it possible to reuse this nice class from the 
   32886         SVG animation code.
   32887 
   32888         * WebCore.vcproj/WebCore.vcproj:
   32889         * WebCore.xcodeproj/project.pbxproj:
   32890         * page/AnimationController.cpp:
   32891         (WebCore::solveCubicBezierFunction):
   32892         * platform/graphics/UnitBezier.h: Added.
   32893         (WebCore::UnitBezier::UnitBezier):
   32894         (WebCore::UnitBezier::sampleCurveX):
   32895         (WebCore::UnitBezier::sampleCurveY):
   32896         (WebCore::UnitBezier::sampleCurveDerivativeX):
   32897         (WebCore::UnitBezier::solveCurveX):
   32898         (WebCore::UnitBezier::solve):
   32899 
   32900 2008-04-10  Brady Eidson  <beidson (a] apple.com>
   32901 
   32902         Reviewed by Sam Weinig
   32903 
   32904         The name "OriginStorage" never felt right to a few of us.  The HTML5 spec refers to our 
   32905         concept of "OriginStorage" as a "storage area", which makes more sense here.
   32906 
   32907         This patch is basically:
   32908         s/OriginStorage/StorageArea/
   32909 
   32910         * GNUmakefile.am:
   32911         * WebCore.pro:
   32912         * WebCore.vcproj/WebCore.vcproj:
   32913         * WebCore.xcodeproj/project.pbxproj:
   32914         * WebCoreSources.bkl:
   32915 
   32916         * loader/FrameLoader.cpp:
   32917 
   32918         * page/DOMWindow.cpp:
   32919         (WebCore::DOMWindow::sessionStorage):
   32920         * page/Page.cpp:
   32921 
   32922         * storage/OriginStorage.cpp: Removed.
   32923         * storage/OriginStorage.h: Removed.
   32924 
   32925         * storage/SessionStorage.cpp:
   32926         (WebCore::SessionStorage::copy):
   32927         (WebCore::SessionStorage::storageArea):
   32928         * storage/SessionStorage.h:
   32929 
   32930         * storage/Storage.cpp:
   32931         (WebCore::Storage::create):
   32932         (WebCore::Storage::Storage):
   32933         (WebCore::Storage::length):
   32934         (WebCore::Storage::key):
   32935         (WebCore::Storage::getItem):
   32936         (WebCore::Storage::setItem):
   32937         (WebCore::Storage::removeItem):
   32938         (WebCore::Storage::contains):
   32939         * storage/Storage.h:
   32940 
   32941         * storage/StorageArea.cpp: Copied from storage/OriginStorage.cpp.
   32942         (WebCore::StorageArea::create):
   32943         (WebCore::StorageArea::StorageArea):
   32944         (WebCore::StorageArea::~StorageArea):
   32945         (WebCore::StorageArea::copy):
   32946         (WebCore::StorageArea::length):
   32947         (WebCore::StorageArea::key):
   32948         (WebCore::StorageArea::getItem):
   32949         (WebCore::StorageArea::setItem):
   32950         (WebCore::StorageArea::removeItem):
   32951         (WebCore::StorageArea::contains):
   32952         (WebCore::StorageArea::dispatchStorageEvent):
   32953         * storage/StorageArea.h: Copied from storage/OriginStorage.h.
   32954 
   32955 2008-04-10  Xan Lopez  <xan (a] gnome.org>
   32956 
   32957         Reviewed by Alp Toker.
   32958 
   32959         http://bugs.webkit.org/show_bug.cgi?id=18342
   32960         Bug #18342 - Add logging to HTTP soup backend
   32961         
   32962         Add soup logging facilities to HTTP soup backend.
   32963         Enable defining WEBKIT_SOUP_LOGGING, with values from
   32964         0 to 3 for more verbosity.
   32965         
   32966         * platform/network/soup/ResourceHandleSoup.cpp:
   32967         (WebCore::ResourceHandle::start):
   32968 
   32969 2008-04-10  Timothy Hatcher  <timothy (a] apple.com>
   32970 
   32971         Fixes floating point precision in the Resources graph labels by using String.sprintf to
   32972         format the values. Also makes the image view use Number.bytesToString when showing the file
   32973         size. Makes Number.bytesToString and Number.secondsToString take an optional formatter function
   32974         so the Inspector can pass WebInspector.UIString, so the format strings can be localized.
   32975 
   32976         https://bugs.webkit.org/show_bug.cgi?id=18381
   32977         https://bugs.webkit.org/show_bug.cgi?id=14333
   32978 
   32979         Reviewed by Adam Roben.
   32980 
   32981         * English.lproj/InspectorLocalizedStrings.js: Added the new strings.
   32982         * page/inspector/ImageView.js:
   32983         (WebInspector.ImageView): Use Number.bytesToString to format this.resource.contentLength.
   32984         * page/inspector/ResourcesPanel.js:
   32985         (WebInspector.ResourceTransferTimeCalculator.prototype.formatValue): Pass WebInspector.UIString
   32986         to Number.secondsToString.
   32987         (WebInspector.ResourceTransferSizeCalculator.prototype.formatValue): Pass WebInspector.UIString
   32988         to Number.bytesToString.
   32989         * page/inspector/utilities.js:
   32990         (Number.secondsToString): Added a formatterFunction argument. Use the formatter and format strings
   32991         to control the number precision.
   32992         (Number.bytesToString): Ditto.
   32993 
   32994 2008-04-010  Alice Liu  <alice.liu (a] apple.com>
   32995 
   32996         Reviewed by Dan Bernstein.
   32997 
   32998         Fixed <rdar://5815856> CrashTracer: [USER] 8384 crashes in WebCore::Widget::getView const + 6
   32999 
   33000         Test: fast/events/mouseout-dead-subframe.html
   33001 
   33002         * page/EventHandler.cpp:
   33003         dispatching a mouse event can change the document structure, necessitating
   33004         a check for whether we still want to pass the event to the pre-determined subframe 
   33005         (WebCore::EventHandler::handleMouseMoveEvent):
   33006 
   33007 2008-04-10  Antti Koivisto  <antti (a] apple.com>
   33008 
   33009         Reviewed by Eric.
   33010 
   33011         Fix scale transform. This will be tested by the animation test suite when
   33012         SVG animation support lands.
   33013 
   33014         * svg/SVGTransformDistance.cpp:
   33015         (WebCore::SVGTransformDistance::SVGTransformDistance):
   33016 
   33017 2008-04-10  David Hyatt  <hyatt (a] apple.com>
   33018 
   33019         Add a gradient fillRect method to GraphicsContext.  This is implemented only in the CG port.  I stubbed
   33020         out a method in GraphicsContext.cpp with notImplemented().  Other platforms will need to add their own
   33021         gradient fill methods.
   33022 
   33023         Reviewed by aroben
   33024 
   33025         * platform/graphics/GraphicsContext.cpp:
   33026         (WebCore::GraphicsContext::fillRect):
   33027         * platform/graphics/GraphicsContext.h:
   33028         * platform/graphics/cg/GraphicsContextCG.cpp:
   33029         (WebCore::GraphicsContext::fillRect):
   33030 
   33031 2008-04-10  David Hyatt  <hyatt (a] apple.com>
   33032 
   33033         Gradient improvements.  Support for adding color stops by Color and not just by String.  Add the ability to mark
   33034         stops as already being sorted.
   33035 
   33036         Reviewed by aroben
   33037 
   33038         * platform/graphics/Gradient.cpp:
   33039         (WebCore::Gradient::addColorStop):
   33040         * platform/graphics/Gradient.h:
   33041         (WebCore::Gradient::setStopsSorted):
   33042 
   33043 2008-04-10  Timothy Hatcher  <timothy (a] apple.com>
   33044 
   33045         Fixes the build where some wtf headers would not be copied due
   33046         to a bug in some older versions of Xcode.
   33047 
   33048         Rubber-stamped by Adam Roben.
   33049 
   33050         * WebCore.xcodeproj/project.pbxproj: Adds a new script phase to handle
   33051         the copying of the icu and ForwardingHeaders folder to WebCore's PrivateHeaders.
   33052         Removes the old copy files phase and the icu and ForwardingHeaders folder references.
   33053 
   33054 2008-04-09  Brady Eidson  <beidson (a] apple.com>
   33055 
   33056         Reviewed by Mitz Pettel
   33057 
   33058         Add the "onstorage" attribute for the body element to provide easy setup of StorageEvent handling.
   33059 
   33060         Tests: storage/domstorage/sessionstorage/onstorage-attribute-markup.html
   33061                storage/domstorage/sessionstorage/onstorage-attribute-setattribute.html
   33062 
   33063         * html/HTMLAttributeNames.in: Added "onstorage"
   33064         * html/HTMLBodyElement.cpp:
   33065         (WebCore::HTMLBodyElement::parseMappedAttribute): Handle this attribute on the body element *only*
   33066           because that's where the HTML5 spec says StorageEvents go.  This might change in the future
   33067 
   33068 2008-04-09  Antti Koivisto  <antti (a] apple.com>
   33069 
   33070         Reviewed by Mitz.
   33071 
   33072         Remove a less-than-critical bit from Node and replace it with a hash. Those bits are valuable!
   33073 
   33074         Also moved setting of the guard to dispatchSimulatedClick for better consistency. 
   33075         No one else calls dispatchSimulatedMouseEvent() currently and this is really a click() specific behavior.
   33076 
   33077         * dom/EventTargetNode.cpp:
   33078         (WebCore::EventTargetNode::dispatchSimulatedMouseEvent):
   33079         (WebCore::EventTargetNode::dispatchSimulatedClick):
   33080         * dom/Node.cpp:
   33081         (WebCore::Node::Node):
   33082         * dom/Node.h:
   33083 
   33084 2008-04-09  Sam Weinig  <sam (a] webkit.org>
   33085 
   33086         Reviewed by Geoffrey Garen.
   33087 
   33088         Fix for https://bugs.webkit.org/show_bug.cgi?id=18389
   33089         Crash in JSDOMWindowWrapper::mark loading digg.com
   33090 
   33091         - Add a null check to JSDOMWindowWrapper::mark for the case when the collector
   33092           runs during its allocation.
   33093         - Cleans up the creation of the window to be a little more straight forward.
   33094 
   33095         * bindings/js/JSDOMWindowBase.cpp:
   33096         (WebCore::JSDOMWindowBasePrivate::JSDOMWindowBasePrivate):
   33097         (WebCore::JSDOMWindowBase::JSDOMWindowBase):
   33098         (WebCore::JSDOMWindowBase::clear):
   33099         (WebCore::JSDOMWindowBase::wrapper):
   33100         * bindings/js/JSDOMWindowBase.h:
   33101         * bindings/js/JSDOMWindowWrapper.cpp:
   33102         (WebCore::JSDOMWindowWrapper::JSDOMWindowWrapper):
   33103         (WebCore::JSDOMWindowWrapper::mark):
   33104         * bindings/js/JSDOMWindowWrapper.h:
   33105         * bindings/js/kjs_proxy.cpp:
   33106         (WebCore::KJSProxy::initScript):
   33107         * bindings/scripts/CodeGeneratorJS.pm:
   33108 
   33109 2008-04-09  Brady Eidson  <beidson (a] apple.com>
   33110 
   33111         Rubberstamped by Mitzpettel
   33112 
   33113         Added HTMLAttributeNames.in and HTMLTagNames.in to the xcodeproj for easy editing, 
   33114         and sorted the html group
   33115 
   33116         * WebCore.xcodeproj/project.pbxproj:
   33117 
   33118 2008-04-09  Brent Fulgham  <bfulgham (a] gmail.com>
   33119 
   33120         Reviewed by Mitz.
   33121 
   33122         Correct build regression in Windows (Cairo) build due to changes
   33123         in FontDescription.h signature.  (see http://bugs.webkit.org/show_bug.cgi?id=18394)
   33124 
   33125         * rendering/RenderThemeWin.cpp:  Change for new font methods.
   33126         (WebCore::RenderThemeWin::systemFont):
   33127 
   33128 2008-04-09  Brady Eidson  <beidson (a] apple.com>
   33129 
   33130         Reviewed by Sam Weinig
   33131 
   33132         When enumerating a Storage object, the Storage built-ins should not be included, but the 
   33133         prototype chain SHOULD be included.
   33134 
   33135         * bindings/js/JSStorageCustom.cpp:
   33136         (WebCore::JSStorage::customGetPropertyNames): Return false so the prototype chain is walked
   33137 
   33138         * storage/Storage.idl: Mark all built-ins as "DontEnum"
   33139 
   33140 2008-04-09  Brady Eidson  <beidson (a] apple.com>
   33141 
   33142         Reviewed by Adam Roben
   33143 
   33144         Per the HTML5 spec, enumerating a Storage object should walk the keys in the storage area, 
   33145         and should not return the built-in properties.
   33146 
   33147         Test: storage/domstorage/sessionstorage/enumerate-storage.html
   33148 
   33149         * bindings/js/JSLocationCustom.cpp:
   33150         (WebCore::JSLocation::customGetPropertyNames): Removed the name from an unused parameter
   33151 
   33152         * bindings/js/JSStorageCustom.cpp:
   33153         (WebCore::JSStorage::customGetPropertyNames): Copy all of the keys into the property names array
   33154 
   33155         * storage/Storage.idl: Add CustomGetPropertyNames
   33156 
   33157 2008-04-09  Timothy Hatcher  <timothy (a] apple.com>
   33158 
   33159         Fixes the regression where resource time/size pills do not
   33160         update during a load in the Inspector.
   33161 
   33162         http://bugs.webkit.org/show_bug.cgi?id=18374
   33163 
   33164         Reviewed by John Sullivan.
   33165 
   33166         * page/inspector/ResourcesPanel.js:
   33167         (ResourcesPanel.prototype.show): Remove an unneeded call to _updateGraphBars,
   33168         since _updateSidebarWidth already calls _updateGraphBars.
   33169         (ResourcesPanel.prototype.addResource): Call updateGraphSideWidth.
   33170         (ResourcesPanel.prototype._updateGraphBars): Ditto.
   33171         (ResourceSidebarTreeElement.prototype.updateGraphSideWidth): Update the
   33172         style for graphSideElement with the passed in width.
   33173 
   33174 2008-04-09  Antti Koivisto  <antti (a] apple.com>
   33175 
   33176         Reviewed by Mitz.
   33177 
   33178         Avoid unnecessary calls to virtual updateStyleAttributeIfNeeded() method.
   33179         - do the the checking in call sites instead of inside the function
   33180         - rename to updateStyleAttribute()
   33181         - use namedAttrMap directly (for getting id attribute) in insertedIntoDocument/removedFromDocument 
   33182           to avoid calling attributes() which may trigger style attribute update.
   33183         
   33184         * dom/Element.cpp:
   33185         (WebCore::Element::attributes):
   33186         (WebCore::Element::getAttribute):
   33187         (WebCore::Element::hasAttributes):
   33188         (WebCore::Element::insertedIntoDocument):
   33189         (WebCore::Element::removedFromDocument):
   33190         * dom/Element.h:
   33191         (WebCore::Element::updateStyleAttribute):
   33192         * dom/NamedAttrMap.cpp:
   33193         (WebCore::NamedAttrMap::addAttribute):
   33194         * dom/StyledElement.cpp:
   33195         (WebCore::StyledElement::updateStyleAttribute):
   33196         * dom/StyledElement.h:
   33197 
   33198 2008-04-09  Timothy Hatcher  <timothy (a] apple.com>
   33199 
   33200         A more complete fix for: can't drag the Web Inspector when grabbing
   33201         in the toolbar area. Makes dragging under the search field in the
   33202         empty space work again.
   33203 
   33204         http://bugs.webkit.org/show_bug.cgi?id=18373
   33205 
   33206         Reviewed by Adam Roben.
   33207 
   33208         * page/inspector/inspector.js:
   33209         (WebInspector.toolbarDragStart): Prevent dragging if the event target
   33210         is a toggleable toolbar item. Allow dragging when the target is a
   33211         normal toolbar item.
   33212 
   33213 2008-04-08  Sam Weinig  <sam (a] webkit.org>
   33214 
   33215         Reviewed by Timothy Hatcher.
   33216 
   33217         Fix for http://bugs.webkit.org/show_bug.cgi?id=18373
   33218         REGRESSION: Can't drag the Web Inspector when grabbing in the toolbar area
   33219 
   33220         * page/inspector/inspector.css:
   33221 
   33222 2008-04-08  Christian Persch  <chpe (a] gnome.org>
   33223 
   33224         Reviewed by Alp Toker.
   33225 
   33226         http://bugs.webkit.org/show_bug.cgi?id=18360
   33227         "missing sentinel" warnings in PluginDatabaseGtk.cpp
   33228 
   33229         Use NULL, not 0 as sentinel in varargs calls.
   33230 
   33231         * plugins/gtk/PluginDatabaseGtk.cpp:
   33232         (WebCore::PluginDatabase::getPluginPathsInDirectories):
   33233         (WebCore::PluginDatabase::defaultPluginDirectories):
   33234 
   33235 2008-04-04  Sam Weinig  <sam (a] webkit.org>
   33236 
   33237         Reviewed by Geoffrey Garen.
   33238 
   33239         First step in implementing the "split window"
   33240 
   33241         - This patch takes the first step in changing the window navigation model
   33242           from clearing the window properties on navigation, to replacing
   33243           an inner window.  This is necessary to safely perform security checks
   33244           using the lexical global object.
   33245 
   33246           This first step adds a new class called JSDOMWindowWrapper, which wraps
   33247           the real window object.  All JS calls that would go to the window object
   33248           now go to it, which it forwards to the current inner window.  To accomplish
   33249           this, the wrapper window is used as the ThisValue wherever the window was used
   33250           before.
   33251 
   33252         * WebCore.base.exp:
   33253         * WebCore.xcodeproj/project.pbxproj:
   33254         * bindings/js/JSDOMWindowBase.cpp:
   33255         (WebCore::JSDOMWindowBase::JSDOMWindowBase):
   33256         (WebCore::JSDOMWindowBase::clear): Reset the wrapper windows prototype too.
   33257         (WebCore::JSDOMWindowBase::toThisObject):
   33258         (WebCore::JSDOMWindowBase::wrapper):
   33259         (WebCore::windowProtoFuncAToB):
   33260         (WebCore::windowProtoFuncBToA):
   33261         (WebCore::windowProtoFuncOpen):
   33262         (WebCore::windowProtoFuncSetTimeout):
   33263         (WebCore::windowProtoFuncClearTimeout):
   33264         (WebCore::windowProtoFuncSetInterval):
   33265         (WebCore::windowProtoFuncAddEventListener):
   33266         (WebCore::windowProtoFuncRemoveEventListener):
   33267         (WebCore::windowProtoFuncShowModalDialog):
   33268         (WebCore::windowProtoFuncNotImplemented):
   33269         (WebCore::toJS):
   33270         * bindings/js/JSDOMWindowBase.h:
   33271         Fix to expect the wrapper as the thisObj.
   33272         * bindings/js/JSDOMWindowCustom.cpp:
   33273         (WebCore::JSDOMWindow::postMessage):
   33274         (WebCore::toDOMWindow):
   33275         * bindings/js/JSDOMWindowWrapper.cpp: Added.
   33276         (WebCore::JSDOMWindowWrapper::JSDOMWindowWrapper):
   33277         (WebCore::JSDOMWindowWrapper::~JSDOMWindowWrapper):
   33278         (WebCore::JSDOMWindowWrapper::mark):
   33279         (WebCore::JSDOMWindowWrapper::className):
   33280         (WebCore::JSDOMWindowWrapper::getOwnPropertySlot):
   33281         (WebCore::JSDOMWindowWrapper::put):
   33282         (WebCore::JSDOMWindowWrapper::deleteProperty):
   33283         (WebCore::JSDOMWindowWrapper::getPropertyNames):
   33284         (WebCore::JSDOMWindowWrapper::getPropertyAttributes):
   33285         (WebCore::JSDOMWindowWrapper::defineGetter):
   33286         (WebCore::JSDOMWindowWrapper::defineSetter):
   33287         (WebCore::JSDOMWindowWrapper::lookupGetter):
   33288         (WebCore::JSDOMWindowWrapper::lookupSetter):
   33289         (WebCore::JSDOMWindowWrapper::toGlobalObject):
   33290         (WebCore::JSDOMWindowWrapper::impl):
   33291         (WebCore::JSDOMWindowWrapper::disconnectFrame):
   33292         (WebCore::JSDOMWindowWrapper::clear):
   33293         (WebCore::toJS):
   33294         * bindings/js/JSDOMWindowWrapper.h: Added.
   33295         (WebCore::JSDOMWindowWrapper::innerWindow):
   33296         (WebCore::JSDOMWindowWrapper::setInnerWindow):
   33297         (WebCore::JSDOMWindowWrapper::classInfo):
   33298         Forward methods to the innerWindow.
   33299         * bindings/js/JSHTMLDocumentCustom.cpp:
   33300         (WebCore::JSHTMLDocument::open):
   33301         * bindings/js/ScheduledAction.cpp:
   33302         (WebCore::ScheduledAction::execute):
   33303         * bindings/js/kjs_events.cpp:
   33304         (WebCore::JSAbstractEventListener::handleEvent):
   33305         * bindings/js/kjs_proxy.cpp:
   33306         (WebCore::KJSProxy::~KJSProxy):
   33307         (WebCore::KJSProxy::evaluate):
   33308         (WebCore::KJSProxy::clear):
   33309         (WebCore::KJSProxy::initScript):
   33310         (WebCore::KJSProxy::clearDocumentWrapper):
   33311         (WebCore::KJSProxy::processingUserGesture):
   33312         (WebCore::KJSProxy::attachDebugger):
   33313         * bindings/js/kjs_proxy.h:
   33314         (WebCore::KJSProxy::haveWindowWrapper):
   33315         (WebCore::KJSProxy::windowWrapper):
   33316         (WebCore::KJSProxy::globalObject):
   33317         (WebCore::KJSProxy::initScriptIfNeeded):
   33318         Hold onto the wrapper window instead of global object.  As a convenience,
   33319         keep the globalObject() as a forward to the inner window.
   33320         * bindings/objc/DOMUtility.mm:
   33321         (KJS::createDOMWrapper):
   33322         * bindings/scripts/CodeGeneratorJS.pm:
   33323         * dom/Document.cpp:
   33324         (WebCore::Document::domWindow):
   33325         * dom/Document.h:
   33326         (WebCore::Document::defaultView):
   33327         * loader/FrameLoader.cpp:
   33328         (WebCore::FrameLoader::dispatchWindowObjectAvailable):
   33329         * page/DOMWindow.idl:
   33330         * page/Frame.cpp:
   33331         (WebCore::Frame::~Frame):
   33332         (WebCore::Frame::pageDestroyed):
   33333 
   33334 2008-04-08  Brady Eidson  <beidson (a] apple.com>
   33335 
   33336         Encourage Windows to rebuild - AGAIN...
   33337 
   33338         * WebCore.vcproj/build-generated-files.sh:
   33339         * bindings/scripts/CodeGenerator.pm:
   33340         * bindings/scripts/CodeGeneratorJS.pm:
   33341         * config.h:
   33342 
   33343 2008-04-08  Brady Eidson  <beidson (a] apple.com>
   33344 
   33345         OMG release builds didn't have this flag Windows build bots I'm so 
   33346         sorry will you ever forgive me?
   33347 
   33348         (Found by Stephanie, rubberstamped and landed by Brady)
   33349 
   33350         * WebCore.vcproj/WebCore.vcproj: Add ENABLE_DOM_STORAGE for release builds
   33351 
   33352 2008-04-08  Timothy Hatcher  <timothy (a] apple.com>
   33353 
   33354         Fixes a crash in KJS::JSValue::toObject when closing
   33355         Safari with Inspector open.
   33356 
   33357         http://bugs.webkit.org/show_bug.cgi?id=18371
   33358 
   33359         Reviewed by Adam Roben.
   33360 
   33361         * page/InspectorController.cpp:
   33362         (WebCore::inspectedWindow): NULL check the result of toJSDOMWindow.
   33363         Return JSNull if JSDOMWindow is 0.
   33364         * page/inspector/ElementsPanel.js:
   33365         (ElementsPanel.prototype.reset): NULL check the result of
   33366         InspectorController.inspectedWindow.
   33367 
   33368 2008-04-08  Adam Roben  <aroben (a] apple.com>
   33369 
   33370         Wx build fix
   33371 
   33372         * webcore-wx.bkl: Removed entry for non-existent file.
   33373 
   33374 2008-04-08  Adam Roben  <aroben (a] apple.com>
   33375 
   33376         qmake build fixes
   33377 
   33378         * WebCore.pro: Removed entries for non-existent files.
   33379 
   33380 2008-04-08  Brady Eidson  <beidson (a] apple.com>
   33381 
   33382         Rubberstamped by Adam Roben
   33383         
   33384         Touch some files to *strongly* encourage Windows to rebuilt with DOM_STORAGE enabled
   33385 
   33386         * WebCore.vcproj/build-generated-files.sh:
   33387         * bindings/scripts/CodeGenerator.pm:
   33388         * config.h:
   33389 
   33390 2008-04-08  Timothy Hatcher  <timothy (a] apple.com>
   33391 
   33392         Implements the majority of the Inspector UI refresh as shown at:
   33393         http://trac.webkit.org/projects/webkit/wiki/ProposedWebInspectorUIRefresh
   33394 
   33395         http://bugs.webkit.org/show_bug.cgi?id=17773
   33396 
   33397         A few areas that have not been re-implemented with the new UI are:
   33398         * Search and search results.
   33399         * Request and response headers in the Resources panel.
   33400         * Changing the sorting, grouping or toggling small rows in Resources.
   33401         * Image and font previews in the icon of resources.
   33402 
   33403         Reviewed by Adam Roben.
   33404 
   33405         * English.lproj/InspectorLocalizedStrings.js: Updated to match actual strings.
   33406         * WebCore.vcproj/WebCore.vcproj: Added new files.
   33407         * page/InspectorController.cpp:
   33408         (WebCore::InspectorController::setWindowVisible): Call resetScriptObjects()
   33409         instead of individual clear functions.
   33410         (WebCore::InspectorController::populateScriptObjects): Renamed from
   33411         populateScriptResources.
   33412         (WebCore::InspectorController::addDatabaseScriptResource): Call
   33413         addDatabase instead of addResource.
   33414         (WebCore::InspectorController::removeDatabaseScriptResource): Call
   33415         removeDatabase instead of removeResource.
   33416         (WebCore::InspectorController::resetScriptObjects): Renamed from
   33417         clearScriptResources.
   33418         (WebCore::InspectorController::didCommitLoad): Call resetScriptObjects()
   33419         instead of individual clear functions.
   33420         * page/InspectorController.h: Rename functions.
   33421         * page/inspector/Console.js: Changed the object name to Console from
   33422         ConsolePanel. Made it inherit the prototype from View. Added code
   33423         to animate in and out.
   33424         * page/inspector/Database.js: Removed title updating and Resource
   33425         pseudo-subclassing. Made more of a Model object that just encapsulates
   33426         data. Add a getter for table names.
   33427         * page/inspector/DatabaseQueryView.js: Added. Implements the view seen
   33428         when selecting a Database in the DatabasesPanel. Implemented as an
   33429         interactive console-like area.
   33430         * page/inspector/DatabaseTableView.js: Added. Implements the view seen
   33431         when selecting a Database Table in the DatabasesPanel. Matches the old
   33432         Browse view of Database panels.
   33433         * page/inspector/DatabasesPanel.js: Changed the object name to DatabasesPanel
   33434         from DatabasePanel. Implements a panel that shows a sidebar of Databases
   33435         and Database Tables.
   33436         * page/inspector/ElementsPanel.js:  Changed the object name to ElementsPanel
   33437         from DocumentPanel. Implements the DOM tree that shows the DOM rooted at the
   33438         main resource.
   33439         * page/inspector/FontView.js: Use this.contentElement instead of this.element.
   33440         * page/inspector/ImageView.js: Ditto.
   33441         * page/inspector/Images/clearConsoleButtons.png: Added.
   33442         * page/inspector/Images/consoleButtons.png: Added.
   33443         * page/inspector/Images/darkShadow.png: Flipped.
   33444         * page/inspector/Images/database.png: Modified to be 32x32.
   33445         * page/inspector/Images/databaseTable.png: Added.
   33446         * page/inspector/Images/databasesIcon.png: Added.
   33447         * page/inspector/Images/disclosureTriangleSmallDown.png: Added.
   33448         * page/inspector/Images/disclosureTriangleSmallDownBlack.png: Added.
   33449         * page/inspector/Images/disclosureTriangleSmallDownWhite.png: Added.
   33450         * page/inspector/Images/disclosureTriangleSmallRight.png: Added.
   33451         * page/inspector/Images/disclosureTriangleSmallRightBlack.png: Added.
   33452         * page/inspector/Images/disclosureTriangleSmallRightDown.png: Added.
   33453         * page/inspector/Images/disclosureTriangleSmallRightDownBlack.png: Added.
   33454         * page/inspector/Images/disclosureTriangleSmallRightDownWhite.png: Added.
   33455         * page/inspector/Images/disclosureTriangleSmallRightWhite.png: Added.
   33456         * page/inspector/Images/dockButtons.png: Added.
   33457         * page/inspector/Images/elementsIcon.png: Added.
   33458         * page/inspector/Images/gradientHighlightBottom.png:
   33459         * page/inspector/Images/resourceCSSIcon.png: Added.
   33460         * page/inspector/Images/resourceDocumentIcon.png: Added.
   33461         * page/inspector/Images/resourcePlainIcon.png: Added.
   33462         * page/inspector/Images/resourcesIcon.png: Added.
   33463         * page/inspector/Images/resourcesSizeGraphIcon.png: Added.
   33464         * page/inspector/Images/resourcesTimeGraphIcon.png: Added.
   33465         * page/inspector/Images/scriptsIcon.png: Added.
   33466         * page/inspector/Images/segment.png: Modified to fit the taller status bar.
   33467         * page/inspector/Images/segmentEnd.png: Ditto.
   33468         * page/inspector/Images/segmentHover.png: Ditto.
   33469         * page/inspector/Images/segmentHoverEnd.png: Ditto.
   33470         * page/inspector/Images/segmentSelected.png: Ditto.
   33471         * page/inspector/Images/segmentSelectedEnd.png: Ditto.
   33472         * page/inspector/Images/sidebarSelectionBackground.png: Added.
   33473         * page/inspector/Images/sidebarSelectionBackgroundFocused.png: Added.
   33474         * page/inspector/Images/sidebarSelectionBackgroundInactive.png: Added.
   33475         * page/inspector/Images/sidebarSmallSelectionBackground.png: Added.
   33476         * page/inspector/Images/sidebarSmallSelectionBackgroundFocused.png: Added.
   33477         * page/inspector/Images/sidebarSmallSelectionBackgroundInactive.png: Added.
   33478         * page/inspector/Images/statusbarBackground.png: Added.
   33479         * page/inspector/Images/statusbarBottomBackground.png: Added.
   33480         * page/inspector/Images/statusbarButtons.png: Added.
   33481         * page/inspector/Images/statusbarResizerVertical.png: Added.
   33482         * page/inspector/Images/toolbarItemSelected.png: Added.
   33483         * page/inspector/Panel.js: Added support for toolbar items and status bar items.
   33484         Inherits from the View prototype.
   33485         * page/inspector/Resource.js: Removed title updating and the ResourceTreeElement.
   33486         Made more of a Model object that just encapsulates data.
   33487         * page/inspector/ResourceCategory.js: Removed the ResourceCategoryTreeElement.
   33488         Made more of a Model object that just encapsulates data.
   33489         * page/inspector/ResourceView.js: A simple base object for Resource views
   33490         shown in ResourcesPanel. Inherits from the View prototype.
   33491         * page/inspector/ResourcesPanel.js: Changed the object name to ResourcesPanel
   33492         from NetworkPanel. Implements the timeline graph, size graph and resource
   33493         viewing by using ResourceViews.
   33494         * page/inspector/SidebarTreeElement.js: Added. Inherits from TreeElement and implements
   33495         a section element and a regular element that has an icon, title and optional subtitle.
   33496         * page/inspector/SourceView.js: Use this.contentElement instead of this.element.
   33497         * page/inspector/StylesSidebarPane.js: Null check WebInspector.mainResource.
   33498         * page/inspector/View.js: Added. A simple object to manage showing and hiding an element.
   33499         * page/inspector/WebKit.qrc: Added new files.
   33500         * page/inspector/inspector.css: New and changed style rules to support the new UI.
   33501         * page/inspector/inspector.html: New and changed HTML for the UI. The search field
   33502         is disabled until search is reimplemented.
   33503         * page/inspector/inspector.js: Removed code related to the sidebar and back-forward lists.
   33504         Also removed code related to navigation to panels. Added code to instantiate the new
   33505         panels and setup the toolbar.
   33506 
   33507 2008-04-08  Dan Bernstein  <mitz (a] apple.com>
   33508 
   33509         Reviewed by Antti Koivisto.
   33510 
   33511         - fix a regression from r31313 which made the inspector highlight and
   33512           yellow find highlight for table cells with extra top appear in the
   33513           wrong position
   33514 
   33515         * rendering/LayoutState.cpp:
   33516         (WebCore::LayoutState::LayoutState): Changed absolutePosition() to
   33517         absolutePositionForContent(), to get the right position for children of
   33518         table cells. This is the correct fix for this part of r31313.
   33519         * rendering/RenderBox.cpp:
   33520         (WebCore::RenderBox::absolutePosition): Reverted the change from r31313
   33521         by changing absolutePosition() to absolutePositionForContent() here too.
   33522         * rendering/RenderObject.h:
   33523         (WebCore::RenderObject::absolutePositionForContent): Changed to return
   33524         the result from absolutePosition().
   33525         * rendering/RenderTableCell.cpp:
   33526         (WebCore::RenderTableCell::absoluteClippedOverflowRect): Turned the
   33527         "else" case into an early return.
   33528         (WebCore::RenderTableCell::absolutePosition): Reverted the change from
   33529         r31313.
   33530 
   33531 2008-04-08  Dan Bernstein  <mitz (a] apple.com>
   33532 
   33533         Reviewed by Antti Koivisto.
   33534 
   33535         - fix http://bugs.webkit.org/show_bug.cgi?id=18172
   33536           REGRESSION (r31114-31132): Page renders structured almost horizontally (at flickr.com)
   33537 
   33538         Test: fast/block/float/br-with-clear-2.html
   33539 
   33540         * rendering/bidi.cpp:
   33541         (WebCore::RenderBlock::layoutInlineChildren): The existing code for
   33542         handling a float-clearing <br> in incremental layout had several bugs in
   33543         it: it only applied when the <br> was on the last line of the block; it
   33544         assumed that the <br> was always the rightmost box on the line (which is
   33545         false in right-to-left runs); and in some places it looked at the last
   33546         child of the block instead of the last box on the line. Fixed these
   33547         bugs.
   33548 
   33549 2008-04-08  Adam Roben  <aroben (a] apple.com>
   33550 
   33551         Mac build fix
   33552 
   33553         * WebCore.xcodeproj/project.pbxproj: Removed MainThread* files which
   33554         were moved to WTF.
   33555 
   33556 2008-04-08  Timothy Hatcher  <timothy (a] apple.com>
   33557 
   33558         Change WebInspector.elementDragStart and WebInspector.elementDragEnd to have more
   33559         state, so calling elementDragEnd does not need the listener functions. Also makes
   33560         calling elementDragStart again without elementDragEnd work correctly.
   33561 
   33562         Reviewed by Adam Roben.
   33563 
   33564         * page/inspector/ElementsPanel.js:
   33565         (DocumentPanel.prototype.rightSidebarResizerDragStart): Just call WebInspector.elementDragStart.
   33566         Removed code that stored away the listeners now that elementDragStart does it.
   33567         (DocumentPanel.prototype.rightSidebarResizerDragEnd): Just call WebInspector.elementDragEnd.
   33568         Removed code that deleted listeners properties now that elementDragEnd does it.
   33569         * page/inspector/inspector.js:
   33570         (WebInspector.sidebarResizerDragEnd): Pass less arguments to elementDragEnd.
   33571         (WebInspector.searchResultsResizerDragEnd): Ditto.
   33572         (WebInspector.elementDragStart): Store the listeners as private properties on WebInspector.
   33573         If the properties are already defined, call elementDragEnd first.
   33574         (WebInspector.elementDragEnd): Remove the event listeners using the stored properties.
   33575         Delete the private listener properties.
   33576 
   33577 2008-04-08  Adam Roben  <aroben (a] apple.com>
   33578 
   33579         Build fix
   33580 
   33581         * ForwardingHeaders/wtf/MainThread.h: Added. Forgot to commit this.
   33582 
   33583 2008-04-08  Adam Roben  <aroben (a] apple.com>
   33584 
   33585         Move callOnMainThread to WTF
   33586 
   33587         Reviewed by Alexey Proskuryakov.
   33588 
   33589         * GNUmakefile.am:
   33590         * WebCore.pro:
   33591         * WebCore.vcproj/WebCore.vcproj:
   33592         * WebCoreSources.bkl:
   33593         Removed MainThread files.
   33594 
   33595         * bindings/js/JSCustomSQLTransactionCallback.cpp:
   33596         * loader/icon/IconDatabase.cpp:
   33597         (WebCore::iconDatabase):
   33598         * storage/Database.cpp:
   33599         (WebCore::Database::Database):
   33600         * storage/DatabaseTracker.cpp:
   33601         Updated #includes and replaced calls to
   33602         WebCore::initializeThreadingAndMainThread with calls to
   33603         KJS::initializeThreading.
   33604 
   33605         * platform/MainThread.cpp: Removed.
   33606         * platform/MainThread.h: Removed.
   33607         * platform/gtk/MainThreadGtk.cpp: Removed.
   33608         * platform/mac/MainThreadMac.mm: Removed.
   33609         * platform/qt/MainThreadQt.cpp: Removed.
   33610         * platform/win/MainThreadWin.cpp: Removed.
   33611         * platform/wx/MainThreadWx.cpp: Removed.
   33612 
   33613 2008-04-07  Timothy Hatcher  <timothy (a] apple.com>
   33614 
   33615         Makes the Network timeline graph resource sizes on the bar graph
   33616         when Transfer Size is selected.
   33617 
   33618         http://bugs.webkit.org/show_bug.cgi?id=18351
   33619 
   33620         Reviewed by Adam Roben.
   33621 
   33622         * page/inspector/Resource.js:
   33623         (WebInspector.Resource.CompareByTime): Array sorting function for time.
   33624         Copied from WebInspector.NetworkPanel.timelineEntryCompare.
   33625 
   33626         * page/inspector/ResourcesPanel.js:
   33627         (WebInspector.NetworkPanel): Set the selectedIndex of graphModeSelectElement to
   33628         make Transfer Time the default graph.
   33629         (WebInspector.NetworkPanel.prototype.changeGraphMode): Call calculator.reset,
   33630         _refreshAllResources and _updateGraphDividersIfNeeded.
   33631         (WebInspector.NetworkPanel.prototype.get totalDuration): Removed.
   33632         (WebInspector.NetworkPanel.prototype._updateGraphBoundriesIfNeeded): Removed boundary
   33633         checking code and just call calculator.updateBoundries.
   33634         (WebInspector.NetworkPanel.prototype._updateGraphDividersIfNeeded): Add a force argument.
   33635         Use calculator.boundarySpan when computing the slice. If the slice is NaN, don't make a label.
   33636         Ask the calculator to format the label values for each slice.
   33637         (WebInspector.NetworkPanel.prototype.clearTimeline): Call calculator.reset.
   33638         (WebInspector.NetworkPanel.timelineEntryCompare): Call WebInspector.Resource.CompareByTime.
   33639 
   33640         (WebInspector.NetworkTimelineEntry.prototype.refresh): Ask the panel's calculator to compute
   33641         bar graph percentages for a resource. Use those percentages to change the bar style.
   33642 
   33643         (WebInspector.ResourceCalculator): Renamed from WebInspector.TimelineValueCalculator.
   33644         (WebInspector.ResourceCalculator.prototype.computeSummaryValues): Changed the Array.forEach
   33645         to a normal for loop. Work with resources instead of TimelineEntries.
   33646         (WebInspector.ResourceCalculator.prototype.computeBarGraphPercentages): Return basic bar graph
   33647         percents with start always being zero.
   33648         (WebInspector.ResourceCalculator.prototype.get boundarySpan): Return the difference between
   33649         maximumBoundary and minimumBoundary.
   33650         (WebInspector.ResourceCalculator.prototype.updateBoundries): Update maximumBoundary based on _value.
   33651         The minimumBoundary is always zero.
   33652         (WebInspector.ResourceCalculator.prototype.reset): Delete maximumBoundary and minimumBoundary.
   33653         (WebInspector.ResourceCalculator.prototype._value): Takes a Resource instead of TimelineEntry.
   33654 
   33655         (WebInspector.ResourceTransferTimeCalculator): Renamed from TransferTimeCalculator.
   33656         (WebInspector.ResourceTransferTimeCalculator.prototype.computeSummaryValues): Work with resources
   33657         instead of entries. Changed the Array.forEach to a normal for loop.
   33658         (WebInspector.ResourceTransferTimeCalculator.prototype.computeBarGraphPercentages): Return percents
   33659         just like WebInspector.NetworkTimelineEntry.prototype.refresh was doing before.
   33660         (WebInspector.ResourceTransferTimeCalculator.prototype.updateBoundries): Update minimumBoundary and
   33661         maximumBoundary just like the checks WebInspector.NetworkPanel.prototype._updateGraphBoundriesIfNeeded was doing.
   33662 
   33663         (WebInspector.ResourceTransferSizeCalculator): Renamed from TransferSizeCalculator.
   33664         (WebInspector.ResourceTransferSizeCalculator.prototype._value): Takes a Resource instead of TimelineEntry.
   33665 
   33666 2008-04-08  Rob Buis  <buis (a] kde.org>
   33667 
   33668         Fix the SVG build.
   33669 
   33670         * svg/SVGFEFloodElement.cpp:
   33671         (WebCore::SVGFEFloodElement::filterEffect):
   33672 
   33673 2008-04-08  Alice Liu  <alice.liu (a] apple.com>
   33674 
   33675         Reviewed by Dan Bernstein.
   33676         
   33677         fixed http://bugs.webkit.org/show_bug.cgi?id=18329
   33678         REGRESSION: Assertion failure in -[WebViewFactory endOfTextMarkerRange:] 
   33679         when invoking the Dictionary pop-up
   33680 
   33681         * page/mac/AccessibilityObjectWrapper.mm:
   33682         (-[AccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):
   33683         In the section of code where WebCore-equivalents of mac-specific types are
   33684         prepared, some functions weren't meant to operate on the default initialized
   33685         values.  Checking for nil in certain places will better maintain the original
   33686         pre-refactoring code path. 
   33687 
   33688 2008-04-08  Dan Bernstein  <mitz (a] apple.com>
   33689 
   33690         Reviewed by Maciej Stachowiak.
   33691 
   33692         - fix most of the Windows layout test regressions from the font-weight patch
   33693 
   33694         * platform/graphics/win/FontCacheWin.cpp:
   33695         (WebCore::matchImprovingEnumProc): Changed to be symmetric with respect
   33696         to italics: always prefer (reject) a candidate that changes the italics
   33697         trait to (from) the desired value.
   33698         (WebCore::createGDIFont): Added code to set more members of the LOGFONT
   33699         structure before creating the font.
   33700 
   33701 2008-04-07  Rob Buis  <buis (a] kde.org>
   33702 
   33703         Reviewed by Ollie.
   33704 
   33705         http://bugs.webkit.org/show_bug.cgi?id=18354
   33706         feFlood in attribute should be removed according to SVG 1.1 Errata
   33707 
   33708         Remove the in attribute from SVGFEFlood DOM.
   33709 
   33710         * svg/SVGFEFloodElement.cpp:
   33711         (WebCore::SVGFEFloodElement::parseMappedAttribute):
   33712         * svg/SVGFEFloodElement.h:
   33713         * svg/SVGFEFloodElement.idl:
   33714 
   33715 2008-04-07  Brady Eidson  <beidson (a] apple.com>
   33716 
   33717         Touch JSStorageCustom.cpp to try to FORCE a recompile on bots that haven't gotten the message
   33718 
   33719         * bindings/js/JSStorageCustom.cpp:
   33720         (WebCore::JSStorage::customPut):
   33721 
   33722 2008-04-07  Brady Eidson  <beidson (a] apple.com>
   33723 
   33724         Reviewed by John Honeycutt
   33725 
   33726         ENABLE_DOM_STORAGE for Windows
   33727 
   33728         * WebCore.vcproj/WebCore.vcproj:
   33729         * WebCore.vcproj/build-generated-files.sh:
   33730 
   33731 2008-04-07  Brady Eidson  <beidson (a] apple.com>
   33732 
   33733         Fix build for builds without DOM_STORAGE enabled
   33734 
   33735         * dom/EventTargetNode.cpp:
   33736         (WebCore::EventTargetNode::dispatchStorageEvent):
   33737         * dom/EventTargetNode.h:
   33738 
   33739 2008-04-07  Alice Liu  <alice.liu (a] apple.com>
   33740 
   33741         Reviewed by Beth Dakin.
   33742 
   33743         * WebCore.vcproj/WebCore.vcproj:
   33744             Added a few cross-platform accessibility source files
   33745             
   33746         * WebCore.xcodeproj/project.pbxproj:
   33747             Added AXObjectCache.cpp
   33748             
   33749         * page/AXObjectCache.cpp: Added.
   33750             These were made cross-platform:
   33751         (WebCore::AXObjectCache::~AXObjectCache):
   33752         (WebCore::AXObjectCache::get):
   33753         (WebCore::AXObjectCache::remove):
   33754         (WebCore::AXObjectCache::childrenChanged):
   33755         
   33756         * page/AXObjectCache.h:
   33757             These were made platform-specific
   33758         (WebCore::AXObjectCache::isIDinUse):
   33759         (WebCore::AXObjectCache::detachWrapper):
   33760         (WebCore::AXObjectCache::attachWrapper):
   33761         (WebCore::AXObjectCache::postNotificationToElement):
   33762         
   33763         * page/AccessibilityObject.cpp:
   33764         (WebCore::AccessibilityObject::detach):
   33765             Since only the mac has a wrapper for now, so temporarily 
   33766             wrapping this line in #if PLATFORM(MAC)
   33767             
   33768         (WebCore::AccessibilityObject::removeAXObjectID):
   33769             Since only the mac has uses Accessibility Object IDs,
   33770             wrap this line in #if PLATFORM(MAC)
   33771             
   33772         * page/mac/AXObjectCacheMac.mm:
   33773             Detaching and attaching the wrapper is platform-specific 
   33774             since each wrapper class is platform-specific.
   33775         (WebCore::AXObjectCache::detachWrapper):
   33776         (WebCore::AXObjectCache::attachWrapper):        
   33777 
   33778 2008-04-07  Brady Eidson  <beidson (a] apple.com>
   33779 
   33780         Lovingly reviewed by Sam Weinig
   33781 
   33782         <rdar://problem/5797684> - HTML5 SessionStorage and underpinnings for LocalStorage
   33783 
   33784         Tests: storage/domstorage/sessionstorage/iframe-events.html
   33785                storage/domstorage/sessionstorage/index-get-and-set.html
   33786                storage/domstorage/sessionstorage/simple-events.html
   33787                storage/domstorage/sessionstorage/simple-usage.html
   33788                storage/domstorage/sessionstorage/window-open.html
   33789                storage/domstorage/window-attributes-exist.html
   33790 
   33791         * Configurations/WebCore.xcconfig: Define to enable DOM_STORAGE
   33792 
   33793         * bindings/js/JSDOMWindowCustom.cpp:
   33794         (WebCore::JSDOMWindow::mark): Add optionalSessionStorage case
   33795 
   33796         * bindings/js/JSEventCustom.cpp:
   33797         (WebCore::toJS): Add StorageEvent case
   33798 
   33799         * bindings/js/JSStorageCustom.cpp:
   33800         (WebCore::JSStorage::canGetItemsForName):
   33801         (WebCore::JSStorage::nameGetter): If the property doesn't exist on the object, call through to getItem()
   33802         (WebCore::JSStorage::customPut): If the property doesn't exist on the object, call through to setItem()
   33803 
   33804         * dom/Event.cpp:
   33805         (WebCore::Event::isStorageEvent):
   33806         * dom/Event.h:
   33807 
   33808         * dom/EventNames.h: Add "storage"
   33809 
   33810         * dom/EventTargetNode.cpp:
   33811         (WebCore::EventTargetNode::dispatchStorageEvent):
   33812         * dom/EventTargetNode.h:
   33813 
   33814         * loader/FrameLoader.cpp:
   33815         (WebCore::FrameLoader::createWindow): After a new page has been created, set its SessionStorage object
   33816           to a copy of the previous Page's
   33817 
   33818         * page/DOMWindow.cpp:
   33819         (WebCore::DOMWindow::sessionStorage): Accessor to pull the appropriate OriginStorage out of the Page's
   33820           SessionStorage.
   33821         (WebCore::DOMWindow::localStorage): To be filled in later
   33822         * page/DOMWindow.h:
   33823         (WebCore::DOMWindow::optionalSessionStorage): Return the session Storage object for this window to mark, 
   33824           if any exists
   33825         * page/DOMWindow.idl:
   33826 
   33827         * page/Page.cpp:
   33828         (WebCore::Page::sessionStorage):  Create and/or return the SessionStorage for this Page.
   33829         (WebCore::Page::setSessionStorage): Set the SessionStorage for this Page - used in FrameLoader after a
   33830           Window.open();
   33831         * page/Page.h:
   33832 
   33833         * storage/OriginStorage.cpp: Intermediate layer between individual Storage objects, and shared StorageMap 
   33834           objects.  There is one OriginStorage object per SecurityOrigin in each "unique set of storage areas", such
   33835           as the SessionStorage.  This layer forwards DOM-level calls down to the backing StorageMap, handles 
   33836           copy-on-write along with the StorageMap, fires StorageEvents to the DOM when a value is changed, and will
   33837           eventually handle quota enforcement.
   33838         (WebCore::OriginStorage::create):
   33839         (WebCore::OriginStorage::OriginStorage):
   33840         (WebCore::OriginStorage::~OriginStorage):
   33841         (WebCore::OriginStorage::copy):
   33842         (WebCore::OriginStorage::length):
   33843         (WebCore::OriginStorage::key):
   33844         (WebCore::OriginStorage::getItem):
   33845         (WebCore::OriginStorage::setItem):
   33846         (WebCore::OriginStorage::removeItem):
   33847         (WebCore::OriginStorage::contains):
   33848         (WebCore::OriginStorage::dispatchStorageEvent):
   33849         * storage/OriginStorage.h:
   33850 
   33851         * storage/SessionStorage.cpp: From the HTML5 spec:
   33852           "Each top-level browsing context has a unique set of session storage areas, one for each origin."
   33853           This object represents that "unique set of session storage areas", and creates or returns the Storage
   33854           object for the requested SecurityOrigin
   33855         (WebCore::SessionStorage::create):
   33856         (WebCore::SessionStorage::SessionStorage):
   33857         (WebCore::SessionStorage::copy):
   33858         (WebCore::SessionStorage::originStorage):
   33859         * storage/SessionStorage.h:
   33860         (WebCore::SessionStorage::page):
   33861 
   33862         * storage/Storage.cpp: Representation of the DOM-level object, wrapped by JSStorage.  There is a unique
   33863           Storage object per Window (per-Frame) that wraps a specific shared OriginStorage object.
   33864         (WebCore::Storage::create):
   33865         (WebCore::Storage::Storage):
   33866         (WebCore::Storage::length):
   33867         (WebCore::Storage::key):
   33868         (WebCore::Storage::getItem):
   33869         (WebCore::Storage::setItem):
   33870         (WebCore::Storage::removeItem):
   33871         (WebCore::Storage::contains):
   33872         * storage/Storage.h:
   33873         * storage/Storage.idl:
   33874 
   33875         * storage/StorageEvent.cpp:
   33876         (WebCore::StorageEvent::StorageEvent):
   33877         (WebCore::StorageEvent::initStorageEvent):
   33878         * storage/StorageEvent.h:
   33879         (WebCore::StorageEvent::isStorageEvent):
   33880 
   33881         * storage/StorageMap.cpp: The physical map of key/value pairs that is shared between OriginStorage objects, 
   33882           and implements copy-on-write semantics whenever a value is changed
   33883         (WebCore::StorageMap::create):
   33884         (WebCore::StorageMap::StorageMap):
   33885         (WebCore::StorageMap::copy):
   33886         (WebCore::StorageMap::invalidateIterator): Used to support the key(unsigned i) part of the API
   33887         (WebCore::StorageMap::setIteratorToIndex): Ditto
   33888         (WebCore::StorageMap::length):
   33889         (WebCore::StorageMap::key):
   33890         (WebCore::StorageMap::getItem):
   33891         (WebCore::StorageMap::setItem):
   33892         (WebCore::StorageMap::removeItem):
   33893         (WebCore::StorageMap::contains):
   33894         * storage/StorageMap.h:
   33895 
   33896 2008-04-07  Timothy Hatcher  <timothy (a] apple.com>
   33897 
   33898         Renamed various functions that are internal to the Console
   33899         object to have an underscore prefix.
   33900 
   33901         Rubber-stamped by Adam Roben.
   33902 
   33903         * page/inspector/Console.js:
   33904 
   33905 2008-04-07  Timothy Hatcher  <timothy (a] apple.com>
   33906 
   33907         Renamed various functions and properties that are internal
   33908         to an object to have an underscore prefix.
   33909 
   33910         Rubber-stamped by Adam Roben.
   33911 
   33912         * page/inspector/Resource.js:
   33913         * page/inspector/ResourcesPanel.js:
   33914 
   33915 2008-04-07  Timothy Hatcher  <timothy (a] apple.com>
   33916 
   33917         Fixes coding style for two utility getters.
   33918 
   33919         * page/inspector/utilities.js: Fix coding style for the
   33920         totalOffsetLeft and totalOffsetTop getters.
   33921 
   33922 2008-04-07  Dan Bernstein  <mitz (a] apple.com>
   33923 
   33924         Reviewed by Dave Hyatt.
   33925 
   33926         - fix http://bugs.webkit.org/show_bug.cgi?id=18311
   33927           <rdar://problem/5842980> REGRESSION (r31620): Font variants (e.g. Helvetica Neue *Light*) don't render correctly
   33928 
   33929         * platform/mac/WebFontCache.mm:
   33930         (+[WebFontCache internalFontWithFamily:traits:weight:size:]): Changed to
   33931         match by family name first, and only if that fails, look for a match by
   33932         full (PostScript) name. Reverted the full name-based match logic to only
   33933         distinguish between the broad categories of "bold" and "not bold".
   33934 
   33935 2008-04-07  Timothy Hatcher  <timothy (a] apple.com>
   33936 
   33937         When the WebInspector.currentFocusElement changes, move the caret
   33938         selection to be inside the focused element. This makes sure the
   33939         caret moves in and out of the console when the focus changes.
   33940 
   33941         Reviewed by Adam Roben.
   33942 
   33943         * page/inspector/TextPrompt.js:
   33944         (TextPrompt.prototype.isCaretInsidePrompt): Just call isInsertionCaretInside.
   33945         * page/inspector/inspector.js: 
   33946         (WebInspector.set currentFocusElement): Make a caret selection inside
   33947         the focused element if there isn't a range selection and there isn't
   33948         already a caret selection inside.
   33949         * page/inspector/utilities.js:
   33950         (Element.prototype.isInsertionCaretInside): Added. Tests if the
   33951         selection is collapsed and is inside the element.
   33952 
   33953 2008-04-07  Brady Eidson  <beidson (a] apple.com>
   33954 
   33955         Reviewed by Tim Hatcher
   33956 
   33957         Add 1 more empty file for upcoming work, as a separate step, to keep all build-systems working
   33958 
   33959         * GNUmakefile.am:
   33960         * WebCore.pro:
   33961         * WebCore.vcproj/WebCore.vcproj:
   33962         * WebCore.xcodeproj/project.pbxproj:
   33963         * WebCoreSources.bkl:
   33964 
   33965         * bindings/js/JSStorageCustom.cpp: Added.
   33966 
   33967 2008-04-07  Alexey Proskuryakov  <ap (a] webkit.org>
   33968 
   33969         Reviewed by Dan Bernstein.
   33970 
   33971         <rdar://problem/5574946> Inline frame ISO-8859-1 even though parent character set is UTF-8
   33972 
   33973         Test: fast/loader/inherit-charset-to-empty-frame.html
   33974 
   33975         * loader/FrameLoader.cpp:
   33976         (WebCore::FrameLoader::write): Treat an empty m_encoding the same as null one.
   33977 
   33978 2008-04-07  Timothy Hatcher  <timothy (a] apple.com>
   33979 
   33980         Rename some Inspector panel objects to facilitate the up-coming
   33981         UI refresh changes.
   33982 
   33983         Reviewed by Adam Roben.
   33984 
   33985         * page/inspector/DatabasesPanel.js: Renamed ResourcePanel to ResourceView.
   33986         * page/inspector/ElementsPanel.js: Renamed SourcePanel to SourceView.
   33987         * page/inspector/FontView.js: Renamed FontPanel to FontView.
   33988         * page/inspector/ImageView.js: Renamed ImagePanel to ImageView.
   33989         * page/inspector/Resource.js: Instantiate the new "View" named objects.
   33990         * page/inspector/ResourceView.js: Renamed ResourcePanel to ResourceView.
   33991         * page/inspector/SourceView.js: Renamed SourcePanel to SourceView.
   33992 
   33993 2008-04-07  Timothy Hatcher  <timothy (a] apple.com>
   33994 
   33995         Fix an exception and remove code that was missed when TextPrompt
   33996         was added. This makes the Console work again.
   33997         
   33998         Reviewed by Adam Roben.
   33999         
   34000         * page/inspector/Console.js: Removed code that used non-existent
   34001         properties.
   34002 
   34003 2008-04-07  Timothy Hatcher  <timothy (a] apple.com>
   34004 
   34005         Remove the workaround for bug 11399 now that it is fixed.
   34006 
   34007         Reviewed by Adam Roben.
   34008 
   34009         * page/inspector/Console.js: Removed the 'with' statement
   34010         around the eval and call eval directly on the inspected window.
   34011 
   34012 2008-04-07  Luca Bruno  <lethalman88 (a] gmail.com>
   34013 
   34014         Reviewed by Alp Toker.
   34015 
   34016         http://bugs.webkit.org/show_bug.cgi?id=18297
   34017         Bug #18297 - Acid2/Acid3 -tests don't load load with soup.
   34018 
   34019         Fixes in the libsoup backend: data url parsing, acid tests, redirects,
   34020         response headers handling and re-entrancy issues on job cancellation.
   34021         Thanks to Dan Winship for libsoup hints.
   34022 
   34023         * platform/network/ResourceHandleInternal.h:
   34024         (WebCore::ResourceHandleInternal::ResourceHandleInternal): add m_cancelled and remove unuseful m_session
   34025         * platform/network/soup/ResourceHandleSoup.cpp:
   34026         (WebCore::restartedCallback): added to route redirects to webkit
   34027         (WebCore::dataCallback): add response headers, some checks and fix re-entrancy
   34028         (WebCore::parseDataUrl): be an idle callback for the main loop
   34029         (WebCore::ResourceHandle::start):
   34030         (WebCore::ResourceHandle::cancel): fixed re-entrancy
   34031 
   34032 2008-04-07  Jan Michael Alonzo  <jmalonzo (a] unpluggable.com>
   34033 
   34034         Build fix, rubber-stamped and landed by ap.
   34035 
   34036         * GNUmakefile.am: Fix dom_storage conditional and typo: ENABLE_DOM_STORAG
   34037 
   34038 2008-04-07  Brady Eidson  <beidson (a] apple.com>
   34039 
   34040         Whoops, idls don't go in the vcproj!
   34041 
   34042         * WebCore.vcproj/WebCore.vcproj:
   34043 
   34044 2008-04-06  Brady Eidson <beidson (a] apple.com>
   34045 
   34046         Attempt to tickle Windows build into accepting this idl
   34047 
   34048         * storage/StorageEvent.idl:
   34049 
   34050 2008-04-06  Brady Eidson <beidson (a] apple.com>
   34051 
   34052         Reviewed by Sam
   34053 
   34054         HTML5 Session and Local Storage
   34055 
   34056         Land a bunch of empty files and interfaces to keep things building while 
   34057         I finish off the rest of the implementation of SessionStorage
   34058 
   34059         * DerivedSources.make:
   34060         * GNUmakefile.am:
   34061         * WebCore.pro:
   34062         * WebCore.vcproj/WebCore.vcproj:
   34063         * WebCore.xcodeproj/project.pbxproj:
   34064         * WebCoreSources.bkl:
   34065 
   34066         * storage/OriginStorage.cpp: Added.
   34067         * storage/OriginStorage.h: Added.
   34068 
   34069         * storage/SessionStorage.cpp: Added.
   34070         * storage/SessionStorage.h: Added.
   34071 
   34072         * storage/Storage.cpp: Added.
   34073         (WebCore::Storage::length):
   34074         (WebCore::Storage::key):
   34075         (WebCore::Storage::getItem):
   34076         (WebCore::Storage::setItem):
   34077         (WebCore::Storage::removeItem):
   34078         * storage/Storage.h: Added.
   34079         * storage/Storage.idl: Added.
   34080 
   34081         * storage/StorageEvent.cpp: Added.
   34082         * storage/StorageEvent.h: Added.
   34083         (WebCore::StorageEvent::key):
   34084         (WebCore::StorageEvent::oldValue):
   34085         (WebCore::StorageEvent::newValue):
   34086         (WebCore::StorageEvent::uri):
   34087         (WebCore::StorageEvent::source):
   34088         (WebCore::StorageEvent::initStorageEvent):
   34089         * storage/StorageEvent.idl: Added.
   34090 
   34091         * storage/StorageMap.cpp: Added.
   34092         * storage/StorageMap.h: Added.
   34093 
   34094 2008-04-05  Kevin Ollivier  <kevino (a] theolliviers.com>
   34095 
   34096         Reviewed by Mark Rowe.
   34097 
   34098         Add CSS to the MIMETypeRegistry, which ensures CSS files get
   34099         the right MIMEType when loaded from disk.
   34100 
   34101         * platform/gtk/MIMETypeRegistryGtk.cpp:
   34102         * platform/wx/MimeTypeRegistryWx.cpp:
   34103 
   34104 2008-04-05  Rob Buis  <buis (a] kde.org>
   34105 
   34106         Reviewed by Eric.
   34107 
   34108         http://bugs.webkit.org/show_bug.cgi?id=17129
   34109         Incorrect style resolution in CSS styled SVG, with multiple style sheets
   34110 
   34111         Fix the style resolution on the svg by ensuring xml-stylesheet pseudo
   34112         attributes title and alternate are transferred to the stylesheet
   34113         created from the ProcessingInstruction.
   34114 
   34115         * dom/ProcessingInstruction.cpp:
   34116         (WebCore::ProcessingInstruction::ProcessingInstruction):
   34117         (WebCore::ProcessingInstruction::checkStyleSheet):
   34118         (WebCore::ProcessingInstruction::setCSSStyleSheet):
   34119         * dom/ProcessingInstruction.h:
   34120 
   34121 2008-04-05  Dan Bernstein  <mitz (a] apple.com>
   34122 
   34123         Reviewed by Darin Adler.
   34124 
   34125         - fix <rdar://problem/5843719> Excessive repainting of cells in tables with non-auto height
   34126 
   34127         Test: fast/repaint/table-two-pass-layout-overpaint.html
   34128 
   34129         * rendering/RenderTable.cpp:
   34130         (WebCore::RenderTable::layout): Changed the first pass over the sections
   34131         to only call calcRowHeight() and recalcOuterBorder() but not
   34132         layoutRows(), because the section's final height is unknown yet.
   34133         Removed caching of m_height before the call to calcHeight(), because
   34134         for non-positioned tables, calcHeight() only calculates the vertical
   34135         margins and does not change m_height.
   34136         Added a second pass over the sections, after the table height is known,
   34137         to call layoutRows() on each section, with additional height if needed.
   34138         Did minimal cleanup including caching the value of collapseBorders() in
   34139         a local variable and changing a while loop into a for loop.
   34140         * rendering/RenderTableSection.cpp:
   34141         (WebCore::RenderTableSection::calcRowHeight): Changed to return the
   34142         height of the section based on row height calculations.
   34143         (WebCore::RenderTableSection::layoutRows): Removed a call to
   34144         recalcOuterBorder(), which is now done by RenderTable::layout().
   34145         * rendering/RenderTableSection.h: Changed calcRowHeight() to have a
   34146         return value.
   34147 
   34148 2008-04-05  Simon Hausmann  <shausman (a] trolltech.com>
   34149 
   34150         Reviewed by Holger.
   34151 
   34152         Fixes: Disable "unimplemented" warnings when building WebKit inside Qt.
   34153 
   34154         * WebCore.pro:
   34155         * platform/NotImplemented.h:
   34156 
   34157 2008-04-05  Simon Hausmann  <hausmann (a] webkit.org>
   34158 
   34159         Rubber-stamped by Holger
   34160 
   34161         Revert "* Load images incrementally. This will show warnings on the console"
   34162         This rolls out -r29739.
   34163 
   34164         This unfortunately caused some crashes and drawing errors. Backing out for now.
   34165 
   34166         * platform/graphics/qt/ImageDecoderQt.cpp:
   34167         (WebCore::ImageDecoderQt::setData):
   34168 
   34169 2008-04-04  Kevin Ollivier  <kevino (a] theolliviers.com>
   34170 
   34171         Add GradientWx.cpp to the wx build process. 
   34172 
   34173         * webcore-wx.bkl:
   34174 
   34175 2008-04-04  Dan Bernstein  <mitz (a] apple.com>
   34176 
   34177         Reviewed by Sam Weinig.
   34178 
   34179         - speed up CSSFontSelector::getFontData()
   34180 
   34181         * css/CSSFontSelector.cpp:
   34182         (WebCore::fontDataForGenericFamily): Factored out of getFontData().
   34183         (WebCore::CSSFontSelector::getFontData): Changed to call
   34184         fontDataForGenericFamily() directly if the map is empty.
   34185 
   34186 2008-04-04  Jon Honeycutt  <jhoneycutt (a] apple.com>
   34187 
   34188         Reviewed by Oliver.
   34189 
   34190         Replace AccessibilityObject::isRenderImage() with a virtual
   34191         RenderObject::isRenderImage().
   34192 
   34193         * page/AccessibilityObject.cpp:
   34194         (WebCore::AccessibilityObject::accessibilityIsIgnored):
   34195         (WebCore::AccessibilityObject::addChildren):
   34196         * page/AccessibilityObject.h:
   34197         (WebCore::AccessibilityObject::isDetached):
   34198         * rendering/RenderImage.h:
   34199         (WebCore::RenderImage::isRenderImage):
   34200         * rendering/RenderObject.h:
   34201         (WebCore::RenderObject::isRenderImage):
   34202 
   34203 2008-04-04  Dan Bernstein  <mitz (a] apple.com>
   34204 
   34205         - try to fix the wx build
   34206 
   34207         * platform/graphics/wx/FontPlatformDataWx.cpp:
   34208         (WebCore::fontWeightToWxFontWeight):
   34209         (WebCore::FontPlatformData::FontPlatformData):
   34210 
   34211 2008-04-04  Jon Honeycutt  <jhoneycutt (a] apple.com>
   34212 
   34213         Reviewed by Beth.
   34214 
   34215         Some more clean-up of AccessibilityObject:
   34216         - Rearranged/grouped methods.
   34217         - Marked many methods const.
   34218         - Changed many methods to take args by const ref instead of by val.
   34219         - Made headingLevel() static.
   34220         - Renamed detached() to isDetached(), loaded() to isLoaded(),
   34221           documentLinks to getDocumentLinks().
   34222         - Made clearChildren(), removeAXObjectID(), isDetached() private.
   34223         - Added notImplemented() calls for unimplemented methods.
   34224         - Replaced stringForReplacedNode method with static function.
   34225 
   34226         * page/AccessibilityObject.cpp:
   34227         (WebCore::AccessibilityObject::~AccessibilityObject):
   34228         (WebCore::AccessibilityObject::firstChild):
   34229         (WebCore::AccessibilityObject::lastChild):
   34230         (WebCore::AccessibilityObject::previousSibling):
   34231         (WebCore::AccessibilityObject::nextSibling):
   34232         (WebCore::AccessibilityObject::parentObject):
   34233         (WebCore::AccessibilityObject::parentObjectUnignored):
   34234         (WebCore::AccessibilityObject::headingLevel):
   34235         (WebCore::AccessibilityObject::anchorElement):
   34236         (WebCore::AccessibilityObject::actionElement):
   34237         (WebCore::AccessibilityObject::mouseButtonListener):
   34238         (WebCore::AccessibilityObject::helpText):
   34239         (WebCore::AccessibilityObject::textUnderElement):
   34240         (WebCore::AccessibilityObject::hasIntValue):
   34241         (WebCore::AccessibilityObject::intValue):
   34242         (WebCore::AccessibilityObject::stringValue):
   34243         (WebCore::AccessibilityObject::title):
   34244         (WebCore::AccessibilityObject::accessibilityDescription):
   34245         (WebCore::AccessibilityObject::boundingBoxRect):
   34246         (WebCore::AccessibilityObject::size):
   34247         (WebCore::AccessibilityObject::linkedUIElement):
   34248         (WebCore::AccessibilityObject::accessibilityShouldUseUniqueId):
   34249         (WebCore::AccessibilityObject::accessibilityIsIgnored):
   34250         (WebCore::AccessibilityObject::isLoaded):
   34251         (WebCore::AccessibilityObject::layoutCount):
   34252         (WebCore::AccessibilityObject::textLength):
   34253         (WebCore::AccessibilityObject::selectedText):
   34254         (WebCore::AccessibilityObject::selection):
   34255         (WebCore::AccessibilityObject::selectedTextRange):
   34256         (WebCore::AccessibilityObject::setSelectedText):
   34257         (WebCore::AccessibilityObject::setSelectedTextRange):
   34258         (WebCore::AccessibilityObject::makeRangeVisible):
   34259         (WebCore::AccessibilityObject::url):
   34260         (WebCore::AccessibilityObject::isVisited):
   34261         (WebCore::AccessibilityObject::isFocused):
   34262         (WebCore::AccessibilityObject::setValue):
   34263         (WebCore::AccessibilityObject::isEnabled):
   34264         (WebCore::AccessibilityObject::topRenderer):
   34265         (WebCore::AccessibilityObject::textControl):
   34266         (WebCore::AccessibilityObject::widget):
   34267         (WebCore::AccessibilityObject::axObjectCache):
   34268         (WebCore::AccessibilityObject::getDocumentLinks):
   34269         (WebCore::AccessibilityObject::documentFrameView):
   34270         (WebCore::AccessibilityObject::widgetForAttachmentView):
   34271         (WebCore::AccessibilityObject::frameViewIfRenderView):
   34272         (WebCore::AccessibilityObject::visiblePositionRange):
   34273         (WebCore::AccessibilityObject::doAXTextMarkerRangeForLine):
   34274         (WebCore::AccessibilityObject::doAXTextMarkerRangeForUnorderedTextMarkers):
   34275         (WebCore::AccessibilityObject::doAXLeftWordTextMarkerRangeForTextMarker):
   34276         (WebCore::AccessibilityObject::doAXRightWordTextMarkerRangeForTextMarker):
   34277         (WebCore::AccessibilityObject::doAXLeftLineTextMarkerRangeForTextMarker):
   34278         (WebCore::AccessibilityObject::doAXRightLineTextMarkerRangeForTextMarker):
   34279         (WebCore::AccessibilityObject::doAXSentenceTextMarkerRangeForTextMarker):
   34280         (WebCore::AccessibilityObject::doAXParagraphTextMarkerRangeForTextMarker):
   34281         (WebCore::AccessibilityObject::doAXStyleTextMarkerRangeForTextMarker):
   34282         (WebCore::AccessibilityObject::textMarkerRangeForRange):
   34283         (WebCore::stringForReplacedNode):
   34284         (WebCore::AccessibilityObject::doAXStringForTextMarkerRange):
   34285         (WebCore::AccessibilityObject::doAXBoundsForTextMarkerRange):
   34286         (WebCore::AccessibilityObject::doAXLengthForTextMarkerRange):
   34287         (WebCore::AccessibilityObject::doSetAXSelectedTextMarkerRange):
   34288         (WebCore::AccessibilityObject::doAXTextMarkerForPosition):
   34289         (WebCore::AccessibilityObject::doAXNextTextMarkerForTextMarker):
   34290         (WebCore::AccessibilityObject::doAXPreviousTextMarkerForTextMarker):
   34291         (WebCore::AccessibilityObject::doAXNextWordEndTextMarkerForTextMarker):
   34292         (WebCore::AccessibilityObject::doAXPreviousWordStartTextMarkerForTextMarker):
   34293         (WebCore::AccessibilityObject::doAXNextLineEndTextMarkerForTextMarker):
   34294         (WebCore::AccessibilityObject::doAXPreviousLineStartTextMarkerForTextMarker):
   34295         (WebCore::AccessibilityObject::doAXNextSentenceEndTextMarkerForTextMarker):
   34296         (WebCore::AccessibilityObject::doAXPreviousSentenceStartTextMarkerForTextMarker):
   34297         (WebCore::AccessibilityObject::doAXNextParagraphEndTextMarkerForTextMarker):
   34298         (WebCore::AccessibilityObject::doAXPreviousParagraphStartTextMarkerForTextMarker):
   34299         (WebCore::AccessibilityObject::textMarkerForIndex):
   34300         (WebCore::AccessibilityObject::doAXUIElementForTextMarker):
   34301         (WebCore::AccessibilityObject::doAXLineForTextMarker):
   34302         (WebCore::AccessibilityObject::rangeForTextMarkerRange):
   34303         (WebCore::AccessibilityObject::indexForTextMarker):
   34304         (WebCore::AccessibilityObject::doAXRangeForLine):
   34305         (WebCore::AccessibilityObject::doAXRangeForPosition):
   34306         (WebCore::AccessibilityObject::doAXRangeForIndex):
   34307         (WebCore::AccessibilityObject::doAXStyleRangeForIndex):
   34308         (WebCore::AccessibilityObject::doAXStringForRange):
   34309         (WebCore::AccessibilityObject::doAXBoundsForRange):
   34310         (WebCore::AccessibilityObject::doAccessibilityHitTest):
   34311         (WebCore::AccessibilityObject::focusedUIElement):
   34312         (WebCore::AccessibilityObject::observableObject):
   34313         (WebCore::AccessibilityObject::roleValue):
   34314         (WebCore::AccessibilityObject::canSetFocusAttribute):
   34315         (WebCore::AccessibilityObject::canSetValueAttribute):
   34316         (WebCore::AccessibilityObject::canSetTextRangeAttributes):
   34317         (WebCore::AccessibilityObject::hasChildren):
   34318         (WebCore::AccessibilityObject::axObjectID):
   34319         * page/AccessibilityObject.h:
   34320         (WebCore::VisiblePositionRange::VisiblePositionRange):
   34321         (WebCore::AccessibilityObject::PlainTextRange::PlainTextRange):
   34322         (WebCore::AccessibilityObject::areaElement):
   34323         (WebCore::AccessibilityObject::renderer):
   34324         (WebCore::AccessibilityObject::children):
   34325         (WebCore::AccessibilityObject::wrapper):
   34326         (WebCore::AccessibilityObject::isDetached):
   34327         * page/mac/AccessibilityObjectWrapper.mm:
   34328         (AXAttributeStringSetHeadingLevel):
   34329         (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
   34330 
   34331 2008-04-04  Timothy Hatcher  <timothy (a] apple.com>
   34332 
   34333         Restore the user entered text when clearing the auto-completion.
   34334         This is important when the user typed text that is a different
   34335         case than the completion. This has no affect on the Console, since
   34336         it matches completions case-sensitively. This is used in the up-coming
   34337         Database Query view for words like "SELECT" and "INSERT".
   34338 
   34339         Reviewed by Adam Roben.
   34340 
   34341         * page/inspector/TextPrompt.js:
   34342         (WebInspector.TextPrompt.prototype.clearAutoComplete): Restore the user typed
   34343         text in the original DOM range that complete() saved away.
   34344         (WebInspector.TextPrompt.prototype.complete): Store away the fullWordRange
   34345         and it's text content so clearAutoComplete can restore it.
   34346 
   34347 2008-04-04  Timothy Hatcher  <timothy (a] apple.com>
   34348 
   34349         Don't trim whitespace when looking for the current match, this prevents
   34350         tabbing through matches in the up-coming Database Query view.
   34351 
   34352         Reviewed by Adam Roben.
   34353 
   34354         * page/inspector/TextPrompt.js: Removed a trimTrailingWhitespace() call.
   34355 
   34356 2008-04-04  Timothy Hatcher  <timothy (a] apple.com>
   34357 
   34358         Factor out the Console text completion and command history into
   34359         a new TextPrompt object. This TextPrompt object will be used later
   34360         other parts of the Inspector that need text completion and history.
   34361         Not functionality changed, just moved code around.
   34362 
   34363         Reviewed by Adam Roben.
   34364 
   34365         * WebCore.vcproj/WebCore.vcproj: Add TextPrompt.js.
   34366         * page/inspector/Console.js: Call the new prompt object and
   34367           delete all the code that moved.
   34368         * page/inspector/TextPrompt.js: Added. Moved code from Console.js.
   34369         * page/inspector/WebKit.qrc: Add TextPrompt.js.
   34370         * page/inspector/inspector.html: Add TextPrompt.js.
   34371 
   34372 2008-04-04  Timothy Hatcher  <timothy (a] apple.com>
   34373 
   34374         Makes setting shouldRefreshChildren on a TreeElement perform the refresh
   34375         immediately if the element is already expanded.
   34376 
   34377         Reviewed by Adam Roben.
   34378 
   34379         * page/inspector/treeoutline.js:
   34380         (TreeElement.prototype.get shouldRefreshChildren): Return this._shouldRefreshChildren.
   34381         (TreeElement.prototype.set shouldRefreshChildren): If changing to true, and
   34382         already expanded,
   34383         call expand again to trigger the refresh. Sets this._shouldRefreshChildren.
   34384         (TreeElement.prototype._attach): Check for this._shouldRefreshChildren.
   34385         (TreeElement.prototype.expand): Ditto.
   34386 
   34387 2008-04-04  Jon Honeycutt  <jhoneycutt (a] apple.com>
   34388 
   34389         Reviewed by Beth.
   34390 
   34391         Some clean up of AccessibilityObject:
   34392         - Use existing isImage() in more places.
   34393         - Use existing isTextControl() in more places.
   34394         - Added isRenderImage(). Check this before casting to RenderImage,
   34395           since other, non-RenderImage derived RenderObjects (e.g.
   34396           RenderListMarker) can return true for isImage().
   34397         - Fix two copy/paste errors with improper semicolons.
   34398 
   34399         * page/AccessibilityObject.cpp:
   34400         (WebCore::AccessibilityObject::isImageButton): Use isImage().
   34401         (WebCore::AccessibilityObject::isRenderImage): Added.
   34402         (WebCore::AccessibilityObject::isAnchor): Use isImage().
   34403         (WebCore::AccessibilityObject::isAttachment): Same.
   34404         (WebCore::AccessibilityObject::accessibilityDescription): Same.
   34405         (WebCore::AccessibilityObject::accessibilityIsIgnored): Use
   34406         isRenderImage() instead of isImage().
   34407         (WebCore::AccessibilityObject::url): Use isImage().
   34408         (WebCore::AccessibilityObject::textControl): Remove improper semicolon, 
   34409         and use isTextControl().
   34410         (WebCore::AccessibilityObject::textMarkerForIndex): Same.
   34411         (WebCore::AccessibilityObject::indexForTextMarker): Use isTextControl().
   34412         (WebCore::AccessibilityObject::doAXRangeForLine): Same.
   34413         (WebCore::AccessibilityObject::doAXRangeForIndex): Same
   34414         (WebCore::AccessibilityObject::doAXStringForRange): Same.
   34415         (WebCore::AccessibilityObject::roleValue):  Use isImage().
   34416         (WebCore::AccessibilityObject::addChildren): Use isRenderImage().
   34417         * page/AccessibilityObject.h:
   34418 
   34419 2008-04-04  Timothy Hatcher  <timothy (a] apple.com>
   34420 
   34421         Fixes a null exception when hovering in some areas of the DOM tree.
   34422 
   34423         Reviewed by Adam Roben.
   34424 
   34425         * page/inspector/treeoutline.js:
   34426         (TreeOutline.prototype.treeElementFromPoint): Check listNode for null/undefined
   34427         before accessing any properties. Return null if listNode is null.
   34428 
   34429 2008-04-04  Timothy Hatcher  <timothy (a] apple.com>
   34430 
   34431         Changing WebInspector.currentFocusElement to/from an input element
   34432         does not change the actual focus of that input element. You see this
   34433         in the search field.
   34434 
   34435         Reviewed by Adam Roben.
   34436 
   34437         * page/inspector/inspector.js:
   34438         (WebInspector.set currentFocusElement): Call blur and focus if the
   34439         node implements them.
   34440 
   34441 2008-04-04  David Hyatt  <hyatt (a] apple.com>
   34442 
   34443         Improve the background size heuristic for SVGs used as background images with no intrinsic size specified.
   34444         Treat them as having a background-size of 100%.  This means their maximal size will be the box established
   34445         by background-origin.
   34446 
   34447         Reviewed by Beth
   34448 
   34449         * rendering/RenderBox.cpp:
   34450         (WebCore::RenderBox::calculateBackgroundSize):
   34451 
   34452 2008-04-04  Timothy Hatcher  <timothy (a] apple.com>
   34453 
   34454         Correctly show DOCTYPE in the breadcrumbs and match the CSS rules
   34455         from view-source.css for the DOCTYPE in the DOM tree.
   34456 
   34457         Reviewed by Adam Roben.
   34458 
   34459         * css/view-source.css: Add and correct comments about keeping
   34460         in-sync with inspector.css.
   34461         * page/inspector/ElementsPanel.js:
   34462         (WebInspector.DocumentPanel.prototype.updateBreadcrumb):
   34463         Add a case for Node.DOCUMENT_TYPE_NODE.
   34464         * page/inspector/inspector.css: Add a rule for .webkit-html-doctype.
   34465         * page/inspector/utilities.js:
   34466         (nodeTitleInfo): Use the webkit-html-doctype class for nodes
   34467         with Node.DOCUMENT_TYPE_NODE.
   34468 
   34469 2008-04-04  Dan Bernstein  <mitz (a] apple.com>
   34470 
   34471         - try to fix the Tiger build
   34472 
   34473         * icu/unicode/uscript.h: Copied from WebKit/mac/icu/unicode/uscript.h.
   34474 
   34475 2008-04-04  Adam Roben  <aroben (a] apple.com>
   34476 
   34477         Copy icu/ to PrivateHeaders for WebKit's benefit
   34478 
   34479         Rubberstamped by Tim Hatcher.
   34480 
   34481         * WebCore.xcodeproj/project.pbxproj: Renamed the Copy Forwarding
   34482         Headers build phase to Copy Forwarding and ICU Headers, and added the
   34483         icu/ directory to it.
   34484 
   34485 2008-04-04  Adam Roben  <aroben (a] apple.com>
   34486 
   34487         Fix <rdar://problem/5804776> Would like to use WebCore's
   34488         ForwardingHeaders in WebKit without manually creating copies
   34489 
   34490         Patch by Tim Hatcher, typed by me.
   34491 
   34492         * WebCore.xcodeproj/project.pbxproj: Added a new build phase, Copy
   34493         Forwarding Headers, that copies the ForwardingHeaders directory to
   34494         WebCore's PrivateHeaders directory.
   34495 
   34496 2008-04-04  Ada Chan  <adachan (a] apple.com>
   34497 
   34498         Changed the signature of imageTitleForFilename so we can pass in the width
   34499         and height as integers.
   34500 
   34501         Reviewed by Dan.
   34502 
   34503         * page/mac/WebCoreViewFactory.h:
   34504         * platform/mac/LocalizedStringsMac.mm:
   34505         (WebCore::imageTitle):
   34506 
   34507 2008-04-03  Dan Bernstein  <mitz (a] apple.com>
   34508 
   34509         - Windows build fix
   34510 
   34511         * platform/graphics/win/FontCacheWin.cpp:
   34512         (WebCore::matchImprovingEnumProc):
   34513 
   34514 2008-04-03  Kevin Ollivier  <kevino (a] theolliviers.com>
   34515 
   34516         Fix PlatformGradient so that it's a pointer on all platforms.
   34517 
   34518         * platform/graphics/Gradient.h:
   34519 
   34520 2008-04-03  Dan Bernstein  <mitz (a] apple.com>
   34521 
   34522         - 64-bit build fix
   34523 
   34524         * platform/mac/WebFontCache.mm:
   34525         (+[WebFontCache internalFontWithFamily:traits:weight:size:]):
   34526 
   34527 2008-04-03  Kevin Ollivier  <kevino (a] theolliviers.com>
   34528 
   34529         wx build fix. Add stubs for gradient class platform functions.
   34530 
   34531         * platform/graphics/wx/GradientWx.cpp: Added.
   34532         (WebCore::Gradient::platformDestroy):
   34533         (WebCore::Gradient::platformGradient):
   34534 
   34535 2008-04-03  Kevin Ollivier  <kevino (a] theolliviers.com>
   34536 
   34537         Reviewed by Dan Bernstein.
   34538 
   34539         Refactor Gradient.h to have the same API on platforms 
   34540         without a gradient class.
   34541 
   34542         * platform/graphics/Gradient.h:
   34543 
   34544 2008-04-03  Dan Bernstein  <mitz (a] apple.com>
   34545 
   34546         - Qt build fix
   34547 
   34548         * platform/graphics/qt/FontQt.cpp:
   34549         (WebCore::Font::Font):
   34550 
   34551 2008-04-03  Dan Bernstein  <mitz (a] apple.com>
   34552 
   34553         - Tiger build fix
   34554 
   34555         * platform/mac/WebFontCache.mm:
   34556         * rendering/RenderThemeMac.mm:
   34557 
   34558 2008-04-03  Dan Bernstein  <mitz (a] apple.com>
   34559 
   34560         - Gtk build fix
   34561 
   34562         * platform/graphics/gtk/FontPlatformData.h:
   34563         (WebCore::FontPlatformData::size):
   34564         * platform/graphics/gtk/FontPlatformDataGtk.cpp:
   34565         (WebCore::FontPlatformData::FontPlatformData):
   34566         * platform/graphics/gtk/FontPlatformDataPango.cpp:
   34567         (WebCore::FontPlatformData::FontPlatformData):
   34568 
   34569 2008-04-03  Dan Bernstein  <mitz (a] apple.com>
   34570 
   34571         - project file updates in preparation for build fixes
   34572 
   34573         * GNUmakefile.am:
   34574         * WebCore.pro:
   34575         * WebCoreSources.bkl:
   34576 
   34577 2008-04-03  Nicholas Shanks  <webkit (a] nickshanks.com>
   34578 
   34579         Updated by Dan Bernstein. Reviewed by Dave Hyatt.
   34580 
   34581         - WebCore part of fixing http://bugs.webkit.org/show_bug.cgi?id=6484
   34582           font-weight does not properly support graded weights
   34583 
   34584         Tests to come: <http://bugs.webkit.org/show_bug.cgi?id=18306>
   34585 
   34586         Build fixes for platforms other than Mac and Windows to come.
   34587 
   34588         * WebCore.vcproj/WebCore.vcproj: Added FontDescription.cpp.
   34589 
   34590         * WebCore.xcodeproj/project.pbxproj: Ditto.
   34591 
   34592         * css/CSSComputedStyleDeclaration.cpp:
   34593         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Changed to
   34594         return additional weight value keywords 100, 200, 300, 500, 600, 800
   34595         and 900.
   34596 
   34597         * css/CSSFontSelector.cpp:
   34598         (WebCore::hashForFont): Changed the bold parameter into a weight
   34599         parameter and added the weight to the string to be hashed.
   34600         (WebCore::CSSFontSelector::addFontFaceRule): Changed to apply all CSS
   34601         weight values to the font description.
   34602         (WebCore::CSSFontSelector::getFontData): Updated the fallback logic to
   34603         go through all weights equal or lighter from the desired weight. For
   34604         SVG, to also consider heavier weights.
   34605 
   34606         * css/CSSParser.cpp:
   34607         (WebCore::CSSParser::parseValue): Cleaned up parsing of the font-weight
   34608         property.
   34609 
   34610         * css/CSSStyleSelector.cpp:
   34611         (WebCore::CSSStyleSelector::applyProperty): Changed to apply all CSS
   34612         weight values to the font description.
   34613 
   34614         * platform/graphics/Font.h:
   34615         (WebCore::Font::weight): Updated for the change to
   34616         FontDescription::weight().
   34617 
   34618         * platform/graphics/FontCache.cpp:
   34619         (WebCore::FontPlatformDataCacheKey::FontPlatformDataCacheKey): Replaced
   34620         the bold component of the key with a weight component.
   34621         (WebCore::FontPlatformDataCacheKey::operator==): Updated for the above.
   34622         (WebCore::computeHash): Ditto.
   34623         (WebCore::FontPlatformDataCacheKeyTraits::deletedValue): Removed
   34624         unnecessary parameters.
   34625         (WebCore::FontPlatformDataCacheKeyTraits::emptyValue): Ditto.
   34626         (WebCore::FontCache::getCachedFontPlatformData): Updated for the change
   34627         in FontPlatformDataCacheKey.
   34628 
   34629         * platform/graphics/FontDescription.cpp: Added.
   34630         (WebCore::FontDescription::lighterWeight): Added. Returns a lighter CSS
   34631         font-weight value if there is one, or the lightest value.
   34632         (WebCore::FontDescription::bolderWeight): Added. Returns a heavier CSS
   34633         font-weight value if there is one, or the heaviest value.
   34634 
   34635         * platform/graphics/FontDescription.h:
   34636         (WebCore::FontWeight): Added this enumeration.
   34637         (WebCore::FontDescription::FontDescription):
   34638         (WebCore::FontDescription::bold): Removed.
   34639         (WebCore::FontDescription::weight): Changed to return a FontWeight.
   34640         (WebCore::FontDescription::setBold): Removed.
   34641         (WebCore::FontDescription::setWeight): Changed to take a FontWeight.
   34642 
   34643         * platform/graphics/mac/FontCacheMac.mm:
   34644         (WebCore::toAppKitFontWeight): Added. Maps a FontWeight to the AppKit
   34645         font weight scale of 0-15.
   34646         (WebCore::isAppKitFontWeightBold): Added.
   34647         (WebCore::FontCache::getFontDataForCharacters): Changed to use a weight
   34648         instead of the bold trait for custom fonts, and to decide whether to
   34649         synthesize bold based on the weights rather than the bold trait.
   34650         (WebCore::FontCache::fontExists): Updated for the change in
   34651         WebFontCache .
   34652         (WebCore::FontCache::createFontPlatformData): Ditto. Also changed to
   34653         decide whether to synthesize bold based on the weights rather than on
   34654         the bold trait.
   34655 
   34656         * platform/graphics/win/FontCacheWin.cpp:
   34657         (WebCore::toGDIFontWeight): Added. Maps a FontWeight to a GDI font
   34658         weight constant.
   34659         (WebCore::isGDIFontWeightBold): Added.
   34660         (WebCore::adjustedGDIFontWeight): Added.
   34661         (WebCore::MatchImprovingProcData::MatchImprovingProcData): Added this
   34662         data structure for use by the following callback.
   34663         (WebCore::matchImprovingEnumProc): Added. The logic of this method is a
   34664         simplification of the betterChoice() predicate in WebFontCache.mm, which
   34665         considers only the italic trait and the weight.
   34666         (WebCore::createGDIFont): Added. Similarly to
   34667         +[WebFontCache fontWithFamily:traits:weight:size:], this function
   34668         finds the closest match in the family for the desired italic bit and
   34669         weight.
   34670         (WebCore::FontCache::fontExists): Changed to call createGDIFont().
   34671         (WebCore::FontCache::createFontPlatformData): Ditto. Also changed to
   34672         compute the synthetic bold and synthetic italic flags based on weights
   34673         and italic bits and pass them to the FontPlatformData constructor.
   34674 
   34675         * platform/graphics/win/FontPlatformDataWin.cpp:
   34676         (WebCore::FontPlatformData::FontPlatformData): Changed the bold and
   34677         oblique parameters to mean whether these should be synthesized and
   34678         removed the font enumeration code that used to decide that.
   34679 
   34680         * platform/graphics/win/SimpleFontDataWin.cpp:
   34681         (WebCore::SimpleFontData::smallCapsFontData): Changed to pass the
   34682         synthetic bold and oblique flags from the full-size FontPlatformData to
   34683         the FontPlatformData constructor for the small caps font.
   34684 
   34685         * platform/mac/WebCoreTextRenderer.h:
   34686         * platform/mac/WebCoreTextRenderer.mm:
   34687         (WebCoreFindFont): Added a weight parameter, which is passed to
   34688         +[WebFontCache fontWithFamily:traits:weight:size:].
   34689 
   34690         * platform/mac/WebFontCache.h:
   34691         * platform/mac/WebFontCache.mm:
   34692         (acceptableChoice):
   34693         (betterChoice): Changed to ignore the bold trait. Changed the logic for
   34694         deciding based on weights to prefer the font whose weight is closer to
   34695         the desired one, or, if both candidates' weights are the same distance
   34696         from the desired weight, the one that is more "off-center". 
   34697         (+[WebFontCache internalFontWithFamily:traits:weight:size:]): Changed to
   34698         check for weight when matching by full name. Changed to pass
   34699         the actual desired weight instead of the constant 5 to
   34700         acceptableChoice() and betterChoice(). Changed to use weights to decide
   34701         whether to synthesize bold.
   34702         (+[WebFontCache fontWithFamily:traits:weight:size:]): Added a weight
   34703         parameter, which is passed to the internal method.
   34704 
   34705         * platform/win/PopupMenuWin.cpp:
   34706         (WebCore::PopupMenu::paint): Updated for the change to FontDescription.
   34707 
   34708         * rendering/RenderListBox.cpp:
   34709         (WebCore::RenderListBox::updateFromElement): Ditto.
   34710         (WebCore::RenderListBox::paintItemForeground): Ditto.
   34711 
   34712         * rendering/RenderThemeMac.mm:
   34713         (WebCore::toFontWeight): Added. Maps the AppKit font weight range of
   34714         0-15 to the FontWeight range.
   34715         (WebCore::RenderThemeMac::systemFont): Updated for the change to
   34716         FontDescription.
   34717 
   34718         * rendering/RenderThemeSafari.cpp:
   34719         (WebCore::RenderThemeSafari::systemFont): Ditto.
   34720 
   34721 2008-04-03  Dan Bernstein  <mitz (a] apple.com>
   34722 
   34723         - another Gtk build fix attempt
   34724 
   34725         * platform/graphics/cairo/GradientCairo.cpp:
   34726         (WebCore::Gradient::platformDestroy):
   34727 
   34728 2008-04-03  Dan Bernstein  <mitz (a] apple.com>
   34729 
   34730         - attempted Gtk build fix
   34731 
   34732         * GNUmakefile.am:
   34733 
   34734 2008-04-03  Dan Bernstein  <mitz (a] apple.com>
   34735 
   34736         - attempted Qt build fix
   34737 
   34738         * platform/graphics/qt/GradientQt.cpp:
   34739         (WebCore::Gradient::platformDestroy):
   34740 
   34741 2008-04-03  Dan Bernstein  <mitz (a] apple.com>
   34742 
   34743         - attempted Gtk build fix
   34744 
   34745         * html/CanvasRenderingContext2D.cpp:
   34746         (WebCore::CanvasRenderingContext2D::stroke):
   34747 
   34748 2008-04-03  Dan Bernstein  <mitz (a] apple.com>
   34749 
   34750         - attempted Qt build fix
   34751 
   34752         * html/CanvasRenderingContext2D.cpp:
   34753         (WebCore::CanvasRenderingContext2D::stroke):
   34754 
   34755 2008-04-03  Beth Dakin  <bdakin (a] apple.com>
   34756 
   34757         Reviewed by Alice.
   34758 
   34759         Build fix for non-Macs.
   34760 
   34761         * page/AXObjectCache.h:
   34762         (WebCore::AXObjectCache::isIDinUse):
   34763 
   34764 2008-04-03  Brent Fulgham  <bfulgham (a] gmail.com>
   34765 
   34766         Reviewed by Darin.
   34767 
   34768         Correct build error due to incomplete merging of changes to project
   34769         files from Issue 17985.  This small project file patch corrects
   34770         the build issue (see http://bugs.webkit.org/show_bug.cgi?id=18195).
   34771 
   34772         * WebCore.vcproj/WebCore.vcproj:
   34773 
   34774 2008-04-02  Beth Dakin  <bdakin (a] apple.com>
   34775 
   34776         Reviewed by Hyatt.
   34777 
   34778         This patch eliminates AccessibilityObjectMac. All of the platform-
   34779         specific code is now in AccessibilityObjectWrapper.
   34780 
   34781         * WebCore.xcodeproj/project.pbxproj:
   34782         * dom/Element.h:
   34783         (WebCore::Element::isPasswordField):
   34784         * html/HTMLInputElement.h:
   34785         (WebCore::HTMLInputElement::isPasswordField):
   34786         * page/AXObjectCache.h:
   34787         (WebCore::AXObjectCache::isIDinUse):
   34788         * page/AccessibilityObject.cpp:
   34789         (WebCore::AccessibilityObject::isPasswordField):
   34790         (WebCore::AccessibilityObject::press):
   34791         (WebCore::AccessibilityObject::widgetForAttachmentView):
   34792         (WebCore::AccessibilityObject::doAXBoundsForTextMarkerRange):
   34793         (WebCore::AccessibilityObject::doAXTextMarkerForPosition):
   34794         * page/AccessibilityObject.h:
   34795         (WebCore::AccessibilityObject::areaElement):
   34796         (WebCore::AccessibilityObject::setWrapper):
   34797         * page/mac/AXObjectCacheMac.mm:
   34798         * page/mac/AccessibilityObjectMac.mm: Removed.
   34799         * page/mac/AccessibilityObjectWrapper.h:
   34800         * page/mac/AccessibilityObjectWrapper.mm:
   34801         (-[AccessibilityObjectWrapper attachmentView]):
   34802         (textMarkerForVisiblePosition):
   34803         (visiblePositionForTextMarker):
   34804         (visiblePositionForStartOfTextMarkerRange):
   34805         (visiblePositionForEndOfTextMarkerRange):
   34806         (textMarkerRangeFromMarkers):
   34807         (AXAttributeStringSetFont):
   34808         (CreateCGColorIfDifferent):
   34809         (AXAttributeStringSetColor):
   34810         (AXAttributeStringSetNumber):
   34811         (AXAttributeStringSetStyle):
   34812         (blockquoteLevel):
   34813         (AXAttributeStringSetBlockquoteLevel):
   34814         (AXAttributeStringSetSpelling):
   34815         (AXAttributeStringSetHeadingLevel):
   34816         (AXLinkElementForNode):
   34817         (AXAttributeStringSetElement):
   34818         (AXAttributedStringAppendText):
   34819         (nsStringForReplacedNode):
   34820         (-[AccessibilityObjectWrapper doAXAttributedStringForTextMarkerRange:]):
   34821         (textMarkerRangeFromVisiblePositions):
   34822         (-[AccessibilityObjectWrapper accessibilityActionNames]):
   34823         (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
   34824         (-[AccessibilityObjectWrapper visiblePositionRangeForTextMarkerRange:]):
   34825         (-[AccessibilityObjectWrapper textMarkerRangeForSelection]):
   34826         (-[AccessibilityObjectWrapper position]):
   34827         (createAccessibilityRoleMap):
   34828         (RoleEntry::):
   34829         (roleValueToNSString):
   34830         (-[AccessibilityObjectWrapper role]):
   34831         (-[AccessibilityObjectWrapper subrole]):
   34832         (-[AccessibilityObjectWrapper roleDescription]):
   34833         (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
   34834         (-[AccessibilityObjectWrapper accessibilityIsIgnored]):
   34835         (-[AccessibilityObjectWrapper accessibilityPerformAction:]):
   34836         (-[AccessibilityObjectWrapper doAXAttributedStringForRange:]):
   34837         (-[AccessibilityObjectWrapper doAXRTFForRange:]):
   34838         (-[AccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):
   34839         (-[AccessibilityObjectWrapper accessibilityShouldUseUniqueId]):
   34840         * platform/ScrollView.h:
   34841         * platform/mac/ScrollViewMac.mm:
   34842         (WebCore::ScrollView::viewRectToScreen):
   34843         (WebCore::ScrollView::absolutePointToView):
   34844 
   34845 2008-04-03  David Hyatt  <hyatt (a] apple.com>
   34846 
   34847         Create a new cross-platform Gradient abstraction and make CanvasGradient wrap it.  This first
   34848         step just cleans up CanvasGradient.  The code that calls it remains ifdef'd however.
   34849 
   34850         Reviewed by olliej
   34851 
   34852         * WebCore.pro:
   34853         * WebCore.vcproj/WebCore.vcproj:
   34854         * WebCore.xcodeproj/project.pbxproj:
   34855         * WebCoreSources.bkl:
   34856         * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
   34857         (WebCore::toJS):
   34858         * html/CanvasGradient.cpp:
   34859         (WebCore::CanvasGradient::CanvasGradient):
   34860         * html/CanvasGradient.h:
   34861         (WebCore::CanvasGradient::gradient):
   34862         (WebCore::CanvasGradient::addColorStop):
   34863         (WebCore::CanvasGradient::getColor):
   34864         * html/CanvasRenderingContext2D.cpp:
   34865         (WebCore::CanvasRenderingContext2D::fill):
   34866         (WebCore::CanvasRenderingContext2D::stroke):
   34867         (WebCore::CanvasRenderingContext2D::fillRect):
   34868         * html/CanvasStyle.h:
   34869         (WebCore::CanvasStyle::canvasGradient):
   34870         * platform/graphics/Gradient.cpp: Added.
   34871         (WebCore::Gradient::Gradient):
   34872         (WebCore::Gradient::~Gradient):
   34873         (WebCore::Gradient::addColorStop):
   34874         (WebCore::compareStops):
   34875         (WebCore::Gradient::getColor):
   34876         (WebCore::Gradient::findStop):
   34877         * platform/graphics/Gradient.h: Added.
   34878         (WebCore::Gradient::ColorStop::ColorStop):
   34879         (WebCore::Gradient::platformInit):
   34880         * platform/graphics/cairo/GradientCairo.cpp: Added.
   34881         (WebCore::Gradient::platformDestroy):
   34882         (WebCore::Gradient::platformGradient):
   34883         * platform/graphics/cg/GradientCG.cpp: Added.
   34884         (WebCore::Gradient::platformDestroy):
   34885         (WebCore::gradientCallback):
   34886         (WebCore::Gradient::platformGradient):
   34887         * platform/graphics/qt/GradientQt.cpp: Added.
   34888         (WebCore::Gradient::platformDestroy):
   34889         (WebCore::Gradient::platformGradient):
   34890 
   34891 2008-04-03  Simon Hausmann  <hausmann (a] webkit.org>
   34892 
   34893         Reviewed by Mark Rowe.
   34894 
   34895         Roll out r31599 and r31605 again after discussion with Mark Rowe.
   34896 
   34897         * history/HistoryItem.cpp:
   34898         * loader/FrameLoader.cpp:
   34899         (WebCore::FrameLoader::startIconLoader):
   34900         * loader/icon/IconDatabase.cpp:
   34901         (WebCore::IconDatabase::iconForPageURL):
   34902         (WebCore::IconDatabase::readIconForPageURLFromDisk):
   34903         * loader/icon/IconDatabase.h:
   34904         * loader/icon/IconDatabaseNone.cpp:
   34905 
   34906 2008-04-03  David Hyatt  <hyatt (a] apple.com>
   34907 
   34908         Fix for bug 18194, resizable text fields get messed up when resizing in the presence of zoom.
   34909 
   34910         Reviewed by adele
   34911 
   34912         * rendering/RenderLayer.cpp:
   34913         (WebCore::RenderLayer::resize):
   34914 
   34915 2008-04-03  Oliver Hunt  <oliver (a] apple.com>
   34916 
   34917         Rollout r31566 as there were a few issues i missed during review (thanks to antti for pointing them out)
   34918 
   34919         * dom/Element.h:
   34920         * dom/NamedAttrMap.h:
   34921         * rendering/SVGRootInlineBox.cpp:
   34922         (WebCore::SVGRootInlineBox::buildLayoutInformation):
   34923         (WebCore::SVGRootInlineBox::buildTextChunks):
   34924         * svg/SVGAElement.h:
   34925         (WebCore::SVGAElement::contextElement):
   34926         * svg/SVGAltGlyphElement.h:
   34927         (WebCore::SVGAltGlyphElement::contextElement):
   34928         * svg/SVGAnimateColorElement.h:
   34929         * svg/SVGAnimateElement.h:
   34930         * svg/SVGAnimateMotionElement.h:
   34931         * svg/SVGAnimateTransformElement.h:
   34932         * svg/SVGAnimatedTemplate.h:
   34933         (WebCore::SVGAnimatedTemplate::associatedAttributeName):
   34934         (WebCore::lookupOrCreateWrapper):
   34935         * svg/SVGAnimationElement.h:
   34936         * svg/SVGCircleElement.h:
   34937         (WebCore::SVGCircleElement::contextElement):
   34938         * svg/SVGClipPathElement.h:
   34939         (WebCore::SVGClipPathElement::contextElement):
   34940         * svg/SVGComponentTransferFunctionElement.cpp:
   34941         * svg/SVGComponentTransferFunctionElement.h:
   34942         * svg/SVGCursorElement.cpp:
   34943         (WebCore::SVGCursorElement::SVGCursorElement):
   34944         * svg/SVGCursorElement.h:
   34945         (WebCore::SVGCursorElement::contextElement):
   34946         * svg/SVGDefsElement.h:
   34947         (WebCore::SVGDefsElement::contextElement):
   34948         * svg/SVGElement.cpp:
   34949         * svg/SVGElement.h:
   34950         (WebCore::SVGElement::svgAttributeChanged):
   34951         * svg/SVGEllipseElement.cpp:
   34952         (WebCore::SVGEllipseElement::SVGEllipseElement):
   34953         * svg/SVGEllipseElement.h:
   34954         (WebCore::SVGEllipseElement::contextElement):
   34955         * svg/SVGExternalResourcesRequired.h:
   34956         * svg/SVGFEBlendElement.h:
   34957         * svg/SVGFEColorMatrixElement.cpp:
   34958         * svg/SVGFEColorMatrixElement.h:
   34959         * svg/SVGFEComponentTransferElement.h:
   34960         * svg/SVGFECompositeElement.h:
   34961         * svg/SVGFEDiffuseLightingElement.h:
   34962         * svg/SVGFEDisplacementMapElement.h:
   34963         * svg/SVGFEFloodElement.h:
   34964         * svg/SVGFEGaussianBlurElement.h:
   34965         * svg/SVGFEImageElement.cpp:
   34966         * svg/SVGFEImageElement.h:
   34967         (WebCore::SVGFEImageElement::contextElement):
   34968         * svg/SVGFELightElement.h:
   34969         * svg/SVGFEMergeElement.h:
   34970         * svg/SVGFEMergeNodeElement.h:
   34971         * svg/SVGFEOffsetElement.h:
   34972         * svg/SVGFESpecularLightingElement.h:
   34973         * svg/SVGFETileElement.h:
   34974         * svg/SVGFETurbulenceElement.h:
   34975         * svg/SVGFilterElement.cpp:
   34976         (WebCore::SVGFilterElement::SVGFilterElement):
   34977         * svg/SVGFilterElement.h:
   34978         (WebCore::SVGFilterElement::contextElement):
   34979         * svg/SVGFilterPrimitiveStandardAttributes.cpp:
   34980         (WebCore::SVGFilterPrimitiveStandardAttributes::SVGFilterPrimitiveStandardAttributes):
   34981         * svg/SVGFilterPrimitiveStandardAttributes.h:
   34982         * svg/SVGFitToViewBox.cpp:
   34983         * svg/SVGFitToViewBox.h:
   34984         * svg/SVGFontElement.h:
   34985         * svg/SVGForeignObjectElement.cpp:
   34986         (WebCore::SVGForeignObjectElement::SVGForeignObjectElement):
   34987         * svg/SVGForeignObjectElement.h:
   34988         (WebCore::SVGForeignObjectElement::contextElement):
   34989         * svg/SVGGElement.h:
   34990         (WebCore::SVGGElement::contextElement):
   34991         * svg/SVGGradientElement.cpp:
   34992         * svg/SVGGradientElement.h:
   34993         * svg/SVGImageElement.cpp:
   34994         (WebCore::SVGImageElement::SVGImageElement):
   34995         * svg/SVGImageElement.h:
   34996         (WebCore::SVGImageElement::contextElement):
   34997         * svg/SVGLength.cpp:
   34998         * svg/SVGLength.h:
   34999         * svg/SVGLengthList.cpp:
   35000         * svg/SVGLengthList.h:
   35001         * svg/SVGLineElement.cpp:
   35002         (WebCore::SVGLineElement::SVGLineElement):
   35003         * svg/SVGLineElement.h:
   35004         (WebCore::SVGLineElement::contextElement):
   35005         * svg/SVGLinearGradientElement.cpp:
   35006         (WebCore::SVGLinearGradientElement::SVGLinearGradientElement):
   35007         (WebCore::SVGLinearGradientElement::collectGradientProperties):
   35008         * svg/SVGLinearGradientElement.h:
   35009         * svg/SVGMPathElement.h:
   35010         * svg/SVGMarkerElement.cpp:
   35011         (WebCore::SVGMarkerElement::SVGMarkerElement):
   35012         * svg/SVGMarkerElement.h:
   35013         (WebCore::SVGMarkerElement::contextElement):
   35014         * svg/SVGMaskElement.cpp:
   35015         (WebCore::SVGMaskElement::SVGMaskElement):
   35016         * svg/SVGMaskElement.h:
   35017         * svg/SVGNumberList.cpp:
   35018         * svg/SVGNumberList.h:
   35019         * svg/SVGPathElement.h:
   35020         (WebCore::SVGPathElement::contextElement):
   35021         * svg/SVGPatternElement.cpp:
   35022         (WebCore::SVGPatternElement::SVGPatternElement):
   35023         (WebCore::SVGPatternElement::collectPatternProperties):
   35024         * svg/SVGPatternElement.h:
   35025         * svg/SVGPolyElement.h:
   35026         (WebCore::SVGPolyElement::contextElement):
   35027         * svg/SVGPreserveAspectRatio.cpp:
   35028         * svg/SVGPreserveAspectRatio.h:
   35029         * svg/SVGRadialGradientElement.cpp:
   35030         (WebCore::SVGRadialGradientElement::SVGRadialGradientElement):
   35031         (WebCore::SVGRadialGradientElement::svgAttributeChanged):
   35032         (WebCore::SVGRadialGradientElement::collectGradientProperties):
   35033         * svg/SVGRadialGradientElement.h:
   35034         * svg/SVGRectElement.cpp:
   35035         (WebCore::SVGRectElement::SVGRectElement):
   35036         * svg/SVGRectElement.h:
   35037         (WebCore::SVGRectElement::contextElement):
   35038         * svg/SVGSVGElement.cpp:
   35039         (WebCore::SVGSVGElement::SVGSVGElement):
   35040         (WebCore::SVGSVGElement::currentView):
   35041         * svg/SVGSVGElement.h:
   35042         * svg/SVGScriptElement.h:
   35043         (WebCore::SVGScriptElement::contextElement):
   35044         * svg/SVGSetElement.h:
   35045         * svg/SVGStyledElement.h:
   35046         * svg/SVGStyledTransformableElement.cpp:
   35047         * svg/SVGStyledTransformableElement.h:
   35048         * svg/SVGSwitchElement.h:
   35049         (WebCore::SVGSwitchElement::contextElement):
   35050         * svg/SVGSymbolElement.h:
   35051         (WebCore::SVGSymbolElement::contextElement):
   35052         * svg/SVGTRefElement.h:
   35053         (WebCore::SVGTRefElement::contextElement):
   35054         * svg/SVGTSpanElement.h:
   35055         * svg/SVGTextContentElement.cpp:
   35056         (WebCore::SVGTextContentElement::SVGTextContentElement):
   35057         * svg/SVGTextContentElement.h:
   35058         * svg/SVGTextElement.cpp:
   35059         * svg/SVGTextElement.h:
   35060         (WebCore::SVGTextElement::contextElement):
   35061         * svg/SVGTextPathElement.cpp:
   35062         (WebCore::SVGTextPathElement::SVGTextPathElement):
   35063         * svg/SVGTextPathElement.h:
   35064         (WebCore::SVGTextPathElement::contextElement):
   35065         * svg/SVGTextPositioningElement.cpp:
   35066         * svg/SVGTextPositioningElement.h:
   35067         * svg/SVGTransformList.cpp:
   35068         * svg/SVGTransformList.h:
   35069         * svg/SVGURIReference.h:
   35070         * svg/SVGUseElement.cpp:
   35071         (WebCore::SVGUseElement::SVGUseElement):
   35072         * svg/SVGUseElement.h:
   35073         (WebCore::SVGUseElement::contextElement):
   35074         * svg/SVGViewElement.h:
   35075         (WebCore::SVGViewElement::contextElement):
   35076         * svg/SVGViewSpec.cpp:
   35077         * svg/SVGViewSpec.h:
   35078 
   35079 2008-04-03  Holger Hans Peter Freyther  <holger.freyther (a] trolltech.com>
   35080 
   35081         Reviewed by Simon.
   35082 
   35083         * Change IconDatabase::iconForPageURL to return more information. E.g. if
   35084         an image has been found, or if the loading of an image has been scheduled.
   35085         * Update FrameLoader to use another method to trigger reading from disk
   35086         * Update the QWebFrame and QWebSettings
   35087 
   35088         * history/HistoryItem.cpp:
   35089         * loader/FrameLoader.cpp:
   35090         * loader/icon/IconDatabase.cpp:
   35091         (WebCore::IconDatabase::iconForPageURL):
   35092         (WebCore::IconDatabase::readIconForPageURLFromDisk):
   35093         (WebCore::IconDatabase::iconURLForPageURL):
   35094         (WebCore::IconDatabase::defaultIcon):
   35095         * loader/icon/IconDatabase.h:
   35096 
   35097 2008-04-03  Dan Bernstein  <mitz (a] apple.com>
   35098 
   35099         - Mac build fix
   35100 
   35101         * WebCore.base.exp:
   35102 
   35103 2008-04-03  Simon Hausmann  <hausmann (a] webkit.org>
   35104 
   35105         Fix the build when building without icondatabase.
   35106 
   35107         * loader/icon/IconDatabaseNone.cpp: Fix the function signature, no
   35108         bool cache anymore.
   35109 
   35110 2008-04-03  Holger Hans Peter Freyther  <holger.freyther (a] trolltech.com>
   35111 
   35112         Reviewed by Simon.
   35113 
   35114         * Remove the unused 'cache' parameter
   35115 
   35116         * loader/icon/IconDatabase.cpp:
   35117         (WebCore::IconDatabase::iconForPageURL):
   35118         * loader/icon/IconDatabase.h:
   35119 
   35120 2008-04-03  Holger Hans Peter Freyther  <holger.freyther (a] trolltech.com>
   35121 
   35122         Reviewed by Simon.
   35123 
   35124         * Add WebCore/loader/icon to the DEPENDPATH as well
   35125 
   35126         * WebCore.pro:
   35127 
   35128 2008-04-02  Brady Eidson  <beidson (a] apple.com>
   35129 
   35130         Reviewed by Mitz Pettel
   35131 
   35132         <rdar://problem/5838347> and http://bugs.webkit.org/show_bug.cgi?id=11839
   35133         Webarchive fails to save CSS files in @import statements
   35134 
   35135         * css/CSSStyleSheet.cpp:
   35136         (WebCore::CSSStyleSheet::addSubresourceURLStrings): Recursively add the URL each @import rule under the current style sheet.
   35137         * css/CSSStyleSheet.h:
   35138         * css/StyleSheet.h:
   35139         (WebCore::StyleSheet::addSubresourceURLStrings):
   35140 
   35141         * html/HTMLLinkElement.cpp:
   35142         (WebCore::HTMLLinkElement::getSubresourceAttributeStrings): Add the linked URL as well as all @import
   35143           rules rooted at the linked stylesheet.
   35144 
   35145         * html/HTMLStyleElement.cpp:
   35146         (WebCore::HTMLStyleElement::getSubresourceAttributeStrings): Walk all @import rules rooted at this
   35147           stylesheet to add to the list.
   35148         * html/HTMLStyleElement.h:
   35149 
   35150 2008-04-02  Mark Rowe  <mrowe (a] apple.com>
   35151 
   35152         Reviewed by Oliver Hunt.
   35153 
   35154         Ensure that debug symbols are generated for x86_64 and ppc64 builds.
   35155 
   35156         * Configurations/Base.xcconfig:
   35157 
   35158 2008-04-02  Christian Persch  <chpe (a] gnome.org>
   35159 
   35160         Reviewed by Alp Toker.
   35161 
   35162         GTK+/Pango font backend build fix.
   35163 
   35164         * platform/graphics/gtk/FontCustomPlatformDataPango.cpp:
   35165         (WebCore::FontCustomPlatformData::fontPlatformData):
   35166 
   35167 2008-04-02  Eric Seidel  <eric (a] webkit.org>
   35168 
   35169         No review, build fix only.
   35170 
   35171         Speculative build fix for no-svg build.
   35172         Use #if ENABLE(SVG) instead of #if ENABLE_SVG
   35173 
   35174         * css/CSSMutableStyleDeclaration.cpp:
   35175         (WebCore::CSSMutableStyleDeclaration::getPropertyValue):
   35176 
   35177 2008-04-02  Adam Roben  <aroben (a] apple.com>
   35178 
   35179         Rename instances of ExecState from "state" to "exec" in
   35180         JavaScriptDebugServer
   35181 
   35182         Rename requested by Darin Adler.
   35183 
   35184         * page/JavaScriptDebugServer.cpp:
   35185 
   35186 2008-04-02  Adam Roben  <aroben (a] apple.com>
   35187 
   35188         Make it possible for JavaScriptDebugListeners to listen to specific Pages
   35189 
   35190         JavaScriptDebugServer now has overloads of its
   35191         addListener/removeListener methods that take a Page* to indicate for
   35192         which Page the JavaScriptDebugListener wishes to receive messages.
   35193 
   35194         Reviewed by Darin.
   35195 
   35196         * page/JavaScriptDebugServer.cpp:
   35197         (WebCore::JavaScriptDebugServer::~JavaScriptDebugServer): Delete all
   35198         ListenerSets being held in m_pageListenersMap.
   35199         (WebCore::JavaScriptDebugServer::addListener): Changed to call
   35200         hasListeners().
   35201         (WebCore::JavaScriptDebugServer::removeListener): Ditto.
   35202         (WebCore::JavaScriptDebugServer::addListener): Added. This overload
   35203         takes a Page* and puts the listener in the appropriate ListenerSet
   35204         within m_pageListenersMap. The ListenerSet is allocated and added to
   35205         m_pageListenersMap when its first listener is added.
   35206         (WebCore::JavaScriptDebugServer::removeListener): Added. This overload
   35207         takes a Page* and removes the listener from the appropriate
   35208         ListenerSet in m_pageListenersMap. The ListenerSet is deleted and
   35209         removed from m_pageListenersMap when its last listener is removed.
   35210         (WebCore::toPage): Added. Retrieves the parent Page from an ExecState.
   35211         (WebCore::JavaScriptDebugServer::sourceParsed): Changed to call
   35212         dispatchDidParseSource/dispatchDidFailToParseSource for both the
   35213         global listeners and the Page listeners.
   35214         (WebCore::dispatchFunctionToListeners): Added. This code was extracted
   35215         from the JavaScriptDebugServer method of the same name.
   35216         (WebCore::JavaScriptDebugServer::dispatchFunctionToListeners): Call
   35217         dispatchFunctionToListeners for both the global listeners and the Page
   35218         listeners.
   35219         * page/JavaScriptDebugServer.h:
   35220           - Added declarations for new methods.
   35221           - Made JavaScriptExecutionCallback typedef public so that it could
   35222             be used by a helper method.
   35223           - Added new m_pageListenersMap member.
   35224 2008-04-02  Simon Hausmann  <hausmann (a] webkit.org>
   35225 
   35226         Fix compilation on case-sensitive file systems.
   35227 
   35228         * svg/SVGGradientElement.h: Include SVGTransformList.h instead of
   35229         SVGTRansformlist.h
   35230 
   35231 2008-04-02  Nikolas Zimmermann  <zimmermann (a] kde.org>
   35232 
   35233         Reviewed by Oliver.
   35234 
   35235         Fixes: http://bugs.webkit.org/show_bug.cgi?id=17779 (SVG 1.1 Errata demands "SVG JavaScript Liveness" support)
   35236 
   35237         SVG Errata states: "All SVG DOM objects that directly correspond to an
   35238         attribute, e.g. the SVGAnimatedLength 'ry' in an SVGRectElement, are live. This
   35239         means that any changes made to the attribute are immediately reflected in the
   35240         corresponding SVG DOM object." (see linked URL on bug report)
   35241 
   35242         Until now only XML -> SVG DOM changes took affect, aka. changing the 'rx' attribute of a <rect>
   35243         element resuted in changes when accessing 'rx' through SVG DOM (rx.baseVal.value).
   35244 
   35245         Add a new synchronization layer to handle SVG DOM -> XML changes.
   35246 
   35247         Added Test: svg/custom/svg-xml-dom-sync.html
   35248 
   35249         * dom/Element.h:
   35250         * dom/NamedAttrMap.h:
   35251         * rendering/SVGRootInlineBox.cpp:
   35252         (WebCore::nodeToTextContentElement):
   35253         (WebCore::nodeToTextPositioningElement):
   35254         (WebCore::SVGRootInlineBox::buildLayoutInformation):
   35255         (WebCore::SVGRootInlineBox::buildTextChunks):
   35256         * svg/SVGAElement.h:
   35257         (WebCore::SVGAElement::contextElement):
   35258         * svg/SVGAltGlyphElement.h:
   35259         (WebCore::SVGAltGlyphElement::contextElement):
   35260         * svg/SVGAnimateColorElement.h:
   35261         (WebCore::SVGAnimateColorElement::contextElement):
   35262         * svg/SVGAnimateElement.h:
   35263         (WebCore::SVGAnimateElement::contextElement):
   35264         * svg/SVGAnimateMotionElement.h:
   35265         (WebCore::SVGAnimateMotionElement::contextElement):
   35266         * svg/SVGAnimateTransformElement.h:
   35267         (WebCore::SVGAnimateTransformElement::contextElement):
   35268         * svg/SVGAnimatedTemplate.h:
   35269         (WebCore::SVGAnimatedTemplate::toString):
   35270         (WebCore::SVGAnimatedTemplate::associatedAttributeName):
   35271         (WebCore::lookupOrCreateWrapper):
   35272         (WebCore::SVGAnimatedAngle::SVGAnimatedAngle):
   35273         (WebCore::SVGAnimatedAngle::toString):
   35274         (WebCore::SVGAnimatedBoolean::SVGAnimatedBoolean):
   35275         (WebCore::SVGAnimatedBoolean::toString):
   35276         (WebCore::SVGAnimatedEnumeration::SVGAnimatedEnumeration):
   35277         (WebCore::SVGAnimatedEnumeration::toString):
   35278         (WebCore::SVGAnimatedInteger::SVGAnimatedInteger):
   35279         (WebCore::SVGAnimatedInteger::toString):
   35280         (WebCore::SVGAnimatedLength::SVGAnimatedLength):
   35281         (WebCore::SVGAnimatedLength::toString):
   35282         (WebCore::SVGAnimatedLengthList::SVGAnimatedLengthList):
   35283         (WebCore::SVGAnimatedLengthList::toString):
   35284         (WebCore::SVGAnimatedNumber::SVGAnimatedNumber):
   35285         (WebCore::SVGAnimatedNumber::toString):
   35286         (WebCore::SVGAnimatedNumberList::SVGAnimatedNumberList):
   35287         (WebCore::SVGAnimatedNumberList::toString):
   35288         (WebCore::SVGAnimatedPreserveAspectRatio::SVGAnimatedPreserveAspectRatio):
   35289         (WebCore::SVGAnimatedPreserveAspectRatio::toString):
   35290         (WebCore::SVGAnimatedRect::SVGAnimatedRect):
   35291         (WebCore::SVGAnimatedRect::toString):
   35292         (WebCore::SVGAnimatedString::SVGAnimatedString):
   35293         (WebCore::SVGAnimatedString::toString):
   35294         (WebCore::SVGAnimatedTransformList::SVGAnimatedTransformList):
   35295         (WebCore::SVGAnimatedTransformList::toString):
   35296         (WebCore::SVGAnimatedType::SVGAnimatedType):
   35297         * svg/SVGAnimationElement.h:
   35298         * svg/SVGCircleElement.h:
   35299         (WebCore::SVGCircleElement::contextElement):
   35300         * svg/SVGClipPathElement.h:
   35301         (WebCore::SVGClipPathElement::contextElement):
   35302         * svg/SVGComponentTransferFunctionElement.cpp:
   35303         * svg/SVGComponentTransferFunctionElement.h:
   35304         * svg/SVGCursorElement.cpp:
   35305         (WebCore::SVGCursorElement::SVGCursorElement):
   35306         * svg/SVGCursorElement.h:
   35307         (WebCore::SVGCursorElement::contextElement):
   35308         * svg/SVGDefsElement.h:
   35309         (WebCore::SVGDefsElement::contextElement):
   35310         * svg/SVGElement.cpp:
   35311         (WebCore::SVGElement::getAttribute):
   35312         * svg/SVGElement.h:
   35313         (LazilyUpdatedType::LazilyUpdatedType):
   35314         (LazilyUpdatedType::operator=):
   35315         (LazilyUpdatedType::operator==):
   35316         (LazilyUpdatedType::operator!=):
   35317         (LazilyUpdatedType::operator StoredType):
   35318         (WebCore::SVGElement::invokeSVGPropertySynchronizer):
   35319         (WebCore::SVGElement::addSVGPropertySynchronizer):
   35320         * svg/SVGEllipseElement.cpp:
   35321         (WebCore::SVGEllipseElement::SVGEllipseElement):
   35322         * svg/SVGEllipseElement.h:
   35323         (WebCore::SVGEllipseElement::contextElement):
   35324         * svg/SVGExternalResourcesRequired.h:
   35325         * svg/SVGFEBlendElement.h:
   35326         (WebCore::SVGFEBlendElement::contextElement):
   35327         * svg/SVGFEColorMatrixElement.cpp:
   35328         * svg/SVGFEColorMatrixElement.h:
   35329         (WebCore::SVGFEColorMatrixElement::contextElement):
   35330         * svg/SVGFEComponentTransferElement.h:
   35331         (WebCore::SVGFEComponentTransferElement::contextElement):
   35332         * svg/SVGFECompositeElement.h:
   35333         (WebCore::SVGFECompositeElement::contextElement):
   35334         * svg/SVGFEDiffuseLightingElement.h:
   35335         (WebCore::SVGFEDiffuseLightingElement::contextElement):
   35336         * svg/SVGFEDisplacementMapElement.h:
   35337         (WebCore::SVGFEDisplacementMapElement::contextElement):
   35338         * svg/SVGFEFloodElement.h:
   35339         (WebCore::SVGFEFloodElement::contextElement):
   35340         * svg/SVGFEGaussianBlurElement.h:
   35341         (WebCore::SVGFEGaussianBlurElement::contextElement):
   35342         * svg/SVGFEImageElement.cpp:
   35343         * svg/SVGFEImageElement.h:
   35344         (WebCore::SVGFEImageElement::contextElement):
   35345         * svg/SVGFELightElement.h:
   35346         * svg/SVGFEMergeElement.h:
   35347         (WebCore::SVGFEMergeElement::contextElement):
   35348         * svg/SVGFEMergeNodeElement.h:
   35349         (WebCore::SVGFEMergeNodeElement::contextElement):
   35350         * svg/SVGFEOffsetElement.h:
   35351         (WebCore::SVGFEOffsetElement::contextElement):
   35352         * svg/SVGFESpecularLightingElement.h:
   35353         (WebCore::SVGFESpecularLightingElement::contextElement):
   35354         * svg/SVGFETileElement.h:
   35355         (WebCore::SVGFETileElement::contextElement):
   35356         * svg/SVGFETurbulenceElement.h:
   35357         (WebCore::SVGFETurbulenceElement::contextElement):
   35358         * svg/SVGFilterElement.cpp:
   35359         (WebCore::SVGFilterElement::SVGFilterElement):
   35360         * svg/SVGFilterElement.h:
   35361         (WebCore::SVGFilterElement::contextElement):
   35362         * svg/SVGFilterPrimitiveStandardAttributes.cpp:
   35363         (WebCore::SVGFilterPrimitiveStandardAttributes::SVGFilterPrimitiveStandardAttributes):
   35364         * svg/SVGFilterPrimitiveStandardAttributes.h:
   35365         (WebCore::SVGFilterPrimitiveStandardAttributes::contextElement):
   35366         * svg/SVGFitToViewBox.cpp:
   35367         * svg/SVGFitToViewBox.h:
   35368         * svg/SVGFontElement.h:
   35369         (WebCore::SVGFontElement::contextElement):
   35370         * svg/SVGForeignObjectElement.cpp:
   35371         (WebCore::SVGForeignObjectElement::SVGForeignObjectElement):
   35372         * svg/SVGForeignObjectElement.h:
   35373         (WebCore::SVGForeignObjectElement::contextElement):
   35374         * svg/SVGGElement.h:
   35375         (WebCore::SVGGElement::contextElement):
   35376         * svg/SVGGradientElement.cpp:
   35377         * svg/SVGGradientElement.h:
   35378         * svg/SVGImageElement.cpp:
   35379         (WebCore::SVGImageElement::SVGImageElement):
   35380         * svg/SVGImageElement.h:
   35381         (WebCore::SVGImageElement::contextElement):
   35382         * svg/SVGLength.cpp:
   35383         (WebCore::SVGLength::SVGLength):
   35384         (WebCore::SVGLength::operator=):
   35385         (WebCore::SVGLength::operator==):
   35386         (WebCore::SVGLength::operator!=):
   35387         * svg/SVGLength.h:
   35388         * svg/SVGLengthList.cpp:
   35389         (WebCore::SVGLengthList::valueAsString):
   35390         * svg/SVGLengthList.h:
   35391         * svg/SVGLineElement.cpp:
   35392         (WebCore::SVGLineElement::SVGLineElement):
   35393         * svg/SVGLineElement.h:
   35394         (WebCore::SVGLineElement::contextElement):
   35395         * svg/SVGLinearGradientElement.cpp:
   35396         (WebCore::SVGLinearGradientElement::SVGLinearGradientElement):
   35397         (WebCore::SVGLinearGradientElement::collectGradientProperties):
   35398         * svg/SVGLinearGradientElement.h:
   35399         (WebCore::SVGLinearGradientElement::contextElement):
   35400         * svg/SVGMPathElement.h:
   35401         (WebCore::SVGMPathElement::contextElement):
   35402         * svg/SVGMarkerElement.cpp:
   35403         (WebCore::SVGMarkerElement::SVGMarkerElement):
   35404         * svg/SVGMarkerElement.h:
   35405         (WebCore::SVGMarkerElement::contextElement):
   35406         * svg/SVGMaskElement.cpp:
   35407         (WebCore::SVGMaskElement::SVGMaskElement):
   35408         * svg/SVGMaskElement.h:
   35409         (WebCore::SVGMaskElement::contextElement):
   35410         * svg/SVGNumberList.cpp:
   35411         (WebCore::SVGNumberList::valueAsString):
   35412         * svg/SVGNumberList.h:
   35413         * svg/SVGPathElement.h:
   35414         (WebCore::SVGPathElement::contextElement):
   35415         * svg/SVGPatternElement.cpp:
   35416         (WebCore::SVGPatternElement::SVGPatternElement):
   35417         (WebCore::SVGPatternElement::collectPatternProperties):
   35418         * svg/SVGPatternElement.h:
   35419         (WebCore::SVGPatternElement::contextElement):
   35420         * svg/SVGPolyElement.h:
   35421         (WebCore::SVGPolyElement::contextElement):
   35422         * svg/SVGPreserveAspectRatio.cpp:
   35423         (WebCore::SVGPreserveAspectRatio::valueAsString):
   35424         * svg/SVGPreserveAspectRatio.h:
   35425         * svg/SVGRadialGradientElement.cpp:
   35426         (WebCore::SVGRadialGradientElement::SVGRadialGradientElement):
   35427         (WebCore::SVGRadialGradientElement::svgAttributeChanged):
   35428         (WebCore::SVGRadialGradientElement::collectGradientProperties):
   35429         * svg/SVGRadialGradientElement.h:
   35430         (WebCore::SVGRadialGradientElement::contextElement):
   35431         * svg/SVGRectElement.cpp:
   35432         (WebCore::SVGRectElement::SVGRectElement):
   35433         * svg/SVGRectElement.h:
   35434         (WebCore::SVGRectElement::contextElement):
   35435         * svg/SVGSVGElement.cpp:
   35436         (WebCore::SVGSVGElement::SVGSVGElement):
   35437         (WebCore::SVGSVGElement::currentView):
   35438         * svg/SVGSVGElement.h:
   35439         (WebCore::SVGSVGElement::contextElement):
   35440         * svg/SVGScriptElement.h:
   35441         (WebCore::SVGScriptElement::contextElement):
   35442         * svg/SVGSetElement.h:
   35443         (WebCore::SVGSetElement::contextElement):
   35444         * svg/SVGStyledElement.h:
   35445         * svg/SVGStyledTransformableElement.cpp:
   35446         * svg/SVGStyledTransformableElement.h:
   35447         * svg/SVGSwitchElement.h:
   35448         (WebCore::SVGSwitchElement::contextElement):
   35449         * svg/SVGSymbolElement.h:
   35450         (WebCore::SVGSymbolElement::contextElement):
   35451         * svg/SVGTRefElement.h:
   35452         (WebCore::SVGTRefElement::contextElement):
   35453         * svg/SVGTSpanElement.h:
   35454         (WebCore::SVGTSpanElement::contextElement):
   35455         * svg/SVGTextContentElement.cpp:
   35456         (WebCore::SVGTextContentElement::SVGTextContentElement):
   35457         * svg/SVGTextContentElement.h:
   35458         * svg/SVGTextElement.cpp:
   35459         * svg/SVGTextElement.h:
   35460         (WebCore::SVGTextElement::contextElement):
   35461         * svg/SVGTextPathElement.cpp:
   35462         (WebCore::SVGTextPathElement::SVGTextPathElement):
   35463         * svg/SVGTextPathElement.h:
   35464         (WebCore::SVGTextPathElement::contextElement):
   35465         * svg/SVGTextPositioningElement.cpp:
   35466         * svg/SVGTextPositioningElement.h:
   35467         * svg/SVGTransformList.cpp:
   35468         (SVGTransformList::valueAsString):
   35469         * svg/SVGTransformList.h:
   35470         * svg/SVGURIReference.h:
   35471         * svg/SVGUseElement.cpp:
   35472         (WebCore::SVGUseElement::SVGUseElement):
   35473         * svg/SVGUseElement.h:
   35474         (WebCore::SVGUseElement::contextElement):
   35475         * svg/SVGViewElement.h:
   35476         (WebCore::SVGViewElement::contextElement):
   35477         * svg/SVGViewSpec.cpp:
   35478         (WebCore::SVGViewSpec::SVGViewSpec):
   35479         (WebCore::SVGViewSpec::contextElement):
   35480         * svg/SVGViewSpec.h:
   35481 
   35482 2008-04-02  Darin Adler  <darin (a] apple.com>
   35483 
   35484         Reviewed by Alexey.
   35485 
   35486         - fix storage leak seen on buildbot
   35487 
   35488         * platform/graphics/cg/ImageBufferCG.cpp:
   35489         (WebCore::utiFromMIMEType): Put the result of createCFString() into a RetainPtr. Changed
   35490         result to be a RetainPtr.
   35491         (WebCore::ImageBuffer::toDataURL): Tweak a little bit, removing one local variable and
   35492         some unneeded explicit conversions.
   35493 
   35494 2008-04-01  Darin Adler  <darin (a] apple.com>
   35495 
   35496         * WebCore.vcproj/WebCore.vcproj: Added RangeBoundaryPoint.h -- not required, but convenient.
   35497 
   35498 2008-04-01  Darin Adler  <darin (a] apple.com>
   35499 
   35500         Reviewed by Sam and Antti.
   35501 
   35502         - fix <rdar://problem/5829565> paste performance slowed down with the Range Acid3 changes
   35503 
   35504         Added a new class, RangeBoundaryPoint, to use for range boundary points. The "truth" of
   35505         the offset is now stored as a node pointer, and the offset is computed as and when needed.
   35506         This allows us to efficiently update when the DOM tree is changed -- computation of the
   35507         node offsets is deferred until the Range is used later.
   35508 
   35509         * WebCore.base.exp: Export nodeIndex().
   35510 
   35511         * WebCore.xcodeproj/project.pbxproj: Added RangeBoundaryPoint.h, removed NodeWithIndexBefore.h
   35512         and NodeWIthIndexAfter.h. Also let Xcode tweak the file formatting.
   35513 
   35514         * dom/ContainerNode.cpp:
   35515         (WebCore::ContainerNode::childrenChanged): Pass fewer arguments to Document.
   35516 
   35517         * dom/Document.cpp:
   35518         (WebCore::Document::nodeChildrenChanged): Pass fewer arguments to Range.
   35519         (WebCore::Document::nodeWillBeRemoved): Pass node to range as a raw node pointer; no need for
   35520         the index.
   35521         * dom/Document.h: Take fewer arguments.
   35522 
   35523         * dom/NodeWithIndexAfter.h: Removed.
   35524         * dom/NodeWithIndexBefore.h: Removed.
   35525 
   35526         * dom/Range.cpp:
   35527         (WebCore::Range::Range): Changed to use the new RangeBoundaryPoint constructor.
   35528         (WebCore::Range::create): Updated to use RangeBoundaryPoint instead of Position.
   35529         (WebCore::Range::~Range): Ditto.
   35530         (WebCore::Range::startContainer): Ditto.
   35531         (WebCore::Range::startOffset): Ditto.
   35532         (WebCore::Range::endContainer): Ditto.
   35533         (WebCore::Range::endOffset): Ditto.
   35534         (WebCore::Range::commonAncestorContainer): Ditto.
   35535         (WebCore::Range::collapsed): Ditto.
   35536         (WebCore::Range::setStart): Ditto.
   35537         (WebCore::Range::setEnd): Ditto.
   35538         (WebCore::Range::collapse): Ditto.
   35539         (WebCore::Range::isPointInRange): Ditto.
   35540         (WebCore::Range::comparePoint): Ditto.
   35541         (WebCore::Range::compareNode): Ditto.
   35542         (WebCore::Range::compareBoundaryPoints): Ditto.
   35543         (WebCore::Range::boundaryPointsValid): Ditto.
   35544         (WebCore::Range::intersectsNode): Ditto.
   35545         (WebCore::Range::processContents): Ditto.
   35546         (WebCore::Range::cloneContents): Ditto.
   35547         (WebCore::Range::insertNode): Updated to use RangeBoundaryPoint. Also simplified the code
   35548         at the end that updates the range -- not all of it is needed now since most of the fixup
   35549         is done automatically by the range document mutation machinery. The one bit that remains
   35550         is arguably a bug, but we need to keep it to keep passing Acid3 until we get clarification
   35551         that it is indeed a bug (and then Acid3 will probably have to change).
   35552         (WebCore::Range::toString): Update to use RangeBoundaryPoint instead of Position.
   35553         (WebCore::Range::text): Ditto.
   35554         (WebCore::Range::createContextualFragment): Ditto.
   35555         (WebCore::Range::detach): Ditto.
   35556         (WebCore::Range::checkNodeWOffset): Changed case where the offset is a node offset to
   35557         be more efficient by using childNode instead of childNodeCount, and also return the node
   35558         before which is needed to set the value of a RangeBoundaryPoint.
   35559         (WebCore::Range::cloneRange): Ditto.
   35560         (WebCore::Range::setStartAfter): Ditto.
   35561         (WebCore::Range::setEndBefore): Ditto.
   35562         (WebCore::Range::setEndAfter): Ditto.
   35563         (WebCore::Range::selectNode): Ditto.
   35564         (WebCore::Range::selectNodeContents): Ditto.
   35565         (WebCore::Range::surroundContents): Ditto.
   35566         (WebCore::Range::setStartBefore): Ditto.
   35567         (WebCore::Range::checkDeleteExtract): Ditto.
   35568         (WebCore::Range::containedByReadOnly): Ditto.
   35569         (WebCore::Range::firstNode): Ditto.
   35570         (WebCore::Range::editingStartPosition): Ditto.
   35571         (WebCore::Range::pastLastNode): Ditto.
   35572         (WebCore::Range::addLineBoxRects): Ditto.
   35573         (WebCore::Range::formatForDebugger): Ditto.
   35574         (WebCore::Range::maxStartOffset): Ditto.
   35575         (WebCore::Range::maxEndOffset): Ditto.
   35576         (WebCore::boundaryNodeChildrenChanged): Updated to use RangeBoundaryPoint instead of
   35577         Position. Also changed name and changed to just call invalidateOffset.
   35578         (WebCore::Range::nodeChildrenChanged): Changed to take just a container node.
   35579         (WebCore::boundaryNodeWillBeRemoved): Updated to use RangeBoundaryPoint instead of
   35580         Position. Also changed name and changed to update childBefore.
   35581         (WebCore::Range::nodeWillBeRemoved): Changed to just take a Node*.
   35582         (WebCore::boundaryTextInserted): Updated to use RangeBoundaryPoint instead of
   35583         Position. Also changed name.
   35584         (WebCore::Range::textInserted): Ditto.
   35585         (WebCore::boundaryTextRemoved): Ditto.
   35586         (WebCore::Range::textRemoved): Ditto.
   35587         (WebCore::boundaryTextNodesMerged): Ditto.
   35588         (WebCore::Range::textNodesMerged): Ditto.
   35589         (WebCore::boundaryTextNodesSplit): Ditto.
   35590         (WebCore::Range::textNodeSplit): Ditto.
   35591 
   35592         * dom/Range.h: Updated to use RangeBoundaryPoint instead of Position.
   35593 
   35594         * dom/RangeBoundaryPoint.h: Added.
   35595 
   35596 2008-04-01  Anders Carlsson  <andersca (a] apple.com>
   35597 
   35598         Reviewed by Sam.
   35599 
   35600         Get rid of old "bindings" forwarding headers.
   35601 
   35602         * ForwardingHeaders/bindings: Removed.
   35603         * ForwardingHeaders/bindings/NP_jsobject.h: Removed.
   35604         * ForwardingHeaders/bindings/npruntime.h: Removed.
   35605         * ForwardingHeaders/bindings/npruntime_impl.h: Removed.
   35606         * ForwardingHeaders/bindings/npruntime_internal.h: Removed.
   35607         * ForwardingHeaders/bindings/runtime.h: Removed.
   35608         * ForwardingHeaders/bindings/runtime_object.h: Removed.
   35609         * ForwardingHeaders/bindings/runtime_root.h: Removed.
   35610 
   35611 2008-04-01  Timothy Hatcher  <timothy (a] apple.com>
   35612 
   35613         Rename DatabasePanel.js to DatabasesPanel.js to facilitate the up-coming UI refresh changes.
   35614 
   35615         http://bugs.webkit.org/show_bug.cgi?id=17773
   35616 
   35617         Rubber-stamped by Brady Eidson.
   35618 
   35619         * WebCore.vcproj/WebCore.vcproj: Reference DatabasesPanel.js.
   35620         * page/inspector/DatabasePanel.js: Removed.
   35621         * page/inspector/DatabasesPanel.js: Copied from page/inspector/DatabasePanel.js.
   35622         * page/inspector/WebKit.qrc: Reference DatabasesPanel.js.
   35623         * page/inspector/inspector.html: Reference DatabasesPanel.js.
   35624 
   35625 2008-04-01  Brady Eidson  <beidson (a] apple.com>
   35626 
   35627         Touch a file to get Windows to rebuild WebCore
   35628 
   35629         * platform/ContextMenu.cpp: Alphabetize headers
   35630 
   35631 2008-04-01  Brady Eidson  <beidson (a] apple.com>
   35632 
   35633         Reviewed by Adam Roben
   35634 
   35635         Export loader/archive and loader/archive/cf headers for WebKitWin to use
   35636 
   35637         * WebCore.vcproj/WebCore.vcproj:
   35638 
   35639 2008-04-01  Brady Eidson  <beidson (a] apple.com>
   35640 
   35641         Reviewed by Darin
   35642 
   35643         WebArchives need to load on Windows the same way as on Mac, and this change in the 
   35644         finished-loading code path was a big part of that
   35645 
   35646         * loader/FrameLoader.cpp:
   35647         (WebCore::FrameLoader::finishedLoadingDocument): Only call the client's finishedLoading()
   35648           for non-archive loads
   35649 
   35650 2008-04-01  Dan Bernstein  <mitz (a] apple.com>
   35651 
   35652         - Mac build fix
   35653 
   35654         * WebCore.xcodeproj/project.pbxproj: Made FontRenderingMode.h private.
   35655 
   35656 2008-04-01  Dan Bernstein  <mitz (a] apple.com>
   35657 
   35658         Reviewed by Darin Adler.
   35659 
   35660         - move the FontRenderingMode enumeration into its own header file
   35661 
   35662         * WebCore.vcproj/WebCore.vcproj:
   35663         * WebCore.xcodeproj/project.pbxproj:
   35664         * loader/CachedFont.h:
   35665         * platform/graphics/FontDescription.h:
   35666         * platform/graphics/FontRenderingMode.h: Added.
   35667         * platform/graphics/gtk/FontCustomPlatformData.h:
   35668         * platform/graphics/mac/FontCustomPlatformData.h:
   35669         * platform/graphics/qt/FontCustomPlatformData.h:
   35670         * platform/graphics/win/FontCustomPlatformData.h:
   35671 
   35672 2008-04-01  Darin Adler  <darin (a] apple.com>
   35673 
   35674         Reviewed by Mitz.
   35675 
   35676         - fix <rdar://problem/5833351> REGRESSION: Leak in JSCustomXPathNSResolver::create
   35677         - fix <rdar://problem/5833216> REGRESSION: Leak in CSSStyleSelector::addViewportDependentMediaQueryResult
   35678 
   35679         * bindings/js/JSCustomXPathNSResolver.cpp:
   35680         (WebCore::JSCustomXPathNSResolver::create): Added a missing adoptRef.
   35681         * css/CSSStyleSelector.cpp:
   35682         (WebCore::CSSStyleSelector::~CSSStyleSelector): Added a missing call to deleteAllValues.
   35683 
   35684 2008-04-01  Darin Adler  <darin (a] apple.com>
   35685 
   35686         Reviewed by Sam.
   35687 
   35688         - speed up hasChildNodes, which does not need to be virtual
   35689 
   35690         * dom/ContainerNode.cpp: Removed hasChildNodes.
   35691         * dom/ContainerNode.h: Added non-virtual inline hasChildNodes.
   35692         * dom/Node.cpp: Removed hasChildNodes.
   35693         * dom/Node.h: Added non-vritual inline hasChildNodes.
   35694 
   35695 2008-04-01  Simon Hausmann  <hausmann (a] webkit.org>
   35696 
   35697         Fix the non-mac build.
   35698 
   35699         * page/AXObjectCache.h: Don't reference AccessibilityObjects when
   35700         building without accessibility.
   35701         * page/AccessibilityObject.h: Don't include RetainPtr.h for non-mac
   35702         builds.
   35703 
   35704 2008-04-01  Holger Hans Peter Freyther  <holger.freyther (a] trolltech.com>
   35705 
   35706         Reviewed by Simon.
   35707 
   35708         * Do not store the QWebFrame associated with a ScrollView/FrameView
   35709         in the WebCore::Widget.
   35710         * Instead of asking the Widget for the QWebFrame use the QWebFramePrivate::core
   35711         and QWebFramePrivate::kit function to convert from and to QWebFrame.
   35712 
   35713         * platform/Widget.h:
   35714         * platform/qt/WidgetQt.cpp:
   35715         (WebCore::WidgetPrivate::WidgetPrivate):
   35716         (WebCore::Widget::containingWindow):
   35717 
   35718 2008-04-01  Alice Liu  <alice.liu (a] apple.com>
   35719         Patch by Beth Dakin <bdakin (a] apple.com> and Alice Liu
   35720 
   35721         Reviewed by Darin.
   35722 
   35723         Refactored WebCore Accessibility code.  Prior to this patch, WebCore
   35724         accessibility was implemented in an ObjC class named WebCoreAXObject,
   35725         with much of the "guts" in C++.  This patch the next natural step of
   35726         factoring out the C++ code into a class named AccessibilityObject, and 
   35727         in order to maintain the required ObjC object ties, also implements an
   35728         ObjC class named AccessibilityObjectWrapper as a thin wrapper around the
   35729         C++ object.  Internally within WebCore we operate on the C++ object as
   35730         much as possible, and the ObjC object gets used mostly when we need to
   35731         return something to AppKit or call something implemented on NSObject.
   35732         The AXObjectCache still keeps one HashMap, now of RenderObjects to
   35733         AccessibilityObjects instead of WebCoreAXObjects, and the
   35734         AccessibilityObject keeps track of its ObjC wrapper.
   35735 
   35736         * WebCore.xcodeproj/project.pbxproj:
   35737         * page/AXObjectCache.h:
   35738         (WebCore::AXObjectCache::get):
   35739         (WebCore::AXObjectCache::removeAXID):
   35740         * page/AccessibilityObject.cpp: Added.
   35741         (WebCore::AccessibilityObject::AccessibilityObject):
   35742         (WebCore::AccessibilityObject::~AccessibilityObject):
   35743         (WebCore::AccessibilityObject::create):
   35744         (WebCore::AccessibilityObject::detach):
   35745         (WebCore::AccessibilityObject::firstChild):
   35746         (WebCore::AccessibilityObject::lastChild):
   35747         (WebCore::AccessibilityObject::previousSibling):
   35748         (WebCore::AccessibilityObject::nextSibling):
   35749         (WebCore::AccessibilityObject::parentObject):
   35750         (WebCore::AccessibilityObject::parentObjectUnignored):
   35751         (WebCore::AccessibilityObject::isWebArea):
   35752         (WebCore::AccessibilityObject::isImageButton):
   35753         (WebCore::AccessibilityObject::isAnchor):
   35754         (WebCore::AccessibilityObject::isTextControl):
   35755         (WebCore::AccessibilityObject::isImage):
   35756         (WebCore::AccessibilityObject::isAttachment):
   35757         (WebCore::isPasswordFieldElement):
   35758         (WebCore::AccessibilityObject::isPasswordField):
   35759         (WebCore::AccessibilityObject::headingLevel):
   35760         (WebCore::AccessibilityObject::isHeading):
   35761         (WebCore::AccessibilityObject::anchorElement):
   35762         (WebCore::isCheckboxOrRadio):
   35763         (WebCore::AccessibilityObject::actionElement):
   35764         (WebCore::AccessibilityObject::mouseButtonListener):
   35765         (WebCore::AccessibilityObject::helpText):
   35766         (WebCore::AccessibilityObject::textUnderElement):
   35767         (WebCore::AccessibilityObject::hasIntValue):
   35768         (WebCore::AccessibilityObject::intValue):
   35769         (WebCore::AccessibilityObject::stringValue):
   35770         (WebCore::labelForElement):
   35771         (WebCore::AccessibilityObject::title):
   35772         (WebCore::AccessibilityObject::accessibilityDescription):
   35773         (WebCore::AccessibilityObject::boundingBoxRect):
   35774         (WebCore::AccessibilityObject::size):
   35775         (WebCore::AccessibilityObject::linkedUIElement):
   35776         (WebCore::AccessibilityObject::accessibilityShouldUseUniqueId):
   35777         (WebCore::AccessibilityObject::accessibilityIsIgnored):
   35778         (WebCore::AccessibilityObject::loaded):
   35779         (WebCore::AccessibilityObject::layoutCount):
   35780         (WebCore::AccessibilityObject::textLength):
   35781         (WebCore::AccessibilityObject::selectedText):
   35782         (WebCore::AccessibilityObject::selection):
   35783         (WebCore::AccessibilityObject::selectedTextRange):
   35784         (WebCore::AccessibilityObject::setSelectedText):
   35785         (WebCore::AccessibilityObject::setSelectedTextRange):
   35786         (WebCore::AccessibilityObject::makeRangeVisible):
   35787         (WebCore::AccessibilityObject::url):
   35788         (WebCore::AccessibilityObject::isVisited):
   35789         (WebCore::AccessibilityObject::isFocused):
   35790         (WebCore::AccessibilityObject::setFocused):
   35791         (WebCore::AccessibilityObject::setValue):
   35792         (WebCore::AccessibilityObject::isEnabled):
   35793         (WebCore::AccessibilityObject::press):
   35794         (WebCore::AccessibilityObject::topRenderer):
   35795         (WebCore::AccessibilityObject::textControl):
   35796         (WebCore::AccessibilityObject::widget):
   35797         (WebCore::AccessibilityObject::axObjectCache):
   35798         (WebCore::AccessibilityObject::documentLinks):
   35799         (WebCore::AccessibilityObject::documentFrameView):
   35800         (WebCore::AccessibilityObject::frameViewIfRenderView):
   35801         (WebCore::AccessibilityObject::visiblePositionRange):
   35802         (WebCore::AccessibilityObject::doAXTextMarkerRangeForLine):
   35803         (WebCore::AccessibilityObject::doAXTextMarkerRangeForUnorderedTextMarkers):
   35804         (WebCore::AccessibilityObject::doAXLeftWordTextMarkerRangeForTextMarker):
   35805         (WebCore::AccessibilityObject::doAXRightWordTextMarkerRangeForTextMarker):
   35806         (WebCore::updateAXLineStartForVisiblePosition):
   35807         (WebCore::AccessibilityObject::doAXLeftLineTextMarkerRangeForTextMarker):
   35808         (WebCore::AccessibilityObject::doAXRightLineTextMarkerRangeForTextMarker):
   35809         (WebCore::AccessibilityObject::doAXSentenceTextMarkerRangeForTextMarker):
   35810         (WebCore::AccessibilityObject::doAXParagraphTextMarkerRangeForTextMarker):
   35811         (WebCore::startOfStyleRange):
   35812         (WebCore::endOfStyleRange):
   35813         (WebCore::AccessibilityObject::doAXStyleTextMarkerRangeForTextMarker):
   35814         (WebCore::AccessibilityObject::textMarkerRangeForRange):
   35815         (WebCore::AccessibilityObject::stringForReplacedNode):
   35816         (WebCore::AccessibilityObject::doAXStringForTextMarkerRange):
   35817         (WebCore::AccessibilityObject::doAXBoundsForTextMarkerRange):
   35818         (WebCore::AccessibilityObject::doAXLengthForTextMarkerRange):
   35819         (WebCore::AccessibilityObject::doSetAXSelectedTextMarkerRange):
   35820         (WebCore::AccessibilityObject::doAXTextMarkerForPosition):
   35821         (WebCore::AccessibilityObject::doAXNextTextMarkerForTextMarker):
   35822         (WebCore::AccessibilityObject::doAXPreviousTextMarkerForTextMarker):
   35823         (WebCore::AccessibilityObject::doAXNextWordEndTextMarkerForTextMarker):
   35824         (WebCore::AccessibilityObject::doAXPreviousWordStartTextMarkerForTextMarker):
   35825         (WebCore::AccessibilityObject::doAXNextLineEndTextMarkerForTextMarker):
   35826         (WebCore::AccessibilityObject::doAXPreviousLineStartTextMarkerForTextMarker):
   35827         (WebCore::AccessibilityObject::doAXNextSentenceEndTextMarkerForTextMarker):
   35828         (WebCore::AccessibilityObject::doAXPreviousSentenceStartTextMarkerForTextMarker):
   35829         (WebCore::AccessibilityObject::doAXNextParagraphEndTextMarkerForTextMarker):
   35830         (WebCore::AccessibilityObject::doAXPreviousParagraphStartTextMarkerForTextMarker):
   35831         (WebCore::AccessibilityObject::textMarkerForIndex):
   35832         (WebCore::AccessibilityObject::doAXUIElementForTextMarker):
   35833         (WebCore::AccessibilityObject::doAXLineForTextMarker):
   35834         (WebCore::AccessibilityObject::rangeForTextMarkerRange):
   35835         (WebCore::AccessibilityObject::indexForTextMarker):
   35836         (WebCore::AccessibilityObject::doAXRangeForLine):
   35837         (WebCore::AccessibilityObject::doAXRangeForPosition):
   35838         (WebCore::AccessibilityObject::doAXRangeForIndex):
   35839         (WebCore::AccessibilityObject::doAXStyleRangeForIndex):
   35840         (WebCore::AccessibilityObject::doAXStringForRange):
   35841         (WebCore::AccessibilityObject::doAXBoundsForRange):
   35842         (WebCore::AccessibilityObject::doAXLineForIndex):
   35843         (WebCore::AccessibilityObject::doAccessibilityHitTest):
   35844         (WebCore::AccessibilityObject::focusedUIElement):
   35845         (WebCore::AccessibilityObject::observableObject):
   35846         (WebCore::AccessibilityObject::roleValue):
   35847         (WebCore::AccessibilityObject::canSetFocusAttribute):
   35848         (WebCore::AccessibilityObject::canSetValueAttribute):
   35849         (WebCore::AccessibilityObject::canSetTextRangeAttributes):
   35850         (WebCore::AccessibilityObject::childrenChanged):
   35851         (WebCore::AccessibilityObject::clearChildren):
   35852         (WebCore::AccessibilityObject::hasChildren):
   35853         (WebCore::AccessibilityObject::addChildren):
   35854         (WebCore::AccessibilityObject::axObjectID):
   35855         (WebCore::AccessibilityObject::setAXObjectID):
   35856         (WebCore::AccessibilityObject::removeAXObjectID):
   35857         * page/AccessibilityObject.h: Added.
   35858         (WebCore::VisiblePositionRange::VisiblePositionRange):
   35859         (WebCore::VisiblePositionRange::isNull):
   35860         (WebCore::AccessibilityObject::detached):
   35861         (WebCore::AccessibilityObject::PlainTextRange::PlainTextRange):
   35862         (WebCore::AccessibilityObject::PlainTextRange::isNull):
   35863         (WebCore::AccessibilityObject::renderer):
   35864         (WebCore::AccessibilityObject::children):
   35865         (WebCore::AccessibilityObject::wrapper):
   35866         (WebCore::AccessibilityObject::setWrapper):
   35867         * page/mac/AXObjectCacheMac.mm:
   35868         (WebCore::AXObjectCache::~AXObjectCache):
   35869         (WebCore::AXObjectCache::get):
   35870         (WebCore::AXObjectCache::remove):
   35871         (WebCore::AXObjectCache::getAXID):
   35872         (WebCore::AXObjectCache::removeAXID):
   35873         (WebCore::AXObjectCache::textMarkerForVisiblePosition):
   35874         (WebCore::AXObjectCache::childrenChanged):
   35875         (WebCore::AXObjectCache::postNotification):
   35876         (WebCore::AXObjectCache::postNotificationToElement):
   35877         * page/mac/AccessibilityObjectMac.mm: Added.
   35878         (createAccessibilityRoleMap):
   35879         (RoleEntry::):
   35880         (roleValueToNSString):
   35881         (AccessibilityObject::attachmentView):
   35882         (AccessibilityObject::performPressActionForAttachment):
   35883         (AccessibilityObject::textMarkerRange):
   35884         (AccessibilityObject::textMarkerForVisiblePosition):
   35885         (AccessibilityObject::startTextMarker):
   35886         (AccessibilityObject::visiblePositionForTextMarker):
   35887         (AccessibilityObject::visiblePositionForStartOfTextMarkerRange):
   35888         (AccessibilityObject::visiblePositionForEndOfTextMarkerRange):
   35889         (AccessibilityObject::textMarkerRangeFromVisiblePositions):
   35890         (AccessibilityObject::textMarkerRangeForSelection):
   35891         (AccessibilityObject::textMarkerRangeFromMarkers):
   35892         (AccessibilityObject::convertViewRectToScreenCoords):
   35893         (AccessibilityObject::convertAbsolutePointToViewCoords):
   35894         (AccessibilityObject::convertWidgetChildrenToNSArray):
   35895         (AccessibilityObject::position):
   35896         (AccessibilityObject::role):
   35897         (AccessibilityObject::subrole):
   35898         (AccessibilityObject::roleDescription):
   35899         (blockquoteLevel):
   35900         (AccessibilityObject::AXAttributeStringSetElement):
   35901         (AXAttributeStringSetBlockquoteLevel):
   35902         (CreateCGColorIfDifferent):
   35903         (AXAttributeStringSetColor):
   35904         (AXAttributeStringSetNumber):
   35905         (AXAttributeStringSetFont):
   35906         (AXAttributeStringSetStyle):
   35907         (AccessibilityObject::AXAttributeStringSetHeadingLevel):
   35908         (AccessibilityObject::AXLinkElementForNode):
   35909         (AXAttributeStringSetSpelling):
   35910         (AccessibilityObject::AXAttributedStringAppendText):
   35911         (nsStringForReplacedNode):
   35912         (AccessibilityObject::doAXAttributedStringForTextMarkerRange):
   35913         (AccessibilityObject::doAXAttributedStringForRange):
   35914         (AccessibilityObject::doAXRTFForRange):
   35915         * page/mac/AccessibilityObjectWrapper.h: Added.
   35916         * page/mac/AccessibilityObjectWrapper.mm: Added.
   35917         (-[AccessibilityObjectWrapper initWithAccessibilityObject:]):
   35918         (-[AccessibilityObjectWrapper unregisterUniqueIdForUIElement]):
   35919         (-[AccessibilityObjectWrapper detach]):
   35920         (-[AccessibilityObjectWrapper accessibilityObject]):
   35921         (-[AccessibilityObjectWrapper accessibilityActionNames]):
   35922         (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
   35923         (-[AccessibilityObjectWrapper visiblePositionRangeForTextMarkerRange:]):
   35924         (-[AccessibilityObjectWrapper renderWidgetChildren]):
   35925         (convertToNSArray):
   35926         (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
   35927         (-[AccessibilityObjectWrapper accessibilityFocusedUIElement]):
   35928         (-[AccessibilityObjectWrapper accessibilityHitTest:]):
   35929         (-[AccessibilityObjectWrapper accessibilityIsAttributeSettable:]):
   35930         (-[AccessibilityObjectWrapper accessibilityIsIgnored]):
   35931         (-[AccessibilityObjectWrapper accessibilityParameterizedAttributeNames]):
   35932         (-[AccessibilityObjectWrapper accessibilityPerformAction:]):
   35933         (-[AccessibilityObjectWrapper accessibilitySetValue:forAttribute:]):
   35934         (rendererForView):
   35935         (-[AccessibilityObjectWrapper _accessibilityParentForSubview:]):
   35936         (-[AccessibilityObjectWrapper accessibilityActionDescription:]):
   35937         (-[AccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):
   35938         (-[AccessibilityObjectWrapper accessibilityShouldUseUniqueId]):
   35939         * page/mac/WebCoreAXObject.h: Removed.
   35940         * page/mac/WebCoreAXObject.mm: Removed.
   35941         * rendering/RenderMenuList.cpp:
   35942         (WebCore::RenderMenuList::selectElement):
   35943         * rendering/RenderMenuList.h:
   35944 
   35945 2008-03-31  Dan Bernstein  <mitz (a] apple.com>
   35946 
   35947         - fix previous attempted fixes
   35948 
   35949         * platform/qt/TemporaryLinkStubs.cpp:
   35950         (PluginDatabase::getPluginPathsInDirectories):
   35951         * platform/wx/TemporaryLinkStubs.cpp:
   35952         (PluginDatabase::getPluginPathsInDirectories):
   35953 
   35954 2008-03-31  Dan Bernstein  <mitz (a] apple.com>
   35955 
   35956         - fix Qt link stubs
   35957 
   35958         * platform/qt/TemporaryLinkStubs.cpp:
   35959         (PluginDatabase::getPluginPathsInDirectories):
   35960         (PluginDatabase::isPreferredPluginDirectory):
   35961 
   35962 2008-03-31  Dan Bernstein  <mitz (a] apple.com>
   35963 
   35964         - try to fix the Wx build
   35965 
   35966         * platform/wx/TemporaryLinkStubs.cpp:
   35967         (PluginDatabase::getPluginPathsInDirectories):
   35968         (PluginDatabase::isPreferredPluginDirectory):
   35969 
   35970 2008-03-31  Dan Bernstein  <mitz (a] apple.com>
   35971 
   35972         - Gtk and Qt build fixes
   35973 
   35974         * platform/graphics/gtk/FontCustomPlatformData.cpp:
   35975         (WebCore::FontCustomPlatformData::fontPlatformData):
   35976         * platform/graphics/gtk/FontCustomPlatformData.h:
   35977         * platform/graphics/qt/FontCustomPlatformData.cpp:
   35978         (WebCore::FontCustomPlatformData::fontPlatformData):
   35979         * platform/graphics/qt/FontCustomPlatformData.h:
   35980 
   35981 2008-03-31  Dan Bernstein  <mitz (a] apple.com>
   35982 
   35983         - Mac build fix
   35984 
   35985         * platform/graphics/mac/FontCustomPlatformData.cpp:
   35986         (WebCore::FontCustomPlatformData::fontPlatformData):
   35987         * platform/graphics/mac/FontCustomPlatformData.h:
   35988 
   35989 2008-03-31  Dan Bernstein  <mitz (a] apple.com>
   35990 
   35991         Reviewed by Darin Adler.
   35992 
   35993         - fix <rdar://problem/5792638> @font-face with downloadable fonts doesn't work with GDI text
   35994 
   35995         * WebCore.vcproj/WebCore.vcproj: Added GetEOTHeader.{h,cpp}
   35996 
   35997         * css/CSSFontFaceSource.cpp:
   35998         (WebCore::CSSFontFaceSource::getFontData): Changed to pass the rendering
   35999         mode to CachedFont::platformDataFromCustomData().
   36000 
   36001         * loader/CachedFont.cpp:
   36002         (WebCore::CachedFont::platformDataFromCustomData): Added a rendering
   36003         mode parameter which is passed down to
   36004         FontCustomPlatformData::fontPlatformData().
   36005 
   36006         * loader/CachedFont.h:
   36007 
   36008         * platform/graphics/win/FontCacheWin.cpp:
   36009         (WebCore::FontCache::fontExists): Changed the number 5 to the named
   36010         constant CLEARTYPE_QUALITY.
   36011 
   36012         * platform/graphics/win/FontCustomPlatformData.cpp:
   36013         (WebCore::FontCustomPlatformData::~FontCustomPlatformData): Added code
   36014         to delete the embedded font reference.
   36015         (WebCore::FontCustomPlatformData::fontPlatformData): Added code to
   36016         create an HFONT from the embedded font reference and pass it along with
   36017         the CGFontRef to the FontPlatformData constructor. Added a rendering
   36018         mode parameter which is passed down to the FontPlatformData constructor.
   36019         (WebCore::EOTStream::EOTStream): Added this helper class used to feed
   36020         data to TTLoadEmbeddedFont().
   36021         (WebCore::EOTStream::read): Added.
   36022         (WebCore::readEmbedProc): Added this TTLoadEmbeddedFont() callback.
   36023         (WebCore::createUniqueFontName): Added. Creates a unique GUID-derived
   36024         font name. 
   36025         (WebCore::createFontCustomPlatformData): Added code to make the font
   36026         accessible to GDI by creating an Embedded OpenType stream and
   36027         activating it in the process under a globally-unique name.
   36028 
   36029         * platform/graphics/win/FontCustomPlatformData.h:
   36030         Added a font reference data member which holds the embedded font.
   36031         (WebCore::FontCustomPlatformData::FontCustomPlatformData): Added a
   36032         rendering mode parameter.
   36033 
   36034         * platform/graphics/win/FontPlatformData.h:
   36035         (WebCore::FontPlatformData::FontPlatformData): Made this class always
   36036         own the CGFontRef and the HFONT by turning these data members into a
   36037         RetainPtr and a RefPtr around a RefCountedHFONT.
   36038         Added an HFONT parameter to the CGFontRef-based constructor.
   36039         Made platformDataInit() private.
   36040         (WebCore::FontPlatformData::hfont):
   36041         (WebCore::FontPlatformData::cgFont):
   36042         (WebCore::FontPlatformData::hash):
   36043         (WebCore::FontPlatformData::RefCountedHFONT::RefCountedHFONT): Added.
   36044         (WebCore::FontPlatformData::RefCountedHFONT::~RefCountedHFONT):
   36045         (WebCore::FontPlatformData::RefCountedHFONT::hfont):
   36046         (WebCore::FontPlatformData::RefCountedHFONT::hash):
   36047 
   36048         * platform/graphics/win/FontPlatformDataCGWin.cpp:
   36049         (WebCore::FontPlatformData::platformDataInit): Changed to take
   36050         ownership of the CGFontRef created here.
   36051         (WebCore::FontPlatformData::FontPlatformData): Added an HFONT parameter
   36052         and a useGDI flag.
   36053 
   36054         * platform/graphics/win/FontPlatformDataWin.cpp:
   36055         (WebCore::FontPlatformData::FontPlatformData): Changed to take ownership
   36056         of the HFONT.
   36057 
   36058         * platform/graphics/win/GetEOTHeader.cpp: Added.
   36059         (WebCore::BigEndianUShort::operator unsigned short):
   36060         (WebCore::BigEndianULong::operator unsigned):
   36061         (WebCore::appendBigEndianStringToEOTHeader):
   36062         (WebCore::getEOTHeader): Added. Creates an Embedded OpenType (.eot)
   36063         header for the given font data, making it suitable as input for
   36064         TTLoadEmbeddedFont.
   36065 
   36066         * platform/graphics/win/GetEOTHeader.h: Added.
   36067 
   36068         * platform/graphics/win/SimpleFontDataCGWin.cpp:
   36069         (WebCore::SimpleFontData::platformDestroy): Removed code to delete parts
   36070         of the FontPlatformData, since they are now always owned and managed
   36071         by the FontPlatformData.
   36072 
   36073 2008-03-31  Darin Adler  <darin (a] apple.com>
   36074 
   36075         Reviewed by Anders.
   36076 
   36077         - fix crash seen on buildbot (regression from a recent speedup)
   36078 
   36079         * html/HTMLDocument.cpp:
   36080         (WebCore::HTMLDocument::createElement): Check validity before calling isLower, since
   36081         that takes care of the null string case.
   36082 
   36083 2008-03-31  Dan Bernstein  <mitz (a] apple.com>
   36084 
   36085         Reviewed by John Sullivan.
   36086 
   36087         - fix <rdar://problem/5741075> Google Maps: cursor and placemarks don't match up
   36088 
   36089         * platform/win/CursorWin.cpp:
   36090         (WebCore::Cursor::Cursor): Set the 1-bit mask for full-alpha cursors
   36091         to fully opaque. The mask is ignored and the alpha values from the
   36092         32-bit image are used except in the case of a fully-transparent image,
   36093         in which the fully-opaque 1-bit mask is required to get transparency.
   36094 
   36095 2008-03-31  Brady Eidson  <beidson (a] apple.com>
   36096 
   36097         Reviewed by Jon Honeycutt
   36098 
   36099         Move a WebArchive loading check into WebCore
   36100         
   36101         * loader/FrameLoader.cpp:
   36102         (WebCore::FrameLoader::committedLoad): Don't call the client method if currently loading a WebArchive
   36103 
   36104 2008-03-31  Brady Eidson  <beidson (a] apple.com>
   36105 
   36106         Reviewed by Oliver Hunt
   36107 
   36108         "Turn on" WebArchives for Windows
   36109         
   36110         Thought I'd done this already, but I hadn't!
   36111 
   36112         * platform/MIMETypeRegistry.cpp:
   36113         (WebCore::initializeSupportedNonImageMimeTypes): Apply known ArchiveFactory MIME types
   36114 
   36115 2008-03-31  Dan Bernstein  <mitz (a] apple.com>
   36116 
   36117         Reviewed by Dave Hyatt.
   36118 
   36119         - fix http://bugs.webkit.org/show_bug.cgi?id=18076
   36120           Box disappears after CSS Transition completes
   36121 
   36122         * page/AnimationController.cpp: Changed the BLEND_MAYBE_INVALID_COLOR
   36123         macro to not blend two invalid colors.
   36124         * rendering/RenderStyle.cpp:
   36125         (WebCore::StyleBackgroundData::StyleBackgroundData): Added missing
   36126         copying of the m_color data member.
   36127 
   36128 2008-03-31  Julien Chaffraix  <jchaffraix (a] webkit.org>
   36129 
   36130         Reviewed by Darin.
   36131 
   36132         Bug 18177: m_encoding is used twice in XMLHttpRequest
   36133         http://bugs.webkit.org/show_bug.cgi?id=18177
   36134 
   36135         - Change XMLHttpRequest variable m_encoding to m_responseEncoding.
   36136 
   36137         - Change send local variable m_encoding to encoding.
   36138 
   36139         No test case (no functionnal change).
   36140 
   36141         * platform/network/ResourceResponseBase.h: Removed unused variable.
   36142         * xml/XMLHttpRequest.cpp:
   36143         (WebCore::XMLHttpRequest::send): Changed local m_encoding to encoding.
   36144         (WebCore::XMLHttpRequest::didReceiveResponse): m_encoding -> m_responseEncoding.
   36145         (WebCore::XMLHttpRequest::didReceiveData): Ditto.
   36146         * xml/XMLHttpRequest.h: Change m_encoding to m_responseEncoding to disambiguate
   36147         the name as it is only used for response.
   36148 
   36149 2008-03-27  Adam Roben  <aroben (a] apple.com>
   36150 
   36151         Pass the right ExecStates to toJS when creating JS wrappers for
   36152         objects from the inspected page
   36153 
   36154         We now use an ExecState from the inspected page to create the JS
   36155         wrappers for objects from the inspected page, rather than use an
   36156         ExecState from the Inspector.
   36157 
   36158         Reviewed by Tim Hatcher.
   36159 
   36160         * page/InspectorController.cpp:
   36161         (WebCore::getResourceDocumentNode):
   36162         (WebCore::InspectorController::focusNode):
   36163         (WebCore::InspectorController::addDatabaseScriptResource):
   36164 
   36165 2008-03-31  Adam Roben  <aroben (a] apple.com>
   36166 
   36167         Stop relying on functions added to prototypes in the Inspector being
   36168         callable on objects from the inspected window
   36169 
   36170         Reviewed by Tim Hatcher.
   36171 
   36172         * page/inspector/Console.js:
   36173         (WebInspector.ConsolePanel._formatnode): Use nodeTitleInfo.call(node)
   36174         instead of node.titleInfo().
   36175         * page/inspector/StylesSidebarPane.js: Changed uses of
   36176         getShorthandValue, getShorthandPriority, getLonghandProperties, and
   36177         getUniqueStyleProperties to call them as functions instead of as
   36178         methods on the CSSStyleDeclaration objects.
   36179         * page/inspector/utilities.js: Removed Node.prototype.titleInfo, and
   36180         changed our CSSStyleDeclaration methods to just be standalone
   36181         functions.
   36182 
   36183 2008-03-26  Adam Roben  <aroben (a] apple.com>
   36184 
   36185         Fix an exception while adding a message to the console
   36186 
   36187         Reviewed by Mark Rowe.
   36188 
   36189         * page/inspector/ConsolePanel.js: Don't call addMessageToSource if the
   36190         panel has no such method. This can happen if we get a message for,
   36191         e.g., a Database.
   36192 
   36193 2008-03-31  Brady Eidson  <beidson (a] apple.com>
   36194 
   36195         Reviewed by Darin and Mitz's rubber stamp
   36196 
   36197         Remove dataForArchivedSelection(WebCore::Frame*) from the EditorClient - only usage is now directly in WebCore
   36198 
   36199         * page/EditorClient.h:
   36200         * svg/graphics/SVGImageEmptyClients.h:
   36201 
   36202         * platform/mac/PasteboardMac.mm:
   36203         (WebCore::Pasteboard::writeSelection): Make the archive and get the data directly
   36204 
   36205 2008-03-31  Brady Eidson  <beidson (a] apple.com>
   36206 
   36207         Reviewed by Mitz Pettel
   36208 
   36209         Fix for http://bugs.webkit.org/show_bug.cgi?id=18183
   36210 
   36211         Despite the bug reporter's instructions, I have still not been able to actually reproduce this crash and 
   36212         therefore don't know how to make a layout test for it.
   36213 
   36214         * loader/archive/ArchiveResource.cpp:
   36215         (WebCore::ArchiveResource::response): Fix potential null dereference
   36216 
   36217 2008-03-29  Adam Roben  <aroben (a] apple.com>
   36218 
   36219         Fix Bug 18208: Acid3 test 65 takes >33ms due to plugin refreshing on
   36220         Windows
   36221 
   36222         <http://bugs.webkit.org/show_bug.cgi?id=18208>
   36223 
   36224         We now keep track of all the plugin paths found each time refresh() is
   36225         called. We'll only instantiate PluginPackages if there are new paths
   36226         or paths with changed timestamps since the last time refresh() was
   36227         called.
   36228 
   36229         Reviewed by Darin Adler and Anders Carlsson.
   36230 
   36231         * plugins/PluginDatabase.cpp:
   36232         (WebCore::PluginDatabase::refresh):
   36233           - Only instantiate PluginPackages if there is a new path or a path
   36234             with a changed timestamp since we last ran refresh().
   36235           - Cache the set of plugin paths found and their timestamps for the
   36236             next call to refresh().
   36237           - Only re-register MIME types if our set of plugins changed.
   36238         * plugins/PluginDatabase.h: Added a new member to cache plugin paths
   36239         and their timestamps.
   36240 
   36241 2008-03-29  Adam Roben  <aroben (a] apple.com>
   36242 
   36243         Separate filesystem crawling from PluginPackage instantiation
   36244 
   36245         Part of Bug 18208: Acid3 test 65 takes >33ms due to plugin refreshing
   36246         on Windows
   36247         <http://bugs.webkit.org/show_bug.cgi?id=18208>
   36248 
   36249         refresh() is now the only place where PluginPackages are instantiated.
   36250         refresh() now asks for a set of plugins that no longer exist on disk,
   36251         and the set of all plugin files in our plugin directories. Using these
   36252         two sets we can update our instantiated plugins without copying any
   36253         HashSets. The code in refresh() and in the platform-specific methods
   36254         to crawl the filesystem is now quite a bit simpler.
   36255 
   36256         PluginDatabase now stores both a PluginSet and a HashMap that maps
   36257         plugin paths to PluginPackages. This allows us to quickly determine
   36258         whether we already have a PluginPackage instantiated for a particular
   36259         path. The new add/remove methods handle the modification of these two
   36260         collections.
   36261 
   36262         A nice side effect of all this is that refresh() no longer copies any
   36263         HashSets.
   36264 
   36265         Reviewed by Mitz Pettel.
   36266 
   36267         * plugins/PluginDatabase.cpp:
   36268         (WebCore::PluginDatabase::refresh): Unload any plugins that have been
   36269         deleted from disk, and add any plugins that either weren't installed
   36270         last time, or have changed since last time.
   36271         (WebCore::PluginDatabase::getDeletedPlugins): Added.
   36272         (WebCore::PluginDatabase::add): Added. Returns whether or not the
   36273         PluginPackage was actually added to the database (duplicates won't be
   36274         added).
   36275         (WebCore::PluginDatabase::remove): Added.
   36276         * plugins/PluginDatabase.h:
   36277         * plugins/PluginPackage.h:
   36278         (WebCore::PluginPackage::path): Added.
   36279         (WebCore::PluginPackage::lastModified): Added.
   36280         * plugins/gtk/PluginDatabaseGtk.cpp:
   36281         (WebCore::PluginDatabase::getPluginPathsInDirectories): Renamed from
   36282         getPluginsInDirectories. Now fills a HashSet of Strings instead of
   36283         instantiated PluginPackages.
   36284         * plugins/win/PluginDatabaseWin.cpp:
   36285         (WebCore::addPluginPathsFromRegistry): Ditto.
   36286         (WebCore::PluginDatabase::getPluginPathsInDirectories): Ditto.
   36287 
   36288 2008-03-29  Adam Roben  <aroben (a] apple.com>
   36289 
   36290         Change getPluginsInDirectories to use an out parameter
   36291 
   36292         This avoids copying a HashSet.
   36293 
   36294         Reviewed by Mitz Pettel.
   36295 
   36296         * plugins/PluginDatabase.cpp:
   36297         (WebCore::PluginDatabase::refresh):
   36298         * plugins/PluginDatabase.h:
   36299         * plugins/gtk/PluginDatabaseGtk.cpp:
   36300         (WebCore::PluginDatabase::getPluginsInDirectories):
   36301         * plugins/win/PluginDatabaseWin.cpp:
   36302         (WebCore::PluginDatabase::getPluginsInDirectories):
   36303 
   36304 2008-03-29  Adam Roben  <aroben (a] apple.com>
   36305 
   36306         Make some PluginPackage methods return const String&
   36307 
   36308         Reviewed by Mitz Pettel.
   36309 
   36310         * plugins/PluginPackage.h:
   36311 
   36312 2008-03-29  Adam Roben  <aroben (a] apple.com>
   36313 
   36314         Rename PluginDatabase's "PluginPaths" to "PluginDirectories"
   36315 
   36316         The code expects these paths to all be directories, so it seems good
   36317         to refer to them as such.
   36318 
   36319         This patch just changes "Paths" to "Directories" and "Path" to
   36320         "Directory".
   36321 
   36322         Reviewed by Mitz Pettel.
   36323 
   36324         * platform/qt/TemporaryLinkStubs.cpp:
   36325         * platform/wx/TemporaryLinkStubs.cpp:
   36326         * plugins/PluginDatabase.cpp:
   36327         (WebCore::PluginDatabase::installedPlugins):
   36328         (WebCore::PluginDatabase::refresh):
   36329         * plugins/PluginDatabase.h:
   36330         (WebCore::PluginDatabase::setPluginDirectories):
   36331         * plugins/gtk/PluginDatabaseGtk.cpp:
   36332         (WebCore::PluginDatabase::getPluginsInDirectories):
   36333         * plugins/win/PluginDatabaseWin.cpp:
   36334         (WebCore::PluginDatabase::getPluginsInDirectories):
   36335         (WebCore::safariPluginsDirectory):
   36336         (WebCore::PluginDatabase::defaultPluginDirectories):
   36337         (WebCore::PluginDatabase::isPreferredPluginDirectory):
   36338         * plugins/win/PluginPackageWin.cpp:
   36339         (WebCore::PluginPackage::compare):
   36340 
   36341 2008-03-29  Adam Roben  <aroben (a] apple.com>
   36342 
   36343         Remove PlatformFileTime
   36344 
   36345         This typedef is time_t on all platforms, so we can just get rid of the
   36346         typedef.
   36347 
   36348         Reviewed by Mitz Pettel.
   36349 
   36350         * platform/FileSystem.h:
   36351         * plugins/PluginPackage.cpp:
   36352         * plugins/PluginPackage.h:
   36353 
   36354 2008-03-29  Adam Roben  <aroben (a] apple.com>
   36355 
   36356         Change PlatformFileTime on Windows to be time_t
   36357 
   36358         This matches other platforms and our existing functions in
   36359         FileSystem.h. It will also let us get rid of PlatformFileTime
   36360         altogether.
   36361 
   36362         Reviewed by Mitz Pettel.
   36363 
   36364         * platform/FileSystem.h: Change PlatformFileTime to time_t on Windows.
   36365         * plugins/win/PluginDatabaseWin.cpp:
   36366         (WebCore::addPluginsFromRegistry): Use getFileModificationTime to get
   36367         the modification time to pass to PluginPackage::create.
   36368         (WebCore::PluginDatabase::getPluginsInPaths): Ditto.
   36369         * plugins/win/PluginPackageWin.cpp:
   36370         (WebCore::PluginPackage::hash): Updated to use m_lastModified as a
   36371         time_t.
   36372         (WebCore::PluginPackage::equal): Ditto.
   36373 
   36374 2008-03-29  Adam Roben  <aroben (a] apple.com>
   36375 
   36376         Make PluginPackage work like our other RefCounted classes
   36377 
   36378         PluginPackage now starts with a ref count of 1, and its createPackage
   36379         method now returns a PassRefPtr instead of a raw pointer.
   36380 
   36381         Reviewed by Darin Adler.
   36382 
   36383         * plugins/PluginPackage.cpp:
   36384         (WebCore::PluginPackage::PluginPackage): Removed explicit call to the
   36385         RefCounted constructor so that we'll start with a ref count of 1.
   36386         (WebCore::PluginPackage::createPackage): Changed to return a
   36387         PassRefPtr.
   36388         * plugins/PluginPackage.h:
   36389         * plugins/gtk/PluginDatabaseGtk.cpp:
   36390         (WebCore::PluginDatabase::getPluginsInPaths): Changed to store the
   36391         newly-created PluginPackage in a RefPtr.
   36392         * plugins/win/PluginDatabaseWin.cpp:
   36393         (WebCore::addPluginsFromRegistry): Ditto.
   36394         (WebCore::PluginDatabase::getPluginsInPaths): Ditto.
   36395 
   36396 2008-03-29  Adam Roben  <aroben (a] apple.com>
   36397 
   36398         Fix Bug 18214: WebKit will sometimes load duplicate plugins
   36399 
   36400         <http://bugs.webkit.org/show_bug.cgi?id=18214>
   36401 
   36402         We now compare 3 things to determine if two PluginPackages are equal:
   36403           1) Name
   36404           2) Description
   36405           3) Supported MIME types
   36406 
   36407         This matches Gecko's equality logic for plugins (implemented in
   36408         nsPluginTag::Equals).
   36409 
   36410         Reviewed by Darin Adler.
   36411 
   36412         * plugins/win/PluginPackageWin.cpp:
   36413         (WebCore::PluginPackage::hash): Use the above-mentioned 3 criteria to
   36414         calculate the hash.
   36415         (WebCore::PluginPackage::equal): Use the above-mentioned 3 criteria to
   36416         determine equality.
   36417 
   36418 2008-03-31  Simon Hausmann  <hausmann (a] webkit.org>
   36419 
   36420         Fix the Qt build.
   36421 
   36422         ResourceHandleInternal.h references ResourceHandle::fireFailure, so include
   36423         ResourceHandle.h.
   36424 
   36425         * platform/network/ResourceHandleInternal.h:
   36426 
   36427 2008-03-31  Rob Buis  <buis (a] kde.org>
   36428 
   36429         Reviewed by Darin.
   36430 
   36431         http://bugs.webkit.org/show_bug.cgi?id=15595
   36432         marker property doesn't show up correctly as "shorthand" in inspector
   36433 
   36434         Make sure parsing the marker property sets the individual
   36435         marker properties as implicit with marker as shorthand.
   36436         Also let CSSStyleDecleration::getPropertyValue return
   36437         the correct value for the marker property.
   36438 
   36439         * css/CSSMutableStyleDeclaration.cpp:
   36440         (WebCore::CSSMutableStyleDeclaration::getPropertyValue):
   36441         * css/CSSParser.cpp:
   36442         * css/CSSParser.h:
   36443         (WebCore::ShorthandScope::ShorthandScope):
   36444         (WebCore::ShorthandScope::~ShorthandScope):
   36445         * css/SVGCSSParser.cpp:
   36446         (WebCore::CSSParser::parseSVGValue):
   36447 
   36448 2008-03-30  Eric Seidel  <eric (a] webkit.org>
   36449 
   36450         Reviewed by Oliver.
   36451 
   36452         Make AMatthews life easier -- fix the SVG_FILTERS build
   36453 
   36454         Build fix only, no tests.
   36455 
   36456         * svg/SVGComponentTransferFunctionElement.cpp:
   36457         (WebCore::SVGComponentTransferFunctionElement::SVGComponentTransferFunctionElement):
   36458         * svg/SVGFEColorMatrixElement.cpp:
   36459         (WebCore::SVGFEColorMatrixElement::SVGFEColorMatrixElement):
   36460         * svg/SVGFEDiffuseLightingElement.cpp:
   36461         * svg/SVGFEGaussianBlurElement.cpp:
   36462         * svg/SVGFEImageElement.cpp:
   36463         (WebCore::SVGFEImageElement::SVGFEImageElement):
   36464         * svg/SVGFESpecularLightingElement.cpp:
   36465         * svg/SVGFETurbulenceElement.cpp:
   36466         * svg/SVGFilterElement.cpp:
   36467         * svg/SVGFilterPrimitiveStandardAttributes.cpp:
   36468         * svg/graphics/filters/SVGFEBlend.cpp:
   36469         * svg/graphics/filters/SVGFEComponentTransfer.cpp:
   36470         * svg/graphics/filters/SVGFEComposite.cpp:
   36471         * svg/graphics/filters/SVGFEDiffuseLighting.cpp:
   36472         * svg/graphics/filters/SVGFEGaussianBlur.cpp:
   36473         * svg/graphics/filters/SVGFEImage.cpp:
   36474         * svg/graphics/filters/SVGFEMerge.cpp:
   36475         * svg/graphics/filters/SVGFEMorphology.cpp:
   36476         * svg/graphics/filters/SVGFEOffset.cpp:
   36477         * svg/graphics/filters/SVGFESpecularLighting.cpp:
   36478         * svg/graphics/filters/SVGFETurbulence.cpp:
   36479 
   36480 2008-03-30  Dan Bernstein  <mitz (a] apple.com>
   36481 
   36482         Reviewed by Sam Weinig.
   36483 
   36484         - fix http://bugs.webkit.org/show_bug.cgi?id=18115
   36485           REGRESSION (r31250): Incomplete repaint of GoogleReader sidebar while reading unread posts
   36486 
   36487         Test: fast/repaint/lines-with-layout-delta.html
   36488 
   36489         * rendering/RenderObject.cpp:
   36490         (WebCore::RenderObject::repaintRectangle): Made this method take layout
   36491         delta into account.
   36492 
   36493 2008-03-30  Dan Bernstein  <mitz (a] apple.com>
   36494 
   36495         Reviewed by Maciej Stachowiak.
   36496 
   36497         - fix assertion failure in CSSParser.cpp's equalIgnoringCase() when
   36498           parsing certain transforms.
   36499 
   36500         Test: fast/css/transform-function-lowercase-assert.html
   36501 
   36502         * css/CSSParser.cpp:
   36503         (WebCore::TransformOperationInfo::TransformOperationInfo): Changed to
   36504         always pass a lowercase string as the second argument of
   36505         equalIgnoringCase().
   36506 
   36507 2008-03-30  Mark Rowe  <mrowe (a] apple.com>
   36508 
   36509         ARM build fix.
   36510 
   36511         * platform/text/AtomicString.cpp:
   36512         (WebCore::equal): Use correct variable name.
   36513 
   36514 2008-03-30  Hiroyuki Ikezoe  <poincare (a] ikezoe.net>
   36515 
   36516         Reviewed by Alp Toker.
   36517 
   36518         http://bugs.webkit.org/show_bug.cgi?id=18036
   36519         Rendering invalid japanese characters with pango backend.
   36520 
   36521         * platform/graphics/gtk/FontPlatformDataPango.cpp:
   36522         (FontPlatformData::FontPlatformData): Set PangoFontDescription for
   36523         PangoContext explicitly to use proper font.
   36524 
   36525 2008-03-30  Rob Buis  <buis (a] kde.org>
   36526 
   36527         Reviewed by Oliver.
   36528 
   36529         http://bugs.webkit.org/show_bug.cgi?id=17633
   36530         SVG: modifying x & y attribute of text element from JS fails
   36531 
   36532         Make SVG text relayout when x, y attribute is changed from js.
   36533 
   36534         * svg/SVGTextContentElement.cpp:
   36535         (WebCore::SVGTextContentElement::isKnownAttribute):
   36536         * svg/SVGTextContentElement.h:
   36537         * svg/SVGTextElement.cpp:
   36538         (WebCore::SVGTextElement::svgAttributeChanged):
   36539         * svg/SVGTextElement.h:
   36540         * svg/SVGTextPositioningElement.cpp:
   36541         (WebCore::SVGTextPositioningElement::isKnownAttribute):
   36542         * svg/SVGTextPositioningElement.h:
   36543 
   36544 2008-03-28  Maciej Stachowiak  <mjs (a] apple.com>
   36545 
   36546         Reviewed by Oliver.
   36547 
   36548         - yet still more bindings speedup
   36549         
   36550         Make AtomicString straight from UString in handcoded bindings
   36551 
   36552         * bindings/js/JSElementCustom.cpp:
   36553         (WebCore::JSElement::setAttribute):
   36554         (WebCore::JSElement::setAttributeNS):
   36555         * dom/Document.cpp:
   36556         (WebCore::Document::createElement):
   36557         * dom/Document.h:
   36558         * html/HTMLDocument.cpp:
   36559         (WebCore::HTMLDocument::createElement):
   36560         * html/HTMLDocument.h:
   36561 
   36562 2008-03-29  Sam Weinig  <sam (a] webkit.org>
   36563 
   36564         Reviewed by Darin Adler.
   36565 
   36566         Fix for <rdar://problem/5828873>
   36567 
   36568         Since NSURL is allowing invalid urls to be loaded, we need to
   36569         check the URL validity at the ResourceHandle level and fire off
   36570         a cannotShowURL error.
   36571 
   36572         * loader/FrameLoader.cpp:
   36573         (WebCore::FrameLoader::cannotShowURLError):
   36574         * loader/FrameLoader.h:
   36575         * loader/ResourceLoader.cpp:
   36576         (WebCore::ResourceLoader::cannotShowURLError):
   36577         (WebCore::ResourceLoader::wasBlocked):
   36578         (WebCore::ResourceLoader::cannotShowURL):
   36579         * loader/ResourceLoader.h:
   36580         * platform/KURL.h:
   36581         (WebCore::KURL::isValid):
   36582         * platform/network/ResourceHandle.cpp:
   36583         (WebCore::ResourceHandle::create):
   36584         (WebCore::ResourceHandle::scheduleFailure):
   36585         (WebCore::ResourceHandle::fireFailure):
   36586         (WebCore::portAllowed):
   36587         * platform/network/ResourceHandle.h:
   36588         (WebCore::ResourceHandle::):
   36589         * platform/network/ResourceHandleClient.h:
   36590         (WebCore::ResourceHandleClient::cannotShowURL):
   36591         * platform/network/ResourceHandleInternal.h:
   36592         (WebCore::ResourceHandleInternal::ResourceHandleInternal):
   36593 
   36594 2008-03-29  Darin Adler  <darin (a] apple.com>
   36595 
   36596         Reviewed by Mitz.
   36597 
   36598         - more bindings speedup
   36599 
   36600         When I changed the temporary variables to be UString that means that the
   36601         valueToString functions also need to return UString to avoid converting
   36602         from UString to String twice.
   36603 
   36604         * bindings/js/kjs_binding.cpp:
   36605         (WebCore::valueToStringWithNullCheck): Changed return value to UString.
   36606         (WebCore::valueToStringWithUndefinedOrNullCheck): Ditto.
   36607         * bindings/js/kjs_binding.h: Ditto.
   36608 
   36609 2008-03-29  Darin Adler  <darin (a] apple.com>
   36610 
   36611         Reviewed by Sam.
   36612 
   36613         * DerivedSources.make: Removed temporary remove-stray-JSRGBColor build rule.
   36614 
   36615 2008-03-29  Darin Adler  <darin (a] apple.com>
   36616 
   36617         Reviewed by Sam.
   36618 
   36619         - tweak handling of the class attribute to speed up code that
   36620           sets it but never needs to parse it
   36621 
   36622         6% speedup of Acid3 test 26
   36623 
   36624         * css/CSSStyleSelector.cpp:
   36625         (WebCore::CSSStyleSelector::matchRules): Change to use non-virtual
   36626         classNames function since the hasClass bit can only be set for a
   36627         StyledElement.
   36628         (WebCore::CSSStyleSelector::checkOneSelector): Ditto. Also
   36629         streamlined the code a bit for the tag matching as well.
   36630 
   36631         * dom/ClassNames.cpp:
   36632         (WebCore::hasNonASCIIOrUpper): Added. This function does what other
   36633         callers seem to want isLower() to do. We should merge this with
   36634         isLower() in a subsequent cleanup pass.
   36635         (WebCore::ClassNamesData::createVector): Renamed from parseClassAttribute.
   36636         Turns the string into a vector.
   36637         (WebCore::ClassNamesData::containsAll): Added. Used by getElementsByClassName.
   36638 
   36639         * dom/ClassNames.h: Added a separate ClassNameData class so we could hold
   36640         the string and case folding flag as well as the vector. Changed ClassNames
   36641         to have a set function rather than a parseClassAttribute function. Removed
   36642         the "static" from isClassWhitespace. There's no reason to ask for internal linkage.
   36643 
   36644         * dom/ClassNodeList.cpp:
   36645         (WebCore::ClassNodeList::ClassNodeList): Use constructor instead of the
   36646         parseClassAttribute function.
   36647         (WebCore::ClassNodeList::nodeMatches): Get rid of unnneeded isElementNode
   36648         check, since hasClass will only be true for StyledElement nodes. Use the new
   36649         containsAll function in ClassNames instead of having a loop here.
   36650 
   36651         * dom/ClassNodeList.h: Removed unneeded forward declaration.
   36652 
   36653         * dom/Document.cpp: Removed unneeded include.
   36654 
   36655         * dom/Element.cpp:
   36656         (WebCore::Element::cloneNode): Changed code to copy attributes to use a
   36657         function call instead of the assignment operator. This paves the way to
   36658         making the function more efficient, using a virtual function.
   36659         (WebCore::Element::setAttributeMap): Updated for PassRefPtr and for name change
   36660         (element -> m_element).
   36661         (WebCore::Element::createAttributeMap): Changed to use create function instead of
   36662         calling the constructor directly.
   36663         * dom/Element.h: Removed unneeded virtual getClassNames function.
   36664         Changed the argument to setAttributeMap to be a PassRefPtr.
   36665 
   36666         * dom/NamedAttrMap.cpp:
   36667         (WebCore::NamedAttrMap::NamedAttrMap): Updated for name change (element -> m_element).
   36668         (WebCore::NamedAttrMap::getNamedItem): Ditto.
   36669         (WebCore::NamedAttrMap::removeNamedItem): Ditto.
   36670         (WebCore::NamedAttrMap::setNamedItem): Ditto.
   36671         (WebCore::NamedAttrMap::item): Ditto.
   36672         (WebCore::NamedAttrMap::detachFromElement): Ditto.
   36673         (WebCore::NamedAttrMap::setAttributes): Renamed this from the assignment operator.
   36674         (WebCore::NamedAttrMap::addAttribute): Ditto.
   36675         (WebCore::NamedAttrMap::removeAttribute): Ditto.
   36676         (WebCore::NamedAttrMap::isReadOnlyNode): Ditto.
   36677         * dom/NamedAttrMap.h: Removed the copy constructor and assignment operator and added
   36678         a new function, setAttributes, possibly to be made virtual in the future. Made
   36679         isReadOnlyNode non-virtual. Renamed element -> m_element. Made constructor protected
   36680         and added a create function.
   36681 
   36682         * dom/NamedMappedAttrMap.cpp:
   36683         (WebCore::NamedMappedAttrMap::NamedMappedAttrMap): Changed constructor parameter to
   36684         take a StyledElement.
   36685         (WebCore::NamedMappedAttrMap::setClass): Changed to use the new set function.
   36686 
   36687         * dom/NamedMappedAttrMap.h: Made constructor private and added a create function.
   36688         Replaced theparseClassAttribute function with clearClass and setClass functions.
   36689         Replaced the getClassNames function with a classNames function returning a reference
   36690         instead of a pointer.
   36691 
   36692         * dom/NamedNodeMap.h: Changed to start refcount at 1 instead of 0. Removed unneeded
   36693         virtual function isReadOnlyNode.
   36694 
   36695         * dom/StyledElement.cpp:
   36696         (WebCore::StyledElement::parseMappedAttribute): Rewrote class attribute handling to
   36697         use new function names and took out uneeded special case for null attribute.
   36698         (WebCore::StyledElement::createAttributeMap): Changed to use create function instead
   36699         of a direct call to new.
   36700 
   36701         * dom/StyledElement.h: Replaced the virtual getClassNames function with a non-virtual
   36702         inline classNames function.
   36703 
   36704         * html/HTMLElement.cpp:
   36705         (WebCore::HTMLElement::cloneNode): Changed code to copy attributes to use a
   36706         function call instead of the assignment operator.
   36707 
   36708         * html/HTMLTokenizer.cpp:
   36709         (WebCore::Token::addAttribute): Use create function instead of a a direct call
   36710         to new.
   36711 
   36712         * html/HTMLViewSourceDocument.cpp:
   36713         (WebCore::HTMLViewSourceDocument::createContainingTable): Use RefPtr and the new
   36714         create function.
   36715         (WebCore::HTMLViewSourceDocument::addViewSourceToken): Ditto.
   36716         (WebCore::HTMLViewSourceDocument::addSpanWithClassName): Ditto.
   36717         (WebCore::HTMLViewSourceDocument::addLine): Ditto.
   36718         (WebCore::HTMLViewSourceDocument::addText): Ditto.
   36719         (WebCore::HTMLViewSourceDocument::addLink): Ditto.
   36720         * html/HTMLViewSourceDocument.h: Ditto.
   36721 
   36722         * svg/SVGUseElement.cpp:
   36723         (WebCore::SVGUseElement::expandSymbolElementsInShadowTree): Changed code to copy
   36724         attributes to use a function call instead of the assignment operator.
   36725         (WebCore::SVGUseElement::transferUseAttributesToReplacedElement): Ditto.
   36726 
   36727 2008-03-29  Sam Weinig  <sam (a] webkit.org>
   36728 
   36729         Reviewed by Brady Eidson.
   36730 
   36731         Fix crash when canceling a resource load while port blocked failure
   36732         timer is going.
   36733 
   36734         Test: fast/loader/cancel-load-during-port-block-timer.html
   36735 
   36736         * platform/network/ResourceHandle.cpp:
   36737         (WebCore::ResourceHandle::scheduleBlockedFailure):
   36738         (WebCore::ResourceHandle::fireBlockedFailure):
   36739         * platform/network/ResourceHandleInternal.h:
   36740         (WebCore::ResourceHandleInternal::ResourceHandleInternal):
   36741         Make the Timer a member variable of ResourceHandleInternal so
   36742         that it can be canceled if the ResourceHandle is destroyed.
   36743 
   36744 2008-03-28  Stephanie  <slewis (a] apple.com>
   36745 
   36746         Fix 64bit build
   36747 
   36748         * WebCore.LP64.exp:
   36749         * loader/archive/cf/LegacyWebArchiveMac.mm:
   36750         (WebCore::createResourceResponseFromMacArchivedData):
   36751 
   36752 2008-03-28  Steve Falkenburg  <sfalken (a] apple.com>
   36753 
   36754         Enabled LTCG on files within "page".
   36755 
   36756         Rubber stamped by Oliver.
   36757 
   36758         * WebCore.vcproj/WebCore.vcproj:
   36759 
   36760 2008-03-28  Dan Bernstein  <mitz (a] apple.com>
   36761 
   36762         Reviewed by Dave Hyatt.
   36763 
   36764         - fix a percentage background position regression from r31389
   36765 
   36766         Test: fast/backgrounds/background-position-1.html
   36767 
   36768         * rendering/Length.h:
   36769         (WebCore::Length::calcValue): Divide by 100.
   36770         (WebCore::Length::calcMinValue): Ditto.
   36771 
   36772 2008-03-28  David Hyatt  <hyatt (a] apple.com>
   36773 
   36774         Back out the Ahem font antialiasing hack, since it is now no longer required for LCD antialiased text
   36775         to match the reference rendering on Acid 3.
   36776 
   36777         * platform/graphics/SimpleFontData.h:
   36778         * platform/graphics/mac/FontMac.mm:
   36779         (WebCore::Font::drawGlyphs):
   36780         * platform/graphics/mac/SimpleFontDataMac.mm:
   36781         (WebCore::SimpleFontData::platformInit):
   36782         * platform/graphics/win/FontCGWin.cpp:
   36783         (WebCore::Font::drawGlyphs):
   36784         * platform/graphics/win/SimpleFontDataCGWin.cpp:
   36785         (WebCore::SimpleFontData::platformInit):
   36786         * rendering/RenderBlock.cpp:
   36787         (WebCore::RenderBlock::positionNewFloats):
   36788 
   36789 2008-03-28  Brady Eidson  <beidson (a] apple.com>
   36790 
   36791         Reviewed by Darin Adler
   36792 
   36793         More Kit->Core WebArchive changes.
   36794 
   36795         Create an archive from the current selection in a frame
   36796 
   36797         * WebCore.base.exp:
   36798 
   36799         * loader/archive/cf/LegacyWebArchive.cpp:
   36800         (WebCore::LegacyWebArchive::createFromSelection):
   36801         * loader/archive/cf/LegacyWebArchive.h:
   36802 
   36803 2008-03-28  Kevin McCullough  <kmccullough (a] apple.com>
   36804 
   36805         - Somehow managed to duplicate code :(
   36806 
   36807         * xml/XMLHttpRequest.cpp:
   36808         (WebCore::XMLHttpRequest::didFinishLoading):
   36809 
   36810 2008-03-28  Kevin McCullough  <kmccullough (a] apple.com>
   36811 
   36812         - Missed some changes in previous checkin.
   36813 
   36814         * xml/XMLHttpRequest.cpp:
   36815         (WebCore::XMLHttpRequest::send): Get identifier from synchronous loader.
   36816         (WebCore::XMLHttpRequest::didFinishLoading):
   36817 
   36818 2008-03-28  Kevin McCullough  <kmccullough (a] apple.com>
   36819 
   36820         Reviewed by Adam.
   36821 
   36822         -<rdar://problem/5712804> XMLHttpRequests do not show response contents, preview images (14313)
   36823         -<rdar://problem/5712931> XMLHttpRequests should be shown separately and grouped (14315)
   36824         -<rdar://problem/5732836> XMLHttpRequest: Inspector should show network activity/XHR in Console (17233)
   36825         - Send the XMLHttpRequest data to the Inspector Controller.
   36826 
   36827         * loader/FrameLoader.cpp: Return the identifier for this resource since we need it in the XHR case.
   36828         (WebCore::FrameLoader::loadResourceSynchronously):
   36829         * loader/FrameLoader.h: Ditto.
   36830         * page/InspectorController.cpp:
   36831         (WebCore::XMLHttpRequestResource::XMLHttpRequestResource): We only need the data since the type will
   36832         be XHR and the encoding is not used (we decoded earlier).
   36833         (WebCore::XMLHttpRequestResource::~XMLHttpRequestResource): Locking is necessary when setting and clearing
   36834         the KJS::UString::Rep.
   36835         (WebCore::InspectorResource::setXMLHttpRequestProperties):
   36836         (WebCore::InspectorResource::sourceString): Return the decoded source.
   36837         (WebCore::addSourceToFrame): No longer do the decoding here, it has been encapsulated in the InspectorResource.
   36838         (WebCore::InspectorController::resourceRetrievedByXMLHttpRequest):
   36839         * page/InspectorController.h: Pass a UString instead of copying to a WebCore::String.  In case we
   36840         never ask for the string's contents this will save us an extra copy.
   36841         * xml/XMLHttpRequest.cpp:
   36842         (WebCore::XMLHttpRequest::send): In the synchronous load case we normally do not keep the identifier
   36843         but we need it to find the InspectorResource in order to tell it that it was loaded via XHR.
   36844         (WebCore::XMLHttpRequest::didFinishLoading): Tell the InspectorController that its resource was loaded
   36845         via XHR.
   36846         * xml/XMLHttpRequest.h: Ditto.
   36847 
   36848 2008-03-28  Brady Eidson  <beidson (a] apple.com>
   36849 
   36850         Reviewed by Sam Weinig
   36851 
   36852         WebArchive saga continues - Can now make archives from ranges in WebCore
   36853 
   36854         Again, previous layout test coverage exercised this code
   36855 
   36856         * WebCore.base.exp:
   36857 
   36858         * editing/markup.cpp:
   36859         (WebCore::createFullMarkup): Added a "markup from range" variant that copies the previous WebKit implementation
   36860         * editing/markup.h:
   36861 
   36862         * loader/archive/cf/LegacyWebArchive.cpp:
   36863         (WebCore::LegacyWebArchive::create):
   36864         * loader/archive/cf/LegacyWebArchive.h:
   36865 
   36866 2008-03-28  Stephanie Lewis  <slewis (a] apple.com>
   36867 
   36868         windows build fix.
   36869 
   36870         * platform/win/MainThreadWin.cpp:
   36871         (WebCore::initializeThreadingAndMainThread):
   36872 
   36873 2008-03-28  Brady Eidson  <beidson (a] apple.com>
   36874 
   36875         Reviewed by Sam Weinig
   36876 
   36877         More Kit->Core webarchive code movement
   36878 
   36879         * WebCore.base.exp:
   36880         * editing/markup.cpp:
   36881         (WebCore::createFullMarkup): Replacement for [DOMNode markupString], creating full markup at this node including 
   36882           the document type string, which the WebKit implementation did indirectly
   36883         * editing/markup.h:
   36884 
   36885 2008-03-28  Darin Adler  <darin (a] apple.com>
   36886 
   36887         Reviewed by Maciej.
   36888 
   36889         - cut down on copying and refcount churn a little by using references a bit more for
   36890           KURL and String
   36891 
   36892         * bindings/js/JSXMLHttpRequest.cpp:
   36893         (WebCore::jsXMLHttpRequestPrototypeFunctionOpen): Use const KURL& instead of KURL.
   36894         * css/StyleSheet.h:
   36895         (WebCore::StyleSheet::href): Return const String& instead of String.
   36896         (WebCore::StyleSheet::title): Ditto.
   36897         * dom/Document.cpp:
   36898         (WebCore::Document::completeURL): Use const KURL* for a local variable instead of
   36899         KURL to avoid copying the KURL.
   36900         * dom/Element.cpp:
   36901         (WebCore::Element::baseURI): Use const KURL& instead of KURL.
   36902         * html/HTMLAnchorElement.cpp:
   36903         (WebCore::HTMLAnchorElement::hostname): Ditto.
   36904         * html/HTMLFrameElementBase.cpp:
   36905         (WebCore::HTMLFrameElementBase::isURLAllowed): Ditto.
   36906         * html/HTMLKeygenElement.cpp: Removed unneeded include of KURL.
   36907         * page/ContextMenuController.cpp:
   36908         (WebCore::ContextMenuController::contextMenuItemSelected): Get rid of temporary
   36909         KURL.
   36910         * platform/SecurityOrigin.cpp:
   36911         (WebCore::SecurityOrigin::createForFrame): Use const KURL& instead of KURL.
   36912 
   36913 2008-03-28  Alexey Proskuryakov  <ap (a] webkit.org>
   36914 
   36915         Reviewed by Sam Weinig.
   36916 
   36917         Fix a dtoa thread safety issue.
   36918 
   36919         * ForwardingHeaders/kjs/InitializeThreading.h: Added.
   36920         * platform/MainThread.cpp:
   36921         * platform/MainThread.h:
   36922         (WebCore::initializeThreadingAndMainThread): Call KJS::initializeThreading instead of its
   36923         WTF counterpart.
   36924 
   36925 2008-03-28  Brent Fulgham  <bfulgham (a] gmail.com>
   36926 
   36927         Reviewed by Maciej, landed by Brady
   36928 
   36929         Correct build regression (http://bugs.webkit.org/show_bug.cgi?id=18148)
   36930 
   36931         * platform/graphics/win/GraphicsContextCairoWin.cpp:
   36932         (WebCore::GraphicsContext::getWindowsContext):
   36933         (WebCore::GraphicsContext::releaseWindowsContext):
   36934 
   36935 2008-03-28  Brady Eidson  <beidson (a] apple.com>
   36936 
   36937         Reviewed by Darin
   36938 
   36939         "Yet another transitional step" to empty out WebKit-based code for archiving.
   36940 
   36941         With this patch, the key operation of "Creating a WebArchive rooted at a single Node" takes place
   36942         entirely within WebCore, and opens the door to saving WebArchives on Windows.
   36943 
   36944         This is another "zero behavior change" patch, and current editing/ and webarchive/ layout tests
   36945         covered the relevant code
   36946 
   36947         * WebCore.base.exp:
   36948         * loader/archive/cf/LegacyWebArchive.cpp:
   36949         (WebCore::LegacyWebArchive::create):
   36950         * loader/archive/cf/LegacyWebArchive.h:
   36951 
   36952 2008-03-28  Jasper Bryant-Greene  <jasper (a] unix.geek.nz>
   36953 
   36954         Reviewed by Alp Toker.
   36955 
   36956         http://bugs.webkit.org/show_bug.cgi?id=18061
   36957         PlatformScrollBarGtk attempts to allocate negative width and/or height for widgets
   36958 
   36959         Missing clampNegativeToZero() call meant that we tried to allocate widgets with negative width and/or height.
   36960 
   36961         * platform/gtk/PlatformScrollBarGtk.cpp:
   36962         (PlatformScrollbar::geometryChanged):
   36963 
   36964 2008-03-28  Brady Eidson  <beidson (a] apple.com>
   36965 
   36966         Reviewed by Darin
   36967 
   36968         Using convertUTF16ToUTF8() from WTF, add a helper function that gives you a UTF8 SharedBuffer
   36969         created from a String.
   36970 
   36971         * ForwardingHeaders/wtf/unicode/UTF8.h: Added.
   36972         * platform/text/PlatformString.h:
   36973         * platform/text/String.cpp:
   36974         (WebCore::utf8Buffer):
   36975 
   36976 2008-03-28  Darin Adler  <darin (a] apple.com>
   36977 
   36978         Reviewed by Adam.
   36979 
   36980         - eliminate a tiny bit of unnecessary refcount churn
   36981 
   36982         * bindings/js/JSEventTargetBase.cpp:
   36983         (WebCore::eventNameForPropertyToken): Return const AtomicString&.
   36984         * bindings/js/JSEventTargetBase.h:
   36985         (WebCore::JSEventTargetBase::getValueProperty): Update for above change.
   36986         (WebCore::JSEventTargetBase::putValueProperty): Ditto.
   36987 
   36988 2008-03-28  Simon Hausmann  <hausmann (a] webkit.org>
   36989 
   36990         Fix the Qt build.
   36991 
   36992         * rendering/Length.h: Include wtf/MathExtras.h for round().
   36993 
   36994 2008-03-28  David Hyatt  <hyatt (a] apple.com>
   36995 
   36996         Fix a bug where background-position truncates instead of rounding when it evaluates to fractional
   36997         pixel values.  This matches other browsers.
   36998 
   36999         Reviewed by maciej
   37000 
   37001         Added fast/backgrounds/background-position-rounding.html
   37002 
   37003         * rendering/Length.h:
   37004         (WebCore::Length::calcValue):
   37005         (WebCore::Length::calcMinValue):
   37006         * rendering/RenderBox.cpp:
   37007         (WebCore::RenderBox::calculateBackgroundImageGeometry):
   37008 
   37009 2008-03-27  Kevin Ollivier  <kevino (a] theolliviers.com>
   37010 
   37011         wx build fix. Return a default value for operator == 
   37012         when !USE(WXGC) (not implemented in that case).
   37013 
   37014         * platform/graphics/wx/AffineTransformWx.cpp:
   37015         (WebCore::AffineTransform::operator== ):
   37016 
   37017 2008-03-27  Maciej Stachowiak  <mjs (a] apple.com>
   37018 
   37019         - fix build
   37020 
   37021         * svg/SVGGlyphMap.h:
   37022         (WebCore::GlyphMapNode::create):
   37023 
   37024 2008-03-27  Brady Eidson  <beidson (a] apple.com>
   37025 
   37026         Forgot a small requested change before committing
   37027 
   37028         * loader/DocumentLoader.cpp:
   37029         (WebCore::DocumentLoader::mainResource):
   37030 
   37031 2008-03-27  Brady Eidson  <beidson (a] apple.com>
   37032 
   37033         Reviewed by Adam Roben
   37034 
   37035         Move [WebDataSource mainResource] and [WebDataSource subresources] down into WebCore
   37036         as the push to core-ify WebArchives continues.
   37037 
   37038         This patch also introduces a behavior change.  WebCore allows ArchiveResources with null or empty data.  
   37039         WebKit has had the inexplicable distinction of allowing empty Data in a WebResource, but not null.  
   37040         Since WebResource is API, I decided to leave it be to avoid a behavior change.  But internally created resources 
   37041         (as in "while archiving a page") are accepting of null or empty data.
   37042 
   37043         This actually fixes a bug where not all subframes are archived, and resulted in a layout test change.
   37044 
   37045         * WebCore.base.exp:
   37046         * loader/DocumentLoader.cpp:
   37047         (WebCore::DocumentLoader::archiveResourceForURL): Make this const
   37048         (WebCore::DocumentLoader::mainResource):
   37049         (WebCore::DocumentLoader::subresource): Make this const and relocate
   37050         (WebCore::DocumentLoader::getSubresources):
   37051         * loader/DocumentLoader.h:
   37052 
   37053 2008-03-27  Maciej Stachowiak  <mjs (a] apple.com>
   37054 
   37055         Reviewed by Darin.
   37056 
   37057         - fixed many buildbot leaks in glyph map code
   37058 
   37059         * svg/SVGGlyphMap.h:
   37060         (WebCore::GlyphMapNode::create): Use explicit create pattern, to avoid overreffing and therefore leaking
   37061         these objects.
   37062         (WebCore::SVGGlyphMap::add): Call create instead of using new.
   37063 
   37064 2008-03-27  Maciej Stachowiak  <mjs (a] apple.com>
   37065 
   37066         Rubber stamped by Oliver.
   37067 
   37068         - re-fix Acid3, some code was incorrectly moved when fixing the Qt build
   37069 
   37070         * rendering/SVGRootInlineBox.cpp:
   37071         (WebCore::SVGRootInlineBox::buildLayoutInformationForTextBox):
   37072 
   37073 2008-03-27  Simon Hausmann  <hausmann (a] webkit.org>
   37074 
   37075         Fix compilation against Qt 4.4 and one missing SVG_FONTS #ifdef.
   37076 
   37077         * platform/graphics/qt/FontQt.cpp:
   37078         (WebCore::Font::floatWidth): Forgot to adjust this signture for Qt 4.4.
   37079         * bindings/js/JSSVGElementWrapperFactory.cpp: Added a missing #ifdef
   37080         for SVG_FONTS
   37081 
   37082 2008-03-27  Simon Hausmann  <hausmann (a] webkit.org>
   37083 
   37084         Reviewed by Eric Seidel.
   37085 
   37086         Fix the Qt build and the build without ENABLE(SVG_FONTS)
   37087 
   37088         * WebCore.pro: Removed ElementTimeControl.idl as it's ObjC only and
   37089         removed some SVG_FONTS specific idl files from IDL_BINDINGS for now
   37090         * bindings/js/JSSVGElementWrapperFactory.cpp: altGlyph is
   37091         ENABLE(SVG_FONTS) only
   37092         * platform/graphics/qt/FontQt.cpp:
   37093         (WebCore::Font::floatWidth): Adjust the function signature to Font.h
   37094         * rendering/SVGRootInlineBox.cpp:
   37095         (WebCore::SVGRootInlineBox::buildLayoutInformationForTextBox): Fix
   37096         compilation without SVG_FONTS
   37097         * svg/SVGAltGlyphElement.cpp: Compile only if ENABLE(SVG_FONTS)
   37098         * svg/SVGAltGlyphElement.h: Ditto
   37099         * svg/svgtags.in: hkern and altGlyph are SVG_FONTS only.
   37100         * svg/SVGTSpanElement.cpp:
   37101         (WebCore::SVGTSpanElement::childShouldCreateRenderer): Compile without
   37102         SVG_FONTS
   37103         * svg/SVGTextElement.cpp:
   37104         (WebCore::SVGTextElement::childShouldCreateRenderer): Ditto
   37105         * svg/SVGTextPathElement.cpp:
   37106         (WebCore::SVGTextPathElement::childShouldCreateRenderer):
   37107 
   37108 2008-03-26  Timothy Hatcher  <timothy (a] apple.com>
   37109 
   37110         Rename some Inspector files to facilitate the up-coming UI refresh changes.
   37111 
   37112         http://bugs.webkit.org/show_bug.cgi?id=17773
   37113 
   37114         Rubber-stamped by Adam Roben.
   37115 
   37116         * WebCore.vcproj/WebCore.vcproj:
   37117         * page/inspector/Console.js: Copied from page/inspector/ConsolePanel.js.
   37118         * page/inspector/ConsolePanel.js: Removed.
   37119         * page/inspector/DocumentPanel.js: Removed.
   37120         * page/inspector/ElementsPanel.js: Copied from page/inspector/DocumentPanel.js.
   37121         * page/inspector/FontPanel.js: Removed.
   37122         * page/inspector/FontView.js: Copied from page/inspector/FontPanel.js.
   37123         * page/inspector/ImagePanel.js: Removed.
   37124         * page/inspector/ImageView.js: Copied from page/inspector/ImagePanel.js.
   37125         * page/inspector/NetworkPanel.js: Removed.
   37126         * page/inspector/ResourcePanel.js: Removed.
   37127         * page/inspector/ResourceView.js: Copied from page/inspector/ResourcePanel.js.
   37128         * page/inspector/ResourcesPanel.js: Copied from page/inspector/NetworkPanel.js.
   37129         * page/inspector/SourcePanel.js: Removed.
   37130         * page/inspector/SourceView.js: Copied from page/inspector/SourcePanel.js.
   37131         * page/inspector/WebKit.qrc:
   37132         * page/inspector/inspector.html:
   37133 
   37134 2008-03-26  Steve Falkenburg  <sfalken (a] apple.com>
   37135 
   37136         Enable LTCG on css, dom files in WebCore
   37137 
   37138         Reviewed by Stephanie.
   37139 
   37140         * WebCore.vcproj/WebCore.vcproj:
   37141 
   37142 2008-03-26  Stephanie Lewis  <slewis (a] apple.com>
   37143 
   37144         Fix Windows Build
   37145 
   37146         * WebCore.vcproj/WebCore.vcproj:
   37147 
   37148 2008-03-26  Mark Rowe  <mrowe (a] apple.com>
   37149 
   37150         Speculative GTK build fix.
   37151 
   37152         * GNUmakefile.am:
   37153 
   37154 2008-03-26  Mark Rowe  <mrowe (a] apple.com>
   37155 
   37156         Mac build fix.
   37157 
   37158         * WebCore.base.exp:  Remove nonexistent symbol from the export file.
   37159 
   37160 2008-03-26  Sam Weinig  <sam (a] webkit.org>
   37161 
   37162         Try and fix Gtk+ again.
   37163 
   37164         * GNUmakefile.am:
   37165 
   37166 2008-03-26  Dan Bernstein  <mitz (a] apple.com>
   37167 
   37168         Reviewed by Dave Hyatt.
   37169 
   37170         - fix <rdar://problem/5816522> REGRESSION (r30111-30112): Tahoe web cam website has some text in Chinese or japanese
   37171 
   37172         * html/HTMLParser.cpp:
   37173         (WebCore::HTMLParser::insertNode): Added call to beginParsingChildren()
   37174         on the new node.
   37175         (WebCore::HTMLParser::handleError): Ditto.
   37176         (WebCore::HTMLParser::reopenResidualStyleTags): Ditto.
   37177         (WebCore::HTMLParser::pushBlock): Removed incorrect call to
   37178         beginParsingChildren() on the current node.
   37179         * manual-tests/applet-finish-parsing-children.html: Added.
   37180         * manual-tests/resources/DrawMessage.class: Added.
   37181 
   37182 2008-03-26  Brady Eidson  <beidson (a] apple.com>
   37183 
   37184         Reviewed by Darin
   37185 
   37186         When we create a WebArchive, we walk every node from some starting point, asking each node
   37187         along the way "What are your subresource URLs?"
   37188 
   37189         That logic is currently in DOMNode in WebKitMac - this patch moves that ability down into
   37190         WebCore::Node
   37191 
   37192         * WebCore.base.exp:
   37193         
   37194         * dom/Node.cpp:
   37195         (WebCore::Node::getSubresourceURLs):
   37196         (WebCore::Node::getSubresourceAttributeStrings):  Virtual and empty.  Subclasses of Node that have 
   37197           subresources will override it.
   37198 
   37199         * dom/ProcessingInstruction.cpp:
   37200         (WebCore::ProcessingInstruction::getSubresourceAttributeStrings):
   37201         * dom/ProcessingInstruction.h:
   37202         * html/HTMLBodyElement.cpp:
   37203         (WebCore::HTMLBodyElement::getSubresourceAttributeStrings):
   37204         * html/HTMLBodyElement.h:
   37205         * html/HTMLEmbedElement.cpp:
   37206         (WebCore::HTMLEmbedElement::getSubresourceAttributeStrings):
   37207         * html/HTMLEmbedElement.h:
   37208         * html/HTMLImageElement.cpp:
   37209         (WebCore::HTMLImageElement::getSubresourceAttributeStrings):
   37210         * html/HTMLImageElement.h:
   37211         * html/HTMLInputElement.cpp:
   37212         (WebCore::HTMLInputElement::getSubresourceAttributeStrings):
   37213         * html/HTMLInputElement.h:
   37214         * html/HTMLLinkElement.cpp:
   37215         (WebCore::HTMLLinkElement::getSubresourceAttributeStrings):
   37216         * html/HTMLLinkElement.h:
   37217         * html/HTMLObjectElement.cpp:
   37218         (WebCore::HTMLObjectElement::getSubresourceAttributeStrings):
   37219         * html/HTMLObjectElement.h:
   37220         * html/HTMLParamElement.cpp:
   37221         (WebCore::HTMLParamElement::getSubresourceAttributeStrings):
   37222         * html/HTMLParamElement.h:
   37223         * html/HTMLScriptElement.cpp:
   37224         (WebCore::HTMLScriptElement::getSubresourceAttributeStrings):
   37225         * html/HTMLScriptElement.h:
   37226         * html/HTMLTableCellElement.cpp:
   37227         (WebCore::HTMLTableCellElement::getSubresourceAttributeStrings):
   37228         * html/HTMLTableCellElement.h:
   37229         * html/HTMLTableElement.cpp:
   37230         (WebCore::HTMLTableElement::getSubresourceAttributeStrings):
   37231         * html/HTMLTableElement.h:
   37232         * svg/SVGCursorElement.cpp:
   37233         (WebCore::SVGCursorElement::getSubresourceAttributeStrings):
   37234         * svg/SVGCursorElement.h:
   37235         * svg/SVGFEImageElement.cpp:
   37236         (WebCore::SVGFEImageElement::getSubresourceAttributeStrings):
   37237         * svg/SVGFEImageElement.h:
   37238         * svg/SVGImageElement.cpp:
   37239         (WebCore::SVGImageElement::getSubresourceAttributeStrings):
   37240         * svg/SVGImageElement.h:
   37241         * svg/SVGScriptElement.cpp:
   37242         (WebCore::SVGScriptElement::getSubresourceAttributeStrings):
   37243         * svg/SVGScriptElement.h:
   37244 
   37245 2008-03-26  Dan Bernstein  <mitz (a] apple.com>
   37246 
   37247         Reviewed by Dave Hyatt.
   37248 
   37249         - maintain subpixel-antialiasing when drawing text with a simple shadow
   37250 
   37251         * platform/graphics/mac/FontMac.mm:
   37252         (WebCore::Font::drawComplexText): If the shadow has a zero blur radius,
   37253         draw the shadow by drawing the text at an offset instead of relying on
   37254         Core Graphics shadows.
   37255         (WebCore::Font::drawGlyphs): Ditto.
   37256         * platform/graphics/win/FontCGWin.cpp:
   37257         (WebCore::Font::drawGlyphs): Ditto.
   37258 
   37259 2008-03-26  Brady Eidson  <beidson (a] apple.com>
   37260 
   37261         Reviewed by Mark Rowe
   37262 
   37263         Part of the continued push to move WebArchive-related code down to WebCore, this
   37264         moves [WebDataSource subresourceForURL:] down to DocumentLoader->subresource()
   37265 
   37266         * WebCore.base.exp:
   37267         * loader/DocumentLoader.cpp:
   37268         (WebCore::DocumentLoader::subresource): Create an ArchiveResource from a CachedResource if it exists
   37269           Otherwise, fallback to an ArchiveResource from the current Archive if any.  Otherwise, return null
   37270         * loader/DocumentLoader.h:
   37271 
   37272         * loader/archive/ArchiveResource.cpp:
   37273         (WebCore::ArchiveResource::create):
   37274         (WebCore::ArchiveResource::ArchiveResource):
   37275         * loader/archive/ArchiveResource.h:
   37276 
   37277 2008-03-26  Sam Weinig  <sam (a] webkit.org>
   37278 
   37279         Fix Gtk+ build.
   37280 
   37281         * GNUmakefile.am:
   37282 
   37283 2008-03-26  Mark Rowe  <mrowe (a] apple.com>
   37284 
   37285         Rubber-stamped by Brady Eidson.
   37286 
   37287         Update FEATURE_DEFINES to be consistent with the other locations in which it is defined.
   37288 
   37289         * Configurations/WebCore.xcconfig:
   37290 
   37291 2008-03-26  Brent Fulgham  <bfulgham (a] gmail.com>
   37292 
   37293         Reviewed by Adam Roben.
   37294 
   37295         Add necessary files and build commands to vcproj files to
   37296         build a Curl-based Windows WebKit.  For details, see
   37297         http://bugs.webkit.org/show_bug.cgi?id=17985
   37298 
   37299         * WebCore.vcproj/WebCore.vcproj:
   37300 
   37301 2008-03-26  Adam Roben  <aroben (a] apple.com>
   37302 
   37303         Record JS exceptions triggered by the Inspector's use of JSC
   37304 
   37305         We now dump all exceptions returned from JavaScriptCore into the
   37306         Inspector's console.
   37307 
   37308         The HANDLE_EXCEPTION macro records the line on which the exception was
   37309         returned. It calls a new private handleException method on
   37310         InspectorController.
   37311 
   37312         Reviewed by Kevin McCullough.
   37313 
   37314         * page/InspectorController.cpp:
   37315         (WebCore::InspectorController::callSimpleFunction): Made this be a
   37316         member of InspectorController so that it can call handleException.
   37317         (WebCore::addSourceToFrame): Pass the exception pointer on to inner
   37318         JSC calls, and check it after those calls return.
   37319         (WebCore::getResourceDocumentNode): Ditto.
   37320         (WebCore::search): Ditto. Also changed the name/type of an existing
   37321         exception variable to ExceptionCode ec.
   37322         (WebCore::databaseTableNames): Ditto.
   37323         (WebCore::moveByUnrestricted): Ditto.
   37324         (WebCore::InspectorController::~InspectorController): Check for and
   37325         record exceptions as we call JSC.
   37326         (WebCore::InspectorController::focusNode): Ditto.
   37327         (WebCore::InspectorController::scriptObjectReady): Ditto.
   37328         (WebCore::addHeaders): Added an exception parameter.
   37329         (WebCore::scriptObjectForRequest): Ditto.
   37330         (WebCore::scriptObjectForResponse): Ditto.
   37331         (WebCore::InspectorController::addScriptResource): Check for and
   37332         record exceptions as we call JSC.
   37333         (WebCore::InspectorController::addAndUpdateScriptResource): Ditto.
   37334         (WebCore::InspectorController::removeScriptResource): Ditto. Also
   37335         moved the call to setScriptObject to before the JSC calls so that it
   37336         will always be called even if we return early if JSC throws an
   37337         exception.
   37338         (WebCore::InspectorController::updateScriptResourceRequest): Check for
   37339         and record exceptions as we call JSC.
   37340         (WebCore::InspectorController::updateScriptResourceResponse): Ditto.
   37341         (WebCore::InspectorController::updateScriptResource): Ditto.
   37342         (WebCore::InspectorController::addDatabaseScriptResource): Ditto.
   37343         (WebCore::InspectorController::removeDatabaseScriptResource): Ditto.
   37344         Also moved the call to setScriptObject to before the JSC calls so that
   37345         it will always be called even if we return early if JSC throws an
   37346         exception.
   37347         (WebCore::InspectorController::addScriptConsoleMessage): Check for and
   37348         record exceptions as we call JSC.
   37349         (WebCore::InspectorController::handleException): Added.
   37350         * page/InspectorController.h:
   37351 
   37352 2008-03-26  Darin Adler  <darin (a] apple.com>
   37353 
   37354         Rubber stamped by Maciej.
   37355 
   37356         - removed a couple log messages in error cases that are handled internally
   37357 
   37358         * platform/text/TextCodecICU.cpp:
   37359         (WebCore::TextCodecICU::decode): Removed the LOG_ERROR.
   37360         * platform/text/mac/TextCodecMac.cpp:
   37361         (WebCore::TextCodecMac::decode): Ditto.
   37362 
   37363 2008-03-26  Sam Weinig  <sam (a] webkit.org>
   37364 
   37365         Reviewed by Adam Roben.
   37366 
   37367         * page/Location.idl: Don't enumerate toString.
   37368 
   37369 2008-03-26  Mark Rowe  <mrowe (a] apple.com>
   37370 
   37371         Release build fix.
   37372 
   37373         * rendering/SVGRootInlineBox.cpp:
   37374         (WebCore::SVGRootInlineBox::buildLayoutInformationForTextBox): Initialize svgFont to zero.
   37375 
   37376 2008-03-26  Maciej Stachowiak  <mjs (a] apple.com>
   37377 
   37378         Reviewed by Hyatt and Adam.
   37379 
   37380         Coded by me and Darin.
   37381         
   37382         - SVG kerning support (horizontal kerning only for now since we don't do vertical text layout right yet) 
   37383         
   37384         Acid3 100/100
   37385 
   37386         * DerivedSources.make:
   37387         * WebCore.vcproj/WebCore.vcproj:
   37388         * WebCore.xcodeproj/project.pbxproj:
   37389         * platform/graphics/Font.cpp:
   37390         (WebCore::Font::floatWidth):
   37391         (WebCore::Font::isSVGFont):
   37392         * platform/graphics/Font.h:
   37393         * rendering/SVGInlineTextBox.cpp:
   37394         (WebCore::SVGInlineTextBox::calculateGlyphWidth):
   37395         (WebCore::SVGInlineTextBox::calculateGlyphBoundaries):
   37396         * rendering/SVGInlineTextBox.h:
   37397         * rendering/SVGRootInlineBox.cpp:
   37398         (WebCore::cummulatedWidthOrHeightOfTextChunk):
   37399         (WebCore::SVGRootInlineBox::buildLayoutInformation):
   37400         (WebCore::SVGRootInlineBox::buildLayoutInformationForTextBox):
   37401         * rendering/SVGRootInlineBox.h:
   37402         (WebCore::LastGlyphInfo::LastGlyphInfo):
   37403         * svg/SVGFont.cpp:
   37404         (WebCore::SVGTextRunWalker::walk):
   37405         (WebCore::Font::svgFont):
   37406         (WebCore::floatWidthOfSubStringUsingSVGFont):
   37407         (WebCore::Font::floatWidthUsingSVGFont):
   37408         (WebCore::Font::drawTextUsingSVGFont):
   37409         (WebCore::Font::selectionRectForTextUsingSVGFont):
   37410         * svg/SVGFontElement.cpp:
   37411         (WebCore::SVGFontElement::invalidateGlyphCache):
   37412         (WebCore::SVGFontElement::ensureGlyphCache):
   37413         (WebCore::parseUnicodeRange):
   37414         (WebCore::parseUnicodeRangeList):
   37415         (WebCore::stringMatchesUnicodeRange):
   37416         (WebCore::matches):
   37417         (WebCore::SVGFontElement::getHorizontalKerningPairForStringsAndGlyphs):
   37418         * svg/SVGFontElement.h:
   37419         * svg/SVGGlyphElement.cpp:
   37420         (WebCore::SVGGlyphElement::insertedIntoDocument):
   37421         (WebCore::SVGGlyphElement::removedFromDocument):
   37422         * svg/SVGHKernElement.cpp: Added.
   37423         (WebCore::SVGHKernElement::SVGHKernElement):
   37424         (WebCore::SVGHKernElement::~SVGHKernElement):
   37425         (WebCore::SVGHKernElement::insertedIntoDocument):
   37426         (WebCore::SVGHKernElement::removedFromDocument):
   37427         (WebCore::SVGHKernElement::buildHorizontalKerningPair):
   37428         * svg/SVGHKernElement.h: Added.
   37429         (WebCore::SVGHorizontalKerningPair::SVGHorizontalKerningPair):
   37430         (WebCore::SVGHKernElement::rendererIsNeeded):
   37431         * svg/SVGHKernElement.idl: Added.
   37432         * svg/SVGTextContentElement.cpp:
   37433         (WebCore::cummulatedCharacterRangeLength):
   37434         (WebCore::SVGInlineTextBoxQueryWalker::chunkPortionCallback):
   37435         * svg/svgtags.in:
   37436 
   37437 2008-03-26  Sam Weinig  <sam (a] webkit.org>
   37438 
   37439         Reviewed by Adam Roben.
   37440 
   37441         Autogenerate JSLocation.
   37442 
   37443         * GNUmakefile.am:
   37444         * WebCore.pro:
   37445         * WebCore.vcproj/WebCore.vcproj:
   37446         * WebCore.xcodeproj/project.pbxproj:
   37447         * WebCoreSources.bkl:
   37448         Add files.
   37449 
   37450         * DerivedSources.make: Add Location, remove JSLocation.lut.h
   37451         * bindings/js/JSDOMWindowBase.cpp:
   37452         (WebCore::JSDOMWindowBasePrivate::JSDOMWindowBasePrivate):
   37453         (WebCore::JSDOMWindowBase::getValueProperty):
   37454         (WebCore::JSDOMWindowBase::put):
   37455         (WebCore::JSDOMWindowBase::clearHelperObjectProperties):
   37456         (WebCore::JSDOMWindowBase::disconnectFrame):
   37457         * bindings/js/JSDOMWindowBase.h:
   37458         Remove manuel management of the Location object.
   37459 
   37460         * bindings/js/JSDOMWindowCustom.cpp:
   37461         (WebCore::JSDOMWindow::mark): Add marking of JSLocation.
   37462         (WebCore::JSDOMWindow::setLocation): Add custom setLocation as we only want to do this when
   37463         safe and we need to keep Dashboard quirks.
   37464 
   37465         * bindings/js/JSDocumentCustom.cpp:
   37466         (WebCore::JSDocument::location):
   37467         Fetch the location object using the normal toJS route.
   37468 
   37469         * bindings/js/JSLocation.cpp: Removed.
   37470         * bindings/js/JSLocation.h: Removed.
   37471         * bindings/js/JSLocationCustom.cpp: Added.
   37472         (WebCore::JSLocation::customGetOwnPropertySlot):
   37473         (WebCore::JSLocation::customPut):
   37474         (WebCore::JSLocation::deleteProperty):
   37475         (WebCore::JSLocation::customGetPropertyNames):
   37476         (WebCore::navigateIfAllowed):
   37477         (WebCore::JSLocation::setHref):
   37478         (WebCore::JSLocation::setProtocol):
   37479         (WebCore::JSLocation::setHost):
   37480         (WebCore::JSLocation::setHostname):
   37481         (WebCore::JSLocation::setPort):
   37482         (WebCore::JSLocation::setPathname):
   37483         (WebCore::JSLocation::setSearch):
   37484         (WebCore::JSLocation::setHash):
   37485         (WebCore::JSLocation::replace):
   37486         (WebCore::JSLocation::reload):
   37487         (WebCore::JSLocation::assign):
   37488         (WebCore::JSLocation::toString):
   37489         Setter and Functions need custom implementations as they rely on the dynamic
   37490         global object for determining the behavior of the navigation.
   37491 
   37492         * history/CachedPage.cpp:
   37493         (WebCore::CachedPage::CachedPage):
   37494         (WebCore::CachedPage::restore):
   37495         (WebCore::CachedPage::clear):
   37496         * history/CachedPage.h:
   37497         Removed all the special casing for location as it should be treated like all
   37498         the other objects hanging off the window.
   37499 
   37500         * page/DOMWindow.cpp:
   37501         (WebCore::DOMWindow::clear):
   37502         (WebCore::DOMWindow::location):
   37503         * page/DOMWindow.h:
   37504         (WebCore::DOMWindow::optionalLocation):
   37505         * page/DOMWindow.idl:
   37506         Add Location accessor and pointer getter for marking.
   37507 
   37508         * page/Location.cpp: Added.
   37509         (WebCore::Location::Location):
   37510         (WebCore::Location::disconnectFrame):
   37511         (WebCore::Location::url):
   37512         (WebCore::Location::href):
   37513         (WebCore::Location::protocol):
   37514         (WebCore::Location::host):
   37515         (WebCore::Location::hostname):
   37516         (WebCore::Location::port):
   37517         (WebCore::Location::pathname):
   37518         (WebCore::Location::search):
   37519         (WebCore::Location::hash):
   37520         (WebCore::Location::toString):
   37521         * page/Location.h: Added.
   37522         (WebCore::Location::create):
   37523         (WebCore::Location::frame):
   37524         * page/Location.idl: Added.
   37525 
   37526 2008-03-26  David Hyatt  <hyatt (a] apple.com>
   37527 
   37528         Add support for the rendering and measurement of the <altGlyph> element in SVG.  This patch brings
   37529         is half of what's needed to reach 100/100 on Acid3 and pass the test.  Maciej has coded up the other half. :)
   37530 
   37531         Reviewed by mjs
   37532 
   37533         Added svg/custom/altGlyph.svg
   37534 
   37535         * svg/SVGAltGlyphElement.cpp:
   37536         (WebCore::SVGAltGlyphElement::childShouldCreateRenderer):
   37537         (WebCore::SVGAltGlyphElement::glyphElement):
   37538         * svg/SVGAltGlyphElement.h:
   37539         * svg/SVGFont.cpp:
   37540         (WebCore::SVGTextRunWalker::walk):
   37541         * svg/SVGFontFaceElement.cpp:
   37542         (WebCore::SVGFontFaceElement::insertedIntoDocument):
   37543         * svg/SVGGlyphElement.cpp:
   37544         (WebCore::SVGGlyphElement::insertedIntoDocument):
   37545         (WebCore::SVGGlyphElement::removedFromDocument):
   37546 
   37547 2008-03-26  Adam Roben  <aroben (a] apple.com>
   37548 
   37549         Turn on SVG animation on Windows
   37550 
   37551         Also touched some files to force things to rebuild/regenerate.
   37552 
   37553         * WebCore.vcproj/WebCore.vcproj: Added ENABLE_SVG_ANIMATION.
   37554         * WebCore.vcproj/build-generated-files.sh: Ditto.
   37555         * bindings/scripts/CodeGenerator.pm: Touched.
   37556         * config.h: Touched.
   37557         * svg/svgtags.in: Touched.
   37558 
   37559 2008-03-26  Justin Garcia  <justin.garcia (a] apple.com>
   37560 
   37561         Reviewed by Harrison.
   37562 
   37563         <rdar://problem/5820749> REGRESSION (Safari 3.1): Mail's plain text reply omits blank line following the attribution
   37564 
   37565         * editing/markup.cpp:
   37566         (WebCore::createFragmentFromText): When asked to create a fragment from "Attribution:\n"
   37567         with a context from [html, 0] to [html, 0], we'd return "<html>Attribution</html><br>".
   37568         Don't enclose paragraphs in clones of the context's enclosing block if that block is the
   37569         html or body element.  Currently no way to test [DOMHTMLElement createFragmentFromText:].
   37570 
   37571 2008-03-26  Antti Koivisto  <antti (a] apple.com>
   37572 
   37573         Reviewed by Anders.
   37574 
   37575         http://bugs.webkit.org/show_bug.cgi?id=17077
   37576         Bug 17077: SVG SMIL animation is currently broken (and turned off) (affects Acid3 tests 75 and 76)
   37577 
   37578         - enable SVG animation support.
   37579         - basic implementation of beginElement()/endElement().
   37580         
   37581         Animation definitely will need more work than this, but it is a start!
   37582 
   37583         * Configurations/WebCore.xcconfig:
   37584         * svg/SVGAnimationElement.cpp:
   37585         (WebCore::SVGAnimationElement::SVGAnimationElement):
   37586         (WebCore::SVGAnimationElement::updateAnimatedValueForElapsedSeconds):
   37587         (WebCore::SVGAnimationElement::beginElement):
   37588         (WebCore::SVGAnimationElement::beginElementAt):
   37589         (WebCore::SVGAnimationElement::endElement):
   37590         (WebCore::SVGAnimationElement::endElementAt):
   37591         * svg/SVGAnimationElement.h:
   37592 
   37593 2008-03-26  Mark Rowe  <mrowe (a] apple.com>
   37594 
   37595         Reviewed by David Hyatt.
   37596 
   37597         Make the Ahem font antialias correctly on Acid3 on Tiger.
   37598 
   37599         * WebCore.Tiger.exp:
   37600         * platform/graphics/mac/SimpleFontDataMac.mm:
   37601         (WebCore::SimpleFontData::platformInit):
   37602         * platform/mac/WebCoreSystemInterface.h:
   37603         * platform/mac/WebCoreSystemInterface.mm:
   37604 
   37605 2008-03-26  Simon Hausmann  <hausmann (a] webkit.org>
   37606 
   37607         Attempt to fix the Qt build.
   37608 
   37609         * platform/text/qt/TextCodecQt.cpp: Adjust function signature.
   37610         (WebCore::TextCodecQt::decode):
   37611         * platform/text/qt/TextCodecQt.h: Ditto.
   37612 
   37613 2008-03-26  Dan Bernstein  <mitz (a] apple.com>
   37614 
   37615         Reviewed by Anders Carlsson.
   37616 
   37617         - fix http://bugs.webkit.org/show_bug.cgi?id=18104
   37618           REGRESSION: LEAK: 2 InlineBox in editing/inserting/12882.html
   37619 
   37620         * rendering/bidi.cpp:
   37621         (WebCore::RenderBlock::layoutInlineChildren): When deciding to ditch
   37622         old clean lines (due to changed or newly-added floats), keep the
   37623         reference to those lines so they can be properly deleted in the end,
   37624         and use a separate flag to signal that no matching should be attempted.
   37625 
   37626 2008-03-26  Mark Rowe  <mrowe (a] apple.com>
   37627 
   37628         Speculative Windows build fix.
   37629 
   37630         * platform/graphics/win/SimpleFontDataCGWin.cpp:
   37631 
   37632 2008-03-25  Steve Falkenburg  <sfalken (a] apple.com>
   37633 
   37634         Turn on link-time-codegen in html and rendering related files.
   37635 
   37636         Reviewed by Oliver.
   37637 
   37638         * WebCore.vcproj/WebCore.vcproj:
   37639 
   37640 2008-03-26  Maciej Stachowiak  <mjs (a] apple.com>
   37641 
   37642         Reviewed by Darin.
   37643 
   37644         - fixed "SVG multichar glyph matching matches longest instead of first (affects Acid3 test 79)"
   37645         http://bugs.webkit.org/show_bug.cgi?id=18118
   37646 
   37647         * svg/SVGFont.cpp:
   37648         (WebCore::SVGTextRunWalker::walk):
   37649         * svg/SVGFontElement.cpp:
   37650         (WebCore::SVGFontElement::SVGFontElement):
   37651         (WebCore::SVGFontElement::addGlyphToCache):
   37652         (WebCore::SVGFontElement::removeGlyphFromCache):
   37653         (WebCore::SVGFontElement::ensureGlyphCache):
   37654         (WebCore::SVGFontElement::getGlyphIdentifiersForString):
   37655         * svg/SVGFontElement.h:
   37656         * svg/SVGGlyphElement.h:
   37657         (WebCore::SVGGlyphIdentifier::SVGGlyphIdentifier):
   37658         * svg/SVGGlyphMap.h: Added. New radix tree based glyph map.
   37659         (WebCore::GlyphMapNode::GlyphMapNode):
   37660         (WebCore::SVGGlyphMap::SVGGlyphMap):
   37661         (WebCore::SVGGlyphMap::add):
   37662         (WebCore::SVGGlyphMap::compareGlyphPriority):
   37663         (WebCore::SVGGlyphMap::get):
   37664         (WebCore::SVGGlyphMap::clear):
   37665 
   37666 2008-03-26  David Hyatt  <hyatt (a] apple.com>
   37667 
   37668         Fix build bustage on Tiger.  Tiger will not have the bug fix.
   37669 
   37670         * platform/graphics/mac/SimpleFontDataMac.mm:
   37671         (WebCore::SimpleFontData::platformInit):
   37672         * platform/graphics/win/SimpleFontDataCGWin.cpp:
   37673         (WebCore::SimpleFontData::platformInit):
   37674 
   37675 2008-03-26  David Hyatt  <hyatt (a] apple.com>
   37676 
   37677         Make the Ahem font antialias correctly on Acid3.
   37678 
   37679         Reviewed by Dan
   37680 
   37681         * platform/graphics/SimpleFontData.h:
   37682         * platform/graphics/mac/FontMac.mm:
   37683         (WebCore::Font::drawGlyphs):
   37684         * platform/graphics/mac/SimpleFontDataMac.mm:
   37685         (WebCore::SimpleFontData::platformInit):
   37686         * platform/graphics/win/FontCGWin.cpp:
   37687         (WebCore::Font::drawGlyphs):
   37688         * platform/graphics/win/SimpleFontDataCGWin.cpp:
   37689         (WebCore::SimpleFontData::platformInit):
   37690 
   37691 2008-03-26  Mark Rowe  <mrowe (a] apple.com>
   37692 
   37693         Fix the Mac build.
   37694 
   37695         * WebCore.xcodeproj/project.pbxproj:  Copy the newly generated header into the right place.
   37696 
   37697 2008-03-26  Adam Roben  <aroben (a] apple.com>
   37698 
   37699         Fix Bug 17768: REGRESSION (r30146): Inspector no longer shows elements
   37700         properties
   37701 
   37702         <http://bugs.webkit.org/show_bug.cgi?id=17768>
   37703 
   37704         We were throwing an exception from Object.describe because of some
   37705         undefined variables.
   37706 
   37707         Reviewed by Tim Hatcher.
   37708 
   37709         * page/inspector/utilities.js:
   37710         (Object.describe): Reinstate the type1 and type2 variables that were
   37711         removed in r30146. They're still used when formatting a function.
   37712 
   37713 2008-03-26  Eric Seidel  <eric (a] webkit.org>
   37714 
   37715         Reviewed by darin.
   37716 
   37717         Forgot to add braces darin asked for during review.
   37718 
   37719         * dom/XMLTokenizer.cpp:
   37720         (WebCore::XMLTokenizer::write):
   37721 
   37722 2008-03-26  Eric Seidel  <eric (a] webkit.org>
   37723 
   37724         Reviewed by darin.
   37725 
   37726         Fix, makes us pass Test 70
   37727         XML documents should be strict about encoding checks
   37728         http://bugs.webkit.org/show_bug.cgi?id=17079
   37729 
   37730         Test: fast/encoding/invalid-xml.html
   37731 
   37732         * WebCore.base.exp:
   37733         * dom/XMLTokenizer.cpp:
   37734         (WebCore::XMLTokenizer::write):
   37735         * loader/CachedFont.cpp:
   37736         (WebCore::CachedFont::ensureSVGFontData):
   37737         * loader/TextResourceDecoder.cpp:
   37738         (WebCore::TextResourceDecoder::TextResourceDecoder):
   37739         (WebCore::TextResourceDecoder::decode):
   37740         * loader/TextResourceDecoder.h:
   37741         * platform/text/TextCodec.h:
   37742         (WebCore::TextCodec::decode):
   37743         * platform/text/TextCodecICU.cpp:
   37744         (WebCore::TextCodecICU::decodeToBuffer):
   37745         (WebCore::ErrorCallbackSetter::ErrorCallbackSetter):
   37746         (WebCore::ErrorCallbackSetter::~ErrorCallbackSetter):
   37747         (WebCore::TextCodecICU::decode):
   37748         * platform/text/TextCodecICU.h:
   37749         * platform/text/TextCodecLatin1.cpp:
   37750         * platform/text/TextCodecLatin1.h:
   37751         * platform/text/TextCodecUTF16.cpp:
   37752         * platform/text/TextCodecUTF16.h:
   37753         * platform/text/TextCodecUserDefined.cpp:
   37754         * platform/text/TextCodecUserDefined.h:
   37755         * platform/text/TextDecoder.cpp:
   37756         (WebCore::TextDecoder::checkForBOM):
   37757         * platform/text/TextDecoder.h:
   37758         (WebCore::TextDecoder::decode):
   37759         * platform/text/TextEncoding.cpp:
   37760         (WebCore::TextEncoding::decode):
   37761         * platform/text/TextEncoding.h:
   37762         (WebCore::TextEncoding::decode):
   37763         * platform/text/mac/TextCodecMac.cpp:
   37764         (WebCore::TextCodecMac::decode):
   37765         * platform/text/mac/TextCodecMac.h:
   37766 
   37767 2008-03-26  Antti Koivisto  <antti (a] apple.com>
   37768 
   37769         Reviewed by Adam.
   37770 
   37771         Add ElementTimeControl interface to SVGAnimationElement.
   37772         Passes Acid3 test 75.
   37773 
   37774         * DerivedSources.make:
   37775         * WebCore.pro:
   37776         * WebCore.vcproj/WebCore.vcproj:
   37777         * WebCore.xcodeproj/project.pbxproj:
   37778         * bindings/scripts/CodeGeneratorObjC.pm:
   37779         * svg/ElementTimeControl.h: Added.
   37780         (WebCore::ElementTimeControl::~ElementTimeControl):
   37781         * svg/ElementTimeControl.idl: Added.
   37782         * svg/SVGAnimationElement.cpp:
   37783         (WebCore::SVGAnimationElement::beginElement):
   37784         (WebCore::SVGAnimationElement::beginElementAt):
   37785         (WebCore::SVGAnimationElement::endElement):
   37786         (WebCore::SVGAnimationElement::endElementAt):
   37787         * svg/SVGAnimationElement.h:
   37788         * svg/SVGAnimationElement.idl:
   37789 
   37790 2008-03-26  Kevin McCullough  <kmccullough (a] apple.com>
   37791 
   37792         - LayoutTest fix.  Null check.
   37793 
   37794         * xml/XMLHttpRequest.cpp:
   37795         (WebCore::XMLHttpRequest::send):
   37796 
   37797 2008-03-26  Dan Bernstein  <mitz (a] apple.com>
   37798 
   37799         Reviewed by Darin Adler.
   37800 
   37801         - fix http://bugs.webkit.org/show_bug.cgi?id=17994
   37802           REGRESSION (523-525+) View not updated when changing CSS size via JavaScript
   37803         - fix http://bugs.webkit.org/show_bug.cgi?id=18063
   37804           REGRESSION (r31250): Small bug that just cropped up in WebKit r31275
   37805 
   37806         Tests: fast/repaint/subtree-root-clip.html
   37807                fast/repaint/subtree-root-clip-2.html
   37808                fast/repaint/subtree-root-clip-3.html
   37809 
   37810         * rendering/LayoutState.cpp:
   37811         (WebCore::LayoutState::LayoutState): Changed to not set an initial clip.
   37812         Since the root is clipping, there is no need to set a clip, and setting
   37813         the clip based on the container was wrong because often the root was
   37814         not included in the container's overflow rect because it had its own
   37815         layer.
   37816         * rendering/RenderBox.cpp:
   37817         (WebCore::RenderBox::absolutePosition): Removed code that added table
   37818         cell's extra top offset only in the slow (recursive) code path.
   37819         * rendering/RenderTableCell.cpp:
   37820         (WebCore::RenderTableCell::absolutePosition): Added code to add the
   37821         extra top offset in both code paths.
   37822 
   37823 2008-03-26  Simon Hausmann  <hausmann (a] webkit.org>
   37824 
   37825         Fix the Qt build.
   37826 
   37827         * platform/graphics/qt/FontQt.cpp:
   37828         (WebCore::Font::floatWidth):
   37829 
   37830 2008-03-24  Maciej Stachowiak  <mjs (a] apple.com>
   37831 
   37832         Reviewed by Eric.
   37833 
   37834         - fixed "SVGTextElement.getStartPositionOfChar does not correctly account for multichar glyphs"
   37835         http://bugs.webkit.org/show_bug.cgi?id=18046
   37836 
   37837         * platform/graphics/Font.cpp:
   37838         (WebCore::Font::floatWidth): Allow expressing a run that has extra "context" characters beyond the end,
   37839         and reporting of how many characters were actually consumed, to support multichar glyphs in SVG fonts.
   37840         * platform/graphics/Font.h:
   37841         * rendering/SVGInlineTextBox.cpp:
   37842         (WebCore::SVGInlineTextBox::calculateGlyphWidth): Pass along extra chars in argument and chars consumed out
   37843         argument.
   37844         (WebCore::SVGInlineTextBox::calculateGlyphHeight): Pass along extra chars in argument.
   37845         (WebCore::SVGInlineTextBox::calculateGlyphBoundaries): Add boilerplate; may not handle multichar glyphs
   37846         right but I don't know what effects this would have.
   37847         * rendering/SVGInlineTextBox.h:
   37848         * rendering/SVGRootInlineBox.cpp:
   37849         (WebCore::cummulatedWidthOrHeightOfTextChunk): Add boilerplate; may not handle multichar glyphs right
   37850         but again I am not sure what effect this would have.
   37851         (WebCore::SVGRootInlineBox::buildLayoutInformationForTextBox): Account for multichar glyphs - let glyph
   37852         selection consider extra chars, and account for the fact that a glyph may have consumed multiple chars.
   37853         * rendering/SVGRootInlineBox.h:
   37854         * svg/SVGFont.cpp:
   37855         (WebCore::SVGTextRunWalker::walk): This is the place where glyph selection happens, so this is where
   37856         we accout for multichar glyphs (both looking at extra chars past the end of the run, and reporting how
   37857         many chars were consumed).
   37858         (WebCore::floatWidthOfSubStringUsingSVGFont): Pass aforementioned info through the layers.
   37859         (WebCore::Font::floatWidthUsingSVGFont): ditto
   37860         (WebCore::Font::drawTextUsingSVGFont): ditto
   37861         (WebCore::Font::selectionRectForTextUsingSVGFont): ditto
   37862         * svg/SVGTextContentElement.cpp:
   37863         (WebCore::cummulatedCharacterRangeLength): ditto
   37864         (WebCore::SVGInlineTextBoxQueryWalker::chunkPortionCallback): ditto
   37865 
   37866 2008-03-25  Beth Dakin  <bdakin (a] apple.com>
   37867 
   37868         Reviewed by Oliver.
   37869 
   37870         Fix for <rdar://problem/5811826> CSSValueList::item() does not 
   37871         range-check index
   37872 
   37873         Check bounds before accessing the item to avoid a crash. 
   37874         itemWithoutBoundsCheck() is still inlined and not bounds-checked to 
   37875         avoid slowing down our internal callers of item().
   37876         * css/CSSValueList.cpp:
   37877         (WebCore::CSSValueList::item):
   37878         * css/CSSValueList.h:
   37879         (WebCore::CSSValueList::itemWithoutBoundsCheck):
   37880 
   37881         Call itemWithoutBoundsCheck() to avoid slowing down these internal 
   37882         callers.
   37883         * css/CSSFontSelector.cpp:
   37884         (WebCore::CSSFontSelector::addFontFaceRule):
   37885         * css/CSSMutableStyleDeclaration.cpp:
   37886         (WebCore::CSSMutableStyleDeclaration::getLayeredShorthandValue):
   37887         * css/CSSStyleSelector.cpp:
   37888         (WebCore::applyCounterList):
   37889         (WebCore::CSSStyleSelector::applyProperty):
   37890         * css/MediaQueryEvaluator.cpp:
   37891         (WebCore::parseAspectRatio):
   37892         * svg/SVGFontFaceElement.cpp:
   37893         (WebCore::SVGFontFaceElement::rebuildFontFace):
   37894         * svg/graphics/SVGPaintServer.cpp:
   37895         (WebCore::dashArrayFromRenderingStyle):
   37896 
   37897 2008-03-25  Antti Koivisto  <antti (a] apple.com>
   37898 
   37899         Reviewed by Oliver.
   37900 
   37901         Fix http://bugs.webkit.org/show_bug.cgi?id=18082
   37902         REGRESSION (r31287): GMail does not work if user stylesheet is set
   37903         
   37904         Oops, my cache refactoring patch was missing these rather essential lines for
   37905         user stylesheets. They would get reloaded repeatedly.
   37906 
   37907         * loader/Cache.cpp:
   37908         (WebCore::Cache::requestUserCSSStyleSheet):
   37909 
   37910 2008-03-25  Matt Lilek  <webkit (a] mattlilek.com>
   37911 
   37912         Rubber stamped by Adam
   37913 
   37914         Roll out r31300 since it causes assertion failures on page load.
   37915         See http://bugs.webkit.org/show_bug.cgi?id=18093
   37916 
   37917         * page/InspectorController.cpp:
   37918         (WebCore::InspectorController::didFinishLoading):
   37919         (WebCore::InspectorController::didFailLoading):
   37920 
   37921 2008-03-25  Darin Adler  <darin (a] apple.com>
   37922 
   37923         Reviewed by Anders.
   37924 
   37925         - fix http://bugs.webkit.org/show_bug.cgi?id=17252
   37926           Acid3 test removing Nodes during NodeIterator walk fails (affects Acid3 test 2)
   37927 
   37928         Test: traversal/acid3-test-2.html
   37929 
   37930         * bindings/js/JSNodeIteratorCustom.cpp:
   37931         (WebCore::JSNodeIterator::nextNode): Update since result is PassRefPtr.
   37932         (WebCore::JSNodeIterator::previousNode): Ditto.
   37933         * dom/NodeIterator.cpp:
   37934         (WebCore::NodeIterator::nextNode): Changed result to PassRefPtr. Added code to
   37935         track both the current candidate (which needs to move along to the next node
   37936         if current node is deleted) and the current provisional result (passed to acceptNode,
   37937         and needs to be returned even if it's deleted).
   37938         (WebCore::NodeIterator::previousNode): Ditto.
   37939         (WebCore::NodeIterator::nodeWillBeRemoved): Call updateForNodeRemoval for
   37940         m_candidateNode as well as m_referenceNode.
   37941         * dom/NodeIterator.h: Use PassRefPtr for return values.
   37942 
   37943 2008-03-25  Brady Eidson  <beidson (a] apple.com>
   37944 
   37945         Reviewed by Anders
   37946 
   37947         Add the ability to transform a CString into a SharedBuffer to avoid copying data
   37948         This is valuable to avoid copying a block of data for an upcoming patch
   37949 
   37950         * platform/SharedBuffer.cpp:
   37951         (WebCore::SharedBuffer::adoptVector):
   37952         * platform/SharedBuffer.h:
   37953 
   37954         * platform/text/CString.cpp:
   37955         (WebCore::CString::releaseBuffer):
   37956         * platform/text/CString.h:
   37957         (WebCore::CStringBuffer::releaseBuffer):
   37958 
   37959 2008-03-25  Brady Eidson  <beidson (a] apple.com>
   37960 
   37961         Attempt to fix .bkl build systems after recent archive additions
   37962 
   37963         * webcore-base.bkl:
   37964 
   37965 2008-03-25  Kevin McCullough  <kmccullough (a] apple.com>
   37966 
   37967         Reviewed by Adam.
   37968 
   37969         - Cleaned up the needless use of RefPtrs, which we may someday no longer use for
   37970         InspectorResources.
   37971 
   37972         * page/InspectorController.cpp:
   37973         (WebCore::InspectorController::didFinishLoading):
   37974         (WebCore::InspectorController::didFailLoading):
   37975 
   37976 2008-03-25  Kevin McCullough  <kmccullough (a] apple.com>
   37977 
   37978         Reviewed by Adam.
   37979 
   37980         - Added a null check
   37981 
   37982         * xml/XMLHttpRequest.cpp: Null check
   37983         (WebCore::XMLHttpRequest::send):
   37984 
   37985 2008-03-25  Kevin McCullough  <kmccullough (a] apple.com>
   37986 
   37987         Reviewed by Tim.
   37988 
   37989         -<rdar://problem/5712804> XMLHttpRequests do not show response contents, preview images (14313)
   37990         -<rdar://problem/5712931> XMLHttpRequests should be shown separately and grouped (14315)
   37991         -<rdar://problem/5732836> XMLHttpRequest: Inspector should show network activity/XHR in Console (17233)
   37992         - XMLHttpRequestResources now identify themselves to the inspector which caches the data related to
   37993         the request since no one else caches it.  However this is just the plumbing and the Inspector's UI
   37994         has not been changed to show XHR resources yet. 
   37995 
   37996         * page/InspectorController.cpp: Add ability to set XHR data on an InspectorResource.
   37997         (WebCore::XMLHttpRequestResource::XMLHttpRequestResource):
   37998         (WebCore::XMLHttpRequestResource::data):
   37999         (WebCore::XMLHttpRequestResource::encoding):
   38000         (WebCore::InspectorResource::): Add new type.
   38001         (WebCore::InspectorResource::~InspectorResource): No longer virtual since we are not using inheritance.
   38002         (WebCore::InspectorResource::type): Ditto.
   38003         (WebCore::InspectorResource::setXMLHttpRequestResource):
   38004         (WebCore::InspectorResource::isXHR):
   38005         (WebCore::InspectorResource::xmlHttpRequestData):
   38006         (WebCore::InspectorResource::xmlHttpRequestEncoding):
   38007         (WebCore::InspectorResource::InspectorResource):
   38008         (WebCore::addSourceToFrame):
   38009         (WebCore::InspectorController::resourceRetrievedByXMLHttpRequest):
   38010         * page/InspectorController.h: Add accessor for setting the XHR data.
   38011         * page/inspector/Resource.js: Keep the XHR resource types in sync with the Inspector Controller.
   38012         * xml/XMLHttpRequest.cpp: Give the InspectorController the XHR information to cache.
   38013         (WebCore::XMLHttpRequest::send):
   38014 
   38015 2008-03-25  Adam Roben  <aroben (a] apple.com>
   38016 
   38017         Add an UnusedParam.h forwarding header for use by testapi
   38018 
   38019         Reviewed by Steve Falkenburg.
   38020 
   38021         * ForwardingHeaders/wtf/UnusedParam.h: Added.
   38022 
   38023 2008-03-25  Brady Eidson  <beidson (a] apple.com>
   38024 
   38025         Reviewed by Adam Roben
   38026 
   38027         <rdar://problem/5819308> - View Source is empty when view webarchives
   38028 
   38029         * WebCore.base.exp:
   38030         * loader/DocumentLoader.cpp:
   38031         (WebCore::DocumentLoader::setParsedArchiveData):
   38032         (WebCore::DocumentLoader::parsedArchiveData):
   38033         * loader/DocumentLoader.h:
   38034 
   38035         * loader/FrameLoader.cpp:
   38036         (WebCore::FrameLoader::finishedLoadingDocument): Set the archive's MainResource data as the parsedArchiveData
   38037           in the DocumentLoader
   38038 
   38039 2008-03-25  Eric Seidel  <eric (a] webkit.org>
   38040 
   38041         Reviewed by Oliver.
   38042 
   38043         Speculative crash fix for Acid3 crasher.
   38044         I couldn't figure out how to make a test case for this?
   38045         Suggestions welcome.
   38046 
   38047         * css/CSSFontSelector.cpp: null check document->renderer()
   38048 
   38049 2008-03-25  Antti Koivisto  <antti (a] apple.com>
   38050 
   38051         Reviewed by Geoff Garen.
   38052 
   38053         Some memory cache cleanups:
   38054         - Separate CachedResource loading from construction, initiate load using a separate load() method.
   38055         - Add special case function to Cache for loading user stylesheets. This allows removal
   38056           of a bunch of parameters from several methods and CachedResource constructors.
   38057         - Construct CachedResources with m_inCache set to false which is quite a bit more logical as they
   38058           are not yet in the cache at that point.
   38059         - Pass encoding around as const String& instead of const String*.
   38060 
   38061         * css/CSSImageValue.cpp:
   38062         (WebCore::CSSImageValue::image):
   38063         * html/HTMLImageLoader.cpp:
   38064         (WebCore::HTMLImageLoader::updateFromElement):
   38065         * loader/Cache.cpp:
   38066         (WebCore::createResource):
   38067         (WebCore::Cache::requestResource):
   38068         (WebCore::Cache::requestUserCSSStyleSheet):
   38069         (WebCore::Cache::remove):
   38070         * loader/Cache.h:
   38071         * loader/CachedCSSStyleSheet.cpp:
   38072         (WebCore::CachedCSSStyleSheet::CachedCSSStyleSheet):
   38073         * loader/CachedCSSStyleSheet.h:
   38074         * loader/CachedFont.cpp:
   38075         (WebCore::CachedFont::CachedFont):
   38076         (WebCore::CachedFont::load):
   38077         (WebCore::CachedFont::ref):
   38078         * loader/CachedFont.h:
   38079         * loader/CachedImage.cpp:
   38080         (WebCore::CachedImage::CachedImage):
   38081         (WebCore::CachedImage::load):
   38082         * loader/CachedImage.h:
   38083         * loader/CachedResource.cpp:
   38084         (WebCore::CachedResource::CachedResource):
   38085         (WebCore::CachedResource::~CachedResource):
   38086         (WebCore::CachedResource::load):
   38087         * loader/CachedResource.h:
   38088         (WebCore::CachedResource::load):
   38089         * loader/CachedScript.cpp:
   38090         (WebCore::CachedScript::CachedScript):
   38091         * loader/CachedScript.h:
   38092         * loader/CachedXBLDocument.cpp:
   38093         (WebCore::CachedXBLDocument::CachedXBLDocument):
   38094         * loader/CachedXBLDocument.h:
   38095         * loader/CachedXSLStyleSheet.cpp:
   38096         (WebCore::CachedXSLStyleSheet::CachedXSLStyleSheet):
   38097         * loader/CachedXSLStyleSheet.h:
   38098         * loader/DocLoader.cpp:
   38099         (WebCore::DocLoader::requestImage):
   38100         (WebCore::DocLoader::requestFont):
   38101         (WebCore::DocLoader::requestCSSStyleSheet):
   38102         (WebCore::DocLoader::requestUserCSSStyleSheet):
   38103         (WebCore::DocLoader::requestScript):
   38104         (WebCore::DocLoader::requestXSLStyleSheet):
   38105         (WebCore::DocLoader::requestXBLDocument):
   38106         (WebCore::DocLoader::requestResource):
   38107         (WebCore::DocLoader::preload):
   38108         * loader/DocLoader.h:
   38109 
   38110 2008-03-25  Darin Adler  <darin (a] apple.com>
   38111 
   38112         Reviewed by Anders.
   38113 
   38114         - avoid converting UString to String and then later to AtomicString
   38115 
   38116         1% speedup on Acid3 test 26
   38117 
   38118         This is inefficient for the case where there's already an AtomicString.
   38119         By first creating and destroying a String we waste time.
   38120 
   38121         * bindings/scripts/CodeGeneratorJS.pm: Use const UString& for string
   38122         arguments rather than using String; this uses the object as it's produced
   38123         from toString rather than creating a new temporary object that might not
   38124         be of the right type. The type conversion happens at the callsite instead.
   38125         Also eliminate the ability to use the type AtomicString from IDL.
   38126 
   38127         * dom/KeyboardEvent.idl: AtomicString -> DOMString.
   38128         * dom/MouseEvent.idl: Ditto.
   38129         * dom/MutationEvent.idl: Ditto.
   38130         * dom/UIEvent.idl: Ditto.
   38131         * svg/SVGStyleElement.idl: Ditto.
   38132 
   38133 2008-03-25  Brady Eidson  <beidson (a] apple.com>
   38134 
   38135         Build fix for non-CoreFoundation platforms
   38136 
   38137         * loader/archive/ArchiveFactory.cpp:
   38138 
   38139 2008-03-25  Brady Eidson  <beidson (a] apple.com>
   38140 
   38141         Reviewed by Darin
   38142 
   38143         Remove newly obsolete FrameLoaderClient methods
   38144 
   38145         * loader/FrameLoaderClient.h:
   38146         * svg/graphics/SVGImageEmptyClients.h:
   38147         (WebCore::SVGEmptyFrameLoaderClient::setMainDocumentError):
   38148         (WebCore::SVGEmptyFrameLoaderClient::finishedLoading):
   38149 
   38150 2008-03-25  Brady Eidson  <beidson (a] apple.com>
   38151 
   38152         Reviewed by Darin
   38153 
   38154         <rdar://problem/4516169> - Support WebArchives on Windows
   38155         And pave the way for many future WebArchive bug fixes and enhancements
   38156 
   38157         This patch accomplishes two main goals:
   38158         1 - Consolidates much of the spread out WebKitMac archive code into one place in WebCore.  This allows for cleaner refactoring 
   38159             in the future as well as adding more archive formats with ease.
   38160         2 - Hooks up WebArchive support on Windows.  Safari-style .webarchive files are nothing more than property lists readable by
   38161             CoreFoundation.  While there are still some outstanding issues, including an NSKeyedArchiver chunk of data for the 
   38162             ResourceResponse for each resource, this patch manually parses through the property list on CoreFoundation platforms and
   38163             gets many archives loading on Windows
   38164 
   38165         My goal for this first cut was zero behavior change.  As such, I went for a direct port of the WebKitMac code.  There will be
   38166         opportunities for redesign and refactoring as followups.
   38167 
   38168         * WebCore.base.exp:
   38169 
   38170         * loader/DocumentLoader.cpp:
   38171         (WebCore::DocumentLoader::setupForReplaceByMIMEType): Ported from WebKitMac, WebDataSource
   38172         (WebCore::DocumentLoader::addAllArchiveResources):
   38173         (WebCore::DocumentLoader::addArchiveResource):
   38174         (WebCore::DocumentLoader::archiveResourceForURL):
   38175         (WebCore::DocumentLoader::popArchiveForSubframe):
   38176         (WebCore::DocumentLoader::clearArchiveResources):
   38177         * loader/DocumentLoader.h:
   38178 
   38179         * loader/FrameLoader.cpp: Moved WebFrameLoaderClient and WebFrame code down into their more appropriate FrameLoader home
   38180         (WebCore::FrameLoader::FrameLoader):
   38181         (WebCore::FrameLoader::setDefersLoading):
   38182         (WebCore::FrameLoader::deliverArchivedResourcesAfterDelay):
   38183         (WebCore::FrameLoader::archiveResourceDeliveryTimerFired):
   38184         (WebCore::FrameLoader::loadURLIntoChildFrame):
   38185         (WebCore::FrameLoader::loadArchive):
   38186         (WebCore::FrameLoader::scheduleArchiveLoad):
   38187         (WebCore::FrameLoader::stopAllLoaders):
   38188         (WebCore::FrameLoader::cancelPendingArchiveLoad):
   38189         (WebCore::FrameLoader::isArchiveLoadPending):
   38190         (WebCore::FrameLoader::finishedLoadingDocument):
   38191         * loader/FrameLoader.h:
   38192 
   38193         * loader/ResourceLoader.cpp:
   38194         (WebCore::ResourceLoader::load):
   38195 
   38196         * loader/archive/Archive.h: Generic "Archive of web resources" class that is only useful when subclassed.  
   38197             Contains a MainResource, subresources, and Archives for subframes
   38198         (WebCore::Archive::mainResource):
   38199         (WebCore::Archive::subresources):
   38200         (WebCore::Archive::subframeArchives):
   38201         (WebCore::Archive::setMainResource):
   38202         (WebCore::Archive::addSubresource):
   38203         (WebCore::Archive::addSubframeArchive):
   38204 
   38205         * loader/archive/ArchiveFactory.cpp: A class that will take raw archive data and the MIMEtype, and create the
   38206             appropriate Archive class for it.  Additionally it handles registering the known MIMEtypes for all known archive formats
   38207         (WebCore::archiveFactoryCreate):
   38208         (WebCore::archiveMIMETypes):
   38209         (WebCore::ArchiveFactory::isArchiveMimeType):
   38210         (WebCore::ArchiveFactory::create):
   38211         (WebCore::ArchiveFactory::registerKnownArchiveMIMETypes):
   38212         * loader/archive/ArchiveFactory.h:
   38213 
   38214         * loader/archive/ArchiveResource.cpp: Analog to "WebResource" in WebKitMac.  Contains the data and other important
   38215             attributes of an archived resource
   38216         (WebCore::ArchiveResource::create):
   38217         (WebCore::ArchiveResource::ArchiveResource):
   38218         (WebCore::ArchiveResource::response):
   38219         * loader/archive/ArchiveResource.h:
   38220         (WebCore::ArchiveResource::data):
   38221         (WebCore::ArchiveResource::url):
   38222         (WebCore::ArchiveResource::mimeType):
   38223         (WebCore::ArchiveResource::textEncoding):
   38224         (WebCore::ArchiveResource::frameName):
   38225         (WebCore::ArchiveResource::ignoreWhenUnarchiving):
   38226         (WebCore::ArchiveResource::shouldIgnoreWhenUnarchiving):
   38227 
   38228         * loader/archive/ArchiveResourceCollection.cpp: Analog of "WebUnarchivingState" in WebKitMac.  Contains a hash of
   38229             all the resources for every frame in an archive, and contains the archives for each subframe needed to load a multi-frame archive
   38230         (WebCore::ArchiveResourceCollection::ArchiveResourceCollection):
   38231         (WebCore::ArchiveResourceCollection::addAllResources):
   38232         (WebCore::ArchiveResourceCollection::addResource):
   38233         (WebCore::ArchiveResourceCollection::archiveResourceForURL):
   38234         (WebCore::ArchiveResourceCollection::popSubframeArchive):
   38235         * loader/archive/ArchiveResourceCollection.h:
   38236 
   38237         * loader/archive/cf/LegacyWebArchive.cpp: Subclass of Archive specifically for Webkit's Objective-C based ".webarchive" format.
   38238             Mostly a collection of static methods involved in parsing and serializing a WebKit-style .webarchive.  Is mostly supported
   38239             for any CF platform.
   38240         (WebCore::createPropertyListRepresentationFromResource):
   38241         (WebCore::createPropertyListRep):
   38242         (WebCore::createResourceResponseFromPropertyListData):
   38243         (WebCore::createResource):
   38244         (WebCore::LegacyWebArchive::create):
   38245         (WebCore::LegacyWebArchive::LegacyWebArchive):
   38246         (WebCore::LegacyWebArchive::init):
   38247         (WebCore::LegacyWebArchive::extract):
   38248         (WebCore::LegacyWebArchive::rawDataRepresentation):
   38249         (WebCore::createResourceResponseFromMacArchivedData):
   38250         (WebCore::propertyListDataFromResourceResponse):
   38251         * loader/archive/cf/LegacyWebArchive.h:
   38252         * loader/archive/cf/LegacyWebArchiveMac.mm:
   38253         (WebCore::createResourceResponseFromMacArchivedData):
   38254         (WebCore::propertyListDataFromResourceResponse):
   38255 
   38256         * platform/network/mac/ResourceRequest.h:
   38257         * platform/network/mac/ResourceRequestMac.mm:
   38258         (WebCore::ResourceRequest::applyWebArchiveHackForMail): Tweak the resource request for Mac clients when loading WebArchives
   38259 
   38260 2008-03-25  David Hyatt  <hyatt (a] apple.com>
   38261 
   38262         Cut and paste error in the zoom code.  A width() should have been a height().  Regression tests caught this.
   38263 
   38264         * page/DOMWindow.cpp:
   38265         (WebCore::DOMWindow::innerHeight):
   38266 
   38267 2008-03-24  Darin Adler  <darin (a] apple.com>
   38268 
   38269         - try to fix broken Wx build
   38270 
   38271         * platform/wx/TemporaryLinkStubs.cpp:
   38272         (GraphicsContext::setPlatformShadow):
   38273         (GraphicsContext::clearPlatformShadow):
   38274 
   38275 2008-03-24  Darin Adler  <darin (a] apple.com>
   38276 
   38277         Reviewed by Sam.
   38278 
   38279         - use AtomicString more consistently for attribute values
   38280 
   38281         1% speedup on Acid3 test 26
   38282 
   38283         * dom/Element.cpp:
   38284         (WebCore::Element::setAttribute): Changed value argument to AtomicString.
   38285         Also fixed call to lower() to only be done if the name isn't already lowercase.
   38286         Also took out one unneeded condition in a cascade of if statements.
   38287         (WebCore::Element::createAttribute): Ditto.
   38288         (WebCore::Element::setAttributeNS): Ditto.
   38289         * dom/Element.h: Ditto.
   38290         * dom/StyledElement.cpp:
   38291         (WebCore::StyledElement::createAttribute): Ditto.
   38292         * dom/StyledElement.h: Ditto.
   38293 
   38294 2008-03-24  Darin Adler  <darin (a] apple.com>
   38295 
   38296         Reviewed by Sam.
   38297 
   38298         - get rid of extra level of function call in toJS functions for Node
   38299 
   38300         0.6% speedup on Acid3 test 26
   38301 
   38302         * bindings/js/JSNodeCustom.cpp:
   38303         (WebCore::toJS): Take a raw pointer, not a PassRefPtr, like other toJS functions.
   38304 
   38305         * bindings/scripts/CodeGeneratorJS.pm: Add an inlined toJS for EventTargetNode*
   38306         to avoid ambiguity that otherwise exists between the toJS for EventTarget* and
   38307         for Node*.
   38308 
   38309 2008-03-24  Darin Adler  <darin (a] apple.com>
   38310 
   38311         Reviewed by Hyatt.
   38312 
   38313         - add fast path to isValidName that does not use advanced Unicode functions
   38314 
   38315         2% speedup on Acid3 test 26
   38316 
   38317         * dom/Document.cpp:
   38318         (WebCore::isValidNameNonASCII): Added. Contains the old isValidName function.
   38319         (WebCore::isValidNameASCII): Added. Contains a simpler function that returns
   38320         true for most valid names that are also all ASCII.
   38321         (WebCore::Document::isValidName): Changed to call both of the above functions.
   38322         The common case is that isValidNameASCII returns true so isValidNameNonASCII
   38323         is never called.
   38324 
   38325 2008-03-24  David Hyatt  <hyatt (a] apple.com>
   38326 
   38327         Fix for bug 18052, window properties need to respect zoom factor.
   38328 
   38329         Reviewed by Beth
   38330 
   38331         * page/DOMWindow.cpp:
   38332         (WebCore::DOMWindow::innerHeight):
   38333         (WebCore::DOMWindow::innerWidth):
   38334         (WebCore::DOMWindow::scrollX):
   38335         (WebCore::DOMWindow::scrollY):
   38336         (WebCore::DOMWindow::scrollTo):
   38337         * page/FrameView.cpp:
   38338         (WebCore::FrameViewPrivate::reset):
   38339         (WebCore::FrameView::layout):
   38340         (WebCore::FrameView::performPostLayoutTasks):
   38341 
   38342 2008-03-24  Sam Weinig  <sam (a] webkit.org>
   38343 
   38344         Reviewed by Darin Adler.
   38345 
   38346         Fix http://bugs.webkit.org/show_bug.cgi?id=18048
   38347         The "thisObject" parameter to JSEvaluateScript is not used properly
   38348 
   38349         * bindings/js/kjs_proxy.cpp:
   38350         (WebCore::KJSProxy::evaluate): No need to pass a thisObject since we want the global object to be used.
   38351         * bridge/jni/jni_jsobject.mm:
   38352         (JavaJSObject::eval): To avoid any change to this function, don't pass a thisObject to keep the same
   38353         behavior.
   38354 
   38355 2008-03-24  Brady Eidson  <beidson (a] apple.com>
   38356 
   38357         Reviewed by Darin's rubberstamp
   38358 
   38359         Land a load of empty files for upcoming work to make sure I'm not breaking any platform's build
   38360 
   38361         * GNUmakefile.am:
   38362         * WebCore.pro:
   38363         * WebCore.vcproj/WebCore.vcproj:
   38364         * WebCore.xcodeproj/project.pbxproj:
   38365         * WebCoreSources.bkl:
   38366         * loader/archive: Added.
   38367         * loader/archive/Archive.h: Added.
   38368         * loader/archive/ArchiveFactory.cpp: Added.
   38369         * loader/archive/ArchiveFactory.h: Added.
   38370         * loader/archive/ArchiveResource.cpp: Added.
   38371         * loader/archive/ArchiveResource.h: Added.
   38372         * loader/archive/ArchiveResourceCollection.cpp: Added.
   38373         * loader/archive/ArchiveResourceCollection.h: Added.
   38374         * loader/archive/cf: Added.
   38375         * loader/archive/cf/LegacyWebArchive.cpp: Added.
   38376         * loader/archive/cf/LegacyWebArchive.h: Added.
   38377         * loader/archive/cf/LegacyWebArchiveMac.mm: Added.
   38378 
   38379 2008-03-24  David Hyatt  <hyatt (a] apple.com>
   38380 
   38381         Fix for bug 18009. Make sure the IE offset/client/scroll*** extensions respect full page zoom.
   38382 
   38383         Reviewed by Beth
   38384 
   38385         * dom/Element.cpp:
   38386         (WebCore::localZoomForRenderer):
   38387         (WebCore::adjustForLocalZoom):
   38388         (WebCore::adjustForAbsoluteZoom):
   38389         (WebCore::Element::offsetLeft):
   38390         (WebCore::Element::offsetTop):
   38391         (WebCore::Element::offsetWidth):
   38392         (WebCore::Element::offsetHeight):
   38393         (WebCore::Element::clientLeft):
   38394         (WebCore::Element::clientTop):
   38395         (WebCore::Element::clientWidth):
   38396         (WebCore::Element::clientHeight):
   38397         (WebCore::Element::scrollLeft):
   38398         (WebCore::Element::scrollTop):
   38399         (WebCore::Element::setScrollLeft):
   38400         (WebCore::Element::setScrollTop):
   38401         (WebCore::Element::scrollWidth):
   38402         (WebCore::Element::scrollHeight):
   38403         * rendering/RenderBox.cpp:
   38404         (WebCore::RenderBox::setStyle):
   38405         * rendering/RenderObject.cpp:
   38406         (WebCore::RenderObject::offsetParent):
   38407         * rendering/RenderObject.h:
   38408 
   38409 2008-03-24  Brady Eidson  <beidson (a] apple.com>
   38410 
   38411         Reviewed by Darin
   38412 
   38413         Some style cleanup and add a logging channel for upcoming work
   38414 
   38415         * platform/Logging.cpp:
   38416         * platform/Logging.h:
   38417 
   38418         * platform/MIMETypeRegistry.cpp:
   38419         (WebCore::initializeSupportedImageMIMETypes):
   38420         (WebCore::initializeSupportedNonImageMimeTypes):
   38421 
   38422 2008-03-24  Dan Bernstein  <mitz (a] apple.com>
   38423 
   38424         Reviewed by Sam Weinig.
   38425 
   38426         - fix <rdar://problem/5812292> CrashTracer: [REGRESSION] 60 crashes in Safari at com.apple.WebCore: WebCore::RenderObject::repaintRectangle + 47
   38427 
   38428         Test: fast/repaint/renderer-destruction-by-invalidateSelection-crash.html
   38429 
   38430         * page/FrameView.cpp:
   38431         (WebCore::FrameViewPrivate::reset): Removed repaintRects code.
   38432         (WebCore::FrameView::layout): Ditto.
   38433         (WebCore::FrameView::addRepaintInfo): Removed.
   38434 
   38435         * page/FrameView.h: Removed addRepaintInfo().
   38436 
   38437         * rendering/RenderBlock.cpp:
   38438         (WebCore::RenderBlock::layoutBlock): Changed to call repaintRectangle
   38439         instead of FrameView::addRepaintInfo().
   38440         * rendering/RenderTable.cpp:
   38441         (WebCore::RenderTable::layout): Ditto.
   38442 
   38443 2008-03-24  Alp Toker  <alp (a] atoker.com>
   38444 
   38445         GTK+/soup http backend build fix for breakage introduced in r31141.
   38446         Fix suggested by Xan.
   38447 
   38448         * platform/network/ResourceHandle.h:
   38449 
   38450 2008-03-24  Dan Bernstein  <mitz (a] apple.com>
   38451 
   38452         Reviewed by Sam Weinig.
   38453 
   38454         - fix <rdar://problem/5792582> CSS opacity does not work with GDI text
   38455         - fix <rdar://problem/5792619> non-opaque CSS colors do not work with GDI text (RGBA, HSLA)
   38456         - fix <rdar://problem/5792624> GDI text can't be stroked/filled independently
   38457         - make text-shadow work with GDI text
   38458         - make -webkit-background-clip: text work with GDI text
   38459 
   38460         * platform/graphics/GraphicsContext.cpp:
   38461         (WebCore::GraphicsContext::setShadow): Made this a shared method that
   38462         updates the state and calls the platform-specific method.
   38463         (WebCore::GraphicsContext::clearShadow): Ditto.
   38464         (WebCore::GraphicsContext::getShadow): Added.
   38465 
   38466         * platform/graphics/GraphicsContext.h:
   38467         (WebCore::GraphicsContext::WindowsBitmap): Added this class that
   38468         represents a bitmap with a Windows device context that GDI can draw into.
   38469 
   38470         * platform/graphics/GraphicsContextPrivate.h:
   38471         (WebCore::GraphicsContextState::GraphicsContextState): Added the shadow
   38472         parameters to the graphics state.
   38473 
   38474         * platform/graphics/cairo/GraphicsContextCairo.cpp:
   38475         (WebCore::GraphicsContext::setPlatformShadow): Renamed the platform-
   38476         specific implementation to this.
   38477         (WebCore::GraphicsContext::clearPlatformShadow): Renamed the platform-
   38478         specific implementation to this.
   38479 
   38480         * platform/graphics/cg/GraphicsContextCG.cpp:
   38481         (WebCore::GraphicsContext::setPlatformShadow): Renamed the platform-
   38482         specific implementation to this.
   38483         (WebCore::GraphicsContext::clearPlatformShadow): Renamed the platform-
   38484         specific implementation to this.
   38485 
   38486         * platform/graphics/qt/GraphicsContextQt.cpp:
   38487         (WebCore::GraphicsContext::setPlatformShadow): Renamed the platform-
   38488         specific implementation to this.
   38489         (WebCore::GraphicsContext::clearPlatformShadow): Renamed the platform-
   38490         specific implementation to this.
   38491 
   38492         * platform/graphics/win/FontCGWin.cpp:
   38493         (WebCore::toCGFloat): Added. Converts a Windows FIXED.
   38494         (WebCore::createPathForGlyph): Added. Retrieves a glyph's hinted
   38495         outline from GDI and creates a CGPath containing it.
   38496         (WebCore::Font::drawGlyphs): Added two code paths in the GDI case.
   38497         The existing code path, which uses GDI to draw text directly to the
   38498         graphics context, is used for opaque-colored, non-transformed,
   38499         non-stroked, non-shadowed text in a GDI-backed graphics context that is
   38500         not in a transparency layer.
   38501         An additional code path is used for non-stroked text in all other cases.
   38502         It uses GDI to draw black text into an all-white Windows bitmap, then
   38503         uses the green channel as a mask to create a bitmap with the desired
   38504         fill color and alpha. The bitmap is then drawn into the graphics
   38505         context, at which time transparency layers, transforms and shadows are
   38506         handled properly.
   38507         A third code path is used for stroked text. It constructs a path from
   38508         hinted glyph outlines retrieved from GDI and strokes (and optionally
   38509         fills) it.
   38510 
   38511         * platform/graphics/win/GraphicsContextCGWin.cpp:
   38512         (WebCore::GraphicsContext::getWindowsContext): Added a mayCreateBitmap
   38513         parameter. When false, prevents this method from creating a Windows
   38514         device context if the graphics context does not already have one.
   38515         (WebCore::GraphicsContext::releaseWindowsContext): Added a
   38516         mayCreateBitmap parameter to match getWindowsContext().
   38517         (WebCore::GraphicsContext::WindowsBitmap::WindowsBitmap):
   38518         (WebCore::GraphicsContext::WindowsBitmap::~WindowsBitmap):
   38519         (WebCore::GraphicsContext::createWindowsBitmap): Added.
   38520         (WebCore::GraphicsContext::drawWindowsBitmap): Added. Draws the bitmap
   38521         as a non-alpha-premultiplied image.
   38522 
   38523 2008-03-24  Kevin McCullough <kmccullough (a] apple.com>
   38524 
   38525           - Fixed Changelog
   38526 
   38527 2008-03-24  Marco Barisione  <marco.barisione (a] collabora.co.uk>
   38528 
   38529         Reviewed by Alp Toker.
   38530 
   38531         http://bugs.webkit.org/show_bug.cgi?id=17845
   38532         [GTK] combo box menu displayed in the wrong position
   38533 
   38534         * platform/gtk/PopupMenuGtk.cpp:
   38535         (WebCore::PopupMenu::show): Change the popup menu vertical position so
   38536         that the active item is over the combo box.
   38537         (WebCore::PopupMenu::menuPositionFunction): use the "push in" style
   38538         like native GTK+ combo boxes to handle menus that don't fit in the
   38539         screen.
   38540 
   38541 2008-03-24  Adam Roben  <aroben (a] apple.com>
   38542 
   38543         * WebCore.vcproj/WebCore.vcproj: Add files from WebCore/page/inspector
   38544         to the project.
   38545 
   38546 2008-03-24  Alexey Proskuryakov  <ap (a] webkit.org>
   38547 
   38548         Build fix.
   38549 
   38550         * WebCore.xcodeproj/project.pbxproj: Added DOMSVGAltGlyphElement.h and
   38551         DOMSVGAltGlyphElementInternal.h to Copy Generated Headers phase.
   38552 
   38553 2008-03-24  Eric Seidel  <eric (a] webkit.org>
   38554 
   38555         Build fix, no review.
   38556 
   38557         Fix project paths to be group relative instead of project relative
   38558 
   38559         * WebCore.xcodeproj/project.pbxproj:
   38560 
   38561 2008-03-23  Maciej Stachowiak  <mjs (a] apple.com>
   38562 
   38563         Reviewed by Eric.
   38564 
   38565         - fixed "SVGTextElement.getNumberOfChars is broken for altGlyph (affects Acid3 test 79)"
   38566         http://bugs.webkit.org/show_bug.cgi?id=17062
   38567 
   38568         * svg/SVGAltGlyphElement.cpp: Added. Implementation for new element.
   38569         (WebCore::SVGAltGlyphElement::SVGAltGlyphElement):
   38570         (WebCore::SVGAltGlyphElement::~SVGAltGlyphElement):
   38571         (WebCore::SVGAltGlyphElement::setGlyphRef):
   38572         (WebCore::SVGAltGlyphElement::glyphRef):
   38573         (WebCore::SVGAltGlyphElement::setFormat):
   38574         (WebCore::SVGAltGlyphElement::format):
   38575         (WebCore::SVGAltGlyphElement::childShouldCreateRenderer):
   38576         (WebCore::SVGAltGlyphElement::createRenderer): For now, this just renders as a tspan,
   38577         which is right for everything besides the alternate glyph substitution itself.
   38578         * svg/SVGAltGlyphElement.h: Added. Header for new element.
   38579         (WebCore::SVGAltGlyphElement::contextElement):
   38580         * svg/SVGAltGlyphElement.idl: Added. Interface for new element.
   38581         * svg/SVGTSpanElement.cpp:
   38582         (WebCore::SVGTSpanElement::childShouldCreateRenderer): Allow altGlyph to render here.
   38583         * svg/SVGTextElement.cpp:
   38584         (WebCore::SVGTextElement::childShouldCreateRenderer): ditto
   38585         * svg/SVGTextPathElement.cpp:
   38586         (WebCore::SVGTextPathElement::childShouldCreateRenderer): ditto
   38587         * svg/svgtags.in: Add altGlyph
   38588         * DerivedSources.make: Add new files
   38589         * GNUmakefile.am: ditto
   38590         * WebCore.SVG.exp: Add new ObjC DOM class
   38591         * WebCore.pro: Add new files
   38592         * WebCore.vcproj/WebCore.vcproj: ditto
   38593         * WebCore.xcodeproj/project.pbxproj: ditto
   38594         * bindings/js/JSSVGElementWrapperFactory.cpp: Handle altGlyph
   38595         * bindings/objc/DOM.mm:
   38596         (WebCore::createElementClassMap): ditto
   38597         * bindings/objc/DOMInternal.h: Include altGlyph header
   38598         * bindings/objc/DOMSVG.h: Include altGlyph header
   38599 
   38600 2008-03-23  Robert Blaut  <webkit (a] blaut.biz>
   38601 
   38602         Reviewed by eseidel.  Landed by eseidel.
   38603 
   38604         Bug 17685: [~=] attribute selector failing to match empty string
   38605         <http://bugs.webkit.org/show_bug.cgi?id=17685>
   38606 
   38607         Test: fast/css/attribute-selector-empty-value.html
   38608 
   38609         * css/CSSStyleSelector.cpp:
   38610         (WebCore::CSSStyleSelector::checkOneSelector):
   38611 
   38612 2008-03-22  Marco Barisione  <marco.barisione (a] collabora.co.uk>
   38613 
   38614         Reviewed by Darin Adler.
   38615 
   38616         http://bugs.webkit.org/show_bug.cgi?id=16339
   38617         Frame scrollbar positions are not updated on page scroll
   38618 
   38619         Widget::geometryChanged() was called instead of
   38620         ScrollViewScrollbar::geometryChanged() because of a missing const.
   38621 
   38622         * platform/gtk/ScrollViewGtk.cpp:
   38623         (WebCore::ScrollViewScrollbar::geometryChanged): add the missing
   38624         const.
   38625 
   38626 2008-03-22  Rodney Dawes  <dobey (a] wayofthemonkey.com>
   38627 
   38628         Reviewed by Mark Rowe.
   38629 
   38630         Bug 17974: REGRESSION: npfunctions.h should not import npruntime_internal.h
   38631         <http://bugs.webkit.org/show_bug.cgi?id=17974>
   38632         <rdar://problem/5782310>
   38633 
   38634         Include npapi.h and npruntime.h directly in npfunctions.h.
   38635         Add npfunctions.h and npapi.h to npruntime_internal.h.
   38636         Replace includes of npfunctions.h with npruntime_internal.h.
   38637 
   38638         * bridge/npruntime_internal.h:
   38639         * plugins/PluginPackage.h:
   38640         * plugins/PluginStream.h:
   38641         * plugins/npapi.cpp:
   38642         * plugins/npfunctions.h:
   38643 
   38644 2008-03-22  Mark Rowe  <mrowe (a] apple.com>
   38645 
   38646         Qt build fix.
   38647 
   38648         * bridge/qt/qt_runtime.cpp:
   38649         (KJS::Bindings::valueRealType):
   38650 
   38651 2008-03-22  Eric Seidel  <eric (a] webkit.org>
   38652 
   38653         Reviewed by mjs.
   38654 
   38655         Unify handling of NAMESPACE_ERR and fix Acid3 test 25
   38656         http://bugs.webkit.org/show_bug.cgi?id=16693
   38657 
   38658         Test: fast/dom/DOMImplementation/createDocumentType-err.html
   38659 
   38660         * dom/DOMImplementation.cpp:
   38661         (WebCore::DOMImplementation::createDocumentType):
   38662         (WebCore::DOMImplementation::createDocument):
   38663         * dom/DOMImplementation.idl:
   38664         * dom/Document.cpp:
   38665         (WebCore::Document::hasPrefixNamespaceMismatch):
   38666         (WebCore::Document::createElementNS):
   38667         (WebCore::Document::parseQualifiedName):
   38668         (WebCore::Document::createAttributeNS):
   38669         * dom/Document.h:
   38670         * dom/Element.cpp:
   38671         (WebCore::Element::setAttributeNS):
   38672         * editing/FormatBlockCommand.cpp:
   38673         (WebCore::FormatBlockCommand::doApply):
   38674 
   38675 2008-03-22  Eric Seidel  <eric (a] webkit.org>
   38676 
   38677         Reviewed by mjs.
   38678 
   38679         Fix createElementNS to throw exceptions for invalid qualified names
   38680         Fixes Acid3 sub-test 23
   38681         http://bugs.webkit.org/show_bug.cgi?id=16833
   38682 
   38683         Tests: fast/dom/Document/createAttributeNS-namespace-err.html
   38684                fast/dom/Document/createElementNS-namespace-err.html
   38685 
   38686         * dom/Document.cpp:
   38687         (WebCore::Document::createElement):
   38688         (WebCore::hasNamespaceError):
   38689         (WebCore::Document::createElementNS):
   38690         (WebCore::Document::createAttributeNS):
   38691         * dom/Document.idl:
   38692 
   38693 2008-03-21  Cameron Zwarich  <cwzwarich (a] uwaterloo.ca>
   38694 
   38695         Reviewed by Oliver Hunt.
   38696 
   38697         Bug 13693: REGRESSION (r13615): Acid2 Test Eyes render improperly after a page refresh
   38698         <http://bugs.webkit.org/show_bug.cgi?id=13693>
   38699 
   38700         Do not create bogus history items for unloaded <object> elements, because they
   38701         cause fallback content to be ignored on reload.
   38702 
   38703         * loader/FrameLoader.cpp:
   38704         (WebCore::FrameLoader::createHistoryItemTree):
   38705 
   38706 2008-03-21  Dan Bernstein  <mitz (a] apple.com>
   38707 
   38708         Reviewed by Oliver Hunt.
   38709 
   38710         - fix http://bugs.webkit.org/show_bug.cgi?id=17988
   38711           REGRESSION (r31114-31132): Crash in InlineBox::isDirty() opening chowhound.com
   38712 
   38713         Test: fast/css-generated-content/empty-content-with-float-crash.html
   38714 
   38715         * rendering/bidi.cpp:
   38716         (WebCore::RenderBlock::layoutInlineChildren): Added a null check for
   38717         the case where the block contains no in-flow elements but still lays
   38718         out as a line flow, which can happen as a result of empty generated
   38719         content.
   38720 
   38721 2008-03-21  Sam Weinig  <sam (a] webkit.org>
   38722 
   38723         Reviewed by Oliver Hunt.
   38724 
   38725         Fix <rdar://problem/5788451>
   38726         toDataURL not implemented for Windows (need mapping of MIME type to UTI)
   38727 
   38728         Hard code support for just PNG's on windows, the minimum the spec requires.
   38729 
   38730         * platform/MIMETypeRegistry.cpp:
   38731         (WebCore::initializeSupportedImageMIMETypesForEncoding):
   38732         * platform/graphics/cg/ImageBufferCG.cpp:
   38733         (WebCore::utiFromMIMEType):
   38734         (WebCore::ImageBuffer::toDataURL):
   38735 
   38736 2008-03-21  Matt Lilek  <webkit (a] mattlilek.com>
   38737 
   38738         Not reviewed, Mac build fix.
   38739 
   38740         * bindings/objc/WebScriptObject.mm:
   38741         (+[WebScriptObject _convertValueToObjcValue:originRootObject:rootObject:]):
   38742         * bridge/jni/jni_utility.cpp:
   38743         (KJS::Bindings::convertValueToJValue):
   38744         * bridge/objc/objc_runtime.mm:
   38745         (ObjcFallbackObjectImp::callAsFunction):
   38746 
   38747 2008-03-21  Adam Roben  <aroben (a] apple.com>
   38748 
   38749         Attempt to fix the Mac build
   38750 
   38751         * bindings/objc/DOMUtility.mm:
   38752         (KJS::createDOMWrapper):
   38753 
   38754 2008-03-21  Adam Roben  <aroben (a] apple.com>
   38755 
   38756         Rename static info members to s_info
   38757 
   38758         This avoids conflicts with custom "info" methods, such as the one that
   38759         will soon be added to Console.
   38760 
   38761         Reviewed by Ada Chan and Sam Weinig.
   38762 
   38763 2008-03-21  David Hyatt  <hyatt (a] apple.com>
   38764 
   38765         <rdar://problem/5808863> Zooming should not let non-zero border width become zero
   38766 
   38767         Make sure zoomed values that begin >= 1 are not allowed to fall below 1.
   38768 
   38769         Reviewed by adele
   38770 
   38771         * css/CSSPrimitiveValue.cpp:
   38772         (WebCore::CSSPrimitiveValue::computeLengthDouble):
   38773         * loader/CachedImage.cpp:
   38774         (WebCore::CachedImage::imageSize):
   38775         (WebCore::CachedImage::imageRect):
   38776 
   38777 2008-03-21  Kevin McCullough  <kmccullough (a] apple.com>
   38778 
   38779         Reviewed by Sam.
   38780 
   38781         -<rdar://problem/5712804> XMLHttpRequests do not show response contents, preview images (14313)
   38782         -<rdar://problem/5712931> XMLHttpRequests should be shown separately and grouped (14315)
   38783         -<rdar://problem/5732836> XMLHttpRequest: Inspector should show network activity/XHR in Console (17233)
   38784         - Instrument the InspectorController to cache XHR resrouces since they are not cached by WebCore.
   38785         The resources will be kept in the same map as all other resources so they will have the exact
   38786         same lifecycle. 
   38787 
   38788         * ChangeLog:
   38789         * page/InspectorController.cpp:
   38790         (WebCore::InspectorCachedXMLHttpRequestResource::type):
   38791         (WebCore::InspectorCachedXMLHttpRequestResource::setType):
   38792         (WebCore::InspectorCachedXMLHttpRequestResource::data):
   38793         (WebCore::InspectorCachedXMLHttpRequestResource::setData):
   38794         (WebCore::InspectorCachedXMLHttpRequestResource::encoding):
   38795         (WebCore::InspectorCachedXMLHttpRequestResource::setEncoding):
   38796         (WebCore::InspectorCachedXMLHttpRequestResource::create):
   38797         (WebCore::InspectorCachedXMLHttpRequestResource::InspectorCachedXMLHttpRequestResource):
   38798 
   38799 2008-03-21  Rodney Dawes  <dobey (a] wayofthemonkey.com>
   38800 
   38801         Reviewed by Holger.
   38802 
   38803         http://bugs.webkit.org/show_bug.cgi?id=17981
   38804 
   38805         Remove WebCore/ForwardingHeaders from cppflags as it is not needed,
   38806         and causes build problems with GTK+.
   38807 
   38808         * GNUmakefile.am:
   38809 
   38810 2008-03-21  Dan Bernstein  <mitz (a] apple.com>
   38811 
   38812         Reviewed by Adele Peterson.
   38813 
   38814         - fix http://bugs.webkit.org/show_bug.cgi?id=17966
   38815           REGRESSION (r31114-r31132): Clearing via br behaves unpredictably
   38816 
   38817         Test: fast/block/float/br-with-clear.html
   38818 
   38819         * rendering/bidi.cpp:
   38820         (WebCore::RenderBlock::layoutInlineChildren): Fixed the logic for the
   38821         very special case of an all-lines-clean block that ends with a float-
   38822         clearing <br> by looking for the <br> at the end of the line rather
   38823         than at its beginning.
   38824 
   38825 2008-03-21  Adam Roben  <aroben (a] apple.com>
   38826 
   38827         Don't allow any newly-scheduled plugin requests to be serviced when JS is paused
   38828 
   38829         This is a followup to r31199.
   38830 
   38831         Reviewed by Tim Hatcher.
   38832 
   38833         * plugins/PluginView.cpp:
   38834         (WebCore::PluginView::requestTimerFired): Added an assertion that JS
   38835         is not paused.
   38836         (WebCore::PluginView::scheduleRequest): Don't start the request timer
   38837         if JS is paused. This is the bug fix.
   38838         (WebCore::PluginView::setJavaScriptPaused): Replaced the use of
   38839         m_requestTimerWasActive with a check to see if we have any pending
   38840         requests. m_requestTimerWasActive would not be accurate if a new
   38841         request had been scheduled while JS was paused.
   38842         (WebCore::PluginView::PluginView): Removed initialization of
   38843         m_requestTimerWasActive.
   38844         * plugins/PluginView.h: Removed m_requestTimerWasActive.
   38845 
   38846 2008-03-20  Dan Bernstein  <mitz (a] apple.com>
   38847 
   38848         Reviewed by Anders Carlsson.
   38849 
   38850         - fix an assertion failure due to a line being marked dirty during
   38851           computeVerticalPositionsForLine() due to temporary box destruction
   38852 
   38853         Test: fast/inline/clean-after-removing-temp-boxes.html
   38854 
   38855         * rendering/RenderText.cpp:
   38856         (WebCore::RenderText::setTextWithOffset): Added code to dirty lines
   38857         when this method is called on an empty text node, which has no line
   38858         boxes.
   38859         * rendering/bidi.cpp:
   38860         (WebCore::RenderBlock::computeVerticalPositionsForLine): Mark the line
   38861         clean in the end.
   38862 
   38863 2008-03-20  Anders Carlsson  <andersca (a] apple.com>
   38864 
   38865         Reviewed by Maciej.
   38866 
   38867         Make some member variables private.
   38868         
   38869         * loader/ResourceLoader.cpp:
   38870         (WebCore::ResourceLoader::ResourceLoader):
   38871         * loader/ResourceLoader.h:
   38872 
   38873 2008-03-20  Anders Carlsson  <andersca (a] apple.com>
   38874 
   38875         Reviewed by Maciej.
   38876 
   38877         Get rid of m_originalURL in ResourceLoader.
   38878 
   38879         * loader/ResourceLoader.cpp:
   38880         (WebCore::ResourceLoader::load):
   38881         Don't store m_originalURL.
   38882         
   38883         * loader/ResourceLoader.h:
   38884         * loader/SubresourceLoader.cpp:
   38885         (WebCore::SubresourceLoader::willSendRequest):
   38886         Use the url of the current request instead of the original URL.
   38887 
   38888 2008-03-20  Anders Carlsson  <andersca (a] apple.com>
   38889 
   38890         Reviewed by Maciej.
   38891 
   38892         Small loader cleanups.
   38893         
   38894         * loader/MainResourceLoader.cpp:
   38895         (WebCore::MainResourceLoader::willSendRequest):
   38896         No need to call setRequest here, ResourceLoader::willSendRequest takes care of that. 
   38897         Also, there is no need to check that newRequest is null here, because we assert earlier that it is not.
   38898         
   38899         * loader/ResourceLoader.h:
   38900         Get rid of setRequest, it is no longer needed.
   38901 
   38902 2008-03-20  Anders Carlsson  <andersca (a] apple.com>
   38903 
   38904         Get rid of a couple of unnecessary class declarations.
   38905         
   38906         * loader/SubresourceLoader.h:
   38907 
   38908 2008-03-20  David Hyatt  <hyatt (a] apple.com>
   38909 
   38910         Add a new value to background-clip, "text", that allows backgrounds to be clipped to foreground text (and
   38911         associated text decorations like shadows and underlines).
   38912 
   38913         Reviewed by Beth
   38914 
   38915         * css/CSSParser.cpp:
   38916         (WebCore::CSSParser::parseBackgroundProperty):
   38917         * css/CSSPrimitiveValueMappings.h:
   38918         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
   38919         (WebCore::CSSPrimitiveValue::operator EBackgroundBox):
   38920         * platform/graphics/GraphicsContext.cpp:
   38921         (WebCore::GraphicsContext::clipToImageBuffer):
   38922         * platform/graphics/GraphicsContext.h:
   38923         * platform/graphics/cg/GraphicsContextCG.cpp:
   38924         (WebCore::GraphicsContext::clipToImageBuffer):
   38925         * rendering/InlineBox.cpp:
   38926         (WebCore::InlineBox::paint):
   38927         * rendering/InlineFlowBox.cpp:
   38928         (WebCore::InlineFlowBox::paintBackgrounds):
   38929         (WebCore::InlineFlowBox::paintBackground):
   38930         (WebCore::InlineFlowBox::paintBoxDecorations):
   38931         * rendering/InlineFlowBox.h:
   38932         * rendering/InlineTextBox.cpp:
   38933         (WebCore::InlineTextBox::paint):
   38934         * rendering/RenderBlock.cpp:
   38935         (WebCore::RenderBlock::paintColumns):
   38936         (WebCore::RenderBlock::paintObject):
   38937         (WebCore::RenderBlock::paintFloats):
   38938         * rendering/RenderBlock.h:
   38939         * rendering/RenderBox.cpp:
   38940         (WebCore::RenderBox::paintRootBoxDecorations):
   38941         (WebCore::RenderBox::paintBoxDecorations):
   38942         (WebCore::RenderBox::paintBackgrounds):
   38943         (WebCore::RenderBox::paintBackground):
   38944         (WebCore::RenderBox::paintBackgroundExtended):
   38945         * rendering/RenderBox.h:
   38946         * rendering/RenderFieldset.cpp:
   38947         (WebCore::RenderFieldset::paintBoxDecorations):
   38948         * rendering/RenderFlow.cpp:
   38949         (WebCore::RenderFlow::paintLines):
   38950         * rendering/RenderObject.h:
   38951         (WebCore::RenderObject::paintBackgroundExtended):
   38952         * rendering/RenderStyle.h:
   38953         * rendering/RenderTable.cpp:
   38954         (WebCore::RenderTable::paintBoxDecorations):
   38955         * rendering/RenderTableCell.cpp:
   38956         (WebCore::RenderTableCell::paintBackgroundsBehindCell):
   38957 
   38958 2008-03-20  Adam Roben  <aroben (a] apple.com>
   38959 
   38960         Allow pausing/blocking of JS execution by plugins
   38961 
   38962         Part of Bug 17133: Should support pausing JavaScript execution without
   38963         hanging the process
   38964 
   38965         <http://bugs.webkit.org/show_bug.cgi?id=17133>
   38966         <rdar://problem/5719551>
   38967 
   38968         This patch doesn't affect Mac, which doesn't use the shared PluginView
   38969         code.
   38970 
   38971         Note that this patch doesn't prevent plugins from executing JS via an
   38972         NPObject they've already gotten hold of. It just blocks obtaining new
   38973         NPObjects and pauses any requests to evaluate javascript: URIs. This
   38974         is probably good enough for now because most plugins seem to always
   38975         obtain the Window object each time they want to execute JS.
   38976 
   38977         Reviewed by Tim Hatcher.
   38978 
   38979         * plugins/PluginView.cpp:
   38980         (WebCore::PluginView::getValue): Return an error if JS is paused.
   38981         (WebCore::PluginView::setJavaScriptPaused): Stop the request timer if
   38982         we're pausing, and resume it if we're unpausing.
   38983         (WebCore::PluginView::PluginView): Initialize new members.
   38984         * plugins/PluginView.h:
   38985 
   38986 2008-03-20  Adam Roben  <aroben (a] apple.com>
   38987 
   38988         Allow pausing of callOnMainThread callbacks
   38989 
   38990         Part of Bug 17133: Should support pausing JavaScript execution without
   38991         hanging the process
   38992 
   38993         <http://bugs.webkit.org/show_bug.cgi?id=17133>
   38994         <rdar://problem/5719551>
   38995 
   38996         Reviewed by Tim Hatcher.
   38997 
   38998         * platform/MainThread.cpp:
   38999         (WebCore::dispatchFunctionsFromMainThread): If callbacks are paused,
   39000         don't dispatch the functions.
   39001         (WebCore::setMainThreadCallbacksPaused): Added. If we're being
   39002         unpaused, call scheduleDispatchFunctionsOnMainThread so that any
   39003         queued callbacks will get dispatched in the near future.
   39004         * platform/MainThread.h:
   39005 
   39006 2008-03-20  Adam Roben  <aroben (a] apple.com>
   39007 
   39008         Allow blocking of JS event handlers/javascript: URIs per-Frame
   39009 
   39010         Part of Bug 17133: Should support pausing JavaScript execution without
   39011         hanging the process
   39012 
   39013         <http://bugs.webkit.org/show_bug.cgi?id=17133>
   39014         <rdar://problem/5719551>
   39015 
   39016         Two new methods are added to KJSProxy: setPaused and isPaused. When
   39017         setPaused(true) is called, JS event handlers are blocked and
   39018         javascript: URIs will not be evaluated.
   39019 
   39020         Reviewed by Tim Hatcher.
   39021 
   39022         * bindings/js/kjs_events.cpp:
   39023         (WebCore::JSAbstractEventListener::handleEvent):
   39024           - Removed some old KJS_DEBUGGER code
   39025           - Don't run the handler if the KJSProxy is paused.
   39026         * bindings/js/kjs_proxy.cpp:
   39027         (WebCore::KJSProxy::KJSProxy): Initialize new member.
   39028         * bindings/js/kjs_proxy.h: Added new methods.
   39029         * loader/FrameLoader.cpp:
   39030         (WebCore::FrameLoader::executeScript): Don't execute the script if the
   39031         KJSProxy is paused.
   39032 
   39033 2008-03-20  Jon Honeycutt  <jhoneycutt (a] apple.com>
   39034 
   39035         Reviewed by Anders.
   39036 
   39037         Fix Windows warning / leak: warning C4150: deletion of pointer to
   39038         incomplete type 'WebCore::PluginRequest'; no destructor called
   39039 
   39040         * plugins/PluginView.cpp: Move PluginRequest class to PluginView.h so
   39041         Windows PluginView destructor can use WTF::deleteAllValues to clean up
   39042         m_requests.
   39043         * plugins/PluginView.h:
   39044         (WebCore::PluginRequest::PluginRequest):
   39045         (WebCore::PluginRequest::frameLoadRequest):
   39046         (WebCore::PluginRequest::notifyData):
   39047         (WebCore::PluginRequest::sendNotification):
   39048         (WebCore::PluginRequest::shouldAllowPopups):
   39049 
   39050 2008-03-20  Mark Rowe  <mrowe (a] apple.com>
   39051 
   39052         Reviewed by Sam Weinig.
   39053 
   39054         Ensure that the defines in FEATURE_DEFINES are sorted so that they will match the default settings of build-webkit.
   39055         This will prevent the world from being rebuilt if you happen to switch between building in Xcode and with build-webkit on the
   39056         command-line.
   39057 
   39058         * Configurations/WebCore.xcconfig:
   39059 
   39060 2008-03-20  Jon Honeycutt  <jhoneycutt (a] apple.com>
   39061 
   39062         Reviewed by Anders.
   39063 
   39064         <rdar://problem/5809600> REGRESSION:
   39065         http/tests/plugins/cross-frame-object-access.html hangs Windows Layout
   39066         Tests
   39067 
   39068         r30897 changed the way we conditionalize this feature.
   39069 
   39070         * plugins/PluginView.cpp:
   39071         (WebCore::PluginView::getValue): Test ENABLE(NETSCAPE_PLUGIN_API)
   39072         instead of USE(NPOBJECT).
   39073         (WebCore::PluginView::bindingInstance): Same.
   39074 
   39075 2008-03-20  Adam Roben  <aroben (a] apple.com>
   39076 
   39077         Highlight nodes when you hover over them in the Console
   39078 
   39079         Part of Bug 16532: Inspector should highlight nodes in page when
   39080         hovering over nodes in Inspector's interface
   39081 
   39082         <http://bugs.webkit.org/show_bug.cgi?id=16532>
   39083         <rdar://problem/5712896>
   39084 
   39085         Reviewed by Tim Hatcher.
   39086 
   39087         * page/inspector/ConsolePanel.js:
   39088         (WebInspector.ConsolePanel._formatnode): Add mouseover/mouseout event
   39089         listeners to highlight the node and clear the highlight.
   39090 
   39091 2008-03-20  Adam Roben  <aroben (a] apple.com>
   39092 
   39093         Highlight nodes in the page when you hover over their DOM breadcrumbs
   39094 
   39095         Part of Bug 16532: Inspector should highlight nodes in page when
   39096         hovering over nodes in Inspector's interface
   39097 
   39098         <http://bugs.webkit.org/show_bug.cgi?id=16532>
   39099         <rdar://problem/5712896>
   39100 
   39101         Reviewed by Tim Hatcher.
   39102 
   39103         * page/inspector/DocumentPanel.js:
   39104         (WebInspector.DocumentPanel): Add an mouseout event listener to the
   39105         breadcrumbs element to clear the highlighted node.
   39106         (WebInspector.DocumentPanel.updateBreadcrumbs): Change the mouseover
   39107         event listener to highlight the node represented by the hovered
   39108         breadcrumb.
   39109 
   39110 2008-03-20  Adam Roben  <aroben (a] apple.com>
   39111 
   39112         Highlight nodes in the page when you hover over them in the DOM tree
   39113 
   39114         Part of Bug 16532: Inspector should highlight nodes in page when
   39115         hovering over nodes in Inspector's interface
   39116 
   39117         <http://bugs.webkit.org/show_bug.cgi?id=16532>
   39118         <rdar://problem/5712896>
   39119 
   39120         The inspected node is no longer highlighted (unless, of course, you
   39121         hover over it).
   39122 
   39123         Reviewed by Tim Hatcher.
   39124 
   39125         * page/inspector/DocumentPanel.js:
   39126         (WebInspector.DocumentPanel):
   39127           - Don't highlight the focused node when the DOM tree is shown
   39128           - Added mousemove/mouseout event listeners to set/clear the
   39129             highlighted node. These are added to the root of the DOM tree
   39130             instead of to each individual list item to avoid flashing as the
   39131             mouse moves between nodes.
   39132         (WebInspector.DocumentPanel.set focusedDOMNode): Don't highlight the
   39133         focused node.
   39134         (WebInspector.DocumentPanel._onmousemove): Highlight the node under
   39135         the mouse.
   39136 
   39137 2008-03-20  Adam Roben  <aroben (a] apple.com>
   39138 
   39139         Show nodes' content/padding/border/margin boxes in the node highlight
   39140 
   39141         Part of Bug 17221: Node highlight should show node metrics
   39142 
   39143         <http://bugs.webkit.org/show_bug.cgi?id=17221>
   39144         <rdar://problem/5732822>
   39145 
   39146         Outstanding issues:
   39147           1) We don't show padding/border/margins for inlines
   39148           2) We don't show any numeric metrics, we just draw the boxes
   39149           3) We'll probably want to tweak the look of the highlight some, at
   39150              least to make the boxes better distinguishable
   39151 
   39152         Reviewed by Tim Hatcher.
   39153 
   39154         * page/InspectorController.cpp:
   39155         (WebCore::drawOutlinedRect): Added. Just draws a single rect.
   39156         (WebCore::drawHighlightForBoxes): Added. Takes the rects we calculated
   39157         for the node and draws the highlight.
   39158         (WebCore::InspectorController::drawNodeHighlight): Calculates the
   39159         content/padding/border/margin boxes for blocks and passes them off to
   39160         drawHighlightForBoxes. The behavior for inlines is for now unchanged.
   39161 
   39162 2008-03-20  Adam Roben  <aroben (a] apple.com>
   39163 
   39164         Fix RenderContainer's override of addLineBoxRects to match RenderObject's
   39165 
   39166         RenderContainer::addLineBoxRects was never getting called because its
   39167         parameters didn't match those of RenderObject::addLineBoxRects.
   39168 
   39169         Reviewed by Mitz Pettel.
   39170 
   39171         No test possible.
   39172 
   39173         * rendering/RenderContainer.cpp: Added an optional bool
   39174         useSelectionHeight parameter to match RenderObject's method.
   39175         * rendering/RenderContainer.h: Ditto.
   39176 
   39177 2008-03-20  Marco Barisione  <marco.barisione (a] collabora.co.uk>
   39178 
   39179         Reviewed by Alp Toker.
   39180 
   39181         http://bugs.webkit.org/show_bug.cgi?id=17946
   39182         [GTK] Widgets are not clipped
   39183 
   39184         * platform/gtk/RenderThemeGtk.cpp:
   39185         (WebCore::paintMozWidget): pass the clipping rectangle to
   39186         moz_gtk_widget_paint() instead of just the widget rectangle.
   39187 
   39188 2008-03-20  David Hyatt  <hyatt (a] apple.com>
   39189 
   39190         Fix for http://bugs.webkit.org/show_bug.cgi?id=9279
   39191 
   39192         Make :hover work with the adjacent sibling selector.  This fix makes all forms of dynamic changes
   39193         (class name changes, :hover, :focus, etc.) work properly when used with the + selector.
   39194 
   39195         Reviewed by weinig
   39196 
   39197         Added fast/css/dynamic-sibling-selector.html
   39198 
   39199         * dom/Element.cpp:
   39200         (WebCore::Element::recalcStyle):
   39201 
   39202 2008-03-20  Aaron Golden  <aegolden (a] gmail.com>
   39203 
   39204         Reviewed by Darin and David Kilzer.
   39205 
   39206         Addresses <http://bugs.webkit.org/show_bug.cgi?id=15263>, which caused certain marquees to not display.
   39207 
   39208         Test: fast/html/marquee-scroll.html
   39209 
   39210         * html/HTMLMarqueeElement.cpp:
   39211         (WebCore::HTMLMarqueeElement::parseMappedAttribute):
   39212 
   39213 2008-03-20  Adam Roben  <aroben (a] apple.com>
   39214 
   39215         Export InspectorController::drawNodeHighlight
   39216 
   39217         Reviewed by Tim Hatcher.
   39218 
   39219         * WebCore.base.exp: Also sorted this file.
   39220 
   39221 2008-03-19  Stephanie Lewis  <slewis (a] apple.com>
   39222 
   39223         Rubber-stamped by Anders.
   39224 
   39225         Fix Windows Build
   39226 
   39227         * platform/cf/SharedBufferCF.cpp:
   39228         (WebCore::SharedBuffer::createCFData):
   39229 
   39230 2008-03-19  Stephanie Lewis <slewis (a] apple.com>
   39231 
   39232         Rubber-stamped by Anders.
   39233 
   39234         Fix Windows Build
   39235 
   39236         * platform/SharedBuffer.h:
   39237 
   39238 2008-03-19  Justin Garcia  <justin.garcia (a] apple.com>
   39239 
   39240         Reviewed by Oliver.
   39241         
   39242         <rdar://problem/5780697> Copying content with CSS property values that are percentages can cause fidelity issues
   39243          
   39244         Elements with height: x%; overflow: visible; overlap what's below them when they are copied from
   39245         a document in quirksmode and pasted into to one in standards mode.  This fix uses the computed 
   39246         the value for a property if its value is a percentage.
   39247         
   39248         * css/CSSMutableStyleDeclaration.cpp:
   39249         (WebCore::CSSMutableStyleDeclaration::addParsedProperty): Added so that we don't have to use
   39250         setProperty from appendStartMarkup.  We already have a parsed property value, so we shouldn't
   39251         use setProperty, since it takes in a String.  If we did, we would have to call CSSValue::cssText()
   39252         for a String only to re-parse it in setProperty.  This wasn't extremely important now, but it will 
   39253         be as we compute more properties to fix the rest of the copy/paste fidelity bugs.
   39254         * css/CSSMutableStyleDeclaration.h:
   39255         * editing/markup.cpp:
   39256         (WebCore::appendStartMarkup): Compute values for properties that have percentage values.  We could
   39257         perhaps narrow this special case to only include properties that are effected by quirksmode.
   39258 
   39259 2008-03-19  Sam Weinig  <sam (a] webkit.org>
   39260 
   39261         Reviewed by Anders Carlsson.
   39262 
   39263         Fix for <rdar://problem/5785694>
   39264         Crash occurs at KJS::Collector::collect() when loading web clip widgets with a PAC file
   39265 
   39266         Make the activeExecStates stack per JSGlobalObject instead of static to ensure
   39267         thread safety.
   39268 
   39269         * bindings/objc/WebScriptObject.mm:
   39270         (+[WebScriptObject throwException:]): Change to throw an exception on the current
   39271         GlobalObject instead of the top of the static activeExecStates stack.
   39272         (-[WebScriptObject setException:]): Change to use the top of the rootObjects GlobalObject
   39273         instead of the top of the static activeExecStates stack.
   39274 
   39275         * bridge/c/c_instance.cpp:
   39276         * bridge/c/c_instance.h:
   39277         * bridge/jni/jni_instance.cpp:
   39278         (JavaInstance::virtualBegin):
   39279         (JavaInstance::virtualEnd):
   39280         * bridge/jni/jni_instance.h:
   39281         * bridge/objc/objc_instance.h:
   39282         * bridge/objc/objc_instance.mm:
   39283         (ObjcInstance::~ObjcInstance):
   39284         (ObjcInstance::virtualBegin):
   39285         (ObjcInstance::virtualEnd):
   39286         * bridge/runtime.cpp:
   39287         (KJS::Bindings::Instance::setDidExecuteFunction):
   39288         (KJS::Bindings::Instance::didExecuteFunction):
   39289         (KJS::Bindings::Instance::setCurrentGlobalObject): Added.
   39290         (KJS::Bindings::Instance::currentGlobalObject): Added.
   39291         (KJS::Bindings::Instance::begin):
   39292         (KJS::Bindings::Instance::end):
   39293         * bridge/runtime.h:
   39294         (KJS::Bindings::Instance::virtualBegin): Renamed from begin().
   39295         (KJS::Bindings::Instance::virtualEnd): Renamed from end().
   39296         We now store the currently active globalObject everytime we cross the runtime
   39297         object boundary.  To do this, we take advantage of the existing begin/end
   39298         methods that are called when crossing this boundary, making begin set the current
   39299         globalObject and then call the old begin, now called virtualBegin.
   39300 
   39301 2008-03-19  Brady Eidson  <beidson (a] apple.com>
   39302 
   39303         Reviewed by Anders
   39304 
   39305         Change SharedBuffer so the wrapping platform data aspect can be shared with all CoreFoundation platforms
   39306         (Mac and Windows instead of just Mac)
   39307 
   39308         * WebCore.vcproj/WebCore.vcproj: Add SharedBufferCF.cpp
   39309         * WebCore.xcodeproj/project.pbxproj: Ditto
   39310 
   39311         * platform/SharedBuffer.cpp:
   39312         * platform/SharedBuffer.h: Change the private c'tor from NSData to CFDataRef, other PLATFORM tweaks
   39313 
   39314         * platform/cf/SharedBufferCF.cpp: Added.
   39315         (WebCore::SharedBuffer::SharedBuffer):
   39316         (WebCore::SharedBuffer::createCFData): Non-Mac version of createCFData
   39317         (WebCore::SharedBuffer::hasPlatformData):
   39318         (WebCore::SharedBuffer::platformData):
   39319         (WebCore::SharedBuffer::platformDataSize):
   39320         (WebCore::SharedBuffer::maybeTransferPlatformData):
   39321         (WebCore::SharedBuffer::clearPlatformData):
   39322 
   39323         * platform/mac/SharedBufferMac.mm:
   39324         (WebCore::SharedBuffer::wrapNSData): Use the CFDataRef constructor via toll-free bridging
   39325         (WebCore::SharedBuffer::createCFData): Mac-specific version of createCFData
   39326 
   39327 2008-03-19  Oliver Hunt  <oliver (a] apple.com>
   39328 
   39329         Reviewed by Antti.
   39330 
   39331         Bug 17954: Canvas arc() with radius of 0 throws exception
   39332         http://bugs.webkit.org/show_bug.cgi?id=17954
   39333 
   39334         Simple fix -- use >= instead of > when validating the radius.
   39335 
   39336         * html/CanvasRenderingContext2D.cpp:
   39337         (WebCore::CanvasRenderingContext2D::arc):
   39338 
   39339 2008-03-19  Justin Garcia  <justin.garcia (a] apple.com>
   39340 
   39341         Reviewed by Oliver.
   39342 
   39343         <rdar://problem/5794920> Acid3: Assertion failure in VisiblePosition::previous when clicking on results (17004)
   39344         
   39345         The position inside an empty inline-block was a candidate, but upstream and downstream
   39346         would move across it without stopping.  This confused canonicalPosition, since no more
   39347         than two candidates should have the same upstream/downstream (be visually equivalent).
   39348         
   39349         Code was added intentionally in isCandidate to make VisiblePositions inside empty 
   39350         inline-blocks, so we need to make upstream/downstream understand that.
   39351 
   39352         * dom/Position.cpp:
   39353         (WebCore::endsOfNodeAreVisuallyDistinctPositions): upstream and downstream used to only
   39354         stop when entering or leaving a non-inline element (referred to as a "block").  We must also 
   39355         avoid entering or leaving an empty inline-block.  This will allow a VisiblePosition there, to 
   39356         match up with what the code in isCandidate intended.
   39357         (WebCore::enclosingVisualBoundary): Removed enclosingBlock and replaced it with this.
   39358         (WebCore::Position::upstream): Added better comments, called the new functions.
   39359         (WebCore::Position::downstream): Ditto.
   39360         * dom/Position.h:
   39361 
   39362 2008-03-19  Dan Bernstein  <mitz (a] apple.com>
   39363 
   39364         Rubber-stamped by John Sullivan.
   39365 
   39366         - change CSS property and value keyword constants from all-caps with
   39367           underscores to intra-caps.
   39368 
   39369         * css/makeprop.pl:
   39370         * css/makevalues.pl:
   39371         * All files using the constants
   39372 
   39373 2008-03-19  Adam Roben  <aroben (a] apple.com>
   39374 
   39375         Make clicking anywhere in a row in the DOM tree select that row's node
   39376 
   39377         We now have mousedown and dblclick event listeners on the root of the
   39378         tree that forward the event to the node on the row the mouse is over.
   39379 
   39380         Reviewed by Tim Hatcher.
   39381 
   39382         * page/inspector/DocumentPanel.js:
   39383         (WebInspector.DocumentPanel): Added a dblclick and mousedown event
   39384         listeners to the root of the tree.
   39385         (WebInspector.DocumentPanel._treeElementFromEvent): Added. Finds the
   39386         tree element for the row underneath the mouse.
   39387         (WebInspector.DocumentPanel._ondblclick): Added. Sends the dblclick
   39388         event on to the tree element in the current row.
   39389         (WebInspector.DocumentPanel._onmousedown): Added. Selects the tree
   39390         element in the current row.
   39391         * page/inspector/treeoutline.js:
   39392         (TreeOutline.treeElementFromPoint): Added.
   39393         (TreeElement.treeElementSelected): Changed to call
   39394         TreeElement.isEventWithinDisclosureTriangle, and added an early return.
   39395         (TreeElement.treeElementToggled): Ditto.
   39396         (TreeElement.isEventWithinDisclosureTriangle): Added.
   39397         * page/inspector/utilities.js:
   39398         (Node.enclosingNodeOrSelfWithNodeNameInArray): Added.
   39399         (Node.enclosingNodeOrSelfWithNodeName): Now just calls
   39400         enclosingNodeOrSelfWithNodeNameInArray.
   39401         (Elemnt.get totalOffsetLeft): Added.
   39402         (Elemnt.get totalOffsetTop): Added.
   39403 
   39404 2008-03-19  Dan Bernstein  <mitz (a] apple.com>
   39405 
   39406         Reviewed by Sam Weinig.
   39407 
   39408         - fix assertion failure in RenderBlock::determineStartPosition() at http://www.wired.com/techbiz/it/magazine/16-04/bz_apple
   39409 
   39410         Test: fast/repaint/line-flow-with-floats-10.html
   39411 
   39412         * rendering/bidi.cpp:
   39413         (WebCore::RenderBlock::determineStartPosition): Removed bogus assertion.
   39414         If the float's top margin has changed and it has not been repositioned
   39415         yet, we do not have its new y position.
   39416 
   39417 2008-03-19  David Hyatt  <hyatt (a] apple.com>
   39418 
   39419         New implementation of full page zoom.  Because of how much doesn't transform when zooming, and because
   39420         of the need to obey viewport constraints, I decided to take a completely different approach.  Now CSS
   39421         lengths and intrinsic sizes are simply adjusted by the zoom factor.  This approach works much better and
   39422         avoids pixel cracks more than the old approach.   In addition widgets "just work", namely plugins zoom
   39423         and scrollbars do not.
   39424 
   39425         This patch also implements the IE zoom CSS property.  This property allows fine-grained control over
   39426         zooming at the element level.  It takes values of normal | <number> | <percentage> to match WinIE.  In
   39427         addition, in the vein of text-size-adjust for text zooming, I have extended the zoom property with an
   39428         extra value, reset.  The reset keyword can be used to prevent a section of the page from scaling at all
   39429         when a zoom is applied.
   39430 
   39431         Reviewed by olliej
   39432 
   39433         * css/CSSComputedStyleDeclaration.cpp:
   39434         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
   39435         Support the new 'zoom' property for getComputedStyle.
   39436 
   39437         * css/CSSParser.cpp:
   39438         (WebCore::CSSParser::parseValue):
   39439         Code that parses the 'zoom' property.
   39440 
   39441         * css/CSSPrimitiveValue.cpp:
   39442         (WebCore::CSSPrimitiveValue::computeLengthInt):
   39443         (WebCore::CSSPrimitiveValue::computeLengthIntForLength):
   39444         (WebCore::CSSPrimitiveValue::computeLengthShort):
   39445         (WebCore::CSSPrimitiveValue::computeLengthFloat):
   39446         (WebCore::CSSPrimitiveValue::computeLengthDouble):
   39447         * css/CSSPrimitiveValue.h:
   39448         Extend all of the computeLength methods to take a multiplier so that lengths can be adjusted by the
   39449         zoom factor.
   39450 
   39451         * css/CSSPropertyNames.in:
   39452         Add the new zoom property to the list of properties we understand.
   39453 
   39454         * css/CSSStyleSelector.cpp:
   39455         (WebCore::CSSStyleSelector::applyDeclarations):
   39456         (WebCore::CSSStyleSelector::applyProperty):
   39457         (WebCore::CSSStyleSelector::mapBackgroundSize):
   39458         (WebCore::CSSStyleSelector::mapBackgroundXPosition):
   39459         (WebCore::CSSStyleSelector::mapBackgroundYPosition):
   39460         (WebCore::CSSStyleSelector::getComputedSizeFromSpecifiedSize):
   39461         * css/CSSStyleSelector.h:
   39462         (WebCore::CSSStyleSelector::setStyle):
   39463         Pass in the zoom factor when computing all lengths in CSS.
   39464 
   39465         * css/CSSValueKeywords.in:
   39466         Add support for the 'reset' keyword of the zoom property.
   39467 
   39468         * dom/Document.cpp:
   39469         (WebCore::Document::recalcStyle):
   39470         Set the 'zoom' CSS property on the RenderView.  This is how we implement full page zoom.
   39471 
   39472         * html/CanvasRenderingContext2D.cpp:
   39473         (WebCore::size):
   39474         Make sure the back end canvas size ignores zooming when rendering images.
   39475 
   39476         * html/HTMLImageElement.cpp:
   39477         (WebCore::HTMLImageElement::width):
   39478         (WebCore::HTMLImageElement::height):
   39479         (WebCore::HTMLImageElement::naturalWidth):
   39480         (WebCore::HTMLImageElement::naturalHeight):
   39481         Use the unzoomed width/height if we have no style information in HTMLImageElement.cpp.
   39482 
   39483         * loader/CachedImage.cpp:
   39484         (WebCore::CachedImage::ref):
   39485         (WebCore::CachedImage::imageSize):
   39486         (WebCore::CachedImage::imageRect):
   39487         * loader/CachedImage.h:
   39488         (WebCore::CachedImage::canRender):
   39489         Force access to the CachedImage metrics to take a multiplier so that people have to think about
   39490         the zoom factor.  The "intrinsic size" of the image then takes that into account.
   39491 
   39492         * loader/ImageDocument.cpp:
   39493         (WebCore::ImageTokenizer::finish):
   39494         (WebCore::ImageDocument::scale):
   39495         (WebCore::ImageDocument::resizeImageToFit):
   39496         (WebCore::ImageDocument::imageChanged):
   39497         (WebCore::ImageDocument::restoreImageSize):
   39498         (WebCore::ImageDocument::imageFitsInWindow):
   39499         Make sure image documents respect the zoom.
   39500 
   39501         * page/AnimationController.cpp:
   39502         (WebCore::ImplicitAnimation::animate):
   39503         Make the 'zoom' CSS property work with CSS transitions.
   39504 
   39505         * page/Frame.h:
   39506         (WebCore::Frame::pageZoomFactor):
   39507         (WebCore::Frame::textZoomFactor):
   39508         Add accessors for obtaining the pageZoom vs. textZoom.
   39509 
   39510         * page/FrameView.cpp:
   39511         (WebCore::FrameView::adjustViewSize):
   39512         Remove the old zoom implementation that used transforms.
   39513 
   39514         * page/mac/WebCoreAXObject.mm:
   39515         (-[WebCoreAXObject accessibilityIsIgnored]):
   39516         Pass in the zoom factor.
   39517 
   39518         * rendering/InlineFlowBox.cpp:
   39519         (WebCore::InlineFlowBox::paintBackground):
   39520         (WebCore::InlineFlowBox::paintBoxDecorations):
   39521         Pass in the zoom factor when testing for size.
   39522 
   39523         * rendering/RenderBox.cpp:
   39524         (WebCore::RenderBox::calculateBackgroundSize):
   39525         (WebCore::RenderBox::imageChanged):
   39526         (WebCore::RenderBox::paintBackgroundExtended):
   39527         (WebCore::RenderBox::calcHeight):
   39528         * rendering/RenderFrameSet.cpp:
   39529         (WebCore::RenderFrameSet::layout):
   39530         * rendering/RenderHTMLCanvas.cpp:
   39531         (WebCore::RenderHTMLCanvas::canvasSizeChanged):
   39532         * rendering/RenderHTMLCanvas.h:
   39533         (WebCore::RenderHTMLCanvas::renderName):
   39534         (WebCore::RenderHTMLCanvas::intrinsicSizeChanged):
   39535         * rendering/RenderImage.cpp:
   39536         (WebCore::RenderImage::setImageSizeForAltText):
   39537         (WebCore::RenderImage::imageChanged):
   39538         (WebCore::RenderImage::calcReplacedWidth):
   39539         (WebCore::RenderImage::calcReplacedHeight):
   39540         * rendering/RenderImage.h:
   39541         (WebCore::RenderImage::intrinsicSizeChanged):
   39542         * rendering/RenderListMarker.cpp:
   39543         (WebCore::RenderListMarker::layout):
   39544         (WebCore::RenderListMarker::imageChanged):
   39545         (WebCore::RenderListMarker::getRelativeMarkerRect):
   39546         * rendering/RenderObject.cpp:
   39547         (WebCore::RenderObject::mustRepaintBackgroundOrBorder):
   39548         (WebCore::RenderObject::paintBorder):
   39549         Pass in the zoom factor when testing for size.
   39550 
   39551         * rendering/RenderReplaced.cpp:
   39552         (WebCore::RenderReplaced::RenderReplaced):
   39553         (WebCore::RenderReplaced::setStyle):
   39554         (WebCore::RenderReplaced::intrinsicSizeChanged):
   39555         * rendering/RenderReplaced.h:
   39556         Added a new call when the zoom factor changes, intrinsicSizeChanged().  Replaced element subclasses
   39557         respond to this via overrides.
   39558 
   39559         * rendering/RenderStyle.cpp:
   39560         (WebCore::StyleVisualData::StyleVisualData):
   39561         (WebCore::StyleInheritedData::StyleInheritedData):
   39562         (WebCore::StyleInheritedData::operator==):
   39563         (WebCore::RenderStyle::diff):
   39564         * rendering/RenderStyle.h:
   39565         (WebCore::StyleVisualData::operator==):
   39566         (WebCore::RenderStyle::zoom):
   39567         (WebCore::RenderStyle::zoomInEffect):
   39568         (WebCore::RenderStyle::setZoom):
   39569         (WebCore::RenderStyle::setZoomInEffect):
   39570         (WebCore::RenderStyle::initialZoom):
   39571         Support for 'zoom' in the RenderStyle.  "zoomInEffect" represents the computed zoom taking into account
   39572         all the zooms specified on ancestors.
   39573 
   39574         * rendering/RenderTableCol.cpp:
   39575         (WebCore::RenderTableCol::imageChanged):
   39576         * rendering/RenderTableRow.cpp:
   39577         (WebCore::RenderTableRow::imageChanged):
   39578         * rendering/RenderTableSection.cpp:
   39579         (WebCore::RenderTableSection::imageChanged):
   39580         * rendering/RenderVideo.h:
   39581         (WebCore::RenderVideo::intrinsicSizeChanged):
   39582         Pass in the zoom factor.
   39583 
   39584         * rendering/RenderView.cpp:
   39585         (WebCore::RenderView::calcHeight):
   39586         (WebCore::RenderView::calcWidth):
   39587         (WebCore::RenderView::layout):
   39588         (WebCore::RenderView::viewHeight):
   39589         (WebCore::RenderView::viewWidth):
   39590         * rendering/RenderView.h:
   39591         (WebCore::RenderView::zoomFactor):
   39592         Back out the old implementation.
   39593 
   39594 2008-03-19  Adam Roben  <aroben (a] apple.com>
   39595 
   39596         Rename firstParent* methods to enclosingNode*
   39597 
   39598         Rubberstamped by John Sullivan.
   39599 
   39600         * page/inspector/ConsolePanel.js:
   39601         * page/inspector/DocumentPanel.js:
   39602         * page/inspector/NetworkPanel.js:
   39603         * page/inspector/inspector.js:
   39604         * page/inspector/utilities.js:
   39605 
   39606 2008-03-19  Dan Bernstein  <mitz (a] apple.com>
   39607 
   39608         Reviewed by John Sullivan.
   39609 
   39610         - fix <rdar://problem/5805070> CrashTracer: [USER] 33 crashes in Safari at com.apple.WebCore: WebCore::FrameView::layout + 431
   39611 
   39612         Test: fast/dynamic/subtree-parent-static-y.html
   39613 
   39614         * rendering/RenderObject.cpp:
   39615         (WebCore::RenderObject::markContainingBlocksForLayout): Avoid calling
   39616         this method on the parent if the parent is the new layout subtree root,
   39617         which would result in marking all the way to the top, when it should
   39618         actually do nothing.
   39619 
   39620 2008-03-19  Mark Rowe  <mrowe (a] apple.com>
   39621 
   39622         Reviewed by Oliver Hunt.
   39623 
   39624         Use WTF::Unicode abstraction rather than using ICU functions directly.
   39625 
   39626         * html/PreloadScanner.cpp:
   39627         (WebCore::PreloadScanner::tokenize):
   39628 
   39629 2008-03-19  Mark Rowe  <mrowe (a] apple.com>
   39630 
   39631         Attempt to fix the Gtk build.
   39632 
   39633         * platform/network/curl/ResourceHandleCurl.cpp:
   39634         (WebCore::ResourceHandle::setHostAllowsAnyHTTPSCertificate):
   39635 
   39636 2008-03-18  Darin Adler  <darin (a] apple.com>
   39637 
   39638         Reviewed by Maciej.
   39639 
   39640         - Speed up JavaScript built-in properties by changing the
   39641           hash table to take advantage of the identifier objects
   39642 
   39643         5% speedup for Acid3 test 26
   39644 
   39645         * bindings/js/JSDOMWindowBase.cpp:
   39646         (WebCore::JSDOMWindowBase::getOwnPropertySlot): Update for change to HashTable.
   39647         (WebCore::JSDOMWindowBase::put): Ditto.
   39648         * bindings/js/JSDOMWindowCustom.cpp:
   39649         (WebCore::JSDOMWindow::customGetOwnPropertySlot): Ditto.
   39650         * bindings/js/JSHTMLInputElementBase.cpp:
   39651         (WebCore::JSHTMLInputElementBase::getOwnPropertySlot): Ditto.
   39652         * bindings/js/JSHistoryCustom.cpp:
   39653         (WebCore::JSHistory::customGetOwnPropertySlot): Ditto.
   39654         * bindings/js/JSLocation.cpp:
   39655         (WebCore::JSLocation::customGetOwnPropertySlot): Ditto.
   39656         (WebCore::JSLocation::put): Ditto.
   39657         * bindings/js/kjs_binding.cpp:
   39658         (WebCore::nonCachingStaticFunctionGetter): Ditto.
   39659 
   39660         * bindings/scripts/CodeGeneratorJS.pm: Same changes as in the
   39661         create_hash_table script.
   39662 
   39663 2008-03-18  Matt Lilek  <webkit (a] mattlilek.com>
   39664 
   39665         Fix the Gtk build for real this time.
   39666 
   39667         * platform/network/curl/AuthenticationChallenge.h:
   39668 
   39669 2008-03-18  Sam Weinig  <sam (a] webkit.org>
   39670 
   39671         Reviewed by Anders Carlsson.
   39672 
   39673         Fix for http://bugs.webkit.org/show_bug.cgi?id=17057
   39674         REGRESSION: Frequent random crashes in WebCore::JSNodeList::indexGetter
   39675         <rdar://problem/5725058>
   39676 
   39677         Tests: fast/dom/NodeList/5725058-crash-scenario-1.html
   39678                fast/dom/NodeList/5725058-crash-scenario-2.html
   39679                fast/dom/NodeList/5725058-crash-scenario-3.html
   39680 
   39681         * dom/ChildNodeList.cpp: 
   39682         (WebCore::ChildNodeList::ChildNodeList):
   39683         * dom/ChildNodeList.h:
   39684         Remove rootNodeChildrenChanged() method and fix the constructor to not 
   39685         pass in a needsNotifications argument to DynamicNodeList, as it no longer
   39686         takes one.
   39687 
   39688         * dom/ClassNodeList.cpp:
   39689         (WebCore::ClassNodeList::ClassNodeList):
   39690         Don't pass the needsNotifications argument to DynamicNodeList.
   39691 
   39692         * dom/ContainerNode.cpp:
   39693         (WebCore::ContainerNode::childrenChanged):
   39694         Rename call to hasNodeLists() to hasNodeListCaches().
   39695 
   39696         * dom/Document.cpp:
   39697         (WebCore::Document::Document):
   39698         (WebCore::Document::~Document): Zero out the m_document variable to signify
   39699         to destructors down the destruction chain that this is a Document type node
   39700         being destructed, and thus, accessing document() is prohibited.
   39701         * dom/Document.h:
   39702         (WebCore::Document::addNodeListCache): Renamed from addNodeList.
   39703         (WebCore::Document::removeNodeListCache): Renamed from removeNodeList, adds assertion.
   39704         (WebCore::Document::hasNodeListCaches): Renamed from hasNodeListCaches.
   39705         Rename m_numNodeLists to m_numNodeListCaches.
   39706 
   39707         * dom/DynamicNodeList.cpp:
   39708         (WebCore::DynamicNodeList::DynamicNodeList):
   39709         (WebCore::DynamicNodeList::~DynamicNodeList):
   39710         (WebCore::DynamicNodeList::invalidateCache):
   39711         (WebCore::DynamicNodeList::Caches::Caches):
   39712         * dom/DynamicNodeList.h:
   39713         (WebCore::DynamicNodeList::hasOwnCaches):
   39714         Remove the needsNotifications concept from DynamicNodeList, instead, manually
   39715         invalidate the cache for lists that own their own cache.
   39716 
   39717         * dom/NameNodeList.cpp:
   39718         (WebCore::NameNodeList::NameNodeList):
   39719         * dom/NameNodeList.h:
   39720         Remove rootNodeAttributeChanged() method and fix the constructor to not 
   39721         pass in a needsNotifications argument to DynamicNodeList, as it no longer
   39722         takes one.
   39723 
   39724         * dom/Node.cpp:
   39725         (WebCore::Node::~Node): Decrement the document's nodeListCache count
   39726         if we had a NodeListsNodeData cache and this is not the Document being
   39727         destructor, as tagged by a null m_document.
   39728         (WebCore::Node::childNodes): Increment the document's nodeListCache count 
   39729         if we need create the NodeListsNodeData.
   39730         (WebCore::Node::registerDynamicNodeList): Increment the document's nodeListCache count 
   39731         if we need create the NodeListsNodeData.  Change to invalidate all the caches, instead 
   39732         of just the ChildNodeList, if document has had no NodeListCaches.
   39733         (WebCore::Node::unregisterDynamicNodeList): Change to remove the cache from the m_listsWithCaches
   39734         set if it is owned by the NodeList and clear the m_nodeLists if it is empty.
   39735         (WebCore::Node::notifyLocalNodeListsAttributeChanged): Move logic to 
   39736         NodeListsNodeData::invalidateAttributeCaches and clear the cache pointer if it is empty.
   39737         (WebCore::Node::notifyLocalNodeListsChildrenChanged): Move logic to 
   39738         NodeListsNodeData::invalidateCaches and clear the cache pointer if it is empty.
   39739         (WebCore::Node::notifyNodeListsChildrenChanged): Cleanup.
   39740         (WebCore::Node::getElementsByName): Increment the document's nodeListCache count 
   39741         if we need create the NodeListsNodeData.
   39742         (WebCore::Node::getElementsByClassName): Increment the document's nodeListCache count 
   39743         if we need create the NodeListsNodeData.
   39744 
   39745         (WebCore::NodeListsNodeData::invalidateCaches): Added.
   39746         (WebCore::NodeListsNodeData::invalidateAttributeCaches): Added.
   39747         (WebCore::NodeListsNodeData::isEmpty): Added.
   39748 
   39749         * dom/TagNodeList.cpp:
   39750         (WebCore::TagNodeList::TagNodeList):
   39751         Don't pass the needsNotifications argument to DynamicNodeList.
   39752 
   39753 2008-03-18  Matt Lilek  <webkit (a] mattlilek.com>
   39754 
   39755         Not reviewed, build fix.
   39756 
   39757         * platform/network/curl/AuthenticationChallenge.h:
   39758 
   39759 2008-03-18  Brent Fulgham  <bfulgham (a] gmail.com>
   39760 
   39761         Reviewed by Adam Roben.
   39762 
   39763         Provide some stub implementations for things that WebKit
   39764         uses for performing authentication/challenge activities.  This
   39765         is in support of http://bugs.webkit.org/show_bug.cgi?id=17837
   39766 
   39767         * platform/network/ResourceHandle.h:
   39768         * platform/network/curl/AuthenticationChallenge.h:
   39769         (WebCore::AuthenticationChallenge::AuthenticationChallenge):
   39770         (WebCore::AuthenticationChallenge::sourceHandle):
   39771 
   39772 2008-03-18  Eric Seidel  <eric (a] webkit.org>
   39773 
   39774         Reviewed by Oliver.
   39775 
   39776         Fix SVGImage crash seen once, and obvious via code inspection.
   39777         
   39778         I was not able to find a test case for this.
   39779 
   39780         * svg/graphics/SVGImage.cpp:
   39781         (WebCore::SVGImage::setContainerSize):
   39782         (WebCore::SVGImage::usesContainerSize):
   39783         (WebCore::SVGImage::hasRelativeWidth):
   39784         (WebCore::SVGImage::hasRelativeHeight):
   39785 
   39786 2008-03-18  Rodney Dawes  <dobey (a] wayofthemonkey.com>
   39787 
   39788         Fix Qt build after r31123.
   39789 
   39790         Add PluginView methods to TemporaryLinkStubs.
   39791 
   39792         * platform/qt/TemporaryLinkStubs.cpp:
   39793 
   39794 2008-03-18  Sam Weinig  <sam (a] webkit.org>
   39795 
   39796         Reviewed by Darin Adler.
   39797 
   39798         - Speed up JavaScript prototype and constructor object creation
   39799           using a static Identifier in the self() methods to avoid the
   39800           cost of creating one from a c-string each time.
   39801 
   39802         5% speedup for Acid3 test 26
   39803 
   39804         * bindings/scripts/CodeGeneratorJS.pm:
   39805 
   39806 2008-03-18  Antti Koivisto  <antti (a] apple.com>
   39807 
   39808         Reviewed by Mark Rowe.
   39809 
   39810         Enable preloading for other platforms besides Mac.
   39811 
   39812         * GNUmakefile.am:
   39813         * WebCore.pro:
   39814         * WebCore.vcproj/WebCore.vcproj:
   39815         * WebCoreSources.bkl:
   39816         * html/HTMLTokenizer.cpp:
   39817         * html/HTMLTokenizer.h:
   39818         * html/PreloadScanner.cpp:
   39819         (WebCore::PreloadScanner::tokenize):
   39820 
   39821 2008-03-18  Dan Bernstein  <mitz (a] apple.com>
   39822 
   39823         Reviewed by Adele Peterson.
   39824 
   39825         - fix <rdar://problem/5805127> REGRESSION (r31116): Assertion failure (floatIndex < floats.size()) in RenderBlock::determineStartPosition() at digg.com
   39826 
   39827         Test: fast/dynamic/floating-to-positioned.html
   39828 
   39829         * rendering/RenderObject.cpp:
   39830         (WebCore::RenderObject::setStyle): Added code to remove a float from
   39831         object lists if its position property changes to something other than
   39832         static, since then it ceases to be a float.
   39833 
   39834 2008-03-18  Adam Roben  <aroben (a] apple.com>
   39835 
   39836         Windows build fix after r31123
   39837 
   39838         * plugins/win/PluginViewWin.cpp: Add back MozillaUserAgent.
   39839 
   39840 2008-03-18  Dan Bernstein  <mitz (a] apple.com>
   39841 
   39842         Reviewed by Darin Adler.
   39843 
   39844         - eliminate RenderFlow::m_clear
   39845 
   39846         * rendering/RenderBlock.cpp:
   39847         (WebCore::RenderBlock::layoutBlock): Removed code to set m_clear.
   39848         (WebCore::RenderBlock::newLine): Added a 'clear' parameter.
   39849         * rendering/RenderBlock.h:
   39850         * rendering/RenderFlow.h:
   39851         (WebCore::RenderFlow::RenderFlow): Removed initialization of m_clear.
   39852         * rendering/bidi.cpp:
   39853         (WebCore::RenderBlock::layoutInlineChildren): Added a local 'clear'
   39854         variable, passing a pointer to it to findNextLineBreak() and its value
   39855         to newLine(). 
   39856         (WebCore::RenderBlock::findNextLineBreak): Added a 'clear' parameter,
   39857         which this method adjusts when it encounters a <br>.
   39858 
   39859 2008-03-18  Simon Hausmann  <hausmann (a] webkit.org>
   39860 
   39861         Reviewed by Holger.
   39862 
   39863         Fix the Qt build and clean up the invoke mechanism for dispatching
   39864         functions in the main thread by using QMetaObject::invokeMethod
   39865         instead of posting a null event.
   39866 
   39867         * platform/qt/MainThreadQt.cpp:
   39868 
   39869 2008-03-18  Rodney Dawes  <dobey (a] wayofthemonkey.com>
   39870 
   39871         Fix Mac build from commit of r31123.
   39872 
   39873         Add a typedef for NSView* to PlatformWidget, remove duplicate PluginMessageThrottlerWin definition.
   39874 
   39875         * platform/Widget.h:
   39876         * WebCore.vcproj/WebCore.vcproj:
   39877 
   39878 2008-03-18  Rodney Dawes  <dobey (a] wayofthemonkey.com>
   39879 
   39880         Reviewed by Jon Honeycutt.
   39881 
   39882         Add PluginView.cpp and npapi.cpp to build files.
   39883         Copy win/PluginViewWin.cpp to PluginView.cpp for shared code.
   39884         Split Windows specific code out of PluginView.cpp.
   39885         Add #if USE(NPOBJECT) around dependant code.
   39886         Use npruntime_internal.h instead of npapi.h.
   39887         Add PlatformWidget typedef to Widget.h.
   39888         Update WidgetGtk.cpp for the PlatformWidget usage.
   39889         Add needed methods to TemporaryLinkStubs for GTK+ port.
   39890 
   39891         * GNUmakefile.am:
   39892         * WebCore.pro:
   39893         * WebCoreSources.bkl:
   39894         * WebCore.vcproj/WebCore.vcproj:
   39895         * plugins/win/PluginViewWin.cpp:
   39896         * plugins/PluginView.cpp:
   39897         * plugins/PluginView.h:
   39898         * plugins/npapi.cpp:
   39899         * platform/Widget.h:
   39900         * platform/gtk/WidgetGtk.cpp:
   39901         * platform/gtk/TemporaryLinkStubs.cpp:
   39902 
   39903 2008-03-17  Darin Adler  <darin (a] apple.com>
   39904 
   39905         Reviewed by Maciej.
   39906 
   39907         - speed up document property fetching (eliminate the AtomicString
   39908           objects made during document property lookup)
   39909 
   39910         3% speedup for Acid3 test 26
   39911 
   39912         * bindings/js/JSDOMWindowBase.cpp:
   39913         (WebCore::JSDOMWindowBase::getOwnPropertySlot): Use AtomicString::find to
   39914         locate the AtomicString, only if already present. Also call the new faster
   39915         versions of the hasNamedItem and hasElementWithId functions that don't
   39916         ref/deref the AtomicStringImpl, get inlined, etc.
   39917         * bindings/js/JSHTMLDocumentCustom.cpp:
   39918         (WebCore::JSHTMLDocument::canGetItemsForName): Ditto.
   39919         (WebCore::writeHelper): Use a Vector instead of a String to build up
   39920         the string to avoid the bad performance of string append.
   39921 
   39922         * dom/Document.cpp: Tweaked code and comments a bit. Nothing substantive.
   39923         * dom/Document.h: Added new hasElementWithId function that's faster than
   39924         getElementById because it doesn't ref/deref the AtomicStringImpl*, gets
   39925         inlined, doesn't have to handle the 0 case, and doesn't try to return the
   39926         element pointer (just a boolean).
   39927 
   39928         * html/HTMLAppletElement.cpp:
   39929         (WebCore::HTMLAppletElement::parseMappedAttribute): Use AtomicString
   39930         consistently. Also renamed the data member for clarity.
   39931         (WebCore::HTMLAppletElement::insertedIntoDocument): Ditto.
   39932         (WebCore::HTMLAppletElement::removedFromDocument): Ditto.
   39933         * html/HTMLAppletElement.h: Ditto.
   39934 
   39935         * html/HTMLDocument.cpp:
   39936         (WebCore::addItemToMap): Use AtomicString instead of String.
   39937         (WebCore::removeItemFromMap): Ditto.
   39938         (WebCore::HTMLDocument::addNamedItem): Updated for member name change.
   39939         (WebCore::HTMLDocument::removeNamedItem): Ditto.
   39940         (WebCore::HTMLDocument::addExtraNamedItem): Ditto.
   39941         (WebCore::HTMLDocument::removeExtraNamedItem): Ditto.
   39942         (WebCore::HTMLDocument::clear): Added. Moved code here from the JavaScript
   39943         bindings. If we're going to have an empty placeholder function, there's no
   39944         reason to have it in the bindings instead of here.
   39945         * html/HTMLDocument.h: Added clear. Changed the named item function
   39946         arguments to AtomicString insted of String. Changed the NameCountMap to
   39947         use AtomicStringImpl* instead of StringImpl*. Renamed the data members
   39948         to add a m_ prefix and remove the needless doc prefix. Added hasNamedItem
   39949         and hasExtraNamedItem functions that are inlined and faster than the old
   39950         idiom because they doesn't ref/deref the AtomicStringImpl*, get inlined,
   39951         and don't have to handle the 0 case.
   39952         * html/HTMLDocument.idl: Removed the [Custom] attribute on clear and took
   39953         it out of the JavaScript-specific section.
   39954 
   39955         * html/HTMLEmbedElement.cpp:
   39956         (WebCore::HTMLEmbedElement::parseMappedAttribute): Use AtomicString
   39957         consistently. Also renamed the data member for clarity.
   39958         (WebCore::HTMLEmbedElement::insertedIntoDocument): Ditto.
   39959         (WebCore::HTMLEmbedElement::removedFromDocument): Ditto.
   39960         * html/HTMLFormElement.cpp:
   39961         (WebCore::HTMLFormElement::insertedIntoDocument): Ditto.
   39962         (WebCore::HTMLFormElement::removedFromDocument): Ditto.
   39963         (WebCore::HTMLFormElement::parseMappedAttribute): Ditto.
   39964         * html/HTMLFormElement.h: Ditto.
   39965 
   39966         * html/HTMLFrameElementBase.cpp:
   39967         (WebCore::HTMLFrameElementBase::openURL): Renamed m_name to m_frameName for
   39968         clarity, since the frame name is not the same as the name attribute.
   39969         (WebCore::HTMLFrameElementBase::parseMappedAttribute): Ditto.
   39970         (WebCore::HTMLFrameElementBase::setNameAndOpenURL): Ditto.
   39971         * html/HTMLFrameElementBase.h: Ditto.
   39972 
   39973         * html/HTMLIFrameElement.cpp:
   39974         (WebCore::HTMLIFrameElement::parseMappedAttribute): Use AtomicString
   39975         consistently. Also renamed the data member for clarity.
   39976         (WebCore::HTMLIFrameElement::insertedIntoDocument): Ditto.
   39977         (WebCore::HTMLIFrameElement::removedFromDocument): Ditto.
   39978         * html/HTMLIFrameElement.h: Ditto.
   39979         * html/HTMLImageElement.cpp:
   39980         (WebCore::HTMLImageElement::parseMappedAttribute): Ditto.
   39981         (WebCore::HTMLImageElement::insertedIntoDocument): Ditto.
   39982         (WebCore::HTMLImageElement::removedFromDocument): Ditto.
   39983         * html/HTMLImageElement.h: Ditto.
   39984         * html/HTMLObjectElement.cpp:
   39985         (WebCore::HTMLObjectElement::parseMappedAttribute): Ditto.
   39986         (WebCore::HTMLObjectElement::insertedIntoDocument): Ditto.
   39987         (WebCore::HTMLObjectElement::removedFromDocument): Ditto.
   39988         (WebCore::HTMLObjectElement::updateDocNamedItem): Ditto.
   39989         * html/HTMLObjectElement.h: Ditto.
   39990 
   39991         * html/HTMLParamElement.cpp:
   39992         (WebCore::HTMLParamElement::isURLAttribute): Use equalIgnoringCase instead
   39993         of callling lower().
   39994 
   39995         * html/HTMLPlugInElement.h: Changed the type of m_name. The code that
   39996         uses this is in HTMLAppletElement, HTMLEmbedElement, and HTMLObjectElement.
   39997 
   39998         * platform/text/AtomicString.cpp:
   39999         (WebCore::equal): Moved to an inline so we can share this code between a
   40000         few different functions. It could move to a header too if we want to use
   40001         it elsewhere.
   40002         (WebCore::UCharBufferTranslator::equal): Change to use inline.
   40003         (WebCore::HashAndCharactersTranslator::hash): Added.
   40004         (WebCore::HashAndCharactersTranslator::equal): Added.
   40005         (WebCore::HashAndCharactersTranslator::translate): Added.
   40006         (WebCore::AtomicString::add): Improved the Identifier and UString overloads
   40007         to use the already-computed hash code instead of rehashing the string.
   40008         (WebCore::AtomicString::find): Added.
   40009         * platform/text/AtomicString.h: Added a find function so we can avoid
   40010         allocating memory just to look up a string in an atomic string set or map.
   40011 
   40012         * platform/text/StringImpl.h: Added declarations needed for the
   40013         AtomicString changes.
   40014 
   40015 2008-03-17  Timothy Hatcher  <timothy (a] apple.com>
   40016 
   40017         Reviewed by Mark Rowe.
   40018 
   40019         Bug 17908: Various bugs in the Console completion code
   40020         http://bugs.webkit.org/show_bug.cgi?id=17908
   40021 
   40022         * page/inspector/ConsolePanel.js:
   40023         (WebInspector.ConsolePanel.complete): Moved the code that checked for the caret being at the end
   40024         of the prompt into the _caretAtEndOfPrompt helper function.
   40025         (WebInspector.ConsolePanel.messagesSelectStart): Clear and redo the auto complete when the selection changes.
   40026         (WebInspector.ConsolePanel._caretInsidePrompt): Fixed a logic error that always caused a false result.
   40027         (WebInspector.ConsolePanel._caretAtEndOfPrompt): Added. Tests if the selection is a caret at the
   40028         end of the prompt.
   40029         (WebInspector.ConsolePanel._moveCaretToEndOfPrompt): Changed the offset to use the childNodes length.
   40030         This makes sure the caret is at the end when there are multiple text nodes in the prompt.
   40031 
   40032 2008-03-17  Dan Bernstein  <mitz (a] apple.com>
   40033 
   40034         Rubber-stamped by Dave Hyatt.
   40035 
   40036         - FloatingObject cleanup
   40037 
   40038         Renamed FloatingObject's data members as follows: node -> m_renderer,
   40039         startY -> m_top, endY -> m_bottom, left -> m_left, width -> m_width,
   40040         and noPaint -> !m_shouldPaint, reversing the meaning of the flag.
   40041 
   40042         Also addressed the FIXME in RenderBlock::containsFloat().
   40043 
   40044         * rendering/RenderBlock.cpp:
   40045         (WebCore::RenderBlock::repaintOverhangingFloats):
   40046         (WebCore::RenderBlock::paintFloats):
   40047         (WebCore::RenderBlock::insertFloatingObject):
   40048         (WebCore::RenderBlock::removeFloatingObject):
   40049         (WebCore::RenderBlock::positionNewFloats):
   40050         (WebCore::RenderBlock::leftRelOffset):
   40051         (WebCore::RenderBlock::rightRelOffset):
   40052         (WebCore::RenderBlock::nextFloatBottomBelow):
   40053         (WebCore::RenderBlock::floatBottom):
   40054         (WebCore::RenderBlock::floatRect):
   40055         (WebCore::RenderBlock::lowestPosition):
   40056         (WebCore::RenderBlock::rightmostPosition):
   40057         (WebCore::RenderBlock::leftmostPosition):
   40058         (WebCore::RenderBlock::leftBottom):
   40059         (WebCore::RenderBlock::rightBottom):
   40060         (WebCore::RenderBlock::clearFloats):
   40061         (WebCore::RenderBlock::addOverhangingFloats):
   40062         (WebCore::RenderBlock::addIntrudingFloats):
   40063         (WebCore::RenderBlock::containsFloat): Changed to return false if the
   40064         floats lists exists but is empty, since line layout code no longer
   40065         relies on the buggy behavior.
   40066         (WebCore::RenderBlock::nodeAtPoint):
   40067         (WebCore::RenderBlock::adjustForBorderFit):
   40068         * rendering/RenderBlock.h:
   40069         (WebCore::RenderBlock::containsFloats):
   40070         (WebCore::RenderBlock::FloatingObject::FloatingObject):
   40071         * rendering/bidi.cpp:
   40072         (WebCore::RenderBlock::layoutInlineChildren):
   40073         (WebCore::RenderBlock::matchedEndLine):
   40074 
   40075 2008-03-17  Dan Bernstein  <mitz (a] apple.com>
   40076 
   40077         Reviewed by Dave Hyatt.
   40078 
   40079         - allow incremental relayout of blocks that contain floats
   40080 
   40081         Tests: fast/repaint/line-flow-with-floats-[1-9].html
   40082 
   40083         * rendering/RenderBlock.cpp:
   40084         (WebCore::RenderBlock::clearFloatsIfNeeded): Cleaned up by moving most
   40085         of the function body out of an if statement which was replaced with an
   40086         early return.
   40087         (WebCore::RenderBlock::insertFloatingObject): Cleaned up by moving most
   40088         of the function body out of an if statement and moving the ASSERT, which
   40089         is a crash in release builds, to the beginning. Made this function set
   40090         the m_isDescendant flag of floating objects it creates.
   40091         (WebCore::RenderBlock::removeFloatingObject): Added a call to
   40092         markLinesDirtyInVerticalRange() when removing a float from a block with
   40093         inline children.
   40094         (WebCore::RenderBlock::markLinesDirtyInVerticalRange): Added. Marks the
   40095         lines in the given range as dirty.
   40096         (WebCore::RenderBlock::clearFloats): Added code to detect changes to
   40097         the geometry of floats intruding into this block from other blocks and
   40098         mark any lines whose available width has changed as a result as dirty.
   40099 
   40100         * rendering/RenderBlock.h:
   40101         (WebCore::RenderBlock::FloatWithRect::FloatWithRect): Added a structure
   40102         to cache a float with its position and size.
   40103         (WebCore::RenderBlock::FloatingObject::FloatingObject): Added an
   40104         m_isDescendant flag, used by clearFloats() to distinguish between floats
   40105         entering the block from outside and floats internal to the block.
   40106 
   40107         * rendering/RootInlineBox.h:
   40108         (WebCore::RootInlineBox::floats): Added.
   40109         (WebCore::RootInlineBox::floatsPtr): Added.
   40110         (WebCore::RootInlineBox::Overflow::Overflow): Added a data member to
   40111         hold the floats originating on the line.
   40112 
   40113         * rendering/bidi.cpp:
   40114         (WebCore::RenderBlock::layoutInlineChildren): Made the existence of
   40115         floats not force a full layout. Changed to cache the geometry of floats
   40116         in the block and detect changes to it. If a float's size or position
   40117         changes, all lines from that point on are treated as dirty. An exception
   40118         is a change in the dimensions of a float on an otherwise-clean line,
   40119         which only dirties lines potentially affected by the change (see
   40120         determineStartPosition()). Added code to update each RootInlineBox's
   40121         set of floats as lines are laid out. Added code to shift floats
   40122         belonging to clean lines in the end along with the lines.
   40123         (WebCore::RenderBlock::determineStartPosition): Made this function look
   40124         for changes to floats' dimensions and mark lines as dirty accordingly.
   40125         Also look for new floats and if found, cause a full layout. Added code
   40126         to re-add floats belonging to clean lines.
   40127         (WebCore::RenderBlock::matchedEndLine): Added checking that the clean
   40128         lines in the end can be shifted vertically as needed, i.e. that the
   40129         available width along the way is uniform.
   40130 
   40131 2008-03-17  Eric Seidel  <eric (a] webkit.org>
   40132 
   40133         Reviewed by darin.
   40134 
   40135         Fix _NPN_IntFromIdentifier (and export the symbol for use!)
   40136 
   40137         Test: plugins/netscape-identifier-conversion.html
   40138 
   40139         * WebCore.NPAPI.exp:
   40140         * bridge/npruntime.cpp:
   40141         (_NPN_IntFromIdentifier):
   40142 
   40143 2008-03-17  Sam Weinig  <sam (a] webkit.org>
   40144 
   40145         Reviewed by Dan Bernstein.
   40146 
   40147         Add HTMLCollection constructor to the Window object. (Omission noticed by Harri Porten)
   40148 
   40149         * page/DOMWindow.idl: 
   40150 
   40151 2008-03-17  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   40152 
   40153         Unreviewed Gtk+ build fix.
   40154 
   40155         * platform/gtk/ScrollViewGtk.cpp: remove const
   40156 
   40157 2008-03-17  Julien Chaffraix  <julien.chaffraix (a] gmail.com>
   40158 
   40159         Reviewed by Holger.
   40160 
   40161         <http://bugs.webkit.org/show_bug.cgi?id=17754>
   40162 
   40163         - Implement ResourceHandle::loadResourceSynchronously to dispatch synchronous
   40164           requests.
   40165 
   40166         - Implement WebCoreSynchronousLoader, the ResourceHandleClient which holds
   40167           the network data, response and error for us during the transfert.
   40168 
   40169         * platform/network/ResourceHandleInternal.h: Remove trailing white space.
   40170         * platform/network/curl/ResourceHandleCurl.cpp: Add WebCoreSynchronousLoader
   40171         (WebCore::WebCoreSynchronousLoader::resourceResponse):
   40172         (WebCore::WebCoreSynchronousLoader::resourceError):
   40173         (WebCore::WebCoreSynchronousLoader::data):
   40174         (WebCore::WebCoreSynchronousLoader::WebCoreSynchronousLoader):
   40175         (WebCore::WebCoreSynchronousLoader::didReceiveResponse):
   40176         (WebCore::WebCoreSynchronousLoader::didReceiveData):
   40177         (WebCore::WebCoreSynchronousLoader::didFinishLoading):
   40178         (WebCore::WebCoreSynchronousLoader::didFail):
   40179         (WebCore::ResourceHandle::loadResourceSynchronously): Implement method
   40180         using WebCoreSynchronousLoader.
   40181 
   40182         * platform/network/curl/ResourceHandleManager.cpp:
   40183         (WebCore::ResourceHandleManager::dispatchSynchronousJob):
   40184         (WebCore::ResourceHandleManager::startJob):
   40185         (WebCore::ResourceHandleManager::initializeHandle): Handle initialization
   40186         method used both for synchronous and asynchronous job.
   40187 
   40188         * platform/network/curl/ResourceHandleManager.h:
   40189 
   40190 2008-03-17  Darin Adler  <darin (a] apple.com>
   40191 
   40192         - try to fix GTK build
   40193 
   40194         * platform/ScrollView.h: Make setGtkAdjustments adjustment.
   40195         And non-virtual (why was it virtual?).
   40196 
   40197 2008-03-17  Rodney Dawes  <dobey (a] wayofthemonkey.com>
   40198 
   40199         Fix Bug 17898: Split PluginMessageThrottlerWin into its own files
   40200 
   40201         <http://bugs.webkit.org/show_bug.cgi?id=17898>
   40202 
   40203         Move the PluginMessageThrottlerWin class into its own files, in
   40204         preparation for refactoring PluginView code to be shared.
   40205 
   40206         Reviewed and tweaked by Adam Roben.
   40207 
   40208         * WebCore.vcproj/WebCore.vcproj:
   40209         * plugins/PluginView.h:
   40210         * plugins/win/PluginMessageThrottlerWin.cpp: Added.
   40211         * plugins/win/PluginMessageThrottlerWin.h: Added.
   40212         * plugins/win/PluginViewWin.cpp:
   40213 
   40214 2008-03-17  Adam Roben  <aroben (a] apple.com>
   40215 
   40216         More Windows build fixes after r31098
   40217 
   40218         * platform/ScrollView.h: Make some more methods public.
   40219 
   40220 2008-03-17  Adam Roben  <aroben (a] apple.com>
   40221 
   40222         Windows and Qt build fixes after r31098
   40223 
   40224         * platform/ScrollView.h: Mark methods public that still need to be so.
   40225 
   40226 2008-03-16  Timothy Hatcher  <timothy (a] apple.com>
   40227 
   40228         Reviewed by Darin Adler.
   40229 
   40230         Bug 17883: Console completion should support bracket notation
   40231         http://bugs.webkit.org/show_bug.cgi?id=17883
   40232 
   40233         Also fixes a bug where the Inspector's window object was used instead of the
   40234         inspected window object.
   40235 
   40236         * page/inspector/ConsolePanel.js:
   40237         (WebInspector.ConsolePanel.complete): Add a comment about the _backwardsRange call.
   40238         (WebInspector.ConsolePanel.completions): Add a comment about the _backwardsRange call.
   40239         Check the last character of the expression for a dot or bracket. Fallback
   40240         to the InspectorController.inspectedWindow() instead of window, this was a bad bug.
   40241         If the expression caused an exception, just consider the prefix a window property.
   40242         When bracket notation is used remember what quote was used and compared property names
   40243         with that quote surrounding it. Also escape the property name for the quote and backslash.
   40244 
   40245 2008-03-17  Robert Blaut  <webkit (a] blaut.biz>
   40246 
   40247         Reviewed by Darin.
   40248 
   40249         Fix for bug http://bugs.webkit.org/show_bug.cgi?id=17696
   40250         Set default margin-bottom for form element in quirk mode
   40251         and be compatible with Gecko.
   40252 
   40253         Tests: fast/css/margin-bottom-form-element-quirk.html
   40254                fast/css/margin-bottom-form-element-strict.html
   40255 
   40256         * css/html4.css:
   40257         * css/quirks.css:
   40258 
   40259 2008-03-17  Antti Koivisto  <antti (a] apple.com>
   40260 
   40261         Reviewed by Darin.
   40262 
   40263         Speculative fix for http://bugs.webkit.org/show_bug.cgi?id=17878
   40264         Bug 17878: REGRESSION: Acid3 sometimes crashes Webkit under WebCore::Loader::Host::cancelRequests
   40265         
   40266         I can't reproduce the crash or make a test case for this one but I'm pretty sure this
   40267         is the problem. Essentially the same bug as http://bugs.webkit.org/show_bug.cgi?id=17862
   40268         except in didFail() instead of didFinishLoading().
   40269 
   40270         * loader/loader.cpp:
   40271         (WebCore::Loader::Host::didFail):
   40272 
   40273 2008-03-17  Jan Michael Alonzo  <jmalonzo (a] unpluggable.com>
   40274 
   40275         Reviewed and tweaked by Darin.
   40276 
   40277         http://bugs.webkit.org/show_bug.cgi?id=17172
   40278         Refactor platform checks in ScrollView.h
   40279 
   40280         * platform/ScrollView.h: Change #ifs around.
   40281 
   40282 2008-03-17  Yuzhu Shen  <yuzhu.shen (a] gmail.com>
   40283 
   40284         Reviewed by Darin.
   40285 
   40286         Fix the bug: http://bugs.webkit.org/show_bug.cgi?id=17760
   40287         It is necessary to load the image even when src="".
   40288 
   40289         Test: fast/images/load-img-with-empty-src.html
   40290 
   40291         * html/HTMLImageLoader.cpp:
   40292         (WebCore::HTMLImageLoader::updateFromElement): isNull rather than isEmpty.
   40293 
   40294 2008-03-17  Rodney Dawes  <dobey (a] wayofthemonkey.com>
   40295 
   40296         Fix GTK+ build from r31094.
   40297 
   40298         * plugins/gtk/PluginDatabaseGtk.cpp:
   40299         (PluginDatabase::getPluginsInPaths):
   40300 
   40301 2008-03-17  Adam Roben  <aroben (a] apple.com>
   40302 
   40303         Fix Bug 17876: REGRESSION (r31060): Attempting to visit Ofcom page causes crash
   40304 
   40305         <http://bugs.webkit.org/show_bug.cgi?id=17876>
   40306 
   40307         Reviewed by John.
   40308 
   40309         Test: fast/dom/remove-named-attribute-crash.html
   40310 
   40311         * dom/NamedAttrMap.cpp:
   40312         (WebCore::NamedAttrMap::removeAttribute): Store the Attribute we're
   40313         going to remove from the m_attributes Vector in a RefPtr so it doesn't
   40314         get deleted when it is removed from the Vector.
   40315 
   40316 2008-03-17  Rodney Dawes  <dobey (a] wayofthemonkey.com>
   40317 
   40318         Reviewed by Adam Roben.
   40319 
   40320         Implement PluginDatabase for GTK+ with PluginDatabaseGtk.cpp.
   40321         Remove implemented methods from TemporaryLinkStubs.
   40322 
   40323         * GNUmakefile.am:
   40324         * plugins/gtk:
   40325         * plugins/gtk/PluginDatabaseGtk.cpp:
   40326         * platform/gtk/TemporaryLinkStubs.cpp:
   40327 
   40328 2008-03-17  Simon Hausmann  <hausmann (a] webkit.org>
   40329 
   40330         Fix the Qt build.
   40331 
   40332         * platform/text/qt/TextCodecQt.cpp:
   40333         (WebCore::TextCodecQt::encode):
   40334         * platform/text/qt/TextCodecQt.h:
   40335 
   40336 2008-03-16  Maciej Stachowiak  <mjs (a] apple.com>
   40337 
   40338         Not reviewed, just fixing an incomplete comment from the last commit.
   40339 
   40340         * dom/Range.cpp:
   40341         (WebCore::Range::surroundContents):
   40342 
   40343 2008-03-16  Maciej Stachowiak  <mjs (a] apple.com>
   40344 
   40345         Reviewed by Darin.
   40346 
   40347         - fixed "Acid3 expects different exceptions for surroundContents calls involving comment nodes (affects Acid3 test 11)"
   40348         http://bugs.webkit.org/show_bug.cgi?id=17509
   40349         
   40350         This gets us to 92/100
   40351 
   40352         * dom/Range.cpp:
   40353         (WebCore::Range::surroundContents): Check for
   40354         HIERARCHY_REQUEST_ERR before BAD_BOUNDARYPOINTS_ERR, since Acid3
   40355         expects exceptional conditions to be tested in the order that the
   40356         spec lists them. Also, adjust the HIERARCHY_REQUEST_ERR check. If
   40357         the start point of the range is in a comment node, the node that
   40358         would be the parent of a partial replacement is actually the
   40359         comment node's parent (since comment nodes have character
   40360         indices), so we should do the HIERARCHY_REQUEST_ERR check based on
   40361         the parent of the comment node, as for text nodes, even though it
   40362         will fail later with a different exception because it is not
   40363         allowed to surround a partially selected non-text node.
   40364 
   40365 2008-03-16  Brett Wilson  <brettw (a] chromium.org>
   40366 
   40367         Reviewed by Darin.
   40368 
   40369         Fix bug 15119: URL query characters that are unencodable in the
   40370         request's character set should be converted to XML entities with
   40371         non-alphanumeric characters escaped.
   40372 
   40373         Test: http/tests/uri/escaped-entity.html
   40374 
   40375         * html/FormDataList.cpp:
   40376         (WebCore::FormDataList::appendString):
   40377         * html/HTMLFormElement.cpp:
   40378         (WebCore::HTMLFormElement::formData):
   40379         * platform/KURL.cpp:
   40380         (WebCore::encodeRelativeString):
   40381         * platform/text/String.cpp:
   40382         (WebCore::String::latin1):
   40383         (WebCore::String::utf8):
   40384         * platform/text/TextCodec.cpp:
   40385         (WebCore::TextCodec::unencodableCharReplacement):
   40386         * platform/text/TextCodec.h:
   40387         * platform/text/TextCodecICU.cpp:
   40388         (WebCore::urlEscapedEntityCallback):
   40389         (WebCore::gbkUrlEscapedEntityCallack):
   40390         (WebCore::TextCodecICU::encode):
   40391         * platform/text/TextCodecICU.h:
   40392         (WebCore::TextCodecICU::setNeedsGBKFallbacks):
   40393         * platform/text/TextCodecLatin1.cpp:
   40394         (WebCore::encodeComplexWindowsLatin1):
   40395         (WebCore::TextCodecLatin1::encode):
   40396         * platform/text/TextCodecLatin1.h:
   40397         * platform/text/TextCodecUTF16.cpp:
   40398         (WebCore::TextCodecUTF16::encode):
   40399         * platform/text/TextCodecUTF16.h:
   40400         * platform/text/TextCodecUserDefined.cpp:
   40401         (WebCore::encodeComplexUserDefined):
   40402         (WebCore::TextCodecUserDefined::encode):
   40403         * platform/text/TextCodecUserDefined.h:
   40404         * platform/text/TextEncoding.cpp:
   40405         (WebCore::TextEncoding::encode):
   40406         * platform/text/TextEncoding.h:
   40407         * platform/text/mac/TextCodecMac.cpp:
   40408         (WebCore::TextCodecMac::encode):
   40409         * platform/text/mac/TextCodecMac.h:
   40410         * xml/XMLHttpRequest.cpp:
   40411         (WebCore::XMLHttpRequest::send):
   40412 
   40413 2008-03-16  Kevin Ollivier  <kevino (a] theolliviers.com>
   40414 
   40415         Rubber stamped by Darin.
   40416 
   40417         Add set-webkit-configuration support for wx port, and centralize
   40418         build dir location setting.
   40419 
   40420         http://bugs.webkit.org/show_bug.cgi?id=17790
   40421 
   40422         * webcore-base.bkl:
   40423 
   40424 2008-03-16  Darin Adler  <darin (a] apple.com>
   40425 
   40426         Reviewed by Mark Rowe.
   40427 
   40428         - http://bugs.webkit.org/show_bug.cgi?id=17881
   40429           a little cleanup for HTMLTextAreaElement
   40430 
   40431         Tests: fast/forms/textarea-default-value-leading-newline.html
   40432                fast/forms/textarea-linewrap-dynamic.html
   40433 
   40434         * html/HTMLTextAreaElement.cpp:
   40435         (WebCore::HTMLTextAreaElement::HTMLTextAreaElement): Tweaked names/
   40436         (WebCore::HTMLTextAreaElement::selectionStart): Ditto, also use early return
   40437         and check for < 0 rather than -1 specifically.
   40438         (WebCore::HTMLTextAreaElement::selectionEnd): Ditto.
   40439         (WebCore::HTMLTextAreaElement::setSelectionStart): Early return.
   40440         (WebCore::HTMLTextAreaElement::setSelectionEnd): Ditto.
   40441         (WebCore::HTMLTextAreaElement::select): Ditto.
   40442         (WebCore::HTMLTextAreaElement::setSelectionRange): Ditto.
   40443         (WebCore::HTMLTextAreaElement::parseMappedAttribute): Changed value parsing
   40444         to treat unknown values as meaning "default" rather than "leave value as-is".
   40445         Only call setNeedsLayoutAndPrefWidthsRecalc when mode changed.
   40446         (WebCore::HTMLTextAreaElement::createRenderer): Removed name of unused argument.
   40447         (WebCore::HTMLTextAreaElement::appendFormData): Updated for name changes.
   40448         (WebCore::HTMLTextAreaElement::isKeyboardFocusable): Got rid of unnneeded explicit
   40449         class name in isFocusable call.
   40450         (WebCore::HTMLTextAreaElement::isMouseFocusable): Ditto.
   40451         (WebCore::HTMLTextAreaElement::updateFocusAppearance): Tweaked formatting.
   40452         (WebCore::HTMLTextAreaElement::defaultEventHandler): Ditto.
   40453         (WebCore::HTMLTextAreaElement::updateValue): Early return.
   40454         (WebCore::HTMLTextAreaElement::setValue): Got rid of intermediate value to
   40455         eliminate on small refcount churn.
   40456         (WebCore::HTMLTextAreaElement::defaultValue): Got rid of unneeded redundant
   40457         string length checks, since String already checks all indexing and returns 0.
   40458         (WebCore::HTMLTextAreaElement::setDefaultValue): Added code to normalize
   40459         line endings and add a leading line ending to fix cases where the first
   40460         character is a newline.
   40461         (WebCore::HTMLTextAreaElement::accessKeyAction): Removed name of unused arg.
   40462         (WebCore::HTMLTextAreaElement::accessKey): Changed return value to avoid
   40463         refcount churn.
   40464         (WebCore::HTMLTextAreaElement::selection): Updated names and use < 0 instead
   40465         of -1 specifically.
   40466 
   40467         * html/HTMLTextAreaElement.h: Replaced wrap function with more-specific
   40468         shouldWrapText one. Changed return value of accessKey. Made WrapMethod enum
   40469         provate and renamed the values. Renamed cachedSelStart and cachedSelEnd to
   40470         m_cachedSelectionStart and m_cachedSelectionEnd.
   40471 
   40472         * rendering/RenderTextControl.cpp:
   40473         (WebCore::RenderTextControl::createInnerTextStyle): Updated for change to
   40474         HTMLTextAreaElement wrap function.
   40475 
   40476 2008-03-16  Antti Koivisto  <antti (a] apple.com>
   40477 
   40478         Reviewed by Mitz.
   40479 
   40480         Fix http/tests/security/frame-loading-via-document-write.html
   40481         which was broken by the preload patch.
   40482         
   40483         Don't print error message when preload fails local file security check.
   40484         Some minor refactoring.
   40485 
   40486         * html/PreloadScanner.cpp:
   40487         (WebCore::PreloadScanner::emitTag):
   40488         (WebCore::PreloadScanner::emitCSSRule):
   40489         * loader/Cache.cpp:
   40490         (WebCore::Cache::requestResource):
   40491         * loader/Cache.h:
   40492         * loader/DocLoader.cpp:
   40493         (WebCore::DocLoader::requestResource):
   40494         (WebCore::DocLoader::preload):
   40495         (WebCore::DocLoader::printPreloadStats):
   40496         * loader/DocLoader.h:
   40497 
   40498 2008-03-16  Antti Koivisto  <antti (a] apple.com>
   40499 
   40500         Reviewed by Darin.
   40501         
   40502         Fix http://bugs.webkit.org/show_bug.cgi?id=17862
   40503         REGRESSION (r31038): Reproducible crash under DocLoader::checkForReload() at marware.com
   40504         
   40505         This was a memory smasher introduced by the preloading patch. 
   40506         If a script resource was marked uncacheable, early deletion of the 
   40507         Request object would cause deletion of the CachedResource too if
   40508         it was referred more than once in a single document.
   40509 
   40510         Test: http/tests/misc/uncacheable-script-repeated.html
   40511 
   40512         * loader/loader.cpp:
   40513         (WebCore::Loader::Host::servePendingRequests):
   40514         (WebCore::Loader::Host::didFinishLoading):
   40515 
   40516 2008-03-16  Yuzhu Shen  <yuzhu.shen (a] gmail.com>
   40517 
   40518         Reviewed by Darin.
   40519 
   40520         Fix bug http://bugs.webkit.org/show_bug.cgi?id=17714
   40521         <img href="#"> should go to top of the page.
   40522 
   40523         Test: fast/html/empty-fragment-id-goto-top.html
   40524 
   40525         * loader/FrameLoader.cpp:
   40526         (WebCore::FrameLoader::gotoAnchor):
   40527 
   40528 2008-03-16  Thiago Macieira  <thiago.macieira (a] trolltech.com>
   40529 
   40530         Reviewed by Darin.
   40531 
   40532         Don't use RefPtr in classes you haven't seen the implementation of.
   40533 
   40534         Forward-declaration and declaration of RefPtr<Foo> is ok. But you
   40535         cannot *use* said objects until Foo is defined. This is true even for
   40536         initialisation with a 0.
   40537 
   40538         Seems the HP aCC compiler is more strict here than gcc.
   40539 
   40540         * editing/SplitTextNodeCommand.h:
   40541         * page/FrameTree.h:
   40542         * xml/XPathExpressionNode.h:
   40543 
   40544 2008-03-16  Darin Adler  <darin (a] apple.com>
   40545 
   40546         Reviewed by Mitz.
   40547 
   40548         - fix http://bugs.webkit.org/show_bug.cgi?id=14941
   40549           <rdar://problem/5404093> textarea value from JavaScript includes extra newline
   40550 
   40551         Test: fast/forms/textarea-trailing-newline.html
   40552 
   40553         * rendering/RenderTextControl.cpp:
   40554         (WebCore::RenderTextControl::finishText): Added code to strip the trailing
   40555         newline. It's possible there are some obscure cases where this is not wanted,
   40556         but I couldn't find any. If someone finds a case where this is bad, we can
   40557         make the code conditional.
   40558 
   40559 2008-03-16  Darin Adler  <darin (a] apple.com>
   40560 
   40561         Reviewed by Mitz.
   40562 
   40563         - fix http://bugs.webkit.org/show_bug.cgi?id=17876
   40564           Attempting to visit Ofcom page causes crash
   40565 
   40566         This is causing intermittent crashes on some existing test cases on the buildbot
   40567         too; I don't have a 100% test case right now, but it should be easy to add one later
   40568         and this does fix a crash in a test we already have.
   40569 
   40570         * dom/CharacterData.cpp:
   40571         (WebCore::CharacterData::CharacterData): Initialize m_data to the empty string,
   40572         not the null string. The class assumes the string can never being null.
   40573         (WebCore::CharacterData::setData): If asked to set the data to the null string,
   40574         set it to the empty string instead. This matches what the (non-empty) constructor
   40575         has always done.
   40576 
   40577 2008-03-15  Timothy Hatcher  <timothy (a] apple.com>
   40578 
   40579         Reviewed by Adam Roben.
   40580 
   40581         Bug 17870: Web Inspector console should feel more like a terminal
   40582         http://bugs.webkit.org/show_bug.cgi?id=17870
   40583 
   40584         Bug 14390: Console input area should be more noticeable
   40585         http://bugs.webkit.org/show_bug.cgi?id=14390
   40586         <rdar://5712831>
   40587 
   40588         Bug 17237: Inspector should tab-complete object properties in the Console
   40589         http://bugs.webkit.org/show_bug.cgi?id=17237
   40590         <rdar://5732842>
   40591 
   40592         Adds tab completion, auto completion and a blended input prompt.
   40593         The prompt is also focused when the console is shown.
   40594            Implements a new look, that will be part of the UI refresh.
   40595 
   40596         * page/inspector/ConsolePanel.js: 
   40597         (WebInspector.ConsolePanel): Renamed a few properties.
   40598         (WebInspector.ConsolePanel.get/set promptText): Property to set
   40599         and get the current prompt text. Does not affect command history.
   40600         (WebInspector.ConsolePanel.show): Make the prompt focus on show.
   40601         (WebInspector.ConsolePanel.acceptAutoComplete): Accepts any
   40602         pending auto complete text.
   40603         (WebInspector.ConsolePanel.clearAutoComplete): Cancels any pending
   40604         auto complete text.
   40605         (WebInspector.ConsolePanel.autoCompleteSoon): Sets a timeout to auto
   40606         complete in 250 ms, only if there isn't a pending auto complete.
   40607         (WebInspector.ConsolePanel.complete): 
   40608         (WebInspector.ConsolePanel.completions): Generate a list of possible
   40609         completions based on the prefix and the previous expression ranges.
   40610         (WebInspector.ConsolePanel._backwardsRange): Helper to scan backwards
   40611         from a node and offset to find a start node and offset of the first
   40612         character found in the characters string.
   40613         (WebInspector.ConsolePanel._evalInInspectedWindow): Helper to eval in the
   40614         inspected window.
   40615         (WebInspector.ConsolePanel._caretInsidePrompt): Returns true if the selection
   40616         is collapsed and is inside the prompt element.
   40617         (WebInspector.ConsolePanel._moveCaretToEndOfPrompt): Moves the selection
   40618         to the end of the prompt.
   40619         (WebInspector.ConsolePanel._onTabPressed): Calls complete on
   40620         tab press.
   40621         (WebInspector.ConsolePanel._onEnterPressed): Call clearAutoComplete so the
   40622         autocompletion text is not evaluated.
   40623 
   40624         * page/inspector/Images/errorIcon.png: New image.
   40625         * page/inspector/Images/userInputIcon.png: Added.
   40626         * page/inspector/Images/userInputPreviousIcon.png: Added.
   40627         * page/inspector/Images/warningIcon.png: New image.
   40628         * page/inspector/inspector.css: New refreshed UI.
   40629 
   40630 2008-03-15  Mark Mentovai  <mark (a] moxienet.com>
   40631 
   40632         Reviewed and landed by Darin.
   40633 
   40634         - http://bugs.webkit.org/show_bug.cgi?id=17833
   40635           use file extensions instead of explicit file types in WebCore's Xcode project
   40636 
   40637         * WebCore.xcodeproj/project.pbxproj: Remove unnecessary
   40638           uses of explicitFileType, preferring lastKnownFileType ("File Type:
   40639           Default for File" in Xcode's File Info's General tab).  Files below
   40640           that relied on an explicit file type setting other than what would
   40641           be implied by their extensions have been renamed to have correct
   40642           extensions.
   40643         * bridge/jni/jni_jsobject.cpp: Removed.
   40644         * bridge/jni/jni_jsobject.mm: Copied from bridge/jni/jni_jsobject.cpp.
   40645         * loader/mac/LoaderNSURLExtras.m: Removed.
   40646         * loader/mac/LoaderNSURLExtras.mm: Copied from loader/mac/LoaderNSURLExtras.m.
   40647         * platform/mac/SharedTimerMac.cpp: Removed.
   40648         * platform/mac/SharedTimerMac.mm: Copied from platform/mac/SharedTimerMac.cpp.
   40649 
   40650 2008-03-15  Darin Adler  <darin (a] apple.com>
   40651 
   40652         Reviewed by Sam.
   40653 
   40654         - fix http://bugs.webkit.org/show_bug.cgi?id=11997
   40655           Ranges are not fixed after mutation (affects Acid3 test 13)
   40656 
   40657         Test: fast/dom/Range/mutation.html
   40658 
   40659         * WebCore.xcodeproj/project.pbxproj: Added NodeWithIndex.h, NodeWithIndexAfter.h,
   40660         and NodeWithIndexBefore.h.
   40661 
   40662         * dom/CharacterData.cpp:
   40663         (WebCore::CharacterData::setData): Replaced call to Document::removeMarkers
   40664         with call to Document::textRemoved.
   40665         (WebCore::CharacterData::insertData): Replaced call to Document::shiftMarkers
   40666         with call to Document::textInserted.
   40667         (WebCore::CharacterData::deleteData): Replaced call to Document::removeMarkers
   40668         and Document::shiftMarkers with call to Document::textRemoved.
   40669         (WebCore::CharacterData::replaceData): Replaced call to Document::removeMarkers
   40670         and Document::shiftMarkers with call to Document::textRemoved and
   40671         Document::textInserted.
   40672         (WebCore::CharacterData::containsOnlyWhitespace): Tweaked a bit.
   40673 
   40674         * dom/ContainerNode.cpp:
   40675         (WebCore::ContainerNode::childrenChanged): Added a call to
   40676         Document::nodeChildrenChanged when the nmber of children was changed (and not
   40677         by the parser).
   40678         (WebCore::dispatchChildRemovalEvents): Updated for name change.
   40679 
   40680         * dom/Document.cpp:
   40681         (WebCore::Document::~Document): Assert that all ranges are gone.
   40682         (WebCore::Document::nodeChildrenChanged): Added. Calls nodeChildrenChanged on
   40683         all ranges.
   40684         (WebCore::Document::nodeWillBeRemoved): Renamed from notifyBeforeNodeRemoval.
   40685         Added code to call nodeWillBeRemoved on all ranges.
   40686         (WebCore::Document::textInserted): Added. Calls textInserted on all ranges and
   40687         also calls shiftMarkers.
   40688         (WebCore::Document::textRemoved): Added. Calls textRemoved on all ranges and also
   40689         calls removeMarkers and shiftMarkers.
   40690         (WebCore::Document::textNodesMerged): Added. Calls textNodesMerged on all ranges.
   40691         (WebCore::Document::textNodeSplit): Added. Calls textNodeSplit on all ranges.
   40692         (WebCore::Document::attachRange): Added. Adds range to the HashSet of all ranges
   40693         for this document.
   40694         (WebCore::Document::detachRange): Added. Removes range from the HashSet.
   40695         * dom/Document.h: Added the new functions and the data member.
   40696 
   40697         * dom/Element.cpp:
   40698         (WebCore::Element::normalizeAttributes): Added. Contains the part of the
   40699         normalize function that's specific to Element. Better encapsulation to have it
   40700         here rather than in Node::normalize.
   40701         * dom/Element.h: Added the new function.
   40702 
   40703         * dom/Node.cpp:
   40704         (WebCore::Node::normalize): Rewrote so it's no longer recursive. Also added
   40705         a call to textNodesMerged after each pair of nodes is merged but before the
   40706         second node is removed.
   40707         (WebCore::Node::traverseNextNodePostOrder): Added. Helper function used by
   40708         normalize, but also useful elsewhere.
   40709         * dom/Node.h: Added the new function.
   40710 
   40711         * dom/NodeIterator.cpp:
   40712         (WebCore::NodeIterator::nodeWillBeRemoved): Renamed from notifyBeforeNodeRemoval.
   40713         * dom/NodeIterator.h: Ditto.
   40714 
   40715         * dom/ProcessingInstruction.cpp:
   40716         (WebCore::ProcessingInstruction::setData): Call textRemoved.
   40717 
   40718         * dom/Range.cpp:
   40719         (WebCore::NodeWithIndex::index): Added. Computes and stores index.
   40720         (WebCore::NodeWithIndexBefore::indexBefore): Added. Computes and stores index.
   40721         (WebCore::NodeWithIndexAfter::indexAfter): Added. Computes and stores index.
   40722         (WebCore::Range::Range): Call attachRange.
   40723         (WebCore::Range::~Range): Call detachRange unless the range is already detached.
   40724         (WebCore::Range::commonAncestorContainer): Removed check for WRONG_DOCUMENT_ERR.
   40725         It's no longer possible to create a range where the two containers are non-zero
   40726         and have no common ancestor.
   40727         (WebCore::Range::isPointInRange): Rewrote expression to be more readable.
   40728         (WebCore::Range::compareNode): Changed local variable to use int for consistency.
   40729         (WebCore::Range::compareBoundaryPoints): Replaced ASSERT with ASSERT_NOT_REACHED.
   40730         (WebCore::Range::deleteContents): Removed check for INVALID_STATE_ERR and
   40731         initialization of ec to 0; both are now inside checkDeleteExtract.
   40732         (WebCore::Range::intersectsNode): Changed local variable to use int for consistency.
   40733         Also changed comparison to use < 0 and >= 0 rather than checking explicitly for 1
   40734         and -1.
   40735         (WebCore::Range::processContents): Changed code to not get the nodeType multiple
   40736         times on the same node, and tweaked formatting. Removed code to update the range
   40737         on deletion, because the normal delete logic will take care of that now.
   40738         (WebCore::Range::extractContents): Removed check for INVALID_STATE_ERR and
   40739         initialization of ec to 0; both are now inside checkDeleteExtract.
   40740         (WebCore::Range::insertNode): Changed local variable to use int for consistency.
   40741         (WebCore::Range::toString): Changed variable name to pastLast.
   40742         (WebCore::Range::detach): Call detachRange.
   40743         (WebCore::Range::checkDeleteExtract): Added check for detached range and code to
   40744         set ec to 0; moved here from the two callers. Also changed variable name to pastLast.
   40745         (WebCore::endpointNodeChildrenChanged): Added.
   40746         (WebCore::Range::nodeChildrenChanged): Added.
   40747         (WebCore::endpointNodeWillBeRemoved): Added.
   40748         (WebCore::Range::nodeWillBeRemoved): Added.
   40749         (WebCore::endpointTextInserted): Added.
   40750         (WebCore::Range::textInserted): Added.
   40751         (WebCore::endpointTextRemoved): Added.
   40752         (WebCore::Range::textRemoved): Added.
   40753         (WebCore::endpointTextNodesMerged): Added.
   40754         (WebCore::Range::textNodesMerged): Added.
   40755         (WebCore::endpointTextNodesSplit): Added.
   40756         (WebCore::Range::textNodeSplit): Added.
   40757 
   40758         * dom/Range.h: Added new member functions.
   40759 
   40760         * dom/NodeWithIndex.h: Added. Makes it so we won't find the index for the same
   40761         node more than once.
   40762         * dom/NodeWithIndexAfter.h: Added. Similar to NodeWithIndex but gives the index after a
   40763         node and treats a node pointer of 0 as meaning "before first node in parent container".
   40764         * dom/NodeWithIndexBefore.h: Added.  Similar to NodeWithIndex but treats a node pointer of 0
   40765         as meaning "after last node in parent container".
   40766 
   40767         * dom/Text.cpp:
   40768         (WebCore::Text::splitText): Call textNodeSplit.
   40769 
   40770         * editing/ApplyStyleCommand.cpp:
   40771         (WebCore::ApplyStyleCommand::applyInlineStyle): Changed variable name to pastLast.
   40772 
   40773 2008-03-15  Julien Chaffraix  <julien.chaffraix (a] gmail.com>
   40774 
   40775         Reviewed by Holger.
   40776 
   40777         [CURL] Crash below ResourceHandleManager::setupPOST when job->request().httpBody() is NULL
   40778         http://bugs.webkit.org/show_bug.cgi?id=16906
   40779 
   40780         Add null checks for httpBody() to match other ports.
   40781 
   40782         Test: http/tests/xmlhttprequest/xmlhttprequest-post-crash.html
   40783 
   40784         * platform/network/curl/ResourceHandleManager.cpp:
   40785         (WebCore::readCallback): Add null check.
   40786         (WebCore::ResourceHandleManager::setupPOST): Ditto.
   40787 
   40788 2008-03-14  Steve Falkenburg  <sfalken (a] apple.com>
   40789 
   40790         PGO build fixes.
   40791 
   40792         * WebCore.vcproj/WebCore.vcproj:
   40793 
   40794 2008-03-14  Anders Carlsson  <andersca (a] apple.com>
   40795 
   40796         Reviewed by Sam.
   40797 
   40798         <rdar://problem/5794989>
   40799         https://bugs.webkit.org/show_bug.cgi?id=17792
   40800         REGRESSION (Safari 3.0.4-3.1): Ordering tickets from Sweden's biggest train operator doesn't work
   40801 
   40802         Pass the frame loader that should be used for looking up the frame name to FrameLoader::createWindow
   40803         so that somewindow.open calls where the active window and 'somewindow' differ return the correct frame.
   40804         
   40805         * bindings/js/JSDOMWindowBase.cpp:
   40806         (WebCore::createWindow):
   40807         * loader/FrameLoader.cpp:
   40808         (WebCore::FrameLoader::createWindow):
   40809         * loader/FrameLoader.h:
   40810 
   40811 2008-03-14  Dan Bernstein  <mitz (a] apple.com>
   40812 
   40813         Reviewed by Mark Rowe.
   40814 
   40815         - fix <rdar://problem/5797836> shadow offsets are smaller than specified
   40816 
   40817         * platform/graphics/cg/GraphicsContextCG.cpp:
   40818         (WebCore::GraphicsContext::setShadow): Made the workaround for
   40819         <rdar://problem/5539388> unconditional.
   40820 
   40821 2008-03-14  Adam Roben  <aroben (a] apple.com>
   40822 
   40823         Fix it right this time
   40824 
   40825         * platform/MainThread.cpp: Cast to unsigned so we can use %u in the
   40826         format string.
   40827         * platform/mac/MainThreadMac.mm:
   40828 
   40829 2008-03-14  Adam Roben  <aroben (a] apple.com>
   40830 
   40831         Mac build fix
   40832 
   40833         * platform/mac/MainThreadMac.mm: Corrected a typo.
   40834 
   40835 2008-03-14  Dan Bernstein  <mitz (a] apple.com>
   40836 
   40837         Reviewed by Darin Adler.
   40838 
   40839         - fix http://bugs.webkit.org/show_bug.cgi?id=17834
   40840           REGRESSION: floated first-letter does not work when included in table
   40841 
   40842         Test: fast/css/first-letter-float.html
   40843 
   40844         * rendering/RenderBlock.cpp:
   40845         (WebCore::RenderBlock::updateFirstLetter): Changed the search for the
   40846         first text node to stop at a float if that float is an existing first-
   40847         letter.
   40848 
   40849 2008-03-14  Sam Weinig  <sam (a] webkit.org>
   40850 
   40851         Fix Mac build
   40852 
   40853         * WebCore.xcodeproj/project.pbxproj:
   40854 
   40855 2008-03-13  Adam Roben  <aroben (a] apple.com>
   40856 
   40857         Make most of callOnMainThread's implementation be cross-platform
   40858 
   40859         I took the non-platform-specific parts of MainThreadWin.cpp and moved
   40860         them to a new MainThread.cpp. Each platform is now responsible for
   40861         implementing one function, scheduleDispatchFunctionsOnMainThread,
   40862         which is supposed to set things up so that
   40863         dispatchFunctionsFromMainThread gets called from the main thread in
   40864         the near future.
   40865 
   40866         Reviewed by Alexey.
   40867 
   40868         * GNUmakefile.am: Added MainThread.cpp to the project.
   40869         * WebCore.pro: Ditto.
   40870         * WebCore.vcproj/WebCore.vcproj: Ditto.
   40871         * WebCore.xcodeproj/project.pbxproj: Ditto.
   40872         * WebCoreSources.bkl: Ditto.
   40873         * platform/MainThread.cpp:
   40874           - Copied from WebCore/platform/win/MainThreadWin.cpp.
   40875           - Removed the Windows-specific parts.
   40876         (WebCore::callOnMainThread): Changed to call
   40877         scheduleDispatchFunctionsOnMainThread instead of PostMessage.
   40878         * platform/gtk/MainThreadGtk.cpp:
   40879         (WebCore::timeoutFired): Renamed from callFunctionOnMainThread. Now
   40880         just calls dispatchFunctionsFromMainThread.
   40881         (WebCore::scheduleDispatchFunctionsOnMainThread): Added. Calls through
   40882         to g_timeout_add.
   40883         * platform/mac/MainThreadMac.mm: Renamed WebCoreFunctionWrapper to
   40884         WebCoreMainThreadCaller.
   40885         (-[WebCoreMainThreadCaller call]): Calls through to
   40886         dispatchFunctionsFromMainThread.
   40887         (WebCore::scheduleDispatchFunctionsOnMainThread): Makes a new
   40888         WebCoreMainThreadCaller and calls performSelectorOnMainThread on it.
   40889         * platform/qt/MainThreadQt.cpp: Removed PerformFunctionEvent.
   40890         (WebCore::MainThreadInvoker::event): Chagned to call through to
   40891         dispatchFunctionsFromMainThread.
   40892         (WebCore::scheduleDispatchFunctionsOnMainThread): Sends an empty event
   40893         to the MainThreadInvoker.
   40894         * platform/win/MainThreadWin.cpp:
   40895           - Removed the non-Windows-specific parts.
   40896           - Removed some unnecessary initialization of static variables to 0.
   40897         (WebCore::ThreadingWindowWndProc): Changed to call
   40898         dispatchFunctionsFromMainThread.
   40899         (WebCore::scheduleDispatchFunctionsOnMainThread): Calls through to
   40900         PostMessage.
   40901         * platform/wx/MainThreadWx.cpp:
   40902         (WebCore::scheduleDispatchFunctionsOnMainThread): Added.
   40903 
   40904 2008-03-14  Beth Dakin  <bdakin (a] apple.com>
   40905 
   40906         Reviewed by Geoff.
   40907 
   40908         Fix for <rdar://problem/5728171> Potential PLT speedup: don't 
   40909         realloc every time inside NamedAttrMap::addAttribute
   40910 
   40911         The speed-up for this turned out to be so small that it is mostly 
   40912         imperceptible. It is likely that it is a tiny boost, though, and 
   40913         the new code is much cleaner.
   40914 
   40915         * dom/Element.cpp:
   40916         (WebCore::Element::setAttributeMap): attrs is now called 
   40917         m_attributes
   40918         * dom/NamedAttrMap.cpp: The array attrs is now the Vector of 
   40919         RefPtrs called m_attributes, and there is no longer any need for 
   40920         the len member variable. 
   40921         (WebCore::NamedAttrMap::NamedAttrMap): 
   40922         (WebCore::NamedAttrMap::item):
   40923         (WebCore::NamedAttrMap::getAttributeItem):
   40924         (WebCore::NamedAttrMap::clearAttributes):
   40925         (WebCore::NamedAttrMap::operator=):
   40926         (WebCore::NamedAttrMap::addAttribute):
   40927         (WebCore::NamedAttrMap::removeAttribute):
   40928         (WebCore::NamedAttrMap::mapsEquivalent):
   40929         * dom/NamedAttrMap.h: Same.
   40930         (WebCore::NamedAttrMap::length):
   40931         (WebCore::NamedAttrMap::attributeItem):
   40932         (WebCore::NamedAttrMap::shrinkToLength):
   40933         (WebCore::NamedAttrMap::reserveCapacity):
   40934         * html/HTMLTokenizer.cpp: One of the benefits of the old array was 
   40935         that it never took up more memory than it needed to. So the 
   40936         tokenizer utilizes new member functions on NamedAttrMap 
   40937         (shrinkToLength and reserveCapacity) to try to keep memory usage at 
   40938         a minimum. 
   40939         (WebCore::Token::addAttribute):
   40940         (WebCore::HTMLTokenizer::processToken):
   40941 
   40942 2008-03-14  David D. Kilzer  <ddkilzer (a] apple.com>
   40943 
   40944         BUILD FIX when ENABLE(MAC_JAVA_BRIDGE) set to 0.
   40945 
   40946         * page/mac/FrameMac.mm: Move up #if ENABLE(MAC_JAVA_BRIDGE) guard
   40947         to comment out unused code.
   40948 
   40949 2008-03-14  David D. Kilzer  <ddkilzer (a] apple.com>
   40950 
   40951         Unify concept of enabling the Mac Java bridge.
   40952 
   40953         Reviewed by Darin and Anders.
   40954 
   40955         No test cases added since there is no change in functionality.
   40956 
   40957         * DerivedSources.make: Added check for ENABLE_MAC_JAVA_BRIDGE macro.
   40958         If defined as "1", add WebCore.JNI.exp to WEBCORE_EXPORT_DEPENDENCIES.
   40959         * WebCore.JNI.exp: Added.
   40960         * WebCore.base.exp: Moved exported JNI methods to WebCore.JNI.exp.
   40961 
   40962         * bridge/jni/jni_class.cpp: Added #if ENABLE(MAC_JAVA_BRIDGE) guard.
   40963         * bridge/jni/jni_class.h: Ditto.
   40964         * bridge/jni/jni_instance.cpp: Ditto.
   40965         * bridge/jni/jni_instance.h: Ditto.
   40966         * bridge/jni/jni_jsobject.cpp: Ditto.
   40967         * bridge/jni/jni_jsobject.h: Ditto.
   40968         * bridge/jni/jni_objc.mm: Ditto.
   40969         * bridge/jni/jni_runtime.cpp: Ditto.
   40970         * bridge/jni/jni_runtime.h: Ditto.
   40971         * bridge/jni/jni_utility.cpp: Ditto.
   40972         * bridge/jni/jni_utility.h: Ditto.
   40973 
   40974         * bridge/runtime.cpp: Removed unused #include statements.
   40975         * bridge/runtime.h:
   40976         (KJS::Bindings::Instance::BindingLanguage): Added #if ENABLE(MAC_JAVA_BRIDGE)
   40977         guard for JavaLanguage enum.  Also added #if PLATFORM(MAC) guard for
   40978         ObjectiveCLanguage enum to match corresponding code in runtime.cpp.
   40979 
   40980         * config.h: Removed definition of HAVE_JNI.
   40981 
   40982         * loader/FrameLoaderClient.h:
   40983         (WebCore::FrameLoaderClient::javaApplet): Added #if ENABLE(MAC_JAVA_BRIDGE) guard.
   40984         * page/Frame.cpp:
   40985         (WebCore::Frame::Frame): Ditto.
   40986         * page/Frame.h:
   40987         (WebCore::Frame::initJavaJSBindings): Ditto.
   40988         * page/mac/FrameMac.mm:
   40989         (WebCore::Frame::createScriptInstanceForWidget): Ditto.
   40990         (WebCore::Frame::initJavaJSBindings): Ditto.
   40991 
   40992 2008-03-13  Darin Adler  <darin (a] apple.com>
   40993 
   40994         * html/PreloadScanner.h: Corrected license.
   40995         * html/PreloadScanner.cpp: Corrected license.
   40996 
   40997 2008-03-13  Mark Mentovai  <mark (a] moxienet.com>
   40998 
   40999         Reviewed by darin.  Landed by eseidel.
   41000 
   41001         * platform/FloatConversion.h: Include a header to get CoreGraphics
   41002         types when using CoreGraphics types.
   41003 
   41004 2008-03-13  Mark Mentovai  <mark (a] moxienet.com>
   41005 
   41006         Reviewed by eseidel.  Landed by eseidel.
   41007 
   41008         * WebCore.xcodeproj/project.pbxproj:
   41009         * css/CSSParser.cpp:
   41010         * css/makeprop.pl:
   41011         Move CSSPropertyNames.c to CSSPropertyNames.cpp
   41012 
   41013 2008-03-13  Mark Mentovai  <mark (a] moxienet.com>
   41014 
   41015         Reviewed by eseidel.  Landed by eseidel.
   41016 
   41017         * platform/Arena.h: Use statement1;statement2 instead of
   41018         (statement1,statement2) in CLEAR_UNUSED.
   41019 
   41020 2008-03-13  Tommi Komulainen  <tommi.komulainen (a] iki.fi>
   41021 
   41022         Reviewed by Alp Toker.
   41023 
   41024         http://bugs.webkit.org/show_bug.cgi?id=17821
   41025         [SOUP] POST requests are empty
   41026 
   41027         Send the HTTP request body as well.
   41028 
   41029         * platform/network/soup/ResourceHandleSoup.cpp:
   41030         (WebCore::ResourceHandle::start):
   41031 
   41032 2008-03-13  Dan Bernstein  <mitz (a] apple.com>
   41033 
   41034         Reviewed by Dave Hyatt.
   41035 
   41036         - fix http://bugs.webkit.org/show_bug.cgi?id=17819
   41037           Border-collapse: collapse later cell wins on PC, earlier cell on Mac
   41038 
   41039         Test: fast/table/border-collapsing/equal-precedence-resolution.html
   41040 
   41041         * rendering/RenderTableCell.cpp:
   41042         (WebCore::RenderTableCell::collapsedLeftBorder): When calling
   41043         compareBorders() with borders that may have the same precedence, made
   41044         sure to pass the border belonging to the earlier (in document order)
   41045         element first, since compareBorders() prefers the first argument when
   41046         there is a tie.
   41047         (WebCore::RenderTableCell::collapsedRightBorder): Ditto.
   41048         (WebCore::RenderTableCell::collapsedTopBorder): Ditto.
   41049 
   41050 2008-03-13  Adam Roben  <aroben (a] apple.com>
   41051 
   41052         wx build fix and Windows leak fix after r31034
   41053 
   41054         * platform/graphics/wx/ImageWx.cpp:
   41055         (WebCore::Image::loadPlatformResource): Use SharedBuffer::create.
   41056         * platform/win/SharedBufferWin.cpp:
   41057         (WebCore::SharedBuffer::createWithContentsOfFile): Ditto (we were
   41058         leaking the SharedBuffer here before).
   41059 
   41060 2008-03-13  Antti Koivisto  <antti (a] apple.com>
   41061 
   41062         Reviewed by Eric.
   41063 
   41064         Correct a few issues spotted by Mike Belshe. 
   41065 
   41066         * html/PreloadScanner.cpp:
   41067         (WebCore::PreloadScanner::tokenize):
   41068         * loader/loader.cpp:
   41069         (WebCore::Loader::cancelRequests):
   41070 
   41071 2008-03-13  Rodney Dawes  <dobey (a] wayofthemonkey.com>
   41072 
   41073         Fix GTK+ build for SharedBuffer changes.
   41074 
   41075         * platform/graphics/gtk/ImageGtk.cpp:
   41076         (Image::loadPlatformResource):
   41077 
   41078 2008-03-13  Steve Falkenburg  <sfalken (a] apple.com>
   41079 
   41080         More PGO build fixes.
   41081 
   41082         * WebCorePrefix.cpp:
   41083 
   41084 2008-03-13  Antti Koivisto  <antti (a] apple.com>
   41085 
   41086         Reviewed by Darin.
   41087         
   41088         Make page loads go fast.
   41089         
   41090         http://bugs.webkit.org/show_bug.cgi?id=17480
   41091 
   41092         - Implement speculative preloading. When a script load blocks the main parser, use a side 
   41093           parser to pick up more resources.
   41094         - Implement per-host load queues, prioritize scripts and stylesheets over images.
   41095         
   41096         Depending on content and network latency this may speed things up quite a bit.
   41097 
   41098         * WebCore.xcodeproj/project.pbxproj:
   41099         * dom/Document.cpp:
   41100         (WebCore::Document::implicitClose):
   41101         Clear the preloads after laoding completes.
   41102         
   41103         * html/HTMLLinkElement.cpp:
   41104         (WebCore::HTMLLinkElement::parseMappedAttribute):
   41105         (WebCore::HTMLLinkElement::tokenizeRelAttribute):
   41106         * html/HTMLLinkElement.h:
   41107         Make tokenizeRelAttribute() public static so it can be used from elsewhere.
   41108         Eliminate a pointless bitfield so I can get references.
   41109         
   41110         * html/HTMLTokenizer.cpp:
   41111         (WebCore::HTMLTokenizer::scriptHandler):
   41112         (WebCore::HTMLTokenizer::scriptExecution):
   41113         (WebCore::HTMLTokenizer::write):
   41114         * html/HTMLTokenizer.h:
   41115         Spin up the preload scanner whenever a script load blocks the parser. One scanner tracks the end of 
   41116         the document while temporary ones are created as needed to scan document.write() output.
   41117         
   41118         * html/PreloadScanner.cpp: Added.
   41119         (WebCore::PreloadScanner::PreloadScanner):
   41120         (WebCore::PreloadScanner::~PreloadScanner):
   41121         (WebCore::PreloadScanner::begin):
   41122         (WebCore::PreloadScanner::end):
   41123         (WebCore::PreloadScanner::reset):
   41124         (WebCore::PreloadScanner::write):
   41125         (WebCore::isWhitespace):
   41126         (WebCore::PreloadScanner::clearLastCharacters):
   41127         (WebCore::PreloadScanner::rememberCharacter):
   41128         (WebCore::PreloadScanner::lastCharactersMatch):
   41129         (WebCore::legalEntityFor):
   41130         (WebCore::PreloadScanner::consumeEntity):
   41131         (WebCore::PreloadScanner::tokenize):
   41132         (WebCore::PreloadScanner::processAttribute):
   41133         (WebCore::PreloadScanner::emitCharacter):
   41134         (WebCore::PreloadScanner::tokenizeCSS):
   41135         (WebCore::PreloadScanner::emitTag):
   41136         (WebCore::PreloadScanner::emitCSSRule):
   41137         * html/PreloadScanner.h: Added.
   41138         (WebCore::PreloadScanner::inProgress):
   41139         (WebCore::PreloadScanner::):
   41140         HTML5 tokenization plus some glue code. Fake CSS parsing thrown in just for fun.
   41141         
   41142         * loader/Cache.cpp:
   41143         (WebCore::Cache::pruneDeadResources):
   41144         Preloads have zero refcount, avoid kicking them out too early.
   41145         
   41146         * loader/CachedResource.cpp:
   41147         (WebCore::CachedResource::CachedResource):
   41148         (WebCore::CachedResource::ref):
   41149         * loader/CachedResource.h:
   41150         (WebCore::CachedResource::):
   41151         (WebCore::CachedResource::preloadResult):
   41152         (WebCore::CachedResource::setRequestedFromNetworkingLayer):
   41153         (WebCore::CachedResource::canDelete):
   41154         (WebCore::CachedResource::isPreloaded):
   41155         (WebCore::CachedResource::increasePreloadCount):
   41156         (WebCore::CachedResource::decreasePreloadCount):
   41157         Keep track which resources are preloads. Avoid deleting them. Track
   41158         at which point of the loading preloads get utilized to enable some interesting 
   41159         statistics.
   41160         
   41161         * loader/DocLoader.cpp:
   41162         (WebCore::DocLoader::~DocLoader):
   41163         (WebCore::DocLoader::checkForReload):
   41164         (WebCore::DocLoader::registerPreload):
   41165         (WebCore::DocLoader::clearPreloads):
   41166         (WebCore::DocLoader::printPreloadStats):
   41167         * loader/DocLoader.h:
   41168         Ensure we utilize preloaded resources during reloads.
   41169         Keep a list of all preloads in the document. Clear the preloads after
   41170         parsing is complete. Some debug statistics.
   41171         
   41172         * loader/DocumentLoader.cpp:
   41173         (WebCore::DocumentLoader::isLoadingInAPISense):
   41174         Avoid signaling that loading is complete too early. 
   41175         
   41176         * loader/loader.cpp:
   41177         (WebCore::Loader::Loader):
   41178         (WebCore::Loader::~Loader):
   41179         (WebCore::Loader::determinePriority):
   41180         (WebCore::Loader::load):
   41181         (WebCore::Loader::scheduleServePendingRequests):
   41182         (WebCore::Loader::requestTimerFired):
   41183         (WebCore::Loader::servePendingRequests):
   41184         (WebCore::Loader::cancelRequests):
   41185         (WebCore::Loader::Host::Host):
   41186         (WebCore::Loader::Host::~Host):
   41187         (WebCore::Loader::Host::addRequest):
   41188         (WebCore::Loader::Host::hasRequests):
   41189         (WebCore::Loader::Host::servePendingRequests):
   41190         (WebCore::Loader::Host::didFinishLoading):
   41191         (WebCore::Loader::Host::didFail):
   41192         (WebCore::Loader::Host::didReceiveResponse):
   41193         (WebCore::Loader::Host::didReceiveData):
   41194         (WebCore::Loader::Host::cancelPendingRequests):
   41195         (WebCore::Loader::Host::cancelRequests):
   41196         * loader/loader.h:
   41197         (WebCore::Loader::):
   41198         Distribute load requests to per-host priority queues. Limit the number of loads issued to the 
   41199         networking layer so we have better changes of getting important requests through first.
   41200         Prioritize scripts > stylesheets > images.
   41201 
   41202 2008-03-13  David Hyatt  <hyatt (a] apple.com>
   41203 
   41204         This patch makes full page zoom work pretty well. It fixes repainting so that it works when transforms
   41205         are set on the RenderView. It also implements the "smart layout" behavior that other browsers support when
   41206         zooming. The page will still try to constrain to the viewport size even when zoomed.
   41207 
   41208         Reviewed by john
   41209 
   41210         * dom/Document.cpp:
   41211         (WebCore::Document::recalcStyle):
   41212         Make sure to test for transform changes even when there is no zoom.  This fixes repainting issues
   41213         caused by jumping from a zoomed state back to the standard size.
   41214 
   41215         * page/FrameView.cpp:
   41216         (WebCore::FrameView::adjustViewSize):
   41217         Adjust for the zoom factor (the render tree is in unzoomed coordinates, but the scrollbars of the view
   41218         need to handle zoomed coordinates).
   41219 
   41220         * rendering/RenderBox.cpp:
   41221         (WebCore::RenderBox::calcHeight):
   41222         Fix the body-sizing-to-the-view-height quirk so that it takes the zoom factor into account when
   41223         stretching to fill the viewport.
   41224 
   41225         * rendering/RenderLayer.cpp:
   41226         (WebCore::RenderLayer::updateLayerPositions):
   41227         (WebCore::RenderLayer::setHasVisibleContent):
   41228         Remove the FIXMEs now that absoluteClippedOverflowRect works with transforms on the RenderView.
   41229 
   41230         * rendering/RenderView.cpp:
   41231         (WebCore::RenderView::calcHeight):
   41232         (WebCore::RenderView::calcWidth):
   41233         Make sure the calculated width/height take the zoom factor into account in order to get the "smart layout"
   41234         behavior.
   41235 
   41236         (WebCore::RenderView::layout):
   41237         When deciding whether children have to get a relayout, we need to check the zoomed width/height and not just
   41238         the viewport size.
   41239 
   41240         (WebCore::RenderView::computeAbsoluteRepaintRect):
   41241         Patched to take into account transforms set on the RenderView.
   41242 
   41243         (WebCore::RenderView::docHeight):
   41244         (WebCore::RenderView::docWidth):
   41245         Patched to just always use m_width and m_height initially, since those have already been adjusted for
   41246         the zoom factor.
   41247 
   41248         (WebCore::RenderView::zoomedHeight):
   41249         (WebCore::RenderView::zoomedWidth):
   41250         * rendering/RenderView.h:
   41251         New helper methods for obtaining the adjusted width/height of the viewport taking into account the
   41252         zoom factor.
   41253 
   41254 2008-03-13  Anders Carlsson  <andersca (a] apple.com>
   41255 
   41256         Build fix.
   41257 
   41258         * WebCore.base.exp:
   41259 
   41260 2008-03-13  Anders Carlsson  <andersca (a] apple.com>
   41261 
   41262         Reviewed by Adam.
   41263 
   41264         Get rid of actualRequest, it is not used anymore. Also, get rid of 
   41265         initialRequest and replace all uses with originalRequest because those are
   41266         the same thing.
   41267         
   41268         * loader/DocumentLoader.cpp:
   41269         * loader/DocumentLoader.h:
   41270         * loader/FrameLoader.cpp:
   41271         (WebCore::FrameLoader::initialRequest):
   41272         (WebCore::FrameLoader::originalRequestURL):
   41273 
   41274 2008-03-13  Brady Eidson  <beidson (a] apple.com>
   41275 
   41276         Reviewed by Anders
   41277 
   41278         Convert SharedBuffer to start with a refCount of 1
   41279 
   41280         * loader/ImageDocument.cpp:
   41281         (WebCore::ImageTokenizer::finish):
   41282 
   41283         * loader/ResourceLoader.cpp:
   41284         (WebCore::ResourceLoader::addData):
   41285         (WebCore::ResourceLoader::willStopBufferingData):
   41286 
   41287         * loader/icon/IconDatabase.cpp:
   41288         (WebCore::IconDatabase::defaultIcon):
   41289         (WebCore::IconDatabase::getImageDataForIconURLFromSQLDatabase):
   41290 
   41291         * loader/loader.cpp:
   41292         (WebCore::Loader::didReceiveData):
   41293 
   41294         * platform/SharedBuffer.h:
   41295         (WebCore::SharedBuffer::create): Make all constructors private, add ::create() calls
   41296         * platform/SharedBuffer.cpp:
   41297         (WebCore::SharedBuffer::SharedBuffer): Revert to default RefCounted constructor to start with a ref count of 1
   41298         (WebCore::SharedBuffer::copy):
   41299         * platform/mac/SharedBufferMac.mm:
   41300         (WebCore::SharedBuffer::wrapNSData):
   41301         (WebCore::SharedBuffer::SharedBuffer): Revert to default RefCounted constructor to start with a ref count of 1
   41302 
   41303 2008-03-13  Steve Falkenburg  <sfalken (a] apple.com>
   41304 
   41305         PGO build fixes.
   41306         
   41307         Disable PGO for normal release builds.
   41308         Added work-in-progress Release_PGOInstrument/Release_PGOOptimize targets.
   41309 
   41310         * WebCore.vcproj/WebCore.vcproj:
   41311 
   41312 2008-03-13  Anders Carlsson  <andersca (a] apple.com>
   41313 
   41314         Reviewed by Darin.
   41315 
   41316         Make a bunch of DocumentLoader setters/getters inline.
   41317         
   41318         * loader/DocumentLoader.cpp:
   41319         * loader/DocumentLoader.h:
   41320         (WebCore::DocumentLoader::isStopping):
   41321         (WebCore::DocumentLoader::setCommitted):
   41322         (WebCore::DocumentLoader::isCommitted):
   41323         (WebCore::DocumentLoader::isLoading):
   41324         (WebCore::DocumentLoader::setLoading):
   41325         (WebCore::DocumentLoader::response):
   41326         (WebCore::DocumentLoader::mainDocumentError):
   41327         (WebCore::DocumentLoader::setResponse):
   41328         (WebCore::DocumentLoader::isClientRedirect):
   41329         (WebCore::DocumentLoader::setIsClientRedirect):
   41330         (WebCore::DocumentLoader::overrideEncoding):
   41331         (WebCore::DocumentLoader::responses):
   41332         (WebCore::DocumentLoader::triggeringAction):
   41333         (WebCore::DocumentLoader::setTriggeringAction):
   41334         (WebCore::DocumentLoader::setOverrideEncoding):
   41335         (WebCore::DocumentLoader::setLastCheckedRequest):
   41336         (WebCore::DocumentLoader::lastCheckedRequest):
   41337         (WebCore::DocumentLoader::title):
   41338         (WebCore::DocumentLoader::setLoadingFromCachedPage):
   41339         (WebCore::DocumentLoader::isLoadingFromCachedPage):
   41340 
   41341 2008-03-13  Rodney Dawes  <dobey (a] wayofthemonkey.com>
   41342 
   41343         Fix builds without SVG enabled.
   41344 
   41345         * page/Frame.cpp:
   41346         (Frame::shouldApplyTextZoom):
   41347         (Frame::shouldApplyPageZoom):
   41348 
   41349 2008-03-13  Simon Hausmann  <hausmann (a] webkit.org>
   41350 
   41351         Fix the Qt build.
   41352 
   41353         * bridge/qt/qt_instance.cpp:
   41354         (KJS::Bindings::QtInstance::getQtInstance):
   41355         (KJS::Bindings::QtInstance::getRuntimeObject):
   41356         * bridge/qt/qt_instance.h:
   41357         (KJS::Bindings::QtInstance::create):
   41358         * bridge/qt/qt_runtime.cpp:
   41359         (KJS::Bindings::convertQVariantToValue):
   41360         (KJS::Bindings::QtConnectionObject::execute):
   41361         * page/qt/FrameQt.cpp:
   41362         (WebCore::Frame::createScriptInstanceForWidget):
   41363 
   41364 2008-03-12  Sam Weinig  <sam (a] webkit.org>
   41365 
   41366         Reviewed by Darin Adler.
   41367 
   41368         Fix <rdar://problem/5784773>
   41369         Crash loading QT movies @ apple.com/ipodtouch/features.html with a PAC file (WebKitThreadingException)
   41370 
   41371         Make bridged RuntimeObjects get collected on the main thread only. This is necessary
   41372         because clients of the bridged objects are unlikely to prepared for a collection on 
   41373         non-main thread, which can happen with a PAC file.
   41374 
   41375         * bridge/runtime_object.cpp:
   41376         (RuntimeObjectImp::RuntimeObjectImp):
   41377 
   41378 2008-03-12  Adam Roben  <aroben (a] apple.com>
   41379 
   41380         Fix Bug 17815: Inspector's DOM tree should descend into subframes
   41381 
   41382         <http://bugs.webkit.org/show_bug.cgi?id=17815>
   41383 
   41384         Reviewed by Tim.
   41385 
   41386         * page/inspector/DocumentPanel.js:
   41387         (WebInspector.DocumentPanel.revealNode): Changed to provide
   41388         _isAncestorIncludingParentFramesWithinPanel and
   41389         _parentNodeOrFrameElementWithinPanel for the isAncestor and getParent
   41390         parameters to findTreeElement so that parent frames will be searched.
   41391         (WebInspector.DocumentPanel.updateBreadcrumb):
   41392           - Changed while loop to for loop
   41393           - Use _parentNodeOrFrameElementWithinPanel instead of
   41394             Node.parentNode to move to the next node
   41395           - The loop now ends when we reach the DocumentPanel's document node
   41396           - Traversal past other Document nodes is now allowed
   41397           - We add the "start" class to the final crumb after the loop exits
   41398         (WebInspector.DocumentPanel._getDocumentForNode): Added. Simple helper
   41399         that returns the node itself if the node is a Document node, or the
   41400         node's ownerDocument otherwise.
   41401         (WebInspector.DocumentPanel._parentNodeOrFrameElementWithinPanel):
   41402         Added. Returns the node's parent node or, in the case of a Document
   41403         node, the node's window's owning frame element, but will not return a
   41404         node that is in a parent frame of the DocumentPanel's Document.
   41405         (WebInspector.DocumentPanel._isAncestorIncludingParentFramesWithinPanel):
   41406         Added. Returns true if a is an ancestor of b if a is an ancestor of a
   41407         frame element whose subframe(s) contain b.
   41408         (WebInspector.DOMNodeTreeElement): We now consider ourselves to have
   41409         children if we have a contentDocument.
   41410         (WebInspector.DOMNodeTreeElement.onpopulate): Moved the appendChild
   41411         loop into a function so that we can add both children of our
   41412         contentDocument and children of our node to the tree.
   41413         (WebInspector.DOMNodeTreeElement.ondblclick): Changed so that we get
   41414         the rootDOMNode by traversing the tree outline hierarchy instead of
   41415         the DOM hierarchy so that we can easily jump up to a parent frame.
   41416 
   41417 2008-03-12  Adam Roben  <aroben (a] apple.com>
   41418 
   41419         Update the styles/metrics panes and breadcrumb after editing DOM
   41420         attributes
   41421 
   41422         Reviewed by Tim.
   41423 
   41424         * page/inspector/DocumentPanel.js:
   41425         (WebInspector.DocumentPanel.set focusedDOMNode): Moved code to update
   41426         the parts of the DocumentPanel other than the DOM tree into a new
   41427         function, _focusedNodeChanged.
   41428         (WebInspector.DocumentPanel._focusedNodeChanged): Added. The
   41429         forceUpdate parameter specifies whether the update should occur even
   41430         if the focused node hasn't changed since the last update.
   41431         (WebInspector.DocumentPanel.updateBreadcrumb): Added a forceUpdate
   41432         parameter. If forceUpdate is true, we always rebuild the breadcrumbs.
   41433         (WebInspector.DocumentPanel.updateStyles): Added a forceUpdate
   41434         parameter. If forceUpdate is true, we always rebuild the styles pane.
   41435         (WebInspector.DOMNodeTreeElement._attributeEditingCommitted): Added a
   41436         call to DocumentPanel._focusedNodeChanged. We have to force the update
   41437         because we haven't changed the focused node (the attributes of the
   41438         node have changed).
   41439         * page/inspector/StylesSidebarPane.js:
   41440         (WebInspector.StylesSidebarPane.update): Added a forceUpdate
   41441         parameter. If forceUpdate is true we always rebuild the styles.
   41442 
   41443 2008-03-12  Mark Rowe  <mrowe (a] apple.com>
   41444 
   41445         Further Gtk and Qt build fixes.
   41446 
   41447         * bridge/runtime.cpp:
   41448         (KJS::Bindings::Instance::createRuntimeObject): Adapt Qt-only code for change to PassRefPtr.
   41449         * page/gtk/FrameGtk.cpp: Add missing include.
   41450 
   41451 2008-03-12  Mark Rowe  <mrowe (a] apple.com>
   41452 
   41453         Fix Gtk and Qt builds.
   41454 
   41455         * page/gtk/FrameGtk.cpp:
   41456         * page/qt/FrameQt.cpp:
   41457 
   41458 2008-03-12  Mark Rowe  <mrowe (a] apple.com>
   41459 
   41460         Mac build fix.
   41461 
   41462         * WebCore.base.exp:  Remove symbol.
   41463 
   41464 2008-03-12  Steve Falkenburg  <sfalken (a] apple.com>
   41465 
   41466         Build fix.
   41467 
   41468         * page/win/FrameWin.cpp:
   41469 
   41470 2008-03-12  Steve Falkenburg  <sfalken (a] apple.com>
   41471 
   41472         Build fix.
   41473 
   41474         * plugins/win/PluginViewWin.cpp:
   41475         (WebCore::PluginView::bindingInstance):
   41476 
   41477 2008-03-12  Darin Adler  <darin (a] apple.com>
   41478 
   41479         Reviewed by Anders.
   41480 
   41481         - http://bugs.webkit.org/show_bug.cgi?id=17640
   41482           eliminate WebCoreFrameBridge
   41483 
   41484         * WebCore.base.exp: Added more exports, needed by code moved from WebCoreFrameBridge
   41485         to WebFrame in WebKit.
   41486         * WebCore.xcodeproj/project.pbxproj: Added more headers, same reason. Also deleted
   41487         WebCoreFrameBridge.h and WebCoreFrameBridge.mm.
   41488 
   41489         * page/Frame.cpp:
   41490         (WebCore::Frame::Frame): Added call to initJavaJSBindings(), formerly handled by
   41491         the WebCoreFrameBridge.
   41492         * page/Frame.h: Added initJavaJSBindings function.
   41493 
   41494         * page/mac/FrameMac.mm:
   41495         (WebCore::updateRenderingForBindings): Moved here from WebCoreFrameBridge.
   41496         (WebCore::Frame::initJavaJSBindings): Ditto; code was in the init function.
   41497 
   41498         * page/mac/WebCoreFrameBridge.h: Removed.
   41499         * page/mac/WebCoreFrameBridge.mm: Removed.
   41500 
   41501 2008-03-12  Sam Weinig  <sam (a] webkit.org>
   41502 
   41503         Reviewed by Anders Carlsson.
   41504 
   41505         Don't go through the Document just to get the frame Element.
   41506 
   41507         * page/DOMWindow.cpp:
   41508         (WebCore::DOMWindow::frameElement):
   41509 
   41510 2008-03-12  Anders Carlsson  <andersca (a] apple.com>
   41511 
   41512         Reviewed by Geoff and Sam.
   41513 
   41514         More Instance cleanup:
   41515         
   41516         * Make Instance inherit from RefCounted instead of doing its own refcounting.        
   41517         * Make all Instance subclasses private, add static create methods.         
   41518         * Have Instance start out with a refcount of 1.
   41519         * Get rid of Instance::createBindingForLanguageInstance and call the individual 
   41520           instance constructor methods instead.
   41521         * Fix many methods to take and return PassRefPtr<Instance> to ensure that the
   41522           refcounting is done correctly.
   41523          
   41524         * bridge/c/c_instance.h:
   41525         (KJS::Bindings::CInstance::create):
   41526         * bridge/c/c_utility.cpp:
   41527         (KJS::Bindings::convertNPVariantToValue):
   41528         * bridge/jni/jni_instance.cpp:
   41529         (JavaInstance::invokeMethod):
   41530         * bridge/jni/jni_instance.h:
   41531         (KJS::Bindings::JavaInstance::create):
   41532         * bridge/jni/jni_jsobject.cpp:
   41533         (JavaJSObject::convertJObjectToValue):
   41534         * bridge/jni/jni_runtime.cpp:
   41535         (JavaField::valueFromInstance):
   41536         (JavaArray::valueAt):
   41537         * bridge/objc/objc_instance.h:
   41538         (KJS::Bindings::ObjcInstance::create):
   41539         * bridge/objc/objc_utility.mm:
   41540         (KJS::Bindings::convertObjcValueToValue):
   41541         * bridge/qt/qt_instance.cpp:
   41542         (KJS::Bindings::QtRuntimeObjectImp::QtRuntimeObjectImp):
   41543         (KJS::Bindings::QtInstance::getQtInstance):
   41544         (KJS::Bindings::QtInstance::getRuntimeObject):
   41545         * bridge/qt/qt_instance.h:
   41546         * bridge/runtime.cpp:
   41547         (KJS::Bindings::Instance::Instance):
   41548         (KJS::Bindings::Instance::createRuntimeObject):
   41549         * bridge/runtime.h:
   41550         * bridge/runtime_object.cpp:
   41551         (RuntimeObjectImp::RuntimeObjectImp):
   41552         * bridge/runtime_object.h:
   41553         * page/Frame.h:
   41554         * page/mac/FrameMac.mm:
   41555         (WebCore::Frame::createScriptInstanceForWidget):
   41556         * page/win/FrameWin.cpp:
   41557         (WebCore::Frame::createScriptInstanceForWidget):
   41558         * plugins/PluginView.h:
   41559         * plugins/win/PluginViewWin.cpp:
   41560         (WebCore::PluginView::bindingInstance):
   41561 
   41562 2008-03-12  Dan Bernstein  <mitz (a] apple.com>
   41563 
   41564         Suggested by Darin Adler. Reviewed by Dave Hyatt.
   41565 
   41566         - speed up BidiIterator::direction()
   41567 
   41568         * rendering/bidi.cpp:
   41569         (WebCore::BidiIterator::current): Made inline and corrected the
   41570         out-of-bounds condition to work with 0-length text and offsets beyond
   41571         the end of the text.
   41572         (WebCore::BidiIterator::direction): Changed to call current() and not
   41573         call the virtual method isListMarker() most of the time.
   41574         (WebCore::addMidpoint): Removed unnecessary null-check of smidpoints.
   41575         (WebCore::appendRunsForObject): Ditto.
   41576 
   41577 2008-03-12  Adam Roben  <aroben (a] apple.com>
   41578 
   41579         Make URLs not be underlined while editing them in the DOM view
   41580 
   41581         Reviewed by Tim.
   41582 
   41583         * page/inspector/inspector.css:
   41584 
   41585 2008-03-12  Adam Roben  <aroben (a] apple.com>
   41586 
   41587         Part of Bug 17224: DOM nodes/attributes should be editable
   41588 
   41589         <http://bugs.webkit.org/show_bug.cgi?id=17224>
   41590         <rdar://problem/5732825>
   41591 
   41592         We now start editing if the user single-clicks on an attribute,
   41593         attribute value, or text node while the parent element is selected.
   41594         Previously, we started editing on double-click regardless of the
   41595         selection state of the element.
   41596 
   41597         URLs in the DOM tree are now followed on Alt/Option-click, rather than
   41598         on just click.
   41599 
   41600         Reviewed by Tim.
   41601 
   41602         * English.lproj/InspectorLocalizedStrings.js: Added four new localized
   41603         strings.
   41604         * page/inspector/DocumentPanel.js:
   41605         (WebInspector.DOMNodeTreeElement.onattach): Call new
   41606         _makeURLSActivateOnModifiedClick.
   41607         (WebInspector.DOMNodeTreeElement._makeURLsActivateOnModifiedClick):
   41608         Added. Changes the tooltip of each link in this element to indicate
   41609         that Alt/Option-click will follow the URL, and sets the
   41610         followOnAltClick property on each link.
   41611         (WebInspector.DOMNodeTreeElement.onselect): Mark that we're being
   41612         selected.
   41613         (WebInspector.DOMNodeTreeElement.onmousedown): If we're not currently
   41614         being selected, start editing.
   41615         (WebInspector.DOMNodeTreeElement.ondblclick): We no longer start
   41616         editing here. We block re-rooting of the tree if we're currently
   41617         editing.
   41618         (WebInspector.DOMNodeTreeElement._startEditing):
   41619           - Don't do anything if we're not focused
   41620           - Pass the event down to _startEditingAttribute.
   41621         (WebInspector.DOMNodeTreeElement._startEditingAttribute): Don't do
   41622         anything if the event target is a URL and the Alt/Option key is
   41623         pressed -- in this case we want to follow the link.
   41624         (WebInspector.DOMNodeTreeElement._updateTitle): Call
   41625         _makeURLsActivateOnClick again since the anchor elements have all been
   41626         recreated.
   41627         * page/inspector/inspector.js:
   41628         (WebInspector.documentClick): If the anchor as a followOnAltClick
   41629         property and the Alt/Option key is not pressed, do nothing.
   41630 
   41631 2008-03-12  Ada Chan  <adachan (a] apple.com>
   41632 
   41633         Fixed the initial value of zoom factor.
   41634 
   41635         Reviewed by Adam.
   41636 
   41637         * page/Frame.cpp:
   41638         (WebCore::FramePrivate::FramePrivate):
   41639 
   41640 2008-03-12  David Hyatt  <hyatt (a] apple.com>
   41641 
   41642         Make full page zoom vaguely work.  This patch uses the CSS transform system to turn on full page zoom at the
   41643         document level.  There are many many bugs that I'm going to file to track all the issues (most of the issues
   41644         are just bugs with transforms themselves).
   41645 
   41646         Reviewed by Adam Roben
   41647 
   41648         * css/CSSStyleSelector.cpp:
   41649         (WebCore::CSSStyleSelector::applyProperty):
   41650         (WebCore::CSSStyleSelector::getComputedSizeFromSpecifiedSize):
   41651         * dom/Document.cpp:
   41652         (WebCore::Document::recalcStyle):
   41653         * page/Frame.cpp:
   41654         (WebCore::Frame::shouldApplyTextZoom):
   41655         (WebCore::Frame::shouldApplyPageZoom):
   41656         * page/Frame.h:
   41657         * rendering/RenderLayer.cpp:
   41658         (WebCore::RenderLayer::updateLayerPositions):
   41659         (WebCore::RenderLayer::setHasVisibleContent):
   41660         (WebCore::RenderLayer::paintLayer):
   41661         (WebCore::RenderLayer::hitTestLayer):
   41662         * rendering/RenderLayer.h:
   41663 
   41664 2008-03-12  David Hyatt  <hyatt (a] apple.com>
   41665 
   41666         Make the zoom factor a float and not a percent.
   41667 
   41668         Reviewed by antti
   41669 
   41670         * WebCore.base.exp:
   41671         * css/CSSStyleSelector.cpp:
   41672         (WebCore::CSSStyleSelector::applyProperty):
   41673         (WebCore::CSSStyleSelector::getComputedSizeFromSpecifiedSize):
   41674         * page/Frame.cpp:
   41675         (WebCore::Frame::zoomFactor):
   41676         (WebCore::Frame::setZoomFactor):
   41677         * page/Frame.h:
   41678         * page/FramePrivate.h:
   41679         * svg/SVGSVGElement.cpp:
   41680         (WebCore::SVGSVGElement::currentScale):
   41681         (WebCore::SVGSVGElement::setCurrentScale):
   41682 
   41683 2008-03-12  David Hyatt  <hyatt (a] apple.com>
   41684 
   41685         Eliminate setTextMultiplier from the bridge.  Make Webkit just call setZoomFactor on the frame directly.
   41686 
   41687         Reviewed by Tim H.
   41688 
   41689         * WebCore.base.exp:
   41690         * page/mac/WebCoreFrameBridge.h:
   41691         * page/mac/WebCoreFrameBridge.mm:
   41692 
   41693 2008-03-12  Dan Bernstein  <mitz (a] apple.com>
   41694 
   41695         Reviewed by Darin Adler and Sam Weinig.
   41696 
   41697         - <rdar://problem/4433248> use CoreText API instead of SPI on Leopard
   41698 
   41699         Use CTFontCopyGraphicsFont and CTFontGetPlatformFont on Leopard instead
   41700         of wkGetCGFontFromNSFont and wkGetNSFontATSUFontId, relying on NSFont
   41701         and CTFontRef being toll-free bridged.
   41702 
   41703         * WebCore.Tiger.exp:
   41704         * WebCore.base.exp:
   41705         * platform/graphics/mac/FontMac.mm:
   41706         (WebCore::Font::drawGlyphs): Changed to use the cgFont() accessor.
   41707         * platform/graphics/mac/FontPlatformData.h:
   41708         Made m_cgFont a RetainPtr on Leopard.
   41709         (WebCore::toCTFontRef): Added a function that encapsulates the
   41710         toll-free bridging.
   41711         (WebCore::FontPlatformData::FontPlatformData):
   41712         (WebCore::FontPlatformData::cgFont): Added this accessor method.
   41713         * platform/graphics/mac/FontPlatformDataMac.mm:
   41714         (WebCore::FontPlatformData::FontPlatformData): Changed to use
   41715         CoreText API on Leopard.
   41716         (WebCore::FontPlatformData::setFont): Ditto.
   41717         * platform/graphics/mac/SimpleFontDataMac.mm:
   41718         (WebCore::initFontData):
   41719         (WebCore::pathFromFont):
   41720         (WebCore::SimpleFontData::platformInit):
   41721         (WebCore::SimpleFontData::platformWidthForGlyph):
   41722         * platform/mac/WebCoreSystemInterface.mm:
   41723 
   41724 2008-03-12  David Harrison  <harrison (a] apple.com>
   41725 
   41726         Reviewed by Darin.
   41727 
   41728         <rdar://problem/5607382> CrashTracer: [REGRESSION] 2290 crashes in Safari at com.apple.WebCore: -[WebCoreAXObject isWebArea] + 8
   41729 
   41730         The problem was that we lost track of the AX cache for a subframe when Frame::disconnectOwnerElement() was
   41731         called, so we were unable to locate the AXObjects to de-register from AppKit's accessibility registry.
   41732         Also saw that cache clearing was missing from Document::detach(), and fixed that.
   41733         
   41734         Also added a debug-only check that AXObjectCache::remove() not finding the AXObject is expected.
   41735         
   41736         Lastly, RenderWidget::destroy() now skips trying to remove the AXObject if accessibility has never been enabled.
   41737        
   41738         * dom/Document.cpp:
   41739         (WebCore::Document::attach):
   41740         Assert that there is no AX cache (since there is no renderer).
   41741         
   41742         (WebCore::Document::detach):
   41743         Destroy the AX cache installed on this document.
   41744         
   41745         (WebCore::Document::clearAXObjectCache):
   41746         New. Destroy the AX cache associated with this document.
   41747         
   41748         (WebCore::Document::axObjectCache):
   41749         Added some comments.
   41750         
   41751         * dom/Document.h:
   41752         Declare clearAXObjectCache().
   41753         
   41754         * page/Frame.cpp:
   41755         (WebCore::Frame::disconnectOwnerElement):
   41756         Destroy the AX cache associated with this frame's document.
   41757         
   41758         * page/mac/AXObjectCacheMac.mm:
   41759         (WebCore::AXObjectCache::remove):        
   41760         * page/mac/WebCoreAXObject.mm:
   41761         (-[WebCoreAXObject initWithRenderer:]):
   41762         (-[WebCoreAXObject detach]):
   41763         * rendering/RenderObject.cpp:
   41764         (WebCore::RenderObject::RenderObject):
   41765         (WebCore::RenderObject::~RenderObject):
   41766         * rendering/RenderObject.h:
   41767         (WebCore::RenderObject::setHasAXObject):
   41768         (WebCore::RenderObject::hasAXObject):
   41769         Add debug-only check that AXObjectCache::remove() not finding the AXObject is expected.
   41770         
   41771         * rendering/RenderWidget.cpp:
   41772         (WebCore::RenderWidget::destroy):
   41773         Skip call to remove the AXObject if accessibility has never been enabled. A simple speed optimization in the
   41774         very common case that the accessibility APIs are not being used. Same as in RenderObject::destroy().
   41775 
   41776 2008-03-12  Xan Lopez  <xan (a] gnome.org>
   41777 
   41778         Reviewed by Alp Toker.
   41779 
   41780         http://bugs.webkit.org/show_bug.cgi?id=15229
   41781 
   41782         Add Pango font backend.
   41783 
   41784         Original patch by Sven Herzberg <sven (a] imendio.com>
   41785 
   41786         * GNUmakefile.am:
   41787         * platform/graphics/gtk/FontCacheGtk.cpp:
   41788         (WebCore::FontCache::fontExists):
   41789         * platform/graphics/gtk/FontCustomPlatformDataPango.cpp: Added.
   41790         (WebCore::FontCustomPlatformData::~FontCustomPlatformData):
   41791         (WebCore::FontCustomPlatformData::fontPlatformData):
   41792         (WebCore::releaseData):
   41793         (WebCore::createFontCustomPlatformData):
   41794         * platform/graphics/gtk/FontPlatformData.h:
   41795         (WebCore::FontPlatformData::FontPlatformData):
   41796         (WebCore::FontPlatformData::hash):
   41797         * platform/graphics/gtk/FontPlatformDataPango.cpp: Added.
   41798         (WebCore::FontPlatformData::FontPlatformData):
   41799         (WebCore::FontPlatformData::init):
   41800         (WebCore::FontPlatformData::~FontPlatformData):
   41801         (WebCore::FontPlatformData::isFixedPitch):
   41802         (WebCore::FontPlatformData::setFont):
   41803         (WebCore::FontPlatformData::operator==):
   41804         * platform/graphics/gtk/GlyphPageTreeNodePango.cpp: Added.
   41805         (WebCore::pango_font_get_glyph):
   41806         (WebCore::GlyphPage::fill):
   41807         * platform/graphics/gtk/SimpleFontDataPango.cpp: Added.
   41808         (WebCore::SimpleFontData::platformInit):
   41809         (WebCore::SimpleFontData::platformDestroy):
   41810         (WebCore::SimpleFontData::smallCapsFontData):
   41811         (WebCore::SimpleFontData::containsCharacters):
   41812         (WebCore::SimpleFontData::determinePitch):
   41813         (WebCore::SimpleFontData::platformWidthForGlyph):
   41814         (WebCore::SimpleFontData::setFont):
   41815 
   41816 2008-03-12  Justin Garcia  <justin.garcia (a] apple.com>
   41817 
   41818         Reviewed by Oliver.
   41819         
   41820         <rdar://problem/5770834> Crash at InsertTextCommand::prepareForTextInsertion() doing RemoveFormat in a certain list
   41821         
   41822         Fixes some (but not all) of the instances of:
   41823         <rdar://problem/5659795> CrashTracer: [REGRESSION] 187 crashes in Safari at com.apple.WebCore: WebCore::InsertTextCommand::prepareForTextInsertion + 241
   41824         <rdar://problem/5779631> CrashTracer: [USER] 25 crashes in Mail at WebCore::InsertTextCommand::prepareForTextInsertion
   41825 
   41826         * editing/InsertLineBreakCommand.cpp:
   41827         (WebCore::InsertLineBreakCommand::doApply): applyStyle may have destroyed content that held
   41828         the old endingSelection(), so we must recompute it.  Added a FIXME.  Added a few comments.
   41829         * editing/RemoveFormatCommand.cpp:
   41830         (WebCore::RemoveFormatCommand::doApply): Added a FIXME.
   41831 
   41832 2008-03-11  Alexey Proskuryakov  <ap (a] webkit.org>
   41833 
   41834         Reviewed by Darin.
   41835 
   41836         <rdar://problem/5640615> REGRESSION (Safari 2-3): Changing subframe encoding rules broke
   41837         some sites.
   41838 
   41839         Other browsers' behavior keeps changing; let's implement what Firefox and Opera do now:
   41840         if the frame and subframe belong to the same site, then the encoding is inherited from parent
   41841         frame to subframe. Otherwise, it is not.
   41842 
   41843         Always inheriting the encoding would cause a security problem.
   41844 
   41845         Tests: http/tests/misc/frame-default-enc-different-domain.html
   41846                http/tests/misc/frame-default-enc-same-domain.html
   41847                fast/encoding/frame-default-enc.html
   41848 
   41849         * loader/FrameLoader.cpp:
   41850         (WebCore::FrameLoader::write): Also removed a check for m_frame->document() being non-null -
   41851         this function also has code that uses it without checking, so it must be safe.
   41852 
   41853 2008-03-12  Mark Rowe  <mrowe (a] apple.com>
   41854 
   41855         Gtk build fix.
   41856 
   41857         * page/Frame.h: Forward-declare FramePrivate.
   41858 
   41859 2008-03-11  Steve Falkenburg  <sfalken (a] apple.com>
   41860 
   41861         Disable LTCG/PGO for all of WebCore for now.
   41862         We'll re-enable this as part of follow-on PGO work.
   41863         
   41864         Reviewed by Oliver.
   41865 
   41866         * WebCore.vcproj/WebCore.vcproj:
   41867 
   41868 2008-03-11  Darin Adler  <darin (a] apple.com>
   41869 
   41870         Reviewed by Sam.
   41871 
   41872         - remove all bridge-related things from WebCore except the bridge itself
   41873 
   41874         * WebCore.base.exp: Removed the bridge and setBridge functions.
   41875 
   41876         * loader/FrameLoader.cpp:
   41877         (WebCore::FrameLoader::detachFromParent): Removed call to the bridge's
   41878         close method.
   41879 
   41880         * page/Frame.cpp:
   41881         (WebCore::Frame::~Frame): Removed call to setBridge(0).
   41882         (WebCore::FramePrivate::FramePrivate): Removed initialization of m_bridge.
   41883         * page/Frame.h: Removed setBridge and bridge functions.
   41884         * page/FramePrivate.h: Removed m_bridge pointer.
   41885         * page/mac/FrameMac.mm: Removed setBridge and bridge functions.
   41886 
   41887         * page/mac/WebCoreFrameBridge.h: Added setWebCoreFrame: method.
   41888         Removed bridgeForDOMDocument: and clearFrame methods.
   41889         * page/mac/WebCoreFrameBridge.mm: Ditto.
   41890         (-[WebCoreFrameBridge close]): Changed to set m_frame to 0 directly.
   41891         (-[WebCoreFrameBridge setWebCoreFrame:]): Added.
   41892 
   41893 2008-03-11  Darin Adler  <darin (a] apple.com>
   41894 
   41895         - restored some code I removed in the Range change; this code can't go
   41896           until the rest of the Range fix is in
   41897 
   41898         * dom/Range.cpp:
   41899         (WebCore::Range::commonAncestorContainer): Added back the check for 0
   41900         that I removed erroneously in the Range patch.
   41901         (WebCore::Range::processContents): Left in assertions I used to debug
   41902         this.
   41903 
   41904 2008-03-11  Darin Adler  <darin (a] apple.com>
   41905 
   41906         - fix Release build
   41907 
   41908         * platform/mac/ScrollViewMac.mm:
   41909         (WebCore::ScrollView::setContentsPos): Don't use NSMakePoint.
   41910 
   41911 2008-03-11  Darin Adler  <darin (a] apple.com>
   41912 
   41913         Reviewed by Anders.
   41914 
   41915         - simplify Mac code for ScrollView, since it's used only for FrameView
   41916           and not in two different modes like it was historically
   41917         - remove code depending on the bridge to get from an NSView to a WebCore::Frame
   41918 
   41919         * bindings/objc/DOMHTML.mm:
   41920         (-[DOMHTMLInputElement _rectOnScreen]): getDocumentView -> documentView.
   41921 
   41922         * bridge/jni/jni_jsobject.cpp:
   41923         (createRootObject): Instead of using WebCoreViewFactory to find the frame given
   41924         and NSView, use the WebCoreFrameView interface to do it.
   41925 
   41926         * editing/mac/EditorMac.mm:
   41927         (WebCore::Editor::paste): getDocumentView -> documentView.
   41928         * editing/mac/SelectionControllerMac.mm:
   41929         (WebCore::SelectionController::notifyAccessibilityForSelectionChange): Ditto.
   41930 
   41931         * page/FrameView.h: Fixed comment.
   41932 
   41933         * page/InspectorController.cpp:
   41934         (WebCore::InspectorController::drawNodeHighlight): Removed uneeded typecasts
   41935         to ScrollView* since FrameView is derived from ScrollView.
   41936 
   41937         * page/mac/EventHandlerMac.mm:
   41938         (WebCore::EventHandler::focusDocumentView): getDocumentView -> documentView.
   41939         * page/mac/FrameMac.mm:
   41940         (WebCore::Frame::imageFromRect): Ditto.
   41941         * page/mac/WebCoreAXObject.mm:
   41942         (-[WebCoreAXObject position]): Ditto.
   41943         (-[WebCoreAXObject doAXTextMarkerForPosition:]): Ditto.
   41944         (-[WebCoreAXObject rendererForView:]): Updated code that used to use
   41945         WebCoreBridgeHolder to use WebCoreFrameView instead.
   41946 
   41947         * page/mac/WebCoreFrameBridge.mm:
   41948         (-[WebCoreFrameBridge computePageRectsWithPrintWidthScaleFactor:printHeight:]):
   41949         getDocumentView -> documentView.
   41950 
   41951         * page/mac/WebCoreFrameView.h: Removed the WebCoreScrollbarMode type; we just
   41952         use WebCore::ScrollbarMode directly. Renamed the WebCoreFrameView protocol to
   41953         WebCoreFrameScrollView, since it's a protocol for the scroll view, not the
   41954         frame view itself. Replaced WebCoreBridgeHolder protocol with WebCoreFrameView
   41955         protocol, which returns a WebCore::Frame directly rather than a bridge.
   41956 
   41957         * page/mac/WebCoreViewFactory.h: Eliminated the bridgeForView method.
   41958 
   41959         * platform/ScrollView.h: Moved the constructor and destructor out of the
   41960         class-specific #if blocks. Renamed Mac-specific function that gets the
   41961         NSView for from getDocumentView to documentView and a scrollView function
   41962         that returns an appropriately classed NSScrollView.
   41963 
   41964         * platform/graphics/MediaPlayer.h: Changed type of parentWidget to FrameView
   41965         instead of Widget.
   41966         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
   41967         (WebCore::MediaPlayerPrivate::createQTMovieView): Removed unnecessary cast.
   41968 
   41969         * platform/mac/PopupMenuMac.mm:
   41970         (WebCore::PopupMenu::show): getDocumentView -> documentView.
   41971         * platform/mac/ScrollViewMac.mm:
   41972         (WebCore::ScrollView::ScrollView): Added.
   41973         (WebCore::ScrollView::~ScrollView): Added.
   41974         (WebCore::ScrollView::scrollView): Added.
   41975         (WebCore::ScrollView::visibleWidth): Removed unused non-NSScrollView case.
   41976         (WebCore::ScrollView::visibleHeight): Ditto.
   41977         (WebCore::ScrollView::visibleContentRect): Ditto.
   41978         (WebCore::ScrollView::visibleContentRectConsideringExternalScrollers): Ditto.
   41979         (WebCore::ScrollView::contentsWidth): Ditto.
   41980         (WebCore::ScrollView::contentsHeight): Ditto.
   41981         (WebCore::ScrollView::contentsX): Ditto.
   41982         (WebCore::ScrollView::contentsY): Ditto.
   41983         (WebCore::ScrollView::scrollOffset): Ditto.
   41984         (WebCore::ScrollView::scrollRectIntoViewRecursively): Ditto.
   41985         (WebCore::ScrollView::setContentsPos): Ditto.
   41986         (WebCore::ScrollView::setVScrollbarMode): Ditto.
   41987         (WebCore::ScrollView::setHScrollbarMode): Ditto.
   41988         (WebCore::ScrollView::setScrollbarsMode): Ditto.
   41989         (WebCore::ScrollView::vScrollbarMode): Ditto.
   41990         (WebCore::ScrollView::hScrollbarMode): Ditto.
   41991         (WebCore::ScrollView::suppressScrollbars): Ditto.
   41992         (WebCore::ScrollView::addChild): Ditto.
   41993         (WebCore::ScrollView::resizeContents): Ditto.
   41994         (WebCore::ScrollView::updateContents): Ditto.
   41995         (WebCore::ScrollView::contentsToWindow): Ditto.
   41996         (WebCore::ScrollView::windowToContents): Ditto.
   41997         (WebCore::ScrollView::setStaticBackground): Ditto.
   41998         (WebCore::ScrollView::documentView): Renamed and removed unused case.
   41999         (WebCore::ScrollView::scrollbarUnderMouse): Removed incorrect comment.
   42000 
   42001         * platform/mac/WidgetMac.mm:
   42002         (WebCore::Widget::getOuterView): Update for protocol name change.
   42003 
   42004         * rendering/RenderThemeMac.mm:
   42005         (WebCore::RenderThemeMac::paintCheckbox): getDocumentView -> documentView.
   42006         (WebCore::RenderThemeMac::paintRadio): Ditto.
   42007         (WebCore::RenderThemeMac::paintButton): Ditto.
   42008         (WebCore::RenderThemeMac::paintMenuList): Ditto.
   42009         (WebCore::RenderThemeMac::paintSliderThumb): Ditto.
   42010         (WebCore::RenderThemeMac::paintSearchField): Ditto.
   42011         (WebCore::RenderThemeMac::paintSearchFieldCancelButton): Ditto.
   42012         (WebCore::RenderThemeMac::paintSearchFieldResultsDecoration): Ditto.
   42013         (WebCore::RenderThemeMac::paintSearchFieldResultsButton): Ditto.
   42014 
   42015 2008-03-11  Brent Fulgham  <bfulgham (a] gmail.com>
   42016 
   42017         Reviewed by Adam Roben.
   42018 
   42019         Split CookieJarWin.cpp into CFNet and non-CFNet versions to
   42020         reduce the massive amount of conditionalization in the file.
   42021         (see http://bugs.webkit.org/show_bug.cgi?id=17788)
   42022 
   42023         * WebCore.vcproj/WebCore.vcproj:
   42024         * platform/network/win/CookieJarCFNetWin.cpp: Copied from WebCore/platform/network/win/CookieJarWin.cpp.
   42025         (WebCore::setCookies):
   42026         (WebCore::cookies):
   42027         (WebCore::cookiesEnabled):
   42028         * platform/network/win/CookieJarWin.cpp:
   42029         (WebCore::setCookies):
   42030         (WebCore::cookies):
   42031         (WebCore::cookiesEnabled):
   42032 
   42033 2008-03-11  Darin Adler  <darin (a] apple.com>
   42034 
   42035         Reviewed by Sam.
   42036 
   42037         - eliminate the remaining parts of WebCoreBridge used for calls to WebKit from WebCore
   42038 
   42039         * page/ChromeClient.h: Added new client functions to replace calls up to WebKit
   42040         that were formerly handled by the bridge.
   42041 
   42042         * page/Frame.h: Removed unneeded declarations. Moved declarations of script-specific
   42043         functions to a ScriptController section. Removed willPopupMenu.
   42044 
   42045         * page/mac/ChromeMac.mm:
   42046         (WebCore::Chrome::focusNSView): Changed to call firstResponder and makeFirstResponder
   42047         via the client instead of the bridge.
   42048 
   42049         * page/mac/EventHandlerMac.mm:
   42050         (WebCore::EventHandler::passMouseDownEventToWidget): Changed to call firstResponder
   42051         and makeFirstResponder via the chrome client instead of the bridge.
   42052 
   42053         * page/mac/FrameMac.mm: Removed willPopupMenu.
   42054 
   42055         * page/mac/WebCoreFrameBridge.h: Removed WebCoreFrameBridge protocol and
   42056         SubclassResponsibility category. Also removed some unneeded imports.
   42057 
   42058         * platform/mac/PopupMenuMac.mm:
   42059         (WebCore::PopupMenu::show): Call willPopUpMenu on chrome client instead of frame.
   42060 
   42061         * platform/mac/WidgetMac.mm:
   42062         (WebCore::Widget::setIsSelected): Call functions directly on the view rather than
   42063         calling via the bridge.
   42064 
   42065 2008-03-11  Darin Adler  <darin (a] apple.com>
   42066 
   42067         Reviewed by Mitz.
   42068 
   42069         - make some Range improvements (preparation for Range support for DOM mutation)
   42070 
   42071         Made constructors private, added create functions.
   42072         Made refcount start at 1 rather than starting at 0 and being incremented.
   42073         Made Range use two Position objects for the start/end container/offset pairs.
   42074 
   42075         * WebCore.base.exp: Updated.
   42076 
   42077         * dom/Document.cpp:
   42078         (WebCore::Document::createRange): Changed to use Range::create.
   42079         (WebCore::Document::removeMarkers): Updated for Range::first/pastLastNode name change.
   42080 
   42081         * dom/Position.cpp:
   42082         (WebCore::Position::formatForDebugger): Updated for member variable name change.
   42083         (WebCore::Position::showTreeForThis): Ditto.
   42084         (WebCore::startPosition): Changed to use Range::startPosition.
   42085         (WebCore::endPosition): Changed to use Range::endPosition.
   42086 
   42087         * dom/Position.h: Made the data members public and renamed them to container
   42088         and offset. But since offset() is already a function, temporarily used posOffset
   42089         for the data member. Later we'll get rid of offset(). Made more functions inline.
   42090         Removed the constructor that takes a PositionIterator.
   42091 
   42092         * dom/PositionIterator.cpp:
   42093         (WebCore::PositionIterator::operator Position): Added. Replaces the constructor
   42094         that used to be in Position.
   42095         * dom/PositionIterator.h: Added conversion operator to produce a Position.
   42096         Removed friend declaration for Position.
   42097 
   42098         * dom/Range.cpp:
   42099         (WebCore::Range::Range): Updated constructors for data member changes and made
   42100         them use a refcount of 1.
   42101         (WebCore::Range::create): Added.
   42102         (WebCore::Range::startContainer): Updated to eliminate use of m_detached; detached
   42103         is now indicated by m_start.container of 0. Also updated to use m_start instead
   42104         of the old m_startContainer.
   42105         (WebCore::Range::startOffset): Ditto.
   42106         (WebCore::Range::endContainer): Ditto.
   42107         (WebCore::Range::endOffset): Ditto.
   42108         (WebCore::Range::commonAncestorContainer): Ditto.
   42109         (WebCore::Range::collapsed): Ditto.
   42110         (WebCore::Range::setStart): Ditto.
   42111         (WebCore::Range::setEnd): Ditto.
   42112         (WebCore::Range::collapse): Ditto.
   42113         (WebCore::Range::isPointInRange): Ditto.
   42114         (WebCore::Range::comparePoint): Ditto.
   42115         (WebCore::Range::compareNode): Ditto.
   42116         (WebCore::Range::compareBoundaryPoints): Ditto.
   42117         (WebCore::Range::boundaryPointsValid): Ditto.
   42118         (WebCore::Range::deleteContents): Ditto.
   42119         (WebCore::Range::intersectsNode): Ditto.
   42120         (WebCore::Range::processContents): Ditto.
   42121         (WebCore::Range::extractContents): Ditto.
   42122         (WebCore::Range::cloneContents): Ditto.
   42123         (WebCore::Range::insertNode): Ditto.
   42124         (WebCore::Range::toString): Ditto.
   42125         (WebCore::Range::text): Ditto.
   42126         (WebCore::Range::createContextualFragment): Ditto.
   42127         (WebCore::Range::detach): Ditto.
   42128         (WebCore::Range::checkNodeBA): Changed to use switch statements instead of
   42129         multiple calls to the virtual nodeType() function.
   42130         (WebCore::Range::cloneRange): Ditto.
   42131         (WebCore::Range::setStartAfter): Ditto.
   42132         (WebCore::Range::setEndBefore): Ditto.
   42133         (WebCore::Range::setEndAfter): Ditto.
   42134         (WebCore::Range::selectNode): Ditto.
   42135         (WebCore::Range::selectNodeContents): Ditto.
   42136         (WebCore::Range::surroundContents): Ditto.
   42137         (WebCore::Range::setStartBefore): Ditto.
   42138         (WebCore::Range::checkDeleteExtract): Ditto.
   42139         (WebCore::Range::containedByReadOnly): Ditto.
   42140         (WebCore::Range::firstNode): Ditto.
   42141         (WebCore::Range::editingStartPosition): Ditto.
   42142         (WebCore::Range::pastLastNode): Ditto.
   42143         (WebCore::Range::addLineBoxRects): Ditto.
   42144         (WebCore::Range::formatForDebugger): Ditto.
   42145         (WebCore::operator==): Ditto.
   42146         (WebCore::rangeOfContents): Ditto.
   42147         (WebCore::Range::maxStartOffset): Ditto.
   42148         (WebCore::Range::maxEndOffset): Ditto.
   42149 
   42150         * dom/Range.h: Made constructors private. Added create functions.
   42151         Added getters for startContainer/Offset and endContainer/Offset that
   42152         return 0 instead of an exception for detached ranges that are inline
   42153         and don't require an ExceptionCode out parameter. Changed the parameters
   42154         to setStart and setEnd to PassRefPtr. Removed isDetached function.
   42155         Made ActionType and processContents private. Made startPosition and
   42156         endPosition inlines and have then return const&. Renamed startNode and
   42157         pastEndNode to firstNode and pastLastNode to reduce the chance of
   42158         confusion with startContainer/endContainer. Used Position for m_start
   42159         and m_end instead of separate container and offset members. Changed
   42160         maxStartOffset and maxEndOffset into int to match other offsets.
   42161 
   42162         * editing/ApplyStyleCommand.cpp:
   42163         (WebCore::ApplyStyleCommand::applyBlockStyle): Changed to use Range::create.
   42164         (WebCore::ApplyStyleCommand::applyInlineStyle): Ditto.
   42165         * editing/CompositeEditCommand.cpp:
   42166         (WebCore::CompositeEditCommand::inputText): Ditto.
   42167         (WebCore::CompositeEditCommand::moveParagraphs): Ditto.
   42168         * editing/DeleteSelectionCommand.cpp:
   42169         (WebCore::DeleteSelectionCommand::mergeParagraphs): Ditto.
   42170         * editing/Editor.cpp:
   42171         (WebCore::Editor::fontForSelection): Changed for pastLastNode name change.
   42172         (WebCore::Editor::setComposition): Changed to use Range::create.
   42173         (WebCore::paragraphAlignedRangeForRange): Ditto.
   42174         (WebCore::markMisspellingsOrBadGrammar): Changed to get rid of check for
   42175         isDetached and check for 0 from startContainer instead.
   42176         (WebCore::Editor::compositionRange): Changed to use Range::create.
   42177         * editing/EditorCommand.cpp:
   42178         (WebCore::unionDOMRanges): Ditto.
   42179         * editing/Selection.cpp:
   42180         (WebCore::Selection::toRange): Ditto.
   42181         * editing/TextIterator.cpp:
   42182         (WebCore::TextIterator::TextIterator): Changed for firstNode and pastLastNode
   42183         name change.
   42184         (WebCore::TextIterator::range): Changed to use Range::create.
   42185         (WebCore::SimplifiedBackwardsTextIterator::range): Ditto.
   42186         (WebCore::TextIterator::subrange): Ditto.
   42187         * editing/VisiblePosition.cpp:
   42188         (WebCore::makeRange): Ditto.
   42189         * editing/VisiblePosition.h: Added now-needed include.
   42190         * editing/htmlediting.cpp:
   42191         (WebCore::indexForVisiblePosition): Changed to use Range::create.
   42192         (WebCore::avoidIntersectionWithNode): Changed to get rid of check for
   42193         isDetached and check for 0 instead and to use Range::create.
   42194         * editing/markup.cpp:
   42195         (WebCore::renderedText): Changed to use Range::create.
   42196         (WebCore::createMarkup): Changed to no longer use isDetached and also
   42197         for new firstNode/pastEndNode names.
   42198         (WebCore::createFragmentFromText): Ditto.
   42199         * editing/visible_units.cpp:
   42200         (WebCore::previousBoundary): Changed to use Range::create.
   42201         * page/mac/WebCoreFrameBridge.mm:
   42202         (-[WebCoreFrameBridge convertToNSRange:]): Changed to no longer use
   42203         isDetached().
   42204         * rendering/RenderTextControl.cpp:
   42205         (WebCore::RenderTextControl::visiblePositionForIndex): Changed to use Range::create.
   42206         (WebCore::RenderTextControl::indexForVisiblePosition): Ditto.
   42207 
   42208 2008-03-11  Daniel Zucker <zucker (a] wake3.com>
   42209 
   42210         Reviewed by Adam Roben.
   42211 
   42212         There are a handful of placed where the use of CFNetwork-specific
   42213         calls are protected by PLATFORM(CF).  Revise to use the more specific
   42214         USE(CFNETWORK) macro.  (See http://bugs.webkit.org/show_bug.cgi?id=17783) 
   42215 
   42216         * platform/network/ProtectionSpace.cpp:  Change PLATFORM(CF) to USE(CFNETWORK)
   42217         * platform/network/ResourceHandle.cpp: Change PLATFORM(CF) to USE(CFNETWORK)
   42218         * platform/network/win/CookieJarWin.cpp:  Correct error in
   42219           InternetGetCookie call.  Conditionalize 'cookiesEnabled' the same
   42220           as all other implementations in this file.
   42221 
   42222 2008-03-11  Xan Lopez  <xan (a] gnome.org>
   42223 
   42224         Reviewed by Alp Toker.
   42225 
   42226         http://bugs.webkit.org/show_bug.cgi?id=16476
   42227 
   42228         Add libsoup HTTP backend.
   42229         
   42230         * GNUmakefile.am:
   42231         * platform/network/ResourceHandleInternal.h:
   42232         (WebCore::ResourceHandleInternal::ResourceHandleInternal):
   42233         * platform/network/soup/AuthenticationChallenge.h: Added.
   42234         (WebCore::AuthenticationChallenge::AuthenticationChallenge):
   42235         * platform/network/soup/ResourceError.h: Added.
   42236         (WebCore::ResourceError::ResourceError):
   42237         * platform/network/soup/ResourceHandleSoup.cpp: Added.
   42238         (WebCore::ResourceHandleInternal::~ResourceHandleInternal):
   42239         (WebCore::ResourceHandle::~ResourceHandle):
   42240         (WebCore::dataCallback):
   42241         (WebCore::parseDataUrl):
   42242         (WebCore::ResourceHandle::start):
   42243         (WebCore::ResourceHandle::cancel):
   42244         (WebCore::ResourceHandle::bufferedData):
   42245         (WebCore::ResourceHandle::supportsBufferedData):
   42246         (WebCore::ResourceHandle::setDefersLoading):
   42247         (WebCore::ResourceHandle::loadsBlocked):
   42248         (WebCore::ResourceHandle::willLoadFromCache):
   42249         * platform/network/soup/ResourceRequest.h: Copied from WebCore/platform/network/curl/ResourceRequest.h.
   42250         (WebCore::ResourceRequest::ResourceRequest):
   42251         (WebCore::ResourceRequest::doUpdatePlatformRequest):
   42252         * platform/network/soup/ResourceResponse.h: Added.
   42253         (WebCore::ResourceResponse::ResourceResponse):
   42254         (WebCore::ResourceResponse::setResponseFired):
   42255         (WebCore::ResourceResponse::responseFired):
   42256         (WebCore::ResourceResponse::doUpdateResourceResponse):
   42257 
   42258 2008-03-11  Rodney Dawes  <dobey (a] wayofthemonkey.com>
   42259 
   42260         Fix Qt build.
   42261 
   42262         * plugins/qt/PluginDataQt.cpp:
   42263         (PluginData::initPlugins)
   42264 
   42265 2008-03-11  Adam Roben  <aroben (a] apple.com>
   42266 
   42267         Make attribute quoting in DOM view more consistent with source view
   42268 
   42269         Two changes which make the DOM view more consistent with source view:
   42270          1) We now quote all attribute values, including URLs
   42271          2) The quotes around the values are now purple, matching the left and
   42272             right angle brackets that surround the tag
   42273 
   42274         One bug fixed by these changes:
   42275          1) The entire URL is selected for editing when you double-click a URL
   42276             that is an attribute value. Previously, the first and last
   42277             characters were not included in the selection.
   42278 
   42279         Reviewed by Darin.
   42280 
   42281         * page/inspector/DocumentPanel.js:
   42282         (WebInspector.DOMNodeTreeElement._startEditingAttribute): Don't need
   42283         to account for the quotes around attribute values anymore because the
   42284         quotes are now outside the webkit-html-attribute-value span.
   42285         * page/inspector/utilities.js:
   42286         (nodeTitleInfo): Quote all attribute values, including URLs, and place
   42287         the quotes outside the webkit-html-attribute-value span.
   42288 
   42289 2008-03-11  Adam Roben  <aroben (a] apple.com>
   42290 
   42291         Stop including pthread.h in WebCore on Windows
   42292 
   42293         Reviewed by Darin.
   42294 
   42295         * WebCore.vcproj/WebCore.vcproj:
   42296           - Changed the include path to not contain pthreads/
   42297           - Let VS remove a duplicate FileConfiguration element
   42298           - Let VS have its way with the file ordering
   42299         * WebCorePrefix.h: Made the #include of pthread.h be compiled out on
   42300         Windows.
   42301         * loader/FTPDirectoryDocument.cpp: Added a Windows-specific #define of
   42302         localtime_r (pthread.h was providing a macro that substituted plain
   42303         old localtime before, but localtime_s is "more secure", so I went with
   42304         that).
   42305         * loader/FTPDirectoryParser.cpp: Ditto for gmtime_r.
   42306 
   42307 2008-03-11  Adam Roben  <aroben (a] apple.com>
   42308 
   42309         Roll out r30961 since it broke the default site icon on Windows
   42310 
   42311         * loader/icon/IconDatabase.cpp:
   42312         (WebCore::IconDatabase::defaultIcon):
   42313 
   42314 2008-03-11  Dan Bernstein  <mitz (a] apple.com>
   42315 
   42316         Reviewed by Darin Adler.
   42317 
   42318         - clean up line layout code
   42319 
   42320         * platform/graphics/GraphicsContext.cpp:
   42321         (WebCore::TextRunIterator::increment): Removed the resolver parameter.
   42322         (WebCore::GraphicsContext::drawBidiText): Adjusted for changes to
   42323         createBidiRunsForLine(), which no longer takes a start parameter.
   42324         * platform/text/BidiResolver.h:
   42325         (WebCore::BidiResolver::): Made Noncopyable and removed the
   42326         m_adjustEmbedding member variable.
   42327         (WebCore::BidiResolver::position): Added. Returns the resolver's current
   42328         position.
   42329         (WebCore::BidiResolver::setPosition): Added. Sets the resolver's current
   42330         position without changing any other state.
   42331         (WebCore::BidiResolver::increment): Added. Advances the resolver to the
   42332         next position, allowing the iterator to push and pop embedding.
   42333         (WebCore::BidiResolver::appendRun): Removed the resolver parameter in
   42334         the call to increment().
   42335         (WebCore::BidiResolver::embed): Removed code to save, set and restore
   42336         m_adjustEmbedding.
   42337         (WebCore::BidiResolver::createBidiRunsForLine): Changed to not take a
   42338         'start' iterator. Instead, start at the current position. Removed code
   42339         to set m_adjustEmbedding. Changed for noncopyability.
   42340         * rendering/RenderBlock.h:
   42341         * rendering/bidi.cpp:
   42342         (WebCore::bidiNext): Made the resolver parameter optional. Changed to
   42343         null-check the 'end of inline' pointer only twice.
   42344         (WebCore::bidiFirst): Made the resolver parameter optional.
   42345         (WebCore::BidiIterator::increment): Ditto.
   42346         (WebCore::BidiState::increment): Added. Overrides the default
   42347         BidiResolver::increment() method by passing the resolver to
   42348         BidiIterator::increment().
   42349         (WebCore::checkMidpoints): Removed the resolver parameter.
   42350         (WebCore::BidiState::appendRun): Removed code to save, set and restore
   42351         m_adjustEmbedding. Adjusted for change to increment().
   42352         (WebCore::RenderBlock::bidiReorderLine): Removed the 'start' parameter
   42353         and unreachable code.
   42354         (WebCore::buildCompactRuns): Adjusted for changes to BidiResolver/
   42355         (WebCore::RenderBlock::layoutInlineChildren): Moved code to initialize
   42356         the resolver from this method to determineStartPosition(). Unified the
   42357         resolver with the 'start' iterator. Removed unreachable code. Moved one
   42358         statement from the beginning of the while loop to the end.
   42359         (WebCore::RenderBlock::determineStartPosition): Moved code to initialize
   42360         the resolver from layoutInlineChildren() into this method.
   42361         (WebCore::RenderBlock::matchedEndLine): Adjusted for the resolver and
   42362         the 'start' iterator being one object.
   42363         (WebCore::skipNonBreakingSpace): Made the parameter const.
   42364         (WebCore::requiresLineBox): Ditto.
   42365         (WebCore::RenderBlock::generatesLineBoxesForInlineChild): Adjusted for
   42366         the change to BidiIterator::increment().
   42367         (WebCore::RenderBlock::skipWhitespace): Made two versions of this
   42368         method, one for BidiIterator and one for BidiState.
   42369         (WebCore::shouldSkipWhitespaceAfterStartObject): Removed the resolver
   42370         parameter.
   42371         (WebCore::RenderBlock::findNextLineBreak): Removed the resolver
   42372         parameter. Removed calls to setAdjustEmbedding(). Removed the 'previous'
   42373         variable and changed the 'last' variable to do its job.
   42374         * rendering/bidi.h:
   42375 
   42376 2008-03-10  Adam Roben  <aroben (a] apple.com>
   42377 
   42378         Part of Bug 17224: DOM nodes/attributes should be editable
   42379 
   42380         <http://bugs.webkit.org/show_bug.cgi?id=17224>
   42381         <rdar://problem/5732825>
   42382 
   42383         This patch makes text nodes editable via double-click.
   42384 
   42385         Reviewed by Tim.
   42386 
   42387         * page/inspector/DocumentPanel.js:
   42388         (WebInspector.DOMNodeTreeElement._startEditing):
   42389           - Moved most of this code to _startEditingAttribute
   42390           - Calls _startEditingTextNode or _startEditingAttribute as
   42391             appropriate
   42392         (WebInspector.DOMNodeTreeElement._startEditingAttribute): Added. Code
   42393         came from _startEditing.
   42394         (WebInspector.DOMNodeTreeElement._startEditingTextNode): Added.
   42395         (WebInspector.DOMNodeTreeElement._textNodeEditingCommitted): Added.
   42396         (WebInspector.DOMNodeTreeElement._editingCancelled): Renamed from
   42397         _attributeEditingCancelled.
   42398         * page/inspector/utilities.js:
   42399         (nodeTitleInfo): Wrap text nodes in a webkit-html-text-node span so
   42400         that we can easily recognize/edit them.
   42401 
   42402 2008-03-11  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   42403 
   42404         Reviewed by Darin.
   42405 
   42406         r25512 inlined the urlIcon to improve the startup time of Safari on Mac. Inlining is
   42407         not suitable for platforms where this icon is themable. E.g. the Qt platform is allowing
   42408         to theme this icon and the Gtk+ platform will probably end up with themable icons
   42409         as well.
   42410         
   42411         Remove dead code from the windows port and move the urlIcon from the windows
   42412         directory to the Resource directory to be used by Qt and other ports.
   42413         
   42414         Ifdef the usage of the built-in icon in IconDatabase.cpp and for Qt do not use
   42415         it. Gtk+ currently has no proper implementation of Image::loadPlatformResource but
   42416         once it does it wants to use this for getting the urlIcon as well.
   42417 
   42418         * Resources/urlIcon.png: Renamed from WebKit/win/WebKit.vcproj/urlIcon.png.
   42419         * loader/icon/IconDatabase.cpp:
   42420         (WebCore::IconDatabase::defaultIcon):
   42421 
   42422 2008-03-11  Tor Arne Vestb  <tavestbo (a] trolltech.com>
   42423 
   42424         Reviewed by Darin.
   42425 
   42426         Implemented HTML media element support for QtWebKit, using Phonon.
   42427 
   42428         http://bugs.webkit.org/show_bug.cgi?id=17766
   42429 
   42430         * WebCore.pro:
   42431         * platform/graphics/MediaPlayer.cpp:
   42432         * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp: Added.
   42433         (debugMediaObject):
   42434         (WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
   42435         (WebCore::MediaPlayerPrivate::~MediaPlayerPrivate):
   42436         (WebCore::MediaPlayerPrivate::getSupportedTypes):
   42437         (WebCore::MediaPlayerPrivate::hasVideo):
   42438         (WebCore::MediaPlayerPrivate::load):
   42439         (WebCore::MediaPlayerPrivate::cancelLoad):
   42440         (WebCore::MediaPlayerPrivate::play):
   42441         (WebCore::MediaPlayerPrivate::pause):
   42442         (WebCore::MediaPlayerPrivate::paused):
   42443         (WebCore::MediaPlayerPrivate::seek):
   42444         (WebCore::MediaPlayerPrivate::seeking):
   42445         (WebCore::MediaPlayerPrivate::duration):
   42446         (WebCore::MediaPlayerPrivate::currentTime):
   42447         (WebCore::MediaPlayerPrivate::setEndTime):
   42448         (WebCore::MediaPlayerPrivate::maxTimeBuffered):
   42449         (WebCore::MediaPlayerPrivate::maxTimeSeekable):
   42450         (WebCore::MediaPlayerPrivate::bytesLoaded):
   42451         (WebCore::MediaPlayerPrivate::totalBytesKnown):
   42452         (WebCore::MediaPlayerPrivate::totalBytes):
   42453         (WebCore::MediaPlayerPrivate::setRate):
   42454         (WebCore::MediaPlayerPrivate::setVolume):
   42455         (WebCore::MediaPlayerPrivate::setMuted):
   42456         (WebCore::MediaPlayerPrivate::dataRate):
   42457         (WebCore::MediaPlayerPrivate::networkState):
   42458         (WebCore::MediaPlayerPrivate::readyState):
   42459         (WebCore::MediaPlayerPrivate::updateStates):
   42460         (WebCore::MediaPlayerPrivate::setVisible):
   42461         (WebCore::MediaPlayerPrivate::setRect):
   42462         (WebCore::MediaPlayerPrivate::loadStateChanged):
   42463         (WebCore::MediaPlayerPrivate::rateChanged):
   42464         (WebCore::MediaPlayerPrivate::sizeChanged):
   42465         (WebCore::MediaPlayerPrivate::timeChanged):
   42466         (WebCore::MediaPlayerPrivate::volumeChanged):
   42467         (WebCore::MediaPlayerPrivate::didEnd):
   42468         (WebCore::MediaPlayerPrivate::loadingFailed):
   42469         (WebCore::MediaPlayerPrivate::naturalSize):
   42470         (WebCore::MediaPlayerPrivate::eventFilter):
   42471         (WebCore::MediaPlayerPrivate::repaint):
   42472         (WebCore::MediaPlayerPrivate::paint):
   42473         (WebCore::MediaPlayerPrivate::stateChanged):
   42474         (WebCore::MediaPlayerPrivate::tick):
   42475         (WebCore::MediaPlayerPrivate::metaDataChanged):
   42476         (WebCore::MediaPlayerPrivate::seekableChanged):
   42477         (WebCore::MediaPlayerPrivate::hasVideoChanged):
   42478         (WebCore::MediaPlayerPrivate::bufferStatus):
   42479         (WebCore::MediaPlayerPrivate::finished):
   42480         (WebCore::MediaPlayerPrivate::currentSourceChanged):
   42481         (WebCore::MediaPlayerPrivate::aboutToFinish):
   42482         (WebCore::MediaPlayerPrivate::prefinishMarkReached):
   42483         (WebCore::MediaPlayerPrivate::totalTimeChanged):
   42484         * platform/graphics/qt/MediaPlayerPrivatePhonon.h: Added.
   42485         (WebCore::MediaPlayerPrivate::):
   42486         (WebCore::MediaPlayerPrivate::isAvailable):
   42487 
   42488 2008-03-10  Sam Weinig  <sam (a] webkit.org>
   42489 
   42490         Reviewed by Beth Dakin.
   42491 
   42492         Throw a SECURITY_ERR when accessing a tainted canvas
   42493         by CanvasRenderingContext2D::getImageData() and
   42494         HTMLCanvasElement::toDataURL().
   42495 
   42496         * html/CanvasRenderingContext2D.cpp:
   42497         (WebCore::CanvasRenderingContext2D::getImageData):
   42498         * html/CanvasRenderingContext2D.h:
   42499         * html/CanvasRenderingContext2D.idl:
   42500         * html/HTMLCanvasElement.cpp:
   42501         (WebCore::HTMLCanvasElement::toDataURL):
   42502         * html/HTMLCanvasElement.h:
   42503         * html/HTMLCanvasElement.idl:
   42504 
   42505 2008-03-10  Justin Garcia  <justin.garcia (a] apple.com>
   42506 
   42507         Reviewed by Sam.
   42508 
   42509         <rdar://problem/5779984> REGRESSION (r30391): GMail: Safari won't display the Edit Link dialog
   42510 
   42511         * bindings/js/JSCSSStyleDeclarationCustom.cpp:
   42512         (WebCore::hasCSSPropertyNamePrefix): Fixed a typo.  The code was only
   42513         comparing the first character of the prefix to the first character
   42514         of the property name.
   42515 
   42516 2008-03-10  Andre Boule  <aboule (a] apple.com>
   42517 
   42518         Reviewed by Beth.
   42519 
   42520         Hold off on initializing the frame to avoid the RenderView getting 
   42521         a null FrameView. This could potentially cause problems.
   42522 
   42523         * svg/graphics/SVGImage.cpp:
   42524         (WebCore::SVGImage::dataChanged):
   42525 
   42526 2008-03-10  Darin Adler  <darin (a] apple.com>
   42527 
   42528         - try to fix Qt build
   42529 
   42530         * bridge/qt/qt_runtime.cpp:
   42531         (KJS::Bindings::convertQVariantToValue): Change KJS::UChar to UChar.
   42532 
   42533 2008-03-10  Darin Adler  <darin (a] apple.com>
   42534 
   42535         Reviewed by Antti.
   42536 
   42537         - fix <rdar://problem/3059610> VIP: links opened in new frame, window, or tab
   42538           should be redrawn as visited immediately
   42539         - fix <rdar://problem/4382809> Going "back" a page doesn't change the color of
   42540           the visited URL at directory.umi
   42541         - fix http://bugs.webkit.org/show_bug.cgi?id=4941
   42542           Visited links should be marked as visited
   42543         - fix http://bugs.webkit.org/show_bug.cgi?id=7960
   42544           REGRESSION: Visited link color doesn't displayed after loading page from cache
   42545 
   42546         We now mark all links on a page as "changed" at the appropriate times.
   42547 
   42548         * WebCore.base.exp: Update since I made completeURL be a const member function.
   42549 
   42550         * css/CSSStyleSelector.cpp: Got rid of some unneeded globals that could be turned
   42551         into locals. Also changed some static data members to file-scoped globals with
   42552         internal linkage. Renamed the globals to get rid of the m_ prefix. Changed the
   42553         prefix on m_styleNotYetAvailable to s_styleNotYetAvailable.
   42554         (WebCore::CSSStyleSelector::CSSStyleSelector): Updated for name changes.
   42555         (WebCore::parseUASheet): Tweak the comment.
   42556         (WebCore::CSSStyleSelector::loadDefaultStyle): Updated for name changes and to
   42557         use local variables instead of globals where possible.
   42558         (WebCore::CSSStyleSelector::checkPseudoState): Made this a member function so
   42559         it can store the link in a hash. Also changed it to have a return value instead
   42560         of having it modify a global variable. Added code to put the hash into a set so
   42561         we can tell later if this is one of the links that affects this page.
   42562         (WebCore::CSSStyleSelector::canShareStyleWithElement): Updated for the change to
   42563         checkPseudoState.
   42564         (WebCore::CSSStyleSelector::matchUARules): Updated for name changes.
   42565         (WebCore::CSSStyleSelector::styleForElement): Ditto.
   42566         (WebCore::CSSStyleSelector::adjustRenderStyle): Ditto.
   42567         (WebCore::CSSStyleSelector::pseudoStyleRulesForElement): Changed code to read
   42568         the SVG style sheet to use a boolean global and put it right here in the function
   42569         since this is the only code that needs to know about it.
   42570         (WebCore::CSSStyleSelector::checkOneSelector): Updated for name changes.
   42571         (WebCore::colorForCSSValue): Moved code inside the function that is not needed
   42572         anywhere else.
   42573         (WebCore::CSSStyleSelector::getColorFromPrimitiveValue): Updaed for the change
   42574         to checkPseudoState.
   42575         (WebCore::CSSStyleSelector::allVisitedStateChanged): Added. Calls setChanged on
   42576         all links if there were any in the set.
   42577         (WebCore::CSSStyleSelector::visitedStateChanged): Added. Calls setChanged on all
   42578         links if the one that changed is in the set.
   42579 
   42580         * css/CSSStyleSelector.h: Removed unused StyleSelector class and State enum. Made
   42581         CSSStyleSelector derive from Noncopyable. Made lots of member functions private that
   42582         didn't need to be public, and removed others that could be made into non-member
   42583         functions. Changed pseudoStyleRulesForElement to take a const String& instead of
   42584         a StringImpl*. Added new allVisitedStateChanged and visitedStateChanged functions.
   42585         Got rid of unneeded friend declarations.
   42586 
   42587         * dom/Document.cpp:
   42588         (WebCore::Document::completeURL): Made const.
   42589         (WebCore::findSlashDotDotSlash): Moved here from PageGroup.
   42590         (WebCore::findSlashSlash): Ditto.
   42591         (WebCore::findSlashDotSlash): Ditto.
   42592         (WebCore::containsColonSlashSlash):
   42593         (WebCore::cleanPath): Ditto.
   42594         (WebCore::matchLetter): Ditto.
   42595         (WebCore::needsTrailingSlash): Ditto.
   42596         (WebCore::Document::visitedLinkHash): Moved this here from PageGroup. This is
   42597         the poor-man's completeURL function. The idea of putting it here is that this
   42598         way it can be alongside the real completeURL function. Later we should figure out
   42599         a way to make this function share more code with the real thing and match behavior.
   42600 
   42601         * dom/Document.h: Marked completeURL function const. Added visitedLinkHash function.
   42602 
   42603         * page/DOMWindow.cpp:
   42604         (WebCore::DOMWindow::getMatchedCSSRules): Updated for change to CSSStyleSelector.
   42605 
   42606         * page/Page.cpp:
   42607         (WebCore::Page::allVisitedStateChanged): Added. Calls allVisitedStateChanged on all
   42608         style selectors.
   42609         (WebCore::Page::visitedStateChanged): Ditto.
   42610         * page/Page.h: Added the above functions.
   42611 
   42612         * page/PageGroup.cpp:
   42613         (WebCore::PageGroup::isLinkVisited): Changed to take a visitedLinkHash parameter.
   42614         The CSSStyleSelector now handles actually computing the hash, and it does so by
   42615         calling code in Document.
   42616         (WebCore::PageGroup::addVisitedLink): Refactored so the two overloaded copies share
   42617         a bit more code. Added code that calls visitedStateChanged if a new link was added.
   42618         (WebCore::PageGroup::removeVisitedLinks): Added code to call allVisitedStateChanged
   42619         if any visited links are removed.
   42620         * page/PageGroup.h: Include StringHash.h instead of having the AlreadyHashed struct
   42621         definition here.
   42622 
   42623         * platform/text/StringHash.h:
   42624         (WebCore::CaseFoldingHash::hash): Tweaked to make this a bit more consistent with
   42625         the StringImpl::computeHash function, using the same technique for avoiding 0.
   42626         (WebCore::AlreadyHashed::hash): Added. Was formerly in PageGroup.h.
   42627         (WebCore::AlreadyHashed::avoidDeletedValue): Added. Was formerly in PageGroup.cpp.
   42628 
   42629         * rendering/RenderStyle.cpp:
   42630         (WebCore::RenderStyle::isStyleAvailable): Changed to use an inline function instead
   42631         of getting directly at a data member so the data member could be made private.
   42632 
   42633         * loader/FrameLoader.cpp:
   42634         (WebCore::FrameLoader::scrollToAnchor): Added call to updateHistoryForAnchorScroll.
   42635         (WebCore::FrameLoader::updateHistoryForAnchorScroll): Added.
   42636         * loader/FrameLoader.h: Added updateHistoryForAnchorScroll.
   42637 
   42638 2008-03-10  Adam Roben  <aroben (a] apple.com>
   42639 
   42640         Part of Bug 17224: DOM nodes/attributes should be editable
   42641 
   42642         <http://bugs.webkit.org/show_bug.cgi?id=17224>
   42643         <rdar://problem/5732825>
   42644 
   42645         This patch makes DOM attributes editable via double-click.
   42646 
   42647         Reviewed by Tim.
   42648 
   42649         * page/inspector/DocumentPanel.js:
   42650         (WebInspector.DOMNodeTreeElement.onmousedown): Don't do anything if
   42651         we're being edited, since we want default editing behaviors to work.
   42652         (WebInspector.DOMNodeTreeElement.ondblclick): Try to start editing
   42653         before doing anything else.
   42654         (WebInspector.DOMNodeTreeElement._startEditing): Added. Currently only
   42655         lets you edit attributes.
   42656         (WebInspector.DOMNodeTreeElement._attributeEditingCommitted): Added.
   42657         Uses a scratch element to get the new attribute(s) parsed, then sets
   42658         the attribute(s) on the node in the inspected document.
   42659         (WebInspector.DOMNodeTreeElement._attributeEditingCancelled): Added.
   42660         (WebInspector.DOMNodeTreeElement._updateTitle): Added. Refreshes the
   42661         representation of the node in the Inspector's DOM tree to reflect
   42662         the node's current state.
   42663         * page/inspector/inspector.css: Made the .editing class apply
   42664         everywhere.
   42665         * page/inspector/utilities.js:
   42666         (nodeTitleInfo): Changed to surround attribute name/value pairs in a
   42667         webkit-html-attribute span so that we can easily edit the pair as a
   42668         whole.
   42669 
   42670 2008-03-10  David Kilzer  <ddkilzer (a] apple.com>
   42671 
   42672         Fix 64-bit builds.
   42673 
   42674         Reviewed by Stephanie.
   42675 
   42676         WebCore.exp only gets generated once for both 32-bit and 64-bit builds,
   42677         so we must exclude the _NPN symbols when creating WebCore.LP64.exp.
   42678 
   42679         * WebCore.xcodeproj/project.pbxproj: Reverted build phase shell code to
   42680         r30826 to remove _NPN symbols from 64-bit builds in WebCore.LP64.exp.
   42681 
   42682 2008-03-10  Eric Seidel  <eric (a] webkit.org>
   42683 
   42684         Reviewed by Darin.
   42685 
   42686         Remove KJS::UChar, use ::UChar instead
   42687         http://bugs.webkit.org/show_bug.cgi?id=17017
   42688 
   42689         To functional changes, thus no tests.
   42690 
   42691         * bindings/js/JSCSSStyleDeclarationCustom.cpp:
   42692         (WebCore::hasCSSPropertyNamePrefix):
   42693         (WebCore::cssPropertyName):
   42694         * bindings/js/JSDOMWindowBase.cpp:
   42695         (WebCore::windowProtoFuncAToB):
   42696         (WebCore::windowProtoFuncBToA):
   42697         * bindings/js/JSSVGPODTypeWrapper.h:
   42698         * bindings/js/kjs_proxy.cpp:
   42699         (WebCore::KJSProxy::evaluate):
   42700         * bridge/objc/objc_utility.mm:
   42701         (KJS::Bindings::throwError):
   42702         * dom/Document.cpp:
   42703         (WebCore::Document::parseQualifiedName):
   42704         * platform/text/AtomicString.cpp:
   42705         (WebCore::AtomicString::add):
   42706         * platform/text/String.cpp:
   42707         (WebCore::String::String):
   42708         (WebCore::String::operator Identifier):
   42709         (WebCore::String::operator UString):
   42710         * platform/text/TextCodecICU.cpp:
   42711         (WebCore::TextCodecICU::decode):
   42712         * svg/SVGAnimatedTemplate.h:
   42713 
   42714 2008-03-10  Darin Adler  <darin (a] apple.com>
   42715 
   42716         Reviewed by Sam.
   42717 
   42718         - eliminate keyboard UI mode method from WebCoreFrameBridge
   42719 
   42720         * page/ChromeClient.h: Added keyboardUIMode function.
   42721         (WebCore::ChromeClient::keyboardUIMode): Ditto.
   42722         * page/mac/EventHandlerMac.mm:
   42723         (WebCore::EventHandler::tabsToAllControls): Call chrome client function instead
   42724         of bridge function.
   42725         * page/mac/WebCoreFrameBridge.h: Removed keyboardUIMode method, and other unused
   42726         ones.
   42727 
   42728         * WebCore.xcodeproj/project.pbxproj: Allowed Xcode to change the project.
   42729         Do not try to fight the Xcode.
   42730 
   42731 2008-03-10  Darin Adler  <darin (a] apple.com>
   42732 
   42733         - oops, forgot to save last couple changes from the editor
   42734 
   42735         * bindings/js/JSDOMWindowCustom.cpp:
   42736         (WebCore::markDOMObjectWrapper): Tweaked a tiny bit.
   42737         (WebCore::JSDOMWindow::mark): Sorted alphabetically.
   42738 
   42739 2008-03-10  Darin Adler  <darin (a] apple.com>
   42740 
   42741         Reviewed by Geoff.
   42742 
   42743         - fix failing regression test (window.navigator is getting garbage
   42744           collected and thus losing its custom properties)
   42745 
   42746         * bindings/js/JSDOMWindowCustom.cpp:
   42747         (WebCore::markDOMObject): Added helper function.
   42748         (WebCore::JSDOMWindow::mark): Added. Marks the wrappers for all the objects that hang
   42749         off the window object.
   42750 
   42751         * page/DOMWindow.h:
   42752         (WebCore::DOMWindow::optionalScreen): Added so we can get the Screen object without
   42753         creating it if it's already there.
   42754         (WebCore::DOMWindow::optionalSelection): Ditto.
   42755         (WebCore::DOMWindow::optionalHistory): Ditto.
   42756         (WebCore::DOMWindow::optionalLocationbar): Ditto.
   42757         (WebCore::DOMWindow::optionalMenubar): Ditto.
   42758         (WebCore::DOMWindow::optionalPersonalbar): Ditto.
   42759         (WebCore::DOMWindow::optionalScrollbars): Ditto.
   42760         (WebCore::DOMWindow::optionalStatusbar): Ditto.
   42761         (WebCore::DOMWindow::optionalToolbar): Ditto.
   42762         (WebCore::DOMWindow::optionalConsole): Ditto.
   42763         (WebCore::DOMWindow::optionalNavigator): Ditto.
   42764 
   42765         * page/DOMWindow.idl: Added the CustomMarkFunction flag. Sorted the flags in
   42766         alphabetical order since there are a lot of them.
   42767 
   42768 2008-03-10  Darin Adler  <darin (a] apple.com>
   42769 
   42770         Reviewed by Sam.
   42771 
   42772         - eliminate Java applet methods from WebCoreFrameBridge
   42773 
   42774         * loader/FrameLoaderClient.h: Added a javaApplet function.
   42775         * page/mac/FrameMac.mm:
   42776         (WebCore::Frame::createScriptInstanceForWidget): Streamlined the code.
   42777         Use the loader client instead of the bridge to get the applet.
   42778         * page/mac/WebCoreFrameBridge.h: Removed the getAppletInView and
   42779         pollForAppletInView methods. Also removed other unused things.
   42780 
   42781 2008-03-10  Marc-Antoine Ruel  <maruel (a] gmail.com>
   42782 
   42783         Reviewed by Eric, landed by Darin.
   42784 
   42785         http://bugs.webkit.org/show_bug.cgi?id=16095
   42786         Move GraphicsContextPrivate to its own header file.
   42787 
   42788         Moves GraphicsContextState and GraphicsContextPrivate to its
   42789         own header
   42790 
   42791         * WebCore.vcproj/WebCore.vcproj:
   42792         * platform/graphics/GraphicsContext.cpp:
   42793         * platform/graphics/GraphicsContextPrivate.h: Added.
   42794         (WebCore::GraphicsContextState::GraphicsContextState):
   42795         (WebCore::GraphicsContextPrivate::GraphicsContextPrivate):
   42796 
   42797 2008-03-10  Julien Chaffraix  <julien.chaffraix (a] gmail.com>
   42798 
   42799         Reviewed and landed by Darin.
   42800 
   42801         bug 12182 : XMLHttpRequest should raise SECURITY_ERR for same-origin policy violations
   42802 
   42803         Removed reference to PERMISSION_DENIED (previous non standard exception) and replaced it
   42804         by DOM exception SECURITY_ERR. Updated XMLHttpRequest::open to raise SECURITY_ERR.
   42805 
   42806         * bindings/js/kjs_binding.cpp:
   42807         (WebCore::setDOMException): Removed PERMISSION_DENIED code.
   42808         * dom/ExceptionCode.cpp: Added SECURITY_ERR exception.
   42809         * dom/ExceptionCode.h: Ditto.
   42810         * xml/XMLHttpRequest.cpp:
   42811         (WebCore::XMLHttpRequest::open): Returns SECURITY_ERR now.
   42812         * xml/XMLHttpRequestException.h: Removed PERMISSION_DENIED.
   42813 
   42814 2008-03-09  Adam Roben  <aroben (a] apple.com>
   42815 
   42816         Refactor CSS editing code so we can share it with DOM editing
   42817 
   42818         Add WebInspector.startEditing, which takes the element to be edited, a
   42819         committedCallback, a cancelledCallback, and a context parameter. This
   42820         function takes care of setting up the element for editing, and calls
   42821         either the cancelledCallback or committedCallback when editing ends.
   42822 
   42823         Reviewed by Tim.
   42824 
   42825         * page/inspector/StylesSidebarPane.js:
   42826         (WebInspector.StylePropertyTreeElement.startEditing):
   42827           - Call WebInspector.isBeingEdited and WebInspector.startEditing
   42828           - Removed code now handled by WebInspector.startEditing
   42829         (WebInspector.StylePropertyTreeElement.editingEnded):
   42830           - Renamed from endEditing
   42831           - Removed code now handled by WebInspector.startEditing
   42832         (WebInspector.StylePropertyTreeElement.editingCancelled):
   42833           - Renamed from cancelEditing
   42834           - Changed parameters to match WebInspector.startEditing's
   42835             cancelledCallback
   42836         (WebInspector.StylePropertyTreeElement.editingCommitted):
   42837           - Renamed from commitEditing
   42838           - Changed parameters to match WebInspector.startEditing's
   42839             committedCallback
   42840         * page/inspector/inspector.js:
   42841         (WebInspector.changeFocus): Changed a call to firstParentWithClassName
   42842         to firstParentOrSelfWithClassName so that if the focusable element
   42843         itself is the target it will be recognized. I don't know why this
   42844         change wasn't needed before this.
   42845         (WebInspector.isBeingEdited): Added.
   42846         (WebInspector.startEditing): Added.
   42847 
   42848 2008-03-10  Adam Roben  <aroben (a] apple.com>
   42849 
   42850         Windows build fix
   42851 
   42852         * WebCore.vcproj/WebCore.vcproj: Pick up generated source files out of
   42853         $(WebKitOutputDir) instead of hard-coding WebKitBuild.
   42854 
   42855 2008-03-10  Darin Adler  <darin (a] apple.com>
   42856 
   42857         * DerivedSources.make: Merge plug-in-related changes with the new way of handling
   42858         autogenerated DOM classes.
   42859 
   42860 2008-03-10  Johnny Ding  <johnnyding.webkit (a] gmail.com>
   42861 
   42862         Reviewed, tweaked and landed by Alexey.
   42863 
   42864         - fix http://bugs.webkit.org/show_bug.cgi?id=17732        
   42865 
   42866         We didn't have a fallback to frame encoding in the case of loading a script via
   42867         changing its src attribute.
   42868 
   42869         Test: fast/dom/HTMLScriptElement/script-decoding-error-after-setting-src.html
   42870 
   42871         * html/HTMLScriptElement.cpp:
   42872         (WebCore::HTMLScriptElement::parseMappedAttribute): Use a helper function to get proper
   42873         charset for correct decoding of script content.
   42874         (WebCore::HTMLScriptElement::insertedIntoDocument):
   42875         (WebCore::HTMLScriptElement::scriptCharset): A helper function for getting proper charset
   42876         for the script (as much as can be determined prior to loading it).
   42877         * html/HTMLScriptElement.h:
   42878         * html/HTMLTokenizer.cpp:
   42879         (WebCore::HTMLTokenizer::parseTag): Use a helper function to get proper charset for correct
   42880         decoding of script content.
   42881 
   42882 2008-03-10  Simon Hausmann  <hausmann (a] webkit.org>
   42883 
   42884         Reviewed by Lars.
   42885 
   42886         Fix reference counting of returned MimeType and Plugin objects
   42887         created in the array wrappers.
   42888 
   42889         * plugins/MimeTypeArray.cpp:
   42890         * plugins/MimeTypeArray.h:
   42891         * plugins/Plugin.cpp:
   42892         * plugins/Plugin.h:
   42893         * plugins/PluginArray.cpp:
   42894         * plugins/PluginArray.h:
   42895 
   42896 2008-03-10  Simon Hausmann  <hausmann (a] webkit.org>
   42897 
   42898         Wx linking fix.
   42899 
   42900         Added missing stubs for PluginData.
   42901 
   42902         * platform/wx/TemporaryLinkStubs.cpp:
   42903 
   42904 2008-03-10  Simon Hausmann  <hausmann (a] webkit.org>
   42905 
   42906         Windows build fix that I forgot to merge earlier ;(
   42907 
   42908         Forward declare Page as class, not struct.
   42909 
   42910         * plugins/PluginData.h:
   42911 
   42912 2008-03-10  Simon Hausmann  <hausmann (a] webkit.org>
   42913 
   42914         Attempt to fix the Wx build.
   42915 
   42916         * WebCoreSources.bkl:
   42917 
   42918 2008-03-07  Simon Hausmann  <hausmann (a] webkit.org>
   42919 
   42920         Reviewed by Darin.
   42921 
   42922         Done with Lars.
   42923 
   42924         http://bugs.webkit.org/show_bug.cgi?id=16815
   42925 
   42926         Ported the manually written JS bindings of window.navigator,
   42927         window.navigator.plugins and window.navigator.mimeTypes to
   42928         auto-generated bindings.
   42929 
   42930         Moved the globally cached plugin and mimetype information to a
   42931         per WebCore::Page shared PluginData structure.
   42932 
   42933         Implemented window.navigator.plugins.refresh() in a
   42934         platform-independent way.
   42935 
   42936         * DerivedSources.make:
   42937         * GNUmakefile.am:
   42938         * WebCore.pro:
   42939         * WebCore.vcproj/WebCore.vcproj:
   42940         * WebCore.xcodeproj/project.pbxproj:
   42941         * bindings/js/JSDOMWindowBase.cpp:
   42942         (WebCore::JSDOMWindowBase::getValueProperty):
   42943         * bindings/js/JSMimeTypeArrayCustom.cpp: Added.
   42944         (WebCore::JSMimeTypeArray::canGetItemsForName):
   42945         (WebCore::JSMimeTypeArray::nameGetter):
   42946         * bindings/js/JSNavigatorCustom.cpp: Added.
   42947         (WebCore::needsYouTubeQuirk):
   42948         (WebCore::JSNavigator::appVersion):
   42949         * bindings/js/JSPluginArrayCustom.cpp: Added.
   42950         (WebCore::JSPluginArray::canGetItemsForName):
   42951         (WebCore::JSPluginArray::nameGetter):
   42952         * bindings/js/JSPluginCustom.cpp: Added.
   42953         (WebCore::JSPlugin::canGetItemsForName):
   42954         (WebCore::JSPlugin::nameGetter):
   42955         * bindings/js/kjs_navigator.cpp: Removed.
   42956         * bindings/js/kjs_navigator.h: Removed.
   42957         * dom/Clipboard.cpp:
   42958         * dom/DOMImplementation.cpp:
   42959         (WebCore::DOMImplementation::createDocument):
   42960         * loader/FrameLoader.cpp:
   42961         (WebCore::FrameLoader::shouldUsePlugin):
   42962         * page/DOMWindow.cpp:
   42963         (WebCore::DOMWindow::clear):
   42964         (WebCore::DOMWindow::navigator):
   42965         * page/DOMWindow.h:
   42966         * page/DOMWindow.idl:
   42967         * page/DragController.cpp:
   42968         * page/Frame.cpp:
   42969         * page/Frame.h:
   42970         * page/Navigator.cpp: Added.
   42971         (WebCore::Navigator::Navigator):
   42972         (WebCore::Navigator::~Navigator):
   42973         (WebCore::Navigator::disconnectFrame):
   42974         (WebCore::Navigator::appCodeName):
   42975         (WebCore::Navigator::appName):
   42976         (WebCore::Navigator::appVersion):
   42977         (WebCore::Navigator::language):
   42978         (WebCore::Navigator::userAgent):
   42979         (WebCore::Navigator::platform):
   42980         (WebCore::Navigator::plugins):
   42981         (WebCore::Navigator::mimeTypes):
   42982         (WebCore::Navigator::product):
   42983         (WebCore::Navigator::productSub):
   42984         (WebCore::Navigator::vendor):
   42985         (WebCore::Navigator::vendorSub):
   42986         (WebCore::Navigator::cookieEnabled):
   42987         (WebCore::Navigator::javaEnabled):
   42988         * page/Navigator.h: Added.
   42989         (WebCore::Navigator::create):
   42990         (WebCore::Navigator::frame):
   42991         * page/Navigator.idl: Added.
   42992         * page/Page.cpp:
   42993         (WebCore::Page::refreshPlugins):
   42994         (WebCore::Page::pluginData):
   42995         * page/Page.h:
   42996         * page/Plugin.h: Removed.
   42997         * page/mac/FrameMac.mm:
   42998         * page/mac/WebCoreFrameBridge.mm:
   42999         (-[WebCoreFrameBridge canProvideDocumentSource]):
   43000         * page/mac/WebCoreViewFactory.h:
   43001         * page/qt/FrameQt.cpp:
   43002         * page/win/FrameWin.cpp:
   43003         * platform/gtk/TemporaryLinkStubs.cpp:
   43004         * platform/mac/PlugInInfoStoreMac.mm: Removed.
   43005         * platform/qt/MIMETypeRegistryQt.cpp:
   43006         (WebCore::MIMETypeRegistry::getMIMETypeForExtension):
   43007         * plugins/MimeType.cpp: Added.
   43008         (WebCore::MimeType::MimeType):
   43009         (WebCore::MimeType::~MimeType):
   43010         (WebCore::MimeType::type):
   43011         (WebCore::MimeType::suffixes):
   43012         (WebCore::MimeType::description):
   43013         (WebCore::MimeType::enabledPlugin):
   43014         * plugins/MimeType.h: Added.
   43015         (WebCore::MimeType::create):
   43016         * plugins/MimeType.idl: Added.
   43017         * plugins/MimeTypeArray.cpp: Added.
   43018         (WebCore::MimeTypeArray::MimeTypeArray):
   43019         (WebCore::MimeTypeArray::~MimeTypeArray):
   43020         (WebCore::MimeTypeArray::length):
   43021         (WebCore::MimeTypeArray::item):
   43022         (WebCore::MimeTypeArray::canGetItemsForName):
   43023         (WebCore::MimeTypeArray::nameGetter):
   43024         (WebCore::MimeTypeArray::getPluginData):
   43025         * plugins/MimeTypeArray.h: Added.
   43026         (WebCore::MimeTypeArray::create):
   43027         (WebCore::MimeTypeArray::disconnectFrame):
   43028         * plugins/MimeTypeArray.idl: Added.
   43029         * plugins/Plugin.cpp: Added.
   43030         (WebCore::Plugin::Plugin):
   43031         (WebCore::Plugin::~Plugin):
   43032         (WebCore::Plugin::name):
   43033         (WebCore::Plugin::filename):
   43034         (WebCore::Plugin::description):
   43035         (WebCore::Plugin::length):
   43036         (WebCore::Plugin::item):
   43037         (WebCore::Plugin::canGetItemsForName):
   43038         (WebCore::Plugin::nameGetter):
   43039         * plugins/Plugin.h: Added.
   43040         (WebCore::Plugin::create):
   43041         * plugins/Plugin.idl: Added.
   43042         * plugins/PluginArray.cpp: Added.
   43043         (WebCore::PluginArray::PluginArray):
   43044         (WebCore::PluginArray::~PluginArray):
   43045         (WebCore::PluginArray::length):
   43046         (WebCore::PluginArray::item):
   43047         (WebCore::PluginArray::canGetItemsForName):
   43048         (WebCore::PluginArray::nameGetter):
   43049         (WebCore::PluginArray::refresh):
   43050         (WebCore::PluginArray::getPluginData):
   43051         * plugins/PluginArray.h: Added.
   43052         (WebCore::PluginArray::create):
   43053         (WebCore::PluginArray::disconnectFrame):
   43054         * plugins/PluginArray.idl: Added.
   43055         * plugins/PluginData.cpp: Added.
   43056         (WebCore::PluginData::PluginData):
   43057         (WebCore::PluginData::~PluginData):
   43058         (WebCore::PluginData::supportsMimeType):
   43059         (WebCore::PluginData::pluginNameForMimeType):
   43060         * plugins/PluginData.h: Added.
   43061         (WebCore::PluginData::create):
   43062         (WebCore::PluginData::disconnectPage):
   43063         (WebCore::PluginData::page):
   43064         (WebCore::PluginData::plugins):
   43065         (WebCore::PluginData::mimes):
   43066         * plugins/mac/PluginDataMac.mm: Added.
   43067         (WebCore::PluginData::initPlugins):
   43068         (WebCore::PluginData::refresh):
   43069         * plugins/qt/PluginDataQt.cpp: Added.
   43070         (WebCore::PluginData::initPlugins):
   43071         * plugins/win/PluginDataWin.cpp: Added.
   43072         (WebCore::PluginData::initPlugins):
   43073         (WebCore::PluginData::refresh):
   43074 
   43075 2008-03-10  Simon Hausmann  <hausmann (a] webkit.org>
   43076 
   43077         Reviewed by Holger.
   43078 
   43079         Replace two printfs() in the Qt port with notImplemented().
   43080 
   43081         * html/CanvasRenderingContext2D.cpp:
   43082         (WebCore::CanvasRenderingContext2D::applyStrokePattern):
   43083         (WebCore::CanvasRenderingContext2D::applyFillPattern):
   43084 
   43085 2008-03-10  Simon Hausmann  <hausmann (a] webkit.org>
   43086 
   43087         Reviewed by Alp.
   43088 
   43089         Compilation fix with gcc 4.3: Include stdio.h for printf.
   43090 
   43091         * html/CanvasRenderingContext2D.cpp:
   43092         * html/HTMLCanvasElement.cpp:
   43093 
   43094 2008-03-09  Steve Falkenburg  <sfalken (a] apple.com>
   43095 
   43096         Stop Windows build if an error occurs in a prior project.
   43097 
   43098         Rubber stamped by Darin.
   43099 
   43100         * WebCore.vcproj/WebCore.vcproj:
   43101         * WebCore.vcproj/WebCoreGenerated.vcproj:
   43102 
   43103 2008-03-09  Darin Adler  <darin (a] apple.com>
   43104 
   43105         * DerivedSources.make: Third try at fixing the build.
   43106         * bindings/js/JSRGBColor.cpp: And touching this file.
   43107 
   43108 2008-03-09  Darin Adler  <darin (a] apple.com>
   43109 
   43110         * DerivedSources.make: One *more* try at fixing the build.
   43111 
   43112 2008-03-09  Darin Adler  <darin (a] apple.com>
   43113 
   43114         * DerivedSources.make: One more try at fixing the build.
   43115 
   43116 2008-03-09  Darin Adler  <darin (a] apple.com>
   43117 
   43118         * DerivedSources.make: Re-land the change, fixed, and with an attempt to fix the
   43119         bots by removing the incorrect file.
   43120 
   43121 2008-03-09  Oliver Hunt  <oliver (a] apple.com>
   43122 
   43123         RS=Mark Rowe
   43124 
   43125         Roll out r30909 -- it breaks the build and is a non-trivial fix (according to weinig)
   43126 
   43127         * DerivedSources.make:
   43128 
   43129 2008-03-09  Darin Adler  <darin (a] apple.com>
   43130 
   43131         Reviewed by Adam.
   43132 
   43133         * DerivedSources.make: Put the list of DOM classes into its own
   43134         variable, and generate the JavaScript bindings and Objective-C
   43135         bindings dependencies from that. Added some separators to make it
   43136         a little easier to see the sections of the file. Moved all the
   43137         Mac-specific rules (except for the SVG conditional part) down
   43138         to the bottom of the file in a separate section.
   43139 
   43140 2008-03-09  Adam Roben  <aroben (a] apple.com>
   43141 
   43142         Windows build fix
   43143 
   43144         * WebCore.vcproj/WebCore.vcproj: Make sure all Cairo files are
   43145         excluded from all three CG-based configurations: Debug, Release, and
   43146         Debug_Internal.
   43147 
   43148 2008-03-08  Mark Rowe  <mrowe (a] apple.com>
   43149 
   43150         Attempt to fix the Qt build.
   43151 
   43152         * platform/MIMETypeRegistry.cpp:  Add missing include.
   43153 
   43154 2008-03-08  Oliver Hunt  <oliver (a] apple.com>
   43155 
   43156         Reviewed by Sam W.
   43157 
   43158         Bug 16516: canvas image patterns stop working with some transformations
   43159 
   43160         Simple fix.  We used x/yStep of FLT_MAX to fake a no-repeat-x/y pattern
   43161         with CG.  However any transforms involving FLT_MAX immediately get
   43162         consumed by the introduced floating point error.  yStep had already been
   43163         clamped to a much smaller arbitrary value, and this patch makes us use
   43164         that clamp value for xStep as well.
   43165 
   43166         * html/CanvasPattern.cpp:
   43167         (WebCore::CanvasPattern::createPattern):
   43168 
   43169 2008-03-08  Oliver Hunt  <oliver (a] apple.com>
   43170 
   43171         Reviewed by Mitz.
   43172 
   43173         Bug 17728: Canvas.createPattern with null repeat argument throws an exception
   43174 
   43175         Trivial fix, we were calling toString on null which produces the string "null",
   43176         we just needed to switch to using valueToStringWithNullCheck rather than 
   43177         JSValue::toString directly
   43178 
   43179         Test: fast/canvas/canvas-pattern-behaviour.html
   43180 
   43181         * WebCore/bindings/js/JSCanvasRenderingContext2DCustom.cpp:
   43182         (WebCore::JSCanvasRenderingContext2D::createPattern):
   43183 
   43184 2008-03-08  Mark Rowe  <mrowe (a] apple.com>
   43185 
   43186         Reviewed by Darin Adler.
   43187 
   43188         Fix 64-bit build with GCC 4.2.
   43189 
   43190         * bindings/objc/WebScriptObject.mm: Use NSUInteger in place of unsigned where required.
   43191         * platform/mac/SharedBufferMac.mm: Ditto.
   43192 
   43193 2008-03-08  Dan Bernstein  <mitz (a] apple.com>
   43194 
   43195         Reviewed by Oliver Hunt.
   43196 
   43197         - fix garbage in transparent areas in canvas.toDataURL results
   43198 
   43199         * platform/graphics/cg/ImageBufferCG.cpp:
   43200         (WebCore::ImageBuffer::toDataURL): Clear the bitmap context before
   43201         painting the canvas image onto it.
   43202 
   43203 2008-03-08  Darin Adler  <darin (a] apple.com>
   43204 
   43205         Reviewed by Adele.
   43206 
   43207         - eliminate custom highlight methods from WebCoreFrameBridge
   43208 
   43209         * page/Chrome.cpp:
   43210         (WebCore::ChromeClient::customHighlightRect): Added.
   43211         (WebCore::ChromeClient::paintCustomHighlight): Added.
   43212         * page/ChromeClient.h: Added custom highlight functions.
   43213         * page/Frame.h: Removed custom highlight functions.
   43214         * page/mac/FrameMac.mm: Ditto.
   43215         * page/mac/WebCoreFrameBridge.h: Removed custom highlight methods.
   43216         * rendering/InlineTextBox.cpp:
   43217         (WebCore::InlineTextBox::paintCustomHighlight): Changed code to use
   43218         the ChromeClient instead of WebCoreFrameBridge to do the custom highlight.
   43219         * rendering/RenderBox.cpp:
   43220         (WebCore::RenderBox::paintCustomHighlight): Ditto.
   43221         * rendering/RootInlineBox.cpp:
   43222         (WebCore::RootInlineBox::addHighlightOverflow): Ditto.
   43223         (WebCore::RootInlineBox::paintCustomHighlight): Ditto.
   43224 
   43225 2008-03-07  Stephanie Lewis  <slewis (a] apple.com>
   43226 
   43227         Reviewed by Oliver.
   43228 
   43229         Fix Windows build.
   43230 
   43231         * platform/graphics/cg/ImageBufferCG.cpp:
   43232         (WebCore::ImageBuffer::toDataURL):
   43233 
   43234 2008-03-07  David D. Kilzer  <ddkilzer (a] apple.com>
   43235 
   43236         Unify concept of enabling Netscape Plug-in API (NPAPI).
   43237 
   43238         Reviewed by Darin.
   43239 
   43240         No test cases since there is no change in functionality.
   43241 
   43242         * DerivedSources.make: Added check for ENABLE_NETSCAPE_PLUGIN_API macro.
   43243         If defined as "1", add WebCore.NPAPI.exp to WEBCORE_EXPORT_DEPENDENCIES.
   43244         * WebCore.NPAPI.exp: Added.
   43245         * WebCore.base.exp: Moved exported NPAPI methods to WebCore.NPAPI.exp.
   43246         * WebCore.xcodeproj/project.pbxproj: Removed changes in r30826 (except
   43247         comments) since we now handle exported NPAPI methods via DerivedSources.make.
   43248 
   43249         * config.h: Removed USE(NPOBJECT) since we now use ENABLE(NETSCAPE_PLUGIN_API) as
   43250         defined in Platform.h.
   43251 
   43252         * bindings/objc/DOM.mm: Replaced USE(NPOBJECT) with ENABLE(NETSCAPE_PLUGIN_API).
   43253         (-[DOMElement _NPObject]):
   43254 
   43255         * bridge/NP_jsobject.cpp: Replaced !PLATFORM(DARWIN) || !defined(__LP64__) with
   43256         ENABLE(NETSCAPE_PLUGIN_API).
   43257         * bridge/NP_jsobject.h: Ditto.
   43258         * bridge/c/c_class.cpp: Ditto.
   43259         * bridge/c/c_class.h: Ditto.
   43260         * bridge/c/c_instance.cpp: Ditto.
   43261         * bridge/c/c_instance.h: Ditto.
   43262         * bridge/c/c_runtime.cpp: Ditto.
   43263         * bridge/c/c_runtime.h: Ditto.
   43264         * bridge/c/c_utility.cpp: Ditto.
   43265         * bridge/c/c_utility.h: Ditto.
   43266         * bridge/npruntime.cpp: Ditto.
   43267         * bridge/npruntime_impl.h: Ditto.
   43268         * bridge/npruntime_priv.h: Ditto.
   43269         * bridge/runtime.cpp: Ditto.
   43270         (KJS::Bindings::Instance::createBindingForLanguageInstance):
   43271 
   43272         * html/HTMLPlugInElement.cpp: Replaced USE(NPOBJECT) with ENABLE(NETSCAPE_PLUGIN_API).
   43273         (WebCore::HTMLPlugInElement::HTMLPlugInElement):
   43274         (WebCore::HTMLPlugInElement::~HTMLPlugInElement):
   43275         * html/HTMLPlugInElement.h: Ditto.
   43276 
   43277         * page/Frame.cpp: Replaced USE(NPOBJECT) with ENABLE(NETSCAPE_PLUGIN_API).
   43278         (WebCore::Frame::clearScriptObjects):
   43279         (WebCore::FramePrivate::FramePrivate): Also added #if ENABLE(NETSCAPE_PLUGIN_API)
   43280         guard around m_windowScriptNPObject.
   43281         * page/Frame.h: Replaced USE(NPOBJECT) with ENABLE(NETSCAPE_PLUGIN_API).
   43282         * page/FramePrivate.h: Added #if ENABLE(NETSCAPE_PLUGIN_API) guard around
   43283         m_windowScriptNPObject.
   43284         * page/mac/FrameMac.mm: Replaced USE(NPOBJECT) with ENABLE(NETSCAPE_PLUGIN_API).
   43285         (WebCore::Frame::createScriptInstanceForWidget):
   43286 
   43287 2008-03-07  Alexey Proskuryakov  <ap (a] webkit.org>
   43288 
   43289         Reviewed by Darin.
   43290 
   43291         REGRESSION: Korean decoding doesn't support extended EUC-KR.
   43292 
   43293         Test: fast/encoding/char-decoding.html
   43294 
   43295         * platform/text/TextCodecICU.cpp:
   43296         (WebCore::TextCodecICU::registerExtendedEncodingNames): Untangle the system of duplicate ICU
   43297         encoding names by manually registering windows-939-2000, and mapping all other related
   43298         encodings to it.
   43299 
   43300 2008-03-07  Dan Bernstein  <mitz (a] apple.com>
   43301 
   43302         Reviewed by Stephanie.
   43303 
   43304         - try to fix leaks seen on Tiger after r30840
   43305 
   43306         * css/CSSStyleSelector.cpp:
   43307         (WebCore::CSSStyleSelector::~CSSStyleSelector): Use the default operator
   43308         delete, rather than arena delete, to deallocate the root default style.
   43309 
   43310 2008-03-07  Pierre-Luc Beaudoin  <pierre-luc.beaudoin (a] collabora.co.uk>
   43311 
   43312         Reviewed by Alp Toker.
   43313 
   43314         http://bugs.webkit.org/show_bug.cgi?id=17681
   43315         GtkLauncher fails to render an element with position: fixed
   43316 
   43317         Implement the required parts of PlatformScreenGtk.
   43318 
   43319         * ChangeLog:
   43320         * platform/gtk/PlatformScreenGtk.cpp:
   43321         (WebCore::screenDepth):
   43322         (WebCore::screenIsMonochrome):
   43323         (WebCore::screenRect):
   43324 
   43325 2008-03-07  Oliver Hunt  <oliver (a] apple.com>
   43326 
   43327         Reviewed by Darin Adler.
   43328 
   43329         Bug 16610: <canvas> restore() removes path segments created before it
   43330 
   43331         The problem here is that WebKit stored the Path as part of the state, so
   43332         restore would incorrectly lose changes made to the canvas path.  To match
   43333         Firefox and HTML5 we make two real changes:
   43334           * Move the context path from the state object directly onto the context.
   43335             This is responsible for all the changes to the path manipulation functions
   43336           * Add transform tracking to each state -- this is needed to correctly transform
   43337             the current path when restore()-ing to a prior state.
   43338 
   43339         Test: fast/canvas/canvas-save-restore-with-path.html
   43340 
   43341         * html/CanvasRenderingContext2D.cpp:
   43342         (WebCore::CanvasRenderingContext2D::restore):
   43343         (WebCore::CanvasRenderingContext2D::scale):
   43344         (WebCore::CanvasRenderingContext2D::rotate):
   43345         (WebCore::CanvasRenderingContext2D::translate):
   43346         (WebCore::CanvasRenderingContext2D::transform):
   43347         (WebCore::CanvasRenderingContext2D::beginPath):
   43348         (WebCore::CanvasRenderingContext2D::closePath):
   43349         (WebCore::CanvasRenderingContext2D::moveTo):
   43350         (WebCore::CanvasRenderingContext2D::lineTo):
   43351         (WebCore::CanvasRenderingContext2D::quadraticCurveTo):
   43352         (WebCore::CanvasRenderingContext2D::arcTo):
   43353         (WebCore::CanvasRenderingContext2D::arc):
   43354         (WebCore::CanvasRenderingContext2D::rect):
   43355         (WebCore::CanvasRenderingContext2D::clearPathForDashboardBackwardCompatibilityMode):
   43356         (WebCore::CanvasRenderingContext2D::fill):
   43357         (WebCore::CanvasRenderingContext2D::stroke):
   43358         (WebCore::CanvasRenderingContext2D::clip):
   43359         (WebCore::CanvasRenderingContext2D::isPointInPath):
   43360         * html/CanvasRenderingContext2D.h:
   43361 
   43362 2008-03-07  Oliver Hunt  <oliver (a] apple.com>
   43363 
   43364         Reviewed by Ada.
   43365 
   43366         Fix for crash caused by FrameLoader incorrectly assuming it has
   43367         a RenderWidget
   43368 
   43369         In some circumstances an application embedding a WebView may 
   43370         choose to prevent a webview from loading a resource.  If that
   43371         resource was requested by an <object> element then we may 
   43372         fallback to different content which may not produce a RenderWidget.
   43373         Unfortunately FrameLoader::loadSubframe was assuming that if a
   43374         renderer was produced it would always be a RenderWidget, and arbitrarily
   43375         performed what could be an incorrect cast.  This could then lead to
   43376         a crash.
   43377 
   43378         We currently don't have anyway of making a test for this.
   43379 
   43380         * loader/FrameLoader.cpp:
   43381         (WebCore::FrameLoader::loadSubframe):
   43382 
   43383 2008-03-07  Samuel Weinig  <sam (a] webkit.org>
   43384 
   43385         Reviewed by Oliver Hunt.
   43386 
   43387         Fix for http://bugs.webkit.org/show_bug.cgi?id=16673
   43388         <canvas> lacks toDataURL()
   43389 
   43390         Tests: fast/canvas/toDataURL-noData.html
   43391                fast/canvas/toDataURL-supportedTypes.html
   43392 
   43393         * html/CanvasRenderingContext2D.cpp:
   43394         (WebCore::CanvasRenderingContext2D::printSecurityExceptionMessage): Make message non-global.
   43395         * html/HTMLCanvasElement.cpp:
   43396         (WebCore::HTMLCanvasElement::printSecurityExceptionMessage): Log error message indicating that toDataURL has
   43397         been called on a tainted canvas. 
   43398         (WebCore::HTMLCanvasElement::toDataURL): This does the tainted canvas check, ensures that the canvas has pixel
   43399         data, checks to see if the MIME type is supported.  Unsupported MIME types and the null string (which is made
   43400         by passing no argument/null/undefined in JavaScript) are treated as being PNG, as per the spec.  The actual 
   43401         toDataURL logic is actually done in the ImageBuffer class.
   43402         * html/HTMLCanvasElement.h: Add function declarations.
   43403         * html/HTMLCanvasElement.idl: Add function declaration.
   43404 
   43405         * platform/MIMETypeRegistry.cpp:
   43406         (WebCore::initializeSupportedImageMIMETypes):
   43407         (WebCore::initializeSupportedImageMIMETypesForEncoding):
   43408         (WebCore::initializeSupportedJavaScriptMIMETypes):
   43409         (WebCore::initializeSupportedNonImageMimeTypes):
   43410         (WebCore::initializeSupportedMediaMIMETypes):
   43411         (WebCore::initializeMIMETypeRegistry):
   43412         (WebCore::MIMETypeRegistry::getMIMETypeForPath):
   43413         (WebCore::MIMETypeRegistry::isSupportedImageMIMEType):
   43414         (WebCore::MIMETypeRegistry::isSupportedImageResourceMIMEType):
   43415         (WebCore::MIMETypeRegistry::isSupportedImageMIMETypeForEncoding):
   43416         (WebCore::MIMETypeRegistry::isSupportedJavaScriptMIMEType):
   43417         (WebCore::MIMETypeRegistry::isSupportedNonImageMIMEType):
   43418         (WebCore::MIMETypeRegistry::isSupportedMediaMIMEType):
   43419         (WebCore::MIMETypeRegistry::isJavaAppletMIMEType):
   43420         (WebCore::MIMETypeRegistry::getSupportedImageMIMETypes):
   43421         (WebCore::MIMETypeRegistry::getSupportedImageResourceMIMETypes):
   43422         (WebCore::MIMETypeRegistry::getSupportedImageMIMETypesForEncoding):
   43423         (WebCore::MIMETypeRegistry::getSupportedNonImageMIMETypes):
   43424         (WebCore::MIMETypeRegistry::getSupportedMediaMIMETypes):
   43425         * platform/MIMETypeRegistry.h:
   43426         Clean up and add new supportedImageMIMETypesForEncoding set which contains the set of
   43427         MIME types the platform knows how to encode. Currently only implemented for CG and Qt.
   43428 
   43429         * platform/graphics/ImageBuffer.h: Add toDataURL method.
   43430         * platform/graphics/cairo/ImageBufferCairo.cpp:
   43431         (WebCore::ImageBuffer::toDataURL): Add stub.
   43432         * platform/graphics/cg/ImageBufferCG.cpp:
   43433         (WebCore::ImageBuffer::create):
   43434         (WebCore::ImageBuffer::getImageData):
   43435         (WebCore::ImageBuffer::putImageData):
   43436         (WebCore::ImageBuffer::toDataURL):
   43437         Converts the current context to a data: url of the specified MIME type.  This method
   43438         unfortunately has to flip the context, resulting in less than optimal code.
   43439 
   43440         * platform/graphics/qt/ImageBufferQt.cpp:
   43441         (WebCore::ImageBuffer::toDataURL): Add stub.
   43442         * platform/graphics/wx/ImageBufferWx.cpp:
   43443         (WebCore::ImageBuffer::toDataURL): Add stub.
   43444 
   43445 2008-03-07  Steve Falkenburg  <sfalken (a] apple.com>
   43446 
   43447         Build fix.
   43448 
   43449         * WebCore.vcproj/WebCore.vcproj:
   43450 
   43451 2008-03-07  Brent Fulgham  <bfulgham (a] gmail.com>
   43452 
   43453         Reviewed by Mark Rowe.
   43454 
   43455         Correct build intermediary output
   43456         (http://bugs.webkit.org/show_bug.cgi?id=17713)
   43457 
   43458         * WebCore/WebCore.vcproj:  Correct intermediary paths
   43459 
   43460 2008-03-07  Brent Fulgham  <bfulgham (a] gmail.com>
   43461 
   43462         Reviewed by Steve Falkenburg.
   43463 
   43464         Add Cairo build requirements to WebCore.vcproj under a new
   43465         set of targets.  Exclude Cairo elements from normal CG build.
   43466         Exclude CG elements from Cairo builds.
   43467         (http://bugs.webkit.org/show_bug.cgi?id=17300)
   43468 
   43469         * WebCore.vcproj/WebCore.vcproj:
   43470         * WebCore.vcproj/webcore.vsprops: Added.
   43471 
   43472 2008-03-07  Darin Adler  <darin (a] apple.com>
   43473 
   43474         Reviewed by Adam.
   43475 
   43476         - eliminated WebCoreFrameBridge runOpenPanel
   43477 
   43478         * page/ChromeClient.h: Added runOpenPanel function.
   43479         * page/mac/ChromeMac.mm:
   43480         (WebCore::ChromeClient::runOpenPanel): Added.
   43481         * platform/FileChooser.cpp:
   43482         (WebCore::FileChooser::FileChooser): Moved this here. It's no longer platform-specific.
   43483         Also start the refcount at 1.
   43484         (WebCore::FileChooser::create): Added adoptRef since the refcount no starts at one.
   43485         (WebCore::FileChooser::~FileChooser): Moved here. No longer platform-specific.
   43486         * platform/FileChooser.h: Removed m_controller, which was Macintosh-specific.
   43487         * platform/gtk/FileChooserGtk.cpp: Removed FileChooser constructor and destructor,
   43488         since they are no longer platform-specific.
   43489         * platform/qt/FileChooserQt.cpp: Ditto.
   43490         * platform/win/FileChooserWin.cpp: Ditto.
   43491         * platform/wx/TemporaryLinkStubs.cpp: Ditto.
   43492         * platform/mac/FileChooserMac.mm:
   43493         (WebCore::FileChooser::openFileChooser): Call the chrome client instead of the
   43494         bridge to run the open panel. Allows us to get rid of the WebCoreOpenPanelController
   43495         class and m_controller data member and move the cosntrutor/destructor to platform-
   43496         independent code.
   43497 
   43498 2008-03-07  Adam Roben  <aroben (a] apple.com>
   43499 
   43500         Add JavaScriptDebugServer
   43501 
   43502         This class is a singleton which allows one or more
   43503         JavaScriptDebugListeners to receive callbacks during JavaScript
   43504         execution.
   43505 
   43506         Right now all listeners receive callbacks for all Pages in the
   43507         process. Eventually we will want to support listeners registering for
   43508         callbacks for specific Pages (e.g., the Inspector will want to listen
   43509         for execution in just the Page it's inspecting).
   43510 
   43511         Pages notify the JavaScriptDebugServer when they are created so that
   43512         it can install itself as the Page's debugger.
   43513 
   43514         Reviewed by Darin.
   43515 
   43516         * GNUMakefile.am: Added new files to project.
   43517         * WebCore.pro: Ditto.
   43518         * WebCore.vcproj/WebCore.vcproj: Ditto.
   43519         * WebCore.xcodeproj/project.pbxproj: Ditto.
   43520         * WebCoreSources.bkl: Ditto.
   43521         * page/JavaScriptDebugListener.h: Added.
   43522         * page/JavaScriptDebugServer.cpp: Added.
   43523         (WebCore::toFrame):
   43524         (WebCore::JavaScriptDebugServer::shared):
   43525         (WebCore::JavaScriptDebugServer::JavaScriptDebugServer):
   43526         (WebCore::JavaScriptDebugServer::~JavaScriptDebugServer):
   43527         (WebCore::JavaScriptDebugServer::addListener): Registers as the
   43528         debugger for all Pages if we're adding our first listener.
   43529         (WebCore::JavaScriptDebugServer::removeListener): Deregisters as the
   43530         debugger for all Pages if we're removing our last listner.
   43531         (WebCore::JavaScriptDebugServer::pageCreated): Registers as the
   43532         debugger for the newly created Page if we have any listeners.
   43533         (WebCore::dispatchDidParseSource): Helper function.
   43534         (WebCore::dispatchFailedToParseSource): Ditto.
   43535         (WebCore::JavaScriptDebugServer::sourceParsed): Call
   43536         dispatchDidParseSource or dispatchFailedToParseSource depending on
   43537         whether there was an error or not.
   43538         (WebCore::JavaScriptDebugServer::dispatchFunctionToListeners): Calls
   43539         the passed-in JavaScriptExecutionCallback on each listener, guarding
   43540         against re-entry.
   43541         (WebCore::JavaScriptDebugServer::callEvent): Dispatch didEnterCallFrame.
   43542         (WebCore::JavaScriptDebugServer::atStatement): Dispatch willExecuteStatement.
   43543         (WebCore::JavaScriptDebugServer::returnEvent): Dispatch willLeaveCallFrame.
   43544         (WebCore::JavaScriptDebugServer::exception): Dispatch exceptionWasRaised.
   43545         * page/JavaScriptDebugServer.h: Added.
   43546         * page/Page.cpp:
   43547         (WebCore::Page::Page): Tell the shared JavaScriptDebugServer we were
   43548         created so it can register as our debugger if needed.
   43549 
   43550 2008-03-07  Darin Adler  <darin (a] apple.com>
   43551 
   43552         Reviewed by Brady.
   43553 
   43554         - fix a theoretical problem with the visited-link hash table by avoiding collision
   43555           with the special "deleted" value
   43556         - improve efficiency of with the visited-link hash table by not hashing twice
   43557 
   43558         * page/PageGroup.cpp:
   43559         (WebCore::avoidDeletedValue): Added. Makes sure we never try to use the "all ones"
   43560         value, since the hash table uses that for deleted hash table entries.
   43561         (WebCore::PageGroup::isLinkVisited): Call avoidDeletedValue before using the hash
   43562         value with the HashSet.
   43563         (WebCore::PageGroup::addVisitedLink): Ditto.
   43564 
   43565         * page/PageGroup.h: Added a new hash function, AlreadyHashed, for unsigned integer
   43566         values. This assumes that the value is already a hash value, and doesn't try to
   43567         hash it again. Used this for m_visitedLinkHashes.
   43568 
   43569 2008-03-07  Simon Hausmann  <hausmann (a] webkit.org>
   43570 
   43571         Fix the Qt build.
   43572 
   43573         * WebCore.pro:
   43574 
   43575 2008-03-06  Sam Weinig  <sam (a] webkit.org> with a little help from Oliver Hunt  <oliver (a] apple.com>
   43576 
   43577         Reviewed by Mitz.
   43578 
   43579         Implement the HTML5 canvas tainting rules to prevent potential data leakage
   43580 
   43581         Added originClean to HTMLCanvasElement and CanvasPattern
   43582         to track whether a canvas (or pattern) is tainted by remote
   43583         data.
   43584         Use originClean flag to determine whether getImageData should
   43585         return, well, image data.
   43586 
   43587         Test: http/tests/security/canvas-remote-read-remote-image.html
   43588 
   43589         * html/CanvasPattern.cpp:
   43590         (WebCore::CanvasPattern::CanvasPattern):
   43591         * html/CanvasPattern.h:
   43592         * html/CanvasRenderingContext2D.cpp:
   43593         (WebCore::CanvasRenderingContext2D::setStrokeStyle):
   43594         (WebCore::CanvasRenderingContext2D::setFillStyle):
   43595         (WebCore::CanvasRenderingContext2D::checkOrigin):
   43596         (WebCore::CanvasRenderingContext2D::drawImage):
   43597         (WebCore::CanvasRenderingContext2D::drawImageFromRect):
   43598         (WebCore::CanvasRenderingContext2D::createPattern):
   43599         (WebCore::CanvasRenderingContext2D::printSecurityExceptionMessage):
   43600         (WebCore::CanvasRenderingContext2D::getImageData):
   43601         * html/CanvasRenderingContext2D.h:
   43602         * html/HTMLCanvasElement.cpp:
   43603         (WebCore::HTMLCanvasElement::HTMLCanvasElement):
   43604         * html/HTMLCanvasElement.h:
   43605         (WebCore::HTMLCanvasElement::setOriginTainted):
   43606         (WebCore::HTMLCanvasElement::originClean):
   43607 
   43608 2008-03-06  Anders Carlsson  <andersca (a] apple.com>
   43609 
   43610         Reviewed by Jon.
   43611 
   43612         Templatize the JNI call code to reduce the amount of code that has
   43613         to be duplicated.
   43614 
   43615         * bridge/jni/jni_class.cpp:
   43616         (JavaClass::JavaClass):
   43617         * bridge/jni/jni_instance.cpp:
   43618         (JavaInstance::stringValue):
   43619         (JavaInstance::numberValue):
   43620         (JavaInstance::booleanValue):
   43621         (JavaInstance::invokeMethod):
   43622         * bridge/jni/jni_jsobject.cpp:
   43623         (JavaJSObject::convertJObjectToValue):
   43624         * bridge/jni/jni_runtime.cpp:
   43625         (JavaField::JavaField):
   43626         (JavaMethod::JavaMethod):
   43627         * bridge/jni/jni_utility.cpp:
   43628         * bridge/jni/jni_utility.h:
   43629         (KJS::Bindings::):
   43630         (KJS::Bindings::callJNIMethodIDA):
   43631         (KJS::Bindings::callJNIMethodV):
   43632         (KJS::Bindings::callJNIMethod):
   43633         (KJS::Bindings::callJNIStaticMethod):
   43634 
   43635 2008-03-06  Darin Adler  <darin (a] apple.com>
   43636 
   43637         Reviewed by Mitz.
   43638 
   43639         - fix regression test failures from the visited-link change
   43640 
   43641         * WebCore.base.exp: Export PageGroup::setShouldTrackVisitedLinks.
   43642         * page/PageGroup.cpp:
   43643         (WebCore::PageGroup::addVisitedLink): Do nothing and return early
   43644         if shouldTrackVisitedLinks is false.
   43645         (WebCore::PageGroup::removeVisitedLinks): Reset m_visitedLinksPopulated
   43646         so the next time a link is queried this will be populated from history.
   43647         (WebCore::PageGroup::setShouldTrackVisitedLinks): Added.
   43648         * page/PageGroup.h: Added setShouldTrackVisitedLinks. This is global
   43649         for now, but it would be better if it was per-page-group instead.
   43650 
   43651 2008-03-06  Adele Peterson  <adele (a] apple.com>
   43652 
   43653         Reviewed by Darin.
   43654 
   43655         Fixes for for <rdar://problem/5785892> Implement activeElement attribute for HTMLDocument (HTML5)
   43656         and <rdar://problem/5785895> Implement hasFocus() for HTMLDocument (HTML5)
   43657 
   43658         Tests: fast/dom/HTMLDocument/activeElement.html
   43659                fast/dom/HTMLDocument/hasFocus.html
   43660 
   43661         * html/HTMLDocument.cpp:
   43662         (WebCore::HTMLDocument::activeElement): Added. Returns the focused element, or the body element if nothing's focused.
   43663         (WebCore::HTMLDocument::hasFocus): Added. Returns whether or not the document has focus (inclusive of sub-frames).
   43664         * html/HTMLDocument.h: Added methods for activeElement and hasFocus.
   43665         * html/HTMLDocument.idl: Added definitions for activeElement and hasFocus.
   43666 
   43667 2008-03-06  Dan Bernstein  <mitz (a] apple.com>
   43668 
   43669         Reviewed by Darin Adler.
   43670 
   43671         - fix <rdar://problem/5741981> 154008 WebKit: Some asian language font glyphs are not shown (in Mail and Entourage)
   43672 
   43673         Test: fast/text/soft-hyphen-3.html
   43674 
   43675         * rendering/bidi.cpp:
   43676         (WebCore::checkMidpoints):
   43677         (WebCore::RenderBlock::findNextLineBreak): Made 'pos' unsigned. Made the
   43678         midpoint after a hyphen always be a valid iterator, not allowing an
   43679         offset past the end of a text node. Changed the check for consecutive
   43680         soft hyphens to account for that.
   43681 
   43682 2008-03-06  Darin Adler  <darin (a] apple.com>
   43683 
   43684         - try to fix Wx build
   43685 
   43686         * WebCoreSources.bkl: Added PageGroup.cpp.
   43687 
   43688 2008-03-06  Darin Adler  <darin (a] apple.com>
   43689 
   43690         - fix some builds
   43691 
   43692         * GNUmakefile.am: Added PageGroup.cpp.
   43693         * WebCore.base.exp: Removed WebCoreHistory.
   43694         * WebCore.pro: Added PageGroup.cpp.
   43695 
   43696 2008-03-06  Alexey Proskuryakov  <ap (a] webkit.org>
   43697 
   43698         Reviewed by Darin.
   43699 
   43700         <rdar://problem/5687269> Need to create a Collator abstraction for WebCore and JavaScriptCore
   43701         
   43702         * ForwardingHeaders/wtf/unicode/Collator.h: Added.
   43703         * xml/XSLTUnicodeSort.cpp:
   43704         (WebCore::xsltUnicodeSortFunction):
   43705         * xml/XSLTUnicodeSort.h:
   43706 
   43707 2008-03-06  Darin Adler  <darin (a] apple.com>
   43708 
   43709         Reviewed by Mitz.
   43710 
   43711         - fix http://bugs.webkit.org/show_bug.cgi?id=17526
   43712           REGRESSION: iframes are added to Safari's History menu
   43713           by separating the visited link machinery from global history
   43714 
   43715         This should also make page loading faster due to more efficient visited link coloring.
   43716 
   43717         * WebCore.base.exp: Updated.
   43718         * WebCore.vcproj/WebCore.vcproj: Added PageGroup.h/cpp, removed GlobalHistory.h/cpp.
   43719         * WebCore.xcodeproj/project.pbxproj: Ditto. Also removed WebCoreHistory.h/m.
   43720 
   43721         * css/CSSStyleSelector.cpp: Updated includes.
   43722         (WebCore::CSSStyleSelector::initElementAndPseudoState): Eliminated code to set
   43723         currentEncodedURL.
   43724         (WebCore::checkPseudoState): Moved most of the code inside a new
   43725         PageGroup::isLinkVisited function.
   43726         (WebCore::CSSStyleSelector::canShareStyleWithElement): Tightened code a bit by using
   43727         references and only getting colors when needed.
   43728         (WebCore::CSSStyleSelector::getColorFromPrimitiveValue): Ditto.
   43729         * css/CSSStyleSelector.h: Removed EncodedURL, m_encodedURL, and setEncodedURL.
   43730 
   43731         * dom/Document.cpp:
   43732         (WebCore::Document::attach): Removed call to setEncodedURL.
   43733         (WebCore::Document::setURL): Ditto.
   43734         (WebCore::Document::recalcStyleSelector): Ditto.
   43735 
   43736         * loader/FrameLoader.cpp:
   43737         (WebCore::FrameLoader::addBackForwardItemClippedAtTarget): Changed code to use
   43738         early exit idiom to be a little more readable.
   43739         (WebCore::FrameLoader::urlsMatchItem): Change to use a reference for slightly
   43740         better efficiency.
   43741         (WebCore::FrameLoader::goToItem): Use early exit idiom to be a little more
   43742         readable.
   43743         (WebCore::FrameLoader::updateHistoryForStandardLoad): Moved history code back
   43744         in here and got rid of the helper function updateGlobalHistory, restoring the
   43745         logic before r30549. Also added a call to the new addVisitedLink function.
   43746         (WebCore::FrameLoader::updateHistoryForClientRedirect): Added code to call
   43747         addVisitedLink here.
   43748         (WebCore::FrameLoader::updateHistoryForBackForwardNavigation): Removed comment.
   43749         (WebCore::FrameLoader::updateHistoryForReload): Removed call to
   43750         updateGlobalHistory; we can just go without updating global history or
   43751         visited links here, at least for now, since it's not clear that a reload
   43752         is a "history event".
   43753         (WebCore::FrameLoader::updateHistoryForRedirectWithLockedHistory): Moved
   43754         history code back where it was, and added the call to addVisitedLink, just
   43755         as in updateHistoryForStandardLoad above.
   43756         * loader/FrameLoader.h: Removed updateGlobalHistory function.
   43757 
   43758         * page/Chrome.cpp:
   43759         (WebCore::ChromeClient::populateVisitedLinks): Added. Empty placeholder so we
   43760         don't have to implement this for every port all at once.
   43761         (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer): Changed to use the
   43762         new PageGroup class.
   43763         * page/ChromeClient.h: Added populateVisitedLinks function, used to fill the
   43764         visited links set from the global history at application startup time.
   43765 
   43766         * page/FrameTree.cpp:
   43767         (WebCore::FrameTree::find): Updated to use the new PageGroup class.
   43768 
   43769         * page/GlobalHistory.h: Removed.
   43770         * page/win/GlobalHistoryWin.cpp: Removed.
   43771         * page/mac/GlobalHistoryMac.mm: Removed.
   43772         * platform/mac/WebCoreHistory.h: Removed.
   43773         * platform/mac/WebCoreHistory.m: Removed.
   43774         * platform/win/WebCoreHistory.cpp: Removed.
   43775         * platform/win/WebCoreHistory.h: Removed.
   43776 
   43777         * page/Page.cpp:
   43778         (WebCore::Page::Page): Set m_group to 0.
   43779         (WebCore::Page::setGroupName): Set up m_group. If the page is not in any
   43780         group, set it to 0 for now to postpone the cost of creating a group.
   43781         (WebCore::Page::initGroup): Added. Sets m_group to point to a single-page
   43782         group; used when getting a group.
   43783         (WebCore::Page::removeAllVisitedLinks): Added. Calls removeVisitedLinks
   43784         on all page groups.
   43785         * page/Page.h: Moved enums inside the WebCore namespace. Removed the
   43786         frameNamespace function and instead added the group and groupPtr functions.
   43787 
   43788         * page/PageGroup.cpp: Added. Contains all the visited code from the
   43789         CSSStyleSelector in the isVisitedLink function, but more efficient because
   43790         we don't allocate memory for the buffer.
   43791         * page/PageGroup.h: Added.
   43792 
   43793         * platform/gtk/TemporaryLinkStubs.cpp: Removed historyContains.
   43794         * platform/qt/TemporaryLinkStubs.cpp: Removed unneeded include.
   43795         * platform/wx/TemporaryLinkStubs.cpp: Removed historyContains.
   43796 
   43797 2008-03-06  Mark Rowe  <mrowe (a] apple.com>
   43798 
   43799         Fix 64-bit Mac build.
   43800 
   43801         * WebCore.xcodeproj/project.pbxproj:  Exclude _NPN symbols from the exports list as they
   43802         are compiled out of 64-bit builds.
   43803 
   43804 2008-03-06  Mark Rowe  <mrowe (a] apple.com>
   43805 
   43806         Leopard build fix.
   43807 
   43808         * WebCore.base.exp:
   43809 
   43810 2008-03-05  Kevin Ollivier  <kevino (a] theolliviers.com>
   43811 
   43812         Fix the wx build after the bindings move.
   43813 
   43814         * WebCoreSources.bkl:
   43815         * webcore-base.bkl:
   43816         * webcore-wx.bkl:
   43817 
   43818 2008-03-05  Dan Bernstein  <mitz (a] apple.com>
   43819 
   43820         Reviewed by Adele Peterson.
   43821 
   43822         - fix "background-position: inherit"
   43823 
   43824         * css/CSSStyleSelector.cpp:
   43825         Made HANDLE_MULTILAYER_INHERIT_AND_INITIAL fall through and added
   43826         a return statement in HANDLE_MULTILAYER_VALUE. Also removed an unused
   43827         macro.
   43828 
   43829 2008-03-05  Alp Toker  <alp (a] atoker.com>
   43830 
   43831         Add a missing make dependency for derived sources to improve
   43832         autotools build dependency tracking.
   43833 
   43834         Issue spotted by Ori Bernstein.
   43835 
   43836         * GNUmakefile.am:
   43837 
   43838 2008-03-05  Alp Toker  <alp (a] atoker.com>
   43839 
   43840         GTK+ build fix for breakage introduced in r30800.
   43841 
   43842         Track moved bridge sources from JavaScriptCore to WebCore.
   43843 
   43844         * GNUmakefile.am:
   43845 
   43846 2008-03-05  Justin Garcia  <justin.garcia (a] apple.com>
   43847 
   43848         Reviewed by Darin.
   43849 
   43850         One part of fix for:
   43851         <rdar://problem/5780697> Copying content with percentage based rules in a style sheet will cause fidelity issues
   43852 
   43853         * editing/markup.cpp:
   43854         (WebCore::appendStartMarkup): Styles from matched rules should take precedence over those in
   43855         inline style declarations, not the other way around. 
   43856 
   43857 2008-03-05  Anders Carlsson  <andersca (a] apple.com>
   43858 
   43859         Reviewed by Darin.
   43860 
   43861         Move JNI specific code from runtime_root over to jni_jsobject, where it is used.
   43862 
   43863         * bridge/jni/jni_jsobject.cpp:
   43864         (completedJavaScriptAccess):
   43865         (initializeJavaScriptAccessLock):
   43866         (lockJavaScriptAccess):
   43867         (unlockJavaScriptAccess):
   43868         (dispatchToJavaScriptThread):
   43869         (performJavaScriptAccess):
   43870         (JavaJSObject::initializeJNIThreading):
   43871         (isJavaScriptThread):
   43872         (JavaJSObject::invoke):
   43873         * bridge/jni/jni_jsobject.h:
   43874         * bridge/runtime_root.cpp:
   43875         * bridge/runtime_root.h:
   43876         * page/mac/WebCoreFrameBridge.mm:
   43877         (-[WebCoreFrameBridge init]):
   43878 
   43879 2008-03-05  Darin Adler  <darin (a] apple.com>
   43880 
   43881         Reviewed by Sam.
   43882 
   43883         - add functions giving offsets within a KURL, slated to replace the
   43884           EncodedURL object in CSSStyleSelector (in a future "visited link" change)
   43885         - changed all KURL data members names to use the traditional m_ prefix
   43886         - initialize all members to 0 in invalid KURLs rather than having all
   43887           functions check m_isValid
   43888 
   43889         * platform/KURL.cpp:
   43890         (WebCore::KURL::invalidate): Added. Initializes all the fields except for
   43891         m_string to the "invalid" values. For use in the empty constructor and
   43892         in the init and parse functions.
   43893         (WebCore::KURL::init): Tweaked comments. Changed all code paths that return
   43894         early to use the invalidate() function. Updated for member variable name
   43895         changes.
   43896         (WebCore::KURL::hasPath): Updated for member variable name changes.
   43897         Remove now-unneeded check of m_isValid.
   43898         (WebCore::KURL::lastPathComponent): Ditto.
   43899         (WebCore::KURL::protocol): Ditto.
   43900         (WebCore::KURL::host): Ditto.
   43901         (WebCore::KURL::port): Ditto.
   43902         (WebCore::KURL::pass): Ditto.
   43903         (WebCore::KURL::user): Ditto.
   43904         (WebCore::KURL::ref): Ditto.
   43905         (WebCore::KURL::hasRef): Ditto.
   43906         (WebCore::KURL::protocolIs): Ditto.
   43907         (WebCore::KURL::query): Ditto.
   43908         (WebCore::KURL::path): Ditto.
   43909         (WebCore::KURL::setProtocol): Ditto.
   43910         (WebCore::KURL::setHost): Ditto.
   43911         (WebCore::KURL::setPort): Ditto.
   43912         (WebCore::KURL::setHostAndPort): Ditto.
   43913         (WebCore::KURL::setUser): Ditto.
   43914         (WebCore::KURL::setPass): Ditto.
   43915         (WebCore::KURL::setRef): Ditto.
   43916         (WebCore::KURL::setQuery): Ditto.
   43917         (WebCore::KURL::setPath): Ditto.
   43918         (WebCore::KURL::prettyURL): Ditto.
   43919         (WebCore::copyPathRemovingDots): Removed braces to match our code style.
   43920         (WebCore::KURL::parse): Changed all code paths that return early to use
   43921         the invalidate function. Moved code to set m_isValid to true to the very
   43922         end of the function. Removed braces to match our code style. Removed an
   43923         extra copy of the path/query/fragment code (there were two identical copies
   43924         in the two sides of an if statement). Removed some commented-out code.
   43925         Reversed an if statment. Added code to set the new m_pathAfterLastSlash
   43926         field. Updated for member variable name changes.
   43927         (WebCore::equalIgnoringRef): Updated for member variable name changes.
   43928         (WebCore::KURL::isHierarchical): Ditto.
   43929 
   43930         * platform/KURL.h: Added a FIXME about ref vs. fragment. Made the empty
   43931         constructor inline and called the new invalidate function. Added new
   43932         pathStart, pathEnd, and pathAfterLastSlash functions, for use in the
   43933         new visited link code. Added an invalidate function. Renamed all the
   43934         data members to use the m_ prefix.
   43935 
   43936         * WebCore.base.exp: Updated.
   43937 
   43938 2008-03-05  Anders Carlsson  <andersca (a] apple.com>
   43939 
   43940         Reviewed by Sam.
   43941 
   43942         * WebCore.xcodeproj/project.pbxproj:
   43943         Change jni_jsobject.cpp to be Obj-C++ for now. The plan is to merge 
   43944         this with jni_objc.mm and create jni_jsobject.mm.
   43945         
   43946         * bridge/jni/jni_jsobject.cpp:
   43947         (createRootObject):
   43948         Move createRootObject here from WebCoreFrameBridge.
   43949         
   43950         (JavaJSObject::createNative):
   43951         Call the newly added createRootObject function.
   43952         
   43953         * bridge/runtime_root.cpp:
   43954         (KJS::Bindings::RootObject::initializeJNIThreading):
   43955         * bridge/runtime_root.h:
   43956         setCreateRootObject no longer takes a root object, rename it to initializeJNIThreading.
   43957 
   43958         * page/mac/FrameMac.mm:
   43959         (WebCore::Frame::createScriptInstanceForWidget):
   43960         Just call Frame::createRootObject here.
   43961         
   43962         * page/mac/WebCoreFrameBridge.mm:
   43963         (-[WebCoreFrameBridge init]):
   43964         Call initializeJNIThreading.
   43965 
   43966 2008-03-05  Anders Carlsson  <andersca (a] apple.com>
   43967 
   43968         Reviewed by Sam.
   43969 
   43970         Change some static class variables to be regular static variables,
   43971         making it easier to move the chunk of mac-specific code out of runtime_root.[cpp|h]
   43972 
   43973         * bridge/runtime_root.cpp:
   43974         (KJS::Bindings::completedJavaScriptAccess):
   43975         (KJS::Bindings::RootObject::dispatchToJavaScriptThread):
   43976         (KJS::Bindings::performJavaScriptAccess):
   43977         (KJS::Bindings::RootObject::createRootObject):
   43978         (KJS::Bindings::RootObject::runLoop):
   43979         (KJS::Bindings::RootObject::setCreateRootObject):
   43980         * bridge/runtime_root.h:
   43981 
   43982 2008-03-05  Brent Fulgham <bfulgham (a] gmail.com>
   43983 
   43984         Reviewed by Adam Roben.
   43985 
   43986         Modify source files to use the USE(SAFARI_THEME) macro, rather than
   43987         USE_SAFARI_THEME.  (http://bugs.webkit.org/show_bug.cgi?id=17683)
   43988 
   43989         * WebCore/platform/win/PlatformScrollBarSafari.cpp
   43990         * WebCore/rendering/RenderThemeSafari.cpp
   43991         * WebCore/rendering/RenderThemeSafari.h
   43992         * config.h: Move definition of WTF_USE_SAFARI_THEME here 
   43993 
   43994 2008-03-05  Brady Eidson  <beidson (a] apple.com>
   43995 
   43996         Reviewed by Alexey and Mark Rowe
   43997 
   43998         Fix for <rdar://problem/5778247> - Reproducible crash on storage/execute-sql-args.html
   43999 
   44000         DatabaseThread::unscheduleDatabaseTasks() manually filters through a MessageQueue,
   44001         removing particular items for Databases that were shutting down.
   44002 
   44003         This filtering operation is not atomic, and therefore causes a race condition with the
   44004         database thread waking up and reading from the message queue.  
   44005 
   44006         The end result was an attempt to dereference a null DatabaseTask.  Timing-wise, this never
   44007         seemed to happen in a debug build, otherwise an assertion would've caught it.  Replacing that
   44008         assertion with a crash in a release build is what revealed this bug.
   44009 
   44010         The fix for the above symptom was entirely in WTF::MessageQueue in JSCore.  With this fix in 
   44011         place, another crash popped up in the layout tests that was related to dereferencing a 
   44012         deallocated object - simply because SQLTransaction had a raw pointer to it's Database object 
   44013         when it needed to be a ref pointer.
   44014 
   44015         * storage/SQLTransaction.cpp:
   44016         (WebCore::SQLTransaction::runCurrentStatement):
   44017         * storage/SQLTransaction.h: Change m_database to be a RefPtr
   44018         (WebCore::SQLTransaction::database):
   44019 
   44020 2008-03-05  Mark Rowe  <mrowe (a] apple.com>
   44021 
   44022         Build fix.
   44023 
   44024         * WebCore.base.exp:  Remove symbol that no longer exists from the exports file.
   44025 
   44026 2008-03-05  Adam Roben  <aroben (a] apple.com>
   44027 
   44028         Export a header/symbol for WebKit
   44029 
   44030         Reviewed by Kevin M.
   44031 
   44032         * WebCore.base.exp:
   44033         * WebCore.xcodeproj/project.pbxproj:
   44034 
   44035 2008-03-05  Adam Roben  <aroben (a] apple.com>
   44036 
   44037         Move WebCoreScriptDebugger up to WebKit
   44038 
   44039         Reviewed by Darin.
   44040 
   44041         * WebCore.base.exp: Exported some functions used by
   44042         WebCoreScriptDebugger, and sorted the list.
   44043         * WebCore.xcodeproj/project.pbxproj: Removed
   44044         WebCoreScriptDebugger.{h,mm} from the project and marked
   44045         a few headers private so that WebKit can use them.
   44046         * page/mac/WebCoreScriptDebugger.h: Removed.
   44047         * page/mac/WebCoreScriptDebugger.mm: Removed.
   44048 
   44049 2008-03-05  Anders Carlsson  <andersca (a] apple.com>
   44050 
   44051         Build bridge/. Copy some headers over to WebKit as part of the post-build step.
   44052         
   44053         * WebCore.vcproj/WebCore.vcproj:
   44054 
   44055 2008-03-05  Anders Carlsson  <andersca (a] apple.com>
   44056 
   44057         Reviewed by Geoff.
   44058 
   44059         * WebCore.base.exp:
   44060         Add the NPN and KJS methods.
   44061         
   44062         * WebCore.xcodeproj/project.pbxproj:
   44063         Bring in bridge/
   44064 
   44065         * config.h:
   44066         Add HAVE_JNI define.
   44067         
   44068         * bindings/js/kjs_html.cpp:
   44069         * bindings/objc/DOMInternal.mm:
   44070         * bindings/objc/DOMUtility.mm:
   44071         * bindings/objc/WebScriptObject.mm:
   44072         * html/HTMLAppletElement.cpp:
   44073         * html/HTMLEmbedElement.cpp:
   44074         * html/HTMLObjectElement.cpp:
   44075         * html/HTMLPlugInElement.cpp:
   44076         * page/Frame.cpp:
   44077         * page/mac/FrameMac.mm:
   44078         * page/mac/WebCoreFrameBridge.mm:
   44079         * page/mac/WebCoreScriptDebugger.mm:
   44080         * plugins/win/PluginViewWin.cpp:
   44081         Include file changes.
   44082 
   44083 2008-03-04  Anders Carlsson  <andersca (a] apple.com>
   44084 
   44085         Reviewed by Sam.
   44086 
   44087         Rewrite NPRuntime string conversion routines to use WebCore::String
   44088         
   44089         * bridge/NP_jsobject.cpp:
   44090         (_NPN_Evaluate):
   44091         * bridge/c/c_utility.cpp:
   44092         (KJS::Bindings::convertUTF8ToUTF16WithLatin1Fallback):
   44093         (KJS::Bindings::convertNPVariantToValue):
   44094         (KJS::Bindings::convertNPStringToUTF16):
   44095         (KJS::Bindings::identifierFromNPIdentifier):
   44096         * bridge/c/c_utility.h:
   44097 
   44098 2008-03-05  Oliver Hunt  <oliver (a] apple.com>
   44099 
   44100         Reviewed by Alexey P.
   44101 
   44102         Small performance improvement to putImageData (3-5% on assignment in my tests)
   44103 
   44104         * html/CanvasPixelArray.h:
   44105         (WebCore::CanvasPixelArray::set):
   44106 
   44107 2008-03-04  Sam Weinig  <sam (a] webkit.org>
   44108 
   44109         Reviewed by Adele.
   44110 
   44111         * bindings/js/JSXMLHttpRequest.h: Remove unnecessary override of toBoolean.
   44112 
   44113 2008-03-04  Maciej Stachowiak  <mjs (a] apple.com>
   44114 
   44115         Reviewed by Sam and Oliver.
   44116 
   44117         - fixed http://bugs.webkit.org/show_bug.cgi?id=16289
   44118         - fixed Acid3 tests 26 and 27 (not exactly the same issue but related)
   44119 
   44120         * bindings/js/JSNodeCustom.cpp:
   44121         (WebCore::JSNode::mark): When marking a node that's in-document,
   44122         mark the owner document if it hasn't been already. This means holding on
   44123         to a single node from an unreferenced document now keeps the whole document alive.
   44124         
   44125         We are now at 90/100 on Acid3.
   44126 
   44127 2008-03-04  Sam Weinig  <sam (a] webkit.org>
   44128 
   44129         Qt build fix.
   44130 
   44131         * page/qt/FrameQt.cpp:
   44132 
   44133 2008-03-04  Sam Weinig  <sam (a] webkit.org>
   44134 
   44135         Reviewed by Mark Rowe.
   44136 
   44137         Rename kjs_window to JSDOMWindowBase.
   44138 
   44139         - Remove all unnecessary includes of JSDOMWindowBase.h, we prefer including
   44140           JSDOMWindow.h
   44141 
   44142         * ChangeLog:
   44143         * DerivedSources.make:
   44144         * GNUmakefile.am:
   44145         * WebCore.pro:
   44146         * WebCore.vcproj/WebCore.vcproj:
   44147         * WebCore.xcodeproj/project.pbxproj:
   44148         * WebCoreSources.bkl:
   44149         * bindings/js/JSCustomVoidCallback.cpp:
   44150         * bindings/js/JSCustomXPathNSResolver.cpp:
   44151         * bindings/js/JSDOMWindowBase.cpp: Copied from bindings/js/kjs_window.cpp.
   44152         * bindings/js/JSDOMWindowBase.h: Copied from bindings/js/kjs_window.h.
   44153         * bindings/js/JSDOMWindowCustom.cpp:
   44154         * bindings/js/JSDatabaseCustom.cpp:
   44155         * bindings/js/JSEventTargetBase.cpp:
   44156         * bindings/js/JSEventTargetBase.h:
   44157         * bindings/js/JSEventTargetNode.cpp:
   44158         * bindings/js/JSHTMLDocumentCustom.cpp:
   44159         * bindings/js/JSHTMLFrameSetElementCustom.cpp:
   44160         * bindings/js/JSHistoryCustom.cpp:
   44161         * bindings/js/JSLocation.cpp:
   44162         * bindings/js/JSSQLTransactionCustom.cpp:
   44163         * bindings/js/JSXMLHttpRequest.cpp:
   44164         * bindings/js/ScheduledAction.cpp:
   44165         * bindings/js/kjs_binding.cpp:
   44166         * bindings/js/kjs_events.cpp:
   44167         * bindings/js/kjs_navigator.cpp:
   44168         * bindings/js/kjs_proxy.cpp:
   44169         * bindings/js/kjs_window.cpp: Removed.
   44170         * bindings/js/kjs_window.h: Removed.
   44171         * bindings/scripts/CodeGeneratorJS.pm:
   44172         * history/CachedPage.cpp:
   44173         * loader/FrameLoader.cpp:
   44174         * page/Chrome.cpp:
   44175         * page/InspectorController.cpp:
   44176         * page/mac/FrameMac.mm:
   44177         * page/mac/WebCoreFrameBridge.mm:
   44178         * page/qt/FrameQt.cpp:
   44179         * page/win/FrameWin.cpp:
   44180         * plugins/win/PluginViewWin.cpp:
   44181 
   44182 2008-03-04  Mark Rowe  <mrowe (a] apple.com>
   44183 
   44184         Speculative Qt build fix.
   44185 
   44186         * platform/qt/PasteboardQt.cpp:
   44187 
   44188 2008-03-04  Anders Carlsson  <andersca (a] apple.com>
   44189 
   44190         Reviewed by Sam.
   44191 
   44192         Update include paths. This code is not used yet.
   44193 
   44194         * bridge/NP_jsobject.cpp:
   44195         * bridge/c/c_class.cpp:
   44196         * bridge/c/c_instance.cpp:
   44197         * bridge/c/c_utility.cpp:
   44198         (KJS::Bindings::convertUTF8ToUTF16WithLatin1Fallback):
   44199         #if 0 this out for now. 
   44200         
   44201         * bridge/jni/jni_class.cpp:
   44202         * bridge/jni/jni_jsobject.cpp:
   44203         * bridge/jni/jni_objc.mm:
   44204         * bridge/jni/jni_runtime.cpp:
   44205         * bridge/jni/jni_utility.cpp:
   44206         * bridge/jni/jni_utility.h:
   44207         * bridge/npruntime.cpp:
   44208         * bridge/objc/WebScriptObject.h:
   44209         * bridge/objc/objc_class.h:
   44210         * bridge/objc/objc_instance.h:
   44211         * bridge/objc/objc_runtime.h:
   44212         * bridge/objc/objc_utility.h:
   44213         * bridge/objc/objc_utility.mm:
   44214         * bridge/runtime.cpp:
   44215         * bridge/runtime.h:
   44216         * bridge/runtime_array.cpp:
   44217         * bridge/runtime_array.h:
   44218         * bridge/runtime_method.cpp:
   44219         * bridge/runtime_method.h:
   44220         * bridge/runtime_object.cpp:
   44221         * bridge/runtime_object.h:
   44222         * bridge/runtime_root.cpp:
   44223         * bridge/runtime_root.h:
   44224 
   44225 2008-03-04  Dan Bernstein  <mitz (a] apple.com>
   44226 
   44227         Reviewed by Darin Adler.
   44228 
   44229         - fix http://bugs.webkit.org/show_bug.cgi?id=17676
   44230           <rdar://problem/5781091> REGRESSION (r30240-r30267): href attribute values with non-ASCII characters in the host part do not work
   44231 
   44232         Test: fast/encoding/url-host-name-non-ascii.html
   44233 
   44234         * platform/KURL.cpp:
   44235         (WebCore::appendEncodedHostname): Added an early return in the all-ASCII
   44236         case to avoid copying the host name twice and corrected the error
   44237         checking after calling uidna_IDNToASCII().
   44238 
   44239 2008-03-04  Sam Weinig  <sam (a] webkit.org>
   44240 
   44241         Reviewed by Dan Bernstein.
   44242 
   44243         Use JSDOMWindow exclusively instead of JSDOMWindowBase.
   44244 
   44245         * bindings/js/ScheduledAction.cpp:
   44246         (WebCore::ScheduledAction::execute):
   44247         * bindings/js/ScheduledAction.h:
   44248         * bindings/js/kjs_window.cpp:
   44249         (WebCore::JSDOMWindowBase::timerFired):
   44250 
   44251 2008-03-04  Timothy Hatcher  <timothy (a] apple.com>
   44252 
   44253         Reviewed by Darin Adler.
   44254 
   44255         <rdar://problem/5720160> Browser windows "do nothing" while modal
   44256         dialog or menu is up due to run loop modes (or while scrolling)
   44257 
   44258         Adds a new SchedulePair object that holds a runloop and the mode to use.
   44259         A HashSet of SchedulePairs is tracked by Page so it can be used for resource
   44260         loading and, in the future, maybe SharedTimerMac.
   44261 
   44262         * WebCore.base.exp: Add new exports for WebKit.
   44263         * WebCore.xcodeproj/project.pbxproj: Add new files.
   44264         * loader/mac/DocumentLoaderMac.cpp: Added.
   44265         (WebCore::scheduleAll): Call schedule all the ResourceLoader handles.
   44266         (WebCore::unscheduleAll): Call unschedule all the ResourceLoader handles.
   44267         (WebCore::DocumentLoader::schedule): Schedule all the ResourceLoaders owned by the DocumentLoader.
   44268         (WebCore::DocumentLoader::unschedule): Unschedule all the ResourceLoaders owned by the DocumentLoader.
   44269         * loader/DocumentLoader.h:
   44270         * page/Page.h:
   44271         (WebCore::Page::scheduledRunLoopPairs): Return m_scheduledRunLoopPairs.
   44272         * page/mac/PageMac.cpp:
   44273         (WebCore::Page::addSchedulePair): Add a SchedulePair to m_scheduledRunLoopPairs.
   44274         (WebCore::Page::removeSchedulePair): Removes a SchedulePair from m_scheduledRunLoopPairs.
   44275         * platform/cf/SchedulePair.cpp: Added.
   44276         * platform/cf/SchedulePair.h: Added.
   44277         * platform/mac/SchedulePairMac.mm: Added.
   44278         * platform/network/ResourceHandle.h:
   44279         * platform/network/mac/FormDataStreamMac.mm:
   44280         (WebCore::advanceCurrentStream): Use the new SchedulePair.
   44281         (WebCore::formCreate): Ditto.
   44282         (WebCore::formFinalize): Ditto.
   44283         (WebCore::formSchedule): Ditto.
   44284         (WebCore::formUnschedule): Ditto.
   44285         * platform/network/mac/ResourceHandleMac.mm:
   44286         (WebCore::ResourceHandle::start): Schedule the connection with all the SchedulePairs
   44287         that Page holds. If Page has no SchedulePairs, schedule with the current runloop, and
   44288         pick the mode based on ResourceHandle::loadsDuringCommonRunLoopModes.
   44289         (WebCore::ResourceHandle::schedule):
   44290         (WebCore::ResourceHandle::unschedule):
   44291 
   44292 2008-03-04  Sam Weinig  <sam (a] webkit.org>
   44293 
   44294         Reviewed by Darin Adler.
   44295 
   44296         Rename kjs_css to JSRGBColor.
   44297 
   44298         * DerivedSources.make:
   44299         * GNUmakefile.am:
   44300         * WebCore.pro:
   44301         * WebCore.vcproj/WebCore.vcproj:
   44302         * WebCore.xcodeproj/project.pbxproj:
   44303         * WebCoreSources.bkl:
   44304         * bindings/js/JSRGBColor.cpp: Copied from bindings/js/kjs_css.cpp.
   44305         * bindings/js/JSRGBColor.h: Copied from bindings/js/kjs_css.h.
   44306         * bindings/js/kjs_css.cpp: Removed.
   44307         * bindings/js/kjs_css.h: Removed.
   44308         * bindings/js/kjs_window.cpp:
   44309         * bindings/objc/DOMUtility.mm:
   44310         * bindings/scripts/CodeGeneratorJS.pm:
   44311 
   44312 2008-03-04  Anders Carlsson  <andersca (a] apple.com>
   44313 
   44314         Fix 64-bit build.
   44315         
   44316         * html/HTMLPlugInElement.cpp:
   44317 
   44318 2008-03-04  Nikolas Zimmermann  <zimmermann (a] kde.org>
   44319 
   44320         Reviewed by Eric & David.
   44321 
   44322         Fixes: http://bugs.webkit.org/show_bug.cgi?id=17078
   44323 
   44324         Fix getSubStringLength() handling, verified by Acid3 test 77.
   44325         Brings up Acid3 score to 88/100.
   44326 
   44327         Added test: svg/custom/acid3-test-77.html
   44328                     svg/custom/getSubStringLength.html
   44329 
   44330         * svg/SVGTextContentElement.cpp:
   44331         (WebCore::cummulatedCharacterRangeLength): Simplify some code.
   44332         (WebCore::SVGTextContentElement::getSubStringLength):
   44333 
   44334 2008-03-04  Anders Carlsson  <andersca (a] apple.com>
   44335 
   44336         Mac build fix. Neither me, Sam nor Adam know why we need to do this though :(
   44337 
   44338         * bindings/js/kjs_proxy.cpp:
   44339         (WebCore::KJSProxy::attachDebugger):
   44340         * page/Page.cpp:
   44341         (WebCore::Page::setDebuggerForAllPages):
   44342         (WebCore::Page::setDebugger):
   44343 
   44344 2008-03-04  Adam Roben  <aroben (a] apple.com>
   44345 
   44346         Add ExecState.h to ForwardingHeaders
   44347 
   44348         Reviewed by Anders.
   44349 
   44350         * ForwardingHeaders/kjs/ExecState.h: Added.
   44351         * page/Page.cpp: Touch this to force WebCore to build and the headers
   44352         to be copied.
   44353 
   44354 2008-03-04  Adam Roben  <aroben (a] apple.com>
   44355 
   44356         Make it possible to set a KJS::Debugger on all Frames in a Page and
   44357         all Pages in the process
   44358 
   44359         Reviewed by Kevin M.
   44360 
   44361         * ForwardingHeaders/kjs/debugger.h: Added.
   44362         * bindings/js/kjs_proxy.cpp:
   44363         (WebCore::KJSProxy::initScript): Attach the Page's debugger if there
   44364         is one.
   44365         (WebCore::KJSProxy::attachDebugger): Attach the passed-in debugger, or
   44366         detach any existing debugger if none was passed in.
   44367         * bindings/js/kjs_proxy.h:
   44368         * page/Page.cpp:
   44369         (WebCore::Page::Page): Initialize new member.
   44370         (WebCore::Page::setDebuggerForAllPages): Call setDebugger on each Page
   44371         in the process.
   44372         (WebCore::Page::setDebugger): Store the debugger and pass it off to
   44373         all our Frames.
   44374         * page/Page.h:
   44375 
   44376 2008-03-04  Sam Weinig  <sam (a] webkit.org>
   44377 
   44378         Reviewed by Darin Adler.
   44379 
   44380         Add ClassInfo to custom constructors so that they toString properly
   44381 
   44382         - Take this chance to remove the "Imp" from the end of JSXMLHttpRequestConstructorImp,
   44383           and XSLTProcessorConstructorImp and prefix all the classes with JS. 
   44384 
   44385         * bindings/js/JSAudioConstructor.cpp:
   44386         (WebCore::): Added ClassInfo definition.
   44387         (WebCore::JSAudioConstructor::JSAudioConstructor):
   44388         (WebCore::JSAudioConstructor::construct): Cleanup.
   44389         * bindings/js/JSAudioConstructor.h: Rename m_doc to m_document.
   44390         (WebCore::JSAudioConstructor::classInfo): Added.
   44391 
   44392         * bindings/js/JSHTMLInputElementBase.cpp: Rename HTMLInputElementBasePrototype 
   44393         to JSHTMLInputElementBasePrototype as seen if toString'ed.
   44394 
   44395         * bindings/js/JSHTMLOptionElementConstructor.cpp:
   44396         (WebCore::): Added ClassInfo definition.
   44397         * bindings/js/JSHTMLOptionElementConstructor.h:
   44398         (WebCore::JSHTMLOptionElementConstructor::classInfo): Added.
   44399 
   44400         * bindings/js/JSImageConstructor.cpp:
   44401         (WebCore::): Added ClassInfo definition.
   44402         (WebCore::JSImageConstructor::implementsConstruct): Moved here from header.
   44403         * bindings/js/JSImageConstructor.h:
   44404         (WebCore::JSImageConstructor::classInfo): Added.
   44405 
   44406         * bindings/js/JSXMLHttpRequest.cpp:
   44407         (WebCore::): Rename XMLHttpRequestPrototype  to JSXMLHttpRequestPrototype 
   44408         as seen if toString'ed.
   44409         (WebCore::JSXMLHttpRequestConstructor::JSXMLHttpRequestConstructor):
   44410         (WebCore::JSXMLHttpRequestConstructor::implementsConstruct):
   44411         (WebCore::JSXMLHttpRequestConstructor::construct):
   44412         * bindings/js/JSXMLHttpRequest.h: Renamed JSXMLHttpRequestConstructorImp to
   44413         JSXMLHttpRequestConstructor and doc to m_document and 
   44414         (WebCore::JSXMLHttpRequestConstructor::classInfo): Added.
   44415 
   44416         * bindings/js/JSXSLTProcessor.cpp:
   44417         (WebCore::): Renamed XSLTProcessorPrototype to JSXSLTProcessorPrototype and 
   44418         XSLTProcessorConstructorImp to JSXSLTProcessorConstructor.
   44419         (WebCore::JSXSLTProcessorConstructor::JSXSLTProcessorConstructor):
   44420         (WebCore::JSXSLTProcessorConstructor::implementsConstruct):
   44421         (WebCore::JSXSLTProcessorConstructor::construct):
   44422         * bindings/js/JSXSLTProcessor.h:
   44423         (WebCore::JSXSLTProcessorConstructor::classInfo): Added.
   44424 
   44425         * bindings/js/kjs_window.cpp:
   44426         (WebCore::JSDOMWindowBase::getValueProperty): Fixed to work with the new class names.
   44427 
   44428 2008-03-04  Dan Bernstein  <mitz (a] apple.com>
   44429 
   44430         Reviewed by Oliver Hunt and Geoffrey Garen.
   44431 
   44432         - fix http://bugs.webkit.org/show_bug.cgi?id=17667
   44433           <rdar://problem/5779658> REGRESSION (r30587): Document::implicitClose() not called when done loading page (Image does not get scaled to fit)
   44434 
   44435         * loader/loader.cpp:
   44436         (WebCore::Loader::didFinishLoading): Changed to call
   44437         setLoadInProgress(false) even for 4xx errors, because that triggers
   44438         load completion check.
   44439 
   44440 2008-03-04  Adele Peterson  <adele (a] apple.com>
   44441 
   44442         Reviewed by Beth.
   44443 
   44444         Fix for <rdar://problem/5779718> focus() does not work for anchor elements with no content
   44445 
   44446         If an anchor has zero size, don't exclude it from being focusable from JS, just exclude it
   44447         from being keyboard focusable (using the tab key).
   44448 
   44449         * html/HTMLAnchorElement.cpp:
   44450         (WebCore::HTMLAnchorElement::isFocusable):
   44451         (WebCore::HTMLAnchorElement::isKeyboardFocusable):
   44452 
   44453 2008-03-04  Chris Fleizach  <cfleizach (a] apple.com>
   44454 
   44455         Reviewed by Darin Adler.
   44456 
   44457         - fix <rdar://problem/5119360> ER - Seed: Google results do not have AXHeading information
   44458 
   44459         * page/mac/WebCoreAXObject.mm:
   44460         (headingLevel):
   44461         (-[WebCoreAXObject accessibilityIsIgnored]):
   44462 
   44463 2008-03-04  Sam Weinig  <sam (a] webkit.org>
   44464 
   44465         GTK+ build fix.
   44466 
   44467         * GNUmakefile.am:
   44468 
   44469 2008-03-04  Sam Weinig  <sam (a] webkit.org>
   44470 
   44471         Reviewed by Darin Adler.
   44472 
   44473         Remame ImageConstructorImp to JSImageConstructor and move it into its
   44474         own file.
   44475 
   44476         * GNUmakefile.am:
   44477         * WebCore.pro:
   44478         * WebCore.vcproj/WebCore.vcproj:
   44479         * WebCore.xcodeproj/project.pbxproj:
   44480         * WebCoreSources.bkl:
   44481         * bindings/js/JSImageConstructor.cpp: Copied from bindings/js/kjs_html.cpp.
   44482         (WebCore::JSImageConstructor::JSImageConstructor):
   44483         (WebCore::JSImageConstructor::construct):
   44484         * bindings/js/JSImageConstructor.h: Copied from bindings/js/kjs_html.h.
   44485         * bindings/js/kjs_html.cpp:
   44486         (WebCore::getRuntimeObject): Make this function static since it is only used
   44487         in this file.
   44488         * bindings/js/kjs_html.h:
   44489         * bindings/js/kjs_window.cpp:
   44490         (WebCore::JSDOMWindowBase::getValueProperty):
   44491 
   44492 2008-03-04  Adam Roben  <aroben (a] apple.com>
   44493 
   44494         Fix an uninitialized value warning in CodeGeneratorJS.pm
   44495 
   44496         * bindings/scripts/CodeGeneratorJS.pm: Remove reference to
   44497         non-existent $maybeOkParam (this was removed in r30753).
   44498 
   44499 2008-03-04  Sam Weinig  <sam (a] webkit.org>
   44500 
   44501         Reviewed by Darin Adler.
   44502 
   44503         Remove kjs_dom.{h,cpp}.
   44504 
   44505         - Removed custom toAttr, which took a boolean ok, and teach CodeGeneratorJS.pm
   44506           to us a null return value as an indication of failure. (This new logic is used
   44507           for toVoidCallback as well.)
   44508         - Move getRuntimeObject to kjs_html where a bunch of other runtime object related
   44509           functions currently live.
   44510         - Move checkNodeSecurity to kjs_binding, where other frame security functions 
   44511           currently live.
   44512         - Remove getNodeConstructor.  It had no implementation.
   44513 
   44514         * GNUmakefile.am:
   44515         * WebCore.pro:
   44516         * WebCore.vcproj/WebCore.vcproj:
   44517         * WebCore.xcodeproj/project.pbxproj:
   44518         * WebCoreSources.bkl:
   44519         * bindings/js/JSAttrCustom.cpp:
   44520         * bindings/js/JSCustomVoidCallback.cpp:
   44521         (WebCore::toVoidCallback):
   44522         * bindings/js/JSCustomVoidCallback.h:
   44523         * bindings/js/JSDatabaseCustom.cpp:
   44524         (WebCore::JSDatabase::changeVersion):
   44525         (WebCore::JSDatabase::transaction):
   44526         * bindings/js/JSElementCustom.cpp:
   44527         (WebCore::JSElement::setAttributeNode):
   44528         (WebCore::JSElement::setAttributeNodeNS):
   44529         * bindings/js/JSEventTargetBase.cpp:
   44530         (WebCore::toJS):
   44531         * bindings/js/JSEventTargetBase.h:
   44532         * bindings/js/JSHTMLAppletElementCustom.cpp:
   44533         * bindings/js/JSHTMLElementCustom.cpp:
   44534         * bindings/js/JSHTMLEmbedElementCustom.cpp:
   44535         * bindings/js/JSHTMLFormElementCustom.cpp:
   44536         * bindings/js/JSHTMLFrameElementCustom.cpp:
   44537         * bindings/js/JSHTMLIFrameElementCustom.cpp:
   44538         * bindings/js/JSHTMLObjectElementCustom.cpp:
   44539         * bindings/js/JSNamedNodeMapCustom.cpp:
   44540         * bindings/js/JSNamedNodesCollection.cpp:
   44541         * bindings/js/JSNodeFilterCustom.cpp:
   44542         * bindings/js/JSXSLTProcessor.cpp:
   44543         * bindings/js/kjs_binding.cpp:
   44544         (WebCore::checkNodeSecurity):
   44545         * bindings/js/kjs_binding.h:
   44546         * bindings/js/kjs_css.cpp:
   44547         * bindings/js/kjs_dom.cpp: Removed.
   44548         * bindings/js/kjs_dom.h: Removed.
   44549         * bindings/js/kjs_events.cpp:
   44550         * bindings/js/kjs_html.cpp:
   44551         (WebCore::getRuntimeObject):
   44552         * bindings/js/kjs_html.h:
   44553         * bindings/js/kjs_window.cpp:
   44554         * bindings/scripts/CodeGeneratorJS.pm:
   44555         * dom/Attr.idl:
   44556         * html/HTMLPlugInElement.cpp:
   44557         * page/InspectorController.cpp:
   44558 
   44559 2008-03-04  Adam Roben  <aroben (a] apple.com>
   44560 
   44561         Win/Qt/GTK+/wx build fix after r30740
   44562 
   44563         * editing/Editor.cpp: Added missing #include.
   44564         * page/qt/FrameQt.cpp: Removed Frame::dashboardRegionsChanged.
   44565         * page/win/FrameWin.cpp: Ditto.
   44566         * platform/wx/TemporaryLinkStubs.cpp: Ditto.
   44567 
   44568 2008-03-04  Alp Toker  <alp (a] atoker.com>
   44569 
   44570         GTK+ build fix for breakage introduced in r30740.
   44571 
   44572         Remove Frame::dashboardRegionsChanged(). There's now a default
   44573         implementation at ChromeClient::dashboardRegionsChanged().
   44574 
   44575         * page/gtk/FrameGtk.cpp:
   44576 
   44577 2008-03-04  Alp Toker  <alp (a] atoker.com>
   44578 
   44579         GTK+ build fix suggested by aroben. Remove an unused Mac-specific
   44580         included introduced in r30740.
   44581 
   44582         * page/ChromeClient.h:
   44583 
   44584 2008-03-04  Dan Bernstein  <mitz (a] apple.com>
   44585 
   44586         Reviewed by Sam Weinig.
   44587 
   44588         - fix <rdar://problem/5622336> Burmese text does not render on http://www.myanmarbible.com/bible/Judson/html/index.html
   44589 
   44590         Test: platform/win/fast/text/uniscribe-missing-glyph.html
   44591 
   44592         Note that default installations of Windows do not have Myanmar fonts.
   44593         What this patch does is ensure that the Myanmar and other complex
   44594         scripts are rendered as missing glyphs rather than not rendered at all.
   44595         The particular page in the bug measures the relative widths of two
   44596         rendered strings and, if they are rendered as missing glyphs, detects
   44597         that a Myanmar fonts is not available and substitutes the text with
   44598         images. By not rendering (and measuring) missing glyphs, WebKit was
   44599         throwing the page's detection code off.
   44600 
   44601         * platform/graphics/win/UniscribeController.cpp:
   44602         (WebCore::UniscribeController::shape): Removed an early return in case
   44603         shaping resulted in missing glyphs. This is now expected if font
   44604         fallback failed to produce a font containing glyphs for the character.
   44605         Also changed two resize()s to shrink()s.
   44606 
   44607 2008-03-04  Darin Adler  <darin (a] apple.com>
   44608 
   44609         Reviewed by Adam.
   44610 
   44611         - remove WebCoreFrameBridge reapplyStyles method
   44612 
   44613         * WebCore.base.exp: Added exports.
   44614         * page/mac/WebCoreFrameBridge.h: Removed WebCoreDeviceType and
   44615         reapplyStylesForDeviceType: method.
   44616         * page/mac/WebCoreFrameBridge.mm: Ditto.
   44617 
   44618 2008-03-04  Darin Adler  <darin (a] apple.com>
   44619 
   44620         Reviewed by Adam.
   44621 
   44622         - eliminate WebCoreFrameBridge createFrameViewWithNSView
   44623 
   44624         * WebCore.base.exp: Added some more exports.
   44625         * page/mac/WebCoreFrameBridge.h: Deleted createFrameViewWithNSView.
   44626         * page/mac/WebCoreFrameBridge.mm: Ditto.
   44627 
   44628 2008-03-04  Darin Adler  <darin (a] apple.com>
   44629 
   44630         Reviewed by Adam.
   44631 
   44632         - removed WebCoreFrameBridge scrollOverflowInDirection
   44633 
   44634         * WebCore.base.exp: Export function needed by WebKit.
   44635         * page/mac/WebCoreFrameBridge.h: Removed WebScrollDirection, WebScrollGranularity,
   44636         and scrollOverflowInDirection.
   44637         * page/mac/WebCoreFrameBridge.mm: Removed method.
   44638 
   44639 2008-03-04  Darin Adler  <darin (a] apple.com>
   44640 
   44641         Reviewed by Adam.
   44642 
   44643         - remove WebCoreFrameBridge installInFrame: method
   44644 
   44645         * WebCore.base.exp: Export a few symbols.
   44646         * WebCore.xcodeproj/project.pbxproj: Export a few files.
   44647         * page/mac/WebCoreFrameBridge.h: Remove installInFrame:.
   44648         * page/mac/WebCoreFrameBridge.mm: Ditto.
   44649 
   44650 2008-03-04  Darin Adler  <darin (a] apple.com>
   44651 
   44652         Reviewed by Adam.
   44653 
   44654         - remove WebCoreFrameBridge window method
   44655 
   44656         * page/mac/EventHandlerMac.mm:
   44657         (WebCore::EventHandler::sendFakeEventsAfterWidgetTracking): Get the window by calling
   44658         window on the NSView instead of using the bridge. The WebKit side wasn't doing anything
   44659         special, so a call to -[NSView window] is fine.
   44660 
   44661         * page/mac/WebCoreFrameBridge.h: Removed the window method.
   44662 
   44663 2008-03-04  Darin Adler  <darin (a] apple.com>
   44664 
   44665         Reviewed by Adam.
   44666 
   44667         - remove -[WebCoreFrameBridge dashboardRegionsChanged:]
   44668 
   44669         * WebCore.base.exp: Updated.
   44670         * page/Chrome.cpp:
   44671         (WebCore::ChromeClient::dashboardRegionsChanged): Added.
   44672         * page/ChromeClient.h: Added virtual function for dashboardRegionsChanged.
   44673         * page/Frame.h: Removed dashboardRegionsChanged function.
   44674         * page/FrameView.cpp:
   44675         (WebCore::FrameView::updateDashboardRegions): Changed to call dashboardRegionsChanged
   44676         on ChromeClient and to only call it when the regions actually changed.
   44677         * page/mac/FrameMac.mm: Removed dashboardRegionsChanged function.
   44678         * page/mac/WebCoreFrameBridge.h: Removed dashboardRegionsChanged: method.
   44679 
   44680 2008-03-04  Darin Adler  <darin (a] apple.com>
   44681 
   44682         Reviewed by Adam.
   44683 
   44684         - remove WebCoreFrameBridge issuePasteComand method
   44685 
   44686         * editing/Editor.cpp:
   44687         (WebCore::Editor::paste): Moved the Mac-specific part of this to EditorMac.
   44688         * editing/mac/EditorMac.mm:
   44689         (WebCore::Editor::paste): Added. Calls paste: on the document view (normally a
   44690         WebHTMLView). We should get rid of this eventually.
   44691         * page/Frame.h: Removed issuePasteCommand.
   44692         * page/mac/FrameMac.mm: Ditto.
   44693         * page/mac/WebCoreFrameBridge.h: Ditto.
   44694 
   44695 2008-03-04  Alexey Proskuryakov  <ap (a] webkit.org>
   44696 
   44697         Suggested by Darin, rubber-stamped by Mark.
   44698 
   44699         http://bugs.webkit.org/show_bug.cgi?id=17569
   44700         REGRESSION (r30571): Buzzword.com doesn't load
   44701 
   44702         Rolling out r30571, as determining what is wrong with it proved tricky.
   44703 
   44704         * loader/FrameLoader.cpp:
   44705         (WebCore::FrameLoader::load):
   44706         (WebCore::FrameLoader::tokenizerProcessedData):
   44707         (WebCore::FrameLoader::continueFragmentScrollAfterNavigationPolicy):
   44708 
   44709 2008-03-04  Sam Weinig  <sam (a] webkit.org>
   44710 
   44711         Build fix.
   44712 
   44713         * bindings/js/kjs_events.cpp:
   44714 
   44715 2008-03-03  Sam Weinig  <sam (a] webkit.org>
   44716 
   44717         Reviewed by Mark Rowe.
   44718 
   44719         Move JSClipboard into its own file.
   44720 
   44721         * DerivedSources.make:
   44722         * GNUmakefile.am:
   44723         * WebCore.pro:
   44724         * WebCore.vcproj/WebCore.vcproj:
   44725         * WebCore.xcodeproj/project.pbxproj:
   44726         * WebCoreSources.bkl:
   44727         * bindings/js/JSAttrCustom.cpp:
   44728         * bindings/js/JSClipboardCustom.cpp: Added.
   44729         (WebCore::JSClipboard::types):
   44730         (WebCore::JSClipboard::clearData):
   44731         (WebCore::JSClipboard::getData):
   44732         (WebCore::JSClipboard::setData):
   44733         (WebCore::JSClipboard::setDragImage):
   44734         * bindings/js/JSElementCustom.cpp:
   44735         * bindings/js/JSEventCustom.cpp:
   44736         * bindings/js/JSHTMLFrameElementCustom.cpp:
   44737         * bindings/js/JSHTMLIFrameElementCustom.cpp:
   44738         * bindings/js/kjs_events.cpp:
   44739         * bindings/js/kjs_events.h:
   44740         * bindings/js/kjs_window.cpp:
   44741         * bindings/scripts/CodeGeneratorJS.pm:
   44742         * dom/Clipboard.cpp:
   44743         (WebCore::Clipboard::setDropEffect):
   44744         (WebCore::Clipboard::setEffectAllowed):
   44745         * dom/Clipboard.idl: Added.
   44746 
   44747 2008-03-03  Sam Weinig  <sam (a] webkit.org>
   44748 
   44749         Windows build-fix.
   44750 
   44751         * page/Chrome.cpp:
   44752         * plugins/win/PluginViewWin.cpp:
   44753 
   44754 2008-03-03  Sam Weinig  <sam (a] webkit.org>
   44755 
   44756         Reviewed by Darin Adler.
   44757 
   44758         Cleanup and plumbing in preparation for the great Window split.
   44759 
   44760         - Rename KJS::Window to WebCore::JSDOMWindowBase.
   44761         - Remove KJS::Window::retrieve() and KJS::Window::retrieveWindow() and replace
   44762           with the new toJSDOMWindow().
   44763         - Remove KJS::Window::retrieveActive() and replace with explicit call to 
   44764           exec->dynamicGlobalObject() and toJSDOMWindow().
   44765 
   44766         * bindings/js/JSCustomVoidCallback.cpp:
   44767         (WebCore::toVoidCallback):.
   44768         * bindings/js/JSCustomXPathNSResolver.cpp:
   44769         (WebCore::JSCustomXPathNSResolver::create):
   44770         * bindings/js/JSDatabaseCustom.cpp:
   44771         (WebCore::JSDatabase::changeVersion):
   44772         (WebCore::JSDatabase::transaction):
   44773         * bindings/js/JSDocumentCustom.cpp:
   44774         (WebCore::JSDocument::location):
   44775         (WebCore::toJS):
   44776         * bindings/js/JSEventTargetBase.cpp:
   44777         (WebCore::jsEventTargetAddEventListener):
   44778         (WebCore::jsEventTargetRemoveEventListener):
   44779         * bindings/js/JSEventTargetNode.cpp:
   44780         (WebCore::JSEventTargetNode::setListener):
   44781         * bindings/js/JSHTMLDocumentCustom.cpp:
   44782         (WebCore::JSHTMLDocument::nameGetter):
   44783         (WebCore::JSHTMLDocument::open):
   44784         * bindings/js/JSHTMLFrameSetElementCustom.cpp:
   44785         (WebCore::JSHTMLFrameSetElement::nameGetter):
   44786         * bindings/js/JSLocation.cpp:
   44787         (WebCore::JSLocation::put):
   44788         (WebCore::jsLocationProtoFuncReplace):
   44789         (WebCore::jsLocationProtoFuncReload):
   44790         (WebCore::jsLocationProtoFuncAssign):
   44791         * bindings/js/JSLocation.h:
   44792         * bindings/js/JSSQLTransactionCustom.cpp:
   44793         (WebCore::JSSQLTransaction::executeSql):
   44794         * bindings/js/JSSVGLazyEventListener.cpp:
   44795         (WebCore::JSSVGLazyEventListener::JSSVGLazyEventListener):
   44796         (WebCore::JSSVGLazyEventListener::eventParameterName):
   44797         * bindings/js/JSSVGLazyEventListener.h:
   44798         * bindings/js/JSXMLHttpRequest.cpp:
   44799         (WebCore::JSXMLHttpRequest::putValueProperty):
   44800         (WebCore::jsXMLHttpRequestPrototypeFunctionOpen):
   44801         (WebCore::jsXMLHttpRequestPrototypeFunctionAddEventListener):
   44802         (WebCore::jsXMLHttpRequestPrototypeFunctionRemoveEventListener):
   44803         * bindings/js/ScheduledAction.cpp:
   44804         (WebCore::ScheduledAction::execute):
   44805         * bindings/js/ScheduledAction.h:
   44806         * bindings/js/kjs_binding.cpp:
   44807         (WebCore::allowsAccessFromFrame):
   44808         (WebCore::printErrorMessageForFrame):
   44809         * bindings/js/kjs_events.cpp:
   44810         (WebCore::JSAbstractEventListener::handleEvent):
   44811         (WebCore::JSUnprotectedEventListener::JSUnprotectedEventListener):
   44812         (WebCore::JSUnprotectedEventListener::~JSUnprotectedEventListener):
   44813         (WebCore::JSUnprotectedEventListener::windowObj):
   44814         (WebCore::JSEventListener::JSEventListener):
   44815         (WebCore::JSEventListener::~JSEventListener):
   44816         (WebCore::JSEventListener::windowObj):
   44817         (WebCore::JSLazyEventListener::JSLazyEventListener):
   44818         (WebCore::JSLazyEventListener::parseCode):
   44819         * bindings/js/kjs_events.h:
   44820         * bindings/js/kjs_navigator.cpp:
   44821         (WebCore::MimeType::getValueProperty):
   44822         * bindings/js/kjs_proxy.cpp:
   44823         (WebCore::KJSProxy::evaluate):
   44824         (WebCore::KJSProxy::createHTMLEventHandler):
   44825         (WebCore::KJSProxy::createSVGEventHandler):
   44826         * bindings/js/kjs_window.cpp:
   44827         (WebCore::JSDOMWindowBasePrivate::JSDOMWindowBasePrivate):
   44828         (WebCore::DOMWindowTimer::DOMWindowTimer):
   44829         (WebCore::DOMWindowTimer::action):
   44830         (WebCore::DOMWindowTimer::takeAction):
   44831         (WebCore::JSDOMWindowBase::JSDOMWindowBase):
   44832         (WebCore::JSDOMWindowBase::~JSDOMWindowBase):
   44833         (WebCore::JSDOMWindowBase::location):
   44834         (WebCore::JSDOMWindowBase::mark):
   44835         (WebCore::allowPopUp):
   44836         (WebCore::createWindow):
   44837         (WebCore::showModalDialog):
   44838         (WebCore::JSDOMWindowBase::getValueProperty):
   44839         (WebCore::JSDOMWindowBase::childFrameGetter):
   44840         (WebCore::JSDOMWindowBase::indexGetter):
   44841         (WebCore::JSDOMWindowBase::namedItemGetter):
   44842         (WebCore::JSDOMWindowBase::getOwnPropertySlot):
   44843         (WebCore::JSDOMWindowBase::put):
   44844         (WebCore::JSDOMWindowBase::allowsAccessFrom):
   44845         (WebCore::JSDOMWindowBase::allowsAccessFromNoErrorMessage):
   44846         (WebCore::JSDOMWindowBase::allowsAccessFromPrivate):
   44847         (WebCore::JSDOMWindowBase::crossDomainAccessErrorMessage):
   44848         (WebCore::JSDOMWindowBase::printErrorMessage):
   44849         (WebCore::JSDOMWindowBase::globalExec):
   44850         (WebCore::JSDOMWindowBase::shouldInterruptScript):
   44851         (WebCore::JSDOMWindowBase::setListener):
   44852         (WebCore::JSDOMWindowBase::getListener):
   44853         (WebCore::JSDOMWindowBase::findJSEventListener):
   44854         (WebCore::JSDOMWindowBase::findOrCreateJSEventListener):
   44855         (WebCore::JSDOMWindowBase::findJSUnprotectedEventListener):
   44856         (WebCore::JSDOMWindowBase::findOrCreateJSUnprotectedEventListener):
   44857         (WebCore::JSDOMWindowBase::clearHelperObjectProperties):
   44858         (WebCore::JSDOMWindowBase::clear):
   44859         (WebCore::JSDOMWindowBase::setCurrentEvent):
   44860         (WebCore::JSDOMWindowBase::currentEvent):
   44861         (WebCore::windowProtoFuncAToB):
   44862         (WebCore::windowProtoFuncBToA):
   44863         (WebCore::windowProtoFuncOpen):
   44864         (WebCore::windowProtoFuncSetTimeout):
   44865         (WebCore::windowProtoFuncClearTimeout):
   44866         (WebCore::windowProtoFuncSetInterval):
   44867         (WebCore::windowProtoFuncAddEventListener):
   44868         (WebCore::windowProtoFuncRemoveEventListener):
   44869         (WebCore::windowProtoFuncShowModalDialog):
   44870         (WebCore::windowProtoFuncNotImplemented):
   44871         (WebCore::JSDOMWindowBase::setReturnValueSlot):
   44872         (WebCore::JSDOMWindowBase::clearAllTimeouts):
   44873         (WebCore::JSDOMWindowBase::installTimeout):
   44874         (WebCore::JSDOMWindowBase::pauseTimeouts):
   44875         (WebCore::JSDOMWindowBase::resumeTimeouts):
   44876         (WebCore::JSDOMWindowBase::clearTimeout):
   44877         (WebCore::JSDOMWindowBase::timerFired):
   44878         (WebCore::JSDOMWindowBase::disconnectFrame):
   44879         (WebCore::JSDOMWindowBase::jsEventListeners):
   44880         (WebCore::JSDOMWindowBase::jsHTMLEventListeners):
   44881         (WebCore::JSDOMWindowBase::jsUnprotectedEventListeners):
   44882         (WebCore::JSDOMWindowBase::jsUnprotectedHTMLEventListeners):
   44883         (WebCore::toJS):
   44884         (WebCore::toJSDOMWindow):
   44885         (WebCore::toJSDOMWindow):
   44886         * bindings/js/kjs_window.h:
   44887         (WebCore::JSDOMWindowBase::impl):
   44888         (WebCore::JSDOMWindowBase::classInfo):
   44889         (WebCore::JSDOMWindowBase::):
   44890         * bindings/objc/DOMUtility.mm:
   44891         (KJS::createDOMWrapper):
   44892         * bindings/scripts/CodeGeneratorJS.pm:
   44893         * history/CachedPage.cpp:
   44894         (WebCore::CachedPage::CachedPage):
   44895         (WebCore::CachedPage::restore):
   44896         * page/Chrome.cpp:
   44897         (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
   44898         (WebCore::PageGroupLoadDeferrer::~PageGroupLoadDeferrer):
   44899         * page/DOMWindow.idl:
   44900         * page/Frame.cpp:
   44901         (WebCore::Frame::~Frame):
   44902         (WebCore::Frame::windowScriptNPObject):
   44903         (WebCore::Frame::pageDestroyed):
   44904         * page/InspectorController.cpp:
   44905         (WebCore::inspectedWindow):
   44906         * page/mac/FrameMac.mm:
   44907         (WebCore::Frame::windowScriptObject):
   44908         * page/mac/WebCoreFrameBridge.mm:
   44909         (updateRenderingForBindings):
   44910         * platform/SecurityOrigin.cpp:
   44911         (WebCore::SecurityOrigin::canAccess):
   44912 
   44913 2008-03-03  Kevin Ollivier  <kevino (a] theolliviers.com>
   44914 
   44915         wx build fixes after recent Frame-related changes.
   44916 
   44917         * platform/wx/PasteboardWx.cpp:
   44918         * platform/wx/TemporaryLinkStubs.cpp:
   44919 
   44920 2008-03-03  Dan Bernstein  <mitz (a] apple.com>
   44921 
   44922         Reviewed by Darin Adler.
   44923 
   44924         - make :first-letter apply to the first letter in normal flow, skipping
   44925           floats and positioned objects
   44926 
   44927         Test: fast/css/first-letter-skip-out-of-flow.html
   44928 
   44929         * rendering/RenderBlock.cpp:
   44930         (WebCore::RenderBlock::updateFirstLetter):
   44931 
   44932 2008-03-03  Ada Chan  <adachan (a] apple.com>
   44933 
   44934         Fix build.
   44935 
   44936         * plugins/win/PluginViewWin.cpp:
   44937 
   44938 2008-03-03  Mark Rowe  <mrowe (a] apple.com>
   44939 
   44940         Reviewed by Dan Bernstein.
   44941 
   44942         Fix http://bugs.webkit.org/show_bug.cgi?id=17313
   44943         Bug 17313: querySelectorAll() causing crashes when called via dojo.query() wrapper
   44944 
   44945         Node::querySelector and SelectorNodeList were not sufficiently initializing the CSSStyleSelector
   44946         before using it to resolve styles, which lead to it having a stale m_style member in some situations.
   44947         This stale m_style member resulted in a wild store that would write over whatever object now resided
   44948         at the location m_style pointed to.
   44949 
   44950         Test: fast/dom/SelectorAPI/bug-17313.html
   44951 
   44952         * dom/Node.cpp:
   44953         (WebCore::Node::querySelector): Call initForStyleResolve to further initialize the CSSStyleSelector.
   44954         * dom/SelectorNodeList.cpp:
   44955         (WebCore::SelectorNodeList::SelectorNodeList): Ditto.
   44956 
   44957 2008-03-03  Anders Carlsson  <andersca (a] apple.com>
   44958 
   44959         Reviewed by Darin and Sam.
   44960 
   44961         Include fixes, in preparation of using the headers in WebCore/bridge.
   44962         
   44963         * bindings/js/kjs_binding.h:
   44964         * bindings/js/kjs_dom.cpp:
   44965         * bindings/objc/DOMInternal.mm:
   44966         * bindings/objc/DOMUtility.mm:
   44967         * bindings/objc/WebScriptObject.mm:
   44968         * bindings/objc/WebScriptObjectPrivate.h:
   44969         * bridge/objc/objc_class.h:
   44970         * bridge/objc/objc_instance.h:
   44971         * bridge/objc/objc_runtime.h:
   44972         * bridge/objc/objc_utility.h:
   44973         * bridge/runtime.h:
   44974         * bridge/runtime_object.h:
   44975         * bridge/runtime_root.h:
   44976         * html/HTMLAppletElement.cpp:
   44977         * html/HTMLAppletElement.h:
   44978         * html/HTMLEmbedElement.cpp:
   44979         * html/HTMLEmbedElement.h:
   44980         * html/HTMLObjectElement.cpp:
   44981         * html/HTMLPlugInElement.cpp:
   44982         * html/HTMLPlugInElement.h:
   44983         * page/mac/FrameMac.mm:
   44984         * page/mac/WebCoreFrameBridge.h:
   44985         * page/mac/WebCoreFrameBridge.mm:
   44986         * page/mac/WebCoreScriptDebugger.mm:
   44987 
   44988 2008-03-03  David Hyatt  <hyatt (a] apple.com>
   44989 
   44990         Full page zoom plumbing.  Add a notion of whether or not a zoom is text only or a full zoom to the
   44991         Frame.  setTextSizeMultiplier does a text only zoom.
   44992 
   44993         Reviewed by Tim H.
   44994 
   44995         * page/Frame.cpp:
   44996         (WebCore::Frame::zoomFactor):
   44997         (WebCore::Frame::isZoomFactorTextOnly):
   44998         (WebCore::Frame::setZoomFactor):
   44999         (WebCore::FramePrivate::FramePrivate):
   45000         * page/Frame.h:
   45001         * page/FramePrivate.h:
   45002         * page/mac/WebCoreFrameBridge.mm:
   45003         (-[WebCoreFrameBridge setTextSizeMultiplier:]):
   45004         * svg/SVGSVGElement.cpp:
   45005         (WebCore::SVGSVGElement::setCurrentScale):
   45006 
   45007 2008-03-03  David Hyatt  <hyatt (a] apple.com>
   45008 
   45009         Fix for <rdar://problem/5776161> REGRESSION: Google Docs Spreadsheet crash
   45010 
   45011         This is also http://bugs.webkit.org/show_bug.cgi?id=17543, fixed table layout corrupts heap.
   45012 
   45013         Make sure not to access position -1 of the size 0 vectors.
   45014 
   45015         Reviewed by ggaren
   45016 
   45017         * rendering/FixedTableLayout.cpp:
   45018         (WebCore::FixedTableLayout::layout):
   45019 
   45020 2008-03-03  David D. Kilzer  <ddkilzer (a] webkit.org>
   45021 
   45022         Dynamically inserting CSS rule with @media query fails with DOM Exception 12
   45023         <http://bugs.webkit.org/show_bug.cgi?id=15986>
   45024 
   45025         Reviewed by Darin.
   45026 
   45027         Allow any valid rule (@font-face, @import, @media, @page or style) to be
   45028         parsed when using CSSStyleSheet.insertRule().  Previously only import and
   45029         style rules were allowed.  Note that @page rules always throw an exception
   45030         because they're not implemented yet, so no test case was added for them.
   45031 
   45032         Tests: fast/css/insertRule-font-face.html
   45033                fast/css/insertRule-media.html
   45034 
   45035         * css/CSSGrammar.y: Extracted 'valid_rule' out of 'rule'.  Renamed
   45036         'ruleset_or_import' to 'valid_rule_or_import' and changed its definition.
   45037 
   45038 2008-03-03  Anders Carlsson  <andersca (a] apple.com>
   45039 
   45040         Reviewed by Sam.
   45041 
   45042         Copy JSC bindings directory over to WebCore/bridge.
   45043 
   45044         * bridge: Copied from ../JavaScriptCore/bindings.
   45045 
   45046 2008-03-03  Dan Bernstein  <mitz (a] apple.com>
   45047 
   45048         Reviewed by Darin Adler.
   45049 
   45050         - remove CSSMutableStyleDeclaration::setChanged()'s change type
   45051           parameter
   45052 
   45053         * css/CSSMutableStyleDeclaration.cpp:
   45054         (WebCore::CSSMutableStyleDeclaration::setChanged): Removed the change
   45055         type parameter and made this function determine the correct change type
   45056         based on whether this is an inline style declaration.
   45057         (WebCore::CSSMutableStyleDeclaration::setProperty):
   45058         * css/CSSMutableStyleDeclaration.h:
   45059         (WebCore::CSSMutableStyleDeclaration::clear): Removed this unused
   45060         method.
   45061         (WebCore::CSSMutableStyleDeclaration::setChanged): Made private.
   45062 
   45063 2008-03-03  Darin Adler  <darin (a] apple.com>
   45064 
   45065         Reviewed by Adam.
   45066 
   45067         - some "cleanup" on the path to removing WebCoreFrameBridge
   45068 
   45069         * WebCore.base.exp: Exported some stuff we either already use or
   45070         I am about to use in an upcoming patch.
   45071 
   45072         * WebCore.xcodeproj/project.pbxproj: Made FileChooser.h private rather
   45073         than project, for future use in WebKit.
   45074 
   45075         * bindings/objc/WebScriptObject.mm: Removed some dead code.
   45076 
   45077         * dom/ContainerNode.cpp: Added a now-needed or soon-to-be-needed include.
   45078         * editing/Editor.cpp: Ditto.
   45079 
   45080         * editing/Editor.h: Removed many unneeded declarations and includes.
   45081         Removed the unused userVisibleString function.
   45082 
   45083         * editing/EditorCommand.cpp:
   45084         (WebCore::executeYank): Added parameter for triggeringEvent, which no
   45085         longer has a default value.
   45086         (WebCore::executeYankAndSelect): Ditto.
   45087 
   45088         * editing/mac/EditorMac.mm: Removed userVisibleString.
   45089 
   45090         * page/mac/EventHandlerMac.mm:
   45091         (WebCore::isKeyboardOptionTab): Tweaked formattin.
   45092 
   45093         * page/mac/WebCoreFrameBridge.mm:
   45094         (-[WebCoreFrameBridge dragSourceMovedTo:]): Get window from -[NSView window]
   45095         rather than from the bridge. There's no special value in the bridge's window
   45096         method and we can use NSView directly.
   45097         (-[WebCoreFrameBridge dragSourceEndedAt:operation:]): Ditto.
   45098 
   45099         * platform/graphics/mac/ImageMac.mm:
   45100         (WebCore::Image::loadPlatformResource): Use a new WebCoreBundleFinder class to
   45101         find the bundle rather than using WebCoreFrameBridge.
   45102 
   45103         * platform/mac/ClipboardMac.mm: Added a now-needed or soon-to-be-needed include.
   45104         * platform/mac/PasteboardMac.mm: Ditto.
   45105 
   45106         * rendering/RenderObject.h:
   45107         (WebCore::DashboardRegionValue::operator==): Fixed mistake where this wasn't
   45108         comparing the clip rectangle.
   45109         (WebCore::DashboardRegionValue::operator!=): Added. Needed by my future work.
   45110 
   45111 2008-03-03  Oliver Hunt  <oliver (a] apple.com>
   45112 
   45113         Reviewed by Mark Rowe.
   45114 
   45115         Bug 17620: getImageData lies
   45116         http://bugs.webkit.org/show_bug.cgi?id=17620
   45117 
   45118         Correct logic to actually iterate over the source row
   45119 
   45120         * platform/graphics/cg/ImageBufferCG.cpp:
   45121         (WebCore::ImageBuffer::getImageData):
   45122 
   45123 2008-03-03  Oliver Hunt  <oliver (a] apple.com>
   45124 
   45125         Reviewed by Mark Rowe.
   45126 
   45127         Correct incorrect assertion
   45128 
   45129         * platform/graphics/cg/ImageBufferCG.cpp:
   45130         (WebCore::ImageBuffer::putImageData):
   45131 
   45132 2008-03-02  Alp Toker  <alp (a] atoker.com>
   45133 
   45134         Another fix for non-database builds after changes in r30331.
   45135 
   45136         Conditionalize a stopDatabases() call.
   45137 
   45138         * loader/FrameLoader.cpp:
   45139         (WebCore::FrameLoader::stopLoading):
   45140 
   45141 2008-03-02  Kevin Ollivier  <kevino (a] theolliviers.com>
   45142 
   45143         Reviewed by Alp Toker.
   45144 
   45145         Scrolling fixes. Implement page scrolling, initialize mouse wheel
   45146         event variables, and remove duplicate event binding for TOP
   45147         scrolling event.
   45148 
   45149         http://bugs.webkit.org/show_bug.cgi?id=17643
   45150 
   45151         * platform/wx/MouseWheelEventWx.cpp:
   45152         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
   45153         * platform/wx/ScrollViewWx.cpp:
   45154         (WebCore::ScrollView::ScrollViewPrivate::bindEvents):
   45155         (WebCore::ScrollView::ScrollViewPrivate::OnScrollWinEvents):
   45156 
   45157 2008-03-02  Alp Toker  <alp (a] atoker.com>
   45158 
   45159         Fix building without database support after changes in r30331.
   45160 
   45161         * dom/Document.cpp:
   45162 
   45163 2008-03-02  Kevin Ollivier  <kevino (a] theolliviers.com>
   45164 
   45165         wx build fix for Windows after PageWin.cpp move.
   45166 
   45167         * webcore-wx.bkl:
   45168 
   45169 2008-03-02  Kevin Ollivier  <kevino (a] theolliviers.com>
   45170 
   45171         Reviewed by Dave Hyatt.
   45172 
   45173         Gracefully handle a CSS rule containing an invalid value.
   45174         (Fixes http://bugs.webkit.org/show_bug.cgi?id=16898)
   45175 
   45176         * css/CSSGrammar.y:
   45177 
   45178 2008-03-02  Alp Toker  <alp (a] atoker.com>
   45179 
   45180         Reviewed by Mark Rowe.
   45181 
   45182         Improve the Cairo Path::isEmpty() function
   45183 
   45184         Use cairo_has_current_point() where available.
   45185 
   45186         * platform/graphics/cairo/PathCairo.cpp:
   45187         (WebCore::Path::isEmpty):
   45188 
   45189 2008-03-01  Mark Rowe  <mrowe (a] apple.com>
   45190 
   45191         Reviewed by Tim Hatcher.
   45192 
   45193         Update Xcode configuration to support building debug and release from the mysterious future.
   45194 
   45195         * Configurations/DebugRelease.xcconfig:
   45196 
   45197 2008-03-01  Oliver Hunt  <oliver (a] apple.com>
   45198 
   45199         Reviewed by Sam Weinig.
   45200 
   45201         Bug 16954: Support putImageData
   45202         
   45203         Implement support for HTML5's putImageData for the CG port.  All other ports
   45204         are currently just using stubs for the final blit.
   45205 
   45206         Test: fast/canvas/canvas-putImageData.html
   45207 
   45208         * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
   45209         (WebCore::JSCanvasRenderingContext2D::putImageData):
   45210         * html/CanvasRenderingContext2D.cpp:
   45211         (WebCore::CanvasRenderingContext2D::putImageData):
   45212         * html/CanvasRenderingContext2D.h:
   45213         * platform/graphics/ImageBuffer.h:
   45214         * platform/graphics/cairo/ImageBufferCairo.cpp:
   45215         * platform/graphics/cg/ImageBufferCG.cpp:
   45216         (WebCore::ImageBuffer::putImageData):
   45217         * platform/graphics/qt/ImageBufferQt.cpp:
   45218         * platform/graphics/wx/ImageBufferWx.cpp:
   45219 
   45220 2008-03-01  Jon Honeycutt  <jhoneycutt (a] apple.com>
   45221 
   45222         Reviewed by Darin.
   45223 
   45224         <rdar://problem/5772987> Crashing viewing page with two VLC plug-in
   45225         instances
   45226 
   45227         The VLC Netscape plug-in crashes if more than one instance is created.
   45228 
   45229         Added a quirk that disallows a plug-in from having more than one
   45230         instance and set this for the VLC plug-in.
   45231 
   45232         In addition, we now sort plug-ins that handle the same MIME
   45233         type to choose the most appropriate one. This sorting first sorts by
   45234         whether a plug-in has an issue that should put it at the end of the
   45235         list, then whether it appears in a "preferred" plug-in directory.
   45236 
   45237         * plugins/PluginQuirkSet.h: Added PluginQuirkDontAllowMultipleInstances.
   45238         * plugins/PluginDatabase.cpp:
   45239         (WebCore::PluginDatabase::preferredPluginCompare): Comparator for
   45240         sorting plug-ins; calls PluginPackage::compare().
   45241         (WebCore::PluginDatabase::pluginForMIMEType): Add all of the plug-ins
   45242         that handle this MIME type to a list, sort the list, and return the
   45243         first item.
   45244         (WebCore::PluginDatabase::MIMETypeForExtension): Add all of the plug-ins
   45245         that handle this extension to a list, sort the list, and return the MIME
   45246         type used by the plug-in at the beginning of the list.
   45247         * plugins/PluginDatabase.h:
   45248         * plugins/PluginPackage.h:
   45249         (WebCore::PluginPackage::version): Added; returns the module version.
   45250         * plugins/win/PluginDatabaseWin.cpp:
   45251         (WebCore::PluginDatabase::isPreferredPluginPath): Made static; removed
   45252         const.
   45253         * plugins/win/PluginPackageWin.cpp:
   45254         (WebCore::PluginPackage::compare): Sorts plug-ins with known issues to
   45255         the end, then plug-ins in preferred directories to the beginning, then
   45256         alphabetically by file name, numerically by version, and alphabetically
   45257         by parent directory.
   45258         (WebCore::PluginPackage::determineQuirks): Set the "don't allow multiple
   45259         instances" quirk for VLC.
   45260         (WebCore::PluginPackage::load): Return false if the plug-in library has
   45261         already been loaded and the "don't allow multiple instances" quirk is
   45262         set.
   45263         * platform/gtk/TemporaryLinkStubs.cpp:
   45264         (PluginPackage::compare): Added stub.
   45265         (PluginDatabase::IsPreferredPluginPath): Update the GTK stub.
   45266         * platform/qt/TemporaryLinkStubs.cpp:
   45267         (PluginPackage::compare): Added stub.
   45268         (PluginDatabase::IsPreferredPluginPath): Update the Qt stub.
   45269         * platform/wx/TemporaryLinkStubs.cpp:
   45270         (PluginPackage::compare): Added stub.
   45271         (PluginDatabase::IsPreferredPluginPath): Update the wx stub.
   45272 
   45273 2008-03-01  Sam Weinig  <sam (a] webkit.org>
   45274 
   45275         Rubber-stamped by Mark Rowe.
   45276 
   45277         Remove reference to the now non-existent bridge directory.
   45278 
   45279         * WebCore.xcodeproj/project.pbxproj:
   45280 
   45281 2008-03-01  Sam Weinig  <sam (a] webkit.org>
   45282 
   45283         Reviewed by Darin Adler.
   45284 
   45285         Search the entire prototype chain when doing early prototype lookup in
   45286         the Window's getOwnPropertySlot method.
   45287 
   45288         Makes fast/dom/Window/window-function-name-getter-precedence.html pass all tests.
   45289 
   45290         * bindings/js/kjs_window.cpp:
   45291         (KJS::Window::getOwnPropertySlot):
   45292 
   45293 2008-03-01  Nikolas Zimmermann  <zimmermann (a] kde.org>
   45294 
   45295         Reviewed by Oliver.
   45296 
   45297         Fixes: http://bugs.webkit.org/show_bug.cgi?id=17568 (SVGForeignObjectElement can't react to width/height SVG DOM changes)
   45298 
   45299         As the bug title says, fix all dynamic update problems that occour with SVGForeignObjectElement.
   45300 
   45301         Tests: svg/dynamic-updates/SVGForeignObjectElement-dom-height-attr.html
   45302                svg/dynamic-updates/SVGForeignObjectElement-dom-width-attr.html
   45303                svg/dynamic-updates/SVGForeignObjectElement-dom-x-attr.html
   45304                svg/dynamic-updates/SVGForeignObjectElement-dom-y-attr.html
   45305                svg/dynamic-updates/SVGForeignObjectElement-svgdom-height-prop.html
   45306                svg/dynamic-updates/SVGForeignObjectElement-svgdom-width-prop.html
   45307                svg/dynamic-updates/SVGForeignObjectElement-svgdom-x-prop.html
   45308                svg/dynamic-updates/SVGForeignObjectElement-svgdom-y-prop.html
   45309 
   45310         * svg/SVGForeignObjectElement.cpp:
   45311         (WebCore::SVGForeignObjectElement::parseMappedAttribute):
   45312         (WebCore::addCSSPropertyAndNotifyAttributeMap):
   45313         (WebCore::SVGForeignObjectElement::svgAttributeChanged):
   45314         * svg/SVGForeignObjectElement.h:
   45315 
   45316 2008-02-29  Brady Eidson  <beidson (a] apple.com>
   45317 
   45318         Reviewed by build-fix karma
   45319 
   45320         Bonehead mistake.  Revert function to previous version for all non-Windows+CFNetwork platforms
   45321 
   45322         * platform/network/ProtectionSpace.cpp:
   45323         (WebCore::ProtectionSpace::receivesCredentialSecurely): Make my previous change conditionally
   45324 
   45325 2008-02-29  Brady Eidson  <beidson (a] apple.com>
   45326 
   45327         Reviewed by Darin
   45328         
   45329         <rdar://problem/5771227> - Incorrect password handling text in credential sheet
   45330 
   45331         * platform/network/ProtectionSpace.cpp:
   45332         (WebCore::ProtectionSpace::receivesCredentialSecurely): Call functional CFNetwork method to
   45333           get "secureness" of the auth challenge instead of figuring it out ourselves
   45334 
   45335 2008-02-29  Brent Fulgham  <bfulgham (a] gmail.com>
   45336 
   45337         http://bugs.webkit.org/show_bug.cgi?id=17483
   45338         Implement scrollbars on Windows (Cairo)
   45339 
   45340         Reviewed by Adam Roben.
   45341 
   45342         * platform/win/PlatfromScrollBarWin.cpp: Duplicate implementation
   45343           from PlatformScrollBarWinSafari.cpp, then modify to use the
   45344           native Windows theme engine.  Use SOFT_LINK.  Use platform
   45345           'GetSystemMetrics' call to decide size of scrollbars and buttons.
   45346 
   45347 2008-02-29  Adam Roben  <aroben (a] apple.com>
   45348 
   45349         Windows build fix
   45350 
   45351         * WebCore.vcproj/WebCore.vcproj: Remove bridge/* from the include path
   45352         and the post-build event, and add page/win to each. Also let VS have
   45353         its way with the order of the files.
   45354         * page/win/PageWin.cpp: Copied from bridge/win/PageWin.cpp in r30673
   45355         * page/win/GlobalHistoryWin.cpp: Copied from
   45356         bridge/win/GlobalHistoryWin.cpp in r30673
   45357 
   45358 2008-02-29  Anders Carlsson  <andersca (a] apple.com>
   45359 
   45360         Build fix.
   45361 
   45362         * WebCore.xcodeproj/project.pbxproj:
   45363 
   45364 2008-02-29  Mark Rowe  <mrowe (a] apple.com>
   45365 
   45366         Reviewed by Tim Hatcher.
   45367 
   45368         64-bit build fix.
   45369 
   45370         * platform/graphics/mac/SimpleFontDataMac.mm:
   45371         (WebCore::pathFromFont): Provide stub implementation of pathFromFont for 64-bit as
   45372         FMGetATSFontRefFromFont is not available.
   45373 
   45374 2008-02-29  Mark Rowe  <mrowe (a] apple.com>
   45375 
   45376         Build fix.  Only declare pathFromFont in debug builds as it is unused in release builds.
   45377 
   45378         * platform/graphics/mac/SimpleFontDataMac.mm:
   45379 
   45380 2008-02-29  Anders Carlsson  <andersca (a] apple.com>
   45381 
   45382         Reviewed by Adam.
   45383         
   45384         Copy the remaining files in bridge/ over to page/
   45385 
   45386         * WebCore.vcproj/WebCore.vcproj:
   45387         * WebCore.xcodeproj/project.pbxproj:
   45388         * bridge: Removed.
   45389         * bridge/AXObjectCache.h: Removed.
   45390         * bridge/EditorClient.h: Removed.
   45391         * bridge/GlobalHistory.h: Removed.
   45392         * bridge/win: Removed.
   45393         * bridge/win/FrameCGWin.cpp: Removed.
   45394         * bridge/win/FrameCairoWin.cpp: Removed.
   45395         * bridge/win/FrameWin.cpp: Removed.
   45396         * bridge/win/FrameWin.h: Removed.
   45397         * bridge/win/GlobalHistoryWin.cpp: Removed.
   45398         * bridge/win/PageWin.cpp: Removed.
   45399         * page/AXObjectCache.h: Copied from bridge/AXObjectCache.h.
   45400         * page/EditorClient.h: Copied from bridge/EditorClient.h.
   45401         * page/GlobalHistory.h: Copied from bridge/GlobalHistory.h.
   45402         * page/win/FrameCGWin.cpp: Copied from bridge/win/FrameCGWin.cpp.
   45403         * page/win/FrameCairoWin.cpp: Copied from bridge/win/FrameCairoWin.cpp.
   45404         * page/win/FrameWin.cpp: Copied from bridge/win/FrameWin.cpp.
   45405         * page/win/FrameWin.h: Copied from bridge/win/FrameWin.h.
   45406 
   45407 2008-02-29  Robert Blaut  <webkit (a] blaut.biz>
   45408 
   45409         Reviewed by Darin Adler.
   45410 
   45411         - fix http://bugs.webkit.org/show_bug.cgi?id=17532
   45412           Webkit imports styles from <link> element which doesn't have rel=stylesheet defined
   45413 
   45414         Test: fast/html/link-rel-stylesheet.html
   45415 
   45416         * html/HTMLLinkElement.cpp:
   45417         (WebCore::HTMLLinkElement::process):
   45418 
   45419 2008-02-29  Mark Rowe  <mrowe (a] apple.com>
   45420 
   45421         Reviewed by Anders Carlsson.
   45422 
   45423         Replace use of WKPathFromFont with implementation in terms of public API.
   45424 
   45425         * WebCore.base.exp: Remove unused symbol.
   45426         * platform/graphics/mac/SimpleFontDataMac.mm:
   45427         (WebCore::initFontData):
   45428         (WebCore::pathFromFont): Implement pathFromFont in terms of public API.
   45429         (WebCore::SimpleFontData::platformInit):
   45430         * platform/mac/WebCoreSystemInterface.h: Remove unused symbol.
   45431         * platform/mac/WebCoreSystemInterface.mm: Ditto.
   45432 
   45433 2008-02-29  Anders Carlsson  <andersca (a] apple.com>
   45434 
   45435         Reviewed by Adam.
   45436 
   45437         Move a bunch of files from bridge/mac to page/mac.
   45438         
   45439         * WebCore.xcodeproj/project.pbxproj:
   45440         * bridge/mac: Removed.
   45441         * bridge/mac/AXObjectCacheMac.mm: Removed.
   45442         * bridge/mac/GlobalHistoryMac.mm: Removed.
   45443         * bridge/mac/WebCoreAXObject.h: Removed.
   45444         * bridge/mac/WebCoreAXObject.mm: Removed.
   45445         * bridge/mac/WebCoreScriptDebugger.h: Removed.
   45446         * bridge/mac/WebCoreScriptDebugger.mm: Removed.
   45447         * page/mac/AXObjectCacheMac.mm: Copied from bridge/mac/AXObjectCacheMac.mm.
   45448         * page/mac/GlobalHistoryMac.mm: Copied from bridge/mac/GlobalHistoryMac.mm.
   45449         * page/mac/WebCoreAXObject.h: Copied from bridge/mac/WebCoreAXObject.h.
   45450         * page/mac/WebCoreAXObject.mm: Copied from bridge/mac/WebCoreAXObject.mm.
   45451         * page/mac/WebCoreScriptDebugger.h: Copied from bridge/mac/WebCoreScriptDebugger.h.
   45452         * page/mac/WebCoreScriptDebugger.mm: Copied from bridge/mac/WebCoreScriptDebugger.mm.
   45453 
   45454 2008-02-29  David Hyatt  <hyatt (a] apple.com>
   45455 
   45456         Fix for http://bugs.webkit.org/show_bug.cgi?id=17559, media query tests crashing under
   45457         guard malloc.  Pass along the style selector so it can be accessed, since it has not yet
   45458         been assigned into the document's member variable.
   45459 
   45460         Reviewed by aroben
   45461 
   45462         * css/CSSStyleSelector.cpp:
   45463         (WebCore::CSSRuleSet::addRulesFromSheet):
   45464         * css/MediaQueryEvaluator.cpp:
   45465         (WebCore::MediaQueryEvaluator::eval):
   45466         * css/MediaQueryEvaluator.h:
   45467 
   45468 2008-02-29  David Hyatt  <hyatt (a] apple.com>
   45469 
   45470         <rdar://problem/5755916> REGRESSION: Loading HTML5 spec is 5x slower on TOT than in 3.0.4
   45471 
   45472         Improve the performance of dynamic sibling and CSS3 selectors so that there is no slowdown any more.
   45473         Be more precise in terms of what nodes we mark dirty.
   45474 
   45475         Reviewed by Beth
   45476 
   45477         * css/CSSStyleSelector.cpp:
   45478         (WebCore::CSSStyleSelector::checkSelector):
   45479         * dom/Element.cpp:
   45480         (WebCore::Element::recalcStyle):
   45481         (WebCore::checkForSiblingStyleChanges):
   45482         (WebCore::Element::childrenChanged):
   45483         (WebCore::Element::finishParsingChildren):
   45484         * rendering/RenderStyle.cpp:
   45485         (WebCore::RenderStyle::RenderStyle):
   45486         * rendering/RenderStyle.h:
   45487         (WebCore::RenderStyle::childrenAffectedByPositionalRules):
   45488         (WebCore::RenderStyle::childrenAffectedByDirectAdjacentRules):
   45489         (WebCore::RenderStyle::setChildrenAffectedByDirectAdjacentRules):
   45490 
   45491 2008-02-29  Alexey Proskuryakov  <ap (a] webkit.org>
   45492 
   45493         Reviewed by Darin.
   45494 
   45495         <rdar://problem/5766352> REGRESSION (r27151): XMLHttpRequest.abort() resets response status
   45496 
   45497         Test: http/tests/xmlhttprequest/status-after-abort.html
   45498 
   45499         * xml/XMLHttpRequest.cpp:
   45500         (WebCore::XMLHttpRequest::getStatus):
   45501         (WebCore::XMLHttpRequest::getStatusText):
   45502         Changed to match Firefox more closely (IE just raises an exception in most of those cases).
   45503 
   45504 2008-02-29  Dan Bernstein  <mitz (a] apple.com>
   45505 
   45506         Reviewed by Darin Adler.
   45507 
   45508         - fix a bug where explicit embedding past the end of a line could
   45509           affect text that line
   45510 
   45511         Test: fast/text/embed-at-end-of-pre-wrap-line.html
   45512 
   45513         * rendering/bidi.cpp:
   45514         (WebCore::RenderBlock::skipWhitespace): Removed calls to
   45515         setAdjustEmbedding().
   45516         (WebCore::RenderBlock::findNextLineBreak): Added calls to
   45517         setAdjustEmbedding() around skipWhitespace() only where needed.
   45518 
   45519 2008-02-29  Mark Rowe  <mrowe (a] apple.com>
   45520 
   45521         Reviewed by Oliver Hunt.
   45522 
   45523         Don't use WKSupportsMultipartXMixedReplace on Leopard as multipart/x-mixed-replace is always handled by NSURLRequest.
   45524 
   45525         * platform/mac/WebCoreSystemInterface.h: Don't declare WKSupportsMultipartXMixedReplace on Leopard.
   45526         * platform/mac/WebCoreSystemInterface.mm: Ditto.
   45527         * platform/network/mac/ResourceRequestMac.mm:
   45528         (WebCore::ResourceRequest::doUpdatePlatformRequest): Don't call WKSupportsMultipartXMixedReplace on Leopard.
   45529         * WebCore.Tiger.exp: Move Tiger-only symbol here.
   45530         * WebCore.base.exp:
   45531 
   45532 2008-02-29  Mark Rowe  <mrowe (a] apple.com>
   45533 
   45534         Rubber-stamped by Eric Seidel.
   45535 
   45536         Remove unneeded includes of WebCoreSystemInterface.h.
   45537 
   45538         * loader/mac/LoaderNSURLExtras.m:
   45539         * page/mac/FrameMac.mm:
   45540         * page/mac/WebCoreFrameBridge.mm:
   45541         * platform/MIMETypeRegistry.cpp:
   45542         * platform/graphics/mac/ImageMac.mm:
   45543         * platform/mac/PasteboardMac.mm:
   45544 
   45545 2008-02-29  Mark Rowe  <mrowe (a] apple.com>
   45546 
   45547         Reviewed by Oliver Hunt and Oliver Hunt.
   45548 
   45549         <rdar://problem/4753845> WebKit should use CGEventSourceSecondsSinceLastEventType in place of WKSecondsSinceLastInputEvent SPI.
   45550 
   45551         * platform/mac/SystemTimeMac.cpp:  Replace use of WKSecondsSinceLastInputEvent with CGEventSourceSecondsSinceLastEventType.
   45552         * platform/mac/WebCoreSystemInterface.h:  Remove unused symbol.
   45553         * platform/mac/WebCoreSystemInterface.mm:  Ditto.
   45554         * WebCore.base.exp:  Ditto.
   45555 
   45556 2008-02-28  Mark Rowe  <mrowe (a] apple.com>
   45557 
   45558         Reviewed by Dave Hyatt.
   45559 
   45560         Make use of new CGFont APIs on Leopard rather than making a WebKitSystemInterface call.
   45561 
   45562         * DerivedSources.make:  Add Tiger-only symbols to the export file when running on Tiger.
   45563         * WebCore.Tiger.exp:  Added.  Move Tiger-only symbol here from WebCore.base.exp.
   45564         * WebCore.base.exp:
   45565         * platform/graphics/mac/SimpleFontDataMac.mm:
   45566         (WebCore::SimpleFontData::platformInit):  Use Leopard APIs when building on Leopard.
   45567         * platform/mac/WebCoreSystemInterface.h:  Don't declare wkGetFontMetrics on Leopard as it is unused.
   45568         * platform/mac/WebCoreSystemInterface.mm:  Ditto.
   45569 
   45570 2008-02-28  Matt Lilek  <webkit (a] mattlilek.com>
   45571 
   45572         Reviewed by Tim Hatcher.
   45573 
   45574         Bug 16535: Stylesheets loaded with @import are not editable
   45575         http://bugs.webkit.org/show_bug.cgi?id=16535
   45576         <rdar://problem/5712899>
   45577 
   45578         Sheets loaded using @import were incorrectly being flagged as non-editable
   45579         user agent sheets because their parent sheet doesn't have an ownerNode. We now
   45580         check to make sure sheets also don't have a href before restricting their editability.
   45581 
   45582         * page/inspector/StylesSidebarPane.js:
   45583 
   45584 2008-02-28  Rodney Dawes  <dobey (a] wayofthemonkey.com>
   45585 
   45586         Reviewed by Adam Roben.
   45587 
   45588         Copy PluginPackageWin.cpp to shared PluginPackage.cpp.
   45589         Add PluginPackage.cpp to build configurations.
   45590         Remove PluginPackage destructor from TemporaryLinkStubs.cpp.
   45591         Use cross-platform pathGetFilename method.
   45592         Remove platform-specific code from shared PluginPackage implementation.
   45593         Remove shared code from PluginPackageWin.cpp.
   45594 
   45595         * GNUmakefile.am:
   45596         * WebCore.pro:
   45597         * WebCoreSources.bkl:
   45598         * WebCore.vcproj/WebCore.vcproj:
   45599         * platform/gtk/TemporaryLinkStubs.cpp:
   45600         * platform/qt/TemporaryLinkStubs.cpp:
   45601         * platform/wx/TemporaryLinkStubs.cpp:
   45602         * plugins/PluginPackage.cpp:
   45603         * plugins/win/PluginPackageWin.cpp:
   45604 
   45605 2008-02-28  Justin Garcia  <justin.garcia (a] apple.com>
   45606 
   45607         Reviewed by Darin Adler.
   45608 
   45609         <rdar://problem/4930986> REGRESSION: Paste As Quotation pastes black text instead of blue
   45610         
   45611         Add a second style span at copy time to hold document default styles.  This helps us
   45612         differentiate between those and user applied styles at paste time, where we'll want
   45613         to let Mail's Paste As Quotation blockquote override document default styles, but
   45614         not others.
   45615 
   45616         * css/CSSComputedStyleDeclaration.cpp:
   45617         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Changed the unit type used 
   45618         for -webkit-text-stroke-width from CSS_NUMBER to CSS_PX, to match other properties that 
   45619         are thick | medium | thin | <length>.  Before, there was a mismatch between the unit 
   45620         type of -webkit-text-stroke-width property values in a CSSComputedStyleDeclaration for 
   45621         an element and that element's inlineStyleDecl(), causing identical values to always appear 
   45622         different to diff().
   45623         * editing/ReplaceSelectionCommand.cpp:
   45624         (WebCore::ReplaceSelectionCommand::handlePasteAsQuotationNode): Fixed.  Don't just change
   45625         the class to an empty string, completely remove it, it's no longer needed.
   45626         (WebCore::handleStyleSpansBeforeInsertion): Moved the optimization from doApply here.
   45627         (WebCore::ReplaceSelectionCommand::handleStyleSpans): 
   45628         Added, replaces removeRedundantStyles.
   45629         We aren't (yet) removing all redundant styles, just those on style spans, so I removed the
   45630         unused code and renamed the function.
   45631         There won't be more than two style spans that we need to consider, the one with the 
   45632         source document's default styles and styles on the commonAncestor of the copied Range, 
   45633         so don't look for more than two.
   45634         Let elements that wrap the incoming fragment override the source document's styles.
   45635         (WebCore::ReplaceSelectionCommand::doApply): Moved code to handleStyleSpansBeforeInsertion
   45636         and call the renamed handleStyleSpans.
   45637         * editing/ReplaceSelectionCommand.h:
   45638         * editing/markup.cpp:
   45639         (WebCore::removeDefaultStyles): Added.  Don't add document defaults to the style span
   45640         that holds user applied styles, since they'll be added to their own style span.
   45641         (WebCore::createMarkup):
   45642         Add a second style span that holds just the document defaults. This lets us differentiate
   45643         between those and user applied styles at paste time.
   45644         Mail blockquotes are just another type of special element, moved their handling there. This
   45645         also lets paste code make assumptions about the position of the two style spans (they are 
   45646         *always* parent-child).
   45647 
   45648 2008-02-28  Brent Fulgham <bfulgham (a] gmail.com>
   45649 
   45650         http://bugs.webkit.org/show_bug.cgi?id=17576
   45651         Modify RenderThemeWin to use SOFT_LINK
   45652 
   45653         Reviewed by Adam Roben.
   45654 
   45655         * rendering/RenderThemeWin.h: Remove unneeded library handle
   45656         * rendering/RenderThemeWin.cpp: Change to use SOFT_LINK
   45657           rather than hand-coded load library calls.
   45658 
   45659 2008-02-28  Dan Bernstein  <mitz (a] apple.com>
   45660 
   45661         Reviewed by Darin Adler.
   45662 
   45663         - fix http://bugs.webkit.org/show_bug.cgi?id=17590
   45664           ASSERTION FAILED: subject in jsRegExpExecute()
   45665 
   45666         * page/mac/FrameMac.mm:
   45667         (WebCore::Frame::matchLabelsAgainstElement): Added an early return in
   45668         case the element name is empty.
   45669 
   45670 2008-02-28  Justin Garcia  <justin.garcia (a] apple.com>
   45671 
   45672         Reviewed by Dan Bernstein
   45673         
   45674         Small editing speed up.
   45675         
   45676         * dom/Position.cpp:
   45677         (WebCore::Position::upstream): Don't check for a change in editability
   45678         if the current node hasn't changed.
   45679         (WebCore::Position::downstream): Ditto.
   45680 
   45681 2008-02-27  Dan Bernstein  <mitz (a] apple.com>
   45682 
   45683         Reviewed by John Sullivan.
   45684 
   45685         - fix <rdar://problem/5607547> Single letter surrounded by soft hyphens can disappear
   45686 
   45687         Test: fast/text/soft-hyphen-2.html
   45688 
   45689         * rendering/bidi.cpp:
   45690         (WebCore::chopMidpointsAt): Changed to iterate midpoints backwards, so
   45691         that if there are two midpoints at the given position, only the last one
   45692         will be chopped off.
   45693 
   45694 2008-02-27  Dan Bernstein  <mitz (a] apple.com>
   45695 
   45696         Reviewed by Darin Adler.
   45697 
   45698         - make centered text in right-to-left blocks spill over to the left
   45699 
   45700         Test: fast/text/align-center-rtl-spill.html
   45701 
   45702         * rendering/bidi.cpp:
   45703         (WebCore::RenderBlock::computeHorizontalPositionsForLine):
   45704 
   45705 2008-02-27  Dan Bernstein  <mitz (a] apple.com>
   45706 
   45707         Reviewed by Darin Adler.
   45708 
   45709         - more bidi.cpp cleanup
   45710 
   45711         * platform/text/BidiResolver.h:
   45712         (WebCore::BidiCharacterRun::destroy): Added. Overridden by BidiRun .
   45713         (WebCore::BidiResolver<Iterator, Run>::addRun): Moved BidiState::addRun()
   45714         here.
   45715         (WebCore::BidiResolver<Iterator, Run>::appendRun): Changed to use
   45716         addRun().
   45717         (WebCore::BidiResolver<Iterator, Run>::deleteRuns): Changed to use
   45718         destroy(), avoiding the need to specialize this method in BidiState.
   45719         * rendering/bidi.cpp:
   45720         (WebCore::BidiRun::destroy): Removed the RenderArena parameter.
   45721         (WebCore::BidiState::deleteRuns): Removed now-unnecessary specialization.
   45722         (WebCore::BidiState::addRun): Removed now-unnecessary specialization.
   45723         (WebCore::RenderBlock::createLineBoxes): 
   45724         (WebCore::RenderBlock::constructLine):
   45725         (WebCore::RenderBlock::computeHorizontalPositionsForLine): Added a FIXME.
   45726         (WebCore::RenderBlock::computeVerticalPositionsForLine):
   45727         (WebCore::buildCompactRuns):
   45728         (WebCore::RenderBlock::layoutInlineChildren):
   45729         (WebCore::RenderBlock::determineStartPosition):
   45730         (WebCore::RenderBlock::determineEndPosition):
   45731         (WebCore::RenderBlock::matchedEndLine):
   45732         (WebCore::skipNonBreakingSpace):
   45733         (WebCore::RenderBlock::skipWhitespace):
   45734         (WebCore::shouldSkipWhitespaceAfterStartObject):
   45735         * rendering/bidi.h:
   45736         (WebCore::BidiRun): Added m_ prefixes to several member variables. 
   45737 
   45738 2008-02-27  Sam Weinig  <sam (a] webkit.org>
   45739 
   45740         Reviewed by Darin.
   45741 
   45742         Fix for <rdar://problem/5768769>
   45743 
   45744         - Don't allow cross-origin calls using window.functionName.call(otherFrame)
   45745           syntax.
   45746 
   45747         * bindings/js/JSLocation.cpp:
   45748         (WebCore::jsLocationProtoFuncToString): Do same-origin check.
   45749         * bindings/js/kjs_window.cpp:
   45750         (KJS::windowProtoFuncAToB): Ditto.
   45751         (KJS::windowProtoFuncBToA): Ditto.
   45752         (KJS::windowProtoFuncOpen): Ditto.
   45753         (KJS::windowProtoFuncClearTimeout): Ditto.
   45754         * bindings/scripts/CodeGeneratorJS.pm: Ditto.
   45755 
   45756 2008-02-27  David Hyatt  <hyatt (a] apple.com>
   45757 
   45758         More cleanup in preparation for fixing the HTML5 spec performance regression.
   45759 
   45760         Reviewed by Sam Weinig
   45761 
   45762         * dom/Attr.cpp:
   45763         (WebCore::Attr::childrenChanged):
   45764         * dom/Attr.h:
   45765         * dom/ContainerNode.cpp:
   45766         (WebCore::ContainerNode::insertBefore):
   45767         (WebCore::ContainerNode::replaceChild):
   45768         (WebCore::ContainerNode::removeChild):
   45769         (WebCore::ContainerNode::removeChildren):
   45770         (WebCore::ContainerNode::appendChild):
   45771         (WebCore::ContainerNode::addChild):
   45772         (WebCore::ContainerNode::childrenChanged):
   45773         * dom/ContainerNode.h:
   45774         * dom/Document.cpp:
   45775         (WebCore::Document::childrenChanged):
   45776         * dom/Document.h:
   45777         * dom/Element.cpp:
   45778         (WebCore::Element::childrenChanged):
   45779         * dom/Element.h:
   45780         * dom/Node.h:
   45781         (WebCore::Node::childrenChanged):
   45782         * html/HTMLObjectElement.cpp:
   45783         (WebCore::HTMLObjectElement::childrenChanged):
   45784         * html/HTMLObjectElement.h:
   45785         * html/HTMLOptGroupElement.cpp:
   45786         (WebCore::HTMLOptGroupElement::childrenChanged):
   45787         * html/HTMLOptGroupElement.h:
   45788         * html/HTMLOptionElement.cpp:
   45789         (WebCore::HTMLOptionElement::childrenChanged):
   45790         * html/HTMLOptionElement.h:
   45791         * html/HTMLScriptElement.cpp:
   45792         (WebCore::HTMLScriptElement::childrenChanged):
   45793         * html/HTMLScriptElement.h:
   45794         * html/HTMLSelectElement.cpp:
   45795         (WebCore::HTMLSelectElement::childrenChanged):
   45796         * html/HTMLSelectElement.h:
   45797         * html/HTMLStyleElement.cpp:
   45798         (WebCore::HTMLStyleElement::childrenChanged):
   45799         * html/HTMLStyleElement.h:
   45800         * html/HTMLTextAreaElement.cpp:
   45801         (WebCore::HTMLTextAreaElement::childrenChanged):
   45802         * html/HTMLTextAreaElement.h:
   45803         * html/HTMLTitleElement.cpp:
   45804         (WebCore::HTMLTitleElement::childrenChanged):
   45805         * html/HTMLTitleElement.h:
   45806         * svg/SVGClipPathElement.cpp:
   45807         (WebCore::SVGClipPathElement::childrenChanged):
   45808         * svg/SVGClipPathElement.h:
   45809         * svg/SVGDefinitionSrcElement.cpp:
   45810         (WebCore::SVGDefinitionSrcElement::childrenChanged):
   45811         * svg/SVGDefinitionSrcElement.h:
   45812         * svg/SVGFontFaceElement.cpp:
   45813         (WebCore::SVGFontFaceElement::childrenChanged):
   45814         * svg/SVGFontFaceElement.h:
   45815         * svg/SVGFontFaceFormatElement.cpp:
   45816         (WebCore::SVGFontFaceFormatElement::childrenChanged):
   45817         * svg/SVGFontFaceFormatElement.h:
   45818         * svg/SVGFontFaceSrcElement.cpp:
   45819         (WebCore::SVGFontFaceSrcElement::childrenChanged):
   45820         * svg/SVGFontFaceSrcElement.h:
   45821         * svg/SVGFontFaceUriElement.cpp:
   45822         (WebCore::SVGFontFaceUriElement::childrenChanged):
   45823         * svg/SVGFontFaceUriElement.h:
   45824         * svg/SVGGElement.cpp:
   45825         (WebCore::SVGGElement::childrenChanged):
   45826         * svg/SVGGElement.h:
   45827         * svg/SVGGradientElement.cpp:
   45828         (WebCore::SVGGradientElement::childrenChanged):
   45829         * svg/SVGGradientElement.h:
   45830         * svg/SVGMarkerElement.cpp:
   45831         (WebCore::SVGMarkerElement::childrenChanged):
   45832         * svg/SVGMarkerElement.h:
   45833         * svg/SVGMaskElement.cpp:
   45834         (WebCore::SVGMaskElement::childrenChanged):
   45835         * svg/SVGMaskElement.h:
   45836         * svg/SVGPatternElement.cpp:
   45837         (WebCore::SVGPatternElement::childrenChanged):
   45838         * svg/SVGPatternElement.h:
   45839         * svg/SVGStyleElement.cpp:
   45840         (WebCore::SVGStyleElement::childrenChanged):
   45841         * svg/SVGStyleElement.h:
   45842         * svg/SVGStyledElement.cpp:
   45843         (WebCore::SVGStyledElement::childrenChanged):
   45844         * svg/SVGStyledElement.h:
   45845         * svg/SVGTitleElement.cpp:
   45846         (WebCore::SVGTitleElement::childrenChanged):
   45847         * svg/SVGTitleElement.h:
   45848         * svg/SVGUseElement.cpp:
   45849         (WebCore::SVGUseElement::childrenChanged):
   45850         * svg/SVGUseElement.h:
   45851 
   45852 2008-02-27  Julien Chaffraix <julien.chaffraix (a] gmail.com>
   45853 
   45854         Reviewed by Alexey.
   45855 
   45856         http://bugs.webkit.org/show_bug.cgi?id=17481
   45857         Several consecutive calls to XMLHttpRequest::open should dispatch only one readyState event
   45858 
   45859         Test: http/tests/xmlhttprequest/xmlhttprequest-multiple-open.html
   45860 
   45861         * xml/XMLHttpRequest.cpp:
   45862         (WebCore::XMLHttpRequest::open):
   45863 
   45864 2008-02-27  Sriram Neelakandan  <sriram.neelakandan (a] gmail.com>
   45865 
   45866         Reviewed, tweaked and landed by ap.
   45867 
   45868         http://bugs.webkit.org/show_bug.cgi?id=17487
   45869         HTMLInput mysteriously fails to work if ICU dat file is missing
   45870 
   45871         * platform/text/TextBreakIteratorICU.cpp: (WebCore::setUpIterator): Assert that the iterator
   45872         has been opened.
   45873 
   45874 2008-02-27  Adam Roben  <aroben (a] apple.com>
   45875 
   45876         Windows build fix after r30616
   45877 
   45878         * platform/win/ClipboardWin.cpp:
   45879 
   45880 2008-02-27  Nikolas Zimmermann  <zimmermann (a] kde.org>
   45881 
   45882         Reviewed by Simon.
   45883 
   45884         Small style cleanup, and obvious fix: SVGGElement reacted on
   45885         'clipPathUnits' changes, which is a funny copy&paste error.
   45886 
   45887         * svg/SVGGElement.cpp:
   45888         (WebCore::SVGGElement::parseMappedAttribute):
   45889         (WebCore::SVGGElement::svgAttributeChanged):
   45890         (WebCore::SVGGElement::createRenderer):
   45891 
   45892 2008-02-27  Nikolas Zimmermann  <zimmermann (a] kde.org>
   45893 
   45894         Reviewed by Simon.
   45895 
   45896         Cleanup coding style. Still on my way to fix dynamic updates of all SVG elements.
   45897         Currently at SVGF*. SVGDefs/DescElement don't need any dyn update fixes but cleanups.
   45898 
   45899         * svg/SVGDefsElement.cpp:
   45900         (WebCore::SVGDefsElement::createRenderer):
   45901         * svg/SVGDefsElement.h:
   45902         * svg/SVGDescElement.h:
   45903 
   45904 2008-02-26  Antti Koivisto  <antti (a] apple.com>
   45905 
   45906         Reviewed by Darin.
   45907 
   45908         Fix <rdar://problem/5761326>
   45909         REGRESSION: 1.5% -2% Sunspider regression from r30009 (ebay photo upload hang)
   45910         
   45911         Generate better code with VS:
   45912         - Use ALWAYS_INLINE macro to guarantee versions of allowsAccessFrom() are reduced to single functions
   45913         - Refactor error reporting so that there is no need to construct/destruct Strings in common cases
   45914         - Add a separate version of the function for cases where error messages are not wanted
   45915 
   45916         * bindings/js/JSDOMWindowCustom.cpp:
   45917         (WebCore::JSDOMWindow::customGetOwnPropertySlot):
   45918         * bindings/js/kjs_window.cpp:
   45919         (KJS::Window::allowsAccessFrom):
   45920         (KJS::Window::allowsAccessFromNoErrorMessage):
   45921         (KJS::Window::allowsAccessFromPrivate):
   45922         (KJS::Window::crossDomainAccessErrorMessage):
   45923         * bindings/js/kjs_window.h:
   45924 
   45925 2008-02-26  Sam Weinig  <sam (a] webkit.org>
   45926 
   45927         Reviewed by Dave Hyatt.
   45928 
   45929         - remove DeprecatedCString, DeprecatedArray, and ArrayImpl.
   45930 
   45931         * GNUmakefile.am:
   45932         * WebCore.pro:
   45933         * WebCore.vcproj/WebCore.vcproj:
   45934         * WebCore.xcodeproj/project.pbxproj:
   45935         * WebCoreSources.bkl:
   45936         * platform/ArrayImpl.cpp: Removed.
   45937         * platform/ArrayImpl.h: Removed.
   45938         * platform/DeprecatedArray.h: Removed.
   45939         * platform/DeprecatedCString.cpp: Removed.
   45940         * platform/DeprecatedCString.h: Removed.
   45941         * platform/text/CString.cpp:
   45942         (WebCore::CString::length):
   45943         * platform/text/CString.h:
   45944 
   45945 2008-02-26  David Hyatt  <hyatt (a] apple.com>
   45946 
   45947         Cleanup of childrenChanged in preparation for fixing the HTML5 spec slowdown.
   45948 
   45949         Reviewed by Sam Weinig
   45950 
   45951         * dom/Attr.cpp:
   45952         (WebCore::Attr::childrenChanged):
   45953         * dom/ContainerNode.cpp:
   45954         (WebCore::ContainerNode::insertBefore):
   45955         (WebCore::ContainerNode::replaceChild):
   45956         (WebCore::ContainerNode::removeChild):
   45957         (WebCore::ContainerNode::removeChildren):
   45958         (WebCore::ContainerNode::appendChild):
   45959         (WebCore::ContainerNode::addChild):
   45960         (WebCore::ContainerNode::childrenChanged):
   45961         * dom/ContainerNode.h:
   45962         * dom/EventTargetNode.cpp:
   45963         (WebCore::EventTargetNode::dispatchSubtreeModifiedEvent):
   45964         * dom/EventTargetNode.h:
   45965         * dom/NamedAttrMap.cpp:
   45966         (WebCore::NamedAttrMap::addAttribute):
   45967         (WebCore::NamedAttrMap::removeAttribute):
   45968 
   45969 2008-02-26  Darin Adler  <darin (a] apple.com>
   45970 
   45971         Reviewed by Sam.
   45972 
   45973         - remove use of DeprecatedCString from Windows pasteboard code
   45974 
   45975         * platform/win/ClipboardUtilitiesWin.cpp:
   45976         (WebCore::createGlobalData): Added an overload for Vector<char>.
   45977         Streamlined the logic a bit.
   45978         (WebCore::append): Added. Helper functions for appending to a
   45979         Vector<char>.
   45980         (WebCore::markupToCF_HTML): Rewrote to use Vector<char> instead
   45981         of DeprecatedCString. Also simplified the logic a bit and used
   45982         macros to handle the integer width.
   45983         (WebCore::urlToMarkup): Use Vector<UChar> instead of String.
   45984         (WebCore::replaceNewlinesWithWindowsStyleNewlines): Tweaked.
   45985         * platform/win/ClipboardUtilitiesWin.h: Update type of return
   45986         value from markupToCF_HTML. Did a bit of streamlining too.
   45987         * platform/win/ClipboardWin.cpp:
   45988         (WebCore::writeURL): Update for above changes.
   45989         (WebCore::ClipboardWin::declareAndWriteDragImage): Ditto.
   45990         (WebCore::ClipboardWin::writeRange): Ditto.
   45991         * platform/win/PasteboardWin.cpp:
   45992         (WebCore::Pasteboard::writeSelection): Ditto.
   45993         (WebCore::Pasteboard::writeURL): Ditto.
   45994 
   45995 2008-02-26  Timothy Hatcher  <timothy (a] apple.com>
   45996 
   45997         Reviewed by Adam Roben.
   45998 
   45999         <rdar://problem/5712777> REGRESSION: Arrow up/down in inspector
   46000         source list does not scroll when item at edge is reached (16572)
   46001 
   46002         Use scrollIntoViewIfNeeded() instead of the hand-rolled scrollToElement
   46003         we were using in utilities.js.
   46004 
   46005         * page/inspector/DocumentPanel.js: Use scrollIntoViewIfNeeded instead of scrollToElement.
   46006         * page/inspector/Resource.js: Ditto.
   46007         * page/inspector/inspector.js: Ditto.
   46008         * page/inspector/SourcePanel.js: Use scrollIntoViewIfNeeded instead
   46009         of scrollIntoView, so the source line is centered in the view if needed.
   46010         * page/inspector/utilities.js: Removed scrollToElement().
   46011 
   46012 2008-02-26  David Hyatt  <hyatt (a] apple.com>
   46013 
   46014         Reviewed by Dan
   46015 
   46016         http://bugs.webkit.org/show_bug.cgi?id=17485
   46017 
   46018         Refine our behavior for empty inlines so that they work more correctly with margins/borders/padding.
   46019         Fixes a regression on huffingtonpost.com.
   46020 
   46021         New tests added to fast/inline
   46022 
   46023         * rendering/InlineFlowBox.cpp:
   46024         (WebCore::InlineFlowBox::computeLogicalBoxHeights):
   46025         (WebCore::InlineFlowBox::placeBoxesVertically):
   46026         (WebCore::InlineFlowBox::shrinkBoxesWithNoTextChildren):
   46027         * rendering/RenderFlow.cpp:
   46028         (WebCore::RenderFlow::calcMargins):
   46029         * rendering/RenderFlow.h:
   46030         * rendering/RenderObject.h:
   46031         (WebCore::RenderObject::hasHorizontalBordersPaddingOrMargin):
   46032         (WebCore::RenderObject::hasHorizontalBordersOrPadding):
   46033         * rendering/bidi.cpp:
   46034         (WebCore::getBorderPaddingMargin):
   46035         (WebCore::RenderBlock::layoutInlineChildren):
   46036         (WebCore::inlineFlowRequiresLineBox):
   46037 
   46038 2008-02-26  Sam Weinig  <sam (a] webkit.org>
   46039 
   46040         Fix Windows build.
   46041 
   46042         * platform/text/PlatformString.h:
   46043         (WebCore::reverseFind):
   46044 
   46045 2008-02-26  Dan Bernstein  <mitz (a] apple.com>
   46046 
   46047         Reviewed by Darin Adler.
   46048 
   46049         - fix http://bugs.webkit.org/show_bug.cgi?id=17555
   46050           <rdar://problem/5766016> REGRESSION (r27351): Thumbnails positioned wrong on Getty Images results page
   46051 
   46052         Test: fast/dynamic/subtree-table-cell-height.html
   46053 
   46054         * rendering/RenderObject.cpp:
   46055         (WebCore::objectIsRelayoutBoundary): Exclude table cells, since their
   46056         height depends on their contents even if the CSS height property is
   46057         fixed.
   46058 
   46059 2008-02-25  Sam Weinig  <sam (a] webkit.org>
   46060 
   46061         Reviewed by Dan Bernstein.
   46062 
   46063         Make the cleanPath function in CSSStyleSelector more efficient by using
   46064         a Vector<UChar>.
   46065 
   46066         * css/CSSStyleSelector.cpp:
   46067         (WebCore::cleanPath): Make this function work on a Vector<UChar> instead
   46068         of a String.  Also remove unnecessary reverseFind call that could be acomplished
   46069         with two compares.
   46070         (WebCore::checkPseudoState): Remove reserveCapacity calls now that we are using
   46071         a stack buffer.
   46072         * platform/text/PlatformString.h:
   46073         (WebCore::find): Make this find generic enough that it can be used for
   46074         String::find.
   46075         (WebCore::reverseFind): Implement reverseFind so that it can be used
   46076         for with a UChar* and length.
   46077         * platform/text/StringImpl.cpp:
   46078         (WebCore::StringImpl::find): Use implementation in PlatformString.cpp
   46079         (WebCore::StringImpl::reverseFind): Ditto,
   46080 
   46081 2008-02-26  Satoshi Nakagawa  <artension (a] gmail.com>
   46082 
   46083         Reviewed by Darin. Tweaked and landed by Alexey.
   46084 
   46085         http://bugs.webkit.org/show_bug.cgi?id=17411
   46086         Ideographic comma and full stop should be treated as line-breakable characters
   46087 
   46088         Test: fast/text/line-breaks-after-ideographic-comma-or-full-stop.html
   46089 
   46090         * platform/text/CharacterNames.h: Added ideographicComma and ideographicFullStop.
   46091         * rendering/break_lines.cpp: (WebCore::shouldBreakAfter): Added a workaround for an issue in
   46092         Unicode 5.0 that is causing this.
   46093 
   46094 2008-02-26  Darin Fisher  <darin (a] chromium.org>
   46095 
   46096         Reviewed by eseidel.  Landed by eseidel
   46097 
   46098         Fix improperly initialized m_isUpToDate member variable.
   46099         Fixs 50+ layout tests when run on Tiger.
   46100         http://bugs.webkit.org/show_bug.cgi?id=17549
   46101 
   46102         * platform/network/cf/ResourceResponse.h:
   46103         (WebCore::ResourceResponse::ResourceResponse):
   46104         * platform/network/mac/ResourceResponse.h:
   46105         (WebCore::ResourceResponse::ResourceResponse):
   46106 
   46107 2008-02-25  Dan Bernstein  <mitz (a] apple.com>
   46108 
   46109         Reviewed by Sam Weinig.
   46110 
   46111         - fix http://bugs.webkit.org/show_bug.cgi?id=17152
   46112           Paragraphs indented with :first-letter and text-align CSS render incorrectly
   46113 
   46114         Test: fast/text/apply-start-width-after-skipped-text.html
   46115 
   46116         * rendering/bidi.cpp:
   46117         (WebCore::RenderBlock::findNextLineBreak): Improved the logic for when
   46118         to figure in the padding, border and margin before a text node when the
   46119         line begins inside a text node.
   46120 
   46121 2008-02-25  Kevin Ollivier  <kevino (a] theolliviers.com>
   46122 
   46123         Windows build fix for wx port.
   46124 
   46125         * loader/FTPDirectoryDocument.cpp:
   46126 
   46127 2008-02-25  Mark Rowe  <mrowe (a] apple.com>
   46128 
   46129         Windows build fix.
   46130 
   46131         * platform/network/cf/ResourceResponseCFNet.cpp:
   46132         (WebCore::ResourceResponse::platformCompare):  Implement platformCompare for ResourceResponseCFNet.cpp.
   46133 
   46134 2008-02-25  Beth Dakin  <bdakin (a] apple.com>
   46135 
   46136         Reviewed by Geoff.
   46137 
   46138         Fixed for <rdar://problem/5760530> REGRESSION: Assertion failure in 
   46139         Document::removePendingSheet() from r30438
   46140 
   46141         r30438 added a call to CachedResource::error() from inside 
   46142         Loader::didReceiveData() if a CSS file 4xxs. There was an 
   46143         assumption in the loader, though, that either error() would be 
   46144         called, or didFinishLoading() would be called, so some work is 
   46145         duplicated in each. Now that we are calling an error() on files 
   46146         that will also make it to didFinishLoading() (since they succeeded 
   46147         in the network layer), we need to make sure we do not duplicate the 
   46148         work. CachedCSSStyleSheet::error() calls checkNotify, which ends up 
   46149         decrementing the document's pending style sheet counter. 
   46150         checkNotify() was still getting called, though, through the normal  
   46151         didFinishLoading code path, and the counter was being decremented 
   46152         twice. Bad!
   46153 
   46154         * loader/loader.cpp:
   46155         (WebCore::Loader::didFinishLoading):
   46156         (WebCore::Loader::didReceiveData):
   46157 
   46158 2008-02-25  Mark Rowe  <mrowe (a] apple.com>
   46159 
   46160         Fix the Gtk, wx and Qt builds.
   46161 
   46162         * GNUmakefile.am: Add new files.
   46163         * WebCore.pro: Ditto.
   46164         * WebCoreSources.bkl: Ditto.
   46165         * platform/network/AuthenticationChallengeBase.h: Fix up argument types.
   46166 
   46167 2008-02-25  Darin Fisher  <darin (a] chromium.org>
   46168 
   46169         Reviewed by Darin Adler.
   46170 
   46171         Eliminate some #ifdefs from headers in platform/network.
   46172         http://bugs.webkit.org/show_bug.cgi?id=17210
   46173 
   46174         * WebCore.base.exp:
   46175         * WebCore.order:
   46176         * WebCore.vcproj/WebCore.vcproj:
   46177         * WebCore.xcodeproj/project.pbxproj:
   46178         * dom/XMLTokenizer.cpp:
   46179         * loader/ResourceLoader.h:
   46180         * platform/network/AuthenticationChallenge.cpp: Removed.
   46181         * platform/network/AuthenticationChallenge.h: Removed.
   46182         * platform/network/AuthenticationChallengeBase.cpp: Copied from platform/network/AuthenticationChallenge.cpp.
   46183         (WebCore::AuthenticationChallengeBase::AuthenticationChallengeBase):
   46184         (WebCore::AuthenticationChallengeBase::previousFailureCount):
   46185         (WebCore::AuthenticationChallengeBase::proposedCredential):
   46186         (WebCore::AuthenticationChallengeBase::protectionSpace):
   46187         (WebCore::AuthenticationChallengeBase::failureResponse):
   46188         (WebCore::AuthenticationChallengeBase::error):
   46189         (WebCore::AuthenticationChallengeBase::isNull):
   46190         (WebCore::AuthenticationChallengeBase::nullify):
   46191         (WebCore::AuthenticationChallengeBase::compare):
   46192         * platform/network/AuthenticationChallengeBase.h: Copied from platform/network/AuthenticationChallenge.h.
   46193         (WebCore::AuthenticationChallengeBase::platformCompare):
   46194         (WebCore::operator==):
   46195         (WebCore::operator!=):
   46196         * platform/network/ResourceError.cpp: Removed.
   46197         * platform/network/ResourceError.h: Removed.
   46198         * platform/network/ResourceErrorBase.cpp: Copied from platform/network/ResourceError.cpp.
   46199         (WebCore::ResourceErrorBase::lazyInit):
   46200         (WebCore::ResourceErrorBase::compare):
   46201         * platform/network/ResourceErrorBase.h: Copied from platform/network/ResourceError.h.
   46202         (WebCore::ResourceErrorBase::isNull):
   46203         (WebCore::ResourceErrorBase::domain):
   46204         (WebCore::ResourceErrorBase::errorCode):
   46205         (WebCore::ResourceErrorBase::failingURL):
   46206         (WebCore::ResourceErrorBase::localizedDescription):
   46207         (WebCore::ResourceErrorBase::ResourceErrorBase):
   46208         (WebCore::ResourceErrorBase::platformLazyInit):
   46209         (WebCore::ResourceErrorBase::platformCompare):
   46210         (WebCore::operator==):
   46211         * platform/network/ResourceResponseBase.cpp:
   46212         (WebCore::ResourceResponseBase::isHTTP):
   46213         (WebCore::ResourceResponseBase::url):
   46214         (WebCore::ResourceResponseBase::setUrl):
   46215         (WebCore::ResourceResponseBase::mimeType):
   46216         (WebCore::ResourceResponseBase::setMimeType):
   46217         (WebCore::ResourceResponseBase::expectedContentLength):
   46218         (WebCore::ResourceResponseBase::setExpectedContentLength):
   46219         (WebCore::ResourceResponseBase::textEncodingName):
   46220         (WebCore::ResourceResponseBase::setTextEncodingName):
   46221         (WebCore::ResourceResponseBase::suggestedFilename):
   46222         (WebCore::ResourceResponseBase::setSuggestedFilename):
   46223         (WebCore::ResourceResponseBase::httpStatusCode):
   46224         (WebCore::ResourceResponseBase::setHTTPStatusCode):
   46225         (WebCore::ResourceResponseBase::httpStatusText):
   46226         (WebCore::ResourceResponseBase::setHTTPStatusText):
   46227         (WebCore::ResourceResponseBase::httpHeaderField):
   46228         (WebCore::ResourceResponseBase::setHTTPHeaderField):
   46229         (WebCore::ResourceResponseBase::httpHeaderFields):
   46230         (WebCore::ResourceResponseBase::isAttachment):
   46231         (WebCore::ResourceResponseBase::setExpirationDate):
   46232         (WebCore::ResourceResponseBase::expirationDate):
   46233         (WebCore::ResourceResponseBase::setLastModifiedDate):
   46234         (WebCore::ResourceResponseBase::lastModifiedDate):
   46235         (WebCore::ResourceResponseBase::lazyInit):
   46236         (WebCore::ResourceResponseBase::compare):
   46237         * platform/network/ResourceResponseBase.h:
   46238         (WebCore::ResourceResponseBase::ResourceResponseBase):
   46239         (WebCore::ResourceResponseBase::platformLazyInit):
   46240         (WebCore::ResourceResponseBase::platformCompare):
   46241         (WebCore::operator==):
   46242         * platform/network/cf/AuthenticationCF.cpp:
   46243         (WebCore::AuthenticationChallenge::AuthenticationChallenge):
   46244         (WebCore::AuthenticationChallenge::platformCompare):
   46245         * platform/network/cf/AuthenticationChallenge.h: Added.
   46246         (WebCore::AuthenticationChallenge::AuthenticationChallenge):
   46247         (WebCore::AuthenticationChallenge::sourceHandle):
   46248         (WebCore::AuthenticationChallenge::cfURLAuthChallengeRef):
   46249         * platform/network/cf/ResourceError.h: Added.
   46250         (WebCore::ResourceError::ResourceError):
   46251         * platform/network/cf/ResourceErrorCF.cpp:
   46252         (WebCore::ResourceError::ResourceError):
   46253         (WebCore::ResourceError::platformLazyInit):
   46254         (WebCore::ResourceError::platformCompare):
   46255         (WebCore::ResourceError::operator CFStreamError):
   46256         * platform/network/cf/ResourceResponse.h:
   46257         (WebCore::ResourceResponse::ResourceResponse):
   46258         * platform/network/cf/ResourceResponseCFNet.cpp:
   46259         (WebCore::ResourceResponse::platformLazyInit):
   46260         * platform/network/curl/AuthenticationChallenge.h: Added.
   46261         (WebCore::AuthenticationChallenge::AuthenticationChallenge):
   46262         * platform/network/curl/ResourceError.h: Added.
   46263         (WebCore::ResourceError::ResourceError):
   46264         * platform/network/curl/ResourceResponse.h:
   46265         (WebCore::ResourceResponse::ResourceResponse):
   46266         * platform/network/mac/AuthenticationChallenge.h: Added.
   46267         (WebCore::AuthenticationChallenge::AuthenticationChallenge):
   46268         (WebCore::AuthenticationChallenge::sender):
   46269         (WebCore::AuthenticationChallenge::nsURLAuthenticationChallenge):
   46270         * platform/network/mac/AuthenticationMac.mm:
   46271         (WebCore::AuthenticationChallenge::AuthenticationChallenge):
   46272         (WebCore::AuthenticationChallenge::platformCompare):
   46273         * platform/network/mac/ResourceError.h: Added.
   46274         (WebCore::ResourceError::ResourceError):
   46275         * platform/network/mac/ResourceErrorMac.mm:
   46276         (WebCore::ResourceError::platformLazyInit):
   46277         (WebCore::ResourceError::platformCompare):
   46278         * platform/network/mac/ResourceResponse.h:
   46279         (WebCore::ResourceResponse::ResourceResponse):
   46280         * platform/network/mac/ResourceResponseMac.mm:
   46281         (WebCore::ResourceResponse::platformLazyInit):
   46282         (WebCore::ResourceResponse::platformCompare):
   46283         * platform/network/qt/AuthenticationChallenge.h: Added.
   46284         (WebCore::AuthenticationChallenge::AuthenticationChallenge):
   46285         * platform/network/qt/ResourceError.h: Added.
   46286         (WebCore::ResourceError::ResourceError):
   46287         * platform/network/qt/ResourceResponse.h:
   46288         (WebCore::ResourceResponse::ResourceResponse):
   46289         * xml/XSLTProcessor.cpp:
   46290 
   46291 2008-02-25  Anders Carlsson  <andersca (a] apple.com>
   46292 
   46293         Reviewed by Darin.
   46294 
   46295         Move remaining render style objects over to start with a refcount of 1 and get
   46296         rid of DeprecatedDataRef.
   46297         
   46298         * rendering/DataRef.h:
   46299         (WebCore::DataRef::operator*):
   46300         (WebCore::DataRef::operator->):
   46301         * rendering/RenderStyle.h:
   46302         * rendering/SVGRenderStyle.cpp:
   46303         (WebCore::SVGRenderStyle::SVGRenderStyle):
   46304         * rendering/SVGRenderStyle.h:
   46305         (WebCore::SVGRenderStyle::create):
   46306         (WebCore::SVGRenderStyle::copy):
   46307         * rendering/SVGRenderStyleDefs.cpp:
   46308         (StyleFillData::StyleFillData):
   46309         (StyleStrokeData::StyleStrokeData):
   46310         (StyleStopData::StyleStopData):
   46311         (StyleTextData::StyleTextData):
   46312         (StyleClipData::StyleClipData):
   46313         (StyleMaskData::StyleMaskData):
   46314         (StyleMarkerData::StyleMarkerData):
   46315         (StyleMiscData::StyleMiscData):
   46316         * rendering/SVGRenderStyleDefs.h:
   46317         (WebCore::StyleFillData::create):
   46318         (WebCore::StyleFillData::copy):
   46319         (WebCore::StyleStrokeData::create):
   46320         (WebCore::StyleStrokeData::copy):
   46321         (WebCore::StyleStopData::create):
   46322         (WebCore::StyleStopData::copy):
   46323         (WebCore::StyleTextData::create):
   46324         (WebCore::StyleTextData::copy):
   46325         (WebCore::StyleClipData::create):
   46326         (WebCore::StyleClipData::copy):
   46327         (WebCore::StyleMaskData::create):
   46328         (WebCore::StyleMaskData::copy):
   46329         (WebCore::StyleMarkerData::create):
   46330         (WebCore::StyleMarkerData::copy):
   46331         (WebCore::StyleMiscData::create):
   46332         (WebCore::StyleMiscData::copy):
   46333 
   46334 2008-02-25  Dan Bernstein  <mitz (a] apple.com>
   46335 
   46336         Reviewed by Dave Hyatt.
   46337 
   46338         - remove file-static BidiRun variables from bidi.cpp
   46339 
   46340         * platform/text/BidiResolver.h:
   46341         (WebCore::BidiResolver::): Initialize m_logicallyLastRun.
   46342         (WebCore::BidiResolver::logicallyLastRun): Added.
   46343         (WebCore::BidiResolver::runCount): Made unsigned.
   46344         (WebCore::::reverseRuns): Changed ints to unsigned.
   46345         (WebCore::::createBidiRunsForLine): Made this function set
   46346         m_logicallyLastRun.
   46347         * rendering/RenderBlock.h:
   46348         * rendering/bidi.cpp:
   46349         (WebCore::BidiState::addRun): Removed setting of sLogicallyLastBidiRun.
   46350         (WebCore::RenderBlock::constructLine): Removed unused start parameter
   46351         and added run count and first and last run parameters. Replaced end
   46352         parameter with lastLine boolean and endObject pointer.
   46353         (WebCore::RenderBlock::computeHorizontalPositionsForLine): Added first
   46354         and logically last run parameters.
   46355         (WebCore::RenderBlock::computeVerticalPositionsForLine): Added firstRun
   46356         parameter.
   46357         (WebCore::RenderBlock::bidiReorderLine): Removed setting of static
   46358         variables.
   46359         (WebCore::RenderBlock::layoutInlineChildren): Changed to use BidiState
   46360         accessors instead of file statics.
   46361 
   46362 2008-02-25  Rodney Dawes  <dobey (a] wayofthemonkey.com>
   46363 
   46364         Reviewed by Jon Honeycutt.
   46365 
   46366         http://bugs.webkit.org/show_bug.cgi?id=16924
   46367         Bug 16924: Shared PluginDatabase, PluginPackage, and PlugInInfoStore implementations
   46368 
   46369         Add PluginInfoStore.cpp and new PluginDatabase.cpp to GTK+ and Qt ports.
   46370         Remove old PlugInInfoStoreQt.cpp as it is obsoleted by shared code.
   46371         Add PluginInfoStore, PluginDatabase, and PluginStream files to Wx build.
   46372         Add new PluginDatabase.cpp to Windows build.
   46373         Add temporary stubs for new PluginDatabase and PluginPackage.
   46374         shared classes to GTK+, Qt, and Wx ports.
   46375         Copy PluginDatabaseWin.cpp to PluginDatabase.cpp to preserve history.
   46376         Remove shared code from PluginDatabaseWin.cpp.
   46377         Remove Windows-specific code from PluginDatabase.cpp.
   46378         Use PlatformModule and PlatformFileTime instead of HMODULE and FILETIME.
   46379         Remove extraneous PluginPackage:: from hash() class method prototype.
   46380         Subsume storeFileVersion into PluginPackage::fetchInfo.
   46381         Add cross-platform PlatformModuleVersion type definition.
   46382         Use PlatformModuleVersion to store the module version.
   46383         Rename m_fileVersion[ML]S to m_moduleVersion.
   46384         Change compareFileVersion to use PlatformModuleVersion as the argument.
   46385         Move PluginView::determineQuirks and m_quirks to PluginPackage.
   46386         Updated determineQuirks for the PlatformModuleVersion.
   46387 
   46388         * GNUmakefile.am:
   46389         * WebCore.pro:
   46390         * WebCoreSources.bkl:
   46391         * webcore-base.bkl:
   46392         * WebCore.vcproj/WebCore.vcproj:
   46393         * Platform/FileSystem.h:
   46394         * platform/qt/PlugInInfoStoreQt.cpp:
   46395         * platform/gtk/TemporaryLinkStubs.cpp:
   46396         * platform/qt/TemporaryLinkStubs.cpp:
   46397         * platform/wx/TemporaryLinkStubs.cpp:
   46398         * plugins/PluginDatabase.cpp:
   46399         * plugins/PluginDatabase.h:
   46400         * plugins/win/PluginDatabaseWin.cpp:
   46401         * plugins/PluginPackage.h:
   46402         * plugins/win/PluginPackageWin.cpp:
   46403         * plugins/PluginView.h:
   46404         * plugins/win/PluginViewWin.cpp:
   46405 
   46406 2008-02-25  Anders Carlsson  <andersca (a] apple.com>
   46407 
   46408         Reviewed by Darin.
   46409 
   46410         Make more style objects start out with a refcount of 1.
   46411         
   46412         * rendering/RenderStyle.cpp:
   46413         (WebCore::StyleSurroundData::StyleSurroundData):
   46414         (WebCore::StyleBoxData::StyleBoxData):
   46415         (WebCore::StyleVisualData::StyleVisualData):
   46416         (WebCore::StyleBackgroundData::StyleBackgroundData):
   46417         (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
   46418         (WebCore::StyleRareInheritedData::StyleRareInheritedData):
   46419         (WebCore::StyleInheritedData::StyleInheritedData):
   46420         * rendering/RenderStyle.h:
   46421         (WebCore::StyleSurroundData::create):
   46422         (WebCore::StyleSurroundData::copy):
   46423         (WebCore::StyleBoxData::create):
   46424         (WebCore::StyleBoxData::copy):
   46425         (WebCore::StyleVisualData::create):
   46426         (WebCore::StyleVisualData::copy):
   46427         (WebCore::StyleBackgroundData::create):
   46428         (WebCore::StyleBackgroundData::copy):
   46429         (WebCore::StyleBackgroundData::~StyleBackgroundData):
   46430         (WebCore::StyleRareNonInheritedData::create):
   46431         (WebCore::StyleRareNonInheritedData::copy):
   46432         (WebCore::StyleRareInheritedData::create):
   46433         (WebCore::StyleRareInheritedData::copy):
   46434         (WebCore::StyleInheritedData::create):
   46435         (WebCore::StyleInheritedData::copy):
   46436 
   46437 2008-02-25  Anders Carlsson  <andersca (a] apple.com>
   46438 
   46439         Reviewed by Darin.
   46440 
   46441         Make some of the refcounted style objects start out with a refcount of 1.
   46442 
   46443         * rendering/DataRef.h:
   46444         Make a DeprecatedDataRef class which is just a copy of the old DataRef class.
   46445         Change DataRef to use ::create() and ::copy() instead of the constructors.
   46446         Change DataRef's pointer to be a RefPtr instead.
   46447 
   46448         * rendering/RenderStyle.cpp:
   46449         (WebCore::StyleMarqueeData::StyleMarqueeData):
   46450         (WebCore::StyleFlexibleBoxData::StyleFlexibleBoxData):
   46451         (WebCore::StyleMultiColData::StyleMultiColData):
   46452         (WebCore::StyleTransformData::StyleTransformData):
   46453         Start with a RefCount of 1.
   46454         
   46455         * rendering/RenderStyle.h:
   46456         * rendering/SVGRenderStyle.h:
   46457         Add ::create() and ::copy() methods. Make not yet converted classes use DeprecatedDataRef.
   46458 
   46459 2008-02-25  Darin Adler  <darin (a] apple.com>
   46460 
   46461         Reviewed by Anders.
   46462         Based on a patch by Tim Steele <timsteele41 (a] gmail.com>.
   46463 
   46464         - fix http://bugs.webkit.org/show_bug.cgi?id=17186
   46465           Fragment navigation within a page permanently cancels meta refresh
   46466 
   46467         Test: fast/loader/meta-refresh-anchor-click.html
   46468 
   46469         * loader/FrameLoader.cpp:
   46470         (WebCore::FrameLoader::load): When load type is FrameLoadTypeRedirectWithLockedHistory,
   46471         always do a real load. This makes sure that meta refresh loads are treated as real loads
   46472         rather than anchor scrolls. Also tweaked formatting a bit.
   46473         (WebCore::FrameLoader::continueFragmentScrollAfterNavigationPolicy): This function is
   46474         an alternate way to complete a load, so it needs to start the redirection timer if
   46475         redirection has already been scheduled.
   46476 
   46477 2008-02-25  Dan Bernstein  <mitz (a] apple.com>
   46478 
   46479         Reviewed by Darin Adler.
   46480 
   46481         - avoid counting spaces in non-justified text
   46482 
   46483         * rendering/bidi.cpp:
   46484         Removed file-static numSpaces.
   46485         (WebCore::BidiState::addRun): Removed space counting.
   46486         (WebCore::RenderBlock::computeHorizontalPositionsForLine): Added space
   46487         counting, conditional on the block having the text-align: justify
   46488         property value.
   46489         (WebCore::RenderBlock::bidiReorderLine): Removed initialization of
   46490         numSpaces.
   46491 
   46492 2008-02-25  Darin Adler  <darin (a] apple.com>
   46493 
   46494         Requested by Steve.
   46495 
   46496         * platform/graphics/cg/ImageSourceCG.cpp:
   46497         (WebCore::ImageSource::createFrameAtIndex): Put the string into a global
   46498         variable (because CFSTR is inefficient on Windows).
   46499 
   46500 2008-02-25  Darin Adler  <darin (a] apple.com>
   46501 
   46502         Reviewed by Adam.
   46503 
   46504         * WebCore.base.exp: Export blankURL, and sort the file.
   46505 
   46506 2008-02-25  Simon Hausmann  <hausmann (a] webkit.org>
   46507 
   46508         Reviewed by Mark Rowe.
   46509 
   46510         Fix compilation with gcc 4.3, added stdio.h and unistd.h inclusions.
   46511 
   46512         * dom/Position.cpp:
   46513         * dom/Range.cpp:
   46514         * editing/Selection.cpp:
   46515         * editing/SelectionController.cpp:
   46516         * editing/VisiblePosition.cpp:
   46517         * history/HistoryItem.cpp:
   46518         * loader/Cache.cpp:
   46519         * loader/FTPDirectoryParser.cpp:
   46520         * platform/KURL.cpp:
   46521         * platform/gtk/FileSystemGtk.cpp:
   46522         * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
   46523         * platform/text/TextCodecLatin1.cpp:
   46524         * platform/text/TextCodecUserDefined.cpp:
   46525         * rendering/CounterNode.cpp:
   46526         * rendering/RenderObject.cpp:
   46527 
   46528 2008-02-25  Johnny Ding  <johnnyding.webkit (a] gmail.com>
   46529 
   46530         Reviewed by Darin Adler.
   46531 
   46532         - fix http://bugs.webkit.org/show_bug.cgi?id=17444
   46533 
   46534         In HTMLTokenizer::write, the code checks 'pendingScripts.isEmpty()' to decide
   46535         whether to save prependingSrc or not. However, in HTMLTokenizer::scriptHandler
   46536         and HTMLTokenizer::scriptExecution, the code checks testBit:LoadingExtScript
   46537         to decide whether to save prependingSrc or not. The later behavior is not right
   46538         because, in scriptHandler and scriptExecution, even the pendingScripts queue is
   46539         empty, the testBit:LoadingExtScript might be TRUE.
   46540 
   46541         Test: fast/tokenizer/nested-multiple-scripts.html
   46542 
   46543         * html/HTMLTokenizer.cpp:
   46544         (WebCore::HTMLTokenizer::scriptHandler): check pendingScripts.isEmpty() instead of
   46545         checking state.loadingExtScript().
   46546         (WebCore::HTMLTokenizer::scriptExecution): check pendingScripts.isEmpty() instead of
   46547         checking state.loadingExtScript().
   46548 
   46549 2008-02-24  Darin Adler  <darin (a] apple.com>
   46550 
   46551         * dom/Document.h: Removed stray duplicate declaration of
   46552         RegisteredEventListenerList.
   46553 
   46554 2008-02-24  Darin Adler  <darin (a] apple.com>
   46555 
   46556         * dom/Range.cpp:
   46557         (WebCore::Range::surroundContents): Removed incorrect comment.
   46558         I added it a while ago, and I was just mixed up.
   46559 
   46560 2008-02-24  Darin Adler  <darin (a] apple.com>
   46561 
   46562         - quick follow-up to that last check-in
   46563 
   46564         * platform/graphics/cg/ImageSourceCG.cpp:
   46565         (WebCore::ImageSource::createFrameAtIndex): Use CFEqual instead of
   46566         WebCore::String's == for speed.
   46567 
   46568 2008-02-24  Michael Knaup  <michael.knaup (a] mac.com>
   46569 
   46570         Reviewed by Darin.
   46571 
   46572         Bug 8749: XBM rendered incorrectly as black on white
   46573 
   46574         xbm images are now created and rendered using black on a
   46575         transparent background (same behavior as in Firefox)
   46576 
   46577         Test: platform/mac/fast/canvas/canvas-draw-xbm-image.html
   46578 
   46579         * platform/graphics/cg/ImageSourceCG.cpp:
   46580         (WebCore::ImageSource::createFrameAtIndex):
   46581 
   46582 2008-02-24  Dan Bernstein  <mitz (a] apple.com>
   46583 
   46584         Reviewed by Darin Adler.
   46585 
   46586         - fix http://bugs.webkit.org/show_bug.cgi?id=17471
   46587           REGRESSION (r30438): Crash in deleteLineBoxes in cursor-adjusting code browsing Acid3
   46588 
   46589         Test: http/tests/misc/object-image-error.html
   46590 
   46591         * html/HTMLObjectElement.cpp:
   46592         (WebCore::HTMLObjectElement::attach): Added an early return in case
   46593         updateFromElement() has changed the object to use fallback content.
   46594 
   46595 2008-02-24  Dan Bernstein  <mitz (a] apple.com>
   46596 
   46597         Reviewed by Darin Adler.
   46598 
   46599         - fix float positioning when a float that does not fit on the line is
   46600           followed by a float that does
   46601 
   46602         Test: fast/block/float/narrow-after-wide.html
   46603 
   46604         * rendering/bidi.cpp:
   46605         (WebCore::RenderBlock::findNextLineBreak): Changed to not position any
   46606         more floats on the line once a float that does not fit is encountered.
   46607         That float should be pushed to the next line, and so should all floats
   46608         that follow, regardless of whether they can fit on the current line.
   46609 
   46610 2008-02-24  Darin Adler  <darin (a] apple.com>
   46611 
   46612         Reviewed by Sam.
   46613 
   46614         - fix http://bugs.webkit.org/show_bug.cgi?id=16770
   46615           Acid3 expects :visited styled links to restyle on iframe load
   46616 
   46617         Disentangle global history updating from the back/forward history.
   46618         There are many cases where we don't want to create a new back/forward
   46619         item, but we do still want to add to the global history (used for visited
   46620         link coloring) in those cases.
   46621 
   46622         Test: fast/history/subframe-is-visited.html
   46623 
   46624         * loader/FrameLoader.cpp:
   46625         (WebCore::FrameLoader::updateGlobalHistory): Renamed from
   46626         addHistoryForCurrentLocation and removed the back/forward handling.
   46627         (WebCore::FrameLoader::updateHistoryForStandardLoad): Streamlined logic a
   46628         bit. Replaced call to addHistoryForCurrentLocation with a call to
   46629         addBackForwardItemClippedAtTarget. Added an unconditional call to
   46630         updateGlobalHistory.
   46631         (WebCore::FrameLoader::updateHistoryForClientRedirect): Added a FIXME;
   46632         why doesn't this function update global history?
   46633         (WebCore::FrameLoader::updateHistoryForBackForwardNavigation): Ditto.
   46634         (WebCore::FrameLoader::updateHistoryForReload): Replaced the direct call
   46635         the client with a call to the new updateGlobalHistory function.
   46636         (WebCore::FrameLoader::updateHistoryForRedirectWithLockedHistory): Did
   46637         the same changes as for updateHistoryForStandardLoad.
   46638         * loader/FrameLoader.h: More of the same.
   46639 
   46640         * loader/FrameLoaderClient.h: Removed updateGlobalHistoryForReload and
   46641         renamed updateGlobalHistoryForStandardLoad to updateGlobalHistory.
   46642 
   46643         * svg/graphics/SVGImageEmptyClients.h:
   46644         (WebCore::SVGEmptyFrameLoaderClient::updateGlobalHistory): Updated to
   46645         match the above.
   46646 
   46647 2008-02-23  Darin Adler  <darin (a] apple.com>
   46648 
   46649         Reviewed by Sam.
   46650 
   46651         - fix http://bugs.webkit.org/show_bug.cgi?id=17508
   46652           REGRESSION (r30535): mailto regression tests failing
   46653 
   46654         * html/HTMLFormElement.cpp:
   46655         (WebCore::HTMLFormElement::submit): Restore the old logic, with its unpleasant
   46656         trip through String do to the replace operation. It's inefficient, but there's
   46657         no real reason to worry about the efficiency of mailto forms, since that feature
   46658         is nearly obsolete.
   46659 
   46660 2008-02-23  Darin Adler  <darin (a] apple.com>
   46661 
   46662         Reviewed by Sam.
   46663 
   46664         - replace SegmentedString's use of DeprecatedValueList with Deque
   46665 
   46666         Testing indicates this is a slight speed-up for page loading.
   46667 
   46668         * platform/text/SegmentedString.cpp:
   46669         (WebCore::SegmentedString::length): Update to use Deque.
   46670         (WebCore::SegmentedString::setExcludeLineNumbers): Ditto.
   46671         (WebCore::SegmentedString::append): Ditto.
   46672         (WebCore::SegmentedString::prepend): Ditto.
   46673         (WebCore::SegmentedString::advanceSubstring): Ditto.
   46674         (WebCore::SegmentedString::toString): Ditto.
   46675         * platform/text/SegmentedString.h: Tweak formatting. Don't bother making an entire
   46676         class private with a single friend. Change m_sbstrings from a DeprecatedValueList
   46677         to a Deque.
   46678 
   46679 2008-02-23  Darin Adler  <darin (a] apple.com>
   46680 
   46681         Reviewed by Anders.
   46682 
   46683         - fix http://bugs.webkit.org/show_bug.cgi?id=17506
   46684           REGRESSION (r30535): ASSERTION FAILED: i < size()
   46685 
   46686         * loader/TextResourceDecoder.cpp:
   46687         (WebCore::findTextEncoding): Fix off-by-one in code that null-terminates
   46688         the C string here.
   46689 
   46690 2008-02-23  Matt Lilek  <webkit (a] mattlilek.com>
   46691 
   46692         Not reviewed, build fix.
   46693 
   46694         * platform/network/cf/FormDataStreamCFNet.cpp:
   46695         (WebCore::httpBodyFromRequest):
   46696         * plugins/win/PluginViewWin.cpp:
   46697         (WebCore::PluginView::handlePost):
   46698 
   46699 2008-02-23  Dan Bernstein  <mitz (a] apple.com>
   46700 
   46701         - fix a typo
   46702 
   46703         * platform/graphics/win/GlyphPageTreeNodeCGWin.cpp:
   46704         (WebCore::GlyphPage::fill):
   46705         * platform/graphics/win/GlyphPageTreeNodeCairoWin.cpp:
   46706         (WebCore::GlyphPage::fill):
   46707 
   46708 2008-02-23  Dan Bernstein  <mitz (a] apple.com>
   46709 
   46710         Reviewed by Anders Carlsson.
   46711 
   46712         - fix GlyphPage::fill() logic for partial page fills
   46713 
   46714         * platform/graphics/win/GlyphPageTreeNodeCGWin.cpp:
   46715         (WebCore::GlyphPage::fill): Changed the test for non-BMP characters to
   46716         work correctly when the length parameter is less than a full page size.
   46717         Also updated the comment.
   46718         * platform/graphics/win/GlyphPageTreeNodeCairoWin.cpp:
   46719         (WebCore::GlyphPage::fill): Ditto.
   46720 
   46721 2008-02-23  Kevin Ollivier  <kevino (a] theolliviers.com>
   46722 
   46723         Reviewed by Darin Adler.
   46724 
   46725         Move text drawing into wxcode, as we need platform-dependent
   46726         APIs for drawing non-kerned text, which wx doesn't yet have.
   46727         (But hopefully will, once these APIs are fleshed out on all
   46728         platforms!)
   46729 
   46730         http://bugs.webkit.org/show_bug.cgi?id=17396
   46731 
   46732         * platform/graphics/wx/FontWx.cpp:
   46733         (WebCore::Font::drawGlyphs):
   46734         * platform/wx/wxcode/gtk/non-kerned-drawing.cpp: Added.
   46735         * platform/wx/wxcode/mac/carbon/non-kerned-drawing.cpp: Added.
   46736         * platform/wx/wxcode/non-kerned-drawing.h: Added.
   46737         * platform/wx/wxcode/win/non-kerned-drawing.cpp: Added.
   46738         * webcore-wx.bkl:
   46739 
   46740 2008-02-23  Darin Adler  <darin (a] apple.com>
   46741 
   46742         Pointed out by Mitz.
   46743 
   46744         * loader/TextResourceDecoder.cpp:
   46745         (WebCore::find): Fix a "==" that was supposed to be ">".
   46746         (WebCore::findIgnoringCase): Ditto.
   46747 
   46748 2008-02-23  Darin Adler  <darin (a] apple.com>
   46749 
   46750         Reviewed by Sam.
   46751 
   46752         * html/HTMLFormElement.cpp:
   46753         (WebCore::appendEncodedString): Fix buffer overrun in the code I just landed.
   46754 
   46755 2008-02-23  Darin Adler  <darin (a] apple.com>
   46756 
   46757         Reviewed by Sam.
   46758 
   46759         - remove all but 1 remaining use of DeprecatedCString
   46760         - change FormData to start refcount at 1
   46761 
   46762         * html/HTMLFormElement.cpp:
   46763         (WebCore::appendString): Added. Helpers for Vector<char>.
   46764         (WebCore::appendEncodedString): Renamed from encodeCString and changed to
   46765         append to an existing Vector<char> to cut down a bit on memory allocation.
   46766         (WebCore::HTMLFormElement::formData): Replace the DeprecatedCString called
   46767         enc_string with a Vector<char> called encodedData. Change to use the new
   46768         FormData::create function.
   46769         (WebCore::HTMLFormElement::submit): Same thing, for the mailto form code.
   46770 
   46771         * loader/TextResourceDecoder.cpp:
   46772         (WebCore::find): Added. Helper for searching in char* with length.
   46773         (WebCore::findIgnoringCase): Ditto.
   46774         (WebCore::findTextEncoding): Added. Helper for looking up a text encoding
   46775         when we have a char* with length rather than a null-terminated char*.
   46776         (WebCore::findXMLEncoding): Changed to use char* and length rather than
   46777         DeprecatedCString. Also fixed some things that would be one-character
   46778         buffer overruns in a string that's not null-terminated.
   46779         (WebCore::TextResourceDecoder::checkForCSSCharset): Change to use
   46780         findTextEncoding rather than constructing a CString to pass to the
   46781         TextEncodingconstructor.
   46782         (WebCore::TextResourceDecoder::checkForHeadCharset): Ditto.
   46783 
   46784         * platform/network/FormData.cpp:
   46785         (WebCore::FormData::FormData): Changed to start refcount at 1.
   46786         (WebCore::FormData::create): Added.
   46787         (WebCore::FormData::copy): Call adoptRef since refcount starts at 1.
   46788         * platform/network/FormData.h: Made constructor private. Added create functions.
   46789 
   46790         * platform/network/mac/ResourceRequestMac.mm:
   46791         (WebCore::ResourceRequest::doUpdateResourceRequest): Call FormData::create.
   46792         * xml/XMLHttpRequest.cpp:
   46793         (WebCore::XMLHttpRequest::send): Ditto.
   46794 
   46795 2008-02-23  Darin Adler  <darin (a] apple.com>
   46796 
   46797         Reviewed by Anders.
   46798 
   46799         - http://bugs.webkit.org/show_bug.cgi?id=17067
   46800           eliminate attributes parameter from JSObject::put for speed/clarity
   46801 
   46802         * bindings/js/JSCSSStyleDeclarationCustom.cpp:
   46803         (WebCore::JSCSSStyleDeclaration::customPut): Remove attributes argument.
   46804 
   46805         * bindings/js/JSCanvasPixelArrayCustom.cpp:
   46806         (WebCore::JSCanvasPixelArray::indexGetter): Use early exit idiom.
   46807         (WebCore::JSCanvasPixelArray::indexSetter): Moved length check into the
   46808         CanvasPixelArray object, for consistency with the getter. Removed attributes
   46809         argument.
   46810 
   46811         * bindings/js/JSDOMWindowCustom.cpp:
   46812         (WebCore::JSDOMWindow::customPut): Removed special case for variable
   46813         initialization, which is not needed since that does use put any more.
   46814         Removed attributes argument.
   46815 
   46816         * bindings/js/JSEventTargetBase.h:
   46817         (WebCore::JSEventTargetBase::putValueProperty): Removed attributes argument.
   46818         (WebCore::JSEventTargetBase::put): Ditto.
   46819         (WebCore::JSEventTargetPrototype::self): Removed Internal flag.
   46820         * bindings/js/JSEventTargetNode.cpp:
   46821         (WebCore::JSEventTargetNode::put): Removed attributes argument.
   46822         (WebCore::JSEventTargetNode::putValueProperty): Ditto.
   46823         * bindings/js/JSEventTargetNode.h: Ditto.
   46824         * bindings/js/JSHTMLAppletElementCustom.cpp:
   46825         (WebCore::JSHTMLAppletElement::customPut): Ditto.
   46826         * bindings/js/JSHTMLEmbedElementCustom.cpp:
   46827         (WebCore::JSHTMLEmbedElement::customPut): Ditto.
   46828         * bindings/js/JSHTMLInputElementBase.cpp:
   46829         (WebCore::JSHTMLInputElementBase::put): Ditto.
   46830         (WebCore::JSHTMLInputElementBase::putValueProperty): Ditto.
   46831         * bindings/js/JSHTMLInputElementBase.h: Ditto.
   46832         * bindings/js/JSHTMLObjectElementCustom.cpp:
   46833         (WebCore::JSHTMLObjectElement::customPut): Ditto.
   46834         * bindings/js/JSHTMLOptionsCollectionCustom.cpp:
   46835         (WebCore::JSHTMLOptionsCollection::indexSetter): Ditto.
   46836         * bindings/js/JSHTMLSelectElementCustom.cpp:
   46837         (WebCore::JSHTMLSelectElement::indexSetter): Ditto.
   46838         * bindings/js/JSHistoryCustom.cpp:
   46839         (WebCore::JSHistory::customPut): Ditto.
   46840         * bindings/js/JSLocation.cpp:
   46841         (WebCore::JSLocation::put): Ditto.
   46842         * bindings/js/JSLocation.h: Ditto.
   46843         * bindings/js/JSXMLHttpRequest.cpp:
   46844         (WebCore::JSXMLHttpRequest::put): Ditto.
   46845         (WebCore::JSXMLHttpRequest::putValueProperty): Ditto.
   46846         * bindings/js/JSXMLHttpRequest.h: Ditto.
   46847 
   46848         * bindings/js/kjs_dom.cpp:
   46849         (WebCore::getRuntimeObject): Changed return type to JSObject*.
   46850         * bindings/js/kjs_dom.h: Ditto.
   46851 
   46852         * bindings/js/kjs_events.cpp:
   46853         (WebCore::JSClipboard::put): Removed attributes argument.
   46854         (WebCore::JSClipboard::putValueProperty): Ditto.
   46855         * bindings/js/kjs_events.h: Ditto.
   46856 
   46857         * bindings/js/kjs_html.cpp:
   46858         (WebCore::runtimeObjectGetter): Updated for change to getRuntimeObject to
   46859         return a JSObject. Used early exit idiom.
   46860         (WebCore::runtimeObjectPropertyGetter): Ditto.
   46861         (WebCore::runtimeObjectCustomGetOwnPropertySlot): Ditto.
   46862         (WebCore::runtimeObjectCustomPut): Use hasProperty to check for properties
   46863         that we should put with the property syntax instead of canPut.
   46864         (WebCore::runtimeObjectImplementsCall): Ditto.
   46865         (WebCore::runtimeObjectCallAsFunction): Ditto.
   46866         * bindings/js/kjs_html.h: Removed attributes argument to runtimeObjectCustomPut.
   46867 
   46868         * bindings/js/kjs_window.cpp:
   46869         (KJS::Window::put): Removed attributes argument.
   46870         * bindings/js/kjs_window.h: Ditto.
   46871 
   46872         * bindings/scripts/CodeGeneratorJS.pm: Removed attributes argument from put,
   46873         putValueProperty, customPut, and indexSetter.
   46874 
   46875         * html/CanvasPixelArray.h:
   46876         (WebCore::CanvasPixelArray::set): Added index checking here, as in the get
   46877         function. Before, the checking was done in the JavaScript bindings for set.
   46878 
   46879 2008-02-23  Brent Fulgham  <bfulgham (a] gmail.com>
   46880 
   46881         Reviewed by Adam and Darin.
   46882 
   46883         http://bugs.webkit.org/show_bug.cgi?id=17442
   46884         Correct the Windows Cairo implementation of GraphicsContext so
   46885         that Windows 'WorldTransform' is kept in sync with the Cairo
   46886         transormations.
   46887 
   46888         Also corrects an uninitialized variable in the Cairo Windows
   46889         image drag handler.
   46890 
   46891         WARNING: NO TEST CASES ADDED OR CHANGED
   46892 
   46893         * platform/graphics/cairo/GraphicsContextCairo.cpp:  Modify
   46894           methods to call GraphicsContextPlatformPrivate calls, just
   46895           as is done for the CoreGraphics version.  These calls are
   46896           nop's for everything but Windows.
   46897         (WebCore::GraphicsContext::savePlatformState):
   46898         (WebCore::GraphicsContext::restorePlatformState):
   46899         (WebCore::GraphicsContext::clip):
   46900         (WebCore::GraphicsContext::drawLineForMisspellingOrBadGrammar):
   46901         (WebCore::GraphicsContext::translate):
   46902         (WebCore::GraphicsContext::concatCTM): Re-enable for Windows
   46903         (WebCore::GraphicsContext::beginTransparencyLayer):
   46904         (WebCore::GraphicsContext::endTransparencyLayer):
   46905         (WebCore::GraphicsContext::rotate):
   46906         (WebCore::GraphicsContext::scale):
   46907         * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h:
   46908         * platform/graphics/win/GraphicsContextCGWin.cpp:  Move common
   46909           code for handling WorldTransform calls to parent class.
   46910         * platform/graphics/win/GraphicsContextCairoWin.cpp:  Add common
   46911           code for handling WorldTransform calls.
   46912           (WebCore::GraphicsContextPlatformPrivate::concatCTM):  Change
   46913           implementation so that it only handles WorldTransform.  The
   46914           Cairo update is done in GraphicsContextCairo.cpp
   46915         * platform/graphics/win/GraphicsContextWin.cpp:  Call platform-private
   46916           methods to keep WorldTransform in sync.
   46917         (WebCore::GraphicsContextPlatformPrivate::save):
   46918         (WebCore::GraphicsContextPlatformPrivate::restore):
   46919         (WebCore::GraphicsContextPlatformPrivate::clip):
   46920         (WebCore::GraphicsContextPlatformPrivate::scale):
   46921         (WebCore::GraphicsContextPlatformPrivate::rotate):
   46922         (WebCore::GraphicsContextPlatformPrivate::translate):
   46923         * platform/win/DragImageCairoWin.cpp:
   46924         (WebCore::createDragImageFromImage):  Correct uninitialized value
   46925 
   46926 2008-02-23  Dan Bernstein  <mitz (a] apple.com>
   46927 
   46928         Reviewed by Dave Hyatt.
   46929 
   46930         - make non-autowrapping text clear floats
   46931 
   46932         Test: fast/text/whitespace/nowrap-clear-float.html
   46933 
   46934         * rendering/RenderBlock.cpp:
   46935         (WebCore::RenderBlock::nextFloatBottomBelow): Renamed nearestFloat() to
   46936         this and changed to avoid comparing bottom to 0 in each iteration.
   46937         (WebCore::RenderBlock::getClearDelta): Updated comment for the rename.
   46938         * rendering/RenderBlock.h:
   46939         * rendering/bidi.cpp:
   46940         (WebCore::RenderBlock::fitBelowFloats): Added. Factored out of
   46941         findNextLineBreak() and simplified.
   46942         (WebCore::RenderBlock::findNextLineBreak): Changed to call
   46943         fitBelowFloats(). Fixed the bug by trying to fit below floats in the
   46944         case of non-wrapping text. Removed some redundancy.
   46945 
   46946 2008-02-23  Sam Weinig  <sam (a] webkit.org>
   46947 
   46948         Reviewed by Oliver Hunt.
   46949 
   46950         Fix for http://bugs.webkit.org/show_bug.cgi?id=17504
   46951         Speed up DOM lists array subscription syntax by using the fast 
   46952         getOwnPropertySlot and set paths
   46953 
   46954         - 6x speed improvement on Oliver's ImageData put test.
   46955 
   46956         * bindings/scripts/CodeGeneratorJS.pm: Add fast path for getOwnPropertySlot
   46957         and put when an indexGetter or indexSetter is used.  We can not use the fast
   46958         path if an overridingNameGetter is used as there would be no way to override.
   46959 
   46960 2008-02-23  Kevin Ollivier  <kevino (a] theolliviers.com>
   46961 
   46962         wx build fix after JSImageData.cpp was added.
   46963 
   46964         * WebCoreSources.bkl:
   46965 
   46966 2008-02-23  Alexey Proskuryakov  <ap (a] webkit.org>
   46967 
   46968         Windows build fix - move ThreadCondition implementation from WebCore to WTF.
   46969 
   46970         * WebCore.vcproj/WebCore.vcproj:
   46971         * platform/win/ThreadConditionWin.cpp: Removed.
   46972 
   46973 2008-02-23  Alexey Proskuryakov  <ap (a] webkit.org>
   46974 
   46975         Reviewed by Darin.
   46976 
   46977         Move basic threading support from WebCore to WTF.
   46978 
   46979         One call that remains in WebCore is callOnMainThread(), and it has its own header now.
   46980 
   46981         * ForwardingHeaders/wtf/Locker.h: Added.
   46982         * ForwardingHeaders/wtf/MessageQueue.h: Added.
   46983         * ForwardingHeaders/wtf/Threading.h: Added.
   46984         * GNUmakefile.am:
   46985         * WebCore.pro:
   46986         * WebCore.vcproj/WebCore.vcproj:
   46987         * WebCore.xcodeproj/project.pbxproj:
   46988         * WebCoreSources.bkl:
   46989         * bindings/js/JSCustomSQLTransactionCallback.cpp:
   46990         * dom/XMLTokenizer.cpp:
   46991         * loader/icon/IconDatabase.cpp:
   46992         (WebCore::iconDatabase):
   46993         * loader/icon/IconDatabase.h:
   46994         * platform/Locker.h: Removed.
   46995         * platform/MainThread.h: Copied from WebCore/platform/Threading.h.
   46996         (WebCore::initializeThreadingAndMainThread):
   46997         * platform/MessageQueue.h: Removed.
   46998         * platform/SecurityOrigin.h:
   46999         * platform/Threading.h: Removed.
   47000         * platform/ThreadingNone.cpp: Removed.
   47001         * platform/gtk/MainThreadGtk.cpp: Copied from WebCore/platform/gtk/ThreadingGtk.cpp.
   47002         * platform/gtk/ThreadingGtk.cpp: Removed.
   47003         * platform/mac/MainThreadMac.mm: Copied from WebCore/platform/mac/Threading.mm.
   47004         * platform/mac/Threading.mm: Removed.
   47005         * platform/pthreads: Removed.
   47006         * platform/pthreads/ThreadingPthreads.cpp: Removed.
   47007         * platform/qt/MainThreadQt.cpp: Copied from WebCore/platform/qt/ThreadingQt.cpp.
   47008         * platform/qt/ThreadingQt.cpp: Removed.
   47009         * platform/sql/SQLValue.h:
   47010         * platform/sql/SQLiteAuthorizer.h:
   47011         * platform/sql/SQLiteDatabase.h:
   47012         * platform/win/MainThreadWin.cpp: Copied from WebCore/platform/win/ThreadingWin.cpp.
   47013         (WebCore::initializeThreadingAndMainThread):
   47014         * platform/win/MutexWin.cpp: Removed.
   47015         * platform/win/ThreadingWin.cpp: Removed.
   47016         * platform/wx/MainThreadWx.cpp: Copied from WebCore/platform/wx/ThreadingWx.cpp.
   47017         * platform/wx/ThreadingWx.cpp: Removed.
   47018         * storage/Database.cpp:
   47019         (WebCore::Database::Database):
   47020         * storage/Database.h:
   47021         * storage/DatabaseTask.h:
   47022         * storage/DatabaseThread.h:
   47023         * storage/DatabaseTracker.cpp:
   47024         * storage/OriginQuotaManager.h:
   47025         * storage/SQLError.h:
   47026         * storage/SQLResultSet.h:
   47027         * storage/SQLStatement.h:
   47028         * storage/SQLStatementCallback.h:
   47029         * storage/SQLStatementErrorCallback.h:
   47030         * storage/SQLTransaction.h:
   47031         * storage/SQLTransactionCallback.h:
   47032         * storage/SQLTransactionErrorCallback.h:
   47033         * webcore-wx.bkl:
   47034 
   47035 2008-02-23  David Kilzer  <ddkilzer (a] apple.com>
   47036 
   47037         Please clarify licensing for some files
   47038         <http://bugs.webkit.org/show_bug.cgi?id=14970>
   47039 
   47040         Reviewed by Darin.
   47041 
   47042         * bindings/objc/WebScriptObject.h: Added Apple BSD-style license.
   47043         * bindings/objc/WebScriptObjectPrivate.h: Ditto.
   47044         * platform/text/mac/ShapeArabic.c: Added ICU license from WebCore/icu/LICENSE.
   47045 
   47046 2008-02-22  Justin Garcia  <justin.garcia (a] apple.com>
   47047 
   47048         Reviewed by Anders Carlsson.
   47049 
   47050         <rdar://problem/5714333> Add document.getSelection()
   47051         
   47052         Add a synonym for window.getSelection() that FF supports.  There were requests in
   47053         this bugs dupes to also support the IE only document.selection, but IE's Selection
   47054         object is too different than ours currently for that to be safe (specifically, we
   47055         don't support enough of IE's TextRange methods on our DOM Range object yet). I
   47056         filed <rdar://problem/5761233> to cover that.
   47057 
   47058         * dom/Document.cpp:
   47059         (WebCore::Document::getSelection): Added.
   47060         * dom/Document.h:
   47061         * dom/Document.idl: Ditto.  JS only since this is about web compatibility.
   47062 
   47063 2008-02-22  Oliver Hunt  <oliver (a] apple.com>
   47064 
   47065         WX build fixes
   47066 
   47067         * WebCoreSources.bkl:
   47068 
   47069 2008-02-22  Oliver Hunt  <oliver (a] apple.com>
   47070 
   47071         Once more with the cairo/qt/wx build fixing
   47072 
   47073         * platform/graphics/cairo/ImageBufferCairo.cpp:
   47074         * platform/graphics/qt/ImageBufferQt.cpp:
   47075         * platform/graphics/wx/ImageBufferWx.cpp:
   47076 
   47077 2008-02-22  Mark Rowe  <mrowe (a] apple.com>
   47078 
   47079         Windows build fix.  Add missing include of DeprecatedCString.h and sort existing includes.
   47080 
   47081         * platform/win/PasteboardWin.cpp:
   47082 
   47083 2008-02-22  Mark Rowe  <mrowe (a] apple.com>
   47084 
   47085         Speculative Windows build fix.
   47086 
   47087         * platform/win/ClipboardUtilitiesWin.cpp:  Add missing include of DeprecatedCString.h and sort existing includes.
   47088         * platform/win/ClipboardWin.cpp:  Ditto.
   47089 
   47090 2008-02-22  Oliver Hunt  <oliver (a] apple.com>
   47091 
   47092         Build fix for windows, wx and qt
   47093 
   47094         * html/CanvasPixelArray.h:
   47095         (WebCore::CanvasPixelArray::set):
   47096 
   47097 2008-02-22  Oliver Hunt  <oliver (a] apple.com>
   47098 
   47099         Unbreak windows vcproj
   47100 
   47101         * WebCore.vcproj/WebCore.vcproj:
   47102 
   47103 2008-02-22  Oliver Hunt  <oliver (a] apple.com>
   47104 
   47105         Reviewed by Sam W.
   47106 
   47107         Support Canvas.getImageData and Canvas.createImageData
   47108         
   47109         This patch adds support for all the pixel reading portions
   47110         of the HTML5 Canvas spec.  There are two new types ImageData
   47111         and CanvasPixelArray which are used to provide the HTML5
   47112         ImageData object, and the required semantics for assignment
   47113         to the ImageData data array.
   47114         
   47115         We only implement the CG version of ImageBuffer::getImageData,
   47116         but the logic is null safe, so this will not introduce any
   47117         crashes into other platforms, unfortunately it will result in
   47118         JS Object detection "lying" on non-CG platforms.
   47119 
   47120         Tests: fast/canvas/canvas-ImageData-behaviour.html
   47121                fast/canvas/canvas-getImageData.html
   47122 
   47123         * DerivedSources.make:
   47124         * GNUmakefile.am:
   47125         * WebCore.pro:
   47126         * WebCore.vcproj/WebCore.vcproj:
   47127         * WebCore.xcodeproj/project.pbxproj:
   47128         * bindings/js/JSCanvasPixelArrayCustom.cpp: Added.
   47129         (WebCore::JSCanvasPixelArray::indexGetter):
   47130         (WebCore::JSCanvasPixelArray::indexSetter):
   47131         (WebCore::toJS):
   47132         * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
   47133         * bindings/scripts/CodeGeneratorJS.pm:
   47134         * html/CanvasPixelArray.cpp: Added.
   47135         (WebCore::CanvasPixelArray::create):
   47136         * html/CanvasPixelArray.h: Added.
   47137         (WebCore::CanvasPixelArray::data):
   47138         (WebCore::CanvasPixelArray::length):
   47139         (WebCore::CanvasPixelArray::set):
   47140         (WebCore::CanvasPixelArray::get):
   47141         * html/CanvasPixelArray.idl: Added.
   47142         * html/CanvasRenderingContext2D.cpp:
   47143         (WebCore::createEmptyImageData):
   47144         (WebCore::CanvasRenderingContext2D::createImageData):
   47145         (WebCore::CanvasRenderingContext2D::getImageData):
   47146         * html/CanvasRenderingContext2D.h:
   47147         * html/CanvasRenderingContext2D.idl:
   47148         * html/HTMLCanvasElement.cpp:
   47149         (WebCore::HTMLCanvasElement::convertLogicalToDevice):
   47150         (WebCore::HTMLCanvasElement::createImageBuffer):
   47151         * html/HTMLCanvasElement.h:
   47152         * html/ImageData.cpp: Added.
   47153         (WebCore::ImageData::create):
   47154         (WebCore::ImageData::ImageData):
   47155         * html/ImageData.h: Added.
   47156         (WebCore::ImageData::width):
   47157         (WebCore::ImageData::height):
   47158         (WebCore::ImageData::data):
   47159         * html/ImageData.idl: Added.
   47160         * platform/graphics/ImageBuffer.h:
   47161         * platform/graphics/cairo/ImageBufferCairo.cpp:
   47162         (WebCore::ImageBuffer::getImageData):
   47163         * platform/graphics/cg/ImageBufferCG.cpp:
   47164         (WebCore::ImageBuffer::getImageData):
   47165         * platform/graphics/qt/ImageBufferQt.cpp:
   47166         (WebCore::ImageBuffer::getImageData):
   47167         * platform/graphics/wx/ImageBufferWx.cpp:
   47168         (WebCore::ImageBuffer::getImageData):
   47169 
   47170 2008-02-22  Sam Weinig  <sam (a] webkit.org>
   47171 
   47172         Rubber-stamped by Adam Roben.
   47173 
   47174         Rid the project of the Devil known as DeprecatedString!
   47175 
   47176         * GNUmakefile.am:
   47177         * WebCore.base.exp:
   47178         * WebCore.pro:
   47179         * WebCore.vcproj/WebCore.vcproj:
   47180         * WebCore.xcodeproj/project.pbxproj:
   47181         * WebCoreSources.bkl:
   47182         * dom/Node.h:
   47183         * html/HTMLFormElement.cpp:
   47184         * platform/DeprecatedString.cpp: Removed.
   47185         * platform/DeprecatedString.h: Removed.
   47186         * platform/graphics/qt/IconQt.cpp:
   47187         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
   47188         * platform/gtk/CookieJarGtk.cpp:
   47189         * platform/gtk/CursorGtk.cpp:
   47190         * platform/gtk/KeyEventGtk.cpp:
   47191         * platform/mac/DeprecatedStringMac.mm: Removed.
   47192         * platform/network/qt/ResourceHandleQt.cpp:
   47193         * platform/network/win/CookieJarWin.cpp:
   47194         (WebCore::cookies):
   47195         * platform/qt/ClipboardQt.cpp:
   47196         * platform/qt/CookieJarQt.cpp:
   47197         * platform/qt/CursorQt.cpp:
   47198         * platform/symbian/DeprecatedStringSymbian.cpp: Removed.
   47199         * platform/text/AtomicString.cpp:
   47200         * platform/text/AtomicString.h:
   47201         * platform/text/PlatformString.h:
   47202         * platform/text/String.cpp:
   47203         * platform/text/StringImpl.cpp:
   47204         * platform/text/qt/StringQt.cpp:
   47205         (WebCore::String::String):
   47206         * platform/text/wx/StringWx.cpp:
   47207         * platform/win/BString.cpp:
   47208         * platform/win/BString.h:
   47209         * platform/win/PasteboardWin.cpp:
   47210 
   47211 2008-02-22  Sam Weinig  <sam (a] webkit.org>
   47212 
   47213         Reviewed by Geoff Garen.
   47214 
   47215         - Remove use of DeprecatedString in CSSStyleSelector.
   47216 
   47217         * css/CSSStyleSelector.cpp:
   47218         (WebCore::findHash): Removed.  Use find instead.
   47219         (WebCore::findSlashDotDotSlash): Changed to take a UChar* and a length.
   47220         (WebCore::findSlashSlash): Ditto.
   47221         (WebCore::findSlashDotSlash): Ditto.
   47222         (WebCore::containsColonSlashSlash): Ditto.
   47223         (WebCore::cleanPath): Change to operate on a String.
   47224         (WebCore::checkPseudoState): Changed to use a Vector as a buffer.
   47225 
   47226 2008-02-22  Geoffrey Garen  <ggaren (a] apple.com>
   47227 
   47228         Reviewed by Sam Weinig.
   47229         
   47230         Fixed <rdar://problem/5057509> Repro leak of JSXMLHttpRequest and
   47231         associated objects @ www.viamichelin.it, which was probably an underlying
   47232         cause of <rdar://problem/5744037> Gmail out of memory (17455)
   47233         
   47234         If SubresourceLoader::create returned NULL, we would ref() / gcProtect()
   47235         the XMLHttpRequest but think we hadn't, therefore never
   47236         calling deref() / gcUnprotect().
   47237         
   47238         This could happen at gmail.com, since gmail.com attempts to send
   47239         XMLHttpRequests from unload handlers in order to gather usage statistics.
   47240         (According to comments in the code, SubresourceLoader::create returns
   47241         NULL when called from an unload handler.)
   47242 
   47243         The solution is to ref() / gcProtect() only if SubresourceLoader::create
   47244         doesn't return NULL. This make sense, since we only need to protect the
   47245         request as long as it has an outstanding network transaction.
   47246         
   47247         * xml/XMLHttpRequest.cpp:
   47248         (WebCore::XMLHttpRequest::XMLHttpRequest):
   47249         (WebCore::XMLHttpRequest::send):
   47250 
   47251 2008-02-22  Darin Adler  <darin (a] apple.com>
   47252 
   47253         Reviewed, tweaked and landed by Sam.
   47254 
   47255         - Make RegularExpression operate on Strings instead of DeprecatedStrings.
   47256 
   47257         * dom/DOMImplementation.cpp:
   47258         (WebCore::DOMImplementation::isXMLMIMEType): Use string instead of DeprecatedString
   47259         to build up the RegularExpression.
   47260         * page/Frame.cpp:
   47261         (WebCore::createRegExpForLabels): Use String instead of DeprecatedString.
   47262         (WebCore::Frame::searchForLabelsAboveCell): Ditto.
   47263         (WebCore::Frame::searchForLabelsBeforeElement): Ditto.
   47264         (WebCore::Frame::matchLabelsAgainstElement): Ditto.
   47265         * page/Frame.h:
   47266         * page/mac/FrameMac.mm:
   47267         (WebCore::regExpForLabels): Ditto.
   47268         (WebCore::Frame::searchForNSLabelsAboveCell): Ditto.
   47269         (WebCore::Frame::searchForLabelsBeforeElement): Ditto.
   47270         (WebCore::Frame::matchLabelsAgainstElement): Ditto.
   47271 
   47272         * platform/text/RegularExpression.cpp:
   47273         (WebCore::RegularExpression::Private::Private):
   47274         (WebCore::RegularExpression::Private::compile):
   47275         (WebCore::RegularExpression::RegularExpression):
   47276         (WebCore::RegularExpression::operator=):
   47277         (WebCore::RegularExpression::pattern):
   47278         (WebCore::RegularExpression::match):
   47279         (WebCore::RegularExpression::search):
   47280         (WebCore::RegularExpression::searchRev):
   47281         (WebCore::replace): Added.
   47282         * platform/text/RegularExpression.h:
   47283         Change functions to take Strings as input instead of DeprecatedStrings and
   47284         reduce the complexity of the class by removing unneeded globbing support.
   47285 
   47286 2008-02-22  Jon Honeycutt  <jhoneycutt (a] apple.com>
   47287 
   47288         Reviewed by Anders.
   47289 
   47290         <rdar://problem/5760360> REGRESSION(r30376): Crash loading plugin page
   47291         during stress test (after only 5 min) - null dereference
   47292 
   47293         Full-frame plug-ins create PluginStream objects without loaders, as the
   47294         PluginView receives the loading callbacks. We were trying to call
   47295         setDefersLoading on these null pointers.
   47296 
   47297         * plugins/PluginStream.cpp:
   47298         (WebCore::PluginStream::startStream): Add null check.
   47299         (WebCore::PluginStream::destroyStream): Same.
   47300         (WebCore::PluginStream::deliverData): Same.
   47301 
   47302 2008-02-22  Darin Adler  <darin (a] apple.com>
   47303 
   47304         Reviewed and tweaked by Jon Honeycutt. Reviewed and landed by Sam.
   47305 
   47306         - Remove uses of DeprecatedString in Windows plugin code.
   47307 
   47308         * plugins/win/PluginPackageWin.cpp:
   47309         (WebCore::getVersionInfo): Cleanup formatting.
   47310         (WebCore::PluginPackage::freeLibraryTimerFired): Remove un-needed variable name.
   47311         (WebCore::PluginPackage::storeFileVersion): Move casts.
   47312         (WebCore::PluginPackage::fetchInfo): Use OwnArrayPtr and switch to more efficient
   47313         use of Vectors.
   47314         (WebCore::PluginPackage::load): Fix whitespace.
   47315         (WebCore::PluginPackage::hash): Make the hashCodes const
   47316         * plugins/win/PluginViewWin.cpp:
   47317         (WebCore::makeURL): Use String instead of DeprecatedString.
   47318         (WebCore::parseRFC822HeaderFields): Ditto.
   47319         (WebCore::PluginView::handlePost): Ditto.
   47320         (WebCore::PluginView::status): Ditto.
   47321 
   47322 2008-02-22  Darin Adler  <darin (a] apple.com>
   47323 
   47324         Reviewed, tweaked and landed by Sam.
   47325 
   47326         - Don't use DeprecatedString in HTMLTokenizer.
   47327 
   47328         * html/HTMLTokenizer.cpp:
   47329         (WebCore::HTMLTokenizer::finish):
   47330         * platform/text/PlatformString.h:
   47331         (WebCore::find):
   47332 
   47333 2008-02-21  Sam Weinig  <sam (a] webkit.org>
   47334 
   47335         Reviewed by Anders Carlsson.
   47336 
   47337         Fix for <rdar://problem/5757946>
   47338 
   47339         - Parse URLs before checking whether they are javascript: urls
   47340           (which require security checks).
   47341 
   47342         * bindings/js/JSAttrCustom.cpp:
   47343         (WebCore::JSAttr::setValue):
   47344         * bindings/js/JSElementCustom.cpp:
   47345         (WebCore::allowSettingSrcToJavascriptURL):
   47346         * bindings/js/JSHTMLFrameElementCustom.cpp:
   47347         (WebCore::allowSettingJavascriptURL):
   47348         * bindings/js/JSHTMLIFrameElementCustom.cpp:
   47349         (WebCore::JSHTMLIFrameElement::setSrc):
   47350 
   47351 2008-02-21  Ada Chan  <adachan (a] apple.com>
   47352 
   47353         <rdar://problem/5757873> Buffer overrun in DeprecatedCString::find() in WebCore
   47354         We could get a buffer overrun in DeprecatedCString::find() if the end of the
   47355         string matches a beginning portion of the substring, for example, if string is
   47356         "a" but the substring is "ab".
   47357         The code as is also will not match things correctly under certain situations
   47358         since the inner while loop increments the index. For example, we wouldn't find
   47359         a match if the string is "aab..." and the substring is "ab".  Changed the 
   47360         inner while loop to increment a temporary index into str.
   47361         
   47362         Test: fast/loader/charset-parse.html
   47363 
   47364         Reviewed by Dan Berstein.
   47365 
   47366         * platform/DeprecatedCString.cpp:
   47367         (WebCore::DeprecatedCString::find):
   47368 
   47369 2008-02-21  David Hyatt  <hyatt (a] apple.com>
   47370 
   47371         Fix for bug 17301.  CSS media queries need to use the correct viewport
   47372         when contained in documents inside iframes (rather than always using the
   47373         top-level document's viewport).  CSS media queries based on the viewport
   47374         also needed to be dynamic and update as you resize the window (this is
   47375         a HOT feature). :)
   47376 
   47377         This patch gets Acid3 up to 86/100 with 3 colored boxes filled in.
   47378 
   47379         Reviewed by olliej
   47380 
   47381         Added fast/media/viewport-media-query.html
   47382 
   47383         * css/CSSStyleSelector.cpp:
   47384         (WebCore::CSSStyleSelector::CSSStyleSelector):
   47385         (WebCore::CSSStyleSelector::addViewportDependentMediaQueryResult):
   47386         (WebCore::CSSStyleSelector::affectedByViewportChange):
   47387         * css/CSSStyleSelector.h:
   47388         (WebCore::MediaQueryResult::MediaQueryResult):
   47389         * css/MediaQueryEvaluator.cpp:
   47390         (WebCore::MediaQueryEvaluator::MediaQueryEvaluator):
   47391         (WebCore::MediaQueryEvaluator):
   47392         (WebCore::MediaQueryEvaluator::eval):
   47393         (WebCore::colorMediaFeatureEval):
   47394         (WebCore::monochromeMediaFeatureEval):
   47395         (WebCore::device_aspect_ratioMediaFeatureEval):
   47396         (WebCore::device_pixel_ratioMediaFeatureEval):
   47397         (WebCore::gridMediaFeatureEval):
   47398         (WebCore::device_heightMediaFeatureEval):
   47399         (WebCore::device_widthMediaFeatureEval):
   47400         (WebCore::heightMediaFeatureEval):
   47401         (WebCore::widthMediaFeatureEval):
   47402         (WebCore::min_colorMediaFeatureEval):
   47403         (WebCore::max_colorMediaFeatureEval):
   47404         (WebCore::min_monochromeMediaFeatureEval):
   47405         (WebCore::max_monochromeMediaFeatureEval):
   47406         (WebCore::min_device_aspect_ratioMediaFeatureEval):
   47407         (WebCore::max_device_aspect_ratioMediaFeatureEval):
   47408         (WebCore::min_device_pixel_ratioMediaFeatureEval):
   47409         (WebCore::max_device_pixel_ratioMediaFeatureEval):
   47410         (WebCore::min_heightMediaFeatureEval):
   47411         (WebCore::max_heightMediaFeatureEval):
   47412         (WebCore::min_widthMediaFeatureEval):
   47413         (WebCore::max_widthMediaFeatureEval):
   47414         (WebCore::min_device_heightMediaFeatureEval):
   47415         (WebCore::max_device_heightMediaFeatureEval):
   47416         (WebCore::min_device_widthMediaFeatureEval):
   47417         (WebCore::max_device_widthMediaFeatureEval):
   47418         * css/MediaQueryEvaluator.h:
   47419         * css/MediaQueryExp.cpp:
   47420         (WebCore::MediaQueryExp::~MediaQueryExp):
   47421         * css/MediaQueryExp.h:
   47422         (WebCore::MediaQueryExp::value):
   47423         (WebCore::MediaQueryExp::isViewportDependent):
   47424         * html/HTMLMediaElement.cpp:
   47425         (WebCore::HTMLMediaElement::pickMedia):
   47426         * page/FrameView.cpp:
   47427         (WebCore::FrameView::layout):
   47428 
   47429 2008-02-21  Anders Carlsson  <andersca (a] apple.com>
   47430 
   47431         Reviewed by Sam.
   47432 
   47433         Make more classes start out with a refcount of 1.
   47434 
   47435         * dom/QualifiedName.cpp:
   47436         (WebCore::QNameComponentsTranslator::translate):
   47437         (WebCore::QualifiedName::QualifiedName):
   47438         * dom/QualifiedName.h:
   47439         (WebCore::QualifiedName::QualifiedNameImpl::create):
   47440         (WebCore::QualifiedName::QualifiedNameImpl::QualifiedNameImpl):
   47441         * history/BackForwardList.cpp:
   47442         (WebCore::BackForwardList::BackForwardList):
   47443         * history/BackForwardList.h:
   47444         (WebCore::BackForwardList::create):
   47445         * page/Page.cpp:
   47446         (WebCore::Page::Page):
   47447         * platform/text/CString.cpp:
   47448         (WebCore::CString::init):
   47449         (WebCore::CString::newUninitialized):
   47450         (WebCore::CString::copyBufferIfNeeded):
   47451         * platform/text/CString.h:
   47452         (WebCore::CStringBuffer::create):
   47453         (WebCore::CStringBuffer::CStringBuffer):
   47454 
   47455 2008-02-21  Kevin Ollivier  <kevino (a] theolliviers.com>
   47456 
   47457         wx build fix for the domString() -> string() rename in r30443.
   47458 
   47459         * platform/graphics/wx/FontPlatformDataWx.cpp:
   47460         (WebCore::FontPlatformData::FontPlatformData):
   47461 
   47462 2008-02-21  Antti Koivisto  <antti (a] apple.com>
   47463 
   47464         Reviewed by Sam Weinig.
   47465 
   47466         <rdar://problem/5753789>
   47467         REGRESSION: 1.5% -2% Sunspider regression from r30009 (ebay photo upload hang)
   47468         
   47469         Ensure all versions of allowsAccessFrom are inlined to single functions. 
   47470         This is a 2% win in browser hosted Sunspider. 
   47471 
   47472         * bindings/js/kjs_window.cpp:
   47473         (KJS::Window::allowsAccessFrom):
   47474         (KJS::Window::allowsAccessFromPrivate):
   47475         * bindings/js/kjs_window.h:
   47476 
   47477 2008-02-21  Dan Bernstein  <mitz (a] apple.com>
   47478 
   47479         Reviewed by Sam Weinig.
   47480 
   47481         - minor cleanup
   47482 
   47483         * rendering/bidi.cpp:
   47484         (WebCore::bidiNext): Removed redundant isBR() check -- isText() returns
   47485         true for RenderLineBreak.
   47486         (WebCore::bidiFirst): Ditto.
   47487         (WebCore::shouldSkipWhitespaceAfterStartObject):
   47488         (WebCore::RenderBlock::findNextLineBreak):
   47489 
   47490 2008-02-21  Geoffrey Garen  <ggaren (a] apple.com>
   47491 
   47492         Reviewed by David Harrison.
   47493         
   47494         Fixed <rdar://problem/5756125> REGRESSION: A crash occurs at 
   47495         WebCore::Frame::scriptProxy() when completing a search with Package Tracker widget
   47496 
   47497         Test: fast/dom/script-element-without-frame-crash.html
   47498 
   47499         * html/HTMLTokenizer.cpp:
   47500         (WebCore::HTMLTokenizer::parseTag): Added back a NULL check that was
   47501         accidentally removed in r30325.
   47502 
   47503 2008-02-21  Rodney Dawes  <dobey (a] wayofthemonkey.com>
   47504 
   47505         GTK+ build fix. s/domString()/string()/
   47506 
   47507         * platform/graphics/gtk/FontPlatformDataGtk.cpp:
   47508         (FontPlatformData::FontPlatformData):
   47509 
   47510 2008-02-20  Dan Bernstein  <mitz (a] apple.com>
   47511 
   47512         Reviewed by Dave Hyatt.
   47513 
   47514         - fix http://bugs.webkit.org/show_bug.cgi?id=17465
   47515           REGRESSION: <DIV> tokenized into Div if still searching for DOCTYPE
   47516 
   47517         Test: fast/tokenizer/doctype-search-reset.html
   47518 
   47519         * html/HTMLTokenizer.cpp:
   47520         (WebCore::HTMLTokenizer::parseTag):
   47521 
   47522 2008-02-20  Dan Bernstein  <mitz (a] apple.com>
   47523 
   47524         Reviewed by Dave Hyatt.
   47525 
   47526         - fix http://bugs.webkit.org/show_bug.cgi?id=17464
   47527           REGRESSION: Crash in RenderBlock::findNextLineBreak reading r30444 commit email in GMail
   47528 
   47529         Test: fast/text/wbr-in-pre-crash.html
   47530 
   47531         * rendering/bidi.cpp:
   47532         (WebCore::RenderBlock::findNextLineBreak):
   47533 
   47534 2008-02-20  Oliver Hunt  <oliver (a] apple.com>
   47535 
   47536         Reviewed by Hyatt.
   47537 
   47538         Bug 17303: Canvas crash in ImageBuffer
   47539 
   47540         We handle a null GraphicsContext everywhere, but we weren't checking for 
   47541         a null ImageBuffer, which is what will result in a null GraphicsContext in
   47542         the first place.
   47543 
   47544         Test: fast/canvas/access-zero-sized-canvas.html
   47545 
   47546         * html/HTMLCanvasElement.cpp:
   47547 
   47548 2008-02-20  David Hyatt  <hyatt (a] apple.com>
   47549 
   47550         Fix the layout test failure that never should have passed in the first
   47551         place by making changes to media lists actually result in the recomputation
   47552         of the style selector.  Now it passes for the right reasons and not because
   47553         of dumb luck.
   47554 
   47555         Reviewed by Sam Weinig
   47556 
   47557         * css/MediaList.cpp:
   47558         (WebCore::MediaList::deleteMedium):
   47559         (WebCore::MediaList::setMediaText):
   47560         (WebCore::MediaList::appendMedium):
   47561         (WebCore::MediaList::notifyChanged):
   47562         * css/MediaList.h:
   47563         * dom/Document.cpp:
   47564         (WebCore::Document::attach):
   47565 
   47566 2008-02-20  Darin Adler  <darin (a] apple.com>
   47567 
   47568         Reviewed, tweaked and landed by Sam.
   47569 
   47570         - make markup functions not use DeprecatedString.
   47571 
   47572         * editing/markup.cpp:
   47573         (WebCore::append): Added.
   47574         (WebCore::escapeContentText): Build up string using a Vector.
   47575         (WebCore::appendStartMarkup): Use String instead of DeprecatedString.
   47576 
   47577 2008-02-20  Darin Adler  <darin (a] apple.com>
   47578 
   47579         Reviewed, tweaked and landed by Sam.
   47580 
   47581         - make TextIterator use a Vector instead of a DeprecatedString.
   47582 
   47583         * editing/TextIterator.cpp:
   47584         (WebCore::CharacterIterator::string): Build up the String using a
   47585         Vector.
   47586         (WebCore::WordAwareIterator::advance): Switch to using Vector functions.
   47587         (WebCore::WordAwareIterator::length): Ditto.
   47588         (WebCore::WordAwareIterator::characters): Ditto.
   47589         * editing/TextIterator.h: Use a Vector<UChar> for the buffer instead
   47590         of DeprecatedString.
   47591 
   47592 2008-02-20  Darin Adler  <darin (a] apple.com>
   47593 
   47594         Reviewed, tweaked and landed by Sam.
   47595 
   47596         - make HTMLInterchange return a String instead of a DeprecatedString
   47597 
   47598         * editing/HTMLInterchange.cpp:
   47599         (WebCore::): Return a String from convertedSpaceString.
   47600         (WebCore::convertHTMLTextToInterchangeFormat): Use a Vector instead of
   47601         a DeprecatedString to build up the return String.
   47602         * editing/HTMLInterchange.h:
   47603 
   47604 2008-02-20  Eric Seidel  <eric (a] webkit.org>
   47605 
   47606         Reviewed by Oliver.
   47607 
   47608         Remove m_drawingContext and change m_data to m_imageBuffer
   47609 
   47610         * html/HTMLCanvasElement.cpp:
   47611         (WebCore::HTMLCanvasElement::HTMLCanvasElement):
   47612         (WebCore::HTMLCanvasElement::reset):
   47613         (WebCore::HTMLCanvasElement::paint):
   47614         (WebCore::HTMLCanvasElement::createImageBuffer):
   47615         (WebCore::HTMLCanvasElement::buffer):
   47616         (WebCore::HTMLCanvasElement::createPlatformImage):
   47617         * html/HTMLCanvasElement.h:
   47618 
   47619 2008-02-20  Anders Carlsson  <andersca (a] apple.com>
   47620 
   47621         Reviewed by Sam.
   47622 
   47623         Rename AtomicString::domString() to AtomicString::string().
   47624         
   47625         * css/CSSComputedStyleDeclaration.cpp:
   47626         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
   47627         * css/CSSFontSelector.cpp:
   47628         (WebCore::CSSFontSelector::getFontData):
   47629         * dom/Attr.cpp:
   47630         (WebCore::Attr::createTextChild):
   47631         * dom/Comment.cpp:
   47632         (WebCore::Comment::nodeName):
   47633         * dom/Document.cpp:
   47634         (WebCore::Document::recalcStyleSelector):
   47635         (WebCore::Document::setHTMLWindowEventListener):
   47636         (WebCore::Document::formElementsState):
   47637         * dom/StyledElement.cpp:
   47638         (WebCore::StyledElement::parseMappedAttribute):
   47639         * dom/Text.cpp:
   47640         (WebCore::Text::nodeName):
   47641         * editing/SelectionController.cpp:
   47642         (WebCore::SelectionController::debugRenderer):
   47643         * html/HTMLCollection.cpp:
   47644         (WebCore::HTMLCollection::checkForNameMatch):
   47645         * html/HTMLElement.cpp:
   47646         (WebCore::HTMLElement::nodeName):
   47647         (WebCore::HTMLElement::setHTMLEventListener):
   47648         * html/HTMLFormCollection.cpp:
   47649         (WebCore::HTMLFormCollection::getNamedFormItem):
   47650         * html/HTMLImageElement.cpp:
   47651         (WebCore::HTMLImageElement::parseMappedAttribute):
   47652         (WebCore::HTMLImageElement::isURLAttribute):
   47653         * html/HTMLLinkElement.cpp:
   47654         (WebCore::HTMLLinkElement::parseMappedAttribute):
   47655         (WebCore::HTMLLinkElement::tokenizeRelAttribute):
   47656         * html/HTMLObjectElement.cpp:
   47657         (WebCore::HTMLObjectElement::isURLAttribute):
   47658         (WebCore::HTMLObjectElement::containsJavaApplet):
   47659         * html/HTMLParamElement.cpp:
   47660         (WebCore::HTMLParamElement::isURLAttribute):
   47661         * html/HTMLParser.cpp:
   47662         (WebCore::HTMLParser::handleIsindex):
   47663         * html/HTMLScriptElement.cpp:
   47664         (WebCore::HTMLScriptElement::insertedIntoDocument):
   47665         (WebCore::HTMLScriptElement::shouldExecuteAsJavaScript):
   47666         * html/HTMLStyleElement.cpp:
   47667         (WebCore::HTMLStyleElement::parseMappedAttribute):
   47668         * html/HTMLTokenizer.cpp:
   47669         (WebCore::HTMLTokenizer::parseTag):
   47670         * html/HTMLViewSourceDocument.cpp:
   47671         (WebCore::HTMLViewSourceDocument::addViewSourceToken):
   47672         * loader/FrameLoader.cpp:
   47673         (WebCore::FrameLoader::saveDocumentState):
   47674         * page/FrameTree.cpp:
   47675         (WebCore::FrameTree::uniqueChildName):
   47676         * platform/text/AtomicString.h:
   47677         (WebCore::AtomicString::string):
   47678         (WebCore::AtomicString::contains):
   47679         (WebCore::AtomicString::find):
   47680         (WebCore::AtomicString::startsWith):
   47681         (WebCore::AtomicString::endsWith):
   47682         * rendering/RenderPartObject.cpp:
   47683         (WebCore::RenderPartObject::updateWidget):
   47684         * svg/SVGElement.cpp:
   47685         (WebCore::SVGElement::addSVGEventListener):
   47686         * svg/SVGSVGElement.cpp:
   47687         (WebCore::SVGSVGElement::addSVGWindowEventListener):
   47688         * xml/XPathFunctions.cpp:
   47689         (WebCore::XPath::FunLocalName::evaluate):
   47690         (WebCore::XPath::FunNamespaceURI::evaluate):
   47691         (WebCore::XPath::FunName::evaluate):
   47692 
   47693 2008-02-20  Brent Fulgham  <bfulgham (a] gmail.com>
   47694 
   47695         Reviewed by Dan.
   47696 
   47697         http://bugs.webkit.org/show_bug.cgi?id=17336
   47698         Provide implementations for Windows (Cairo) build of WebKit that
   47699         handles font formatting.
   47700         - Split font implementation files to allow maximal code sharing
   47701           between CG and Cairo back-ends. 
   47702 
   47703         * WebCore.vcproj/WebCore.vcproj:
   47704         * platform/graphics/SimpleFontData.h:   Add signatures for private win
   47705           initialization functions.
   47706         * platform/graphics/win/FontCacheWin.cpp:
   47707         (WebCore::FontCache::platformInit):
   47708         (WebCore::FontCache::createFontPlatformData):
   47709         * platform/graphics/win/FontCairoWin.cpp: Removed.  Universal version
   47710           is now part of platform/graphics/cairo.
   47711         * platform/graphics/win/FontCustomPlatformDataCairo.cpp: Added.
   47712         (WebCore::FontCustomPlatformDataCairo::~FontCustomPlatformDataCairo):
   47713         (WebCore::FontCustomPlatformDataCairo::fontPlatformData):
   47714         (WebCore::releaseData):
   47715         (WebCore::createFontCustomPlatformData):
   47716         * platform/graphics/win/FontCustomPlatformDataCairo.h: Added.
   47717         (WebCore::FontCustomPlatformDataCairo::FontCustomPlatformDataCairo):
   47718         * platform/graphics/win/FontPlatformData.h:
   47719         (WebCore::FontPlatformData::FontPlatformData):
   47720         (WebCore::FontPlatformData::fontFace):
   47721         (WebCore::FontPlatformData::scaledFont):
   47722         (WebCore::FontPlatformData::operator==):
   47723         * platform/graphics/win/FontPlatformDataCGWin.cpp: Copied from WebCore/platform/graphics/win/FontPlatformDataWin.cpp.
   47724         (WebCore::FontPlatformData::platformDataInit):
   47725         * platform/graphics/win/FontPlatformDataCairoWin.cpp: Added.
   47726         (WebCore::FontPlatformData::platformDataInit):
   47727         (WebCore::FontPlatformData::FontPlatformData):
   47728         (WebCore::FontPlatformData::setFont):
   47729         * platform/graphics/win/FontPlatformDataWin.cpp:  Moved CG-specific
   47730           code to FontPlatformDataCG.cpp.
   47731         (WebCore::FontPlatformData::FontPlatformData):
   47732         * platform/graphics/win/GlyphPageTreeNodeCGWin.cpp: Copied from WebCore/platform/graphics/win/GlyphPageTreeNodeWin.cpp.
   47733         * platform/graphics/win/GlyphPageTreeNodeCairoWin.cpp: Copied from WebCore/platform/graphics/win/GlyphPageTreeNodeWin.cpp.
   47734         (WebCore::GlyphPage::fill):
   47735         * platform/graphics/win/GlyphPageTreeNodeWin.cpp: Removed.  Replaced
   47736           with CG- and Cairo-specific versions.
   47737         * platform/graphics/win/SimpleFontDataCGWin.cpp:
   47738         (WebCore::SimpleFontData::platformInit):
   47739         (WebCore::SimpleFontData::platformDestroy):
   47740         (WebCore::SimpleFontData::platformWidthForGlyph):
   47741         * platform/graphics/win/SimpleFontDataCairoWin.cpp:
   47742         (WebCore::SimpleFontData::platformInit):
   47743         (WebCore::SimpleFontData::platformDestroy):
   47744         (WebCore::SimpleFontData::platformWidthForGlyph):
   47745         (WebCore::SimpleFontData::setFont):
   47746         * platform/graphics/win/SimpleFontDataWin.cpp:
   47747         (WebCore::SimpleFontData::initGDIFont):
   47748         (WebCore::SimpleFontData::platformCommonDestroy):
   47749         (WebCore::SimpleFontData::widthForGDIGlyph):
   47750 
   47751 2008-02-20  Darin Adler  <darin (a] apple.com>
   47752 
   47753         Reviewed by Sam.
   47754 
   47755         * dom/Node.h: Took out unneeded forward declaration of TextStream.
   47756 
   47757 2008-02-20  Darin Adler  <darin (a] apple.com>
   47758 
   47759         Reviewed by Sam.
   47760 
   47761         * rendering/RenderObject.h: Took out unneeded forward declaration of TextStream.
   47762 
   47763 2008-02-20  David Hyatt  <hyatt (a] apple.com>
   47764 
   47765         Fix for bug 16760, incorrect <object> MIME type handling and fallback
   47766         handling.
   47767 
   47768         Reviewed by darin
   47769 
   47770         * html/HTMLImageLoader.cpp:
   47771         (WebCore::HTMLImageLoader::notifyFinished):
   47772         If the image had an error, make sure to do <object> fallback.
   47773 
   47774         * html/HTMLObjectElement.cpp:
   47775         (WebCore::HTMLObjectElement::renderFallbackContent):
   47776         Before doing fallback check if there is a MIME type mismatch between
   47777         an image type and a non-image type.  If so, detach and re-attach after
   47778         storing the correct MIME type.
   47779 
   47780         * loader/loader.cpp:
   47781         (WebCore::Loader::didReceiveData):
   47782         Consider it an error when a 404 is encountered on a CachedResource load.
   47783 
   47784 2008-02-20  Anders Carlsson  <andersca (a] apple.com>
   47785 
   47786         Reviewed by Sam.
   47787 
   47788         StringImpl constructors used by AtomicString should start with a refcount of 1.
   47789         
   47790         * platform/text/AtomicString.cpp:
   47791         (WebCore::AtomicString::add):
   47792         * platform/text/AtomicString.h:
   47793         * platform/text/StringImpl.cpp:
   47794         (WebCore::StringImpl::StringImpl):
   47795 
   47796 2008-02-20  Darin Adler  <darin (a] apple.com>
   47797 
   47798         * bindings/js/kjs_navigator.cpp:
   47799         (WebCore::needsYouTubeQuirk): Tweak comments.
   47800 
   47801 2008-02-20  Anders Carlsson  <andersca (a] apple.com>
   47802 
   47803         Reviewed by Darin.
   47804 
   47805         Change all refcounted classes in page/ to start with a refcount of 1.
   47806 
   47807         * page/BarInfo.cpp:
   47808         (WebCore::BarInfo::BarInfo):
   47809         * page/BarInfo.h:
   47810         (WebCore::BarInfo::create):
   47811         * page/Console.cpp:
   47812         (WebCore::Console::Console):
   47813         * page/Console.h:
   47814         (WebCore::Console::create):
   47815         * page/DOMSelection.cpp:
   47816         (WebCore::DOMSelection::DOMSelection):
   47817         * page/DOMSelection.h:
   47818         (WebCore::DOMSelection::create):
   47819         * page/DOMWindow.cpp:
   47820         (WebCore::DOMWindow::DOMWindow):
   47821         (WebCore::DOMWindow::screen):
   47822         (WebCore::DOMWindow::history):
   47823         (WebCore::DOMWindow::locationbar):
   47824         (WebCore::DOMWindow::menubar):
   47825         (WebCore::DOMWindow::personalbar):
   47826         (WebCore::DOMWindow::scrollbars):
   47827         (WebCore::DOMWindow::statusbar):
   47828         (WebCore::DOMWindow::toolbar):
   47829         (WebCore::DOMWindow::console):
   47830         (WebCore::DOMWindow::getSelection):
   47831         * page/DOMWindow.h:
   47832         (WebCore::DOMWindow::create):
   47833         * page/Frame.cpp:
   47834         (WebCore::Frame::domWindow):
   47835         * page/History.cpp:
   47836         (WebCore::History::History):
   47837         * page/History.h:
   47838         (WebCore::History::create):
   47839         * page/InspectorController.cpp:
   47840         (WebCore::InspectorResource::create):
   47841         (WebCore::InspectorResource::InspectorResource):
   47842         (WebCore::InspectorDatabaseResource::create):
   47843         (WebCore::InspectorDatabaseResource::InspectorDatabaseResource):
   47844         (WebCore::InspectorController::didLoadResourceFromMemoryCache):
   47845         (WebCore::InspectorController::identifierForInitialRequest):
   47846         (WebCore::InspectorController::didOpenDatabase):
   47847         * page/Plugin.h:
   47848         (WebCore::Plugin::create):
   47849         (WebCore::Plugin::Plugin):
   47850         * page/Screen.cpp:
   47851         (WebCore::Screen::Screen):
   47852         * page/Screen.h:
   47853         (WebCore::Screen::create):
   47854 
   47855 2008-02-20  Sam Weinig  <sam (a] webkit.org>
   47856 
   47857         Reviewed by Darin and Geoff.
   47858 
   47859         - <rdar://problem/5754378> work around missing video on YouTube front page with a site-specific hack
   47860 
   47861         * WebCore.base.exp: Updated.
   47862 
   47863         * bindings/js/kjs_navigator.cpp:
   47864         (WebCore::needsYouTubeQuirk): Added. Return true on Windows only when the quirk is needed.
   47865         (WebCore::Navigator::getValueProperty): For the appVersion property, if needsYouTubeQuirk
   47866         return true, then return the empty string.
   47867 
   47868         * page/Settings.cpp:
   47869         (WebCore::Settings::Settings): Set m_needsSiteSpecificQuirks to false.
   47870         (WebCore::Settings::setNeedsSiteSpecificQuirks): Added.
   47871         * page/Settings.h: Added m_needsSiteSpecificQuirks.
   47872         (WebCore::Settings::needsSiteSpecificQuirks): Added.
   47873 
   47874 2008-02-20  David Hyatt  <hyatt (a] apple.com>
   47875 
   47876         Fix for bug 12751, doctype nodes aren't part of the Document (Acid3).
   47877 
   47878         Reviewed by Sam Weinig
   47879 
   47880         Many tests added in fast/doctypes.
   47881 
   47882         * dom/DOMImplementation.cpp:
   47883         (WebCore::DOMImplementation::createDocument):
   47884         (WebCore::DOMImplementation::createHTMLDocument):
   47885         * dom/Document.cpp:
   47886         (WebCore::Document::Document):
   47887         (WebCore::Document::setDocType):
   47888         (WebCore::Document::attach):
   47889         (WebCore::Document::getImageMap):
   47890         * dom/Document.h:
   47891         (WebCore::Document::doctype):
   47892         (WebCore::Document::):
   47893         (WebCore::Document::determineParseMode):
   47894         (WebCore::Document::setParseMode):
   47895         (WebCore::Document::parseMode):
   47896         (WebCore::Document::inCompatMode):
   47897         (WebCore::Document::inAlmostStrictMode):
   47898         (WebCore::Document::inStrictMode):
   47899         * dom/DocumentType.cpp:
   47900         (WebCore::DocumentType::cloneNode):
   47901         (WebCore::DocumentType::insertedIntoDocument):
   47902         (WebCore::DocumentType::removedFromDocument):
   47903         * dom/DocumentType.h:
   47904         * dom/Node.cpp:
   47905         (WebCore::Node::childAllowed):
   47906         * dom/StyledElement.cpp:
   47907         (WebCore::StyledElement::attributeChanged):
   47908         * dom/XMLTokenizer.cpp:
   47909         (WebCore::XMLTokenizer::internalSubset):
   47910         * editing/markup.cpp:
   47911         (WebCore::appendStartMarkup):
   47912         * html/HTMLAppletElement.cpp:
   47913         (WebCore::HTMLAppletElement::createRenderer):
   47914         * html/HTMLDocument.cpp:
   47915         (WebCore::HTMLDocument::HTMLDocument):
   47916         (WebCore::HTMLDocument::childAllowed):
   47917         (WebCore::HTMLDocument::determineParseMode):
   47918         * html/HTMLDocument.h:
   47919         * html/HTMLMapElement.cpp:
   47920         (WebCore::HTMLMapElement::parseMappedAttribute):
   47921         * html/HTMLParamElement.cpp:
   47922         (WebCore::HTMLParamElement::parseMappedAttribute):
   47923         * html/HTMLParser.cpp:
   47924         (WebCore::HTMLParser::parseDoctypeToken):
   47925         * html/HTMLParser.h:
   47926         * html/HTMLTokenizer.cpp:
   47927         (WebCore::HTMLTokenizer::reset):
   47928         (WebCore::HTMLTokenizer::parseDoctype):
   47929         (WebCore::HTMLTokenizer::parseTag):
   47930         (WebCore::HTMLTokenizer::write):
   47931         (WebCore::HTMLTokenizer::finish):
   47932         (WebCore::HTMLTokenizer::processDoctypeToken):
   47933         * html/HTMLTokenizer.h:
   47934         (WebCore::DoctypeToken::DoctypeToken):
   47935         (WebCore::DoctypeToken::reset):
   47936         (WebCore::DoctypeToken::state):
   47937         (WebCore::DoctypeToken::setState):
   47938         (WebCore::HTMLTokenizer::State::inDoctype):
   47939         (WebCore::HTMLTokenizer::State::setInDoctype):
   47940         (WebCore::HTMLTokenizer::State::needsSpecialWriteHandling):
   47941         (WebCore::HTMLTokenizer::State::):
   47942         * html/HTMLViewSourceDocument.cpp:
   47943         (WebCore::HTMLViewSourceDocument::addViewSourceToken):
   47944         (WebCore::HTMLViewSourceDocument::addViewSourceDoctypeToken):
   47945         * html/HTMLViewSourceDocument.h:
   47946         * loader/FrameLoader.cpp:
   47947         (WebCore::FrameLoader::write):
   47948         (WebCore::FrameLoader::switchOutLowBandwidthDisplayIfReady):
   47949         * page/Frame.cpp:
   47950         (WebCore::Frame::documentTypeString):
   47951         * page/inspector/utilities.js:
   47952         * xml/XSLTProcessor.cpp:
   47953         (WebCore::XSLTProcessor::createDocumentFromSource):
   47954 
   47955 2008-02-20  Anders Carlsson  <andersca (a] apple.com>
   47956 
   47957         Reviewed by Darin.
   47958 
   47959         Change most SVG related classes to start out with a ref count of 1.
   47960         
   47961         * bindings/js/JSSVGPointListCustom.cpp:
   47962         (WebCore::JSSVGPointList::initialize):
   47963         (WebCore::JSSVGPointList::insertItemBefore):
   47964         (WebCore::JSSVGPointList::replaceItem):
   47965         (WebCore::JSSVGPointList::appendItem):
   47966         * bindings/js/JSSVGTransformListCustom.cpp:
   47967         (WebCore::JSSVGTransformList::initialize):
   47968         (WebCore::JSSVGTransformList::insertItemBefore):
   47969         (WebCore::JSSVGTransformList::replaceItem):
   47970         (WebCore::JSSVGTransformList::appendItem):
   47971         * rendering/SVGCharacterLayoutInfo.h:
   47972         (WebCore::SVGCharOnPath::create):
   47973         (WebCore::SVGCharOnPath::SVGCharOnPath):
   47974         * rendering/SVGRootInlineBox.cpp:
   47975         (WebCore::SVGRootInlineBox::buildLayoutInformationForTextBox):
   47976         * svg/SVGAnimationElement.cpp:
   47977         (WebCore::SVGAnimationElement::parseBeginOrEndValue):
   47978         * svg/SVGClipPathElement.cpp:
   47979         (WebCore::SVGClipPathElement::canvasResource):
   47980         * svg/SVGElementInstance.cpp:
   47981         (WebCore::SVGElementInstance::childNodes):
   47982         * svg/SVGElementInstanceList.cpp:
   47983         (WebCore::SVGElementInstanceList::SVGElementInstanceList):
   47984         * svg/SVGElementInstanceList.h:
   47985         (WebCore::SVGElementInstanceList::create):
   47986         * svg/SVGFitToViewBox.cpp:
   47987         (WebCore::SVGFitToViewBox::SVGFitToViewBox):
   47988         * svg/SVGGradientElement.cpp:
   47989         (WebCore::SVGGradientElement::SVGGradientElement):
   47990         (WebCore::SVGGradientElement::canvasResource):
   47991         * svg/SVGImageElement.cpp:
   47992         (WebCore::SVGImageElement::SVGImageElement):
   47993         * svg/SVGLengthList.h:
   47994         (WebCore::SVGLengthList::create):
   47995         * svg/SVGList.h:
   47996         (WebCore::SVGList::SVGList):
   47997         (WebCore::SVGPODListItem::create):
   47998         (WebCore::SVGPODListItem::copy):
   47999         (WebCore::SVGPODListItem::SVGPODListItem):
   48000         (WebCore::SVGPODList::initialize):
   48001         (WebCore::SVGPODList::insertItemBefore):
   48002         (WebCore::SVGPODList::replaceItem):
   48003         (WebCore::SVGPODList::appendItem):
   48004         (WebCore::SVGPODList::SVGPODList):
   48005         * svg/SVGMarkerElement.cpp:
   48006         (WebCore::SVGMarkerElement::canvasResource):
   48007         * svg/SVGMaskElement.cpp:
   48008         (WebCore::SVGMaskElement::canvasResource):
   48009         * svg/SVGNumberList.h:
   48010         (WebCore::SVGNumberList::create):
   48011         * svg/SVGPathElement.cpp:
   48012         (WebCore::SVGPathElement::createSVGPathSegClosePath):
   48013         (WebCore::SVGPathElement::createSVGPathSegMovetoAbs):
   48014         (WebCore::SVGPathElement::createSVGPathSegMovetoRel):
   48015         (WebCore::SVGPathElement::createSVGPathSegLinetoAbs):
   48016         (WebCore::SVGPathElement::createSVGPathSegLinetoRel):
   48017         (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicAbs):
   48018         (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicRel):
   48019         (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticAbs):
   48020         (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticRel):
   48021         (WebCore::SVGPathElement::createSVGPathSegArcAbs):
   48022         (WebCore::SVGPathElement::createSVGPathSegArcRel):
   48023         (WebCore::SVGPathElement::createSVGPathSegLinetoHorizontalAbs):
   48024         (WebCore::SVGPathElement::createSVGPathSegLinetoHorizontalRel):
   48025         (WebCore::SVGPathElement::createSVGPathSegLinetoVerticalAbs):
   48026         (WebCore::SVGPathElement::createSVGPathSegLinetoVerticalRel):
   48027         (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicSmoothAbs):
   48028         (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicSmoothRel):
   48029         (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticSmoothAbs):
   48030         (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticSmoothRel):
   48031         (WebCore::SVGPathElement::pathSegList):
   48032         * svg/SVGPathElement.h:
   48033         * svg/SVGPathSeg.h:
   48034         (WebCore::SVGPathSeg::SVGPathSeg):
   48035         * svg/SVGPathSegArc.h:
   48036         (WebCore::SVGPathSegArcAbs::create):
   48037         (WebCore::SVGPathSegArcRel::create):
   48038         * svg/SVGPathSegClosePath.h:
   48039         (WebCore::SVGPathSegClosePath::create):
   48040         * svg/SVGPathSegCurvetoCubic.h:
   48041         (WebCore::SVGPathSegCurvetoCubicAbs::create):
   48042         (WebCore::SVGPathSegCurvetoCubicRel::create):
   48043         * svg/SVGPathSegCurvetoCubicSmooth.h:
   48044         (WebCore::SVGPathSegCurvetoCubicSmoothAbs::create):
   48045         (WebCore::SVGPathSegCurvetoCubicSmoothRel::create):
   48046         * svg/SVGPathSegCurvetoQuadratic.h:
   48047         (WebCore::SVGPathSegCurvetoQuadraticAbs::create):
   48048         (WebCore::SVGPathSegCurvetoQuadraticRel::create):
   48049         * svg/SVGPathSegCurvetoQuadraticSmooth.h:
   48050         (WebCore::SVGPathSegCurvetoQuadraticSmoothAbs::create):
   48051         (WebCore::SVGPathSegCurvetoQuadraticSmoothRel::create):
   48052         * svg/SVGPathSegLineto.h:
   48053         (WebCore::SVGPathSegLinetoAbs::create):
   48054         (WebCore::SVGPathSegLinetoRel::create):
   48055         * svg/SVGPathSegLinetoHorizontal.h:
   48056         (WebCore::SVGPathSegLinetoHorizontalAbs::create):
   48057         (WebCore::SVGPathSegLinetoHorizontalRel::create):
   48058         * svg/SVGPathSegLinetoVertical.h:
   48059         (WebCore::SVGPathSegLinetoVerticalAbs::create):
   48060         (WebCore::SVGPathSegLinetoVerticalRel::create):
   48061         * svg/SVGPathSegList.h:
   48062         (WebCore::SVGPathSegList::create):
   48063         * svg/SVGPathSegMoveto.h:
   48064         (WebCore::SVGPathSegMovetoAbs::create):
   48065         (WebCore::SVGPathSegMovetoRel::create):
   48066         * svg/SVGPatternElement.cpp:
   48067         (WebCore::SVGPatternElement::SVGPatternElement):
   48068         (WebCore::SVGPatternElement::canvasResource):
   48069         * svg/SVGPointList.h:
   48070         (WebCore::SVGPointList::create):
   48071         * svg/SVGPolyElement.cpp:
   48072         (WebCore::SVGPolyElement::points):
   48073         * svg/SVGPreserveAspectRatio.cpp:
   48074         (WebCore::SVGPreserveAspectRatio::SVGPreserveAspectRatio):
   48075         * svg/SVGPreserveAspectRatio.h:
   48076         (WebCore::SVGPreserveAspectRatio::create):
   48077         * svg/SVGRenderingIntent.h:
   48078         (WebCore::SVGRenderingIntent::SVGRenderingIntent):
   48079         * svg/SVGStringList.h:
   48080         (WebCore::SVGStringList::create):
   48081         * svg/SVGStyledTransformableElement.cpp:
   48082         (WebCore::SVGStyledTransformableElement::SVGStyledTransformableElement):
   48083         * svg/SVGTests.cpp:
   48084         (WebCore::SVGTests::requiredFeatures):
   48085         (WebCore::SVGTests::requiredExtensions):
   48086         (WebCore::SVGTests::systemLanguage):
   48087         * svg/SVGTextElement.cpp:
   48088         (WebCore::SVGTextElement::SVGTextElement):
   48089         * svg/SVGTextPositioningElement.cpp:
   48090         (WebCore::SVGTextPositioningElement::SVGTextPositioningElement):
   48091         * svg/SVGTransformList.h:
   48092         (WebCore::SVGTransformList::create):
   48093         * svg/SVGUnitTypes.h:
   48094         (WebCore::SVGUnitTypes::SVGUnitTypes):
   48095         * svg/SVGViewElement.cpp:
   48096         (WebCore::SVGViewElement::viewTarget):
   48097         * svg/SVGViewSpec.cpp:
   48098         (WebCore::SVGViewSpec::SVGViewSpec):
   48099         * svg/graphics/SVGPaintServer.cpp:
   48100         (WebCore::SVGPaintServer::sharedSolidPaintServer):
   48101         * svg/graphics/SVGPaintServer.h:
   48102         * svg/graphics/SVGPaintServerGradient.h:
   48103         (WebCore::SVGPaintServerGradient::SharedStopCache::create):
   48104         (WebCore::SVGPaintServerGradient::SharedStopCache::SharedStopCache):
   48105         * svg/graphics/SVGPaintServerLinearGradient.h:
   48106         (WebCore::SVGPaintServerLinearGradient::create):
   48107         * svg/graphics/SVGPaintServerPattern.h:
   48108         (WebCore::SVGPaintServerPattern::create):
   48109         * svg/graphics/SVGPaintServerRadialGradient.h:
   48110         (WebCore::SVGPaintServerRadialGradient::create):
   48111         * svg/graphics/SVGPaintServerSolid.h:
   48112         (WebCore::SVGPaintServerSolid::create):
   48113         * svg/graphics/SVGResource.cpp:
   48114         (WebCore::SVGResource::SVGResource):
   48115         * svg/graphics/SVGResource.h:
   48116         * svg/graphics/SVGResourceClipper.h:
   48117         (WebCore::SVGResourceClipper::create):
   48118         * svg/graphics/SVGResourceMarker.h:
   48119         (WebCore::SVGResourceMarker::create):
   48120         * svg/graphics/SVGResourceMasker.h:
   48121         (WebCore::SVGResourceMasker::create):
   48122         * svg/graphics/cg/SVGPaintServerGradientCg.cpp:
   48123         (WebCore::SVGPaintServerGradient::updateQuartzGradientStopsCache):
   48124 
   48125 2008-02-20  Darin Adler  <darin (a] apple.com>
   48126 
   48127         Reviewed by Sam.
   48128 
   48129         - make conversion from CSS ParseString to String and AtomicString
   48130           automatic and remove all the explicit calls to do the conversion
   48131 
   48132         - fix CSS parsing to do fewer allocations, mostly by using the
   48133           equalIgnoringCase function in CSSParser
   48134 
   48135         * css/CSSGrammar.y: Take out all the explicit atomicString and
   48136         domString calls now that ParseString knows how to convert itself.
   48137 
   48138         * css/CSSParser.cpp:
   48139         (WebCore::equal): Added.
   48140         (WebCore::equalIgnoringCase): Allow non-lettters.
   48141         (WebCore::ParseString::lower): Used charactersAreAllASCII.
   48142         (WebCore::unitFromString): Use equal.
   48143         (WebCore::CSSParser::parseValue): Removed unneeded call to domString.
   48144         (WebCore::CSSParser::parseContent): Use equalIgnoringCase.
   48145         (WebCore::CSSParser::parseBackgroundImage): Removed unneeded call to domString.
   48146         (WebCore::CSSParser::parseTransitionTimingFunction): Use equalIgnoringCase.
   48147         (WebCore::CSSParser::parseDashboardRegions): More of the same.
   48148         (WebCore::CSSParser::parseCounterContent): Ditto.
   48149         (WebCore::CSSParser::parseShape): Use equalIgnoringCase.
   48150         (WebCore::CSSParser::parseFontFamily): Removed unneeded calls to domString.
   48151         (WebCore::CSSParser::parseFontFaceSrc): More.
   48152         (WebCore::CSSParser::parseFontFaceUnicodeRange): More.
   48153         (WebCore::CSSParser::parseColor): Don't lowercase here -- setNamedColor now
   48154         handles the case folding.
   48155         (WebCore::CSSParser::parseColorFromValue): More.
   48156         (WebCore::CSSParser::parseBorderImage): More.
   48157         (WebCore::CSSParser::parseCounter): More.
   48158         (WebCore::TransformOperationInfo::TransformOperationInfo): More.
   48159         (WebCore::CSSParser::parseTransform): More.
   48160         (WebCore::CSSParser::createCharsetRule): More.
   48161         (WebCore::CSSParser::createImportRule): More.
   48162 
   48163         * css/CSSParser.h: Removed domString and atomicString functions.
   48164         (WebCore::ParseString::operator String): Added. Allows conversion to String
   48165         without an explicit function call.
   48166         (WebCore::ParseString::operator AtomicString): Ditto.
   48167 
   48168         * css/MediaQueryExp.cpp:
   48169         (WebCore::MediaQueryExp::MediaQueryExp): Removed a call to domString.
   48170         * css/SVGCSSParser.cpp:
   48171         (WebCore::CSSParser::parseSVGValue): Removed calls to domString.
   48172 
   48173         * platform/graphics/Color.cpp:
   48174         (WebCore::findNamedColor): Call toASCIILower on each character as we copy
   48175         it into the 8-bit character buffer to make the operation fold case.
   48176 
   48177 2008-02-20  Justin Garcia  <justin.garcia (a] apple.com>
   48178 
   48179         Reviewed by Darin Adler.
   48180 
   48181         <rdar://problem/5694920> Typing (esp. deleting) is slower due to TOT WebCore changes
   48182 
   48183         * editing/DeleteSelectionCommand.cpp:
   48184         (WebCore::DeleteSelectionCommand::initializeStartEnd): The common case here
   48185         is where there are no special elements.  Avoid creating VisiblePositions in
   48186         that case.  Additionally, this change postpones the more expensive creation
   48187         of an upstream VisiblePosition until the last possible moment.
   48188         (WebCore::DeleteSelectionCommand::saveTypingStyleState):
   48189         (WebCore::DeleteSelectionCommand::calculateTypingStyleAfterDelete): Add an 
   48190         early return for a common case: deleting characters that are all inside the 
   48191         same text node. In that case the style at the start of the selection will 
   48192         not change during the delete, so there is no need to save/recompute it.
   48193         (WebCore::DeleteSelectionCommand::saveFullySelectedAnchor): Early return
   48194         before VisiblePosition creation if the ends of the selection aren't enclosed
   48195         by an anchor.
   48196         * editing/TypingCommand.cpp:
   48197         (WebCore::TypingCommand::markMisspellingsAfterTyping): Early return if spell
   48198         checking isn't enabled.
   48199 
   48200 2008-02-20  Alexey Proskuryakov  <ap (a] webkit.org>
   48201 
   48202         Incorporates some improvements made by Dan Bernstein.
   48203 
   48204         Reviewed by Darin.
   48205 
   48206         http://bugs.webkit.org/show_bug.cgi?id=17106
   48207         <rdar://problem/5750722> Debug build ASSERTs on page load
   48208 
   48209         Test: fast/encoding/GBK/close-gbk-converter.html
   48210 
   48211         * platform/text/TextCodecICU.cpp:
   48212         (WebCore::getGbkEscape): Changed to use a switch instead of a HashMap, as there
   48213         are only four values.
   48214         (WebCore::gbkCallbackEscape): Check the reason why the function is called, and do not attempt
   48215         getting an escape character if it's not UCNV_UNASSIGNED.
   48216         (WebCore::gbkCallbackSubstitute): Ditto.
   48217 
   48218 2008-02-20  Alexey Proskuryakov  <ap (a] webkit.org>
   48219 
   48220         Build fix.
   48221 
   48222         * xml/XMLHttpRequest.cpp:
   48223         (WebCore::isSafeRequestHeader):
   48224         (WebCore::XMLHttpRequest::setRequestHeader):
   48225 
   48226 2008-02-20  Alexey Proskuryakov  <ap (a] webkit.org>
   48227 
   48228         Reviewed by Darin.
   48229 
   48230         <rdar://problem/5749455> Unable to set the Referer header in Dashboard using XMLHttpRequest
   48231 
   48232         Cannot be tested in DRT.
   48233 
   48234         * xml/XMLHttpRequest.cpp: (WebCore::canSetRequestHeader): Assume that a request that can load
   48235         local files can also set any headers.
   48236 
   48237 2008-02-19  Darin Adler  <darin (a] apple.com>
   48238 
   48239         Reviewed by Sam.
   48240 
   48241         - removed use of DeprecatedString for font family names
   48242 
   48243         * css/CSSFontSelector.cpp:
   48244         (WebCore::CSSFontSelector::addFontFaceRule): Update for name change.
   48245         * css/CSSParser.cpp:
   48246         (WebCore::CSSParser::parseFontFamily): Update to use new appendSpaceSeparated
   48247         function and String rather than DeprecatedString.
   48248         * css/CSSStyleSelector.cpp:
   48249         (WebCore::CSSStyleSelector::applyProperty): Updated for name change.
   48250         * css/FontFamilyValue.cpp:
   48251         (WebCore::FontFamilyValue::FontFamilyValue): Replaced code using a regular
   48252         expression with code that does the same thing more efficiently.
   48253         (WebCore::FontFamilyValue::appendSpaceSeparated): Added.
   48254         (WebCore::FontFamilyValue::cssText): Updated for name change.
   48255         * css/FontFamilyValue.h: Changed DeprecatedString to String. Renamed fontName
   48256         to familyName and parsedFontName to m_familyName. Removed unused genericFamilyType
   48257         and m_genericFamilyType. Added appendSpaceSeparated so that m_familyName can
   48258         be private instead of public.
   48259 
   48260 2008-02-19  Darin Adler  <darin (a] apple.com>
   48261 
   48262         - fix build when SVG is not enabled
   48263 
   48264         * rendering/RenderTreeAsText.cpp: Added include of "TextStream.h".
   48265 
   48266 2008-02-19  Anders Carlsson  <andersca (a] apple.com>
   48267 
   48268         Reviewed by Darin.
   48269 
   48270         Change all classes in xml/ to start out with a ref count of 1.
   48271         
   48272         * bindings/js/JSCustomXPathNSResolver.h:
   48273         * bindings/js/JSXMLHttpRequest.cpp:
   48274         (WebCore::JSXMLHttpRequest::JSXMLHttpRequest):
   48275         * bindings/js/JSXSLTProcessor.cpp:
   48276         (WebCore::JSXSLTProcessor::JSXSLTProcessor):
   48277         * bindings/objc/DOMCustomXPathNSResolver.h:
   48278         (WebCore::DOMCustomXPathNSResolver::create):
   48279         * bindings/scripts/CodeGeneratorJS.pm:
   48280         * bindings/scripts/CodeGeneratorObjC.pm:
   48281         * dom/Document.cpp:
   48282         (WebCore::Document::applyXSLTransform):
   48283         (WebCore::Document::createExpression):
   48284         (WebCore::Document::createNSResolver):
   48285         (WebCore::Document::evaluate):
   48286         * xml/DOMParser.h:
   48287         (WebCore::DOMParser::create):
   48288         (WebCore::DOMParser::DOMParser):
   48289         * xml/NativeXPathNSResolver.h:
   48290         (WebCore::NativeXPathNSResolver::create):
   48291         * xml/XMLHttpRequest.cpp:
   48292         (WebCore::XMLHttpRequest::XMLHttpRequest):
   48293         * xml/XMLHttpRequest.h:
   48294         (WebCore::XMLHttpRequest::create):
   48295         * xml/XMLSerializer.h:
   48296         (WebCore::XMLSerializer::create):
   48297         (WebCore::XMLSerializer::XMLSerializer):
   48298         * xml/XPathEvaluator.cpp:
   48299         (WebCore::XPathEvaluator::createNSResolver):
   48300         * xml/XPathEvaluator.h:
   48301         (WebCore::XPathEvaluator::create):
   48302         (WebCore::XPathEvaluator::XPathEvaluator):
   48303         * xml/XPathExpression.cpp:
   48304         (WebCore::XPathExpression::createExpression):
   48305         (WebCore::XPathExpression::evaluate):
   48306         * xml/XPathExpression.h:
   48307         (WebCore::XPathExpression::create):
   48308         (WebCore::XPathExpression::XPathExpression):
   48309         * xml/XPathNSResolver.h:
   48310         * xml/XPathResult.cpp:
   48311         (WebCore::XPathResult::XPathResult):
   48312         * xml/XPathResult.h:
   48313         (WebCore::XPathResult::create):
   48314         * xml/XPathValue.cpp:
   48315         (WebCore::XPath::Value::modifiableNodeSet):
   48316         * xml/XPathValue.h:
   48317         (WebCore::XPath::ValueData::create):
   48318         (WebCore::XPath::ValueData::ValueData):
   48319         (WebCore::XPath::Value::Value):
   48320         * xml/XSLTProcessor.h:
   48321         (WebCore::XSLTProcessor::create):
   48322         (WebCore::XSLTProcessor::XSLTProcessor):
   48323 
   48324 2008-02-19  Darin Adler  <darin (a] apple.com>
   48325 
   48326         Reviewed by Sam.
   48327 
   48328         - Trimmed down TextStream and weaned it from DeprecatedString.
   48329 
   48330         * page/mac/WebCoreFrameBridge.mm:
   48331         (-[WebCoreFrameBridge renderTreeAsExternalRepresentation]):
   48332         Removed now-unneeded call to getNSString.
   48333 
   48334         * platform/text/TextStream.cpp: Removed unused functions.
   48335         Use snprintf instead of sprintf, for better security.
   48336         (WebCore::TextStream::release): Added.
   48337         * platform/text/TextStream.h: Removed lots of unneeded stuff.
   48338 
   48339         * rendering/RenderTreeAsText.cpp:
   48340         (WebCore::externalRepresentation): Changed to use String instead
   48341         of DeprecatedString.
   48342         * rendering/RenderTreeAsText.h: Ditto.
   48343 
   48344         * rendering/SVGRenderTreeAsText.cpp:
   48345         (WebCore::writeSVGInlineTextBox): Use "\n" instead of endl.
   48346         (WebCore::write): Ditto.
   48347         (WebCore::writeRenderResources): Ditto.
   48348 
   48349 2008-02-19  Justin Garcia  <justin.garcia (a] apple.com>
   48350 
   48351         Reviewed by Darin Adler.
   48352 
   48353         <rdar://problem/5694920> Typing (esp. deleting) is slower due to TOT WebCore changes
   48354         
   48355         This brings performance on the phone back to old levels.  Andre and I are doing
   48356         some formal testing to see exactly where we stand.
   48357 
   48358         * dom/Position.cpp:
   48359         (WebCore::enclosingBlockIgnoringEditability): Added.  This is enclosingBlock
   48360         without the expensive editability checks. upstream and downstream can avoid 
   48361         those because they do their own editability checking.
   48362         (WebCore::Position::upstream):
   48363         (WebCore::Position::downstream):
   48364 
   48365 2008-02-19  Chris Fleizach  <cfleizach (a] apple.com>
   48366 
   48367         Reviewed by Darin.
   48368 
   48369         <rdar://problem/3663560> AXLink for a "name" (anchor) on same page should include an AXLinkedUIElementAttribute
   48370 
   48371         * bridge/mac/WebCoreAXObject.mm:
   48372         (-[WebCoreAXObject linkedUIElement]):
   48373         Returns the linked-to AX object (if the specified one is ignored by accessibility, returns the next un-ignored one by traversing the DOM).
   48374         
   48375         (-[WebCoreAXObject accessibilityAttributeNames]):
   48376         (-[WebCoreAXObject accessibilityAttributeValue:]):
   48377         Support NSAccessibilityLinkedUIElementsAttribute.
   48378 
   48379 2008-02-19  Darin Adler  <darin (a] apple.com>
   48380 
   48381         Reviewed by Sam.
   48382 
   48383         - Removed old debugging aids, Node::dump, RenderObject::dump, and
   48384           RenderObject::information, that used DeprecatedString.
   48385 
   48386         * dom/CharacterData.cpp: Removed override of Node::dump.
   48387         * dom/CharacterData.h: Ditto.
   48388         * dom/Element.cpp: Ditto.
   48389         * dom/Element.h: Ditto.
   48390         * dom/EventTargetNode.cpp: Ditto.
   48391         * dom/EventTargetNode.h: Ditto.
   48392         * dom/Node.cpp: Removed Node::dump.
   48393         * dom/Node.h: Ditto.
   48394 
   48395         * rendering/RenderBlock.cpp: Removed override of RenderObject::dump.
   48396         * rendering/RenderBlock.h: Ditto.
   48397         * rendering/RenderFrameSet.cpp: Ditto.
   48398         * rendering/RenderFrameSet.h: Ditto.
   48399         * rendering/RenderObject.cpp: Removed RenderObject::dump and
   48400         RenderObject::information.
   48401         * rendering/RenderObject.h: Ditto.
   48402         * rendering/RenderTable.cpp: Removed override of RenderObject::dump.
   48403         * rendering/RenderTable.h: Ditto.
   48404         * rendering/RenderTableCell.cpp: Ditto.
   48405         * rendering/RenderTableCell.h: Ditto.
   48406         * rendering/RenderTableCol.cpp: Ditto.
   48407         * rendering/RenderTableCol.h: Ditto.
   48408         * rendering/RenderTableSection.cpp: Ditto.
   48409         * rendering/RenderTableSection.h: Ditto.
   48410 
   48411         * rendering/RenderTreeAsText.h: Removed unneeded include of TextStream.h
   48412         and added forward declarations as appropriate.
   48413 
   48414         * svg/SVGSVGElement.cpp: Removed unneeded include of TextStream.h.
   48415         * svg/graphics/SVGResourceClipper.cpp: And here.
   48416         * svg/graphics/SVGResourceFilter.cpp: Ditto.
   48417         * svg/graphics/filters/SVGFEBlend.cpp: Ditto.
   48418         * svg/graphics/filters/SVGFEComponentTransfer.cpp: Ditto.
   48419         * svg/graphics/filters/SVGFEComposite.cpp: Ditto.
   48420         * svg/graphics/filters/SVGFEDiffuseLighting.cpp: Ditto.
   48421         * svg/graphics/filters/SVGFEGaussianBlur.cpp: Ditto.
   48422         * svg/graphics/filters/SVGFEImage.cpp: Ditto.
   48423         * svg/graphics/filters/SVGFEMerge.cpp: Ditto.
   48424         * svg/graphics/filters/SVGFEMorphology.cpp: Ditto.
   48425         * svg/graphics/filters/SVGFEOffset.cpp: Ditto.
   48426         * svg/graphics/filters/SVGFESpecularLighting.cpp: Ditto.
   48427         * svg/graphics/filters/SVGFETurbulence.cpp: Ditto.
   48428         * svg/graphics/filters/SVGFilterEffect.cpp: Ditto.
   48429 
   48430 2008-02-19  Beth Dakin  <bdakin (a] apple.com>
   48431 
   48432         Reviewed by Sam.
   48433 
   48434         Fix for <rdar://problem/5729674> Seed: Crash in 
   48435         RenderButton::setStyle at http://www.dinorpg.com
   48436 
   48437         Inputs should not honor first-letter.
   48438 
   48439         * rendering/RenderBlock.cpp:
   48440         (WebCore::RenderBlock::updateFirstLetter):
   48441 
   48442 2008-02-19  Dan Bernstein  <mitz (a] apple.com>
   48443 
   48444         Reviewed by Darin Adler.
   48445 
   48446         - fix <rdar://problem/5637569> CrashTracer: [REGRESSION] 620 crashes in Safari at com.apple.WebCore: WebCore::RenderBox::setStaticY + 15
   48447 
   48448         Test: fast/text/wbr-styled.html
   48449 
   48450         Changed RenderWordBreak to inherit from RenderText instead of
   48451         RenderInline.
   48452 
   48453         * rendering/RenderBlock.cpp:
   48454         (WebCore::RenderBlock::calcInlinePrefWidths):
   48455         * rendering/RenderFlow.h:
   48456         * rendering/RenderText.cpp:
   48457         (WebCore::RenderText::renderName):
   48458         (WebCore::RenderText::isTextFragment):
   48459         (WebCore::RenderText::isWordBreak):
   48460         * rendering/RenderText.h:
   48461         * rendering/RenderWordBreak.cpp:
   48462         (WebCore::RenderWordBreak::RenderWordBreak):
   48463         * rendering/RenderWordBreak.h:
   48464         * rendering/bidi.cpp:
   48465         (WebCore::RenderBlock::findNextLineBreak):
   48466 
   48467 2008-02-19  Anders Carlsson  <andersca (a] apple.com>
   48468 
   48469         Reviewed by Darin.
   48470 
   48471         * WebCore.base.exp:
   48472         * loader/mac/LoaderNSURLExtras.h:
   48473         * loader/mac/LoaderNSURLExtras.m:
   48474         Move unused functions to WebKit (where they are used)
   48475         
   48476         (vectorContainsString):
   48477         Use const references.
   48478         
   48479         * platform/mac/WebCoreSystemInterface.h:
   48480         * platform/mac/WebCoreSystemInterface.mm:
   48481         Remove wkNSURLProtocolClassForReqest.
   48482         
   48483 2008-02-19  Justin Garcia  <justin.garcia (a] apple.com>
   48484 
   48485         Reviewed by Darin Adler.
   48486 
   48487         <rdar://problem/5694920> Typing (esp. deleting) is slower due to TOT WebCore 
   48488         
   48489         These changes bring deleting performance back to old levels on the phone
   48490         except for deleting the first space to the right of a word, which we are
   48491         still working on.
   48492 
   48493         * dom/Position.cpp:
   48494         (WebCore::Position::upstream): Avoid the use of enclosingBlock when determining
   48495         if we have left the original enclosing block or entered a new one, and avoid
   48496         rootEditableElement for determining if we have changed editability.  These
   48497         operations are expensive.
   48498         (WebCore::Position::downstream): Ditto.
   48499 
   48500 2008-02-19  Darin Adler  <darin (a] apple.com>
   48501 
   48502         Rubber stamped by Anders.
   48503 
   48504         - removed explicit initialization to 1 for RefCounted; that's now the default
   48505 
   48506         * loader/ResourceLoader.cpp:
   48507         (WebCore::ResourceLoader::ResourceLoader): Removed RefCounted initializer.
   48508         * platform/network/ResourceHandle.cpp:
   48509         (WebCore::ResourceHandle::ResourceHandle): Ditto.
   48510         * platform/text/StringImpl.cpp:
   48511         (WebCore::StringImpl::StringImpl): Ditto.
   48512 
   48513 2008-02-18  Anders Carlsson  <andersca (a] apple.com>
   48514 
   48515         Reviewed by Darin.
   48516 
   48517         Make ResourceLoader and ResourceHandle start out with a refcount of 1.
   48518 
   48519         * loader/MainResourceLoader.cpp:
   48520         (WebCore::MainResourceLoader::create):
   48521         * loader/NetscapePlugInStreamLoader.cpp:
   48522         (WebCore::NetscapePlugInStreamLoader::create):
   48523         * loader/ResourceLoader.cpp:
   48524         (WebCore::ResourceLoader::ResourceLoader):
   48525         * loader/SubresourceLoader.cpp:
   48526         (WebCore::SubresourceLoader::create):
   48527         * platform/network/ResourceHandle.cpp:
   48528         (WebCore::ResourceHandle::ResourceHandle):
   48529         (WebCore::ResourceHandle::create):
   48530 
   48531 2008-02-19  Alp Toker  <alp (a] atoker.com>
   48532 
   48533         Reviewed by Mark Rowe.
   48534 
   48535         http://bugs.webkit.org/show_bug.cgi?id=16863
   48536         [GTK] tab focusing doesn't work
   48537 
   48538         GDK_MOD2_MASK doesn't always mean meta so we can't use it to identify
   48539         the meta key state.
   48540 
   48541         Use GDK_META_MASK where available, otherwise do not support the meta
   48542         key. This matches the behaviour of other applications.
   48543 
   48544         Also add a comment noting that the platform event constructors need to
   48545         be kept in sync (it's not obvious that there are multiple places that
   48546         check the key state).
   48547 
   48548         * platform/gtk/KeyEventGtk.cpp:
   48549         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
   48550         * platform/gtk/MouseEventGtk.cpp:
   48551         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
   48552         * platform/gtk/WheelEventGtk.cpp:
   48553         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
   48554 
   48555 2008-02-18  Brady Eidson  <beidson (a] apple.com>
   48556 
   48557         Reviewed by Sam Weinig's white rhino tusk stamp
   48558 
   48559         SQLiteTransaction::stop() should also reset the transaction-in-progress flag in its parent SQLiteDatabase
   48560 
   48561         * platform/sql/SQLiteTransaction.cpp:
   48562         (WebCore::SQLiteTransaction::stop):
   48563 
   48564 2008-02-18  Brady Eidson  <beidson (a] apple.com>
   48565 
   48566         Reviewed by Darin
   48567 
   48568         Fix for <rdar://5747529> - ObjC Exception can cause JSLock to never be released
   48569 
   48570         Test: platform/mac/plugins/webScriptObject-exception-deadlock.html
   48571 
   48572         * bindings/objc/WebScriptObject.mm:
   48573         (-[WebScriptObject valueForKey:]): The line `resultObj = [super valueForKey:key];    // defaults to throwing an exception` 
   48574           says it all - it throws an exception.  This method also happens to hold the JSLock.  Problematically, when the exeception
   48575           is thrown and the method exited, the JSLock is never released.  Fix that without otherwise changing behavior by holding the 
   48576           JSLock in two individual scopes - Right before the exception and right after.  
   48577 
   48578 2008-02-18  Darin Adler  <darin (a] apple.com>
   48579 
   48580         Reviewed by Sam.
   48581 
   48582         - reduce use of DeprecatedString and memory allocations in processing of CSS
   48583         - remove unnecessary double -> float -> double trip in the CSS parser
   48584         - cleaned up names and structure in CSS grammar
   48585 
   48586         * css/CSSGrammar.y: Remove getPropertyID and getValueID. Both are now in CSSParser.cpp
   48587         instead, and they now work on ParseString and String objects and don't require the caller
   48588         to put the string into a char*. Gave members of the %union more sensible names, removed
   48589         duplicates, and sorted into a logical order. Put the %expect back in, rather than leaving
   48590         it commented out.
   48591         * css/CSSParser.cpp:
   48592         (WebCore::equalIgnoringCase): Added.
   48593         (WebCore::hasPrefix): Added.
   48594         (WebCore::CSSParser::parseTransitionProperty): Changed to call the new cssPropertyID,
   48595         which obviates the need to call lower() and utf8() or to allocate memory at all. Also
   48596         used equalIgnoringCase rather than putting the value into a String just to compare it.
   48597         (WebCore::CSSParser::lex): Replaced convertASCIIToFloat with charactersToDouble. This change
   48598         along with the CSSGrammar.y change, removes the double -> float -> double round trip, and
   48599         affects the result of one layout test.
   48600         (WebCore::cssPropertyID): Added. Gets the property ID from the gperf hash table, but
   48601         without allocating any memory.
   48602         (WebCore::cssValueKeywordID): Ditto.
   48603         * css/CSSParser.h: Removed declaration for deprecatedString function (now used only in
   48604         CSSParser.cpp; soon to be deleted). Added cssPropertyID and cssValueKeywordID functions.
   48605 
   48606         * css/CSSStyleDeclaration.cpp:
   48607         (WebCore::CSSStyleDeclaration::getPropertyCSSValue): Call cssPropertyID instead of propertyID.
   48608         (WebCore::CSSStyleDeclaration::getPropertyValue): Ditto.
   48609         (WebCore::CSSStyleDeclaration::getPropertyPriority): Ditto.
   48610         (WebCore::CSSStyleDeclaration::getPropertyShorthand): Ditto.
   48611         (WebCore::CSSStyleDeclaration::isPropertyImplicit): Ditto.
   48612         (WebCore::CSSStyleDeclaration::setProperty): Ditto.
   48613         (WebCore::CSSStyleDeclaration::removeProperty): Ditto.
   48614         (WebCore::CSSStyleDeclaration::isPropertyName): Ditto.
   48615         * css/CSSStyleDeclaration.h: Removed unnecessary includes, unnecessary Noncopyable boilerplate,
   48616         and the getPropertyID function declaration along with its associated apology comment.
   48617 
   48618         * css/makevalues.pl: Generate constants instead of macros for CSS value numbers (but not an
   48619         enumeration, like properties, since you rarely have any reason to handle all values, but
   48620         often have a reason to handle all properties). Renamed the constant for the number of CSS
   48621         value keywords from CSS_VAL_TOTAL to numCSSValueKeywords, and added maxCSSValueKeywordLength.
   48622 
   48623         * platform/text/String.cpp:
   48624         (WebCore::charactersToDouble): Made this function more efficient by using a stack buffer
   48625         rather than a CString.
   48626 
   48627 2008-02-18  Dan Bernstein  <mitz (a] apple.com>
   48628 
   48629         Reviewed by Dave Hyatt.
   48630 
   48631         - fix <rdar://problem/5736225> crash in svgFontAndFaceElementForFontData on digitalstrom.org/cms
   48632 
   48633         Test: fast/css/font-face-multiple-remote-sources.html
   48634 
   48635         * css/CSSFontFace.cpp:
   48636         (WebCore::CSSFontFace::fontLoaded):
   48637         * css/CSSSegmentedFontFace.cpp:
   48638         (WebCore::CSSSegmentedFontFace::fontLoaded):
   48639 
   48640 2008-02-18  Darin Adler  <darin (a] apple.com>
   48641 
   48642         Reviewed by Sam.
   48643 
   48644         * bindings/js/JSCSSStyleDeclarationCustom.cpp:
   48645         (WebCore::hasCSSPropertyNamePrefix): Added.
   48646         (WebCore::cssPropertyName): Reimplement to not use DeprecatedString. Also made faster
   48647         by using a Vector<UChar> and eliminating all the string operations.
   48648 
   48649 2008-02-18  Stephanie Lewis  <slewis (a] apple.com>
   48650 
   48651         Reviewed by Adam.
   48652 
   48653         Remove workaround for <rdar://problem/5695848>.
   48654         
   48655         * platform/network/cf/ResourceResponseCFNet.cpp:
   48656         (WebCore::ResourceResponse::doUpdateResourceResponse):
   48657 
   48658 2008-02-18  Samuel Weinig  <sam (a] webkit.org>
   48659 
   48660         Reviewed by Geoff Garen.
   48661 
   48662         Fix for http://bugs.webkit.org/show_bug.cgi?id=17419
   48663         Remove CompatMode from JavaScriptCore as it is never set to anything other than NativeMode
   48664 
   48665         * bindings/js/kjs_proxy.cpp:
   48666         (WebCore::KJSProxy::initScript):
   48667 
   48668 2008-02-18  Alp Toker  <alp (a] atoker.com>
   48669 
   48670         Reviewed by Mark Rowe.
   48671 
   48672         http://bugs.webkit.org/show_bug.cgi?id=17381
   48673         [CURL] Regression: data URL parsing broken after DeprecatedString removal (Acid2)
   48674 
   48675         This patch resolves the regression for the GTK+ port.
   48676 
   48677         * platform/network/curl/ResourceHandleManager.cpp:
   48678         (WebCore::parseDataUrl):
   48679 
   48680 2008-02-18  Darin Adler  <darin (a] apple.com>
   48681 
   48682         Reviewed by Sam.
   48683 
   48684         * platform/network/win/ResourceHandleWin.cpp:
   48685         (WebCore::ResourceHandle::onHandleCreated): Use String instead of DeprecatedString.
   48686         (WebCore::ResourceHandle::start): Ditto.
   48687 
   48688 2008-02-18  Darin Adler  <darin (a] apple.com>
   48689 
   48690         Reviewed by Sam.
   48691 
   48692         * platform/network/win/CookieJarWin.cpp:
   48693         (WebCore::setCookies): Use String instead of DeprecatedString.
   48694         (WebCore::cookies): Ditto.
   48695 
   48696 2008-02-18  Darin Adler  <darin (a] apple.com>
   48697 
   48698         Reviewed by Sam.
   48699 
   48700         - removed use of DeprecatedString in the Color class
   48701 
   48702         * platform/graphics/Color.cpp:
   48703         (WebCore::Color::parseHexColor): Streamlined logic a bit with early returns.
   48704         Used toASCIIHexValue a character at a time rather than using toIntStrict
   48705         in base 16 mode.
   48706         (WebCore::findNamedColor): Added. Uses a fixed-size char buffer to look up
   48707         a color using the gperf-generated findColor function. Saves a memory allocation
   48708         vs. the old version that called DeprecatedString::latin1().
   48709         (WebCore::Color::setNamedColor): Changed to use findNamedColor.
   48710 
   48711 2008-02-18  Darin Adler  <darin (a] apple.com>
   48712 
   48713         Reviewed by Sam.
   48714 
   48715         * editing/htmlediting.cpp:
   48716         (WebCore::stringWithRebalancedWhitespace): Changed to use String instead of
   48717         DeprecatedString.
   48718 
   48719 2008-02-18  Darin Adler  <darin (a] apple.com>
   48720 
   48721         Reviewed by Sam.
   48722 
   48723         * editing/SelectionController.cpp:
   48724         (WebCore::SelectionController::debugRenderer): Changed to use String instead of
   48725         DeprecatedString.
   48726 
   48727 2008-02-18  Darin Adler  <darin (a] apple.com>
   48728 
   48729         Reviewed and landed by Sam.
   48730 
   48731         Remove DeprecatedStringList.
   48732 
   48733         * GNUmakefile.am:
   48734         * WebCore.pro:
   48735         * WebCore.vcproj/WebCore.vcproj:
   48736         * WebCore.xcodeproj/project.pbxproj:
   48737         * WebCoreSources.bkl:
   48738         * editing/markup.cpp:
   48739         * platform/DeprecatedStringList.cpp: Removed.
   48740         * platform/DeprecatedStringList.h: Removed.
   48741         * platform/mac/DeprecatedStringListMac.mm: Removed.
   48742 
   48743 2008-02-18  Darin Adler  <darin (a] apple.com>
   48744 
   48745         Reviewed by Sam.
   48746 
   48747         * css/CSSPrimitiveValueMappings.h: Add default cases to all the switch statements.
   48748         This will ease the way some day if we decide to use an enum instead of int; otherwise
   48749         we'll have a ton of "unhandled enum value" warnings here.
   48750 
   48751 2008-02-18  Alp Toker  <alp (a] atoker.com>
   48752 
   48753         Build fix for GTK+ < 2.10. Fall back to simple text clipboard copy
   48754         with older GTK+ versions for now.
   48755 
   48756         * platform/gtk/PasteboardGtk.cpp:
   48757         (WebCore::Pasteboard::writeSelection):
   48758 
   48759 2008-02-18  Darin Adler  <darin (a] apple.com>
   48760 
   48761         Reviewed by Sam.
   48762 
   48763         * WebCore.base.exp: Export a couple of WebCore::String functions we plan to use
   48764         in the future in WebKit.
   48765 
   48766 2008-02-18  Darin Adler  <darin (a] apple.com>
   48767 
   48768         Reviewed by Sam.
   48769 
   48770         * DerivedSources.make: Added the scripts to the ENABLE_SVG versions of the rules
   48771         for CSSPropertyNames.h and CSSValueKeywords.h. Somehow that got left out, so the
   48772         files would not be regenerated if the scripts were changed (but would if SVG was
   48773         disabled).
   48774 
   48775 2008-02-18  Alexey Proskuryakov  <ap (a] webkit.org>
   48776 
   48777         Suggested by Darin.
   48778 
   48779         * platform/KURL.h: (WebCore::KURL::operator const String&): Added, to avoid unexpected
   48780         conversion via UString (as in bug 17418).
   48781 
   48782 2008-02-18  Jon Honeycutt  <jhoneycutt (a] apple.com>
   48783 
   48784         Reviewed by Darin.
   48785 
   48786         <rdar://problem/5744899> Crash in Flash when clicking "Yes" to abort
   48787         slow script Flash 9 dialog at http://www.kidzui.com
   48788 
   48789         When navigating to a new page, we stop all outstanding PluginStreams.
   48790         Flash hangs in the call to NPP_URLNotify. It eventually displays the
   48791         "slow script" dialog, which relinquishes control to the system. While
   48792         this dialog is running, the request we are in the process of cancelling
   48793         completes, and we re-enter Flash to deliver the data. When the dialog
   48794         is dismissed, the internal state of Flash has changed, and Flash
   48795         crashes with a null dereference.
   48796 
   48797         To work around this, we can defer loading before entering plug-in code,
   48798         so that even if a plug-in yields to the system, we won't get callbacks
   48799         while we're handling a callback.
   48800 
   48801         * plugins/PluginStream.cpp:
   48802         (WebCore::PluginStream::startStream): Defers loads while calling into
   48803         plug-in.
   48804         (WebCore::PluginStream::destroyStream): Same.
   48805         (WebCore::PluginStream::deliverData): Same.
   48806         (WebCore::PluginStream::didFail): Protect 'this' from deletion by
   48807         destroyStream. Null out m_loader only after destroyStream returns.
   48808         (WebCore::PluginStream::didFinishLoading): Same.
   48809 
   48810 2008-02-18  Alexey Proskuryakov  <ap (a] webkit.org>
   48811 
   48812         Reviewed by Darin.
   48813 
   48814         http://bugs.webkit.org/show_bug.cgi?id=17418
   48815         REGRESSION: Assertion failure dragging image (JSLock::lockCount() > 0)
   48816 
   48817         * platform/win/ClipboardWin.cpp:
   48818         (WebCore::ClipboardWin::declareAndWriteDragImage): Explicitly convert from KURL to String,
   48819         as an implicit conversion uses UString and thus needs a JSLock.
   48820 
   48821 2008-02-17  Sam Weinig  <sam (a] webkit.org>
   48822 
   48823         Roll out r30360.
   48824 
   48825         * loader/FrameLoader.cpp:
   48826         (WebCore::FrameLoader::changeLocation):
   48827 
   48828 2008-02-17  Sam Weinig  <sam (a] webkit.org>
   48829 
   48830         Mac build fix.
   48831 
   48832         * WebCore.xcodeproj/project.pbxproj:
   48833 
   48834 2008-02-17  Alp Toker  <alp (a] atoker.com>
   48835 
   48836         Attempt to fix the Wx build (has been broken all weekend).
   48837 
   48838         Stub out some graphics functions.
   48839 
   48840         * platform/graphics/wx/GraphicsContextWx.cpp:
   48841         (WebCore::GraphicsContext::beginPath):
   48842         (WebCore::GraphicsContext::addPath):
   48843         * platform/graphics/wx/PathWx.cpp:
   48844         (WebCore::Path::isEmpty):
   48845 
   48846 2008-02-17  Julien Chaffraix  <julien.chaffraix (a] gmail.com>
   48847 
   48848         Reviewed by Alexey Proskuryakov.
   48849 
   48850         http://bugs.webkit.org/show_bug.cgi?id=16989
   48851         bug 16989 : Add send() flag checks in XmlHttpRequest
   48852 
   48853         Splitted XmlHttpRequest::abort into abort (called from JavaScript) and internalAbort that
   48854         perform the cancellation and is called mainly from internal methods.
   48855 
   48856         Tests: http/tests/xmlhttprequest/xmlhttprequest-abort-readyState-shouldDispatchEvent.html
   48857                http/tests/xmlhttprequest/xmlhttprequest-abort-readyState-shouldNotDispatchEvent.html
   48858                http/tests/xmlhttprequest/xmlhttprequest-test-send-flag.html
   48859 
   48860         * xml/XMLHttpRequest.cpp:
   48861         (WebCore::XMLHttpRequest::open): Now call internalAbort() and moved readyState change into method
   48862         (WebCore::XMLHttpRequest::send): Added m_loader check
   48863         (WebCore::XMLHttpRequest::abort): Now update readyState and clear the request headers as specified
   48864         in the spec
   48865 
   48866         (WebCore::XMLHttpRequest::internalAbort): Perform cancellation internal operations (no readyState update)
   48867         (WebCore::XMLHttpRequest::setRequestHeader): Added m_loader check
   48868 
   48869         (WebCore::XMLHttpRequest::processSyncLoadResults): Now call internalAbort() instead of abort()
   48870         (WebCore::XMLHttpRequest::willSendRequest): Ditto
   48871         (WebCore::XMLHttpRequest::cancelRequests): Ditto
   48872         (WebCore::XMLHttpRequest::detachRequests): Ditto
   48873         * xml/XMLHttpRequest.h: Added the private internalAbort method
   48874 
   48875 2008-02-17  Sam Weinig  <sam (a] webkit.org>
   48876 
   48877         Reviewed by Dan Bernstein.
   48878 
   48879         Fix for http://bugs.webkit.org/show_bug.cgi?id=17365
   48880         document.createEvent("MessageEvent") throws NOT_SUPPORTED_ERR
   48881 
   48882         - Updated fast/events/event-instanceof.html to test document.createEvent("MessageEvent").
   48883 
   48884         * DerivedSources.make:
   48885         Generate Objective-C binding for DOMProgressEvent which was missing.
   48886 
   48887         * WebCore.xcodeproj/project.pbxproj:
   48888         Add missing DOMProgressEvent files to the project.
   48889 
   48890         * bindings/js/JSEventCustom.cpp:
   48891         (WebCore::toJS):
   48892         Clean up and add case for SVGZoomEvent that was missing.
   48893 
   48894         * bindings/objc/DOMEvents.mm:
   48895         (+[DOMEvent _wrapEvent:WebCore::]):
   48896         Clean up and add cases for ProgressEvent and MessageEvent that were missing.
   48897 
   48898         * dom/Document.cpp:
   48899         (WebCore::Document::createEvent):
   48900         Add case for MessageEvent.
   48901 
   48902 2008-02-17  Adam Treat  <treat (a] kde.org>
   48903 
   48904         Reviewed by Eric Seidel.
   48905 
   48906         http://bugs.webkit.org/show_bug.cgi?id=17008
   48907         Meta refresh does not work with cache turned off
   48908 
   48909         Fix for issue noticed on http://adserver.vivox.com/2
   48910 
   48911         * loader/FrameLoader.cpp:
   48912         (WebCore::FrameLoader::changeLocation):
   48913 
   48914 2008-02-17  Alp Toker  <alp (a] atoker.com>
   48915 
   48916         Reviewed by Sam Weinig.
   48917 
   48918         Fix for change made in r30355. Issue noticed by smail Dnmez.
   48919 
   48920         Verify SSL certs by default, but allow checks to be disabled with an
   48921         environment variable (WEBKIT_IGNORE_SSL_ERRORS) for now.
   48922 
   48923         * platform/network/curl/ResourceHandleManager.cpp:
   48924         (WebCore::ResourceHandleManager::startJob):
   48925 
   48926 2008-02-17  Bin Chen  <binary.chen (a] gmail.com>
   48927 
   48928         Reviewed by Alp Toker.
   48929 
   48930         http://bugs.webkit.org/show_bug.cgi?id=17404
   48931         Bug 17404: curl certification problem
   48932 
   48933         Disable SSL cert verification until we have a way of distributing
   48934         certs and/or reporting SSL errors to the user.
   48935 
   48936         * platform/network/curl/ResourceHandleManager.cpp:
   48937         (WebCore::ResourceHandleManager::startJob):
   48938 
   48939 2008-02-17  Alp Toker  <alp (a] atoker.com>
   48940 
   48941         Reviewed by Mark Rowe.
   48942 
   48943         DevHelp fails to load local files; URL truncated by one character.
   48944 
   48945         Fix a file:// URL regression introduced in KURL.cpp r30243.
   48946 
   48947         * platform/KURL.cpp:
   48948         (WebCore::KURL::KURL):
   48949 
   48950 2008-02-17  Dan Bernstein  <mitz (a] apple.com>
   48951 
   48952         Reviewed by Darin Adler.
   48953 
   48954         - fix http://bugs.webkit.org/show_bug.cgi?id=17033
   48955           <rdar://problem/5709315> REGRESSION: Really long <option> causes unnecessary page scroll bars to accommodate content
   48956 
   48957         Test: fast/forms/control-clip-overflow.html
   48958 
   48959         * rendering/RenderFlow.cpp:
   48960         (WebCore::RenderFlow::lowestPosition): Account for control clipping.
   48961         (WebCore::RenderFlow::rightmostPosition): Ditto.
   48962         (WebCore::RenderFlow::leftmostPosition): Ditto.
   48963 
   48964 2008-02-16  Oliver Hunt  <oliver (a] apple.com>
   48965 
   48966         Reviewed by Eric S.
   48967 
   48968         Bug 17269: Deobfuscate CanvasRenderingContext2D.cpp
   48969 
   48970         Use cross-platform code to determine the dirty rects for
   48971         fill and stroke operations
   48972 
   48973         * html/CanvasRenderingContext2D.cpp:
   48974         (WebCore::CanvasRenderingContext2D::fill):
   48975         (WebCore::CanvasRenderingContext2D::stroke):
   48976           Added a FIXME as code inspection shows a trivial under-painting
   48977           bug, although we currently ignore dirty rect tracking on canvas
   48978           and repaint the whole thing anyway.
   48979         (WebCore::CanvasRenderingContext2D::fillRect):
   48980 
   48981 2008-02-16  Sam Weinig  <sam (a] webkit.org>
   48982 
   48983         Reviewed by Darin Adler.
   48984 
   48985         Take another step in the direction of getting rid of DeprecatedString
   48986         by moving all the to{NumericType} off of it.
   48987 
   48988         - Create free functions that take a UChar* buffer and length to do
   48989           the string-to-number conversions.  This allows us to avoid two allocations
   48990           if we don't already have a String and is consistent with the design we would
   48991           like going forward.
   48992         - Since the toInt (and family) functions on DeprecatedString were slightly
   48993           different than the ones on String (they didn't allow trailing garbage),
   48994           an extra set of 'Strict' toInt functions were added that have this behavior.
   48995 
   48996         * platform/graphics/Color.cpp:
   48997         (WebCore::Color::parseHexColor):
   48998         * platform/text/PlatformString.h:
   48999         * platform/text/String.cpp:
   49000         (WebCore::String::percentage):
   49001         (WebCore::String::toIntStrict):
   49002         (WebCore::String::toUIntStrict):
   49003         (WebCore::String::toInt64Strict):
   49004         (WebCore::String::toUInt64Strict):
   49005         (WebCore::String::toUInt):
   49006         (WebCore::String::toDouble):
   49007         (WebCore::isCharacterAllowedInBase):
   49008         (WebCore::toIntegralType):
   49009         (WebCore::lengthOfCharactersAsInteger):
   49010         (WebCore::charactersToIntStrict):
   49011         (WebCore::charactersToUIntStrict):
   49012         (WebCore::charactersToInt64Strict):
   49013         (WebCore::charactersToUInt64Strict):
   49014         (WebCore::charactersToInt):
   49015         (WebCore::charactersToUInt):
   49016         (WebCore::charactersToInt64):
   49017         (WebCore::charactersToUInt64):
   49018         (WebCore::charactersToDouble):
   49019         (WebCore::charactersToFloat):
   49020         * platform/text/StringImpl.cpp:
   49021         (WebCore::parseLength):
   49022         (WebCore::StringImpl::toIntStrict):
   49023         (WebCore::StringImpl::toUIntStrict):
   49024         (WebCore::StringImpl::toInt64Strict):
   49025         (WebCore::StringImpl::toUInt64Strict):
   49026         (WebCore::StringImpl::toInt):
   49027         (WebCore::StringImpl::toUInt):
   49028         (WebCore::StringImpl::toInt64):
   49029         (WebCore::StringImpl::toUInt64):
   49030         (WebCore::StringImpl::toDouble):
   49031         (WebCore::StringImpl::toFloat):
   49032         * platform/text/StringImpl.h:
   49033         * svg/SVGAnimationElement.cpp:
   49034         (WebCore::SVGAnimationElement::parseClockValue):
   49035         * svg/SVGFETurbulenceElement.cpp:
   49036         (WebCore::SVGFETurbulenceElement::parseMappedAttribute):
   49037 
   49038 2008-02-16  Dan Bernstein  <mitz (a] apple.com>
   49039 
   49040         Reviewed by Sam Weinig.
   49041 
   49042         - fix fixed-pitch font measurement of control characters that render
   49043           as zero-width space
   49044 
   49045         Test: fast/text/fixed-pitch-control-characters.html
   49046 
   49047         * rendering/RenderText.cpp:
   49048         (WebCore::RenderText::widthFromCache):
   49049 
   49050 2008-02-16  Kevin Ollivier  <kevino (a] theolliviers.com>
   49051 
   49052         wx build fix.
   49053 
   49054         * platform/graphics/wx/GraphicsContextWx.cpp:
   49055         (WebCore::GraphicsContext::drawImage):
   49056 
   49057 2008-02-16  Jan Michael Alonzo  <jmalonzo (a] unpluggable.com>
   49058 
   49059         Reviewed by Alp Toker.
   49060 
   49061         Cross document messaging GTK+/autotools build fix.
   49062 
   49063         * GNUmakefile.am:
   49064 
   49065 2008-02-15  Oliver Hunt  <oliver (a] apple.com>
   49066 
   49067         Build fix for Qt and Cairo builds
   49068 
   49069         * platform/graphics/cairo/GraphicsContextCairo.cpp:
   49070         (WebCore::GraphicsContext::drawImage):
   49071         * platform/graphics/qt/GraphicsContextQt.cpp:
   49072 
   49073 2008-02-15  Oliver Hunt  <oliver (a] apple.com>
   49074 
   49075         Reviewed by Dan B.
   49076 
   49077         Bug 17269: Deobfuscate CanvasRenderingContext2D.cpp
   49078         Refactor CanvasRenderingContext2D::drawImage(HTMLCanvasElement) to remove evil ifdefs
   49079 
   49080         Add logic draw(ImageBuffer*) method to GraphicsContext to handle
   49081         painting the source canvas content.
   49082 
   49083         * html/CanvasRenderingContext2D.cpp:
   49084         (WebCore::CanvasRenderingContext2D::drawImage):
   49085         * html/HTMLCanvasElement.cpp:
   49086         (WebCore::HTMLCanvasElement::buffer):
   49087         * html/HTMLCanvasElement.h:
   49088         * platform/graphics/GraphicsContext.h:
   49089         * platform/graphics/cairo/GraphicsContextCairo.cpp:
   49090         (WebCore::GraphicsContext::drawImage):
   49091         * platform/graphics/cg/GraphicsContextCG.cpp:
   49092         (WebCore::GraphicsContext::paintBuffer):
   49093         (WebCore::GraphicsContext::drawImage):
   49094         * platform/graphics/qt/GraphicsContextQt.cpp:
   49095         (WebCore::GraphicsContext::drawImage):
   49096 
   49097 2008-02-15  Kevin Ollivier  <kevino (a] theolliviers.com>
   49098 
   49099         Reviewed by David Hyatt.
   49100 
   49101         Using GetNativeFontInfoDesc() to generate the hash value was
   49102         leading to duplicate entries in the HashMap. Use the font object's
   49103         pointer instead.
   49104 
   49105         http://bugs.webkit.org/show_bug.cgi?id=17371
   49106 
   49107         * platform/graphics/wx/FontPlatformData.h:
   49108         (WebCore::FontPlatformData::computeHash):
   49109 
   49110 2008-02-15  Ada Chan  <adachan (a] apple.com>
   49111 
   49112         When parsing url we get from a CFURLRef, we need to null terminate 
   49113         the string for the case when url ends with a '/'.
   49114 
   49115         Reviewed by Darin.
   49116 
   49117         * platform/cf/KURLCFNet.cpp:
   49118         (WebCore::KURL::KURL):
   49119 
   49120 2008-02-15  Brady Eidson  <beidson (a] apple.com>
   49121 
   49122         Reviewed by Darin
   49123 
   49124         Fix for <rdar://problem/5727175> and <rdar://problem/5740495> - Database threads and callback scripts can run after
   49125         a page has closed or loaded a new document
   49126 
   49127         Deciding to make the Database I/O semantic the same as loaders/XHR when a document is shut down, this patch implements
   49128         a policy of shutting down the databases in a document at the same time.  This includes removing all pending transactions 
   49129         in a database, cutting off an queued statements in the current transaction, and preventing further callbacks from being
   49130         made.
   49131 
   49132         No new layout tests with this patch as the current layout tests were catching this issue in a plethora of ways already
   49133         (crashing, unexpected exceptions and output, etc)
   49134 
   49135         * dom/Document.cpp:
   49136         (WebCore::Document::~Document): Don't actually stop the database thread here - it better have been stopped already.
   49137           Add an assertion to that effect.
   49138         (WebCore::Document::addOpenDatabase): Add a new database handle to this Document's open database set
   49139         (WebCore::Document::removeOpenDatabase): Remove such a handle
   49140         (WebCore::Document:: stopDatabases): Call "close" on all open Database handles for this document
   49141         * dom/Document.h:
   49142 
   49143         * loader/FrameLoader.cpp:
   49144         (WebCore::FrameLoader::stopLoading): In addition to canceling all resource loads and XHRs, stop all database I/O
   49145 
   49146         * platform/MessageQueue.h:
   49147         (WebCore::MessageQueue::killed): 
   49148 
   49149         * platform/sql/SQLiteTransaction.cpp:
   49150         (WebCore::SQLiteTransaction::stop): Added.  Explicit stop to cut off a transaction so it won't try anymore SQL activity
   49151         * platform/sql/SQLiteTransaction.h:
   49152 
   49153         * storage/Database.cpp:
   49154         (WebCore::Database::Database):
   49155         (WebCore::Database::~Database):
   49156         (WebCore::Database::markAsDeletedAndClose): Check if the thread has terminated before committing to waiting on the
   49157           thread.
   49158         (WebCore::Database::stop):  Stop this database, including all queued transactions and callbacks
   49159         * storage/Database.h:
   49160         (WebCore::Database::stopped):
   49161 
   49162         * storage/DatabaseThread.cpp:
   49163         (WebCore::DatabaseThread::terminationRequested):
   49164         * storage/DatabaseThread.h:
   49165 
   49166         * storage/SQLTransaction.cpp:
   49167         (WebCore::SQLTransaction::executeSQL): Throw an exception if a new executeSQL comes in after a database is closed
   49168         (WebCore::SQLTransaction::checkAndHandleClosedDatabase): Added.  Clears queued statements and clear the next step
   49169           when the database has been closed since the last step/callback was run.  Also stops the current SQLite transaction,
   49170           if any
   49171         (WebCore::SQLTransaction::performNextStep):
   49172         (WebCore::SQLTransaction::performPendingCallback):
   49173         * storage/SQLTransaction.h:
   49174 
   49175 2008-02-15  Adele Peterson  <adele (a] apple.com>
   49176 
   49177         Reviewed by Darin.
   49178 
   49179         Fix for <rdar://problem/5745072> REGRESSION (r29348): Shift + Tab does not change indent level on Google Docs
   49180 
   49181         The immediate cause of this bug was that we stopped sending keypress events for the tab key when it is used to advance focus.
   49182         We had a special case for forward-tab in designMode, where the default behavior was to insert a tab key (or respect the keypress handler behavior).
   49183         This change makes the shift-tab behavior match the forward-tab behavior.
   49184 
   49185         If the site had put their event handler (which does the indenting) on the keydown event, then this problem would have been avoided.
   49186         This is something we should look into and maybe advise the site on in the future.  However, it's a low-risk change to just make tab and shift-tab uniform 
   49187         in this respect, so I think this is the way to go for right now.
   49188 
   49189         * page/EventHandler.cpp: (WebCore::EventHandler::defaultTabEventHandler):
   49190 
   49191 2008-02-15  Anders Carlsson  <andersca (a] apple.com>
   49192 
   49193         Reviewed by Alice.
   49194 
   49195         <rdar://problem/5738678>
   49196         REGRESSION: "Loading" status remains when uploading file to .Mac iDisk via Safari
   49197         
   49198         Use the new CFNetwork functions for setting body parts.
   49199         
   49200         * platform/network/cf/FormDataStreamCFNet.cpp:
   49201         (WebCore::setHTTPBody):
   49202         (WebCore::httpBodyFromRequest):
   49203 
   49204 2008-02-15  Geoffrey Garen  <ggaren (a] apple.com>
   49205 
   49206         Reviewed by Anders Carlsson.
   49207         
   49208         Fixed <rdar://problem/5725429> REGRESSION (r27898): Greenfield online
   49209         surveys no longer work due to XMLHttpRequest exceptions
   49210         
   49211         Reverted some exception throwing code from r12194.
   49212         
   49213         To comply with the W3C draft spec, we used to throw an exception when
   49214         trying to access responseText and responseXML at the wrong time, but
   49215         that turned out to be a compatibility problem.
   49216         
   49217         Now, matching Firefox and previous versions of WebKit, we never throw
   49218         an exception when accessing responseText or responseXML.
   49219         
   49220         See http://www.mail-archive.com/public-webapi@w3.org/msg02756.html.
   49221 
   49222         * xml/XMLHttpRequest.cpp:
   49223         (WebCore::XMLHttpRequest::getResponseText):
   49224         (WebCore::XMLHttpRequest::getResponseXML):
   49225 
   49226 2008-02-15  Justin Garcia  <justin.garcia (a] apple.com>
   49227 
   49228         Reviewed by Dan Bernstein.
   49229 
   49230         <rdar://problem/5738768> REGRESSION (r30062): Crash in InlineTextBox::isLineBreak() when Undoing a replace
   49231         
   49232         Rolled out <http://trac.webkit.org/projects/webkit/changeset/29667>
   49233 
   49234         * editing/SelectionController.cpp:
   49235         (WebCore::SelectionController::nodeWillBeRemoved):
   49236 
   49237 2008-02-15  Alice Liu  <alice.liu (a] apple.com>
   49238 
   49239         Reviewed by Darin.
   49240 
   49241         Fixed <rdar://problem/5741440> REGRESSION (r28496): After deactivating JavaScript, scripts embedded in the HTML page continue to run
   49242      
   49243         Before this patch, Frame::scriptProxy() would only return null in the case that javascript was 
   49244         disabled and if the script proxy field wasn't set (which would only be the case if the window 
   49245         hasn't loaded anything yet).  Not all callers of scriptProxy() always check for a non-null return 
   49246         value.  Those that did check would effectively be checking if javascript was enabled before proceeding.
   49247         This fix consists of 2 elements: first, make sure that scriptProxy() will never return null, regardless 
   49248         of whether javascript is disabled.  This will mean that callers who don't check for null won't crash.  
   49249         Second, callers who did check for null now instead check for javascript being disabled.  This means that 
   49250         code paths intended for preventing javascript from being run will be making the correct check.  Another
   49251         minor addition to this patch is that I added a function on KSJProxy to be a shortcut for checking if javascript
   49252         is enabled. 
   49253 
   49254         * bindings/js/JSCustomSQLStatementCallback.cpp:
   49255         (WebCore::JSCustomSQLStatementCallback::handleEvent):
   49256         * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
   49257         (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
   49258         * bindings/js/JSCustomSQLTransactionCallback.cpp:
   49259         (WebCore::JSCustomSQLTransactionCallback::handleEvent):
   49260         * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
   49261         (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent):
   49262         * bindings/js/JSCustomVoidCallback.cpp:
   49263         (WebCore::JSCustomVoidCallback::handleEvent):
   49264         * bindings/js/JSCustomXPathNSResolver.cpp:
   49265         (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
   49266         * bindings/js/ScheduledAction.cpp:
   49267         (WebCore::ScheduledAction::execute):
   49268         * bindings/js/kjs_events.cpp:
   49269         (WebCore::JSAbstractEventListener::handleEvent):
   49270         (WebCore::JSLazyEventListener::parseCode):
   49271         * bindings/js/kjs_html.cpp:
   49272         (WebCore::runtimeObjectImplementsCall):
   49273         * bindings/js/kjs_proxy.cpp:
   49274         (WebCore::KJSProxy::isEnabled):
   49275         * bindings/js/kjs_proxy.h:
   49276         * bindings/js/kjs_window.cpp:
   49277         (KJS::Window::retrieveWindow):
   49278         (KJS::Window::retrieve):
   49279         * dom/Document.cpp:
   49280         (WebCore::Document::createHTMLEventListener):
   49281         * dom/EventTarget.cpp:
   49282         (WebCore::EventTarget::dispatchGenericEvent):
   49283         * html/HTMLPlugInElement.cpp:
   49284         (WebCore::HTMLPlugInElement::createNPObject):
   49285         * html/HTMLScriptElement.cpp:
   49286         (WebCore::HTMLScriptElement::evaluateScript):
   49287         * html/HTMLTokenizer.cpp:
   49288         (WebCore::HTMLTokenizer::parseTag):
   49289         (WebCore::HTMLTokenizer::processToken):
   49290         * loader/FrameLoader.cpp:
   49291         (WebCore::FrameLoader::executeScript):
   49292         (WebCore::FrameLoader::userGestureHint):
   49293         (WebCore::FrameLoader::open):
   49294         (WebCore::FrameLoader::dispatchWindowObjectAvailable):
   49295         (WebCore::FrameLoader::switchOutLowBandwidthDisplayIfReady):
   49296         * manual-tests/disable-javascript-reload.html: Added.
   49297         * page/Frame.cpp:
   49298         (WebCore::Frame::scriptProxy):
   49299         (WebCore::Frame::bindingRootObject):
   49300         (WebCore::Frame::windowScriptNPObject):
   49301         * page/Frame.h:
   49302         * page/InspectorController.cpp:
   49303         (WebCore::canPassNodeToJavaScript):
   49304         * page/mac/FrameMac.mm:
   49305         (WebCore::Frame::windowScriptObject):
   49306         * svg/SVGDocumentExtensions.cpp:
   49307         (WebCore::SVGDocumentExtensions::createSVGEventListener):
   49308 
   49309 2008-02-15  Dan Bernstein  <mitz (a] apple.com>
   49310 
   49311         Reviewed by Alexey Proskuryakov.
   49312 
   49313         - WebCore part of fixing http://bugs.webkit.org/show_bug.cgi?id=17360
   49314           <rdar://problem/5743131> REGRESSION: mp4 file downloaded from server is downloaded as html
   49315 
   49316         Test: http/tests/loading/text-content-type-with-binary-extension.html
   49317 
   49318         Refined the workaround for <rdar://problem/5321972> to exclude files
   49319         with extensions that are known to be associated with binary MIME types.
   49320 
   49321         * WebCore.xcodeproj/project.pbxproj: Added WebCoreURLResponse.{h,mm}.
   49322         * platform/network/mac/ResourceResponseMac.mm:
   49323         (WebCore::ResourceResponse::doUpdateResourceResponse): Moved the
   49324         workaround logic into WebCoreURLResponse.
   49325         * platform/network/mac/WebCoreURLResponse.h: Added.
   49326         * platform/network/mac/WebCoreURLResponse.mm: Added.
   49327         (createBinaryExtensionsSet): Returns a set of extensions known to
   49328         belong to MIME types of binary data.
   49329         (-[NSURLResponse _webcore_MIMEType]):
   49330         (-[NSHTTPURLResponse _webcore_MIMEType]): Forces the MIME type from
   49331         application/octet-stream to text/plain if that is the specified
   49332         Content-Type, unless the extension is in the binary extensions set.
   49333 
   49334 2008-02-15  Dan Bernstein  <mitz (a] apple.com>
   49335 
   49336         Reviewed by Dave Hyatt.
   49337 
   49338         - fix http://bugs.webkit.org/show_bug.cgi?id=17306
   49339           <rdar://problem/5737923> Transitions between styles that have different transition-* properties behave inconsistently
   49340 
   49341         * manual-tests/transitions.html: Added.
   49342         * page/AnimationController.cpp:
   49343         (WebCore::CompositeImplicitAnimation::animate): Changed to use the
   49344         transition properties of the current style rather than the target style.
   49345         (WebCore::AnimationControllerPrivate::get): Changed to not create an
   49346         animation if the style does not have transitions.
   49347         (WebCore::AnimationController::updateImplicitAnimations): Added code to
   49348         return the target style if the current style is not animating.
   49349         * rendering/RenderObject.cpp:
   49350         (WebCore::RenderObject::setAnimatableStyle): Changed to call
   49351         updateImplicitAnimations() even if the current style does not have
   49352         transitions, because we may be animating out of a style that had them.
   49353 
   49354 2008-02-15  Alexey Proskuryakov  <ap (a] webkit.org>
   49355 
   49356         Rubber-stamped by Darin.
   49357 
   49358         Remove an obsolete WebCore readme file.
   49359 
   49360         * README: Removed.
   49361 
   49362 2008-02-15  Sam Weinig  <sam (a] webkit.org>
   49363 
   49364         Reviewed by Darin Adler.
   49365 
   49366         Remove more uses of DeprecatedString in preparation of getting rid of it.
   49367 
   49368         * bridge/mac/WebCoreScriptDebugger.mm:
   49369         * css/CSSCursorImageValue.cpp:
   49370         (WebCore::isSVGCursorIdentifier):
   49371         (WebCore::CSSCursorImageValue::updateIfSVGCursorIsUsed):
   49372         * css/CSSStyleSelector.h:
   49373         * dom/Element.cpp:
   49374         (WebCore::Element::dump):
   49375         (WebCore::Element::formatForDebugger):
   49376         * dom/Position.cpp:
   49377         (WebCore::Position::debugPosition):
   49378         (WebCore::Position::formatForDebugger):
   49379         * dom/Range.cpp:
   49380         (WebCore::Range::formatForDebugger):
   49381         * dom/Text.cpp:
   49382         (WebCore::Text::formatForDebugger):
   49383         * editing/Selection.cpp:
   49384         (WebCore::Selection::debugPosition):
   49385         (WebCore::Selection::formatForDebugger):
   49386         * editing/SelectionController.cpp:
   49387         (WebCore::SelectionController::debugRenderer):
   49388         * editing/VisiblePosition.cpp:
   49389         (WebCore::VisiblePosition::debugPosition):
   49390         * html/HTMLTokenizer.cpp:
   49391         (WebCore::HTMLTokenizer::scriptHandler):
   49392         (WebCore::HTMLTokenizer::parseTag):
   49393         (WebCore::HTMLTokenizer::processToken):
   49394         (WebCore::HTMLTokenizer::notifyFinished):
   49395         * svg/SVGFontFaceElement.cpp:
   49396         (WebCore::mapAttributeToCSSProperty):
   49397 
   49398 2008-02-15  Adam Roben  <aroben (a] apple.com>
   49399 
   49400         * bindings/scripts/CodeGenerator.pm: Touch this to force bindings to
   49401         regenerate.
   49402 
   49403 2008-02-15  Adam Roben  <aroben (a] apple.com>
   49404 
   49405         Try to fix Qt/GTK+ builds
   49406 
   49407         * WebCore.pro: Remove MessageEvent.{idl,cpp} from the unconditional
   49408         parts of this file.
   49409 
   49410 2008-02-15  Darin Adler  <darin (a] apple.com>
   49411 
   49412         - another Qt build fix
   49413 
   49414         * platform/qt/KURLQt.cpp:
   49415         (WebCore::KURL::operator QUrl): Use the characters directly, not ascii().
   49416         Eliminate references to urlString.
   49417 
   49418 2008-02-15  Darin Adler  <darin (a] apple.com>
   49419 
   49420         - another Qt build fix
   49421 
   49422         * platform/qt/ClipboardQt.cpp:
   49423         (WebCore::ClipboardQt::declareAndWriteDragImage): Use KURL instead of String.
   49424 
   49425 2008-02-14  Darin Adler  <darin (a] apple.com>
   49426 
   49427         - another round of build fixes
   49428 
   49429         * platform/KURL.cpp:
   49430         (WebCore::appendEncodedHostname): Fix spelling (strLen, not strlen).
   49431         * platform/network/curl/ResourceHandleManager.cpp:
   49432         (WebCore::parseDataUrl): Fix a ".." typo and call data instead of characters.
   49433 
   49434 2008-02-14  Darin Adler  <darin (a] apple.com>
   49435 
   49436         - added back accidentally-removed files
   49437 
   49438         * platform/DeprecatedStringList.cpp: Copied from platform/DeprecatedStringList.cpp.
   49439         * platform/DeprecatedStringList.h: Copied from platform/DeprecatedStringList.h.
   49440         * platform/mac/DeprecatedStringListMac.mm: Copied from platform/mac/DeprecatedStringListMac.mm.
   49441 
   49442 2008-02-14  Darin Adler  <darin (a] apple.com>
   49443 
   49444         - more build fixes
   49445 
   49446         * platform/KURL.cpp:
   49447         (WebCore::appendEncodedHostname): Use String to make a QString.
   49448         * platform/network/cf/ResourceRequest.h:
   49449         (WebCore::ResourceRequest::ResourceRequest): Removed a stray deprecatedString() call.
   49450         * platform/network/curl/ResourceHandleManager.cpp:
   49451         (WebCore::parseDataUrl): Updated to String rather than DeprecatedString functions.
   49452 
   49453 2008-02-14  Darin Adler  <darin (a] apple.com>
   49454 
   49455         - next Qt build fix
   49456 
   49457         * platform/network/qt/ResourceRequest.h:
   49458         (WebCore::ResourceRequest::ResourceRequest): Removed a stray deprecatedString() call.
   49459 
   49460 2008-02-14  Darin Adler  <darin (a] apple.com>
   49461 
   49462         - another build fix
   49463 
   49464         * platform/network/curl/ResourceRequest.h:
   49465         (WebCore::ResourceRequest::ResourceRequest): Removed a stray deprecatedString() call.
   49466 
   49467 2008-02-14  Darin Adler  <darin (a] apple.com>
   49468 
   49469         - first Qt build fix
   49470 
   49471         * dom/XMLTokenizer.cpp:
   49472         (WebCore::XMLTokenizer::endElementNs): Added a missing string() call.
   49473 
   49474 2008-02-14  Darin Adler  <darin (a] apple.com>
   49475 
   49476         Reviewed by Eric Seidel.
   49477 
   49478         Based on work by Brett Wilson <brettw (a] chromium.org>
   49479 
   49480         - fix http://bugs.webkit.org/show_bug.cgi?id=16538
   49481           KURL should use String instead of DeprecatedString
   49482 
   49483         - fix http://bugs.webkit.org/show_bug.cgi?id=16485
   49484           DocLoader::checkForReload will crash if the URL isNull
   49485           and a similar problem in IconDatabase
   49486 
   49487         - fix http://bugs.webkit.org/show_bug.cgi?id=16487
   49488           KURL doesn't preserve isNull when constructed with a DeprecatedString
   49489 
   49490         - changed completeURL and various DOM getters to return KURL, to avoid
   49491           conversion back and forth from KURL to String
   49492 
   49493         - changed the conversion of KURL to NSURL or NSString to be automatic,
   49494           to ease the use of KURL in Objective C DOM bindings, and eliminated
   49495           the getNSURL function
   49496 
   49497         - because I had to visit the DOM bindings anyway, eliminated almost all
   49498           the use of the KJS namespace for things in WebCore
   49499 
   49500         - fixed HTMLOptionElement constructor to check for undefined rather
   49501           than size of the arguments array
   49502 
   49503         - eliminated some other unnecessary uses of DeprecatedString
   49504 
   49505         - changed String::split to take a Vector parameter instead of returning
   49506           a Vector, for better performance
   49507 
   49508         - added a couple of missing calls to do layout in SVG image handling;
   49509           I was able to reproduce these only because I had broken URLs for a
   49510           while -- not sure how to reproduce them now but the changes are
   49511           clearly needed
   49512 
   49513         Performance testing shows this to be at least a 1% speedup.
   49514 
   49515         Added a new function protocols to efficiently compare protocols
   49516         without case errors and a blankURL function so we don't have to
   49517         code "about:blank" in multiple places in the code and don't have to
   49518         construct a frash KURL each time. Moved decode_string and encode_string
   49519         out of KURL and gave them clearer names.
   49520 
   49521         Made KURL constructors explicit to highlight potentially-expensive
   49522         operations and the poor semantics of KURL's constructor that takes
   49523         a String.
   49524 
   49525         * WebCore.base.exp: Updated.
   49526 
   49527         * bindings/js/JSAttrCustom.cpp:
   49528         (WebCore::JSAttr::setValue): Use protocolIs.
   49529         * bindings/js/JSAudioConstructor.h: KJS namespace change.
   49530         * bindings/js/JSCSSRuleCustom.cpp:
   49531         (WebCore::toJS): Ditto.
   49532         * bindings/js/JSCSSValueCustom.cpp:
   49533         (WebCore::toJS): Ditto.
   49534         * bindings/js/JSDocumentCustom.cpp:
   49535         (WebCore::JSDocument::location): Ditto.
   49536         (WebCore::JSDocument::setLocation): Updated for KURL change.
   49537         (WebCore::toJS): KJS namespace change.
   49538         * bindings/js/JSElementCustom.cpp:
   49539         (WebCore::allowSettingSrcToJavascriptURL): Use protocolIs.
   49540         (WebCore::JSElement::setAttribute): KJS namespace change.
   49541         (WebCore::JSElement::setAttributeNode): Ditto.
   49542         (WebCore::JSElement::setAttributeNS): Ditto.
   49543         (WebCore::JSElement::setAttributeNodeNS): Ditto.
   49544         * bindings/js/JSHTMLFrameElementCustom.cpp:
   49545         (WebCore::allowSettingJavascriptURL): Use protocolIs.
   49546         (WebCore::JSHTMLFrameElement::setSrc): KJS namespace change.
   49547         (WebCore::JSHTMLFrameElement::setLocation): Ditto.
   49548         * bindings/js/JSHTMLIFrameElementCustom.cpp:
   49549         (WebCore::JSHTMLIFrameElement::setSrc): Use protocolIs.
   49550         * bindings/js/JSHTMLOptionElementConstructor.cpp:
   49551         (WebCore::JSHTMLOptionElementConstructor::JSHTMLOptionElementConstructor):
   49552         (WebCore::JSHTMLOptionElementConstructor::construct): Cleaned up the
   49553         structure a bit and changed checking to check for undefined rather than
   49554         number of arguments.
   49555         * bindings/js/JSHTMLOptionElementConstructor.h: KJS namespace change.
   49556         * bindings/js/JSLocation.cpp:
   49557         (WebCore::JSLocation::put): Eliminated some DeprecatedString use,
   49558         and use protocolIs.
   49559         (WebCore::jsLocationProtoFuncReplace): Ditto.
   49560         (WebCore::jsLocationProtoFuncReload): Ditto.
   49561         (WebCore::jsLocationProtoFuncAssign): Ditto.
   49562         * bindings/js/JSLocation.h: KJS namespace change.
   49563         * bindings/js/JSNamedNodeMapCustom.cpp:
   49564         (WebCore::JSNamedNodeMap::canGetItemsForName): Ditto.
   49565         (WebCore::JSNamedNodeMap::nameGetter): Ditto.
   49566         * bindings/js/JSNamedNodesCollection.cpp:
   49567         (WebCore::JSNamedNodesCollection::JSNamedNodesCollection): Ditto.
   49568         * bindings/js/JSNamedNodesCollection.h: Ditto.
   49569         * bindings/js/JSXMLHttpRequest.cpp:
   49570         (WebCore::jsXMLHttpRequestPrototypeFunctionOpen): Removed
   49571         DeprecatedString use.
   49572         (WebCore::jsXMLHttpRequestPrototypeFunctionSend): Ditto.
   49573         * bindings/js/JSXMLHttpRequest.h: Moved this class into the WebCore
   49574         namespace.
   49575         * bindings/js/JSXSLTProcessor.cpp: Namespace change.
   49576         * bindings/js/JSXSLTProcessor.h: Ditto.
   49577 
   49578         * bindings/js/kjs_binding.cpp: Updated for namespace change.
   49579         (WebCore::jsStringOrNull): Added an overload for KURL to allow DOM
   49580         classes to return KURL even if the DOM expects a string.
   49581         (WebCore::jsStringOrUndefined): Ditto.
   49582         (WebCore::jsStringOrFalse): Ditto.
   49583         * bindings/js/kjs_binding.h: Moved everything into the WebCore
   49584         namespace.
   49585 
   49586         * bindings/js/kjs_css.h: Namespace change.
   49587         * bindings/js/kjs_events.cpp: Removed an include.
   49588         * bindings/js/kjs_events.h: Namespace change.
   49589         * bindings/js/kjs_html.h: Namespace change.
   49590 
   49591         * bindings/js/kjs_navigator.cpp: Moved everything into the
   49592         WebCore namespace.
   49593         * bindings/js/kjs_navigator.h: Ditto.
   49594 
   49595         * bindings/js/kjs_window.cpp:
   49596         (KJS::parseModalDialogFeatures): Updated for String::split change.
   49597         (KJS::createWindow): Use protocolIs and removed some DeprecatedString.
   49598         (KJS::Window::put): Ditto.
   49599         (KJS::Window::allowsAccessFrom): Ditto.
   49600         (KJS::windowProtoFuncOpen): Ditto.
   49601 
   49602         * bindings/objc/DOM.mm:
   49603         (-[DOMElement _getURLAttribute:]): Removed getNSURL call.
   49604         * bindings/objc/DOMHTML.mm:
   49605         (-[DOMHTMLDocument _createDocumentFragmentWithMarkupString:baseURLString:]): Ditto.
   49606 
   49607         * bindings/scripts/CodeGeneratorCOM.pm: Updated includes so conversions from
   49608         KURL will work.
   49609         * bindings/scripts/CodeGeneratorJS.pm: Updated for namespace changes, and also
   49610         updated includes so conversions from KURL will work.
   49611         * bindings/scripts/CodeGeneratorObjC.pm: Updated includes so conversions from
   49612         KURL will work.
   49613 
   49614         * bridge/mac/WebCoreAXObject.mm:
   49615         (-[WebCoreAXObject accessibilityAttributeValue:]): Removed getNSURL call.
   49616         Also streamlined the logic.
   49617         (AXAttributedStringAppendText): Ditto.
   49618 
   49619         * bridge/mac/WebCoreScriptDebugger.mm:
   49620         (toNSString): Tweaked.
   49621         (toNSURL): Removed getNSURL call.
   49622 
   49623         * css/CSSImageValue.cpp:
   49624         (WebCore::CSSImageValue::image): Removed DeprecatedString use.
   49625         * css/CSSImportRule.cpp:
   49626         (WebCore::CSSImportRule::insertedIntoParent): Ditto.
   49627         * css/CSSParser.cpp:
   49628         (WebCore::CSSParser::parseValue): Ditto.
   49629         (WebCore::CSSParser::parseContent): Ditto.
   49630         (WebCore::CSSParser::parseBackgroundImage): Ditto.
   49631         (WebCore::CSSParser::parseFontFaceSrc): Ditto.
   49632         (WebCore::CSSParser::parseBorderImage): Ditto.
   49633         * css/CSSStyleSelector.cpp:
   49634         (WebCore::CSSStyleSelector::setEncodedURL): Ditto.
   49635         (WebCore::checkPseudoState): Ditto.
   49636         * css/CSSStyleSelector.h: Ditto.
   49637 
   49638         * css/MediaList.cpp:
   49639         (WebCore::MediaList::setMediaText): Updated for String::split change.
   49640 
   49641         * css/StyleBase.cpp:
   49642         (WebCore::StyleBase::baseURL): Return KURL.
   49643         * css/StyleBase.h: DItto.
   49644 
   49645         * dom/Document.cpp:
   49646         (WebCore::Document::~Document): Updated for namespace change.
   49647         (WebCore::Document::documentURI): Return KURL.
   49648         (WebCore::Document::setDocumentURI): Removed DeprecatedString use.
   49649         (WebCore::Document::baseURI): Return KURL.
   49650         (WebCore::Document::open): Updated to use blankURL.
   49651         (WebCore::Document::setURL): Take KURL.
   49652         (WebCore::Document::shouldBeAllowedToLoadLocalResources): Updated for
   49653         change to use KURL
   49654         (WebCore::Document::setBaseURL): Take KURL.
   49655         (WebCore::Document::elementSheet): Updated for KURL change.
   49656         (WebCore::Document::mappedElementSheet): Ditto.
   49657         (WebCore::Document::processHttpEquiv): Ditto.
   49658         (WebCore::Document::recalcStyleSelector): Removed use of
   49659         DeprecatedString -- also noticed some dead code here!
   49660         (WebCore::Document::setCookie): Ditto.
   49661         (WebCore::Document::completeURL): Return KURL.
   49662         * dom/Document.h: Use KURL instead of String in a few places.
   49663 
   49664         * dom/DocumentType.cpp:
   49665         (WebCore::DocumentType::baseURI): Return KURL.
   49666         * dom/DocumentType.h: Ditto.
   49667 
   49668         * dom/Element.cpp:
   49669         (WebCore::Element::baseURI): Return KURL.
   49670         * dom/Element.h: Ditto.
   49671 
   49672         * dom/Node.cpp:
   49673         (WebCore::Node::setDocument): Namespace change.
   49674         (WebCore::Node::baseURI): Return KURL.
   49675         * dom/Node.h: Ditto.
   49676 
   49677         * dom/ProcessingInstruction.cpp:
   49678         (WebCore::ProcessingInstruction::checkStyleSheet): Updated for KURL change.
   49679         * dom/StyleElement.cpp:
   49680         (WebCore::StyleElement::process): Changed to use Vector<UChar> instead of
   49681         String for better performance.
   49682         (WebCore::StyleElement::createSheet): Removed use of DeprecateString.
   49683         * dom/XMLTokenizer.cpp:
   49684         (WebCore::XMLTokenizer::endElementNs): Updated for KURL change.
   49685         (WebCore::XMLTokenizer::end): Ditto.
   49686         (WebCore::xmlDocPtrForString): Removed use of DeprecateString.
   49687         * dom/XMLTokenizer.h: Ditto.
   49688 
   49689         * editing/markup.cpp: Moved appendString to PlatformString.h.
   49690         (WebCore::appendQuotedURLAttributeValue): Use protocolIs.
   49691         (WebCore::completeURLs): Removed DeprecatedString use.
   49692         (WebCore::createFragmentFromMarkup): Use blankURL.
   49693         (WebCore::fillContainerFromString): Removed DeprecatedString use.
   49694         (WebCore::createFragmentFromText): Ditto.
   49695 
   49696         * history/HistoryItem.cpp:
   49697         (WebCore::HistoryItem::url): Removed DeprecatedString use.
   49698         (WebCore::HistoryItem::originalURL): Ditto.
   49699         * history/HistoryItem.h: Removed include.
   49700 
   49701         * html/HTMLAnchorElement.cpp:
   49702         (WebCore::HTMLAnchorElement::defaultEventHandler): Removed use of
   49703         DeprecatedString.
   49704         (WebCore::HTMLAnchorElement::href): Return KURL.
   49705         (WebCore::HTMLAnchorElement::hash): Removed DeprecatedString use.
   49706         (WebCore::HTMLAnchorElement::host): Ditto.
   49707         (WebCore::HTMLAnchorElement::hostname): Ditto.
   49708         (WebCore::HTMLAnchorElement::pathname): Ditto.
   49709         (WebCore::HTMLAnchorElement::port): Ditto.
   49710         (WebCore::HTMLAnchorElement::protocol): Ditto.
   49711         (WebCore::HTMLAnchorElement::search): Ditto.
   49712         (WebCore::HTMLAnchorElement::toString): Ditto.
   49713         * html/HTMLAnchorElement.h: Ditto.
   49714         * html/HTMLAppletElement.cpp:
   49715         (WebCore::HTMLAppletElement::createRenderer): Updated for KURL change.
   49716         * html/HTMLAreaElement.cpp:
   49717         (WebCore::HTMLAreaElement::href): Return KURL.
   49718         * html/HTMLAreaElement.h: Ditto.
   49719         * html/HTMLBaseElement.cpp:
   49720         (WebCore::HTMLBaseElement::removedFromDocument): Updated for KURL change.
   49721         (WebCore::HTMLBaseElement::process): Removed DeprecatedString use.
   49722         * html/HTMLBodyElement.cpp:
   49723         (WebCore::HTMLBodyElement::parseMappedAttribute): Updated for KURL change.
   49724         * html/HTMLEmbedElement.cpp:
   49725         (WebCore::HTMLEmbedElement::parseMappedAttribute): Removed use of
   49726         DeprecatedString.
   49727         * html/HTMLEmbedElement.h: Removed DeprecatedString use.
   49728         * html/HTMLFormElement.cpp:
   49729         (WebCore::HTMLFormElement::formWouldHaveSecureSubmission): Use protocolIs.
   49730         (WebCore::encodeCString): Updated for change to String::split.
   49731         (WebCore::HTMLFormElement::dataEncoding): Ditto.
   49732         (WebCore::HTMLFormElement::formData): Removed DeprecatedString use.
   49733         (WebCore::HTMLFormElement::isMailtoForm): Use protocolIs.
   49734         (WebCore::HTMLFormElement::submit): Updated for KURL change.
   49735         (WebCore::HTMLFormElement::reset): Ditto.
   49736         * html/HTMLFrameElementBase.cpp:
   49737         (WebCore::HTMLFrameElementBase::isURLAllowed): Updated for KURL change
   49738         and use equalIgnoringRef instead of doing a setRef to get the same effect.
   49739         (WebCore::HTMLFrameElementBase::openURL): Use blankURL.
   49740         (WebCore::HTMLFrameElementBase::location): Return KURL.
   49741         (WebCore::HTMLFrameElementBase::src): Return KURL.
   49742         * html/HTMLFrameElementBase.h: Ditto.
   49743         * html/HTMLImageElement.cpp:
   49744         (WebCore::HTMLImageElement::parseMappedAttribute): Updated for KURL change.
   49745         (WebCore::HTMLImageElement::longDesc): Return KURL.
   49746         (WebCore::HTMLImageElement::lowsrc): Return KURL.
   49747         (WebCore::HTMLImageElement::src): Return KURL.
   49748         * html/HTMLImageElement.h: Ditto. Also removed imageMap() function.
   49749         * html/HTMLInputElement.cpp:
   49750         (WebCore::HTMLInputElement::src): Return KURL.
   49751         * html/HTMLInputElement.h: Ditto.
   49752         * html/HTMLLinkElement.cpp:
   49753         (WebCore::HTMLLinkElement::parseMappedAttribute): Updated for KURL change.
   49754         (WebCore::HTMLLinkElement::tokenizeRelAttribute): Updated for String::split change.
   49755         (WebCore::HTMLLinkElement::href): Return KURL.
   49756         * html/HTMLLinkElement.h: Ditto.
   49757         * html/HTMLMediaElement.cpp:
   49758         (WebCore::HTMLMediaElement::src): Return KURL.
   49759         (WebCore::HTMLMediaElement::pickMedia): Updated for KURL change.
   49760         * html/HTMLMediaElement.h: Ditto.
   49761         * html/HTMLObjectElement.cpp:
   49762         (WebCore::HTMLObjectElement::isImageType): Use protocolIs.
   49763         (WebCore::HTMLObjectElement::data): Return KURL.
   49764         * html/HTMLObjectElement.h: Ditto.
   49765         * html/HTMLOptGroupElement.cpp:
   49766         (WebCore::HTMLOptGroupElement::groupLabelText): Removed DeprecatedString use.
   49767         * html/HTMLParser.cpp:
   49768         (WebCore::HTMLParser::reportErrorToConsole): Updated for KURL change.
   49769         * html/HTMLScriptElement.cpp:
   49770         (WebCore::HTMLScriptElement::insertedIntoDocument): Ditto.
   49771         (WebCore::HTMLScriptElement::text): Changed to use Vector<UChar> instead of
   49772         String for better performance.
   49773         (WebCore::HTMLScriptElement::src): Return KURL.
   49774         * html/HTMLScriptElement.h: Ditto.
   49775         * html/HTMLSourceElement.cpp:
   49776         (WebCore::HTMLSourceElement::src): Return KURL.
   49777         * html/HTMLSourceElement.h: Ditto.
   49778         * html/HTMLTableElement.cpp:
   49779         (WebCore::HTMLTableElement::parseMappedAttribute): Updated for KURL change.
   49780         * html/HTMLTablePartElement.cpp:
   49781         (WebCore::HTMLTablePartElement::parseMappedAttribute): Updated for KURL change.
   49782         * html/HTMLTextAreaElement.cpp:
   49783         (WebCore::HTMLTextAreaElement::setValue): Removed DeprecatedString use.
   49784         * html/HTMLTokenizer.cpp:
   49785         (WebCore::HTMLTokenizer::scriptExecution): Ditto.
   49786         (WebCore::HTMLTokenizer::notifyFinished): Use protocolIs.
   49787         * html/HTMLVideoElement.cpp:
   49788         (WebCore::HTMLVideoElement::poster): Return KURL.
   49789         * html/HTMLVideoElement.h: Ditto.
   49790         * html/HTMLViewSourceDocument.cpp:
   49791         (WebCore::HTMLViewSourceDocument::addText): Updated for String::split change.
   49792 
   49793         * loader/DocLoader.cpp:
   49794         (WebCore::DocLoader::checkForReload): Add an explicit check for an empty URL
   49795         here to avoid problems using its string as a hash table key later.
   49796         (WebCore::DocLoader::requestResource): Removed DeprecatedString use.
   49797 
   49798         * loader/FTPDirectoryDocument.cpp:
   49799         (WebCore::FTPDirectoryTokenizer::createTDForFilename): Updated for KURL change.
   49800         (WebCore::FTPDirectoryTokenizer::parseAndAppendOneLine): Removed use of
   49801         DeprecatedString.
   49802 
   49803         * loader/FrameLoader.cpp:
   49804         (WebCore::FrameLoader::requestFrame): Use protocolIs.
   49805         (WebCore::FrameLoader::loadSubframe): Use blankURL.
   49806         (WebCore::FrameLoader::submitForm): Use protocolIs and removed use of
   49807         DeprecatedString.
   49808         (WebCore::FrameLoader::iconURL): Return KURL. Use protcolIs.
   49809         (WebCore::FrameLoader::didOpenURL): Use protocolIs.
   49810         (WebCore::FrameLoader::didExplicitOpen): Use blankURL.
   49811         (WebCore::FrameLoader::executeIfJavaScriptURL): Use protocolIs.
   49812         Update for name change to decodeURLEscapeSequences.
   49813         (WebCore::FrameLoader::receivedFirstData): Updated for KURL changes.
   49814         (WebCore::FrameLoader::begin): Removed DeprecatedString use.
   49815         Renamed baseurl to baseURL. Updated to use KURL more.
   49816         (WebCore::FrameLoader::gotoAnchor): Removed use of encodedHtmlRef
   49817         function, which is no different from ref.
   49818         (WebCore::FrameLoader::completeURL): Updated for KURL change.
   49819         (WebCore::FrameLoader::scheduleLocationChange): Ditto.
   49820         (WebCore::FrameLoader::canCachePage): Use protocolIs.
   49821         (WebCore::FrameLoader::updatePolicyBaseURL): Update for KURL change.
   49822         (WebCore::FrameLoader::setPolicyBaseURL): Take KURL.
   49823         (WebCore::FrameLoader::startRedirectionTimer): Removed use of
   49824         DeprecatedString.
   49825         (WebCore::FrameLoader::load): Use protocolIs.
   49826         (WebCore::FrameLoader::shouldHideReferrer): Use protocolIs.
   49827         (WebCore::FrameLoader::shouldAllowNavigation): Updated for KURL change.
   49828         (WebCore::FrameLoader::commitProvisionalLoad): Use blankURL.
   49829         (WebCore::FrameLoader::open): Use protcolIs.
   49830         (WebCore::FrameLoader::createHistoryItem): Use blankURL.
   49831         (WebCore::FrameLoader::createJavaAppletWidget): Updated for KURL change.
   49832         (WebCore::FrameLoader::switchOutLowBandwidthDisplayIfReady): Removed
   49833         DeprecatedString use.
   49834         * loader/FrameLoader.h: Ditto.
   49835 
   49836         * loader/ImageDocument.cpp:
   49837         (WebCore::ImageDocument::createDocumentStructure): Updated for KURL change.
   49838         * loader/PluginDocument.cpp:
   49839         (WebCore::PluginTokenizer::createDocumentStructure): Ditto.
   49840 
   49841         * loader/icon/IconDatabase.cpp:
   49842         (WebCore::IconDatabase::iconForPageURL): Added a check for an empty URL
   49843         before trying to use it as a hash table key.
   49844 
   49845         * loader/icon/IconLoader.h: Tweaked includes.
   49846 
   49847         * loader/loader.cpp:
   49848         (WebCore::Loader::servePendingRequests): Use protcolIs. Also removed some
   49849         code to set up a local variable that is never used (and a DeprecatedString
   49850         on to boot!).
   49851 
   49852         * loader/mac/LoaderNSURLExtras.m:
   49853         (suggestedFilenameWithMIMEType): Removed unnecessary typecast.
   49854 
   49855         * page/ContextMenuController.cpp: Removed include.
   49856 
   49857         * page/mac/EventHandlerMac.mm:
   49858         (WebCore::EventHandler::needsKeyboardEventDisambiguationQuirks):
   49859         Use protocolIs.
   49860 
   49861         * page/mac/WebCoreFrameBridge.mm:
   49862         (-[WebCoreFrameBridge URLWithAttributeString:]): Removed getNSURL call.
   49863         (-[WebCoreFrameBridge baseURL]): Ditto.
   49864 
   49865         * platform/KURL.cpp:
   49866         (WebCore::isSchemeFirstChar): Fixed bug in handling of values >= 0x80.
   49867         (WebCore::isSchemeChar): Ditto.
   49868         (WebCore::isPathSegmentEndChar): Ditto.
   49869         (WebCore::hexDigitValue): Changed parameter type to UChar.
   49870         (WebCore::copyASCII): Added.
   49871         (WebCore::findFirstOf): Added.
   49872         (WebCore::KURL::protocolIs): Added.
   49873         (WebCore::KURL::KURL): Tightened logic up quite a bit. Changed parameter
   49874         types from DeprecatedString to String.
   49875         (WebCore::KURL::init): Changed parameter type to String. Preserved the
   49876         passed-in string even if the base is invalid. Cleaned up logic to determine
   49877         if the originalString should be pased in to the parse function. Simplified
   49878         by calling the new parse overload that takes String in many cases.
   49879         (WebCore::KURL::lastPathComponent): Return String.
   49880         (WebCore::KURL::protocol): Ditto.
   49881         (WebCore::KURL::host): Ditto.
   49882         (WebCore::KURL::port): Changed logic to use early return for clarity.
   49883         (WebCore::KURL::pass): Return String.
   49884         (WebCore::KURL::user): Ditto.
   49885         (WebCore::KURL::ref): Ditto.
   49886         (WebCore::assertProtocolIsGood): Added.
   49887         (WebCore::KURL::protocolIs): Added.
   49888         (WebCore::KURL::query): Return String.
   49889         (WebCore::KURL::path): Ditto.
   49890         (WebCore::KURL::setProtocol): Take String.
   49891         (WebCore::KURL::setHost): Ditto.
   49892         (WebCore::KURL::setPort): Use String.
   49893         (WebCore::KURL::setHostAndPort): Take String.
   49894         (WebCore::KURL::setUser): Ditto.
   49895         (WebCore::KURL::setPass): Ditto.
   49896         (WebCore::KURL::setRef): Ditto.
   49897         (WebCore::KURL::setQuery): Ditto.
   49898         (WebCore::KURL::setPath): Ditto.
   49899         (WebCore::KURL::prettyURL): Return String. Use Vector<UChar> to build it.
   49900         (WebCore::decodeURLEscapeSequences): Renamed from KURL::decode_string.
   49901         Return String. Use Vector<UChar> to build it.
   49902         (WebCore::KURL::isLocalFile): Use protocolIs.
   49903         (WebCore::KURL::parse): Added an overload that takes a String to replace
   49904         the use of DeprecatedString::ascii at various call sites. Updated for
   49905         name change (urlString -> m_string).
   49906         (WebCore::equalIgnoringRef): Wrote a new implementation that doesn't
   49907         do any allocation.
   49908         (WebCore::encodeWithURLEscapeSequences): Renamed from KURL::encode_string.
   49909         Return String.
   49910         (WebCore::appendEncodedHostname): Added. Replaces encodeHostname and
   49911         avoids the need to allocate a string.
   49912         (WebCore::findHostnamesInMailToURL): Update to use findFirstOf instead of
   49913         regular expressions.
   49914         (WebCore::findHostnameInHierarchicalURL): Ditto.
   49915         (WebCore::encodeHostnames): Use protocolIs and the other helpers above.
   49916         (WebCore::encodeRelativeString): Changed to put result into a CharBuffer.
   49917         (WebCore::substituteBackslashes): Updated to use String.
   49918         (WebCore::KURL::copyToBuffer): Added.
   49919         (WebCore::protocolIs): Added.
   49920         (WebCore::blankURL): Added.
   49921         (WebCore::KURL::print): Updated.
   49922         * platform/KURL.h: Added a number of comments. Reorganized the header a bit.
   49923         Made the string constructors explicit. Changed to use String instead of
   49924         DeprecatedString. Removed encodedHTMLRef. Renamed and added a few functions.
   49925 
   49926         * platform/cf/KURLCFNet.cpp:
   49927         (WebCore::KURL::KURL): Streamlined the logic a bit.
   49928         (WebCore::KURL::createCFURL): Changed to use copyToBuffer.
   49929 
   49930         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
   49931         (WebCore::MediaPlayerPrivate::createQTMovie): Removed getNSURL call.
   49932         Use protocolIs.
   49933         * platform/mac/ClipboardMac.mm:
   49934         (WebCore::ClipboardMac::declareAndWriteDragImage): Removed getNSURL call.
   49935         * platform/mac/CookieJar.mm:
   49936         (WebCore::cookies): Removed getNSURL call.
   49937         (WebCore::setCookies): Removed getNSURL call.
   49938         * platform/mac/KURLMac.mm:
   49939         (WebCore::KURL::KURL): Streamlined the logic a bit.
   49940         * platform/mac/PasteboardMac.mm:
   49941         (WebCore::Pasteboard::writeURL): Removed getNSURL call.
   49942         (WebCore::Pasteboard::writeImage): Ditto.
   49943         * platform/mac/SSLKeyGeneratorMac.mm:
   49944         (WebCore::signedPublicKeyAndChallengeString): Ditto.
   49945 
   49946         * platform/network/HTTPParsers.cpp:
   49947         (WebCore::filenameFromHTTPContentDisposition): Updated for String::split.
   49948         * platform/network/ResourceHandle.cpp:
   49949         (WebCore::ResourceHandle::portAllowed): Use protocolIs.
   49950 
   49951         * platform/network/cf/ResourceErrorCF.cpp:
   49952         (WebCore::ResourceError::operator CFErrorRef): Removed deprecatedString call.
   49953         * platform/network/curl/ResourceHandleManager.cpp:
   49954         (WebCore::headerCallback): Ditto.
   49955         (WebCore::parseDataUrl): Use String instead of DeprecatedString.
   49956         (WebCore::ResourceHandleManager::startJob): Updated for KURL changes.
   49957         * platform/network/mac/ResourceErrorMac.mm:
   49958         (WebCore::ResourceError::operator NSError*): Removed getNSURL call.
   49959         * platform/network/mac/ResourceRequest.h:
   49960         (WebCore::ResourceRequest::ResourceRequest): Removed DeprecatedString use.
   49961         * platform/network/mac/ResourceRequestMac.mm:
   49962         (WebCore::ResourceRequest::doUpdatePlatformRequest): Removed getNSURL call.
   49963         * platform/network/mac/ResourceResponseMac.mm:
   49964         (WebCore::ResourceResponse::nsURLResponse): Removed getNSURL call.
   49965 
   49966         * platform/qt/ClipboardQt.cpp:
   49967         (WebCore::ClipboardQt::writeURL): Removed deprecatedString call.
   49968 
   49969         * platform/text/CString.h:
   49970         (WebCore::CStringBuffer::length): Fixed size_t/unsigned mismatch to make it
   49971         possible to compile this on Windows with higher warning level
   49972 
   49973         * platform/text/PlatformString.h: Updated split to modify a result parameter
   49974         rather than returning a Vector. Added charactersAreAllASCII and an append
   49975         function that appends a String to a Vector<UChar>.
   49976         * platform/text/String.cpp:
   49977         (WebCore::String::split): Updated.
   49978 
   49979         * platform/win/BString.cpp:
   49980         (WebCore::BString::BString): Added conversion from KURL.
   49981         * platform/win/BString.h: Ditto.
   49982 
   49983         * platform/win/ClipboardUtilitiesWin.cpp:
   49984         (WebCore::markupToCF_HTML): Removed use of deprecatedString.
   49985         * platform/win/ClipboardWin.cpp:
   49986         (WebCore::filesystemPathFromUrlOrTitle): Ditto.
   49987         (WebCore::createGlobalHDropContent): Ditto.
   49988         (WebCore::ClipboardWin::setData): Ditto.
   49989         (WebCore::ClipboardWin::writeRange): Ditto.
   49990         * platform/win/PasteboardWin.cpp:
   49991         (WebCore::Pasteboard::writeSelection): Ditto.
   49992         * plugins/PluginStream.cpp:
   49993         (WebCore::PluginStream::startStream): Ditto.
   49994         (WebCore::PluginStream::destroyStream): Ditto.
   49995         * plugins/win/PluginViewWin.cpp:
   49996         (WebCore::scriptStringIfJavaScriptURL): Ditto.
   49997         (WebCore::PluginView::performRequest): Ditto.
   49998         (WebCore::PluginView::PluginView): Ditto.
   49999 
   50000         * rendering/HitTestResult.cpp:
   50001         (WebCore::HitTestResult::absoluteImageURL): Removed DeprecatedString use.
   50002         (WebCore::HitTestResult::absoluteLinkURL): Ditto.
   50003 
   50004         * rendering/RenderFrameSet.cpp:
   50005         (WebCore::RenderFrameSet::layOutAxis): Fixed comment wording.
   50006         * rendering/RenderImage.cpp:
   50007         (WebCore::RenderImage::paintReplaced): Removed use of DeperecatedString,
   50008         (WebCore::RenderImage::imageMap): Changed to call useMap instead of imageMap;
   50009         both do the same thing, and the first is standard DOM.
   50010 
   50011         * rendering/RenderObject.cpp:
   50012         (WebCore::RenderObject::addPDFURLRect): Rewrote and streamlined to remove
   50013         DeprecatedString use.
   50014         * rendering/RenderObject.h: Changed addPDFURLRect to take const IntRect&.
   50015 
   50016         * rendering/RenderPartObject.cpp:
   50017         (WebCore::isURLAllowed): Updated for KURL change and use equalIgnoringRef
   50018         instead of doing a setRef to get the same effect.
   50019         (WebCore::RenderPartObject::updateWidget): Updated for KURL change.
   50020 
   50021         * rendering/RenderText.cpp:
   50022         (WebCore::charactersAreAllASCII): Moved the guts to PlatformString.h.
   50023 
   50024         * rendering/SVGRenderSupport.cpp:
   50025         (WebCore::renderSubtreeToImage): Added missing call to do layout. I ran
   50026         into this while doing some layout tests while URL processing was broken.
   50027 
   50028         * rendering/SVGRenderTreeAsText.h: Removed include.
   50029 
   50030         * svg/SVGImageLoader.cpp:
   50031         (WebCore::SVGImageLoader::updateFromElement): Removed DeprecatedString use.
   50032 
   50033         * svg/graphics/SVGImage.cpp:
   50034         (WebCore::SVGImage::draw): Added missing call to do layout. I ran
   50035         into this while doing some layout tests while URL processing was broken.
   50036         (WebCore::SVGImage::dataChanged): Use a null URL rather than an arbitrary
   50037         string for the document.
   50038 
   50039         * xml/XMLHttpRequest.cpp:
   50040         (WebCore::XMLHttpRequest::getResponseXML): Removed DeprecatedString use.
   50041         (WebCore::XMLHttpRequest::urlMatchesDocumentDomain): Ditto.
   50042         (WebCore::XMLHttpRequest::open): Ditto.
   50043         (WebCore::XMLHttpRequest::send):  Namespace change.
   50044         (WebCore::XMLHttpRequest::dropProtection): Ditto.
   50045         * xml/XMLHttpRequest.h: Removed DeprecatedString use.
   50046 
   50047         * xml/XSLImportRule.cpp:
   50048         (WebCore::XSLImportRule::loadSheet): Removed DeprecatedString use.
   50049         * xml/XSLStyleSheet.cpp:
   50050         (WebCore::XSLStyleSheet::loadChildSheets): Ditto.
   50051         (WebCore::XSLStyleSheet::loadChildSheet): Ditto.
   50052         * xml/XSLStyleSheet.h: Ditto.
   50053         * xml/XSLTProcessor.cpp:
   50054         (WebCore::docLoaderFunc): Ditto.
   50055         (WebCore::xsltStylesheetPointer): Ditto.
   50056         (WebCore::xmlDocPtrFromNode): Ditto.
   50057 
   50058 2008-02-14  Ada Chan  <adachan (a] apple.com>
   50059 
   50060         <rdar://problem/5744728> Fix leaks of RegularExpression objects in Frame.cpp.
   50061         
   50062         Reviewed by Jon and Darin.
   50063 
   50064         * page/Frame.cpp:
   50065         (WebCore::createRegExpForLabels):
   50066         (WebCore::Frame::searchForLabelsBeforeElement):
   50067         (WebCore::Frame::matchLabelsAgainstElement):
   50068 
   50069 2008-02-14  Stephanie Lewis  <slewis (a] apple.com>
   50070 
   50071         Reviewed by Geoff.
   50072 
   50073         Update order files.
   50074 
   50075         * WebCore.order:
   50076 
   50077 2008-02-14  Oliver Hunt  <oliver (a] apple.com>
   50078 
   50079         Reviewed by Geoff G and Weinig.
   50080 
   50081         <rdar://problem/5726608> REGRESSION (r29428): Assigning to window.status does not update status bar
   50082 
   50083         Revert the portions of r29428 responsible for breaking the ability to
   50084         set window.status
   50085 
   50086         * page/DOMWindow.cpp:
   50087         (WebCore::DOMWindow::setStatus):
   50088         (WebCore::DOMWindow::defaultStatus):
   50089         (WebCore::DOMWindow::setDefaultStatus):
   50090         * page/DOMWindow.h:
   50091         * page/DOMWindow.idl:
   50092 
   50093 2008-02-14  Anders Carlsson  <andersca (a] apple.com>
   50094 
   50095         Reviewed by Darin.
   50096 
   50097         <rdar://problem/5721790>
   50098         Crash in WebCore::DeprecatedString::operator= + 31 at news.google.com
   50099         
   50100         Use pointers in the cache map tables. Otherwise when we rehash, 
   50101         we will end up destroying Cache objects that node lists might point to.
   50102         
   50103         * dom/Node.cpp:
   50104         (WebCore::NodeListsNodeData::~NodeListsNodeData):
   50105         (WebCore::Node::getElementsByName):
   50106         (WebCore::Node::getElementsByClassName):
   50107 
   50108 2008-02-14  Alp Toker  <alp (a] atoker.com>
   50109 
   50110         Reviewed by Darin.
   50111 
   50112         http://bugs.webkit.org/show_bug.cgi?id=17353
   50113         XMLTokenizer installs global libxml2 callbacks that can break client applications
   50114 
   50115         Patch by Mark Rowe (with a few changes).
   50116 
   50117         The xmlRegisterInputCallbacks/xmlRegisterOutputCallbacks done at
   50118         init are global so we need to make sure these callbacks only get used
   50119         by XMLTokenizer and never by libxml2 calls in user applications.
   50120 
   50121         This patch modifies the match and open functions to only apply when we
   50122         are certain the caller is XMLTokenizer by checking globalDocLoader and
   50123         ensuring we're on the correct thread.
   50124 
   50125         Some possible issues remain. See the bug report for details.
   50126 
   50127         * dom/XMLTokenizer.cpp:
   50128         (WebCore::matchFunc):
   50129         (WebCore::openFunc):
   50130         (WebCore::createStringParser):
   50131 
   50132 2008-02-14  Timothy Hatcher  <timothy (a] apple.com>
   50133 
   50134         Reviewed by Darin Adler.
   50135 
   50136         <rdar://problem/5743768> A deadlock during storage layout tests
   50137 
   50138         Make sure not to hold the m_openDatabaseMapGuard mutex when calling
   50139         Database::markAsDeletedAndClose(), since that can cause a deadlock
   50140         during the synchronous DatabaseThread call it triggers.
   50141 
   50142         * storage/DatabaseTracker.cpp:
   50143         (WebCore::DatabaseTracker::deleteDatabaseFile):
   50144 
   50145 2008-02-14  Adam Roben  <aroben (a] apple.com>
   50146 
   50147         Turn on cross-document messaging support by default
   50148 
   50149         Reviewed by Darin.
   50150 
   50151         * Configurations/WebCore.xcconfig:
   50152         * WebCore.pro:
   50153         * WebCore.vcproj/WebCore.vcproj:
   50154 
   50155 2008-02-14  Adam Roben  <aroben (a] apple.com>
   50156 
   50157         Conditionalize cross-document messaging support
   50158 
   50159         The cross-document messaging parts of HTML 5 are in flux and we want
   50160         ports to be able to turn off the support as needed.
   50161 
   50162         Note that the support is turned off by default right now. A subsequent
   50163         commit will turn it on by default.
   50164 
   50165         Reviewed by Darin.
   50166 
   50167         * GNUmakefile.am:
   50168         * WebCore.vcproj/build-generated-files.sh:
   50169         * bindings/js/JSDOMWindowCustom.cpp:
   50170         (WebCore::JSDOMWindow::customGetOwnPropertySlot):
   50171         * bindings/js/JSEventCustom.cpp:
   50172         (WebCore::toJS):
   50173         * dom/Event.cpp:
   50174         (WebCore::Event::isMessageEvent):
   50175         * dom/Event.h:
   50176         * dom/MessageEvent.cpp:
   50177         * dom/MessageEvent.h:
   50178         * dom/MessageEvent.idl:
   50179         * page/DOMWindow.cpp:
   50180         (WebCore::DOMWindow::postMessage):
   50181         * page/DOMWindow.h:
   50182         * page/DOMWindow.idl:
   50183 
   50184 2008-02-14  Adam Roben  <aroben (a] apple.com>
   50185 
   50186         Improve the efficiency of SecurityOriginHash
   50187 
   50188         Reviewed by Alexey.
   50189 
   50190         * platform/SecurityOriginHash.h:
   50191         (WebCore::SecurityOriginHash::hash): Now takes a const
   50192         RefPtr<SecurityOrigin>& to reduce ref-count churn.
   50193         (WebCore::SecurityOriginHash::equal): Ditto.
   50194 
   50195 2008-02-13  Justin Garcia  <justin.garcia (a] apple.com>
   50196 
   50197         Reviewed by Oliver Hunt.
   50198 
   50199         Fixes the editing/deleting/5729680.html failure.  It succeeds when run by itself
   50200         but fails when run with other tests because FramePrivate's m_selectionGranularity
   50201         isn't reset when a Frame receives a new document.  It was also uninitialized in
   50202         the constructor.
   50203 
   50204         * loader/FrameLoader.cpp:
   50205         (WebCore::FrameLoader::clear): Initialize m_selectionGranularity.
   50206         * page/Frame.cpp:
   50207         (WebCore::FramePrivate::FramePrivate): Ditto.
   50208 
   50209 2008-02-13  Jon Honeycutt  <jhoneycutt (a] apple.com>
   50210 
   50211         Reviewed by Anders.
   50212 
   50213         <rdar://problem/5739282> Hangs after closing video trailer popup with
   50214         VLC plugin
   50215 
   50216         VLC hangs on NPP_Destroy if we call NPP_SetWindow with a null window
   50217         handle.
   50218 
   50219         * plugins/PluginQuirkSet.h: Added new quirk
   50220         PluginQuirkDontSetNullWindowHandleOnDestroy.
   50221         * plugins/win/PluginViewWin.cpp:
   50222         (WebCore::PluginView::stop): Selectively call NPP_SetWindow.
   50223         (WebCore::PluginView::determineQuirks): Set new quirk for VLC plug-in.
   50224 
   50225 2008-02-13  Rodney Dawes  <dobey (a] wayofthemonkey.com>
   50226 
   50227         Reviewed by Alp Toker.
   50228 
   50229         Fix non-SVG builds.
   50230 
   50231         * css/CSSCursorImageValue.cpp:
   50232 
   50233 2008-02-13  Justin Garcia  <justin.garcia (a] apple.com>
   50234 
   50235         Reviewed by Adam Roben.
   50236 
   50237         <rdar://problem/5729680> REGRESSION (r27873): Removing the last character of a word in Mail or Safari also removes the following space
   50238         
   50239         * editing/Editor.cpp:
   50240         (WebCore::Editor::deleteWithDirection): Fixed a typo.
   50241 
   50242 2008-02-13  Nikolas Zimmermann  <zimmermann (a] kde.org>
   50243 
   50244         Reviewed by Oliver.
   50245 
   50246         Actually fix the manual-tests/svg-cursor-changes.svg testcase.
   50247         I only reran layout tests when fixing the last issues with the patch,
   50248         instead of trying the manual-test :( Fixed.
   50249 
   50250         * css/CSSCursorImageValue.cpp:
   50251         (WebCore::CSSCursorImageValue::CSSCursorImageValue):
   50252         (WebCore::CSSCursorImageValue::~CSSCursorImageValue):
   50253         (WebCore::CSSCursorImageValue::updateIfSVGCursorIsUsed):
   50254         * css/CSSCursorImageValue.h:
   50255 
   50256 2008-02-13  Adam Roben  <aroben (a] apple.com>
   50257 
   50258         Windows build fix
   50259 
   50260         * css/CSSCursorImageValue.cpp: #include MathExtras.h to get roundf.
   50261 
   50262 2008-02-13  Nikolas Zimmermann  <zimmermann (a] kde.org>
   50263 
   50264         Reviewed by Darin & Eric.
   50265 
   50266         Fixes: http://bugs.webkit.org/show_bug.cgi?id=17258 (SVG uses erroneous cursor implementation)
   50267 
   50268         SVG cursors are not well-integrated within the CSS(3) cursor support in WebCore.
   50269         SVGCursorElement duplicates CSSCursorImageValue functionality and inherits from
   50270         CachedResourceClient itself, handling remote-image acquisation on its own.
   50271 
   50272         RenderStyle's CursorData class holds "IntPoint hotSpot", "CachedImage* image"
   50273         and just for SVG a 'String cursorFragmentId' (a reference to a SVG <cursor> element, by id).
   50274 
   50275         SVG stores a reference to a SVGCursorElement, which holds a CachedImage pointer itself -
   50276         instead of storing the CachedImage in the CursorData class, as it's supposed to be.
   50277         Because of that several places in WebCore contain special SVG cursor handling - which
   50278         is unneeded.
   50279 
   50280         Fix all issues by integrating within CSSCursorImageValue, remove 'String cursorFragmentId'
   50281         from RenderStyle, kill any special SVG cursor handling in WebCore and fix dynamic attribute
   50282         changes through DOM / SVG DOM (scripting of 'x' / 'y' / 'xlink:href' attribute). Now you
   50283         can script the mouse cursor location using SVG - the feature anyone has waited for.
   50284 
   50285         Added manual test case: manual-tests/svg-cursor-changes.svg (no support for cursors in DRT)
   50286 
   50287         * css/CSSCursorImageValue.cpp:
   50288         (WebCore::isSVGCursorIdentifier):
   50289         (WebCore::resourceReferencedByCursorElement):
   50290         (WebCore::CSSCursorImageValue::~CSSCursorImageValue):
   50291         (WebCore::CSSCursorImageValue::updateIfNeeded):
   50292         (WebCore::CSSCursorImageValue::image):
   50293         * css/CSSCursorImageValue.h:
   50294         * css/CSSImageValue.cpp:
   50295         (WebCore::CSSImageValue::image):
   50296         * css/CSSImageValue.h:
   50297         * css/CSSParser.cpp:
   50298         (WebCore::CSSParser::parseValue):
   50299         * css/CSSStyleSelector.cpp:
   50300         (WebCore::CSSStyleSelector::applyProperty):
   50301         * manual-tests/svg-cursor-changes.svg: Added.
   50302         * page/EventHandler.cpp:
   50303         (WebCore::EventHandler::selectCursor):
   50304         * rendering/RenderStyle.cpp:
   50305         * rendering/RenderStyle.h:
   50306         (WebCore::CursorData::operator==):
   50307         * svg/SVGCursorElement.cpp:
   50308         (WebCore::SVGCursorElement::SVGCursorElement):
   50309         (WebCore::SVGCursorElement::~SVGCursorElement):
   50310         (WebCore::SVGCursorElement::parseMappedAttribute):
   50311         (WebCore::SVGCursorElement::addClient):
   50312         (WebCore::SVGCursorElement::removeClient):
   50313         (WebCore::SVGCursorElement::svgAttributeChanged):
   50314         * svg/SVGCursorElement.h:
   50315         (WebCore::SVGCursorElement::isValid):
   50316 
   50317 2008-02-13  Alp Toker  <alp (a] atoker.com>
   50318 
   50319         Reviewed by Adam Roben.
   50320 
   50321         Split out pure-cairo Font code to FontCairo.cpp.
   50322 
   50323         Part of the ongoing work to share code with the Win port.
   50324 
   50325         * GNUmakefile.am:
   50326         * WebCore.pro:
   50327         * platform/graphics/cairo/FontCairo.cpp: Added.
   50328         (WebCore::Font::drawGlyphs):
   50329         * platform/graphics/gtk/FontGtk.cpp:
   50330 
   50331 2008-02-13  Kevin Ollivier <kevino (a] theolliviers.com>
   50332 
   50333         Reviewed by Darin Adler.
   50334 
   50335         Import wx/defs.h to keep windows.h from using ANSI functions
   50336         (see note in file for more info) and use the 8-bit string friendly
   50337         version of StringImpl::computeHash since we're passing it un UTF8
   50338         string. Also, don't cache the hash result.
   50339         
   50340         http://bugs.webkit.org/show_bug.cgi?id=17321
   50341 
   50342         * config.h:
   50343         * platform/graphics/wx/FontPlatformData.h:
   50344         (WebCore::FontPlatformData::hash):
   50345         (WebCore::FontPlatformData::computeHash):
   50346 
   50347 2008-02-13  Rodney Dawes  <dobey (a] wayofthemonkey.com>
   50348 
   50349         Fix Bug 17220: Illogical dependency between PluginView and
   50350         PluginDatabase
   50351         
   50352         <http://bugs.webkit.org/show_bug.cgi?id=17220>
   50353 
   50354         Reviewed by Adam and Darin.
   50355 
   50356         Rename PluginDatabase::createPluginView to PluginView::create, to make
   50357         the illogical dependency between the two, logical
   50358         Make PluginDatabase::findPlugin a public method
   50359         Update the includes in PluginView and PluginDatabase for the change
   50360 
   50361         * plugins/PluginDatabase.h:
   50362         * plugins/PluginView.h:
   50363         * plugins/win/PluginDatabaseWin.cpp:
   50364         * plugins/win/PluginViewWin.cpp:
   50365 
   50366 2008-02-13  Adam Roben  <aroben (a] apple.com>
   50367 
   50368         Build fix
   50369 
   50370         * platform/graphics/cg/GraphicsContextCG.cpp: Added missing #include.
   50371 
   50372 2008-02-13  Matt Lilek  <webkit (a] mattlilek.com>
   50373 
   50374         Not reviewed, build fix.
   50375 
   50376         * platform/graphics/cg/GraphicsContextCG.cpp:
   50377         (WebCore::GraphicsContext::paintBuffer):
   50378 
   50379 2008-02-13  Darin Adler  <darin (a] apple.com>
   50380 
   50381         - try to fix Wx build
   50382 
   50383         * platform/graphics/wx/GraphicsContextWx.cpp:
   50384         (WebCore::GraphicsContext::paintBuffer): Added.
   50385 
   50386         * platform/graphics/cairo/GraphicsContextCairo.cpp:
   50387         (WebCore::GraphicsContext::paintBuffer): Added missing paintingDisabled() check.
   50388         * platform/graphics/cg/GraphicsContextCG.cpp:
   50389         (WebCore::GraphicsContext::paintBuffer): Ditto.
   50390         * platform/graphics/qt/GraphicsContextQt.cpp:
   50391         (WebCore::GraphicsContext::paintBuffer): Ditto.
   50392 
   50393 2008-02-13  Darin Adler  <darin (a] apple.com>
   50394 
   50395         - try to fix Wx build
   50396 
   50397         * platform/wx/LocalizedStringsWx.cpp: Add missing include.
   50398 
   50399 2008-02-11  Darin Adler  <darin (a] apple.com>
   50400 
   50401         - roll out fix for <rdar://problem/5726016> REGRESSION: Xcode News window renders
   50402           incorrectly due to visibility fix
   50403 
   50404         Removed the Xcode-specific quirk at the request of some folks on the Xcode team.
   50405 
   50406         * WebCore.base.exp: Rolled out change.
   50407         * css/CSSMutableStyleDeclaration.cpp:
   50408         (WebCore::CSSMutableStyleDeclaration::setProperty): Ditto.
   50409         * page/Settings.cpp:
   50410         (WebCore::Settings::Settings): Ditto. But keep the initialization of
   50411         m_fontRenderingMode.
   50412         (WebCore::Settings::setNeedsXcodeVisibilityQuirk): Removed.
   50413         * page/Settings.h:
   50414         (WebCore::Settings::needsXcodeVisibilityQuirk): Removed.
   50415 
   50416 2008-02-13  Alexey Proskuryakov  <ap (a] webkit.org>
   50417 
   50418         Reviewed by Darin.
   50419 
   50420         <rdar://problem/5740042> Database termination issues
   50421 
   50422         Test: storage/close-during-stress-test.html
   50423 
   50424         * dom/Document.cpp:
   50425         (WebCore::Document::databaseThread):
   50426         * dom/Document.h:
   50427         Don't re-create the database thread if it has been already terminated.
   50428 
   50429         * storage/Database.h: (WebCore::Database::document): Changed m_database to a RefPtr to avoid
   50430         having a hanging reference.
   50431 
   50432         * storage/DatabaseThread.cpp:
   50433         (WebCore::DatabaseThread::requestTermination):
   50434 
   50435         * storage/SQLTransaction.cpp: (WebCore::SQLTransaction::~SQLTransaction): Removed logging.
   50436         Transactions are deleted during GC, so it's usually not importatnt to know when it happens.
   50437 
   50438 2008-02-12  Bernhard Rosenkraenzer  <bero (a] arklinux.org>
   50439 
   50440         Reviewed by Darin.
   50441 
   50442         - fix http://bugs.webkit.org/show_bug.cgi?id=17340
   50443           WebCore/platform/Timer.cpp fails to build with gcc 4.3
   50444 
   50445         * platform/Timer.cpp: Add include of <limits.h> since this file uses UINT_MAX.
   50446 
   50447 2008-02-12  Timothy Hatcher  <timothy (a] apple.com>
   50448 
   50449         Reviewed by Brady Eidson.
   50450 
   50451         <rdar://problem/5652560> Can't delete database if the website that
   50452         uses it has been opened in this session
   50453 
   50454         Close the Database on the database thread before deleting the file.
   50455         Tested and works on Windows and Mac.
   50456 
   50457         * platform/sql/SQLiteDatabase.cpp:
   50458         (WebCore::SQLiteDatabase::close): Assert we are on the opening thread.
   50459         * storage/Database.cpp:
   50460         (WebCore::Database::markAsDeletedAndClose): Unschedule any pending
   50461         Database tasks, and start and imediate DatabaseCloseTask.
   50462         (WebCore::Database::close): Close the SQLDatabase.
   50463         * storage/Database.h: Renamed markAsDeleted to markAsDeletedAndClose.
   50464         * storage/DatabaseTask.cpp:
   50465         (WebCore::DatabaseCloseTask::DatabaseCloseTask): New task.
   50466         (WebCore::DatabaseCloseTask::doPerformTask): Call close on the Database.
   50467         (WebCore::DatabaseCloseTask::debugTaskName): Return "DatabaseCloseTask".
   50468         * storage/DatabaseTask.h: Add DatabaseCloseTask.
   50469         * storage/DatabaseTracker.cpp:
   50470         (WebCore::DatabaseTracker::deleteDatabaseFile): Call the renamed
   50471           markAsDeletedAndClose.
   50472 
   50473 2008-02-12  Oliver Hunt  <oliver (a] apple.com>
   50474 
   50475         Endeavour to fix qt and gtk builds
   50476 
   50477         * platform/graphics/cairo/GraphicsContextCairo.cpp:
   50478         * platform/graphics/qt/GraphicsContextQt.cpp:
   50479 
   50480 2008-02-12  Oliver Hunt  <oliver (a] apple.com>
   50481 
   50482         Reviewed by Eric S.
   50483 
   50484         Bug 17269: Deobfuscate CanvasRenderingContext2D.cpp
   50485         Remove ifdef's from canvas paint code
   50486 
   50487         By making GraphicsContext aware of the crossplatform ImageBuffer
   50488         type we can migrate the ifdef-ified paint code in HTMLCanvasElement
   50489         into platform implementations of GraphicsContext.
   50490 
   50491         * html/HTMLCanvasElement.cpp:
   50492         (WebCore::HTMLCanvasElement::paint):
   50493         * platform/graphics/GraphicsContext.h:
   50494         * platform/graphics/cairo/GraphicsContextCairo.cpp:
   50495         (WebCore::GraphicsContext::paintBuffer):
   50496         * platform/graphics/cg/GraphicsContextCG.cpp:
   50497         (WebCore::GraphicsContext::paintBuffer):
   50498         * platform/graphics/qt/GraphicsContextQt.cpp:
   50499         (WebCore::GraphicsContext::paintBuffer):
   50500 
   50501 2008-02-12  Brady Eidson  <beidson (a] apple.com>
   50502 
   50503         Reviewed by Darin Adler
   50504 
   50505         Fix for <rdar://problem/5737692> - Database API needs to support SuccessCallback
   50506 
   50507         Layout tests will come shortly with a mess of DRT changes
   50508 
   50509         * platform/SecurityOrigin.cpp:
   50510         (WebCore::SecurityOrigin::SecurityOrigin): Standardize on "empty string" instead of null string
   50511           as different paths of constructing a SecurityOrigin were causing different hashes for the "same"
   50512           SecurityOrigin
   50513 
   50514         * storage/Database.cpp:
   50515         (WebCore::Database::changeVersion): Pass in the successCallback
   50516         (WebCore::Database::transaction): Ditto
   50517 
   50518         * storage/SQLTransaction.cpp:
   50519         (WebCore::SQLTransaction::SQLTransaction):
   50520         (WebCore::SQLTransaction::debugStepName):
   50521         (WebCore::SQLTransaction::performNextStep): Update ASSERTs for the new valid steps
   50522         (WebCore::SQLTransaction::performPendingCallback): Ditto
   50523         (WebCore::SQLTransaction::postflightAndCommit): Schedule the success callback if it exists - otherwise
   50524           skip straight to cleanupAfterSuccessCallback()
   50525         (WebCore::SQLTransaction::deliverSuccessCallback): Deliver success callback on the main thread, then
   50526           schedule cleanupAfterSuccessCallback()
   50527         (WebCore::SQLTransaction::cleanupAfterSuccessCallback): Cleanup and end the transaction
   50528         (WebCore::SQLTransaction::handleTransactionError):
   50529         (WebCore::SQLTransaction::deliverTransactionErrorCallback):
   50530         (WebCore::SQLTransaction::cleanupAfterTransactionErrorCallback):
   50531         * storage/SQLTransaction.h:
   50532 
   50533 2008-02-12  Steve Falkenburg  <sfalken (a] apple.com>
   50534 
   50535         Changes to support merged MIDL output.
   50536         
   50537         All COM interfaces are now generated to WebKit.h.
   50538         
   50539         Reviewed by Sam, Ada.
   50540 
   50541         * bindings/scripts/CodeGeneratorCOM.pm:
   50542 
   50543 2008-02-12  Dan Bernstein  <mitz (a] apple.com>
   50544 
   50545         Reviewed by Adam Roben.
   50546 
   50547         - fix http://bugs.webkit.org/show_bug.cgi?id=17041
   50548           <rdar://problem/5709660> Eastern Asian fonts do not display without specific box in Control Panel
   50549 
   50550         Revised the system fallback font lookup logic to use MLang font linking
   50551         again. To avoid reintroducing bug 16548 and <rdar://problem/5280188>,
   50552         for CJK characters, try linking based on a single code page at a time,
   50553         starting with the user's default code page (if it is one of the CJK
   50554         code pages) followed by the other CJK code pages in a prescribed order
   50555         that matches what Firefox does.
   50556 
   50557         * platform/graphics/win/FontCacheWin.cpp:
   50558         (WebCore::getCJKCodePageMasks): Added. Returns the search order for CJK
   50559         code pages, with the user's default code page first.
   50560         (WebCore::currentFontContainsCharacter): Factored out of
   50561         getFontDataForCharacters().
   50562         (WebCore::createMLangFont): Ditto.
   50563         (WebCore::FontCache::getFontDataForCharacters):
   50564 
   50565 2008-02-12  Rodney Dawes  <dobey (a] wayofthemonkey.com>
   50566 
   50567         Reviewed by Alp Toker.
   50568 
   50569         Add -DMAEMO_CHANGES when the hildon CONFIG option is specified
   50570         Add hildon-1 to PKGCONFIG when hildon CONFIG option is specified
   50571 
   50572         * WebCore.pro:
   50573 
   50574 2008-02-12  Dan Bernstein  <mitz (a] apple.com>
   50575 
   50576         Reviewed by Timothy Hatcher.
   50577 
   50578         - <rdar://problem/5738175> Remove workaround for <rdar://problem/5539388> from post-Tiger builds
   50579 
   50580         * platform/graphics/cg/GraphicsContextCG.cpp:
   50581         (WebCore::GraphicsContext::setShadow):
   50582 
   50583 2008-02-12  Brady Eidson  <beidson (a] apple.com>
   50584 
   50585         Release build fix
   50586 
   50587         * storage/DatabaseTask.cpp:
   50588 
   50589 2008-02-12  Alexey Proskuryakov <ap (a] webkit.org> and Brady Eidson <beidson (a] apple.com>
   50590 
   50591         Reviewed by Brady.
   50592 
   50593         http://bugs.webkit.org/show_bug.cgi?id=17177
   50594         <rdar://problem/5729619> Storage tasks are getting lost
   50595 
   50596         <rdar://problem/5729445> REGRESSION: Cannot schedule more than one transaction at a time
   50597 
   50598         <rdar://problem/5729446> Major thread safety issue in Database code
   50599 
   50600         * platform/MessageQueue.h: Added a thread-safe queue abstraction.
   50601 
   50602         * WebCore.vcproj/WebCore.vcproj:
   50603         * WebCore.xcodeproj/project.pbxproj:
   50604         Added MessageQueue.h.
   50605 
   50606         * dom/Document.cpp:
   50607         (WebCore::Document::~Document): Fixed a race condition resulting in a hanging reference.
   50608 
   50609         * storage/Database.idl: Fixed parameter declarations to actually match implementation
   50610         (which is custom, so it got out of sync).
   50611 
   50612         * storage/DatabaseTask.h:
   50613         (WebCore::DatabaseTask::database):
   50614         (WebCore::DatabaseTransactionTask::transaction):
   50615         Changed tasks to hold more information internally. Added helpers for better debug logging.
   50616 
   50617         * storage/DatabaseTask.cpp:
   50618         (WebCore::DatabaseTask::DatabaseTask):
   50619         (WebCore::DatabaseTask::performTask):
   50620         (WebCore::DatabaseOpenTask::DatabaseOpenTask):
   50621         (WebCore::DatabaseOpenTask::doPerformTask):
   50622         (WebCore::DatabaseOpenTask::debugTaskName):
   50623         (WebCore::DatabaseTransactionTask::DatabaseTransactionTask):
   50624         (WebCore::DatabaseTransactionTask::~DatabaseTransactionTask):
   50625         (WebCore::DatabaseTransactionTask::doPerformTask):
   50626         (WebCore::DatabaseTransactionTask::debugTaskName):
   50627         (WebCore::DatabaseTableNamesTask::DatabaseTableNamesTask):
   50628         (WebCore::DatabaseTableNamesTask::doPerformTask):
   50629         (WebCore::DatabaseTableNamesTask::debugTaskName):
   50630         Implementation for the above.
   50631 
   50632         (WebCore::DatabaseTask::lockForSynchronousScheduling):
   50633         (WebCore::DatabaseTask::waitForSynchronousCompletion):
   50634         Fixed a potential race condition: if the task completed before we entered a wait, we'd never
   50635         wake up. There was an assertion guarding against this, but no actual guarantee that I could see.
   50636 
   50637         * storage/DatabaseThread.cpp:
   50638         (WebCore::DatabaseThread::DatabaseThread):
   50639         (WebCore::DatabaseThread::requestTermination):
   50640         (WebCore::DatabaseThread::databaseThread):
   50641         (WebCore::DatabaseThread::scheduleTask):
   50642         (WebCore::DatabaseThread::scheduleImmediateTask):
   50643         (WebCore::DatabaseThread::unscheduleDatabaseTasks):
   50644         * storage/DatabaseThread.h:
   50645         Changed to use MessageQueue.
   50646 
   50647         * storage/Database.cpp:
   50648         (WebCore::guidMutex):
   50649         (WebCore::guidToVersionMap):
   50650         (WebCore::guidToDatabaseMap):
   50651         (WebCore::Database::openDatabase):
   50652         (WebCore::Database::Database):
   50653         (WebCore::Database::~Database):
   50654         (WebCore::Database::openAndVerifyVersion):
   50655         (WebCore::guidForOriginAndName):
   50656         (WebCore::Database::changeVersion):
   50657         (WebCore::Database::transaction):
   50658         (WebCore::Database::scheduleTransaction):
   50659         (WebCore::Database::scheduleTransactionStep):
   50660         (WebCore::Database::scheduleTransactionCallback):
   50661         (WebCore::Database::version):
   50662         (WebCore::Database::deliverPendingCallback):
   50663         (WebCore::Database::tableNames):
   50664         * storage/Database.h:
   50665         Changed m_transactionQueue to a MessageQueue.
   50666         Got rid of callback tracking - these can take care of themselves.
   50667         Got rid of a DatabaseThread member, as the Document can be asked for it.
   50668         Moved private static members and helpers out of the header.
   50669         Lost CurrentThreadSetter debug helper on the way. We may need to re-add something like that later.
   50670 
   50671         * storage/SQLTransaction.h:
   50672         * storage/SQLTransaction.cpp: Added a lot of debug logging.
   50673         (WebCore::SQLTransaction::scheduleToRunStatements): Removed "m_currentStatement = 0" assignment,
   50674         as it created a race condition. Everything seems to work better without it, although a real fix
   50675         would be to get rid of this variable - it's evil shared data that isn't even protected in any way.
   50676 
   50677         * manual-tests/database-threading-stress-test-2.html: Added.
   50678         * manual-tests/database-threading-stress-test.html: Added.
   50679 
   50680 2008-02-12  Adam Roben  <aroben (a] apple.com>
   50681 
   50682         Fix Bug 17328: REGRESSION (r30147): Inspector is unstyled on Windows
   50683 
   50684         <http://bugs.webkit.org/show_bug.cgi?id=17328>
   50685         <rdar://5737946>
   50686 
   50687         Reviewed by Mitz.
   50688 
   50689         Test: fast/loader/local-css-allowed-in-strict-mode.html
   50690 
   50691         * platform/network/cf/ResourceResponseCFNet.cpp:
   50692         (WebCore::ResourceResponse::doUpdateResourceResponse): Add a case for
   50693         .css files.
   50694 
   50695 2008-02-12  Anders Carlsson  <andersca (a] apple.com>
   50696 
   50697         Build fix.
   50698         
   50699         * loader/ImageDocument.cpp:
   50700 
   50701 2008-02-12  Anders Carlsson  <andersca (a] apple.com>
   50702 
   50703         Reviewed by Mitz.
   50704 
   50705         Make the code that sets the image title cross platform.
   50706 
   50707         * WebCore.xcodeproj/project.pbxproj:
   50708         Remove ImageDocumentMac.
   50709         
   50710         * loader/ImageDocument.cpp:
   50711         (WebCore::ImageTokenizer::finish):
   50712 
   50713         * loader/mac/ImageDocumentMac.h: Removed.
   50714         * loader/mac/ImageDocumentMac.mm: Removed.
   50715         
   50716         * page/mac/WebCoreFrameBridge.h:
   50717         * page/mac/WebCoreViewFactory.h:
   50718         Move imageTitleForFilename:size from the bridge to
   50719         the view factory.
   50720         
   50721         * platform/LocalizedStrings.h:
   50722         Add imageTitle.
   50723         
   50724         * platform/mac/LocalizedStringsMac.mm:
   50725         (WebCore::imageTitle):
   50726         Have imageTitle call the view factory.
   50727         
   50728         * platform/qt/Localizations.cpp:
   50729         (WebCore::imageTitle):
   50730         * platform/wx/LocalizedStringsWx.cpp:
   50731         (WebCore::imageTitle):
   50732         * platform/gtk/LocalizedStringsGtk.cpp:
   50733         (WebCore::imageTitle):
   50734         Add stubs.
   50735         
   50736 2008-02-12  Oliver Hunt  <oliver (a] apple.com>
   50737 
   50738         more Qt fixes
   50739 
   50740         * html/HTMLCanvasElement.cpp:
   50741         (WebCore::HTMLCanvasElement::paint):
   50742 
   50743 2008-02-12  Oliver Hunt  <oliver (a] apple.com>
   50744 
   50745         And another attempt to fixerate Qt
   50746 
   50747         * html/HTMLCanvasElement.cpp:
   50748         (WebCore::HTMLCanvasElement::paint):
   50749 
   50750 2008-02-12  Oliver Hunt  <oliver (a] apple.com>
   50751 
   50752         Attempt to fix Qt build
   50753 
   50754         * html/HTMLCanvasElement.h:
   50755 
   50756 2008-02-11  Oliver Hunt  <oliver (a] apple.com>
   50757 
   50758         Reviewed by Alp Toker.
   50759 
   50760         Make canvas use an ImageBuffer for its backing store
   50761 
   50762         In order to make the canvas implementation less platform dependent
   50763         (and thus reduce the current quagmire of ifdefs) we now use an 
   50764         ImageBuffer to provide the backing buffer, an immediate consequence
   50765         of this is to remove multiple ifdefs in the construction of the
   50766         buffer.  This patch allows us to further reduce the platform
   50767         dependencies in later patches.
   50768 
   50769 
   50770         * html/CanvasRenderingContext2D.cpp:
   50771         (WebCore::CanvasRenderingContext2D::drawImage):
   50772         * html/HTMLCanvasElement.cpp:
   50773         (WebCore::HTMLCanvasElement::HTMLCanvasElement):
   50774         (WebCore::HTMLCanvasElement::~HTMLCanvasElement):
   50775         (WebCore::HTMLCanvasElement::reset):
   50776         (WebCore::HTMLCanvasElement::paint):
   50777         (WebCore::HTMLCanvasElement::createDrawingContext):
   50778         (WebCore::HTMLCanvasElement::drawingContext):
   50779         (WebCore::HTMLCanvasElement::createPlatformImage):
   50780         * html/HTMLCanvasElement.h:
   50781 
   50782 2008-02-11  Dan Bernstein  <mitz (a] apple.com>
   50783 
   50784         Reviewed by Dave Hyatt.
   50785 
   50786         - fix http://bugs.webkit.org/show_bug.cgi?id=17320
   50787           <rdar://problem/5736953> :last-child does not set the "uses sibling rules" flag
   50788 
   50789         Test: fast/css/last-child-style-sharing.html
   50790 
   50791         * css/CSSGrammar.y: Changed to call setUsesSiblingRules(true) for all
   50792         CSS3 selectors that require it.
   50793 
   50794 2008-02-11  Sam Weinig  <sam (a] webkit.org>
   50795 
   50796         Reviewed by Darin Adler.
   50797 
   50798         Make the cross-domain security model more closely match Firefox by always returning the
   50799         native built-in functions when accessing functions cross-domain.
   50800 
   50801         Fixes for:
   50802         <rdar://problem/5735497> Match Firefox's cross-domain model more accurately by return the built-in version of functions even if they have been overridden
   50803         <rdar://problem/5735443> Crash when setting the Window objects prototype to a custom Object and then calling a method on it
   50804 
   50805         Tests: fast/dom/Window/window-custom-prototype-crash.html
   50806                fast/dom/Window/window-function-frame-getter-precedence.html
   50807                http/tests/security/cross-frame-access-get-override.html
   50808                http/tests/security/cross-frame-access-location-get-override.html
   50809                http/tests/security/cross-frame-access-location-get.html
   50810                http/tests/security/cross-frame-access-location-put.html
   50811 
   50812         * bindings/js/JSDOMWindowCustom.cpp:
   50813         (WebCore::JSDOMWindow::customGetOwnPropertySlot):
   50814         - Return the native-built in version of an cross-domain allowed function (eg. window.focus) whether or
   50815           not it has been overridden, instead of undefined.
   50816         - When doing findEntry lookup, use the the tables directly (JSDOMWindowPrototype::info.propHashTable) 
   50817           instead of calling the virtual classInfo() method to avoid the unnecessary overhead.
   50818         - Allow access to the native toString function cross-domain.  It always returns "[object Window]".
   50819         - Use the new nonCachingStaticFunctionGetter when return allowed functions cross-frame so that
   50820           the function an overridden function is not inadvertantly returned from the PropertyMap.\
   50821 
   50822         * bindings/js/JSHistoryCustom.cpp:
   50823         (WebCore::JSHistory::customGetOwnPropertySlot):
   50824         - Implement the same model as described above for the History object, always returning the
   50825           native built-in function cross-domain.
   50826         - Allow access to the native toString function cross-domain.
   50827         - Clean up the code to make it clear that the custom functionality is only there for cross-domain
   50828           access.
   50829 
   50830         * bindings/js/JSLocation.cpp:
   50831         (WebCore::JSLocation::getOwnPropertySlot):
   50832         - Match the generated classes by moving all the custom logic into a separate customGetOwnPropertySlot
   50833           function.  This will help moving to a generated class in the future.
   50834         (WebCore::JSLocation::customGetOwnPropertySlot):
   50835         - Implement the same model as described above for the Location object, always returning the
   50836           native built-in function cross-domain.
   50837         - Clean up the code to make it clear that the custom functionality is only there for cross-domain
   50838           access.
   50839         (WebCore::JSLocation::put):
   50840         (WebCore::JSLocation::deleteProperty):
   50841         (WebCore::JSLocation::getPropertyNames):
   50842         * bindings/js/JSLocation.h:
   50843         - Clean up to match the rest of the file a little better.
   50844 
   50845         * bindings/js/kjs_binding.cpp:
   50846         (WebCore::allowsAccessFromFrame):
   50847         (WebCore::printErrorMessageForFrame):
   50848         (WebCore::nonCachingStaticFunctionGetter):
   50849         (WebCore::objectToStringFunctionGetter):
   50850         * bindings/js/kjs_binding.h:
   50851         - Put common functionality related to cross-domain access here to serve as a central shared point.
   50852           This includes moving and augmenting the allowsAccessFromFrame method that was in both JSHistoryCustom.cpp
   50853           and JSLocation.cpp.
   50854 
   50855         * bindings/js/kjs_dom.cpp:
   50856         (WebCore::checkNodeSecurity):
   50857         - Use the new allowsAccessFromFrame method.
   50858 
   50859         * bindings/js/kjs_window.cpp:
   50860         (KJS::Window::childFrameGetter): Cleanup.
   50861         (KJS::Window::namedItemGetter): Cleanup.
   50862         (KJS::Window::getOwnPropertySlot):
   50863         - Do the prototype lookup early to match Firefox in having function lookup have a higher precedence
   50864           than the index or shortcut name getters.
   50865         - Cleanup function to make it more understandable and slightly more efficient.
   50866         (KJS::Window::allowsAccessFrom):
   50867         - Add a new variant of this method that takes a reference to a String, which, on failure, will
   50868           contain the error message to print out.  The caller can then pass this to printErrorMessage.
   50869           This allows for code to check allowsAccessFrom and act on the result without printing out the
   50870           error message. For convenience, a version with out the String parameter has been left which 
   50871           prints out the message automatically.
   50872         (KJS::Window::printErrorMessage):
   50873         * bindings/js/kjs_window.h:
   50874 
   50875 2008-02-11  Darin Adler  <darin (a] apple.com>
   50876 
   50877         Reviewed by Mitz.
   50878 
   50879         - fix <rdar://problem/5726016> REGRESSION: Xcode News window renders
   50880           incorrectly due to visibility fix
   50881 
   50882         Added an Xcode-specific quirk.
   50883 
   50884         * WebCore.base.exp: Added export for new Settings function.
   50885         * css/CSSMutableStyleDeclaration.cpp:
   50886         (WebCore::CSSMutableStyleDeclaration::setProperty): Here's the crazy quirk.
   50887         If you try to change the visibilty on a node with the class name tab_content,
   50888         instead it will use display:none.
   50889         * page/Settings.cpp:
   50890         (WebCore::Settings::Settings): Initialize m_needsXcodeVisibilityQuirk. Also
   50891         initialize m_fontRenderingMode! This seems like it was a bug before, but we
   50892         probably were getting lucky and always getting 0 on Windows, which is the
   50893         only place the setting matters.
   50894         (WebCore::Settings::setNeedsXcodeVisibilityQuirk): Added.
   50895         * page/Settings.h:
   50896         (WebCore::Settings::needsXcodeVisibilityQuirk): Added.
   50897 
   50898 2008-02-11  Timothy Hatcher  <timothy (a] apple.com>
   50899 
   50900         Reviewed by Brady Eidson.
   50901 
   50902         <rdar://problem/5733069> Many m_quotaMap uses do not hold the m_quotaMapGuard
   50903 
   50904         * storage/DatabaseTracker.cpp:
   50905         (WebCore::DatabaseTracker::hasEntryForOrigin): Hold m_quotaMapGuard when using m_quotaMap.
   50906         (WebCore::DatabaseTracker::origins): Ditto.
   50907         (WebCore::DatabaseTracker::setQuota): Ditto.
   50908         (WebCore::DatabaseTracker::deleteAllDatabases): Call origins() and itterate over the
   50909         origins to call deleteOrigin().
   50910         (WebCore::DatabaseTracker::deleteOrigin): Hold m_quotaMapGuard when using m_quotaMap.
   50911 
   50912 2008-02-11  David Hyatt  <hyatt (a] apple.com>
   50913 
   50914         Fix for bug 17286, crash accessing a null RenderStyle.  Add a simple null check.
   50915 
   50916         Reviewed by aroben
   50917 
   50918         Added fast/css/empty-generated-content.html
   50919 
   50920         * css/CSSStyleSelector.cpp:
   50921         (WebCore::CSSStyleSelector::checkOneSelector):
   50922 
   50923 2008-02-11  Rob Buis  <buis (a] kde.org>
   50924 
   50925         Reviewed by David Kilzer.
   50926 
   50927         http://bugs.webkit.org/show_bug.cgi?id=17201
   50928         Bug 17201: Use RefPtr in CSSParser::parseFont() to get rid of goto silliness
   50929 
   50930         Gets rid of goto usage in parseFont.
   50931 
   50932         * css/CSSParser.cpp:
   50933         (WebCore::CSSParser::parseFont):
   50934 
   50935 2008-02-11  David Hyatt  <hyatt (a] apple.com>
   50936 
   50937         Fix for bug 17298, Acid3 text should be black and not red.  Make sure stylesheets with the wrong MIME type
   50938         are not accepted in strict mode.
   50939 
   50940         Reviewed by darin
   50941 
   50942         Added http/tests/misc/css-reject-in-strict-mode.html
   50943 
   50944         * css/CSSImportRule.cpp:
   50945         (WebCore::CSSImportRule::setCSSStyleSheet):
   50946         * css/CSSImportRule.h:
   50947         * dom/Document.cpp:
   50948         (WebCore::Document::setCSSStyleSheet):
   50949         * dom/Document.h:
   50950         * dom/ProcessingInstruction.cpp:
   50951         (WebCore::ProcessingInstruction::setCSSStyleSheet):
   50952         * dom/ProcessingInstruction.h:
   50953         * html/HTMLLinkElement.cpp:
   50954         (WebCore::HTMLLinkElement::setCSSStyleSheet):
   50955         * html/HTMLLinkElement.h:
   50956         * html/HTMLMediaElement.cpp:
   50957         (WebCore::HTMLMediaElement::pickMedia):
   50958         * loader/CachedCSSStyleSheet.cpp:
   50959         (WebCore::CachedCSSStyleSheet::ref):
   50960         (WebCore::CachedCSSStyleSheet::checkNotify):
   50961         (WebCore::CachedCSSStyleSheet::canUseSheet):
   50962         * loader/CachedCSSStyleSheet.h:
   50963         (WebCore::CachedCSSStyleSheet::sheetText):
   50964         * loader/CachedResourceClient.h:
   50965         (WebCore::CachedResourceClient::setCSSStyleSheet):
   50966         * loader/mac/UserStyleSheetLoader.cpp:
   50967         (UserStyleSheetLoader::setCSSStyleSheet):
   50968         * loader/mac/UserStyleSheetLoader.h:
   50969 
   50970 2008-02-11  Adam Roben  <aroben (a] apple.com>
   50971 
   50972         Fix Bug 14316: Inspector's Console truncates long strings
   50973 
   50974         <http://bugs.webkit.org/show_bug.cgi?id=14316>
   50975         <rdar://5357695>
   50976 
   50977         We no longer call Object.describe to format all the output of commands
   50978         enetered into the Console. The ConsolePanel object now has a set of
   50979         formatting functions that append a formatted representation of the
   50980         passed-in object to the passed-in container node.
   50981 
   50982         Reviewed by Sam.
   50983 
   50984         * page/inspector/ConsolePanel.js:
   50985         (WebInspector.ConsolePanel._onEnterPressed): Updated for rename of
   50986         _outputToNode to _format.
   50987         (WebInspector.ConsolePanel._format): Renamed from _outputToNode. Use
   50988         Object.type to get the type of the object, then call the appropriate
   50989         formatting function.
   50990         (WebInspector.ConsolePanel._formatvalue): Added.
   50991         (WebInspector.ConsolePanel._formatstring): Added. This function
   50992         contains the actual fix for the bug, since it doesn't truncate the
   50993         string no matter how long it is.
   50994         (WebInspector.ConsolePanel._formatregexp): Added.
   50995         (WebInspector.ConsolePanel._formatarray): Added. This is a bit more
   50996         functional than Object.describe for arrays, since it recursively
   50997         formats each item in the array. One advantage of this is that Nodes in
   50998         arrays will be linkified instead of just turning into "[Object
   50999         HTMLBodyElement]" or similar.
   51000         (WebInspector.ConsolePanel._formatnode): Added.
   51001         (WebInspector.ConsolePanel._formatobject): Added.
   51002         (WebInspector.ConsolePanel.
   51003         * page/inspector/utilities.js:
   51004         (Object.type): Added. Code was pulled out of Object.describe and
   51005         reorganized slightly.
   51006         (Object.describe): Call Object.type. There should be no change in
   51007         behavior of this function.
   51008 
   51009 2008-02-11  Alp Toker  <alp (a] atoker.com>
   51010 
   51011         Wx build fix for breakage introduced in r30142. Spotted by Darin.
   51012 
   51013         * platform/network/curl/ResourceHandleManager.cpp:
   51014         (WebCore::parseDataUrl):
   51015 
   51016 2008-02-11  Brent Fulgham  <bfulgham (a] gmail.com>
   51017 
   51018         Reviewed and tweaked by Darin
   51019 
   51020         - http://bugs.webkit.org/show_bug.cgi?id=17299
   51021           a couple compilation fixes for Cairo/Win32 configuration
   51022 
   51023         * platform/graphics/cairo/ImageSourceCairo.cpp:
   51024         (WebCore::createDecoder): Turn off XBMImageDecoder for PLATFORM(WIN) configuration.
   51025         * rendering/RenderThemeWin.cpp:
   51026         (WebCore::prepareForDrawing): Added IntRect parameter.
   51027         (WebCore::doneDrawing): Ditto.
   51028         (WebCore::RenderThemeWin::paintButton): Ditto.
   51029         (WebCore::RenderThemeWin::paintTextField): Ditto.
   51030         (WebCore::RenderThemeWin::paintMenuListButton): Ditto.
   51031         (WebCore::RenderThemeWin::systemFont): Added.
   51032 
   51033 2008-02-11  Alp Toker  <alp (a] atoker.com>
   51034 
   51035         Reviewed by Alexey.
   51036 
   51037         Acid3 data URL parsing fix for the GTK+ port.
   51038 
   51039         Avoid WebCore's base64Decode() when possible since it's not a
   51040         general-purpose Base64 decoder and fails on newlines.
   51041 
   51042         * platform/network/curl/ResourceHandleManager.cpp:
   51043         (WebCore::parseDataUrl):
   51044 
   51045 2008-02-11  Darin Adler  <darin (a] apple.com>
   51046 
   51047         - another Qt build fix
   51048 
   51049         * platform/qt/PopupMenuQt.cpp:
   51050         (WebCore::PopupMenu::PopupMenu): Added explicit RefCounted constructor.
   51051 
   51052 2008-02-10  Darin Adler  <darin (a] apple.com>
   51053 
   51054         - another Qt build fix (wish the Qt bot wouldn't stop on the first error)
   51055 
   51056         * platform/qt/FileChooserQt.cpp:
   51057         (WebCore::FileChooser::FileChooser): Added explicit RefCounted constructor.
   51058 
   51059 2008-02-10  Darin Adler  <darin (a] apple.com>
   51060 
   51061         - another Qt build fix
   51062 
   51063         * platform/graphics/qt/IconQt.cpp:
   51064         (WebCore::Icon::Icon): Added explicit RefCounted constructor.
   51065 
   51066 2008-02-10  Alp Toker  <alp (a] atoker.com>
   51067 
   51068         Another Win build fix for r30133 breakage.
   51069 
   51070         * plugins/win/PluginPackageWin.cpp:
   51071         (WebCore::PluginPackage::PluginPackage):
   51072 
   51073 2008-02-10  Alp Toker  <alp (a] atoker.com>
   51074 
   51075         Build fix GTK+ and prospective build fix for Win breakage introduced
   51076         in r30133.
   51077 
   51078         * platform/Cursor.h:
   51079         (WebCore::SharedCursor::SharedCursor):
   51080         * platform/graphics/gtk/IconGtk.cpp:
   51081         (WebCore::Icon::Icon):
   51082         * platform/gtk/FileChooserGtk.cpp:
   51083         (WebCore::FileChooser::FileChooser):
   51084         * platform/gtk/PopupMenuGtk.cpp:
   51085         (WebCore::PopupMenu::PopupMenu):
   51086 
   51087 2008-02-10  Darin Adler  <darin (a] apple.com>
   51088 
   51089         - try to fix Win, Qt, GTK, and WX builds
   51090 
   51091         * platform/Cursor.h:
   51092         (WebCore::SharedCursor::SharedCursor): Added explicit RefCounted constructor.
   51093         * platform/graphics/win/IconWin.cpp:
   51094         (WebCore::Icon::Icon): Ditto.
   51095         * platform/win/FileChooserWin.cpp:
   51096         (WebCore::FileChooser::FileChooser): Ditto.
   51097         * platform/win/PopupMenuWin.cpp:
   51098         (WebCore::PopupMenu::PopupMenu): Ditto.
   51099         * platform/wx/TemporaryLinkStubs.cpp:
   51100         (FileChooser::FileChooser): Ditto.
   51101         (PopupMenu::PopupMenu): Ditto.
   51102         (Icon::Icon): Ditto.
   51103         * plugins/PluginStream.cpp:
   51104         (WebCore::PluginStream::PluginStream): Ditto.
   51105 
   51106 2008-02-10  David Hyatt  <hyatt (a] apple.com>
   51107 
   51108         Fix for bug 17082, cssRules should be live.
   51109 
   51110         Reviewed by olliej
   51111 
   51112         Added fast/css/live-cssrules.html
   51113 
   51114         * css/CSSRuleList.cpp:
   51115         (WebCore::CSSRuleList::CSSRuleList):
   51116         (WebCore::CSSRuleList::length):
   51117         (WebCore::CSSRuleList::item):
   51118         (WebCore::CSSRuleList::deleteRule):
   51119         (WebCore::CSSRuleList::insertRule):
   51120         * css/CSSRuleList.h:
   51121 
   51122 2008-02-10  David Hyatt  <hyatt (a] apple.com>
   51123 
   51124         Fix for bug 17253.  <iframe> contents need to be reflected into the DOM as a single text node.
   51125 
   51126         Reviewed by olliej
   51127 
   51128         fast/frames/iframe-text-contents.html
   51129 
   51130         * html/HTMLParser.cpp:
   51131         (WebCore::HTMLParser::getNode):
   51132         * html/HTMLTokenizer.cpp:
   51133         (WebCore::HTMLTokenizer::parseSpecial):
   51134         (WebCore::HTMLTokenizer::parseComment):
   51135         (WebCore::HTMLTokenizer::parseTag):
   51136         * html/HTMLTokenizer.h:
   51137         (WebCore::HTMLTokenizer::State::inIFrame):
   51138         (WebCore::HTMLTokenizer::State::setInIFrame):
   51139         (WebCore::HTMLTokenizer::State::inAnySpecial):
   51140         (WebCore::HTMLTokenizer::State::needsSpecialWriteHandling):
   51141         (WebCore::HTMLTokenizer::State::):
   51142 
   51143 2008-02-10  Andrew Wellington  <proton (a] wiretapped.net>
   51144 
   51145         Reviewed and tweaked by Darin.
   51146         
   51147         DOMRange.surroundContents throws wrong exception (Acid3 bug)
   51148         http://bugs.webkit.org/show_bug.cgi?id=16749
   51149         
   51150         Throw BAD_BOUNDARYPOINTS_ERR if attempting to split a non-text node that
   51151         has offsets in characters.
   51152 
   51153         * dom/Range.cpp:
   51154         (WebCore::Range::surroundContents):
   51155 
   51156 2008-02-10  Darin Adler  <darin (a] apple.com>
   51157 
   51158         Reviewed by Eric.
   51159 
   51160         - http://bugs.webkit.org/show_bug.cgi?id=17256
   51161           Make clients of RefCounted explicitly set the count to 0.
   51162 
   51163         * bindings/js/JSSVGPODTypeWrapper.h:
   51164         (WebCore::JSSVGPODTypeWrapper::JSSVGPODTypeWrapper):
   51165         * css/CSSFontFace.h:
   51166         (WebCore::CSSFontFace::CSSFontFace):
   51167         * css/CSSRuleList.cpp:
   51168         (WebCore::CSSRuleList::CSSRuleList):
   51169         * css/CSSSegmentedFontFace.cpp:
   51170         (WebCore::CSSSegmentedFontFace::CSSSegmentedFontFace):
   51171         * css/Counter.h:
   51172         (WebCore::Counter::Counter):
   51173         * css/Pair.h:
   51174         (WebCore::Pair::Pair):
   51175         * css/Rect.h:
   51176         (WebCore::Rect::Rect):
   51177         * css/StyleBase.h:
   51178         (WebCore::StyleBase::StyleBase):
   51179         * css/StyleSheetList.cpp:
   51180         (WebCore::StyleSheetList::StyleSheetList):
   51181         * dom/Attr.cpp:
   51182         (WebCore::Attr::Attr):
   51183         * dom/Attr.h:
   51184         * dom/Attribute.h:
   51185         (WebCore::Attribute::Attribute):
   51186         * dom/Clipboard.cpp:
   51187         (WebCore::Clipboard::Clipboard):
   51188         * dom/DOMImplementation.h:
   51189         (WebCore::DOMImplementation::DOMImplementation):
   51190         * dom/Event.cpp:
   51191         (WebCore::Event::Event):
   51192         * dom/EventListener.h:
   51193         (WebCore::EventListener::EventListener):
   51194         * dom/ExceptionBase.cpp:
   51195         (WebCore::ExceptionBase::ExceptionBase):
   51196         * dom/NamedAttrMap.h:
   51197         (WebCore::NamedAttrMap::insertAttribute):
   51198         * dom/NamedNodeMap.h:
   51199         (WebCore::NamedNodeMap::NamedNodeMap):
   51200         * dom/NodeFilter.h:
   51201         (WebCore::NodeFilter::NodeFilter):
   51202         * dom/NodeFilterCondition.h:
   51203         (WebCore::NodeFilterCondition::NodeFilterCondition):
   51204         * dom/NodeList.h:
   51205         (WebCore::NodeList::NodeList):
   51206         * dom/QualifiedName.h:
   51207         (WebCore::QualifiedName::QualifiedNameImpl::QualifiedNameImpl):
   51208         (WebCore::QualifiedName::ref):
   51209         * dom/Range.cpp:
   51210         (WebCore::Range::Range):
   51211         * dom/RegisteredEventListener.cpp:
   51212         (WebCore::RegisteredEventListener::RegisteredEventListener):
   51213         * dom/StyledElement.h:
   51214         * dom/Traversal.cpp:
   51215         (WebCore::Traversal::Traversal):
   51216         * editing/EditCommand.cpp:
   51217         (WebCore::EditCommand::EditCommand):
   51218         * history/BackForwardList.cpp:
   51219         (WebCore::BackForwardList::BackForwardList):
   51220         * history/CachedPage.cpp:
   51221         (WebCore::CachedPage::CachedPage):
   51222         * history/HistoryItem.cpp:
   51223         (WebCore::HistoryItem::HistoryItem):
   51224         * html/CanvasGradient.cpp:
   51225         (WebCore::CanvasGradient::CanvasGradient):
   51226         * html/CanvasPattern.cpp:
   51227         (WebCore::CanvasPattern::CanvasPattern):
   51228         * html/CanvasRenderingContext2D.cpp:
   51229         (WebCore::CanvasRenderingContext2D::CanvasRenderingContext2D):
   51230         * html/CanvasStyle.cpp:
   51231         (WebCore::CanvasStyle::CanvasStyle):
   51232         * html/HTMLCollection.cpp:
   51233         (WebCore::HTMLCollection::HTMLCollection):
   51234         * html/MediaError.h:
   51235         (WebCore::MediaError::MediaError):
   51236         * html/TimeRanges.cpp:
   51237         (TimeRanges::TimeRanges):
   51238         * html/TimeRanges.h:
   51239         (WebCore::TimeRanges::TimeRanges):
   51240         * html/VoidCallback.h:
   51241         (WebCore::VoidCallback::VoidCallback):
   51242         * loader/DocumentLoader.cpp:
   51243         (WebCore::DocumentLoader::DocumentLoader):
   51244         * loader/FormState.cpp:
   51245         (WebCore::FormState::FormState):
   51246         * loader/ResourceLoader.cpp:
   51247         (WebCore::ResourceLoader::ResourceLoader):
   51248         * loader/TextResourceDecoder.cpp:
   51249         (WebCore::TextResourceDecoder::TextResourceDecoder):
   51250         * loader/icon/IconRecord.cpp:
   51251         (WebCore::IconRecord::IconRecord):
   51252         * page/BarInfo.cpp:
   51253         (WebCore::BarInfo::BarInfo):
   51254         * page/Console.cpp:
   51255         (WebCore::Console::Console):
   51256         * page/DOMSelection.cpp:
   51257         (WebCore::DOMSelection::DOMSelection):
   51258         * page/DOMWindow.cpp:
   51259         (WebCore::DOMWindow::DOMWindow):
   51260         * page/Frame.cpp:
   51261         (WebCore::Frame::Frame):
   51262         * page/History.cpp:
   51263         (WebCore::History::History):
   51264         * page/InspectorController.cpp:
   51265         (WebCore::InspectorResource::InspectorResource):
   51266         (WebCore::InspectorDatabaseResource::InspectorDatabaseResource):
   51267         * page/Plugin.h:
   51268         (WebCore::Plugin::Plugin):
   51269         * page/Screen.cpp:
   51270         (WebCore::Screen::Screen):
   51271         * platform/ArrayImpl.cpp:
   51272         (WebCore::ArrayImpl::ArrayPrivate::ArrayPrivate):
   51273         * platform/DeprecatedValueListImpl.cpp:
   51274         (WebCore::DeprecatedValueListImpl::Private::Private):
   51275         * platform/ScrollBar.cpp:
   51276         (WebCore::Scrollbar::Scrollbar):
   51277         * platform/SharedBuffer.cpp:
   51278         (WebCore::SharedBuffer::SharedBuffer):
   51279         * platform/graphics/FontFallbackList.cpp:
   51280         (WebCore::FontFallbackList::FontFallbackList):
   51281         * platform/graphics/FontFamily.cpp:
   51282         (WebCore::FontFamily::FontFamily):
   51283         * platform/graphics/FontFamily.h:
   51284         (WebCore::FontFamily::FontFamily):
   51285         * platform/graphics/FontSelector.h:
   51286         (WebCore::FontSelector::FontSelector):
   51287         (WebCore::FontSelector::~FontSelector):
   51288         * platform/graphics/GlyphPageTreeNode.h:
   51289         (WebCore::GlyphPage::GlyphPage):
   51290         * platform/graphics/mac/IconMac.mm:
   51291         (WebCore::Icon::Icon):
   51292         * platform/mac/FileChooserMac.mm:
   51293         (WebCore::FileChooser::FileChooser):
   51294         * platform/mac/PopupMenuMac.mm:
   51295         (WebCore::PopupMenu::PopupMenu):
   51296         * platform/mac/SharedBufferMac.mm:
   51297         (WebCore::SharedBuffer::SharedBuffer):
   51298         * platform/network/FormData.cpp:
   51299         (WebCore::FormData::FormData):
   51300         * platform/network/FormData.h:
   51301         (WebCore::FormData::FormData):
   51302         * platform/network/ResourceHandle.cpp:
   51303         (WebCore::ResourceHandle::ResourceHandle):
   51304         * platform/text/CString.h:
   51305         (WebCore::CStringBuffer::CStringBuffer):
   51306         * platform/text/RegularExpression.cpp:
   51307         (WebCore::RegularExpression::Private::Private):
   51308         * rendering/RenderStyle.cpp:
   51309         (WebCore::StyleSurroundData::StyleSurroundData):
   51310         (WebCore::StyleBoxData::StyleBoxData):
   51311         (WebCore::StyleVisualData::StyleVisualData):
   51312         (WebCore::StyleBackgroundData::StyleBackgroundData):
   51313         (WebCore::StyleMarqueeData::StyleMarqueeData):
   51314         (WebCore::StyleFlexibleBoxData::StyleFlexibleBoxData):
   51315         (WebCore::StyleMultiColData::StyleMultiColData):
   51316         (WebCore::StyleTransformData::StyleTransformData):
   51317         (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
   51318         (WebCore::StyleRareInheritedData::StyleRareInheritedData):
   51319         (WebCore::StyleInheritedData::StyleInheritedData):
   51320         * rendering/RenderStyle.h:
   51321         (WebCore::TransformOperation::TransformOperation):
   51322         (WebCore::CursorList::CursorList):
   51323         * rendering/SVGCharacterLayoutInfo.h:
   51324         (WebCore::SVGCharOnPath::SVGCharOnPath):
   51325         * rendering/SVGRenderStyle.cpp:
   51326         (WebCore::SVGRenderStyle::SVGRenderStyle):
   51327         * rendering/SVGRenderStyle.h:
   51328         (WebCore::SVGRenderStyle::SVGRenderStyle):
   51329         * rendering/SVGRenderStyleDefs.cpp:
   51330         (StyleFillData::StyleFillData):
   51331         (StyleStrokeData::StyleStrokeData):
   51332         (StyleStopData::StyleStopData):
   51333         (StyleTextData::StyleTextData):
   51334         (StyleClipData::StyleClipData):
   51335         (StyleMaskData::StyleMaskData):
   51336         (StyleMarkerData::StyleMarkerData):
   51337         (StyleMiscData::StyleMiscData):
   51338         * storage/SQLResultSetRowList.h:
   51339         (WebCore::SQLResultSetRowList::SQLResultSetRowList):
   51340         * svg/SVGAngle.cpp:
   51341         (WebCore::SVGAngle::SVGAngle):
   51342         * svg/SVGAnimatedTemplate.h:
   51343         (WebCore::SVGAnimatedTemplate::SVGAnimatedTemplate):
   51344         * svg/SVGElementInstanceList.cpp:
   51345         (WebCore::SVGElementInstanceList::SVGElementInstanceList):
   51346         * svg/SVGList.h:
   51347         (WebCore::SVGList::SVGList):
   51348         (WebCore::SVGPODListItem::SVGPODListItem):
   51349         * svg/SVGPathSeg.h:
   51350         (WebCore::SVGPathSeg::SVGPathSeg):
   51351         * svg/SVGPreserveAspectRatio.cpp:
   51352         (WebCore::SVGPreserveAspectRatio::SVGPreserveAspectRatio):
   51353         * svg/SVGRenderingIntent.h:
   51354         (WebCore::SVGRenderingIntent::SVGRenderingIntent):
   51355         * svg/SVGUnitTypes.h:
   51356         (WebCore::SVGUnitTypes::SVGUnitTypes):
   51357         * svg/graphics/SVGPaintServerGradient.h:
   51358         (WebCore::SVGPaintServerGradient::SharedStopCache::SharedStopCache):
   51359         * svg/graphics/SVGResource.cpp:
   51360         (WebCore::SVGResource::SVGResource):
   51361         * xml/DOMParser.h:
   51362         (WebCore::DOMParser::DOMParser):
   51363         * xml/XMLHttpRequest.cpp:
   51364         (WebCore::XMLHttpRequest::XMLHttpRequest):
   51365         * xml/XMLSerializer.h:
   51366         (WebCore::XMLSerializer::XMLSerializer):
   51367         * xml/XPathEvaluator.h:
   51368         (WebCore::XPathEvaluator::XPathEvaluator):
   51369         * xml/XPathExpression.h:
   51370         (WebCore::XPathExpression::XPathExpression):
   51371         * xml/XPathNSResolver.h:
   51372         (WebCore::XPathNSResolver::XPathNSResolver):
   51373         * xml/XPathResult.cpp:
   51374         (WebCore::XPathResult::XPathResult):
   51375         * xml/XPathValue.h:
   51376         (WebCore::XPath::ValueData::ValueData):
   51377         * xml/XSLTProcessor.h:
   51378         (WebCore::XSLTProcessor::XSLTProcessor):
   51379 
   51380 2008-02-09  Kevin Ollivier  <kevino (a] theolliviers.com>
   51381 
   51382         Reviewed by Eric Seidel.
   51383 
   51384         Calling select() when all the file descriptors are NULL
   51385         stops the file download on Windows. As a result, do not
   51386         call select() when there are no valid descriptors.
   51387 
   51388         http://bugs.webkit.org/show_bug.cgi?id=17178
   51389 
   51390         * platform/network/curl/ResourceHandleManager.cpp:
   51391         (WebCore::ResourceHandleManager::downloadTimerCallback):
   51392 
   51393 2008-02-09  Dan Bernstein  <mitz (a] apple.com>
   51394 
   51395         Reviewed by Sam Weinig.
   51396 
   51397         - fix http://bugs.webkit.org/show_bug.cgi?id=17259
   51398           Element::recalcStyle() needlessly null-checks the result of styleForElement()
   51399 
   51400         * dom/Element.cpp:
   51401         (WebCore::Element::recalcStyle): Removed unneeded null checks.
   51402         styleForElement() can never return null.
   51403 
   51404 2008-02-09  David Hyatt  <hyatt (a] apple.com>
   51405 
   51406         Fix for bug 17254, nth-* selectors do not work with negative coefficients.
   51407 
   51408         Reviewed by Mitz.
   51409 
   51410         fast/css/negative-nth-child.html
   51411 
   51412         * css/CSSStyleSelector.cpp:
   51413         (WebCore::parseNth):
   51414 
   51415 2008-02-09  David Hyatt  <hyatt (a] apple.com>
   51416 
   51417         Fix for bug 17203, high CPU usage loading HTML5 spec.  This patch significantly improves the performance
   51418         of CSS3 selectors.
   51419 
   51420         (1) Split the notion of being affected by positional rules into "forward" and "backward."  The "forward"
   51421         selectors do not need to re-resolve during parsing, since children are appended on the end.  Only the
   51422         "backward" selectors like last-child or nth-last-child have to re-resolve when a close tag is encountered.
   51423 
   51424         (2) Extend childrenChanged to specify whether the children were changed by the parser or not.  This allows
   51425         Element::childrenChanged to know when the parser is adding children so that it can ignore those adds when
   51426         possible.
   51427 
   51428         (3) Make sure all Elements now know whether or not their children are currently parsing.  Backwards selectors
   51429         like last-child will always return false when children are still being parsed.  When an Element finishes
   51430         parsing its children, finishParsingChildren() gets called and will make sure the children re-resolve properly.
   51431 
   51432         (4) Added a beginParsingChildren method and renamed finishParsing to finishedParsingChildren.
   51433 
   51434         (5) Eliminated one-off hacks that did the same thing in HTMLObjectElement and HTMLAppletElement.
   51435 
   51436         (6) Patched many incorrect implementations of finishedParsingChildren that did not properly call into their
   51437         base class (mostly new SVG elements that got added for SVG fonts around the time this became a requirement).
   51438 
   51439         Reviewed by Eric
   51440 
   51441         * css/CSSStyleSelector.cpp:
   51442         (WebCore::CSSStyleSelector::checkSelector):
   51443         (WebCore::CSSStyleSelector::checkOneSelector):
   51444         * dom/Attr.cpp:
   51445         (WebCore::Attr::childrenChanged):
   51446         * dom/Attr.h:
   51447         * dom/ContainerNode.cpp:
   51448         (WebCore::ContainerNode::addChild):
   51449         * dom/Document.cpp:
   51450         (WebCore::Document::childrenChanged):
   51451         * dom/Document.h:
   51452         * dom/Element.cpp:
   51453         (WebCore::Element::Element):
   51454         (WebCore::Element::recalcStyle):
   51455         (WebCore::checkFirstChildRules):
   51456         (WebCore::checkLastChildRules):
   51457         (WebCore::checkEmptyRules):
   51458         (WebCore::checkStyleRules):
   51459         (WebCore::Element::childrenChanged):
   51460         (WebCore::Element::finishParsingChildren):
   51461         * dom/Element.h:
   51462         (WebCore::Element::finishedParsingChildren):
   51463         (WebCore::Element::beginParsingChildren):
   51464         * dom/Node.cpp:
   51465         * dom/Node.h:
   51466         (WebCore::Node::finishParsingChildren):
   51467         (WebCore::Node::beginParsingChildren):
   51468         (WebCore::Node::childrenChanged):
   51469         * dom/StyledElement.cpp:
   51470         (WebCore::StyledElement::StyledElement):
   51471         * dom/StyledElement.h:
   51472         * dom/XMLTokenizer.cpp:
   51473         (WebCore::XMLTokenizer::startElementNs):
   51474         (WebCore::XMLTokenizer::endElementNs):
   51475         * html/HTMLAppletElement.cpp:
   51476         (WebCore::HTMLAppletElement::HTMLAppletElement):
   51477         (WebCore::HTMLAppletElement::finishParsingChildren):
   51478         * html/HTMLAppletElement.h:
   51479         * html/HTMLElementFactory.cpp:
   51480         (WebCore::objectConstructor):
   51481         * html/HTMLGenericFormElement.cpp:
   51482         (WebCore::HTMLFormControlElementWithState::finishParsingChildren):
   51483         * html/HTMLGenericFormElement.h:
   51484         * html/HTMLObjectElement.cpp:
   51485         (WebCore::HTMLObjectElement::HTMLObjectElement):
   51486         (WebCore::HTMLObjectElement::finishParsingChildren):
   51487         (WebCore::HTMLObjectElement::childrenChanged):
   51488         * html/HTMLObjectElement.h:
   51489         * html/HTMLOptGroupElement.cpp:
   51490         (WebCore::HTMLOptGroupElement::childrenChanged):
   51491         * html/HTMLOptGroupElement.h:
   51492         * html/HTMLOptionElement.cpp:
   51493         (WebCore::HTMLOptionElement::childrenChanged):
   51494         * html/HTMLOptionElement.h:
   51495         * html/HTMLParser.cpp:
   51496         (WebCore::HTMLParser::insertNode):
   51497         (WebCore::HTMLParser::pushBlock):
   51498         (WebCore::HTMLParser::popOneBlockCommon):
   51499         * html/HTMLScriptElement.cpp:
   51500         (WebCore::HTMLScriptElement::childrenChanged):
   51501         (WebCore::HTMLScriptElement::finishParsingChildren):
   51502         * html/HTMLScriptElement.h:
   51503         * html/HTMLSelectElement.cpp:
   51504         (WebCore::HTMLSelectElement::childrenChanged):
   51505         * html/HTMLSelectElement.h:
   51506         * html/HTMLStyleElement.cpp:
   51507         (WebCore::HTMLStyleElement::finishParsingChildren):
   51508         (WebCore::HTMLStyleElement::childrenChanged):
   51509         * html/HTMLStyleElement.h:
   51510         * html/HTMLTextAreaElement.cpp:
   51511         (WebCore::HTMLTextAreaElement::childrenChanged):
   51512         * html/HTMLTextAreaElement.h:
   51513         * html/HTMLTitleElement.cpp:
   51514         (WebCore::HTMLTitleElement::childrenChanged):
   51515         * html/HTMLTitleElement.h:
   51516          * rendering/RenderApplet.cpp:
   51517         (WebCore::RenderApplet::createWidgetIfNecessary):
   51518         * rendering/RenderPartObject.cpp:
   51519         (WebCore::RenderPartObject::updateWidget):
   51520         * rendering/RenderStyle.cpp:
   51521         (WebCore::RenderStyle::RenderStyle):
   51522         * rendering/RenderStyle.h:
   51523         (WebCore::RenderStyle::childrenAffectedByForwardPositionalRules):
   51524         (WebCore::RenderStyle::setChildrenAffectedByForwardPositionalRules):
   51525         (WebCore::RenderStyle::childrenAffectedByBackwardPositionalRules):
   51526         (WebCore::RenderStyle::setChildrenAffectedByBackwardPositionalRules):
   51527         * svg/SVGAnimationElement.cpp:
   51528         (WebCore::SVGAnimationElement::finishParsingChildren):
   51529         * svg/SVGAnimationElement.h:
   51530         * svg/SVGClipPathElement.cpp:
   51531         (WebCore::SVGClipPathElement::childrenChanged):
   51532         * svg/SVGClipPathElement.h:
   51533         * svg/SVGDefinitionSrcElement.cpp:
   51534         (WebCore::SVGDefinitionSrcElement::childrenChanged):
   51535         * svg/SVGDefinitionSrcElement.h:
   51536         * svg/SVGElement.cpp:
   51537         (WebCore::SVGElement::finishParsingChildren):
   51538         * svg/SVGElement.h:
   51539         * svg/SVGFontFaceElement.cpp:
   51540         (WebCore::SVGFontFaceElement::childrenChanged):
   51541         * svg/SVGFontFaceElement.h:
   51542         * svg/SVGFontFaceFormatElement.cpp:
   51543         (WebCore::SVGFontFaceFormatElement::childrenChanged):
   51544         * svg/SVGFontFaceFormatElement.h:
   51545         * svg/SVGFontFaceSrcElement.cpp:
   51546         (WebCore::SVGFontFaceSrcElement::childrenChanged):
   51547         * svg/SVGFontFaceSrcElement.h:
   51548         * svg/SVGFontFaceUriElement.cpp:
   51549         (WebCore::SVGFontFaceUriElement::childrenChanged):
   51550         * svg/SVGFontFaceUriElement.h:
   51551         * svg/SVGGElement.cpp:
   51552         (WebCore::SVGGElement::childrenChanged):
   51553         * svg/SVGGElement.h:
   51554         * svg/SVGGradientElement.cpp:
   51555         (WebCore::SVGGradientElement::childrenChanged):
   51556         * svg/SVGGradientElement.h:
   51557         * svg/SVGMarkerElement.cpp:
   51558         (WebCore::SVGMarkerElement::childrenChanged):
   51559         * svg/SVGMarkerElement.h:
   51560         * svg/SVGMaskElement.cpp:
   51561         (WebCore::SVGMaskElement::childrenChanged):
   51562         * svg/SVGMaskElement.h:
   51563         * svg/SVGPatternElement.cpp:
   51564         (WebCore::SVGPatternElement::childrenChanged):
   51565         * svg/SVGPatternElement.h:
   51566         * svg/SVGStyleElement.cpp:
   51567         (WebCore::SVGStyleElement::finishParsingChildren):
   51568         (WebCore::SVGStyleElement::childrenChanged):
   51569         * svg/SVGStyleElement.h:
   51570         * svg/SVGStyledElement.cpp:
   51571         (WebCore::SVGStyledElement::childrenChanged):
   51572         * svg/SVGStyledElement.h:
   51573         * svg/SVGTitleElement.cpp:
   51574         (WebCore::SVGTitleElement::childrenChanged):
   51575         * svg/SVGTitleElement.h:
   51576         * svg/SVGUseElement.cpp:
   51577         (WebCore::SVGUseElement::childrenChanged):
   51578         * svg/SVGUseElement.h:
   51579         
   51580 2008-02-09  Holger Hans Peter Freyther  <holger.freyther (a] trolltech.com>
   51581 
   51582         Unreviewed build fix
   51583 
   51584         Somehow the removal of adjustSliderThumbSize(RenderObject*) sneaked
   51585         into the patch.
   51586 
   51587         * platform/qt/RenderThemeQt.h:
   51588 
   51589 2008-02-09  Holger Hans Peter Freyther  <holger.freyther (a] trolltech.com>
   51590 
   51591         Reviewed by Adele.
   51592 
   51593         paintResizeControl is dead, remove the code. This painting
   51594         is done by the RenderLayer.
   51595 
   51596         * platform/qt/RenderThemeQt.cpp:
   51597         * platform/qt/RenderThemeQt.h:
   51598         * rendering/RenderThemeMac.h:
   51599         * rendering/RenderThemeMac.mm:
   51600 
   51601 2008-02-07  Kevin Ollivier <kevino (a] theolliviers.com>
   51602 
   51603         Reviewed by Eric Seidel, Adam Roben.
   51604 
   51605         MSVC7 fixes.
   51606         http://bugs.webkit.org/show_bug.cgi?id=17211
   51607 
   51608         * platform/Threading.h:
   51609         - On MSVC7, when the Interlocked* functions are used, the ref count gets out of sync.
   51610           (MSVC8 seems not to have this problem.) Use the old implementation which works correctly.
   51611         * platform/win/SharedTimerWin.cpp:
   51612         - USER_TIMER_MINIMUM/MAXIMUM aren't defined in winuser.h for the MSVC 2003 Platform SDK
   51613           so define them if they are not already defined.
   51614 
   51615 2008-02-08  Brent Fulgham  <bfulgham (a] gmail.com>
   51616 
   51617         Reviewed by Adam Roben.
   51618 
   51619         Bug 17226: Fix Windows (Cairo) build of image-decoders
   51620         http://bugs.webkit.org/show_bug.cgi?id=17226
   51621 
   51622         * platform/image-decoders/gif/GIFImageDecoder.cpp:
   51623         * platform/image-decoders/png/PNGImageDecoder.cpp:
   51624 
   51625 2008-02-08  Timothy Hatcher  <timothy (a] apple.com>
   51626 
   51627         Reviewed by Brady Eidson.
   51628 
   51629         <rdar://problem/5640896> Removing database then trying
   51630         to recreate it causes trouble
   51631 
   51632         Added open Database support to DatabaseTracker. So any Database that 
   51633         is deleted will be marked as deleted and will fail to open any transaction
   51634         or execute any new SQL queries.
   51635 
   51636         * storage/Database.cpp:
   51637         (WebCore::Database::Database): Call DatabaseTracker::addOpenDatabase.
   51638         (WebCore::Database::~Database): Call DatabaseTracker::removeOpenDatabase.
   51639         (WebCore::Database::markAsDeleted): Set the m_deleted flag.
   51640         (WebCore::Database::version): Return a null String if m_deleted is true.
   51641         * storage/Database.h:
   51642         (WebCore::Database::deleted): Return m_deleted.
   51643         * storage/DatabaseTracker.cpp:
   51644         (WebCore::DatabaseTracker::addOpenDatabase): Add the Database to a map of origins and names.
   51645         (WebCore::DatabaseTracker::removeOpenDatabase): Remove the Database from the map.
   51646         (WebCore::DatabaseTracker::deleteDatabaseFile): Call markAsDeleted on all the open Databases
   51647           matching the origin/name.
   51648         * storage/DatabaseTracker.h:
   51649         * storage/SQLStatement.cpp:
   51650         (WebCore::SQLStatement::setDatabaseDeletedError): Set the error about the user deleting the database.
   51651         * storage/SQLStatement.h:
   51652         * storage/SQLTransaction.cpp:
   51653         (WebCore::SQLTransaction::executeSQL): If the Database is deleted, call setDatabaseDeletedError.
   51654         (WebCore::SQLTransaction::openTransactionAndPreflight): Set the error about the user deleting the database
   51655           if the Database was marked as deleted.
   51656 
   51657 2008-02-08  Darin Adler  <darin (a] apple.com>
   51658 
   51659         Reviewed by Eric.
   51660 
   51661         - fix http://bugs.webkit.org/show_bug.cgi?id=15003
   51662           Function.prototype.constructor should not be DontDelete/ReadOnly (Acid3 bug)
   51663 
   51664         Test: fast/js/constructor-attributes.html
   51665 
   51666         * bindings/scripts/CodeGeneratorJS.pm: Remove unwanted attributes from "constructor".
   51667 
   51668 2008-02-08  Anders Carlsson  <andersca (a] apple.com>
   51669 
   51670         Reviewed by Mitz.
   51671 
   51672         <rdar://problem/5650446>
   51673         http://bugs.webkit.org/show_bug.cgi?id=16102
   51674         Crash in FrameLoader::stopLoadingSubframes() on IMDB page
   51675 
   51676         Store the child frame in a RefPtr to prevent it from being deleted when the
   51677         frame tree changes while calling stopAllLoaders().
   51678         
   51679         * loader/FrameLoader.cpp:
   51680         (WebCore::FrameLoader::stopLoadingSubframes):
   51681 
   51682 2008-02-08  Kevin Ollivier  <kevino (a] theolliviers.com>
   51683 
   51684         wx port build fix. Add time.h to define time_t.
   51685 
   51686         * platform/FileSystem.h:
   51687 
   51688 2008-02-08  Alp Toker  <alp (a] atoker.com>
   51689 
   51690         Reviewed by Adam Roben.
   51691 
   51692         Avoid null-dereference crasher noticed in the GTK+ port and also
   51693         affecting the Win debug build.
   51694 
   51695         Covered by existing tests.
   51696 
   51697         * dom/Document.cpp:
   51698         (WebCore::Document::userStyleSheet):
   51699 
   51700 2008-02-08  Anders Carlsson  <andersca (a] apple.com>
   51701 
   51702         Reviewed by Adam.
   51703 
   51704         <rdar://problem/5724188> 
   51705         REGRESSION: PLT 0.7% slower due to 29926 (change Text::createWithLengthLimit to take a UChar pointer)
   51706         
   51707         Revert r29926 which caused the regression.
   51708         
   51709         * dom/Text.cpp:
   51710         (WebCore::Text::createWithLengthLimit):
   51711         * dom/Text.h:
   51712         * html/HTMLParser.cpp:
   51713         (WebCore::HTMLParser::parseToken):
   51714         * loader/TextDocument.cpp:
   51715         (WebCore::TextTokenizer::write):
   51716 
   51717 2008-02-08  Sam Weinig  <sam (a] webkit.org>
   51718 
   51719         Reviewed by Hyatt.
   51720 
   51721         Fix for <rdar://problem/5732491>
   51722         http://bugs.webkit.org/show_bug.cgi?id=17213
   51723         The querySelectorAll method on an element node does not search only the element's descendants
   51724 
   51725         Test: fast/dom/SelectorAPI/elementRoot.html
   51726 
   51727         * dom/Node.cpp:
   51728         (WebCore::Node::querySelector): Make sure to stay within the root node when traversing the tree.
   51729         * dom/SelectorNodeList.cpp:
   51730         (WebCore::SelectorNodeList::SelectorNodeList): ditto.
   51731 
   51732 
   51733 
   51734 2008-02-08  David Hyatt  <hyatt (a] apple.com>
   51735 
   51736         Fix for bug 16798, button should default to type=submit.
   51737 
   51738         Reviewed by darin
   51739 
   51740         * html/HTMLButtonElement.cpp:
   51741         (WebCore::HTMLButtonElement::type):
   51742         (WebCore::HTMLButtonElement::parseMappedAttribute):
   51743 
   51744 2008-02-08  Rodney Dawes  <dobey (a] wayofthemonkey.com>
   51745 
   51746         Reviewed by Jon Honeycutt.
   51747 
   51748         Redefine some platform-specific types as cross-platform types
   51749         Add pathGetFileName method to get the filename from a path string
   51750         Add unloadModule method to unload a loadable module from the process
   51751         Implement new methods for GTK+ and Windows
   51752         Implement missing homeDirectoryPath method for GTK+
   51753         Add stub methods for new and missing methods for Wx and Qt
   51754 
   51755         * platform/FileSystem.h:
   51756         * platform/gtk/FileSystemGtk.cpp:
   51757         * platform/qt/FileSystemQt.cpp:
   51758         * platform/win/FileSystemWin.cpp:
   51759         * platform/wx/FileSystemWx.cpp:
   51760 
   51761 2008-02-08  Adam Roben  <aroben (a] apple.com>
   51762 
   51763         Windows build fix after r30088
   51764 
   51765         * bindings/scripts/CodeGeneratorCOM.pm: Touch this to force the COM
   51766         bindings to rebuild.
   51767 
   51768 2008-02-08  Pierre-Luc Beaudoin  <pierre-luc.beaudoin (a] collabora.co.uk>
   51769 
   51770         Reviewed by Alp Toker.
   51771 
   51772         http://bugs.webkit.org/show_bug.cgi?id=17009
   51773         [Gtk] Webkit strips accents from some dead-key combinations
   51774 
   51775         KeyEvents have to go through the gtk input method.
   51776 
   51777         Also implement the isKeypad check and make disambiguateKeyDownEvent
   51778         behave more like other ports.
   51779 
   51780         * platform/PlatformKeyboardEvent.h:
   51781         * platform/gtk/KeyEventGtk.cpp:
   51782         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
   51783         (WebCore::PlatformKeyboardEvent::disambiguateKeyDownEvent):
   51784         (WebCore::PlatformKeyboardEvent::gdkEventKey):
   51785 
   51786 2008-02-08  Darin Adler  <darin (a] apple.com>
   51787 
   51788         Reviewed by Eric.
   51789 
   51790         - fix http://bugs.webkit.org/show_bug.cgi?id=3492
   51791           TreeWalker implementation needs to be fixed (affects Acid3)
   51792         - fix http://bugs.webkit.org/show_bug.cgi?id=4714
   51793           NodeIterator does not handle exceptions from the filter function (affects Acid3)
   51794         - fix http://bugs.webkit.org/show_bug.cgi?id=4716
   51795           NodeIterator will crash if the filter function removes the current node from the document
   51796 
   51797         Test: traversal/exception-forwarding.html
   51798 
   51799         This turned into a near-rewrite of NodeIterator and TreeWalker.
   51800 
   51801         * bindings/js/JSNodeFilterCondition.h:
   51802         * bindings/js/JSNodeFilterCondition.cpp:
   51803         (WebCore::takeException): Added.
   51804         (WebCore::JSNodeFilterCondition::acceptNode): Added an out parameter to return
   51805         a JavaScript exception.
   51806 
   51807         * bindings/js/JSNodeFilterCustom.cpp:
   51808         (WebCore::JSNodeFilter::acceptNode): Wrote a custom binding for this that raises
   51809         a JavaScript exception if the out parameter is set.
   51810 
   51811         * bindings/js/JSNodeIteratorCustom.cpp:
   51812         (WebCore::JSNodeIterator::nextNode): Wrote a custom binding for this that raises
   51813         a JavaScript exception if the out parameter is set.
   51814         (WebCore::JSNodeIterator::previousNode): Ditto.
   51815 
   51816         * bindings/js/JSTreeWalkerCustom.cpp:
   51817         (WebCore::JSTreeWalker::parentNode): Wrote a custom binding for this that raises
   51818         a JavaScript exception if the out parameter is set.
   51819         (WebCore::JSTreeWalker::firstChild): Ditto.
   51820         (WebCore::JSTreeWalker::lastChild): Ditto.
   51821         (WebCore::JSTreeWalker::nextSibling): Ditto.
   51822         (WebCore::JSTreeWalker::previousSibling): Ditto.
   51823         (WebCore::JSTreeWalker::previousNode): Ditto.
   51824         (WebCore::JSTreeWalker::nextNode): Ditto.
   51825 
   51826         * bindings/objc/DOM.mm:
   51827         (WebCore::ObjCNodeFilterCondition::acceptNode): Updated to include new exception
   51828         out parameter.
   51829         (-[DOMDocument createNodeIterator:whatToShow:filter:expandEntityReferences:]):
   51830         Use RefPtr to make object lifetimes clearer.
   51831         (-[DOMDocument createTreeWalker:whatToShow:filter:expandEntityReferences:]):
   51832         Ditto.
   51833 
   51834         * bindings/scripts/CodeGeneratorJS.pm: Added include of NodeFilter.h for
   51835         JSDocument.cpp.
   51836 
   51837         * dom/Document.h:
   51838         * dom/Document.cpp:
   51839         (WebCore::Document::createNodeIterator): Changed to use PassRefPtr.
   51840         (WebCore::Document::createTreeWalker): Ditto.
   51841 
   51842         * dom/NodeFilter.h:
   51843         * dom/NodeFilter.cpp:
   51844         (WebCore::NodeFilter::NodeFilter): Changed to use PassRefPtr.
   51845         (WebCore::NodeFilter::acceptNode): Added an out parameter to return
   51846         a JavaScript exception.
   51847         * dom/NodeFilter.idl: Custom binding for acceptNode.
   51848 
   51849         * dom/NodeFilterCondition.h:
   51850         * dom/NodeFilterCondition.cpp:
   51851         (WebCore::NodeFilterCondition::acceptNode): Added an out parameter to return
   51852         a JavaScript exception.
   51853 
   51854         * dom/NodeIterator.cpp:
   51855         (WebCore::NodeIterator::NodeIterator): Changed to use PassRefPtr more.
   51856         Eliminated m_doc, using the root node instead, and unnecessary check for
   51857         null -- rootNode must be non-null and all nodes have a non-null document.
   51858         (WebCore::NodeIterator::~NodeIterator): Changed to get document from root.
   51859         (WebCore::NodeIterator::nextNode): Rewrote to use a RefPtr since the
   51860         acceptNode function could do anything, including removing the last
   51861         reference to the current node. Also folded findNextNode into this function
   51862         since it's the only one that needs to call it.
   51863         (WebCore::NodeIterator::previousNode): Same thing, but the other direction.
   51864         (WebCore::NodeIterator::detach): Changed to use the root node as the indication
   51865         that we're detached rather than a separate boolean.
   51866         (WebCore::NodeIterator::notifyBeforeNodeRemoval): Removed some unnneeded
   51867         checks. Removed incorrect use of findNextNode/findPreviousNode -- those
   51868         functions call acceptNode and the DOM standard is quite clear that these
   51869         functions do not take that into account, allowing the current node to become
   51870         one that's not accepted.
   51871 
   51872         * dom/NodeIterator.h: Changed constructor to use PassRefPtr more. Changed
   51873         nextNode and previousNode to have an out parameter with a JavaScript exception.
   51874         Removed helper functions setReferenceNode, setPointerBeforeReferenceNode,
   51875         detached, setDetached, document, findNextNode, and findPreviousNode. All were
   51876         unnecessary. Removed data member m_doc which was just rootNode()->document().
   51877 
   51878         * dom/NodeIterator.idl: Custom binding for nextNode and previousNode.
   51879 
   51880         * dom/Traversal.cpp:
   51881         (WebCore::Traversal::Traversal): Use PassRefPtr more.
   51882         (WebCore::Traversal::acceptNode): Added out parameter for JavaScript exception.
   51883         Also rearranged the function a little bit for clarity.
   51884 
   51885         * dom/Traversal.h: Changed acceptNode to have an out parameter with a JavaScript
   51886         exception and made it protected, since it's only for use by the derived classes.
   51887 
   51888         * dom/TreeWalker.cpp:
   51889         (WebCore::TreeWalker::TreeWalker): Updated to use PassRefPtr.
   51890         (WebCore::TreeWalker::setCurrentNode): Updated to use PassRefPtr and deleted
   51891         the overloaded version since it's not needed.
   51892         (WebCore::TreeWalker::parentNode): Rewrote to propagate the exception and also
   51893         to implement rules about when to check things like whether we're in the tree.
   51894         The previous fix where we called isDescendantOf was not entirely correct, because
   51895         the specification allows you to walk outside the tree if you get there somehow.
   51896         What it doesn't allow is walking outside the tree from inside. The new
   51897         implementation handles this correctly.
   51898         (WebCore::TreeWalker::firstChild): Ditto.
   51899         (WebCore::TreeWalker::lastChild): Ditto.
   51900         (WebCore::TreeWalker::previousSibling): Ditto.
   51901         (WebCore::TreeWalker::nextSibling): Ditto.
   51902         (WebCore::TreeWalker::previousNode): Ditto. Because of the need to check the
   51903         acceptNode function on parents, this can't use traversePreviousNode (more's the
   51904         pity, because it's a bit complicated).
   51905         (WebCore::TreeWalker::nextNode): Ditto.
   51906 
   51907         * dom/TreeWalker.h: Changed constructor and setCurrentNode to use PassRefPtr
   51908         more. Changed the navigation functions to have an out parameter with a JavaScript
   51909         exception. Removed helper functions setCurrentNode and ancestorRejected.
   51910 
   51911         * dom/TreeWalker.idl: Custom binding for navigation functions.
   51912 
   51913 2008-02-08  Eric Seidel  <eric (a] webkit.org>
   51914 
   51915         Reviewed by darin.
   51916 
   51917         Add support for Text.wholeText and Text.replaceWholeText
   51918         http://bugs.webkit.org/show_bug.cgi?id=17125
   51919 
   51920         Test EntityReferences to make sure they're always treated as read-only
   51921         In doing so I discovered a bug in document.adoptNode(readonlyNode) (and fixed it)
   51922 
   51923         * dom/Document.cpp:
   51924         (WebCore::Document::adoptNode): throw NO_MODIFICATION_ALLOWED_ERR when passed a readonly node
   51925         * dom/Node.cpp:
   51926         * dom/Node.cpp:
   51927         (WebCore::Node::textContent):
   51928         * dom/Text.cpp:
   51929         (WebCore::earliestLogicallyAdjacentTextNode):
   51930         (WebCore::latestLogicallyAdjacentTextNode):
   51931         (WebCore::Text::wholeText):
   51932         (WebCore::Text::replaceWholeText):
   51933         * dom/Text.h:
   51934         * dom/Text.idl:
   51935 
   51936 2008-02-06  Kimmo Kinnunen  <kimmok (a] iki.fi>
   51937 
   51938         Reviewed by Tim Hatcher.
   51939 
   51940         Fixes: http://bugs.webkit.org/show_bug.cgi?id=17191
   51941         HTML5: Client-side database queries should return values of type number
   51942         Test: storage/sql-data-types.html
   51943 
   51944         Make the DB queries return a value as a number if it was inserted
   51945         as a number to the database.
   51946         * platform/sql/SQLiteStatement.cpp:
   51947         (WebCore::SQLiteStatement::getColumnValue): new member function to return SQLValues
   51948         * platform/sql/SQLiteStatement.h:
   51949         * storage/SQLStatement.cpp:
   51950         (WebCore::SQLStatement::execute): use getColumnValue instead of getColumnText
   51951 
   51952 2008-02-07  Ada Chan  <adachan (a] apple.com>
   51953 
   51954         <rdar://problem/5292433> certificate authentication support broken in Safari 3.0
   51955         Added mechanism to communicate client certificate info back to CFNetwork.
   51956 
   51957         Reviewed by Adam.
   51958 
   51959         * platform/network/ResourceHandle.h:
   51960         * platform/network/cf/ResourceHandleCFNet.cpp:
   51961         (WebCore::clientCerts): Keep a mapping of hosts to client certificates.
   51962         (WebCore::makeFinalRequest): If we have a client certificate for the host, pass it
   51963         to CFNetwork by setting it in the SSL properties.
   51964         (WebCore::ResourceHandle::setClientCertificate): Map client certificate to the host.
   51965 
   51966 2008-02-07  Adam Roben  <aroben (a] apple.com>
   51967 
   51968         Qt build fix
   51969 
   51970         * platform/SharedBuffer.cpp: Removed a stub implementation of
   51971         createWithContentsOfFile, now that each platform has its own stub.
   51972 
   51973 2008-02-07  Adam Roben  <aroben (a] apple.com>
   51974 
   51975         Fix Bug 17138: REGRESSION: Node highlight not updated properly
   51976 
   51977         <http://bugs.webkit.org/show_bug.cgi?id=17138>
   51978         <rdar://problem/5719869>
   51979 
   51980         Reviewed by Darin.
   51981 
   51982         No test possible.
   51983 
   51984         * page/InspectorController.cpp:
   51985         (WebCore::InspectorController::drawNodeHighlight): Update the
   51986         overlayRect after scrolling to make sure that we translate the context
   51987         by the correct amount.
   51988 
   51989 2008-02-07  Adam Roben  <aroben (a] apple.com>
   51990 
   51991         Qt and GTK+ build fixes
   51992 
   51993         * platform/gtk/FileSystemGtk.cpp: Added a missing #include.
   51994         * platform/qt/FileSystemQt.cpp: Ditto.
   51995 
   51996 2008-02-07  Adam Roben  <aroben (a] apple.com>
   51997 
   51998         Some cleanup of Mac-only user stylesheet code
   51999 
   52000         I moved UserStyleSheetLoader out of Frame.cpp into its own files, and
   52001         moved some Mac-only Frame methods to FrameMac.mm.
   52002 
   52003         Reviewed by Darin.
   52004 
   52005         * WebCore.xcodeproj/project.pbxproj: Added new files to project.
   52006         * loader/mac/UserStyleSheetLoader.cpp: Added.
   52007         (UserStyleSheetLoader::UserStyleSheetLoader):
   52008         (UserStyleSheetLoader::~UserStyleSheetLoader):
   52009         * loader/mac/UserStyleSheetLoader.h: Added.
   52010         * page/Frame.cpp: Removed setUserStyleSheet[Location]
   52011         * page/mac/FrameMac.mm:
   52012         (WebCore::Frame::setUserStyleSheetLocation): Moved here from
   52013         Frame.cpp.
   52014         (WebCore::Frame::setUserStyleSheet): Ditto.
   52015 
   52016 2008-02-07  Adam Roben  <aroben (a] apple.com>
   52017 
   52018         Fix <rdar://5555260> GMail never loads when a user stylesheet is
   52019         specified
   52020 
   52021         The fix in r29841 did not guarantee that the user stylesheet would not
   52022         still be loading by the time GMail called document.write, and so was
   52023         not a complete fix.
   52024 
   52025         This change reworks the user stylesheet loading mechanism on non-Mac
   52026         platforms to load the stylesheet synchronously from disk, and then
   52027         keeps it in memory. This obsoletes the issue of what our behavior
   52028         should be before the user stylesheet has loaded and what should happen
   52029         when it finishes loading, as the user stylesheet will always be
   52030         available when the Document first asks for it. Note, however, that
   52031         this removes the ability to specify a non-file: URL for the user
   52032         stylesheet. This change was not made for the Mac platform because it's
   52033         possible that WebKit clients are relying on non-file: URLs for user
   52034         stylesheets. It would also be nice to move back to an asynchronous
   52035         loading model someday, but that is not currently possible since we
   52036         don't have an asynchronous loading mechanism that is not tied to a
   52037         particular Frame.
   52038 
   52039         The responsibility of loading and storing the user stylesheet has
   52040         moved from Frame to Page, since the user stylesheet URL is set on the
   52041         Page-level Settings object.
   52042 
   52043         Reviewed by Darin.
   52044 
   52045         * dom/Document.cpp:
   52046         (WebCore::Document::Document): Changed to call userStyleSheet().
   52047         (WebCore::Document::setUserStyleSheet): Made Mac-only.
   52048         (WebCore::Document::userStyleSheet): Changed to call up to Page on
   52049         non-Mac platforms.
   52050         (WebCore::Document::recalcStyleSelector): Changed to call
   52051         userStyleSheet().
   52052         * dom/Document.h:
   52053             - Made setUserStyleSheet and the m_usersheet member Mac-only
   52054             - Changed userStyleSheet to return a String instance instead of a
   52055               String reference, since we now might return a new null String.
   52056         * loader/FrameLoader.cpp:
   52057         (WebCore::FrameLoader::begin): Made the call to
   52058         Frame::setUserStyleSheetLocation Mac-only.
   52059         * page/Frame.cpp: Made UserStyleSheetLoader and related code Mac-only.
   52060         (WebCore::Frame::~Frame): Ditto.
   52061         (WebCore::Frame::reapplyStyles): Made the call to
   52062         setUserStyleSheet[Location] Mac-only. On non-Mac platforms the
   52063         Document will pick up the new stylesheet in Document::reapplyStyles.
   52064         (WebCore::FramePrivate::FramePrivate): Made m_userStyleSheetLoader
   52065         Mac-only.
   52066         * page/Frame.h: Made setUserStyleSheet[Location] Mac-only.
   52067         * page/FramePrivate.h: Made m_userStyleSheetLoader Mac-only.
   52068         * page/Page.cpp:
   52069         (WebCore::Page::Page): Initialize new members.
   52070         (WebCore::Page::userStyleSheetLocationChanged): Added. Does nothing on
   52071         Mac. On non-Mac, resets all members relating to the user stylesheet so
   52072         we'll know to load it again the next time it's asked for.
   52073         (WebCore::Page::userStyleSheet): Added. Loads the user stylesheet if
   52074         the user stylesheet location has changed since the last time we loaded
   52075         it, or if the file has been modified since we last loaded it, then
   52076         returns the contents of the user stylesheet as a String.
   52077         * page/Page.h: Added new methods/members.
   52078         * page/Settings.cpp:
   52079         (WebCore::Settings::setUserStyleSheetLocation): Changed to call
   52080         Page::userStyleSheetLocationChanged.
   52081         * page/Settings.h: Changed userStyleSheetLocation to return the KURL
   52082         by reference instead of making a copy.
   52083         * platform/FileSystem.h: Added declaration for getFileModificationTime.
   52084         * platform/KURL.h: Added declaration for fileSystemPath method.
   52085         * platform/cf/KURLCFNet.cpp:
   52086         (WebCore::KURL::fileSystemPath): Added.
   52087         * platform/posix/FileSystemPOSIX.cpp:
   52088         (WebCore::getFileModificationTime): Added.
   52089         * platform/qt/KURLQt.cpp:
   52090         (WebCore::KURL::fileSystemPath): Stubbed out.
   52091         * platform/win/FileSystemWin.cpp:
   52092         (WebCore::getFileModificationTime): Added.
   52093         * platform/qt/FileSystemQt.cpp: Stubbed out getFileModificationTime.
   52094         * platform/gtk/FileSystemGtk.cpp: Ditto.
   52095         * platform/wx/FileSystemWx.cpp: Ditto.
   52096         * platform/qt/TemporaryLinkStubs.cpp: Stubbed out
   52097         SharedBuffer::createWithContentsOfFile.
   52098         * platform/gtk/TemporaryLinkStubs.cpp: Ditto, along with
   52099         KURL::fileSystemPath.
   52100         * platform/wx/TemporaryLinkStubs.cpp: Ditto.
   52101 
   52102 2008-02-07  Adam Roben  <aroben (a] apple.com>
   52103 
   52104         Clean up FileSystemWin.cpp
   52105 
   52106         This cleanup also makes us call _wstat64 instead of _wstat32i64. The
   52107         only difference between these two functions is that _wstat64 gives
   52108         64-bit time values, while _wstat32i64 only gives 32-bit time values.
   52109 
   52110         Reviewed by Darin.
   52111 
   52112         All tests pass.
   52113 
   52114         * platform/win/FileSystemWin.cpp:
   52115         (WebCore::statFile): New static helper that wraps _wstat64.
   52116         (WebCore::getFileSize): Changed to call statFile.
   52117         (WebCore::fileExists): Ditto.
   52118 
   52119 2008-02-07  Adam Roben  <aroben (a] apple.com>
   52120 
   52121         Rename fileSize to getFileSize
   52122 
   52123         Rubberstamped by Darin.
   52124 
   52125         * platform/FileSystem.h:
   52126         * platform/gtk/FileSystemGtk.cpp:
   52127         * platform/network/cf/FormDataStreamCFNet.cpp:
   52128         (WebCore::setHTTPBody):
   52129         * platform/network/curl/ResourceHandleManager.cpp:
   52130         (WebCore::ResourceHandleManager::setupPOST):
   52131         * platform/posix/FileSystemPOSIX.cpp:
   52132         * platform/qt/FileSystemQt.cpp:
   52133         * platform/win/FileSystemWin.cpp:
   52134         * platform/wx/FileSystemWx.cpp:
   52135         * storage/Database.cpp:
   52136         (WebCore::Database::databaseSize):
   52137         * storage/DatabaseTracker.cpp:
   52138         (WebCore::DatabaseTracker::usageForDatabase):
   52139         * storage/OriginUsageRecord.cpp:
   52140         (WebCore::OriginUsageRecord::diskUsage):
   52141 
   52142 2008-02-06  Adam Roben  <aroben (a] apple.com>
   52143 
   52144         Make KURL::isLocalFile treat the URL's protocol case-insensitively
   52145 
   52146         Reviewed by Darin.
   52147 
   52148         * platform/KURL.cpp:
   52149         (WebCore::KURL::isLocalFile): Use equalIgnoringCase instead of ==.
   52150 
   52151 2008-02-07  David Hyatt  <hyatt (a] apple.com>
   52152 
   52153         Fix for bug 6248, implement the nth-* CSS3 selectors.  Patch based on original KHTML work from Allan Jensen
   52154         and improved upon by Nick Shanks.
   52155 
   52156         Reviewed by Eric
   52157 
   52158         * css/CSSGrammar.y:
   52159         * css/CSSParser.cpp:
   52160         (WebCore::CSSParser::lex):
   52161         * css/CSSSelector.cpp:
   52162         (WebCore::CSSSelector::extractPseudoType):
   52163         * css/CSSSelector.h:
   52164         (WebCore::CSSSelector::):
   52165         * css/CSSStyleSelector.cpp:
   52166         (WebCore::parseNth):
   52167         (WebCore::matchNth):
   52168         (WebCore::CSSStyleSelector::checkOneSelector):
   52169         * css/tokenizer.flex:
   52170         * rendering/RenderStyle.cpp:
   52171         (WebCore::RenderStyle::RenderStyle):
   52172         * rendering/RenderStyle.h:
   52173         (WebCore::RenderStyle::childIndex):
   52174         (WebCore::RenderStyle::setChildIndex):
   52175 
   52176 2008-02-07  Dan Bernstein  <mitz (a] apple.com>
   52177 
   52178         Reviewed by Dave Hyatt.
   52179 
   52180         - fix <rdar://problem/5729411> REGRESSION (r29834): Float contained in relative-positioned block is painted twice
   52181 
   52182         Test: fast/block/float/relative-painted-twice.html
   52183 
   52184         * rendering/RenderBlock.cpp:
   52185         (WebCore::RenderBlock::addOverhangingFloats): Added another case where
   52186         the child should not take over painting the float: when they do not have
   52187         the same enclosing layer. In that case, the float is already being
   52188         painted by one of its closer ancestors.
   52189 
   52190 2008-02-07  Dan Bernstein  <mitz (a] apple.com>
   52191 
   52192         Reviewed by Darin Adler.
   52193 
   52194         - fix http://bugs.webkit.org/show_bug.cgi?id=17194
   52195           Changing text to bold changes font family
   52196 
   52197         Test: platform/mac/fast/text/family-for-font-matched-by-name.html
   52198 
   52199         * platform/mac/WebFontCache.mm:
   52200         (+[WebFontCache internalFontWithFamily:traits:size:]): Changed to use
   52201         the family of the font whose name matches the desired family if there
   52202         is no exact family match.
   52203 
   52204 2008-02-07  Beth Dakin  <bdakin (a] apple.com>
   52205 
   52206         Reviewed by Geoff.
   52207 
   52208         Fix for <rdar://problem/5697882> Traffic or Street View button on 
   52209         Google Maps is sometimes not positioned correctly (17000)
   52210 
   52211         On the Mac, timers fire in the order that they are registered. 
   52212         Geoff and I discovered that this is not necessarily true on 
   52213         Windows, and that turned out to be the cause of this intermittent 
   52214         layout problem at Google Maps. This patch adds a new member 
   52215         variable to Timer to remember the timer's insertion point into the 
   52216         heap. Now when comparing timers, if two timers were registered at 
   52217         the same time, their insertion orders are compared to determine 
   52218         which should fire first. This code actually never runs on Debug 
   52219         builds on the Mac; the system clock on the Mac is accurate enough 
   52220         that it knows that the two timers were not registered at *exactly* 
   52221         the same time. This is not the case on Windows. In theory, if we 
   52222         sped up Javascript enough on the Mac, this code would run and would 
   52223         prevent misrenderings such as the one found on Google Maps.
   52224 
   52225         * platform/Timer.cpp:
   52226         (WebCore::operator<):
   52227         (WebCore::TimerBase::setNextFireTime):
   52228         * platform/Timer.h:
   52229 
   52230 2008-02-06  Justin Garcia  <justin.garcia (a] apple.com>
   52231 
   52232         Reviewed by Darin Adler.
   52233 
   52234         <rdar://problem/5195056> Huge plain text pastes are slow
   52235         
   52236         This was fixed in r27369 and then r29367 and r29667 caused performance to
   52237         regress.
   52238 
   52239         * editing/EditCommand.cpp:
   52240         (WebCore::EditCommand::apply): Only updateLayout() for high level commands.
   52241         (WebCore::EditCommand::unapply): Ditto.
   52242         (WebCore::EditCommand::reapply): Ditto.
   52243         * editing/Editor.cpp:
   52244         (WebCore::Editor::appliedEditing): Added a note about shouldChangeSelection calls 
   52245         that shouldn't be made, a bug I filed as <rdar://problem/5729315>.
   52246         (WebCore::Editor::unappliedEditing): Ditto.
   52247         (WebCore::Editor::reappliedEditing): Ditto.
   52248         * editing/SelectionController.cpp:
   52249         (WebCore::SelectionController::nodeWillBeRemoved): Don't try to test the selection
   52250         base and extent with the expensive isCandidate operation if the node that will
   52251         be removed is in a fragment, since such a removal is guaranteed to have no effect
   52252         on a selection.  This is to speed up the paste operation, which does many removes from
   52253         a fragment.
   52254 
   52255 2008-02-06  Kevin Ollivier  <kevino (a] theolliviers.com>
   52256 
   52257         Reviewed by Darin Adler.
   52258 
   52259         Rather than directly handing scroll wheel events, use
   52260         PlatformWheelEvent to send them to WebCore first, so that
   52261         mouse wheel scrolling info can be retrieved via JavaScript.
   52262 
   52263         http://bugs.webkit.org/show_bug.cgi?id=17179
   52264 
   52265         * platform/ScrollView.h:
   52266         * platform/wx/MouseWheelEventWx.cpp:
   52267         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
   52268         * platform/wx/ScrollViewWx.cpp:
   52269         (WebCore::ScrollView::ScrollViewPrivate::bindEvents):
   52270         (WebCore::ScrollView::wheelEvent):
   52271         (WebCore::ScrollView::maximumScroll):
   52272 
   52273 2008-02-06  Mark Rowe  <mrowe (a] apple.com>
   52274 
   52275         Fix Windows builds.
   52276 
   52277         * WebCore.vcproj/WebCore.vcproj: Unbreak the XML of the project file.
   52278 
   52279 2008-02-06  Mark Rowe  <mrowe (a] apple.com>
   52280 
   52281         Mac build fix.  Track rename that happened in r30056.
   52282 
   52283         * platform/graphics/mac/GraphicsContextMac.mm:
   52284 
   52285 2008-02-06  Brent Fulgham  <bfulgham (a] gmail.com>
   52286 
   52287         Reviewed by Adam Roben.
   52288 
   52289         http://bugs.webkit.org/show_bug.cgi?id=16979
   52290         Conditionalize CoreGraphics vs Cairo support in Windows port.
   52291 
   52292         * WebCore.vcproj/WebCore.vcproj:
   52293         * bridge/win/FrameCGWin.cpp: Copied from WebCore/bridge/win/FrameWin.cpp.
   52294         (WebCore::imageFromSelection):
   52295         * bridge/win/FrameCairoWin.cpp: Added.
   52296         (WebCore::imageFromSelection):
   52297         * bridge/win/FrameWin.cpp:
   52298         (WebCore::computePageRectsForFrame):
   52299         * platform/graphics/SimpleFontData.h:
   52300         * platform/graphics/cairo/GraphicsContextCairo.cpp:
   52301         * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h: Copied from WebCore/platform/graphics/cairo/GraphicsContextCairo.cpp.
   52302         (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
   52303         (WebCore::GraphicsContextPlatformPrivate::~GraphicsContextPlatformPrivate):
   52304         (WebCore::GraphicsContextPlatformPrivate::beginTransparencyLayer):
   52305         (WebCore::GraphicsContextPlatformPrivate::endTransparencyLayer):
   52306         * platform/graphics/cg/GraphicsContextCG.cpp:
   52307         (WebCore::GraphicsContext::savePlatformState):
   52308         (WebCore::GraphicsContext::restorePlatformState):
   52309         * platform/graphics/cg/GraphicsContextPlatformPrivate.h: Removed.
   52310         * platform/graphics/cg/GraphicsContextPlatformPrivateCG.h: Copied from WebCore/platform/graphics/cg/GraphicsContextPlatformPrivate.h.
   52311         * platform/graphics/win/FontCGWin.cpp: Copied from WebCore/platform/graphics/win/FontWin.cpp.
   52312         (WebCore::Font::drawGlyphs):
   52313         * platform/graphics/win/FontCairoWin.cpp: Added.
   52314         (WebCore::Font::drawGlyphs):
   52315         * platform/graphics/win/FontWin.cpp:
   52316         * platform/graphics/win/GraphicsContextCGWin.cpp: Copied from WebCore/platform/graphics/win/GraphicsContextWin.cpp.
   52317         (WebCore::CGContextWithHDC):
   52318         (WebCore::GraphicsContext::inTransparencyLayer):
   52319         (WebCore::GraphicsContext::getWindowsContext):
   52320         (WebCore::GraphicsContext::releaseWindowsContext):
   52321         (WebCore::GraphicsContextPlatformPrivate::scale):
   52322         (WebCore::GraphicsContextPlatformPrivate::rotate):
   52323         (WebCore::GraphicsContextPlatformPrivate::translate):
   52324         (WebCore::GraphicsContextPlatformPrivate::concatCTM):
   52325         (WebCore::setCGStrokeColor):
   52326         (WebCore::GraphicsContext::drawLineForMisspellingOrBadGrammar):
   52327         * platform/graphics/win/GraphicsContextCairoWin.cpp: Added.
   52328         (WebCore::GraphicsContext::GraphicsContext):
   52329         (WebCore::GraphicsContext::getWindowsContext):
   52330         (WebCore::GraphicsContext::inTransparencyLayer):
   52331         (WebCore::GraphicsContext::releaseWindowsContext):
   52332         (WebCore::GraphicsContext::concatCTM):
   52333         * platform/graphics/win/GraphicsContextWin.cpp:
   52334         * platform/graphics/win/ImageCGWin.cpp: Copied from WebCore/platform/graphics/win/ImageWin.cpp.
   52335         (WebCore::BitmapImage::getHBITMAPOfSize):
   52336         (WebCore::BitmapImage::drawFrameMatchingSourceSize):
   52337         * platform/graphics/win/ImageCairoWin.cpp: Added.
   52338         (WebCore::BitmapImage::getHBITMAPOfSize):
   52339         (WebCore::BitmapImage::drawFrameMatchingSourceSize):
   52340         * platform/graphics/win/ImageWin.cpp:
   52341         * platform/graphics/win/SimpleFontDataCGWin.cpp: Copied from WebCore/platform/graphics/win/SimpleFontDataWin.cpp.
   52342         (WebCore::scaleEmToUnits):
   52343         (WebCore::SimpleFontData::platformInit):
   52344         (WebCore::SimpleFontData::platformWidthForGlyph):
   52345         * platform/graphics/win/SimpleFontDataCairoWin.cpp: Added.
   52346         (WebCore::SimpleFontData::platformInit):
   52347         (WebCore::SimpleFontData::platformDestroy):
   52348         (WebCore::SimpleFontData::platformWidthForGlyph):
   52349         * platform/graphics/win/SimpleFontDataWin.cpp:
   52350         (WebCore::SimpleFontData::setShouldApplyMacAscentHack):
   52351         (WebCore::SimpleFontData::shouldApplyMacAscentHack):
   52352         * platform/win/DragImageCGWin.cpp: Copied from WebCore/platform/win/DragImageWin.cpp.
   52353         (WebCore::scaleDragImage):
   52354         (WebCore::createDragImageFromImage):
   52355         * platform/win/DragImageCairoWin.cpp: Added.
   52356         (WebCore::scaleDragImage):
   52357         (WebCore::createDragImageFromImage):
   52358         * platform/win/DragImageWin.cpp:
   52359 
   52360 2008-02-06  Anders Carlsson  <andersca (a] apple.com>
   52361 
   52362         Reviewed by Darin.
   52363 
   52364         Change httpBodyFromStream to take the request instead of the stream.
   52365         
   52366         * platform/network/cf/FormDataStreamCFNet.cpp:
   52367         (WebCore::httpBodyFromRequest):
   52368         * platform/network/cf/FormDataStreamCFNet.h:
   52369         * platform/network/cf/ResourceRequestCFNet.cpp:
   52370         (WebCore::ResourceRequest::doUpdateResourceRequest):
   52371 
   52372 2008-02-06  Kevin McCullough  <kmccullough (a] apple.com>
   52373 
   52374         Reviewed by Darin.
   52375 
   52376         - Added manual tests for <rdar://problem/5556374> REGRESSION: cross-domain error when
   52377         one URL uses an explicit port number and another doesn't
   52378 
   52379         * manual-tests/Default-port-frame.html: Added.
   52380         * manual-tests/resources/Default-port-frame-contents.html: Added.
   52381 
   52382 2008-02-06  Oliver Hunt  <oliver (a] apple.com>
   52383 
   52384         Fix windows build
   52385 
   52386         * WebCore.vcproj/build-generated-files.sh:
   52387 
   52388 2008-02-06  Kevin McCullough  <kmccullough (a] apple.com>
   52389 
   52390         Rubberstamped by Darin.
   52391 
   52392         <rdar://problem/5727708> REGRESSION (r29952): Can't send message from Yahoo Mail beta
   52393         - Reverted the change that caused the regression.
   52394 
   52395         * dom/Document.cpp:
   52396         (WebCore::Document::createElement):
   52397         (WebCore::Document::createElementNS):
   52398         (WebCore::Document::getElementById):
   52399         (WebCore::Document::parseQualifiedName):
   52400         (WebCore::Document::createAttributeNS):
   52401         * dom/Document.idl:
   52402 
   52403 2008-02-06  Geoffrey Garen  <ggaren (a] apple.com>
   52404 
   52405         Reviewed by Oliver Hunt.
   52406         
   52407         Fixed <rdar://problem/5728081> REGRESSION: Many leaks on buildbot
   52408 
   52409         The problem was refCount underflow in NamedAttrMap.
   52410         
   52411         Neither our regression tests nor the stress test have yet discovered
   52412         another instance of this problem.
   52413 
   52414         * dom/NamedAttrMap.cpp:
   52415         (WebCore::NamedAttrMap::addAttribute): Changed to use PassRefPtr,
   52416         for fast and correct refCount management. Also, change a rediculously
   52417         slow malloc to a slightly less rediculously slow realloc.
   52418 
   52419         * dom/NamedAttrMap.h:
   52420         (WebCore::NamedAttrMap::insertAttribute): Changed to use PassRefPtr,
   52421         for fast and correct refCount management.
   52422 
   52423         * html/HTMLTokenizer.cpp:
   52424         (WebCore::Token::addAttribute): Use a RefPtr, to guarantee that the
   52425         object starts with a refCount of 1.
   52426 
   52427 2008-02-06  Darin Adler  <darin (a] apple.com>
   52428 
   52429         Reviewed by Tim Hatcher.
   52430 
   52431         - fix <rdar://problem/5723293> NULL-deref crash in PropertyMap::put opening web inspector
   52432           with View Source window as target
   52433 
   52434         * page/InspectorController.cpp:
   52435         (WebCore::canPassNodeToJavaScript): Added. Returns false if the node is in a document with
   52436         JavaScript disabled.
   52437         (WebCore::InspectorController::inspect): Check canPassNodeToJavaScript and do nothing if
   52438         it returns false.
   52439 
   52440 2008-02-06  David Hyatt  <hyatt (a] apple.com>
   52441 
   52442         Fix for bug 16799, object elements should return absolute URLs from .data.
   52443 
   52444         Reviewed by Mark Rowe
   52445 
   52446         * dom/Document.cpp:
   52447         (WebCore::Document::completeURL):
   52448         * html/HTMLAnchorElement.cpp:
   52449         (WebCore::HTMLAnchorElement::href):
   52450         * html/HTMLObjectElement.cpp:
   52451         (WebCore::HTMLObjectElement::data):
   52452 
   52453 2008-02-05  Antti Koivisto  <antti (a] apple.com>
   52454 
   52455         Reviewed by Darin.
   52456 
   52457         <rdar://problem/5726340>
   52458         <video autoplay controls> left in unplayable state if navigated away, then back to, before video finished loading
   52459         
   52460         When moving document in and out from the page cache:
   52461         - Cancel incomplete load by deleting the media player. This guarantees everything is in consistent state.
   52462         - Restart the load if it was aborted in the middle.
   52463 
   52464         * html/HTMLMediaElement.cpp:
   52465         (WebCore::HTMLMediaElement::~HTMLMediaElement):
   52466         (WebCore::HTMLMediaElement::load):
   52467         (WebCore::HTMLMediaElement::willSaveToCache):
   52468         (WebCore::HTMLMediaElement::didRestoreFromCache):
   52469         * html/HTMLMediaElement.h:
   52470         (WebCore::HTMLMediaElement::player):
   52471 
   52472 2008-02-06  Darin Adler  <darin (a] apple.com>
   52473 
   52474         Reviewed by Sam.
   52475 
   52476         - replace calls to put to set up properties with calls to putDirect, to
   52477           prepare for a future change where put won't take attributes any more,
   52478           and for a slight performance boost
   52479 
   52480         * bindings/js/JSAudioConstructor.cpp:
   52481         (WebCore::JSAudioConstructor::JSAudioConstructor): Use putDirect instead of put.
   52482         * bindings/js/JSEventTargetBase.h:
   52483         (WebCore::JSEventTargetPrototype::self): Ditto.
   52484         * bindings/js/JSHTMLOptionElementConstructor.cpp:
   52485         (WebCore::JSHTMLOptionElementConstructor::JSHTMLOptionElementConstructor): Ditto.
   52486         * bindings/js/JSSQLResultSetRowListCustom.cpp:
   52487         (WebCore::JSSQLResultSetRowList::item): Ditto.
   52488 
   52489 2008-02-06  Dan Bernstein  <mitz (a] apple.com>
   52490 
   52491         Reviewed by Darin Adler.
   52492 
   52493         - fix http://bugs.webkit.org/show_bug.cgi?17093
   52494         'border-color' does not animate to the value of 'color' when unspecified
   52495 
   52496         Test: fast/css/transition-color-unspecified.html
   52497 
   52498         * page/AnimationController.cpp:
   52499         (WebCore::ImplicitAnimation::animate): Changed to use the value of the
   52500         'color' property in the source or destination style as the source or
   52501         destination value of properties whose inital value is defined to be the
   52502         computed value of 'color'.
   52503 
   52504 2008-02-06  Dan Bernstein  <mitz (a] apple.com>
   52505 
   52506         Build fix.
   52507 
   52508         * svg/svgtags.in:
   52509 
   52510 2008-02-05  Oliver Hunt  <oliver (a] apple.com>
   52511 
   52512         Build fix -- touch generate-bindings to trigger regeneration of bindings
   52513 
   52514         * bindings/scripts/generate-bindings.pl:
   52515 
   52516 2008-02-05  Oliver Hunt  <oliver (a] apple.com>
   52517 
   52518         RS=Eric.
   52519 
   52520         Re-enable foreignObject by default as it is needed for a number of 
   52521         non-fO related SVG tests and none of the old known crashes occur
   52522         anymore.
   52523 
   52524         * Configurations/WebCore.xcconfig:
   52525         * WebCore.vcproj/WebCore.vcproj:
   52526 
   52527 2008-02-05  Sam Weinig  <sam (a] webkit.org>
   52528 
   52529         Reviewed by Anders Carlsson.
   52530 
   52531         Fix for http://bugs.webkit.org/show_bug.cgi?id=8080
   52532         NodeList (and other DOM lists) items are not enumeratable using for..in
   52533 
   52534         - Match Firefox when enumerating DOM interfaces with indexGetters (support for 
   52535           the array bracket, nodeList[0], notation) by including all the items in the
   52536           list before the attributes and methods of the interface.
   52537 
   52538         Test: fast/dom/domListEnumeration.html
   52539 
   52540         * ForwardingHeaders/kjs/PropertyNameArray.h: Added.
   52541         * bindings/js/JSDOMWindowCustom.cpp:
   52542         (WebCore::JSDOMWindow::customGetPropertyNames): Use the new custom method model. 
   52543         * bindings/js/JSHistoryCustom.cpp:
   52544         (WebCore::JSHistory::customGetPropertyNames): ditto.
   52545         * bindings/scripts/CodeGeneratorJS.pm: Instead of just adding a declaration of
   52546         getProperyNames and implementing the method in the Custom.cpp, move to a the 
   52547         model used by generated getOwnPropertySlot() and put() where the custom code
   52548         is written in a separate customGetPropertyNames which returns a bool indicating
   52549         whether to call up to the base class.  This enables adding the list indexes
   52550         to the PropertyNameArray for interfaces with indexGetters automatically.
   52551 
   52552 2008-02-05  Samuel Weinig  <sam (a] webkit.org>
   52553 
   52554         Reviewed by Darin Adler.
   52555 
   52556         Fix for <rdar://problem/5726604> 
   52557         dom-checker: deleting properties of the window object cross-domain should not be allowed
   52558 
   52559         Fix flaw found while testing with dom-checker testing tool (http://code.google.com/p/dom-checker/).
   52560 
   52561         Test: http/tests/security/cross-frame-access-delete.html
   52562 
   52563         * bindings/js/JSDOMWindowCustom.cpp:
   52564         (WebCore::JSDOMWindow::deleteProperty): Override deleteProperty to not delete cross-domain.
   52565         * bindings/js/JSHistoryCustom.cpp:
   52566         (WebCore::JSHistory::deleteProperty): ditto.
   52567         * bindings/js/JSLocation.cpp:
   52568         (WebCore::JSLocation::deleteProperty): ditto.
   52569         * bindings/js/JSLocation.h:
   52570 
   52571         * bindings/scripts/CodeGeneratorJS.pm: Add deleteProperty declaration when CustomDeleteProperty is used.
   52572         * page/DOMWindow.idl: Add CustomDeleteProperty extended attribute.
   52573         * page/History.idl: ditto.
   52574 
   52575 2008-02-05  Alp Toker  <alp (a] atoker.com>
   52576 
   52577         Rubber-stamped by Mark Rowe.
   52578 
   52579         Fix a "missing sentinel in function call" warning by using NULL
   52580         instead of 0.
   52581 
   52582         * platform/gtk/RenderThemeGtk.cpp:
   52583         (WebCore::RenderThemeGtk::caretBlinkFrequency):
   52584 
   52585 2008-02-05  Nikolas Zimmermann  <zimmermann (a] kde.org>
   52586 
   52587         Reviewed by Oliver.
   52588 
   52589         Fix dynamic updates of <circle> element's properties.
   52590 
   52591         Added tests: svg/dynamic-updates/SVGCircleElement*
   52592 
   52593         * svg/SVGCircleElement.cpp:
   52594         (WebCore::SVGCircleElement::svgAttributeChanged): Mixed up cxAttr/xAttr etc.
   52595         * svg/SVGCircleElement.h:
   52596 
   52597 2008-02-05  Rodney Dawes  <dobey (a] wayofthemonkey.com>
   52598 
   52599         Wx build fix.  Add WebCore/plugins to the include path.
   52600 
   52601         * webcore-base.bkl:
   52602 
   52603 2008-02-05  Mark Rowe  <mrowe (a] apple.com>
   52604 
   52605         Mac build fix.  Update the Xcode project to follow a moved file,
   52606         and track a rename in two files that were missed earlier.
   52607 
   52608         * WebCore.xcodeproj/project.pbxproj:
   52609         * page/mac/WebCoreFrameBridge.mm:
   52610         (-[WebCoreFrameBridge canProvideDocumentSource]):
   52611         * platform/mac/PlugInInfoStoreMac.mm:
   52612         (WebCore::PluginInfoStore::pluginNameForMIMEType):
   52613 
   52614 2008-02-05  Nikolas Zimmermann  <zimmermann (a] kde.org>
   52615 
   52616         Reviewed by Holger.
   52617 
   52618         Fixes: http://bugs.webkit.org/show_bug.cgi?id=17185
   52619         Fix dynamic SVG DOM updates of <a> element's href property.
   52620 
   52621         This commit also introduces a new SVG Tests framework: LayoutTests/svg/dynamic-updates
   52622         Its purpose is to provide dynamic updating tests for each SVG class & property, aka.
   52623         one test per property per class. As a first pass it's sufficient to add testcases for all
   52624         SVG*Element classes, and their properties - and only common-used base-class properties.
   52625 
   52626         For SVGAElement - for example - it makes most sense to test scripting its parent
   52627         SVGURIReference object ('href' property) and its own property 'target'.
   52628 
   52629         Adding tests to see - for example - if SVGAElement reacts on changes on ie. its parent
   52630         SVGExternalResourcesRequired interface, should really be done in a second pass.
   52631 
   52632         All tests within the new framework are supposed to be created using make-js-tests-wrappers.
   52633 
   52634         Added test: svg/dynamic-updates/SVGAElement-dom-href-attr.js
   52635         Added test: svg/dynamic-updates/SVGAElement-dom-target-attr.js
   52636         Added test: svg/dynamic-updates/SVGAElement-svgdom-href-prop.js
   52637         Added test: svg/dynamic-updates/SVGAElement-svgdom-target-prop.js
   52638 
   52639         * svg/SVGAElement.cpp:
   52640         (WebCore::SVGAElement::parseMappedAttribute): Move any setChanged() handling in svgAttributeChanged.
   52641         (WebCore::SVGAElement::svgAttributeChanged):
   52642         (WebCore::SVGAElement::defaultEventHandler): Use href() not getAttribute(hrefAttr) - otherwhise SVG DOM updates fail!
   52643         * svg/SVGAElement.h:
   52644 
   52645 2008-02-05  Justin Garcia  <justin.garcia (a] apple.com>
   52646 
   52647         Reviewed by Alexey Proskuryakov.
   52648 
   52649         <rdar://problem/5685601> webkit-block-placeholder class on placeholders seems unnecessary (12317)
   52650 
   52651         * editing/CompositeEditCommand.cpp:
   52652         (WebCore::createBlockPlaceholderElement): The khtml-block-placeholder class was needed
   52653         when the editing code actively looked for <br>s of that type in order to handle them
   52654         specially.  That is no longer the case.
   52655         * editing/InsertParagraphSeparatorCommand.cpp:
   52656         (WebCore::InsertParagraphSeparatorCommand::doApply): Fixed a bug where an extra block
   52657         would be inserted when hitting return inside an editable root held open by a placeholder
   52658         <br> or '\n'.  Added test cases for the bug and for the special case code that was incorrectly
   52659         triggered to cause the bug. 
   52660 
   52661 2008-02-05  Rodney Dawes  <dobey (a] wayofthemonkey.com>
   52662 
   52663         Reviewed by Anders Carlsson.
   52664 
   52665         Part one of http://bugs.webkit.org/show_bug.cgi?id=16924.
   52666         Shared PluginDatabase, PluginInfoStore and PluginPackage implementations.
   52667 
   52668         Remove the Win suffix on several plugin-related classes that will
   52669         soon be refactored to be more portable.
   52670 
   52671         * WebCore.vcproj/WebCore.vcproj:
   52672         * bindings/js/kjs_navigator.cpp:
   52673         (KJS::PluginBase::cachePluginDataIfNecessary):
   52674         * bindings/js/kjs_window.cpp:
   52675         * bridge/win/FrameWin.cpp:
   52676         (WebCore::Frame::createScriptInstanceForWidget):
   52677         * dom/Clipboard.cpp:
   52678         * dom/DOMImplementation.cpp:
   52679         (WebCore::DOMImplementation::createDocument):
   52680         * loader/FrameLoader.cpp:
   52681         (WebCore::FrameLoader::shouldUsePlugin):
   52682         * page/DragController.cpp:
   52683         * platform/PlugInInfoStore.h: Removed.
   52684         * platform/gtk/TemporaryLinkStubs.cpp:
   52685         (PluginInfoStore::createPluginInfoForPluginAtIndex):
   52686         (PluginInfoStore::pluginCount):
   52687         (PluginInfoStore::pluginNameForMIMEType):
   52688         (WebCore::PluginInfoStore::supportsMIMEType):
   52689         * platform/qt/PlugInInfoStoreQt.cpp:
   52690         (WebCore::PluginInfoStore::createPluginInfoForPluginAtIndex):
   52691         (WebCore::PluginInfoStore::pluginCount):
   52692         (WebCore::PluginInfoStore::pluginNameForMIMEType):
   52693         (WebCore::PluginInfoStore::supportsMIMEType):
   52694         * platform/qt/TemporaryLinkStubs.cpp:
   52695         * platform/win/SharedTimerWin.cpp:
   52696         (WebCore::TimerWindowWndProc):
   52697         * platform/wx/TemporaryLinkStubs.cpp:
   52698         (PluginInfoStore::createPluginInfoForPluginAtIndex):
   52699         (PluginInfoStore::pluginCount):
   52700         (WebCore::PluginInfoStore::supportsMIMEType):
   52701         (PluginInfoStore::pluginNameForMIMEType):
   52702         * plugins/PluginDatabase.h: Copied from WebCore/plugins/win/PluginDatabaseWin.h.
   52703         * plugins/PluginInfoStore.cpp: Copied from WebCore/plugins/win/PlugInInfoStoreWin.cpp.
   52704         (WebCore::PluginInfoStore::createPluginInfoForPluginAtIndex):
   52705         (WebCore::PluginInfoStore::pluginCount):
   52706         (WebCore::PluginInfoStore::pluginNameForMIMEType):
   52707         (WebCore::PluginInfoStore::supportsMIMEType):
   52708         (WebCore::refreshPlugins):
   52709         * plugins/PluginInfoStore.h: Copied from WebCore/platform/PlugInInfoStore.h.
   52710         * plugins/PluginPackage.h: Copied from WebCore/plugins/win/PluginPackageWin.h.
   52711         (WebCore::PluginPackageHash::hash):
   52712         (WebCore::PluginPackageHash::equal):
   52713         (WTF::):
   52714         * plugins/PluginView.h: Copied from WebCore/plugins/win/PluginViewWin.h.
   52715         (WebCore::PluginView::plugin):
   52716         * plugins/npapi.cpp: Copied from WebCore/plugins/win/npapi.cpp.
   52717         (pluginViewForInstance):
   52718         (NPN_UserAgent):
   52719         * plugins/win/PlugInInfoStoreWin.cpp: Removed.
   52720         * plugins/win/PluginDatabaseWin.cpp:
   52721         (WebCore::PluginDatabase::installedPlugins):
   52722         (WebCore::PluginDatabase::addExtraPluginPath):
   52723         (WebCore::PluginDatabase::refresh):
   52724         (WebCore::PluginDatabase::plugins):
   52725         (WebCore::addPluginsFromRegistry):
   52726         (WebCore::PluginDatabase::getPluginsInPaths):
   52727         (WebCore::PluginDatabase::defaultPluginPaths):
   52728         (WebCore::PluginDatabase::isMIMETypeRegistered):
   52729         (WebCore::PluginDatabase::pluginForMIMEType):
   52730         (WebCore::PluginDatabase::MIMETypeForExtension):
   52731         (WebCore::PluginDatabase::findPlugin):
   52732         (WebCore::PluginDatabase::createPluginView):
   52733         * plugins/win/PluginDatabaseWin.h: Removed.
   52734         * plugins/win/PluginPackageWin.cpp:
   52735         (WebCore::PluginPackage::~PluginPackage):
   52736         (WebCore::PluginPackage::freeLibrarySoon):
   52737         (WebCore::PluginPackage::freeLibraryTimerFired):
   52738         (WebCore::PluginPackage::PluginPackage):
   52739         (WebCore::PluginPackage::compareFileVersion):
   52740         (WebCore::PluginPackage::storeFileVersion):
   52741         (WebCore::PluginPackage::isPluginBlacklisted):
   52742         (WebCore::PluginPackage::fetchInfo):
   52743         (WebCore::PluginPackage::load):
   52744         (WebCore::PluginPackage::unload):
   52745         (WebCore::PluginPackage::unloadWithoutShutdown):
   52746         (WebCore::PluginPackage::createPackage):
   52747         (WebCore::PluginPackage::hash):
   52748         (WebCore::PluginPackage::equal):
   52749         * plugins/win/PluginPackageWin.h: Removed.
   52750         * plugins/win/PluginViewWin.cpp:
   52751         (WebCore::PluginRequest::PluginRequest):
   52752         (WebCore::PluginMessageThrottlerWin::PluginMessageThrottlerWin):
   52753         (WebCore::registerPluginView):
   52754         (WebCore::PluginViewWndProc):
   52755         (WebCore::PluginView::popPopupsStateTimerFired):
   52756         (WebCore::PluginView::wndProc):
   52757         (WebCore::PluginView::updateWindow):
   52758         (WebCore::PluginView::windowClipRect):
   52759         (WebCore::PluginView::setFrameGeometry):
   52760         (WebCore::PluginView::geometryChanged):
   52761         (WebCore::PluginView::setFocus):
   52762         (WebCore::PluginView::show):
   52763         (WebCore::PluginView::hide):
   52764         (WebCore::PluginView::paintMissingPluginIcon):
   52765         (WebCore::PluginView::dispatchNPEvent):
   52766         (WebCore::PluginView::paint):
   52767         (WebCore::PluginView::handleKeyboardEvent):
   52768         (WebCore::PluginView::handleMouseEvent):
   52769         (WebCore::PluginView::handleEvent):
   52770         (WebCore::PluginView::setParent):
   52771         (WebCore::PluginView::attachToWindow):
   52772         (WebCore::PluginView::detachFromWindow):
   52773         (WebCore::PluginView::setNPWindowRect):
   52774         (WebCore::PluginView::start):
   52775         (WebCore::PluginView::stop):
   52776         (WebCore::PluginView::setCurrentPluginView):
   52777         (WebCore::PluginView::currentPluginView):
   52778         (WebCore::PluginView::performRequest):
   52779         (WebCore::PluginView::requestTimerFired):
   52780         (WebCore::PluginView::scheduleRequest):
   52781         (WebCore::PluginView::load):
   52782         (WebCore::PluginView::getURLNotify):
   52783         (WebCore::PluginView::getURL):
   52784         (WebCore::PluginView::handlePost):
   52785         (WebCore::PluginView::postURLNotify):
   52786         (WebCore::PluginView::postURL):
   52787         (WebCore::PluginView::newStream):
   52788         (WebCore::PluginView::write):
   52789         (WebCore::PluginView::destroyStream):
   52790         (WebCore::PluginView::userAgent):
   52791         (WebCore::PluginView::status):
   52792         (WebCore::PluginView::getValue):
   52793         (WebCore::PluginView::setValue):
   52794         (WebCore::PluginView::invalidateTimerFired):
   52795         (WebCore::PluginView::invalidateRect):
   52796         (WebCore::PluginView::invalidateRegion):
   52797         (WebCore::PluginView::forceRedraw):
   52798         (WebCore::PluginView::pushPopupsEnabledState):
   52799         (WebCore::PluginView::popPopupsEnabledState):
   52800         (WebCore::PluginView::arePopupsAllowed):
   52801         (WebCore::PluginView::bindingInstance):
   52802         (WebCore::PluginView::~PluginView):
   52803         (WebCore::PluginView::disconnectStream):
   52804         (WebCore::PluginView::determineQuirks):
   52805         (WebCore::PluginView::setParameters):
   52806         (WebCore::PluginView::PluginView):
   52807         (WebCore::PluginView::init):
   52808         (WebCore::PluginView::didReceiveResponse):
   52809         (WebCore::PluginView::didReceiveData):
   52810         (WebCore::PluginView::didFinishLoading):
   52811         (WebCore::PluginView::didFail):
   52812         (WebCore::PluginView::setCallingPlugin):
   52813         (WebCore::PluginView::isCallingPlugin):
   52814         * plugins/win/PluginViewWin.h: Removed.
   52815         * plugins/win/npapi.cpp: Removed.
   52816 
   52817 2008-02-05  Alexey Proskuryakov  <ap (a] webkit.org>
   52818 
   52819         Reviewed by Darin.
   52820 
   52821         http://bugs.webkit.org/show_bug.cgi?id=17158
   52822         Setting innerHTML in a detached XHTML element doesn't use the right namespace
   52823 
   52824         Test: fast/dom/innerHTML-detached-element.xhtml
   52825 
   52826         * dom/XMLTokenizer.cpp: (WebCore::XMLTokenizer::XMLTokenizer): Take parent element namespace
   52827         into account.
   52828 
   52829 2008-02-05  Antti Koivisto  <antti (a] apple.com>
   52830 
   52831         Reviewed by Geoff.
   52832         
   52833         Fix <rdar://problem/5698200>
   52834         eBay photo uploading hangs and causes slow script warning to pop up
   52835         
   52836         In a case like this
   52837         
   52838             var f = window.parent.parentFunction;
   52839             document.domain = document.domain; // this makes window.parent inaccessible
   52840             f();
   52841         
   52842         Firefox allows parentFunction to access parents properties. Match this behavior.
   52843         
   52844         In a domain security check against the dynamic global object fails for the specific reason that one of 
   52845         the frames has written to the document.domain property and another has not (but they match otherwise), 
   52846         then recheck against the lexical global object.
   52847 
   52848         Test: http/tests/security/cross-frame-access-callback-explicit-domain-ALLOW.html
   52849               http/tests/security/cross-frame-access-callback-explicit-domain-DENY.html
   52850 
   52851         * bindings/js/kjs_window.cpp:
   52852         (KJS::Window::allowsAccessFrom):
   52853         (KJS::Window::printErrorMessage):
   52854         * bindings/js/kjs_window.h:
   52855         * loader/FrameLoader.cpp:
   52856         (WebCore::FrameLoader::shouldAllowNavigation):
   52857         * platform/SecurityOrigin.cpp:
   52858         (WebCore::SecurityOrigin::canAccess):
   52859         * platform/SecurityOrigin.h:
   52860         (WebCore::SecurityOrigin::):
   52861 
   52862 2008-02-05  Adam Roben  <aroben (a] apple.com>
   52863 
   52864         Remove an unused member from Document
   52865 
   52866         Reviewed by Mitz.
   52867 
   52868         * dom/Document.cpp:
   52869         (WebCore::Document::recalcStyleSelector): There's no need to take
   52870         m_printSheet into account anymore as it's never anything but the null
   52871         string.
   52872         * dom/Document.h: Removed m_printSheet and methods relating to it.
   52873 
   52874 2008-02-05  Dan Bernstein  <mitz (a] apple.com>
   52875 
   52876         Reviewed by Darin Adler.
   52877 
   52878         - WebCore part of <rdar://problem/5724303> Should implement writing direction shortcuts
   52879 
   52880         * WebCore.base.exp: Added Editor::setBaseWritingDirection() and
   52881         Frame::baseWritingDirectionForSelectionStart().
   52882         * page/mac/WebCoreFrameBridge.h: Removed
   52883         -baseWritingDirectionForSelectionStart.
   52884         * page/mac/WebCoreFrameBridge.mm: Ditto.
   52885 
   52886 2008-02-05  Mark Rowe  <mrowe (a] apple.com>
   52887 
   52888         Reviewed by Oliver Hunt.
   52889 
   52890         Update versioning to support the mysterious future.
   52891 
   52892         * Configurations/Version.xcconfig: Add SYSTEM_VERSION_PREFIX_1060.
   52893 
   52894 2008-02-05  Mark Rowe  <mrowe (a] apple.com>
   52895 
   52896         Fix the wxWidget Mac build by avoiding using ICU functions that were added after ICU 3.2.
   52897 
   52898         * editing/SmartReplaceICU.cpp:
   52899         (WebCore::addAllCodePoints): Implement a replacement for uset_addAllCodePoints.
   52900         (WebCore::getSmartSet): Use addAllCodePoints instead of uset_addAllCodePoints.
   52901 
   52902 2008-02-05  Mark Rowe  <mrowe (a] apple.com>
   52903 
   52904         Rubber-stamped by Oliver Hunt.
   52905 
   52906         30,000!
   52907 
   52908         * ChangeLog: Point out revision 30,000.
   52909 
   52910 2008-02-04  Mark Rowe  <mrowe (a] apple.com>
   52911 
   52912         Unreviewed Gtk build fix.
   52913 
   52914         wchar_t is only convertible to UChar on Windows.  Use WebCore's String class
   52915         to get the UChars out of a C string in a portable fashion.
   52916 
   52917         * editing/SmartReplaceICU.cpp:
   52918         (WebCore::getSmartSet):
   52919 
   52920 2008-02-04  Tony Chang  <idealisms (a] gmail.com>
   52921 
   52922         Reviewed by Darin Adler.
   52923 
   52924         Port the CoreFoundation version of WebCore::isCharacterSmartReplaceExempt
   52925         for other platforms by using ICU directly.
   52926 
   52927         * GNUmakefile.am: Add SmartReplaceICU.cpp.
   52928         * WebCore.pro: Ditto.
   52929         * WebCoreSources.bkl: Ditto.
   52930         * editing/SmartReplace.cpp: Don't use this empty implementation when ICU is available.
   52931         * editing/SmartReplaceICU.cpp:
   52932         (getSmartSet):
   52933         (WebCore::isCharacterSmartReplaceExempt):
   52934 
   52935 2008-02-04  Robert Sesek  <rsesek (a] bluestatic.org>
   52936 
   52937         Reviewed by Darin Adler.
   52938 
   52939         Fix http://bugs.webkit.org/show_bug.cgi?id=17042
   52940         forms without action attributes submit to the <base> href instead of the originating page
   52941 
   52942         Test: fast/forms/missing-action.html
   52943 
   52944         * html/HTMLFormElement.cpp:
   52945         (WebCore::HTMLFormElement::submit): Submit to origin if there is no action
   52946 
   52947 2008-02-04  Mark Rowe  <mrowe (a] apple.com>
   52948 
   52949         Reviewed by Tim Hatcher.
   52950 
   52951         Gtk build fix.  Use std::numeric_limits in place of ULLONG_MAX as
   52952         some Linux machines do not have ULLONG_MAX.
   52953 
   52954         OriginUsageRecord::unknownDiskUsage becomes a static function to avoid
   52955         the global initialiser which would otherwise be generated.
   52956 
   52957         * storage/OriginUsageRecord.cpp:
   52958         (WebCore::OriginUsageRecord::unknownDiskUsage):
   52959         (WebCore::OriginUsageRecord::addDatabase):
   52960         (WebCore::OriginUsageRecord::removeDatabase):
   52961         (WebCore::OriginUsageRecord::markDatabase):
   52962         (WebCore::OriginUsageRecord::diskUsage):
   52963         * storage/OriginUsageRecord.h:
   52964 
   52965 2008-02-04  Mark Rowe  <mrowe (a] apple.com>
   52966 
   52967         Speculative Gtk build fix.
   52968 
   52969         * storage/OriginUsageRecord.cpp:
   52970 
   52971 2008-02-04  Brady Eidson  <beidson (a] apple.com>
   52972 
   52973         Attempt to fix build of all non-Mac platforms
   52974 
   52975         * GNUmakefile.am:
   52976         * WebCore.pro:
   52977         * WebCore.vcproj/WebCore.vcproj:
   52978         * WebCoreSources.bkl:
   52979 
   52980 2008-02-04  Brady Eidson  <beidson (a] apple.com>
   52981 
   52982         Reviewed by Darin
   52983 
   52984         Fix for <rdar://problem/5628468> - Quotas need to be implemented per-origin, and not per-database
   52985 
   52986         To accomplish this, we need to track the sizes of all databases in an origin to constantly keep an up to date
   52987         count of the origin's total disk usage.  I've introduced the OriginQuotaManager and OriginUsageRecord classes
   52988         to accomplish this.
   52989 
   52990         Whenever a transaction is known to mutate the size of a database (tracked by the DatabaseAuthorizer), it marks
   52991         that database as unknown in the OriginQuotaManager.  When a transaction later comes along to ask the 
   52992         OriginQuotaManager the usage for that origin, it stat's all of the unknown databases in the origin and returns
   52993         the result.
   52994 
   52995         Since the OriginQuotaManager is interesting from both the main thread and a DatabaseThread, all accessors it 
   52996         provides require it to be locked first.  ASSERTs help guarantee this is always the case.
   52997 
   52998         Layout test will involve adding functionality to DRT on multiple platforms and will be coming up shortly
   52999 
   53000         * WebCore.xcodeproj/project.pbxproj:
   53001 
   53002         * platform/SecurityOrigin.h: Changed to be ThreadSafeShared instead of RefCounted
   53003 
   53004         * storage/Database.cpp:
   53005         (WebCore::Database::databaseSize): Return the current filesize of this database on disk
   53006         (WebCore::Database::maximumSize): Added - calculates maximum size of this database based on quota and usage
   53007         * storage/Database.h: Add databaseSize() accessor, and get rid of unused declared methods that *were* going 
   53008           to be the solution for this bug.
   53009 
   53010         * storage/DatabaseTracker.cpp:
   53011         (WebCore::DatabaseTracker::originQuotaManager): Accessor to the OriginQuotaManager which is lazily created
   53012         (WebCore::DatabaseTracker::canEstablishDatabase): Fetch the usage for this database slightly earlier, which
   53013           will ensure that the OriginQuotaManager is primed to track this origin
   53014         (WebCore::DatabaseTracker::fullPathForDatabase): Ditto
   53015         (WebCore::DatabaseTracker::populateOrigins): Create the OriginQuotaManager here.
   53016         (WebCore::DatabaseTracker::usageForOrigin): Use the OriginQuotaManager instead of looping through each database
   53017           in the origin
   53018         (WebCore::DatabaseTracker::deleteOrigin): Remove this origin from the OriginQuotaManager as it is no longer 
   53019           interesting
   53020         (WebCore::DatabaseTracker::deleteDatabase): Remove this database from the OriginQuotaManager as it is no longer
   53021           interesting
   53022         * storage/DatabaseTracker.h:
   53023 
   53024         * storage/OriginQuotaManager.cpp: Added.
   53025         (WebCore::OriginQuotaManager::OriginQuotaManager):
   53026         (WebCore::OriginQuotaManager::lock):
   53027         (WebCore::OriginQuotaManager::unlock):
   53028         (WebCore::OriginQuotaManager::trackOrigin): Add an origin to be tracked.  Useful for when the very first database 
   53029           in a new origin is still in the process of being created
   53030         (WebCore::OriginQuotaManager::tracksOrigin):
   53031         (WebCore::OriginQuotaManager::addDatabase):
   53032         (WebCore::OriginQuotaManager::removeDatabase):
   53033         (WebCore::OriginQuotaManager::removeOrigin): Removes all records in a certain origin from being tracked
   53034         (WebCore::OriginQuotaManager::markDatabase): Mark a specific database as having an unknown size - called when the
   53035           DatabaseAuthorizer in a SQLTransaction knows the file size might change.
   53036         (WebCore::OriginQuotaManager::diskUsage): Returns the disk usage for the given origin
   53037         * storage/OriginQuotaManager.h: Added.
   53038 
   53039         * storage/OriginUsageRecord.cpp: Added.
   53040         (WebCore::OriginUsageRecord::OriginUsageRecord):
   53041         (WebCore::OriginUsageRecord::addDatabase): Adds an entry for the database in this origin's record
   53042         (WebCore::OriginUsageRecord::removeDatabase): Removes that entry
   53043         (WebCore::OriginUsageRecord::markDatabase): Marks the database as of unknown size
   53044         (WebCore::OriginUsageRecord::diskUsage): Returns the cached disk usage value, or recalculates it if any databases
   53045           are marked
   53046         * storage/OriginUsageRecord.h: Added.
   53047 
   53048         * storage/SQLTransaction.cpp:
   53049         (WebCore::SQLTransaction::openTransactionAndPreflight): Use Database::maximumSize() instead of attributing the
   53050           entire quota to each database.
   53051         (WebCore::SQLTransaction::runStatements): Use Database::maximumSize() instead of attributing the entire quota
   53052           to each database.
   53053         (WebCore::SQLTransaction::runCurrentStatement): Mark this databases's size as unknown in the 
   53054           OriginQuotaManager if this statement will change the size of the database
   53055         * storage/SQLTransaction.h:
   53056 
   53057 2008-02-04   David Harrison  <harrison (a] apple.com>
   53058 
   53059         Reviewed by Darin Adler.
   53060 
   53061         <rdar://problem/5607381> CrashTracer: [REGRESSION] 1748 crashes in Safari at com.apple.WebCore: WebCore::Image::width const + 24
   53062 
   53063         Use an empty image when the local image file could not be loaded.
   53064 
   53065         No test case because it would require forcing tiff load failure.
   53066         
   53067         * editing/DeleteButtonController.cpp:
   53068         (WebCore::DeleteButtonController::createDeletionUI):
   53069         Do not present the deletion UI in the (odd) event that the delete button could not be loaded.
   53070         
   53071         * platform/graphics/mac/ImageMac.mm:
   53072         (WebCore::Image::loadPlatformResource):
   53073         Return an empty image instead of 0 if the load fails.
   53074 
   53075 2008-02-04  Darin Adler  <darin (a] apple.com>
   53076 
   53077         * dom/Document.cpp:
   53078         (WebCore::Document::completeURL): Fixed misleading comment.
   53079 
   53080 2008-02-04  Jon Honeycutt  <jhoneycutt (a] apple.com>
   53081 
   53082         Reviewed by Darin.
   53083 
   53084         Blacklist Silverlight versions older than min required, not newer. 
   53085 
   53086         * plugins/win/PluginPackageWin.cpp:
   53087         (WebCore::PluginPackageWin::isPluginBlacklisted):
   53088 
   53089 2008-02-04  David Hyatt  <hyatt (a] apple.com>
   53090 
   53091         Fix for bug 16751, misparsing of html*.test in CSS.
   53092 
   53093         Reviewed by darin
   53094 
   53095         Added fast/css/simple-selector-chain-parsing.html
   53096 
   53097         * css/CSSGrammar.y:
   53098 
   53099 2008-02-04  Darin Adler  <darin (a] apple.com>
   53100 
   53101         Suggested by Geoff and Maciej.
   53102 
   53103         * bindings/js/JSCustomSQLTransactionCallback.cpp: Reworded a misleading
   53104         comment to be correct.
   53105 
   53106 2008-02-04  Jon Honeycutt  <jhoneycutt (a] apple.com>
   53107 
   53108         Reviewed by Steve, Anders.
   53109 
   53110         <rdar://problem/5211187> QuickTime and Flash plug-ins draw outside of
   53111         content area when inside an iframe or div with overflow when playing a
   53112         movie and scrolling the iframe/div area
   53113 
   53114         Clip the update region to the zero rect when scrolling. Don't do this
   53115         for Java, because it results in repaint problems. 
   53116 
   53117         * plugins/PluginQuirkSet.h: Added the DontClipToZeroRectWhenScrolling
   53118         quirk
   53119         * plugins/win/PluginViewWin.cpp:
   53120         (WebCore::PluginViewWin::updateWindow): Readded the old behavior of
   53121         clipping to the zero rect when updating the window during a scroll.
   53122         Added plug-in quirk to ignore this behavior for Java. Swapped order of
   53123         the SetWindowRgn() and MoveWindow() calls to prevent Java from painting
   53124         outside of its container during a scroll.
   53125         (WebCore::PluginViewWin::determineQuirks): If this is Java, add the
   53126         DontClipToZeroRectWhenScrolling quirk.
   53127 
   53128 2008-02-04  Timothy Hatcher  <timothy (a] apple.com>
   53129 
   53130         Reviewed by Mark Rowe.
   53131 
   53132         <rdar://problem/5722972> Leopard needs to statically link SQLite
   53133 
   53134         * Configurations/Base.xcconfig: Always have a header search path for WebCoreSQLite3.
   53135         * Configurations/DebugRelease.xcconfig: Ditto.
   53136         * Configurations/WebCore.xcconfig: Always link against WebCoreSQLite3.
   53137 
   53138 2008-02-04  Adam Roben  <aroben (a] apple.com>
   53139 
   53140         Windows build fix
   53141 
   53142         * bindings/scripts/CodeGeneratorCOM.pm: Touched to force a rebuild of
   53143         the COM bindings.
   53144 
   53145 2008-02-04   David Harrison  <harrison (a] apple.com>
   53146 
   53147         Reviewed by Tim Hatcher.
   53148 
   53149         - fix <rdar://problem/5715481> REGRESSION (r26499): JavaScript document.lastModified is not supported
   53150 
   53151         Re-add attribute inadvertantly lost by r26499.
   53152 
   53153         Test: fast/js/lastModified.html: Added.
   53154 
   53155         * dom/Document.idl:
   53156         Add lastModified.
   53157 
   53158 2008-02-04  Darin Adler  <darin (a] apple.com>
   53159 
   53160         Reviewed by Geoff.
   53161 
   53162         - fix <rdar://problem/5713621> Threading issue when destroying database transaction callback
   53163 
   53164         Do main-thread-only stuff on the main thread.
   53165 
   53166         Not clear how to make a regression test for this.
   53167 
   53168         * bindings/js/JSCustomSQLTransactionCallback.cpp:
   53169         (WebCore::JSCustomSQLTransactionCallback::Data::Data): Added.
   53170         (WebCore::JSCustomSQLTransactionCallback::Data::callback): Added.
   53171         (WebCore::JSCustomSQLTransactionCallback::Data::frame): Added.
   53172         (WebCore::JSCustomSQLTransactionCallback::JSCustomSQLTransactionCallback): Put data into a
   53173         separate Data object; we'll destroy it on the main thread.
   53174         (WebCore::JSCustomSQLTransactionCallback::deleteData): Added.
   53175         (WebCore::JSCustomSQLTransactionCallback::~JSCustomSQLTransactionCallback): Call the
   53176         deleteData function on the main thread.
   53177         (WebCore::JSCustomSQLTransactionCallback::handleEvent): Updated to get at fields through the
   53178         m_data object.
   53179         * bindings/js/JSCustomSQLTransactionCallback.h: Declare deleteData, Data, and m_data rather
   53180         than m_callback and m_frame.
   53181 
   53182 2008-02-04  Adam Roben  <aroben (a] apple.com>
   53183 
   53184         Fix the search field if the inpsected Document has overridden
   53185         Document.evaluate or Document.querySelectorAll
   53186 
   53187         Reviewed by Darin.
   53188 
   53189         * manual-tests/inspector-document-methods-override.html: Added.
   53190         * page/InspectorController.cpp:
   53191         (WebCore::InspectorController::didCommitLoad): Reworded a comment to
   53192         force WebCore.vcproj to build.
   53193         * page/inspector/inspector.js: Call
   53194         Document.prototype.{evaluate,querySelectorAll}.call instead of calling
   53195         the functions directly on the inspected Document. This ensures we are
   53196         calling the version of these functions we intended to.
   53197 
   53198 2008-02-04  Darin Adler  <darin (a] apple.com>
   53199 
   53200         Reviewed by Tim Hatcher.
   53201 
   53202         - possible fix for <rdar://problem/5714030> Crash in Database::deliverAllPendingCallbacks()
   53203           reloading a page quickly
   53204 
   53205         I don't fully understand the cause of the crash, but I think this might
   53206         be a helpful change.
   53207 
   53208         * platform/sql/SQLiteTransaction.cpp:
   53209         (WebCore::SQLiteTransaction::commit): If the commit fails, don't leave this
   53210         transaction and database both marked as "still in progress". As far as I can
   53211         tell this does no good, and also seems to do harm.
   53212         (WebCore::SQLiteTransaction::rollback): Ditto.
   53213 
   53214         * storage/Database.cpp:
   53215         (WebCore::Database::performTransactionStep): Add some assertions to
   53216         detect databases stuck in the "transaction in progress" state.
   53217         * storage/SQLTransaction.cpp:
   53218         (WebCore::SQLTransaction::openTransactionAndPreflight): Ditto.
   53219         (WebCore::SQLTransaction::postflightAndCommit): Ditto.
   53220         (WebCore::SQLTransaction::cleanupAfterTransactionErrorCallback): Ditto.
   53221 
   53222 2008-02-04  Darin Adler  <darin (a] apple.com>
   53223 
   53224         Reviewed by Geoff.
   53225 
   53226         - fix <rdar://problem/5715692> REGRESSION (r28570): JavaScript window.scrollTo()
   53227           calls no longer accept 'undefined' values
   53228 
   53229         By default, we should accept non-numeric parameters and non-integral numbers for
   53230         parameters that expect integers, without throwing exceptions.
   53231 
   53232         While creating the test for this, I ran into a couple minor bugs with the
   53233         functions involved, and this patch fixes those too.
   53234 
   53235         Test: fast/dom/non-numeric-values-numeric-parameters.html
   53236 
   53237         * bindings/js/JSHTMLOptionsCollectionCustom.cpp:
   53238         (WebCore::JSHTMLOptionsCollection::add): Added. This function has unusual behavior
   53239         when passed non-integral values for its second parameter, so it needs to be written
   53240         by hand. I think that [Custom] is better here than inventing a new keyword.
   53241 
   53242         * bindings/scripts/CodeGeneratorJS.pm: Changed default for "long" and "unsigned long"
   53243         to ignore errors rather than failing due to type differences. Also changed a couple
   53244         functions to use hashes.
   53245 
   53246         * css/CSSStyleSheet.h:
   53247         (WebCore::CSSStyleSheet::removeRule): Remove overload of removeRule without a second
   53248         parameters. While we do allow this from JavaScript, it's not a true optional parameter,
   53249         but rather just a case of "you can omit parameters and they are treated as undefined"
   53250         combined with "undefined turns into 0 when passed to a function that takes an integer".
   53251         * css/CSSStyleSheet.idl: Removed [Optional] on the index parameter for removeRule.
   53252         This is not truly an optional parameter.
   53253 
   53254         * dom/ProgressEvent.cpp:
   53255         (WebCore::ProgressEvent::initProgressEvent): Updated this function to match other
   53256         DOM event init functions -- important to do nothing if this is called on the an
   53257         already-dispatched event and we need to respect the bubble and cancelable arguments.
   53258         Also removed initProgressEventNS. We don't support namespaced events, and if we add
   53259         support, it should be across all event classes, not just ProgressEvent.
   53260         * dom/ProgressEvent.h: Removed initProgressEventNS.
   53261         * dom/ProgressEvent.idl: Ditto.
   53262 
   53263         * dom/Range.cpp:
   53264         (WebCore::Range::createContextualFragment): Added a check for 0. This can happen
   53265         if the passed-in start container is a node that's not an HTML element and also
   53266         does not have a parent.
   53267 
   53268         * html/HTMLOptionsCollection.idl: Added the [Custom] attribute to add, since the
   53269         rules for processing its parameters are unusual.
   53270 
   53271         * page/DOMSelection.cpp: Removed the version of setPosition that has only
   53272         one parameter. The offset is not really optional.
   53273         * page/DOMSelection.h: Ditto.
   53274         * page/DOMSelection.idl: Removed the [Optional] keyword for the second parameter of
   53275         setPosition. It's not a true optional parameter (see discussion of removeRule above).
   53276 
   53277         * page/DOMWindow.cpp:
   53278         (WebCore::DOMWindow::adjustWindowRect): Simplified logic for constraining the X
   53279         and Y coordinates, in a way that makes them work even when the window coordinates
   53280         are infinite. Also strengthened the assertion.
   53281 
   53282 2008-02-04  Alp Toker  <alp (a] atoker.com>
   53283 
   53284         Rubber-stamped by Mark Rowe.
   53285 
   53286         Remove all trailing whitespace in the GTK+ port and related
   53287         components.
   53288 
   53289         * GNUmakefile.am:
   53290         * page/gtk/DragControllerGtk.cpp:
   53291         (WebCore::DragController::dragOperation):
   53292         (WebCore::DragController::maxDragImageSize):
   53293         * page/gtk/EventHandlerGtk.cpp:
   53294         (WebCore::EventHandler::passWidgetMouseDownEventToWidget):
   53295         (WebCore::EventHandler::createDraggingClipboard):
   53296         * page/gtk/FrameGtk.cpp:
   53297         (WebCore::Frame::dragImageForSelection):
   53298         * platform/graphics/cairo/AffineTransformCairo.cpp:
   53299         (WebCore::AffineTransform::mapRect):
   53300         (WebCore::AffineTransform::isIdentity):
   53301         (WebCore::AffineTransform::operator== ):
   53302         * platform/graphics/cairo/GraphicsContextCairo.cpp:
   53303         (WebCore::GraphicsContext::drawLine):
   53304         * platform/graphics/cairo/ImageBufferCairo.cpp:
   53305         * platform/graphics/cairo/ImageCairo.cpp:
   53306         * platform/graphics/cairo/ImageSourceCairo.cpp:
   53307         (WebCore::createDecoder):
   53308         * platform/graphics/gtk/FontCacheGtk.cpp:
   53309         * platform/graphics/gtk/FontGtk.cpp:
   53310         * platform/graphics/gtk/FontPlatformData.h:
   53311         * platform/graphics/gtk/FontPlatformDataGtk.cpp:
   53312         * platform/graphics/gtk/GlyphPageTreeNodeGtk.cpp:
   53313         * platform/graphics/gtk/IconGtk.cpp:
   53314         * platform/graphics/gtk/ImageGtk.cpp:
   53315         * platform/graphics/gtk/SimpleFontDataGtk.cpp:
   53316         * platform/gtk/ClipboardGtk.h:
   53317         * platform/gtk/ContextMenuItemGtk.cpp:
   53318         (WebCore::ContextMenuItem::createNativeMenuItem):
   53319         * platform/gtk/CursorGtk.cpp:
   53320         * platform/gtk/DragDataGtk.cpp:
   53321         * platform/gtk/DragImageGtk.cpp:
   53322         (WebCore::createDragImageIconForCachedImage):
   53323         * platform/gtk/FileChooserGtk.cpp:
   53324         (WebCore::stringByAdoptingFileSystemRepresentation):
   53325         * platform/gtk/FileSystemGtk.cpp:
   53326         (WebCore::fileExists):
   53327         (WebCore::deleteFile):
   53328         (WebCore::deleteEmptyDirectory):
   53329         * platform/gtk/KeyEventGtk.cpp:
   53330         * platform/gtk/KeyboardCodes.h:
   53331         * platform/gtk/LocalizedStringsGtk.cpp:
   53332         (WebCore::inputElementAltText):
   53333         (WebCore::resetButtonDefaultLabel):
   53334         (WebCore::fileButtonChooseFileLabel):
   53335         (WebCore::fileButtonNoFileSelectedLabel):
   53336         (WebCore::contextMenuItemTagOpenImageInNewWindow):
   53337         * platform/gtk/MIMETypeRegistryGtk.cpp:
   53338         * platform/gtk/MouseEventGtk.cpp:
   53339         * platform/gtk/PasteboardGtk.cpp:
   53340         (WebCore::PasteboardSelectionData::markup):
   53341         (WebCore::Pasteboard::writeSelection):
   53342         * platform/gtk/PasteboardHelper.h:
   53343         * platform/gtk/PlatformScreenGtk.cpp:
   53344         (WebCore::screenDepth):
   53345         (WebCore::screenIsMonochrome):
   53346         (WebCore::screenRect):
   53347         (WebCore::screenAvailableRect):
   53348         * platform/gtk/PlatformScrollBar.h:
   53349         * platform/gtk/PlatformScrollBarGtk.cpp:
   53350         (PlatformScrollbar::PlatformScrollbar):
   53351         (PlatformScrollbar::updateThumbPosition):
   53352         * platform/gtk/PopupMenuGtk.cpp:
   53353         (WebCore::PopupMenu::updateFromElement):
   53354         * platform/gtk/RenderThemeGtk.h:
   53355         * platform/gtk/ScrollViewGtk.cpp:
   53356         (WebCore::ScrollView::scrollBy):
   53357         (WebCore::ScrollView::addChild):
   53358         (WebCore::ScrollView::updateScrollbars):
   53359         (WebCore::ScrollView::windowToContents):
   53360         (WebCore::ScrollView::contentsToWindow):
   53361         (WebCore::ScrollView::scrollbarUnderMouse):
   53362         * platform/gtk/SearchPopupMenuGtk.cpp:
   53363         * platform/gtk/SharedTimerGtk.cpp:
   53364         * platform/gtk/SystemTimeLinux.cpp:
   53365         (WebCore::currentTime):
   53366         * platform/gtk/TemporaryLinkStubs.cpp:
   53367         (PlugInInfoStore::pluginNameForMIMEType):
   53368         * platform/gtk/ThreadingGtk.cpp:
   53369         (WebCore::establishIdentifierForThread):
   53370         (WebCore::threadForIdentifier):
   53371         (WebCore::clearThreadForIdentifier):
   53372         (WebCore::ThreadCondition::ThreadCondition):
   53373         * platform/gtk/WheelEventGtk.cpp:
   53374         * platform/gtk/WidgetGtk.cpp:
   53375         * platform/network/curl/ResourceHandleCurl.cpp:
   53376         * platform/network/curl/ResourceHandleManager.cpp:
   53377         (WebCore::ResourceHandleManager::setupPOST):
   53378         * platform/network/curl/ResourceHandleManager.h:
   53379         * platform/network/curl/ResourceRequest.h:
   53380         (WebCore::ResourceRequest::ResourceRequest):
   53381         * platform/network/curl/ResourceResponse.h:
   53382 
   53383 2008-02-03  Christian Dywan  <christian (a] imendio.com>
   53384 
   53385         Reviewed by Alp Toker.
   53386 
   53387         http://bugs.webkit.org/show_bug.cgi?id=17046
   53388         [GTK] Context menu fixes and customisation suport
   53389 
   53390         Provide standard GTK+ context menu items where appropriate.
   53391 
   53392         Note that this change makes direct use of WebKit from WebCore which is
   53393         against WebKit/GTK+ guidelines. The ContextMenu abstraction should be
   53394         fixed at some point.
   53395 
   53396         * page/ContextMenuController.cpp:
   53397         (WebCore::ContextMenuController::contextMenuItemSelected):
   53398         * platform/ContextMenu.cpp:
   53399         (WebCore::createAndAppendInputMethodsSubMenu):
   53400         (WebCore::insertControlCharacter):
   53401         (WebCore::createAndAppendUnicodeSubMenu):
   53402         (WebCore::ContextMenu::populate):
   53403         (ContextMenu::checkOrEnableIfNeeded):
   53404         * platform/ContextMenuItem.h:
   53405         * platform/LocalizedStrings.h:
   53406         * platform/gtk/ContextMenuItemGtk.cpp:
   53407         (WebCore::gtkStockIDFromContextMenuAction):
   53408         * platform/gtk/LocalizedStringsGtk.cpp:
   53409         (WebCore::gtkStockLabel):
   53410         (WebCore::contextMenuItemTagCopy):
   53411         (WebCore::contextMenuItemTagDelete):
   53412         (WebCore::contextMenuItemTagSelectAll):
   53413         (WebCore::contextMenuItemTagUnicode):
   53414         (WebCore::contextMenuItemTagInputMethods):
   53415         (WebCore::contextMenuItemTagGoBack):
   53416         (WebCore::contextMenuItemTagGoForward):
   53417         (WebCore::contextMenuItemTagStop):
   53418         (WebCore::contextMenuItemTagCut):
   53419         (WebCore::contextMenuItemTagPaste):
   53420         (WebCore::contextMenuItemTagBold):
   53421         (WebCore::contextMenuItemTagItalic):
   53422         (WebCore::contextMenuItemTagUnderline):
   53423 
   53424 2008-02-03  Oliver Hunt  <oliver (a] apple.com>
   53425 
   53426         Reviewed by Maciej.
   53427 
   53428         Bug 17169: Support transform on Canvas
   53429 
   53430         Nice and simple patch as the cross-platform code to apply
   53431         a transform was already there.
   53432 
   53433         Tests: fast/canvas/canvas-transform-identity.html
   53434                fast/canvas/canvas-transform-infinity.html
   53435                fast/canvas/canvas-transform-multiply.html
   53436                fast/canvas/canvas-transform-nan.html
   53437                fast/canvas/canvas-transform-skewed.html
   53438 
   53439         * html/CanvasRenderingContext2D.cpp:
   53440         (WebCore::CanvasRenderingContext2D::transform):
   53441         * html/CanvasRenderingContext2D.h:
   53442         * html/CanvasRenderingContext2D.idl:
   53443 
   53444 2008-02-03  Nikolas Zimmermann  <zimmermann (a] kde.org>
   53445 
   53446         Reviewed by Oliver.
   53447 
   53448         Fix mistake in SVGImageElement, breaking "Dock" example of carto.net
   53449         It was comparing against the wrong attribute names in svgAttributeChanged().
   53450 
   53451         Added testcase: svg/custom/js-update-image.svg
   53452 
   53453         * svg/SVGImageElement.cpp:
   53454         (WebCore::SVGImageElement::svgAttributeChanged):
   53455 
   53456 2008-02-03  Eric Seidel  <eric (a] webkit.org>
   53457 
   53458         Reviewed by darin.
   53459 
   53460         Acid3 expects textNode.localName === null
   53461         http://bugs.webkit.org/show_bug.cgi?id=17060
   53462 
   53463         Test: fast/dom/Node/initial-values.html
   53464 
   53465         * dom/Comment.cpp: remove localName implementation
   53466         * dom/Comment.h:
   53467         * dom/Node.cpp: return nullAtom instead of emptyAtom
   53468         * dom/Text.cpp: remove localName implementation
   53469         * dom/Text.h:
   53470 
   53471 2008-02-03  Eric Seidel  <eric (a] webkit.org>
   53472 
   53473         Reviewed by darin.
   53474 
   53475         Make createElementNS and createAttributeNS follow the (vague) DOM Core 2 spec
   53476         by throwing exceptions for more types of invalid qualified names.
   53477         http://bugs.webkit.org/show_bug.cgi?id=16833
   53478 
   53479         Tests: fast/dom/Document/createAttributeNS-namespace-err.html
   53480                fast/dom/Document/createElementNS-namespace-err.html
   53481 
   53482         * dom/Document.cpp:
   53483         (WebCore::Document::createElement):
   53484         (WebCore::hasNamespaceError):
   53485         (WebCore::Document::createElementNS):
   53486         (WebCore::Document::createAttributeNS):
   53487         * dom/Document.idl:
   53488 
   53489 2008-02-03  Nikolas Zimmermann  <zimmermann (a] kde.org>
   53490 
   53491         Reviewed by Eric.
   53492 
   53493         Fixes: http://bugs.webkit.org/show_bug.cgi?id=15394
   53494 
   53495         Dramatically improve dynamic update performance in DOM / SVG DOM.
   53496 
   53497         The notifyAttributeChange() sledgehammer is gone now. It was implemented on quite a lot of
   53498         SVG*Element classes and blindly reacted on any property change caused by DOM / SVG DOM
   53499         by rebuilding style/renderer etc. without actually checking what changed. SVG used a hack
   53500         for years that attributeChanged() called notifyAttributeChange() - which results in poor
   53501         scripting performance and/or dynamic creation/modification of elements using SVG DOM.
   53502 
   53503         Properly implement childrenChanged / attributeChanged in SVG with some derivation from the HTML code.
   53504         Our SVG* element classes implement "svgAttributeChanged(const QualifiedName&)" instead of
   53505         "attributeChanged(Attribute*...)" to be able to unify DOM / SVG DOM updates. SVG DOM classes
   53506         are aware of the attribute name they belong to. So when using "rectElement.transform.baseVal.getItem(0).setRotate(45)"
   53507         SVG DOM updates the <rect> element by calling svgAttributeChanged(SVGNames::transformAttr) on the corresponding
   53508         SVGRectElement. So we're now able to handle fast dynamic updates in a unified way - leading to less bugs.
   53509 
   53510         HTML dynamic updates vs. SVG dynamic updates:
   53511 
   53512         HTML:
   53513             1) setAttribute("foo", "bar") -> attributeChanged -> parseMappedAttribute -> setChanged/setNeedsLayout
   53514             2) someObject.foo = "bar" -> HTML code maps to setAttribute calls, ends up taking the same route as 1)
   53515             3) someObject.style.foo = "bar" -> setChanged -> recalcStyle (possible relayout)
   53516 
   53517         SVG:
   53518             1) setAttribute("foo", "bar") -> attributeChanged -> svgAttributeChanged -> parseMappedAttribute -> setChanged/setNeedsLayout
   53519             2) same, currently most functions are not yet converted to this new system! (most noticeable in SVGMarkerElement::setOrientToAngle)    
   53520             3) same
   53521             4) someRectElement.x.baseVal.value = 100 -> svgAttributeChanged -> setChanged/setNeedsLayout (special SVG DOM updating)
   53522         
   53523         The new SVG DOM updating concept 4) uses the same updating logic as 1) and 2), so we're actually modelling the HTML way.
   53524         SVG handles calling setChanged/setNeedsLayout in svgAttributeChanged, unlike HTML which uses parseMappedAttribute for that.
   53525 
   53526         Only updated all elements necessary to let us pass layout tests w/o regressions. Need to crawl through
   53527         all SVG*Element classes and implement svgAttributeChanged / childrenChanged anywhere needed in a follow-up patch.
   53528 
   53529         * bindings/js/JSSVGPODTypeWrapper.h:
   53530         (WebCore::JSSVGPODTypeWrapperCreatorReadWrite::commitChange):
   53531         (WebCore::JSSVGPODTypeWrapperCreatorReadOnly::commitChange):
   53532         (WebCore::JSSVGPODTypeWrapperCreatorForList::JSSVGPODTypeWrapperCreatorForList):
   53533         (WebCore::JSSVGPODTypeWrapperCreatorForList::operator PODType):
   53534         (WebCore::JSSVGPODTypeWrapperCreatorForList::commitChange):
   53535         * bindings/js/JSSVGPathSegListCustom.cpp:
   53536         (WebCore::JSSVGPathSegList::clear):
   53537         (WebCore::JSSVGPathSegList::initialize):
   53538         (WebCore::JSSVGPathSegList::insertItemBefore):
   53539         (WebCore::JSSVGPathSegList::replaceItem):
   53540         (WebCore::JSSVGPathSegList::removeItem):
   53541         (WebCore::JSSVGPathSegList::appendItem):
   53542         * bindings/js/JSSVGPointListCustom.cpp:
   53543         (WebCore::JSSVGPointList::clear):
   53544         (WebCore::JSSVGPointList::initialize):
   53545         (WebCore::JSSVGPointList::getItem):
   53546         (WebCore::JSSVGPointList::insertItemBefore):
   53547         (WebCore::JSSVGPointList::replaceItem):
   53548         (WebCore::JSSVGPointList::removeItem):
   53549         (WebCore::JSSVGPointList::appendItem):
   53550         * bindings/js/JSSVGTransformListCustom.cpp:
   53551         (WebCore::JSSVGTransformList::clear):
   53552         (WebCore::JSSVGTransformList::initialize):
   53553         (WebCore::JSSVGTransformList::getItem):
   53554         (WebCore::JSSVGTransformList::insertItemBefore):
   53555         (WebCore::JSSVGTransformList::replaceItem):
   53556         (WebCore::JSSVGTransformList::removeItem):
   53557         (WebCore::JSSVGTransformList::appendItem):
   53558         * bindings/scripts/CodeGeneratorJS.pm:
   53559         * rendering/RenderSVGGradientStop.cpp:
   53560         (WebCore::RenderSVGGradientStop::setStyle):
   53561         * rendering/RenderSVGGradientStop.h:
   53562         * svg/SVGAElement.cpp:
   53563         (WebCore::SVGAElement::defaultEventHandler):
   53564         * svg/SVGAElement.h:
   53565         * svg/SVGAngle.cpp:
   53566         * svg/SVGAngle.h:
   53567         (WebCore::SVGAngle::associatedAttributeName):
   53568         * svg/SVGAnimatedTemplate.h:
   53569         (WebCore::SVGAnimatedTemplate::SVGAnimatedTemplate):
   53570         (WebCore::SVGAnimatedTemplate::wrapperCache):
   53571         (WebCore::SVGAnimatedTemplate::associatedAttributeName):
   53572         (WebCore::lookupOrCreateWrapper):
   53573         * svg/SVGAnimationElement.cpp:
   53574         (WebCore::SVGAnimationElement::parseBeginOrEndValue):
   53575         * svg/SVGAnimationElement.h:
   53576         * svg/SVGCircleElement.cpp:
   53577         (WebCore::SVGCircleElement::svgAttributeChanged):
   53578         * svg/SVGCircleElement.h:
   53579         * svg/SVGClipPathElement.cpp:
   53580         (WebCore::SVGClipPathElement::svgAttributeChanged):
   53581         (WebCore::SVGClipPathElement::childrenChanged):
   53582         (WebCore::SVGClipPathElement::canvasResource):
   53583         * svg/SVGClipPathElement.h:
   53584         (WebCore::SVGClipPathElement::isValid):
   53585         (WebCore::SVGClipPathElement::rendererIsNeeded):
   53586         * svg/SVGComponentTransferFunctionElement.cpp:
   53587         (WebCore::SVGComponentTransferFunctionElement::SVGComponentTransferFunctionElement):
   53588         * svg/SVGComponentTransferFunctionElement.h:
   53589         * svg/SVGCursorElement.cpp:
   53590         * svg/SVGElement.cpp:
   53591         (WebCore::SVGElement::insertedIntoDocument):
   53592         (WebCore::SVGElement::attributeChanged):
   53593         * svg/SVGElement.h:
   53594         (WebCore::SVGElement::svgAttributeChanged):
   53595         * svg/SVGEllipseElement.cpp:
   53596         (WebCore::SVGEllipseElement::svgAttributeChanged):
   53597         * svg/SVGEllipseElement.h:
   53598         * svg/SVGExternalResourcesRequired.cpp:
   53599         (WebCore::SVGExternalResourcesRequired::isKnownAttribute):
   53600         * svg/SVGExternalResourcesRequired.h:
   53601         * svg/SVGFEBlendElement.cpp:
   53602         * svg/SVGFEColorMatrixElement.cpp:
   53603         (WebCore::SVGFEColorMatrixElement::SVGFEColorMatrixElement):
   53604         * svg/SVGFEComponentTransferElement.cpp:
   53605         * svg/SVGFECompositeElement.cpp:
   53606         * svg/SVGFEDiffuseLightingElement.cpp:
   53607         * svg/SVGFEDisplacementMapElement.cpp:
   53608         * svg/SVGFEFloodElement.cpp:
   53609         * svg/SVGFEGaussianBlurElement.cpp:
   53610         * svg/SVGFEImageElement.cpp:
   53611         * svg/SVGFELightElement.cpp:
   53612         * svg/SVGFEMergeNodeElement.cpp:
   53613         * svg/SVGFEOffsetElement.cpp:
   53614         * svg/SVGFESpecularLightingElement.cpp:
   53615         * svg/SVGFETileElement.cpp:
   53616         * svg/SVGFETurbulenceElement.cpp:
   53617         * svg/SVGFilterElement.cpp:
   53618         * svg/SVGFilterPrimitiveStandardAttributes.cpp:
   53619         * svg/SVGFitToViewBox.cpp:
   53620         (WebCore::SVGFitToViewBox::isKnownAttribute):
   53621         * svg/SVGFitToViewBox.h:
   53622         * svg/SVGForeignObjectElement.cpp:
   53623         * svg/SVGGElement.cpp:
   53624         (WebCore::SVGGElement::svgAttributeChanged):
   53625         (WebCore::SVGGElement::childrenChanged):
   53626         * svg/SVGGElement.h:
   53627         * svg/SVGGradientElement.cpp:
   53628         (WebCore::SVGGradientElement::SVGGradientElement):
   53629         (WebCore::SVGGradientElement::svgAttributeChanged):
   53630         (WebCore::SVGGradientElement::childrenChanged):
   53631         (WebCore::SVGGradientElement::buildStops):
   53632         * svg/SVGGradientElement.h:
   53633         * svg/SVGImageElement.cpp:
   53634         (WebCore::SVGImageElement::parseMappedAttribute):
   53635         (WebCore::SVGImageElement::svgAttributeChanged):
   53636         * svg/SVGImageElement.h:
   53637         * svg/SVGLangSpace.cpp:
   53638         (WebCore::SVGLangSpace::isKnownAttribute):
   53639         * svg/SVGLangSpace.h:
   53640         * svg/SVGLengthList.cpp:
   53641         (WebCore::SVGLengthList::SVGLengthList):
   53642         * svg/SVGLengthList.h:
   53643         * svg/SVGLineElement.cpp:
   53644         (WebCore::SVGLineElement::svgAttributeChanged):
   53645         * svg/SVGLineElement.h:
   53646         * svg/SVGLinearGradientElement.cpp:
   53647         (WebCore::SVGLinearGradientElement::svgAttributeChanged):
   53648         * svg/SVGLinearGradientElement.h:
   53649         * svg/SVGList.h:
   53650         (WebCore::SVGList::SVGList):
   53651         (WebCore::SVGList::associatedAttributeName):
   53652         (WebCore::SVGPODList::SVGPODList):
   53653         * svg/SVGMarkerElement.cpp:
   53654         (WebCore::SVGMarkerElement::svgAttributeChanged):
   53655         (WebCore::SVGMarkerElement::childrenChanged):
   53656         * svg/SVGMarkerElement.h:
   53657         * svg/SVGMaskElement.cpp:
   53658         (WebCore::SVGMaskElement::svgAttributeChanged):
   53659         (WebCore::SVGMaskElement::childrenChanged):
   53660         * svg/SVGMaskElement.h:
   53661         * svg/SVGNumberList.cpp:
   53662         (WebCore::SVGNumberList::SVGNumberList):
   53663         * svg/SVGNumberList.h:
   53664         * svg/SVGPathElement.cpp:
   53665         (WebCore::SVGPathElement::svgAttributeChanged):
   53666         (WebCore::SVGPathElement::pathSegList):
   53667         * svg/SVGPathElement.h:
   53668         * svg/SVGPathSeg.h:
   53669         (WebCore::SVGPathSeg::associatedAttributeName):
   53670         * svg/SVGPathSegList.cpp:
   53671         (WebCore::SVGPathSegList::SVGPathSegList):
   53672         * svg/SVGPathSegList.h:
   53673         * svg/SVGPatternElement.cpp:
   53674         (WebCore::SVGPatternElement::SVGPatternElement):
   53675         (WebCore::SVGPatternElement::svgAttributeChanged):
   53676         (WebCore::SVGPatternElement::childrenChanged):
   53677         * svg/SVGPatternElement.h:
   53678         * svg/SVGPointList.cpp:
   53679         (WebCore::SVGPointList::SVGPointList):
   53680         * svg/SVGPointList.h:
   53681         * svg/SVGPolyElement.cpp:
   53682         (WebCore::SVGPolyElement::SVGPolyElement):
   53683         (WebCore::SVGPolyElement::points):
   53684         (WebCore::SVGPolyElement::parseMappedAttribute):
   53685         (WebCore::SVGPolyElement::svgAttributeChanged):
   53686         * svg/SVGPolyElement.h:
   53687         * svg/SVGPolygonElement.cpp:
   53688         * svg/SVGPolygonElement.h:
   53689         * svg/SVGPolylineElement.cpp:
   53690         * svg/SVGPolylineElement.h:
   53691         * svg/SVGPreserveAspectRatio.cpp:
   53692         * svg/SVGPreserveAspectRatio.h:
   53693         (WebCore::SVGPreserveAspectRatio::associatedAttributeName):
   53694         * svg/SVGRadialGradientElement.cpp:
   53695         (WebCore::SVGRadialGradientElement::svgAttributeChanged):
   53696         * svg/SVGRadialGradientElement.h:
   53697         * svg/SVGRectElement.cpp:
   53698         (WebCore::SVGRectElement::svgAttributeChanged):
   53699         * svg/SVGRectElement.h:
   53700         * svg/SVGSVGElement.cpp:
   53701         (WebCore::SVGSVGElement::parseMappedAttribute):
   53702         (WebCore::SVGSVGElement::svgAttributeChanged):
   53703         * svg/SVGSVGElement.h:
   53704         * svg/SVGStopElement.cpp:
   53705         (WebCore::SVGStopElement::parseMappedAttribute):
   53706         (WebCore::SVGStopElement::createRenderer):
   53707         * svg/SVGStopElement.h:
   53708         * svg/SVGStringList.cpp:
   53709         (WebCore::SVGStringList::SVGStringList):
   53710         * svg/SVGStringList.h:
   53711         * svg/SVGStylable.cpp:
   53712         * svg/SVGStylable.h:
   53713         * svg/SVGStyledElement.cpp:
   53714         (WebCore::SVGStyledElement::isKnownAttribute):
   53715         (WebCore::SVGStyledElement::svgAttributeChanged):
   53716         (WebCore::SVGStyledElement::invalidateResourcesInAncestorChain):
   53717         (WebCore::SVGStyledElement::childrenChanged):
   53718         * svg/SVGStyledElement.h:
   53719         * svg/SVGStyledLocatableElement.cpp:
   53720         * svg/SVGStyledLocatableElement.h:
   53721         * svg/SVGStyledTransformableElement.cpp:
   53722         (WebCore::SVGStyledTransformableElement::SVGStyledTransformableElement):
   53723         (WebCore::SVGStyledTransformableElement::parseMappedAttribute):
   53724         (WebCore::SVGStyledTransformableElement::isKnownAttribute):
   53725         * svg/SVGStyledTransformableElement.h:
   53726         * svg/SVGTests.cpp:
   53727         (WebCore::SVGTests::requiredFeatures):
   53728         (WebCore::SVGTests::requiredExtensions):
   53729         (WebCore::SVGTests::systemLanguage):
   53730         (WebCore::SVGTests::isKnownAttribute):
   53731         * svg/SVGTests.h:
   53732         * svg/SVGTextContentElement.cpp:
   53733         * svg/SVGTextElement.cpp:
   53734         (WebCore::SVGTextElement::SVGTextElement):
   53735         * svg/SVGTextElement.h:
   53736         * svg/SVGTextPathElement.cpp:
   53737         * svg/SVGTextPathElement.h:
   53738         * svg/SVGTextPositioningElement.cpp:
   53739         (WebCore::SVGTextPositioningElement::SVGTextPositioningElement):
   53740         * svg/SVGTextPositioningElement.h:
   53741         * svg/SVGTransformList.cpp:
   53742         (SVGTransformList::SVGTransformList):
   53743         * svg/SVGTransformList.h:
   53744         * svg/SVGTransformable.cpp:
   53745         (WebCore::SVGTransformable::isKnownAttribute):
   53746         * svg/SVGTransformable.h:
   53747         * svg/SVGURIReference.cpp:
   53748         (WebCore::SVGURIReference::isKnownAttribute):
   53749         * svg/SVGURIReference.h:
   53750         * svg/SVGUseElement.cpp:
   53751         (WebCore::SVGUseElement::insertedIntoDocument):
   53752         (WebCore::SVGUseElement::svgAttributeChanged):
   53753         (WebCore::SVGUseElement::childrenChanged):
   53754         (WebCore::SVGUseElement::buildPendingResource):
   53755         * svg/SVGUseElement.h:
   53756         * svg/SVGViewElement.cpp:
   53757         (WebCore::SVGViewElement::SVGViewElement):
   53758         (WebCore::SVGViewElement::viewTarget):
   53759         (WebCore::SVGViewElement::parseMappedAttribute):
   53760         * svg/SVGViewElement.h:
   53761         * svg/SVGViewSpec.cpp:
   53762         (WebCore::SVGViewSpec::SVGViewSpec):
   53763         * svg/SVGViewSpec.h:
   53764         * svg/SVGZoomAndPan.cpp:
   53765         (WebCore::SVGZoomAndPan::isKnownAttribute):
   53766         * svg/SVGZoomAndPan.h:
   53767         * svg/graphics/SVGResource.cpp:
   53768         (WebCore::SVGResource::invalidate):
   53769         (WebCore::SVGResource::invalidateClients):
   53770         (WebCore::SVGResource::addClient):
   53771         * svg/graphics/SVGResource.h:
   53772         * svg/graphics/SVGResourceMasker.cpp:
   53773         (WebCore::SVGResourceMasker::invalidate):
   53774         * svg/graphics/cg/SVGPaintServerGradientCg.cpp:
   53775         (WebCore::SVGPaintServerGradient::invalidate):
   53776         * svg/graphics/filters/SVGFEImage.cpp:
   53777         (WebCore::SVGFEImage::imageChanged):
   53778 
   53779 2008-02-03  Kevin Ollivier  <kevino (a] theolliviers.com>
   53780 
   53781         Build fix for last wx commit (a couple things were not committed).
   53782 
   53783         * platform/ScrollView.h:
   53784         * platform/Widget.h:
   53785 
   53786 2008-02-03  Kevin Ollivier  <kevino (a] theolliviers.com>
   53787 
   53788         Clean up overlooked coding guideline issues from last commit.
   53789 
   53790         * platform/wx/ScrollViewWx.cpp:
   53791         (WebCore::ScrollView::ScrollViewPrivate::OnScrollWinEvents):
   53792         (WebCore::ScrollView::update):
   53793         (WebCore::ScrollView::scrollBy):
   53794         (WebCore::ScrollView::resizeContents):
   53795         (WebCore::ScrollView::adjustScrollbars):
   53796         (WebCore::ScrollView::setScrollbarsMode):
   53797         (WebCore::ScrollView::setHScrollbarMode):
   53798         (WebCore::ScrollView::setVScrollbarMode):
   53799         (WebCore::ScrollView::suppressScrollbars):
   53800         * platform/wx/WidgetWx.cpp:
   53801         (WebCore::Widget::setCursor):
   53802 
   53803 2008-02-03  Kevin Watters  <kevinwatters (a] gmail.com>
   53804 
   53805         Reviewed by Kevin Ollivier.
   53806 
   53807         * platform/wx/RenderThemeWx.cpp:
   53808         (WebCore::RenderThemeWx::paintButton):
   53809         * platform/wx/ScrollViewWx.cpp:
   53810         (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
   53811         (WebCore::ScrollView::ScrollViewPrivate::bindEvents):
   53812         (WebCore::ScrollView::ScrollViewPrivate::OnMouseWheelEvents):
   53813         (WebCore::ScrollView::ScrollViewPrivate::OnScrollWinEvents):
   53814         (WebCore::ScrollView::ScrollView):
   53815         (WebCore::ScrollView::setNativeWindow):
   53816         (WebCore::ScrollView::updateContents):
   53817         (WebCore::ScrollView::update):
   53818         (WebCore::ScrollView::visibleWidth):
   53819         (WebCore::ScrollView::visibleHeight):
   53820         (WebCore::ScrollView::setContentsPos):
   53821         (WebCore::ScrollView::scrollBy):
   53822         (WebCore::ScrollView::resizeContents):
   53823         (WebCore::ScrollView::contentsX):
   53824         (WebCore::ScrollView::contentsY):
   53825         (WebCore::ScrollView::contentsWidth):
   53826         (WebCore::ScrollView::contentsHeight):
   53827         (WebCore::ScrollView::AdjustScrollbars):
   53828         (WebCore::ScrollView::setScrollbarsMode):
   53829         (WebCore::ScrollView::setHScrollbarMode):
   53830         (WebCore::ScrollView::setVScrollbarMode):
   53831         (WebCore::ScrollView::suppressScrollbars):
   53832         (WebCore::ScrollView::inWindow):
   53833         (WebCore::ScrollView::wheelEvent):
   53834         (WebCore::ScrollView::addChild):
   53835         (WebCore::ScrollView::removeChild):
   53836         (WebCore::ScrollView::children):
   53837         (WebCore::ScrollView::scrollRectIntoViewRecursively):
   53838         (WebCore::ScrollView::scrollbarUnderMouse):
   53839         * platform/wx/WidgetWx.cpp:
   53840         (WebCore::Widget::Widget):
   53841         (WebCore::Widget::~Widget):
   53842         (WebCore::Widget::nativeWindow):
   53843         (WebCore::Widget::setNativeWindow):
   53844 
   53845 2008-02-02  David Hyatt  <hyatt (a] apple.com>
   53846 
   53847         Fix for bug 5468, support CSS3 :only-child and :only-of-type selectors.
   53848 
   53849         Reviewed by olliej
   53850 
   53851         Added fast/css/only-child-pseudo-class.html, fast/css/only-of-type-pseudo-class.html
   53852 
   53853         * css/CSSSelector.cpp:
   53854         (WebCore::CSSSelector::extractPseudoType):
   53855         * css/CSSSelector.h:
   53856         (WebCore::CSSSelector::):
   53857         * css/CSSStyleSelector.cpp:
   53858         (WebCore::CSSStyleSelector::checkOneSelector):
   53859 
   53860 2008-02-02  Darin Adler  <darin (a] apple.com>
   53861 
   53862         Reviewed by Geoff Garen.
   53863 
   53864         PLT speedup related to <rdar://problem/5659272> REGRESSION: PLT .4%
   53865         slower due to r28884 (global variable symbol table optimization)
   53866 
   53867         * history/CachedPage.cpp:
   53868         (WebCore::CachedPage::CachedPage): Removed saveSymbolTable call.
   53869         (WebCore::CachedPage::restore): Removed restoreSymbolTable call.
   53870         (WebCore::CachedPage::clear): Removed clear of m_windowSymbolTable.
   53871 
   53872         * history/CachedPage.h: Removed m_windowSymbolTable, since save/restoreLocalStorage
   53873         now takes care of the symbol table. Also removed many unnecessary includes.
   53874 
   53875 2008-02-02  Tony Chang  <idealisms (a] gmail.com>
   53876 
   53877         Reviewed by eseidel.
   53878 
   53879         Add an include for for <objidl.h> which isn't included
   53880         by default with WIN32_LEAN_AND_MEAN.
   53881         * platform/graphics/FontCache.h:
   53882 
   53883 2008-02-02  Kevin Watters  <kevin (a] dotsyntax.com>
   53884 
   53885         Reviewed by Kevin Ollivier.
   53886 
   53887         wxFont is reference counted and meant to be used as as a value
   53888         object; when using wxFont*, ref-counting was not happening properly
   53889         and the font object would be destroyed while still in use.
   53890 
   53891         Also, fix memory leak in wx's FrameData::clear() method.
   53892 
   53893         * platform/graphics/SimpleFontData.h:
   53894         (WebCore::SimpleFontData::getWxFont):
   53895         * platform/graphics/wx/FontPlatformData.h:
   53896         (WebCore::FontPlatformData::):
   53897         (WebCore::FontPlatformData::FontPlatformData):
   53898         (WebCore::FontPlatformData::font):
   53899         (WebCore::FontPlatformData::hash):
   53900         (WebCore::FontPlatformData::operator==):
   53901         (WebCore::FontPlatformData::computeHash):
   53902         * platform/graphics/wx/FontPlatformDataWx.cpp:
   53903         (WebCore::fontFamilyToWxFontFamily):
   53904         (WebCore::FontPlatformData::FontPlatformData):
   53905         (WebCore::FontPlatformData::~FontPlatformData):
   53906         * platform/graphics/wx/FontWx.cpp:
   53907         (WebCore::Font::drawGlyphs):
   53908         * platform/graphics/wx/SimpleFontDataWx.cpp:
   53909         (WebCore::SimpleFontData::platformInit):
   53910         (WebCore::SimpleFontData::determinePitch):
   53911         (WebCore::SimpleFontData::platformWidthForGlyph):
   53912 
   53913 2008-02-02  Kevin Ollivier  <kevino (a] theolliviers.com>
   53914 
   53915         Reviewed by Adam Roben.
   53916 
   53917         On MSW, the wx port internally uses callbacks for wxTimer, so the
   53918         wx port suffers from the same crash problem that was fixed
   53919         in r28500 for the Windows port. For now, use the SharedTimerWin.cpp
   53920         impl. for wx too on MSW, until a version of wx is released that
   53921         fixes the issue by reworking wxTimer.
   53922 
   53923         * page/Page.h:
   53924         * platform/win/SharedTimerWin.cpp:
   53925         (WebCore::TimerWindowWndProc):
   53926         * webcore-wx.bkl:
   53927 
   53928 2008-02-02  Mark Rowe  <mrowe (a] apple.com>
   53929 
   53930         Qt build fix.
   53931 
   53932         * platform/qt/ThreadingQt.cpp: Fix typo.
   53933 
   53934 2008-02-02  Kevin Ollivier  <kevino (a] theolliviers.com>
   53935 
   53936         Blind build fix for Qt port. Add Threading.h include.
   53937 
   53938         * platform/qt/ThreadingQt.cpp:
   53939 
   53940 2008-02-02  Kevin Ollivier  <kevino (a] theolliviers.com>
   53941 
   53942         wx build fix - add missing include file.
   53943 
   53944         * platform/wx/ThreadingWx.cpp:
   53945 
   53946 2008-02-02  David Hyatt  <hyatt (a] apple.com>
   53947 
   53948         Fix for bug 4812. Support last-child and last-of-type CSS3 selectors.  Brings Acid3 score up to 68/100.
   53949 
   53950         Reviewed by olliej
   53951 
   53952         Added fast/css/last-child-pseudo-class.html, fast/css/last-of-type-pseudo-class.html
   53953 
   53954         * css/CSSGrammar.y:
   53955         * css/CSSSelector.cpp:
   53956         (WebCore::CSSSelector::extractPseudoType):
   53957         * css/CSSSelector.h:
   53958         (WebCore::CSSSelector::):
   53959         * css/CSSStyleSelector.cpp:
   53960         (WebCore::CSSStyleSelector::checkOneSelector):
   53961 
   53962 2008-02-01  David Hyatt  <hyatt (a] apple.com>
   53963 
   53964         Make :first-child and :first-of-type properly dynamic when the DOM changes.  Brings the Acid3 score up
   53965         to 66/100.
   53966 
   53967         Reviewed by olliej
   53968 
   53969         Added fast/css/first-child-pseudo-class.html, fast/css/first-of-type-pseudo-class.html, fast/css/empty-body-test.html
   53970 
   53971         * css/CSSGrammar.y:
   53972         * css/CSSStyleSelector.cpp:
   53973         (WebCore::CSSStyleSelector::checkOneSelector):
   53974         * dom/Element.cpp:
   53975         (WebCore::Element::recalcStyle):
   53976         (WebCore::Element::childrenChanged):
   53977         * rendering/RenderStyle.cpp:
   53978         (WebCore::RenderStyle::RenderStyle):
   53979         * rendering/RenderStyle.h:
   53980         (WebCore::RenderStyle::childrenAffectedByFirstChildRules):
   53981         (WebCore::RenderStyle::setChildrenAffectedByFirstChildRules):
   53982         (WebCore::RenderStyle::childrenAffectedByLastChildRules):
   53983         (WebCore::RenderStyle::setChildrenAffectedByLastChildRules):
   53984         (WebCore::RenderStyle::childrenAffectedByPositionalRules):
   53985         (WebCore::RenderStyle::setChildrenAffectedByPositionalRules):
   53986         (WebCore::RenderStyle::firstChildState):
   53987         (WebCore::RenderStyle::setFirstChildState):
   53988         (WebCore::RenderStyle::lastChildState):
   53989         (WebCore::RenderStyle::setLastChildState):
   53990 
   53991 2008-02-02  Dan Bernstein  <mitz (a] apple.com>
   53992 
   53993         Reviewed by Oliver Hunt.
   53994 
   53995         - fix <rdar://problem/5720637> Missing characters in right-to-left complex text where different fonts are used in the same run
   53996 
   53997         * platform/graphics/win/UniscribeController.cpp:
   53998         (WebCore::UniscribeController::advance): Fixed an off-by-1 error in the
   53999         start offset of sub-runs of RTL runs. Changed to update
   54000         m_currentCharacter to the first character of the sub-run before calling
   54001         itemizeShapeAndPlace. In RTL runs, m_currentCharacter decreases as
   54002         sub-runs are processed from left to right.
   54003         (WebCore::UniscribeController::itemizeShapeAndPlace): Removed the
   54004         updating of m_currentCharacter because advance() does it now.
   54005 
   54006 2008-02-01  Brady Eidson  <beidson (a] apple.com>
   54007 
   54008         Reviewed by Darin's rubberstamp
   54009 
   54010         Move the SecurityOriginHash out into a separate header as it will soon be used in different places
   54011 
   54012         * WebCore.xcodeproj/project.pbxproj:
   54013         * platform/SecurityOriginHash.h: Added.
   54014         (WebCore::SecurityOriginHash::hash):
   54015         (WebCore::SecurityOriginHash::equal):
   54016         (WebCore::SecurityOriginTraits::deletedValue):
   54017         (WebCore::SecurityOriginTraits::emptyValue):
   54018         * storage/DatabaseTracker.cpp:
   54019 
   54020 2008-02-01  Darin Adler  <darin (a] apple.com>
   54021 
   54022         Reviewed by Tim.
   54023 
   54024         - fixed mistake in the JSLock fix that caused an assertion every time
   54025 
   54026         * bindings/js/JSCustomSQLTransactionCallback.cpp:
   54027         (WebCore::JSCustomSQLTransactionCallback::JSCustomSQLTransactionCallback): Added JSLock.
   54028         (WebCore::unprotectOnMainThread): Ditto.
   54029 
   54030 2008-02-01  Anders Carlsson  <andersca (a] apple.com>
   54031 
   54032         Reviewed by Antti and Darin.
   54033 
   54034         Change Text::createWithLengthLimit to take a UChar pointer instead of a string. This
   54035         lets us avoid making a copy of the buffer in TextDocument.cpp.
   54036         
   54037         * dom/Text.cpp:
   54038         (WebCore::Text::createWithLengthLimit):
   54039         * dom/Text.h:
   54040         * html/HTMLParser.cpp:
   54041         (WebCore::HTMLParser::parseToken):
   54042         * loader/TextDocument.cpp:
   54043         (WebCore::TextTokenizer::write):
   54044 
   54045 2008-02-01  Darin Adler  <darin (a] apple.com>
   54046 
   54047         Reviewed by Adam.
   54048 
   54049         * platform/network/mac/ResourceHandleMac.mm:
   54050         (WebCore::ResourceHandle::loadsBlocked): Fix grammar and word typo.
   54051 
   54052 2008-02-01  Darin Adler  <darin (a] apple.com>
   54053 
   54054         Reviewed by Adam.
   54055 
   54056         - fix <rdar://problem/4527931> showModalDialog calls from onload functions fail (Aspect)
   54057 
   54058         No automated regression test because showModalDialog doesn't work in DumpRenderTree.
   54059 
   54060         * platform/network/mac/ResourceHandleMac.mm:
   54061         (WebCore::CallbackGuard::CallbackGuard): Added.
   54062         (WebCore::CallbackGuard::~CallbackGuard): Added.
   54063         (WebCore::ResourceHandle::supportsBufferedData): Simplified to take advantage of how
   54064         static initialization works in C++.
   54065         (WebCore::ResourceHandle::loadsBlocked): Always return false on Leopard. The problem in
   54066         NSURLConnection that created the need to block loads is fixed in Leoaprd. This is the
   54067         bug fix.
   54068         (-[WebCoreResourceHandleAsDelegate connection:willSendRequest:redirectResponse:]):
   54069         Use CallbackGuard instead of directly incrementing the count; allows us to omit the code
   54070         entirely on Leopard.
   54071         (-[WebCoreResourceHandleAsDelegate connection:didReceiveAuthenticationChallenge:]):
   54072         Ditto.
   54073         (-[WebCoreResourceHandleAsDelegate connection:didCancelAuthenticationChallenge:]):
   54074         Ditto.
   54075         (-[WebCoreResourceHandleAsDelegate connection:didReceiveResponse:]):
   54076         Ditto.
   54077         (-[WebCoreResourceHandleAsDelegate connection:didReceiveData:lengthReceived:]):
   54078         Ditto.
   54079         (-[WebCoreResourceHandleAsDelegate connection:willStopBufferingData:]):
   54080         Ditto.
   54081         (-[WebCoreResourceHandleAsDelegate connectionDidFinishLoading:]):
   54082         Ditto.
   54083         (-[WebCoreResourceHandleAsDelegate connection:didFailWithError:]):
   54084         Ditto.
   54085         (-[WebCoreResourceHandleAsDelegate connection:willCacheResponse:]):
   54086         Ditto. Fixes a problem where this could leave inNSURLConnectionCallback set
   54087         permanently in one of the code paths; this would break showModalDialog from that
   54088         point on. This problem doesn't affect Safari.
   54089 
   54090 2008-02-01  Darin Adler  <darin (a] apple.com>
   54091 
   54092         * platform/network/mac/ResourceHandleMac.mm:
   54093         (WebCore::ResourceHandle::loadsBlocked): Roll out accidentally checked in file.
   54094 
   54095 2008-02-01  Darin Adler  <darin (a] apple.com>
   54096 
   54097         Reviewed by Geoff and Brady.
   54098 
   54099         - fix <rdar://problem/5680469> Each database worker thread takes a JSLock,
   54100           which slows down all JavaScript execution until the thread terminates
   54101 
   54102         * bindings/js/JSCustomSQLTransactionCallback.cpp:
   54103         (WebCore::JSCustomSQLTransactionCallback::JSCustomSQLTransactionCallback):
   54104         Explicitly gcProtect, since we aren't using ProtectedPtr any more.
   54105         (WebCore::unprotectOnMainThread): Added.
   54106         (WebCore::JSCustomSQLTransactionCallback::~JSCustomSQLTransactionCallback):
   54107         Use unprotectOnMainThread rather than doing a gcUnprotect here.
   54108         * bindings/js/JSCustomSQLTransactionCallback.h: Changed m_callback from
   54109         a ProtectedPtr to a plain old JSObject*; we gcProtect by hand now.
   54110 
   54111         * loader/icon/IconDatabase.cpp:
   54112         (WebCore::IconDatabase::notifyPendingLoadDecisionsOnMainThread):
   54113         Renamed. Changed to takea a void* with the icon database pointer.
   54114         (WebCore::IconDatabase::notifyPendingLoadDecisions): Renamed.
   54115         (WebCore::IconDatabase::performURLImport): Updated name, and pass the
   54116         icon database pointer in.
   54117         * loader/icon/IconDatabase.h: Renamed and added void* parameter.
   54118 
   54119         * platform/Threading.h: Changed callOnMainThread to take a function with a
   54120         single parameter rather than a function with no parameters. Added a typedef.
   54121 
   54122         * platform/gtk/ThreadingGtk.cpp:
   54123         (WebCore::callFunctionOnMainThread): Changed to use a structure with both
   54124         a function pointer and a context pointer, and delete it after calling.
   54125         (WebCore::callOnMainThread): Changed to create the structure with both
   54126         the function and context pointer.
   54127 
   54128         * platform/mac/Threading.mm:
   54129         (-[WebCoreFunctionWrapper initWithFunction:context:]): Added context.
   54130         (-[WebCoreFunctionWrapper invoke]): Updated to do both function and context.
   54131         Renamed from _call.
   54132         (WebCore::callOnMainThread): Updated to take both function and context.
   54133 
   54134         * platform/qt/ThreadingQt.cpp:
   54135         (WebCore::PerformFunctionEvent::PerformFunctionEvent): Added context.
   54136         (WebCore::PerformFunctionEvent::invoke): Added. Calls function with context pointer.
   54137         (WebCore::MainThreadInvoker::event): Changed to call invoke.
   54138         (WebCore::callOnMainThread): Updated to take both function and context.
   54139 
   54140         * platform/win/ThreadingWin.cpp: Added FunctionWithContext.
   54141         (WebCore::callFunctionsOnMainThread): Changed to pass call function with context.
   54142         (WebCore::callOnMainThread): Updated to queue both function and context.
   54143 
   54144         * platform/wx/ThreadingWx.cpp:
   54145         (WebCore::callOnMainThread): Updated to take both function and context.
   54146 
   54147         * storage/Database.cpp:
   54148         (WebCore::Database::scheduleTransactionCallback): Pass 0 for context.
   54149         (WebCore::Database::deliverAllPendingCallbacks): Changed to take ignored context pointer.
   54150         * storage/Database.h: Added void* parameter to deliverAllPendingCallbacks.
   54151 
   54152         * storage/DatabaseTracker.cpp:
   54153         (WebCore::DatabaseTracker::scheduleForNotification): Pass 0 for context.
   54154         (WebCore::DatabaseTracker::notifyDatabasesChanged): Changed to take ignored context pointer.
   54155         * storage/DatabaseTracker.h: Added void* parameter to notifyDatabasesChanged.
   54156 
   54157 2008-02-01  Jon Honeycutt  <jhoneycutt (a] apple.com>
   54158 
   54159         Rubber-stamped by Ollie.
   54160 
   54161         * plugins/win/PluginPackageWin.cpp:
   54162         (WebCore::PluginPackageWin::load): Fix two function pointers
   54163 
   54164 2008-02-01  Geoffrey Garen  <ggaren (a] apple.com>
   54165 
   54166         Reviewed by John Sullivan, Oliver Hunt.
   54167 
   54168         Fixed <rdar://problem/5688039> REGRESSION (r29428): Weather widget
   54169         fails to load due to reliance on "var location" quirk
   54170         
   54171         Added a Dashboard quirk.
   54172 
   54173         * bindings/js/kjs_window.cpp:
   54174         (KJS::Window::put): In DB backwards compatibility mode, make assignment
   54175         to window.location in top-level windows shadow the DOM location API
   54176         instead of performing a navigation. This makes a reasonable amount of
   54177         sense, because widgets can't navigate their top-level frames, anyway.
   54178 
   54179 2008-02-01  David Hyatt  <hyatt (a] apple.com>
   54180 
   54181         Fix for bug 11387, CSS3 :empty selector is not dynamic.
   54182 
   54183         Add support for dynamically updating elements whose style is affected by :empty when the child count changes.
   54184 
   54185         Reviewed by olliej, mitzpettel
   54186 
   54187         fast/css/empty-pseudo-class.html
   54188 
   54189         * css/CSSStyleSelector.cpp:
   54190         (WebCore::CSSStyleSelector::locateSharedStyle):
   54191         (WebCore::CSSStyleSelector::checkOneSelector):
   54192         * dom/Element.cpp:
   54193         (WebCore::Element::childrenChanged):
   54194         * dom/Element.h:
   54195         * rendering/RenderStyle.h:
   54196         (WebCore::RenderStyle::affectedByEmpty):
   54197         (WebCore::RenderStyle::emptyState):
   54198         (WebCore::RenderStyle::setEmptyState):
   54199 
   54200 2008-02-01  Dan Bernstein  <mitz (a] apple.com>
   54201 
   54202         Reviewed by Darin Adler.
   54203 
   54204         - switch line breaking from using Carbon Unicode Utilities to using ICU
   54205           on Leopard
   54206           <http://bugs.webkit.org/show_bug.cgi?id=4628>
   54207 
   54208         fast/text/international/thai-line-breaks.html results do not change.
   54209 
   54210         * rendering/break_lines.cpp:
   54211         (WebCore::nextBreakablePosition): Changed to use Carbon only on Tiger.
   54212 
   54213 2008-02-01  Rodney Dawes  <dobey (a] wayofthemonkey.com>
   54214 
   54215         Reviewed by Darin.
   54216 
   54217         Update npfunctions.h to export the proper function signatures for UNIX and add
   54218         the appropriate #if around the Windows versions
   54219 
   54220         * plugins/npfunctions.h:
   54221 
   54222 2008-02-01  Eric Seidel  <eric (a] webkit.org>
   54223 
   54224         Reviewed by Oliver.
   54225 
   54226         Add getSVGDocument to frame and iframe.
   54227 
   54228         Test: svg/custom/frame-getSVGDocument.html
   54229 
   54230         * html/HTMLEmbedElement.cpp:
   54231         * html/HTMLEmbedElement.h:
   54232         * html/HTMLFrameElement.idl:
   54233         * html/HTMLFrameOwnerElement.cpp:
   54234         (WebCore::HTMLFrameOwnerElement::getSVGDocument):
   54235         * html/HTMLFrameOwnerElement.h:
   54236         * html/HTMLIFrameElement.idl:
   54237         * html/HTMLObjectElement.cpp:
   54238         * html/HTMLObjectElement.h:
   54239 
   54240 2008-01-30  Eric Seidel  <eric (a] webkit.org>
   54241 
   54242         Reviewed by darin.
   54243 
   54244         Beat CSSParser with the RefPtr stick.  Hopefully squashing any leaks in the process.
   54245         (Deploy RefPtr and PassRefPtr throughout CSSParser)
   54246         http://bugs.webkit.org/show_bug.cgi?id=17108
   54247 
   54248         No functional changes, thus no tests.
   54249 
   54250         * css/CSSParser.cpp:
   54251         (WebCore::CSSParser::parseColor):
   54252         (WebCore::CSSParser::parseValue):
   54253         (WebCore::CSSParser::addBackgroundValue):
   54254         (WebCore::CSSParser::parseBackgroundShorthand):
   54255         (WebCore::CSSParser::addTransitionValue):
   54256         (WebCore::CSSParser::parseTransitionShorthand):
   54257         (WebCore::CSSParser::parseBackgroundPosition):
   54258         (WebCore::CSSParser::parseBackgroundProperty):
   54259         (WebCore::CSSParser::parseTransitionProperty):
   54260         (WebCore::CSSParser::parseFontFaceSrc):
   54261         (WebCore::ShadowParseContext::ShadowParseContext):
   54262         (WebCore::CSSParser::parseShadow):
   54263         (WebCore::BorderImageParseContext::BorderImageParseContext):
   54264         (WebCore::BorderImageParseContext::commitBorderImage):
   54265         * css/CSSParser.h:
   54266         * css/SVGCSSParser.cpp:
   54267         (WebCore::CSSParser::parseSVGValue):
   54268 
   54269 2008-01-31  Oliver Hunt  <oliver (a] apple.com>
   54270 
   54271         RS=Brady.
   54272 
   54273         Add platform/Locker.h to vcproj
   54274 
   54275         * WebCore.vcproj/WebCore.vcproj:
   54276 
   54277 2008-01-31  Brady Eidson  <beidson (a] apple.com>
   54278 
   54279         Build fix
   54280 
   54281         * WebCore.xcodeproj/project.pbxproj: Header -> WebKit
   54282 
   54283 2008-01-31  Brady Eidson  <beidson (a] apple.com>
   54284 
   54285         Reviewed by Maciej
   54286 
   54287         Abstracted the concept of a "Locker" as upcoming work will rely on it.
   54288 
   54289         * platform/Locker.h: Added.  Template class to "lock()" and "unlock()" some arbitrary object
   54290         (WebCore::Locker::Locker): Lock the object
   54291         (WebCore::Locker::~Locker): Unlock it
   54292         * platform/Threading.h: `class MutexLocker` is now `typedef Locker<Mutex>`
   54293         * WebCore.xcodeproj/project.pbxproj:
   54294 
   54295 2008-01-31  Kevin McCullough  <kmccullough (a] apple.com>
   54296 
   54297         <rdar://problem/5716912> REGRESSION (r29816): Can't navigate back to
   54298         Gmail Inbox from Gmail Compose page
   54299         Rolling out the change that caused the regression.
   54300 
   54301         * WebCore.base.exp:
   54302         * bindings/js/JSHTMLDocumentCustom.cpp:
   54303         (WebCore::JSHTMLDocument::open):
   54304         * dom/DOMImplementation.cpp:
   54305         (WebCore::DOMImplementation::createHTMLDocument):
   54306         * dom/Document.cpp:
   54307         (WebCore::Document::recalcStyle):
   54308         (WebCore::Document::open):
   54309         (WebCore::Document::write):
   54310         (WebCore::Document::clear):
   54311         * dom/Document.h:
   54312         * history/HistoryItem.cpp:
   54313         (WebCore::HistoryItem::HistoryItem):
   54314         * history/HistoryItem.h:
   54315         * loader/FrameLoader.cpp:
   54316         (WebCore::FrameLoader::didExplicitOpen):
   54317         (WebCore::FrameLoader::load):
   54318         (WebCore::FrameLoader::reloadAllowingStaleData):
   54319         (WebCore::FrameLoader::reload):
   54320         (WebCore::FrameLoader::tokenizerProcessedData):
   54321         (WebCore::FrameLoader::post):
   54322         (WebCore::FrameLoader::continueLoadAfterNewWindowPolicy):
   54323         (WebCore::FrameLoader::shouldTreatURLAsSameAsCurrent):
   54324         (WebCore::FrameLoader::loadItem):
   54325         * loader/FrameLoader.h:
   54326         * platform/text/CharacterNames.h:
   54327         * xml/DOMParser.cpp:
   54328         (WebCore::DOMParser::parseFromString):
   54329         * xml/XMLHttpRequest.cpp:
   54330         (WebCore::XMLHttpRequest::getResponseXML):
   54331         * xml/XSLTProcessor.cpp:
   54332         (WebCore::XSLTProcessor::createDocumentFromSource):
   54333 
   54334 2008-01-31  Matt Lilek  <webkit (a] mattlilek.com>
   54335 
   54336         Reviewed by Tim Hatcher.
   54337 
   54338         Bug 14960: Cannot copy text in Web Inspector Network panel
   54339         http://bugs.webkit.org/show_bug.cgi?id=14960
   54340 
   54341         * page/inspector/inspector.css:
   54342 
   54343 2008-01-31  Matt Lilek  <webkit (a] mattlilek.com>
   54344 
   54345         Reviewed by Adam Roben.
   54346 
   54347         Bug 14514: Add full URL view on mouseOver in the network page
   54348         http://bugs.webkit.org/show_bug.cgi?id=14514
   54349         <rdar://problem/5712841>
   54350 
   54351         * page/inspector/inspector.js:
   54352 
   54353 2008-01-31  Alp Toker  <alp (a] atoker.com>
   54354 
   54355         Rubber-stamped Adam Roben.
   54356 
   54357         http://bugs.webkit.org/show_bug.cgi?id=17006
   54358         [GTK] Header path should be webkit/webkit.h
   54359 
   54360         Move the GTK+ API sources as needed and update the build systems.
   54361 
   54362         * GNUmakefile.am:
   54363         * WebCore.pro:
   54364 
   54365 2008-01-31  Sam Weinig  <sam (a] webkit.org>
   54366 
   54367         Reviewed by Geoff Garen.
   54368 
   54369         No need to get the prototype just to compare compare property names.
   54370 
   54371         * bindings/js/JSHistoryCustom.cpp:
   54372         (WebCore::JSHistory::customGetOwnPropertySlot):
   54373 
   54374 2008-01-31  Sam Weinig  <sam (a] webkit.org>
   54375 
   54376         Fix non-mac builds.
   54377 
   54378         * GNUmakefile.am:
   54379         * WebCore.pro:
   54380         * WebCore.vcproj/WebCore.vcproj:
   54381         * WebCoreSources.bkl:
   54382 
   54383 2008-01-31  David Hyatt  <hyatt (a] apple.com>
   54384 
   54385         Fix for bug 17101.
   54386 
   54387         List items need to ignore the line box shrinking quirk, since IE and Firefox both do.
   54388 
   54389         Reviewed by Eric
   54390 
   54391         fast/lists/list-item-line-height.html
   54392 
   54393         * rendering/InlineFlowBox.h:
   54394         (WebCore::InlineFlowBox::InlineFlowBox):
   54395 
   54396 2008-01-31  Samuel Weinig  <sam (a] webkit.org>
   54397 
   54398         Reviewed by Darin Adler.
   54399 
   54400         Fix for <rdar://problem/5708993> Mutability of the History object
   54401 
   54402         - Don't allow cross-domain get access to any of the history objects properties
   54403           except the back(), forward() and go() methods.
   54404         - Don't allow cross-domain put access to any of the history objects properties.
   54405         - Don't allow cross-domain enumeration of the History or Location objects.
   54406 
   54407         Tests: http/tests/security/cross-frame-access-history-get-override.html
   54408                http/tests/security/cross-frame-access-history-get.html
   54409                http/tests/security/cross-frame-access-history-put.html
   54410 
   54411         * WebCore.xcodeproj/project.pbxproj:
   54412         * bindings/js/JSDOMWindowCustom.cpp: Remove unnessary KJS::'s
   54413         (WebCore::JSDOMWindow::customGetOwnPropertySlot):
   54414         (WebCore::JSDOMWindow::customPut):
   54415         (WebCore::JSDOMWindow::getPropertyNames): Moved implementation from KJS::Window now that the declaration is autogenerated
   54416         using the new CustomGetPropertyNames.
   54417         (WebCore::JSDOMWindow::postMessage):
   54418 
   54419         * bindings/js/JSHistoryCustom.cpp: Added.
   54420         (WebCore::allowsAccessFromFrame):
   54421         (WebCore::JSHistory::customGetOwnPropertySlot): Only allow getting the declared functions back(), forward() and go() from cross-domain.
   54422         Deny all other gets.
   54423         (WebCore::JSHistory::customPut): Don't allow putting cross-domain.
   54424         (WebCore::JSHistory::getPropertyNames): Don't allow enumeration cross-domain.
   54425 
   54426         * bindings/js/JSLocation.cpp:
   54427         (WebCore::allowsAccessFromFrame):
   54428         (WebCore::JSLocation::getPropertyNames): Don't allow enumeration cross-domain.
   54429         * bindings/js/JSLocation.h:
   54430 
   54431         * bindings/js/kjs_window.cpp:
   54432         * bindings/js/kjs_window.h:
   54433 
   54434         * bindings/scripts/CodeGeneratorJS.pm:
   54435         Add support for new CustomGetPropertNames extended attribute and changed the logic of CustomPutFunction
   54436         to create an overrided put() function even if no read-write properties exist.
   54437 
   54438         * page/DOMWindow.idl: Added CustomGetPropertNames
   54439         * page/History.idl: Added CustomGetPropertNames
   54440 
   54441 2008-01-30  Justin Garcia  <justin.garcia (a] apple.com>
   54442 
   54443         Reviewed by Darin Adler.
   54444         
   54445         <rdar://problem/5708115> REGRESSION: Words selected with a double click and copied won't paste into Mail
   54446 
   54447         * page/mac/WebCoreFrameBridge.h: Re-exposed smartInsertForString:, it's used by a WebKit method used by Mail.
   54448 
   54449 2008-01-31  Adam Roben  <aroben (a] apple.com>
   54450 
   54451         Add line box drawing code to InspectorController::drawNodeHighlight
   54452 
   54453         This makes drawNodeHighlight a complete replacement for the painting
   54454         code in WebKit/mac/WebNodeHighlightView.mm, and also brings line box
   54455         rects to Windows for the first time.
   54456 
   54457         Reviewed by Darin.
   54458 
   54459         * dom/Node.h: Changed isSVGElement to always exist, but to only be
   54460         virtual when ENABLE(SVG) is true. This way you can always call
   54461         node->isSVGElement() without checking ENABLE(SVG).
   54462         * page/InspectorController.cpp:
   54463         (WebCore::InspectorController::drawNodeHighlight): Ported line box
   54464         rect code from the Mac implementation in WebNodeHighlightView.mm.
   54465 
   54466 2008-01-31  Adam Roben  <aroben (a] apple.com>
   54467 
   54468         Put more knowledge about the node highlight in WebCore
   54469 
   54470         InspectorController now calculates the overlay rect and node rect when
   54471         drawing the node highlight instead of having them be passed in.
   54472         InspectorController now holds onto the highlighted node so that it can
   54473         determine these rects.
   54474 
   54475         Once all platforms are calling down to drawNodeHighlight instead of
   54476         drawing the highlight themselves, we can change
   54477         InspectorClient::highlight(Node*) to something like
   54478         InspectorClient::updateAndShowHighlight().
   54479 
   54480         This also fixes Bug 14264: Node highlight makes it impossible to
   54481         scroll the page
   54482         <http://bugs.webkit.org/show_bug.cgi?id=14264>
   54483         <rdar://5712788>
   54484 
   54485         Reviewed by Darin.
   54486 
   54487         * page/InspectorController.cpp:
   54488         (WebCore::InspectorController::highlight): Store the node for use in
   54489         drawNodeHighlight.
   54490         (WebCore::InspectorController::drawNodeHighlight): Changed to be a
   54491         const instance method. Now calculates the overlay rect and node rect
   54492         instead of having them passed in.
   54493         * page/InspectorController.h:
   54494 
   54495 2008-01-31  Adam Roben  <aroben (a] apple.com>
   54496 
   54497         Add node highlight drawing code to InspectorController
   54498 
   54499         The code came from WebKit/win/WebNodeHighlight.cpp. It's not quite as
   54500         complete as the Mac implementation (in particular, it doesn't handle
   54501         line-box rects), but it's a start.
   54502 
   54503         Reviewed by Darin.
   54504 
   54505         * page/InspectorController.cpp:
   54506         (WebCore::InspectorController::drawNodeHighlight): Added.
   54507         * page/InspectorController.h:
   54508 
   54509 2008-01-31  Dan Bernstein  <mitz (a] apple.com>
   54510 
   54511         Reviewed by Dave Hyatt.
   54512 
   54513         - fix http://bugs.webkit.org/show_bug.cgi?id=17107
   54514           <rdar://problem/5716722> REGRESSION (r29834): Article text on redhat.com magazine site appears to be painting twice
   54515 
   54516         Test: fast/block/float/intruding-painted-twice.html
   54517 
   54518         * rendering/RenderBlock.cpp:
   54519         (WebCore::RenderBlock::layoutBlock): Pass 'false' for the new
   54520         makeChildPaintOtherFloats parameter to addOverhangingFloats() because at
   54521         this point we are only taking away floats from the child.
   54522         (WebCore::RenderBlock::layoutBlockChildren): Pass 'true' for the new
   54523         makeChildPaintOtherFloats parameter to addOverhangingFloats() iff the
   54524         child was not laid out again. Only in that case, it may have overhanging
   54525         floats that it does not paint because they used to be overhanging from
   54526         the parent, but now they are not.
   54527         (WebCore::RenderBlock::addOverhangingFloats): Refined the conditions for
   54528         making the child paint the float: require that the float be a descendant
   54529         of the child (the other case is when it intrudes into the child from
   54530         another sibling) and that it does not have a layer (in which case it
   54531         paints itself). In addition, do the check only if the caller passed
   54532         'true' for the makeChildPaintOtherFloats parameter.
   54533         * rendering/RenderBlock.h:
   54534 
   54535 2008-01-30  Dan Bernstein  <mitz (a] apple.com>
   54536 
   54537         Reviewed by Sam Weinig.
   54538 
   54539         - change the interpretation of unicode-range values in "from-to" form
   54540           to include the "to" character.
   54541 
   54542         Test: fast/css/font-face-unicode-range.html
   54543 
   54544         * css/CSSParser.cpp:
   54545         (WebCore::CSSParser::parseFontFaceUnicodeRange):
   54546         * css/CSSSegmentedFontFace.cpp:
   54547         (WebCore::CSSSegmentedFontFace::overlayRange):
   54548         * platform/graphics/GlyphPageTreeNode.cpp:
   54549         (WebCore::GlyphPageTreeNode::initializePage):
   54550         * platform/graphics/SegmentedFontData.cpp:
   54551         (WebCore::SegmentedFontData::fontDataForCharacter):
   54552         (WebCore::SegmentedFontData::containsCharacters):
   54553 
   54554 2008-01-30  Dan Bernstein  <mitz (a] apple.com>
   54555 
   54556         Reviewed by Darin Adler.
   54557 
   54558         - prune references to custom fonts' SimpleFontData from the glyph page
   54559           tree when they are destroyed
   54560 
   54561         * css/CSSFontFaceSource.cpp:
   54562         (WebCore::CSSFontFaceSource::pruneTable):
   54563 
   54564 2008-01-30  Darin Adler  <darin (a] apple.com>
   54565 
   54566         Reviewed by Tim Hatcher.
   54567 
   54568         New fix for <rdar://problem/5688428> Reproducible assertion failure
   54569         in SQLTransaction::performNextStep() (16876)
   54570 
   54571         Fixes a deadlock that was happening for all Database use. All
   54572         storage layout tests pass.
   54573 
   54574         * storage/Database.cpp:
   54575         (WebCore::CurrentThreadSetter::CurrentThreadSetter): New helper class
   54576         to set the current thread and zero it on destruction.
   54577         (WebCore::CurrentThreadSetter::~CurrentThreadSetter): Set threadIdentifierStorage to 0.
   54578         (WebCore::Database::Database): Set m_transactionStepThread to 0.
   54579         (WebCore::Database::performTransactionStep): Set m_transactionStepThread to currentThread().
   54580         (WebCore::Database::scheduleTransactionCallback): Assert m_transactionStepThread
   54581         is currentThread().
   54582         * storage/Database.h: Add m_transactionStepThread for debug builds
   54583         to track which thread performTransactionStep() was called on. 
   54584 
   54585 2008-01-30  Timothy Hatcher  <timothy (a] apple.com>
   54586 
   54587         Reviewed by Darin Adler.
   54588 
   54589         ASSERTION FAILED: JSLock::lockCount() > 0 when opening the
   54590         Web Inspector on a page with a Database.
   54591 
   54592         Fix the ASSERT by taking a JSLock before calling toJS().
   54593 
   54594         * page/InspectorController.cpp:
   54595         (WebCore::InspectorController::addDatabaseScriptResource):
   54596 
   54597 2008-01-30  Beth Dakin  <bdakin (a] apple.com>
   54598 
   54599         Reviewed by Darin.
   54600 
   54601         Fix for <rdar://problem/5598609> CrashTracer: [USER] 626 crashes in 
   54602         Safari at com.apple.WebCore: WebCore::FrameView::needsFullRepaint 
   54603         const + 6
   54604 
   54605         The real problem here is tracked by rdar://5598072, which is that 
   54606         frames can lose sync between their view and their document when a 
   54607         non-HTML view is loaded (such as bookmarks view or a PDF). That can 
   54608         cause this crash if the layout timer fires before things have fixed 
   54609         themselves. This fix turns an ASSERT in FrameView::layout() into an 
   54610         early return to cause graceful failure until the root of the 
   54611         problem is addressed. 
   54612 
   54613         * page/FrameView.cpp:
   54614         (WebCore::FrameView::layout):
   54615 
   54616 2008-01-30  Justin Garcia  <justin.garcia (a] apple.com>
   54617 
   54618         Reviewed by Darin Adler.
   54619 
   54620         <rdar://problem/5700414> REGRESSION (Adama-ToT): Selecting "Header 1" style in Leopard Server wiki inserts newline
   54621 
   54622         * editing/FormatBlockCommand.cpp:
   54623         (WebCore::FormatBlockCommand::doApply): If the selected paragraph was empty,
   54624         we may still need to call moveParagrah to remove the line break that holds that
   54625         paragraph open because the new block of the requested type needs to to replace it.
   54626 
   54627 2008-01-30  Timothy Hatcher  <timothy (a] apple.com>
   54628 
   54629         Reviewed by Darin Adler.
   54630 
   54631         <rdar://problem/5688428> Reproducible assertion failure in SQLTransaction::performNextStep() (16876)
   54632 
   54633         Revised fix to use the globalCallbackMutex() mutex and hold the mutex
   54634         for the entire function scope.
   54635 
   54636         * storage/Database.cpp:
   54637         (WebCore::Database::performTransactionStep):
   54638 
   54639 2008-01-30  Timothy Hatcher  <timothy (a] apple.com>
   54640 
   54641         Reviewed by Adam Roben.
   54642 
   54643         Make ResourceTreeElement inherit the prototype of TreeElement.
   54644 
   54645         * page/inspector/Resource.js:
   54646 
   54647 2008-01-30  Sam Weinig  <sam (a] webkit.org>
   54648 
   54649         Reviewed by Adam Roben.
   54650 
   54651         Don't include SecurityOrigin.h in Document.h so that we can avoid massive
   54652         recompilation when changing the SecurityOrigin.
   54653 
   54654         * dom/Document.cpp:
   54655         (WebCore::Document::setSecurityOrigin):
   54656         * dom/Document.h:
   54657 
   54658 2008-01-30  Tim Omernick  <timo (a] apple.com>
   54659 
   54660         Reviewed by Tim Hatcher and Brady.
   54661 
   54662         <rdar://problem/5688428> Reproducible assertion failure in SQLTransaction::performNextStep() (16876)
   54663 
   54664         * storage/Database.cpp:
   54665         (WebCore::Database::performTransactionStep): Do not perform the next transaction if
   54666         a global callback is already scheduled.
   54667 
   54668 2008-01-30  Jon Honeycutt  <jhoneycutt (a] apple.com>
   54669 
   54670         Reviewed by Darin.
   54671 
   54672         <rdar://problem/5669317> Crash closing pop up window with Real Player
   54673         content
   54674 
   54675         Some RealPlayer versions hang on unload. To prevent this hang, don't
   54676         unload versions since the last known unloadable version.
   54677         <rdar://problem/5713147> tracks revisiting this when the bug in
   54678         RealPlayer is fixed and we can again unload the plug-in.
   54679 
   54680         * plugins/win/PluginPackageWin.cpp:
   54681         (WebCore::PluginPackageWin::compareFileVersion): Compare the plug-in's
   54682         file version to the passed file version, returning -1, 0, or 1 if the
   54683         plug-in's version is less than, equal to, or greater than the version
   54684         passed.
   54685         (WebCore::PluginPackageWin::isPluginBlacklisted): Use
   54686         compareFileVersion()
   54687         * plugins/win/PluginPackageWin.h:
   54688         * plugins/win/PluginViewWin.cpp:
   54689         (WebCore::PluginViewWin::determineQuirks): If the plug-in version is
   54690         newer than the last-known unloadable version, add the DontUnloadPlugin
   54691         quirk
   54692 
   54693 2008-01-29  Mark Rowe  <mrowe (a] apple.com>
   54694 
   54695         Reviewed by Tim Hatcher.
   54696 
   54697         Look for headers relative to NEXT_ROOT so that build-root picks up the WebCoreSQLite
   54698         version of sqlite3.h rather than the older system version.
   54699 
   54700         * Configurations/Base.xcconfig:
   54701 
   54702 2008-01-29  Dan Bernstein  <mitz (a] apple.com>
   54703 
   54704         - build fix
   54705 
   54706         * loader/CachedFont.cpp:
   54707         (WebCore::CachedFont::CachedFont):
   54708 
   54709 2008-01-29  Mark Rowe  <mrowe (a] apple.com>
   54710 
   54711         Reviewed by Brady Eidson.
   54712 
   54713         Add the correct directory to the header search paths in Production builds.
   54714 
   54715         * Configurations/Base.xcconfig:
   54716 
   54717 2008-01-29  Dan Bernstein  <mitz (a] apple.com>
   54718 
   54719         Reviewed by Dave Hyatt.
   54720 
   54721         - fix http://bugs.webkit.org/show_bug.cgi?id=17085
   54722           <rdar://problem/5714136> REGRESSION (r29839): All remote fonts are treated as SVG fonts
   54723 
   54724         Test: fast/css/font-face-remote.html
   54725 
   54726         Added an isSVGFont method to CachedFont and use it to decide how to
   54727         process the font data. Currently whether the data is SVG is determined
   54728         based on the format property in the @font-face rule, but in the future
   54729         the MIME type or other metadata may be used when the format is
   54730         unspecified.
   54731 
   54732         * css/CSSFontFaceSource.cpp:
   54733         (WebCore::CSSFontFaceSource::getFontData): Changed to parse the data as
   54734         SVG only if the CachedFont is an SVG font.
   54735         * css/CSSFontSelector.cpp:
   54736         (WebCore::CSSFontSelector::addFontFaceRule): Mark the CachedFont as an
   54737         SVG font based on format.
   54738         * loader/CachedFont.cpp:
   54739         (WebCore::CachedFont::CachedFont): Initialize m_isSVGFont to false.
   54740         (WebCore::CachedFont::ensureCustomFontData):
   54741         (WebCore::CachedFont::ensureSVGFontData):
   54742         (WebCore::CachedFont::getSVGFontById):
   54743         * loader/CachedFont.h:
   54744         (WebCore::CachedFont::isSVGFont): Added.
   54745         (WebCore::CachedFont::setSVGFont): Added.
   54746 
   54747 2008-01-29  Antti Koivisto  <antti (a] apple.com>
   54748 
   54749         Some comment cleanup.
   54750 
   54751         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
   54752         (WebCore::MediaPlayerPrivate::disableUnsupportedTracks):
   54753         * platform/graphics/win/QTMovieWin.cpp:
   54754         (QTMovieWin::load):
   54755         (QTMovieWin::disableUnsupportedTracks):
   54756 
   54757 2008-01-29  Adele Peterson  <adele (a] apple.com>
   54758 
   54759         Reviewed by Antti.
   54760 
   54761         Fix for <rdar://5683527> media/{audio,video|-controls-rendering.html failing
   54762         
   54763         * rendering/RenderThemeSafari.cpp: (WebCore::RenderThemeSafari::isControlStyled):
   54764         Don't treat all media controls as styled.  This causes builds with an old version of SafariTheme to have different metrics for these controls.
   54765 
   54766 2008-01-29  Dan Bernstein  <mitz (a] apple.com>
   54767 
   54768         Reviewed by Dave Hyatt.
   54769 
   54770         - make Font instances cache their primary font
   54771 
   54772         * WebCore.base.exp:
   54773         * platform/graphics/Font.cpp:
   54774         (WebCore::Font::Font):
   54775         (WebCore::Font::operator=):
   54776         (WebCore::Font::cachePrimaryFont):
   54777         (WebCore::Font::update):
   54778         * platform/graphics/Font.h:
   54779         (WebCore::Font::primaryFont):
   54780 
   54781 2008-01-29  Dan Bernstein  <mitz (a] apple.com>
   54782 
   54783         - Leopard build fix
   54784 
   54785         * platform/graphics/SimpleFontData.cpp:
   54786         (WebCore::SimpleFontData::SimpleFontData):
   54787 
   54788 2008-01-29  Mark Rowe  <mrowe (a] apple.com>
   54789 
   54790         Reviewed by Tim Hatcher.
   54791 
   54792         <rdar://problem/5600926> WebCore on Tiger must link to its own copy of SQLite 3.4 or newer (so HTML database behavior will be correct).
   54793 
   54794         * Configurations/Base.xcconfig: Update the header search path on Tiger.
   54795         * Configurations/DebugRelease.xcconfig: Update the header search path on Tiger.
   54796         * Configurations/WebCore.xcconfig: Link against libWebCoreSQLite3.a when building on Tiger.
   54797         * WebCore.xcodeproj/project.pbxproj: Update the header search path in Production builds on Tiger.
   54798 
   54799 2008-01-29  Dan Bernstein  <mitz (a] apple.com>
   54800 
   54801         Reviewed by Adam Roben and Oliver Hunt.
   54802 
   54803         - fix <rdar://problem/5713131> REGRESSION (r29246): Many SVG font tests are failing
   54804 
   54805         * platform/graphics/SimpleFontData.cpp:
   54806         (WebCore::SimpleFontData::SimpleFontData): Use double instead of float
   54807         for consistent rounding behavior between Mac OS X and Windows.
   54808 
   54809 2008-01-29  Adam Roben  <aroben (a] apple.com>
   54810 
   54811         Fix <rdar://5713302> Web Inspector on Windows is not using the
   54812         localized strings
   54813 
   54814         Reviewed by Steve.
   54815 
   54816         * WebCore.vcproj/WebCore.vcproj: Copy InspectorLocalizedStrings.js to
   54817         $WebKitOutputDir.
   54818         * page/InspectorController.cpp: Touch this to force the project to
   54819         build.
   54820 
   54821 2008-01-29  Eric Seidel  <eric (a] webkit.org>
   54822 
   54823         Reviewed by Nikolas.
   54824 
   54825         Acid3 after double-attach
   54826         http://bugs.webkit.org/show_bug.cgi?id=17058
   54827         
   54828         I believe SVGTextPathElement::buildPendingResource() was entirely
   54829         bogus, removing it did not cause any tests to fail.
   54830 
   54831         Test: svg/custom/textPath-assert.svg
   54832 
   54833         * svg/SVGTextPathElement.cpp:
   54834         (WebCore::SVGTextPathElement::insertedIntoDocument): remove buildPendingResource()
   54835         * svg/SVGTextPathElement.h:
   54836 
   54837 2008-01-29  Adam Roben  <aroben (a] apple.com>
   54838 
   54839         Fix Bug 16234: Inspector should support searching for elements by CSS selectors
   54840 
   54841         <http://bugs.webkit.org/show_bugs.cgi?id=16234>
   54842         <rdar://5712862>
   54843 
   54844         Reviewed by Tim.
   54845 
   54846         * page/inspector/inspector.js: Use Document.querySelectorAll to search
   54847         for elements by CSS selector. Also store a custom property on nodes
   54848         being added to the search results to avoid showing the same node more
   54849         than once.
   54850 
   54851 2008-01-29  Adam Roben  <aroben (a] apple.com>
   54852 
   54853         Fix <rdar://5711136> Full-screen Flash on 1up.com is unresponsive
   54854 
   54855         Reviewed by Anders and Darin.
   54856 
   54857         No test possible.
   54858 
   54859         * plugins/win/PluginViewWin.cpp:
   54860         (WebCore::PluginViewWin::wndProc): Set/release capture on mouse
   54861         down/up, like Firefox does.
   54862 
   54863 2008-01-28  Dan Bernstein  <mitz (a] apple.com>
   54864 
   54865         Reviewed by Sam Weinig.
   54866 
   54867         - make isSVGFont non-virtual
   54868 
   54869         * platform/graphics/FontData.h:
   54870         * platform/graphics/SegmentedFontData.cpp:
   54871         * platform/graphics/SegmentedFontData.h:
   54872         * platform/graphics/SimpleFontData.h:
   54873         (WebCore::SimpleFontData::isSVGFont):
   54874 
   54875 2008-01-28  Dan Bernstein  <mitz (a] apple.com>
   54876 
   54877         Reviewed by Adam Roben.
   54878 
   54879         - fix <rdar://problem/5700824> Chunky scrolling + scrolling artifacts @ netflix.com/Notebook
   54880 
   54881         * platform/win/ScrollViewWin.cpp:
   54882         (WebCore::ScrollView::ScrollViewPrivate::valueChanged): Send the scroll
   54883         event before updating the window, thus giving event handlers a chance
   54884         to update layout for the new scroll position, eliminating the jitter.
   54885 
   54886 2008-01-28  Adam Roben  <aroben (a] apple.com>
   54887 
   54888         Fix <rdar://5555260> Gmail doesn't load when a user stylesheet is specified
   54889 
   54890         Reviewed by Darin.
   54891 
   54892         A null value exception was being thrown in Gmail's JS code because a
   54893         call to document.write failed. document.write failed because
   54894         Document::close had not yet been called. Document::close was not
   54895         called because the Document was considered to not be "complete" in
   54896         FrameLoader::checkComplete because the user stylesheet was in the
   54897         process of loading. The user stylesheet was loading because it had
   54898         previously been evicted from the cache and was loading fresh from
   54899         disk. It had been evicted from the cache because the calculation of
   54900         the expiration date was incorrectly casting/overflowing in
   54901         ResourceResponseCFNet.cpp.
   54902 
   54903         We now calculate the expiration date in a way that does not cause us
   54904         to overflow a time_t, and we correctly clamp the value to the range of
   54905         a time_t. I also made the fix for the last modified date, though that
   54906         was not causing any bug I am aware of.
   54907 
   54908         In the long-term it seems like whether or not Document::close is
   54909         called should not be dependent upon whether the user stylesheet has
   54910         finished loading or not.
   54911 
   54912         * platform/network/cf/ResourceResponseCFNet.cpp:
   54913         (WebCore::toTimeT): Added. Converts from CFAbsoluteTime to time_t and
   54914         clamps to the range of time_t.
   54915         (WebCore::ResourceResponse::doUpdateResourceResponse): Call toTimeT.
   54916 
   54917 2008-01-28  Dan Bernstein  <mitz (a] apple.com>
   54918 
   54919         Reviewed by Nikolas Zimmermann.
   54920 
   54921         - fix leaks introduced in r29838
   54922 
   54923         * svg/SVGFont.cpp:
   54924         (WebCore::floatWidthMissingGlyphCallback):
   54925         (WebCore::drawTextMissingGlyphCallback):
   54926 
   54927 2008-01-28  Nikolas Zimmermann  <zimmermann (a] kde.org>
   54928 
   54929         Reviewed by Eric, Dan & Oliver.
   54930 
   54931         Fixes: http://bugs.webkit.org/show_bug.cgi?id=16980
   54932 
   54933         Support external SVG Fonts, by reusing the custom font handling logic.
   54934         This enables us - as first engine - to render HTML pages using SVG Fonts.
   54935 
   54936         Fixes fonts-elem-03-b.svg / fonts-elem-04-b.svg / fonts-elem-07-b.svg
   54937         Add new testcase svg-fonts-in-html.html.
   54938 
   54939         * css/CSSFontFaceSource.cpp:
   54940         (WebCore::CSSFontFaceSource::getFontData):
   54941         * css/CSSFontFaceSource.h:
   54942         * css/CSSFontFaceSrcValue.cpp:
   54943         (WebCore::CSSFontFaceSrcValue::isSVGFontFaceSrc):
   54944         (WebCore::CSSFontFaceSrcValue::isSupportedFormat):
   54945         * css/CSSFontFaceSrcValue.h:
   54946         * css/CSSFontSelector.cpp:
   54947         (WebCore::CSSFontSelector::addFontFaceRule):
   54948         * loader/CachedFont.cpp:
   54949         (WebCore::CachedFont::~CachedFont):
   54950         (WebCore::CachedFont::ensureSVGFontData):
   54951         (WebCore::CachedFont::extractFontFromSVGData):
   54952         (WebCore::CachedFont::platformDataFromSVGData):
   54953         * loader/CachedFont.h:
   54954         * platform/graphics/Font.cpp:
   54955         (WebCore::Font::offsetForPosition):
   54956         * platform/graphics/Font.h:
   54957         * svg/SVGFont.cpp:
   54958         (WebCore::floatWidthOfSubStringUsingSVGFont):
   54959         (WebCore::Font::drawTextUsingSVGFont):
   54960         (WebCore::Font::offsetForPositionForTextUsingSVGFont):
   54961         * svg/SVGFontFaceElement.cpp:
   54962         (WebCore::SVGFontFaceElement::rebuildFontFace):
   54963         * svg/SVGFontFaceElement.h:
   54964         * svg/SVGFontFaceUriElement.cpp:
   54965         (WebCore::SVGFontFaceUriElement::srcValue):
   54966 
   54967 2008-01-28  Dan Bernstein  <mitz (a] apple.com>
   54968 
   54969         Reviewed by Adam Roben.
   54970 
   54971         - fix svg/W3C-SVG-1.1/fonts-glyph-04-t.svg failure on Windows
   54972 
   54973         The results differed between Mac OS X and Windows because the code was
   54974         using a 0-size font, which Mac OS X changes to 12pt.
   54975 
   54976         * svg/SVGFont.cpp:
   54977         (WebCore::floatWidthMissingGlyphCallback): Use the font description of
   54978         the primary font to initialize the fallback font.
   54979         (WebCore::drawTextMissingGlyphCallback): Ditto.
   54980 
   54981 2008-01-28  Eric Seidel  <eric (a] webkit.org>
   54982 
   54983         Reviewed by Nikolas Zimmermann.
   54984 
   54985         Use class instead of struct to appease MSVC.
   54986 
   54987         * history/HistoryItem.h:
   54988         * loader/FrameLoaderClient.h:
   54989         * page/InspectorController.h:
   54990         * platform/network/ResourceRequestBase.h:
   54991         * platform/network/mac/ResourceRequest.h:
   54992 
   54993 2008-01-28  Dan Bernstein  <mitz (a] apple.com>
   54994 
   54995         Reviewed by Darin Adler.
   54996 
   54997         - fix http://bugs.webkit.org/show_bug.cgi?id=16774
   54998           REGRESSION (r27464-r27504) javascript popup menu does not display 'close' button
   54999 
   55000         Test: fast/dynamic/float-no-longer-overhanging.html
   55001 
   55002         * rendering/RenderBlock.cpp:
   55003         (WebCore::RenderBlock::addOverhangingFloats): If a child's float turns
   55004         out not to be overhanging at this time, ensure that the child paints it.
   55005 
   55006 2008-01-28  Oliver Hunt  <oliver (a] apple.com>
   55007 
   55008         More wx fixes
   55009 
   55010         * platform/graphics/wx/AffineTransformWx.cpp:
   55011 
   55012 2008-01-28  Oliver Hunt  <oliver (a] apple.com>
   55013 
   55014         And another Wx build fix
   55015 
   55016         * platform/graphics/wx/AffineTransformWx.cpp:
   55017         (WebCore::AffineTransform::mapRect):
   55018 
   55019 2008-01-28  Oliver Hunt  <oliver (a] apple.com>
   55020 
   55021         Yet another Wx build fix
   55022 
   55023         * platform/graphics/wx/GraphicsContextWx.cpp:
   55024 
   55025 2008-01-28  Oliver Hunt  <oliver (a] apple.com>
   55026 
   55027         Wx build fix
   55028 
   55029         * platform/graphics/wx/GraphicsContextWx.cpp:
   55030         (WebCore::GraphicsContext::getCTM):
   55031 
   55032 2008-01-28  Oliver Hunt  <oliver (a] apple.com>
   55033 
   55034         Gtk build fix
   55035 
   55036         * platform/graphics/cairo/GraphicsContextCairo.cpp:
   55037 
   55038 2008-01-27  Oliver Hunt  <oliver (a] apple.com>
   55039 
   55040         Reviewed by Sam Weinig.
   55041 
   55042         Bug 16629: <canvas> does not support isPointInPath()
   55043 
   55044         Relatively trivial change to implement pointInPath and add
   55045         it to the bindings.  Most of this patch is the addition of
   55046         GraphicsContext::getCTM() by pulling the various platform
   55047         implementations from CanvasRenderingContext2D::willDraw
   55048 
   55049         Test: fast/canvas/pointInPath.html
   55050 
   55051         * html/CanvasRenderingContext2D.cpp:
   55052         (WebCore::CanvasRenderingContext2D::isPointInPath):
   55053         (WebCore::CanvasRenderingContext2D::willDraw):
   55054         * html/CanvasRenderingContext2D.h:
   55055         * html/CanvasRenderingContext2D.idl:
   55056         * platform/graphics/AffineTransform.cpp:
   55057         (WebCore::AffineTransform::mapPoint):
   55058           Support mapping of FloatRects
   55059         * platform/graphics/AffineTransform.h:
   55060         * platform/graphics/GraphicsContext.h:
   55061         * platform/graphics/cairo/GraphicsContextCairo.cpp:
   55062         (WebCore::GraphicsContext::getCTM):
   55063         * platform/graphics/cg/GraphicsContextCG.cpp:
   55064         (WebCore::GraphicsContext::getCTM):
   55065         * platform/graphics/qt/GraphicsContextQt.cpp:
   55066         (WebCore::GraphicsContext::getCTM):
   55067 
   55068 2008-01-27  Alexey Proskuryakov  <ap (a] webkit.org>
   55069 
   55070         Reviewed by Darin.
   55071 
   55072         http://bugs.webkit.org/show_bug.cgi?id=17014
   55073         REGRESSION: EUC-CN code A3A0 is mapped to U+E5E5 instead of U+3000
   55074 
   55075         Test: fast/encoding/char-decoding.html
   55076 
   55077         * platform/text/TextCodecICU.cpp:
   55078         (WebCore::TextCodecICU::decode): Added a workaround that we used to have in Mac code.
   55079 
   55080         * platform/text/mac/TextCodecMac.cpp:
   55081         (WebCore::TextCodecMac::decode): Corrected a comment.
   55082 
   55083 2008-01-27  Alp Toker  <alp (a] atoker.com>
   55084 
   55085         Reviewed by Mark Rowe.
   55086 
   55087         http://bugs.webkit.org/show_bug.cgi?id=17029
   55088         Use of deprecated class function but declares GTK_DISABLE_DEPRECATED
   55089 
   55090         Sync gtkdrawing.h (1.51) and gtk2drawing.c (1.71) from Mozilla
   55091         upstream.
   55092 
   55093         Adapt RenderThemeGtk.cpp to track minor changes.
   55094 
   55095         * platform/gtk/RenderThemeGtk.cpp:
   55096         (WebCore::gtkTextDirection):
   55097         (WebCore::adjustMozStyle):
   55098         (WebCore::setMozState):
   55099         (WebCore::paintMozWidget):
   55100         * platform/gtk/gtk2drawing.c:
   55101         (setup_widget_prototype):
   55102         (ensure_hpaned_widget):
   55103         (ensure_vpaned_widget):
   55104         (ensure_toggle_button_widget):
   55105         (ensure_combo_box_entry_widget):
   55106         (ensure_dropdown_entry_widget):
   55107         (moz_gtk_get_dropdown_button):
   55108         (ensure_arrow_widget):
   55109         (ensure_toolbar_separator_widget):
   55110         (ensure_statusbar_widget):
   55111         (ensure_frame_widget):
   55112         (ensure_menu_separator_widget):
   55113         (ensure_tree_view_widget):
   55114         (ensure_tree_header_cell_widget):
   55115         (ensure_expander_widget):
   55116         (ConvertGtkState):
   55117         (moz_gtk_button_paint):
   55118         (moz_gtk_widget_get_focus):
   55119         (moz_gtk_splitter_get_metrics):
   55120         (moz_gtk_toggle_paint):
   55121         (moz_gtk_scrollbar_button_paint):
   55122         (moz_gtk_scrollbar_trough_paint):
   55123         (moz_gtk_scrollbar_thumb_paint):
   55124         (moz_gtk_spin_paint):
   55125         (moz_gtk_spin_updown_paint):
   55126         (moz_gtk_scale_paint):
   55127         (moz_gtk_scale_thumb_paint):
   55128         (moz_gtk_gripper_paint):
   55129         (moz_gtk_hpaned_paint):
   55130         (moz_gtk_vpaned_paint):
   55131         (moz_gtk_entry_paint):
   55132         (moz_gtk_treeview_paint):
   55133         (moz_gtk_tree_header_cell_paint):
   55134         (moz_gtk_tree_header_sort_arrow_paint):
   55135         (moz_gtk_treeview_expander_paint):
   55136         (moz_gtk_expander_paint):
   55137         (moz_gtk_option_menu_paint):
   55138         (moz_gtk_downarrow_paint):
   55139         (moz_gtk_dropdown_arrow_paint):
   55140         (moz_gtk_container_paint):
   55141         (moz_gtk_toggle_label_paint):
   55142         (moz_gtk_toolbar_paint):
   55143         (moz_gtk_toolbar_separator_paint):
   55144         (moz_gtk_tooltip_paint):
   55145         (moz_gtk_resizer_paint):
   55146         (moz_gtk_frame_paint):
   55147         (moz_gtk_progressbar_paint):
   55148         (moz_gtk_progress_chunk_paint):
   55149         (moz_gtk_get_tab_thickness):
   55150         (moz_gtk_tab_paint):
   55151         (moz_gtk_tabpanels_paint):
   55152         (moz_gtk_menu_bar_paint):
   55153         (moz_gtk_menu_popup_paint):
   55154         (moz_gtk_menu_separator_paint):
   55155         (moz_gtk_menu_item_paint):
   55156         (moz_gtk_menu_arrow_paint):
   55157         (moz_gtk_check_menu_item_paint):
   55158         (moz_gtk_window_paint):
   55159         (moz_gtk_get_widget_border):
   55160         (moz_gtk_get_dropdown_arrow_size):
   55161         (moz_gtk_get_toolbar_separator_width):
   55162         (moz_gtk_get_expander_size):
   55163         (moz_gtk_get_treeview_expander_size):
   55164         (moz_gtk_get_menu_separator_height):
   55165         (moz_gtk_widget_paint):
   55166         (moz_gtk_shutdown):
   55167         * platform/gtk/gtkdrawing.h:
   55168 
   55169 2008-01-27  Jan Michael Alonzo  <jmalonzo (a] unpluggable.com>
   55170 
   55171         Reviewed by Alp Toker.
   55172 
   55173         http://bugs.webkit.org/show_bug.cgi?id=14811
   55174         [gtk] [request] add a webkit_gtk_page_go_to_history_item function
   55175 
   55176         Added webkit/gtk webkitwebbackforwardlist and webkitwebhistoryitem
   55177 
   55178         * WebCore.pro:
   55179 
   55180 2008-01-27  Matt Perry  <mpComplete (a] gmail.com>
   55181 
   55182         Reviewed and tweaked quite a bit by Darin.
   55183 
   55184         Fix for http://bugs.webkit.org/show_bug.cgi?id=14959
   55185         No back forward entry added for pages created in javascript
   55186 
   55187         A new HistoryItem is created for calls to Document::open. Calls to
   55188         Document::write save the written data to a SharedBuffer that is also
   55189         stored on the HistoryItem. When the user navigates back to a
   55190         HistoryItem that has a valid buffer, that data is used for the page
   55191         content.
   55192 
   55193         Tests: http/tests/navigation/document-open-adds-history-item.html
   55194                http/tests/navigation/document-open-delayed-adds-history-item.html
   55195                http/tests/navigation/document-open-new-window-adds-history-item.html
   55196                http/tests/navigation/document-open-replace-no-history-item.html
   55197 
   55198         * bindings/js/JSHTMLDocumentCustom.cpp:
   55199         (WebCore::JSHTMLDocument::open): Pass a MIME type of either "text/html" or
   55200         "text/plain" and a boolean for "replace" in rather than always setting replace
   55201         to true and the MIME type to "text/html".
   55202 
   55203         * dom/DOMImplementation.cpp:
   55204         (WebCore::DOMImplementation::createHTMLDocument): Pass in MIME type and
   55205         replace boolean explicitly, since we don't want to rely on Document::open()'s
   55206         default.
   55207 
   55208         * dom/Document.cpp:
   55209         (WebCore::Document::open): Correctly determine the "replace" boolean.
   55210         Pass along the MIME type, replace boolean, and shared buffer to the
   55211         frame loader's didExplicitOpen function.
   55212         (WebCore::Document::write): Pass MIME type and replace boolean explicitly
   55213         to the open function so we don't do treat it as replace if you write without
   55214         an open. Store text written by the script so it can be used later for history.
   55215         (WebCore::Document::clear): Drop the text written byt he script.
   55216 
   55217         * dom/Document.h: Added MIME type and replace boolean parameters for open.
   55218         Had to keep the old version for the sake of DOM bindings. Added the shared
   55219         buffer used for text written by script.
   55220 
   55221         * history/HistoryItem.cpp:
   55222         (WebCore::HistoryItem::HistoryItem): Copy m_substituteData.
   55223         (WebCore::HistoryItem::substituteData): Added.
   55224         (WebCore::HistoryItem::setSubstituteData): Added.
   55225         * history/HistoryItem.h: Added m_substituteData, getter, and setter.
   55226 
   55227         * loader/FrameLoader.cpp:
   55228         (WebCore::FrameLoader::didExplicitOpen): Added code to create or update the
   55229         history item, including attaching the shared buffer that will contain all
   55230         the data written by script.
   55231         (WebCore::FrameLoader::load): Added a SubstituteData parameter, passed through
   55232         when creating the document loader.
   55233         (WebCore::FrameLoader::reloadAllowingStaleData): Create the document loader
   55234         with the substitute data from the current history item.
   55235         (WebCore::FrameLoader::reload): Ditto.
   55236         (WebCore::FrameLoader::shouldTreatURLAsSameAsCurrent): If the current history
   55237         item has substitute data, then consider the URL from the substitute data
   55238         rather than the one in the history item itself.
   55239         (WebCore::FrameLoader::loadItem): Pass in the history item's substitute data.
   55240         * loader/FrameLoader.h: Added parameters to load and didExplicitOpen.
   55241 
   55242         * platform/text/CharacterNames.h: Added byteOrderMark, and also added it under
   55243         its other official name, zeroWidthNoBreakSpace.
   55244 
   55245         * xml/DOMParser.cpp:
   55246         (WebCore::DOMParser::parseFromString): Pass in MIME type and replace boolean
   55247         explicitly, since we don't want to rely on Document::open()'s default.
   55248         * xml/XMLHttpRequest.cpp:
   55249         (WebCore::XMLHttpRequest::getResponseXML): Ditto.
   55250         * xml/XSLTProcessor.cpp:
   55251         (WebCore::XSLTProcessor::createDocumentFromSource): Ditto.
   55252 
   55253 2008-01-25  Eric Seidel  <eric (a] webkit.org>
   55254 
   55255         Reviewed by Sam and Darin.
   55256 
   55257         Fire a warning shot in DeprecatedChar's direction.
   55258 
   55259         Remove DeprecatedChar::isSpace() usage, in preparation for removing DeprecatedChar
   55260         Remove a needless String -> DeprecatedString -> String conversion for <script> tags
   55261 
   55262         * css/MediaQueryEvaluator.cpp:
   55263         (WebCore::parseAspectRatio):
   55264         * css/SVGCSSParser.cpp:
   55265         * dom/Position.cpp:
   55266         (WebCore::Position::leadingWhitespacePosition):
   55267         (WebCore::Position::trailingWhitespacePosition):
   55268         * editing/TextIterator.cpp:
   55269         (WebCore::WordAwareIterator::advance):
   55270         * html/HTMLFontElement.cpp:
   55271         (WebCore::parseFontSizeNumber):
   55272         * html/HTMLTokenizer.cpp:
   55273         (WebCore::HTMLTokenizer::scriptHandler):
   55274         (WebCore::HTMLTokenizer::scriptExecution):
   55275         (WebCore::HTMLTokenizer::notifyFinished):
   55276         * html/HTMLTokenizer.h:
   55277         * loader/CachedCSSStyleSheet.cpp:
   55278         * loader/TextResourceDecoder.cpp:
   55279         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
   55280         * platform/mac/ClipboardMac.mm:
   55281         (WebCore::ClipboardMac::getData):
   55282         * platform/network/HTTPParsers.cpp:
   55283         (WebCore::extractMIMETypeFromMediaType):
   55284         * platform/text/PlatformString.h:
   55285         * platform/text/StringImpl.cpp:
   55286         (WebCore::parseLength):
   55287         (WebCore::StringImpl::stripWhiteSpace):
   55288         (WebCore::StringImpl::simplifyWhiteSpace):
   55289         (WebCore::StringImpl::toInt):
   55290         (WebCore::StringImpl::toInt64):
   55291         (WebCore::StringImpl::toUInt64):
   55292         * platform/text/StringImpl.h:
   55293         (WebCore::isSpaceOrNewline):
   55294         * rendering/InlineFlowBox.cpp:
   55295         (WebCore::InlineFlowBox::placeBoxesHorizontally):
   55296         * rendering/RenderBlock.cpp:
   55297         (WebCore::RenderBlock::updateFirstLetter):
   55298         * rendering/bidi.cpp:
   55299         (WebCore::RenderBlock::computeHorizontalPositionsForLine):
   55300         * svg/SVGFontFaceElement.cpp:
   55301         (WebCore::mapAttributeToCSSProperty):
   55302         * svg/SVGLength.cpp:
   55303         * svg/SVGStyledElement.cpp:
   55304         (WebCore::mapAttributeToCSSProperty):
   55305         * xml/XPathParser.cpp:
   55306 
   55307 2008-01-25  Stephanie Lewis  <slewis (a] apple.com>
   55308 
   55309         Reviewed by Tim.
   55310 
   55311         expand workaround for <rdar://5695848> to include js files so that the
   55312         web inspector can work
   55313 
   55314         * platform/network/cf/ResourceResponseCFNet.cpp:
   55315         (WebCore::ResourceResponse::doUpdateResourceResponse):
   55316 
   55317 2008-01-25  Antti Koivisto  <antti (a] apple.com>
   55318 
   55319         Reviewed by Adele.
   55320         
   55321         (this is for r29798, my commit failed to include the log)
   55322         
   55323         Windows fix to match r29773
   55324         If the media is playing and the load stalls the playback wont restart by seeking backwards.      
   55325 
   55326         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
   55327         (WebCore::MediaPlayerPrivate::updateStates):
   55328 
   55329 2008-01-25  Darin Adler  <darin (a] apple.com>
   55330 
   55331         Reviewed by Anders.
   55332 
   55333         - fix <rdar://problem/5691072> ASSERTION FAILED: isPrepared() when executing an empty statement
   55334 
   55335         For empty statements, SQLite returns 0 for the statement. We have to cope with that.
   55336 
   55337         Test: storage/empty-statement.html
   55338 
   55339         * platform/sql/SQLiteStatement.cpp:
   55340         (WebCore::sqlite3_prepare16_v2): Added overload so we don't need an #if inside the prepare
   55341         function.
   55342         (WebCore::SQLiteStatement::SQLiteStatement): Initialize the m_isPrepared boolean. Removed
   55343         the code to add a null character to the end of the string; instead we will use
   55344         charactersWithNullTermination.
   55345         (WebCore::SQLiteStatement::prepare): Set m_isPrepared based on the error value returned.
   55346         Use the error value from sqlite3_prepare16_v2, not from lastError().
   55347         (WebCore::SQLiteStatement::step): Assert that the statement is prepared rather than checking
   55348         it at runtime. However, in the case where this is called with m_statement of 0, return
   55349         success rather than an error. That's needed for empty statements.
   55350         (WebCore::SQLiteStatement::finalize): Use early return idiom for clarity. When there is no
   55351         statement, return SQLITE_OK instead of calling lastError().
   55352         (WebCore::SQLiteStatement::reset): Use early return idiom for clarity. When there is no
   55353         statement, return SQLITE_OK rather than SQLITE_ERROR, but assert the statement is prepared.
   55354         (WebCore::SQLiteStatement::executeCommand): Adjust the code that does a prepare so that it
   55355         will work for empty statements. Do we really need to allow calling this without prepare?
   55356         It would be simpler to just be able to assert that it's prepared.
   55357         (WebCore::SQLiteStatement::returnsAtLeastOneResult): Ditto.
   55358         (WebCore::SQLiteStatement::bindBlob): Added some assertions. Return SQLITE_ERROR if this
   55359         is called with m_statement of 0 (should not be possible without assertions firing first).
   55360         Return the actual error code rather than lastError().
   55361         (WebCore::SQLiteStatement::bindText): Ditto. Also simplified the special case for empty
   55362         strings, since it requires any non-null pointer, not a pointer to a global zero character.
   55363         (WebCore::SQLiteStatement::bindInt64): Ditto.
   55364         (WebCore::SQLiteStatement::bindDouble): Ditto.
   55365         (WebCore::SQLiteStatement::bindNull): Ditto.
   55366         (WebCore::SQLiteStatement::bindValue): Moved default case out of the switch to take
   55367         advantage of the gcc compiler warning for unhandled enum values in a switch.
   55368         (WebCore::SQLiteStatement::bindParameterCount): Added assertion and code to handle the
   55369         empty statement case.
   55370         (WebCore::SQLiteStatement::columnCount): Added assertion and changed the code to use
   55371         the early-return idiom.
   55372         (WebCore::SQLiteStatement::getColumnName): Removed getColumnName16 -- we always use 16-bit
   55373         characters and have no reason to ever use the 8-bit function. Added assertions about the
   55374         passed-in column number. It's a little strange that this function checks the column number
   55375         for too-large column numbers, but not for negative ones. I didn't change that for now.
   55376         (WebCore::SQLiteStatement::getColumnText): Ditto.
   55377         (WebCore::SQLiteStatement::getColumnDouble): Ditto.
   55378         (WebCore::SQLiteStatement::getColumnInt): Ditto.
   55379         (WebCore::SQLiteStatement::getColumnInt64): Ditto.
   55380         (WebCore::SQLiteStatement::getColumnBlobAsVector): Ditto.
   55381         (WebCore::SQLiteStatement::getColumnBlob): Tightened up function a bit, including use of
   55382         the early-return idiom and replacing the multiple "size = 0" with a single one at the
   55383         start of the function.
   55384         (WebCore::SQLiteStatement::returnTextResults): Added a failure case when the prepare
   55385         call doesn't work. Cleared the vector earlier to make the failure code simpler. Moved
   55386         the declaration of the result boolean down lower to make it clearer what it's for.
   55387         Changed use of lastError() to call on the database, to make it clearer that there's
   55388         no per-statement last error kept around. It'd be even better to not use lastError() here.
   55389         (WebCore::SQLiteStatement::returnIntResults): Ditto.
   55390         (WebCore::SQLiteStatement::returnInt64Results): Ditto.
   55391         (WebCore::SQLiteStatement::returnDoubleResults): Ditto.
   55392         (WebCore::SQLiteStatement::isExpired): Changed to use || rather than ?: because I think
   55393         it's slightly easier to read that way.
   55394 
   55395         * platform/sql/SQLiteStatement.h: Removed unneeded includes and forward declarations.
   55396         Also removed unnneeded functions isPrepared, getColumnName16, getColumnText16,
   55397         returnTextResults16, lastError, and lastErrorMsg. Changed prepareAndStep so that it
   55398         checks the result of prepare before callling step. Added a debug-only m_isPrepared boolean.
   55399 
   55400         * loader/icon/IconDatabase.cpp:
   55401         (WebCore::IconDatabase::checkIntegrity): Remove 16 suffix from text-related function names.
   55402         (WebCore::IconDatabase::performURLImport): Ditto.
   55403         (WebCore::IconDatabase::pruneUnretainedIcons): Ditto.
   55404         * platform/sql/SQLiteDatabase.cpp:
   55405         (WebCore::SQLiteDatabase::clearAllTables): Ditto.
   55406         * storage/Database.cpp:
   55407         (WebCore::retrieveTextResultFromDatabase): Ditto.
   55408         (WebCore::Database::performGetTableNames): Ditto.
   55409         * storage/DatabaseTracker.cpp:
   55410         (WebCore::DatabaseTracker::fullPathForDatabase): Ditto.
   55411         (WebCore::DatabaseTracker::populateOrigins): Ditto.
   55412         (WebCore::DatabaseTracker::databaseNamesForOrigin): Ditto.
   55413         (WebCore::DatabaseTracker::addDatabase): Ditto.
   55414         * storage/SQLStatement.cpp:
   55415         (WebCore::SQLStatement::execute): Ditto.
   55416 
   55417         * platform/sql/SQLiteDatabase.h: Removed unneeded includes.
   55418         * storage/SQLResultSet.h: Ditto.
   55419         * storage/SQLResultSetRowList.h: Ditto.
   55420 
   55421 2008-01-25  Adele Peterson  <adele (a] apple.com>
   55422 
   55423         Reviewed by Sam.
   55424 
   55425         Fix for <rdar://problem/5679452> Finish tweaking layout/alignment of media controls slider to match QuickTime plug-in
   55426 
   55427         * css/html4.css: Add horizontal padding to the media slider.
   55428         * rendering/RenderSlider.cpp:
   55429         (WebCore::HTMLSliderThumbElement::defaultEventHandler): Replace use of absoluteBoundingBox() with width() and height()
   55430         (WebCore::RenderSlider::positionForOffset): ditto. Also, use the trackSize() for the maximum offset.
   55431         (WebCore::RenderSlider::layout):  Use contentWidth() and contentHeight() to take padding into account.
   55432         (WebCore::RenderSlider::trackSize): ditto.
   55433 
   55434 2008-01-24  Adam Roben  <aroben (a] apple.com>
   55435 
   55436         Better fix for Bug 16996
   55437 
   55438         Rubberstamped by Mitz.
   55439 
   55440         * loader/CachedFont.cpp:
   55441         (WebCore::CachedFont::ensureCustomFontData): Don't call
   55442         createFontCustomPlatformData if m_data is null.
   55443         * platform/graphics/gtk/FontCustomPlatformData.cpp:
   55444         (WebCore::createFontCustomPlatformData): Added an assertion.
   55445         * platform/graphics/mac/FontCustomPlatformData.cpp:
   55446         (WebCore::createFontCustomPlatformData): Ditto.
   55447         * platform/graphics/qt/FontCustomPlatformData.cpp:
   55448         (WebCore::createFontCustomPlatformData): Ditto.
   55449         * platform/graphics/win/FontCustomPlatformData.cpp:
   55450         (WebCore::createFontCustomPlatformData): Ditto.
   55451 
   55452 2008-01-24  Adam Roben  <aroben (a] apple.com>
   55453 
   55454         Fix Bug 16996: Crash in createFontCustomPlatformData when loading
   55455         0-byte font via @font-face
   55456 
   55457         <http://bugs.webkit.org/show_bug.cgi?id=16996>
   55458 
   55459         Reviewed by Hyatt.
   55460 
   55461         Test: fast/loader/font-face-empty.html
   55462 
   55463         * platform/graphics/win/FontCustomPlatformData.cpp:
   55464         (WebCore::createFontCustomPlatformData): Null-check the buffer
   55465         parameter.
   55466 
   55467 2008-01-24  Jon Honeycutt  <jhoneycutt (a] apple.com>
   55468 
   55469         Reviewed by Anders.
   55470 
   55471         <rdar://problem/5588807> Crash in Flash when destroying plug-in (found
   55472         using yahoo beta mail)
   55473 
   55474         Flash can dereference NULL in the call to NPP_URLNotify if a request
   55475         made with NPN_PostURLNotify fails before NPP_NewStream is called.
   55476 
   55477         Work around this by creating a quirk, PluginQuirkFlashURLNotifyBug, and
   55478         checking for this quirk before calling NPP_URLNotify for any request
   55479         made with NPN_PostURLNotify. If the quirk is present, call NPP_NewStream
   55480         and NPP_DestroyStream before calling NPP_URLNotify.
   55481 
   55482         * WebCore.vcproj/WebCore.vcproj:
   55483         * plugins/PluginQuirkSet.h: Added. Moved quirks out of PluginViewWin so
   55484         PluginViewWin and PluginStream could share it. Created a class,
   55485         PluginQuirkSet, to store plug-in quirks
   55486         (WebCore::PluginQuirkSet::PluginQuirkSet):
   55487         (WebCore::PluginQuirkSet::add):
   55488         (WebCore::PluginQuirkSet::contains):
   55489         * plugins/PluginStream.cpp:
   55490         (WebCore::PluginStream::PluginStream): Copy the PluginQuirkSet for this
   55491         plug-in
   55492         (WebCore::PluginStream::destroyStream): Check for the FlashURLNotifyBug
   55493         quirk
   55494         * plugins/PluginStream.h:
   55495         * plugins/win/PluginViewWin.cpp:
   55496         (WebCore::PluginViewWin::performRequest): Pass the quirks when creating
   55497         the PluginStream
   55498         (WebCore::PluginViewWin::didReceiveResponse): Same
   55499         (WebCore::PluginViewWin::wndProc): Use add / contains instead of
   55500         bit ops
   55501         (WebCore::PluginViewWin::userAgent): Same
   55502         (WebCore::PluginViewWin::invalidateRect): Same
   55503         (WebCore::PluginViewWin::~PluginViewWin): Same
   55504         (WebCore::PluginViewWin::determineQuirks): Same
   55505         (WebCore::PluginViewWin::setParameters): Same
   55506         (WebCore::PluginViewWin::PluginViewWin): Same
   55507         (WebCore::PluginViewWin::init): Same
   55508         (WebCore::PluginViewWin::setCallingPlugin): Same
   55509         * plugins/win/PluginViewWin.h:
   55510 
   55511 2008-01-24  David Hyatt  <hyatt (a] apple.com>
   55512 
   55513         http://bugs.webkit.org/show_bug.cgi?id=16982
   55514 
   55515         Make sure to make <head> the current block if it is created before a <body> already exists.
   55516 
   55517         Reviewed by Dan
   55518 
   55519         * html/HTMLParser.cpp:
   55520         (WebCore::HTMLParser::createHead):
   55521 
   55522 2008-01-24  Alexey Proskuryakov  <ap (a] webkit.org>
   55523 
   55524         http://bugs.webkit.org/show_bug.cgi?id=16993
   55525         <rdar://problem/5704331> REGRESSION: Loading page leads to many unexpected redirections
   55526 
   55527         Rolled out r29590, which was not a correct fix for <rdar://problem/5692566>.
   55528 
   55529         * loader/FrameLoader.cpp:
   55530         (WebCore::FrameLoader::clear):
   55531 
   55532 2008-01-24  Antti Koivisto  <antti (a] apple.com>
   55533 
   55534         Reviewed by Adam.
   55535         
   55536         If the media is playing and the load stalls the playback wont restart by seeking backwards.
   55537         
   55538         We should be in CAN_PLAY state if the current time is less than the maximum loaded time. Rate 
   55539         tricks were for streaming case and are not necessary now since that is now disabled.
   55540         
   55541         Windows patch coming separately.
   55542 
   55543         Test: http/tests/media/video-play-stall-seek.html
   55544 
   55545         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
   55546         (WebCore::MediaPlayerPrivate::updateStates):
   55547 
   55548 2008-01-24  Antti Koivisto  <antti (a] apple.com>
   55549 
   55550         Reviewed by Adam.
   55551 
   55552         Fix <rdar://problem/5684815>
   55553         After navigating back to the page that contains a <audio> that has been muted, the audio is still heard
   55554         
   55555         - get rid of the separate muted state in MediaPlayer, maintain the state in the cross platform code only
   55556         - remove volumeChanged() callbacks from HTMLMediaElement and OS X MediaPlayer, they were not used for anything
   55557         - rename updateMediaPlayer -> updatePlayState which tells more about what it actually does
   55558 
   55559         * html/HTMLMediaElement.cpp:
   55560         (WebCore::HTMLMediaElement::load):
   55561         (WebCore::HTMLMediaElement::setReadyState):
   55562         (WebCore::HTMLMediaElement::play):
   55563         (WebCore::HTMLMediaElement::pause):
   55564         (WebCore::HTMLMediaElement::setVolume):
   55565         (WebCore::HTMLMediaElement::setMuted):
   55566         (WebCore::HTMLMediaElement::checkIfSeekNeeded):
   55567         (WebCore::HTMLMediaElement::mediaPlayerTimeChanged):
   55568         (WebCore::HTMLMediaElement::updateVolume):
   55569         (WebCore::HTMLMediaElement::updatePlayState):
   55570         (WebCore::HTMLMediaElement::setPausedInternal):
   55571         * html/HTMLMediaElement.h:
   55572         * platform/graphics/MediaPlayer.cpp:
   55573         (WebCore::MediaPlayer::MediaPlayer):
   55574         * platform/graphics/MediaPlayer.h:
   55575         * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
   55576         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
   55577         (WebCore::MediaPlayerPrivate::createQTMovie):
   55578         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.h:
   55579         * platform/graphics/win/QTMovieWin.cpp:
   55580         * platform/graphics/win/QTMovieWin.h:
   55581 
   55582 2008-01-24  Holger Hans Peter Freyther  <holger.freyther (a] trolltech.com>
   55583 
   55584         Reviewed by Simon.
   55585 
   55586         * Fix "QObject::startTimer: QTimer can only be used with threads started with QThread"
   55587         * The JSC GCController gets automatically destructed on application exit, it will stop
   55588         its timer and we try to schedule the next timer. Now the GCController can get destructed
   55589         after our QApplication is gone. This will trigger the above warning, we can avoid this
   55590         by checking if our qApp is still around.
   55591 
   55592         * platform/qt/SharedTimerQt.cpp:
   55593         (WebCore::setSharedTimerFireTime):
   55594 
   55595 2008-01-24  Morten Johan Srvig  <msorvig (a] trolltech.com>
   55596 
   55597         Reviewed by Simon.
   55598 
   55599         Qt/Mac: Make sure the scrollbars does not overlap the grow box.
   55600 
   55601         When showing only one scrollbar we need to move it so it doesn't overlap the
   55602         grow box. This is similar to the code in QAbstractScrollArea.
   55603 
   55604 
   55605         * platform/qt/ScrollViewQt.cpp:
   55606         (WebCore::ScrollView::updateScrollbars):
   55607 
   55608 2008-01-15  Michael Goddard  <michael.goddard (a] trolltech.com>
   55609 
   55610         Reviewed by Darin.
   55611 
   55612         While parsing -webkit-border-image, store
   55613         the border widths as naked pointers rather
   55614         than as OwnPtrs, since they point to the
   55615         middle of an array.
   55616 
   55617         Test: fast/css/border-image-crash.html
   55618 
   55619         * css/CSSParser.cpp:
   55620 
   55621 2008-01-24  Holger Hans Peter Freyther  <holger.freyther (a] trolltech.com>
   55622 
   55623         Reviewed by Simon.
   55624 
   55625         * Attempt to fix showing of popup again after a popup has been shown but
   55626         the user did not select any item (e.g. clicked outside of the popup)
   55627         * Keep track of the popup status using the virtuals showPopup and hidePopup
   55628         and do not go into recursion when hiding a popup.
   55629 
   55630         * platform/qt/QWebPopup.cpp:
   55631         (WebCore::QWebPopup::showPopup):
   55632         (WebCore::QWebPopup::hidePopup):
   55633         * platform/qt/QWebPopup.h:
   55634 
   55635 2008-01-24  Holger Hans Peter Freyther  <holger.freyther (a] trolltech.com>
   55636 
   55637         Reviewed by Simon.
   55638 
   55639         * Assert the presence of the PopupMenuClient
   55640 
   55641         * platform/qt/QWebPopup.cpp:
   55642         (WebCore::QWebPopup::QWebPopup):
   55643         (WebCore::QWebPopup::hideEvent):
   55644         (WebCore::QWebPopup::activeChanged):
   55645 
   55646 2008-01-23  David Kilzer  <ddkilzer (a] apple.com>
   55647 
   55648         <rdar://problem/5702947> WebCore: CGContextDrawPDFDocument will be deprecated
   55649 
   55650         Reviewed by Darin.
   55651 
   55652         No test cases added since there is no change in behavior.
   55653 
   55654         * platform/graphics/cg/PDFDocumentImage.cpp:
   55655         (WebCore::PDFDocumentImage::draw): Replace CGContextDrawPDFDocument() with
   55656         calls to CG methods that perform the equivalent work.
   55657 
   55658 2008-01-23  Antti Koivisto  <antti (a] apple.com>
   55659 
   55660         Reviewed by Hyatt, Adele.
   55661 
   55662         Timers for media controls keep running when the page is in the page cache.
   55663         
   55664         Stop timers in RenderMedia and get rid of the controls tree when the page goes to the cache. 
   55665 
   55666         * html/HTMLMediaElement.cpp:
   55667         (WebCore::HTMLMediaElement::HTMLMediaElement):
   55668         (WebCore::HTMLMediaElement::willSaveToCache):
   55669         (WebCore::HTMLMediaElement::didRestoreFromCache):
   55670         * html/HTMLMediaElement.h:
   55671         (WebCore::HTMLMediaElement::inPageCache):
   55672         * rendering/RenderMedia.cpp:
   55673         (WebCore::RenderMedia::updateControls):
   55674 
   55675 2008-01-23  Antti Koivisto  <antti (a] apple.com>
   55676 
   55677         Reviewed by Adam.
   55678 
   55679         Video that had already played to the end would start playing (from beginning) on back/forward navigation.
   55680         
   55681         Use setPausedInternal() instead of pause(). This avoid generating pause/play events and matches specification text.
   55682 
   55683         * html/HTMLMediaElement.cpp:
   55684         (WebCore::HTMLMediaElement::willSaveToCache):
   55685 
   55686 2008-01-23  Alexey Proskuryakov  <ap (a] webkit.org>
   55687 
   55688         Reviewed by Darin.
   55689 
   55690         <rdar://problem/4200075> Missing support for accented chars in mailto forms
   55691 
   55692         With some combinations of form parameters, this was resulting in regressed behavior.
   55693 
   55694         Tests: fast/forms/mailto/get-non-ascii-text-plain-latin-1.html
   55695                fast/forms/mailto/post-text-plain-with-accept-charset.html
   55696                fast/forms/mailto/post-text-plain.html
   55697 
   55698         * html/HTMLFormElement.cpp:
   55699         (WebCore::HTMLFormElement::formData): Ignore accept-charset for mailto forms, which are always
   55700         encoded as UTF-8.
   55701         (WebCore::HTMLFormElement::isMailtoForm): Added.
   55702         (WebCore::HTMLFormElement::dataEncoding): Added (factored out from formData).
   55703         (WebCore::HTMLFormElement::submit): When round-tripping in text/plain case, use utf-8 encoding.
   55704         * html/HTMLFormElement.h: Added a isMailtoForm() function. It may be a bit unfortunate that
   55705         its result is calculated repeatedly, but this doesn't seem to be anywhere near hot code.
   55706 
   55707 2008-01-22  Justin Garcia  <justin.garcia (a] apple.com>
   55708 
   55709         Reviewed by Alice Liu.
   55710 
   55711         <rdar://problem/5658727> Undo/redo for pasted or typed text in yahoo mail becomes disabled after one round of being selected
   55712 
   55713         * rendering/RenderTextControl.cpp:
   55714         (WebCore::RenderTextControl::updateFromElement): If value == text() and
   55715         m_innerText is empty, then value and text() are "". In that case both DOM 
   55716         mutations are no-ops and there is no reason to clear the Undo stack.
   55717 
   55718 2008-01-23  Steve Falkenburg  <sfalken (a] apple.com>
   55719 
   55720         <rdar://problem/5698732> Copyright strings should include 2008
   55721 
   55722         Reviewed by Sam.
   55723 
   55724         * WebCore.vcproj/QTMovieWin.rc:
   55725 
   55726 2008-01-23  Steve Falkenburg  <sfalken (a] apple.com>
   55727 
   55728         <rdar://problem/5699509> Allow file upload dialog to be localized.
   55729 
   55730         Reviewed by Darin.
   55731 
   55732         * platform/LocalizedStrings.h:
   55733         * platform/win/FileChooserWin.cpp:
   55734         (WebCore::FileChooser::openFileChooser):
   55735 
   55736 2008-01-23  Adam Roben  <aroben (a] apple.com>
   55737 
   55738         Fix behavior of type-to-select in <select> menus
   55739 
   55740         In r27825 we started posting both a WM_KEYDOWN and WM_CHAR message
   55741         whenever a key was pressed in the dropdown menu. However, since posted
   55742         messages go through TranslateMessage, the WM_KEYDOWN was generating
   55743         another WM_CHAR message, so two WM_CHAR messages in a row would reach
   55744         the WebView. This caused the searching to happen twice for each key,
   55745         so typing "dog" would search for "ddoogg".
   55746 
   55747         Reviewed by Darin.
   55748 
   55749         * platform/win/PopupMenuWin.cpp:
   55750         (WebCore::PopupWndProc): Repost the WM_KEYDOWN message to the WebView.
   55751         This is will generate a WM_CHAR message which will trigger the
   55752         type-to-select behavior. This is very similar to our behavior prior to
   55753         r27825, except that we're now calling PostMessage instead of
   55754         SendMessage.
   55755 
   55756 2008-01-23  Alp Toker  <alp (a] atoker.com>
   55757 
   55758         Rubber-stamped by Mark Rowe.
   55759 
   55760         Remove whitespace after -I in automake include lists.
   55761 
   55762         * GNUmakefile.am:
   55763 
   55764 2008-01-23  Holger Hans Peter Freyther  <holger.freyther (a] trolltech.com>
   55765 
   55766         * Rubber stamped by Simon
   55767 
   55768         * Load images incrementally. This will show warnings on the console
   55769         and we want to fix them for Qt4.4. If that happens we have to remove
   55770         the comment from the enum inside the ImageDecoderQt.cpp
   55771 
   55772         * platform/graphics/qt/ImageDecoderQt.cpp:
   55773         (WebCore::ImageDecoderQt::setData):
   55774 
   55775 2008-01-23  Lars Knoll  <lars (a] trolltech.com>
   55776 
   55777         Reviewed by Holger Freyther <holger.freyther (a] trolltech.com>.
   55778 
   55779         Fix rendering of the Scrollbar as well as mouse handling for some styles.
   55780 
   55781         The QStyle expects that that painter is set up to clip to the scrollbar bounds
   55782         and some of the styles seem to paint somewhat outside of these bounds. Clipping to
   55783         the scrollbar bounds before drawing removes some artifacts.
   55784 
   55785         Also set m_opt.rect.topLeft to (0/0) in the mouse handlers. Fixes some issues with
   55786         the oxygen style.
   55787 
   55788 
   55789         * platform/qt/PlatformScrollBarQt.cpp:
   55790         (WebCore::PlatformScrollbar::paint):
   55791         (WebCore::PlatformScrollbar::handleMouseMoveEvent):
   55792         (WebCore::PlatformScrollbar::handleMousePressEvent):
   55793 
   55794 2008-01-23  Michael Brasser  <michael.brasser (a] trolltech.com>
   55795 
   55796         Reviewed by Simon.
   55797 
   55798         Rendering fixes for Qtopia.
   55799 
   55800         Make the focus ring work with line breaks (until we have QPainterPath::simplify) and
   55801         call QStyle with better arguments when painting themed elements.
   55802 
   55803         * platform/graphics/qt/GraphicsContextQt.cpp:
   55804         (WebCore::GraphicsContext::drawFocusRing):
   55805         * platform/qt/RenderThemeQt.cpp:
   55806         (WebCore::RenderThemeQt::paintButton):
   55807         (WebCore::RenderThemeQt::applyTheme):
   55808 
   55809 2008-01-23  Holger Hans Peter Freyther  <holger.freyther (a] trolltech.com>
   55810 
   55811         Reviewed by Simon.
   55812 
   55813         * FormData::flatten does not include to be uploaded files. Create our own QIODevice
   55814         for the QNetworkAccessManager and feed the complete content of the FormData* to
   55815         the (HTTP) backend.
   55816         * Try to optimize the ::readData implementation to fill the buffer as best as possible
   55817 
   55818         * platform/network/qt/QNetworkReplyHandler.cpp:
   55819         (WebCore::FormDataIODevice::FormDataIODevice):
   55820         (WebCore::FormDataIODevice::~FormDataIODevice):
   55821         (WebCore::FormDataIODevice::moveToNextElement):
   55822         (WebCore::FormDataIODevice::readData):
   55823         (WebCore::FormDataIODevice::writeData):
   55824         (WebCore::FormDataIODevice::setParent):
   55825         (WebCore::FormDataIODevice::isSequential):
   55826         (WebCore::FormDataIODevice::slotFinished):
   55827         (WebCore::QNetworkReplyHandler::start):
   55828         * platform/network/qt/QNetworkReplyHandler.h:
   55829 
   55830 2008-01-23  Holger Hans Peter Freyther  <holger.freyther (a] trolltech.com>
   55831 
   55832         Reviewed by Simon.
   55833 
   55834         * Coding-Style fixes
   55835 
   55836         * platform/network/qt/QNetworkReplyHandler.cpp:
   55837         (WebCore::QNetworkReplyHandler::QNetworkReplyHandler):
   55838 
   55839 2008-01-23  Michael Brasser  <michael.brasser (a] trolltech.com>
   55840 
   55841         Reviewed by Simon.
   55842 
   55843         use PopupClient's font for popup menu. Otherwise, in Qtopia, the popup's font is much bigger (QApplication::font()?) and the text doesn't fit.
   55844 
   55845         * platform/qt/QWebPopup.cpp:
   55846         (WebCore::QWebPopup::QWebPopup):
   55847 
   55848 2008-01-23  Simon Hausmann  <hausmann (a] webkit.org>
   55849 
   55850         Reviewed by Lars.
   55851 
   55852         Implemented FrameLoaderClient::startDownload() and FrameLoaderClient::download().
   55853         
   55854         Added two signals to QWebPage to handle downloading of links and handling of
   55855         unsupported content.
   55856         
   55857 
   55858         * platform/network/qt/QNetworkReplyHandler.cpp:
   55859         (WebCore::QNetworkReplyHandler::release):
   55860         * platform/network/qt/QNetworkReplyHandler.h:
   55861 
   55862 2008-01-22  Dan Bernstein  <mitz (a] apple.com>
   55863 
   55864         Reviewed by Adele Peterson.
   55865 
   55866         - fix http://bugs.webkit.org/show_bug.cgi?id=16905
   55867           <rdar://problem/5692407> REGRESSION (3.0.4-TOT): "menu" pseudocolor is badly chosen
   55868 
   55869         The regression test for this is fast/css/css2-system-color.html which
   55870         is currently disabled.
   55871 
   55872         * rendering/RenderThemeMac.mm:
   55873         (WebCore::menuBackgroundColor): Added. Uses HIThemeDrawMenuBackground
   55874         to draw the menu item background into a bitmap graphics context and
   55875         returns the color of the pixel at (0, 0).
   55876         (WebCore::RenderThemeMac::systemColor): Changed to call
   55877         menuBackgroundColor for the CSS2 menu color.
   55878 
   55879 2008-01-22  Darin Adler  <darin (a] apple.com>
   55880 
   55881         Reviewed by Oliver Hunt.
   55882 
   55883         - turn full repainting back on for <canvas> until we get incremental
   55884           repaint working properly
   55885 
   55886         Ollie and I came up with a plan for testing this, but for now we should
   55887         just fall back on the "repaint everything" behavior we have always had.
   55888 
   55889         * html/HTMLCanvasElement.cpp:
   55890         (WebCore::HTMLCanvasElement::willDraw): Just call repaint.
   55891 
   55892 2008-01-22  Alp Toker  <alp (a] atoker.com>
   55893 
   55894         GTK+/qmake build fix.
   55895 
   55896         * WebCore.pro:
   55897 
   55898 2008-01-22  Adam Roben  <aroben (a] apple.com>
   55899 
   55900         Add HTMLFrameOwnerElement::scrollingMode
   55901 
   55902         This new virtual method is overridden by HTMLFrameElementBase to
   55903         provide the scrolling mode set on the frame or iframe element. Object
   55904         elements always have scrolling=auto, so there's no need to override
   55905         this method for HTMLPlugInElement.
   55906 
   55907         Reviewed by Hyatt.
   55908 
   55909         * html/HTMLFrameElementBase.h: Declare scrollingMode as virtual.
   55910         * html/HTMLFrameOwnerElement.h:
   55911         (WebCore::HTMLFrameOwnerElement::scrollingMode): Added.
   55912 
   55913 2008-01-22  David Hyatt  <hyatt (a] apple.com>
   55914 
   55915         Fix for <rdar://problem/5698481> REGRESSION: Web Inspector source view gutter double divider and no padding
   55916 
   55917         Now that cellpadding cascades properly on <td>s, we need to make the view source padding rules in the user
   55918         agent sheet have !important in order to override author settings.
   55919 
   55920         Reviewed by Tim
   55921 
   55922         * css/view-source.css:
   55923 
   55924 2008-01-22  Nikolas Zimmermann  <zimmermann (a] kde.org>
   55925 
   55926         Reviewed by Alp.
   55927 
   55928         Allow to use SVGPaintServerSolid without RenderObject/RenderStyle. Used later to draw SVG Fonts in HTML.
   55929 
   55930         * svg/graphics/SVGPaintServer.cpp:
   55931         (WebCore::SVGPaintServer::sharedSolidPaintServer):
   55932         * svg/graphics/SVGPaintServer.h:
   55933         * svg/graphics/cg/SVGPaintServerCg.cpp:
   55934         (WebCore::SVGPaintServer::renderPath):
   55935         (WebCore::SVGPaintServer::fillPath):
   55936         (WebCore::SVGPaintServer::clipToFillPath):
   55937         * svg/graphics/cg/SVGPaintServerSolidCg.cpp:
   55938         (WebCore::SVGPaintServerSolid::setup):
   55939 
   55940 2008-01-22  Nikolas Zimmermann  <zimmermann (a] kde.org>
   55941 
   55942         Reviewed by Alp.
   55943 
   55944         Initialize missing variables, m_lineGap / m_lineSpacing.
   55945         Only noticeable when trying to render HTML text using SVG Fonts (which is not possible with trunk, but with my local version).
   55946 
   55947         * platform/graphics/SimpleFontData.cpp:
   55948         (WebCore::SimpleFontData::SimpleFontData):
   55949 
   55950 2008-01-22  Alp Toker  <alp (a] atoker.com>
   55951 
   55952         Reviewed by Nikolas.
   55953 
   55954         Fix Cairo SVG fonts following changes in r29700.
   55955 
   55956         Set the font description's details as needed in FontPlatformData and
   55957         eliminate GraphicsContext::setPlatformFont() since it was redundant
   55958         and assumed all fonts were Cairo fonts.
   55959 
   55960         * platform/graphics/GraphicsContext.cpp:
   55961         * platform/graphics/cairo/GraphicsContextCairo.cpp:
   55962         * platform/graphics/gtk/FontPlatformDataGtk.cpp:
   55963         (WebCore::FontPlatformData::FontPlatformData):
   55964 
   55965 2008-01-22  Dan Bernstein  <mitz (a] apple.com>
   55966  
   55967          Reviewed by Eric.
   55968  
   55969          - fix http://bugs.webkit.org/show_bug.cgi?id=16967
   55970            <rdar://problem/5699344> Reproducible crash when navigating back to a page using SVG fonts
   55971  
   55972          Test: svg/custom/font-platformDestroy-crash.svg
   55973  
   55974          * platform/graphics/SimpleFontData.cpp:
   55975          (WebCore::SimpleFontData::~SimpleFontData): Changed to call
   55976          platformDestroy() only if platformInit() was called from the
   55977          constructor.
   55978 
   55979 2008-01-22  Lars Knoll  <lars (a] trolltech.com>
   55980 
   55981         Reviewed by Simon.
   55982 
   55983         cleanup the CookieJarQt implementation and implement cookiesEnabled.
   55984 
   55985         * platform/qt/CookieJarQt.cpp:
   55986         (WebCore::cookieJar):
   55987         (WebCore::setCookies):
   55988         (WebCore::cookies):
   55989         (WebCore::cookiesEnabled):
   55990 
   55991 2008-01-22  Lars Knoll  <lars (a] trolltech.com>
   55992 
   55993         Reviewed by Simon.
   55994 
   55995         Ported the font implementation to use the new QFont features of Qt 4.4.
   55996         
   55997 
   55998         * platform/graphics/Font.h:
   55999         (WebCore::Font::setWordSpacing):
   56000         (WebCore::Font::setLetterSpacing):
   56001         (WebCore::Font::font):
   56002         (WebCore::Font::):
   56003         * platform/graphics/qt/FontQt.cpp:
   56004         (WebCore::Font::Font):
   56005         (WebCore::Font::setWordSpacing):
   56006         (WebCore::Font::setLetterSpacing):
   56007         (WebCore::qstring):
   56008         (WebCore::setupLayout):
   56009         (WebCore::Font::drawText):
   56010         (WebCore::Font::width):
   56011         (WebCore::Font::floatWidth):
   56012         (WebCore::Font::offsetForPosition):
   56013         (WebCore::Font::selectionRectForText):
   56014         (WebCore::generateComponents):
   56015         (WebCore::cursorToX):
   56016         (WebCore::Font::~Font):
   56017         (WebCore::Font::operator=):
   56018         (WebCore::Font::operator==):
   56019         (WebCore::Font::update):
   56020 
   56021 2008-01-21  Eric Seidel  <eric (a] webkit.org>
   56022 
   56023         Reviewed by Nikolas & Oliver.
   56024         
   56025         Tested by svg/custom/svg-features.html
   56026         
   56027         * dom/DOMImplementation.cpp:
   56028         (WebCore::isSVG10Feature): use ENABLE(SVG_*) conditionals
   56029         (WebCore::isSVG11Feature): use ENABLE(SVG_*) conditionals
   56030 
   56031 2008-01-21  Geoffrey Garen  <ggaren (a] apple.com>
   56032 
   56033         Reviewed by Maciej Stachowiak.
   56034 
   56035         Adapted WebCore to the fix for http://bugs.webkit.org/show_bug.cgi?id=16909
   56036         REGRESSION: Amazon.com crash (ActivationImp)
   56037 
   56038         * bindings/js/kjs_proxy.cpp:
   56039         (WebCore::KJSProxy::~KJSProxy): No convenient way to make this assertion
   56040         anymore. (It wasn't firing for anyone, anyway, so it's no big loss.)
   56041 
   56042         * bindings/objc/WebScriptObject.mm:
   56043         (+[WebScriptObject throwException:]): Use the ExecState stack, instead
   56044         of currentExec.
   56045         (-[WebScriptObject setException:]): ditto. Also, a slight change in
   56046         behavior: If no ExecStates are active, we no longer throw an exception
   56047         in the global ExecState. The JavaScriptCore ChangeLog explains why.
   56048         This also matches the behavior of +throwException.
   56049 
   56050 2008-01-21  Nikolas Zimmermann  <zimmermann (a] kde.org>
   56051 
   56052         Not reviewed. Try to fix Qt build, after the rmdir() fixes.c
   56053 
   56054         * platform/graphics/qt/SimpleFontDataQt.cpp:
   56055         (WebCore::SimpleFontData::SimpleFontData):
   56056 
   56057 2008-01-21  Nikolas Zimmermann  <zimmermann (a] kde.org>
   56058 
   56059         Not reviewed. Another Wx build fix.
   56060 
   56061         * platform/graphics/wx/FontWx.cpp:
   56062         (WebCore::Font::drawGlyphs):
   56063 
   56064 2008-01-21  Darin Adler  <darin (a] apple.com>
   56065 
   56066         - try to fix Qt build
   56067 
   56068         * platform/qt/FileSystemQt.cpp:
   56069         (WebCore::deleteEmptyDirectory): QDir::root().rmdir() instead of QDir::rmdir().
   56070 
   56071 2008-01-21  Nikolas Zimmermann  <zimmermann (a] kde.org>
   56072 
   56073         Not reviewed. Yet another win/gtk build fix.
   56074 
   56075         * platform/graphics/gtk/FontPlatformDataGtk.cpp:
   56076         (WebCore::FontPlatformData::FontPlatformData):
   56077         * platform/graphics/win/FontWin.cpp:
   56078         (WebCore::Font::drawGlyphs):
   56079 
   56080 2008-01-21  Nikolas Zimmermann  <zimmermann (a] kde.org>
   56081 
   56082         Not reviewed. Another build fix for Gtk/Linux & Wx/Mac.
   56083 
   56084         * platform/graphics/SimpleFontData.cpp:
   56085         (WebCore::SimpleFontData::SimpleFontData):
   56086 
   56087 2008-01-21  Nikolas Zimmermann  <zimmermann (a] kde.org>
   56088 
   56089         Not reviewed. Build fix for Qt/Gtk & Wx.
   56090 
   56091         * css/CSSFontSelector.cpp:
   56092         * platform/graphics/SegmentedFontData.cpp:
   56093         (WebCore::SegmentedFontData::isSVGFont): Remove SVG_FONTS block, it's a pure virtual function in the base class.
   56094         * platform/graphics/SegmentedFontData.h:
   56095 
   56096 2008-01-21  Nikolas Zimmermann  <zimmermann (a] kde.org>
   56097 
   56098         Not reviewed. Build fix for ports that don't build SVG: wx.
   56099 
   56100         * css/CSSFontFaceSource.h: Wrap include in ENABLE(SVG_FONTS) blocks.
   56101         * css/CSSFontFaceSrcValue.h: Ditto.
   56102 
   56103 2008-01-21  Nikolas Zimmermann  <zimmermann (a] kde.org>
   56104 
   56105         Not reviewed. Build fix for Qt/Gtk.
   56106 
   56107         * platform/graphics/SimpleFontData.h:
   56108         (WebCore::SimpleFontData::svgFontData):
   56109         (WebCore::SimpleFontData::isSVGFont):
   56110 
   56111 2008-01-21  Nikolas Zimmermann  <zimmermann (a] kde.org>
   56112 
   56113         Reviewed by Eric. Older parts reviewed by Dan.
   56114 
   56115         Fixes: http://bugs.webkit.org/show_bug.cgi?id=16880 (SVGCSSFontFace should die, instead integrate within the FontCache.)
   56116         Fixes: http://bugs.webkit.org/show_bug.cgi?id=16784 (In-document fonts work only as the first child to font-face-src)
   56117 
   56118         Proper integration of SVG Fonts within the existing custom font concept, removing the need for a custom SVGCSSFontFace.
   56119         Integrate within the CSSFontFaceSource logic for caching support, as well as the framework for external SVG Fonts.
   56120 
   56121         Proper handling of missing glyphs, using <missing-glyph> element. If that is not specified in a font, fallback to non-SVG font rendering.
   56122 
   56123         * GNUmakefile.am:
   56124         * WebCore.pro:
   56125         * WebCore.vcproj/WebCore.vcproj:
   56126         * WebCore.xcodeproj/project.pbxproj:
   56127         * css/CSSFontFaceSource.cpp:
   56128         (WebCore::CSSFontFaceSource::getFontData):
   56129         * css/CSSFontFaceSource.h:
   56130         (WebCore::CSSFontFaceSource::svgFontFaceElement):
   56131         (WebCore::CSSFontFaceSource::setSVGFontFaceElement):
   56132         * css/CSSFontFaceSrcValue.h:
   56133         (WebCore::CSSFontFaceSrcValue::m_isLocal):
   56134         (WebCore::CSSFontFaceSrcValue::~CSSFontFaceSrcValue):
   56135         (WebCore::CSSFontFaceSrcValue::svgFontFaceElement):
   56136         (WebCore::CSSFontFaceSrcValue::setSVGFontFaceElement):
   56137         * css/CSSFontSelector.cpp:
   56138         (WebCore::CSSFontSelector::addFontFaceRule):
   56139         * css/SVGCSSFontFace.cpp: Removed.
   56140         * css/SVGCSSFontFace.h: Removed.
   56141         * platform/graphics/Font.cpp:
   56142         (WebCore::Font::ascent):
   56143         (WebCore::Font::descent):
   56144         (WebCore::Font::lineSpacing):
   56145         (WebCore::Font::xHeight):
   56146         (WebCore::Font::fontSelector):
   56147         * platform/graphics/Font.h:
   56148         * platform/graphics/FontData.h:
   56149         * platform/graphics/SegmentedFontData.cpp:
   56150         (WebCore::SegmentedFontData::isSVGFont):
   56151         * platform/graphics/SegmentedFontData.h:
   56152         * platform/graphics/SimpleFontData.cpp:
   56153         (WebCore::SimpleFontData::SimpleFontData):
   56154         * platform/graphics/SimpleFontData.h:
   56155         (WebCore::SimpleFontData::ascent):
   56156         (WebCore::SimpleFontData::descent):
   56157         (WebCore::SimpleFontData::lineSpacing):
   56158         (WebCore::SimpleFontData::lineGap):
   56159         (WebCore::SimpleFontData::xHeight):
   56160         (WebCore::SimpleFontData::isSVGFont):
   56161         (WebCore::SimpleFontData::svgFontData):
   56162         * platform/graphics/gtk/FontPlatformData.h:
   56163         (WebCore::FontPlatformData::size):
   56164         * platform/graphics/gtk/FontPlatformDataGtk.cpp:
   56165         (WebCore::FontPlatformData):
   56166         * platform/graphics/mac/FontPlatformData.h:
   56167         (WebCore::FontPlatformData::FontPlatformData):
   56168         (WebCore::FontPlatformData::size):
   56169         * platform/graphics/win/FontPlatformData.h:
   56170         * platform/graphics/win/FontPlatformDataWin.cpp:
   56171         (WebCore::FontPlatformData::FontPlatformData):
   56172         * rendering/RenderSVGText.cpp:
   56173         (WebCore::RenderSVGText::relativeBBox):
   56174         * svg/SVGFont.cpp:
   56175         (WebCore::convertEmUnitToPixel):
   56176         (WebCore::isCompatibleGlyph):
   56177         (WebCore::svgFontAndFontFaceElementForFontData):
   56178         (WebCore::SVGTextRunWalker::SVGTextRunWalker):
   56179         (WebCore::SVGTextRunWalker::walk):
   56180         (WebCore::floatWidthUsingSVGFontCallback):
   56181         (WebCore::floatWidthMissingGlyphCallback):
   56182         (WebCore::floatWidthOfSubStringUsingSVGFont):
   56183         (WebCore::drawTextUsingSVGFontCallback):
   56184         (WebCore::drawTextMissingGlyphCallback):
   56185         (WebCore::Font::drawTextUsingSVGFont):
   56186         * svg/SVGFontData.cpp: Added.
   56187         (WebCore::SVGFontData::SVGFontData):
   56188         (WebCore::SVGFontData::~SVGFontData):
   56189         * svg/SVGFontData.h: Added.
   56190         (WebCore::SVGFontData::svgFontFaceElement):
   56191         (WebCore::SVGFontData::horizontalOriginX):
   56192         (WebCore::SVGFontData::horizontalOriginY):
   56193         (WebCore::SVGFontData::horizontalAdvanceX):
   56194         (WebCore::SVGFontData::verticalOriginX):
   56195         (WebCore::SVGFontData::verticalOriginY):
   56196         (WebCore::SVGFontData::verticalAdvanceY):
   56197         * svg/SVGFontFaceElement.cpp:
   56198         (WebCore::SVGFontFaceElement::unitsPerEm):
   56199         (WebCore::SVGFontFaceElement::xHeight):
   56200         (WebCore::SVGFontFaceElement::horizontalOriginX):
   56201         (WebCore::SVGFontFaceElement::horizontalOriginY):
   56202         (WebCore::SVGFontFaceElement::horizontalAdvanceX):
   56203         (WebCore::SVGFontFaceElement::verticalOriginX):
   56204         (WebCore::SVGFontFaceElement::verticalOriginY):
   56205         (WebCore::SVGFontFaceElement::verticalAdvanceY):
   56206         (WebCore::SVGFontFaceElement::ascent):
   56207         (WebCore::SVGFontFaceElement::descent):
   56208         (WebCore::SVGFontFaceElement::fontFamily):
   56209         (WebCore::SVGFontFaceElement::associatedFontElement):
   56210         (WebCore::SVGFontFaceElement::rebuildFontFace):
   56211         * svg/SVGFontFaceElement.h:
   56212         * svg/SVGGlyphElement.cpp:
   56213         (WebCore::SVGGlyphElement::inheritUnspecifiedAttributes):
   56214         (WebCore::parseSVGGlyphAttribute):
   56215         (WebCore::SVGGlyphElement::buildGenericGlyphIdentifier):
   56216         (WebCore::SVGGlyphElement::buildGlyphIdentifier):
   56217         * svg/SVGGlyphElement.h:
   56218         * svg/SVGMissingGlyphElement.cpp:
   56219         * svg/svgattrs.in:
   56220 
   56221 2008-01-21  Darin Adler  <darin (a] apple.com>
   56222 
   56223         Reviewed by John Sullivan.
   56224 
   56225         - fix <rdar://problem/5644324> Delegate-less WebKit clients should have no databases
   56226 
   56227         - remove the default database quota setting
   56228 
   56229         - simplify the quota-related client calls by merging the one for a new database with
   56230           the one for an existing database, adding a feature where you can get details about
   56231           a database being created using the same functions that work on the other databases,
   56232           and removing the parameters and return values, instead having clients use a function
   56233           to set the quota
   56234 
   56235         - fix unsafe multi-thread access to the database tracker's quota map
   56236         - fix bug in deleteAllDatabases where it would iterate a HashMap while modifying it
   56237 
   56238         The tracker database is now only created when we set the quota for a database origin.
   56239         Thus asking for info about databases won't cause anything to be written to disk.
   56240 
   56241         * WebCore.base.exp: Updated.
   56242 
   56243         * bindings/js/GCController.cpp: Added an #if to get rid of an unused function warning.
   56244 
   56245         * page/Chrome.cpp: Removed database-related functions. There's no problem having the
   56246         code deal directly with the client.
   56247         * page/Chrome.h: Ditto. Also made Chrome inherit from Noncopyable.
   56248 
   56249         * page/ChromeClient.h: Replaced the two quota-related functions with a single one.
   56250         The details about the state of databases in the origin are now available by asking
   56251         for database details. There's also no need to pass the security origin, since
   56252         it's easy to get that from the frame's document.
   56253 
   56254         * page/Settings.cpp: Removed the default quota setting.
   56255         * page/Settings.h: Ditto.
   56256 
   56257         * platform/FileSystem.h: Added deleteEmptyDirectory.
   56258         * platform/gtk/FileSystemGtk.cpp:
   56259         (WebCore::deleteEmptyDirectory): Added.
   56260         * platform/posix/FileSystemPOSIX.cpp:
   56261         (WebCore::deleteEmptyDirectory): Added.
   56262         * platform/qt/FileSystemQt.cpp:
   56263         (WebCore::deleteEmptyDirectory): Added.
   56264         * platform/win/FileSystemWin.cpp:
   56265         (WebCore::deleteEmptyDirectory): Added.
   56266         * platform/wx/FileSystemWx.cpp:
   56267         (WebCore::deleteEmptyDirectory): Added placeholder.
   56268 
   56269         * storage/DatabaseDetails.h: Removed the isValid() function since its name is
   56270         confusing -- we removed our other isValid() functions. For the few callers that
   56271         need this, it's fine to just check name().isEmpty(). Made the member functions
   56272         all const.
   56273 
   56274         * storage/DatabaseTracker.cpp:
   56275         (WebCore::DatabaseTracker::DatabaseTracker): Removed m_defaultQuota initialization.
   56276         Added m_proposedDatabase and m_thread.
   56277         (WebCore::DatabaseTracker::setDatabaseDirectoryPath): Got rid of code that would
   56278         open the tracker database here. This might slightly speed up launch time, since
   56279         we won't do the I/O until we have to, and before we were actually creating an SQL
   56280         database in this code that's run when we go to the first webpage.
   56281         (WebCore::DatabaseTracker::trackerDatabasePath): Added.
   56282         (WebCore::DatabaseTracker::openTrackerDatabase): Added a boolean parameter telling
   56283         this function whether to create the database. Made this function safe to call if
   56284         the database is already open. Also made the function fail quietly if the path has
   56285         not been set yet.
   56286         (WebCore::DatabaseTracker::canEstablishDatabase): Got rid of the call to the
   56287         establishEntryForOrigin function. The origin is now put in the tracker database
   56288         when the quota is set to a non-zero value. When judging if there's enough space
   56289         for the new database, require at least one byte even if estimatedSize is 0, and
   56290         check for overflow. Also added code here to populate the origins map, which
   56291         guarantees it will be ready when the database uses it on another thread later.
   56292         Also changed this to call the new ChromeClient function.
   56293         (WebCore::DatabaseTracker::hasEntryForDatabase): Added code to open the
   56294         tracker database, since that's no longer done by setDatabaseDirectoryPath.
   56295         (WebCore::DatabaseTracker::originPath): Added.
   56296         (WebCore::DatabaseTracker::fullPathForDatabase): Added code so that this will
   56297         return a null string for the proposed database if called from within the
   56298         ChromeClient function. Also switched from empty string to null string for the
   56299         error cases.
   56300         (WebCore::DatabaseTracker::populateOrigins): Added code to open the tracker
   56301         database.
   56302         (WebCore::DatabaseTracker::databaseNamesForOrigin): Ditto.
   56303         (WebCore::DatabaseTracker::detailsForNameAndOrigin): Ditto. Also added code that
   56304         will return the details of the proposed database if called from within the
   56305         ChromeClient function. This is how the client can learn of the display name and
   56306         the estimated size of the new database.
   56307         (WebCore::DatabaseTracker::setDatabaseDetails): Added code to open the tracker
   56308         database.
   56309         (WebCore::DatabaseTracker::quotaForOrigin): Made this code OK to call on a non-main
   56310         thread by using m_quotaMapGuard to guard access to the map. Other code runs on the
   56311         main thread only, and only functions that write to the map use the lock.
   56312         (WebCore::DatabaseTracker::setQuota): Changed this function so it can insert the
   56313         initial quota as well as updating an existing quota. Added locking since this
   56314         function modifies the quota map. Added code to open the tracker database. Added
   56315         an early exit if the quota is already correct, which is guarantees that if you
   56316         set a quota to 0 it won't trigger creation of a tracker database.
   56317         (WebCore::DatabaseTracker::addDatabase): Added code to open the tracker database.
   56318         (WebCore::DatabaseTracker::deleteAllDatabases): Made a copy of the quota map before
   56319         iterating it to find all the origins. This fixes a problem with the old code where
   56320         it would modify the map while iterating it, which gives assertions in debug builds
   56321         and unpredictable results.
   56322         (WebCore::DatabaseTracker::deleteOrigin): Replaced deleteDatabasesWithOrigin with
   56323         this function. Added code to open the tracker database if needed. Added code to
   56324         delete the origin from the tracker database, and to close the tracker database
   56325         and delete files and directories as needed if we are deleting the final origin.
   56326         (WebCore::DatabaseTracker::deleteDatabase): Added code to open the tracker database
   56327         if needed.
   56328 
   56329         * storage/DatabaseTracker.h: Renamed databasePath to databaseDirectoryPath for
   56330         clarity, including the data member, and the getter and setter functions.
   56331         Replaced deleteDatabasesWithOrigin with deleteOrigin. Removed the functions
   56332         dealing with default origin quota. There is no default any more; origins start
   56333         with no quota and the client must set a quota. Added trackerDatabasePath and
   56334         originPath helper functions. Added a boolean parameter to openTrackerDatabase
   56335         to tell it whether to create the database or not. Removed the
   56336         establishEntryForOrigin function. Renamed m_originQuotaMap to just m_quotaMap,
   56337         and added m_quotaMapGuard. Added a QuotaMap typedef. Added m_proposedDatabase,
   56338         which holds the origin and details for the current proposed database during
   56339         the client callback function that must decide whether to grant quota. Added a
   56340         m_thread data member for debugging use to assert if functions that can only
   56341         be called on a single thread are misused.
   56342 
   56343         * storage/SQLTransaction.cpp:
   56344         (WebCore::SQLTransaction::deliverQuotaIncreaseCallback): Changed to call the
   56345         new exceededDatabaseQuota function instead of the old one.
   56346 
   56347         * svg/graphics/SVGImageEmptyClients.h: Updated for the change to ChromeClient.
   56348 
   56349 2008-01-21  David Hyatt  <hyatt (a] apple.com>
   56350 
   56351         Fix for http://bugs.webkit.org/show_bug.cgi?id=16935
   56352 
   56353         Fix a bug in layers where the positioned ancestor was being computed incorrectly (the root should not
   56354         automatically be included).
   56355 
   56356         Reviewed by olliej
   56357 
   56358         Added fast/layers/positioned-inside-root-with-margins.html
   56359 
   56360         * rendering/RenderLayer.cpp:
   56361         (WebCore::RenderLayer::stackingContext):
   56362         (WebCore::RenderLayer::enclosingPositionedAncestor):
   56363 
   56364 2008-01-21  Simon Hausmann  <hausmann (a] webkit.org>
   56365 
   56366         Reviewed by Holger.
   56367 
   56368         Fix KURL to QUrl conversion.
   56369         
   56370         Stick to the encoded version of the URL and in addition to KURL we encode the
   56371         characters mentioned in section 2.4.3 of RFC 2396 as QUrl requires these, too.
   56372         
   56373         This fixes fast/css/import-rule-regression-11590.html,
   56374         fast/css/import-style-update.html, svg/hixie/processing-model/003.xml and
   56375         svg/hixie/processing-model/004.xml.
   56376 
   56377 
   56378         * platform/qt/KURLQt.cpp:
   56379         (WebCore::toHex):
   56380         (WebCore::KURL::operator QUrl):
   56381 
   56382 2008-01-21  Simon Hausmann  <hausmann (a] webkit.org>
   56383 
   56384         Reviewed by Holger.
   56385 
   56386         Fix focus chain handling and cycling through focusable objects (links) using tab/backtab.
   56387         
   56388         * Fix GraphicsContext::drawFocusRing to also draw single focus rects.
   56389         * Implemented QWebPage::focusNextPrevChild by sending fake tab/shift-tab events
   56390         and make the return value depend on whether we successfully determined a focusable
   56391         node or not.
   56392         * Changed QWebView::focusNextPrevChild() to call the base QWidget implementation correctly
   56393         if we could not handle the focus chain ourselves.
   56394         * Changed the focus policy of QWebView to correctly use WheelFocus instead of ClickFocus.
   56395         * Made ChromeClientQt::canTakeFocus() and takeFocus() dummy method since they are only
   56396         used to control the situation of stepping out of the focus chain inside the page.
   56397         * Made inclusion of links in the focus chain configurable through QWebSettings::LinksIncludedInFocusChain.
   56398         The layout tests expect this to be disabled but for the user it seems sensible to have it
   56399         on by default, hence the default in qwebsettings.cpp
   56400 
   56401         * platform/graphics/qt/GraphicsContextQt.cpp:
   56402         (WebCore::GraphicsContext::drawFocusRing):
   56403 
   56404 2008-01-21  Simon Hausmann  <hausmann (a] webkit.org>
   56405 
   56406         Reviewed by Holger.
   56407 
   56408         Fix access key support and fast/forms/legend-access-key.html
   56409 
   56410         SVN revision 26664 changed the default access key for the non-mac build to Alt
   56411         while this test relies on Ctrl.
   56412 
   56413         * page/EventHandler.cpp:
   56414 
   56415 2008-01-21  Simon Hausmann  <hausmann (a] webkit.org>
   56416 
   56417         Reviewed by Holger.
   56418 
   56419         Fix error reporting when parsing X(HT)ML fragments.
   56420         
   56421         We use the regular XMLTokenizer write()/.../end() sequence to parse those
   56422         fragments, but we should not report any parsing errors inline inside the
   56423         content. Instead we should just return the error and the DOM layer will take
   56424         care of throwing an exception.
   56425         
   56426         This fixes fast/innerHTML/innerHTML-changing-document-properties.xhtml
   56427         
   56428 
   56429         * dom/XMLTokenizer.cpp:
   56430         (WebCore::createXHTMLParserErrorHeader):
   56431 
   56432 2008-01-21  Holger Freyther  <holger.freyther (a] trolltech.com>
   56433 
   56434         Reviewed by Simon.
   56435 
   56436         Fix some issues with redirections.
   56437         
   56438         * Ensure that we deliver the response to the ResourceHandleClient only once by
   56439         setting m_responseSent back to false only before calling start() for the
   56440         redirection
   56441         * Added 307 as another HTTP status code that causes a redirection after POST to
   56442         become get, just like in MainResourceLoader::isPostOrRedirectAfterPost
   56443         * Also set the HTTP method on the ResourceRequest to GET before passing it to
   56444         willSendRequest.
   56445         * willSendRequest's newRequest argument is actually an in/out argument and could be
   56446         modified in theory, so set m_request accordingly after the call.
   56447         
   56448 
   56449         * platform/network/qt/QNetworkReplyHandler.cpp:
   56450         (WebCore::QNetworkReplyHandler::finish):
   56451         (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
   56452 
   56453 2008-01-21  Holger Freyther  <holger.freyther (a] trolltech.com>
   56454 
   56455         Reviewed by Simon.
   56456 
   56457         Fixed WebCore::cookies() to return all cookies, not only the first one.
   56458         
   56459         Fixes login into mail.yahoo.com.
   56460         
   56461 
   56462         * platform/qt/CookieJarQt.cpp:
   56463         (WebCore::cookies):
   56464 
   56465 2008-01-20  Oliver Hunt  <oliver (a] apple.com>
   56466 
   56467         Reviewed by Mitz.
   56468 
   56469         Fix http://bugs.webkit.org/show_bug.cgi?id=16816 , rdar://problem/5682985
   56470         
   56471         Correctly trigger willPerformDragDestinationAction when a drop causes a 
   56472         load to occur.  The logic that originally did this was lost during the
   56473         great drag migration of '07.
   56474 
   56475         * page/DragController.cpp:
   56476         (WebCore::DragController::performDrag):
   56477 
   56478 2008-01-20  Dan Bernstein  <mitz (a] apple.com>
   56479 
   56480         Reviewed by Darin Adler.
   56481 
   56482         - fix http://bugs.webkit.org/show_bug.cgi?id=16951
   56483           Assertion failure in FrameView::scheduleRelayout (!m_frame->document() || !m_frame->document()->inPageCache()) when going back from a page with a focused popup
   56484 
   56485         * dom/Document.cpp:
   56486         (WebCore::Document::setFocusedNode): Bail out if the document is in the
   56487         page cache. Documents in the back/forward cache are "frozen" and should
   56488         not change state.
   56489 
   56490 2008-01-20  Collin Jackson  <webkit (a] collinjackson.com>
   56491 
   56492         Reviewed by Sam Weinig.
   56493 
   56494         Fix for http://bugs.webkit.org/show_bug.cgi?id=16775
   56495 
   56496         We now use frame()->loader()->url() for postMessage, preventing a
   56497         malicious sender from overwriting the uri property (using a <base> tag,
   56498         for example). Also, use frame->loader()->url().host() instead of 
   56499         instead of document()->SecurityOrigin()->domain() to reflect a recent
   56500         clarification in the HTML5 spec. 
   56501 
   56502         Tests: http/tests/security/postMessage/domain-affected-by-document-domain.html
   56503                http/tests/security/postMessage/domain-and-uri-unaffected-by-base-tag.html
   56504                http/tests/security/postMessage/javascript-page-still-sends-domain.html
   56505 
   56506         * bindings/js/JSDOMWindowCustom.cpp:
   56507         (WebCore::JSDOMWindow::postMessage):
   56508 
   56509 2008-01-20  Antti Koivisto  <antti (a] apple.com>
   56510 
   56511         Reviewed by Adele.
   56512 
   56513         Fix <rdar://problem/5695451>
   56514         Middle part of the media timeline missing on Windows if load failed
   56515 
   56516         Add some null checking to avoid getting garbage results from the functions.
   56517 
   56518         * platform/graphics/MediaPlayer.cpp:
   56519         * platform/graphics/win/QTMovieWin.cpp:
   56520         (QTMovieWin::duration):
   56521         (QTMovieWin::currentTime):
   56522         (QTMovieWin::setCurrentTime):
   56523         (QTMovieWin::maxTimeLoaded):
   56524 
   56525 2008-01-19  Alp Toker  <alp (a] atoker.com>
   56526 
   56527         Reviewed by Mark Rowe.
   56528 
   56529         http://bugs.webkit.org/show_bug.cgi?id=16944
   56530         Use of GST_PLUGIN_DEFINE_STATIC results in a module-level constructor
   56531 
   56532         http://bugzilla.gnome.org/show_bug.cgi?id=510547
   56533         Epiphany/Webkit fails to start due to initializing threads twice
   56534 
   56535         Don't call GST_PLUGIN_DEFINE_STATIC() as it performs g_thread_init()
   56536         in the global initializer, breaking subsequent calls to
   56537         g_thread_init() in applications.
   56538 
   56539         * platform/graphics/gtk/VideoSinkGStreamer.cpp:
   56540 
   56541 2008-01-19  Alp Toker  <alp (a] atoker.com>
   56542 
   56543         Reviewed by Mark Rowe.
   56544 
   56545         Remove any fragment part from the URL to be requested just before
   56546         passing it to curl, otherwise curl sends it as part of the HTTP/local
   56547         file request, causing page loads to fail.
   56548 
   56549         * platform/network/curl/ResourceHandleManager.cpp:
   56550         (WebCore::ResourceHandleManager::startJob):
   56551 
   56552 2008-01-19  Jan Michael Alonzo  <jmalonzo (a] unpluggable.com>
   56553 
   56554         Reviewed by Alp Toker.
   56555 
   56556         Add svg foreign object and svg experimental to the GTK+/autotools
   56557         build system.
   56558 
   56559         * GNUmakefile.am:
   56560 
   56561 2008-01-19  Dan Bernstein  <mitz (a] apple.com>
   56562 
   56563         Reviewed by Maciej Stachowiak.
   56564 
   56565         - fix <rdar://problem/5645813> CrashTracer: [USER] 6 crashes in Safari at com.apple.WebCore: WebCore::RenderBox::destroy + 116
   56566 
   56567         Test: editing/selection/inconsistent-in-removeChildNode.html
   56568 
   56569         * editing/SelectionController.cpp:
   56570         (WebCore::SelectionController::nodeWillBeRemoved): If the selection
   56571         base or extent are not visible any more, adjust the selection.
   56572 
   56573 2008-01-19  Oliver Hunt  <oliver (a] apple.com>
   56574 
   56575         Reviewed by Eric Seidel.
   56576 
   56577         Build fix for --svg-foreign-object path
   56578 
   56579         * svg/SVGForeignObjectElement.idl:
   56580 
   56581 2008-01-18  Stephanie  <slewis (a] apple.com>
   56582 
   56583         Reviewed by Oliver.
   56584 
   56585         Workaround for <rdar://problem/5695848>.  Set mime_type for local files based on file extension. 
   56586 
   56587         * platform/network/cf/ResourceResponseCFNet.cpp:
   56588         (WebCore::ResourceResponse::doUpdateResourceResponse):
   56589 
   56590 2008-01-18  Ada Chan  <adachan (a] apple.com>
   56591 
   56592         <rdar://problem/5682340> REGRESSION (r28188): Context menu appears at wrong place when clicking in iframe whose parent is scrolled (16827)
   56593         Calling absolutePosition() in EventHandler::hitTestResultAtPoint() is extremely inefficient and passing in
   56594         true as fixed before was wrong.  Use HitTestResult::localPoint() instead, and take into account border and padding widths.
   56595 
   56596         Reviewed by Hyatt and Darin.
   56597 
   56598         * page/EventHandler.cpp:
   56599         (WebCore::EventHandler::hitTestResultAtPoint):
   56600         * rendering/HitTestResult.cpp:
   56601         (WebCore::HitTestResult::operator=):
   56602 
   56603 2008-01-18  Holger Hans Peter Freyther  <holger.freyther (a] trolltech.com>
   56604 
   56605         Reviewed by Darin, landed by Beth.
   56606 
   56607         - fixed http://bugs.webkit.org/show_bug.cgi?id=15765
   56608 
   56609         The call to HTMLTokenizer::write might result in a call to ::end which will invoke
   56610         HTMLParser::finished() or Document::finishedParsing(). HTMLParser::finished() will eventually
   56611         call Document::finishedParsing. The Document will delete the calling HTMLTokenizer and from the deleted
   56612         tokenizer we will call into FrameLoader::tokenizerProcessedData.
   56613         -) FrameLoader::tokenizerProcessedData calls FrameLoader::checkCompleted which gets called from the Document::finishedParsing
   56614            (FrameLoader::finishedParsing).
   56615 
   56616         * html/HTMLTokenizer.cpp:
   56617         (WebCore::HTMLTokenizer::timerFired):
   56618 
   56619 2008-01-18  David Hyatt  <hyatt (a] apple.com>
   56620 
   56621         Don't apply the border/margin/padding check to root line boxes, since their renderers
   56622         are blocks.
   56623 
   56624         * rendering/InlineFlowBox.cpp:
   56625         (WebCore::InlineFlowBox::computeLogicalBoxHeights):
   56626         (WebCore::InlineFlowBox::placeBoxesVertically):
   56627 
   56628 2008-01-18  Geoffrey Garen  <ggaren (a] apple.com>
   56629 
   56630         Not reviewed: rolling out a previous patch.
   56631         
   56632         Fixed <rdar://problem/5695439> Crash during GCController destructor on
   56633         quitting browser
   56634 
   56635         Used svn merge to roll out r29603 because it introduced some crashes
   56636         on quit.
   56637         
   56638         GC relies on static hash tables, so it's not safe to GC from a static
   56639         destructor, which might run after the static hash tables' destructors.
   56640 
   56641         * bindings/js/GCController.cpp:
   56642         (WebCore::GCController::garbageCollectNow):
   56643         * bindings/js/GCController.h:
   56644 
   56645 2008-01-18  David Hyatt  <hyatt (a] apple.com>
   56646 
   56647         Fix for http://bugs.webkit.org/show_bug.cgi?id=15665
   56648 
   56649         Building on Beth's earlier work to start building line boxes for empty inlines, this patch makes more
   56650         empty inline cases work.  Empty inlines on lines by themselves now set isLineEmpty to false so that
   56651         bidiReorderLine will get properly called.  In addition, the "shrink boxes with no text children" quirk
   56652         needs to be disabled for inlines with padding, margins or borders.
   56653 
   56654         Reviewed by Beth
   56655 
   56656         Added fast/inline/inline-padding-disables-text-quirk.html
   56657 
   56658         * rendering/InlineFlowBox.cpp:
   56659         (WebCore::InlineFlowBox::computeLogicalBoxHeights):
   56660         (WebCore::InlineFlowBox::placeBoxesVertically):
   56661         (WebCore::InlineFlowBox::shrinkBoxesWithNoTextChildren):
   56662         * rendering/RenderObject.h:
   56663         (WebCore::RenderObject::hasBordersPaddingOrMargin):
   56664         * rendering/bidi.cpp:
   56665         (WebCore::inlineFlowRequiresLineBox):
   56666         (WebCore::RenderBlock::findNextLineBreak):
   56667 
   56668 2008-01-18  David Hyatt  <hyatt (a] apple.com>
   56669 
   56670         Fix for http://bugs.webkit.org/show_bug.cgi?id=14975
   56671 
   56672         Computed size of padding is incorrect because we default padding to auto.  This is a made-up value that
   56673         was only used to implement cellpadding on tables.  We needed this made-up value in order to tell that
   56674         padding wasn't set so that we could then apply cellpadding.
   56675        
   56676         This patch rewrites cellpadding to be like other browsers.  Instead of being a setting on the table
   56677         renderer that applies to all cells (even ones that were not <td>s), cellpadding is now mapped into the
   56678         style of <td>s.  With this change it effectively becomes a content model feature and not a rendering
   56679         feature.
   56680 
   56681         For example, a <td> will pick up cellpadding even when it is not a cell and/or the enclosing <table> is
   56682         not a table.  Anonymous cells and CSS-display-type cells will now never pick up cellpadding.  This behavior
   56683         is all consistent with other browsers.
   56684 
   56685         Reviewed by Antti
   56686 
   56687         Added fast/css/padding-no-renderer.html
   56688 
   56689         * css/CSSStyleSelector.cpp:
   56690         (WebCore::CSSStyleSelector::canShareStyleWithElement):
   56691         (WebCore::CSSStyleSelector::styleForElement):
   56692         * css/CSSStyleSelector.h:
   56693         * dom/StyledElement.cpp:
   56694         * dom/StyledElement.h:
   56695         (WebCore::StyledElement::canHaveAdditionalAttributeStyleDecls):
   56696         (WebCore::StyledElement::additionalAttributeStyleDecls):
   56697         * html/HTMLTableCellElement.cpp:
   56698         (WebCore::HTMLTableCellElement::additionalAttributeStyleDecls):
   56699         * html/HTMLTableCellElement.h:
   56700         (WebCore::HTMLTableCellElement::canHaveAdditionalAttributeStyleDecls):
   56701         * html/HTMLTableColElement.cpp:
   56702         (WebCore::HTMLTableColElement::additionalAttributeStyleDecls):
   56703         * html/HTMLTableColElement.h:
   56704         (WebCore::HTMLTableColElement::canHaveAdditionalAttributeStyleDecls):
   56705         * html/HTMLTableElement.cpp:
   56706         (WebCore::HTMLTableElement::parseMappedAttribute):
   56707         (WebCore::HTMLTableElement::additionalAttributeStyleDecls):
   56708         (WebCore::HTMLTableElement::addSharedCellDecls):
   56709         (WebCore::HTMLTableElement::addSharedCellBordersDecl):
   56710         (WebCore::HTMLTableElement::addSharedCellPaddingDecl):
   56711         (WebCore::HTMLTableElement::addSharedGroupDecls):
   56712         (WebCore::HTMLTableElement::attach):
   56713         * html/HTMLTableElement.h:
   56714         (WebCore::HTMLTableElement::canHaveAdditionalAttributeStyleDecls):
   56715         * html/HTMLTableSectionElement.cpp:
   56716         (WebCore::HTMLTableSectionElement::additionalAttributeStyleDecls):
   56717         * html/HTMLTableSectionElement.h:
   56718         (WebCore::HTMLTableSectionElement::canHaveAdditionalAttributeStyleDecls):
   56719         * rendering/AutoTableLayout.cpp:
   56720         (WebCore::AutoTableLayout::recalcColumn):
   56721         * rendering/RenderObject.cpp:
   56722         (WebCore::RenderObject::paddingTop):
   56723         (WebCore::RenderObject::paddingBottom):
   56724         (WebCore::RenderObject::paddingLeft):
   56725         (WebCore::RenderObject::paddingRight):
   56726         * rendering/RenderStyle.cpp:
   56727         (WebCore::StyleSurroundData::StyleSurroundData):
   56728         * rendering/RenderStyle.h:
   56729         (WebCore::RenderStyle::initialPadding):
   56730         * rendering/RenderTable.cpp:
   56731         (WebCore::RenderTable::RenderTable):
   56732         * rendering/RenderTable.h:
   56733 
   56734 2008-01-18  Dan Bernstein  <mitz (a] apple.com>
   56735 
   56736         Reviewed by Dave Hyatt.
   56737 
   56738         - fix <rdar://problem/5615307> Repro crash in WebKit!WebCore::RenderContainer::destroyLeftoverChildren
   56739 
   56740         Test: fast/table/insert-row-before-form.html
   56741 
   56742         * rendering/RenderTableRow.cpp:
   56743         (WebCore::RenderTableRow::addChild): Changed to ensure that the
   56744         object a new cell is inserted before is a child of the row, and
   56745         added an assertion that that object is either a cell or a form.
   56746         * rendering/RenderTableSection.cpp:
   56747         (WebCore::RenderTableSection::addChild): Changed to ensure that the
   56748         object a new row is inserted before is a child of the table section, and
   56749         added an assertion that that object is either a table row or a form.
   56750 
   56751 2008-01-18  Geoffrey Garen  <ggaren (a] apple.com>
   56752 
   56753         Reviewed by Brady Eidson.
   56754 
   56755         Fixed <rdar://problem/5622424> World Leak dialog when closing a page
   56756         that has a Database
   56757         
   56758         The problem was that each transaction and SQL statement would hold on
   56759         to its callback indefinitely. By design, callbacks often establish
   56760         reference cycles to temporarily protect their execution environments.
   56761         To break the cycle, we need to explicitly release each callback as soon
   56762         as it is no longer needed.
   56763 
   56764         * storage/SQLStatement.cpp:
   56765         (WebCore::SQLStatement::performCallback): Release our callback objects
   56766         after performing our callback.
   56767 
   56768         * storage/SQLTransaction.cpp:
   56769         (WebCore::SQLTransaction::postflightAndCommit): Release our callback
   56770         objects after the transaction has terminated.
   56771         (WebCore::SQLTransaction::cleanupAfterTransactionErrorCallback): ditto.
   56772 
   56773 2008-01-18  Adele Peterson  <adele (a] apple.com>
   56774 
   56775         Reviewed by Antti.
   56776 
   56777         Fix for <rdar://problem/5679490> media controls fade in and out too jerkily and too slowly
   56778 
   56779         * rendering/RenderMedia.cpp: Shorten the duration for the fade in/out animation.
   56780 
   56781 2008-01-18  Beth Dakin  <bdakin (a] apple.com>
   56782 
   56783         Reviewed by Oliver.
   56784 
   56785         Disables SVG foreign object for <rdar://problem/5686989> turn off 
   56786         SVG foreignobject because it does not repaint/dirty correctly
   56787 
   56788         * DerivedSources.make:
   56789         * WebCore.SVG.ForeignObject.exp: Added.
   56790         * WebCore.SVG.exp:
   56791         * bindings/js/JSSVGElementWrapperFactory.cpp:
   56792         (WebCore::createJSSVGWrapper):
   56793         * rendering/RenderForeignObject.cpp:
   56794         * rendering/RenderForeignObject.h:
   56795         * svg/SVGForeignObjectElement.cpp:
   56796         * svg/SVGForeignObjectElement.h:
   56797         * svg/SVGForeignObjectElement.idl:
   56798         * svg/SVGLocatable.cpp:
   56799         (WebCore::SVGLocatable::nearestViewportElement):
   56800         (WebCore::SVGLocatable::farthestViewportElement):
   56801         * svg/SVGUseElement.cpp:
   56802         (WebCore::isDisallowedElement):
   56803         * svg/svgtags.in:
   56804 
   56805 2008-01-18  Mark Rowe  <mrowe (a] apple.com>
   56806 
   56807         Rubber-stamped by Adam Roben.
   56808 
   56809         Fix mixed line endings in FileSystemWin.cpp and set svn:eol-style to native
   56810         to try and keep them consistent in the future.
   56811 
   56812         * platform/win/FileSystemWin.cpp:
   56813         (WebCore::fileSize):
   56814         (WebCore::fileExists):
   56815         (WebCore::deleteFile):
   56816         (WebCore::pathByAppendingComponent):
   56817         (WebCore::fileSystemRepresentation):
   56818         (WebCore::makeAllDirectories):
   56819         (WebCore::homeDirectoryPath):
   56820         (WebCore::bundleName):
   56821         (WebCore::storageDirectory):
   56822         (WebCore::cachedStorageDirectory):
   56823 
   56824 2008-01-18  Antti Koivisto  <antti (a] apple.com>
   56825 
   56826         Reviewed by Adam.
   56827 
   56828         Fix unreachable code warning in RenderVideo on Windows.
   56829         
   56830         Make switch cases explicit.
   56831 
   56832         * rendering/RenderImage.cpp:
   56833         (WebCore::RenderImage::isWidthSpecified):
   56834         (WebCore::RenderImage::isHeightSpecified):
   56835         * rendering/RenderVideo.cpp:
   56836         (WebCore::RenderVideo::isWidthSpecified):
   56837         (WebCore::RenderVideo::isHeightSpecified):
   56838 
   56839 2008-01-18  Timothy Hatcher  <timothy (a] apple.com>
   56840 
   56841         Reviewed by Adam Roben.
   56842 
   56843         <rdar://problem/5693558> REGRESSION (r29581): no form field focus
   56844         rings and inactive text selection after loading a page
   56845         Bug 16910: [GTK] REGRESSION: keyboard cursor doesn't blink
   56846         Bug 16917: REGRESSION (r29581/2): Google Maps search box loses focused appearance
   56847 
   56848         * page/FocusController.cpp:
   56849         (WebCore::FocusController::setActive): Use focusedOrMainFrame() instead of focusedFrame()
   56850         to call selectionController()->pageActivationChanged() for cases when the focusedFrame()
   56851         has not been set yet. 
   56852 
   56853 2008-01-18  Alexey Proskuryakov  <ap (a] webkit.org>
   56854 
   56855         Reviewed by Brady.
   56856 
   56857         Database origin tracking is broken.
   56858 
   56859         * storage/DatabaseTracker.cpp: (WebCore::DatabaseTracker::populateOrigins):
   56860         Move reading from statement back into the loop (broken in r29386).
   56861 
   56862 2008-01-18  Marius Storm-Olsen  <marius (a] trolltech.com>
   56863 
   56864         Reviewed by Simon Hausmann <hausmann (a] webkit.org>.
   56865 
   56866         Add use of precompiled header, when building inside Qt.
   56867         
   56868         Compiling WebKit was taking forever; 17 minutes on my machine for _one_ build! Adding the PCH at least brings it down to 12 minutes for one build, for me.
   56869         
   56870 
   56871         * WebCore.pro:
   56872 
   56873 2008-01-18  Simon Hausmann  <hausmann (a] webkit.org>
   56874 
   56875         Reviewed by Holger.
   56876 
   56877         Fix fast/forms/button-state-restore.html
   56878         
   56879         Similar to the fix for fast/forms/form-post-urlencoded.html transform POST
   56880         requests to data urls into GET.
   56881         
   56882 
   56883         * platform/network/qt/QNetworkReplyHandler.cpp:
   56884         (WebCore::QNetworkReplyHandler::start):
   56885 
   56886 2008-01-18  Simon Hausmann  <hausmann (a] webkit.org>
   56887 
   56888         Reviewed by Holger.
   56889 
   56890         Fix LayoutTests/fast/cookies/local-file-can-set-cookies.html
   56891         
   56892         In WebCore::cookies() don't return the full raw form but only the name=value
   56893         part. This fixes the getter part of the above test. The above test also
   56894         requires a parsing fix in Qt 4.4's QNetworkCookie to fully pass.
   56895         
   56896 
   56897         * platform/qt/CookieJarQt.cpp:
   56898         (WebCore::cookies):
   56899 
   56900 2008-01-18  Simon Hausmann  <hausmann (a] webkit.org>
   56901 
   56902         Reviewed by Holger.
   56903 
   56904         Fix svg/custom/path-getTotalLength.svg
   56905         
   56906         Path::apply creates a PathElement and its points array on the stack,
   56907         to fill it in from the QPainterPath data and then use the platform
   56908         independent path applier functions to calculate properties such as
   56909         the length. For converting a QPainterPath::CurveToElement we need
   56910         three points in the path element. However we allocated only two
   56911         on the stack and as a result we got memory corruption and the
   56912         failing test.
   56913         
   56914 
   56915         * platform/graphics/qt/PathQt.cpp:
   56916         (WebCore::Path::apply):
   56917 
   56918 2008-01-18  Simon Hausmann  <hausmann (a] webkit.org>
   56919 
   56920         Reviewed by Holger.
   56921 
   56922         Fix LayoutTests/fast/dom/document-attribute-js-null.html
   56923         
   56924         Don't crash when trying to get/set cookies without a frameloader.
   56925         
   56926 
   56927         * platform/qt/CookieJarQt.cpp:
   56928         (WebCore::setCookies):
   56929         (WebCore::cookies):
   56930 
   56931 2008-01-18  Simon Hausmann  <hausmann (a] webkit.org>
   56932 
   56933         Reviewed by Holger.
   56934 
   56935         Fix fast/dom/xmlhttprequest-get.xhtml
   56936         
   56937         For local file requests remove the content length and the last-modified
   56938         headers in the response.
   56939         
   56940 
   56941         * platform/network/qt/QNetworkReplyHandler.cpp:
   56942         (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
   56943 
   56944 2008-01-18  Simon Hausmann  <hausmann (a] webkit.org>
   56945 
   56946         Reviewed by Holger.
   56947 
   56948         Fix fast/forms/form-post-urlencoded.html.
   56949         
   56950         Post requests on files don't really make sense, but for
   56951         fast/forms/form-post-urlencoded.html we still need to retrieve the file,
   56952         which means we map it to a Get instead.
   56953         
   56954 
   56955         * platform/network/qt/QNetworkReplyHandler.cpp:
   56956         (WebCore::QNetworkReplyHandler::start):
   56957 
   56958 2008-01-18  Simon Hausmann  <hausmann (a] webkit.org>
   56959 
   56960         Reviewed by Holger.
   56961 
   56962         Make QNetworkReplyHandler::abort() more robust against multiple invocations.
   56963 
   56964         During DRT runs I see cancel() being called on the same handle multiple times. Guard
   56965         against this a bit better by setting m_reply to 0 after we called abort() on it.
   56966 
   56967         * platform/network/qt/QNetworkReplyHandler.cpp:
   56968         (WebCore::QNetworkReplyHandler::abort):
   56969 
   56970 2008-01-18  Holger Hans Peter Freyther  <holger.freyther (a] trolltech.com>
   56971 
   56972         Reviewed by Simon.
   56973 
   56974         * httpBody() can return 0 and other ports (cf/mac) check for this condition
   56975         * Looking at the cf/mac implementation we might need to call setHTTPBody somewhere
   56976         as well.
   56977         
   56978 
   56979         WARNING: NO TEST CASES ADDED OR CHANGED
   56980 
   56981         * platform/network/qt/QNetworkReplyHandler.cpp:
   56982         (WebCore::QNetworkReplyHandler::start):
   56983 
   56984 2008-01-18  Prasanth Ullattil  <prasanth.ullattil (a] trolltech.com>
   56985 
   56986         Reviewed by Simon Hausmann <hausmann (a] webkit.org>.
   56987 
   56988         Fix compilation in Win64(3): Due to the size of size_t cast the return value explicitly to double() to make sure the right Value() constructor is called.
   56989 
   56990         * xml/XPathFunctions.cpp:
   56991         (WebCore::XPath::FunCount::evaluate):
   56992 
   56993 2008-01-18  Holger Hans Peter Freyther  <holger.freyther (a] trolltech.com>
   56994 
   56995         Reviewed by Simon.
   56996 
   56997         * Remove our windowClipRect reimplementation and instead have our own
   56998         Widget::invalidate implementation that is invalidating
   56999         IntRect(0, 0, width(), height()) without trying to clip it (in contrast
   57000         to Widget::invalidateRect)
   57001 
   57002         * platform/qt/PlatformScrollBar.h:
   57003         * platform/qt/PlatformScrollBarQt.cpp:
   57004         (WebCore::PlatformScrollbar::invalidate):
   57005 
   57006 2008-01-18  Holger Hans Peter Freyther  <holger.freyther (a] trolltech.com>
   57007 
   57008         Reviewed by Simon.
   57009 
   57010         * Change the coordinate transformation in the PlatformMouseEvent handlers
   57011         * We want to convert from coordinates of the containing window to our local
   57012         position on the scrollbar.
   57013 
   57014         * platform/qt/PlatformScrollBarQt.cpp:
   57015         (WebCore::PlatformScrollbar::handleMouseMoveEvent):
   57016         (WebCore::PlatformScrollbar::handleMousePressEvent):
   57017 
   57018 2008-01-18  Holger Hans Peter Freyther  <holger.freyther (a] trolltech.com>
   57019 
   57020         Reviewed by Simon.
   57021 
   57022         * Make the qDebug more usable. Do not have an additional newline and print
   57023         the untranslated coordinates as well.
   57024 
   57025         * platform/qt/PlatformScrollBarQt.cpp:
   57026         (WebCore::PlatformScrollbar::handleMouseMoveEvent):
   57027         (WebCore::PlatformScrollbar::handleMousePressEvent):
   57028 
   57029 2008-01-18  Holger Hans Peter Freyther  <holger.freyther (a] trolltech.com>
   57030 
   57031         Reviewed by Simon.
   57032 
   57033         * Dead code, remove it
   57034 
   57035         * platform/qt/PlatformScrollBarQt.cpp:
   57036 
   57037 2008-01-18  Holger Hans Peter Freyther  <holger.freyther (a] trolltech.com>
   57038 
   57039         Reviewed by Simon.
   57040 
   57041         * Coding-Style fixes.
   57042 
   57043         * platform/qt/PlatformScrollBarQt.cpp:
   57044         (WebCore::PlatformScrollbar::PlatformScrollbar):
   57045 
   57046 2008-01-18  Holger Hans Peter Freyther  <holger.freyther (a] trolltech.com>
   57047 
   57048         Reviewed by Simon.
   57049 
   57050         * Coding-Style fix
   57051 
   57052         * platform/graphics/qt/ImageDecoderQt.cpp:
   57053         (WebCore::ImageDecoderQt::ReadContext::ReadContext):
   57054 
   57055 2008-01-17  Geoffrey Garen  <ggaren (a] apple.com>
   57056 
   57057         Reviewed by Darin Adler.
   57058 
   57059         Fixed: lots of WebCore leaks reported when quitting Safari
   57060         
   57061         If we're quitting with a GC still scheduled, do the GC before quitting.
   57062         That way, WebCore's leak counters won't count objects that were
   57063         scheduled for GC.
   57064 
   57065         * bindings/js/GCController.cpp:
   57066         (WebCore::GCController::~GCController):
   57067         (WebCore::GCController::garbageCollectNow):
   57068         * bindings/js/GCController.h:
   57069 
   57070 2008-01-17  Alp Toker  <alp (a] atoker.com>
   57071 
   57072         Reviewed by Oliver Hunt.
   57073 
   57074         gdk_screen_get_font_options() returns NULL if no default options are
   57075         set so we always have to NULL check to avoid crashes later on since
   57076         Cairo doesn't accept NULL font options.
   57077 
   57078         * platform/graphics/gtk/FontPlatformDataGtk.cpp:
   57079         (WebCore::FontPlatformData::FontPlatformData):
   57080 
   57081 2008-01-17  Antti Koivisto  <antti (a] apple.com>
   57082 
   57083         Reviewed by Adele.
   57084 
   57085         Windows fix for <rdar://problem/5605682>
   57086         Disallow streaming protocols for media elements
   57087         and <rdar://problem/5668711>
   57088         Limit the container and codec types that the <video> tag supports
   57089         
   57090         - Disable unsupported QuickTime tracks types. 
   57091         - Disallow streaming protocols (for now).
   57092 
   57093         * WebCore.vcproj/WebCore.vcproj:
   57094         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
   57095         (WebCore::MediaPlayerPrivate::updateStates):
   57096         * platform/graphics/win/QTMovieWin.cpp:
   57097         (QTMovieWin::load):
   57098         (QTMovieWin::disableUnsupportedTracks):
   57099         * platform/graphics/win/QTMovieWin.h:
   57100 
   57101 2008-01-17  Oliver Hunt  <oliver (a] apple.com>
   57102 
   57103         Support smart copy and paste during drag and drop
   57104         
   57105         Reviewed by Alice
   57106         
   57107         In order for the drag and drop tests in Windows DRT to pass
   57108         we need to support smart cut and paste operations during
   57109         drag and drop on windows.
   57110         
   57111         There is no layout test as drag and drop is still unsupported
   57112         on windows.  Once supported smart drag/drop is tested by existing
   57113         tests
   57114 
   57115         * platform/win/ClipboardUtilitiesWin.cpp:
   57116         (WebCore::smartPasteFormat):
   57117         * platform/win/ClipboardUtilitiesWin.h:
   57118         * platform/win/ClipboardWin.cpp:
   57119         (WebCore::ClipboardWin::writeRange):
   57120         * platform/win/DragDataWin.cpp:
   57121 
   57122 2008-01-17  Oliver Hunt  <oliver (a] apple.com>
   57123 
   57124         Reviewed by Anders.
   57125 
   57126         <rdar://problem/5692940> Crash when attempting to get text properties in
   57127         SVG with no renderer
   57128 
   57129         We use the element renderer to calculate the text element bounds,
   57130         however there was no check against the possibility of the text dimension
   57131         properties being requested on a element with no renderer (eg. unattached, 
   57132         display: none).
   57133 
   57134         Test: svg/text/text-property-with-display-none.html
   57135 
   57136         * svg/SVGTextContentElement.cpp:
   57137         (WebCore::rootInlineBoxForTextContentElement):
   57138 
   57139 2008-01-17  Anders Carlsson  <andersca (a] apple.com>
   57140 
   57141         Reviewed by Oliver.
   57142 
   57143         <rdar://problem/5636742>
   57144         CrashTracer: [USER] 1302 crashes in Safari at com.apple.WebCore: WTF::Vector<char, 0ul>::reserveCapacity + 78
   57145         
   57146         When loading full-frame plug-ins, disable buffering data for the main resource loader. Otherwise, this can cause us
   57147         to crash when loading large files such as movies in the browser. We already do this for embedded plug-ins.
   57148         
   57149         * WebCore.base.exp:
   57150         * loader/DocumentLoader.h:
   57151         (WebCore::DocumentLoader::mainResourceLoader):
   57152         New accessor method.
   57153         
   57154         * loader/PluginDocument.cpp:
   57155         (WebCore::PluginTokenizer::writeRawData):
   57156         Disable buffering for the main resource loader.
   57157         
   57158         * loader/ResourceLoader.cpp:
   57159         (WebCore::ResourceLoader::setShouldBufferData):
   57160         * loader/ResourceLoader.h:
   57161         Have this free the buffer when disabling buffering.
   57162 
   57163 2008-01-17  Adam Roben  <aroben (a] apple.com>
   57164 
   57165         More Qt/GTK+ build fixing.
   57166 
   57167         * platform/gtk/ScrollViewGtk.cpp:
   57168         * platform/qt/ScrollViewQt.cpp:
   57169 
   57170 2008-01-17  Alexey Proskuryakov  <ap (a] webkit.org>
   57171 
   57172         Reviewed by Darin.
   57173 
   57174         http://bugs.webkit.org/show_bug.cgi?id=16902
   57175         <rdar://problem/5692566> fast/encoding/mailto-always-utf-8.html fails when run after
   57176         fast/dom/Window/window-property-shadowing.html
   57177 
   57178         Test: fast/dom/Window/window-property-shadowing_.html
   57179 
   57180         * loader/FrameLoader.cpp: (WebCore::FrameLoader::clear): Clear the frame name, too.
   57181 
   57182 2008-01-17  Adam Roben  <aroben (a] apple.com>
   57183 
   57184         Qt/GTK+ build fix.
   57185 
   57186         * platform/gtk/ScrollViewGtk.cpp:
   57187         (WebCore::ScrollView::ScrollViewPrivate::isActive):
   57188         * platform/qt/ScrollViewQt.cpp:
   57189         (WebCore::ScrollView::ScrollViewPrivate::isActive):
   57190 
   57191 2008-01-16  Adam Roben  <aroben (a] apple.com>
   57192 
   57193         Update scroll bars/form controls when FocusController::isActive changes
   57194 
   57195         Part of <rdar://5006915> Inactive look for Aqua controls
   57196 
   57197         Reviewed by Darin.
   57198 
   57199         All tests pass.
   57200 
   57201         * page/FocusController.cpp:
   57202         (WebCore::FocusController::setActive): Update control tints when the
   57203         active state changes.
   57204         * page/FrameView.cpp:
   57205         (WebCore::FrameView::updateControlTints): On Windows, we have to ask
   57206         ScrollView to paint so that the outermost scroll bars will paint. On
   57207         Mac, the outermost scroll bars are taken care of by NSScroller.
   57208         * platform/PopupMenu.h: Updated for ScrollBarClient changes.
   57209         * platform/ScrollBar.h: Added a new ScrollBarClient method.
   57210         * platform/win/PlatformScrollBarSafari.cpp:
   57211         (WebCore::PlatformScrollbar::paint): Invalidate when updating control
   57212         tints so that we can paint with the new tint later.
   57213         (WebCore::PlatformScrollbar::paintButton): Pass the active state down
   57214         to SafariTheme.
   57215         (WebCore::PlatformScrollbar::paintTrack): Ditto.
   57216         (WebCore::PlatformScrollbar::paintThumb): Ditto.
   57217         * platform/win/ScrollViewWin.cpp:
   57218         (WebCore::ScrollView::ScrollViewPrivate::isActive): Added.
   57219         (WebCore::ScrollView::paint): Pass paint calls on down if we're
   57220         updating control tints so the scroll bars can invalidate.
   57221         * rendering/RenderLayer.cpp:
   57222         (WebCore::RenderLayer::isActive): Added.
   57223         * rendering/RenderLayer.h:
   57224         * rendering/RenderListBox.cpp:
   57225         (WebCore::RenderListBox::isActive): Added.
   57226         * rendering/RenderListBox.h:
   57227         * rendering/RenderTheme.cpp:
   57228         (WebCore::RenderTheme::isActive): Added.
   57229         * rendering/RenderTheme.h:
   57230         * rendering/RenderThemeSafari.cpp:
   57231         (WebCore::RenderThemeSafari::determineState): Pass the active state
   57232         down to SafariTheme.
   57233 
   57234 2008-01-16  Adam Roben  <aroben (a] apple.com>
   57235 
   57236         Move focused/active state from Frame to SelectionController/FocusController
   57237 
   57238         This is the first part of <rdar://5006915> Inactive look for Aqua
   57239         controls.
   57240 
   57241         The following methods were moved/renamed:
   57242             - Frame::setIsActive -> FocusController::setActive
   57243             - Frame::isActive -> SelectionController::isActiveAndFocused
   57244             - Frame::setWindowHasFocus -> SelectionController::setFocused
   57245 
   57246         Active state is now correctly a Page-level concept.
   57247 
   57248         The Mac parts of this patch were written by Darin.
   57249 
   57250         Reviewed by Darin.
   57251 
   57252         All tests pass.
   57253 
   57254         * WebCore.base.exp: Updated for method renames.
   57255         * css/CSSStyleSelector.cpp:
   57256         (WebCore::CSSStyleSelector::checkOneSelector): Ditto.
   57257         * editing/SelectionController.cpp:
   57258         (WebCore::SelectionController::SelectionController): Initialize new
   57259         member.
   57260         (WebCore::SelectionController::focusedOrActiveStateChanged): New
   57261         private method. Most of this code came from Frame::setIsActive.
   57262         (WebCore::SelectionController::pageActivationChanged): Added.
   57263         (WebCore::SelectionController::setFocused): Added. Replaces
   57264         Frame::setWindowHasFocus.
   57265         (WebCore::SelectionController::isFocusedAndActive): Added. Replaces
   57266         Frame::isActive.
   57267         * editing/SelectionController.h:
   57268         * page/FocusController.cpp:
   57269         (WebCore::FocusController::FocusController): Initialize new member.
   57270         (WebCore::FocusController::setFocusedFrame): Changed to just call
   57271         SelectionController::setFocused, since active state has doesn't change
   57272         when the focused frame changes.
   57273         (WebCore::FocusController::setActive): Added. Replaces
   57274         Frame::setIsActive.
   57275         * page/FocusController.h:
   57276         (WebCore::FocusController::isActive): Added.
   57277         * page/Frame.cpp:
   57278         (WebCore::Frame::setDocument): Updated for method renames.
   57279         (WebCore::Frame::setFocusedNodeIfNeeded): Ditto.
   57280         (WebCore::Frame::updateSecureKeyboardEntryIfActive): Ditto.
   57281         (WebCore::FramePrivate::FramePrivate): Removed initialization of
   57282         removed members.
   57283         * page/Frame.h:
   57284         * page/FramePrivate.h:
   57285         * page/mac/WebCoreFrameBridge.h: Removed -selectionColor.
   57286         * page/mac/WebCoreFrameBridge.mm: Ditto.
   57287         * rendering/RenderListBox.cpp:
   57288         (WebCore::RenderListBox::paintItemForeground): Updated for method
   57289         renames.
   57290         (WebCore::RenderListBox::paintItemBackground): Ditto.
   57291         * rendering/RenderObject.cpp:
   57292         (WebCore::RenderObject::selectionBackgroundColor): Ditto.
   57293         (WebCore::RenderObject::selectionForegroundColor): Ditto.
   57294         * rendering/RenderTextControl.cpp:
   57295         (WebCore::RenderTextControl::capsLockStateMayHaveChanged): Ditto.
   57296         * rendering/RenderTheme.cpp:
   57297         (WebCore::RenderTheme::isFocused): Ditto.
   57298 
   57299 2008-01-17  Holger Hans Peter Freyther  <holger.freyther (a] trolltech.com>
   57300 
   57301         Reviewed by Simon.
   57302 
   57303         * Make the nice 'safari' feature work on our port. When viewing a single image, clicking
   57304         on the image will zoom it.
   57305         * It seems like our platform can only determine the size of the image once it is completely
   57306         loaded. Call m_doc->imageChanged on the last chunk of data as well.
   57307 
   57308         * loader/ImageDocument.cpp:
   57309         (WebCore::ImageTokenizer::finish):
   57310 
   57311 2008-01-17  Simon Hausmann  <hausmann (a] webkit.org>
   57312 
   57313         Reviewed by Lars.
   57314 
   57315         Set the library version of QtWebKit to the Qt version.
   57316 
   57317         * WebCore.pro:
   57318 
   57319 2008-01-17  Simon Hausmann  <hausmann (a] webkit.org>
   57320 
   57321         Reviewed by Holger.
   57322 
   57323         Re-enable gzip compression as accepted encoding, now that the bug is fixed in Qt 4.4's network module.
   57324 
   57325         * platform/network/qt/QNetworkReplyHandler.cpp:
   57326         (WebCore::QNetworkReplyHandler::QNetworkReplyHandler):
   57327 
   57328 2008-01-17  Simon Hausmann  <hausmann (a] webkit.org>
   57329 
   57330         Another Windows build fix, setCookies accidentially had a const
   57331         Document pointer.
   57332 
   57333         * platform/network/win/CookieJarWin.cpp:
   57334 
   57335 2008-01-17  Simon Hausmann  <hausmann (a] webkit.org>
   57336 
   57337         MSVC Windows build fix. Forward declaring Document in CookieJar.h
   57338         seems not enough for MSVC.
   57339 
   57340         * platform/network/win/CookieJarWin.cpp:
   57341 
   57342 2008-01-17  Simon Hausmann  <hausmann (a] webkit.org>
   57343 
   57344         Reviewed by Maciej, Lars, Holger.
   57345 
   57346         http://bugs.webkit.org/show_bug.cgi?id=16589
   57347 
   57348         Add a document parameter to WebCore::cookies, setCookies and cookiesEnabled.
   57349 
   57350         * WebCore.pro:
   57351         * bindings/js/kjs_navigator.cpp:
   57352         (KJS::Navigator::getValueProperty):
   57353         * dom/Document.cpp:
   57354         (WebCore::Document::cookie):
   57355         * platform/CookieJar.h:
   57356         * platform/gtk/CookieJarGtk.cpp:
   57357         (WebCore::setCookies):
   57358         (WebCore::cookies):
   57359         * platform/mac/CookieJar.mm:
   57360         * platform/network/win/CookieJarWin.cpp:
   57361         * platform/qt/CookieJarQt.cpp:
   57362         (WebCore::setCookies):
   57363         (WebCore::cookies):
   57364         (WebCore::cookiesEnabled):
   57365         * platform/wx/TemporaryLinkStubs.cpp:
   57366 
   57367 2008-01-17  Simon Hausmann  <hausmann (a] webkit.org>
   57368 
   57369         Reviewed by Holger.
   57370 
   57371         Windows build fix. (use localtime_r again instead of _s)
   57372 
   57373         * loader/FTPDirectoryDocument.cpp:
   57374         (WebCore::processFileDateString):
   57375 
   57376 2008-01-17  Frans Englich  <fenglich (a] trolltech.com>
   57377 
   57378         Reviewed by Simon Hausmann <hausmann (a] webkit.org>.
   57379 
   57380         Fix linking on MinGW and at least one MSVC platform by having gmtimeQt in the correct namespace.
   57381 
   57382         * loader/FTPDirectoryDocument.cpp:
   57383 
   57384 2008-01-17  Simon Hausmann  <hausmann (a] webkit.org>
   57385 
   57386         Reviewed by Holger.
   57387 
   57388         Don't link QtWebKit against libQtXml when building against Qt 4.4.
   57389 
   57390         This is not necessary anymore since QXmlStream has been moved into QtCore.
   57391 
   57392         * WebCore.pro:
   57393 
   57394 2008-01-17  Hvard Wall  <hwall (a] trolltech.com>
   57395 
   57396         Reviewed by Simon Hausmann <hausmann (a] webkit.org>.
   57397 
   57398         Fix compilation on arm
   57399 
   57400         * platform/graphics/qt/GraphicsContextQt.cpp:
   57401         (WebCore::GraphicsContext::endTransparencyLayer):
   57402 
   57403 2008-01-17  Simon Hausmann  <shausman (a] trolltech.com>
   57404 
   57405         Reviewed by Holger.
   57406 
   57407         Fix compilation against Qt 4.4 without files that are specific for the Qt 4.3 build.
   57408 
   57409         * WebCore.pro:
   57410         * platform/network/qt/ResourceHandleQt.cpp:
   57411         * platform/qt/MIMETypeRegistryQt.cpp:
   57412         * platform/qt/PlugInInfoStoreQt.cpp:
   57413 
   57414 2008-01-17  Frans Englich  <fenglich (a] trolltech.com>
   57415 
   57416         Reviewed by Simon Hausmann <hausmann (a] webkit.org>.
   57417 
   57418         Fixes compilation with MinGW.
   57419         Neither localtime_r nor localtime_s are available on MingW, so instead of
   57420         calling back to the thread-unsafe localtime use QDateTime instead.
   57421 
   57422         * loader/FTPDirectoryDocument.cpp:
   57423         (WebCore::FTPDirectoryTokenizer::WebCore::processFilesizeString):
   57424         (WebCore::FTPDirectoryTokenizer::WebCore::wasLastDayOfMonth):
   57425         (WebCore::FTPDirectoryTokenizer::WebCore::WebCore::gmtimeQt):
   57426         * loader/FTPDirectoryParser.cpp:
   57427         (WebCore::parseOneFTPLine):
   57428 
   57429 2008-01-17  Dan Bernstein  <mitz (a] apple.com>
   57430 
   57431         Reviewed by Dave Hyatt.
   57432 
   57433         - fix determinePitch for segmented fonts
   57434 
   57435         Covered by fast/css/font-face-implicit-local-font.html
   57436 
   57437         * platform/graphics/FontFallbackList.cpp:
   57438         (WebCore::FontFallbackList::determinePitch): If the primary font is
   57439         segmented, treat as fixed pitch only if it has only one segment
   57440         and that segment is fixed-pitch.
   57441 
   57442 2008-01-16  David Hyatt  <hyatt (a] apple.com>
   57443 
   57444         Fix for http://bugs.webkit.org/show_bug.cgi?id=16611
   57445 
   57446         Make sure vertical-align length values are offset from their parents rather than being absolute to the
   57447         line.
   57448 
   57449         Reviewed by olliej
   57450 
   57451         Added fast/css/vertical-align-lengths.html
   57452 
   57453         * rendering/RenderObject.cpp:
   57454         (WebCore::RenderObject::getVerticalPosition):
   57455 
   57456 2008-01-16  Dan Bernstein  <mitz (a] apple.com>
   57457 
   57458         Reviewed by Dave Hyatt.
   57459 
   57460         - fix for @font-face rules with unicode-range: always use a local font where not
   57461           explicitly overlaid.
   57462 
   57463         Test: fast/css/font-face-implicit-local-font.html
   57464 
   57465         * css/CSSFontSelector.cpp:
   57466         (WebCore::CSSFontSelector::addFontFaceRule): Changed to insert an implicit
   57467         @font-face rule with the local font the matches the family and description before
   57468         any explicit @font-face rules that overlay specific ranges of the same font.
   57469         * css/CSSSegmentedFontFace.h:
   57470         (WebCore::CSSSegmentedFontFace::numRanges): Addded.
   57471 
   57472 2008-01-16  Antti Koivisto  <antti (a] apple.com>
   57473 
   57474         Fix Tiger build.
   57475 
   57476         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
   57477         (WebCore::MediaPlayerPrivate::disableUnsupportedTracks):
   57478 
   57479 2008-01-16  Antti Koivisto  <antti (a] apple.com>
   57480 
   57481         Reviewed by Adele.
   57482         
   57483         OS X fix for <rdar://problem/5605682>
   57484         Disallow streaming protocols for media elements
   57485         and <rdar://problem/5668711>
   57486         Limit the container and codec types that the <video> tag supports
   57487         
   57488         - Disable unsupported QuickTime tracks types. 
   57489         - Disallow streaming protocols (for now).
   57490         - Set QTMovie QTMoviePreventExternalURLLinksAttribute and QTSecurityPolicyNoCrossSiteAttribute 
   57491           to limit QuickTime's access to external resources.
   57492         
   57493         Windows patch coming up.
   57494 
   57495         Tests: media/broken-video.html
   57496                media/unsupported-rtsp.html
   57497                media/unsupported-tracks.html
   57498 
   57499         * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
   57500         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
   57501         (WebCore::MediaPlayerPrivate::createQTMovie):
   57502         (WebCore::MediaPlayerPrivate::updateStates):
   57503         (WebCore::MediaPlayerPrivate::disableUnsupportedTracks):
   57504 
   57505 2008-01-16  Rodney Dawes  <dobey (a] wayofthemonkey.com>
   57506 
   57507         Reviewed by Alp Toker.
   57508 
   57509         http://bugs.webkit.org/show_bug.cgi?id=16897
   57510         Add shared plugins directory to INCLUDE path
   57511 
   57512         Add the plugins directory to INCLUDEPATH
   57513 
   57514         * GNUmakefile.am:
   57515         * WebCore.pro:
   57516 
   57517 2008-01-16  Geoffrey Garen  <ggaren (a] apple.com>
   57518 
   57519         Reviewed by Sam Weinig.
   57520         
   57521         Added a debug counter for SQL transactions. This helped me debug an SQL
   57522         leak.
   57523 
   57524         * bindings/js/JSCustomSQLTransactionCallback.cpp:
   57525         (WebCore::JSCustomSQLTransactionCallbackCounter::~JSCustomSQLTransactionCallbackCounter):
   57526         (WebCore::JSCustomSQLTransactionCallback::JSCustomSQLTransactionCallback):
   57527         (WebCore::JSCustomSQLTransactionCallback::~JSCustomSQLTransactionCallback):
   57528         * bindings/js/JSCustomSQLTransactionCallback.h:
   57529 
   57530         * bindings/js/kjs_window.cpp: Removed a silly comment.
   57531 
   57532 2008-01-16  David Hyatt  <hyatt (a] apple.com>
   57533 
   57534         Fix for http://bugs.webkit.org/show_bug.cgi?id=14846, cell padding can't be changed dynamically.
   57535 
   57536         Reviewed by Eric Seidel
   57537 
   57538         Added fast/table/dynamic-cellpadding.html
   57539 
   57540         * html/HTMLTableElement.cpp:
   57541         (WebCore::HTMLTableElement::parseMappedAttribute):
   57542         * rendering/RenderTable.cpp:
   57543         (WebCore::RenderTable::setCellPadding):
   57544         * rendering/RenderTable.h:
   57545 
   57546 2008-01-16  David Hyatt  <hyatt (a] apple.com>
   57547 
   57548         Fix for <rdar://problem/5681647> Item pages on http://www.stendmarsofa.com/ hang Safari
   57549 
   57550         This regression was caused by an attempt to implement a WinIE quirk in RenderBlock::calcInlinePrefWidths.
   57551         The original patch introduced pathological O(n^2) behavior into this function even when the quirk didn't need
   57552         to apply.  In addition the quirk was only partially implemented (the full quirk did not care what was adjacent
   57553         to images and also needed bidi.cpp patched, since the quirk applies both when computing pref widths and when
   57554         laying out).
   57555 
   57556         This new patch rewrites the quirk to be complete.  The original test case attached to the bug that tested a variety
   57557         of image/text combinations now fully matches WinIE.
   57558 
   57559         Reviewed by Beth
   57560 
   57561         Added fast/table/unbreakable-images-quirk.html
   57562 
   57563         * rendering/RenderBlock.cpp:
   57564         (WebCore::RenderBlock::calcInlinePrefWidths):
   57565         * rendering/bidi.cpp:
   57566         (WebCore::RenderBlock::findNextLineBreak):
   57567 
   57568 2008-01-16  Rodney Dawes  <dobey (a] wayofthemonkey.com>
   57569 
   57570         Reviewed by Jon Honeycutt
   57571 
   57572         Move isPluginBlacklisted to PluginPackageWin.cpp, to avoid
   57573         a circular dependency on PluginDatabaseWin
   57574         Remove the getFileVersion method, and just check the versions directly
   57575         in isPluginBlacklisted, as it was the only caller
   57576 
   57577         http://bugs.webkit.org/show_bug.cgi?id=16884
   57578 
   57579         * plugins/win/PluginDatabaseWin.cpp:
   57580         * plugins/win/PluginDatabaseWin.h:
   57581         * plugins/win/PluginPackageWin.cpp:
   57582         * plugins/win/PluginPackageWin.h:
   57583 
   57584 2008-01-16  Holger Hans Peter Freyther  <holger.freyther (a] trolltech.com>
   57585 
   57586         Reviewed by Lars.
   57587 
   57588         * Set the cursor on the containingWindow() instead of the
   57589         nativeWidget()
   57590         * This should be safe even with plugins as the cursor is set
   57591         on the mouse events.
   57592 
   57593         * platform/qt/WidgetQt.cpp:
   57594         (WebCore::Widget::setCursor):
   57595 
   57596 2008-01-16  Brad Hughes  <bhughes (a] trolltech.com>
   57597 
   57598         Reviewed by Lars.
   57599 
   57600         Improve the sqlite3 dependency when building WebKit inside Qt.
   57601 
   57602         Build sqlite3 into QtWebKit if a system sqlite3 development package
   57603         can't be found.
   57604 
   57605         * WebCore.pro:
   57606 
   57607 2008-01-16  Lars Knoll  <lars (a] trolltech.com>
   57608 
   57609         Reviewed by Simon Hausmann <simon.hausmann (a] trolltech.com>.
   57610 
   57611         Implement GraphicsContext::clipOut and fix transparency layers.
   57612 
   57613         Transparency layers where broken in two ways: It always used the
   57614         complete device rect as the size of the layer pixmap and the pixmaps
   57615         where not correctly initialized to transparent.
   57616 
   57617         This fixes the worst drawing errors in the Inspector and makes drawing it
   57618         10 times faster.
   57619 
   57620         * platform/graphics/qt/GraphicsContextQt.cpp:
   57621         (WebCore::toQtLineJoin):
   57622         (WebCore::TransparencyLayer::TransparencyLayer):
   57623         (WebCore::GraphicsContextPlatformPrivate::p):
   57624         (WebCore::GraphicsContext::platformContext):
   57625         (WebCore::GraphicsContext::savePlatformState):
   57626         (WebCore::GraphicsContext::restorePlatformState):
   57627         (WebCore::GraphicsContext::drawRect):
   57628         (WebCore::GraphicsContext::drawLine):
   57629         (WebCore::GraphicsContext::drawEllipse):
   57630         (WebCore::GraphicsContext::strokeArc):
   57631         (WebCore::GraphicsContext::drawConvexPolygon):
   57632         (WebCore::GraphicsContext::fillRect):
   57633         (WebCore::GraphicsContext::fillRoundedRect):
   57634         (WebCore::GraphicsContext::clip):
   57635         (WebCore::GraphicsContext::drawFocusRing):
   57636         (WebCore::GraphicsContext::beginTransparencyLayer):
   57637         (WebCore::GraphicsContext::endTransparencyLayer):
   57638         (WebCore::GraphicsContext::clearRect):
   57639         (WebCore::GraphicsContext::strokeRect):
   57640         (WebCore::GraphicsContext::setLineCap):
   57641         (WebCore::GraphicsContext::setLineJoin):
   57642         (WebCore::GraphicsContext::setMiterLimit):
   57643         (WebCore::GraphicsContext::setAlpha):
   57644         (WebCore::GraphicsContext::setCompositeOperation):
   57645         (WebCore::GraphicsContext::clipOut):
   57646         (WebCore::GraphicsContext::translate):
   57647         (WebCore::GraphicsContext::origin):
   57648         (WebCore::GraphicsContext::rotate):
   57649         (WebCore::GraphicsContext::scale):
   57650         (WebCore::GraphicsContext::clipOutEllipseInRect):
   57651         (WebCore::GraphicsContext::addInnerRoundedRectClip):
   57652         (WebCore::GraphicsContext::setPlatformStrokeStyle):
   57653         (WebCore::GraphicsContext::setPlatformStrokeThickness):
   57654         (WebCore::GraphicsContext::setPlatformFillColor):
   57655         (WebCore::GraphicsContext::setUseAntialiasing):
   57656 
   57657 2008-01-16  Lars Knoll  <lars (a] trolltech.com>
   57658 
   57659         Reviewed by Simon Hausmann <simon.hausmann (a] trolltech.com>.
   57660 
   57661         Trivially implement the themed search field by mapping it to a text field
   57662 
   57663         Also add a bunch of notImplemented warnings for other places where we don't
   57664         have an implementatin in RenderTheme.
   57665 
   57666         * platform/qt/RenderThemeQt.cpp:
   57667         (WebCore::RenderThemeQt::paintTextField):
   57668         (WebCore::RenderThemeQt::paintMenuListButton):
   57669         (WebCore::RenderThemeQt::adjustMenuListButtonStyle):
   57670         (WebCore::RenderThemeQt::paintSliderTrack):
   57671         (WebCore::RenderThemeQt::paintSliderThumb):
   57672         (WebCore::RenderThemeQt::paintSearchField):
   57673         (WebCore::RenderThemeQt::adjustSearchFieldStyle):
   57674         (WebCore::RenderThemeQt::adjustSearchFieldCancelButtonStyle):
   57675         (WebCore::RenderThemeQt::paintSearchFieldCancelButton):
   57676         (WebCore::RenderThemeQt::adjustSearchFieldDecorationStyle):
   57677         (WebCore::RenderThemeQt::paintSearchFieldDecoration):
   57678         (WebCore::RenderThemeQt::adjustSearchFieldResultsDecorationStyle):
   57679         (WebCore::RenderThemeQt::paintSearchFieldResultsDecoration):
   57680 
   57681 2008-01-16  Holger Freyther  <holger.freyther (a] trolltech.com>
   57682 
   57683         Reviewed by Simon.
   57684 
   57685         * Follow the EventHandlerWin.cpp and always return true in the handlers.
   57686         * Match the windows implementation more closely as well.
   57687         * This is fixing "selection" bugs with the Web Inspector
   57688 
   57689         * page/qt/EventHandlerQt.cpp:
   57690         (WebCore::EventHandler::focusDocumentView):
   57691         (WebCore::EventHandler::passMousePressEventToSubframe):
   57692         (WebCore::EventHandler::passMouseMoveEventToSubframe):
   57693         (WebCore::EventHandler::passMouseReleaseEventToSubframe):
   57694         (WebCore::EventHandler::passMousePressEventToScrollbar):
   57695 
   57696 2008-01-16  Simon Hausmann  <hausmann (a] webkit.org>
   57697 
   57698         Reviewed by Lars Knoll <lars (a] trolltech.com>.
   57699 
   57700         Fix crashes in the new networking code.
   57701 
   57702         When the ResourceLoader cancels the handle we have to make sure not to access
   57703         the resource handle afterwards again.
   57704 
   57705         * platform/network/qt/QNetworkReplyHandler.cpp:
   57706         (WebCore::QNetworkReplyHandler::finish):
   57707         (WebCore::QNetworkReplyHandler::forwardData):
   57708 
   57709 2008-01-16  Lars Knoll  <lars (a] trolltech.com>
   57710 
   57711         Reviewed by Simon.
   57712 
   57713         add conversion methods from and to QUrl to KURL.
   57714 
   57715         Use them in the places I found at the moment. Fixes a bug
   57716         where form data was encoded twice.
   57717         Also fix QWebSettings to take a QUrl for the user style sheet
   57718         location.
   57719 
   57720         * WebCore.pro:
   57721         * platform/KURL.h:
   57722         * platform/network/qt/QNetworkReplyHandler.cpp:
   57723         (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
   57724         * platform/network/qt/ResourceRequestQt.cpp:
   57725         (WebCore::ResourceRequest::toNetworkRequest):
   57726         * platform/qt/KURLQt.cpp: Added.
   57727         (WebCore::KURL::KURL):
   57728         (WebCore::KURL::operator QUrl):
   57729 
   57730 2008-01-15  Darin Adler  <darin (a] apple.com>
   57731 
   57732         Rubber-stamped by Maciej Stachowiak and Oliver Hunt.
   57733 
   57734         - fix <rdar://problem/5689748> REGRESSION: Cannot redirect to protocols handled by external applications
   57735 
   57736         Put navigation policy delegate calls back for redirects.
   57737         Just rolled out the change where I took them out.
   57738 
   57739         * loader/MainResourceLoader.cpp:
   57740         (WebCore::MainResourceLoader::callContinueAfterNavigationPolicy):
   57741         (WebCore::MainResourceLoader::continueAfterNavigationPolicy):
   57742         (WebCore::MainResourceLoader::willSendRequest):
   57743         * loader/MainResourceLoader.h:
   57744 
   57745 2008-01-15  Adele Peterson  <adele (a] apple.com>
   57746 
   57747         Reviewed by Sam.
   57748 
   57749         Remove unused variable for old media control background drawing code.
   57750 
   57751         * rendering/RenderThemeMac.h:
   57752         * rendering/RenderThemeMac.mm:
   57753         (WebCore::RenderThemeMac::RenderThemeMac):
   57754         (WebCore::RenderThemeMac::~RenderThemeMac):
   57755 
   57756 2008-01-15  Sam Weinig  <sam (a] webkit.org>
   57757 
   57758         Reviewed by Geoffrey Garen.
   57759 
   57760         Fix <rdar://problem/5595552> r27608 introduced a 20% increase in JS binary size, 4% increase in WebCore binary size
   57761 
   57762         - Update JS Function implementations to use a static function based method. This decreases
   57763           the binary size of an Intel only build by 1013.5K.
   57764 
   57765         * WebCore.xcodeproj/project.pbxproj:
   57766         * bindings/js/JSDOMWindowCustom.cpp:
   57767         (WebCore::JSDOMWindow::customGetOwnPropertySlot):
   57768         * bindings/js/JSEventTargetBase.cpp:
   57769         (WebCore::jsEventTargetAddEventListener):
   57770         (WebCore::jsEventTargetRemoveEventListener):
   57771         (WebCore::jsEventTargetDispatchEvent):
   57772         (WebCore::retrieveEventTargetAndCorrespondingNode):
   57773         * bindings/js/JSEventTargetBase.h:
   57774         * bindings/js/JSHTMLInputElementBase.cpp:
   57775         (WebCore::jsHTMLInputElementBaseFunctionSetSelectionRange):
   57776         (WebCore::JSHTMLInputElementBase::getOwnPropertySlot):
   57777         * bindings/js/JSHTMLInputElementBase.h:
   57778         * bindings/js/JSLocation.cpp:
   57779         (WebCore::JSLocation::getOwnPropertySlot):
   57780         (WebCore::jsLocationProtoFuncReplace):
   57781         (WebCore::jsLocationProtoFuncReload):
   57782         (WebCore::jsLocationProtoFuncAssign):
   57783         (WebCore::jsLocationProtoFuncToString):
   57784         * bindings/js/JSLocation.h:
   57785         * bindings/js/JSXMLHttpRequest.cpp:
   57786         (KJS::jsXMLHttpRequestPrototypeFunctionAbort):
   57787         (KJS::jsXMLHttpRequestPrototypeFunctionGetAllResponseHeaders):
   57788         (KJS::jsXMLHttpRequestPrototypeFunctionGetResponseHeader):
   57789         (KJS::jsXMLHttpRequestPrototypeFunctionOpen):
   57790         (KJS::jsXMLHttpRequestPrototypeFunctionSend):
   57791         (KJS::jsXMLHttpRequestPrototypeFunctionSetRequestHeader):
   57792         (KJS::jsXMLHttpRequestPrototypeFunctionOverrideMIMEType):
   57793         (KJS::jsXMLHttpRequestPrototypeFunctionAddEventListener):
   57794         (KJS::jsXMLHttpRequestPrototypeFunctionRemoveEventListener):
   57795         (KJS::jsXMLHttpRequestPrototypeFunctionDispatchEvent):
   57796         * bindings/js/JSXMLHttpRequest.h:
   57797         * bindings/js/JSXSLTProcessor.cpp:
   57798         (KJS::jsXSLTProcessorPrototypeFunctionImportStylesheet):
   57799         (KJS::jsXSLTProcessorPrototypeFunctionTransformToFragment):
   57800         (KJS::jsXSLTProcessorPrototypeFunctionTransformToDocument):
   57801         (KJS::jsXSLTProcessorPrototypeFunctionSetParameter):
   57802         (KJS::jsXSLTProcessorPrototypeFunctionGetParameter):
   57803         (KJS::jsXSLTProcessorPrototypeFunctionRemoveParameter):
   57804         (KJS::jsXSLTProcessorPrototypeFunctionClearParameters):
   57805         (KJS::jsXSLTProcessorPrototypeFunctionReset):
   57806         * bindings/js/JSXSLTProcessor.h:
   57807         * bindings/js/kjs_events.cpp:
   57808         (WebCore::jsClipboardPrototypeFunctionClearData):
   57809         (WebCore::jsClipboardPrototypeFunctionGetData):
   57810         (WebCore::jsClipboardPrototypeFunctionSetData):
   57811         (WebCore::jsClipboardPrototypeFunctionSetDragImage):
   57812         * bindings/js/kjs_events.h:
   57813         * bindings/js/kjs_navigator.cpp:
   57814         (KJS::pluginsFunctionRefresh):
   57815         (KJS::navigatorProtoFuncJavaEnabled):
   57816         * bindings/js/kjs_navigator.h:
   57817         * bindings/js/kjs_window.cpp:
   57818         (KJS::Window::getOwnPropertySlot):
   57819         (KJS::windowProtoFuncAToB):
   57820         (KJS::windowProtoFuncBToA):
   57821         (KJS::windowProtoFuncOpen):
   57822         (KJS::windowProtoFuncSetTimeout):
   57823         (KJS::windowProtoFuncClearTimeout):
   57824         (KJS::windowProtoFuncSetInterval):
   57825         (KJS::windowProtoFuncAddEventListener):
   57826         (KJS::windowProtoFuncRemoveEventListener):
   57827         (KJS::windowProtoFuncShowModalDialog):
   57828         (KJS::windowProtoFuncNotImplemented):
   57829         * bindings/js/kjs_window.h:
   57830         * bindings/scripts/CodeGenerator.pm:
   57831         * bindings/scripts/CodeGeneratorJS.pm:
   57832 
   57833 2008-01-15  Adele Peterson  <adele (a] apple.com>
   57834 
   57835         Reviewed by Dan.
   57836 
   57837         Fix for <rdar://problem/5682492> With the <video> element, the audio is heard when forwarding or rewinding a movie while it's playing
   57838 
   57839         * rendering/MediaControlElements.cpp: (WebCore::MediaControlSeekButtonElement::defaultEventHandler):
   57840           Instead of pausing the media when you stop seeking on mouse up, pause the video when you first start seeking on mouse down. 
   57841 
   57842 2008-01-15  Alp Toker  <alp (a] atoker.com>
   57843 
   57844         Rubber-stamped by Anders.
   57845 
   57846         Make the HTTP backend configurable in the GTK+ port. curl is currently
   57847         the only option.
   57848 
   57849         * GNUmakefile.am:
   57850 
   57851 2008-01-15  Adele Peterson  <adele (a] apple.com>
   57852 
   57853         Build fix.
   57854 
   57855         * rendering/RenderThemeSafari.cpp: Removing MediaBackgroundAppearance.
   57856 
   57857 2008-01-14  Samuel Weinig  <sam (a] webkit.org>
   57858 
   57859         Reviewed by Darin.
   57860 
   57861         Fix for <rdar://problem/5671040>
   57862         REGRESSION: 6% HTML iBench regression from r28722 (getElementsByClassName)
   57863 
   57864         On my most consistent tests, this brings the HTML iBench from 1.46 -> 1.41,
   57865         which does not completely make up reported regression, but I was not able to
   57866         reproduce those findings either.
   57867 
   57868         * css/CSSStyleSelector.cpp:
   57869         (WebCore::CSSStyleSelector::matchRules):
   57870         (WebCore::CSSStyleSelector::checkOneSelector):
   57871         * dom/ClassNames.cpp:
   57872         (WebCore::ClassNames::parseClassAttribute):
   57873         * dom/ClassNames.h:
   57874         (WebCore::ClassNames::contains):
   57875         (WebCore::ClassNames::operator[]):
   57876 
   57877 2008-01-15  Adele Peterson  <adele (a] apple.com>
   57878 
   57879         Build fix.  This time for real.
   57880 
   57881         * rendering/RenderThemeSafari.cpp:
   57882 
   57883 2008-01-15  Adele Peterson  <adele (a] apple.com>
   57884 
   57885         Build fix.
   57886 
   57887         * rendering/RenderThemeSafari.cpp:
   57888 
   57889 2008-01-15  Dan Bernstein  <mitz (a] apple.com>
   57890 
   57891         Reviewed by Darin Adler.
   57892 
   57893         - fix <rdar://problem/5666926> svg/custom/use-css-no-effect-on-shadow-tree.svg is failing
   57894 
   57895         * svg/SVGPreserveAspectRatio.cpp:
   57896         (WebCore::SVGPreserveAspectRatio::getCTM): Changed the arguments' type
   57897         from float to double in order to make the values passed to scale() and
   57898         translate() on Mac OS X and on Windows the same.
   57899         * svg/SVGPreserveAspectRatio.h:
   57900 
   57901 2008-01-15  Alexey Proskuryakov  <ap (a] webkit.org>
   57902 
   57903         Reviewed by Darin.
   57904 
   57905         <rdar://problem/5342813> REGRESSION: Safari encodes mailto URLs incorrectly
   57906 
   57907         Test: fast/encoding/mailto-always-utf-8.html
   57908 
   57909         * platform/KURL.cpp: (WebCore::encodeRelativeString): Always use UTF-8 for mailto URLs.
   57910 
   57911 2008-01-15  Adele Peterson  <adele (a] apple.com>
   57912 
   57913         Reviewed by Adam and Antti.
   57914 
   57915         WebCore part of fix for <rdar://problem/5619062> Add load progress indicator to video controls
   57916 
   57917         * WebCore.base.exp: Removed symbol for wkGetMediaControlBackgroundImageData.  Added symbol for wkDrawMediaSliderTrack.
   57918         * css/CSSPrimitiveValueMappings.h: (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): Removed case for MediaBackgroundAppearance.
   57919         * css/html4.css: Removed -webkit-appearance: media-background rule for the media panel element.  Removed unnecessary margin for slider.
   57920         * rendering/RenderStyle.h: (WebCore::): Removed MediaBackgroundAppearance.
   57921 
   57922         * html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::initAndDispatchProgressEvent):
   57923           Call updateMediaPlayer more frequently so the load progress control gets updated appropriately.
   57924         * platform/mac/WebCoreSystemInterface.h: Removed wkGetMediaControlBackgroundImageData.  Added wkDrawMediaSliderTrack.
   57925         * platform/mac/WebCoreSystemInterface.mm: ditto.
   57926 
   57927         * rendering/RenderTheme.h: Removed paintMediaBackground. Added paintMediaSliderTrack.
   57928         * rendering/RenderTheme.cpp: (WebCore::RenderTheme::paint): Call paintMediaSliderTrack for elements with MediaSliderAppearance.
   57929         * rendering/RenderThemeMac.h: Removed paintMediaBackground. Added paintMediaSliderTrack.
   57930         * rendering/RenderThemeMac.mm:
   57931         (WebCore::RenderThemeMac::adjustSliderThumbSize): Added different sizes for the media slider thumb.
   57932         (WebCore::RenderThemeMac::paintMediaSliderTrack): Added.  Calls wkDrawMediaSliderTrack with the percentage the media has loaded.
   57933         * rendering/RenderThemeSafari.cpp: ditto.
   57934         (WebCore::RenderThemeSafari::adjustSliderThumbSize):
   57935         (WebCore::RenderThemeSafari::paintMediaSliderTrack):
   57936         * rendering/RenderThemeSafari.h:
   57937 
   57938 2008-01-15  Alexey Proskuryakov  <ap (a] webkit.org>
   57939 
   57940         Reviewed by Mark Rowe.
   57941 
   57942         Some logging channels weren't initialized from user defaults.
   57943 
   57944         * platform/mac/LoggingMac.mm: (WebCore::InitializeLoggingChannelsIfNecessary):
   57945         Initialize LogPlatformLeaks, LogStorageAPI, LogMedia, LogPlugin.
   57946 
   57947 2008-01-14  Steve Falkenburg  <sfalken (a] apple.com>
   57948 
   57949         Use shared vsprops for most vcproj properties.
   57950         
   57951         Reviewed by Darin.
   57952 
   57953         * WebCore.vcproj/QTMovieWin.vcproj:
   57954         * WebCore.vcproj/WebCore.vcproj:
   57955         * platform/graphics/win/QTMovieWin.cpp:
   57956         (QTMovieWin::initializeQuickTime): Fix compiler warning.
   57957 
   57958 2008-01-14  Eric Seidel  <eric (a] webkit.org>
   57959 
   57960         Reviewed by mjs.
   57961 
   57962         Remove a couple more uses of DeprecatedString
   57963 
   57964         No functional changes, thus no test case.
   57965 
   57966         * dom/Document.cpp:
   57967         (WebCore::Document::write):
   57968         (WebCore::Document::writeln):
   57969         (WebCore::Document::recalcStyleSelector):
   57970         * dom/Document.h:
   57971 
   57972 2008-01-14  Pierre-Luc Beaudoin  <pierre-luc.beaudoin (a] collabora.co.uk>
   57973 
   57974         Reviewed by Alp Toker.
   57975 
   57976         Build fix: missing symbols when compiling WebKit/Gtk+ with --enable-svg-filters
   57977         http://bugs.webkit.org/show_bug.cgi?id=16874
   57978 
   57979         * GNUmakefile.am:
   57980         * svg/graphics/cairo/SVGResourceFilterCairo.cpp: Added.
   57981         (WebCore::SVGResourceFilter::createPlatformData):
   57982         (WebCore::SVGResourceFilter::prepareFilter):
   57983         (WebCore::SVGResourceFilter::applyFilter):
   57984 
   57985 2008-01-14  Finnur Thorarinsson  <finnur.webkit (a] gmail.com>
   57986 
   57987         Reviewed by hyatt & eseidel.
   57988 
   57989         - fix http://bugs.webkit.org/show_bug.cgi?id=16844
   57990         RenderText::addLineBoxRects erroneously includes last char for boundingBox
   57991 
   57992         This patch fixes an issue with addLineBoxRects not correctly calculating the 
   57993         rects due to an off-by-one error in using box->end(). We were assuming that 
   57994         end() gives the index past the last character, when in fact it gives the 
   57995         index _of_ the last character. 
   57996 
   57997         Eric Seidel and I could not find a way to test this via DRT. This method is 
   57998         only used by WebKit or Safari for displaying selection rects AFAICT.
   57999 
   58000         * rendering/RenderText.cpp:
   58001         (WebCore::RenderText::addLineBoxRects):
   58002 
   58003 2008-01-14  Darin Adler  <darin (a] apple.com>
   58004 
   58005         Reviewed by Geoff.
   58006 
   58007         - fix crash seen in layout tests
   58008 
   58009         * html/HTMLFrameSetElement.cpp:
   58010         (WebCore::HTMLFrameSetElement::attach):
   58011         Remove incorrect cast to HTMLElement* for parentNode(). The parent is either an
   58012         HTMLElement or a Document, not necessarily an HTMLElement.
   58013 
   58014 2008-01-14  Darin Adler  <darin (a] apple.com>
   58015 
   58016         Reviewed by Sam.
   58017 
   58018         - fix mistakes Sam noticed in my re-speed-up patch
   58019 
   58020         * dom/Element.cpp:
   58021         (WebCore::Element::virtualHasTagName): Moved out of header file. No reason to make
   58022         this inline.
   58023         * dom/Element.h: Moved virtualHasTagName out of header file.
   58024 
   58025         * dom/Node.cpp:
   58026         (WebCore::Node::virtualHasTagName): Moved out of header file. No reason to make
   58027         this inline.
   58028         * dom/Node.h: Removed incorrect "virtual" on hasTagName and moved virtualHasTagName
   58029         out of header file.
   58030 
   58031         * platform/text/StringBuffer.h: Added. Has just the new StringBuffer class.
   58032 
   58033         * platform/text/StringImpl.h: Removed StringBuffer class.
   58034 
   58035         * loader/DocumentLoader.cpp: Added StringBuffer.h include.
   58036         * platform/text/String.cpp: Ditto.
   58037         * platform/text/StringImpl.cpp: Ditto.
   58038         * platform/text/TextCodecLatin1.cpp: Ditto.
   58039         * platform/text/TextCodecUTF16.cpp: Ditto.
   58040         * platform/text/TextCodecUserDefined.cpp: Ditto.
   58041 
   58042         * WebCore.vcproj/WebCore.vcproj: Added StringBuffer.h.
   58043         * WebCore.xcodeproj/project.pbxproj: Ditto.
   58044 
   58045 2008-01-14  Dave Hyatt  <hyatt (a] apple.com>
   58046 
   58047         Clean up all the misplaced graphics files after the recent file moves.  Clean up the project to
   58048         accurately reflect the location of all the graphics files.
   58049         
   58050         Reviewed by Adam
   58051 
   58052         * WebCore.vcproj/WebCore.vcproj:
   58053         * platform/graphics/win/GraphicsContextWin.cpp: Copied from platform/win/GraphicsContextWin.cpp.
   58054         * platform/graphics/win/UniscribeController.cpp: Copied from platform/win/UniscribeController.cpp.
   58055         * platform/graphics/win/UniscribeController.h: Copied from platform/win/UniscribeController.h.
   58056         * platform/win/GraphicsContextWin.cpp: Removed.
   58057         * platform/win/UniscribeController.cpp: Removed.
   58058         * platform/win/UniscribeController.h: Removed.
   58059 
   58060 2008-01-14  Geoffrey Garen  <ggaren (a] apple.com>
   58061 
   58062         Reviewed by Sam Weinig.
   58063         
   58064         Some cleanup to my last patch.
   58065 
   58066         Removed one unused setter declaration and one unused setter definition.
   58067         
   58068         Renamed DoNotCheckDomainSecurityOnRead to DoNotCheckDomainSecurityOnGet
   58069         because "get" is all over the IDL files, and "read" is not.
   58070 
   58071         * bindings/scripts/CodeGeneratorJS.pm:
   58072         * page/DOMWindow.h:
   58073         (WebCore::DOMWindow::defaultstatus):
   58074         * page/DOMWindow.idl:
   58075 
   58076 2008-01-14  Dan Bernstein  <mitz (a] apple.com>
   58077 
   58078         Rubber-stamped by Alice Liu.
   58079 
   58080         - remove reference to nonexistent file
   58081 
   58082         * WebCore.vcproj/WebCore.vcproj: Removed reference to SVGFont.h.
   58083 
   58084 2008-01-14  Darin Adler  <darin (a] apple.com>
   58085 
   58086         Reviewed by Adam.
   58087 
   58088         - re-speed-up the page load test (my StringImpl change slowed it down)
   58089           <rdar://problem/5677241> 1.5% PLT regression from r29098
   58090 
   58091         To reverse the slowdown I caused by changing StringImpl, I tightened it up,
   58092         and also did a little optimization in the HTML tokenizer and in other clients
   58093         of Vector.
   58094 
   58095         * WebCore.base.exp: Removed export of a now-inline function.
   58096 
   58097         * css/CSSParser.cpp:
   58098         (WebCore::CSSParser::parseTransitionProperty): Removed use of DeprecatedString
   58099         to get property ID. This could be sped up even more by writing a fast path
   58100         to use a local Vector<char> rather than allocating a string.
   58101         (WebCore::convertASCIIToFloat): Added. Allows numeric conversion without
   58102         allocating a string object to hold the number.
   58103         (WebCore::CSSParser::lex): Changed to call convertASCIIToFloat instead of
   58104         DeprecatedString::toFloat.
   58105 
   58106         * dom/Element.h:
   58107         (WebCore::Element::hasTagName): Made this non-virtual and inline if you have
   58108         an Element*. It's still virtual if you have a Node*.
   58109         (WebCore::Element::virtualHasTagName): Virtual version that makes the Node*
   58110         case work.
   58111 
   58112         * dom/Node.h:
   58113         (WebCore::Node::hasTagName): Made this non-virtual and inline so that Element
   58114         can override it with an inline. This is the same technique we use for
   58115         firstChild and lastChild.
   58116         (WebCore::Node::virtualHasTagName): This is the private virtual that Element
   58117         overrides.
   58118 
   58119         * dom/Text.cpp:
   58120         (WebCore::Text::splitText): Clean up by using a RefPtr here instead of a
   58121         PassRefPtr.
   58122 
   58123         * html/HTMLTokenizer.cpp:
   58124         (WebCore::HTMLTokenizer::parseSpecial): Use the new advancePastNonNewline(),
   58125         which is more efficient in cases where we know the character is not a newline
   58126         and hence we don't have to update the line number.
   58127         (WebCore::HTMLTokenizer::parseComment): Ditto.
   58128         (WebCore::HTMLTokenizer::parseServer): Ditto.
   58129         (WebCore::HTMLTokenizer::parseProcessingInstruction): Ditto.
   58130         (WebCore::HTMLTokenizer::parseText): Ditto.
   58131         (WebCore::HTMLTokenizer::parseEntity): Ditto.
   58132         (WebCore::HTMLTokenizer::parseTag): Ditto. Also streamline the QuotedValue case
   58133         so there's one less branch taken for non-punctuation characters since this
   58134         code path is *so* hot.
   58135         (WebCore::HTMLTokenizer::write): More of the same.
   58136 
   58137         * loader/Cache.cpp:
   58138         (WebCore::Cache::lruListFor): Use Vector::grow instead of resize.
   58139 
   58140         * loader/DocumentLoader.cpp:
   58141         (WebCore::canonicalizedTitle): Use StringBuffer instead of Vector<UChar>.
   58142 
   58143         * loader/TextResourceDecoder.cpp:
   58144         (WebCore::TextResourceDecoder::checkForCSSCharset): Use Vector::grow instead of resize.
   58145         (WebCore::TextResourceDecoder::checkForHeadCharset): Ditto.
   58146         (WebCore::TextResourceDecoder::decode): Use Vector::grow and shrink instead of resize.
   58147         (WebCore::TextResourceDecoder::flush): Use Vector::shrink instead of resize.
   58148 
   58149         * platform/KURL.cpp:
   58150         (WebCore::KURL::decode_string): Use Vector::grow instead of resize.
   58151 
   58152         * platform/SharedBuffer.cpp:
   58153         (WebCore::SharedBuffer::clear): Use Vector::shrink instead of resize.
   58154 
   58155         * platform/graphics/BitmapImage.cpp:
   58156         (WebCore::BitmapImage::cacheFrame): Use Vector::grow instead of resize.
   58157 
   58158         * platform/network/FormData.cpp:
   58159         (WebCore::FormData::appendData): Use Vector::grow instead of resize.
   58160         (WebCore::FormData::flatten): Ditto.
   58161 
   58162         * platform/text/AtomicString.cpp:
   58163         (WebCore::CStringTranslator::translate): Use a new StringImpl constructor made just
   58164         for use by AtomicString. Avoids setting fields twice, and also preserves reference
   58165         count behavior (which I changed for the other constructors, since they're entirely
   58166         private and used only inside the class).
   58167         (WebCore::UCharBufferTranslator::translate): Ditto.
   58168 
   58169         * platform/text/Base64.cpp:
   58170         (WebCore::base64Encode): Use Vector::grow instead of resize.
   58171         (WebCore::base64Decode): Use Vector::grow and shrink instead of resize.
   58172 
   58173         * platform/text/PlatformString.h:
   58174         (WebCore::String::adopt): Added an overload for the new StringBuffer class. Also
   58175         made both versions inline.
   58176 
   58177         * platform/text/SegmentedString.h:
   58178         (WebCore::SegmentedString::advancePastNewline): Added. One less branch for case
   58179         where the character is known to be a newline.
   58180         (WebCore::SegmentedString::advancePastNonNewline): Added. Less code for case where
   58181         the character is known not to be a newline.
   58182 
   58183         * platform/text/String.cpp:
   58184         (WebCore::String::append): Use StringBuffer instead of Vector<UChar>.
   58185         (WebCore::String::insert): Ditto.
   58186         (WebCore::String::truncate): Ditto.
   58187         (WebCore::String::remove): Ditto.
   58188         (WebCore::String::format): Use Vector::grow instead of resize.
   58189 
   58190         * platform/text/StringImpl.cpp:
   58191         (WebCore::StringImpl::StringImpl): Changed constructors to start with a refCount
   58192         of 1 instead of 0, and made them all inline. Eliminates the WithOneRef constructor
   58193         since they all behave this way now. The only exceptions are the constructors for
   58194         AtomicString, which retain the old behavior.
   58195         (WebCore::StringImpl::empty): Simplified, since we no longer need to use the
   58196         special WithOneRef constructor.
   58197         (WebCore::StringImpl::toCoordsArray): Use StringBuffer instead of Vector<UChar>.
   58198         (WebCore::StringImpl::lower): Ditto.
   58199         (WebCore::StringImpl::upper): Ditto.
   58200         (WebCore::StringImpl::secure): Ditto.
   58201         (WebCore::StringImpl::foldCase): Ditto.
   58202         (WebCore::StringImpl::simplifyWhiteSpace): Ditto. Also change to use Vector::shrink
   58203         instead of resize (since half of the function uses Vector<UChar>).
   58204         (WebCore::StringImpl::capitalize): Use StringBuffer instead of Vector<UChar>.
   58205         (WebCore::StringImpl::replace): Ditto.
   58206         (WebCore::StringImpl::ascii): Streamlined a bit.
   58207         (WebCore::StringImpl::createStrippingNullCharacters): Use StringBuffer insetad of
   58208         Vector<UChar>. Took out checks for null characters and 0 length that aren't needed.
   58209         Coded the check for null characters in a slightly more efficient way. Since this
   58210         is so hot, didn't call adopt at all, putting the code right in here, including
   58211         the call to the StringImpl constructor and adoptRef (for the fast case).
   58212         (WebCore::StringImpl::adopt): Added a version for the new StringBuffer class.
   58213         Removed the attempt to resize the buffer at the time we adopt based on measuring
   58214         actual use and realizing that it's just a character here or there and not worth
   58215         a call to fastRealloc. Changed to use adoptRef since the constructor now starts
   58216         with a refCount of 1.
   58217         (WebCore::StringImpl::create): Changed to use adoptRef since the constructor now
   58218         starts with a refCount of 1.
   58219         (WebCore::StringImpl::createWithTerminatingNullCharacter): Ditto.
   58220         (WebCore::StringImpl::copy): Ditto. Also made non-inline since the constructor
   58221         itself is now inline.
   58222 
   58223         * platform/text/StringImpl.h: Added a StringBuffer class that's useful for
   58224         putting characters into a buffer before creating an immutable string. Not good
   58225         at resizing the way Vector<UChar> is, so only useful for things that rarely need
   58226         to be resized. Added a new AdoptBuffer constructor and empty constructor, but
   58227         made all constructors private so they can be inlined and only used inside the
   58228         StringImpl class. Added two new constructors for AtomicString. Made copy()
   58229         no longer inline. Changed the type of the [] operator to unsigned instead of
   58230         int and added an assertion. Made the hash functions inline.
   58231 
   58232         * platform/text/TextCodecICU.cpp:
   58233         (WebCore::TextCodecICU::encode): Use Vector::grow instead of resize.
   58234 
   58235         * platform/text/TextCodecLatin1.cpp:
   58236         (WebCore::TextCodecLatin1::decode): Use StringBuffer instead of Vector<UChar>.
   58237         (WebCore::encodeComplexWindowsLatin1): Use Vector::grow instead of resize.
   58238 
   58239         * platform/text/TextCodecUTF16.cpp:
   58240         (WebCore::TextCodecUTF16::decode): Use StringBuffer instead of Vector<UChar>.
   58241 
   58242         * platform/text/TextCodecUserDefined.cpp:
   58243         (WebCore::TextCodecUserDefined::decode): Use StringBuffer instead of Vector<UChar>.
   58244         (WebCore::encodeComplexUserDefined): Use Vector::grow instead of resize.
   58245 
   58246         * platform/text/TextEncoding.cpp:
   58247         (WebCore::TextEncoding::encode): Use Vector::grow instead of resize.
   58248 
   58249         * platform/text/TextStream.cpp:
   58250         (WebCore::TextStream::operator<<): Use Vector::grow instead of resize.
   58251 
   58252         * platform/text/mac/TextCodecMac.cpp:
   58253         (WebCore::TextCodecMac::encode): Use Vector::grow instead of resize.
   58254 
   58255         * rendering/AutoTableLayout.cpp:
   58256         (WebCore::AutoTableLayout::insertSpanCell): Use Vector::grow instead of resize.
   58257 
   58258         * rendering/RenderFrameSet.h:
   58259         (WebCore::FrameEdgeInfo::FrameEdgeInfo): Allocate vectors with the correct initial
   58260         size instead of calling resize on them after allocating empty.
   58261 
   58262         * rendering/RenderListMarker.cpp:
   58263         (WebCore::RenderListMarker::paint): Use Vector::grow instead of resize.
   58264 
   58265         * rendering/RenderStyle.cpp: Removed CursorList::operator==.
   58266         * rendering/RenderStyle.h:
   58267         (WebCore::CursorList::operator==): Implemented using the Vector ==.
   58268         (WebCore::CursorList::operator!=): Ditto.
   58269 
   58270         * rendering/RenderTable.cpp:
   58271         (WebCore::RenderTable::splitColumn): Use Vector::grow instead of resize.
   58272         (WebCore::RenderTable::appendColumn): Ditto.
   58273 
   58274         * rendering/RenderTableSection.cpp:
   58275         (WebCore::RenderTableSection::ensureRows): Use Vector::grow instead of resize.
   58276 
   58277         * rendering/bidi.cpp:
   58278         (WebCore::addMidpoint): Use Vector::grow instead of resize.
   58279 
   58280         * xml/XPathNodeSet.h:
   58281         (WebCore::XPath::NodeSet::clear): Use Vector::shrink instead of resize.
   58282 
   58283 2008-01-13  Steve Falkenburg  <sfalken (a] apple.com>
   58284 
   58285         Share common files across projects.
   58286         
   58287         Unify vsprops files
   58288         Debug:          common.vsprops, debug.vsprops
   58289         Debug_Internal: common.vsprops, debug.vsprops, debug_internal.vsprops
   58290         Release:        common.vsprops, release.vsprops
   58291         
   58292         Shared properties can go into common.vsprops, shared debug settings can go into debug.vsprops.
   58293         debug_internal.vsprops will be mostly empty except for file path prefix modifiers.
   58294 
   58295         Pull auto-version.sh, VERSION, and PRODUCTVERSION from tools.
   58296 
   58297         Reviewed by Adam Roben.
   58298 
   58299         * WebCore.vcproj/PRODUCTVERSION: Removed.
   58300         * WebCore.vcproj/QTMovieWin.vcproj:
   58301         * WebCore.vcproj/VERSION: Removed.
   58302         * WebCore.vcproj/WebCore.vcproj:
   58303         * WebCore.vcproj/auto-version.sh: Removed.
   58304         * WebCore.vcproj/debug.vsprops: Removed.
   58305         * WebCore.vcproj/debug_internal.vsprops: Removed.
   58306         * WebCore.vcproj/release.vsprops: Removed.
   58307 
   58308 2008-01-13  Dan Bernstein  <mitz (a] apple.com>
   58309 
   58310         Reviewed by Darin Adler.
   58311 
   58312         - fix http://bugs.webkit.org/show_bug.cgi?id=16865
   58313           fast/layers/resize-layer-deletion-crash.html crashes under GuardMalloc
   58314 
   58315         * rendering/RenderBox.cpp:
   58316         (WebCore::RenderBox::destroy): Removed the call to
   58317         RenderLayer::destroy() from here, because ~RenderLayer() calls
   58318         RenderObject() methods.
   58319         * rendering/RenderObject.cpp:
   58320         (WebCore::RenderObject::destroy): Added the call to
   58321         RenderLayer::destroy() here.
   58322 
   58323 2008-01-13  Eric Seidel  <eric (a] webkit.org>
   58324 
   58325         Reviewed by darin.
   58326 
   58327         Range.insertNode does not update endContainer endIndex correctly
   58328         in the case where it had to split a text node.
   58329         http://bugs.webkit.org/show_bug.cgi?id=16765
   58330         
   58331         Darin pointed out during review that we still don't handle the dynamic
   58332         range case (where the dom tree changes not using range methods)
   58333         Thus this code will get ripped out when we add that.  The test cases
   58334         are still valid and useful however, so I'm landing this as-is.
   58335 
   58336         Tests: fast/dom/Range/range-insertNode-separate-endContainer.html
   58337                fast/dom/Range/range-insertNode-splittext.html
   58338 
   58339         * dom/Range.cpp:
   58340         (WebCore::Range::insertNode): handle the splitText case correctly.
   58341 
   58342 2008-01-13  Darin Adler  <darin (a] apple.com>
   58343 
   58344         Reviewed by Eric.
   58345 
   58346         - http://bugs.webkit.org/show_bug.cgi?id=16861
   58347           get rid of unnecessary string copying
   58348 
   58349         * dom/Document.cpp:
   58350         (WebCore::Document::setDomain): Removed unneeded call to copy.
   58351         (WebCore::Document::parseQualifiedName): Removed unneeded call to copy, and
   58352         unneeded length argument to substring, which stops at the end of the string
   58353         if you don't specify a length.
   58354         (WebCore::Document::createAttributeNS): Replaced code that was calling copy
   58355         with more-efficient code using the substring function.
   58356         * dom/StyledElement.cpp:
   58357         (WebCore::StyledElement::addCSSColor): Removed unneeded call to copy.
   58358         * editing/InsertIntoTextNodeCommand.cpp:
   58359         (WebCore::InsertIntoTextNodeCommand::InsertIntoTextNodeCommand): Removed
   58360         unneeded copy and also initialized text instead of assigning to it.
   58361         (WebCore::InsertIntoTextNodeCommand::doApply): Removed redundant assertions.
   58362         (WebCore::InsertIntoTextNodeCommand::doUnapply): Ditto.
   58363 
   58364         * editing/htmlediting.cpp:
   58365         (WebCore::stringWithRebalancedWhitespace): Removed unneeded call to copy.
   58366         This one was particularly bad since we just turned around and copied it again!
   58367 
   58368         * editing/markup.cpp:
   58369         (WebCore::stringValueForRange): Removed unneeded call to copy.
   58370 
   58371         * loader/icon/IconDatabase.cpp:
   58372         (WebCore::IconDatabase::performOpenInitialization): Changed logging code to not
   58373         get the path from the database object. This was the only reason the database
   58374         had to keep its path around.
   58375 
   58376         * platform/sql/SQLiteDatabase.cpp:
   58377         (WebCore::SQLiteDatabase::open): Use a local variable instead of a data member to
   58378         convert the string to a null-terminated one.
   58379         (WebCore::SQLiteDatabase::close): Removed the code to clear out m_path.
   58380         * platform/sql/SQLiteDatabase.h: Removed the m_path data member and the path
   58381         functio member. Also tweaked formatting and comments a bit. Removed the unused
   58382         escapeSQLString function.
   58383 
   58384         * platform/text/String.cpp: (WebCore::operator+): Removed uneeded calls to copy.
   58385 
   58386 2008-01-13  Oliver Hunt  <oliver (a] apple.com>
   58387 
   58388         Attempt to fix QT build
   58389 
   58390         * html/CanvasRenderingContext2D.cpp:
   58391         (WebCore::CanvasRenderingContext2D::willDraw):
   58392 
   58393 2008-01-13  Oliver Hunt  <oliver (a] apple.com>
   58394 
   58395         Reviewed by Mark Rowe.
   58396 
   58397         Avoid repainting the entire canvas element when possible.
   58398 
   58399         http://bugs.webkit.org/show_bug.cgi?id=16859
   58400 
   58401         We now only register the dirty regions of a canvas for repainting, rather
   58402         than the entire element (though repaint coalescing may choose to combine
   58403         these regions).  This doesn't cause a measurable regression in the worst
   58404         case (clearing the canvas repeatedly), but is a moderate-large win if only
   58405         a minor update has occurred.  If there is any CSS scaling applied to the
   58406         canvas almost any update short of clearing the entire element is substantially
   58407         faster.
   58408 
   58409         * html/CanvasRenderingContext2D.cpp:
   58410         (WebCore::CanvasRenderingContext2D::willDraw):
   58411         * html/HTMLCanvasElement.cpp:
   58412         (WebCore::HTMLCanvasElement::willDraw):
   58413 
   58414 2008-01-13  Michael Goddard  <michael.goddard (a] trolltech.com>
   58415 
   58416         Reviewed by Anders Carlsson.
   58417 
   58418         Move RuntimeObjectImp creations into Instance.
   58419         Make the ctor protected, and Instance a friend class, so
   58420         that all creation of RuntimeObjectImps goes through
   58421         one place.
   58422 
   58423         * bindings/js/kjs_dom.cpp:
   58424         (WebCore::getRuntimeObject):
   58425 
   58426 2008-01-12  Rodney Dawes  <dobey (a] wayofthemonkey.com>
   58427 
   58428         Gtk debug build fix.  Reviewed by Mark Rowe.
   58429 
   58430         Add plugin logging channel, and use it rather than Win32-specific debugging methods _RPTF1 _RPTF2 and _CRT_WARN.
   58431 
   58432         * WebCore.pro: Add plugins directory to DEPENDPATH so dependencies are correctly tracked.
   58433         * platform/Logging.cpp:
   58434         * platform/Logging.h:
   58435         * plugins/PluginDebug.h:
   58436 
   58437 2008-01-12  Adam Barth  <hk9565 (a] gmail.com>
   58438 
   58439         Reviewed by Maciej (and also tweaked a little bit).
   58440 
   58441         - more thorough fix for some crashing tests
   58442           http://bugs.webkit.org/show_bug.cgi?id=16782
   58443 
   58444         * loader/FrameLoader.cpp:
   58445         (WebCore::FrameLoader::urlSelected):
   58446         (WebCore::FrameLoader::submitForm):
   58447         (WebCore::FrameLoader::executeIfJavaScriptURL):
   58448         * loader/FrameLoader.h:
   58449 
   58450 2008-01-12  Maciej Stachowiak  <mjs (a] apple.com>
   58451 
   58452         Reviewed by Sam.
   58453 
   58454         - fixed <rdar://problem/5556374> REGRESSION: cross-domain error when one URL uses an explicit port number and another doesn't
   58455         
   58456         * platform/SecurityOrigin.cpp:
   58457         (WebCore::isDefaultPortForProtocol):
   58458         (WebCore::SecurityOrigin::SecurityOrigin):
   58459 
   58460 2008-01-11  Geoffrey Garen  <ggaren (a] apple.com>
   58461 
   58462         Reviewed by Oliver Hunt.
   58463         
   58464         Fixed <rdar://problem/5665251> REGRESSION (r28880-r28886): Global
   58465         variable access (16644)
   58466         
   58467         Removed the ReadOnly bit from some properties, to match Firefox. Also
   58468         removed status-related setters, to allow using their names as variable
   58469         names.
   58470         
   58471         * bindings/scripts/CodeGeneratorJS.pm: Added support for properties that
   58472         are one-way across domain boundaries, to match Firefox.
   58473 
   58474         * bindings/js/kjs_window.cpp: Changed ReadOnly declarations to match FF.
   58475 
   58476         * bindings/scripts/CodeGeneratorJS.pm: Don't use JSObject:: because
   58477         we don't know that JSObject is our base class.
   58478 
   58479         * page/DOMWindow.idl: Replaced lots of readonly declarations with
   58480         [Replaceable] declarations.
   58481 
   58482         * page/DOMWindow.h: Removed interfaces for setting status text via the
   58483         DOM. (They were getting in the way of, e.g., "var status"
   58484         declarations.) By default, IE 7 and FF disable these interfaces in order
   58485         to defend against phishing attacks that try to spoof domain names in the
   58486         statusbar.
   58487         * page/DOMWindow.cpp:
   58488 
   58489 2008-01-11  Anyang Ren  <anyang.ren (a] gmail.com>
   58490 
   58491         Reviewed by Darin Adler.
   58492 
   58493         http://bugs.webkit.org/show_bug.cgi?id=15960
   58494         The view source mode should skip an empty attribute value only if
   58495         the attribute name is not followed by an equal sign (=).
   58496 
   58497         Test: fast/frames/viewsource-empty-attribute-value.html
   58498 
   58499         * html/HTMLViewSourceDocument.cpp:
   58500         (WebCore::HTMLViewSourceDocument::addViewSourceToken):
   58501 
   58502 2008-01-11  Sylvain Pasche  <sylvain.pasche (a] gmail.com>
   58503 
   58504         Reviewed by Alp Toker.
   58505 
   58506         [Gtk] Uneven glyph spacing with subpixel antialiasing
   58507         http://bugs.webkit.org/show_bug.cgi?id=16715
   58508 
   58509         Use cairo font options from the default GDK screen when creating a
   58510         scaled font.
   58511 
   58512         * platform/graphics/gtk/FontPlatformDataGtk.cpp:
   58513         (WebCore::FontPlatformData::FontPlatformData):
   58514 
   58515 2008-01-11  Cameron Zwarich  <cwzwarich (a] uwaterloo.ca>
   58516 
   58517         Reviewed by Maciej.
   58518 
   58519         Added a new forwarding header, because Activation.h has been separated
   58520         from function.h
   58521 
   58522         * ForwardingHeaders/kjs/Activation.h: Added.
   58523 
   58524 2008-01-11  Luca Bruno  <lethalman88 (a] gmail.com>
   58525 
   58526         Reviewed by Alp Toker.
   58527 
   58528         http://bugs.webkit.org/show_bug.cgi?id=16729
   58529         [cURL] Allow multiple files for upload
   58530 
   58531         * platform/network/ResourceHandleInternal.h:
   58532         (WebCore::ResourceHandleInternal::ResourceHandleInternal):
   58533         * platform/network/curl/ResourceHandleCurl.cpp:
   58534         (WebCore::ResourceHandleInternal::~ResourceHandleInternal):
   58535         * platform/network/curl/ResourceHandleManager.cpp:
   58536         (WebCore::readCallback): added
   58537         (WebCore::ResourceHandleManager::setupPOST): setup for streaming the POST
   58538         (WebCore::ResourceHandleManager::startJob):
   58539         (WebCore::ResourceHandleManager::cancel): revert the previous patch for regression
   58540         * platform/network/curl/ResourceHandleManager.h:
   58541 
   58542 2008-01-11  Christian Dywan  <christian (a] imendio.com>
   58543 
   58544         Reviewed by Alp Toker.
   58545 
   58546         [Gtk] Menu items need underscores
   58547         http://bugs.webkit.org/show_bug.cgi?id=16817
   58548 
   58549         Add underscores to appropriate menu labels.
   58550         Also adjust strings slightly.
   58551 
   58552         * platform/gtk/ContextMenuItemGtk.cpp:
   58553         (WebCore::ContextMenuItem::createNativeMenuItem):
   58554         * platform/gtk/LocalizedStringsGtk.cpp:
   58555         (WebCore::searchableIndexIntroduction):
   58556         (WebCore::fileButtonChooseFileLabel):
   58557         (WebCore::fileButtonNoFileSelectedLabel):
   58558         (WebCore::contextMenuItemTagOpenLinkInNewWindow):
   58559         (WebCore::contextMenuItemTagDownloadLinkToDisk):
   58560         (WebCore::contextMenuItemTagCopyLinkToClipboard):
   58561         (WebCore::contextMenuItemTagOpenImageInNewWindow):
   58562         (WebCore::contextMenuItemTagDownloadImageToDisk):
   58563         (WebCore::contextMenuItemTagCopyImageToClipboard):
   58564         (WebCore::contextMenuItemTagOpenFrameInNewWindow):
   58565         (WebCore::contextMenuItemTagCopy):
   58566         (WebCore::contextMenuItemTagGoBack):
   58567         (WebCore::contextMenuItemTagGoForward):
   58568         (WebCore::contextMenuItemTagStop):
   58569         (WebCore::contextMenuItemTagReload):
   58570         (WebCore::contextMenuItemTagCut):
   58571         (WebCore::contextMenuItemTagPaste):
   58572         (WebCore::contextMenuItemTagIgnoreSpelling):
   58573         (WebCore::contextMenuItemTagLearnSpelling):
   58574         (WebCore::contextMenuItemTagSearchWeb):
   58575         (WebCore::contextMenuItemTagLookUpInDictionary):
   58576         (WebCore::contextMenuItemTagOpenLink):
   58577         (WebCore::contextMenuItemTagIgnoreGrammar):
   58578         (WebCore::contextMenuItemTagSpellingMenu):
   58579         (WebCore::contextMenuItemTagShowSpellingPanel):
   58580         (WebCore::contextMenuItemTagCheckSpelling):
   58581         (WebCore::contextMenuItemTagCheckSpellingWhileTyping):
   58582         (WebCore::contextMenuItemTagCheckGrammarWithSpelling):
   58583         (WebCore::contextMenuItemTagFontMenu):
   58584         (WebCore::contextMenuItemTagBold):
   58585         (WebCore::contextMenuItemTagItalic):
   58586         (WebCore::contextMenuItemTagUnderline):
   58587         (WebCore::contextMenuItemTagOutline):
   58588         (WebCore::contextMenuItemTagWritingDirectionMenu):
   58589         (WebCore::contextMenuItemTagDefaultDirection):
   58590         (WebCore::contextMenuItemTagLeftToRight):
   58591         (WebCore::contextMenuItemTagRightToLeft):
   58592         (WebCore::contextMenuItemTagInspectElement):
   58593         (WebCore::searchMenuClearRecentSearchesText):
   58594 
   58595 2008-01-11  Ada Chan  <adachan (a] apple.com>
   58596 
   58597         <rdar://problem/5681557> On Windows Safari, mouse events are ignored after clicking on link that triggers download
   58598         Moved the call to cache page from provisionalLoadStarted() to commitProvisionalLoad(), since 
   58599         provisionalLoadStarted() can be called for cases that do not result in a page navigation, for example,
   58600         when a link to download a file has been clicked.
   58601 
   58602         Reviewed by John and Anders.
   58603 
   58604         * loader/FrameLoader.cpp:
   58605         (WebCore::FrameLoader::provisionalLoadStarted):
   58606         (WebCore::FrameLoader::commitProvisionalLoad):
   58607 
   58608 2008-01-11  Jon Honeycutt  <jhoneycutt (a] apple.com>
   58609 
   58610         Reviewed by Anders.
   58611 
   58612         <rdar://problem/5683529> plugins/embed-inside-object.html is timing
   58613         out/failing
   58614 
   58615         Revert to using FrameTree::find() so that frame aliases like "_self" and
   58616         "_current" are interpreted properly
   58617 
   58618         * plugins/win/PluginViewWin.cpp:
   58619         (WebCore::PluginViewWin::performRequest):
   58620         (WebCore::PluginViewWin::load):
   58621 
   58622 2008-01-11  Alp Toker  <alp (a] atoker.com>
   58623 
   58624         Reviewed by Dave Hyatt and Mark Rowe.
   58625 
   58626         http://bugs.webkit.org/show_bug.cgi?id=16089
   58627         [GTK] Support custom fonts, CachedFont::platformDataFromCustomData()
   58628 
   58629         Add support for CSS2 @font-face custom/downloadable fonts to the GTK+
   58630         port.
   58631 
   58632         * GNUmakefile.am:
   58633         * WebCore.pro:
   58634         * loader/CachedFont.cpp:
   58635         (WebCore::CachedFont::~CachedFont):
   58636         (WebCore::CachedFont::ensureCustomFontData):
   58637         (WebCore::CachedFont::platformDataFromCustomData):
   58638         (WebCore::CachedFont::allReferencesRemoved):
   58639         * platform/graphics/gtk/FontCustomPlatformData.cpp: Added.
   58640         (WebCore::FontCustomPlatformData::~FontCustomPlatformData):
   58641         (WebCore::FontCustomPlatformData::fontPlatformData):
   58642         (WebCore::releaseData):
   58643         (WebCore::createFontCustomPlatformData):
   58644         * platform/graphics/gtk/FontCustomPlatformData.h: Added.
   58645         (WebCore::FontCustomPlatformData::FontCustomPlatformData):
   58646         * platform/graphics/gtk/FontPlatformData.h:
   58647         * platform/graphics/gtk/FontPlatformDataGtk.cpp:
   58648         (WebCore::FontPlatformData::FontPlatformData):
   58649         (WebCore::FontPlatformData::init):
   58650         (WebCore::FontPlatformData::isFixedPitch):
   58651         * platform/graphics/gtk/SimpleFontDataGtk.cpp:
   58652         (WebCore::SimpleFontData::platformDestroy):
   58653 
   58654 2008-01-11  Adam Roben  <aroben (a] apple.com>
   58655 
   58656         Remove FrameLoader::committedFirstRealDocumentLoad
   58657         
   58658         This method no longer has any callers.
   58659 
   58660         Reviewed by Hyatt.
   58661 
   58662         * loader/FrameLoader.h:
   58663 
   58664 2008-01-11  Antti Koivisto  <antti (a] apple.com>
   58665 
   58666         Add a standalone version of the blog post video player as a manual test.
   58667 
   58668         * manual-tests/resources/touch-poster.png: Added.
   58669         * manual-tests/video-player.html: Added.
   58670 
   58671 2008-01-10  Antti Koivisto  <antti (a] apple.com>
   58672 
   58673         Reviewed by Adam.
   58674 
   58675         Fix <rdar://problem/5682767>
   58676         Video does not show up in http://webkit.org/blog/140/html5-media-support/ on Windows
   58677         
   58678         Take care that GWorld is created and deletes when needed as size or visibility changes.
   58679 
   58680         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
   58681         (WebCore::MediaPlayerPrivate::load):
   58682         * platform/graphics/win/QTMovieWin.cpp:
   58683         (QTMovieWinPrivate::QTMovieWinPrivate):
   58684         (QTMovieWinPrivate::updateGWorld):
   58685         (QTMovieWinPrivate::setSize):
   58686         (QTMovieWin::setVisible):
   58687         (QTMovieWin::initializeQuickTime):
   58688 
   58689 2008-01-11  David Hyatt  <hyatt (a] apple.com>
   58690 
   58691         Fix for bug 11188, setting hspace on a table overrides align=center.  Fix align=center to be done using
   58692         mapped attributes so that it does not get overridden by hspace all the time.
   58693 
   58694         Reviewed by mitz
   58695 
   58696         Added fast/table/table-hspace-align-center.html
   58697 
   58698         * css/html4.css:
   58699         * html/HTMLTableElement.cpp:
   58700         (WebCore::HTMLTableElement::parseMappedAttribute):
   58701 
   58702 2008-01-11  Mark Rowe  <mrowe (a] apple.com>
   58703 
   58704         Qt build fix.
   58705 
   58706         * platform/qt/TemporaryLinkStubs.cpp: Include CString.h.
   58707 
   58708 2008-01-11  Mark Rowe  <mrowe (a] apple.com>
   58709 
   58710         Qt build fix.  Add link stubs for the new FileSystem.h functions introduced
   58711         in r29399.
   58712 
   58713         * platform/qt/TemporaryLinkStubs.cpp:
   58714         (WebCore::openTemporaryFile):
   58715 
   58716 2008-01-11  Rodney Dawes  <dobey (a] wayofthemonkey.com>
   58717 
   58718         Reviewed by Anders Carlsson.
   58719 
   58720         Bug 16779: Make the PluginStream implementation be shared across platforms
   58721         http://bugs.webkit.org/show_bug.cgi?id=16779
   58722 
   58723         Add the new shared PluginStream files to the GTK+ and Win32 builds.
   58724         Add PluginStreamClient class for the streamDidFinishLoading method.
   58725         Add open/close/write methods to FileSystem for temporary file handling.
   58726         Add PluginDebug.h and npfunctions.h for shared PluginStream.
   58727         Add shared PluginStream.
   58728         Remove PluginStreamWin.
   58729         Update PluginViewWin to use shared PluginStream and PluginStreamClass.
   58730 
   58731         * GNUmakefile.am:
   58732         * WebCore.pro:
   58733         * WebCore.vcproj/WebCore.vcproj:
   58734         * platform/FileSystem.h:
   58735         * platform/gtk/FileSystemGtk.cpp:
   58736         * platform/win/FileSystemWin.cpp:
   58737         * plugins/PluginDebug.h:
   58738         * plugins/PluginStream.cpp:
   58739         * plugins/PluginStream.h:
   58740         * plugins/npfunctions.h:
   58741         * plugins/win/PluginDebug: Moved to PluginDebug.h.
   58742         * plugins/win/PluginStreamWin.cpp: Moved to PluginStream.cpp.
   58743         * plugins/win/PluginStreamWin.h: Moved to PluginStream.h
   58744         * plugins/win/PluginViewWin.cpp:
   58745         * plugins/win/PluginViewWin.h:
   58746         * plugins/win/npfunctions.h: Moved to npfunctions.h
   58747 
   58748 2008-01-11  Geoffrey Garen  <ggaren (a] apple.com>
   58749 
   58750         Try to fix Mac build: Edit the right .exp file.
   58751 
   58752         * WebCore.base.exp:
   58753 
   58754 2008-01-11  Geoffrey Garen  <ggaren (a] apple.com>
   58755 
   58756         Try to fix Qt build: don't use pthreads if they're not available.
   58757 
   58758         * bindings/js/GCController.cpp:
   58759 
   58760 2008-01-10  Geoffrey Garen  <ggaren (a] apple.com>
   58761 
   58762         Reviewed by John Sullivan.
   58763 
   58764         Fixed some world leak reports:
   58765         * <rdar://problem/5669436> PLT complains about world leak of 1 JavaScript
   58766         Interpreter after running cvs-base suite
   58767 
   58768         * <rdar://problem/5669423> PLT complains about world leak if browser
   58769         window is open when PLT starts
   58770         
   58771         These were both bugs in the reporting mechanism, so I took the
   58772         opportunity to do some house cleaning there.
   58773 
   58774         Stupid class, I kill you:
   58775         * bridge/JavaScriptStatistics.cpp: Removed.
   58776         * bridge/JavaScriptStatistics.h: Removed.
   58777 
   58778         * bindings/js/GCController.h: Adopted the only useful features of
   58779         JavaScriptStatistics, since they were GC-related.
   58780         * bindings/js/GCController.cpp:
   58781 
   58782 2008-01-10  Eric Seidel  <eric (a] webkit.org>
   58783 
   58784         Reviewed by Adele.
   58785 
   58786         No functional changes, only code cleanup.
   58787 
   58788         * css/MediaQueryEvaluator.cpp:
   58789         (WebCore::compareValue): renamed from cmpvalue
   58790         (WebCore::colorMediaFeatureEval):
   58791         (WebCore::device_aspect_ratioMediaFeatureEval):
   58792         (WebCore::device_pixel_ratioMediaFeatureEval):
   58793         (WebCore::gridMediaFeatureEval):
   58794         (WebCore::device_heightMediaFeatureEval):
   58795         (WebCore::device_widthMediaFeatureEval):
   58796         (WebCore::heightMediaFeatureEval):
   58797         (WebCore::widthMediaFeatureEval):
   58798 
   58799 2008-01-10  Dan Bernstein  <mitz (a] apple.com>
   58800 
   58801         Reviewed by Anders Carlsson.
   58802 
   58803         - fix a crash when calling alert() from a repeating timer
   58804 
   58805         On non-Mac platforms, the PageGroupLoadDeferrer pauses DOM timers during
   58806         alert() and other similar functions, which deletes the actual
   58807         DOMWindowTimer objects and replaces them with new objects when resuming.
   58808 
   58809         * bindings/js/kjs_window.cpp:
   58810         (KJS::Window::timerFired): Re-fetch the timer object from the map in
   58811         case it has been deleted or replaced.
   58812 
   58813 2008-01-10  Maciej Stachowiak  <mjs (a] apple.com>
   58814 
   58815         Reviewed by Sam.
   58816 
   58817         - remove SecurityOriginData and fold its functionality into SecurityOrigin
   58818 
   58819         * GNUmakefile.am:
   58820         * WebCore.base.exp:
   58821         * WebCore.pro:
   58822         * WebCore.vcproj/WebCore.vcproj:
   58823         * WebCore.xcodeproj/project.pbxproj:
   58824         * WebCoreSources.bkl:
   58825         * bindings/js/JSDOMWindowCustom.cpp:
   58826         (WebCore::JSDOMWindow::postMessage):
   58827         * dom/Document.cpp:
   58828         (WebCore::Document::domain):
   58829         * page/Chrome.cpp:
   58830         (WebCore::Chrome::requestQuotaIncreaseForNewDatabase):
   58831         (WebCore::Chrome::requestQuotaIncreaseForDatabaseOperation):
   58832         * page/Chrome.h:
   58833         * page/ChromeClient.h:
   58834         * platform/SecurityOrigin.cpp:
   58835         (WebCore::SecurityOrigin::copy):
   58836         (WebCore::SecurityOrigin::createFromIdentifier):
   58837         (WebCore::SecurityOrigin::stringIdentifier):
   58838         * platform/SecurityOrigin.h:
   58839         (WebCore::SecurityOrigin::host):
   58840         (WebCore::SecurityOrigin::protocol):
   58841         (WebCore::SecurityOrigin::port):
   58842         (WebCore::SecurityOrigin::equal):
   58843         * platform/SecurityOriginData.cpp: Removed.
   58844         * platform/SecurityOriginData.h: Removed.
   58845         * storage/Database.cpp:
   58846         (WebCore::Database::openDatabase):
   58847         (WebCore::Database::Database):
   58848         (WebCore::Database::securityOriginCopy):
   58849         * storage/Database.h:
   58850         * storage/DatabaseTracker.cpp:
   58851         (WebCore::SecurityOriginHash::hash):
   58852         (WebCore::SecurityOriginHash::equal):
   58853         (WebCore::SecurityOriginTraits::deletedValue):
   58854         (WebCore::SecurityOriginTraits::emptyValue):
   58855         (WebCore::DatabaseTracker::canEstablishDatabase):
   58856         (WebCore::DatabaseTracker::hasEntryForOrigin):
   58857         (WebCore::DatabaseTracker::hasEntryForDatabase):
   58858         (WebCore::DatabaseTracker::establishEntryForOrigin):
   58859         (WebCore::DatabaseTracker::fullPathForDatabase):
   58860         (WebCore::DatabaseTracker::populateOrigins):
   58861         (WebCore::DatabaseTracker::origins):
   58862         (WebCore::DatabaseTracker::databaseNamesForOrigin):
   58863         (WebCore::DatabaseTracker::detailsForNameAndOrigin):
   58864         (WebCore::DatabaseTracker::setDatabaseDetails):
   58865         (WebCore::DatabaseTracker::usageForDatabase):
   58866         (WebCore::DatabaseTracker::usageForOrigin):
   58867         (WebCore::DatabaseTracker::quotaForOrigin):
   58868         (WebCore::DatabaseTracker::setQuota):
   58869         (WebCore::DatabaseTracker::addDatabase):
   58870         (WebCore::DatabaseTracker::deleteAllDatabases):
   58871         (WebCore::DatabaseTracker::deleteDatabasesWithOrigin):
   58872         (WebCore::DatabaseTracker::deleteDatabase):
   58873         (WebCore::DatabaseTracker::deleteDatabaseFile):
   58874         (WebCore::notificationQueue):
   58875         (WebCore::DatabaseTracker::scheduleNotifyDatabaseChanged):
   58876         (WebCore::DatabaseTracker::notifyDatabasesChanged):
   58877         * storage/DatabaseTracker.h:
   58878         * storage/DatabaseTrackerClient.h:
   58879         * storage/SQLTransaction.cpp:
   58880         (WebCore::SQLTransaction::openTransactionAndPreflight):
   58881         (WebCore::SQLTransaction::runStatements):
   58882         (WebCore::SQLTransaction::deliverQuotaIncreaseCallback):
   58883         (WebCore::SQLTransaction::postflightAndCommit):
   58884         (WebCore::SQLTransaction::cleanupAfterTransactionErrorCallback):
   58885         * svg/graphics/SVGImageEmptyClients.h:
   58886         (WebCore::SVGEmptyChromeClient::requestQuotaIncreaseForNewDatabase):
   58887         (WebCore::SVGEmptyChromeClient::requestQuotaIncreaseForDatabaseOperation):
   58888 
   58889 2008-01-10  Anders Carlsson  <andersca (a] apple.com>
   58890 
   58891         Reviewed by Sam.
   58892 
   58893         Use the correct frame loader load method. Using the old method would not cause a 
   58894         new window to be open if the frame navigation was not allowed.
   58895         
   58896         * plugins/win/PluginViewWin.cpp:
   58897         (WebCore::PluginViewWin::performRequest):
   58898 
   58899 2008-01-10  Alp Toker  <alp (a] atoker.com>
   58900 
   58901         SVG font build fix for GTK+/autotools.
   58902 
   58903         * GNUmakefile.am:
   58904 
   58905 2008-01-10  Adam Barth  <hk9565 (a] gmail.com>
   58906 
   58907         Reviewed by Sam Weinig and Anders Carlsson.
   58908 
   58909         Fixes: http://bugs.webkit.org/show_bug.cgi?id=16522
   58910         <rdar://problem/5657355>
   58911 
   58912         This patch makes two changes:
   58913 
   58914         1) Java calls FrameLoader::load in a slightly different way than
   58915            JavaScript, which previously let a malicious web site bypass the
   58916            shouldAllowNavigation check.  This patch adds that check to that
   58917            code path.
   58918 
   58919         2) FrameLoader now wraps calls to m_frame->tree()->find(name) with
   58920            findFrameForNavigation, which calls shouldAllowNavigation.  This
   58921            treats disallowed frame navigations as if the named frame did not
   58922            exist, resulting in a popup window when appropriate.
   58923 
   58924         Tests: http/tests/security/frameNavigation/xss-DENIED-plugin-navigation.html
   58925                http/tests/security/frameNavigation/xss-DENIED-targeted-link-navigation.html
   58926 
   58927         * WebCore.base.exp:
   58928         * bindings/js/kjs_window.cpp:
   58929         (KJS::WindowProtoFuncOpen::callAsFunction):
   58930         * loader/FrameLoader.cpp:
   58931         (WebCore::FrameLoader::createWindow):
   58932         (WebCore::FrameLoader::load):
   58933         (WebCore::FrameLoader::post):
   58934         (WebCore::FrameLoader::findFrameForNavigation):
   58935         * loader/FrameLoader.h:
   58936 
   58937 2008-01-10  John Sullivan  <sullivan (a] apple.com>
   58938 
   58939         Written by Hyatt, reviewed by me
   58940         
   58941         - fixed <rdar://problem/5654297> Mail crashes occurs at WebCore::FontFallbackList::fontDataAt() when attempting to display 
   58942           a <video> element that uses controls attribute
   58943 
   58944         * rendering/MediaControlElements.cpp:
   58945         (WebCore::MediaControlShadowRootElement::MediaControlShadowRootElement):
   58946         force the render style to inherit from the media element's style; Hyatt filed 5682383 to cover cleaning
   58947         up this architecture, but this one-line fix will prevent the crash in the meantime
   58948 
   58949 2008-01-10  Ada Chan  <adachan (a] apple.com>
   58950 
   58951         Fix fast/forms/input-radio-checked-tab.html
   58952         Meta key is not the same as Alt key on windows.
   58953 
   58954         Reviewed by Darin.
   58955 
   58956         * platform/win/KeyEventWin.cpp:
   58957         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
   58958 
   58959 2008-01-10  Anders Carlsson  <andersca (a] apple.com>
   58960 
   58961         Reviewed by Jon.
   58962 
   58963         Fix an assert that would happen when a plug-in tries to load a URL while a provisional load is going.
   58964         
   58965         * plugins/win/PluginViewWin.cpp:
   58966         (WebCore::PluginViewWin::performRequest):
   58967         Move document loader check here since we don't start loading until here and a new document load could have started in the meantime.
   58968         
   58969         (WebCore::PluginViewWin::requestTimerFired):
   58970         Don't leak the plugin requests.
   58971         
   58972         (WebCore::PluginViewWin::load):
   58973 
   58974 2008-01-10  Anders Carlsson  <andersca (a] apple.com>
   58975 
   58976         Reviewed by John Sullivan.
   58977 
   58978         <rdar://problem/5455889>
   58979         REGRESSION: BumperCar crashes when attempting to load a long invalid URL
   58980         
   58981         Make sure to call FrameLoader::receivedMainResourceError before calling
   58982         FrameLoader::didFailToLoad. The call to receivedMainResourceError takes care of
   58983         clearing out the provisional document loader so that we won't call the didFail
   58984         ResourceLoadDelegate method twice. This also makes us call the FrameLoadDelegate method
   58985         didFailPrivisionalLoad before calling the ResourceLoadDelegate method, which Safari 2.0 does.
   58986         
   58987         * loader/MainResourceLoader.cpp:
   58988         (WebCore::MainResourceLoader::receivedError):
   58989 
   58990 2008-01-10  Antti Koivisto  <antti (a] apple.com>
   58991 
   58992         Reviewed by Adele.
   58993 
   58994         Fix <rdar://problem/5658048>
   58995         After <video> has finished playing, dragging the scroller on different location of controller starts to play movie
   58996         
   58997         - Move to paused state if the playback had ended and the controller is used to seek to earlier time
   58998         - Pause video playback during drag so the knob does not constantly try to escape from the mouse pointer
   58999 
   59000         * html/HTMLMediaElement.cpp:
   59001         (WebCore::HTMLMediaElement::HTMLMediaElement):
   59002         (WebCore::HTMLMediaElement::updateMediaPlayer):
   59003         (WebCore::HTMLMediaElement::setPausedInternal):
   59004         * html/HTMLMediaElement.h:
   59005         * rendering/MediaControlElements.cpp:
   59006         (WebCore::MediaControlTimelineElement::defaultEventHandler):
   59007 
   59008 2008-01-10  Alexey Proskuryakov  <ap (a] webkit.org>
   59009 
   59010         Reviewed by Adam Roben.
   59011 
   59012         <rdar://problem/5667003> fast/dom/xmlhttprequest-html-response-encoding.html is failing
   59013 
   59014         * xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::send): Do not disable sniffing for file://
   59015         requests, as CFNetwork doesn't perform extension to MIME type mapping then.
   59016 
   59017 2008-01-10  Adam Roben  <aroben (a] apple.com>
   59018 
   59019         Fixes to allow multiple FrameViews on Windows
   59020 
   59021         Reviewed by Hyatt.
   59022 
   59023         * page/FrameView.cpp:
   59024         (WebCore::FrameView::FrameView): Added a new constructor that takes an
   59025         IntSize to specify the FrameView's initial size.
   59026         (WebCore::FrameView::scheduleRelayout): Added an assertion that our
   59027         Document is not in the page cache.
   59028         * page/FrameView.h:
   59029         * platform/gtk/WidgetGtk.cpp:
   59030         (WebCore::Widget::~Widget): Add a warm, fuzzy ASSERT.
   59031         * platform/qt/WidgetQt.cpp:
   59032         (WebCore::Widget::~Widget): Ditto.
   59033         * rendering/RenderWidget.cpp:
   59034         (WebCore::RenderWidget::setWidget): Make sure to remove any existing
   59035         Widget from the Widget hierarchy before deleting it. One instance
   59036         where this is needed is when setWidget is called during FrameView
   59037         creation on Windows.
   59038 
   59039 2008-01-10  Alp Toker  <alp (a] atoker.com>
   59040 
   59041         Include math.h to get ceilf(). Part of the SVG font GTK+ build fix.
   59042 
   59043         * svg/SVGFontFaceElement.cpp:
   59044 
   59045 2008-01-10  Justin Garcia  <justin.garcia (a] apple.com>
   59046 
   59047         Reviewed by Alice Liu.
   59048 
   59049         <rdar://problem/5658603> Crash in InsertNodeBefore::doUnapply() on Undo in Yahoo Mail
   59050         <rdar://problem/5658709> Crash in RenderView::setSelection on Undo in Yahoo Mail
   59051         
   59052         Make sure we have an updated layout before we perform any editing work.
   59053 
   59054         * editing/EditCommand.cpp:
   59055         (WebCore::EditCommand::apply):
   59056         (WebCore::EditCommand::unapply):
   59057         (WebCore::EditCommand::reapply):
   59058 
   59059 2008-01-10  Luca Bruno  <lethalman88 (a] gmail.com>
   59060 
   59061         Reviewed by Alp Toker.
   59062 
   59063         Back out r29206 which was causing regressions in curl http job
   59064         cancellation.
   59065 
   59066         * platform/network/curl/ResourceHandleManager.cpp
   59067         (ResourceHandleManager::cancel): 
   59068 
   59069 2008-01-10  Kevin McCullough  <kmccullough (a] apple.com>
   59070 
   59071         Reviewed by Darin, Sam, and Adam.
   59072 
   59073         - <rdar://problem/5654486> REGRESSION (Safari 3.0.4-TOT): clicking on
   59074         - link in gmail message displays JavaScript alert falsely complaining
   59075         about pop-up blocking
   59076         - When trying to open a new window, we now see if the user gesture 
   59077         occurred in the global dynamic object instead of the frame since that is
   59078         the only place an event can occur. 
   59079 
   59080         * bindings/js/kjs_window.cpp: - Check the dynamic global object instead
   59081         of the frame.
   59082         (KJS::allowPopUp):
   59083         (KJS::showModalDialog):
   59084         (KJS::WindowProtoFuncOpen::callAsFunction):
   59085 
   59086 2008-01-10  David Hyatt  <hyatt (a] apple.com>
   59087 
   59088         Fix for bug 16247, visibility:hidden not honored when hit testing inline replaced elements.
   59089 
   59090         Reviewed by adele
   59091 
   59092         Added fast/css/visibility-hit-test.html test case.
   59093 
   59094         * rendering/RenderBox.cpp:
   59095         (WebCore::RenderBox::nodeAtPoint):
   59096 
   59097 2008-01-10  Lars Knoll  <lars (a] trolltech.com>
   59098 
   59099         Reviewed by Simon.
   59100 
   59101         rename QWebPageHistory to QWebHistory.
   59102 
   59103         * WebCore.pro:
   59104 
   59105 2008-01-10  Lars Knoll  <lars (a] trolltech.com>
   59106 
   59107         Reviewed by Simon.
   59108 
   59109         fix the drawing errors that where introduced due to refactoring.
   59110 
   59111         Correctly clip to the rectangle we want to draw in ScrollView::paint().
   59112 
   59113         * platform/qt/ScrollViewQt.cpp:
   59114         (WebCore::ScrollView::paint):
   59115 
   59116 2008-01-10  Simon Hausmann  <hausmann (a] webkit.org>
   59117 
   59118         Reviewed by Lars.
   59119 
   59120         Temporarily disable gzip decompression in qhttp due to a bug.
   59121 
   59122         * platform/network/qt/QNetworkReplyHandler.cpp:
   59123         (WebCore::QNetworkReplyHandler::QNetworkReplyHandler):
   59124 
   59125 2008-01-10  Simon Hausmann  <hausmann (a] webkit.org>
   59126 
   59127         Reviewed by Lars.
   59128 
   59129         http://bugs.webkit.org/show_bug.cgi?id=16588
   59130 
   59131         Added a (last) Frame argument to ResourceHandle::loadResourceSynchronously.
   59132         This allows implementing the synchronous loading correctly for the Qt port where the networking
   59133         backend is bound to the page.
   59134 
   59135         * loader/FrameLoader.cpp:
   59136         (WebCore::FrameLoader::loadResourceSynchronously):
   59137         * platform/network/ResourceHandle.h:
   59138         * platform/network/cf/ResourceHandleCFNet.cpp:
   59139         * platform/network/curl/ResourceHandleCurl.cpp:
   59140         * platform/network/mac/ResourceHandleMac.mm:
   59141         * platform/network/qt/ResourceHandleQt.cpp:
   59142         (WebCore::ResourceHandle::loadResourceSynchronously):
   59143 
   59144 2008-01-10  Kevin Ollivier  <kevino (a] theolliviers.com>
   59145 
   59146         wx build fix for changes in r29328
   59147 
   59148         * WebCoreSources.bkl:
   59149 
   59150 2008-01-09  Maciej Stachowiak  <mjs (a] apple.com>
   59151 
   59152         Reviewed by Sam.
   59153 
   59154         - refactor SecurityOrigin in preparation for merging with SecurityOriginData
   59155 
   59156         * platform/SecurityOrigin.cpp:
   59157         (WebCore::SecurityOrigin::SecurityOrigin):
   59158         (WebCore::SecurityOrigin::create):
   59159         (WebCore::SecurityOrigin::createForFrame):
   59160         * platform/SecurityOrigin.h:
   59161 
   59162 2008-01-09  Ada Chan  <adachan (a] apple.com>
   59163 
   59164         Tabs with ctrl, meta, or altgraph modifier key down should not advance focus.
   59165 
   59166         Reviewed by Darin.
   59167 
   59168         Test: fast/forms/tabs-with-modifiers.html
   59169 
   59170         * page/EventHandler.cpp:
   59171         (WebCore::EventHandler::defaultKeyboardEventHandler):
   59172         (WebCore::EventHandler::defaultTabEventHandler): bail if ctrl, meta, or altgraph key is down.  
   59173         Clean up the code a bit.
   59174         * page/EventHandler.h:
   59175         * page/FocusController.cpp: Remove the advanceFocus() that takes in a KeyboardEvent.  It was
   59176         only called in EventHandler::defaultTabEventHandler() but we have cleaned up the code there and
   59177         no longer needs it.
   59178         * page/FocusController.h:
   59179 
   59180 2008-01-09  Antti Koivisto  <antti (a] apple.com>
   59181 
   59182         Reviewed by Mitz.
   59183 
   59184         Fix http://bugs.webkit.org/show_bug.cgi?id=16376
   59185         <rdar://problem/5665206>
   59186         <video> element fails to play frames when navigating back to page (16376)
   59187         
   59188         Don't make MediaPlayer visible when it is actually in page cache.
   59189 
   59190         * rendering/RenderVideo.cpp:
   59191         (WebCore::RenderVideo::updatePlayer):
   59192 
   59193 2008-01-09  Anders Carlsson  <andersca (a] apple.com>
   59194 
   59195         Reviewed by Darin.
   59196 
   59197         <rdar://problem/5532361> 
   59198         CrashTracer: 9840 crashes in Safari at com.apple.JavaScriptCore: KJS::Bindings::CInstance::~CInstance [in-charge deleting] + 35
   59199         
   59200         Clear the frame's plugin root objects so that they don't outlive the plugin bundle.
   59201         
   59202         * page/Frame.cpp:
   59203         (WebCore::Frame::pageDestroyed):
   59204 
   59205 2008-01-09  John Sullivan  <sullivan (a] apple.com>
   59206 
   59207         Reviewed by Adam Roben and Anders Carlsson
   59208         
   59209         - fixed <rdar://problem/5469398> Repro assertion failure in context menu code due to 
   59210           missing-but-expected Reload item
   59211 
   59212         * platform/ContextMenu.cpp:
   59213         (WebCore::ContextMenu::populate):
   59214         use isLoadingInAPISense when deciding whether to include Stop or Reload in context
   59215         menu, to match the WebKit API
   59216 
   59217 2008-01-09  Mark Rowe  <mrowe (a] apple.com>
   59218 
   59219         Fix Windows debug build for opensource developers.
   59220 
   59221         * WebCore.vcproj/QTMovieWin.vcproj: Use the correct library suffix.
   59222 
   59223 2007-10-01  Allan Sandfeld Jensen  <sandfeld (a] kde.org>
   59224 
   59225         Reworked by Eric, Reviewed by Hyatt.
   59226 
   59227         - fix http://bugs.webkit.org/show_bug.cgi?id=9454
   59228         Add support for :lang inheritance and xml:lang support.
   59229 
   59230         Tests: fast/selectors/lang-inheritance.html
   59231                fast/selectors/lang-inheritance2.html
   59232                fast/selectors/lang-vs-xml-lang.html
   59233                fast/selectors/lang-vs-xml-lang-xhtml.xhtml
   59234 
   59235         * css/CSSStyleSelector.cpp:
   59236         (WebCore::CSSStyleSelector::canShareStyleWithElement): Do not share style between elements with
   59237         different LANG-attribute.
   59238         (WebCore::CSSStyleSelector::checkOneSelector): Change :lang() to recursively check the LANG attribute
   59239         for all the elements parents and the content-language of the document.
   59240         * dom/Document.cpp:
   59241         (WebCore::Document::processHttpEquiv): Parse MIME Content-Language
   59242         * dom/Document.h:
   59243         (WebCore::Document::contentLanguage):
   59244         (WebCore::Document::setContentLanguage):
   59245 
   59246 2008-01-08  Timothy Hatcher  <timothy (a] apple.com>
   59247 
   59248         Reviewed by Brady.
   59249 
   59250         Bug 16678: Unreproducible crash in KJS::JSObject::inherits() after using Web Inspector
   59251         http://bugs.webkit.org/show_bug.cgi?id=16678
   59252 
   59253         Add a NULL check for controller before calling JSObjectSetPrivate.
   59254 
   59255         * page/InspectorController.cpp:
   59256         (WebCore::InspectorController::~InspectorController):
   59257 
   59258 2008-01-08  Xan Lopez  <xan (a] gnome.org>
   59259 
   59260         Reviewed by Alp Toker.
   59261 
   59262         http://bugs.webkit.org/show_bug.cgi?id=15610
   59263         [GTK] Text rendering using Pango
   59264 
   59265         Use Pango to render Complex path text.
   59266 
   59267         * platform/graphics/gtk/FontGtk.cpp:
   59268         (WebCore::utf16_to_utf8):
   59269         (WebCore::convertUniCharToUTF8):
   59270         (WebCore::setPangoAttributes):
   59271         (WebCore::Font::drawGlyphs):
   59272         (WebCore::Font::drawComplexText):
   59273         (WebCore::Font::floatWidthForComplexText):
   59274         (WebCore::Font::offsetForPositionForComplexText):
   59275 
   59276 2008-01-08  Timothy Hatcher  <timothy (a] apple.com>
   59277 
   59278         Reviewed by Darin Adler.
   59279 
   59280         <rdar://problem/5665860> With the web inspector displayed, a crash occurs
   59281         at WebCore::Frame::document() when navigating back to previous page
   59282 
   59283         This fixes the crash, but the inspector was totally broken with back/forward.
   59284         So this also fixes back/forward navigation so the right main resource shows
   59285         up in the inspector.
   59286 
   59287         * page/InspectorController.cpp:
   59288         (WebCore::addSourceToFrame): Add some null checks for the frame when
   59289         getting the textEncoding. This was the crash.
   59290         (WebCore::InspectorController::addScriptResource): Create a script object
   59291         only if needed, and always add it by calling addResource.
   59292         (WebCore::InspectorController::didCommitLoad): Check if the loader is 
   59293         loading from the page cache, and clear m_mainResource. If the load is
   59294         normal, then call addAndUpdateScriptResource with the main resource. 
   59295         (WebCore::InspectorController::identifierForInitialRequest): If the load
   59296         is from the page cache and the resource is the main resource call
   59297         addAndUpdateScriptResource since didCommitLoad did not do it.
   59298 
   59299 2008-01-08  Alp Toker  <alp (a] atoker.com>
   59300 
   59301         Back out VIDEO by default in the GTK+ qmake build. The build bot
   59302         doesn't have the necessary libraries installed.
   59303 
   59304         * WebCore.pro:
   59305 
   59306 2008-01-08  Alp Toker  <alp (a] atoker.com>
   59307 
   59308         Win build fix for breakage introduced in r29328.
   59309 
   59310         * WebCore.vcproj/WebCore.vcproj:
   59311 
   59312 2008-01-08  Alp Toker  <alp (a] atoker.com>
   59313 
   59314         Rubber-stamped by Mark Rowe.
   59315 
   59316         Enable VIDEO by default in the GTK+ qmake build.
   59317 
   59318         * WebCore.pro:
   59319 
   59320 2008-01-08  Alp Toker  <alp (a] atoker.com>
   59321 
   59322         GTK+ VIDEO build fix for breakage introduced in r29328.
   59323 
   59324         Issue noticed by Ori_B.
   59325 
   59326         * GNUmakefile.am:
   59327         * WebCore.pro:
   59328 
   59329 2008-01-08  Antti Koivisto  <antti (a] apple.com>
   59330 
   59331         Reviewed by Darin.
   59332         
   59333         HTMLAudioElement needs generated constructor. Otherwise video instanceof HTMLAudioElement is true which is 
   59334         bit strange.
   59335         
   59336         Renamed custom constructor JSHTMLAudioElementConstructor to JSAudioConstructor to avoid name clashes.
   59337 
   59338         Test: media/constructors.html
   59339 
   59340         * WebCore.xcodeproj/project.pbxproj:
   59341         * bindings/js/JSAudioConstructor.cpp: Copied from WebCore/bindings/js/JSHTMLAudioElementConstructor.cpp.
   59342         (WebCore::JSAudioConstructor::JSAudioConstructor):
   59343         (WebCore::JSAudioConstructor::implementsConstruct):
   59344         (WebCore::JSAudioConstructor::construct):
   59345         * bindings/js/JSAudioConstructor.h: Copied from WebCore/bindings/js/JSHTMLAudioElementConstructor.h.
   59346         * bindings/js/JSHTMLAudioElementConstructor.cpp: Removed.
   59347         * bindings/js/JSHTMLAudioElementConstructor.h: Removed.
   59348         * bindings/js/kjs_window.cpp:
   59349         (KJS::Window::getValueProperty):
   59350         * html/HTMLAudioElement.idl:
   59351 
   59352 2008-01-08  Anders Carlsson  <andersca (a] apple.com>
   59353 
   59354         Reviewed by Mitz.
   59355 
   59356         Don't add the applet widget to the view, that's done later by RenderApplet.
   59357             
   59358         * loader/FrameLoader.cpp:
   59359         (WebCore::FrameLoader::createJavaAppletWidget):
   59360 
   59361 2008-01-08  Antti Koivisto  <antti (a] apple.com>
   59362 
   59363         Reviewed by Weinig.
   59364         
   59365         Add security check for Audio constructor.
   59366 
   59367         * bindings/js/kjs_window.cpp:
   59368         (KJS::Window::getValueProperty):
   59369 
   59370 2008-01-08  Timothy Hatcher  <timothy (a] apple.com>
   59371 
   59372         Reviewed by Adam Roben.
   59373 
   59374         <rdar://problem/5676515> List of scripts and images missing when opening Web Inspector from new window (16567)
   59375 
   59376         InspectorController::didLoadResourceFromMemoryCache was not being called for
   59377         resources that loaded from the memory cache that the FrameLoader's client
   59378         has already been notified about. This fix always calls the InspectorController
   59379         when loading a memory cached resource. No test possible for the Web Inspector.
   59380 
   59381         * loader/DocLoader.cpp:
   59382         (WebCore::DocLoader::checkCacheObjectStatus): Moved most of the logic to
   59383         FrameLoader::loadedResourceFromMemoryCache so the InspectorController can always be notified.
   59384         * loader/FrameLoader.cpp:
   59385         (WebCore::FrameLoader::didTellClientAboutLoad): Renamed from didTellBridgeAboutLoad.
   59386         (WebCore::FrameLoader::haveToldClientAboutLoad): Renamed from haveToldBridgeAboutLoad.
   59387         (WebCore::FrameLoader::loadResourceSynchronously): Call the renamed didTellClientAboutLoad.
   59388         (WebCore::FrameLoader::loadedResourceFromMemoryCache): Only takes a CachedResource now.
   59389         Always call InspectorController. If the resource's sendResourceLoadCallbacks is false or
   59390         didTellClientAboutLoad is true, do an early return. Otherwise call the client and call
   59391         didTellClientAboutLoad.
   59392         (WebCore::FrameLoader::dispatchDidLoadResourceFromMemoryCache): Removed, work now done
   59393         in FrameLoader::loadedResourceFromMemoryCache.
   59394         * loader/FrameLoader.h: Renamed {didTell,haveTold}BridgeAboutLoad to {didTell,haveTold}ClientAboutLoad.
   59395         Made loadedResourceFromMemoryCache only take a CachedResource. Renamed m_urlsBridgeKnowsAbout to 
   59396         m_urlsClientKnowsAbout.
   59397         * loader/SubresourceLoader.cpp:
   59398         (WebCore::SubresourceLoader::load): Call the renamed didTellClientAboutLoad.
   59399 
   59400 2008-01-08  Dan Bernstein  <mitz (a] apple.com>
   59401 
   59402         Rubber-stamped by Sam Weinig.
   59403 
   59404         - prefix all member variables in CSSStyleSelector with m_
   59405 
   59406         * css/CSSStyleSelector.cpp:
   59407         (WebCore::CSSStyleSelector::CSSStyleSelector):
   59408         (WebCore::CSSStyleSelector::init):
   59409         (WebCore::CSSStyleSelector::setEncodedURL):
   59410         (WebCore::CSSStyleSelector::loadDefaultStyle):
   59411         (WebCore::CSSStyleSelector::matchRules):
   59412         (WebCore::CSSStyleSelector::matchRulesForList):
   59413         (WebCore::CSSStyleSelector::initElementAndPseudoState):
   59414         (WebCore::CSSStyleSelector::initForStyleResolve):
   59415         (WebCore::CSSStyleSelector::canShareStyleWithElement):
   59416         (WebCore::CSSStyleSelector::locateSharedStyle):
   59417         (WebCore::CSSStyleSelector::matchUARules):
   59418         (WebCore::CSSStyleSelector::styleForElement):
   59419         (WebCore::CSSStyleSelector::pseudoStyleForElement):
   59420         (WebCore::CSSStyleSelector::updateFont):
   59421         (WebCore::CSSStyleSelector::cacheBorderAndBackground):
   59422         (WebCore::CSSStyleSelector::checkSelector):
   59423         (WebCore::CSSStyleSelector::checkOneSelector):
   59424         (WebCore::CSSStyleSelector::applyProperty):
   59425         (WebCore::CSSStyleSelector::mapBackgroundImage):
   59426         (WebCore::CSSStyleSelector::mapBackgroundSize):
   59427         (WebCore::CSSStyleSelector::mapBackgroundXPosition):
   59428         (WebCore::CSSStyleSelector::mapBackgroundYPosition):
   59429         (WebCore::CSSStyleSelector::checkForTextSizeAdjust):
   59430         (WebCore::CSSStyleSelector::getColorFromPrimitiveValue):
   59431         * css/CSSStyleSelector.h:
   59432         (WebCore::CSSStyleSelector::):
   59433         (WebCore::CSSRuleData::CSSRuleData):
   59434         (WebCore::CSSRuleDataList::CSSRuleDataList):
   59435         (WebCore::CSSRuleDataList::append):
   59436         * css/SVGCSSStyleSelector.cpp:
   59437         (WebCore::CSSStyleSelector::applySVGProperty):
   59438         * rendering/RenderStyle.cpp:
   59439         (WebCore::RenderStyle::isStyleAvailable):
   59440 
   59441 2008-01-08  David D. Kilzer  <ddkilzer (a] apple.com>
   59442 
   59443         Removed unnecessary files from Copy Bundle Resources build phase.
   59444 
   59445         Reviewed by Sam.
   59446 
   59447         * WebCore.xcodeproj/project.pbxproj: Files removed from build phase:
   59448         DOMCoreException.idl
   59449         EventException.idl
   59450         MessageEvent.idl
   59451         SVGAElement.idl
   59452         SVGAngle.idl
   59453         SVGAnimateColorElement.idl
   59454         SVGAnimateElement.idl
   59455         SVGAnimateTransformElement.idl
   59456         SVGAnimatedAngle.idl
   59457         SVGAnimatedBoolean.idl
   59458         SVGAnimatedEnumeration.idl
   59459         SVGAnimatedInteger.idl
   59460         SVGAnimatedLength.idl
   59461         SVGAnimatedLengthList.idl
   59462         SVGAnimatedNumber.idl
   59463         SVGAnimatedNumberList.idl
   59464         SVGAnimatedPathData.idl
   59465         SVGAnimatedPoints.idl
   59466         SVGAnimatedPreserveAspectRatio.idl
   59467         SVGAnimatedRect.idl
   59468         SVGAnimatedString.idl
   59469         SVGAnimatedTransformList.idl
   59470         SVGAnimationElement.idl
   59471         SVGCSSPropertyNames.in
   59472         SVGCSSValueKeywords.in
   59473         SVGCircleElement.idl
   59474         SVGClipPathElement.idl
   59475         SVGColor.idl
   59476         SVGComponentTransferFunctionElement.idl
   59477         SVGCursorElement.idl
   59478         SVGDefinitionSrcElement.idl
   59479         SVGDefsElement.idl
   59480         SVGDescElement.idl
   59481         SVGDocument.idl
   59482         SVGElement.idl
   59483         SVGElementInstance.idl
   59484         SVGElementInstanceList.idl
   59485         SVGEllipseElement.idl
   59486         SVGException.idl
   59487         SVGExternalResourcesRequired.idl
   59488         SVGFEBlendElement.idl
   59489         SVGFEColorMatrixElement.idl
   59490         SVGFEComponentTransferElement.idl
   59491         SVGFECompositeElement.idl
   59492         SVGFEDiffuseLightingElement.idl
   59493         SVGFEDisplacementMapElement.idl
   59494         SVGFEDistantLightElement.idl
   59495         SVGFEFloodElement.idl
   59496         SVGFEFuncAElement.idl
   59497         SVGFEFuncBElement.idl
   59498         SVGFEFuncGElement.idl
   59499         SVGFEFuncRElement.idl
   59500         SVGFEGaussianBlurElement.idl
   59501         SVGFEImageElement.idl
   59502         SVGFEMergeElement.idl
   59503         SVGFEMergeNodeElement.idl
   59504         SVGFEOffsetElement.idl
   59505         SVGFEPointLightElement.idl
   59506         SVGFESpecularLightingElement.idl
   59507         SVGFESpotLightElement.idl
   59508         SVGFETileElement.idl
   59509         SVGFETurbulenceElement.idl
   59510         SVGFilterElement.idl
   59511         SVGFilterPrimitiveStandardAttributes.idl
   59512         SVGFitToViewBox.idl
   59513         SVGFontElement.idl
   59514         SVGFontFaceElement.idl
   59515         SVGFontFaceFormatElement.idl
   59516         SVGFontFaceNameElement.idl
   59517         SVGFontFaceSrcElement.idl
   59518         SVGFontFaceUriElement.idl
   59519         SVGForeignObjectElement.idl
   59520         SVGGElement.idl
   59521         SVGGlyphElement.idl
   59522         SVGGradientElement.idl
   59523         SVGImageElement.idl
   59524         SVGLangSpace.idl
   59525         SVGLength.idl
   59526         SVGLengthList.idl
   59527         SVGLineElement.idl
   59528         SVGLinearGradientElement.idl
   59529         SVGLocatable.idl
   59530         SVGMarkerElement.idl
   59531         SVGMaskElement.idl
   59532         SVGMatrix.idl
   59533         SVGMetadataElement.idl
   59534         SVGMissingGlyphElement.idl
   59535         SVGNumber.idl
   59536         SVGNumberList.idl
   59537         SVGPaint.idl
   59538         SVGPathElement.idl
   59539         SVGPathSeg.idl
   59540         SVGPathSegArcAbs.idl
   59541         SVGPathSegArcRel.idl
   59542         SVGPathSegClosePath.idl
   59543         SVGPathSegCurvetoCubicAbs.idl
   59544         SVGPathSegCurvetoCubicRel.idl
   59545         SVGPathSegCurvetoCubicSmoothAbs.idl
   59546         SVGPathSegCurvetoCubicSmoothRel.idl
   59547         SVGPathSegCurvetoQuadraticAbs.idl
   59548         SVGPathSegCurvetoQuadraticRel.idl
   59549         SVGPathSegCurvetoQuadraticSmoothAbs.idl
   59550         SVGPathSegCurvetoQuadraticSmoothRel.idl
   59551         SVGPathSegLinetoAbs.idl
   59552         SVGPathSegLinetoHorizontalAbs.idl
   59553         SVGPathSegLinetoHorizontalRel.idl
   59554         SVGPathSegLinetoRel.idl
   59555         SVGPathSegLinetoVerticalAbs.idl
   59556         SVGPathSegLinetoVerticalRel.idl
   59557         SVGPathSegList.idl
   59558         SVGPathSegMovetoAbs.idl
   59559         SVGPathSegMovetoRel.idl
   59560         SVGPatternElement.idl
   59561         SVGPoint.idl
   59562         SVGPointList.idl
   59563         SVGPolygonElement.idl
   59564         SVGPolylineElement.idl
   59565         SVGPreserveAspectRatio.idl
   59566         SVGRadialGradientElement.idl
   59567         SVGRect.idl
   59568         SVGRectElement.idl
   59569         SVGRenderingIntent.idl
   59570         SVGSVGElement.idl
   59571         SVGScriptElement.idl
   59572         SVGSetElement.idl
   59573         SVGStopElement.idl
   59574         SVGStringList.idl
   59575         SVGStylable.idl
   59576         SVGStyleElement.idl
   59577         SVGSwitchElement.idl
   59578         SVGSymbolElement.idl
   59579         SVGTRefElement.idl
   59580         SVGTSpanElement.idl
   59581         SVGTests.idl
   59582         SVGTextContentElement.idl
   59583         SVGTextElement.idl
   59584         SVGTextPathElement.idl
   59585         SVGTextPositioningElement.idl
   59586         SVGTitleElement.idl
   59587         SVGTransform.idl
   59588         SVGTransformList.idl
   59589         SVGTransformable.idl
   59590         SVGURIReference.idl
   59591         SVGUnitTypes.idl
   59592         SVGUseElement.idl
   59593         SVGViewElement.idl
   59594         SVGViewSpec.idl
   59595         SVGZoomAndPan.idl
   59596         SVGZoomEvent.idl
   59597         XMLHttpRequestException.idl
   59598         XPathException.idl
   59599         character-sets.txt
   59600         mac-encodings.txt
   59601         make-charset-table.pl
   59602         svgattrs.in
   59603         svgtags.in
   59604         xlinkattrs.in
   59605 
   59606 2008-01-08  Luca Bruno  <lethalman88 (a] gmail.com>
   59607 
   59608         Reviewed by Alp Toker.
   59609 
   59610         Support copying the selected URL to the clipboard.
   59611 
   59612         * platform/gtk/PasteboardGtk.cpp:
   59613         (WebCore::Pasteboard::writeURL): implemented
   59614 
   59615 2008-01-08  David D. Kilzer  <ddkilzer (a] webkit.org>
   59616 
   59617         Renamed CharacterData::m_str to m_data
   59618 
   59619         Rubber-stamped by Adam again.
   59620 
   59621         No test cases added since there is no change in behavior.
   59622 
   59623         * dom/CDATASection.cpp:
   59624         * dom/CharacterData.cpp:
   59625         (WebCore::CharacterData::CharacterData):
   59626         (WebCore::CharacterData::setData):
   59627         (WebCore::CharacterData::substringData):
   59628         (WebCore::CharacterData::appendData):
   59629         (WebCore::CharacterData::insertData):
   59630         (WebCore::CharacterData::deleteData):
   59631         (WebCore::CharacterData::replaceData):
   59632         (WebCore::CharacterData::nodeValue):
   59633         (WebCore::CharacterData::containsOnlyWhitespace):
   59634         (WebCore::CharacterData::dispatchModifiedEvent):
   59635         (WebCore::CharacterData::checkCharDataOperation):
   59636         (WebCore::CharacterData::dump):
   59637         * dom/CharacterData.h:
   59638         * dom/Comment.cpp:
   59639         * dom/Text.cpp:
   59640         (WebCore::Text::splitText):
   59641         (WebCore::Text::createRenderer):
   59642         (WebCore::Text::recalcStyle):
   59643 
   59644 2008-01-08  Steve Falkenburg  <sfalken (a] apple.com>
   59645 
   59646         Fix a couple of compiler warnings.
   59647         
   59648         Reviewed by Mitz.
   59649 
   59650         * platform/win/ThreadingWin.cpp:
   59651         * platform/win/UniscribeController.cpp: Remove unused function.
   59652         (WebCore::UniscribeController::advance): Fix bogus warning about un-initialized variable.
   59653 
   59654 2008-01-08  Adele Peterson  <adele (a] apple.com>
   59655 
   59656         Reviewed by Darin.
   59657 
   59658         Fix for <rdar://problem/5674667> fast/forms/slider-mouse-events.html is broken by media control checkin 29257
   59659 
   59660         * rendering/RenderSlider.cpp: (WebCore::HTMLSliderThumbElement::defaultEventHandler):
   59661           After fixing a bug in EventHandler to make sure events always go to the capturing node, this bug was exposed.
   59662           MouseMove and MouseUp events were going to the thumb element, but not to the slider input element.  
   59663           This change makes the input element the capturing node, and then the input element forwards the mouse events to the thumb element.
   59664           I also added a missing call to setDefaultHandled for the mousemove event.
   59665 
   59666 2008-01-08  Adele Peterson  <adele (a] apple.com>
   59667 
   59668         Reviewed by Adam. 
   59669 
   59670         * rendering/RenderThemeSafari.cpp: Use the SafariTheme version number to decide whether or not to
   59671         paint the media controls in RenderThemeSafari.
   59672 
   59673 2008-01-08  Oliver Hunt  <oliver (a] apple.com>
   59674 
   59675         Reviewed by Adele and John.
   59676 
   59677         Fix <rdar://problem/5652740> Crash occurs at WebCore::Widget::getView() after
   59678         dragging file into window that contains web page ( http://www.econocraft.com/flood_arch.htm )
   59679 
   59680         We hit this crash if the page reloads between DragController::dragUpdated
   59681         and DragController::performDrag, meaning that m_document starts pointing to
   59682         a now viewless document.  This is picked up by an assertion in performDrag
   59683         which I have now replaced with an assignment given that the assertion is 
   59684         invalid -- it is possible for m_document to be changed between dragUpdated
   59685         performDrag
   59686 
   59687         * page/DragController.cpp:
   59688         (WebCore::DragController::performDrag):
   59689 
   59690 2008-01-08  Alexey Proskuryakov  <ap (a] webkit.org>
   59691 
   59692         Reviewed by Darin.
   59693 
   59694         <rdar://problem/5659812> CrashTracer: 462 crashes in Safari at com.apple.WebCore:
   59695         WebCore::Node::setChanged + 96
   59696 
   59697         Test: fast/dom/cssTarget-crash.html
   59698 
   59699         * dom/Node.cpp: (WebCore::Node::removedFromDocument):
   59700         Check to see if the node being removed is currently set as the Document's cssTarget.
   59701         If it is, clear the cssTarget to prevent a hanging reference to it.
   59702 
   59703 2008-01-08  Adam Roben  <aroben (a] apple.com>
   59704 
   59705         * bindings/scripts/CodeGeneratorJS.pm: Touch this so the bindings will
   59706         rebuild on Windows now that the media elements are enabled.
   59707 
   59708 2008-01-08  Adam Roben  <aroben (a] apple.com>
   59709 
   59710         * svg/svgtags.in: Touch this again for the sake of the Windows bots.
   59711 
   59712 2008-01-08  Timothy Hatcher  <timothy (a] apple.com>
   59713 
   59714         Reviewed by Adam Roben.
   59715 
   59716         Use JSRetainPtr in the Web Inspector everywhere we own a JSStringRef.
   59717         Also added some #pragma marks to help find places in the file.
   59718 
   59719         * page/InspectorController.cpp:
   59720         (WebCore::callSimpleFunction): Use JSRetainPtr<JSStringRef>.
   59721         And return the result of JSObjectCallAsFunction.
   59722         (WebCore::search): Use JSRetainPtr<JSStringRef>.
   59723         (WebCore::databaseTableNames): Ditto.
   59724         (WebCore::localizedStrings): Ditto.
   59725         (WebCore::InspectorController::~InspectorController): Ditto.
   59726         (WebCore::InspectorController::focusNode): Ditto.
   59727         (WebCore::InspectorController::windowScriptObjectAvailable): Ditto.
   59728         (WebCore::InspectorController::scriptObjectReady): Ditto.
   59729         (WebCore::addHeaders): Ditto.
   59730         (WebCore::InspectorController::addScriptResource): Ditto.
   59731         (WebCore::InspectorController::removeScriptResource): Ditto.
   59732         (WebCore::InspectorController::updateScriptResourceRequest): Ditto.
   59733         (WebCore::InspectorController::updateScriptResourceResponse): Ditto.
   59734         (WebCore::InspectorController::updateScriptResource): Ditto.
   59735         (WebCore::InspectorController::addDatabaseScriptResource): Ditto.
   59736         (WebCore::InspectorController::removeDatabaseScriptResource): Ditto.
   59737         (WebCore::InspectorController::addScriptConsoleMessage): Ditto.
   59738 
   59739 2008-01-08  Dan Bernstein  <mitz (a] apple.com>
   59740 
   59741         Rubber-stamped by Sam Weinig.
   59742 
   59743         - rename FontDataBaseClass.{cpp,h} back to FontData.{cpp,h}
   59744 
   59745         * GNUmakefile.am:
   59746         * WebCore.pro:
   59747         * WebCore.vcproj/WebCore.vcproj:
   59748         * WebCore.xcodeproj/project.pbxproj:
   59749         * WebCoreSources.bkl:
   59750         * editing/Editor.cpp:
   59751         * platform/graphics/FontData.cpp: Copied from WebCore/platform/graphics/FontDataBaseClass.cpp.
   59752         * platform/graphics/FontData.h: Copied from WebCore/platform/graphics/FontDataBaseClass.h.
   59753         * platform/graphics/FontDataBaseClass.cpp: Removed.
   59754         * platform/graphics/FontDataBaseClass.h: Removed.
   59755         * platform/graphics/SegmentedFontData.h:
   59756         * platform/graphics/SimpleFontData.h:
   59757 
   59758 2008-01-08  Dan Bernstein  <mitz (a] apple.com>
   59759 
   59760         Fix a Wx build error.
   59761 
   59762         * platform/graphics/wx/GlyphMapWx.cpp:
   59763         (WebCore::GlyphPage::fill):
   59764 
   59765 2008-01-08  Dan Bernstein  <mitz (a] apple.com>
   59766 
   59767         Fix a Qt build error.
   59768 
   59769         * platform/graphics/qt/SimpleFontDataQt.cpp:
   59770         (WebCore::SimpleFontData::containsCharacters):
   59771         (WebCore::SimpleFontData::fontDataForCharacter):
   59772         (WebCore::SimpleFontData::isSegmented):
   59773 
   59774 2008-01-08  Adam Roben  <aroben (a] apple.com>
   59775 
   59776         Windows build fix.
   59777 
   59778         Touch config.h to force a rebuild (apparently changing preprocessor
   59779         definitions in the .vcproj doesn't force a rebuild).
   59780 
   59781         * config.h:
   59782 
   59783 2008-01-08  Dan Bernstein  <mitz (a] apple.com>
   59784 
   59785         Fix a Wx build failure.
   59786 
   59787         * webcore-wx.bkl:
   59788 
   59789 2008-01-08  Dan Bernstein  <mitz (a] apple.com>
   59790 
   59791         Fix a Qt build failure.
   59792 
   59793         * WebCore.pro:
   59794 
   59795 2008-01-08  John Sullivan  <sullivan (a] apple.com>
   59796 
   59797         Reviewed by Adam Roben
   59798         
   59799         - fixed <rdar://problem/5671668> REGRESSION (r28711-r28730): With caret in an empty form field, 
   59800           Delete menu item is enabled but shouldn't be
   59801 
   59802         The enabled logic was incorrect for the Delete menu item. To fix this, I added an EditorCommandSource
   59803         parameter to the enabled functions so that they can have parallel logic to the execute functions.
   59804 
   59805         * editing/EditorCommand.cpp:
   59806         added EditorCommandSource parameter to isEnabled function prototype
   59807         (WebCore::enabled):
   59808         added unused EditorCommandSource parameter to these isEnabled functions:
   59809         (WebCore::enabledAnySelection):
   59810         (WebCore::enabledAnySelectionAndMark):
   59811         (WebCore::enableCaretInEditableText):
   59812         (WebCore::enabledCopy):
   59813         (WebCore::enabledCut):
   59814 
   59815         (WebCore::enabledDelete):
   59816         new function, uses logic previously used by Delete command for DOM sources; uses logic in enabledCut
   59817         for menu source
   59818 
   59819         added unused EditorCommandSource parameter to these isEnabled functions:
   59820         (WebCore::enabledInEditableText):
   59821         (WebCore::enabledInRichlyEditableText):
   59822         (WebCore::enabledPaste):
   59823         (WebCore::enabledRangeInEditableText):
   59824         (WebCore::enabledRangeInRichlyEditableText):
   59825         (WebCore::enabledRedo):
   59826         (WebCore::enabledUndo):
   59827         
   59828         (WebCore::CommandEntry::):
   59829         wire up new enabledDelete function as delete function for Delete command
   59830         
   59831         (WebCore::Editor::Command::isEnabled):
   59832         pass EditorCommandSource parameter to isEnabled function
   59833 
   59834 2008-01-08  Adam Roben  <aroben (a] apple.com>
   59835 
   59836         Visual C++ Express build fix
   59837 
   59838         * WebCore.vcproj/QTMovieWin.vcproj: Explicitly link against user32.lib
   59839         and advapi32.lib. VS implicitly links against these, VC++ Express
   59840         doesn't.
   59841 
   59842 2008-01-08  Dan Bernstein  <mitz (a] apple.com>
   59843 
   59844         - add bug number
   59845 
   59846         * platform/graphics/mac/FontCustomPlatformData.cpp:
   59847         (WebCore::createFontCustomPlatformData):
   59848 
   59849 2008-01-08  Dan Bernstein  <mitz (a] apple.com>
   59850 
   59851         Try to fix the Qt build.
   59852 
   59853         * WebCore.pro:
   59854 
   59855 2008-01-08  Nikolas Zimmermann  <zimmermann (a] kde.org>
   59856 
   59857         Not reviewed. Try to fix Qt builds after Timothy's inspector changes.
   59858 
   59859         * page/inspector/WebKit.qrc:
   59860 
   59861 2008-01-08  Maciej Stachowiak  <mjs (a] apple.com>
   59862 
   59863         Reviewed by Mark.
   59864 
   59865         - remove duplicate definition of getElementById from HTMLDocument IDL (and ObjC bindings)
   59866 
   59867         * bindings/objc/PublicDOMInterfaces.h:
   59868         * html/HTMLDocument.idl:
   59869 
   59870 2008-01-08  David D. Kilzer  <ddkilzer (a] webkit.org>
   59871 
   59872         Renamed CharacterData::str to m_str to match coding style
   59873 
   59874         Rubber-stamped by Adam.
   59875 
   59876         No test cases added since there is no change in behavior.
   59877 
   59878         * dom/CDATASection.cpp:
   59879         * dom/CharacterData.cpp:
   59880         (WebCore::CharacterData::CharacterData):
   59881         (WebCore::CharacterData::setData):
   59882         (WebCore::CharacterData::substringData):
   59883         (WebCore::CharacterData::appendData):
   59884         (WebCore::CharacterData::insertData):
   59885         (WebCore::CharacterData::deleteData):
   59886         (WebCore::CharacterData::replaceData):
   59887         (WebCore::CharacterData::nodeValue):
   59888         (WebCore::CharacterData::containsOnlyWhitespace):
   59889         (WebCore::CharacterData::dispatchModifiedEvent):
   59890         (WebCore::CharacterData::checkCharDataOperation):
   59891         (WebCore::CharacterData::dump):
   59892         * dom/CharacterData.h:
   59893         * dom/Comment.cpp:
   59894         * dom/Text.cpp:
   59895         (WebCore::Text::splitText):
   59896         (WebCore::Text::createRenderer):
   59897         (WebCore::Text::recalcStyle):
   59898 
   59899 2008-01-08  Oliver Hunt  <oliver (a] apple.com>
   59900 
   59901         Set the ENABLE_SVG_FONTS flag in Windows build, now builds, 
   59902         I'm not sure if it just caused the right files to regenerate,
   59903         or if there's some configuration weirdness in the non-SVG-fonts
   59904         build. 
   59905 
   59906         * WebCore.vcproj/WebCore.vcproj:
   59907 
   59908 2008-01-07  Maciej Stachowiak  <mjs (a] apple.com>
   59909 
   59910         Reviewed by Brady.
   59911 
   59912         - fixed <rdar://problem/5644300> Back/Forward Cache should not include pages with databases
   59913         
   59914         Track whether a document has ever opened a database; if so, exclude it from b/f caching (for now)
   59915         
   59916         * dom/Document.cpp:
   59917         (WebCore::Document::Document):
   59918         * dom/Document.h:
   59919         (WebCore::Document::setHasOpenDatabases):
   59920         (WebCore::Document::hasOpenDatabases):
   59921         * loader/FrameLoader.cpp:
   59922         (WebCore::FrameLoader::canCachePage):
   59923         * storage/Database.cpp:
   59924         (WebCore::Database::openDatabase):
   59925 
   59926 2008-01-07  Dan Bernstein  <mitz (a] apple.com>
   59927 
   59928         Reviewed by Oliver Hunt.
   59929 
   59930         - fix leaks seen on the build bot
   59931 
   59932         * css/CSSFontSelector.cpp:
   59933         (WebCore::CSSFontSelector::addFontFaceRule): Avoid creating a
   59934         CSSFontFaceSource for SVG font-face elements going into an
   59935         SVGCSSFontFace because it just leaks them. Avoid adding SVG font-
   59936         face elements to a CSSFontFace because it will not work as expected.
   59937 
   59938 2008-01-07  Mark Rowe  <mrowe (a] apple.com>
   59939 
   59940         Tiger build fix.
   59941 
   59942         * platform/graphics/mac/FontCustomPlatformData.cpp:
   59943         (WebCore::createFontCustomPlatformData): Only include this code on Leopard.
   59944         It's not needed on Tiger, and breaks the build.
   59945 
   59946 2008-01-07  Antti Koivisto  <antti (a] apple.com>
   59947 
   59948         Reviewed by Steve.
   59949 
   59950         Re-enable media support in Windows build.
   59951 
   59952         * WebCore.vcproj/QTMovieWin.vcproj:
   59953         * WebCore.vcproj/WebCore.vcproj:
   59954         * WebCore.vcproj/build-generated-files.sh:
   59955 
   59956 2008-01-07  Steve Falkenburg  <sfalken (a] apple.com>
   59957 
   59958         Add version resource to QTMovieWin.dll
   59959         
   59960         Reviewed by Adam.
   59961 
   59962         * WebCore.vcproj/PRODUCTVERSION: Copied from ../WebKit/win/WebKit.vcproj/PRODUCTVERSION.
   59963         * WebCore.vcproj/QTMovieWin.rc: Added.
   59964         * WebCore.vcproj/QTMovieWin.vcproj:
   59965         * WebCore.vcproj/VERSION: Copied from ../WebKit/win/WebKit.vcproj/VERSION.
   59966         * WebCore.vcproj/auto-version.sh: Copied from ../WebKit/win/WebKit.vcproj/auto-version.sh.
   59967 
   59968 2008-01-07  Dan Bernstein  <mitz (a] apple.com>
   59969 
   59970         Build fix.
   59971 
   59972         * platform/graphics/qt/FontCustomPlatformData.cpp:
   59973         (WebCore::FontCustomPlatformData::~FontCustomPlatformData): Added.
   59974         Calls QFontDatabase::removeApplicationFont().
   59975         * platform/graphics/qt/FontCustomPlatformData.h:
   59976         * platform/graphics/qt/GlyphPageTreeNodeQt.cpp:
   59977         (WebCore::GlyphPageTreeNode::pruneTreeCustomFontData): Removed the
   59978         implementation because Qt does not use the WebCore glyph cache.
   59979 
   59980 2008-01-07  Dan Bernstein  <mitz (a] apple.com>
   59981 
   59982         Reviewed by Oliver Hunt.
   59983 
   59984         - fix an assertion failure in svg/W3C-SVG-1.1/fonts-elem-03-b.svg on
   59985           Tiger and multiple SVG layout test failures on Leopard.
   59986 
   59987         * css/CSSSegmentedFontFace.cpp:
   59988         (WebCore::CSSSegmentedFontFace::getFontData): Avoid returning an
   59989         empty SegmentedFontData.
   59990         * platform/graphics/mac/FontCustomPlatformData.cpp:
   59991         (WebCore::createFontCustomPlatformData): Avoid creating a font that
   59992         contains no glyphs. On Leopard, ATS might create such a font given
   59993         data in an unsupported format (such as SVG).
   59994 
   59995 2008-01-07  Steve Falkenburg  <sfalken (a] apple.com>
   59996 
   59997         Build fix.
   59998 
   59999         * WebCore.vcproj/WebCore.sln:
   60000         * WebCore.vcproj/WebCore.submit.sln:
   60001 
   60002 2008-01-07  Oliver Hunt  <oliver (a] apple.com>
   60003 
   60004         Reviewed by Niko.
   60005 
   60006         Fix painting of SVG <image> when the image must be scaled to retain aspect ratio
   60007 
   60008         Test: svg/custom/image-with-aspect-ratio-stretch.svg
   60009 
   60010         * rendering/RenderSVGImage.cpp:
   60011         (WebCore::RenderSVGImage::adjustRectsForAspectRatio):
   60012 
   60013 2008-01-07  Dan Bernstein  <mitz (a] apple.com>
   60014 
   60015         Build fix.
   60016 
   60017         * platform/graphics/qt/GlyphPageTreeNodeQt.cpp:
   60018         (WebCore::GlyphPageTreeNode::pruneTreeCustomFontData):
   60019 
   60020 2008-01-07  Adele Peterson  <adele (a] apple.com>
   60021 
   60022         Add missing newline.
   60023 
   60024         * rendering/MediaControlElements.cpp:
   60025 
   60026 2008-01-07  Jon Honeycutt  <jhoneycutt (a] apple.com>
   60027 
   60028         Reviewed by Hyatt.
   60029 
   60030         <rdar://problem/5673489> Safari does not render windowless plugins in an
   60031         iframe when opacity < 1.0
   60032 
   60033         Plugins in transparency layers handle their own world transforms, so
   60034         only apply the horizontal/vertical transform if we are not in a
   60035         transparency layer.
   60036 
   60037         * platform/graphics/GraphicsContext.h: Add a Windows-platform-only
   60038         inTransparencyLayer() function
   60039         * platform/win/GraphicsContextWin.cpp:
   60040         (WebCore::GraphicsContext::getWindowsContext): Use inTransparencyLayer()
   60041         (WebCore::GraphicsContext::inTransparencyLayer):
   60042         (WebCore::GraphicsContext::releaseWindowsContext): Use
   60043         inTransparencyLayer()
   60044         * plugins/win/PluginViewWin.cpp:
   60045         (WebCore::PluginViewWin::paint): When retrieving the HDC, use the rect
   60046         relative to the window. Pass m_isTransparent to
   60047         get/releaseWindowsContext(). Only set the world transform if we are not
   60048         in a transparency layer.
   60049 
   60050 2008-01-07  Adele Peterson  <adele (a] apple.com>
   60051 
   60052         Build fix.  Need to wrap these classes in #if ENABLE(VIDEO)
   60053 
   60054         * rendering/MediaControlElements.cpp:
   60055         * rendering/MediaControlElements.h:
   60056 
   60057 2008-01-07  Nikolas Zimmermann  <zimmermann (a] kde.org>
   60058 
   60059         Reviewed by Mark.
   60060 
   60061         Enable SVG_FONTS by default.
   60062 
   60063         * Configurations/WebCore.xcconfig:
   60064         * WebCore.vcproj/build-generated-files.sh:
   60065 
   60066 2008-01-07  Dan Bernstein  <mitz (a] apple.com>
   60067 
   60068         Build fix.
   60069 
   60070         * platform/graphics/qt/SimpleFontDataQt.cpp:
   60071         (WebCore::SimpleFontData::SimpleFontData):
   60072         (WebCore::SimpleFontData::~SimpleFontData):
   60073 
   60074 2008-01-07  Adam Barth  <hk9565 (a] gmail.com>
   60075 
   60076         Reviewed by Sam Weinig
   60077 
   60078         Fixes: http://bugs.webkit.org/show_bug.cgi?id=16523
   60079         <rdar://problem/5657447>
   60080 
   60081         When a frame is created with the URL "about:blank" or "", it should
   60082         inherit its SecurityOrigin from its opener.  However, once it has
   60083         decided on that SecurityOrigin, it should not change its mind.
   60084         Prior to this patch, several events could induce the frame to change
   60085         its SecurityOrigin, permitting an attacker to inject script into an
   60086         arbitrary SecurityOrigin.
   60087 
   60088         This patch makes several changes:
   60089 
   60090         1) Documents refuse to change from one SecurityOrigin to another
   60091            unless explicitly instructed to do so.
   60092 
   60093         2) Navigating to a JavaScript URL that produces a value
   60094            preserves the current SecurityOrigin explicitly instead of
   60095            relying on the URL to preserve the origin (which fails for
   60096            about:blank URLs and SecurityOrigins with document.domain set).
   60097 
   60098            Ideally, we should not preserve the URL at all.  Instead, the
   60099            frame's URL should be the JavaScript URL, as in Firefox, but this
   60100            would require changes that are too risky for this patch.  I'll
   60101            file this as a separate issue.
   60102 
   60103         3) Various methods of navigating to JavaScript URLs were not
   60104            properly handling JavaScript that returned a value (and should
   60105            therefore replace the current document).  This patch unifies
   60106            those code paths with the path that works.
   60107 
   60108            There are still a handful of bugs relating to the handling of
   60109            JavaScript URLs, but I'll file those as separate issues.
   60110 
   60111         Tests: http/tests/security/aboutBlank/xss-DENIED-navigate-opener-document-write.html
   60112                http/tests/security/aboutBlank/xss-DENIED-navigate-opener-javascript-url.html
   60113                http/tests/security/aboutBlank/xss-DENIED-set-opener.html
   60114 
   60115         * dom/Document.cpp:
   60116         (WebCore::Document::initSecurityOrigin):
   60117         * dom/Document.h:
   60118         (WebCore::Document::setSecurityOrigin):
   60119         * loader/FrameLoader.cpp:
   60120         (WebCore::FrameLoader::changeLocation):
   60121         (WebCore::FrameLoader::urlSelected):
   60122         (WebCore::FrameLoader::requestFrame):
   60123         (WebCore::FrameLoader::submitForm):
   60124         (WebCore::FrameLoader::executeIfJavaScriptURL):
   60125         (WebCore::FrameLoader::begin):
   60126         * loader/FrameLoader.h:
   60127         * platform/SecurityOrigin.cpp:
   60128         (WebCore::SecurityOrigin::setForURL):
   60129         (WebCore::SecurityOrigin::createForFrame):
   60130         * platform/SecurityOrigin.h:
   60131 
   60132 2008-01-07  Adele Peterson  <adele (a] apple.com>
   60133 
   60134         Forgot to check in these changes in my last checkin.
   60135 
   60136         * rendering/RenderThemeSafari.cpp:
   60137 
   60138 2008-01-07  Dan Bernstein  <mitz (a] apple.com>
   60139 
   60140         Build fixes.
   60141 
   60142         * WebCore.pro:
   60143         * platform/graphics/qt/FontCacheQt.cpp:
   60144         (WebCore::FontCache::getCachedFontData):
   60145 
   60146 2008-01-07  Timothy Hatcher  <timothy (a] apple.com>
   60147 
   60148         Reviewed by John Sullivan.
   60149 
   60150         <rdar://problem/5674119> Make the Web Inspector toolbar the normal size when not docked
   60151 
   60152         * page/inspector/inspector.css: Changed CSS rules to have the toolbar and buttons be
   60153           normal height when not docked, and small when docked. Also added some cursor properties
   60154           prevent showing the text cursor over areas that are not selectable.
   60155         * page/inspector/Images: A few images added and old ones removed or renamed.
   60156 
   60157 2008-01-07  Alp Toker  <alp (a] atoker.com>
   60158 
   60159         Prospective GTK+ autotools/qmake VIDEO build fix for breakage
   60160         introduced in r29257.
   60161 
   60162         * GNUmakefile.am:
   60163         * WebCore.pro:
   60164 
   60165 2008-01-07  Nikolas Zimmermann  <zimmermann (a] kde.org>
   60166 
   60167         Reviewed by Oliver.
   60168 
   60169         Build fix affecting all builds - again related to the unicode-range addition.
   60170 
   60171         * css/CSSFontSelector.cpp:
   60172         (WebCore::CSSFontSelector::addFontFaceRule):
   60173         * css/SVGCSSFontFace.cpp:
   60174         (WebCore::SVGCSSFontFace::SVGCSSFontFace):
   60175         * css/SVGCSSFontFace.h:
   60176         * rendering/RenderSVGText.cpp:
   60177         * svg/SVGFont.cpp:
   60178         (WebCore::svgFontAndFontFaceElementForFontData):
   60179         (WebCore::floatWidthMissingGlyphCallback):
   60180         (WebCore::drawTextMissingGlyphCallback):
   60181         * svg/SVGFontFaceElement.cpp:
   60182 
   60183 2008-01-07  Adele Peterson  <adele (a] apple.com>
   60184 
   60185         Reviewed by Antti, Adam, and Mitz.
   60186 
   60187         WebCore part of fix for 
   60188         <rdar://problem/5619073> Updated look for <video> controls
   60189         <rdar://problem/5619057> Add volume control to video controls
   60190 
   60191         * WebCore.base.exp: Added symbols for WebKitSystemInterface drawing methods.
   60192         * WebCore.xcodeproj/project.pbxproj: Added MediaControlElements.h/cpp
   60193         * WebCore.vcproj/WebCore.vcproj: ditto.
   60194 
   60195         * css/CSSPrimitiveValueMappings.h: (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): Added cases for new appearances.
   60196         * css/CSSSelector.cpp: (WebCore::CSSSelector::extractPseudoType): Added cases for new types.
   60197         * css/CSSSelector.h: (WebCore::CSSSelector::): Added new pseudo elements.
   60198         * css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::checkOneSelector): ditto.
   60199         * css/CSSValueKeywords.in: Added keywords for new control appearance styles.
   60200         * css/html4.css: Added new styles for new controls.
   60201 
   60202         * html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::canPlay): Added. Takes loading state into account.
   60203         * html/HTMLMediaElement.h:
   60204 
   60205         * page/EventHandler.cpp: (WebCore::EventHandler::updateMouseEventTargetNode): Make sure the events always go to the capturing node, if there is one.
   60206 
   60207         * platform/mac/WebCoreSystemInterface.h: Added drawing methods for controls.
   60208         * platform/mac/WebCoreSystemInterface.mm: ditto.
   60209 
   60210         * rendering/MediaControlElements.cpp: Added.
   60211         (WebCore::MediaControlShadowRootElement::MediaControlShadowRootElement): Moved from RenderMedia.  Made this relatively positioned, instead of absolute.
   60212         (WebCore::MediaControlInputElement::MediaControlInputElement): Moved from RenderMedia.  Removed call to updateFromElement, 
   60213          since its too early to do this here, and causes crashes for the slider.
   60214         (WebCore::MediaControlInputElement::attachToParent): Moved from RenderMedia.
   60215         (WebCore::MediaControlInputElement::update): ditto.
   60216         (WebCore::MediaControlMuteButtonElement::MediaControlMuteButtonElement): Added.
   60217         (WebCore::MediaControlMuteButtonElement::defaultEventHandler): ditto.
   60218         (WebCore::MediaControlPlayButtonElement::MediaControlPlayButtonElement): Moved from RenderMedia.
   60219         (WebCore::MediaControlPlayButtonElement::defaultEventHandler): ditto.
   60220         (WebCore::MediaControlSeekButtonElement::MediaControlSeekButtonElement): Added.
   60221         (WebCore::MediaControlSeekButtonElement::defaultEventHandler): ditto.
   60222         (WebCore::MediaControlSeekButtonElement::seekTimerFired): ditto.
   60223         (WebCore::MediaControlTimelineElement::MediaControlTimelineElement): Moved from RenderMedia.
   60224         (WebCore::MediaControlTimelineElement::defaultEventHandler): ditto.
   60225         (WebCore::MediaControlTimelineElement::update): ditto. 
   60226         (WebCore::MediaControlFullscreenButtonElement::MediaControlFullscreenButtonElement): Added.
   60227         (WebCore::MediaControlFullscreenButtonElement::defaultEventHandler): ditto.
   60228         * rendering/MediaControlElements.h: Added. Moved from RenderMedia.
   60229         (WebCore::MediaControlShadowRootElement::isShadowNode):
   60230         (WebCore::MediaControlShadowRootElement::shadowParentNode):
   60231         (WebCore::RenderMediaControlShadowRoot::RenderMediaControlShadowRoot):
   60232         (WebCore::RenderMediaControlShadowRoot::setParent):
   60233 
   60234         * rendering/RenderMedia.cpp: Moved control element classes to MediaControlElements files.
   60235         (WebCore::RenderMedia::RenderMedia): No need to initialize RefPtrs.
   60236         (WebCore::RenderMedia::layout): Set the position for the controlsRenderer.
   60237         (WebCore::RenderMedia::createPanel): Added nil check for the renderer.
   60238         (WebCore::RenderMedia::createMuteButton): Added.
   60239         (WebCore::RenderMedia::createSeekBackButton): ditto.
   60240         (WebCore::RenderMedia::createSeekForwardButton): ditto.
   60241         (WebCore::RenderMedia::createTimeDisplay): Added nil check for the renderer.
   60242         (WebCore::RenderMedia::createFullscreenButton): Added.
   60243         (WebCore::RenderMedia::updateControls): Create, delete, and update new controls when appropriate.
   60244         (WebCore::RenderMedia::updateControlVisibility): Don't fade controls for audio controls. 
   60245         (WebCore::RenderMedia::forwardEvent): Forward events for new controls.
   60246         * rendering/RenderMedia.h: Added new methods for creating new controls.
   60247 
   60248         * rendering/RenderObject.cpp: (WebCore::RenderObject::containingBlock): Updated special case for media elements, which are replaced elements, 
   60249           but also can contain children (the controls' container) that may need to look for the containing block.
   60250 
   60251         * rendering/RenderSlider.cpp: (WebCore::RenderSlider::createThumbStyle): Added case for MediaSliderAppearance.
   60252 
   60253         * rendering/RenderStyle.h: Added appearance constants and pseudo ids for new controls.
   60254         (WebCore::RenderStyle::):
   60255 
   60256         * rendering/RenderTheme.cpp:
   60257         (WebCore::RenderTheme::adjustStyle): Added cases for new appearances.
   60258         (WebCore::RenderTheme::paint): ditto.
   60259         * rendering/RenderTheme.h: Added new methods for painting new appearances.
   60260         (WebCore::RenderTheme::paintMediaBackground):
   60261         (WebCore::RenderTheme::paintMediaFullscreenButton):
   60262         (WebCore::RenderTheme::paintMediaPlayButton):
   60263         (WebCore::RenderTheme::paintMediaMuteButton):
   60264         (WebCore::RenderTheme::paintMediaSeekBackButton):
   60265         (WebCore::RenderTheme::paintMediaSeekForwardButton):
   60266         (WebCore::RenderTheme::paintMediaSliderThumb):
   60267         * rendering/RenderThemeMac.h:
   60268         * rendering/RenderThemeMac.mm:
   60269         (WebCore::RenderThemeMac::RenderThemeMac): Initialize m_mediaControlBackgroundImage.
   60270         (WebCore::RenderThemeMac::~RenderThemeMac): Delete m_mediaControlBackgroundImage.
   60271         (WebCore::RenderThemeMac::paintCapsLockIndicator): Use LocalCurrentGraphicsContext here too, since we use it in all other painting methods.
   60272         (WebCore::RenderThemeMac::paintSliderTrack): Added case for MediaSliderAppearance.
   60273         (WebCore::RenderThemeMac::adjustSliderThumbSize): Added case for MediaSliderThumbAppearance.
   60274         (WebCore::RenderThemeMac::paintMediaBackground): Draws the new artwork for the controls.
   60275         (WebCore::RenderThemeMac::paintMediaFullscreenButton): ditto.
   60276         (WebCore::RenderThemeMac::paintMediaMuteButton): ditto.
   60277         (WebCore::RenderThemeMac::paintMediaPlayButton): ditto.
   60278         (WebCore::RenderThemeMac::paintMediaSeekBackButton): ditto.
   60279         (WebCore::RenderThemeMac::paintMediaSeekForwardButton): ditto.
   60280         (WebCore::RenderThemeMac::paintMediaSliderThumb): ditto.
   60281         * rendering/RenderThemeSafari.cpp: Draws the new artwork on Windows.
   60282         (WebCore::RenderThemeSafari::paintSliderTrack):
   60283         (WebCore::RenderThemeSafari::adjustSliderThumbSize):
   60284         (WebCore::RenderThemeSafari::paintMediaBackground):
   60285         (WebCore::RenderThemeSafari::paintMediaFullscreenButton):
   60286         (WebCore::RenderThemeSafari::paintMediaMuteButton):
   60287         (WebCore::RenderThemeSafari::paintMediaPlayButton):
   60288         (WebCore::RenderThemeSafari::paintMediaSeekBackButton):
   60289         (WebCore::RenderThemeSafari::paintMediaSeekForwardButton):
   60290         (WebCore::RenderThemeSafari::paintMediaSliderThumb):
   60291         * rendering/RenderThemeSafari.h:
   60292 
   60293 2008-01-07  Timothy Hatcher  <timothy (a] apple.com>
   60294 
   60295         Reviewed by Darin Adler.
   60296 
   60297         Fix ASSERTION FAILED: dstOffset + srcSegmentLength == static_cast<int>(data.size())
   60298         when the replacment string is a different length.
   60299 
   60300         * platform/text/StringImpl.cpp:
   60301         (WebCore::StringImpl::replace): Move the parenthesis to be around only the subtraction in
   60302         the Vector size calculation, correcting the order of math operations.
   60303 
   60304 2008-01-07  Nikolas Zimmermann  <zimmermann (a] kde.org>
   60305 
   60306         Reviewed by Eric. Hopefully fix build with mac tiger after the unicode-range addition. NSInteger not available there.
   60307 
   60308         * platform/graphics/mac/FontCacheMac.mm:
   60309 
   60310 2008-01-07  Nikolas Zimmermann  <zimmermann (a] kde.org>
   60311 
   60312         Reviewed by Oliver. Fix build error introduced by Dan's unicode-range support patch & enabling SVG_FONTS by default.
   60313 
   60314         * css/CSSFontSelector.cpp:
   60315         (WebCore::CSSFontSelector::getFontData):
   60316 
   60317 2008-01-07  Nikolas Zimmermann  <zimmermann (a] kde.org>
   60318 
   60319         Not reviewed. Next try to fix wx/mac leopard build.
   60320 
   60321         * css/CSSFontSelector.cpp: Need to wrap a SVG* include in ENABLE(SVG) blocks, as this port doesn't build this generated file.
   60322         * svg/SVGFontFaceElement.cpp:
   60323         (WebCore::SVGFontFaceElement::createFontData): Fix double<->float conversion issue.
   60324         * webcore-base.bkl: Undo svg/ include.
   60325 
   60326 2008-01-07  Dan Bernstein  <mitz (a] apple.com>
   60327 
   60328         Reviewed by Dave Hyatt.
   60329 
   60330         - <rdar://problem/5665216> Support the unicode-range property in @font-face rules
   60331 
   60332         * GNUmakefile.am:
   60333         * WebCore.pro:
   60334         * WebCore.vcproj/WebCore.vcproj:
   60335         * WebCore.xcodeproj/project.pbxproj:
   60336         * WebCoreSources.bkl:
   60337         * bindings/objc/DOM.mm:
   60338         * bridge/mac/WebCoreAXObject.mm:
   60339         * css/CSSComputedStyleDeclaration.cpp:
   60340         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
   60341         * css/CSSFontFace.cpp:
   60342         (WebCore::CSSFontFace::fontLoaded): Changed to call the owning segmented
   60343         font face.
   60344         (WebCore::CSSFontFace::getFontData):
   60345         * css/CSSFontFace.h:
   60346         (WebCore::CSSFontFace::CSSFontFace):
   60347         (WebCore::CSSFontFace::setSegmentedFontFace):
   60348         * css/CSSFontFaceSource.cpp:
   60349         (WebCore::CSSFontFaceSource::pruneTable): Removed the calls to
   60350         GlyphPageTreeNode::pruneTreeCustomFontData because the fonts in the
   60351         font table are not exposed in the glyph page tree. Only the segmented
   60352         font is, and that is taken care of by the segmented font face.
   60353         (WebCore::CSSFontFaceSource::getFontData):
   60354         * css/CSSFontFaceSource.h:
   60355         * css/CSSFontSelector.cpp:
   60356         (WebCore::CSSFontSelector::addFontFaceRule): Changed to collect
   60357         @font-face rules with the same family and traits into a single
   60358         segmented font face, instead of just retaining the most recent one.
   60359         (WebCore::CSSFontSelector::fontLoaded):
   60360         (WebCore::CSSFontSelector::getFontData):
   60361         * css/CSSFontSelector.h:
   60362         * css/CSSGrammar.y:
   60363         * css/CSSParser.cpp:
   60364         (WebCore::CSSParser::parseValue):
   60365         (WebCore::CSSParser::parseFontFaceUnicodeRange): Added. Parses a unicode
   60366         range value.
   60367         * css/CSSParser.h:
   60368         * css/CSSPrimitiveValue.h:
   60369         (WebCore::CSSPrimitiveValue::):
   60370         * css/CSSPropertyNames.in:
   60371         * css/CSSSegmentedFontFace.cpp: Added.
   60372         (WebCore::CSSSegmentedFontFace::CSSSegmentedFontFace):
   60373         (WebCore::CSSSegmentedFontFace::~CSSSegmentedFontFace):
   60374         (WebCore::CSSSegmentedFontFace::pruneTable):
   60375         (WebCore::CSSSegmentedFontFace::isLoaded):
   60376         (WebCore::CSSSegmentedFontFace::isValid):
   60377         (WebCore::CSSSegmentedFontFace::fontLoaded):
   60378         (WebCore::CSSSegmentedFontFace::overlayRange):
   60379         (WebCore::CSSSegmentedFontFace::getFontData):
   60380         * css/CSSSegmentedFontFace.h: Added.
   60381         (WebCore::FontFaceRange::FontFaceRange):
   60382         (WebCore::FontFaceRange::from):
   60383         (WebCore::FontFaceRange::to):
   60384         (WebCore::FontFaceRange::fontFace):
   60385         (WebCore::CSSSegmentedFontFace::fontSelector):
   60386         * css/CSSStyleSelector.cpp:
   60387         (WebCore::CSSStyleSelector::applyProperty):
   60388         * css/CSSUnicodeRangeValue.cpp: Added.
   60389         (WebCore::CSSUnicodeRangeValue::~CSSUnicodeRangeValue):
   60390         (WebCore::CSSUnicodeRangeValue::cssText):
   60391         * css/CSSUnicodeRangeValue.h: Added.
   60392         (WebCore::CSSUnicodeRangeValue::CSSUnicodeRangeValue):
   60393         (WebCore::CSSUnicodeRangeValue::from):
   60394         (WebCore::CSSUnicodeRangeValue::to):
   60395         * css/SVGCSSFontFace.cpp:
   60396         (WebCore::SVGCSSFontFace::getFontData):
   60397         * css/SVGCSSFontFace.h:
   60398         * editing/Editor.cpp:
   60399         (WebCore::Editor::fontForSelection):
   60400         * editing/Editor.h:
   60401         * page/mac/FrameMac.mm:
   60402         * page/mac/WebCoreFrameBridge.mm:
   60403         (-[WebCoreFrameBridge fontForSelection:]):
   60404         * platform/graphics/Font.cpp:
   60405         (WebCore::WidthIterator::advance):
   60406         (WebCore::Font::glyphDataForCharacter):
   60407         (WebCore::Font::primaryFont): Changed to return the simple font data
   60408         used for the space character.
   60409         (WebCore::Font::fontDataAt):
   60410         (WebCore::Font::fontDataForCharacters):
   60411         (WebCore::Font::drawGlyphBuffer):
   60412         * platform/graphics/Font.h:
   60413         * platform/graphics/FontCache.cpp:
   60414         (WebCore::FontCache::getCachedFontData):
   60415         (WebCore::FontCache::getFontData):
   60416         * platform/graphics/FontCache.h:
   60417         * platform/graphics/FontData.cpp: Renamed to SimpleFontData.cpp
   60418         * platform/graphics/FontData.h: Renamed to SimpleFontData.cpp.
   60419         * platform/graphics/FontDataBaseClass.cpp: Added. This will be renamed
   60420         FontData.cpp.
   60421         (WebCore::FontData::~FontData):
   60422         * platform/graphics/FontDataBaseClass.h: Added. This will be renamed
   60423         FontData.h.
   60424         * platform/graphics/FontFallbackList.cpp:
   60425         (WebCore::FontFallbackList::determinePitch):
   60426         (WebCore::FontFallbackList::fontDataAt):
   60427         (WebCore::FontFallbackList::fontDataForCharacters):
   60428         * platform/graphics/FontFallbackList.h:
   60429         (WebCore::FontFallbackList::primaryFont):
   60430         * platform/graphics/FontSelector.h:
   60431         * platform/graphics/GlyphBuffer.h:
   60432         (WebCore::GlyphBuffer::fontDataAt):
   60433         (WebCore::GlyphBuffer::swap):
   60434         (WebCore::GlyphBuffer::add):
   60435         * platform/graphics/GlyphPageTreeNode.cpp:
   60436         (WebCore::GlyphPageTreeNode::pruneTreeCustomFontData):
   60437         (WebCore::GlyphPageTreeNode::initializePage): Added code to initialize
   60438         pages for segmented font data.
   60439         (WebCore::GlyphPageTreeNode::getChild):
   60440         (WebCore::GlyphPageTreeNode::pruneCustomFontData):
   60441         * platform/graphics/GlyphPageTreeNode.h:
   60442         (WebCore::GlyphPage::setGlyphDataForCharacter):
   60443         (WebCore::GlyphPage::setGlyphDataForIndex):
   60444         (WebCore::GlyphPageTreeNode::getRootChild):
   60445         * platform/graphics/SegmentedFontData.cpp: Added.
   60446         (WebCore::SegmentedFontData::~SegmentedFontData):
   60447         (WebCore::SegmentedFontData::fontDataForCharacter):
   60448         (WebCore::SegmentedFontData::containsCharacters):
   60449         (WebCore::SegmentedFontData::isCustomFont):
   60450         (WebCore::SegmentedFontData::isLoading):
   60451         (WebCore::SegmentedFontData::isSegmented):
   60452         * platform/graphics/SegmentedFontData.h: Added.
   60453         (WebCore::FontDataRange::FontDataRange):
   60454         (WebCore::FontDataRange::from):
   60455         (WebCore::FontDataRange::to):
   60456         (WebCore::FontDataRange::fontData):
   60457         (WebCore::SegmentedFontData::appendRange):
   60458         (WebCore::SegmentedFontData::numRanges):
   60459         (WebCore::SegmentedFontData::rangeAt):
   60460         * platform/graphics/SimpleFontData.cpp: Copied from WebCore/platform/graphics/FontData.cpp.
   60461         (WebCore::SimpleFontData::SimpleFontData):
   60462         (WebCore::SimpleFontData::~SimpleFontData):
   60463         (WebCore::SimpleFontData::ascent):
   60464         (WebCore::SimpleFontData::descent):
   60465         (WebCore::SimpleFontData::widthForGlyph):
   60466         (WebCore::SimpleFontData::fontDataForCharacter):
   60467         (WebCore::SimpleFontData::isSegmented):
   60468         * platform/graphics/SimpleFontData.h: Copied from WebCore/platform/graphics/FontData.h.
   60469         (WebCore::SimpleFontData::isCustomFont):
   60470         (WebCore::SimpleFontData::isLoading):
   60471         * platform/graphics/cairo/GraphicsContextCairo.cpp:
   60472         (WebCore::GraphicsContext::setPlatformFont):
   60473         * platform/graphics/gtk/FontCacheGtk.cpp:
   60474         (WebCore::FontCache::getFontDataForCharacters):
   60475         * platform/graphics/gtk/FontDataGtk.cpp: Renamed to
   60476         SimpleFontDataGtk.cpp.
   60477         * platform/graphics/gtk/FontGtk.cpp:
   60478         (WebCore::Font::drawGlyphs):
   60479         * platform/graphics/gtk/GlyphPageTreeNodeGtk.cpp:
   60480         (WebCore::GlyphPage::fill):
   60481         * platform/graphics/gtk/SimpleFontDataGtk.cpp: Copied from WebCore/platform/graphics/gtk/FontDataGtk.cpp.
   60482         (WebCore::SimpleFontData::platformInit):
   60483         (WebCore::SimpleFontData::platformDestroy):
   60484         (WebCore::SimpleFontData::smallCapsFontData):
   60485         (WebCore::SimpleFontData::containsCharacters):
   60486         (WebCore::SimpleFontData::determinePitch):
   60487         (WebCore::SimpleFontData::platformWidthForGlyph):
   60488         (WebCore::SimpleFontData::setFont):
   60489         * platform/graphics/mac/FontCacheMac.mm:
   60490         (WebCore::FontCache::getFontDataForCharacters):
   60491         * platform/graphics/mac/FontDataMac.mm: Renamed to SimpleFontDataMac.mm.
   60492         * platform/graphics/mac/FontMac.mm:
   60493         (WebCore::initializeATSUStyle):
   60494         (WebCore::overrideLayoutOperation):
   60495         (WebCore::ATSULayoutParameters::initialize):
   60496         (WebCore::Font::drawGlyphs):
   60497         * platform/graphics/mac/GlyphPageTreeNodeMac.cpp:
   60498         (WebCore::GlyphPage::fill):
   60499         * platform/graphics/mac/SimpleFontDataMac.mm: Copied from WebCore/platform/graphics/mac/FontDataMac.mm.
   60500         (WebCore::initFontData):
   60501         (WebCore::SimpleFontData::platformInit):
   60502         (WebCore::SimpleFontData::platformDestroy):
   60503         (WebCore::SimpleFontData::smallCapsFontData):
   60504         (WebCore::SimpleFontData::containsCharacters):
   60505         (WebCore::SimpleFontData::determinePitch):
   60506         (WebCore::SimpleFontData::platformWidthForGlyph):
   60507         (WebCore::SimpleFontData::checkShapesArabic):
   60508         * platform/graphics/qt/FontDataQt.cpp: Renamed to SimpleFontDataQt.cpp.
   60509         * platform/graphics/qt/GlyphPageTreeNodeQt.cpp:
   60510         (WebCore::GlyphPageTreeNode::pruneTreeCustomFontData):
   60511         * platform/graphics/qt/SimpleFontDataQt.cpp: Copied from WebCore/platform/graphics/qt/FontDataQt.cpp.
   60512         * platform/graphics/win/FontCacheWin.cpp:
   60513         (WebCore::FontCache::getFontDataForCharacters):
   60514         * platform/graphics/win/FontDataWin.cpp: Renamed to
   60515         SimpleFontDataWin.cpp.
   60516         * platform/graphics/win/FontWin.cpp:
   60517         (WebCore::Font::drawGlyphs):
   60518         * platform/graphics/win/GlyphPageTreeNodeWin.cpp:
   60519         (WebCore::GlyphPage::fill):
   60520         * platform/graphics/win/SimpleFontDataWin.cpp: Copied from WebCore/platform/graphics/win/FontDataWin.cpp.
   60521         (WebCore::SimpleFontData::setShouldApplyMacAscentHack):
   60522         (WebCore::SimpleFontData::platformInit):
   60523         (WebCore::SimpleFontData::platformDestroy):
   60524         (WebCore::SimpleFontData::smallCapsFontData):
   60525         (WebCore::SimpleFontData::containsCharacters):
   60526         (WebCore::SimpleFontData::determinePitch):
   60527         (WebCore::SimpleFontData::platformWidthForGlyph):
   60528         (WebCore::SimpleFontData::scriptFontProperties):
   60529         * platform/graphics/wx/FontCacheWx.cpp:
   60530         (WebCore::FontCache::getFontDataForCharacters):
   60531         * platform/graphics/wx/FontDataWx.cpp: Renamed to SimpleFontDataWx.cpp.
   60532         * platform/graphics/wx/FontWx.cpp:
   60533         (WebCore::Font::drawGlyphs):
   60534         * platform/graphics/wx/GlyphMapWx.cpp:
   60535         (WebCore::GlyphPage::fill):
   60536         * platform/graphics/wx/SimpleFontDataWx.cpp: Copied from WebCore/platform/graphics/wx/FontDataWx.cpp.
   60537         (WebCore::SimpleFontData::platformInit):
   60538         (WebCore::SimpleFontData::platformDestroy):
   60539         (WebCore::SimpleFontData::smallCapsFontData):
   60540         (WebCore::SimpleFontData::containsCharacters):
   60541         (WebCore::SimpleFontData::determinePitch):
   60542         (WebCore::SimpleFontData::platformWidthForGlyph):
   60543         * platform/mac/FileChooserMac.mm:
   60544         * platform/mac/PopupMenuMac.mm:
   60545         * platform/mac/WebCoreTextRenderer.mm:
   60546         * platform/win/PopupMenuWin.cpp:
   60547         * platform/win/UniscribeController.cpp:
   60548         (WebCore::UniscribeController::advance):
   60549         (WebCore::UniscribeController::itemizeShapeAndPlace):
   60550         (WebCore::UniscribeController::shapeAndPlaceItem):
   60551         (WebCore::UniscribeController::shape):
   60552         * platform/win/UniscribeController.h:
   60553         * svg/SVGFont.cpp:
   60554         (WebCore::Font::drawGlyphsWithSVGFont):
   60555         * svg/SVGFontElement.cpp:
   60556         (WebCore::SVGFontElement::collectGlyphs):
   60557         * svg/SVGFontFaceElement.cpp:
   60558         (WebCore::SVGFontFaceElement::createFontData):
   60559         * svg/SVGFontFaceElement.h:
   60560         * svg/SVGGlyphElement.cpp:
   60561 
   60562 2008-01-07  Nikolas Zimmermann  <zimmermann (a] kde.org>
   60563 
   60564         Not reviewed. Try to fix mac build by forcing SVGNames regeneration.
   60565 
   60566         * svg/svgtags.in:
   60567 
   60568 2008-01-07  Nikolas Zimmermann  <zimmermann (a] kde.org>
   60569 
   60570         Not reviewed. Proposed build fix for wx.
   60571 
   60572         * webcore-base.bkl:
   60573 
   60574 2008-01-07  Dan Bernstein  <mitz (a] apple.com>
   60575 
   60576         64-bit build fix
   60577 
   60578         * platform/graphics/mac/FontCustomPlatformData.cpp:
   60579         (WebCore::FontCustomPlatformData::fontPlatformData): Have to use a
   60580         cast here since FMGetFontFromATSFontRef() is not available on 64-bit.
   60581 
   60582 2008-01-06  Nikolas Zimmermann  <zimmermann (a] kde.org>
   60583 
   60584         Reviewed by Oliver. Parts reviewed by Eric, David Hyatt & Dan & Alexey.
   60585         Fixes: http://bugs.webkit.org/show_bug.cgi?id=15741 (REGRESSION: svg/W3C-SVG-1.1/fonts-elem-03-b.svg shows worse behavior on TOT)
   60586 
   60587         Display SVG Fonts, fill svg/SVGFont.cpp with life by adding all needed code to
   60588         measure & render glyphs contained in SVG Fonts, including ligature lookup support.
   60589 
   60590         Implement floatWidth/selectionRectForText for SVG Fonts, fixing text selection.
   60591 
   60592         Support horiz-origin-x/y, horiz-adv-x, vert-adv-y, vert-origin-x/y & arabic-form.
   60593         Implement simple algorithm to determine the arabic forms for a string (initial, isolated, medial, terminal).
   60594 
   60595         Removed drawGlyphsWithSVGFont - create a new function drawTextWithSVGFont instead.
   60596         This doesn't involve creating/using a 'GlyphBuffer' object anymore, which is not
   60597         required for SVG Fonts anyway (we already know all our offsets/advances/etc..)
   60598 
   60599         Don't call it from drawSimpleText anymore, but directly in drawText - as Dan suggested.
   60600 
   60601         <glyph> elements now register themselves in the SVGFontElement's glyph cache.
   60602         (insertedIntoDocument / removedFromDocument take care of this)
   60603 
   60604         The cache is built once now, and is kept updated - it's not rebuild anymore
   60605         on painting (!) - which was a crude hack for testing.
   60606 
   60607         W3C testcase which include SVG Fonts:
   60608         svg/W3C-SVG-1.1/animate-elem-03-t.svg (Fixed, of course not the anim itself, but it's SVG Fonts usage)
   60609         svg/W3C-SVG-1.1/animate-elem-24-t.svg (Ditto)
   60610         svg/W3C-SVG-1.1/animate-elem-36-t.svg (Ditto)
   60611         svg/W3C-SVG-1.1/animate-elem-40-t.svg (Ditto)
   60612         svg/W3C-SVG-1.1/fonts-kern-01-t.svg (missing <vkern>/<hkern> support)
   60613         svg/W3C-SVG-1.1/fonts-desc-02-t.svg (Fixed, tests CSS font matching based on font-variant attribute)
   60614         svg/W3C-SVG-1.1/fonts-elem-01-t.svg (Fixed, basic SVG font test)
   60615         svg/W3C-SVG-1.1/fonts-elem-02-t.svg (Fixed, accuracy test for embedded SVG font)
   60616         svg/W3C-SVG-1.1/fonts-elem-05-t.svg (Fixed, checks horiz-origin-x support, note: W3C reference image is wrong)
   60617         svg/W3C-SVG-1.1/fonts-elem-06-t.svg (Fixed, checks horiz-adv-x support)
   60618         svg/W3C-SVG-1.1/fonts-glyph-02-t.svg (Fixed, checks arabic-form support)
   60619         svg/W3C-SVG-1.1/fonts-glyph-03-t.svg (Fixed, checks glyph matching based on xml:lang)
   60620         svg/W3C-SVG-1.1/masking-mask-01-b.svg (Fixed, SVG Fonts & masking)
   60621         svg/W3C-SVG-1.1/pservers-grad-08-b.svg (Fixed, SVG Fonts & gradient on fill/stroke)
   60622         svg/W3C-SVG-1.1/render-elems-06-t.svg (Fixed, simple 'fill' property test)
   60623         svg/W3C-SVG-1.1/render-elems-07-t.svg (Fixed, simple 'stroke' property test - shows SVG Font interprets stroke-width in glyph coordinate system, as demanded by spec)
   60624         svg/W3C-SVG-1.1/render-elems-08-t.svg (Fixed, simple 'fill' & 'stroke' property test)
   60625         svg/W3C-SVG-1.1/render-groups-01-b.svg (missing <vkern>/<hkern> support)
   60626         svg/W3C-SVG-1.1/render-groups-03-t.svg (Ditto)
   60627         svg/W3C-SVG-1.1/text-altglyph-01-b.svg (no <altGlyph> support yet)
   60628         svg/W3C-SVG-1.1/text-text-04-t.svg (Fixed, absolute placing of characters pixel perfect now)
   60629         svg/W3C-SVG-1.1/text-text-05-t.svg (FIXME: problem with text-anchor)
   60630         svg/W3C-SVG-1.1/text-text-06-t.svg (highlights problem with ligatures & absolute positioned characters)
   60631 
   60632         Questionable testcases:
   60633         svg/W3C-SVG-1.1/fonts-glyph-04-t.svg (tests that glyph selection is done in the order in the definition of the font element.)
   60634         I am not sure why this behaviour is desired, no comment given in spec - doesn't make much sense to me, ignoring it for now.
   60635 
   60636         Several other batik testcases fixed, which use SVG Fonts in combination with gradients & filters.
   60637 
   60638         * css/CSSFontSelector.cpp:
   60639         (WebCore::CSSFontSelector::addFontFaceRule):
   60640         (WebCore::CSSFontSelector::getFontData):
   60641         * platform/graphics/Font.cpp:
   60642         (WebCore::Font::lineSpacing):
   60643         (WebCore::Font::xHeight):
   60644         (WebCore::Font::canUseGlyphCache):
   60645         (WebCore::Font::drawGlyphBuffer):
   60646         (WebCore::Font::drawText):
   60647         (WebCore::Font::floatWidth):
   60648         (WebCore::Font::selectionRectForText):
   60649         * platform/graphics/Font.h:
   60650         (WebCore::TextRun::TextRun):
   60651         (WebCore::TextRun::activePaintServer):
   60652         (WebCore::TextRun::setActivePaintServer):
   60653         * platform/graphics/FontData.cpp:
   60654         (WebCore::FontData::lineSpacing):
   60655         (WebCore::FontData::lineGap):
   60656         (WebCore::FontData::xHeight):
   60657         * platform/graphics/FontData.h:
   60658         * platform/graphics/win/FontWin.cpp:
   60659         (WebCore::Font::drawGlyphs):
   60660         * rendering/RenderSVGText.cpp:
   60661         (WebCore::RenderSVGText::relativeBBox):
   60662         * rendering/SVGInlineTextBox.cpp:
   60663         (WebCore::SVGInlineTextBox::paintCharacters):
   60664         * rendering/SVGInlineTextBox.h:
   60665         * rendering/SVGRootInlineBox.cpp:
   60666         (WebCore::SVGRootInlineBoxPaintWalker::chunkPortionCallback):
   60667         * svg/SVGFont.cpp:
   60668         (WebCore::processArabicFormDetection):
   60669         (WebCore::charactersWithArabicForm):
   60670         (WebCore::isCompatibleArabicForm):
   60671         (WebCore::isCompatibleGlyph):
   60672         (WebCore::svgFontAndFontFaceElementForFontData):
   60673         (WebCore::SVGTextRunWalker::SVGTextRunWalker):
   60674         (WebCore::SVGTextRunWalker::walk):
   60675         (WebCore::floatWidthUsingSVGFontCallback):
   60676         (WebCore::floatWidthMissingGlyphCallback):
   60677         (WebCore::floatWidthOfSubStringUsingSVGFont):
   60678         (WebCore::Font::floatWidthUsingSVGFont):
   60679         (WebCore::drawTextUsingSVGFontCallback):
   60680         (WebCore::drawTextMissingGlyphCallback):
   60681         (WebCore::Font::drawTextUsingSVGFont):
   60682         (WebCore::Font::selectionRectForTextUsingSVGFont):
   60683         * svg/SVGFontElement.cpp:
   60684         (WebCore::SVGFontElement::SVGFontElement):
   60685         (WebCore::SVGFontElement::addGlyphToCache):
   60686         (WebCore::SVGFontElement::removeGlyphFromCache):
   60687         (WebCore::SVGFontElement::firstMissingGlyphElement):
   60688         (WebCore::SVGFontElement::glyphIdentifiersForString):
   60689         * svg/SVGFontElement.h:
   60690         (WebCore::SVGFontElement::maximumHashKeyLength):
   60691         * svg/SVGFontFaceElement.cpp:
   60692         (WebCore::SVGFontFaceElement::createFontData):
   60693         (WebCore::SVGFontFaceElement::rebuildFontFace):
   60694         (WebCore::SVGFontFaceElement::associatedFontElement):
   60695         * svg/SVGFontFaceElement.h:
   60696         * svg/SVGGlyphElement.cpp:
   60697         (WebCore::SVGGlyphElement::insertedIntoDocument):
   60698         (WebCore::SVGGlyphElement::removedFromDocument):
   60699         (WebCore::parseArabicForm):
   60700         (WebCore::SVGGlyphElement::inheritUnspecifiedAttributes):
   60701         (WebCore::SVGGlyphElement::buildGlyphIdentifier):
   60702         * svg/SVGGlyphElement.h:
   60703         (WebCore::SVGGlyphIdentifier::):
   60704         (WebCore::SVGGlyphIdentifier::SVGGlyphIdentifier):
   60705         (WebCore::SVGGlyphIdentifier::inheritedValue):
   60706         (WebCore::SVGGlyphIdentifier::operator==):
   60707         (WebCore::SVGGlyphElement::~SVGGlyphElement):
   60708 
   60709 2008-01-07  David Hyatt  <hyatt (a] apple.com>
   60710 
   60711         Fix for bug 13095, CSS3 multiple backgrounds don't work on table cells.
   60712 
   60713         Reviewed by Dan
   60714 
   60715         * rendering/RenderBox.h:
   60716         * rendering/RenderTableCell.cpp:
   60717         (WebCore::RenderTableCell::paintBackgroundsBehindCell):
   60718 
   60719 2008-01-07  Holger Freyther  <zecke (a] selfish.org>
   60720 
   60721         Reviewed by Alp Toker.
   60722 
   60723         * Fix indention
   60724 
   60725         * platform/gtk/ContextMenuGtk.cpp:
   60726         (WebCore::ContextMenu::~ContextMenu):
   60727 
   60728 2008-01-07  Holger Freyther  <zecke (a] selfish.org>
   60729 
   60730         Reviewed by Alp Toker.
   60731 
   60732         * The ContextMenuController is going to live longer than the ContextMenu. It is
   60733         going to live as long as the WebCore::Page is around where the ContextMenu, specially
   60734         in the case of a SubMenu, is gone before we popup the menu.
   60735 
   60736         * platform/gtk/ContextMenuGtk.cpp:
   60737         (WebCore::menuItemActivated):
   60738         (WebCore::ContextMenu::appendItem):
   60739 
   60740 2008-01-07  Holger Freyther  <zecke (a] selfish.org>
   60741 
   60742         Reviewed by Alp Toker.
   60743 
   60744         * Fix SubMenu handling
   60745         * Do not connect to the activated signal if we are a separator or submenu
   60746         * Change our type from ActionType to SubMenuType when we have a submenu
   60747         * Initialize the SubMenu
   60748 
   60749         * platform/gtk/ContextMenuGtk.cpp:
   60750         (WebCore::ContextMenu::appendItem):
   60751         * platform/gtk/ContextMenuItemGtk.cpp:
   60752         (WebCore::ContextMenuItem::ContextMenuItem):
   60753         (WebCore::ContextMenuItem::createNativeMenuItem):
   60754         (WebCore::ContextMenuItem::setSubMenu):
   60755 
   60756 2008-01-07  Holger Freyther  <zecke (a] selfish.org>
   60757 
   60758         Reviewed by Alp Toker.
   60759 
   60760         * Qt and Gtk must know if a ContextMenuItem is checkable. Add a new ContextMenuItemType for checkable
   60761         actions.
   60762         * Use this information in the Gtk platform to create a GtkCheckMenuItem when needed.
   60763         * Update the ContextMenuController to accept CheckableActionTypes as well.
   60764         * Change ContextMenu.cpp to use the CheckableActionType. The information if a item is checkable
   60765         was extracted from ContextMenu::checkOrEnableIfNeeded.
   60766         * Update the Qt and Windows port.
   60767 
   60768 
   60769         * page/ContextMenuController.cpp:
   60770         * platform/ContextMenu.cpp:
   60771         (WebCore::createAndAppendFontSubMenu):
   60772         (WebCore::createAndAppendSpellingAndGrammarSubMenu):
   60773         (WebCore::createAndAppendSpellingSubMenu):
   60774         (WebCore::createAndAppendWritingDirectionSubMenu):
   60775         * platform/ContextMenuItem.h:
   60776         * platform/gtk/ContextMenuItemGtk.cpp:
   60777         (WebCore::ContextMenuItem::ContextMenuItem):
   60778         (WebCore::ContextMenuItem::createNativeMenuItem):
   60779 
   60780 2008-01-07  Luca Bruno  <lethalman88 (a] gmail.com>
   60781 
   60782         Reviewed by Alp Toker.
   60783 
   60784         http://bugs.webkit.org/show_bug.cgi?id=16745
   60785         [GTK] Context menu doesn't feel or look native - no icons
   60786 
   60787         Use GTK+ stock icons for menu items where possible.
   60788 
   60789         * platform/gtk/ContextMenuItemGtk.cpp:
   60790         (WebCore::gtkStockIDFromContextMenuAction):
   60791         (WebCore::ContextMenuItem::createNativeMenuItem):
   60792         (WebCore::ContextMenuItem::setAction):
   60793 
   60794 2008-01-07  Dan Bernstein  <mitz (a] apple.com>
   60795 
   60796         Reviewed by John Sullivan.
   60797 
   60798         - make the ATSUI code path work with custom fonts rather than crash
   60799 
   60800         * platform/graphics/mac/FontCustomPlatformData.cpp:
   60801         (WebCore::FontCustomPlatformData::fontPlatformData):
   60802         * platform/graphics/mac/FontMac.mm:
   60803         (WebCore::initializeATSUStyle):
   60804 
   60805 2008-01-07  Thiago Macieira  <thiago.macieira (a] trolltech.com>
   60806 
   60807         Reviewed by Simon.
   60808 
   60809         abort() now emits the signals, so disconnect them before you abort()
   60810 
   60811         * platform/network/qt/QNetworkReplyHandler.cpp:
   60812         (WebCore::QNetworkReplyHandler::abort):
   60813 
   60814 2008-01-07  Simon Hausmann  <hausmann (a] webkit.org>
   60815 
   60816         Reviewed by Lars.
   60817 
   60818         Use a faster and safer way of flattening the form data.
   60819 
   60820         * platform/network/qt/QNetworkReplyHandler.cpp:
   60821         (WebCore::QNetworkReplyHandler::start):
   60822 
   60823 2008-01-07  Simon Hausmann  <hausmann (a] webkit.org>
   60824 
   60825         Reviewed by Lars.
   60826 
   60827         Ported of the network backend of the Qt platform to Qt 4.4's new networking API.
   60828 
   60829         * WebCore.pro:
   60830         * platform/network/ResourceHandleInternal.h:
   60831         * platform/network/qt/QNetworkReplyHandler.cpp: Added.
   60832         (WebCore::QNetworkReplyHandler::QNetworkReplyHandler):
   60833         (WebCore::QNetworkReplyHandler::abort):
   60834         (WebCore::QNetworkReplyHandler::finish):
   60835         (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
   60836         (WebCore::QNetworkReplyHandler::forwardData):
   60837         (WebCore::QNetworkReplyHandler::start):
   60838         * platform/network/qt/QNetworkReplyHandler.h: Added.
   60839         (WebCore::QNetworkReplyHandler::reply):
   60840         * platform/network/qt/ResourceHandleQt.cpp:
   60841         (WebCore::ResourceHandle::start):
   60842         (WebCore::ResourceHandle::cancel):
   60843         (WebCore::ResourceHandle::loadResourceSynchronously):
   60844         * platform/network/qt/ResourceRequest.h:
   60845         (WebCore::ResourceRequest::ResourceRequest):
   60846         * platform/network/qt/ResourceRequestQt.cpp: Added.
   60847         (WebCore::ResourceRequest::toNetworkRequest):
   60848         * platform/qt/MIMETypeRegistryQt.cpp:
   60849         (WebCore::MIMETypeRegistry::getMIMETypeForExtension):
   60850         * platform/qt/PlugInInfoStoreQt.cpp:
   60851         (WebCore::PlugInInfoStore::createPluginInfoForPluginAtIndex):
   60852         (WebCore::PlugInInfoStore::pluginCount):
   60853         (WebCore::PlugInInfoStore::pluginNameForMIMEType):
   60854 
   60855 2008-01-07  Holger Hans Peter Freyther  <holger.freyther (a] trolltech.com>
   60856 
   60857         Reviewed by Lars.
   60858 
   60859         * Remove m_dirtyRegion as it is not used as we pass every dirty region
   60860         directly to the ChromeClient
   60861 
   60862         * platform/qt/ScrollViewQt.cpp:
   60863         (WebCore::ScrollView::paint):
   60864 
   60865 2008-01-06  Nikolas Zimmermann  <zimmermann (a] kde.org>
   60866 
   60867         Reviewed by Oliver.
   60868 
   60869         Small CG paint server cleanups - use more GraphicsContext method where possible.
   60870 
   60871         * svg/graphics/cg/CgSupport.cpp:
   60872         (WebCore::applyStrokeStyleToContext):
   60873         (WebCore::strokeBoundingBox):
   60874         * svg/graphics/cg/CgSupport.h:
   60875         * svg/graphics/cg/RenderPathCg.cpp:
   60876         (WebCore::RenderPath::strokeContains):
   60877         * svg/graphics/cg/SVGPaintServerGradientCg.cpp:
   60878         (WebCore::SVGPaintServerGradient::setup):
   60879         * svg/graphics/cg/SVGPaintServerPatternCg.cpp:
   60880         (WebCore::SVGPaintServerPattern::setup):
   60881         * svg/graphics/cg/SVGPaintServerSolidCg.cpp:
   60882         (WebCore::SVGPaintServerSolid::setup):
   60883 
   60884 2008-01-06  Nikolas Zimmermann  <zimmermann (a] kde.org>
   60885 
   60886         Reviewed by Dan.
   60887 
   60888         Use new helper function isArabicChar() - which also calls ublock_getCode() == UBLOCK_ARABIC on mac.
   60889 
   60890         * platform/graphics/mac/FontMac.mm:
   60891         (WebCore::ATSULayoutParameters::initialize):
   60892 
   60893 2008-01-06  Andrew Wellington  <proton (a] wiretapped.net>
   60894 
   60895         Reviewed by Darin.
   60896         
   60897         DOMRange doesn't correctly re-size when inserting items (Acid3)
   60898         http://bugs.webkit.org/show_bug.cgi?id=16764
   60899         
   60900         Update the offset for the range when inserting items into the range.
   60901 
   60902         Test: fast/dom/Range/range-modifycontents.html
   60903 
   60904         * dom/Range.cpp:
   60905         (WebCore::Range::insertNode):
   60906 
   60907 2008-01-06  Alexey Proskuryakov  <ap (a] webkit.org>
   60908 
   60909         Reviewed by Darin.
   60910 
   60911         http://bugs.webkit.org/show_bug.cgi?id=16731
   60912         Incorrect node type for whitespace when setting innerHTML in an XHTML document
   60913 
   60914         Test: fast/dom/xhtml-fragment-whitespace.xhtml
   60915 
   60916         * dom/XMLTokenizer.cpp: (WebCore::parseXMLDocumentFragment):
   60917         Use balancedCharactersHandler for ignorable whitespace.
   60918 
   60919 2008-01-06  Alexey Proskuryakov  <ap (a] webkit.org>
   60920 
   60921         Reviewed by Darin.
   60922 
   60923         http://bugs.webkit.org/show_bug.cgi?id=16701
   60924         <rdar://problem/5666580> REGRESSION: URL-encoded space (%20) in livejournal url
   60925         causes page load error
   60926 
   60927         Test: http/tests/misc/location-with-space.php
   60928 
   60929         * platform/network/cf/ResourceRequestCFNet.cpp:
   60930         (WebCore::ResourceRequest::doUpdatePlatformRequest): Do update its URL, too.
   60931 
   60932 2008-01-06  Andrew Wellington  <proton (a] wiretapped.net>
   60933 
   60934         Reviewed by Darin.
   60935         
   60936         DOMRange.cloneContents does not work (Acid3 bug)
   60937         http://bugs.webkit.org/show_bug.cgi?id=16748
   60938         
   60939         When cloning an empty range, return an empty DocmentFragment instead of
   60940         null or undefined.
   60941 
   60942         Test: fast/dom/Range/range-clone-empty.html
   60943 
   60944         * dom/Range.cpp:
   60945         (WebCore::Range::processContents):
   60946 
   60947 2008-01-06  Luca Bruno  <lethalman88 (a] gmail.com>
   60948 
   60949         Reviewed by Alp Toker.
   60950 
   60951         Remove curl handles immediately if the timer is not running.
   60952 
   60953         * platform/network/curl/ResourceHandleManager.cpp:
   60954         (WebCore::ResourceHandleManager::cancel):
   60955 
   60956 2008-01-06  Alp Toker  <alp (a] atoker.com>
   60957 
   60958         Reviewed by Eric.
   60959 
   60960         Cairo canvas refcounting fix. Reference the surface in the constructor
   60961         to match its destruction in the destructor.
   60962 
   60963         Fixes a crash triggered by leaving this page:
   60964           http://philip.html5.org/tests/canvas/misc/globalalpha-pattern.html
   60965 
   60966         * html/CanvasPattern.cpp:
   60967         (WebCore::CanvasPattern::CanvasPattern):
   60968 
   60969 2008-01-06  Eric Seidel  <eric (a] webkit.org>
   60970 
   60971         Reviewed by darin.
   60972 
   60973         Make attr selectors case-insensitive for certain HTML attributes
   60974         http://bugs.webkit.org/show_bug.cgi?id=15470
   60975 
   60976         Test: fast/css/html-attr-case-sensitivity.html
   60977 
   60978         * css/CSSStyleSelector.cpp:
   60979         (WebCore::addLocalNameToSet):
   60980         (WebCore::createHtmlCaseInsensitiveAttributesSet):
   60981         (WebCore::htmlAttributeHasCaseInsensitiveValue):
   60982         (WebCore::CSSStyleSelector::checkOneSelector):
   60983 
   60984 2008-01-06  Eric Seidel  <eric (a] webkit.org>
   60985 
   60986         Reviewed by Sam.
   60987 
   60988         Fix :checked matching type='text' and add test case
   60989         http://bugs.webkit.org/show_bug.cgi?id=16750
   60990 
   60991         Test: fast/dom/HTMLInputElement/checked-pseudo-selector.html
   60992 
   60993         * html/HTMLInputElement.h: isChecked() can only be true for RADIO or CHECKBOX
   60994 
   60995 2008-01-05  Sam Weinig  <sam (a] webkit.org>
   60996 
   60997         Reviewed by Eric Seidel.
   60998 
   60999         Patch for http://bugs.webkit.org/show_bug.cgi?id=16758
   61000         ASSERT when using TreeWalker methods for a current node outside of the root (Acid3)
   61001 
   61002         - Ensure that returned nodes are within the root node, or return 0, in adherence with the spec.
   61003 
   61004         Test: fast/dom/TreeWalker/TreeWalker-currentNode.html
   61005 
   61006         * dom/TreeWalker.cpp:
   61007         (WebCore::TreeWalker::parentNode):
   61008         (WebCore::TreeWalker::firstChild):
   61009         (WebCore::TreeWalker::lastChild):
   61010         (WebCore::TreeWalker::previousSibling):
   61011         (WebCore::TreeWalker::nextSibling):
   61012         (WebCore::TreeWalker::previousNode):
   61013         (WebCore::TreeWalker::nextNode):
   61014 
   61015 2008-01-04  Oliver Hunt  <oliver (a] apple.com>
   61016 
   61017         Reviewed by Beth Dakin.
   61018 
   61019         Fix bounds computation bugs responsible for http://bugs.webkit.org/show_bug.cgi?id=16015
   61020         and other image repaint bugs.
   61021 
   61022         We now cache the full local bounds for the <image> element, as otherwise certain
   61023         combinations of attribute changes could result in incorrect dirty rects.
   61024         Additionally we no longer use any of the integer bounds fields on RenderObject for
   61025         determining repaint bounds (this was the principle cause of bug #16015).
   61026 
   61027         I also removed the outline painting code as it was both wrong, and not correctly
   61028         repainted.  I feel safe doing this as no other browser or viewer supports outline
   61029         properties on svg elements.
   61030 
   61031         I was unable to make a testcase for this unfortunately, despite seemingly deterministic 
   61032         behaviour :(
   61033 
   61034         * rendering/RenderSVGImage.cpp:
   61035         (WebCore::RenderSVGImage::layout):
   61036         (WebCore::RenderSVGImage::paint):
   61037         (WebCore::RenderSVGImage::nodeAtPoint):
   61038         (WebCore::RenderSVGImage::calculateAbsoluteBounds):
   61039         * rendering/RenderSVGImage.h:
   61040 
   61041 2008-01-04  Beth Dakin  <bdakin (a] apple.com>
   61042 
   61043         Reviewed by Oliver.
   61044 
   61045         Fix for http://bugs.webkit.org/show_bug.cgi?id=16704 input with 
   61046         type="hidden" matches :enabled/:disabled (Acid3 bug)
   61047 
   61048         Prevent :enabled and :disabled from applying to input type="hidden" 
   61049 
   61050         * css/CSSStyleSelector.cpp:
   61051         (WebCore::CSSStyleSelector::checkOneSelector): Rather than 
   61052         allowing :enabled and :disabled to apply to all controls, only 
   61053         allow it to apply to non-"hidden" controls
   61054         * dom/Element.h:
   61055         (WebCore::Element::isInputTypeHidden): 
   61056         * html/HTMLInputElement.h:
   61057         (WebCore::HTMLInputElement::isInputTypeHidden):
   61058 
   61059 2008-01-04  Sam Weinig  <sam (a] webkit.org>
   61060 
   61061         Reviewed by Oliver Hunt.
   61062 
   61063         - Match the spec when calling getFloatValue, getStringValue, getCounterValue,
   61064           getRectValue and getRGBColorValue of CSSPrimitiveValue by throwing exceptions
   61065           if the type of the CSSPrimitiveValue is not the same as the type requested.
   61066         - Fix the intermittent assertion failure seen in svg/css/glyph-orientation-rounding-test.xhtml
   61067 
   61068         Test: fast/css/CSSPrimitiveValue-exceptions.html
   61069 
   61070         * css/CSSPrimitiveValue.cpp:
   61071         (WebCore::CSSPrimitiveValue::getDoubleValue):
   61072         (WebCore::CSSPrimitiveValue::getStringValue):
   61073         (WebCore::CSSPrimitiveValue::getCounterValue):
   61074         (WebCore::CSSPrimitiveValue::getRectValue):
   61075         (WebCore::CSSPrimitiveValue::getRGBColorValue):
   61076         (WebCore::CSSPrimitiveValue::getPairValue):
   61077         * css/CSSPrimitiveValue.h:
   61078         (WebCore::CSSPrimitiveValue::getFloatValue):
   61079         (WebCore::CSSPrimitiveValue::getIntValue):
   61080         (WebCore::CSSPrimitiveValue::getCounterValue):
   61081         (WebCore::CSSPrimitiveValue::getRectValue):
   61082         (WebCore::CSSPrimitiveValue::getDashboardRegionValue):
   61083         * css/CSSPrimitiveValue.idl:
   61084 
   61085 2008-01-04  Antti Koivisto  <antti (a] apple.com>
   61086 
   61087         Reviewed by Darin.
   61088         
   61089         Windows part of <rdar://problem/5647034>
   61090         Media tests crash if an old version of QuickTime is installed
   61091 
   61092         Check QuickTime version on Windows too.
   61093 
   61094         * platform/graphics/MediaPlayer.cpp:
   61095         (WebCore::MediaPlayer::isAvailable):
   61096         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.h:
   61097         (WebCore::MediaPlayerPrivate::isAvailable):
   61098         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
   61099         (WebCore::MediaPlayerPrivate::isAvailable):
   61100         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.h:
   61101         * platform/graphics/win/QTMovieWin.cpp:
   61102         (QTMovieWin::initializeQuickTime):
   61103 
   61104 2008-01-04  Darin Adler  <darin (a] apple.com>
   61105 
   61106         Reviewed by Maciej and Alice.
   61107 
   61108         - fix <rdar://problem/4404302> Borders where there should be none (canadasmountains.com)
   61109 
   61110         Test: fast/images/border.html
   61111 
   61112         * html/HTMLImageElement.cpp:
   61113         (WebCore::HTMLImageElement::parseMappedAttribute): Change the code that handles cases
   61114         where the border value is not a number to use the value "0" for the border width instead
   61115         of not setting the border width and style at all. This matches other browsers, and makes
   61116         more sense.
   61117 
   61118 2008-01-04  Antti Koivisto  <antti (a] apple.com>
   61119 
   61120         Try to fix 64-bit build
   61121 
   61122         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
   61123         (WebCore::MediaPlayerPrivate::isAvailable):
   61124 
   61125 2008-01-04  Stephanie  <slewis (a] apple.com>
   61126 
   61127         Reviewed by Oliver.
   61128 
   61129         WARNING: NO TEST CASES ADDED OR CHANGED
   61130 
   61131         Fix another stringImpl leak.
   61132 
   61133         * platform/text/StringImpl.cpp: remove an extra allocation
   61134         (WebCore::StringImpl::StringImpl):
   61135 
   61136 2008-01-04  Alice Liu  <alice.liu (a] apple.com>
   61137 
   61138         Reviewed by Mitz.
   61139 
   61140         * platform/graphics/win/FontCacheWin.cpp:
   61141         fix loop condition that was causing crash
   61142 
   61143 2008-01-04  Timothy Hatcher  <timothy (a] apple.com>
   61144 
   61145         Reviewed by Adam Roben.
   61146 
   61147         <rdar://problem/5671059> Always show the Timeline and Console buttons in the Inspector
   61148 
   61149         * page/inspector/inspector.css: Remove styles related to the toggle button
   61150           and make the area always visible. 
   61151         * page/inspector/inspector.html: Remove the toggle button.
   61152         * page/inspector/inspector.js: Remove code to toggle the status area.
   61153 
   61154 2008-01-04  Alexey Proskuryakov  <ap (a] webkit.org>
   61155 
   61156         Reviewed by Adam Roben.
   61157 
   61158         Temporarily restore BackwardDelete for Windows nightlies to work correctly.
   61159 
   61160         * editing/EditorCommand.cpp: (WebCore::CommandEntry::):
   61161 
   61162 2008-01-04  Alexey Proskuryakov  <ap (a] webkit.org>
   61163 
   61164         Reviewed by Darin.
   61165 
   61166         <rdar://problem/5611712> xsl:sort does not use a case folding sort, and the 'case-order' attribute is ignored (16077)
   61167 
   61168         Enable the fix on Windows.
   61169 
   61170         * xml/XSLTProcessor.cpp: (WebCore::XSLTProcessor::transformToString):
   61171         Always set a custom sort function, even if it doesn't implement proper collation on the platform.
   61172 
   61173         * xml/XSLTUnicodeSort.cpp:
   61174         (WebCore::xsltUnicodeSortFunction):
   61175         * xml/XSLTUnicodeSort.h:
   61176         If the platform does not use ICU, or ICU has collation support disabled, fall back to binary comparison.
   61177 
   61178 2008-01-04  Antti Koivisto  <antti (a] apple.com>
   61179 
   61180         Fix build.
   61181 
   61182         * bindings/js/JSHTMLElementWrapperFactory.cpp:
   61183 
   61184 2008-01-04  Antti Koivisto  <antti (a] apple.com>
   61185 
   61186         Reviewed by Darin.
   61187         
   61188         Partial fix for <rdar://problem/5647034>
   61189         Media tests crash if an old version of QuickTime is installed
   61190 
   61191         Disable media support if QuickTime is not current enough (>=7.3).
   61192         
   61193         Windows patch coming soon.
   61194 
   61195         * bindings/js/JSHTMLElementWrapperFactory.cpp:
   61196         (WebCore::createJSHTMLWrapper):
   61197         * bindings/js/kjs_window.cpp:
   61198         (KJS::Window::getValueProperty):
   61199         * html/HTMLElementFactory.cpp:
   61200         (WebCore::audioConstructor):
   61201         (WebCore::videoConstructor):
   61202         (WebCore::sourceConstructor):
   61203         * platform/graphics/MediaPlayer.cpp:
   61204         (WebCore::MediaPlayer::isAvailable):
   61205         * platform/graphics/MediaPlayer.h:
   61206         * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
   61207         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
   61208         (WebCore::MediaPlayerPrivate::isAvailable):
   61209 
   61210 2008-01-04  Timothy Hatcher  <timothy (a] apple.com>
   61211 
   61212         Reviewed by Darin Adler.
   61213 
   61214         <rdar://problem/5604409> JavaScript privilege escalation when Web Inspector accesses page unsafely (16011)
   61215 
   61216         Check if the property is a getter before asking for the value.
   61217         If the property is a getter, we no longer show the value.
   61218 
   61219         * page/inspector/PropertiesSidebarPane.js:
   61220         * page/inspector/inspector.css:
   61221 
   61222 2008-01-04  Dan Bernstein  <mitz (a] apple.com>
   61223 
   61224         Reviewed by Darin Adler.
   61225 
   61226         - fix synthetic bold and italic on Windows
   61227 
   61228         Covered by an existing test.
   61229 
   61230         * platform/graphics/win/FontPlatformDataWin.cpp:
   61231         (WebCore::FontPlatformData::FontPlatformData):
   61232 
   61233 2008-01-04  Alp Toker  <alp (a] atoker.com>
   61234 
   61235         GTK+ autotools build fix. Terminate empty rules.
   61236 
   61237         * GNUmakefile.am:
   61238 
   61239 2008-01-04  Lars Knoll  <lars (a] trolltech.com>
   61240 
   61241         Reviewed by Simon.
   61242 
   61243         Remove most dependencies of Widget/ScrollView onto native QWidgets.
   61244 
   61245         This also brings the code closer in line with the Windows code. Seems
   61246         to work nicely on first try :)
   61247 
   61248         * page/qt/FrameQt.cpp:
   61249         (WebCore::Frame::createScriptInstanceForWidget):
   61250         * platform/Widget.h:
   61251         * platform/qt/PlatformScreenQt.cpp:
   61252         (WebCore::screenDepth):
   61253         (WebCore::screenDepthPerComponent):
   61254         (WebCore::screenIsMonochrome):
   61255         (WebCore::screenRect):
   61256         * platform/qt/PlatformScrollBarQt.cpp:
   61257         (WebCore::PlatformScrollbar::thumbPosition):
   61258         (WebCore::PlatformScrollbar::handleMouseMoveEvent):
   61259         * platform/qt/ScrollViewQt.cpp:
   61260         (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
   61261         (WebCore::ScrollView::ScrollViewPrivate::scrollBackingStore):
   61262         (WebCore::ScrollView::updateContents):
   61263         (WebCore::ScrollView::update):
   61264         (WebCore::ScrollView::scrollRectIntoViewRecursively):
   61265         (WebCore::ScrollView::updateScrollbars):
   61266         (WebCore::ScrollView::addChild):
   61267         (WebCore::ScrollView::removeChild):
   61268         (WebCore::ScrollView::paint):
   61269         * platform/qt/WidgetQt.cpp:
   61270         (WebCore::WidgetPrivate::WidgetPrivate):
   61271         (WebCore::WidgetPrivate::~WidgetPrivate):
   61272         (WebCore::Widget::frameGeometry):
   61273         (WebCore::Widget::setFrameGeometry):
   61274         (WebCore::Widget::setCursor):
   61275         (WebCore::Widget::show):
   61276         (WebCore::Widget::hide):
   61277         (WebCore::Widget::nativeWidget):
   61278         (WebCore::Widget::setNativeWidget):
   61279         (WebCore::Widget::suppressInvalidation):
   61280         (WebCore::Widget::setSuppressInvalidation):
   61281         (WebCore::Widget::invalidateRect):
   61282         (WebCore::Widget::topLevel):
   61283         (WebCore::Widget::containingWindow):
   61284 
   61285 2008-01-04  Lars Knoll  <lars (a] trolltech.com>
   61286 
   61287         Reviewed by Simon.
   61288 
   61289         make QWebPage a QObject and get things to compile.
   61290 
   61291         Nothing works currently though.
   61292 
   61293         * platform/qt/ScrollViewQt.cpp:
   61294         (WebCore::ScrollView::updateContents):
   61295         (WebCore::ScrollView::update):
   61296         * platform/qt/WidgetQt.cpp:
   61297         (WebCore::Widget::qwidget):
   61298         (WebCore::Widget::invalidateRect):
   61299 
   61300 2008-01-04  Alp Toker  <alp (a] atoker.com>
   61301 
   61302         Reviewed by Mark Rowe.
   61303 
   61304         http://bugs.webkit.org/show_bug.cgi?id=16667
   61305         make -j is failing with the autotools based system
   61306 
   61307         Support parallel code generation. Nearly every use of explicit
   61308         multiple targets was a potential concurrency bug, though in practice
   61309         the bison rules were the first to be noticed because they took longer
   61310         to complete and broke the build immediately.
   61311 
   61312         * GNUmakefile.am:
   61313 
   61314 2008-01-04  Alp Toker  <alp (a] atoker.com>
   61315 
   61316         Reviewed by Mark Rowe.
   61317 
   61318         Re-use a single static dummy surface rather than creating and
   61319         destroying a surface for each CairoPath.
   61320 
   61321         * platform/graphics/cairo/CairoPath.h:
   61322         (WebCore::CairoPath::CairoPath):
   61323 
   61324 2008-01-04  Mark Rowe  <mrowe (a] apple.com>
   61325 
   61326         Tiger build fix.
   61327 
   61328         * platform/Threading.h: The OSAtomic functions take non-volatile pointers on Tiger.
   61329 
   61330 2008-01-03  Mark Rowe  <mrowe (a] apple.com>
   61331 
   61332         Reviewed by Maciej Stachowiak.
   61333 
   61334         Use platform-provided atomic operations in place of inline assembly to
   61335         increase portability.
   61336 
   61337         * platform/Threading.h:
   61338         (WebCore::atomicIncrement):
   61339         (WebCore::atomicDecrement):
   61340 
   61341 2008-01-03  Oliver Hunt  <oliver (a] apple.com>
   61342 
   61343         Reviewed by Maciej.
   61344 
   61345         Fix <rdar://problem/5668517> REGRESSION: Major under painting issues in SVG (carto.net dock example)
   61346 
   61347         We need to cache the absolute bounds of the <image>,
   61348         as there's no reliable way to recompute the old bounding
   61349         box one we have started layout.
   61350 
   61351         * rendering/RenderSVGImage.cpp:
   61352         (WebCore::RenderSVGImage::layout):
   61353         (WebCore::RenderSVGImage::calculateAbsoluteBounds):
   61354         * rendering/RenderSVGImage.h:
   61355 
   61356 2008-01-03  Alp Toker  <alp (a] atoker.com>
   61357 
   61358         Reviewed by Mark Rowe.
   61359 
   61360         Support building in Scratchbox, which has a version of make that fails
   61361         on wildcard syntax. Use a vpath to match IDL files instead.
   61362 
   61363         * GNUmakefile.am:
   61364 
   61365 2008-01-03  Jon Honeycutt  <jhoneycutt (a] apple.com>
   61366 
   61367         Reviewed by Darin.
   61368 
   61369         <rdar://problem/5504775> PDF page will not load first time after Adobe
   61370         Reader install, unless browser is relaunched
   61371 
   61372         Refresh and re-search the plugin database if the MIME type is not
   61373         registered.
   61374 
   61375         * plugins/win/PluginDatabaseWin.cpp:
   61376         (WebCore::PluginDatabaseWin::isMIMETypeRegistered):
   61377         * plugins/win/PluginDatabaseWin.h:
   61378 
   61379 2008-01-03  Dan Bernstein  <mitz (a] apple.com>
   61380 
   61381         Reviewed by Darin Adler.
   61382 
   61383         - fix http://bugs.webkit.org/show_bug.cgi?id=16548
   61384           <rdar://problem/5659452> REGRESSION(r28810): Font style and sizes are weird for Japanese text
   61385 
   61386         * platform/graphics/win/FontCacheWin.cpp:
   61387         (WebCore::linkedFontEnumProc): Added. This callback is used to fetch
   61388         a valid LOGFONT for a given family.
   61389         (WebCore::getLinkedFonts): Added. Returns a vector of font families
   61390         linked to the given font family by the Windows registry key
   61391         HKLM\Software\...\FontLink\SystemLink. The registry values typically
   61392         differ based on the installed language version of Windows.
   61393         (WebCore::FontCache::getFontDataForCharacters): Changed to not use MLang
   61394         font mapping, which is Windows code page based, except for characters in
   61395         the range U+2000..U+200F. Instead, this function gets the font Uniscribe
   61396         would use for the character. However, that font might not actually
   61397         contain the character, in which case GDI font linking would substitute a
   61398         different font. Therefore, this function walks the linked font list
   61399         until it finds a font that actually contains the character.
   61400 
   61401 2008-01-03  Darin Adler  <darin (a] apple.com>
   61402 
   61403         Reviewed by Mitz.
   61404 
   61405         - fix http://bugs.webkit.org/show_bug.cgi?id=16723
   61406           tables/mozilla/bugs/bug30418.html test failing due to problems updating dynamic border rules
   61407 
   61408         Test: fast/table/border-changes.html
   61409 
   61410         * html/HTMLTableElement.h:
   61411         * html/HTMLTableElement.cpp:
   61412         (WebCore::HTMLTableElement::parseMappedAttribute): Check the border type before and after
   61413         parsing attributes, rather than doing this only for the rules attribute.
   61414         (WebCore::HTMLTableElement::cellBorders): Added.
   61415         (WebCore::HTMLTableElement::getSharedCellDecl): Changed to use cellBorders to factor out the
   61416         rule about what type of borders to use.
   61417 
   61418 2008-01-02  Sam Weinig  <sam (a] webkit.org>
   61419 
   61420         Reviewed by Darin.
   61421 
   61422         Pass the prototype of WebCore JS objects up the constructor chain
   61423         rather than explicitly setting using setPrototype.  This removes many
   61424         redundant settings of the prototype on construction.  To avoid a CG 
   61425         hazard, the prototype must be constructed before calling the
   61426         constructor of the JS object.
   61427 
   61428         - JS objects that inherit from DOMObject, which all bindings objects
   61429           (except Window) do, now can't implicitly have a jsNull prototype, but
   61430           must explicitly pass it up the construction chain.
   61431 
   61432         * bindings/js/JSCSSRuleCustom.cpp:
   61433         (WebCore::toJS):
   61434         * bindings/js/JSCSSValueCustom.cpp:
   61435         (WebCore::toJS):
   61436         * bindings/js/JSDocumentCustom.cpp:
   61437         (WebCore::toJS):
   61438         * bindings/js/JSEventCustom.cpp:
   61439         (WebCore::toJS):
   61440         * bindings/js/JSEventTargetNode.cpp:
   61441         (WebCore::JSEventTargetNode::JSEventTargetNode):
   61442         * bindings/js/JSEventTargetNode.h:
   61443         * bindings/js/JSHTMLAllCollection.h:
   61444         (WebCore::JSHTMLAllCollection::JSHTMLAllCollection):
   61445         * bindings/js/JSHTMLAudioElementConstructor.cpp:
   61446         (WebCore::JSHTMLAudioElementConstructor::JSHTMLAudioElementConstructor):
   61447         * bindings/js/JSHTMLCollectionCustom.cpp:
   61448         (WebCore::getNamedItems):
   61449         (WebCore::toJS):
   61450         * bindings/js/JSHTMLElementWrapperFactory.cpp:
   61451         (WebCore::createJSHTMLWrapper):
   61452         * bindings/js/JSHTMLFormElementCustom.cpp:
   61453         (WebCore::JSHTMLFormElement::nameGetter):
   61454         * bindings/js/JSHTMLInputElementBase.cpp:
   61455         (WebCore::JSHTMLInputElementBase::JSHTMLInputElementBase):
   61456         * bindings/js/JSHTMLInputElementBase.h:
   61457         * bindings/js/JSHTMLOptionElementConstructor.cpp:
   61458         (WebCore::JSHTMLOptionElementConstructor::JSHTMLOptionElementConstructor):
   61459         * bindings/js/JSLocation.cpp:
   61460         (WebCore::JSLocation::JSLocation):
   61461         * bindings/js/JSLocation.h:
   61462         * bindings/js/JSNamedNodesCollection.cpp:
   61463         (WebCore::JSNamedNodesCollection::JSNamedNodesCollection):
   61464         * bindings/js/JSNamedNodesCollection.h:
   61465         * bindings/js/JSNodeCustom.cpp:
   61466         (WebCore::toJS):
   61467         * bindings/js/JSSVGElementWrapperFactory.cpp:
   61468         (WebCore::createJSSVGWrapper):
   61469         * bindings/js/JSSVGPathSegCustom.cpp:
   61470         (WebCore::toJS):
   61471         * bindings/js/JSStyleSheetCustom.cpp:
   61472         (WebCore::toJS):
   61473         * bindings/js/JSXMLHttpRequest.cpp:
   61474         (KJS::JSXMLHttpRequestConstructorImp::JSXMLHttpRequestConstructorImp):
   61475         (KJS::JSXMLHttpRequestConstructorImp::construct):
   61476         (KJS::JSXMLHttpRequest::JSXMLHttpRequest):
   61477         * bindings/js/JSXMLHttpRequest.h:
   61478         * bindings/js/JSXSLTProcessor.cpp:
   61479         (KJS::JSXSLTProcessor::JSXSLTProcessor):
   61480         (KJS::XSLTProcessorConstructorImp::XSLTProcessorConstructorImp):
   61481         (KJS::XSLTProcessorConstructorImp::implementsConstruct):
   61482         (KJS::XSLTProcessorConstructorImp::construct):
   61483         * bindings/js/JSXSLTProcessor.h:
   61484         * bindings/js/kjs_binding.h:
   61485         (KJS::DOMObject::DOMObject):
   61486         (KJS::cacheDOMObject):
   61487         (KJS::cacheSVGDOMObject):
   61488         * bindings/js/kjs_css.cpp:
   61489         (WebCore::JSRGBColor::JSRGBColor):
   61490         (WebCore::getJSRGBColor):
   61491         * bindings/js/kjs_css.h:
   61492         * bindings/js/kjs_events.cpp:
   61493         (WebCore::JSClipboard::JSClipboard):
   61494         (WebCore::toJS):
   61495         * bindings/js/kjs_events.h:
   61496         * bindings/js/kjs_html.cpp:
   61497         (WebCore::ImageConstructorImp::ImageConstructorImp):
   61498         * bindings/js/kjs_navigator.cpp:
   61499         (KJS::Navigator::Navigator):
   61500         (KJS::PluginBase::PluginBase):
   61501         * bindings/js/kjs_navigator.h:
   61502         * bindings/js/kjs_window.cpp:
   61503         (KJS::Window::Window):
   61504         (KJS::Window::location):
   61505         (KJS::Window::getValueProperty):
   61506         * bindings/js/kjs_window.h:
   61507         * bindings/scripts/CodeGeneratorJS.pm:
   61508 
   61509 2008-01-03  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   61510 
   61511         Reviewed by Alp.
   61512 
   61513         -This is from http://bugs.webkit.org/show_bug.cgi?id=16115
   61514 
   61515         Change the Gtk ContextMenuItem code to generate the GtkMenuItem
   61516         or GtkCheckMenuItem on the fly. Currently we will create a
   61517         GtkCheckMenuItem if the ContextMenuItem has been checked. What needs
   61518         to be done is to change WebCore to tell the platform code if an item
   61519         is checkable or not.
   61520 
   61521         * platform/ContextMenuItem.h:
   61522         (WebCore::PlatformMenuItemDescription::PlatformMenuItemDescription):
   61523         * platform/gtk/ContextMenuGtk.cpp:
   61524         (WebCore::ContextMenu::appendItem):
   61525         * platform/gtk/ContextMenuItemGtk.cpp:
   61526         (WebCore::ContextMenuItem::ContextMenuItem):
   61527         (WebCore::ContextMenuItem::~ContextMenuItem):
   61528         (WebCore::ContextMenuItem::createNativeMenuItem):
   61529         (WebCore::ContextMenuItem::releasePlatformDescription):
   61530         (WebCore::ContextMenuItem::type):
   61531         (WebCore::ContextMenuItem::setType):
   61532         (WebCore::ContextMenuItem::action):
   61533         (WebCore::ContextMenuItem::setAction):
   61534         (WebCore::ContextMenuItem::platformSubMenu):
   61535         (WebCore::ContextMenuItem::setSubMenu):
   61536         (WebCore::ContextMenuItem::setChecked):
   61537 
   61538 2008-01-03  Dan Bernstein  <mitz (a] apple.com>
   61539 
   61540         Rubber-stamped by Adam Roben.
   61541 
   61542         - update the project hierarchy to match the on-disk organization of
   61543           the platform directory.
   61544 
   61545         * WebCore.vcproj/WebCore.vcproj:
   61546 
   61547 2008-01-03  Adam Roben  <aroben (a] apple.com>
   61548 
   61549         Fix a buffer overrun and a leak introduced in r29098
   61550 
   61551         Reviewed by Mark.
   61552 
   61553         * platform/text/StringImpl.cpp:
   61554         (WebCore::StringImpl::StringImpl): Only allocate one buffer, and make
   61555         it be big enough to hold the string contents plus the null terminator.
   61556 
   61557 2008-01-03  Simon Hausmann  <hausmann (a] webkit.org>
   61558 
   61559         Reviewed by Lars.
   61560 
   61561         Added the first revision of QWebView and started moving functionality from QWebPave over to QWebView and QWebFrame.
   61562 
   61563         * WebCore.pro:
   61564 
   61565 2008-01-03  Alp Toker  <alp (a] atoker.com>
   61566 
   61567         Suggested by Mark Rowe.
   61568 
   61569         Fix indentation and remove trailing whitespace.
   61570 
   61571         * platform/network/curl/ResourceHandleManager.cpp:
   61572 
   61573 2008-01-03  Luca Bruno  <lethalman88 (a] gmail.com>
   61574 
   61575         Reviewed by Alp Toker.
   61576 
   61577         Fix HTTP POST-based logins to sites like Facebook, GMail by ensuring
   61578         that the two POST methods don't conflict.
   61579 
   61580         * platform/network/curl/ResourceHandleManager.cpp:
   61581         (WebCore::ResourceHandleManager::setupPOST):
   61582 
   61583 2008-01-02  Darin Adler  <darin (a] apple.com>
   61584 
   61585         - touched some files to try to get the Windows buildbot building again
   61586 
   61587 2008-01-02  Dan Bernstein  <mitz (a] apple.com>
   61588 
   61589         Reviewed by Sam Weinig.
   61590 
   61591         - fix small caps rendering
   61592 
   61593         Covered by an existing test.
   61594 
   61595         * platform/graphics/win/FontDataWin.cpp:
   61596         (WebCore::FontData::smallCapsFontData):
   61597 
   61598 2008-01-02  Antti Koivisto  <antti (a] apple.com>
   61599 
   61600         Reviewed by Oliver.
   61601 
   61602         Calculate video position and size within the renderer box in WebCore. This
   61603         way the aspect ratio calculation is not needed in each MediaPlayer implementation.
   61604         
   61605         This fixes video aspect ratio on Windows.
   61606         
   61607         Covered by an existing pixel test.
   61608 
   61609         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
   61610         (WebCore::MediaPlayerPrivate::createQTMovieView):
   61611         * rendering/RenderVideo.cpp:
   61612         (WebCore::RenderVideo::videoBox):
   61613         (WebCore::RenderVideo::paintReplaced):
   61614         (WebCore::RenderVideo::updatePlayer):
   61615         * rendering/RenderVideo.h:
   61616 
   61617 2008-01-02  Ada Chan  <adachan (a] apple.com>
   61618 
   61619         Fix windows build.
   61620 
   61621         * WebCore.vcproj/WebCore.vcproj:
   61622 
   61623 2008-01-02  John Sullivan  <sullivan (a] apple.com>
   61624 
   61625         Reviewed by Dan Bernstein
   61626         
   61627         - fixed <rdar://problem/5579010> REGRESSION: Safari inserts newlines in tab names when U+2028 is present
   61628 
   61629         * loader/DocumentLoader.cpp:
   61630         (WebCore::canonicalizedTitle):
   61631         in the code that replaces control characters with white space, also replace the unicode line separator
   61632         and paragraph separator characters
   61633 
   61634 2008-01-02  Darin Adler  <darin (a] apple.com>
   61635 
   61636         - fix buffer overruns seen on buildbot
   61637 
   61638         * platform/text/StringImpl.cpp:
   61639         (WebCore::countCharacter): Added this.
   61640         (WebCore::StringImpl::toCoordsArray): Use countCharacter instead of incorrect find expression.
   61641         (WebCore::StringImpl::toLengthArray): Ditto.
   61642         (WebCore::StringImpl::replace): Added assertions.
   61643 
   61644 2008-01-02  Darin Adler  <darin (a] apple.com>
   61645 
   61646         Reviewed by Maciej.
   61647 
   61648         - fix http://bugs.webkit.org/show_bug.cgi?id=16657
   61649           Acid3 failure since table.caption and table.thead do not work for nodes added by appendChild
   61650         - fix http://bugs.webkit.org/show_bug.cgi?id=16659
   61651           Acid3 expects HTMLTableElement.rows to include a <tr> element that is an immediate child of the <table>
   61652 
   61653         Tests: dom/html/level2/html/HTMLCollection07.html
   61654                dom/html/level2/html/HTMLCollection08.html
   61655                dom/html/level2/xhtml/HTMLCollection07.xhtml
   61656                dom/html/level2/xhtml/HTMLCollection08.xhtml
   61657                fast/dom/HTMLTableElement/early-acid3-65-excerpt.html
   61658                fast/dom/HTMLTableElement/early-acid3-66-excerpt.html
   61659 
   61660         * GNUmakefile.am: Added HTMLTableRowsCollection.
   61661         * WebCore.pro: Ditto.
   61662         * WebCore.vcproj/WebCore.vcproj: Ditto.
   61663         * WebCore.xcodeproj/project.pbxproj: Ditto.
   61664         * WebCoreSources.bkl: Ditto.
   61665 
   61666         * dom/XMLTokenizer.cpp: Took out stray include.
   61667 
   61668         * html/HTMLCollection.cpp:
   61669         (WebCore::HTMLCollection::itemAfter): Removed all the table rows code, since we now use
   61670         a separate class for that collection. Also got rid of the distinct types for custom collections
   61671         that don't need them (use Other for both).
   61672         * html/HTMLCollection.h: Also made firstItem non-virtual because it doesn't need to be virtual.
   61673 
   61674         * html/HTMLFormCollection.cpp:
   61675         (WebCore::HTMLFormCollection::HTMLFormCollection): Use Other instead of FormElements
   61676         for the HTMLCollection type.
   61677 
   61678         * html/HTMLTableElement.cpp:
   61679         (WebCore::HTMLTableElement::HTMLTableElement): Eliminated m_head, m_foot, m_firstBody, and m_caption.
   61680         (WebCore::HTMLTableElement::caption): Added non-inline version. Finds the caption rather than
   61681         keeping a pointer to it.
   61682         (WebCore::HTMLTableElement::setCaption): Rewrote.
   61683         (WebCore::HTMLTableElement::tHead): Ditto.
   61684         (WebCore::HTMLTableElement::setTHead): Ditto.
   61685         (WebCore::HTMLTableElement::tFoot): Ditto.
   61686         (WebCore::HTMLTableElement::setTFoot): Ditto.
   61687         (WebCore::HTMLTableElement::createTHead): Ditto.
   61688         (WebCore::HTMLTableElement::deleteTHead): Ditto.
   61689         (WebCore::HTMLTableElement::createTFoot): Ditto.
   61690         (WebCore::HTMLTableElement::deleteTFoot): Ditto.
   61691         (WebCore::HTMLTableElement::createCaption): Ditto.
   61692         (WebCore::HTMLTableElement::deleteCaption): Ditto.
   61693         (WebCore::HTMLTableElement::lastBody): Added.
   61694         (WebCore::HTMLTableElement::insertRow): Rewrote to use a loop based on code in HTMLTableRowsCollection.
   61695         This is different from the old code mainly in how it handles rows outside any section.
   61696         (WebCore::HTMLTableElement::deleteRow): Ditto.
   61697         (WebCore::HTMLTableElement::addChild): Removed code to set the various members. Keeping pointers to
   61698         these was a possible source of serious bugs too, including crashes with stale pointers, although I
   61699         didn't write any test cases to prove those bugs existed.
   61700         (WebCore::HTMLTableElement::parseMappedAttribute): Changed the rules code to visit all cells, not
   61701         just the cells of the first body. I believe this fixed rendering on some table tests. I think the code
   61702         visits too many cells and also the use of recursion is overkill, but I didn't try to fix that.
   61703         (WebCore::HTMLTableElement::rows): Changed to use the new HTMLTableRowsCollection.
   61704         * html/HTMLTableElement.h: Changed functions to return PassRefPtr, which can be important if strange
   61705         things like DOM mutation events take things ot of the tree before they are safely referenced by
   61706         JavaScript wrappers. Also changed functions to take PassRefPtr and added exceptions. Removed unneeded
   61707         firstTBody and setTBody functions and childrenChanged function override, as well as unused Rules and
   61708         Frame enums. Removed m_head, m_foot, m_firstBody, and m_caption, and added lastBody function. Removed
   61709         unneeded friend declaration for HTMLTableCellElement.
   61710         * html/HTMLTableElement.idl: Allow the setteres for caption, tHead, and tFoot to raise exceptions.
   61711 
   61712         * html/HTMLTableRowsCollection.cpp: Added. Implements the HTML 5 rule for which rows are in the
   61713         collection in which order.
   61714         * html/HTMLTableRowsCollection.h: Added.
   61715 
   61716         * loader/FTPDirectoryDocument.cpp:
   61717         (WebCore::FTPDirectoryTokenizer::appendEntry): Use the standard insertRow function instead of
   61718         coming up with our own way of inserting a row. Simplifies things -- we can remove the code to
   61719         create a tbody element.
   61720 
   61721 2008-01-02  Darin Adler  <darin (a] apple.com>
   61722 
   61723         Reviewed by Alice and Tim.
   61724 
   61725         - try to fix GTK and Qt builds
   61726 
   61727         * platform/win/ScrollViewWin.cpp:
   61728         (WebCore::ScrollView::scroll): Improve logic slightly for the case of
   61729         vertical scrolling when there's no vertical scroll bar.
   61730 
   61731         * platform/gtk/ScrollViewGtk.cpp:
   61732         (WebCore::ScrollView::scroll): Copy the code from Windows. Maybe this
   61733         should be factored differently.
   61734         * platform/qt/ScrollViewQt.cpp:
   61735         (WebCore::ScrollView::scroll): Ditto.
   61736 
   61737 2008-01-02  Darin Adler  <darin (a] apple.com>
   61738 
   61739         Reviewed by Anders.
   61740 
   61741         - http://bugs.webkit.org/show_bug.cgi?id=16712
   61742           change StringImpl to take and return PassRefPtr instead of raw pointers
   61743 
   61744         Also eliminated use of const StringImpl. Since StringImpl is immutable there
   61745         is no distinction between a const and non-const one at the moment.
   61746 
   61747         * WebCore.base.exp: Updated.
   61748 
   61749         * css/CSSHelper.cpp:
   61750         (WebCore::parseURL): Make String directly, not by making a StringImpl.
   61751         * dom/Attr.cpp:
   61752         (WebCore::Attr::createTextChild): Convert AtomicString to String with domString,
   61753         not via StringImpl.
   61754         (WebCore::Attr::setValue): Remove unneed call to impl() when passing a String
   61755         to a function that takes a String.
   61756 
   61757         * dom/CDATASection.cpp: Removed unused constructor.
   61758         (WebCore::CDATASection::cloneNode): Added a now-needed .get().
   61759         (WebCore::CDATASection::createNew): Changed function to take a PassRefPtr.
   61760         * dom/CDATASection.h:
   61761 
   61762         * dom/CharacterData.cpp:
   61763         (WebCore::CharacterData::CharacterData): Removed unneeded initialization and
   61764         ref() now that the string is a RefPtr. Also updated to not call "new StringImpl".
   61765         (WebCore::CharacterData::~CharacterData): Removed unneeded deref() since it's
   61766         a RefPtr.
   61767         (WebCore::CharacterData::setData): More of that.
   61768         (WebCore::CharacterData::substringData): Ditto.
   61769         (WebCore::CharacterData::appendData): Ditto.
   61770         (WebCore::CharacterData::insertData): Ditto.
   61771         (WebCore::CharacterData::deleteData): Ditto.
   61772         (WebCore::CharacterData::replaceData): Ditto.
   61773         (WebCore::CharacterData::nodeValue): Ditto.
   61774         (WebCore::CharacterData::dispatchModifiedEvent): Ditto.
   61775         (WebCore::CharacterData::dump): Ditto.
   61776         * dom/CharacterData.h: Changed to use a RefPtr. I could have used a String
   61777         instead, but since String adds extra branches to handle 0, I figured it was
   61778         more conservative to just use RefPtr. Later it would be good to figure out
   61779         which is preferred style and be more consistent. Maybe we'll phase out
   61780         StringImpl, or maybe we'll go the other way and use it more since it can be
   61781         more efficient.
   61782 
   61783         * dom/DOMImplementation.cpp:
   61784         (WebCore::addString): Changed set to use String rather than StringImpl.
   61785         (WebCore::isSVG10Feature): Ditto.
   61786         (WebCore::isSVG11Feature): Ditto.
   61787         (WebCore::DOMImplementation::createDocument): Replaced custom code to
   61788         find a colon with a call to String::find.
   61789 
   61790         * dom/Range.cpp:
   61791         (WebCore::Range::insertNode): Updated since the result of splitText is now
   61792         a PassRefPtr.
   61793 
   61794         * dom/Text.cpp:
   61795         (WebCore::Text::splitText): Updated since str is now a RefPtr. Also made the
   61796         result of this function be a PassRefPtr.
   61797         (WebCore::Text::createRenderer): Ditto.
   61798         (WebCore::Text::createNew): Made the parameter and result both be PassRefPtr.
   61799         * dom/Text.h:
   61800 
   61801         * html/HTMLElement.cpp:
   61802         (WebCore::HTMLElement::nodeName): Use String::upper.
   61803 
   61804         * html/HTMLInputElement.cpp:
   61805         (WebCore::numGraphemeClusters): Remove now-unneeded const.
   61806         (WebCore::numCharactersInGraphemeClusters): Ditto.
   61807 
   61808         * html/HTMLTokenizer.cpp:
   61809         (WebCore::HTMLTokenizer::processToken): Updated for function name change.
   61810 
   61811         * platform/text/AtomicString.cpp:
   61812         (WebCore::CStringTranslator::translate): Updated since there is no longer
   61813         a constructor that takes a string.
   61814 
   61815         * platform/text/PlatformString.h: Added new constructors that take
   61816         PassRefPtr and RefPtr. Removed misleading comment.
   61817 
   61818         * platform/text/String.cpp:
   61819         (WebCore::String::String): Changed to use StringImpl::create, which handles
   61820         the empty string automatically.
   61821         (WebCore::String::append): Ditto.
   61822         (WebCore::String::charactersWithNullTermination): Similar.
   61823         (WebCore::String::format): Ditto.
   61824 
   61825         * platform/text/StringHash.h: Took out unneeded const.
   61826 
   61827         * platform/text/StringImpl.cpp:
   61828         (WebCore::deleteUCharVector): Changed to take a const pointer since the
   61829         buffers are now const UChar buffers.
   61830         (WebCore::StringImpl::StringImpl): Removed some constructors. Got rid of the
   61831         separate init functions. The constructors are now private and used only in
   61832         the create functions and one or two other places.
   61833         (WebCore::StringImpl::containsOnlyWhitespace): Removed now-meaningless const.
   61834         (WebCore::StringImpl::substring): Ditto. Also changed return value to be a
   61835         PassRefPtr.
   61836         (WebCore::StringImpl::characterStartingAt): Ditto.
   61837         (WebCore::StringImpl::toLength): Ditto.
   61838         (WebCore::StringImpl::toCoordsArray): Ditto.
   61839         (WebCore::StringImpl::toLengthArray): Ditto.
   61840         (WebCore::StringImpl::isLower): Ditto.
   61841         (WebCore::StringImpl::lower): Ditto. Changed to use Vector and adopt so we
   61842         don't have to use new directly here. Makes empty string handling more consistent.
   61843         (WebCore::StringImpl::upper): Ditto.
   61844         (WebCore::StringImpl::secure): Ditto.
   61845         (WebCore::StringImpl::foldCase): Ditto.
   61846         (WebCore::StringImpl::stripWhiteSpace): Ditto.
   61847         (WebCore::StringImpl::simplifyWhiteSpace): Ditto.
   61848         (WebCore::StringImpl::capitalize): Ditto.
   61849         (WebCore::StringImpl::toInt): Removed now-meaningless const.
   61850         (WebCore::StringImpl::toInt64): Ditto.
   61851         (WebCore::StringImpl::toUInt64): Ditto.
   61852         (WebCore::StringImpl::toDouble): Ditto.
   61853         (WebCore::StringImpl::toFloat): Ditto.
   61854         (WebCore::StringImpl::find): Ditto.
   61855         (WebCore::StringImpl::reverseFind): Ditto.
   61856         (WebCore::StringImpl::endsWith): Ditto.
   61857         (WebCore::StringImpl::replace): Ditto.
   61858         (WebCore::equal): Ditto.
   61859         (WebCore::equalIgnoringCase): Ditto.
   61860         (WebCore::StringImpl::ascii): Ditto.
   61861         (WebCore::StringImpl::defaultWritingDirection): Ditto.
   61862         (WebCore::StringImpl::createStrippingNullCharacters): Ditto.
   61863         (WebCore::StringImpl::adopt): Added special case so this uses the shared
   61864         empty string like other functions. Also optimized the common case where the
   61865         vector happens to already have the right size so we don't do a fastRealloc
   61866         at all in those cases.
   61867         (WebCore::StringImpl::create): Added. These are now the public functions for
   61868         creating new StringImpl objects. They all implement the shared empty string.
   61869         (WebCore::StringImpl::createWithTerminatingNullCharacter):
   61870         * platform/text/StringImpl.h:
   61871 
   61872         * platform/text/cf/StringCF.cpp:
   61873         (WebCore::String::String): Use StringImpl::create instead of new StringImpl.
   61874         * platform/text/cf/StringImplCF.cpp:
   61875         (WebCore::StringImpl::createCFString): Removed now-obsolete const.
   61876         * platform/text/mac/StringImplMac.mm:
   61877         (WebCore::StringImpl::operator NSString *): Ditto.
   61878         * platform/text/mac/StringMac.mm:
   61879         (WebCore::String::String): Use StringImpl::create instead of new StringImpl.
   61880         * platform/text/qt/StringQt.cpp:
   61881         (WebCore::String::String): Ditto.
   61882         * platform/text/wx/StringWx.cpp:
   61883         (WebCore::String::String): Ditto.
   61884         * rendering/RenderBR.cpp:
   61885         (WebCore::RenderBR::RenderBR): Ditto.
   61886 
   61887         * rendering/RenderSVGInlineText.cpp:
   61888         (WebCore::RenderSVGInlineText::RenderSVGInlineText): Use PassRefPtr.
   61889         * rendering/RenderSVGInlineText.h:
   61890 
   61891         * rendering/RenderText.cpp:
   61892         (WebCore::charactersAreAllASCII): Removed now-unneeded const.
   61893         * rendering/RenderTextFragment.cpp:
   61894         (WebCore::RenderTextFragment::originalText): Use RefPtr.
   61895 
   61896 2008-01-02  Timothy Hatcher  <timothy (a] apple.com>
   61897 
   61898         Reviewed by Oliver Hunt.
   61899 
   61900         <rdar://problem/5618086> WebInspector does not expand the DOM tree after being closed
   61901 
   61902         Closing the Web Inspector causes the DOM tree outline to be torn down, clearing the
   61903         internal element lookup tables. The represented DOM node object still holds the identifier
   61904         it was assigned, and a later call to findTreeElement will use that original identifier
   61905         against a cleared lookup table. In that case we need to fallback on DOM ancestor lookup.
   61906 
   61907         * page/inspector/treeoutline.js:
   61908         (TreeOutline.prototype.findTreeElement): If the DOM node already had a __treeElementIdentifier,
   61909         but the TreeOutline no longer has the element in the _knownTreeElements list do an ancestor lookup
   61910         instead of an early return.
   61911 
   61912 2008-01-02  Alice Liu  <alice.liu (a] apple.com>
   61913 
   61914         Reviewed by Maciej.
   61915 
   61916         Fixed <rdar://5283861> (problems scrolling in gmail message content area)
   61917 
   61918         * platform/ScrollView.h:
   61919         * platform/win/ScrollViewWin.cpp:
   61920         (WebCore::ScrollView::scroll):
   61921          Changed return value to bool to reflect success of scroll attempt
   61922 
   61923 2008-01-02  Alexey Proskuryakov  <ap (a] webkit.org>
   61924 
   61925         Fixed a typo (pointed out in review, but I somehow missed it at first).
   61926 
   61927         * editing/EditorCommand.cpp: (WebCore::executeDelete):
   61928 
   61929 2008-01-02  Alexey Proskuryakov  <ap (a] webkit.org>
   61930 
   61931         Reviewed by Darin.
   61932 
   61933         Resolved several FIXMEs in EditorCommand.
   61934         Made recently added commands hidden from JS again.
   61935         Removed BackwardDelete implementation, which used to be dead code, but got exposed now.
   61936 
   61937         Tests: editing/execCommand/delete-no-scroll.html
   61938                editing/execCommand/forward-delete-no-scroll.html
   61939                editing/execCommand/insert-line-break-no-scroll.html
   61940 
   61941         * editing/EditorCommand.cpp:
   61942         (WebCore::executeDelete):
   61943         (WebCore::executeForwardDelete):
   61944         (WebCore::executeInsertLineBreak):
   61945         (WebCore::supportedFromMenuOrKeyBinding):
   61946         (WebCore::CommandEntry::):
   61947 
   61948 2008-01-02  Alexey Proskuryakov  <ap (a] webkit.org>
   61949 
   61950         Reviewed by Darin.
   61951 
   61952         http://bugs.webkit.org/show_bug.cgi?id=14555
   61953         action=mailto + method=get - The generated mailto URI is incorrect and the hvalues are encoded twice
   61954 
   61955         http://bugs.webkit.org/show_bug.cgi?id=14774
   61956         Submitted data only includes first input item
   61957 
   61958         Reworked encoding of mailto URLs to match other browsers.
   61959         Moved most of related logic from FrameLoader::submitForm() to HTMLFormElement::submit().
   61960 
   61961         Tests: fast/forms/mailto/advanced-get.html
   61962                fast/forms/mailto/advanced-put.html
   61963                fast/forms/mailto/get-multiple-items-text-plain.html
   61964                fast/forms/mailto/get-multiple-items-x-www-form-urlencoded.html
   61965                fast/forms/mailto/get-multiple-items.html
   61966                fast/forms/mailto/get-non-ascii.html
   61967                fast/forms/mailto/get-non-ascii-text-plain.html
   61968                fast/forms/mailto/get-overwrite-query.html
   61969                fast/forms/mailto/post-append-query.html
   61970                fast/forms/mailto/post-multiple-items-multipart-form-data.html
   61971                fast/forms/mailto/post-multiple-items-text-plain.html
   61972                fast/forms/mailto/post-multiple-items-x-www-form-urlencoded.html
   61973                fast/forms/mailto/post-multiple-items.html
   61974 
   61975         * html/HTMLFormElement.cpp:
   61976         (WebCore::HTMLFormElement::submit):
   61977         * loader/FrameLoader.cpp:
   61978         (WebCore::FrameLoader::submitForm):
   61979 
   61980 2008-01-02  Mark Rowe  <mrowe (a] apple.com>
   61981 
   61982         Autotools build fix.
   61983 
   61984         * GNUmakefile.am: Remove files before generating them, not after.
   61985 
   61986 2008-01-02  Mark Rowe  <mrowe (a] apple.com>
   61987 
   61988         Rubber-stamped by Alp Toker.
   61989 
   61990         Add missing dependencies to some GNUmakefile.am rules.
   61991 
   61992         * GNUmakefile.am:
   61993 
   61994 2008-01-02  Mark Rowe  <mrowe (a] apple.com>
   61995 
   61996         Reviewed by Alp Toker.
   61997 
   61998         Autotools build fix.  Make can expand $@ to any of the targets for the rule,
   61999         while we always want to use the name of the .cpp file as the output file.
   62000 
   62001         * GNUmakefile.am:
   62002 
   62003 2008-01-02  Luca Bruno  <lethalman88 (a] gmail.com>
   62004 
   62005         Reviewed by Alp Toker.
   62006 
   62007         http://bugs.webkit.org/show_bug.cgi?id=16115
   62008         [GTK] ContextMenu and ContextMenuItem lacks an implementation
   62009 
   62010         Add context menu support.
   62011 
   62012         Based on a patch by Holger Freyther.
   62013 
   62014         * platform/gtk/ContextMenuGtk.cpp:
   62015         (WebCore::menuItemActivated):
   62016         (WebCore::ContextMenu::ContextMenu):
   62017         (WebCore::ContextMenu::~ContextMenu):
   62018         (WebCore::ContextMenu::appendItem):
   62019         (WebCore::ContextMenu::setPlatformDescription):
   62020         (WebCore::ContextMenu::releasePlatformDescription):
   62021         * platform/gtk/ContextMenuItemGtk.cpp:
   62022         (WebCore::ContextMenuItem::ContextMenuItem):
   62023         (WebCore::ContextMenuItem::~ContextMenuItem):
   62024         (WebCore::ContextMenuItem::releasePlatformDescription):
   62025         (WebCore::ContextMenuItem::type):
   62026         (WebCore::ContextMenuItem::action):
   62027         (WebCore::ContextMenuItem::setAction):
   62028         (WebCore::ContextMenuItem::platformSubMenu):
   62029         (WebCore::ContextMenuItem::setSubMenu):
   62030         (WebCore::ContextMenuItem::setChecked):
   62031         (WebCore::ContextMenuItem::setEnabled):
   62032 
   62033 2008-01-02  Alp Toker  <alp (a] atoker.com>
   62034 
   62035         GTK+ autotools build fix. Track changes in r29073.
   62036 
   62037         * GNUmakefile.am:
   62038 
   62039 2008-01-01  Darin Adler  <darin (a] apple.com>
   62040 
   62041         - fix release build
   62042 
   62043         * bindings/js/kjs_binding.cpp:
   62044         (KJS::setDOMException): Initialize to avoid uninitialized variable warning.
   62045         Removed default so we get a warning if there's a missing case.
   62046 
   62047 2008-01-01  David D. Kilzer  <ddkilzer (a] webkit.org>
   62048 
   62049         Scripting MIME Types application/ecmascript, application/javascript not viewable
   62050         <http://bugs.webkit.org/show_bug.cgi?id=11063>
   62051 
   62052         Reviewed by Darin.
   62053 
   62054         This patch consolidates the list of acceptable MIME types for JavaScript
   62055         source into the MIMETypeRegistry class, and replaces checks for these
   62056         types with a call to MIMETypeRegistry::isSupportedJavaScriptMIMEType().
   62057 
   62058         No tests added since viewing JavaScript source is not testable.
   62059 
   62060         * dom/DOMImplementation.cpp:
   62061         (WebCore::DOMImplementation::isTextMIMEType): Use
   62062         MIMETypeRegistry::isSupportedJavaScriptMIMEType() instead of a single
   62063         hard-coded MIME type, "application/x-javascript".
   62064 
   62065         * html/HTMLScriptElement.cpp:
   62066         (WebCore::HTMLScriptElement::shouldExecuteAsJavaScript): Moved list of
   62067         JavaScript MIME types from here to
   62068         MIMETypeRegistry::initialiseSupportedJavaScriptMIMETypes().
   62069 
   62070         * platform/MIMETypeRegistry.cpp:
   62071         (WebCore::initialiseSupportedJavaScriptMIMETypes): Added. List of
   62072         MIME types came from HTMLScriptElement::shouldExecuteAsJavaScript().
   62073         (WebCore::initialiseSupportedNonImageMimeTypes): Remove single
   62074         hard-coded MIME type, "application/x-javascript", from the list.
   62075         (WebCore::initialiseMIMETypeRegistry): Initialise
   62076         supportedJavaScriptMIMETypes, then pre-populate supportedNonImageMIMETypes
   62077         with values in supportedJavaScriptMIMETypes.
   62078         (WebCore::MIMETypeRegistry::isSupportedJavaScriptMIMEType): Added.
   62079 
   62080         * platform/MIMETypeRegistry.h: Added isSupportedJavaScriptMIMEType().
   62081 
   62082 2008-01-01  Sam Weinig  <sam (a] webkit.org>
   62083 
   62084         Reviewed by Darin.
   62085 
   62086         Patch for http://bugs.webkit.org/show_bug.cgi?id=16691
   62087         Use real JS objects for the rest of the DOMExceptions (EventException, RangeException, etc)
   62088 
   62089         - Create JS objects for all the different types of exceptions, each with there own prototype and constructor.
   62090         - Abstract all the logic and storage for exception classes in to an ExceptionBase class.
   62091         - Move specialized ExceptionCodes into the exception classes. (ie. the EventExceptionCode enum is now in EventException).
   62092 
   62093         Tests: fast/dom/DOMException/EventException.html
   62094                fast/dom/DOMException/RangeException.html
   62095                fast/dom/DOMException/XPathException.html
   62096                http/tests/xmlhttprequest/XMLHttpRequestException.html
   62097                svg/custom/SVGException.html
   62098 
   62099         * DerivedSources.make:
   62100         * WebCore.pro:
   62101         * WebCore.vcproj/WebCore.vcproj:
   62102         * WebCore.xcodeproj/project.pbxproj:
   62103         * WebCoreSources.bkl:
   62104         * bindings/js/JSSVGMatrixCustom.cpp:
   62105         (WebCore::JSSVGMatrix::inverse):
   62106         (WebCore::JSSVGMatrix::rotateFromVector):
   62107         * bindings/js/kjs_binding.cpp:
   62108         (KJS::setDOMException):
   62109         * bindings/scripts/CodeGeneratorJS.pm: Use the constant values defined
   62110         in the IDL as the ObjC bindings do.
   62111         * bindings/scripts/CodeGeneratorObjC.pm:
   62112         * dom/DOMCoreException.cpp: Removed.
   62113         * dom/DOMCoreException.h:
   62114         (WebCore::DOMCoreException::DOMCoreException):
   62115         * dom/DOMCoreException.idl:
   62116         * dom/Event.h:
   62117         * dom/EventException.h: Copied from WebCore/dom/DOMCoreException.h.
   62118         (WebCore::EventException::EventException):
   62119         (WebCore::EventException::):
   62120         * dom/EventException.idl: Copied from WebCore/dom/DOMCoreException.idl.
   62121         * dom/EventTargetNode.cpp:
   62122         (WebCore::EventTargetNode::dispatchEvent):
   62123         * dom/ExceptionBase.cpp: Copied from WebCore/dom/DOMCoreException.cpp.
   62124         (WebCore::ExceptionBase::ExceptionBase):
   62125         (WebCore::ExceptionBase::toString):
   62126         * dom/ExceptionBase.h: Copied from WebCore/dom/DOMCoreException.h.
   62127         (WebCore::ExceptionBase::code):
   62128         * dom/ExceptionCode.cpp:
   62129         (WebCore::getExceptionCodeDescription):
   62130         * dom/ExceptionCode.h:
   62131         * dom/Range.cpp:
   62132         (WebCore::Range::insertNode):
   62133         (WebCore::Range::checkNodeWOffset):
   62134         (WebCore::Range::checkNodeBA):
   62135         (WebCore::Range::selectNode):
   62136         (WebCore::Range::selectNodeContents):
   62137         (WebCore::Range::surroundContents):
   62138         * dom/RangeException.h:
   62139         (WebCore::RangeException::RangeException):
   62140         (WebCore::RangeException::):
   62141         * dom/RangeException.idl:
   62142         * page/DOMWindow.idl:
   62143         * svg/SVGColor.cpp:
   62144         (WebCore::SVGColor::setRGBColor):
   62145         * svg/SVGException.h:
   62146         (WebCore::SVGException::SVGException):
   62147         (WebCore::SVGException::):
   62148         * svg/SVGException.idl:
   62149         * svg/SVGLocatable.cpp:
   62150         (WebCore::SVGLocatable::getTransformToElement):
   62151         * xml/XMLHttpRequest.cpp:
   62152         (WebCore::XMLHttpRequest::dispatchEvent):
   62153         (WebCore::XMLHttpRequest::open):
   62154         (WebCore::XMLHttpRequest::send):
   62155         * xml/XMLHttpRequest.h:
   62156         * xml/XMLHttpRequestException.h: Copied from WebCore/dom/DOMCoreException.h.
   62157         (WebCore::XMLHttpRequestException::XMLHttpRequestException):
   62158         (WebCore::XMLHttpRequestException::):
   62159         * xml/XMLHttpRequestException.idl: Copied from WebCore/dom/DOMCoreException.idl.
   62160         * xml/XPathEvaluator.h:
   62161         * xml/XPathException.h: Copied from WebCore/dom/DOMCoreException.h.
   62162         (WebCore::XPathException::XPathException):
   62163         (WebCore::XPathException::):
   62164         * xml/XPathException.idl: Copied from WebCore/dom/DOMCoreException.idl.
   62165         * xml/XPathParser.cpp:
   62166         (WebCore::XPath::Parser::parseStatement):
   62167         * xml/XPathResult.cpp:
   62168         (WebCore::XPathResult::convertTo):
   62169         (WebCore::XPathResult::numberValue):
   62170         (WebCore::XPathResult::stringValue):
   62171         (WebCore::XPathResult::booleanValue):
   62172         (WebCore::XPathResult::singleNodeValue):
   62173         (WebCore::XPathResult::snapshotLength):
   62174         (WebCore::XPathResult::iterateNext):
   62175         (WebCore::XPathResult::snapshotItem):
   62176 
   62177 2008-01-01  Sam Weinig  <sam (a] webkit.org>
   62178 
   62179         Remove JSDomExceptionConstructor.lut.h from clean step
   62180         as it no longer exists.
   62181 
   62182         * GNUmakefile.am:
   62183 
   62184 2008-01-01  Dan Bernstein  <mitz (a] apple.com>
   62185 
   62186         - Windows build fix
   62187 
   62188         * WebCore.vcproj/WebCore.vcproj:
   62189 
   62190 2008-01-01  Sam Weinig  <sam (a] webkit.org>
   62191 
   62192         Try again to fix the builds
   62193 
   62194         * DerivedSources.make:
   62195 
   62196 2008-01-01  Sam Weinig  <sam (a] webkit.org>
   62197 
   62198         Fix non-mac builds.
   62199 
   62200         * WebCore.pro:
   62201         * WebCore.vcproj/WebCore.vcproj:
   62202         * WebCoreSources.bkl:
   62203 
   62204 2008-01-01  Eric Seidel  <eric (a] webkit.org>
   62205 
   62206         Reviewed by Alexey.
   62207 
   62208         Don't replace \ with / in data: urls
   62209         http://bugs.webkit.org/show_bug.cgi?id=16692
   62210 
   62211         Test: fast/loader/url-data-replace-backslash.html
   62212 
   62213         * platform/KURL.cpp:
   62214         (WebCore::KURL::init):
   62215 
   62216 2008-01-01  Alp Toker  <alp (a] atoker.com>
   62217 
   62218         GTK+ autotools build fix. Track changes in r29051, r29058 and pass the
   62219         correct parameter to AM_INIT_AUTOMAKE.
   62220 
   62221         * GNUmakefile.am:
   62222 
   62223 2007-12-31  Sam Weinig  <sam (a] webkit.org>
   62224 
   62225         Reviewed by Darin.
   62226 
   62227         Patch for http://bugs.webkit.org/show_bug.cgi?id=16637
   62228         Acid3 expects ExeceptionCode constants to be defined on DOMException objects
   62229 
   62230         - Make DOMException a real JS object.
   62231 
   62232         Test: fast/dom/DOMException/prototype-object.html
   62233 
   62234         * DerivedSources.make:
   62235         * WebCore.xcodeproj/project.pbxproj:
   62236 
   62237         This is no longer needed as the autogenerated classes now includes the
   62238         constructor.
   62239         * bindings/js/JSDOMExceptionConstructor.cpp: Removed.
   62240         * bindings/js/JSDOMExceptionConstructor.h: Removed.
   62241 
   62242         Create on demand and use the new class for DOMExceptions.
   62243         * bindings/js/kjs_binding.cpp:
   62244         (KJS::setDOMException):
   62245 
   62246         Remove no longer needed custom constructor getter.
   62247         * bindings/js/kjs_window.cpp:
   62248         (KJS::Window::getValueProperty):
   62249 
   62250         Don't expose DOMCoreException as the name of class by special casing
   62251         the user visible class name to be DOMException.
   62252         * bindings/scripts/CodeGeneratorJS.pm:
   62253 
   62254         The DOMException class/file needs to be named DOMCoreException because there is
   62255         name conflict with one of the Objective-C bindings classes.  It should be renamed
   62256         to DOMException when the Objective-C bindings are moved into WebKit.
   62257         * dom/DOMCoreException.cpp: Added.
   62258         (WebCore::DOMCoreException::DOMCoreException):
   62259         (WebCore::DOMCoreException::toString):
   62260         * dom/DOMCoreException.h: Added.
   62261         (WebCore::DOMCoreException::):
   62262         (WebCore::DOMCoreException::code):
   62263         (WebCore::DOMCoreException::name):
   62264         (WebCore::DOMCoreException::message):
   62265         * dom/DOMCoreException.idl: Added.
   62266         * page/DOMWindow.idl:
   62267 
   62268 2007-12-31  Sam Weinig  <sam (a] webkit.org>
   62269 
   62270         Re-enable querySelector and querySelectorAll and touch the necessary files to not
   62271         kill the windows build.
   62272 
   62273         * WebCore.vcproj/build-generated-files.sh:
   62274         * bindings/scripts/CodeGeneratorCOM.pm:
   62275         * dom/Document.idl:
   62276         * dom/Element.idl:
   62277 
   62278 2007-12-31  Darin Adler  <darin (a] apple.com>
   62279 
   62280         - fix Windows build
   62281 
   62282         * dom/Document.idl: Temporarily disable querySelector and querySelectorAll, since they are showing
   62283         up as pure virtual functions. Sam can fix this later.
   62284         * dom/Element.idl: Ditto.
   62285 
   62286 2007-12-31  Dan Bernstein  <mitz (a] apple.com>
   62287 
   62288         Reviewed by Darin Adler.
   62289 
   62290         - fix http://bugs.webkit.org/show_bug.cgi?id=14134
   62291           <rdar://problem/5655160> REGRESSION (r25353): Whitespace nodes ignored between inline list items
   62292 
   62293         Test: fast/dynamic/create-renderer-for-whitespace-only-text.html
   62294 
   62295         * dom/Node.cpp:
   62296         (WebCore::Node::attach): Added code to check if this node's renderer
   62297         has become the "previous renderer" of any sibling text node, and if so,
   62298         ensure that that node gets a renderer if it now needs one.
   62299         (WebCore::Node::createRendererIfNeeded): Removed the assertion that the
   62300         node is not attached.
   62301 
   62302 2007-12-31  Darin Adler  <darin (a] apple.com>
   62303 
   62304         Reviewed by Mitz.
   62305 
   62306         - fix http://bugs.webkit.org/show_bug.cgi?id=16641
   62307           Acid3 reveals HTMLFormElement.elements fails to update when element name changes
   62308 
   62309         Test: fast/dom/HTMLFormElement/elements-not-in-document.html
   62310 
   62311         This was a bug specific to forms that are not in the document tree.
   62312         The fix was to change the code to increment the document version number to match
   62313         up with other document change tracking. Maybe at some point we can clean these up
   62314         so we don't have so many competing change notification systems.
   62315 
   62316         * dom/ContainerNode.cpp:
   62317         (WebCore::ContainerNode::replaceChild): Removed bogus comment.
   62318         (WebCore::ContainerNode::addChild): Added an explicit incDOMTreeVersion
   62319         call here, since this code path bypasses the subtree-modified event code.
   62320 
   62321         * dom/Element.cpp:
   62322         (WebCore::Element::setAttribute): Remove the inDocument() check -- not all HTML
   62323         collections are for things in the document.
   62324         (WebCore::Element::setAttributeMap): Ditto.
   62325 
   62326         * dom/EventTargetNode.cpp:
   62327         (WebCore::EventTargetNode::dispatchSubtreeModifiedEvent): Added a call to
   62328         incDOMTreeVersion here; covers most cases of tree structure changes.
   62329 
   62330         * dom/Node.cpp:
   62331         (WebCore::Node::attach): Remove call to incDOMTreeVersion -- creating a renderer
   62332         has nothing to do with changes to the DOM tree!
   62333         (WebCore::Node::detach): Ditto.
   62334 
   62335         * html/HTMLFormElement.cpp:
   62336         (WebCore::HTMLFormElement::registerFormElement): Remove call to incDOMTreeVersion.
   62337         This is handled at a lower level and doesn't need to be here.
   62338         (WebCore::HTMLFormElement::removeFormElement): Ditto.
   62339 
   62340 2007-12-31  Henry Mason  <hmason (a] mac.com>
   62341 
   62342         Reviewed by Darin.
   62343 
   62344         Patch for http://bugs.webkit.org/show_bug.cgi?id=14994
   62345         Support for MessageEvent and cross-domain messaging
   62346 
   62347         Test: http/tests/messaging/cross-domain-message-send.html
   62348 
   62349         * DerivedSources.make:
   62350         * WebCore.pro:
   62351         * WebCore.vcproj/WebCore.vcproj:
   62352         * WebCore.xcodeproj/project.pbxproj:
   62353         * WebCoreSources.bkl:
   62354         * bindings/js/JSDOMWindowCustom.cpp:
   62355         (WebCore::JSDOMWindow::customGetOwnPropertySlot): Allow cross-domain access to the
   62356         postMessage function.
   62357         (WebCore::JSDOMWindow::postMessage):
   62358         * bindings/js/JSEventCustom.cpp:
   62359         (WebCore::toJS):
   62360         * dom/Event.cpp:
   62361         (WebCore::Event::isMessageEvent):
   62362         * dom/Event.h:
   62363         * dom/EventNames.h: New event name
   62364         * dom/MessageEvent.cpp: Added.
   62365         * dom/MessageEvent.h: Added.
   62366         * dom/MessageEvent.idl: Added.
   62367         * page/DOMWindow.cpp:
   62368         (WebCore::DOMWindow::postMessage): Added.
   62369         * page/DOMWindow.h:
   62370         * page/DOMWindow.idl:
   62371 
   62372 2007-12-31  Darin Adler  <darin (a] apple.com>
   62373 
   62374         Suggested by Antti.
   62375 
   62376         - turn ENABLE_VIDEO back off for Windows until we can install QuickTime on the build bots
   62377 
   62378         * WebCore.vcproj/WebCore.vcproj: Removed ENABLE_VIDEO.
   62379         * WebCore.vcproj/build-generated-files.sh: Ditto.
   62380 
   62381 2007-12-30  Alp Toker  <alp (a] atoker.com>
   62382 
   62383         Reviewed by Dan Bernstein.
   62384 
   62385         Silence warning.
   62386 
   62387         * dom/NodeList.h:
   62388 
   62389 2007-12-30  Sam Weinig  <sam (a] webkit.org>
   62390 
   62391         Reviewed by Oliver Hunt.
   62392 
   62393         Fix for http://bugs.webkit.org/show_bug.cgi?id=16387
   62394         Variable names can be enumerated across domains
   62395         <rdar://problem/5640454>
   62396 
   62397         Test: http/tests/security/cross-frame-access-enumeration.html
   62398 
   62399         * bindings/js/kjs_window.cpp:
   62400         (KJS::Window::getPropertyNames): Override method to test same-origin policy.
   62401         * bindings/js/kjs_window.h:
   62402 
   62403 2007-12-30  Sam Weinig  <sam (a] webkit.org>
   62404 
   62405         Reviewed by Oliver Hunt.
   62406 
   62407         Patch for http://bugs.webkit.org/show_bug.cgi?id=10686
   62408         event instanceof MouseEvent throws exception
   62409 
   62410         Add JS constructors for all the Event types.
   62411 
   62412         Test: fast/events/event-instanceof.html
   62413 
   62414         * WebCore.xcodeproj/project.pbxproj:
   62415         * dom/KeyboardEvent.idl:
   62416         * dom/MouseEvent.idl:
   62417         * dom/MutationEvent.idl:
   62418         * dom/OverflowEvent.idl:
   62419         * dom/ProgressEvent.idl:
   62420         * dom/TextEvent.idl:
   62421         * dom/UIEvent.idl:
   62422         * dom/WheelEvent.idl:
   62423         * page/DOMWindow.idl:
   62424 
   62425 2007-12-30  David Kilzer  <ddkilzer (a] webkit.org>
   62426 
   62427         Reviewed by Darin.
   62428 
   62429         - fix http://bugs.webkit.org/show_bug.cgi?id=15359
   62430           JPEG image not shown when height is specified as percentage inside a table
   62431 
   62432         The problem occurs when a replaced element (image, canvas, etc.) with
   62433         a percent-height attribute is contained by a table cell with an auto-
   62434         or percent-height attribute.  If there are no other conditions to cause
   62435         the table cell's height to expand, an available height of zero will
   62436         always be returned.  In these cases, the intrinsic height of the
   62437         replaced element should be used if it is greater than the available
   62438         height of the table cell.
   62439 
   62440         Tests: fast/replaced/table-percent-height.html
   62441                tables/mozilla/bugs/bug137388-1.html
   62442                tables/mozilla/bugs/bug137388-2.html
   62443 
   62444         * rendering/RenderBox.cpp:
   62445         (WebCore::RenderBox::calcReplacedHeightUsing):
   62446 
   62447 2007-12-30  Luca Bruno  <lethalman88 (a] gmail.com>
   62448 
   62449         Reviewed by Alp Toker.
   62450 
   62451         http://bugs.webkit.org/show_bug.cgi?id=16099
   62452         Crash in CURL for empty POST
   62453 
   62454         We have to set POST even when the data is empty, otherwise cURL will
   62455         hang while waiting for a response.
   62456 
   62457         * platform/network/curl/ResourceHandleManager.cpp
   62458         (ResourceHandleManager::setupPOST): allow empty POST
   62459 
   62460 2007-12-29  Jan Michael Alonzo  <jmalonzo (a] unpluggable.com>
   62461 
   62462         Reviewed by Alp Toker.
   62463 
   62464         Move all SVG related stuff inside SVG block. Don't include
   62465         SVGNames, SVGElementFactory, and XLinkNames when SVG is not
   62466         enabled
   62467 
   62468         * GNUmakefile.am:
   62469 
   62470 2007-12-29  Alexey Proskuryakov  <ap (a] webkit.org>
   62471 
   62472         Reviewed by Darin.
   62473 
   62474         http://bugs.webkit.org/show_bug.cgi?id=14428
   62475         FCKEditor: Images disappear on drag/drop and copy/paste
   62476 
   62477         Test: editing/pasteboard/drag-image-in-about-blank-frame.html
   62478 
   62479         * editing/markup.cpp: (WebCore::createFragmentFromMarkup): Don't use "about:blank" as a
   62480         base URL, just like we don't use an empty one.
   62481 
   62482 2007-12-29  Jan Michael Alonzo  <jmalonzo (a] unpluggable.com>
   62483 
   62484         Reviewed by Alp Toker.
   62485 
   62486         http://bugs.webkit.org/show_bug.cgi?id=16669
   62487         autotools update and fixes
   62488 
   62489         Autotools update and database/icon database inclusion guard fixes
   62490 
   62491         * GNUmakefile.am:
   62492           - Update autotools config as per -r29012 changes
   62493           - Fix CSSGrammar.h/cpp generation (Seo Sanghyeon, sanxiyn)
   62494         * dom/Document.cpp:
   62495         * loader/icon/IconDatabase.h:
   62496         * page/DOMWindow.cpp:
   62497         * page/InspectorController.cpp:
   62498         * page/Settings.cpp:
   62499         * storage/Database.h:
   62500           - Remove ENABLE(DATABASE) inclusion guard. Let the includer add the guard instead.
   62501 
   62502 2007-12-29  Nikolas Zimmermann  <zimmermann (a] kde.org>
   62503 
   62504         Reviewed by Alexey.
   62505 
   62506         Respect horiz-origin-x / horiz-origin-y / vert-origin-x / vert-origin-y properties when drawing SVG Fonts.
   62507         (Fixes fonts-elem-05-t.svg in a --svg-fonts build)
   62508 
   62509         * svg/SVGFont.cpp:
   62510         (WebCore::Font::drawGlyphsWithSVGFont):
   62511 
   62512 2007-12-29  Nikolas Zimmermann  <zimmermann (a] kde.org>
   62513 
   62514         Reviewed by Oliver.
   62515 
   62516         Further SVG Font work. Parse all <glyph> attributes, using SVGGlyphElement::buildGlyphIdentifier.
   62517         SVGFontElement::collectGlyphs() now uses this method. Per character advance values work well now.
   62518 
   62519         * platform/graphics/FontData.cpp:
   62520         (WebCore::SVGFontData::convertEmUnitToPixel): Add helper function.
   62521         (WebCore::FontData::ascent):
   62522         (WebCore::FontData::descent):
   62523         * platform/graphics/FontData.h:
   62524         * svg/SVGFont.cpp:
   62525         (WebCore::isVerticalWritingMode): Add helper function.
   62526         (WebCore::Font::drawGlyphsWithSVGFont):
   62527         * svg/SVGFontElement.cpp:
   62528         (WebCore::SVGFontElement::collectGlyphs): Simplified implementation - SVGGlyphIdentifier now build by SVGGlyphElement.
   62529         * svg/SVGGlyphElement.cpp:
   62530         (WebCore::parseArabicForm): Helper function.
   62531         (WebCore::parseOrientation): Ditto.
   62532         (WebCore::parsePathData): Ditto.
   62533         (WebCore::SVGGlyphElement::buildGlyphIdentifier):
   62534         * svg/SVGGlyphElement.h:
   62535         (WebCore::SVGGlyphElement::rendererIsNeeded):
   62536 
   62537 2007-12-29  Nikolas Zimmermann  <zimmermann (a] kde.org>
   62538 
   62539         Reviewed by Oliver.
   62540 
   62541         Refactor SVGAnimationElement::parseValues into a generic function parseDelimitedString.
   62542         SVGAnimationElement needs to parse semicolon-seperated strings, SVGGlyphElement comma-seperated.
   62543 
   62544         * svg/SVGAnimationElement.cpp:
   62545         (WebCore::SVGAnimationElement::parseMappedAttribute):
   62546         * svg/SVGParserUtilities.cpp:
   62547         (WebCore::parseDelimitedString):
   62548         * svg/SVGParserUtilities.h:
   62549 
   62550 2007-12-29  Nikolas Zimmermann  <zimmermann (a] kde.org>
   62551 
   62552         Reviewed by Maciej.
   62553 
   62554         Add new helper structure SVGFontData - FontData holds this object as OwnPtr.
   62555         Store several attribute values there (horiz-adv-x, horiz-origin-x etc..)
   62556 
   62557         To optimize for the common case ('FontData' used for HTML rendering) it feels
   62558         better to hold one OwnPtr in FontData, than several floats.
   62559 
   62560         Parse all <font> attributes in SVGFontFaceElement::createFontData.
   62561 
   62562         * platform/graphics/FontData.cpp:
   62563         (WebCore::SVGFontData::SVGFontData):
   62564         (WebCore::FontData::FontData):
   62565         (WebCore::FontData::ascent):
   62566         (WebCore::FontData::descent):
   62567         * platform/graphics/FontData.h:
   62568         (WebCore::FontData::isSVGFont):
   62569         (WebCore::FontData::svgFontData):
   62570         * svg/SVGFont.cpp:
   62571         (WebCore::Font::drawGlyphsWithSVGFont):
   62572         * svg/SVGFontElement.cpp:
   62573         * svg/SVGFontElement.h:
   62574         (WebCore::SVGFontElement::rendererIsNeeded):
   62575         * svg/SVGFontFaceElement.cpp:
   62576         (WebCore::SVGFontFaceElement::unitsPerEm):
   62577         (WebCore::SVGFontFaceElement::createFontData):
   62578 
   62579 2007-12-28  Darin Adler  <darin (a] apple.com>
   62580 
   62581         - try to fix Windows and WX builds (broken by SVG Fonts check-in)
   62582 
   62583         * platform/graphics/win/FontWin.cpp:
   62584         (WebCore::Font::drawGlyphs): Pass font size to FontData::ascent, now that it requires it.
   62585         I can't see how it can be right to require the font size for ascent and descent,
   62586         but not for other metrics functions in FontData.
   62587 
   62588         * platform/graphics/wx/FontWx.cpp:
   62589         (WebCore::Font::drawGlyphs): Pass font size to FontData::ascent and FontData::descent.
   62590 
   62591 2007-12-28  Dan Bernstein  <mitz (a] apple.com>
   62592 
   62593         Reviewed by Mark Rowe.
   62594 
   62595         - fix http://bugs.webkit.org/show_bug.cgi?id=16650
   62596           <rdar://problem/5664872> REGRESSION (r28278-r28314): ATSUI uses LTR writing direction for all text runs
   62597 
   62598         Covered by existing pixel tests.
   62599 
   62600         * platform/graphics/mac/FontMac.mm:
   62601         (WebCore::Font::drawComplexText): Corrected to maintain the style
   62602         information in the adjusted text run when passing it to
   62603         ATSUILayoutParameters. Prior to r28298 the style was passed separately.
   62604 
   62605 2007-12-29  Nikolas Zimmermann  <zimmermann (a] kde.org>
   62606 
   62607         Build fix, not reviewed.
   62608 
   62609         Add wtf/OwnPtr.h include, to fix --svg-fonts build.
   62610 
   62611         * css/SVGCSSFontFace.h:
   62612 
   62613 2007-12-29  Nikolas Zimmermann  <zimmermann (a] kde.org>
   62614 
   62615         Reviewed by Eric.
   62616 
   62617         Fixes: http://bugs.webkit.org/show_bug.cgi?id=10649 (WebKit SVG needs SVG Fonts support)
   62618 
   62619         Begin implementation of SVG Fonts module. Basic documents using SVG Fonts already work.
   62620         Only local, in-document fonts who declare their glyphs using the <glyph d="..."> path syntax
   62621         are supported. (<glyph> containing arbitary SVG content as child elements, not supported yet).
   62622 
   62623         Limited to single char <-> glyph mapping, no ligatures supported yet.
   62624         (ie. <glyph unicode='A'/> <glyph unicode='AB'/> - it ignores the 'AB' glyph definition for now)
   62625 
   62626         Mark all SVG Font related classes & usages in ENABLE(SVG_FONTS) blocks.
   62627 
   62628         No layout test changes for a --no-svg-fonts build, heavy changes if enabled. Because a lot of SVG Font
   62629         attributes are not processed yet, the rendering looks wrong - hence disabled by default.)
   62630 
   62631         * DerivedSources.make: Add SVGFontElement/SVGGlyphElement/SVGMissingGlyphElement
   62632         * WebCore.pro: Updated build system.
   62633         * WebCore.vcproj/WebCore.vcproj: Ditto.
   62634         * WebCore.xcodeproj/project.pbxproj: Ditto.
   62635         * bindings/js/JSSVGElementWrapperFactory.cpp: Add JSSVGFontElement/JSSVGGlyphElement/JSSVGMissingGlyphElement
   62636         * bindings/objc/DOM.mm: Ditto (for DOMSVG*).
   62637         (WebCore::createElementClassMap):
   62638         * bindings/objc/DOMInternal.h: Ditto.
   62639         * bindings/objc/DOMSVG.h: Ditto.
   62640         * css/CSSFontFace.h: Mark three functions 'virtual', to be overriden by SVGCSSFontFace
   62641         * css/CSSFontFaceSrcValue.h: Add functionality to identify as SVG CSS font face source.
   62642         (WebCore::CSSFontFaceSrcValue::m_fontFaceElement): Hold a pointer to the font face which created it.
   62643         (WebCore::CSSFontFaceSrcValue::svgFontFaceElement):
   62644         (WebCore::CSSFontFaceSrcValue::setSVGFontFaceElement):
   62645         * css/CSSFontSelector.cpp: Build 'SVGCSSFontFace' objects for local, in-document SVG fonts.
   62646         (WebCore::CSSFontSelector::addFontFaceRule):
   62647         * css/SVGCSSFontFace.cpp: Added. (Simplified implementation for SVG Fonts)
   62648         (WebCore::SVGCSSFontFace::SVGCSSFontFace):
   62649         (WebCore::SVGCSSFontFace::~SVGCSSFontFace):
   62650         (WebCore::SVGCSSFontFace::isValid):
   62651         (WebCore::SVGCSSFontFace::addSource):
   62652         (WebCore::SVGCSSFontFace::getFontData):
   62653         * css/SVGCSSFontFace.h: Added.
   62654         * platform/graphics/cg/PathCG.cpp:
   62655         (WebCore::Path::closeSubpath): Silence a CG warning when calling closeSubpath() on empty path.
   62656         * platform/graphics/Font.cpp: Add some logic to call into SVG Font code when operating on SVG Fonts.
   62657         (WebCore::Font::ascent): Pass font size to FontData::ascent() call
   62658         (WebCore::Font::descent): Pass font size to FontData::descent() call
   62659         (WebCore::Font::canUseGlyphCache): Always return true for SVG fonts here.
   62660         (WebCore::Font::drawGlyphBuffer): Call drawGlyphsWithSVGFont (instead of drawGlyphs) if the primary font is a SVG font.
   62661         * platform/graphics/Font.h: Add (SVG-only!) ability to store a RenderObject pointer, to the element which invoked the drawText() call.
   62662         (WebCore::TextRun::TextRun):
   62663         (WebCore::TextRun::referencingRenderObject):
   62664         (WebCore::TextRun::setReferencingRenderObject):
   62665         * platform/graphics/FontData.cpp:
   62666         (WebCore::FontData::FontData):
   62667         (WebCore::FontData::ascent):
   62668         (WebCore::FontData::descent):
   62669         * platform/graphics/FontData.h: Store a pointer to the SVGFontFaceElement, which created this FontData object - needed for drawGlyphsWithSVGFont().
   62670         (WebCore::FontData::isSVGFont): Offer a way to determine wheter this is a FontData object, created by a SVGFontFaceElement.
   62671         (WebCore::FontData::svgFontFace):
   62672         * rendering/SVGInlineTextBox.cpp:
   62673         (WebCore::SVGInlineTextBox::calculateGlyphWidth): Add assertion.
   62674         * rendering/SVGRootInlineBox.cpp:
   62675         (WebCore::svgTextRunForInlineTextBox): Always call 'setReferencingRenderObject(myRenderSVGText)' on the new TextRun
   62676         * svg/SVGFont.cpp: Added.
   62677         (WebCore::Font::drawGlyphsWithSVGFont): Outsourced implementation of SVG Fonts into it's own file.
   62678         * svg/SVGFontElement.cpp: Added. (Note: this holds the GlyphHashMap which associates certain <glyph> objects with unicode values)
   62679         (WebCore::SVGFontElement::SVGFontElement):
   62680         (WebCore::SVGFontElement::~SVGFontElement):
   62681         (WebCore::SVGFontElement::parseMappedAttribute):
   62682         (WebCore::SVGFontElement::collectGlyphs):
   62683         (WebCore::SVGFontElement::glyphIdentifierForGlyphCode):
   62684         * svg/SVGFontElement.h: Added.
   62685         (WebCore::GlyphHash::hash):
   62686         (WebCore::GlyphHash::equal):
   62687         (WebCore::GlyphHashTraits::deletedValue):
   62688         (WebCore::SVGFontElement::rendererIsNeeded):
   62689         (WebCore::SVGFontElement::contextElement):
   62690         * svg/SVGFontElement.idl: Added.
   62691         * svg/SVGFontFaceElement.cpp: Build SVG specific 'FontData' object
   62692         (WebCore::SVGFontFaceElement::unitsPerEm):
   62693         (WebCore::SVGFontFaceElement::fontFamily):
   62694         (WebCore::SVGFontFaceElement::createFontData): Builds SVG specified 'FontData' object with the markup specified ascent/descent values etc..
   62695         (WebCore::SVGFontFaceElement::rebuildFontFace): Construct CSSFontFaceSrc object (marked as 'isSVGFontFaceSrc') to satisfy CSSFontSelector::addFontFaceRule.
   62696         (WebCore::SVGFontFaceElement::insertedIntoDocument): Rebuild font face.
   62697         (WebCore::SVGFontFaceElement::glyphIdentifierForGlyphCode): Allows drawGlyphsWithSVGFont to access the glyph hash map living in the SVGFontElement.
   62698         * svg/SVGFontFaceElement.h: Fixed code formatting issues & wrap in ENABLE(SVG_FONTS) blocks.
   62699         * svg/SVGFontFaceElement.idl: Ditto.
   62700         * svg/SVGFontFaceFormatElement.cpp: Ditto.
   62701         * svg/SVGFontFaceFormatElement.h: Ditto.
   62702         * svg/SVGFontFaceFormatElement.idl: Ditto.
   62703         * svg/SVGFontFaceNameElement.cpp: Ditto.
   62704         * svg/SVGFontFaceNameElement.h: Ditto.
   62705         * svg/SVGFontFaceNameElement.idl: Ditto.
   62706         * svg/SVGFontFaceSrcElement.cpp: Ditto.
   62707         * svg/SVGFontFaceSrcElement.h: Ditto.
   62708         * svg/SVGFontFaceSrcElement.idl: Ditto.
   62709         * svg/SVGFontFaceUriElement.cpp: Ditto.
   62710         * svg/SVGFontFaceUriElement.h: Ditto.
   62711         * svg/SVGFontFaceUriElement.idl: Ditto.
   62712         * svg/SVGDefinitionSrcElement.cpp: Ditto.
   62713         * svg/SVGDefinitionSrcElement.h: Ditto.
   62714         * svg/SVGDefinitionSrcElement.idl: Ditto.
   62715         * svg/SVGGlyphElement.cpp: Added.
   62716         (WebCore::SVGGlyphElement::SVGGlyphElement):
   62717         (WebCore::SVGGlyphElement::parseMappedAttribute):
   62718         (WebCore::SVGGlyphElement::childrenChanged):
   62719         * svg/SVGGlyphElement.h: Added.
   62720         (WebCore::SVGGlyphElement::rendererIsNeeded):
   62721         (WebCore::SVGGlyphIdentifier::): Structure holding all data to represent a SVG glyph (origin, advance, orientation etc..)
   62722         (WebCore::SVGGlyphIdentifier::SVGGlyphIdentifier):
   62723         * svg/SVGGlyphElement.idl: Added.
   62724         * svg/SVGMissingGlyphElement.cpp: Added. (stub implementation)
   62725         (WebCore::SVGMissingGlyphElement::SVGMissingGlyphElement):
   62726         (WebCore::SVGMissingGlyphElement::parseMappedAttribute):
   62727         (WebCore::SVGMissingGlyphElement::childrenChanged):
   62728         * svg/SVGMissingGlyphElement.h: Added.
   62729         (WebCore::SVGMissingGlyphElement::rendererIsNeeded):
   62730         * svg/SVGMissingGlyphElement.idl: Added.
   62731         * svg/svgtags.in: Wrap all SVGFont* elements in ENABLE(SVG_FONTS) block - to assure --no-svg-fonts compilation works (which is the default for now!).
   62732 
   62733 2007-12-27  Dan Bernstein  <mitz (a] apple.com>
   62734 
   62735         Reviewed by Alexey Proskuryakov.
   62736 
   62737         - fix http://bugs.webkit.org/show_bug.cgi?id=16628
   62738           ASSERTION FAILED: m_resizeLayer (running layout tests)
   62739 
   62740         * rendering/RenderLayer.cpp:
   62741         (WebCore::RenderLayer::~RenderLayer): Avoid calling
   62742         EventHandler::resizeLayerDestroyed() if the document is being destroyed.
   62743 
   62744 2007-12-27  Dan Bernstein  <mitz (a] apple.com>
   62745 
   62746         Reviewed by Oliver Hunt.
   62747 
   62748         - fix http://bugs.webkit.org/show_bug.cgi?id=16603
   62749           <rdar://problem/5664199> Crash when resizing text field
   62750 
   62751         Test: fast/layers/resize-layer-deletion-crash.html
   62752 
   62753         The event handler has only a weak reference to the layer that is
   62754         currently in resize mode, so it is the layer's responsibility to let
   62755         the event handler know if it has been destroyed while in that mode.
   62756 
   62757         * page/EventHandler.cpp:
   62758         (WebCore::EventHandler::resizeLayerDestroyed): Added. Resets
   62759         m_resizeLayer to 0.
   62760         * page/EventHandler.h:
   62761         * rendering/RenderLayer.cpp:
   62762         (WebCore::RenderLayer::~RenderLayer): Added a call to
   62763         EventHandler::resizeLayerDestroyed() if the layer is in resize mode.
   62764 
   62765 2007-12-27  Collin Jackson  <webkit (a] collinjackson.com>
   62766 
   62767         Reviewed by Sam Weinig.
   62768 
   62769         http://bugs.webkit.org/show_bug.cgi?id=16539
   62770         <rdar://problem/5659269>
   62771 
   62772         The same-origin check was missing in the implementation of 
   62773         setTimeout, setInterval, addEventListener, and removeEventListener.
   62774 
   62775         Suppose <http://www.badguy.com/> contains an iframe to 
   62776         <http://www.goodguy.com/>. Now www.badguy.com can steal
   62777         www.goodguy.com cookies by running this code:
   62778 
   62779         setTimeout.call(frames[0], "alert(document.cookie)", 1000);
   62780 
   62781         This patch changes the behavior so that setTimeout to does 
   62782         nothing and returns an undefined value if the caller is not
   62783         permitted to script the window whose setTimeout method is being
   62784         called. The same applies to setInterval, addEventListener, and 
   62785         removeEventListener.
   62786 
   62787         Tests: http/tests/security/cross-frame-access-call.html
   62788 
   62789         * bindings/js/kjs_window.cpp:
   62790         (KJS::WindowProtoFuncSetTimeout::callAsFunction)
   62791         (KJS::WindowProtoFuncSetInterval::callAsFunction)
   62792         (KJS::WindowProtoFuncAddEventListener::callAsFunction)
   62793         (KJS::WindowProtoFuncRemoveEventListener::callAsFunction)
   62794 
   62795 2007-12-27  Dan Bernstein  <mitz (a] apple.com>
   62796 
   62797         Reviewed by Dave Hyatt and Sam Weinig.
   62798 
   62799         - fix <rdar://problem/5605937> Inspector: Disclosure triangle not drawn in node's properties panel until click
   62800 
   62801         Test: fast/layers/add-layer-with-nested-stacking.html
   62802         Test: fast/layers/remove-layer-with-nested-stacking.html
   62803 
   62804         * rendering/RenderLayer.cpp:
   62805         (WebCore::RenderLayer::addChild): If the new child is overflow-only
   62806         but has children of its own, dirty the stacking context's z-order lists
   62807         since the grandchildren might need to be in them.
   62808         (WebCore::RenderLayer::removeChild): Similarly for the old child.
   62809 
   62810 2007-12-27  Jan Michael Alonzo  <jmalonzo (a] unpluggable.com>
   62811 
   62812         Reviewed by Alp Toker.
   62813 
   62814         http://bugs.webkit.org/show_bug.cgi?id=16353
   62815         [GTK] Check for deprecated API use (G_DISABLE_DEPRECATED etc.)
   62816 
   62817         Added the flags mentioned in the bug only when doing 'debug'
   62818         builds. -DGST_DISABLE_DEPRECATED only added when video is enabled.
   62819 
   62820         * GNUmakefile.am:
   62821         * WebCore.pro:
   62822 
   62823 2007-12-27  Dan Bernstein  <mitz (a] apple.com>
   62824 
   62825         Reviewed by Eric Seidel.
   62826 
   62827         - fix http://bugs.webkit.org/show_bug.cgi?id=16490
   62828           ASSERT in ~FrameView while viewing/reloading WICD test case
   62829 
   62830         Test: fast/dynamic/paused-event-dispatch.html
   62831 
   62832         * page/FrameView.cpp:
   62833         (WebCore::FrameView::~FrameView):
   62834         (WebCore::FrameView::layout): Changed to always pause event dispatch and
   62835         always resume event dispatch, regardless of whether the post-layout
   62836         task timer is active. However, if it is active, assert that event
   62837         dispatch is still paused.
   62838 
   62839 2007-12-27  Alexey Proskuryakov  <ap (a] webkit.org>
   62840 
   62841         Reviewed by Maciej.
   62842 
   62843         http://bugs.webkit.org/show_bug.cgi?id=14500
   62844         need to be more generous about charset declaration with meta tag
   62845         
   62846         http://bugs.webkit.org/show_bug.cgi?id=12526
   62847         <rdar://problem/4867183> Safari ignores encoding description "charset=Shift_JIS" in invalid html
   62848 
   62849         <rdar://problem/4892428> Unlike other browsers, WebKit ignores <meta> charset definitions outside the head
   62850 
   62851         <rdar://problem/5643774> REGRESSION: Text is garbled when clicking a link inside an Arabic website
   62852 
   62853         Tests: fast/encoding/ahram-org-eg.html
   62854                fast/encoding/bandai-co-jp-releases.html
   62855                fast/encoding/floraexpress-ru.html
   62856                fast/encoding/hanarei-blog32-fc2-com.html
   62857                fast/encoding/yahoo-mail.html
   62858 
   62859         * loader/TextResourceDecoder.cpp:
   62860         (WebCore::TextResourceDecoder::checkForHeadCharset): Don't stop looking for <meta> until we've
   62861         seen at least 512 bytes of input.
   62862 
   62863 2007-12-26  Jan Michael Alonzo  <jmalonzo (a] unpluggable.com>
   62864 
   62865         Reviewed by Alp Toker.
   62866 
   62867         http://bugs.webkit.org/show_bug.cgi?id=16390
   62868         Use autotools or GNU make as the build system for the GTK port
   62869 
   62870         * GNUmakefile.am: Added.
   62871 
   62872 2007-12-26  Alexey Proskuryakov  <ap (a] webkit.org>
   62873 
   62874         Reviewed by Sam Weinig.
   62875 
   62876         http://bugs.webkit.org/show_bug.cgi?id=16609
   62877         Make manual-tests/xmlhttprequest-contenttype-empty.html test automatic
   62878 
   62879         * manual-tests/xmlhttprequest-contenttype-empty.html: Removed (moved to LayoutTests/http).
   62880 
   62881 2007-12-26  Mark Rowe  <mrowe (a] apple.com>
   62882 
   62883         Windows build fix.
   62884 
   62885         * platform/Threading.h:
   62886 
   62887 2007-12-25  Rob Buis  <buis (a] kde.org>
   62888 
   62889         Reviewed by Eric.
   62890 
   62891         http://bugs.webkit.org/show_bug.cgi?id=15514
   62892         <clipPath> with <use> not respected
   62893         http://bugs.webkit.org/show_bug.cgi?id=16557
   62894         SVG circle elements have been clipped away completely, instead of partially.
   62895 
   62896         Add toClipPath to get clip path data for the clipping paths. Implement it for <use>, thereby allowing clip paths using use.
   62897 
   62898         * svg/SVGClipPathElement.cpp:
   62899         (WebCore::SVGClipPathElement::canvasResource):
   62900         * svg/SVGStyledTransformableElement.h:
   62901         (WebCore::SVGStyledTransformableElement::toClipPath):
   62902         * svg/SVGUseElement.cpp:
   62903         (WebCore::isDirectReference):
   62904         (WebCore::SVGUseElement::toClipPath):
   62905         * svg/SVGUseElement.h:
   62906 
   62907 2007-12-25  Sam Weinig  <sam (a] webkit.org>
   62908 
   62909         Reviewed by Eric Seidel.
   62910 
   62911         Clean up the files relating to NodeLists.
   62912 
   62913         * dom/ChildNodeList.cpp:
   62914         (WebCore::ChildNodeList::ChildNodeList):
   62915         (WebCore::ChildNodeList::length):
   62916         (WebCore::ChildNodeList::item):
   62917         (WebCore::ChildNodeList::nodeMatches):
   62918         * dom/ChildNodeList.h:
   62919         * dom/DynamicNodeList.cpp:
   62920         (WebCore::DynamicNodeList::itemForwardsFromCurrent):
   62921         (WebCore::DynamicNodeList::itemBackwardsFromCurrent):
   62922         (WebCore::DynamicNodeList::itemWithName):
   62923         * dom/DynamicNodeList.h:
   62924         (WebCore::DynamicNodeList::needsNotifications):
   62925         * dom/NameNodeList.cpp:
   62926         (WebCore::NameNodeList::NameNodeList):
   62927         (WebCore::NameNodeList::rootNodeAttributeChanged):
   62928         (WebCore::NameNodeList::nodeMatches):
   62929         * dom/NameNodeList.h:
   62930         * dom/NodeList.h:
   62931         * dom/SelectorNodeList.h:
   62932 
   62933 2007-12-25  Sam Weinig  <sam (a] webkit.org>
   62934 
   62935         Fix non-mac builds.
   62936 
   62937         * WebCore.pro:
   62938         * WebCore.vcproj/WebCore.vcproj:
   62939         * WebCoreSources.bkl:
   62940 
   62941 2007-12-25  Sam Weinig  <sam (a] webkit.org>
   62942 
   62943         Rubber stamped by Eric Seidel.
   62944 
   62945         Move TagNodeList into its own file.
   62946 
   62947         * WebCore.xcodeproj/project.pbxproj:
   62948         * dom/Node.cpp:
   62949         * dom/TagNodeList.cpp: Copied from dom/Node.cpp.
   62950         (WebCore::TagNodeList::TagNodeList):
   62951         * dom/TagNodeList.h: Copied from dom/Node.cpp.
   62952 
   62953 2007-12-25  Sam Weinig  <sam (a] webkit.org>
   62954 
   62955         Reviewed by Eric Seidel.
   62956 
   62957         Simplify the NodeList architecture.
   62958         - Rename recursiveItem() to item(), since it is not recursive.
   62959         - Make recursiveLength() iterative and rename to length().
   62960         - Remove now unneeded overrides of item() and length() that used 
   62961           to call the recursive variants.
   62962 
   62963         * dom/ClassNodeList.cpp:
   62964         * dom/ClassNodeList.h:
   62965         * dom/DynamicNodeList.cpp:
   62966         (WebCore::DynamicNodeList::length):
   62967         (WebCore::DynamicNodeList::item):
   62968         (WebCore::DynamicNodeList::rootNodeAttributeChanged): Move implementation 
   62969         into the .cpp file since virtual methods can't be inlined.
   62970         * dom/DynamicNodeList.h:
   62971         * dom/NameNodeList.cpp:
   62972         * dom/NameNodeList.h:
   62973         * dom/Node.cpp:
   62974 
   62975 2007-12-25  Alp Toker  <alp (a] atoker.com>
   62976 
   62977         More complete GTK+/Qt/Wx/Win build fixes for breakage introduced in
   62978         r28981.
   62979 
   62980         * WebCore.pro:
   62981         * WebCore.vcproj/WebCore.vcproj:
   62982         * WebCoreSources.bkl:
   62983 
   62984 2007-12-25  Alp Toker  <alp (a] atoker.com>
   62985 
   62986         Win build fix for breakage introduced in r28981.
   62987 
   62988         * WebCore.vcproj/WebCore.vcproj:
   62989 
   62990 2007-12-25  Alp Toker  <alp (a] atoker.com>
   62991 
   62992         Wx build fix for breakage introduced in r28981.
   62993 
   62994         * WebCoreSources.bkl:
   62995 
   62996 2007-12-25  Alp Toker  <alp (a] atoker.com>
   62997 
   62998         GTK+/Qt build fix for breakage introduced in r28981.
   62999 
   63000         * WebCore.pro:
   63001 
   63002 2007-12-25  David Smith  <catfish.man (a] gmail.com> and Sam Weinig  <sam (a] webkit.org>
   63003 
   63004         Reviewed by Oliver.
   63005         
   63006         - http://bugs.webkit.org/show_bug.cgi?id=16587
   63007         Implement the most useful part of the W3C Selectors API.
   63008 
   63009         * WebCore.xcodeproj/project.pbxproj:
   63010         * css/CSSStyleSelector.h: Make Node a friend of CSSStyleSelector so it can use checkSelector()
   63011         * dom/ChildNodeList.cpp:
   63012         (WebCore::ChildNodeList::ChildNodeList): Change to being a DynamicNodeList
   63013         * dom/ChildNodeList.h:
   63014         * dom/ClassNodeList.cpp:
   63015         (WebCore::ClassNodeList::ClassNodeList): Change to being a DynamicNodeList
   63016         * dom/ClassNodeList.h:
   63017         * dom/Document.idl: Add the new functions
   63018         * dom/DynamicNodeList.cpp: Copied from WebCore/dom/NodeList.cpp.
   63019         (WebCore::DynamicNodeList::DynamicNodeList): Rename NodeList to DynamicNodeList, to differentiate it from the new StaticNodeList
   63020         (WebCore::DynamicNodeList::~DynamicNodeList):
   63021         (WebCore::DynamicNodeList::recursiveLength):
   63022         (WebCore::DynamicNodeList::itemForwardsFromCurrent):
   63023         (WebCore::DynamicNodeList::itemBackwardsFromCurrent):
   63024         (WebCore::DynamicNodeList::recursiveItem):
   63025         (WebCore::DynamicNodeList::itemWithName):
   63026         (WebCore::DynamicNodeList::rootNodeChildrenChanged):
   63027         (WebCore::DynamicNodeList::Caches::Caches):
   63028         (WebCore::DynamicNodeList::Caches::reset):
   63029         * dom/DynamicNodeList.h: Copied from WebCore/dom/NodeList.h.
   63030         (WebCore::DynamicNodeList::rootNodeAttributeChanged):
   63031         * dom/Element.idl: Add the new functions
   63032         * dom/NameNodeList.cpp: Change to being a DynamicNodeList
   63033         (WebCore::NameNodeList::NameNodeList):
   63034         * dom/NameNodeList.h:
   63035         (WebCore::NameNodeList::rootNodeAttributeChanged):
   63036         * dom/Node.cpp:
   63037         (WebCore::TagNodeList::TagNodeList): Change to being a DynamicNodeList
   63038         (WebCore::Node::registerDynamicNodeList):
   63039         (WebCore::Node::unregisterDynamicNodeList):
   63040         (WebCore::Node::getElementsByName):
   63041         (WebCore::Node::getElementsByClassName):
   63042         (WebCore::Node::querySelector): new
   63043         (WebCore::Node::querySelectorAll): new
   63044         * dom/Node.h:
   63045         * dom/NodeList.cpp: Removed.
   63046         * dom/NodeList.h: This is now an abstract superclass of DynamicNodeList and StaticNodeList
   63047         (WebCore::NodeList::NodeList):
   63048         (WebCore::NodeList::~NodeList):
   63049         * dom/SelectorNodeList.cpp: Added.
   63050         (WebCore::SelectorNodeList::SelectorNodeList): New StaticNodeList subclass that filters elements by CSS selector
   63051         * dom/SelectorNodeList.h: Added.
   63052         * dom/StaticNodeList.cpp: Added.
   63053         (WebCore::StaticNodeList::length):
   63054         (WebCore::StaticNodeList::item):
   63055         (WebCore::StaticNodeList::itemWithName):
   63056         * dom/StaticNodeList.h: Added.
   63057         (WebCore::StaticNodeList::StaticNodeList):
   63058         (WebCore::StaticNodeList::~StaticNodeList):
   63059 
   63060 2007-12-25  Mark Rowe  <mrowe (a] apple.com>
   63061 
   63062         Reviewed by Sam Weinig.
   63063 
   63064         Implement a lock-free ThreadSafeShared for i386, x86_64, ppc and ppc64.
   63065         http://bugs.webkit.org/show_bug.cgi?id=16596
   63066 
   63067         This is a 1.7x as fast as the lock-based implementation on x86 for a single-threaded use
   63068         of ThreadSafeShared but is closer to 280x as fast when there is heavy concurrent multi-threaded
   63069         access to a single ThreadSafeShared object.
   63070 
   63071         The atomic operations are based on those used by the Boost C++ library's shared_ptr implementation.
   63072 
   63073         * platform/Threading.h:
   63074         (WebCore::atomicIncrement):
   63075         (WebCore::atomicDecrement):
   63076         (WebCore::ThreadSafeShared::ThreadSafeShared):
   63077         (WebCore::ThreadSafeShared::ref): Use lock-free operations if available.
   63078         (WebCore::ThreadSafeShared::deref): Ditto.
   63079         (WebCore::ThreadSafeShared::hasOneRef):
   63080         (WebCore::ThreadSafeShared::refCount):
   63081         (WebCore::ThreadSafeShared::isThreadSafe):
   63082 
   63083 2007-12-24  Darin Adler  <darin (a] apple.com>
   63084 
   63085         * platform/text/PlatformString.h: Removed now-incorrect comment.
   63086         Added a comment about copy().
   63087         * platform/text/StringImpl.h: Added a comment about copy().
   63088 
   63089 2007-12-24  Darin Adler  <darin (a] apple.com>
   63090 
   63091         Reviewed by Maciej.
   63092 
   63093         - http://bugs.webkit.org/show_bug.cgi?id=16550
   63094           make StringImpl immutable
   63095 
   63096         I tried to keep the changes to a minimum. In some cases there is
   63097         room for optimization -- I didn't try to add in the "single ref count"
   63098         optimizations and there might be a tiny bit more string copying than
   63099         we had before.
   63100 
   63101         * WebCore.base.exp: Updated.
   63102 
   63103         * dom/CharacterData.cpp:
   63104         (WebCore::CharacterData::appendData): Changed to use String since
   63105         StringImpl doesn't have mutating functions any more.
   63106         (WebCore::CharacterData::insertData): Ditto.
   63107         (WebCore::CharacterData::deleteData): Ditto.
   63108         (WebCore::CharacterData::replaceData): Ditto.
   63109         * dom/Text.cpp:
   63110         (WebCore::Text::splitText): Changed to use substring instead of
   63111         remove since StringImpl does't have mutating functions any more.
   63112         * editing/CompositeEditCommand.cpp:
   63113         (WebCore::CompositeEditCommand::deleteInsignificantText): Changed
   63114         to use String instead of StringImpl so we can use remove.
   63115 
   63116         * platform/text/PlatformString.h: Removed newUninitialized.
   63117         Added append that takes a character pointer and length.
   63118 
   63119         * platform/text/String.cpp:
   63120         (WebCore::String::insert): Added an implementation that does not
   63121         rely on an underlying StringImpl function.
   63122         (WebCore::String::append): Ditto.
   63123         (WebCore::String::truncate): Ditto.
   63124         (WebCore::String::remove): Ditto.
   63125         (WebCore::String::charactersWithNullTermination): Added an
   63126         implementation that uses the new StringImpl null termination feature,
   63127         which does not require modifying a string.
   63128 
   63129         * platform/text/StringImpl.cpp:
   63130         (WebCore::isSpace): Fix comment.
   63131         (WebCore::StringImpl::StringImpl): Added a new constructor that makes
   63132         a string with a trailing null character.
   63133         (WebCore::StringImpl::substring): Marked const.
   63134         (WebCore::StringImpl::replace): Marked const; had to add quite a few
   63135         const_cast. Also rewrote one of these to work without modifying the
   63136         existing string.
   63137 
   63138         * platform/text/StringImpl.h: Fixed a mistake where the empty string had
   63139         m_hasTerminatingNullCharacter uninitialized. Added a type and constructor
   63140         for creating strings that have a trailing null character. Added a
   63141         hasTerminatingNullCharacter function. Removed newUninitialized,
   63142         charactersWithNullTermination, append, insert, truncate, and remove.
   63143         Marked lots of other functions const.
   63144 
   63145         * platform/text/TextCodecLatin1.cpp:
   63146         (WebCore::TextCodecLatin1::decode): Rewrote to use a Vector instead of
   63147         newUninitialized.
   63148         * platform/text/TextCodecUTF16.cpp:
   63149         (WebCore::TextCodecUTF16::decode): Ditto.
   63150         * platform/text/TextCodecUserDefined.cpp:
   63151         (WebCore::TextCodecUserDefined::decode): Ditto.
   63152 
   63153         * rendering/RenderStyle.cpp:
   63154         (WebCore::RenderStyle::setContent): Changed to use String since
   63155         StringImpl doesn't have mutating functions any more.
   63156 
   63157 2007-12-24  Alexey Proskuryakov  <ap (a] webkit.org>
   63158 
   63159         Reviewed by Oliver.
   63160 
   63161         Fix fast/events/arrow-keys-on-body.html, failing on Windows.
   63162 
   63163         * platform/win/KeyEventWin.cpp:
   63164         (WebCore::isKeypadEvent):
   63165         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
   63166         Use HIWORD() macro instead of shifting the value explicitly (no change in behavior).
   63167 
   63168 2007-12-23  Alexey Proskuryakov  <ap (a] webkit.org>
   63169 
   63170         Fix Debug and Release QTMovieWin bulds.
   63171 
   63172         * WebCore.vcproj/QTMovieWin.vcproj:
   63173         * WebCore.vcproj/debug.vsprops:
   63174         * WebCore.vcproj/debug_internal.vsprops:
   63175         * WebCore.vcproj/release.vsprops:
   63176         Use LibraryConfigSuffix instead of WebKitConfigSuffix for pthreadVC2.
   63177         Build release import lib into \lib, not \bin.
   63178 
   63179 2007-12-23  Alp Toker  <alp (a] atoker.com>
   63180 
   63181         Reviewed by Holger Freyther.
   63182 
   63183         http://bugs.webkit.org/show_bug.cgi?id=15382
   63184         [CAIRO] Canvas pattern support
   63185 
   63186         http://bugs.webkit.org/show_bug.cgi?id=16577
   63187         Merge Cairo enhancements from Apollo project
   63188 
   63189         Add support for canvas patterns.
   63190 
   63191         Make Image::nativeImageForCurrentFrame() public.
   63192 
   63193         Fix some typos along the way.
   63194 
   63195         The globalAlpha canvas fixes are not included in this patch as
   63196         they're slightly more intrusive and may conflict conceptually with
   63197         GraphicsContext::setAlpha().
   63198 
   63199         * html/CanvasPattern.cpp:
   63200         (WebCore::CanvasPattern::CanvasPattern):
   63201         (WebCore::CanvasPattern::~CanvasPattern):
   63202         (WebCore::CanvasPattern::createPattern):
   63203         * html/CanvasPattern.h:
   63204         (WebCore::CanvasPattern::platformImage):
   63205         * html/CanvasRenderingContext2D.cpp:
   63206         (WebCore::CanvasRenderingContext2D::setShadow):
   63207         (WebCore::CanvasRenderingContext2D::applyShadow):
   63208         (WebCore::CanvasRenderingContext2D::drawImage):
   63209         (WebCore::CanvasRenderingContext2D::createPattern):
   63210         (WebCore::CanvasRenderingContext2D::applyStrokePattern):
   63211         (WebCore::CanvasRenderingContext2D::applyFillPattern):
   63212         * platform/graphics/Image.h:
   63213         (WebCore::Image::nativeImageForCurrentFrame):
   63214 
   63215 2007-12-23  Kevin Ollivier  <kevino (a] theolliviers.com>
   63216 
   63217         Reviewed by Eric Seidel.
   63218 
   63219         Remove getWxBitmap as we have nativeImageForCurrentFrame now,
   63220         and don't draw a border in fillRect.
   63221 
   63222         * platform/graphics/BitmapImage.h:
   63223         * platform/graphics/wx/GraphicsContextWx.cpp:
   63224         (WebCore::GraphicsContext::fillRect):
   63225         * platform/graphics/wx/ImageWx.cpp:
   63226 
   63227 2007-12-23  Alp Toker  <alp (a] atoker.com>
   63228 
   63229         Reviewed by Holger Freyther.
   63230 
   63231         http://bugs.webkit.org/show_bug.cgi?id=16577
   63232         Merge Cairo enhancements from Apollo project
   63233 
   63234         This patch is based on initial merging work by Brent Fulgham. Adobe's
   63235         code has been modified in a few places to better suit the existing
   63236         coding style.
   63237 
   63238         Implement more clipping and drawing functions.
   63239 
   63240         Save and restore the fill rule manually when clipping.
   63241 
   63242         Avoid image surface creation when the image buffer has height zero.
   63243 
   63244         * platform/graphics/cairo/GraphicsContextCairo.cpp:
   63245         (WebCore::GraphicsContext::clip):
   63246         (WebCore::GraphicsContext::addInnerRoundedRectClip):
   63247         (WebCore::GraphicsContext::addPath):
   63248         (WebCore::GraphicsContext::clipOut):
   63249         (WebCore::GraphicsContext::clipOutEllipseInRect):
   63250         (WebCore::GraphicsContext::fillRoundedRect):
   63251         * platform/graphics/cairo/ImageSourceCairo.cpp:
   63252         (WebCore::ImageSource::createFrameAtIndex):
   63253 
   63254 2007-12-23  Nikolas Zimmermann  <zimmermann (a] kde.org>
   63255 
   63256         Reviewed by Mark.
   63257 
   63258         Fix wrong placed ifdef - wrapping SVGDefsElement, instead of SVGDefinitionSrcElement in SVG_FONTS block.
   63259 
   63260         * bindings/objc/DOM.mm:
   63261         (WebCore::createElementClassMap):
   63262 
   63263 2007-12-22  Alp Toker  <alp (a] atoker.com>
   63264 
   63265         GTK+ build fix
   63266 
   63267         GTK_TARGET_OTHER_APP is not available in older GTK+ versions. Pass
   63268         empty target flags for now.
   63269 
   63270         Check GTK+, not GLib versions, since they are different.
   63271 
   63272         * platform/gtk/PasteboardGtk.cpp:
   63273         (WebCore::Pasteboard::documentFragment):
   63274 
   63275 2007-12-22  Luca Bruno  <lethalman88 (a] gmail.com>
   63276 
   63277         Reviewed by Alp Toker.
   63278 
   63279         http://bugs.webkit.org/show_bug.cgi?id=16311
   63280         [Gtk] Copy rich text to clipboard as text/plain and text/html.
   63281 
   63282         Hook into the WebView to get the correct clipboard object on the
   63283         appropriate display. This is necessary because GTK+ does not have
   63284         global clipboards.
   63285 
   63286         * WebCore.pro:
   63287         * platform/Pasteboard.h:
   63288         (WebCore::Pasteboard::setHelper): added for GTK
   63289         (WebCore::Pasteboard::m_helper): private added for GTK
   63290         * platform/gtk/PasteboardGtk.cpp:
   63291         (WebCore::PasteboardSelectionData): added to support GTK selection data callback
   63292         (WebCore::clipboard_get_contents_cb): added
   63293         (WebCore::clipboard_clear_contents_cb): added
   63294         (WebCore::Pasteboard::~Pasteboard):
   63295         (WebCore::Pasteboard::setHelper):
   63296         (WebCore::Pasteboard::writeSelection): copy rich text
   63297         (WebCore::Pasteboard::documentFragment): 
   63298         (WebCore::Pasteboard::plainText): 
   63299         * platform/gtk/PasteboardHelper.h: Added.
   63300 
   63301 2007-12-22  Nikolas Zimmermann  <zimmermann (a] kde.org>
   63302 
   63303         Reviewed by Oliver.
   63304 
   63305         Fixes: http://bugs.webkit.org/show_bug.cgi?id=15966 (Crash in SVGRootInlineBox::walkTextChunks() on mouse hover)
   63306 
   63307         Add new isSVGRootInlineBox() function to InlineBox to be able to differentiate between RootInlineBox/SVGRootInlineBox.
   63308         SVG assumed it's root inline box (for <text> elements) is always of type SVGRootInlineBox, which is not the case
   63309         for HTML text in <foreignObject>. Text selection doesn't work so far as line box offsets are wrong - which is visible
   63310         in Web Inspector.
   63311 
   63312         * rendering/InlineBox.h:
   63313         (WebCore::InlineBox::isSVGRootInlineBox):
   63314         * rendering/SVGInlineTextBox.cpp:
   63315         (WebCore::SVGInlineTextBox::svgRootInlineBox):
   63316         (WebCore::SVGInlineTextBox::closestCharacterToPosition):
   63317         (WebCore::SVGInlineTextBox::selectionRect):
   63318         * rendering/SVGRenderTreeAsText.cpp:
   63319         (WebCore::writeSVGInlineTextBox):
   63320         * rendering/SVGRootInlineBox.h:
   63321         (WebCore::SVGRootInlineBox::isSVGRootInlineBox):
   63322 
   63323 2007-12-22  Alp Toker  <alp (a] atoker.com>
   63324 
   63325         LOW_BANDWIDTH_DISPLAY build fix
   63326 
   63327         Track recent KURL DeprecatedString changes.
   63328 
   63329         * loader/FrameLoader.cpp:
   63330         (WebCore::FrameLoader::switchOutLowBandwidthDisplayIfReady):
   63331 
   63332 2007-12-22  Dan Bernstein  <mitz (a] apple.com>
   63333 
   63334         - Windows build fix
   63335 
   63336         * WebCore.vcproj/WebCore.vcproj:
   63337 
   63338 2007-12-22  Xan Lopez  <xan (a] gnome.org>
   63339 
   63340         Reviewed by Alp Toker.
   63341 
   63342         Add missing return 0 to fix a compile warning.
   63343 
   63344         * page/gtk/FrameGtk.cpp:
   63345         (WebCore::Frame::createScriptInstanceForWidget):
   63346 
   63347 2007-12-21  Antti Koivisto  <antti (a] apple.com>
   63348 
   63349         Reviewed by Darin, Adam and Steve.
   63350 
   63351         Add media playback support for Windows.
   63352         
   63353         The implementation uses low level QuickTime API. DLL is
   63354         needed to work around CF use in both WebKit and QuickTime.
   63355         
   63356         This makes Windows build depend on the QuickTime SDK 
   63357         
   63358         http://developer.apple.com/quicktime/download/
   63359         
   63360         but not QuickTime itself.
   63361         
   63362         QTMovieWinTimer contains some copy code from SharedTimerWin. It
   63363         is used in the QuickTime access DLL which can't use WebCore
   63364         SharedTimer due to dependency problems.
   63365 
   63366         * WebCore.vcproj/QTMovieWin.vcproj: Added.
   63367         * WebCore.vcproj/WebCore.vcproj:
   63368         * WebCore.vcproj/build-generated-files.sh:
   63369         * html/HTMLMediaElement.cpp:
   63370         (WebCore::HTMLMediaElement::setSrc):
   63371         * platform/graphics/MediaPlayer.cpp:
   63372         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp: Added.
   63373         (WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
   63374         (WebCore::MediaPlayerPrivate::~MediaPlayerPrivate):
   63375         (WebCore::MediaPlayerPrivate::load):
   63376         (WebCore::MediaPlayerPrivate::play):
   63377         (WebCore::MediaPlayerPrivate::pause):
   63378         (WebCore::MediaPlayerPrivate::duration):
   63379         (WebCore::MediaPlayerPrivate::currentTime):
   63380         (WebCore::MediaPlayerPrivate::seek):
   63381         (WebCore::MediaPlayerPrivate::doSeek):
   63382         (WebCore::MediaPlayerPrivate::cancelSeek):
   63383         (WebCore::MediaPlayerPrivate::seekTimerFired):
   63384         (WebCore::MediaPlayerPrivate::setEndTime):
   63385         (WebCore::MediaPlayerPrivate::startEndPointTimerIfNeeded):
   63386         (WebCore::MediaPlayerPrivate::endPointTimerFired):
   63387         (WebCore::MediaPlayerPrivate::paused):
   63388         (WebCore::MediaPlayerPrivate::seeking):
   63389         (WebCore::MediaPlayerPrivate::naturalSize):
   63390         (WebCore::MediaPlayerPrivate::hasVideo):
   63391         (WebCore::MediaPlayerPrivate::setVolume):
   63392         (WebCore::MediaPlayerPrivate::setMuted):
   63393         (WebCore::MediaPlayerPrivate::setRate):
   63394         (WebCore::MediaPlayerPrivate::dataRate):
   63395         (WebCore::MediaPlayerPrivate::maxTimeBuffered):
   63396         (WebCore::MediaPlayerPrivate::maxTimeSeekable):
   63397         (WebCore::MediaPlayerPrivate::maxTimeLoaded):
   63398         (WebCore::MediaPlayerPrivate::bytesLoaded):
   63399         (WebCore::MediaPlayerPrivate::totalBytesKnown):
   63400         (WebCore::MediaPlayerPrivate::totalBytes):
   63401         (WebCore::MediaPlayerPrivate::cancelLoad):
   63402         (WebCore::MediaPlayerPrivate::updateStates):
   63403         (WebCore::MediaPlayerPrivate::didEnd):
   63404         (WebCore::MediaPlayerPrivate::setRect):
   63405         (WebCore::MediaPlayerPrivate::setVisible):
   63406         (WebCore::MediaPlayerPrivate::paint):
   63407         (WebCore::MediaPlayerPrivate::getSupportedTypes):
   63408         (WebCore::MediaPlayerPrivate::movieEnded):
   63409         (WebCore::MediaPlayerPrivate::movieLoadStateChanged):
   63410         (WebCore::MediaPlayerPrivate::movieTimeChanged):
   63411         (WebCore::MediaPlayerPrivate::movieNewImageAvailable):
   63412         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.h: Added.
   63413         (WebCore::MediaPlayerPrivate::networkState):
   63414         (WebCore::MediaPlayerPrivate::readyState):
   63415         * platform/graphics/win/QTMovieWin.cpp: Added.
   63416         (updateTaskTimer):
   63417         (QTMovieWinPrivate::QTMovieWinPrivate):
   63418         (QTMovieWinPrivate::~QTMovieWinPrivate):
   63419         (taskTimerFired):
   63420         (QTMovieWinPrivate::startTask):
   63421         (QTMovieWinPrivate::endTask):
   63422         (QTMovieWinPrivate::task):
   63423         (QTMovieWinPrivate::registerDrawingCallback):
   63424         (QTMovieWinPrivate::drawingComplete):
   63425         (QTMovieWinPrivate::createGWorld):
   63426         (QTMovieWinPrivate::setSize):
   63427         (QTMovieWinPrivate::deleteGWorld):
   63428         (QTMovieWin::QTMovieWin):
   63429         (QTMovieWin::~QTMovieWin):
   63430         (QTMovieWin::play):
   63431         (QTMovieWin::pause):
   63432         (QTMovieWin::rate):
   63433         (QTMovieWin::setRate):
   63434         (QTMovieWin::duration):
   63435         (QTMovieWin::currentTime):
   63436         (QTMovieWin::setCurrentTime):
   63437         (QTMovieWin::setVolume):
   63438         (QTMovieWin::setMuted):
   63439         (QTMovieWin::dataSize):
   63440         (QTMovieWin::maxTimeLoaded):
   63441         (QTMovieWin::loadState):
   63442         (QTMovieWin::getNaturalSize):
   63443         (QTMovieWin::setSize):
   63444         (QTMovieWin::setVisible):
   63445         (QTMovieWin::paint):
   63446         (QTMovieWin::load):
   63447         (movieDrawingCompleteProc):
   63448         (initializeSupportedTypes):
   63449         (QTMovieWin::countSupportedTypes):
   63450         (QTMovieWin::getSupportedType):
   63451         (QTMovieWin::initializeQuickTime):
   63452         (DllMain):
   63453         * platform/graphics/win/QTMovieWin.h: Added.
   63454         * platform/graphics/win/QTMovieWinTimer.cpp: Added.
   63455         (TimerWindowWndProc):
   63456         (initializeOffScreenTimerWindow):
   63457         (setSharedTimerFiredFunction):
   63458         (timerFired):
   63459         (setSharedTimerFireDelay):
   63460         (stopSharedTimer):
   63461         (setSharedTimerInstanceHandle):
   63462         (systemTime):
   63463         * platform/graphics/win/QTMovieWinTimer.h: Added.
   63464         * rendering/RenderMedia.cpp:
   63465         (WebCore::MediaControlPlayButtonElement::update):
   63466 
   63467 2007-12-21  Brent Fulgham  <bfulgham (a] gmail.com>
   63468 
   63469         Reviewed by Alp Toker.
   63470 
   63471         http://bugs.webkit.org/show_bug.cgi?id=16558
   63472         Cairo WebCore Rendering Fails on arc drawing
   63473 
   63474         Fix for bug reported (and patched) by Apollo team in which
   63475         arcs were draw in reverse (resulting in inverted images).
   63476         Review of the source found that the 'clockwise' term was
   63477         actually meant to mean 'anticlockwise' so the IDL and
   63478         supporting classes have been changed to match this. 
   63479 
   63480         * html/CanvasRenderingContext2D.cpp:
   63481         (WebCore::CanvasRenderingContext2D::arc):
   63482         * html/CanvasRenderingContext2D.idl:
   63483         * platform/graphics/cairo/PathCairo.cpp:
   63484         (WebCore::Path::addArc):
   63485         (WebCore::Path::addEllipse):
   63486         * platform/graphics/Path.h:
   63487 
   63488 2007-12-21  Alexey Proskuryakov  <ap (a] webkit.org>
   63489 
   63490         Reviewed by Oliver.
   63491 
   63492         <rdar://problem/5629995> Incorrect display of Danish characters on web site.
   63493 
   63494         Test: http/tests/xmlhttprequest/response-encoding.html
   63495 
   63496         * xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::didReceiveData):
   63497         Default to UTF-8 for HTML, too. It's unfortunate that we have to use different
   63498         rules for main content and XHR responses, but this matches both IE and Firefox.
   63499 
   63500 2007-12-20  Jon Honeycutt  <jhoneycutt (a] apple.com>
   63501 
   63502         Reviewed by Kevin Decker.
   63503 
   63504         <rdar://problem/5655797> REGRESSION(304-306A10) Safari does not find
   63505         shockwave plugin on freshly installed OS
   63506 
   63507         Look for Director plugin in its native directory.
   63508 
   63509         * plugins/win/PluginDatabaseWin.cpp:
   63510         (WebCore::PluginDatabaseWin::getPluginsInPaths): The Director plugin
   63511         doesn't start with "np," so special case its filename.
   63512         (WebCore::addMacromediaPluginPaths): Add Flash and "Shockwave 10"
   63513         directories to the plugin paths.
   63514         (WebCore::PluginDatabaseWin::defaultPluginPaths):
   63515 
   63516 2007-12-20  Peter Kasting  <pkasting (a] google.com>
   63517 
   63518         Reviewed by Alp Toker.
   63519 
   63520         http://bugs.webkit.org/show_bug.cgi?id=16508
   63521         Fix regression in GIFImageDecoder.cpp: "Haeberli hack" led to wrongly
   63522         decoded transparent areas.
   63523 
   63524         * platform/image-decoders/gif/GIFImageDecoder.cpp:
   63525         (WebCore::GIFImageDecoder::haveDecodedRow):
   63526         * platform/image-decoders/gif/GIFImageDecoder.h:
   63527         * platform/image-decoders/gif/GIFImageReader.cpp:
   63528         (GIFImageReader::output_row):
   63529 
   63530 2007-12-20  Justin Garcia  <justin.garcia (a] apple.com>
   63531 
   63532         Reviewed by Oliver Hunt.
   63533 
   63534         <rdar://problem/5543472> GoogleDocs: Safari hangs when creating a list from a particular selection
   63535         
   63536         Still need to fix similar issues with the other operations that iterate 
   63537         over selected paragraphs, like FormatBlock, Indent and Outdent (<rdar://problem/5658933>).
   63538 
   63539         * editing/IndentOutdentCommand.cpp:
   63540         (WebCore::IndentOutdentCommand::indentRegion): Added a FIXME.
   63541         * editing/IndentOutdentCommand.h: Removed an unused function.
   63542         * editing/InsertListCommand.cpp:
   63543         (WebCore::InsertListCommand::modifyRange): 
   63544         Renamed visibleStart to startOfSelection and visibleEnd to endOfSelection.
   63545         Call the new selectionForParagraphIteration, which a) prevents operations like this
   63546         one from being performed on a table that isn't fully selected (where the selection
   63547         starts just before the table and ends inside it), and b) helps prevent paragraph
   63548         iteration from going past the end of the selection.
   63549         Call the new startOfNextParagraph, instead of using endOfParagraph(v).next(),
   63550         since when v is in the last paragraph of the last cell of a table, that expression 
   63551         will return the position after the table, not the start of the next paragraph.
   63552         * editing/htmlediting.cpp:
   63553         (WebCore::enclosingListChild): Don't go above a table cell, so that list operations
   63554         take effect inside the table cell where they are performed.
   63555         (WebCore::selectionForParagraphIteration): Added, see above.
   63556         (WebCore::indexForVisiblePosition): Moved from IndentOutdentCommand.cpp.
   63557         * editing/htmlediting.h:
   63558         * editing/visible_units.cpp:
   63559         (WebCore::startOfNextParagraph): Added, see above.
   63560         * editing/visible_units.h:
   63561         * editing/TextIterator.h:
   63562         (WebCore::TextIterator::exitNode): Added a FIXME.
   63563 
   63564 2007-12-20  Alp Toker  <alp (a] atoker.com>
   63565 
   63566         Rubber-stamped by Maciej.
   63567 
   63568         http://bugs.webkit.org/show_bug.cgi?id=16542
   63569         [GTK] Text is missing with old Pango version
   63570 
   63571         Back out commits r28880, r28876, r28865, r28864 which added Pango font
   63572         selection support. These changes caused a regression where no text was
   63573         displayed with older Pango versions.
   63574 
   63575         * platform/graphics/gtk/FontCacheGtk.cpp:
   63576         (WebCore::FontCache::fontExists):
   63577         * platform/graphics/gtk/FontDataGtk.cpp:
   63578         (WebCore::FontData::platformDestroy):
   63579         (WebCore::FontData::containsCharacters):
   63580         * platform/graphics/gtk/FontPlatformData.h:
   63581         (WebCore::FontPlatformData::FontPlatformData):
   63582         (WebCore::FontPlatformData::hash):
   63583         * platform/graphics/gtk/FontPlatformDataGtk.cpp:
   63584         (WebCore::FontPlatformData::FontPlatformData):
   63585         (WebCore::FontPlatformData::init):
   63586         (WebCore::FontPlatformData::~FontPlatformData):
   63587         (WebCore::FontPlatformData::isFixedPitch):
   63588         (WebCore::FontPlatformData::operator==):
   63589         * platform/graphics/gtk/GlyphPageTreeNodeGtk.cpp:
   63590         (WebCore::GlyphPage::fill):
   63591 
   63592 2007-12-20  Timothy Hatcher  <timothy (a] apple.com>
   63593 
   63594         Reviewed by Sam Weinig.
   63595 
   63596         <rdar://problem/5604897> Double-clicking on JavaScript console error
   63597         won't show the line where it occurred
   63598 
   63599         Make the URLs clickable in the console, since double clicking is used for
   63600         word text selection. Makes the word "line" localizable. Messages that don't
   63601         have a URL will no longer print "undefined". Messages that have a line number
   63602         less than or equal to 0 will no longer be printed.
   63603 
   63604         * English.lproj/InspectorLocalizedStrings.js: Add "%s (line %d)".
   63605         * page/inspector/ConsolePanel.js: Tweak how the DOM nodes are created
   63606           and change the click handler to look for a link with the
   63607           "console-message-url" class name.
   63608         * page/inspector/SourcePanel.js: Call setupSourceFrameIfNeeded() if a
   63609           line row is needed. 
   63610         * page/inspector/inspector.css: Update the look of the URL in the console.
   63611 
   63612 2007-12-20  Adam Barth  <hk9565 (a] gmail.com>
   63613 
   63614         Reviewed and landed by Sam Weinig.
   63615 
   63616         http://bugs.webkit.org/show_bug.cgi?id=15313
   63617         <rdar://problem/5514516>
   63618 
   63619         The same-origin check was incorrect in two cases (both fixed in this
   63620         patch):
   63621 
   63622         A) If both the source and the target have set their document.domain
   63623            to the same value, the protocol must also match in order for
   63624            access to be allowed.  Without this requirement, the browser is
   63625            vulnerable to the following attack:
   63626 
   63627            1) Suppose there is an HTTPS site (www.example.com) that sets
   63628               document.domain = "example.com".
   63629            2) A network attacker redirects the browser to http://www.example.com/
   63630               a) injects script to set document.domain = "example.com", and
   63631               b) opens a window to https://www.example.com/
   63632            3) Now the network attacker can inject script into the HTTPS page,
   63633               stealing cookies and issuing banking transactions.
   63634 
   63635         B) If only one of the source and target has set document.domain, then
   63636            access should be denied.  With this behavior, the browser is
   63637            vulnerable to the following attack:
   63638 
   63639            1) Suppose http://foo.example.com/ opens an iframe to
   63640               http://foo.example.com/frame.html that
   63641               a) sets document.domain = "example.com", and
   63642               b) opens an iframe to http://bar.example.com/
   63643               This is a common usage of document.domain for cross-domain
   63644               communication, see for example:
   63645                 http://www.collinjackson.com/research/papers/fp801-jackson.pdf
   63646            2) The inner-most iframe, which is from bar.example.com, sets
   63647               document.domain = "example.com".
   63648            3) Now the inner-most iframe can inject script into the middle
   63649               iframe (say via document.write).  This bar.example.com script
   63650               now has access to the outer-most frame (from foo.example.com).
   63651 
   63652         Both these changes cause WebKit to match the behavior of Firefox 2 and
   63653         IE6 in these cases.  This patch includes regression tests for both
   63654         issues.
   63655 
   63656         Internet Explorer 7 and Opera 9 are more strict in that they require
   63657         the port numbers to match when both pages have document.domain set.
   63658         Opera 9 allows access when only one page has set document.domain, but
   63659         this is a security vulnerability.
   63660 
   63661         Tests: http/tests/security/cross-frame-access-child-explicit-domain.html
   63662                http/tests/security/cross-frame-access-parent-explicit-domain.html
   63663 
   63664         * bindings/js/kjs_window.cpp:
   63665         (KJS::createWindow):
   63666         (KJS::Window::allowsAccessFrom):
   63667         * dom/Document.cpp:
   63668         (WebCore::Document::domain):
   63669         (WebCore::Document::setDomain):
   63670         (WebCore::Document::initSecurityOrigin):
   63671         * dom/Document.h:
   63672         (WebCore::Document::securityOrigin):
   63673         * loader/FrameLoader.cpp:
   63674         (WebCore::FrameLoader::begin):
   63675         (WebCore::FrameLoader::checkCallImplicitClose):
   63676         (WebCore::FrameLoader::shouldAllowNavigation):
   63677         * platform/SecurityOrigin.cpp:
   63678         (WebCore::SecurityOrigin::setForURL):
   63679         (WebCore::SecurityOrigin::createForFrame):
   63680         (WebCore::SecurityOrigin::canAccess):
   63681         * platform/SecurityOrigin.h:
   63682         (WebCore::SecurityOrigin::domain):
   63683         * storage/Database.cpp:
   63684         (WebCore::Database::openDatabase):
   63685         (WebCore::Database::Database):
   63686         (WebCore::Database::securityOriginData):
   63687         * storage/Database.h:
   63688         (WebCore::Database::databaseDebugName):
   63689         * storage/DatabaseTracker.cpp:
   63690         (WebCore::DatabaseTracker::canEstablishDatabase):
   63691         * storage/SQLTransaction.cpp:
   63692         (WebCore::SQLTransaction::postflightAndCommit):
   63693         (WebCore::SQLTransaction::cleanupAfterTransactionErrorCallback):
   63694 
   63695 2007-12-20  Rodney Dawes  <dobey (a] wayofthemonkey.com>
   63696 
   63697         Reviewed by Darin Adler.
   63698 
   63699         Define XP_UNIX when building with plugins on X11.
   63700         Use new npruntime_internal.h instead of npruntime.h.
   63701         http://bugs.webkit.org/show_bug.cgi?id=15669
   63702 
   63703         * ForwardingHeaders/bindings/npruntime_internal.h
   63704         * WebCore.pro:
   63705         * html/HTMLPlugInElement.h:
   63706 
   63707 2007-12-19  johnnyding.webkit  <johnnyding.webkit (a] gmail.com>
   63708 
   63709         Reviewed by Alexey. Landed by Stephanie.
   63710 
   63711         - fix http://bugs.webkit.org/show_bug.cgi?id=16179 | <rdar://problem/5619399>
   63712           Any attribute name start with a unicode which like #xx00(x could be any hex number[0-9a-f]) will cause HTMLTokenizer parse error
   63713           Actually any unicode characters which great than 255 in attribute name will cause Webkit parse the attribute name wrong. So after comparing 
   63714           the same scenario in IE 6/7, FireFox 2/3, Opera, we should treat those characters as part of attribute name.
   63715 
   63716 
   63717         * html/HTMLTokenizer.cpp:
   63718         (WebCore::HTMLTokenizer::parseEntity): Handle Unicode Entity Name by using ASCII version of findEntity.
   63719         (WebCore::HTMLTokenizer::parseTag): Let type of ptr match type of cBuffer.
   63720         * html/HTMLTokenizer.h: Change type of cBuffer from char to UChar.
   63721 
   63722 2007-12-20  Eric Seidel  <eric (a] webkit.org>
   63723 
   63724         Reviewed by Nikolas Zimmermann.
   63725 
   63726         WebKit claims to support SVG feature strings it shouldn't
   63727         http://bugs.webkit.org/show_bug.cgi?id=15480
   63728 
   63729         * dom/DOMImplementation.cpp:
   63730         (WebCore::isSVG10Feature):
   63731         (WebCore::isSVG11Feature):
   63732 
   63733 2007-12-20  John Sullivan  <sullivan (a] apple.com>
   63734 
   63735         Reviewed by Oliver and Geoff
   63736         
   63737         - fix <rdar://problem/5536858> Yellow highlight for find results is sometimes shorter 
   63738           than white "hole" behind it
   63739 
   63740         * rendering/RenderText.cpp:
   63741         (WebCore::RenderText::addLineBoxRects):
   63742         respect useSelectionHeight in all cases; we were only respecting it in one of the two cases
   63743 
   63744 2007-12-20  Dan Bernstein  <mitz (a] apple.com>
   63745 
   63746         Reviewed by Darin Adler.
   63747 
   63748         - fix <rdar://problem/5656368> REGRESSION(3.0.4-ToT): Acid2 test fails to render anything
   63749 
   63750         * platform/win/ScrollViewWin.cpp:
   63751         (WebCore::ScrollView::maximumScroll): Changed back to return the maximum
   63752         scroll offsets even if scrolling is not allowed, because navigation and
   63753         scrollTo should still work.
   63754         (WebCore::ScrollView::wheelEvent): Added early return if scrolling is
   63755         not allowed.
   63756 
   63757 2007-12-17  Tony Chang  <idealisms (a] gmail.com>
   63758 
   63759         Reviewed by Darin.
   63760 
   63761         - Fix for http://bugs.webkit.org/show_bug.cgi?id=16479
   63762           text selection does not always begin at mouse down point
   63763           Reset the m_dragSrc object on mouse down on all platforms.
   63764 
   63765         Test: fast/text/reset-drag-on-mouse-down.html
   63766 
   63767         * page/EventHandler.cpp:
   63768         (WebCore::EventHandler::handleMousePressEvent):
   63769         * page/mac/EventHandlerMac.mm:
   63770         (WebCore::EventHandler::mouseDown):
   63771 
   63772 2007-12-19  Geoffrey Garen  <ggaren (a] apple.com>
   63773 
   63774         Reviewed by Oliver Hunt.
   63775 
   63776         Build support:
   63777         * ForwardingHeaders/kjs/SymbolTable.h: Added.
   63778         * ForwardingHeaders/wtf/VectorTraits.h: Added.
   63779 
   63780         * bindings/js/JSDOMWindowCustom.cpp:
   63781         (WebCore::JSDOMWindow::customGetOwnPropertySlot): Replaced use of
   63782         getDirectLocation with getOwnPropertySlot. getDirectLocation is no
   63783         longer valid, since global declarations are not stored in the property
   63784         map.
   63785 
   63786         (WebCore::JSDOMWindow::customPut): Replaced use of JSObject::put with
   63787         JSGlobalObject::put. JSObject::put is no longer valid, since global
   63788         declarations are not stored in the property map.
   63789 
   63790         * bindings/js/kjs_window.cpp: Replaced JSObject:: calls with Base::
   63791         calls, since JSObject is not our base class. This was always a bug, but
   63792         the bug is even more apparent after some of my changes.
   63793 
   63794         (KJS::Window::clear): Removed call to clearProperties because
   63795         JSGlobalObject::reset takes care of that now.
   63796 
   63797         * history/CachedPage.cpp:
   63798         * history/CachedPage.h: Added support for saving a symbol table and
   63799         localStorage to the page cache, and restoring it.
   63800 
   63801 2007-12-19  Dan Bernstein  <mitz (a] apple.com>
   63802 
   63803         Reviewed by Darin Adler and Dave Hyatt.
   63804 
   63805         - Substitute the user's preferred standard font for an unknown primary
   63806           font before falling back on the platform's last resort font
   63807 
   63808         Cannot be tested in DumpRenderTree because it sets the standard font to
   63809         Times, which is also the hard-coded last resort font on Mac.
   63810 
   63811         * css/CSSFontSelector.cpp:
   63812         (WebCore::CSSFontSelector::getFontData): Changed the early bail out
   63813         condition to allow getting generic font families from settings even if
   63814         there are not @font-face rules. Fixed a typo that mapped fantasy to
   63815         cursive. Added a mapping from -webkit-standard to the standard family.
   63816         * css/CSSStyleSelector.cpp:
   63817         (WebCore::CSSStyleSelector::CSSStyleSelector): Changed to always create
   63818         a font selector.
   63819         (WebCore::CSSRuleSet::addRulesFromSheet):
   63820         (WebCore::CSSStyleSelector::applyProperty): Changed to always use the
   63821         font selector.
   63822         * css/CSSStyleSelector.h:
   63823         (WebCore::CSSStyleSelector::fontSelector):
   63824         * platform/graphics/FontCache.cpp:
   63825         (WebCore::FontCache::getFontData): Try the user's preferred standard
   63826         font before the platform's last resort font.
   63827 
   63828 2007-12-19  Sven Herzberg  <sven (a] imendio.com>
   63829 
   63830         Reviewed by Alp Toker.
   63831 
   63832         Scaled font destruction takes place in FontData::platformDestroy(). No
   63833         need to do it in FontPlatformData::~FontPlatformData().
   63834 
   63835         Destroying platform data in platformDestroy() is a convention we
   63836         borrow from the Mac and Win ports.
   63837 
   63838         * platform/graphics/gtk/FontPlatformDataGtk.cpp:
   63839 
   63840 2007-12-19  Alice Liu  <alice.liu (a] apple.com>
   63841 
   63842         build fix (Windows)
   63843 
   63844         Changed uint to unsigned int.  uint caused Windows build breakage
   63845 
   63846         * page/Page.cpp:
   63847         (WebCore::Page::markAllMatchesForText):
   63848         * page/Page.h:
   63849 
   63850 2007-12-19  Christian Dywan  <christian (a] twotoasts.de> 
   63851 
   63852         Reviewed by Alp Toker.
   63853 
   63854         http://bugs.webkit.org/show_bug.cgi?id=16222
   63855         [GTK] Implement inline search and highlighting of matching strings.
   63856 
   63857         Implement search and highlighting logic directly in WebCore.
   63858 
   63859         * page/Page.cpp:
   63860         (WebCore::incrementFrame):
   63861         (WebCore::Page::findString):
   63862         (WebCore::Page::markAllMatchesForText):
   63863         (WebCore::Page::unmarkAllTextMatches):
   63864         * page/Page.h:
   63865 
   63866 2007-12-19  Geoffrey Garen  <ggaren (a] apple.com>
   63867 
   63868         Reviewed by Sam Weinig, Dan Bernstein.
   63869 
   63870         Tiger build fix: restored some graphics code still needed on Tiger.
   63871 
   63872         * platform/graphics/GraphicsTypes.h:
   63873         * platform/graphics/cg/GraphicsContextCG.cpp:
   63874         * platform/graphics/mac/GraphicsContextMac.mm:
   63875         (WebCore::GraphicsContext::setCompositeOperation):
   63876 
   63877 2007-12-19  Alp Toker  <alp (a] atoker.com>
   63878 
   63879         Build fix for Pango < 1.18.0 breakage introduced in r28864. Use Fc and
   63880         the Pango backend API in these cases.
   63881 
   63882         * platform/graphics/gtk/FontPlatformDataGtk.cpp:
   63883         (WebCore::FontPlatformData::FontPlatformData):
   63884         (WebCore::FontPlatformData::~FontPlatformData):
   63885 
   63886 2007-12-19  Alice Liu  <alice.liu (a] apple.com>
   63887 
   63888         Reviewed by Darin.
   63889 
   63890         Fixed <rdar://problem/5592485> Safari crashed trying to get a motorcycle insurance quote
   63891         on Geico.com WebCore::Document::inPageCache()
   63892 
   63893         Calling Node::willRemove on the focusedNode would immediately tell the document to remove
   63894         the focused node, and trigger JS events.  This means that the document is mutated while
   63895         the engine is trying to tell all child nodes that it's about to removed.  To avoid
   63896         crashing, we need to hold off on mutating the document until node traversal is finished.
   63897 
   63898         * dom/ContainerNode.cpp:
   63899         (WebCore::ContainerNode::removeChild):
   63900         (WebCore::ContainerNode::removeChildren):
   63901         * dom/Node.cpp:
   63902         * dom/Node.h:
   63903         (WebCore::Node::willRemove):
   63904         * loader/FrameLoader.cpp:
   63905         (WebCore::FrameLoader::clear):
   63906 
   63907 2007-12-19  Andre Boule  <aboule (a] apple.com>
   63908 
   63909         Reviewed by Dan Bernstein.
   63910 
   63911         Test: fast/canvas/canvas-composite.html
   63912 
   63913         Fix for:
   63914         <rdar://problem/5640059> GraphicsContext::setCompositeOperation should use CGContextSetBlendMode
   63915 
   63916         This fix makes setCompositeOperation consistent across all platforms that use CG.
   63917 
   63918         The following compositing modes don't pass however that is covered by another bug:
   63919         source-in
   63920         source-out
   63921         destination-in
   63922         destination-atop
   63923         copy
   63924         <rdar://problem/5651783> Some canvas tag compositing modes don't render correctly
   63925 
   63926         * platform/graphics/GraphicsTypes.h:
   63927         * platform/graphics/cg/GraphicsContextCG.cpp:
   63928         (WebCore::GraphicsContext::setCompositeOperation):
   63929         * platform/graphics/mac/GraphicsContextMac.mm:
   63930         * platform/win/GraphicsContextWin.cpp:
   63931 
   63932 2007-12-19  Dan Bernstein  <mitz (a] apple.com>
   63933 
   63934         Reviewed by Dave Hyatt.
   63935 
   63936         - fix <rdar://problem/5650045> REGRESSION: major layout problems in svn r28754 WebKit on Vox.com page
   63937 
   63938         Test: fast/dynamic/subtree-boundary-percent-height.html
   63939 
   63940         * rendering/RenderObject.cpp:
   63941         (WebCore::objectIsRelayoutBoundary): Do not allow overflows with
   63942         percent heights because sometimes they compute to 'auto'.
   63943 
   63944 2007-12-19  Sam Weinig  <sam (a] webkit.org>
   63945 
   63946         Reviewed by Maciej.
   63947 
   63948         http://bugs.webkit.org/show_bug.cgi?id=16511
   63949         Speed up ClassNodeList and NamedNodeList by using the caching mechanism employed by ChildNodeList.
   63950         - This give a ~2.15x speedup on the native test @ http://ejohn.org/apps/classname/
   63951 
   63952         * dom/ChildNodeList.cpp: Use the caching NodeList constructor to turn on caching.
   63953         (WebCore::ChildNodeList::ChildNodeList):
   63954         * dom/ClassNodeList.cpp:
   63955         (WebCore::ClassNodeList::ClassNodeList):
   63956         * dom/ClassNodeList.h:
   63957 
   63958         Move getElementsByName and getElementsByClassName to Node so they
   63959         can use easily employ the caching already used by ChildNodeLists.  In the case of 
   63960         getElementsByClassName, this reduces code duplication in Element as well
   63961         * dom/Document.cpp:
   63962         * dom/Document.h:
   63963 
   63964         Move getElementsByClassName to Node.
   63965         * dom/Element.cpp:
   63966         * dom/Element.h:
   63967 
   63968         * dom/NameNodeList.cpp: Use the caching NodeList constructor to turn on caching.
   63969         (WebCore::NameNodeList::NameNodeList):
   63970         (WebCore::NameNodeList::item):
   63971         * dom/NameNodeList.h:
   63972 
   63973         Add maps of caches for ClassNodeLists and NameNodeList to NodeListsNodeData.
   63974         * dom/Node.cpp:
   63975         (WebCore::TagNodeList::TagNodeList):
   63976         (WebCore::Node::Node):
   63977         (WebCore::Node::~Node):
   63978         (WebCore::Node::childNodes):
   63979         (WebCore::Node::registerNodeList):
   63980         (WebCore::Node::getElementsByName):
   63981         (WebCore::Node::getElementsByClassName):
   63982         * dom/Node.h: Make m_nodeLists an OwnPtr.  Moved getElementsByName and getElementsByClassName here
   63983 
   63984         Allow subclasses to choose whether they want to receive the notifications using a new bit.
   63985         * dom/NodeList.cpp:
   63986         (WebCore::NodeList::NodeList):
   63987         * dom/NodeList.h:
   63988         (WebCore::NodeList::needsNotifications):
   63989 
   63990 2007-12-19  Dave Hyatt  <hyatt (a] apple.com>
   63991 
   63992         Add support for GDI text rendering to WebKit.
   63993       
   63994         Reviewed by mitz
   63995         
   63996         * css/CSSStyleSelector.cpp:
   63997         (WebCore::CSSStyleSelector::applyProperty):
   63998         * dom/Document.cpp:
   63999         (WebCore::Document::recalcStyle):
   64000         * page/Settings.cpp:
   64001         (WebCore::Settings::setFontRenderingMode):
   64002         (WebCore::Settings::fontRenderingMode):
   64003         * page/Settings.h:
   64004         * platform/graphics/Font.h:
   64005         (WebCore::Font::renderingMode):
   64006         * platform/graphics/FontCache.cpp:
   64007         (WebCore::FontPlatformDataCacheKey::FontPlatformDataCacheKey):
   64008         (WebCore::FontPlatformDataCacheKey::operator==):
   64009         (WebCore::computeHash):
   64010         (WebCore::FontCache::getCachedFontPlatformData):
   64011         * platform/graphics/FontDescription.h:
   64012         (WebCore::FontDescription::FontDescription):
   64013         (WebCore::FontDescription::renderingMode):
   64014         (WebCore::FontDescription::setRenderingMode):
   64015         (WebCore::FontDescription::operator==):
   64016         * platform/graphics/GraphicsContext.h:
   64017         * platform/graphics/win/FontCacheWin.cpp:
   64018         (WebCore::FontCache::fontExists):
   64019         (WebCore::FontCache::createFontPlatformData):
   64020         * platform/graphics/win/FontDataWin.cpp:
   64021         (WebCore::FontData::platformInit):
   64022         (WebCore::FontData::smallCapsFontData):
   64023         (WebCore::FontData::containsCharacters):
   64024         (WebCore::FontData::determinePitch):
   64025         (WebCore::FontData::platformWidthForGlyph):
   64026         * platform/graphics/win/FontPlatformData.h:
   64027         (WebCore::FontPlatformData::FontPlatformData):
   64028         (WebCore::FontPlatformData::useGDI):
   64029         (WebCore::FontPlatformData::operator==):
   64030         * platform/graphics/win/FontPlatformDataWin.cpp:
   64031         (WebCore::FontPlatformData::FontPlatformData):
   64032         * platform/graphics/win/FontWin.cpp:
   64033         (WebCore::Font::drawGlyphs):
   64034         * platform/graphics/win/IconWin.cpp:
   64035         (WebCore::Icon::paint):
   64036         * platform/win/GraphicsContextWin.cpp:
   64037         (WebCore::GraphicsContext::getWindowsContext):
   64038         (WebCore::GraphicsContext::releaseWindowsContext):
   64039         * platform/win/UniscribeController.cpp:
   64040         (WebCore::UniscribeController::shapeAndPlaceItem):
   64041         * platform/win/UniscribeController.h:
   64042         * plugins/win/PluginViewWin.cpp:
   64043         (WebCore::PluginViewWin::paint):
   64044 
   64045 2007-12-19  Sven Herzberg  <sven (a] imendio.com>
   64046 
   64047         Reviewed by Alp Toker.
   64048 
   64049         Replace the fontconfig/freetype based font management with a pango
   64050         based one. Fixes:
   64051         http://bugs.webkit.org/show_bug.cgi?id=15229
   64052 
   64053         * platform/gtk/FontDataGtk.cpp (FontData::platformDestroy()): updated
   64054         the platform specific destroy code
   64055         (FontData::containsCharacters()): implemented font coverage with pango
   64056         * platform/gtk/FontPlatformData.h: replaced fontconfig specific
   64057         members with pango-specific ones
   64058         * platform/gtk/FontPlatformDataGtk.cpp: added static members for the
   64059         FontPlatformData class
   64060         (FontPlatformData::FontPlatformData()): implemented the font-matching
   64061         with a PangoFontDescription instead of an FcPattern; initialize the
   64062         scaled font by using the API for PangoCairoFont
   64063         (FontPlatformData::init()): initialize the PangoFontMap and set up a
   64064         hash table to translate the font family name into a font family
   64065         (FontPlatformData::isFixedPitch()): implemented by querying the
   64066         PangoFontFamily
   64067         (FontPlatformData::operator==): compare the FontPlatformData by
   64068         comparing the font pointers or the described fonts
   64069         * platform/gtk/GlyphPageTreeNodeGtk.cpp (pango_font_get_glyph()):
   64070         added a function to query a glyph from a PangoFont
   64071         (GlyphPage::fill()): implemented the fill function with Pango instead
   64072         of fontconfig/freetype
   64073 
   64074 2007-12-19  Alp Toker  <alp (a] atoker.com>
   64075 
   64076         Reviewed by Holger Freyther.
   64077 
   64078         Improve graphics operator approximations
   64079         
   64080         These changes match Cairo's own CG approximations.
   64081 
   64082         * platform/graphics/cairo/GraphicsContextCairo.cpp:
   64083         (WebCore::toCairoOperator):
   64084 
   64085 2007-12-19  Alp Toker  <alp (a] atoker.com>
   64086 
   64087         Reviewed by Holger Freyther.
   64088 
   64089         Check the bounding box before doing a full hit test
   64090 
   64091         * platform/graphics/cairo/PathCairo.cpp:
   64092         (WebCore::Path::contains):
   64093 
   64094 2007-12-18  Sam Weinig  <sam (a] webkit.org>
   64095 
   64096         Reviewed by Geoff.
   64097 
   64098         Fix for <rdar://problem/5646478>
   64099         REGRESSION: fast/events/event-view-toString fails on Leopard
   64100 
   64101         This fixes an issue where we were incorrectly setting the lastInPrototypeChain
   64102         for the JSDOMWindow (the global object) before a call to setPrototype overwrote
   64103         it. This fixes it by passing the prototype up the constructor chain so that it
   64104         is set before any calls can be made.
   64105 
   64106         * bindings/js/kjs_window.cpp:
   64107         (KJS::Window::Window):
   64108         * bindings/js/kjs_window.h:
   64109         * bindings/scripts/CodeGeneratorJS.pm:
   64110 
   64111 2007-12-18  Beth Dakin  <bdakin (a] apple.com>
   64112 
   64113         Reviewed by Oliver.
   64114 
   64115         Fix for <rdar://problem/5616982> SVGs with width and height 100% 
   64116         fail to render when used as <img> or CSS image (16167)
   64117 
   64118         This final part of the work fixes the <img> tag.
   64119 
   64120         This is the real fix. 
   64121         * rendering/RenderImage.cpp:
   64122         (WebCore::RenderImage::calcReplacedWidth): Set the container size 
   64123         on the image. Setting the container size only actually sticks if 
   64124         the values are non-zero, so if the container size really was set, 
   64125         use the imageSize that is calculated using the container size. If 
   64126         it did not stick but the image does have relative width (meaning 
   64127         that the container size is 0), set the width to 0 by hand. We want 
   64128         to avoid setting the width before we have a container size or we 
   64129         will end up incorrectly using the default size of 300x150.
   64130         (WebCore::RenderImage::calcReplacedHeight): Same as above, but for 
   64131         height.
   64132 
   64133         A few more pieces of information have to be exposed through cached 
   64134         image to make this happen.
   64135         * loader/CachedImage.cpp:
   64136         (WebCore::CachedImage::usesImageContainerSize): As mentioned above, 
   64137         when setContainerSize() is called, the container size is only 
   64138         actually set if the values are non-zero. This call tells you if it 
   64139         was set.
   64140         (WebCore::CachedImage::imageHasRelativeWidth):
   64141         (WebCore::CachedImage::imageHasRelativeHeight):
   64142         * loader/CachedImage.h:
   64143         * platform/graphics/Image.h:
   64144         (WebCore::Image::usesContainerSize):
   64145         * svg/graphics/SVGImage.cpp:
   64146         (WebCore::SVGImage::usesContainerSize):
   64147         * svg/graphics/SVGImage.h:
   64148 
   64149 2007-12-18  Mark Rowe  <mrowe (a] apple.com>
   64150 
   64151         Rubber-stamped by Maciej Stachowiak.
   64152 
   64153         Remove outdated and non-functioning project files for the Apollo port.
   64154 
   64155         * WebCore.apolloproj: Removed.
   64156 
   64157 2007-12-18  Steve Falkenburg  <sfalken (a] apple.com>
   64158 
   64159         <rdar://problem/5649911> REGRESSION (304-306A9): Typing 'p' in popup menu for type-to-select brings up Safari Help
   64160         
   64161         Need to translate the char back into a key code for posting our WM_KEYDOWN.
   64162         
   64163         Reviewed by Ada.
   64164 
   64165         * platform/win/PopupMenuWin.cpp:
   64166         (WebCore::PopupWndProc):
   64167 
   64168 2007-12-18  Steve Falkenburg  <sfalken (a] apple.com>
   64169 
   64170         <rdar://problem/5651534> REGRESSION(r28764-r28765): GDI leak drawing text when no appropriate font is available
   64171         
   64172         Our captured metafile from Uniscribe may contain multiple calls to CreateFontIndirect.
   64173         Only create a font with the last one.
   64174         
   64175         Reviewed by Mitz, Darin.
   64176 
   64177         * platform/graphics/win/FontCacheWin.cpp:
   64178         (WebCore::metaFileEnumProc):
   64179         (WebCore::FontCache::getFontDataForCharacters):
   64180 
   64181 2007-12-17  Brent Fulgham  <bfulgham (a] gmail.com>
   64182 
   64183         Reviewed by Darin.
   64184 
   64185         http://bugs.webkit.org/show_bug.cgi?id=16464
   64186         Modify WebCore to use win32 thread primitives
   64187 
   64188         Updates to support native windows threading primitives
   64189         rather than pthreads emulation library.
   64190 
   64191         * WebCore.vcproj/WebCore.vcproj:
   64192         * config.h:
   64193         * platform/Threading.h:
   64194         * platform/win/MutexWin.cpp: Added.
   64195         (WebCore::Mutex::Mutex):
   64196         (WebCore::Mutex::~Mutex):
   64197         (WebCore::Mutex::lock):
   64198         (WebCore::Mutex::tryLock):
   64199         (WebCore::Mutex::unlock):
   64200         * platform/win/ThreadConditionWin.cpp: Added.
   64201         (WebCore::ThreadCondition::ThreadCondition):
   64202         (WebCore::ThreadCondition::~ThreadCondition):
   64203         (WebCore::ThreadCondition::wait):
   64204         (WebCore::ThreadCondition::signal):
   64205         (WebCore::ThreadCondition::broadcast):
   64206         * platform/win/ThreadingWin.cpp:
   64207         (WebCore::threadMapMutex):
   64208         (WebCore::threadMap):
   64209         (WebCore::storeThreadHandleByIdentifier):
   64210         (WebCore::identifierByThreadHandle):
   64211         (WebCore::threadHandleForIdentifier):
   64212         (WebCore::clearThreadHandleForIdentifier):
   64213         (WebCore::createThread):
   64214         (WebCore::waitForThreadCompletion):
   64215         (WebCore::detachThread):
   64216         (WebCore::currentThread):
   64217 
   64218 2007-12-18  Rodney Dawes  <dobey (a] wayofthemonkey.com>
   64219 
   64220         Reviewed by Darin Adler.
   64221 
   64222         Handle EINTR when set by select() and try the select() again
   64223         http://bugs.webkit.org/show_bug.cgi?id=16071
   64224 
   64225         * platform/network/curl/ResourceHandleManager.cpp:
   64226         (ResourceHandleManager::downloadTimerCallback):
   64227 
   64228 2007-12-18  Dan Bernstein  <mitz (a] apple.com>
   64229 
   64230         Reviewed by Dave Hyatt.
   64231 
   64232         - avoid the simplified Chinese font linking code for characters that are
   64233           not in any Windows code page
   64234 
   64235         * platform/graphics/win/FontCacheWin.cpp:
   64236         (WebCore::FontCache::getFontDataForCharacters):
   64237 
   64238 2007-12-18  Brady Eidson <beidson (a] apple.com>
   64239 
   64240         Reviewed by Adele
   64241 
   64242         <rdar://problem/5525770> REGRESSION: HTTP Auth protected favicon request results in a password sheet
   64243 
   64244         Some http-auth protected sites have the main resource(s) unprotected, but many subresources are
   64245         protected by authentication.  Occasionally one can view the main page of a site but the favicon
   64246         is behind the iron curtain - in these cases, we should *not* prompt for a username and password
   64247         solely for the favicon.
   64248 
   64249         * loader/ResourceLoader.h: Make didReceiveAuthenticationChallenge virtual
   64250 
   64251         * loader/SubresourceLoader.cpp:
   64252         (WebCore::SubresourceLoader::didReceiveAuthenticationChallenge): Now that this method
   64253           is virtual from ResourceLoader, SubresourceLoader can override.  First call to the 
   64254           SubresourceLoaderClient.  If they cancel the resource load, return early. Otherwise, let
   64255           ResourceLoader work its magic (resulting in the auth sheet coming down)
   64256         * loader/SubresourceLoader.h:
   64257 
   64258         * loader/SubresourceLoaderClient.h:
   64259         (WebCore::SubresourceLoaderClient::didReceiveAuthenticationChallenge):
   64260 
   64261         * loader/icon/IconLoader.cpp:
   64262         (WebCore::IconLoader::didReceiveAuthenticationChallenge): Cancel the resource load, since we should
   64263           never prompt the user for credentials just for a favicon.
   64264         * loader/icon/IconLoader.h:
   64265 
   64266 2007-12-18  John Sullivan  <sullivan (a] apple.com>
   64267 
   64268         Reviewed by Brady
   64269         
   64270         - fixed <rdar://problem/5652380> Initial prompt shows "" for databases with no user-visible name
   64271 
   64272         * storage/DatabaseTracker.cpp:
   64273         (WebCore::DatabaseTracker::canEstablishDatabase):
   64274         pass "name" instead of "displayName" if there's no displayName
   64275 
   64276 2007-12-17  Dan Bernstein  <mitz (a] apple.com>
   64277 
   64278         Reviewed by Maciej Stachowiak.
   64279 
   64280         - restore ButtonFace and ThreeDFace to their previous values for non-Mac
   64281           platforms. The Mac port also uses the same values for now instead
   64282           of NSColor-based ones.
   64283 
   64284         * rendering/RenderTheme.cpp:
   64285         (WebCore::RenderTheme::systemColor):
   64286 
   64287 2007-12-17  Rodney Dawes  <dobey (a] wayofthemonkey.com>
   64288 
   64289         Reviewed by Maciej Stachowiak.
   64290 
   64291         Define WTF_USE_NPOBJECT and WTF_USE_JAVASCRIPTCORE_BINDINGS for GTK+
   64292         Add required Frame::createScriptInstanceForWidget to FrameGtk
   64293 
   64294         * config.h:
   64295         * page/gtk/FrameGtk.cpp (Frame::createScriptInstanceForWidget):
   64296 
   64297 2007-12-17  Alice Liu  <alice.liu (a] apple.com>
   64298 
   64299         Reviewed by Adam.
   64300 
   64301         Fixed <rdar://5566435> window with no scrollbars can be scrolled
   64302 
   64303         * platform/win/ScrollViewWin.cpp:
   64304         (WebCore::ScrollView::maximumScroll):
   64305         corrected maximumScroll() to account for scrolling not allowed.
   64306         (WebCore::ScrollView::wheelEvent):
   64307 
   64308 2007-12-14  Juan A. Suarez Romero  <jasuarez (a] igalia.com>
   64309 
   64310         Reviewed by Alp Toker.
   64311 
   64312         http://bugs.webkit.org/show_bug.cgi?id=16042
   64313         [GTK] Eliminate webkit_init()
   64314 
   64315         Move webkit initialization to WebView class init.
   64316 
   64317         * WebCore.pro:
   64318 
   64319 2007-12-17  Jon Honeycutt  <jhoneycutt (a] apple.com>
   64320 
   64321         Reviewed by Darin.
   64322 
   64323         <rdar://problem/5651291> REGRESSION: Flash content doesn't display
   64324         (www.adobe.com)
   64325 
   64326         We were passing NPEvent** instead of NPEvent* to NPP_HandleEvent.
   64327 
   64328         * plugins/win/PluginViewWin.cpp:
   64329         (WebCore::PluginViewWin::dispatchNPEvent): Changed to take NPEvent&, not
   64330         NPEvent*
   64331         (WebCore::PluginViewWin::paint): Pass NPEvent, not NPEvent*
   64332         (WebCore::PluginViewWin::handleKeyboardEvent): same
   64333         (WebCore::PluginViewWin::handleMouseEvent): same
   64334         * plugins/win/PluginViewWin.h:
   64335 
   64336 2007-12-17  Alexey Proskuryakov  <ap (a] webkit.org>
   64337 
   64338         Reviewed by Darin.
   64339 
   64340         Live to the promise of never making AppKit special character codes visible via DOM.
   64341 
   64342         Test: fast/events/arrow-keys-on-body.html
   64343 
   64344         * page/EventHandler.cpp:
   64345         (WebCore::EventHandler::keyEvent): Check for empty keypress characters after disambiguation,
   64346         to let quirks-aware code strip special charactrers.
   64347         * platform/mac/KeyEventMac.mm:
   64348         (WebCore::PlatformKeyboardEvent::disambiguateKeyDownEvent): If not in keyboard event quirks
   64349         mode, remove the text if it's a special character.
   64350 
   64351 2007-12-17  Mark Rowe  <mrowe (a] apple.com>
   64352 
   64353         Reviewed by Darin Adler.
   64354 
   64355         Fix incorrect array size and incorrect array index in convertNSColorToColor.
   64356 
   64357         * rendering/RenderThemeMac.mm:
   64358         (WebCore::convertNSColorToColor):
   64359 
   64360 2007-12-17  Darin Adler  <darin (a] apple.com>
   64361 
   64362         Reviewed by Mark Rowe.
   64363 
   64364         - fix http://bugs.webkit.org/show_bug.cgi?id=16468
   64365           REGRESSION(r28781): Crash running storage/transaction_callback_exception_crash.html
   64366 
   64367         * storage/DatabaseThread.cpp:
   64368         (WebCore::DatabaseThread::dispatchNextTaskIdentifier): Use a RefPtr for the database
   64369         because there's no guarantee it won't lose its last reference otherwise.
   64370 
   64371 2007-12-17  Dan Bernstein  <mitz (a] apple.com>
   64372 
   64373         Reviewed by Maciej Stachowiak.
   64374 
   64375         - fix <rdar://problem/5333260> Some Chinese characters in Text Encoding menu are bold, others are not
   64376           and <rdar://problem/5280188> Chinese text looks worse on Safari for Windows cf. Safari for Mac
   64377 
   64378         * platform/graphics/win/FontCacheWin.cpp:
   64379         (WebCore::FontCache::getFontDataForCharacters): To ensure that font
   64380         linking gives consistent results for characters that are exclusive to
   64381         the simplified Chinese code page and characters that belong to that
   64382         code page and other code pages, always ask to map to simplified Chinese
   64383         alone first.
   64384 
   64385 2007-12-17  Christian Dywan  <christian (a] twotoasts.de>
   64386 
   64387         Reviewed by Alp Toker.
   64388 
   64389         http://bugs.webkit.org/show_bug.cgi?id=16378
   64390         Implement Icon for Gtk
   64391 
   64392         Icon provides a GdkPixbuf containing a themed icon.
   64393         The icon theme is probed for an icon name according to the
   64394         Icon Naming Specification or conventional Gnome icon names respectively.
   64395 
   64396         See http://standards.freedesktop.org/icon-naming-spec/icon-naming-spec-latest.html
   64397 
   64398         * platform/graphics/Icon.h:
   64399         * platform/graphics/gtk/IconGtk.cpp:
   64400         (WebCore::Icon::~Icon):
   64401         (WebCore::lookupIconName):
   64402         (WebCore::Icon::newIconForFile):
   64403         (WebCore::Icon::paint):
   64404 
   64405 2007-12-16  Sam Weinig  <sam (a] webkit.org>
   64406 
   64407         Reviewed by Mitz.
   64408 
   64409         Fix for http://bugs.webkit.org/show_bug.cgi?id=16466
   64410         Move the JS Location object to its own file
   64411 
   64412         - Move Location into its own file and rename it JSLocation.
   64413 
   64414         * DerivedSources.make:
   64415         * WebCore.pro:
   64416         * WebCore.vcproj/WebCore.vcproj:
   64417         * WebCore.xcodeproj/project.pbxproj:
   64418         * WebCoreSources.bkl:
   64419         * bindings/js/JSDocumentCustom.cpp:
   64420         * bindings/js/JSLocation.cpp: Copied from WebCore/bindings/js/kjs_window.cpp.
   64421         (WebCore::JSLocation::JSLocation):
   64422         (WebCore::JSLocation::getValueProperty):
   64423         (WebCore::JSLocation::getOwnPropertySlot):
   64424         (WebCore::JSLocation::put):
   64425         (WebCore::JSLocationProtoFuncReplace::callAsFunction):
   64426         (WebCore::JSLocationProtoFuncReload::callAsFunction):
   64427         (WebCore::JSLocationProtoFuncAssign::callAsFunction):
   64428         (WebCore::JSLocationProtoFuncToString::callAsFunction):
   64429         * bindings/js/JSLocation.h: Copied from WebCore/bindings/js/kjs_window.h.
   64430         (WebCore::JSLocation::):
   64431         (WebCore::JSLocation::frame):
   64432         (WebCore::JSLocation::classInfo):
   64433         * bindings/js/kjs_window.cpp:
   64434         (KJS::Window::location):
   64435         * bindings/js/kjs_window.h:
   64436         * history/CachedPage.cpp:
   64437 
   64438 2007-12-16  Dan Bernstein  <mitz (a] apple.com>
   64439 
   64440         Reviewed by Sam Weinig.
   64441 
   64442         - make 'cursor: copy' and 'cursor: none' work.
   64443 
   64444         Already covered by manual-tests/cursor.html
   64445 
   64446         * rendering/RenderStyle.h: Increase the _cursor_style field to 6 bits,
   64447         needed for the 33rd and 34th cursor values.
   64448 
   64449 2007-12-16  Mark Rowe  <mrowe (a] apple.com>
   64450 
   64451         Reviewed by Maciej Stachowiak.
   64452 
   64453         Refactor Mac plugin stream code to use the shared NetscapePlugInStreamLoader implementation.
   64454 
   64455         * WebCore.base.exp:
   64456         * WebCore.xcodeproj/project.pbxproj:
   64457         * loader/NetscapePlugInStreamLoader.h:
   64458         * loader/mac/NetscapePlugInStreamLoaderMac.mm: Removed.
   64459         * loader/mac/WebPlugInStreamLoaderDelegate.h: Moved to WebKit.
   64460 
   64461 2007-12-16  Sam Weinig  <sam (a] webkit.org>
   64462 
   64463         Reviewed by Maciej.
   64464 
   64465         Yet more of http://bugs.webkit.org/show_bug.cgi?id=16385
   64466         Cleanup kjs_window
   64467 
   64468         - Move ScheduledAction into its own file and put it in the WebCore namespace.
   64469 
   64470         * WebCore.pro:
   64471         * WebCore.vcproj/WebCore.vcproj:
   64472         * WebCore.xcodeproj/project.pbxproj:
   64473         * WebCoreSources.bkl:
   64474         * bindings/js/PausedTimeouts.cpp:
   64475         * bindings/js/PausedTimeouts.h:
   64476         * bindings/js/ScheduledAction.cpp: Copied from bindings/js/kjs_window.cpp.
   64477         (WebCore::ScheduledAction::ScheduledAction):
   64478         (WebCore::ScheduledAction::execute):
   64479         * bindings/js/ScheduledAction.h: Copied from bindings/js/kjs_window.h.
   64480         (WebCore::ScheduledAction::ScheduledAction):
   64481         * bindings/js/kjs_window.cpp:
   64482         (KJS::DOMWindowTimer::DOMWindowTimer):
   64483         (KJS::DOMWindowTimer::action):
   64484         (KJS::DOMWindowTimer::takeAction):
   64485         (KJS::Window::installTimeout):
   64486         (KJS::Window::timerFired):
   64487         * bindings/js/kjs_window.h:
   64488 
   64489 2007-12-16  Alp Toker  <alp (a] atoker.com>
   64490 
   64491         Reviewed by Maciej.
   64492 
   64493         http://bugs.webkit.org/show_bug.cgi?id=16356
   64494         [GTK] Integrate GStreamer video with the graphics backend
   64495 
   64496         Integrate the GStreamer media backend with the Cairo graphics backend.
   64497         There are still some issues: Data is copied more often than necessary,
   64498         and repaint() is not called, causing transformed video not to update
   64499         sometimes.
   64500 
   64501         * WebCore.pro:
   64502         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
   64503         (WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
   64504         (WebCore::MediaPlayerPrivate::~MediaPlayerPrivate):
   64505         (WebCore::MediaPlayerPrivate::currentTime):
   64506         (WebCore::MediaPlayerPrivate::setEndTime):
   64507         (WebCore::MediaPlayerPrivate::seeking):
   64508         (WebCore::MediaPlayerPrivate::naturalSize):
   64509         (WebCore::MediaPlayerPrivate::setMuted):
   64510         (WebCore::MediaPlayerPrivate::setRect):
   64511         (WebCore::MediaPlayerPrivate::setVisible):
   64512         (WebCore::MediaPlayerPrivate::repaint):
   64513         (WebCore::MediaPlayerPrivate::paint):
   64514         (WebCore::MediaPlayerPrivate::createGSTPlayBin):
   64515         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.h:
   64516         * platform/graphics/gtk/VideoSinkGStreamer.cpp: Added.
   64517         (webkit_video_sink_base_init):
   64518         (webkit_video_sink_init):
   64519         (webkit_video_sink_idle_func):
   64520         (webkit_video_sink_render):
   64521         (webkit_video_sink_set_caps):
   64522         (webkit_video_sink_dispose):
   64523         (webkit_video_sink_finalize):
   64524         (webkit_video_sink_set_property):
   64525         (webkit_video_sink_get_property):
   64526         (webkit_video_sink_stop):
   64527         (webkit_video_sink_class_init):
   64528         (webkit_video_sink_new):
   64529         (webkit_video_sink_set_surface):
   64530         (plugin_init):
   64531         * platform/graphics/gtk/VideoSinkGStreamer.h: Added.
   64532 
   64533 2007-12-16  Mark Rowe  <mrowe (a] apple.com>
   64534 
   64535         Mac build fix.
   64536 
   64537         * WebCore.xcodeproj/project.pbxproj: Remove NetscapePlugInStreamLoader.cpp from the WebCore target.
   64538         Mac currently has its own implementation in NetscapePlugInStreamLoaderMac.mm which conflicts with the
   64539         new shared implementation.
   64540 
   64541 2007-12-16  Rodney Dawes  <dobey (a] wayofthemonkey.com>
   64542 
   64543         Reviewed by Maciej Stachowiak.
   64544 
   64545         http://bugs.webkit.org/show_bug.cgi?id=16389
   64546         Bug 16389: Common Implementation of NetscapePlugInStreamLoader
   64547 
   64548         * WebCore.vcproj/WebCore.vcproj: Remove NetscapePlugInStreamLoaderWin.cpp.
   64549         * loader/NetscapePlugInStreamLoader.cpp: Copy method implementations from NetscapePlugInStreamLoaderWin.cpp.
   64550         * loader/win/NetscapePlugInStreamLoaderWin.cpp: Removed.
   64551 
   64552 2007-12-16  Grace Kloba  <klobag (a] gmail.com>
   64553 
   64554         Reviewed by Darin Adler.
   64555 
   64556         Fix http://bugs.webkit.org/show_bug.cgi?id=16433.
   64557         Bug 16433: LOW_BANDWIDTH_DISPLAY build is broken
   64558 
   64559         * dom/Document.cpp:
   64560         (WebCore::Document::Document):
   64561         * loader/FrameLoader.cpp:
   64562         (WebCore::FrameLoader::addLowBandwidthDisplayRequest):
   64563         (WebCore::FrameLoader::switchOutLowBandwidthDisplayIfReady):
   64564 
   64565 2007-12-16  Darin Adler  <darin (a] apple.com>
   64566 
   64567         Reviewed by Maciej.
   64568 
   64569         - fix <rdar://problem/5636065> First form of SQLTransaction.executeSql() fails with TYPE_ERROR dom exception
   64570 
   64571         Test: storage/execute-sql-args.html
   64572 
   64573         * bindings/js/JSSQLTransactionCustom.cpp:
   64574         (WebCore::JSSQLTransaction::executeSql): Added exception handling code so that once an
   64575         exception happens, we won't try to do any more argument processing. Changed processing
   64576         of the second argument so that we allow an undefined value or null, and simply omit the
   64577         array. Changed processing of the second argument so that we don't require an actual
   64578         JavaScript array. Instead, as with the JavaScript array operations themselves, we use
   64579         the length property and corresponding numeric properties of the object, allowing other
   64580         objects to act as arrays. Changed processing of the third and fourth arguments to
   64581         allow the undefined value as well as null; we check the value of the argument rather
   64582         than looking at the size of the passed-in arguments list.
   64583 
   64584 2007-12-16  Sam Weinig  <sam (a] webkit.org>
   64585 
   64586         Reviewed by Darin.
   64587 
   64588         More of http://bugs.webkit.org/show_bug.cgi?id=16385
   64589         Cleanup kjs_window
   64590 
   64591         - Move PausedTimeouts into its own file and put it in the WebCore namespace.
   64592 
   64593         * WebCore.pro:
   64594         * WebCore.vcproj/WebCore.vcproj:
   64595         * WebCore.xcodeproj/project.pbxproj:
   64596         * WebCoreSources.bkl:
   64597         * bindings/js/PausedTimeouts.cpp: Copied from bindings/js/kjs_window.cpp.
   64598         * bindings/js/PausedTimeouts.h: Copied from bindings/js/kjs_window.h.
   64599         * bindings/js/kjs_window.cpp:
   64600         (KJS::Window::pauseTimeouts):
   64601         * bindings/js/kjs_window.h:
   64602         * history/CachedPage.cpp:
   64603         * history/CachedPage.h:
   64604         * page/Chrome.cpp:
   64605 
   64606 2007-12-16  Beth Dakin  <bdakin (a] apple.com>
   64607 
   64608         Reviewed by Geoff.
   64609 
   64610         Make relative-size SVGs work in border-image.
   64611 
   64612         * rendering/RenderBox.cpp:
   64613         (WebCore::RenderBox::calculateBackgroundSize):
   64614         * rendering/RenderObject.cpp:
   64615         (WebCore::RenderObject::paintBorderImage):
   64616 
   64617 2007-12-16  Darin Adler  <darin (a] apple.com>
   64618 
   64619         - fix Tiger build (my fault it was broken)
   64620 
   64621         * rendering/RenderThemeMac.mm: Define NSUInteger if on Tiger.
   64622 
   64623 2007-12-16  Andrew Wellington  <proton (a] wiretapped.net>
   64624 
   64625         Reviewed by Darin.
   64626         
   64627         http://bugs.webkit.org/show_bug.cgi?id=6129
   64628         Incomplete implementation of CSS 2.1 system colors
   64629 
   64630         Test: fast/css/css2-system-color.html
   64631         
   64632         Based on original patch by Rob Buis.
   64633         
   64634         System colors are retrieved from NSColor as appropriate. If the color is a pattern color
   64635         (and therefore NSColor won't let us retrieve a color from it) we draw a 1x1 image of the
   64636         color and sample that to get a solid color.
   64637 
   64638         * css/CSSStyleSelector.cpp:
   64639         (WebCore::colorForCSSValue):
   64640         * rendering/RenderTheme.cpp:
   64641         (WebCore::RenderTheme::systemColor):
   64642         * rendering/RenderTheme.h:
   64643         * rendering/RenderThemeMac.h:
   64644         * rendering/RenderThemeMac.mm:
   64645         (WebCore::getSystemColor):
   64646         (WebCore::RenderThemeMac::platformColorsDidChange):
   64647         (WebCore::RenderThemeMac::systemColor):
   64648 
   64649 2007-12-16  Dan Bernstein  <mitz (a] apple.com>
   64650 
   64651         Reviewed by Darin Adler.
   64652 
   64653         - fix http://bugs.webkit.org/show_bug.cgi?id=16426
   64654           Divs with overflow:auto: scrollbars not correctly updated when contents change
   64655 
   64656         Test: fast/overflow/scrollbar-position-update.html
   64657 
   64658         * platform/mac/PlatformScrollBarMac.mm:
   64659         (WebCore::PlatformScrollbar::updateThumbProportion): Update the
   64660         NSScroller's value for the new proportions.
   64661         * rendering/RenderLayer.cpp:
   64662         (WebCore::RenderLayer::updateScrollInfoAfterLayout): Removed unnecessary
   64663         repaint(). Scrollbars repaint themselves as needed.
   64664 
   64665 2007-12-16  Alexey Proskuryakov  <ap (a] webkit.org>
   64666 
   64667         Reviewed by Darin.
   64668 
   64669         http://bugs.webkit.org/show_bug.cgi?id=14140
   64670         <rdar://problem/5270958> REGRESSION: Complex system KeyBindings don't work properly
   64671 
   64672         * dom/KeyboardEvent.h:
   64673         (WebCore::KeypressCommand::KeypressCommand):
   64674         (WebCore::KeyboardEvent::keypressCommands):
   64675         Change stored command class to preserve complete information about commands.
   64676 
   64677         * editing/EditorCommand.cpp: (WebCore::CommandEntry::): Mark InsertText as a text insertion
   64678         command, which it is. Previously, we couldn't do it because WebKit didn't really treat insertText:
   64679         as a command.
   64680 
   64681         * page/EventHandler.cpp: (WebCore::EventHandler::keyEvent): Copy commands saved while interpreting
   64682         a keydown event into keypress, to avoid losing state when running interpretKeyEvents: again.
   64683 
   64684 2007-12-16  Alexey Proskuryakov  <ap (a] webkit.org>
   64685 
   64686         Reviewed by Darin.
   64687 
   64688         http://bugs.webkit.org/show_bug.cgi?id=16462
   64689         REGRESSION: access keys broken on Windows
   64690 
   64691         * page/EventHandler.cpp:
   64692         (WebCore::EventHandler::handleAccessKey):
   64693         (WebCore::EventHandler::keyEvent):
   64694         * page/EventHandler.h:
   64695         Make handleAccessKey a class method; rely on WebKit to call it on Windows and wxWidgets.
   64696 
   64697 2007-12-16  Xan Lopez  <xan (a] gnome.org>
   64698 
   64699         Reviewed by Alexey Proskuryakov.
   64700 
   64701         http://bugs.webkit.org/show_bug.cgi?id=16454
   64702         [GTK] Text input doesn't work consistently on PPC
   64703 
   64704         * platform/gtk/KeyEventGtk.cpp:
   64705         (WebCore::singleCharacterString):
   64706 
   64707         UChar is 2 bytes (UTF-16), so transform accordingly from
   64708         gunichar (UCS-4). Fixes keyboard input on big endian systems.
   64709 
   64710 2007-12-15  Darin Adler  <darin (a] apple.com>
   64711 
   64712         Reviewed by Mark Rowe.
   64713 
   64714         - better build fix for the problem affecting GTK and some other platforms
   64715           "this time for sure"
   64716 
   64717         * WebCore.xcodeproj/project.pbxproj:
   64718         * bindings/js/JSEventTargetBase.cpp: Move the include of the .lut.h file here.
   64719         * bindings/js/JSEventTargetBase.h: Instead of including the .lut.h file in the header,
   64720         which won't work, declare the tables that are in the .lut.h file in the header.
   64721 
   64722 2007-12-12  Kevin Watters  <kevin (a] dotsyntax.com>
   64723 
   64724         Reviewed by Darin Adler.
   64725 
   64726         Fixed the Wx port's FontPlatformData for use in HashTable.
   64727         - FontPlatformData(Deleted) made unequal to FontPlatformData()
   64728 
   64729         * platform/graphics/wx/FontPlatformData
   64730 
   64731 2007-12-15  Dan Bernstein  <mitz (a] apple.com>
   64732 
   64733         Reviewed by Darin Adler.
   64734 
   64735         - fix <rdar://problem/5636090> Text in Georgia, Armenian, Inuktitut, Cree, or Cherokee (KA, HY, IU, CR, CHR) draws as all missing glyphs
   64736 
   64737         * platform/graphics/win/FontCacheWin.cpp:
   64738         (WebCore::metaFileEnumProc): Added. Called during metafile record
   64739         enumeration and extracts the font from the create font record.
   64740         (WebCore::FontCache::getFontDataForCharacters): If font linking fails,
   64741         let Uniscribe draw the characters and see what font it chooses.
   64742 
   64743 2007-12-15  Darin Adler  <darin (a] apple.com>
   64744 
   64745         * WebCore.pro: Roll my last change out. Was wrong and didn't fix the build.
   64746 
   64747 2007-12-15  Darin Adler  <darin (a] apple.com>
   64748 
   64749         Another try at a GTK build fix.
   64750 
   64751         * WebCore.pro: Add JSEventTargetBase.cpp to LUT_TABLE_FILES instead of LUT_FILES.
   64752 
   64753 2007-12-15  Sam Weinig  <sam (a] webkit.org>
   64754 
   64755         Force windows to regenerate COM DOM bindings.
   64756 
   64757         * WebCore.vcproj/build-generated-files.sh: Add license. 
   64758         * bindings/scripts/CodeGeneratorCOM.pm: Use shared WK_ucfirst.
   64759 
   64760 2007-12-15  Sam Weinig  <sam (a] webkit.org>
   64761 
   64762         Fix Windows and wx builds.
   64763 
   64764         * WebCore.vcproj/WebCore.vcproj:
   64765         * WebCoreSources.bkl:
   64766 
   64767 2007-12-15  Mark Rowe  <mrowe (a] apple.com>
   64768 
   64769         Gtk build fix.  Add JSEventTargetBase.cpp to SOURCES.
   64770 
   64771         * WebCore.pro:
   64772 
   64773 2007-12-15  Sam Weinig  <sam (a] webkit.org>
   64774 
   64775         Fix wx build.
   64776 
   64777         * WebCoreSources.bkl:
   64778 
   64779 2007-12-15  Nikolas Zimmermann  <zimmermann (a] kde.org>
   64780 
   64781         Not reviewed. Build fix for Qt/Gtk.
   64782 
   64783         * WebCore.pro: Include JSEventTargetBase.lut.h in generation
   64784 
   64785 2007-12-15  Nikolas Zimmermann  <zimmermann (a] kde.org>
   64786 
   64787         Reviewed by Eric.
   64788 
   64789         Fixes: http://bugs.webkit.org/show_bug.cgi?id=16445 (Refactor EventTargetNode & JSEventTargetNode for an upcoming SVG patch)
   64790 
   64791         Split up JSEventTargetNode in JSEventTargetNode & JSEventTargetBase - where most functionality has been moved down
   64792         in the base class. Applied the same refactorization to EventTargetNode.
   64793 
   64794         This makes it possible for the upcoming patch implementing the EventTarget interface for SVGElementInstance
   64795         to share as much code as possible with the EventTargetNode classes.
   64796 
   64797         * DerivedSources.make:
   64798         * WebCore.xcodeproj/project.pbxproj:
   64799         * bindings/js/JSEventTargetBase.cpp: Added.
   64800         (WebCore::retrieveEventTargetAndCorrespondingNode):
   64801         (WebCore::eventNameForPropertyToken):
   64802         * bindings/js/JSEventTargetBase.h: Added.
   64803         (WebCore::JSEventTargetProperties::):
   64804         (WebCore::JSEventTargetPrototypeFunctionBase::JSEventTargetPrototypeFunctionBase):
   64805         (WebCore::JSEventTargetPrototypeFunction::JSEventTargetPrototypeFunction):
   64806         (WebCore::::create):
   64807         (WebCore::JSEventTargetBase::JSEventTargetBase):
   64808         (WebCore::JSEventTargetBase::getValueProperty):
   64809         (WebCore::JSEventTargetBase::putValueProperty):
   64810         (WebCore::JSEventTargetBase::getOwnPropertySlot):
   64811         (WebCore::JSEventTargetBase::put):
   64812         (WebCore::JSEventTargetPrototype::JSEventTargetPrototype):
   64813         (WebCore::JSEventTargetPrototype::self):
   64814         (WebCore::JSEventTargetPrototype::getOwnPropertySlot):
   64815         (WebCore::JSEventTargetPrototype::classInfo):
   64816         * bindings/js/JSEventTargetNode.cpp:
   64817         (WebCore::JSEventTargetNode::getOwnPropertySlot):
   64818         (WebCore::JSEventTargetNode::getValueProperty):
   64819         (WebCore::JSEventTargetNode::put):
   64820         (WebCore::JSEventTargetNode::putValueProperty):
   64821         (WebCore::JSEventTargetNode::setListener):
   64822         (WebCore::toEventTargetNode):
   64823         * bindings/js/JSEventTargetNode.h:
   64824         (WebCore::JSEventTargetPrototypeInformation::prototypeClassName):
   64825         (WebCore::JSEventTargetPrototypeInformation::prototypeIdentifier):
   64826         * dom/EventTarget.cpp:
   64827         (WebCore::EventTarget::addEventListener):
   64828         (WebCore::EventTarget::removeEventListener):
   64829         (WebCore::EventTarget::dispatchGenericEvent):
   64830         (WebCore::EventTarget::removeAllEventListeners):
   64831         (WebCore::EventTarget::insertedIntoDocument):
   64832         (WebCore::EventTarget::removedFromDocument):
   64833         (WebCore::EventTarget::handleLocalEvents):
   64834         (WebCore::EventTarget::applySVGEventTargetRules):
   64835         (WebCore::forbidEventDispatch):
   64836         (WebCore::allowEventDispatch):
   64837         (WebCore::eventDispatchForbidden):
   64838         * dom/EventTarget.h:
   64839         (WebCore::EventTarget::preDispatchEventHandler):
   64840         (WebCore::EventTarget::postDispatchEventHandler):
   64841         (WebCore::forbidEventDispatch):
   64842         (WebCore::allowEventDispatch):
   64843         * dom/EventTargetNode.cpp:
   64844         (WebCore::EventTargetNode::~EventTargetNode):
   64845         (WebCore::EventTargetNode::insertedIntoDocument):
   64846         (WebCore::EventTargetNode::removedFromDocument):
   64847         (WebCore::EventTargetNode::addEventListener):
   64848         (WebCore::EventTargetNode::removeEventListener):
   64849         (WebCore::EventTargetNode::removeAllEventListeners):
   64850         (WebCore::EventTargetNode::handleLocalEvents):
   64851         (WebCore::EventTargetNode::dispatchEvent):
   64852         (WebCore::EventTargetNode::dispatchWindowEvent):
   64853         * dom/EventTargetNode.h:
   64854         (WebCore::EventTargetNode::localEventListeners):
   64855         * svg/SVGElement.cpp:
   64856         (WebCore::SVGElement::sendSVGLoadEventIfPossible):
   64857         (WebCore::SVGElement::dispatchEvent):
   64858 
   64859 2007-12-15  Eric Seidel  <eric (a] webkit.org>
   64860 
   64861         Reviewed by Oliver.
   64862         
   64863         Width of SVG elements not applied to container elements
   64864         http://bugs.webkit.org/show_bug.cgi?id=16305
   64865         Added calcPrefWidths for RenderSVGRoot (copied from RenderReplaced)
   64866         This is caused by poor factoring in the render tree.  RenderContainer probably should be a template.
   64867 
   64868         svg/css/css-box-min-width.html
   64869 
   64870         * rendering/RenderSVGRoot.cpp:
   64871         (WebCore::RenderSVGRoot::calcPrefWidths): Added.
   64872         * rendering/RenderSVGRoot.h:
   64873         * css/SVGCSSStyleSelector::applySVGProperty: fixed ASSERT in debug builds
   64874 
   64875 2007-12-15  David Kilzer  <ddkilzer (a] apple.com>
   64876 
   64877         Fix comment after isSafeScript() was renamed to allowsAccessFrom().
   64878 
   64879         * bindings/js/kjs_window.cpp:
   64880         (KJS::createWindow):
   64881 
   64882 2007-12-15  Alp Toker  <alp (a] atoker.com>
   64883 
   64884         Reviewed by Mark Rowe.
   64885 
   64886         http://bugs.webkit.org/show_bug.cgi?id=16449
   64887         cairo_arc() functions hang or crash when passed inf as radius or start/end angle
   64888 
   64889         Add checks. This matches a similar workaround for a CG bug in the CG
   64890         graphics backend: <rdar://problem/5189233>
   64891 
   64892         Fixes:
   64893           fast/canvas/arc-crash.html
   64894           fast/canvas/canvas-with-incorrect-args.html
   64895 
   64896         * platform/graphics/cairo/PathCairo.cpp:
   64897         (WebCore::Path::addArc):
   64898 
   64899 2007-12-15  Alexey Proskuryakov  <ap (a] webkit.org>
   64900 
   64901         Reviewed by Darin.
   64902 
   64903         http://bugs.webkit.org/show_bug.cgi?id=16078
   64904         Google Maps zooming via the scroll wheel (almost) always zooms IN only.
   64905 
   64906         * dom/WheelEvent.cpp: (WebCore::WheelEvent::WheelEvent):
   64907         Ensure that delta is never rounded down to zero - we are getting values less than 1 from 
   64908         many mice on OS X, and Google Maps code assumes scrolling up if event.wheelDelta is zero.
   64909 
   64910 2007-12-14  Dan Bernstein  <mitz (a] apple.com>
   64911 
   64912         - Windows build fix
   64913 
   64914         * WebCore.vcproj/WebCore.vcproj:
   64915 
   64916 2007-12-14  Alp Toker  <alp (a] atoker.com>
   64917 
   64918         GTK+/Qt build fix. Track added files in r28722.
   64919 
   64920         * WebCore.pro:
   64921 
   64922 2007-12-14  Sam Weinig  <sam (a] webkit.org>
   64923 
   64924         Reviewed by Geoff.
   64925 
   64926         Speed up getElementByClassName.
   64927         - This makes getElementByClassName 33% faster on the stress test
   64928           linked to at http://bugs.webkit.org/show_bug.cgi?id=15760.
   64929 
   64930         * platform/text/StringImpl.cpp:
   64931         (WebCore::StringImpl::foldCase): Optimize the case when all the characters are ASCII.
   64932 
   64933 2007-12-14  Alp Toker  <alp (a] atoker.com>
   64934 
   64935         Reviewed by Maciej.
   64936 
   64937         http://bugs.webkit.org/show_bug.cgi?id=16432
   64938         [GTK] Update license headers
   64939 
   64940         Consent has been given by the authors of these files to change license
   64941         to the LGPL as outlined in the bug report.
   64942 
   64943         * platform/gtk/ClipboardGtk.cpp:
   64944         * platform/gtk/ContextMenuGtk.cpp:
   64945         * platform/gtk/ContextMenuItemGtk.cpp:
   64946         * platform/gtk/CookieJarGtk.cpp:
   64947         * platform/gtk/CursorGtk.cpp:
   64948         * platform/gtk/DragDataGtk.cpp:
   64949         * platform/gtk/DragImageGtk.cpp:
   64950         * platform/gtk/PasteboardGtk.cpp:
   64951         * platform/gtk/PlatformScreenGtk.cpp:
   64952         * platform/gtk/PlatformScrollBarGtk.cpp:
   64953         * platform/gtk/SearchPopupMenuGtk.cpp:
   64954         * platform/gtk/WidgetGtk.cpp:
   64955 
   64956 2007-12-14  Darin Adler  <darin (a] apple.com>
   64957 
   64958         Reviewed by Adele.
   64959 
   64960         - fix http://bugs.webkit.org/show_bug.cgi?id=16442
   64961           navigation policy delegate gets called twice for each load
   64962 
   64963         * loader/MainResourceLoader.cpp:
   64964         (WebCore::MainResourceLoader::willSendRequest): Removed call to checkNavigationPolicy.
   64965         That's handled by FrameLoader.
   64966 
   64967         * loader/MainResourceLoader.h: Removed callContinueAfterNavigationPolicy
   64968         and continueAfterNavigationPolicy.
   64969 
   64970 2007-12-14  Anders Carlsson  <andersca (a] apple.com>
   64971 
   64972         Reviewed by Brady.
   64973 
   64974         Make document.open count as committing a document load, so that -[WebFrame dataSource:] won't
   64975         return nil in that case.
   64976         
   64977         * loader/FrameLoader.cpp:
   64978         (WebCore::FrameLoader::didExplicitOpen):
   64979 
   64980 2007-12-14  David Smith  <catfish.man (a] gmail.com>
   64981 
   64982         Reviewed by Mitz.
   64983 
   64984         - fix http://bugs.webkit.org/show_bug.cgi?id=14955
   64985           Implement getElementsByClassName.
   64986 
   64987         This patch also renames AtomicStringList to ClassNames to better reflect its actual use,
   64988         and takes advantage of admitting that it's class-specific to encapsulate class attribute 
   64989         parsing so it can be shared.  It also changes the class to use a Vector, rather than a linked
   64990         list to store the class names.
   64991 
   64992         Tests: fast/dom/getElementsByClassName/001.html
   64993                fast/dom/getElementsByClassName/002.html
   64994                fast/dom/getElementsByClassName/003.html
   64995                fast/dom/getElementsByClassName/004.html
   64996                fast/dom/getElementsByClassName/005.html
   64997                fast/dom/getElementsByClassName/006.html
   64998                fast/dom/getElementsByClassName/007.html
   64999                fast/dom/getElementsByClassName/008.html
   65000                fast/dom/getElementsByClassName/009.html
   65001                fast/dom/getElementsByClassName/010.xml
   65002                fast/dom/getElementsByClassName/011.xml
   65003                fast/dom/getElementsByClassName/012.html
   65004                fast/dom/getElementsByClassName/013.html
   65005                fast/dom/getElementsByClassName/014.html
   65006                fast/dom/getElementsByClassName/array/001.html
   65007                fast/dom/getElementsByClassName/array/002.html
   65008                fast/dom/getElementsByClassName/array/003.html
   65009                fast/dom/getElementsByClassName/array/004.html
   65010                fast/dom/getElementsByClassName/dumpNodeList.html
   65011 
   65012         * WebCore.xcodeproj/project.pbxproj:
   65013         * css/CSSStyleSelector.cpp:
   65014         (WebCore::CSSStyleSelector::matchRules):
   65015         (WebCore::CSSStyleSelector::checkOneSelector):
   65016         * dom/AtomicStringList.h: Removed.
   65017         * dom/ClassNames.cpp: Added.
   65018         (WebCore::ClassNames::contains):
   65019         (WebCore::ClassNames::parseClassAttribute):
   65020         * dom/ClassNames.h: Copied from WebCore/dom/AtomicStringList.h.
   65021         (WebCore::ClassNames::ClassNames):
   65022         (WebCore::ClassNames::size):
   65023         (WebCore::ClassNames::clear):
   65024         (WebCore::ClassNames::operator[]):
   65025         (WebCore::isClassWhitespace):
   65026         * dom/ClassNodeList.cpp: Added.
   65027         (WebCore::ClassNodeList::ClassNodeList):
   65028         (WebCore::ClassNodeList::length):
   65029         (WebCore::ClassNodeList::item):
   65030         (WebCore::ClassNodeList::nodeMatches):
   65031         * dom/ClassNodeList.h: Added.
   65032         * dom/Document.cpp:
   65033         (WebCore::Document::getElementsByName):
   65034         (WebCore::Document::getElementsByClassName):
   65035         * dom/Document.h:
   65036         * dom/Document.idl:
   65037         * dom/Element.cpp:
   65038         (WebCore::Element::getClassNames):
   65039         (WebCore::Element::getElementsByClassName):
   65040         * dom/Element.h:
   65041         * dom/Element.idl:
   65042         * dom/NameNodeList.cpp:
   65043         (WebCore::NameNodeList::NameNodeList):
   65044         (WebCore::NameNodeList::item):
   65045         (WebCore::NameNodeList::nodeMatches):
   65046         * dom/NameNodeList.h:
   65047         * dom/NamedMappedAttrMap.cpp:
   65048         (WebCore::NamedMappedAttrMap::clearAttributes):
   65049         (WebCore::NamedMappedAttrMap::parseClassAttribute):
   65050         * dom/NamedMappedAttrMap.h:
   65051         (WebCore::NamedMappedAttrMap::getClassNames):
   65052         * dom/StyledElement.cpp:
   65053         (WebCore::StyledElement::getClassNames):
   65054         * dom/StyledElement.h:
   65055 
   65056 2007-12-14  Darin Adler  <darin (a] apple.com>
   65057 
   65058         Reviewed by Sam.
   65059 
   65060         - fix http://bugs.webkit.org/show_bug.cgi?id=16351
   65061           FontFallbackList.h doesn't include wtf/PassRefPtr.h
   65062           
   65063         * platform/graphics/FontFallbackList.h: Added include of <wtf/Forward.h>
   65064         * platform/graphics/GlyphPageTreeNode.h: Removed an unneeded include.
   65065 
   65066 2007-12-14  Darin Adler  <darin (a] apple.com>
   65067 
   65068         Reviewed by Alexey.
   65069 
   65070         - http://bugs.webkit.org/show_bug.cgi?id=16420
   65071           change regression tests to use document.execCommand instead of textInputController.doCommand
   65072 
   65073         Add a few more operations to document.execCommand.
   65074 
   65075         Finished up the transition to the new Editor::Command, including removing
   65076         the Editor::execCommand function.
   65077 
   65078         * WebCore.base.exp: Added Editor::Command::isSupported.
   65079         * editing/Editor.h: Removed execCommand.
   65080         * editing/EditorCommand.cpp:
   65081         (WebCore::expandSelectionToGranularity): Added.
   65082         (WebCore::verticalScrollDistance): Added; replaces canScroll.
   65083         (WebCore::executeDeleteBackward): Added. Moved code here from WebHTMLView.
   65084         (WebCore::executeDeleteBackwardByDecomposingPreviousCharacter): Ditto.
   65085         (WebCore::executeDeleteForward): Ditto.
   65086         (WebCore::executeDeleteToBeginningOfLine): Ditto.
   65087         (WebCore::executeDeleteToBeginningOfParagraph): Ditto.
   65088         (WebCore::executeDeleteToEndOfLine): Ditto.
   65089         (WebCore::executeDeleteToEndOfParagraph): Ditto.
   65090         (WebCore::executeMovePageDown): Renamed this command to be consistent with all the other
   65091         Move commands. They all modify the caret. Reimplemented to match the Mac OS X version by
   65092         removing the explicit scrolling, and letting it be done automatically by code that makes
   65093         the caret visible. In some cases the old code would scroll twice which was harmless but
   65094         unnecessary.
   65095         (WebCore::executeMovePageDownAndModifySelection): Added. Moved code here from WebHTMLView.
   65096         (WebCore::executeMovePageUp): See MovePageDown above.
   65097         (WebCore::executeMovePageUpAndModifySelection): Added. Moved code here from WebHTMLView.
   65098         (WebCore::executeSelectLine): Ditto.
   65099         (WebCore::executeSelectParagraph): Ditto.
   65100         (WebCore::executeSelectSentence): Ditto.
   65101         (WebCore::executeSelectWord): Ditto.
   65102         (WebCore::executeSwapWithMark): Some small tweaks.
   65103 
   65104         * page/ContextMenuController.cpp:
   65105         (WebCore::ContextMenuController::contextMenuItemSelected): Changed to use Editor::command()
   65106         instead of Editor::execCommand(). This code could be changed to use Editor::Command quite a
   65107         bit more, but I didn't do that this time.
   65108 
   65109         - Removed some obsolete unused code.
   65110 
   65111         * page/mac/EventHandlerMac.mm:
   65112         (WebCore::EventHandler::passMouseDownEventToWidget): Removed the special case code for
   65113         NSTextView. This was left over from when we used NSTextField and NSTextView for form
   65114         elements and is no longer used at all.
   65115 
   65116         * page/mac/WebCoreFrameBridge.h: Removed 20 unused methods that were still on one side
   65117         of the bridge or another. We really need to find a time to tear down the rest of the
   65118         bridge, but that's not this patch.
   65119 
   65120         * page/mac/WebCoreFrameBridge.mm:
   65121         (-[WebCoreFrameBridge addData:]): Changed to get at the _shouldCreateRenderers field directly
   65122         instead of using a method.
   65123         (-[WebCoreFrameBridge rangeByAlteringCurrentSelection:SelectionController::direction:SelectionController::granularity:]):
   65124         Took out obsolete comment about matching enums (we use a single enum now and have for some
   65125         time).
   65126         (-[WebCoreFrameBridge selectionGranularity]): Ditto.
   65127 
   65128 2007-12-14  Justin Garcia  <justin.garcia (a] apple.com>
   65129 
   65130         Reviewed by Darin Adler.
   65131 
   65132         <rdar://problem/5575101> GoogleDocs: Hang in SplitElementCommand::doApply when outdenting a list item in a particular list
   65133 
   65134         * editing/CompositeEditCommand.cpp:
   65135         (WebCore::CompositeEditCommand::splitTreeToNode): Moved here.
   65136         * editing/CompositeEditCommand.h:
   65137         * editing/IndentOutdentCommand.cpp: Moved splitTreeToNode.
   65138         * editing/IndentOutdentCommand.h: Ditto, and removed unimplemented splitTreeTo.
   65139         * editing/InsertListCommand.cpp:
   65140         (WebCore::InsertListCommand::doApply): Split ancestors of listChildNode between
   65141         it and listNode, if they exists, so that moving listChildNode doesn't put it out
   65142         of order.  Added a test case to cover each change.
   65143         * editing/SplitElementCommand.cpp:
   65144         (WebCore::SplitElementCommand::doApply): Added an ASSERT to catch code that
   65145         tries to split a container at a bogus child, and an early return to avoid a
   65146         hang in that case.
   65147 
   65148 2007-12-14  Anders Carlsson  <andersca (a] apple.com>
   65149 
   65150         Reviewed by Darin and Geoff.
   65151 
   65152         <rdar://problem/5619295> 
   65153         REGRESSION: 303-304: Embedded YouTube video fails to render- JS errors (16150) (Flash 9)
   65154 
   65155         _NPN_CreateScriptObject doesn't take an origin root object anymore.
   65156         
   65157         * html/HTMLPlugInElement.cpp:
   65158         (WebCore::HTMLPlugInElement::createNPObject):
   65159         * page/Frame.cpp:
   65160         (WebCore::Frame::windowScriptNPObject):
   65161 
   65162 2007-12-14  Dan Bernstein  <mitz (a] apple.com>
   65163 
   65164         Reviewed by Darin Adler.
   65165 
   65166         - fix <rdar://problem/5643663> text-shadow and box-shadow offsets 1px smaller than specified
   65167           which is the root cause of:
   65168           http://bugs.webkit.org/show_bug.cgi?id=12943
   65169           box-shadow: small values don't affect shadow position
   65170           http://bugs.webkit.org/show_bug.cgi?id=14736
   65171           Safari implementation of text-shadow off by 1px
   65172 
   65173         * platform/graphics/cg/GraphicsContextCG.cpp:
   65174         (WebCore::GraphicsContext::setShadow): Slightly increase the magnitude
   65175         of the offsets passed to CGContextSetShadow* to ensure that the end
   65176         result after truncation is the desired integer offsets.
   65177 
   65178 2007-12-13  Alp Toker  <alp (a] atoker.com>
   65179 
   65180         curl backend build fix for breakage introduced in r28709.
   65181 
   65182         * platform/network/ResourceHandleInternal.h:
   65183         (WebCore::ResourceHandleInternal::ResourceHandleInternal):
   65184 
   65185 2007-12-13  Justin Garcia  <justin.garcia (a] apple.com>
   65186 
   65187         Reviewed by Oliver Hunt.
   65188 
   65189         <rdar://problem/5607069> In Mail, a crash occurs at WebCore::AppendNodeCommand() after dragging image into a <FORM> element
   65190 
   65191         * editing/InsertLineBreakCommand.cpp:
   65192         (WebCore::InsertLineBreakCommand::shouldUseBreakElement): Equip this function to
   65193         handle editing positions, like [input, 0];
   65194         * editing/InsertParagraphSeparatorCommand.cpp:
   65195         (WebCore::InsertParagraphSeparatorCommand::doApply): Pass enclosingBlock a node peeled
   65196         off of a non-editing position, to fix a bug where the enclosing block of [input, 0] was
   65197         the input element itself.
   65198         Insert a <br> when a <form> element is the enclosing block instead of splitting/cloning or
   65199         nesting a <div>.
   65200 
   65201 2007-12-13  Alp Toker  <alp (a] atoker.com>
   65202 
   65203         Reviewed by Oliver Hunt.
   65204 
   65205         http://bugs.webkit.org/show_bug.cgi?id=16365
   65206         [cURL] Acid2 test segmentation fault
   65207 
   65208         This patch makes the Acid2 test pass.
   65209 
   65210         Defer the cleanup of cancelled jobs and halt further transfer as early
   65211         as possible.
   65212 
   65213         Bug found by and initial patch provided by Luca Bruno.
   65214 
   65215         * platform/network/curl/ResourceHandleManager.cpp:
   65216         (WebCore::writeCallback):
   65217         (WebCore::headerCallback):
   65218         (WebCore::ResourceHandleManager::downloadTimerCallback):
   65219         (WebCore::ResourceHandleManager::cancel):
   65220 
   65221 2007-12-13  Sam Weinig  <sam (a] webkit.org>
   65222 
   65223         Reviewed by Mark Rowe.
   65224 
   65225         Fix typos and rename InspectorController::moveByUnrestricted to InspectorController::moveWindowBy.
   65226 
   65227         * page/InspectorController.cpp:
   65228         (WebCore::moveByUnrestricted):
   65229         (WebCore::InspectorController::windowScriptObjectAvailable):
   65230         (WebCore::InspectorController::moveWindowBy):
   65231         * page/InspectorController.h:
   65232         * page/inspector/inspector.js:
   65233 
   65234 2007-12-13  Dan Bernstein  <mitz (a] apple.com>
   65235 
   65236         Reviewed by Dave Hyatt.
   65237 
   65238         - fix <rdar://problem/5642426> explicit cubic-bezier curves all treated as "default" for transition-timing-function
   65239 
   65240         Test: fast/css/transition-timing-function.html
   65241 
   65242         * css/CSSStyleSelector.cpp: Changed the HANDLE_MULTILAYER_VALUE macro to
   65243         not reject non-primitive non-list values, and instead made sure that the
   65244         mapping functions rejected them if necessary. This allows non-primitive
   65245         timing functions to be mapped.
   65246         (WebCore::CSSStyleSelector::mapBackgroundAttachment):
   65247         (WebCore::CSSStyleSelector::mapBackgroundClip):
   65248         (WebCore::CSSStyleSelector::mapBackgroundComposite):
   65249         (WebCore::CSSStyleSelector::mapBackgroundOrigin):
   65250         (WebCore::CSSStyleSelector::mapBackgroundImage):
   65251         (WebCore::CSSStyleSelector::mapBackgroundRepeat):
   65252         (WebCore::CSSStyleSelector::mapBackgroundXPosition):
   65253         (WebCore::CSSStyleSelector::mapBackgroundYPosition):
   65254         (WebCore::CSSStyleSelector::mapTransitionDuration):
   65255         (WebCore::CSSStyleSelector::mapTransitionRepeatCount):
   65256         (WebCore::CSSStyleSelector::mapTransitionTimingFunction):
   65257         (WebCore::CSSStyleSelector::mapTransitionProperty):
   65258         * css/CSSTimingFunctionValue.cpp:
   65259         (WebCore::CSSTimingFunctionValue::cssText): Implemented for use in the
   65260         regression test.
   65261         * css/CSSTimingFunctionValue.h:
   65262         (WebCore::CSSTimingFunctionValue::isTransitionTimingFunctionValue):
   65263         Added. Returns true.
   65264         * css/CSSValue.h:
   65265         (WebCore::CSSValue::isTransitionTimingFunctionValue): Added. Returns
   65266         false.
   65267 
   65268 2007-12-13  Steve Falkenburg  <sfalken (a] apple.com>
   65269 
   65270         Move source file generation into its own vcproj to fix build dependencies.
   65271 
   65272         Reviewed by Adam.
   65273 
   65274         * WebCore.vcproj/WebCore.make:
   65275         * WebCore.vcproj/WebCore.sln:
   65276         * WebCore.vcproj/WebCore.submit.sln:
   65277         * WebCore.vcproj/WebCore.vcproj:
   65278         * WebCore.vcproj/WebCoreGenerated.vcproj: Added.
   65279 
   65280 2007-12-13  Justin Garcia  <justin.garcia (a] apple.com>
   65281 
   65282         Reviewed by Oliver Hunt.
   65283         
   65284         <rdar://problem/4145786> Undoing a color change of text in a compose window always changes it back to black
   65285         
   65286         Some of the operations performed in removeHTMLFontStyle were non-undoable.
   65287         
   65288         I'm having trouble writing a layout test for this because I can't get DRT to
   65289         perform editing operations in separate Undo steps without adding unacceptably long
   65290         wait times between operations.  I filed:
   65291         
   65292         <rdar://problem/5646779> Can't get DRT to perform editing operations in separate Undo steps
   65293 
   65294         * editing/ApplyStyleCommand.cpp:
   65295         (WebCore::ApplyStyleCommand::removeHTMLFontStyle):
   65296 
   65297 2007-12-13  Sam Weinig  <sam (a] webkit.org>
   65298 
   65299         Reviewed by Anders.
   65300 
   65301         Fix for http://bugs.webkit.org/show_bug.cgi?id=16352
   65302         Toolbar dragged inspector cannot be moved beyond screen edges
   65303 
   65304         * page/InspectorController.cpp:
   65305         (WebCore::moveByUnrestricted):
   65306         (WebCore::InspectorController::windowScriptObjectAvailable):
   65307         (WebCore::InspectorController::moveByUnrestricted):
   65308         * page/InspectorController.h:
   65309         * page/inspector/inspector.js:
   65310 
   65311 2007-12-13  Adam Roben  <aroben (a] apple.com>
   65312 
   65313         Fix <rdar://5517707> Crash on wptv.wp.pl when "make bigger" button is clicked
   65314 
   65315         Windows Media Player has a modal message loop that will deliver
   65316         messages to us at inappropriate times and we will crash if we handle
   65317         them when they are delivered. In PluginViewWin, we add a quirk for
   65318         Media Player to set a flag whenever we give the plugin a chance to
   65319         execute code, and in SharedTimerWin we check if the plugin is
   65320         executing code and repost messages if so.
   65321 
   65322         Reviewed by Anders.
   65323 
   65324         * platform/win/SharedTimerWin.cpp:
   65325         (WebCore::TimerWindowWndProc): Repost messages if we're calling a
   65326         plugin.
   65327         * plugins/win/PluginViewWin.cpp: Surround all calls to the plugin with
   65328         setCallingPlugin(true/false).
   65329         (WebCore::PluginViewWin::updateWindow):
   65330         (WebCore::PluginViewWin::dispatchNPEvent):
   65331         (WebCore::PluginViewWin::setNPWindowRect):
   65332         (WebCore::PluginViewWin::start):
   65333         (WebCore::PluginViewWin::stop):
   65334         (WebCore::PluginViewWin::performRequest):
   65335         (WebCore::PluginViewWin::bindingInstance):
   65336         (WebCore::PluginViewWin::determineQuirks):
   65337         (WebCore::PluginViewWin::setCallingPlugin): Added.
   65338         (WebCore::PluginViewWin::isCallingPlugin): Added.
   65339         * plugins/win/PluginViewWin.h: Added a new quirk.
   65340 
   65341 2007-12-13  Alp Toker  <alp (a] atoker.com>
   65342 
   65343         Add a missing DEPENDPATH. Fixes non-clean builds following networking
   65344         header changes.
   65345 
   65346         * WebCore.pro:
   65347 
   65348 2007-12-13  Dan Bernstein  <mitz (a] apple.com>
   65349 
   65350         Reviewed by Anders Carlsson.
   65351 
   65352         - fix regression in fast/text/international/bidi-override on Tiger
   65353 
   65354         * platform/graphics/GlyphPageTreeNode.cpp:
   65355         (WebCore::GlyphPageTreeNode::initializePage): Add bidi overrides here
   65356         too. I forgot to add them when I added them to treatAsZeroWidthSpace in
   65357         an earlier patch.
   65358 
   65359 2007-12-13  Justin Garcia  <justin.garcia (a] apple.com>
   65360 
   65361         Reviewed by Darin Adler.
   65362 
   65363         <rdar://problem/5601583> GMail Editor: Copied link doesn't paste as a link, just colored text
   65364         
   65365         The code that checks the selected Range to see if it's inside an anchor
   65366         checks ancestors of the Range's commonAncestor() but not the
   65367         commonAncestor() itself, and so we'd fail to add markup for the enclosing
   65368         anchor to the pasteboard.
   65369         
   65370         Some enclosing element getters check the node passed to the getter and some
   65371         don't.  There were a few places where we incorrectly assumed that enclosing 
   65372         element getters check the node passed to the getter, but this is the only 
   65373         case that I'm able to write a test case for at the moment.
   65374         
   65375         In this patch I've:
   65376         Changed enclosingNodeWithType and enclosingNodeWithTag to take in positions,
   65377         like the newer enclosing element getters.  This is important because we must
   65378         soon add code to the getters so that they understand that some editing positions
   65379         inside nodes don't actually refer to positions inside those nodes but positions
   65380         before and after them.  Like [table, 0].
   65381         Changed enclosingNodeWithType and enclosingNodeWithTag to check nodes starting with
   65382         n where [n, o] is the position passed to the getter, instead of starting the the parent
   65383         of n.  This makes all but a few of the enclosing element getters behave consistently.
   65384         Changed enclosingNodeWithType and enclosingNodeWithTag to not return non-editable 
   65385         nodes if the input position was editable.  This fixes a bug that that the above change
   65386         exposed.
   65387         Changed enclosingTableCell to simply call enclosingNodeWithType.  We should do
   65388         this for the rest of the getters, or simply remove them in favor of enclosingNodeWithType
   65389         unless doing so would affect readability, like it would in the case of enclosingTableCell.
   65390         Ditto for enclosingBlock.
   65391 
   65392         * editing/AppendNodeCommand.cpp:
   65393         (WebCore::AppendNodeCommand::doApply):
   65394         * editing/DeleteButtonController.cpp:
   65395         (WebCore::enclosingDeletableElement):
   65396         * editing/DeleteSelectionCommand.cpp:
   65397         (WebCore::DeleteSelectionCommand::initializePositionData):
   65398         (WebCore::DeleteSelectionCommand::saveFullySelectedAnchor):
   65399         * editing/Editor.cpp:
   65400         (WebCore::Editor::selectionUnorderedListState):
   65401         (WebCore::Editor::selectionOrderedListState):
   65402         * editing/IndentOutdentCommand.cpp:
   65403         (WebCore::IndentOutdentCommand::prepareBlockquoteLevelForInsertion):
   65404         (WebCore::IndentOutdentCommand::outdentParagraph):
   65405         * editing/InsertNodeBeforeCommand.cpp:
   65406         (WebCore::InsertNodeBeforeCommand::doApply):
   65407         * editing/InsertParagraphSeparatorCommand.cpp:
   65408         (WebCore::InsertParagraphSeparatorCommand::doApply):
   65409         * editing/ReplaceSelectionCommand.cpp:
   65410         (WebCore::ReplaceSelectionCommand::shouldMerge):
   65411         (WebCore::ReplaceSelectionCommand::removeUnrenderedTextNodesAtEnds):
   65412         (WebCore::ReplaceSelectionCommand::positionAtEndOfInsertedContent):
   65413         * editing/TextIterator.cpp:
   65414         * editing/htmlediting.cpp:
   65415         (WebCore::enclosingBlock):
   65416         (WebCore::enclosingNodeWithTag):
   65417         (WebCore::enclosingNodeOfType):
   65418         (WebCore::enclosingTableCell):
   65419         (WebCore::isTableCell):
   65420         * editing/htmlediting.h:
   65421         * editing/markup.cpp:
   65422         (WebCore::appendStartMarkup):
   65423         (WebCore::createMarkup):
   65424 
   65425 2007-12-13  Alexey Proskuryakov  <ap (a] webkit.org>
   65426 
   65427         Reviewed by Darin.
   65428 
   65429         Turn on keyboard event processing quirks for feed views and old applications on Mac OS X.
   65430 
   65431         * WebCore.base.exp:
   65432         * dom/KeyboardEvent.cpp:
   65433         (WebCore::KeyboardEvent::charCode):
   65434         * page/EventHandler.cpp:
   65435         (WebCore::EventHandler::needsKeyboardEventDisambiguationQuirks):
   65436         (WebCore::EventHandler::keyEvent):
   65437         * page/EventHandler.h:
   65438         * page/Settings.cpp:
   65439         (WebCore::Settings::Settings):
   65440         (WebCore::Settings::setNeedsKeyboardEventDisambiguationQuirks):
   65441         * page/Settings.h:
   65442         (WebCore::Settings::needsKeyboardEventDisambiguationQuirks):
   65443         * page/mac/EventHandlerMac.mm:
   65444         (WebCore::EventHandler::needsKeyboardEventDisambiguationQuirks):
   65445         * platform/PlatformKeyboardEvent.h:
   65446         * platform/mac/KeyEventMac.mm:
   65447         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
   65448         (WebCore::PlatformKeyboardEvent::disambiguateKeyDownEvent):
   65449 
   65450 2007-12-13  Dan Bernstein  <mitz (a] apple.com>
   65451 
   65452         - build fix
   65453 
   65454         * platform/network/cf/ResourceErrorCF.cpp:
   65455 
   65456 2007-12-13  Antti Koivisto  <antti (a] apple.com>
   65457 
   65458         Reviewed by Tim Hatcher.
   65459 
   65460         Fix <rdar://problem/5605674> 
   65461         Make <video> display WebKit context menu instead of the QTKit one.
   65462     
   65463         It doesn't really matter where the QTMovieView is.
   65464 
   65465         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
   65466         (WebCore::MediaPlayerPrivate::createQTMovieView):
   65467         (WebCore::MediaPlayerPrivate::setRect):
   65468 
   65469 2007-12-13  Dan Bernstein  <mitz (a] apple.com>
   65470 
   65471         Reviewed by Adam Roben.
   65472 
   65473         - ensure that Unicode bidi control characters are rendered as zero width
   65474           spaces
   65475 
   65476         Test: fast/text/international/bidi-control-chars-treated-as-ZWS.html
   65477 
   65478         * platform/graphics/Font.h:
   65479         (WebCore::Font::treatAsZeroWidthSpace):
   65480         * platform/graphics/GlyphPageTreeNode.cpp:
   65481         (WebCore::GlyphPageTreeNode::initializePage):
   65482         * platform/text/CharacterNames.h:
   65483 
   65484 2007-12-13  Brady Eidson  <beidson (a] apple.com>
   65485 
   65486         Build fix
   65487 
   65488         * platform/wx/TemporaryLinkStubs.cpp:
   65489 
   65490 2007-12-12  Brady Eidson  <beidson (a] apple.com>
   65491 
   65492         Build fix
   65493 
   65494         * platform/gtk/TemporaryLinkStubs.cpp:
   65495 
   65496 2007-12-12  Brady Eidson  <beidson (a] apple.com>
   65497 
   65498         Build fix
   65499 
   65500         * WebCore.pro:
   65501         * history/qt/CachedPageQt.cpp: Removed. Whole purpose for this method being platform-specific has been removed
   65502 
   65503 2007-12-12  Brady Eidson  <beidson (a] apple.com>
   65504 
   65505         Build fix
   65506 
   65507         * platform/win/TemporaryLinkStubs.cpp:
   65508 
   65509 2007-12-12  Brady Eidson  <beidson (a] apple.com>
   65510 
   65511         Reviewed by Sam Weinig
   65512 
   65513         Fix for <rdar://problem/4886844> and lay groundwork for <rdar://problem/4516170> (Back/Forward Cache on Windows)
   65514 
   65515         All back/forward list and page cache related items used to be in WebKit.
   65516         When they were pushed into WebCore, some sloppy compromises were made to keep the Back/Forward cache working on Mac.
   65517         Namely, a WebCore::HistoryItem had to know how to keep a WebDocumentView alive.  We accomplished this via some #ifdefs
   65518         in CachedPage and having the Mac-only CachedPageMac.mm
   65519 
   65520         To get rid of that nastiness and pave the way for adding Back/Forward cache on other platforms, this patch adds the 
   65521         concept of "CachedPagePlatformData" which can contain anything the platform API wants.  
   65522 
   65523         I also took the opportunity to do other cleanup and renaming client methods to better fit their new purposes.
   65524 
   65525         * WebCore.base.exp:
   65526         * WebCore.xcodeproj/project.pbxproj:
   65527 
   65528         * history/CachedPage.cpp:
   65529         (WebCore::CachedPage::~CachedPage): Combined "close()" and "clear()" to just "clear()" - call it from here.
   65530         (WebCore::CachedPage::clear): Call clear() on the CachedPagePlatformData if it exists.  Also delete the CachedPagePlatformData.
   65531         (WebCore::CachedPage::setCachedPagePlatformData):
   65532         (WebCore::CachedPage::cachedPagePlatformData):
   65533         * history/CachedPage.h:
   65534 
   65535         * history/CachedPagePlatformData.h: Added.
   65536         (WebCore::CachedPagePlatformData::~CachedPagePlatformData): Virtual d'tor.
   65537         (WebCore::CachedPagePlatformData::clear): Virtual method for platforms that need to do cleanup at the same time as CachedPage::clear().
   65538 
   65539         * history/PageCache.cpp:
   65540         (WebCore::PageCache::releaseAutoreleasedPagesNow): Call "clear()" instead of "close()"
   65541 
   65542         * history/mac/CachedPageMac.mm: Removed. Functionality replaced with CachedPagePlatformData.
   65543 
   65544         * loader/FrameLoader.cpp:
   65545         (WebCore::FrameLoader::transitionToCommitted): Call the new client methods.  Make some work previously done by WebKitMac cross platform 
   65546           (setting the cached DocumentLoader to the Frame).
   65547         (WebCore::FrameLoader::cachePageForHistoryItem):  Renamed the client methods
   65548 
   65549         * loader/FrameLoaderClient.h:  The very Mac-centric "makeDocumentView", "setDocumentViewFromCachedPage", and "saveDocumentViewToCachedPage"
   65550           become "transitionToCommittedForNewPage", "transitionToCommittedFromCachedPage", and "savePlatformDataToCachedPage" accordingly
   65551 
   65552         * svg/graphics/SVGImageEmptyClients.h:
   65553         (WebCore::SVGEmptyFrameLoaderClient::savePlatformDataToCachedPage):
   65554         (WebCore::SVGEmptyFrameLoaderClient::transitionToCommittedFromCachedPage):
   65555         (WebCore::SVGEmptyFrameLoaderClient::transitionToCommittedForNewPage):
   65556 
   65557 2007-12-12  Dan Bernstein  <mitz (a] apple.com>
   65558 
   65559         Reviewed by Oliver Hunt.
   65560 
   65561         - fix <rdar://problem/5074620> text with font:initial; fails to appear (causes fast/text/font-initial.html to fail)
   65562 
   65563         * css/CSSStyleSelector.cpp:
   65564         (WebCore::CSSStyleSelector::applyProperty): When the font property is
   65565         set to 'initial', set the font size to its initial value, 'medium',
   65566         and the font family to the standard family.
   65567 
   65568 2007-12-12  Justin Garcia  <justin.garcia (a] apple.com>
   65569 
   65570         Reviewed by Darin Adler.
   65571 
   65572         <rdar://problem/5433862> Mail crashes at WebCore::highestAncestor() when deleting a particular selection
   65573 
   65574         * editing/DeleteSelectionCommand.cpp:
   65575         (WebCore::DeleteSelectionCommand::removePreviouslySelectedEmptyTableRows):
   65576         Don't remove the table row that contained the end of the selection if it is where we are
   65577         about to place the ending selection.
   65578         Don't remove all empty rows after the row that contained the start of the selection,
   65579         they might come after the row that contained the end of the selection.
   65580 
   65581 2007-12-12  Sam Weinig  <sam (a] webkit.org>
   65582 
   65583         Reviewed by Anders Carlsson.
   65584 
   65585         Add button to clear the Web Inspector's console.
   65586 
   65587         * English.lproj/InspectorLocalizedStrings.js:
   65588         * page/inspector/ConsolePanel.js:
   65589         * page/inspector/inspector.css:
   65590 
   65591 2007-12-12  Anders Carlsson  <andersca (a] apple.com>
   65592 
   65593         Reviewed by Adam and Jon.
   65594 
   65595         <rdar://problem/5349282>
   65596         popup blocking is not applied to plugins on Windows.
   65597         
   65598         Implement popup blocking. If the plug-in supports the new 
   65599         NPN_PushPopupsEnabledState/NPN_PopPopupsEnabledState API we just use that
   65600         to determine if a plug-in request can open new windows.
   65601         
   65602         If a plug-in does not support the new API, we assume that a plug-in can open new windows
   65603         in response to either mouse click or key press events.
   65604         
   65605         * plugins/win/PluginViewWin.cpp:
   65606         (WebCore::PluginRequestWin::PluginRequestWin):
   65607         (WebCore::PluginRequestWin::shouldAllowPopups):
   65608         Add new shouldAllowPopups member.
   65609         
   65610         (WebCore::PluginViewWin::popPopupsStateTimerFired):
   65611         Reset the popup state.
   65612         
   65613         (WebCore::isWindowsMessageUserGesture):
   65614         New function that given a windows message id returns whether it's a user gesture or not.
   65615         
   65616         (WebCore::PluginViewWin::wndProc):
   65617         Allow popups if the window message is a user gesture.
   65618         
   65619         (WebCore::PluginViewWin::dispatchNPEvent):
   65620         New method that dispatches an NPEvent, turning on popups if necessary.
   65621         
   65622         (WebCore::PluginViewWin::paint):
   65623         (WebCore::PluginViewWin::handleKeyboardEvent):
   65624         (WebCore::PluginViewWin::handleMouseEvent):
   65625         Call dispatchNPEvent().
   65626         
   65627         (WebCore::PluginViewWin::performRequest):
   65628         (WebCore::PluginViewWin::load):
   65629         Add calls to shouldAllowPopups().
   65630         
   65631         (WebCore::PluginViewWin::pushPopupsEnabledState):
   65632         (WebCore::PluginViewWin::popPopupsEnabledState):
   65633         New methods that maintain the popup state stack.
   65634         
   65635         (WebCore::PluginViewWin::arePopupsAllowed):
   65636         New method that returns whether popups are allowed.
   65637         
   65638         (WebCore::PluginViewWin::PluginViewWin):
   65639         * plugins/win/PluginViewWin.h:
   65640         Add new instance variables.
   65641         
   65642         * plugins/win/npapi.cpp:
   65643         (NPN_PushPopupsEnabledState):
   65644         (NPN_PopPopupsEnabledState):
   65645         Implement these.
   65646 
   65647 2007-12-12  Dan Bernstein  <mitz (a] apple.com>
   65648 
   65649         Reviewed by John Sullivan.
   65650 
   65651         - fix a bug in debug builds only where selecting an earlier item in
   65652           a popup selects the first item
   65653 
   65654         Test: fast/forms/menulist-selection-reset.html
   65655 
   65656         * html/HTMLSelectElement.cpp:
   65657         (WebCore::HTMLSelectElement::recalcListItems): Added an argument that
   65658         tells that function whether it should update the selected state of
   65659         option elements.
   65660         (WebCore::HTMLSelectElement::checkListItems): Changed to pass false
   65661         as the above argument.
   65662         * html/HTMLSelectElement.h:
   65663 
   65664 2007-12-12  Adele Peterson  <adele (a] apple.com>
   65665 
   65666         Reviewed by Geoff.
   65667 
   65668         Fix for <rdar://problem/5643054> Remove cue point implementation for media elements
   65669 
   65670         When the specification for cue ranges is more final, we will implement those.
   65671 
   65672         * html/HTMLMediaElement.cpp:
   65673         (WebCore::HTMLMediaElement::~HTMLMediaElement):
   65674         (WebCore::HTMLMediaElement::load):
   65675         * html/HTMLMediaElement.h:
   65676         * html/HTMLMediaElement.idl:
   65677         * platform/graphics/MediaPlayer.cpp:
   65678         * platform/graphics/MediaPlayer.h:
   65679         (WebCore::MediaPlayerClient::mediaPlayerTimeChanged):
   65680         * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
   65681         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
   65682         (WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
   65683         (WebCore::MediaPlayerPrivate::load):
   65684         (WebCore::MediaPlayerPrivate::play):
   65685         (WebCore::MediaPlayerPrivate::pause):
   65686         (WebCore::MediaPlayerPrivate::setEndTime):
   65687         (WebCore::MediaPlayerPrivate::startEndPointTimerIfNeeded):
   65688         (WebCore::MediaPlayerPrivate::endPointTimerFired):
   65689         (WebCore::MediaPlayerPrivate::timeChanged):
   65690         (WebCore::MediaPlayerPrivate::didEnd):
   65691         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
   65692         (WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
   65693         (WebCore::MediaPlayerPrivate::startEndPointTimerIfNeeded):
   65694         (WebCore::MediaPlayerPrivate::endPointTimerFired):
   65695         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.h:
   65696 
   65697 2007-12-12  Darin Fisher  <darin (a] chromium.org>
   65698 
   65699         Reviewed by Maciej.
   65700 
   65701         Fixes:
   65702         http://bugs.webkit.org/show_bug.cgi?id=16408
   65703 
   65704         When navigating back/forward to a http:// link, we should prefer to
   65705         load from cache if possible.
   65706 
   65707         * loader/FrameLoader.cpp:
   65708 
   65709 2007-12-12  Anders Carlsson  <andersca (a] apple.com>
   65710 
   65711         Reviewed by Sam.
   65712 
   65713         <rdar://problem/5132003>
   65714         dumpResourceLoadCallbacks is not implemented in DRT on Windows.
   65715         
   65716         * platform/network/cf/ResourceErrorCF.cpp:
   65717         (WebCore::ResourceError::unpackPlatformError):
   65718         Handle kCFErrorDomainWinSock.
   65719         
   65720         * platform/network/cf/ResourceHandleCFNet.cpp:
   65721         (WebCore::willSendRequest):
   65722         Ignore willSendRequest calls where the redirect response is null, like we do in 
   65723         the Mac version.
   65724 
   65725 2007-12-12  Steve Falkenburg  <sfalken (a] apple.com>
   65726 
   65727         <rdar://problem/5643785> Fix iBench regression caused by mis-placed nested timer check.
   65728         
   65729         Reviewed by Anders.
   65730 
   65731         * platform/win/SharedTimerWin.cpp:
   65732         (WebCore::TimerWindowWndProc): Don't set high-resolution timer flag inside non-high-resolution timer proc.
   65733 
   65734 2007-12-12  Beth Dakin  <bdakin (a] apple.com>
   65735 
   65736         Reviewed by Oliver.
   65737 
   65738         Fix for <rdar://problem/5643770> REGRESSION: Free-standing SVGs 
   65739         with width and height 100% clip to 300 x 150
   65740 
   65741         Though it was correct in an earlier iteration of my patch, it is 
   65742         not sufficient in the final, committed version to ask if the 
   65743         relativeWidthValue() or relativeHeightValue() is greater than 0 
   65744         just to determine if one has been set, for, they are now 
   65745         initialized to 300 and 150 respectively! This patch instead adds a 
   65746         bool to keep track of whether a container size has been set, and 
   65747         only used the relative value if it has.
   65748 
   65749         * rendering/RenderSVGRoot.cpp:
   65750         (WebCore::RenderSVGRoot::calcViewport):
   65751         * svg/SVGSVGElement.cpp:
   65752         (WebCore::SVGSVGElement::SVGSVGElement):
   65753         * svg/SVGSVGElement.h:
   65754         (WebCore::SVGSVGElement::setContainerSize):
   65755         (WebCore::SVGSVGElement::hasSetContainerSize):
   65756 
   65757 2007-12-12  Brady Eidson  <beidson (a] apple.com>
   65758 
   65759         Reviewed by Steve Falkenburg 
   65760 
   65761         <rdar://problem/5012636> - WebURLProtectionSpace::realm returns the hostname rather than the authentication realm
   65762 
   65763         * platform/network/ProtectionSpace.cpp:
   65764         (WebCore::ProtectionSpace::ProtectionSpace): Assign the realm to m_realm, instead of the host
   65765 
   65766 2007-12-12  Alp Toker  <alp (a] atoker.com>
   65767 
   65768         Reviewed by Maciej.
   65769 
   65770         http://bugs.webkit.org/show_bug.cgi?id=16388
   65771         [GTK] Widget::setCursor() gets called frequently
   65772 
   65773         Cache the current cursor to avoid calling gdk_window_set_cursor() when
   65774         there's no change in cursor.
   65775 
   65776         * platform/gtk/WidgetGtk.cpp:
   65777         (WebCore::Widget::Widget):
   65778         (WebCore::Widget::cursor):
   65779         (WebCore::Widget::setCursor):
   65780 
   65781 2007-12-12  Rodney Dawes  <dobey (a] wayofthemonkey.com>
   65782 
   65783         Reviewed by Maciej.
   65784 
   65785         http://bugs.webkit.org/show_bug.cgi?id=16342
   65786         Build Warning and Error fixes in WebCore GTK+
   65787 
   65788         Use C-style casts for casting function pointers to gpointer
   65789         Use static_cast<int> to cast a float to int to fix a warning
   65790 
   65791         * platform/gtk/PlatformScrollBarGtk.cpp:
   65792         (PlatformScrollbar::PlatformScrollbar):
   65793         (PlatformScrollbar::~PlatformScrollbar):
   65794         (PlatformScrollbar::gtkValueChanged):
   65795         * platform/gtk/ThreadingGtk.cpp:
   65796         (callFunctionOnMainThread):
   65797         (callOnMainThread):
   65798 
   65799 2007-12-12  Dan Bernstein  <mitz (a] apple.com>
   65800 
   65801         Reviewed by Darin Adler.
   65802 
   65803         - better fix for a crash when pressing a key that is not associated
   65804           with a command
   65805 
   65806         * editing/EditorCommand.cpp:
   65807         (WebCore::Editor::command): Return the empty command if the command name
   65808         is empty.
   65809 
   65810 2007-12-12  Alexey Proskuryakov  <ap (a] webkit.org>
   65811 
   65812         Reviewed by Darin.
   65813 
   65814         http://bugs.webkit.org/show_bug.cgi?id=16410
   65815         Implement isKeypadEvent() on Windows
   65816 
   65817         Test: platform/win/fast/events/keyLocation-numpad.html
   65818 
   65819         * platform/win/KeyEventWin.cpp:
   65820         (WebCore::isKeypadEvent): Added.
   65821         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent): Also fixed a mistake with autorepeat.
   65822 
   65823 2007-12-12  Oliver Hunt  <oliver (a] apple.com>
   65824 
   65825         Reviewed by Maciej.
   65826 
   65827         <rdar://problem/5071781> window.mouseout events are not sent 
   65828         to window when mouse moves out of window 
   65829 
   65830         Make PlatformMouseEvent recognise WM_MOUSELEAVE.
   65831 
   65832         * platform/win/PlatformMouseEventWin.cpp:
   65833         (WebCore::messageToEventType):
   65834         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
   65835 
   65836 2007-12-12  Sam Weinig  <sam (a] webkit.org>
   65837 
   65838         Fix Mac release build.
   65839 
   65840         * WebCore.base.exp:
   65841 
   65842 2007-12-12  Sam Weinig  <sam (a] webkit.org>
   65843 
   65844         Build fix for Qt, Gtk, and Wx.
   65845 
   65846         * css/CSSParser.cpp:
   65847         (WebCore::CSSParser::parseValue):
   65848         * loader/win/FrameLoaderWin.cpp:
   65849         (WebCore::FrameLoader::urlSelected):
   65850         * platform/network/curl/ResourceHandleManager.cpp:
   65851         (WebCore::parseDataUrl):
   65852         (WebCore::ResourceHandleManager::startJob):
   65853         * platform/network/win/CookieJarWin.cpp:
   65854         (WebCore::setCookies):
   65855         (WebCore::cookies):
   65856         * platform/network/win/ResourceHandleWin.cpp:
   65857         (WebCore::ResourceHandle::start):
   65858         * platform/qt/PasteboardQt.cpp:
   65859         (WebCore::Pasteboard::writeURL):
   65860 
   65861 2007-12-11  Dan Bernstein  <mitz (a] apple.com>
   65862 
   65863         Reviewed by Maciej Stachowiak.
   65864 
   65865         - allow non-integer font sizes on Windows for small caps
   65866 
   65867         * platform/graphics/win/FontDataWin.cpp:
   65868         (WebCore::FontData::smallCapsFontData):
   65869         * platform/graphics/win/FontPlatformData.h:
   65870         (WebCore::FontPlatformData::size):
   65871         (WebCore::FontPlatformData::setSize):
   65872         * platform/graphics/win/FontPlatformDataWin.cpp:
   65873         (WebCore::FontPlatformData::FontPlatformData):
   65874 
   65875 2007-12-11  Sam Weinig  <sam (a] webkit.org>
   65876 
   65877         Build fix for Qt, Gtk, and Wx.
   65878 
   65879         * platform/gtk/CookieJarGtk.cpp:
   65880         (WebCore::setCookies):
   65881         (WebCore::cookies):
   65882         * platform/qt/ClipboardQt.cpp:
   65883         (WebCore::ClipboardQt::writeURL):
   65884         * platform/qt/CookieJarQt.cpp:
   65885         (WebCore::setCookies):
   65886         (WebCore::cookies):
   65887         * platform/wx/PasteboardWx.cpp:
   65888         (WebCore::Pasteboard::writeURL):
   65889 
   65890 2007-12-11  Sam Weinig  <sam (a] webkit.org>
   65891 
   65892         Reviewed by Darin Adler.
   65893 
   65894         Scrub URL out of the tree in preparation for renaming KURL to URL.
   65895             - Renames Document::URL() -> Document::url()
   65896             - Renames DocumentLoader::URL() -> DocumentLoader::url()
   65897             - Renames KURL::url() to KURL::string() and KURL::deprecatedString()
   65898             - Remove FrameLoader::URL()
   65899             - Various variable renames.
   65900 
   65901         The change from Document::URL() to Document::url() required changes
   65902         to the bindings scripts as well, because URL() is the name of a DOM
   65903         method.  The code generation scripts now have code to special case URL()
   65904         to url().
   65905 
   65906         * WebCore.base.exp:
   65907         * bindings/js/kjs_events.cpp:
   65908         (WebCore::JSLazyEventListener::parseCode):
   65909         * bindings/js/kjs_navigator.cpp:
   65910         (KJS::Navigator::getValueProperty):
   65911         * bindings/js/kjs_proxy.cpp:
   65912         (WebCore::KJSProxy::initScript):
   65913         * bindings/js/kjs_window.cpp:
   65914         (KJS::Window::put):
   65915         (KJS::Window::allowsAccessFrom):
   65916         (KJS::Location::put):
   65917         (KJS::LocationProtoFuncReplace::callAsFunction):
   65918         (KJS::LocationProtoFuncReload::callAsFunction):
   65919         (KJS::LocationProtoFuncAssign::callAsFunction):
   65920         * bindings/scripts/CodeGenerator.pm:
   65921         * bindings/scripts/CodeGeneratorCOM.pm:
   65922         * bindings/scripts/CodeGeneratorJS.pm:
   65923         * bindings/scripts/CodeGeneratorObjC.pm:
   65924         * css/CSSImportRule.cpp:
   65925         (WebCore::CSSImportRule::insertedIntoParent):
   65926         * css/CSSParser.cpp:
   65927         (WebCore::CSSParser::parseValue):
   65928         (WebCore::CSSParser::parseContent):
   65929         (WebCore::CSSParser::parseBackgroundImage):
   65930         (WebCore::CSSParser::parseFontFaceSrc):
   65931         (WebCore::CSSParser::parseBorderImage):
   65932         (WebCore::CSSParser::createImportRule):
   65933         * css/CSSStyleSelector.cpp:
   65934         (WebCore::CSSStyleSelector::setEncodedURL):
   65935         * dom/Document.cpp:
   65936         (WebCore::Document::processHttpEquiv):
   65937         (WebCore::Document::cookie):
   65938         (WebCore::Document::setCookie):
   65939         (WebCore::Document::domain):
   65940         (WebCore::Document::setDomain):
   65941         (WebCore::Document::getImageMap):
   65942         (WebCore::Document::completeURL):
   65943         * dom/Document.h:
   65944         (WebCore::Document::url):
   65945         (WebCore::Document::baseURL):
   65946         * dom/Element.cpp:
   65947         (WebCore::Element::baseURI):
   65948         * dom/ProcessingInstruction.h:
   65949         * dom/StyledElement.cpp:
   65950         (WebCore::StyledElement::addCSSImageProperty):
   65951         * dom/StyledElement.h:
   65952         * dom/XMLTokenizer.cpp:
   65953         (WebCore::XMLTokenizer::endElementNs):
   65954         (WebCore::XMLTokenizer::end):
   65955         * dom/XMLTokenizer.h:
   65956         * editing/Editor.cpp:
   65957         (WebCore::Editor::copy):
   65958         * editing/markup.cpp:
   65959         (WebCore::completeURLs):
   65960         * history/CachedPage.h:
   65961         (WebCore::CachedPage::url):
   65962         * history/HistoryItem.cpp:
   65963         (WebCore::HistoryItem::HistoryItem):
   65964         (WebCore::HistoryItem::setURL):
   65965         (WebCore::HistoryItem::isCurrentDocument):
   65966         * html/HTMLBaseElement.cpp:
   65967         (WebCore::HTMLBaseElement::process):
   65968         * html/HTMLParser.cpp:
   65969         (WebCore::HTMLParser::reportErrorToConsole):
   65970         * html/HTMLScriptElement.cpp:
   65971         (WebCore::HTMLScriptElement::childrenChanged):
   65972         (WebCore::HTMLScriptElement::insertedIntoDocument):
   65973         (WebCore::HTMLScriptElement::evaluateScript):
   65974         * html/HTMLScriptElement.h:
   65975         * html/HTMLTokenizer.cpp:
   65976         (WebCore::HTMLTokenizer::scriptExecution):
   65977         * loader/Cache.cpp:
   65978         (WebCore::createResource):
   65979         (WebCore::Cache::requestResource):
   65980         * loader/CachedCSSStyleSheet.cpp:
   65981         (WebCore::CachedCSSStyleSheet::checkNotify):
   65982         * loader/CachedResource.cpp:
   65983         (WebCore::CachedResource::CachedResource):
   65984         * loader/CachedResource.h:
   65985         (WebCore::CachedResource::):
   65986         * loader/CachedScript.h:
   65987         * loader/DocLoader.cpp:
   65988         (WebCore::DocLoader::checkForReload):
   65989         (WebCore::DocLoader::requestResource):
   65990         * loader/DocumentLoader.cpp:
   65991         (WebCore::DocumentLoader::url):
   65992         (WebCore::DocumentLoader::replaceRequestURLForAnchorScroll):
   65993         (WebCore::DocumentLoader::setRequest):
   65994         (WebCore::DocumentLoader::startLoadingMainResource):
   65995         * loader/DocumentLoader.h:
   65996         * loader/FrameLoader.cpp:
   65997         (WebCore::FormSubmission::FormSubmission):
   65998         (WebCore::ScheduledRedirection::ScheduledRedirection):
   65999         (WebCore::FrameLoader::changeLocation):
   66000         (WebCore::FrameLoader::urlSelected):
   66001         (WebCore::FrameLoader::requestFrame):
   66002         (WebCore::FrameLoader::loadSubframe):
   66003         (WebCore::FrameLoader::submitFormAgain):
   66004         (WebCore::FrameLoader::submitForm):
   66005         (WebCore::FrameLoader::didExplicitOpen):
   66006         (WebCore::FrameLoader::replaceContentsWithScriptResult):
   66007         (WebCore::FrameLoader::executeScript):
   66008         (WebCore::FrameLoader::receivedFirstData):
   66009         (WebCore::FrameLoader::begin):
   66010         (WebCore::FrameLoader::startIconLoader):
   66011         (WebCore::FrameLoader::commitIconURLToIconDatabase):
   66012         (WebCore::FrameLoader::scheduleRefresh):
   66013         (WebCore::FrameLoader::redirectionTimerFired):
   66014         (WebCore::FrameLoader::loadPlugin):
   66015         (WebCore::FrameLoader::didNotOpenURL):
   66016         (WebCore::FrameLoader::updatePolicyBaseURL):
   66017         (WebCore::FrameLoader::scrollToAnchor):
   66018         (WebCore::FrameLoader::startRedirectionTimer):
   66019         (WebCore::FrameLoader::load):
   66020         (WebCore::FrameLoader::canLoad):
   66021         (WebCore::FrameLoader::shouldHideReferrer):
   66022         (WebCore::FrameLoader::shouldAllowNavigation):
   66023         (WebCore::FrameLoader::commitProvisionalLoad):
   66024         (WebCore::FrameLoader::clientRedirected):
   66025         (WebCore::FrameLoader::open):
   66026         (WebCore::FrameLoader::didTellBridgeAboutLoad):
   66027         (WebCore::FrameLoader::haveToldBridgeAboutLoad):
   66028         (WebCore::FrameLoader::post):
   66029         (WebCore::FrameLoader::loadResourceSynchronously):
   66030         (WebCore::FrameLoader::continueFragmentScrollAfterNavigationPolicy):
   66031         (WebCore::FrameLoader::shouldTreatURLAsSameAsCurrent):
   66032         (WebCore::FrameLoader::createHistoryItem):
   66033         (WebCore::FrameLoader::addBackForwardItemClippedAtTarget):
   66034         (WebCore::FrameLoader::loadItem):
   66035         (WebCore::FrameLoader::urlsMatchItem):
   66036         (WebCore::FrameLoader::recursiveGoToItem):
   66037         (WebCore::FrameLoader::updateHistoryForStandardLoad):
   66038         (WebCore::FrameLoader::updateHistoryForRedirectWithLockedHistory):
   66039         * loader/FrameLoader.h:
   66040         (WebCore::FrameLoader::url):
   66041         * loader/ImageDocument.cpp:
   66042         (WebCore::ImageDocument::createDocumentStructure):
   66043         * loader/MainResourceLoader.cpp:
   66044         (WebCore::shouldLoadAsEmptyDocument):
   66045         (WebCore::MainResourceLoader::didFinishLoading):
   66046         * loader/NavigationAction.cpp:
   66047         (WebCore::NavigationAction::NavigationAction):
   66048         * loader/NavigationAction.h:
   66049         (WebCore::NavigationAction::url):
   66050         * loader/PluginDocument.cpp:
   66051         (WebCore::PluginTokenizer::createDocumentStructure):
   66052         * loader/SubresourceLoader.cpp:
   66053         (WebCore::SubresourceLoader::load):
   66054         (WebCore::SubresourceLoader::create):
   66055         * loader/icon/IconLoader.cpp:
   66056         (WebCore::IconLoader::startLoading):
   66057         (WebCore::IconLoader::finishLoading):
   66058         * loader/loader.cpp:
   66059         (WebCore::Loader::servePendingRequests):
   66060         * loader/mac/LoaderNSURLExtras.m:
   66061         (urlOriginalData):
   66062         * page/Chrome.cpp:
   66063         (WebCore::Chrome::setToolTip):
   66064         * page/ContextMenuController.cpp:
   66065         (WebCore::ContextMenuController::contextMenuItemSelected):
   66066         * page/Frame.cpp:
   66067         (WebCore::Frame::setUserStyleSheetLocation):
   66068         * page/InspectorController.cpp:
   66069         (WebCore::InspectorResource::type):
   66070         (WebCore::addSourceToFrame):
   66071         (WebCore::InspectorController::addScriptResource):
   66072         (WebCore::InspectorController::updateScriptResourceRequest):
   66073         (WebCore::InspectorController::didCommitLoad):
   66074         * page/mac/WebCoreFrameBridge.mm:
   66075         (-[WebCoreFrameBridge getData:andResponse:forURL:]):
   66076         * platform/KURL.h:
   66077         (WebCore::KURL::string):
   66078         (WebCore::KURL::deprecatedString):
   66079         * platform/mac/ClipboardMac.mm:
   66080         (WebCore::ClipboardMac::getData):
   66081         * platform/mac/CookieJar.mm:
   66082         (WebCore::cookies):
   66083         (WebCore::setCookies):
   66084         * platform/mac/PasteboardMac.mm:
   66085         (WebCore::Pasteboard::writeURL):
   66086         (WebCore::fileWrapperForImage):
   66087         (WebCore::Pasteboard::writeImage):
   66088         (WebCore::Pasteboard::plainText):
   66089         * platform/network/ResourceHandle.cpp:
   66090         (WebCore::ResourceHandle::portAllowed):
   66091         * platform/network/ResourceRequestBase.cpp:
   66092         (WebCore::ResourceRequestBase::isNull):
   66093         * platform/network/cf/ResourceHandleCFNet.cpp:
   66094         (WebCore::willSendRequest):
   66095         (WebCore::didReceiveResponse):
   66096         (WebCore::didReceiveData):
   66097         (WebCore::didFinishLoading):
   66098         (WebCore::didFail):
   66099         (WebCore::didReceiveChallenge):
   66100         (WebCore::ResourceHandleInternal::~ResourceHandleInternal):
   66101         (WebCore::ResourceHandle::~ResourceHandle):
   66102         (WebCore::ResourceHandle::start):
   66103         * platform/win/ClipboardUtilitiesWin.cpp:
   66104         (WebCore::createGlobalData):
   66105         (WebCore::urlToMarkup):
   66106         * platform/win/ClipboardWin.cpp:
   66107         (WebCore::writeURL):
   66108         (WebCore::writeImageToDataObject):
   66109         (WebCore::ClipboardWin::writeURL):
   66110         (WebCore::ClipboardWin::writeRange):
   66111         * platform/win/PasteboardWin.cpp:
   66112         (WebCore::Pasteboard::writeSelection):
   66113         (WebCore::Pasteboard::writeURL):
   66114         * plugins/win/PluginDatabaseWin.cpp:
   66115         (WebCore::PluginDatabaseWin::findPlugin):
   66116         * plugins/win/PluginStreamWin.cpp:
   66117         (WebCore::PluginStreamWin::startStream):
   66118         (WebCore::PluginStreamWin::destroyStream):
   66119         * plugins/win/PluginViewWin.cpp:
   66120         (WebCore::scriptStringIfJavaScriptURL):
   66121         (WebCore::PluginViewWin::performRequest):
   66122         * svg/SVGImageLoader.cpp:
   66123         (WebCore::SVGImageLoader::updateFromElement):
   66124         * xml/XMLHttpRequest.cpp:
   66125         (WebCore::XMLHttpRequest::getResponseXML):
   66126         (WebCore::XMLHttpRequest::urlMatchesDocumentDomain):
   66127         * xml/XSLImportRule.cpp:
   66128         (WebCore::XSLImportRule::loadSheet):
   66129         * xml/XSLTProcessor.cpp:
   66130         (WebCore::XSLTProcessor::createDocumentFromSource):
   66131         (WebCore::xsltStylesheetPointer):
   66132         (WebCore::xmlDocPtrFromNode):
   66133 
   66134 2007-12-11  Beth Dakin  <bdakin (a] apple.com>
   66135 
   66136         Reviewed by Darin.
   66137 
   66138         Fix for <rdar://problem/5641255> SVGs with width and height 100% 
   66139         fail to render when used as background images
   66140 
   66141         CachedImage now has a setImageContainerSize function. It is only 
   66142         needed for SVG right now.
   66143         * loader/CachedImage.cpp:
   66144         (WebCore::CachedImage::setImageContainerSize):
   66145         * loader/CachedImage.h:
   66146 
   66147         Relatively sized SVGs have no intrinsic size. Because this call is 
   66148         low-level enough that we cannot pass in the container size and get 
   66149         the real size of the SVG, we need to know if it has relative 
   66150         dimensions, and if so, we need to get the size from scaledTileSize.
   66151         * platform/graphics/Image.cpp:
   66152         (WebCore::Image::drawTiled):
   66153         * platform/graphics/Image.h:
   66154         (WebCore::Image::setContainerSize):
   66155         (WebCore::Image::hasRelativeWidth):
   66156         (WebCore::Image::hasRelativeHeight):
   66157 
   66158         Re-factored calculateBackgroundSize a bit so that it returns an 
   66159         IntSize. Made it a member function so that it can send m_width and 
   66160         m_height along to setImageContainerSize.
   66161         * rendering/RenderBox.cpp:
   66162         (WebCore::RenderBox::calculateBackgroundSize):
   66163         (WebCore::RenderBox::calculateBackgroundImageGeometry):
   66164         * rendering/RenderBox.h:
   66165 
   66166         Need to account for relatively sized SVGs in calcViewport()
   66167         * rendering/RenderSVGRoot.cpp:
   66168         (WebCore::RenderSVGRoot::calcViewport):
   66169         
   66170         Added new member variables to store the size of the SVG container. 
   66171         relativeWidthValue() and relativeHeightValue() use the stored SVG 
   66172         container size to correctly calculate the width and height of a 
   66173         relatively sized SVG.
   66174         * svg/SVGSVGElement.cpp:
   66175         (WebCore::SVGSVGElement::SVGSVGElement):
   66176         (WebCore::SVGSVGElement::setContainerSize):
   66177         (WebCore::SVGSVGElement::relativeWidthValue):
   66178         (WebCore::SVGSVGElement::relativeHeightValue):
   66179         * svg/SVGSVGElement.h:
   66180         (WebCore::SVGSVGElement::containerSize):
   66181         
   66182         Re-factored size calculations to use the size of the container.
   66183         * svg/graphics/SVGImage.cpp:
   66184         (WebCore::SVGImage::setContainerSize):
   66185         (WebCore::SVGImage::size):
   66186         (WebCore::SVGImage::hasRelativeWidth):
   66187         (WebCore::SVGImage::hasRelativeHeight):
   66188         * svg/graphics/SVGImage.h:
   66189 
   66190 2007-12-11  Darin Adler  <darin (a] apple.com>
   66191 
   66192         * editing/Editor.cpp:
   66193         (WebCore::Editor::yankFromKillRing): Try to fix non-Mac builds by adding
   66194         a missing return statement.
   66195 
   66196 2007-12-11  Darin Adler  <darin (a] apple.com>
   66197 
   66198         Reviewed by Geoff.
   66199 
   66200         - exposed many new commands to the DOM Document executeCommand function by
   66201           merging the JSEditor and Editor executeCommand implementations
   66202         - replaced the execCommand function with a EditorCommand class
   66203         - replaced the WTF::StrHash<> class template with the WebCore::StringHash class
   66204         - replaced the WTF::CaseInsensitiveHash<> class template with the
   66205           WebCore::CaseFoldingHash class
   66206 
   66207         * WebCore.base.exp: Updated.
   66208         * WebCore.pro: Added EditorCommand.cpp, removed JSEditor.cpp.
   66209         * WebCore.vcproj/WebCore.vcproj: Ditto.
   66210         * WebCore.xcodeproj/project.pbxproj: Ditto.
   66211         * WebCoreSources.bkl: Ditto.
   66212 
   66213         * dom/Document.cpp:
   66214         (WebCore::Document::Document): Removed code to set up m_jsEditor.
   66215         (WebCore::Document::~Document): Removed code to delete m_jsEditor.
   66216         (WebCore::command): Added. Helper function that gets an Editor::Command.
   66217         (WebCore::Document::executeCommand): Changed to use Editor::Command instead of
   66218         JSEditor.
   66219         (WebCore::Document::queryCommandEnabled): Ditto.
   66220         (WebCore::Document::queryCommandIndeterm):
   66221         (WebCore::Document::queryCommandState): Ditto.
   66222         (WebCore::Document::queryCommandSupported): Ditto.
   66223         (WebCore::Document::queryCommandValue): Ditto.
   66224 
   66225         * dom/Document.h: Removed JSEditor, jsEditor, m_jsEditor. Changed to
   66226         use CaseFoldingHash.
   66227 
   66228         * editing/Editor.cpp:
   66229         (WebCore::Editor::selectionForCommand): Renamed from selectionForEvent and
   66230         made into a member function so it is accessible from the new EditorCommand.cpp file.
   66231         Also changed to get the selection from the passed-in frame instead of from the
   66232         page, because this should work on the targeted frame unless the event overrides it.
   66233         (WebCore::Editor::handleKeypress): Updated for selectionForCommand change.
   66234         (WebCore::Editor::handleInputMethodKeypress): Ditto.
   66235         (WebCore::imageElementFromImageDocument): Renamed and changed to return
   66236         a HTMLImageElement instead of a Node*.
   66237         (WebCore::Editor::canCopy): Updated for name change.
   66238         (WebCore::Editor::selectionUnorderedListState): Updated for TriState change.
   66239         (WebCore::Editor::selectionOrderedListState): Ditto.
   66240         (WebCore::Editor::selectionStartHasStyle): Make type of local more specific.
   66241         (WebCore::updateState): Moved here from Frame.
   66242         (WebCore::Editor::selectionHasStyle): Ditto.
   66243         (WebCore::Editor::Editor): Initialize m_shouldStartNewKillRingSequence.
   66244         (WebCore::Editor::insertTextWithoutSendingTextEvent): Updated for
   66245         selectionForCommand change.
   66246         (WebCore::Editor::copy): Updated for imageElementFromImageDocument change.
   66247         (WebCore::Editor::toggleBold): Call the ToggleBold command via the command
   66248         machinery since it's no longer in this file as a local function.
   66249         (WebCore::Editor::toggleUnderline): Call the ToggleUnderline command.
   66250         (WebCore::Editor::setBaseWritingDirection): Change type of argument and of
   66251         local variable.
   66252         (WebCore::Editor::addToKillRing): Moved here from EditorMac. Not useful
   66253         without a kill ring, but it's relatively straightforward to implement one.
   66254         (WebCore::Editor::appendToKillRing): Put default implementation here for
   66255         platforms other than Mac. We should probably put a simple kill ring
   66256         implementation here -- doesn't need to be shared with the OS oh platforms
   66257         other than Mac.
   66258         (WebCore::Editor::prependToKillRing): Ditto.
   66259         (WebCore::Editor::yankFromKillRing): Ditto.
   66260         (WebCore::Editor::startNewKillRingSequence): Ditto.
   66261         (WebCore::Editor::setKillRingToYankedState): Ditto.
   66262 
   66263         * editing/Editor.h: Moved the TriState enum here instead of inside the
   66264         Frame class. Added EditorCommandSource enum. Moved selectionHasStyle
   66265         here from the Frame class. Added Editor::Command class with five functions
   66266         for the various things you can do with a command (execute it, check if it
   66267         can be used, and its state and value). Changed hte parameter of
   66268         setBaseWritingDirection to be a const String& rather than a String.
   66269         Got rid of the kill-ring-related operations, but added the kill ring
   66270         functions themselves. Made selectedRange() public. Made the
   66271         m_startNewKillRingSequence not Mac-specific and added "should" to its
   66272         name.
   66273 
   66274         * editing/EditorCommand.cpp: Copied from WebCore/editing/Editor.cpp.
   66275         Retained only the editing commands.
   66276         (WebCore::targetFrame): Moved to the top of the file.
   66277         (WebCore::executeApplyStyle): Added. Helper function for commands
   66278         that need to apply styles.
   66279         (WebCore::executeToggleStyle): Added. Helper function for commands
   66280         that need to toggle styles based on the style of the start of selection.
   66281         (WebCore::executeApplyParagraphStyle): Added. Like executeApplyStyle, but
   66282         for paragraph styles.
   66283         (WebCore::executeInsertFragment): Added. Helper function for commands
   66284         that need to insert a DOM fragment.
   66285         (WebCore::executeInsertNode): Added. Helper function for commands that
   66286         need to insert a tree rooted in a single DOM node.
   66287         (WebCore::stateStyle): Added. Helper function for the state of commands
   66288         that represent style.
   66289         (WebCore::valueStyle): Added. Helper function for the value of commands
   66290         that represent style.
   66291         (WebCore::canScroll): Added. Helper functions for some move and scroll
   66292         commands that need to determine if the renderer they are in can scroll.
   66293         (WebCore::unionDOMRanges): Moved here from EditorMac.
   66294         (WebCore::executeBackColor):
   66295         (WebCore::executeBackwardDelete):
   66296         (WebCore::executeCopy):
   66297         (WebCore::executeCreateLink):
   66298         (WebCore::executeCut):
   66299         (WebCore::executeDelete):
   66300         (WebCore::executeDeleteToMark):
   66301         (WebCore::executeDeleteWordBackward):
   66302         (WebCore::executeDeleteWordForward):
   66303         (WebCore::executeFindString):
   66304         (WebCore::executeFontName):
   66305         (WebCore::executeFontSize):
   66306         (WebCore::executeFontSizeDelta):
   66307         (WebCore::executeForeColor):
   66308         (WebCore::executeFormatBlock):
   66309         (WebCore::executeForwardDelete):
   66310         (WebCore::executeIndent):
   66311         (WebCore::executeInsertBacktab):
   66312         (WebCore::executeInsertHorizontalRule):
   66313         (WebCore::executeInsertHTML):
   66314         (WebCore::executeInsertImage):
   66315         (WebCore::executeInsertLineBreak):
   66316         (WebCore::executeInsertNewline):
   66317         (WebCore::executeInsertNewlineInQuotedContent):
   66318         (WebCore::executeInsertOrderedList):
   66319         (WebCore::executeInsertParagraph):
   66320         (WebCore::executeInsertTab):
   66321         (WebCore::executeInsertText):
   66322         (WebCore::executeInsertUnorderedList):
   66323         (WebCore::executeJustifyCenter):
   66324         (WebCore::executeJustifyFull):
   66325         (WebCore::executeJustifyLeft):
   66326         (WebCore::executeJustifyRight):
   66327         (WebCore::executeMoveBackward):
   66328         (WebCore::executeMoveBackwardAndModifySelection):
   66329         (WebCore::executeMoveDown):
   66330         (WebCore::executeMoveDownAndModifySelection):
   66331         (WebCore::executeMoveDownByPageAndModifyCaret):
   66332         (WebCore::executeMoveForward):
   66333         (WebCore::executeMoveForwardAndModifySelection):
   66334         (WebCore::executeMoveLeft):
   66335         (WebCore::executeMoveLeftAndModifySelection):
   66336         (WebCore::executeMoveRight):
   66337         (WebCore::executeMoveRightAndModifySelection):
   66338         (WebCore::executeMoveToBeginningOfDocument):
   66339         (WebCore::executeMoveToBeginningOfDocumentAndModifySelection):
   66340         (WebCore::executeMoveToBeginningOfLine):
   66341         (WebCore::executeMoveToBeginningOfLineAndModifySelection):
   66342         (WebCore::executeMoveToBeginningOfParagraph):
   66343         (WebCore::executeMoveToBeginningOfParagraphAndModifySelection):
   66344         (WebCore::executeMoveToBeginningOfSentence):
   66345         (WebCore::executeMoveToBeginningOfSentenceAndModifySelection):
   66346         (WebCore::executeMoveToEndOfDocument):
   66347         (WebCore::executeMoveToEndOfDocumentAndModifySelection):
   66348         (WebCore::executeMoveToEndOfSentence):
   66349         (WebCore::executeMoveToEndOfSentenceAndModifySelection):
   66350         (WebCore::executeMoveToEndOfLine):
   66351         (WebCore::executeMoveToEndOfLineAndModifySelection):
   66352         (WebCore::executeMoveToEndOfParagraph):
   66353         (WebCore::executeMoveToEndOfParagraphAndModifySelection):
   66354         (WebCore::executeMoveParagraphBackwardAndModifySelection):
   66355         (WebCore::executeMoveParagraphForwardAndModifySelection):
   66356         (WebCore::executeMoveUp):
   66357         (WebCore::executeMoveUpAndModifySelection):
   66358         (WebCore::executeMoveUpByPageAndModifyCaret):
   66359         (WebCore::executeMoveWordBackward):
   66360         (WebCore::executeMoveWordBackwardAndModifySelection):
   66361         (WebCore::executeMoveWordForward):
   66362         (WebCore::executeMoveWordForwardAndModifySelection):
   66363         (WebCore::executeMoveWordLeft):
   66364         (WebCore::executeMoveWordLeftAndModifySelection):
   66365         (WebCore::executeMoveWordRight):
   66366         (WebCore::executeMoveWordRightAndModifySelection):
   66367         (WebCore::executeOutdent):
   66368         (WebCore::executePaste):
   66369         (WebCore::executePasteAndMatchStyle):
   66370         (WebCore::executePrint):
   66371         (WebCore::executeRedo):
   66372         (WebCore::executeRemoveFormat):
   66373         (WebCore::executeSelectAll):
   66374         (WebCore::executeSelectToMark):
   66375         (WebCore::executeSetMark):
   66376         (WebCore::executeStrikethrough):
   66377         (WebCore::executeSubscript):
   66378         (WebCore::executeSuperscript):
   66379         (WebCore::executeSwapWithMark):
   66380         (WebCore::executeToggleBold):
   66381         (WebCore::executeToggleItalic):
   66382         (WebCore::executeTranspose):
   66383         (WebCore::executeUnderline):
   66384         (WebCore::executeUndo):
   66385         (WebCore::executeUnlink):
   66386         (WebCore::executeUnscript):
   66387         (WebCore::executeUnselect):
   66388         (WebCore::executeYank):
   66389         (WebCore::executeYankAndSelect):
   66390         (WebCore::supported):
   66391         (WebCore::supportedPaste):
   66392         (WebCore::enabled):
   66393         (WebCore::enabledAnySelection):
   66394         (WebCore::enabledAnySelectionAndMark):
   66395         (WebCore::enableCaretInEditableText):
   66396         (WebCore::enabledCopy):
   66397         (WebCore::enabledCut):
   66398         (WebCore::enabledInEditableText):
   66399         (WebCore::enabledInRichlyEditableText):
   66400         (WebCore::enabledPaste):
   66401         (WebCore::enabledRangeInEditableText):
   66402         (WebCore::enabledRangeInRichlyEditableText):
   66403         (WebCore::enabledRedo):
   66404         (WebCore::enabledUndo):
   66405         (WebCore::stateNone):
   66406         (WebCore::stateBold):
   66407         (WebCore::stateItalic):
   66408         (WebCore::stateOrderedList):
   66409         (WebCore::stateStrikethrough):
   66410         (WebCore::stateSubscript):
   66411         (WebCore::stateSuperscript):
   66412         (WebCore::stateUnderline):
   66413         (WebCore::stateUnorderedList):
   66414         (WebCore::valueNull):
   66415         (WebCore::valueBackColor):
   66416         (WebCore::valueFontName):
   66417         (WebCore::valueFontSize):
   66418         (WebCore::valueFontSizeDelta):
   66419         (WebCore::valueForeColor):
   66420         (WebCore::createCommandMap): Added lots of commands, including all the commands
   66421         from JSEditor. A few commands needed different behavior based on whether they are
   66422         invoked from the DOM or a keyboard binding.
   66423         (WebCore::Editor::command): Added. Gets a command object given a name.
   66424         (WebCore::Editor::Command::Command): Added.
   66425         (WebCore::Editor::Command::execute): Added.
   66426         (WebCore::Editor::Command::isSupported): Added.
   66427         (WebCore::Editor::Command::isEnabled): Added.
   66428         (WebCore::Editor::Command::state): Added.
   66429         (WebCore::Editor::Command::value): Added.
   66430         (WebCore::Editor::execCommand): Changed to call command().execute().
   66431 
   66432         * editing/JSEditor.cpp: Removed.
   66433         * editing/JSEditor.h: Removed.
   66434 
   66435         * editing/mac/EditorMac.mm: Changed to provide kill ring primitives intead of
   66436         kill ring commands, so the kill ring commands can be cross-platform.
   66437         (WebCore::Editor::appendToKillRing): Added.
   66438         (WebCore::Editor::prependToKillRing): Added.
   66439         (WebCore::Editor::yankFromKillRing): Added.
   66440         (WebCore::Editor::startNewKillRingSequence): Added.
   66441         (WebCore::Editor::setKillRingToYankedState): Added.
   66442 
   66443         * page/Frame.cpp: Removed selectionHasStyle, TriState, and updateState.
   66444         * page/Frame.h: Ditto.
   66445 
   66446         * page/mac/WebCoreFrameBridge.mm: Removed selectionHasStyle.
   66447         * page/mac/WebCoreFrameBridge.h: Ditto.
   66448 
   66449         * platform/ContextMenu.cpp:
   66450         (WebCore::ContextMenu::checkOrEnableIfNeeded): Updated for TriState change.
   66451 
   66452         * platform/text/StringHash.h:
   66453         (WebCore::StringHash::hash): Merged the StrHash<> template classes into this.
   66454         (WebCore::StringHash::equal): Ditto.
   66455         (WebCore::CaseFoldingHash::hash): Merged the CaseInsensitiveHash<> template
   66456         classes into this.
   66457         (WebCore::CaseFoldingHash::equal): Ditto.
   66458 
   66459         * platform/text/StringImpl.cpp:
   66460         (WebCore::equal): Changed to invoke StringHash.
   66461         (WebCore::equalIgnoringCase): Changed to invoke CaseFoldingHash.
   66462 
   66463         * dom/DOMImplementation.cpp:
   66464         (WebCore::addString): Updated to use StringHash and CaseFoldingHash.
   66465         (WebCore::isSVG10Feature): Ditto.
   66466         (WebCore::isSVG11Feature): Ditto.
   66467         * loader/FrameLoader.cpp:
   66468         (WebCore::localSchemes): Ditto.
   66469         * platform/graphics/FontCache.cpp:
   66470         (WebCore::computeHash): Ditto.
   66471         * platform/network/HTTPHeaderMap.h: Ditto.
   66472         * platform/text/PlatformString.h: Ditto.
   66473         * platform/text/StringImpl.h: Ditto.
   66474         * rendering/RenderPartObject.cpp:
   66475         (WebCore::RenderPartObject::updateWidget): Ditto.
   66476         * xml/XMLHttpRequest.cpp:
   66477         (WebCore::canSetRequestHeader): Ditto.
   66478 
   66479         * rendering/RenderTreeAsText.cpp: Removed stray include of JSEditor.h.
   66480 
   66481 2007-12-11  Darin Adler  <darin (a] apple.com>
   66482 
   66483         * platform/wx/KeyboardEventWx.cpp:
   66484         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent): Another try at fixing the
   66485         WX build. Changes the code around a little bit.
   66486 
   66487 2007-12-11  Darin Adler  <darin (a] apple.com>
   66488 
   66489         * platform/wx/KeyboardEventWx.cpp:
   66490         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent): Quick try at fixing build.
   66491 
   66492 2007-12-11  Dan Bernstein  <mitz (a] apple.com>
   66493 
   66494         Reviewed by Darin Adler.
   66495 
   66496         - fix <rdar://problem/5631507> Text doesn't wrap properly at Tamil version of Wikipedia
   66497 
   66498         Test: fast/text/international/complex-character-based-fallback.html
   66499 
   66500         * platform/graphics/Font.cpp:
   66501         (WebCore::Font::glyphDataForCharacter): Added a forceSmallCaps argument
   66502         that forces this function to use the small caps font. It is used for
   66503         combining marks that need to combine with a small cap.
   66504         * platform/graphics/Font.h:
   66505         * platform/win/UniscribeController.cpp:
   66506         (WebCore::UniscribeController::advance): Changed to split the string
   66507         into runs of characters that will be rendered using the same FontData.
   66508         This is done by calling glyphDataForCharacter() for each cahracter to
   66509         find the FontData it should be rendered with.
   66510         (WebCore::UniscribeController::itemizeShapeAndPlace): Added a fontData
   66511         argument that is passed on to shapeAndPlaceItem() instead of the
   66512         smallCaps argument.
   66513         (WebCore::UniscribeController::shapeAndPlaceItem): Added a fontData
   66514         argument and removed the font fallback logic from this function, as
   66515         it is now expected to be called with an item all of whose characters
   66516         can be rendered with the given fontData.
   66517         * platform/win/UniscribeController.h:
   66518 
   66519 2007-12-07  Alexey Proskuryakov  <ap (a] webkit.org>
   66520 
   66521         Reviewed by Darin.
   66522 
   66523         <rdar://problem/5535636>
   66524         Have to press 4 times instead of 2 times to get the expected result of ^^ with german keyboard.
   66525 
   66526         http://bugs.webkit.org/show_bug.cgi?id=13916
   66527         JavaScript detects Tab as a character input on a textfield validation
   66528 
   66529         Test: platform/win/fast/events/double-dead-char.html
   66530 
   66531         * platform/PlatformKeyboardEvent.h:
   66532         (WebCore::PlatformKeyboardEvent::):
   66533         (WebCore::PlatformKeyboardEvent::type):
   66534         (WebCore::PlatformKeyboardEvent::windowsVirtualKeyCode):
   66535         (WebCore::PlatformKeyboardEvent::setWindowsVirtualKeyCode):
   66536         (WebCore::PlatformKeyboardEvent::keyIdentifier):
   66537         (WebCore::PlatformKeyboardEvent::setIsAutoRepeat):
   66538         Added an explicit type member to differentiate different kinds of events:
   66539           RawKeyDown == keydown == WM_KEYDOWN
   66540           KeyUp == keyup == WM_KEYUP
   66541           Char == keypress == WM_CHAR
   66542           KeyDown == e.g. NSKeyDown or NSFlagsChanged, used on platforms that have a different model for
   66543           event processing, and needs to be converted to RawKeyDown (+ Char) for processing in DOM.
   66544 
   66545         * platform/mac/KeyEventMac.mm:
   66546         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent): Updated for changed data members.
   66547         Fix Enter (numeric keypad) charCode to match Return, as we check for it from keypress default handlers.
   66548         (WebCore::windowsKeyCodeForKeyEvent): 
   66549         (WebCore::isKeyUpEvent): Made it do something closer to what it claims; added a FIXME explaining
   66550         that it still fails.
   66551         (WebCore::disambiguateKeyDownEvent): Downgrade from KeyDown to RawKeyDown or Char, removing information that
   66552         should not be available in those (because it cannot be provided on Windows).
   66553 
   66554         * platform/win/KeyEventWin.cpp:
   66555         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent): Updated for changed data members.
   66556         Used standard Windows constants for bit masks instead of our own ones.
   66557         (WebCore::PlatformKeyboardEvent::disambiguateKeyDownEvent): Should never be called on Windows.
   66558 
   66559         * platform/gtk/KeyEventGtk.cpp:
   66560         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
   66561         (WebCore::PlatformKeyboardEvent::disambiguateKeyDownEvent):
   66562         * platform/qt/PlatformKeyboardEventQt.cpp:
   66563         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
   66564         (WebCore::PlatformKeyboardEvent::disambiguateKeyDownEvent):
   66565         * platform/wx/KeyboardEventWx.cpp:
   66566         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
   66567         (WebCore::PlatformKeyboardEvent::disambiguateKeyDownEvent):
   66568         Updated for cross-platform changes as much as it was possible without appropriate build
   66569         environments.
   66570 
   66571         * WebCore.base.exp: Export PlatformKeyboardEvent::disambiguateKeyDownEvent(), used by platforms that need to
   66572         convert their fancy key events to RawKeyDown/Char pairs. Export Editor::isTextInsertionCommand().
   66573 
   66574         * bridge/EditorClient.h:
   66575         Renamed handleKeypress() to handleKeyboardEvent(), as it gets both keydowns and keypresses.
   66576         Renamed handleInputMethodKeypress() to handleInputMethodKeydown(), as IMs work with raw keydowns.
   66577 
   66578         * dom/Document.h:
   66579         * dom/Document.cpp:
   66580         (WebCore::Document::defaultEventHandler): Moved accesskey processing to EventHandler.
   66581 
   66582         * dom/KeyboardEvent.h: Added comments describing keyCode/charCode behavior.
   66583 
   66584         * dom/KeyboardEvent.cpp:
   66585         (WebCore::eventTypeForKeyboardEventType):
   66586         (WebCore::KeyboardEvent::KeyboardEvent): Conversion between platform and DOM event types is
   66587         now straightforward, so scary hacks such as using autorepeat to distinguish types are
   66588         not needed.
   66589         (WebCore::KeyboardEvent::keyCode): Added a comment describing other browsers' behavior.
   66590         (WebCore::KeyboardEvent::charCode): Added a comment describing other browsers' behavior.
   66591         Changed to a more compatible behavior: raw keydown/keyup events do not and can not have
   66592         character codes.
   66593 
   66594         * editing/Editor.h:
   66595         * editing/Editor.cpp:
   66596         (WebCore::Editor::isTextInsertionCommand): Is this command actually text input in disguise?
   66597         (WebCore::Editor::handleKeyboardEvent): Updated for new function names.
   66598         (WebCore::Editor::handleInputMethodKeydown): Ditto.
   66599 
   66600         * html/HTMLButtonElement.cpp:
   66601         (WebCore::HTMLButtonElement::defaultEventHandler): Perform the default action when handling an
   66602         appropriate event. Enter is processed on keypress (and thus should be checked for via charCode,
   66603         not keyIdentifier), Space is processed on keydown+keyup! We now match IE in that a button is
   66604         highlighted when Space is pressed.
   66605 
   66606         * html/HTMLInputElement.cpp:
   66607         (WebCore::HTMLInputElement::defaultEventHandler):
   66608         * html/HTMLSelectElement.cpp:
   66609         (WebCore::HTMLSelectElement::menuListDefaultEventHandler):
   66610         (WebCore::HTMLSelectElement::listBoxDefaultEventHandler):
   66611         Made a number of fixes to when default actions take place, similar to HTMLButtonElement ones
   66612         described above.
   66613 
   66614         * page/EventHandler.cpp:
   66615         (WebCore::EventHandler::keyEvent): Unless we have a combined KeyDown, just forward the event
   66616         to the target. Call accesskey handling directly, as it doesn't seem to be part of normal event
   66617         handling in IE. Also streamlined the code in KeyDown case, thanks to handleInputMethodKeypress()
   66618         now being handleInputMethodKeydown().
   66619         (WebCore::EventHandler::handleTextInputEvent): Check that we were not called from keydown.
   66620         (WebCore::EventHandler::defaultTextInputEventHandler): Removed a call to defaultTabEventHandler,
   66621         as default tab handling happens when processing keydown.
   66622         (WebCore::handleAccessKey): Moved from Document, as access keys are processed outside normal
   66623         event handling. Fixed accesskey processing to use information that's available in a raw keydown
   66624         event.
   66625 
   66626         (WebCore::EventHandler::defaultKeyboardEventHandler): Do not ignore keydown; in particular,
   66627         handle tabs during keydown processing.
   66628 
   66629         * page/mac/EventHandlerMac.mm:
   66630         (WebCore::EventHandler::currentKeyboardEvent): Disambiguate KeyDown as RawKeyDown, as this is
   66631         what callers want.
   66632 
   66633         * platform/text/PlatformString.h:
   66634         * platform/text/String.cpp:
   66635         (WebCore::String::characterStartingAt):
   66636         * platform/text/StringImpl.cpp:
   66637         (WebCore::StringImpl::characterStartingAt):
   66638         * platform/text/StringImpl.h:
   66639         Added a UChar32 accessor.
   66640 
   66641         * svg/graphics/SVGImageEmptyClients.h:
   66642         (WebCore::SVGEmptyEditorClient::handleKeyboardEvent):
   66643         (WebCore::SVGEmptyEditorClient::handleInputMethodKeydown):
   66644         Updated for new function names.
   66645 
   66646 2007-12-11  John Sullivan  <sullivan (a] apple.com>
   66647 
   66648         Reviewed by Adele
   66649 
   66650         Tiger build fix -- don't call QTMovieView setDelegate: directly because it's not public
   66651 
   66652         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
   66653         (WebCore::MediaPlayerPrivate::createQTMovieView):
   66654         (WebCore::MediaPlayerPrivate::detachQTMovieView):
   66655 
   66656 2007-12-11  Alexey Proskuryakov  <ap (a] webkit.org>
   66657 
   66658         Reviewed by Darin.
   66659 
   66660         http://bugs.webkit.org/show_bug.cgi?id=16325
   66661         <rdar://problem/5632997> REGRESSION: www.xerox.ru doesn't work
   66662 
   66663         Fix this on Windows, too!
   66664 
   66665         Test: http/tests/misc/empty-cookie.html
   66666 
   66667         * platform/network/win/CookieJarWin.cpp:
   66668         (WebCore::setCookies):
   66669         (WebCore::cookies):
   66670         Same fix as on Mac, translated into CF.
   66671 
   66672         * platform/win/CookieJarWin.cpp: Removed - the real one is in platform/network/win.
   66673 
   66674 2007-12-11  Christian Dywan  <christian (a] twotoasts.de>
   66675 
   66676         Reviewed by Alp Toker.
   66677 
   66678         http://bugs.webkit.org/show_bug.cgi?id=16371
   66679         Implement additional mouse cursors for Gtk
   66680 
   66681         Added cursor bitmaps from Mozilla:
   66682         http://lxr.mozilla.org/mozilla1.8/source/widget/src/gtk2/nsGtkCursors.h
   66683 
   66684         * platform/gtk/CursorGtk.cpp:
   66685         (WebCore::customCursorNew):
   66686         (WebCore::verticalTextCursor):
   66687         (WebCore::cellCursor):
   66688         (WebCore::contextMenuCursor):
   66689         (WebCore::noDropCursor):
   66690         (WebCore::copyCursor):
   66691         (WebCore::progressCursor):
   66692         (WebCore::aliasCursor):
   66693         (WebCore::noneCursor):
   66694         (WebCore::notAllowedCursor):
   66695         (WebCore::zoomInCursor):
   66696         (WebCore::zoomOutCursor):
   66697         * platform/gtk/CursorGtk.h: Added.
   66698 
   66699 2007-12-10  Oliver Hunt  <oliver (a] apple.com>
   66700 
   66701         Reviewed by Weinig, Dan, and Alexey.
   66702 
   66703         Fix character set used for dynamically loaded scripts.
   66704 
   66705         Fix for:
   66706             <rdar://problem/5333163> Safari can not display the mouse over pop menu on ChinaTimes News site correctly.
   66707             <rdar://problem/5530048> [Safari]? :Leopard9A576: The typed CH characters displays as garbage in Sina website after reloading the webpage.
   66708             <rdar://problem/5416588> All menus for chinese IBM site have wrong encoding
   66709             
   66710         Use the same logic to determine the charset for a script loaded dynamically
   66711         as we do for a statically loaded script.
   66712 
   66713         * html/HTMLScriptElement.cpp:
   66714         (WebCore::HTMLScriptElement::insertedIntoDocument):
   66715 
   66716 2007-12-10  Justin Garcia  <justin.garcia (a] apple.com>
   66717 
   66718         Reviewed by Oliver Hunt.
   66719 
   66720         <rdar://problem/5482023> GoogleDocs: After FormatBlock in an empty document, certain functions are disabled
   66721         
   66722         We were trying to insert a block of the requested type before the body element.
   66723         
   66724         * editing/FormatBlockCommand.cpp:
   66725         (WebCore::FormatBlockCommand::doApply): 
   66726         Removed unnecessary ()s in the if condition.
   66727         Removed "|| !upstreamStart.node()->isDescendantOf(root)" from the if condition, since
   66728         a) upstreamStart will never be outside the root editable element, since in that case
   66729         there would be no block inside the editable root to Format, and b) if upstreamStart.node() 
   66730         *is* the root, then refNode is the root, and we shouldn't insert before the root, we should insert
   66731         at [root, 0].
   66732         Added comments to explain the use of upstream() in the second if-clause.
   66733         Added an early return for case where there is nothing selected, in that case, there is nothing
   66734         to move.
   66735 
   66736 2007-12-10  Adele Peterson  <adele (a] apple.com>
   66737 
   66738         Reviewed and partially fixed by Tim Hatcher.
   66739 
   66740         Remaining part of fix for <rdar://problem/5633400>
   66741         Transformed <video> is not clipped correctly until a repaint is forced
   66742 
   66743         Replace the implementation of a QTKit method to avoid repaints from the NSView system associated with the QTMovie
   66744         from clobbering the WebCore repaints.
   66745 
   66746         * html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::mediaPlayerRepaint): Added.
   66747         * html/HTMLMediaElement.h:
   66748         * platform/graphics/MediaPlayer.cpp: (WebCore::MediaPlayer::repaint): Added.
   66749         * platform/graphics/MediaPlayer.h: (WebCore::MediaPlayerClient::mediaPlayerRepaint): Added.
   66750 
   66751         * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
   66752         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
   66753         (method_setImplementation): Added for Tiger.
   66754 
   66755         (WebCore::MediaPlayerPrivate::~MediaPlayerPrivate): Call detachQTMovieView, which now does more cleanup.
   66756         (WebCore::MediaPlayerPrivate::cancelLoad): ditto.
   66757         (WebCore::MediaPlayerPrivate::setVisible): ditto.
   66758         (WebCore::MediaPlayerPrivate::detachQTMovieView): Clear the delegate as well as m_qtMovieView pointer.
   66759 
   66760         (WebCore::MediaPlayerPrivate::repaint): Added.  Triggers a repaint on the video renderer.
   66761         (-[WebCoreMovieObserver repaint]): ditto.
   66762 
   66763         (WebCore::mainThreadSetNeedsDisplay): Added.
   66764          Does a WebCore repaint instead of going through the view repaint system for QTMovieView.
   66765         (WebCore::MediaPlayerPrivate::createQTMovieView): Replace the implementation of _mainThreadSetNeedsDisplay.
   66766 
   66767 2007-12-10  Geoffrey Garen  <ggaren (a] apple.com>
   66768 
   66769         Reviewed by Sam Weinig.
   66770 
   66771         Updated for rename in JavaScriptCore.
   66772 
   66773         * bridge/mac/WebCoreScriptDebugger.mm:
   66774         (-[WebCoreScriptCallFrame scopeChain]):
   66775         (-[WebCoreScriptCallFrame functionName]):
   66776         (-[WebCoreScriptCallFrame evaluateWebScript:]):
   66777 
   66778 2007-12-10  Rodney Dawes  <dobey (a] wayofthemonkey.com>
   66779 
   66780         Bug 16383: Ambiguous Window Usage in kjs_dom.cpp
   66781         <http://bugs.webkit.org/show_bug.cgi?id=16383>
   66782 
   66783         Use KJS::Window not the ambiguous Window
   66784 
   66785         Reviewed by ddkilzer.
   66786 
   66787         * bindings/js/kjs_dom.cpp (checkNodeSecurity):
   66788 
   66789 2007-12-10  Sam Weinig  <sam (a] webkit.org>
   66790 
   66791         Fix non-mac builds.
   66792 
   66793         * page/WindowFeatures.cpp: #include <wtf/MathExtras.h> for isnan.
   66794 
   66795 2007-12-10  Brett Wilson  <brettw (a] chromium.org>
   66796 
   66797         Reviewed by Darin.
   66798 
   66799         Fix a divide by 0 in the progress tracker.
   66800         http://bugs.webkit.org/show_bug.cgi?id=15055
   66801 
   66802         * loader/ProgressTracker.cpp:
   66803         (WebCore::ProgressTracker::incrementProgress):
   66804 
   66805 2007-12-09  Sam Weinig  <sam (a] webkit.org>
   66806 
   66807         Reviewed by Darin.
   66808 
   66809         More cleanup of kjs_window.
   66810         - Move WindowFeatures from bridge/ to page/
   66811         - Move functions related to WindowFeatures (boolFeature,
   66812           floatFeature, setWindowFeature, parseWindowFeatures) into the class.
   66813         - Fix up whitespace.
   66814 
   66815         * WebCore.vcproj/WebCore.vcproj:
   66816         * WebCore.xcodeproj/project.pbxproj:
   66817         * bindings/js/kjs_window.cpp:
   66818         (KJS::DOMWindowTimer::~DOMWindowTimer):
   66819         (KJS::createWindow):
   66820         (KJS::showModalDialog):
   66821         (KJS::Window::getOwnPropertySlot):
   66822         (KJS::Window::allowsAccessFrom):
   66823         (KJS::Window::shouldInterruptScript):
   66824         (KJS::WindowProtoFuncAToB::callAsFunction):
   66825         (KJS::WindowProtoFuncOpen::callAsFunction):
   66826         (KJS::Window::setReturnValueSlot):
   66827         (KJS::ScheduledAction::execute):
   66828         (KJS::Window::timerFired):
   66829         (KJS::Location::Location):
   66830         (KJS::Location::getValueProperty):
   66831         (KJS::Location::getOwnPropertySlot):
   66832         (KJS::Location::put):
   66833         (KJS::LocationProtoFuncReplace::callAsFunction): Use better variable names.
   66834         (KJS::LocationProtoFuncAssign::callAsFunction): Ditto.
   66835         (KJS::LocationProtoFuncToString::callAsFunction): Remove extraneous calls to
   66836         allowsAccessFrom, cleanup the function a little.
   66837         (KJS::PausedTimeouts::~PausedTimeouts):
   66838         * bridge/WindowFeatures.h: Removed.
   66839         * page/WindowFeatures.cpp: Added.
   66840         (WebCore::isSeparator):
   66841         (WebCore::WindowFeatures::WindowFeatures):
   66842         (WebCore::WindowFeatures::setWindowFeature):
   66843         (WebCore::WindowFeatures::boolFeature):
   66844         (WebCore::WindowFeatures::floatFeature):
   66845         * page/WindowFeatures.h: Copied from WebCore/bridge/WindowFeatures.h.
   66846         (WebCore::WindowFeatures::WindowFeatures):
   66847 
   66848 2007-12-10  Timothy Hatcher  <timothy (a] apple.com>
   66849 
   66850         Reviewed by Mark Rowe.
   66851 
   66852         <rdar://problem/5639463> Bundle versions on Tiger should be 4523.x not 523.x
   66853 
   66854         * Configurations/Version.xcconfig: Some Tiger versions of Xcode don't set MAC_OS_X_VERSION_MAJOR,
   66855           so assume Tiger and use a 4 for the SYSTEM_VERSION_PREFIX.
   66856 
   66857 2007-12-10  Alp Toker  <alp (a] atoker.com>
   66858 
   66859         Reviewed by Niko.
   66860 
   66861         Cairo implementation of GraphicsContext::setUseAntialiasing().
   66862 
   66863         * platform/graphics/cairo/GraphicsContextCairo.cpp:
   66864         (WebCore::GraphicsContext::setUseAntialiasing):
   66865 
   66866 2007-12-10  Rob Buis  <buis (a] kde.org>
   66867 
   66868         Reviewed by Darin.
   66869 
   66870         http://bugs.webkit.org/show_bug.cgi?id=16182
   66871         SVG should disable antialiasing for shape-rendering="crispEdges"
   66872 
   66873         Turn off anti-aliasing of shapes when shape-rendering="crispEdges".
   66874 
   66875         * platform/graphics/GraphicsContext.h:
   66876         * platform/graphics/cairo/GraphicsContextCairo.cpp:
   66877         (WebCore::GraphicsContext::setUseAntialiasing):
   66878         * platform/graphics/cg/GraphicsContextCG.cpp:
   66879         (WebCore::GraphicsContext::setUseAntialiasing):
   66880         * platform/graphics/qt/GraphicsContextQt.cpp:
   66881         (WebCore::GraphicsContext::setUseAntialiasing):
   66882         * platform/graphics/wx/GraphicsContextWx.cpp:
   66883         (WebCore::GraphicsContext::setUseAntialiasing):
   66884         * rendering/RenderPath.cpp:
   66885         (WebCore::RenderPath::paint):
   66886 
   66887 2007-12-09  Rob Buis  <buis (a] kde.org>
   66888 
   66889         Reviewed by Niko.
   66890 
   66891         http://bugs.webkit.org/show_bug.cgi?id=16163
   66892         SVG crash in Node::setChanged() on Debug builds only (trashed parent)
   66893 
   66894         Fix the crash by properly unregistering as client from SVGResource
   66895         when deleting a styled svg node.
   66896 
   66897         * svg/SVGStyledElement.cpp:
   66898         (WebCore::SVGStyledElement::~SVGStyledElement):
   66899 
   66900 2007-12-10  Brady Eidson  <beidson (a] apple.com>
   66901 
   66902         Rubberstamped by John
   66903 
   66904         * storage/DatabaseTracker.cpp:
   66905         (WebCore::DatabaseTracker::canEstablishDatabase): If the UI Delegate returns *exactly* the estimated size
   66906           for the new quota, we should allow the database to be created
   66907 
   66908 2007-12-10  David D. Kilzer  <ddkilzer (a] webkit.org>
   66909 
   66910         Bug 9683: Implement select.options.remove() method
   66911         <http://bugs.webkit.org/show_bug.cgi?id=9683>
   66912 
   66913         Reviewed by Maciej.
   66914 
   66915         Implement select.options.remove() by calling select.remove()
   66916         with the same arguments.  This is what MSIE 7 does, although its
   66917         select.remove() method differs from WebKit's by throwing an
   66918         exception when called with no arguments or with a negative
   66919         integer argument.  Note that the DOM Level 1 documentation
   66920         specifies that select.remove() does not throw an exception.
   66921 
   66922         Tests: fast/js/select-options-remove-gc.html
   66923                fast/js/select-options-remove.html
   66924 
   66925         * bindings/js/JSHTMLOptionsCollectionCustom.cpp:
   66926         (WebCore::JSHTMLOptionsCollection::remove): Added.
   66927         * html/HTMLOptionsCollection.cpp:
   66928         (WebCore::HTMLOptionsCollection::remove): Added.
   66929         * html/HTMLOptionsCollection.h:
   66930         * html/HTMLOptionsCollection.idl:
   66931 
   66932 2007-12-09  Sam Weinig  <sam (a] webkit.org>
   66933 
   66934         Rubber stamped by Mark Rowe.
   66935 
   66936         * WebCore.xcodeproj/project.pbxproj: Add missing DerivedSources files.
   66937 
   66938 2007-12-09  Oliver Hunt  <oliver (a] apple.com>
   66939 
   66940         Reviewed by Niko.
   66941 
   66942         Correction, 'z' and 'Z' are the only commands that cannot have an extended
   66943         list of arguments.
   66944 
   66945         * svg/SVGParserUtilities.cpp:
   66946         (WebCore::SVGPathParser::parseSVG):
   66947 
   66948 2007-12-09  Oliver Hunt  <oliver (a] apple.com>
   66949 
   66950         Reviewed by Niko.
   66951 
   66952         Prevent unlimited iteration in the case of invalid path data.
   66953         
   66954         The only path commands that can leave numbers trailing the command processing
   66955         are 'm' and 'M', in which trailing numbers are parsed as arguments to an
   66956         implicit lineto command.  In any case we should just terminate as an invalid
   66957         path.
   66958 
   66959         * svg/SVGParserUtilities.cpp:
   66960         (WebCore::SVGPathParser::parseSVG):
   66961 
   66962 2007-12-09  Luca Bruno  <lethalman88 (a] gmail.com>
   66963 
   66964         Reviewed by Alp Toker.
   66965 
   66966         http://bugs.webkit.org/show_bug.cgi?id=15825
   66967         [GTK] curl - slow dns causing hangs.
   66968 
   66969         Create a vector of jobs, to satisfy requests in the right order.
   66970         Set a limit to the number of simultaneous connections.
   66971 
   66972         * platform/network/curl/ResourceHandleManager.cpp:
   66973         (WebCore::maxRunningJobs): added
   66974         (WebCore::ResourceHandleManager::ResourceHandleManager):
   66975         (WebCore::ResourceHandleManager::removeFromCurl):
   66976         (WebCore::ResourceHandleManager::startScheduledJobs):
   66977 
   66978         * platform/network/curl/ResourceHandleManager.h:
   66979         (WebCore::ResourceHandleList): removed
   66980         (WebCore::ResourceHandleManager::m_runningJobs): added
   66981         (WebCore::ResourceHandleManager::m_resourceHandleListHead): removed
   66982         (WebCore::ResourceHandleManager::m_resourceHandleList): added
   66983 
   66984 2007-12-08  Sam Weinig  <sam (a] webkit.org>
   66985 
   66986         Reviewed by Oliver.
   66987 
   66988         Cleanup kjs_window.h/cpp.
   66989 
   66990         * bindings/js/kjs_window.cpp:
   66991         (KJS::WindowPrivate::WindowPrivate):
   66992         (KJS::DOMWindowTimer::DOMWindowTimer):
   66993         (KJS::Window::Window):
   66994         (KJS::Window::retrieveWindow):
   66995         (KJS::Window::retrieveActive):
   66996         (KJS::Window::retrieve):
   66997         (KJS::Window::location):
   66998         (KJS::Window::mark):
   66999         (KJS::allowPopUp):
   67000         (KJS::parseModalDialogFeatures):
   67001         (KJS::floatFeature):
   67002         (KJS::canShowModalDialog):
   67003         (KJS::canShowModalDialogNow):
   67004         (KJS::showModalDialog):
   67005         (KJS::Window::getValueProperty):
   67006         (KJS::Window::getOwnPropertySlot):
   67007         (KJS::Window::globalExec):
   67008         (KJS::Window::setListener):
   67009         (KJS::Window::getListener):
   67010         (KJS::Window::findOrCreateJSEventListener):
   67011         (KJS::Window::findOrCreateJSUnprotectedEventListener):
   67012         (KJS::Window::clearHelperObjectProperties):
   67013         (KJS::Window::setCurrentEvent):
   67014         (KJS::WindowProtoFuncAToB::callAsFunction):
   67015         (KJS::WindowProtoFuncBToA::callAsFunction):
   67016         (KJS::WindowProtoFuncOpen::callAsFunction):
   67017         (KJS::WindowProtoFuncSetTimeout::callAsFunction):
   67018         (KJS::WindowProtoFuncClearTimeout::callAsFunction):
   67019         (KJS::WindowProtoFuncSetInterval::callAsFunction):
   67020         (KJS::WindowProtoFuncAddEventListener::callAsFunction):
   67021         (KJS::WindowProtoFuncRemoveEventListener::callAsFunction):
   67022         (KJS::WindowProtoFuncShowModalDialog::callAsFunction):
   67023         (KJS::WindowProtoFuncNotImplemented::callAsFunction):
   67024         * bindings/js/kjs_window.h:
   67025         (KJS::PausedTimeouts::PausedTimeouts):
   67026         (KJS::PausedTimeouts::takeTimeouts):
   67027         (KJS::ScheduledAction::ScheduledAction):
   67028 
   67029 2007-12-08  Sam Weinig  <sam (a] webkit.org>
   67030 
   67031         Reviewed by Mitz.
   67032 
   67033         Move window scrolling, moving and resizing methods from KJS::Window
   67034         to WebCore::DOMWindow so that there bindings can be autogenerated.
   67035 
   67036         Tests: fast/dom/Window/window-resize-and-move-arguments.html
   67037                fast/dom/Window/window-scroll-arguments.html
   67038 
   67039         * WebCore.xcodeproj/project.pbxproj:
   67040         * bindings/js/kjs_window.cpp:
   67041         (KJS::Window::getValueProperty): Remove extraneous allowsAccessFrom check.
   67042         (KJS::WindowProtoFuncOpen::callAsFunction):
   67043         (KJS::WindowProtoFuncNotImplemented::callAsFunction): Remove extraneous allowsAccessFrom check.
   67044         * bindings/js/kjs_window.h:
   67045         * bindings/scripts/CodeGeneratorJS.pm: Add new extended attribute
   67046         to ensure that the no less than the declared number of attributes
   67047         is allowed.
   67048         * page/DOMWindow.cpp:
   67049         (WebCore::DOMWindow::adjustWindowRect): Moved from kjs_window.
   67050         (WebCore::DOMWindow::scrollBy):
   67051         (WebCore::DOMWindow::scrollTo):
   67052         (WebCore::DOMWindow::moveBy):
   67053         (WebCore::DOMWindow::moveTo):
   67054         (WebCore::DOMWindow::resizeBy):
   67055         (WebCore::DOMWindow::resizeTo):
   67056         * page/DOMWindow.h:
   67057         (WebCore::DOMWindow::scroll):
   67058         * page/DOMWindow.idl:
   67059 
   67060 2007-12-08  Kevin Ollivier  <kevino (a] theolliviers.com>
   67061 
   67062         Reviewed by Alp Toker.
   67063 
   67064         http://bugs.webkit.org/show_bug.cgi?id=14651
   67065         [CURL] didReceiveResponse() only called for HTTP loads
   67066 
   67067         http://bugs.webkit.org/show_bug.cgi?id=14583
   67068         [GDK] file:// relative CSS include URLs handled incorrectly
   67069 
   67070         Make sure CURL sets the ResourceResponse URL and calls
   67071         didReceiveResponse for local files too. 
   67072 
   67073         * platform/network/curl/ResourceHandleManager.cpp:
   67074         (WebCore::writeCallback):
   67075 
   67076 2007-12-08  Oliver Hunt  <oliver (a] apple.com>
   67077 
   67078         Reviewed by Sam W.
   67079 
   67080         Split the ENABLE_SVG_EXPERIMENTAL_FEATURES flag into separate flags.
   67081         
   67082         Fixes <rdar://problem/5620249> Must disable SVG animation
   67083         <rdar://problem/5612772> Disable SVG filters on Mac to match Windows behavior
   67084         
   67085         In order to allow finer grained control over the set of SVG features
   67086         this patch splits ENABLE_SVG_EXPERIMENTAL_FEATURES into the following
   67087         distinct flags:
   67088         ENABLE_SVG_ANIMATION
   67089         ENABLE_SVG_FILTERS
   67090         ENABLE_SVG_FONTS
   67091         ENABLE_SVG_AS_IMAGE
   67092         ENABLE_SVG_USE
   67093         
   67094         by default only ENABLE_SVG_AS_IMAGE and ENABLE_SVG_USE are set.
   67095 
   67096         * Configurations/WebCore.xcconfig:
   67097         * DerivedSources.make:
   67098           Handle the increased number of build flags that may be necessary
   67099           
   67100         * WebCore.SVG.Animation.exp: Added.
   67101         * WebCore.SVG.Filters.exp: Added.
   67102         * WebCore.SVG.exp:
   67103           We now may not need the animation or filter exports so 
   67104           these need to be separate.
   67105           
   67106         * WebCore.vcproj/WebCore.vcproj:
   67107         * WebCore.vcproj/build-generated-files.sh:
   67108           Update for new flags
   67109           
   67110         Remainder of changes are to swap ENABLE(SVG_EXPERIMENTAL_FEATURES) 
   67111         with the appropriate specific feature flag.  
   67112         * bindings/js/JSSVGElementWrapperFactory.cpp:
   67113         (WebCore::createJSSVGWrapper):
   67114         * bindings/objc/DOM.mm:
   67115         (WebCore::createElementClassMap):
   67116         * dom/make_names.pl:
   67117         * loader/CachedImage.cpp:
   67118         (WebCore::CachedImage::createImage):
   67119         * page/DOMWindow.idl:
   67120         * rendering/RenderPath.cpp:
   67121         (WebCore::RenderPath::absoluteClippedOverflowRect):
   67122         * rendering/RenderSVGContainer.cpp:
   67123         (WebCore::RenderSVGContainer::absoluteClippedOverflowRect):
   67124         * rendering/RenderSVGImage.cpp:
   67125         (WebCore::RenderSVGImage::absoluteClippedOverflowRect):
   67126         * rendering/RenderSVGRoot.cpp:
   67127         (WebCore::RenderSVGRoot::paint):
   67128         (WebCore::RenderSVGRoot::absoluteClippedOverflowRect):
   67129         * rendering/RenderSVGText.cpp:
   67130         (WebCore::RenderSVGText::absoluteClippedOverflowRect):
   67131         * rendering/SVGRenderSupport.cpp:
   67132         (WebCore::prepareToRenderSVGContent):
   67133         (WebCore::finishRenderSVGContent):
   67134         * svg/SVGAnimateElement.cpp:
   67135         * svg/SVGAnimateElement.h:
   67136         * svg/SVGAnimateElement.idl:
   67137         * svg/SVGAnimateMotionElement.cpp:
   67138         * svg/SVGAnimateMotionElement.h:
   67139         * svg/SVGAnimateTransformElement.cpp:
   67140         * svg/SVGAnimateTransformElement.h:
   67141         * svg/SVGAnimateTransformElement.idl:
   67142         * svg/SVGComponentTransferFunctionElement.cpp:
   67143         * svg/SVGComponentTransferFunctionElement.h:
   67144         * svg/SVGComponentTransferFunctionElement.idl:
   67145         * svg/SVGDocumentExtensions.cpp:
   67146         (WebCore::SVGDocumentExtensions::startAnimations):
   67147         * svg/SVGFEBlendElement.cpp:
   67148         * svg/SVGFEBlendElement.h:
   67149         * svg/SVGFEBlendElement.idl:
   67150         * svg/SVGFEColorMatrixElement.cpp:
   67151         * svg/SVGFEColorMatrixElement.h:
   67152         * svg/SVGFEColorMatrixElement.idl:
   67153         * svg/SVGFEComponentTransferElement.cpp:
   67154         * svg/SVGFEComponentTransferElement.h:
   67155         * svg/SVGFEComponentTransferElement.idl:
   67156         * svg/SVGFECompositeElement.cpp:
   67157         * svg/SVGFECompositeElement.h:
   67158         * svg/SVGFECompositeElement.idl:
   67159         * svg/SVGFEDiffuseLightingElement.cpp:
   67160         * svg/SVGFEDiffuseLightingElement.h:
   67161         * svg/SVGFEDiffuseLightingElement.idl:
   67162         * svg/SVGFEDisplacementMapElement.cpp:
   67163         * svg/SVGFEDisplacementMapElement.h:
   67164         * svg/SVGFEDisplacementMapElement.idl:
   67165         * svg/SVGFEDistantLightElement.cpp:
   67166         * svg/SVGFEDistantLightElement.h:
   67167         * svg/SVGFEDistantLightElement.idl:
   67168         * svg/SVGFEFloodElement.cpp:
   67169         * svg/SVGFEFloodElement.h:
   67170         * svg/SVGFEFloodElement.idl:
   67171         * svg/SVGFEFuncAElement.cpp:
   67172         * svg/SVGFEFuncAElement.h:
   67173         * svg/SVGFEFuncAElement.idl:
   67174         * svg/SVGFEFuncBElement.cpp:
   67175         * svg/SVGFEFuncBElement.h:
   67176         * svg/SVGFEFuncBElement.idl:
   67177         * svg/SVGFEFuncGElement.cpp:
   67178         * svg/SVGFEFuncGElement.h:
   67179         * svg/SVGFEFuncGElement.idl:
   67180         * svg/SVGFEFuncRElement.cpp:
   67181         * svg/SVGFEFuncRElement.h:
   67182         * svg/SVGFEFuncRElement.idl:
   67183         * svg/SVGFEGaussianBlurElement.cpp:
   67184         * svg/SVGFEGaussianBlurElement.h:
   67185         * svg/SVGFEGaussianBlurElement.idl:
   67186         * svg/SVGFEImageElement.cpp:
   67187         * svg/SVGFEImageElement.h:
   67188         * svg/SVGFEImageElement.idl:
   67189         * svg/SVGFELightElement.cpp:
   67190         * svg/SVGFELightElement.h:
   67191         * svg/SVGFEMergeElement.cpp:
   67192         * svg/SVGFEMergeElement.h:
   67193         * svg/SVGFEMergeElement.idl:
   67194         * svg/SVGFEMergeNodeElement.cpp:
   67195         * svg/SVGFEMergeNodeElement.h:
   67196         * svg/SVGFEMergeNodeElement.idl:
   67197         * svg/SVGFEOffsetElement.cpp:
   67198         * svg/SVGFEOffsetElement.h:
   67199         * svg/SVGFEOffsetElement.idl:
   67200         * svg/SVGFEPointLightElement.cpp:
   67201         * svg/SVGFEPointLightElement.h:
   67202         * svg/SVGFEPointLightElement.idl:
   67203         * svg/SVGFESpecularLightingElement.cpp:
   67204         * svg/SVGFESpecularLightingElement.h:
   67205         * svg/SVGFESpecularLightingElement.idl:
   67206         * svg/SVGFESpotLightElement.cpp:
   67207         * svg/SVGFESpotLightElement.h:
   67208         * svg/SVGFESpotLightElement.idl:
   67209         * svg/SVGFETileElement.cpp:
   67210         * svg/SVGFETileElement.h:
   67211         * svg/SVGFETileElement.idl:
   67212         * svg/SVGFETurbulenceElement.cpp:
   67213         * svg/SVGFETurbulenceElement.h:
   67214         * svg/SVGFETurbulenceElement.idl:
   67215         * svg/SVGFilterElement.cpp:
   67216         * svg/SVGFilterElement.h:
   67217         * svg/SVGFilterElement.idl:
   67218         * svg/SVGFilterPrimitiveStandardAttributes.cpp:
   67219         * svg/SVGTimer.cpp:
   67220         (WebCore::SVGTimer::animationsByElement):
   67221         * svg/SVGUseElement.cpp:
   67222         (WebCore::SVGUseElement::buildPendingResource):
   67223         (WebCore::SVGUseElement::associateInstancesWithShadowTreeElements):
   67224         * svg/SVGUseElement.h:
   67225         * svg/TimeScheduler.cpp:
   67226         (WebCore::TimeScheduler::connectIntervalTimer):
   67227         (WebCore::TimeScheduler::disconnectIntervalTimer):
   67228         * svg/graphics/SVGResourceFilter.cpp:
   67229         * svg/graphics/SVGResourceFilter.h:
   67230         * svg/graphics/cg/SVGResourceFilterCg.cpp:
   67231         * svg/graphics/cg/SVGResourceFilterCg.mm:
   67232         * svg/graphics/filters/SVGDistantLightSource.h:
   67233         * svg/graphics/filters/SVGFEBlend.cpp:
   67234         * svg/graphics/filters/SVGFEBlend.h:
   67235         * svg/graphics/filters/SVGFEColorMatrix.cpp:
   67236         * svg/graphics/filters/SVGFEColorMatrix.h:
   67237         * svg/graphics/filters/SVGFEComponentTransfer.cpp:
   67238         * svg/graphics/filters/SVGFEComponentTransfer.h:
   67239         * svg/graphics/filters/SVGFEComposite.cpp:
   67240         * svg/graphics/filters/SVGFEComposite.h:
   67241         * svg/graphics/filters/SVGFEConvolveMatrix.cpp:
   67242         * svg/graphics/filters/SVGFEConvolveMatrix.h:
   67243         * svg/graphics/filters/SVGFEDiffuseLighting.cpp:
   67244         * svg/graphics/filters/SVGFEDiffuseLighting.h:
   67245         * svg/graphics/filters/SVGFEDisplacementMap.cpp:
   67246         * svg/graphics/filters/SVGFEDisplacementMap.h:
   67247         * svg/graphics/filters/SVGFEFlood.cpp:
   67248         * svg/graphics/filters/SVGFEFlood.h:
   67249         * svg/graphics/filters/SVGFEGaussianBlur.cpp:
   67250         * svg/graphics/filters/SVGFEGaussianBlur.h:
   67251         * svg/graphics/filters/SVGFEImage.cpp:
   67252         * svg/graphics/filters/SVGFEImage.h:
   67253         * svg/graphics/filters/SVGFEMerge.cpp:
   67254         * svg/graphics/filters/SVGFEMerge.h:
   67255         * svg/graphics/filters/SVGFEMorphology.cpp:
   67256         * svg/graphics/filters/SVGFEMorphology.h:
   67257         * svg/graphics/filters/SVGFEOffset.cpp:
   67258         * svg/graphics/filters/SVGFEOffset.h:
   67259         * svg/graphics/filters/SVGFESpecularLighting.cpp:
   67260         * svg/graphics/filters/SVGFESpecularLighting.h:
   67261         * svg/graphics/filters/SVGFETile.h:
   67262         * svg/graphics/filters/SVGFETurbulence.cpp:
   67263         * svg/graphics/filters/SVGFETurbulence.h:
   67264         * svg/graphics/filters/SVGFilterEffect.cpp:
   67265         * svg/graphics/filters/SVGFilterEffect.h:
   67266         * svg/graphics/filters/SVGLightSource.cpp:
   67267         * svg/graphics/filters/SVGLightSource.h:
   67268         * svg/graphics/filters/SVGPointLightSource.h:
   67269         * svg/graphics/filters/SVGSpotLightSource.h:
   67270         * svg/graphics/filters/cg/SVGFEBlendCg.mm:
   67271         * svg/graphics/filters/cg/SVGFEColorMatrixCg.mm:
   67272         * svg/graphics/filters/cg/SVGFEComponentTransferCg.mm:
   67273         * svg/graphics/filters/cg/SVGFECompositeCg.mm:
   67274         * svg/graphics/filters/cg/SVGFEDiffuseLightingCg.mm:
   67275         * svg/graphics/filters/cg/SVGFEDisplacementMapCg.mm:
   67276         * svg/graphics/filters/cg/SVGFEFloodCg.mm:
   67277         * svg/graphics/filters/cg/SVGFEGaussianBlurCg.mm:
   67278         * svg/graphics/filters/cg/SVGFEHelpersCg.h:
   67279         * svg/graphics/filters/cg/SVGFEHelpersCg.mm:
   67280         * svg/graphics/filters/cg/SVGFEImageCg.mm:
   67281         * svg/graphics/filters/cg/SVGFEMergeCg.mm:
   67282         * svg/graphics/filters/cg/SVGFEOffsetCg.mm:
   67283         * svg/graphics/filters/cg/SVGFESpecularLightingCg.mm:
   67284         * svg/graphics/filters/cg/SVGFETileCg.mm:
   67285         * svg/graphics/filters/cg/SVGFilterEffectCg.mm:
   67286         * svg/graphics/filters/cg/WKArithmeticFilter.h:
   67287         * svg/graphics/filters/cg/WKArithmeticFilter.m:
   67288         * svg/graphics/filters/cg/WKComponentMergeFilter.h:
   67289         * svg/graphics/filters/cg/WKComponentMergeFilter.m:
   67290         * svg/graphics/filters/cg/WKDiffuseLightingFilter.h:
   67291         * svg/graphics/filters/cg/WKDiffuseLightingFilter.m:
   67292         * svg/graphics/filters/cg/WKDiscreteTransferFilter.h:
   67293         * svg/graphics/filters/cg/WKDiscreteTransferFilter.m:
   67294         * svg/graphics/filters/cg/WKDisplacementMapFilter.h:
   67295         * svg/graphics/filters/cg/WKDisplacementMapFilter.m:
   67296         * svg/graphics/filters/cg/WKDistantLightFilter.h:
   67297         * svg/graphics/filters/cg/WKDistantLightFilter.m:
   67298         * svg/graphics/filters/cg/WKGammaTransferFilter.h:
   67299         * svg/graphics/filters/cg/WKGammaTransferFilter.m:
   67300         * svg/graphics/filters/cg/WKIdentityTransferFilter.h:
   67301         * svg/graphics/filters/cg/WKIdentityTransferFilter.m:
   67302         * svg/graphics/filters/cg/WKLinearTransferFilter.h:
   67303         * svg/graphics/filters/cg/WKLinearTransferFilter.m:
   67304         * svg/graphics/filters/cg/WKNormalMapFilter.h:
   67305         * svg/graphics/filters/cg/WKNormalMapFilter.m:
   67306         * svg/graphics/filters/cg/WKPointLightFilter.h:
   67307         * svg/graphics/filters/cg/WKPointLightFilter.m:
   67308         * svg/graphics/filters/cg/WKSpecularLightingFilter.h:
   67309         * svg/graphics/filters/cg/WKSpecularLightingFilter.m:
   67310         * svg/graphics/filters/cg/WKSpotLightFilter.h:
   67311         * svg/graphics/filters/cg/WKSpotLightFilter.m:
   67312         * svg/graphics/filters/cg/WKTableTransferFilter.h:
   67313         * svg/graphics/filters/cg/WKTableTransferFilter.m:
   67314         * svg/graphics/mac/SVGResourceFilterPlatformDataMac.h:
   67315         * svg/graphics/mac/SVGResourceFilterPlatformDataMac.mm:
   67316         * svg/svgtags.in:
   67317 
   67318 2007-12-08  Dan Bernstein  <mitz (a] apple.com>
   67319 
   67320         Reviewed by Adele Peterson.
   67321 
   67322         - fix two bugs in parsing of stylesheets in <style> elements created by
   67323           the parser:
   67324           1. each such stylesheet is parsed twice, once when the text node is
   67325              added and again when the </style> tag is reached
   67326           2. re-inserting such a <style> element into the document fails to
   67327              re-parse and apply its stylesheet.
   67328 
   67329         Test for bug #2: fast/dom/HTMLStyleElement/insert-parser-generated.html
   67330 
   67331         * html/HTMLStyleElement.cpp:
   67332         (WebCore::HTMLStyleElement::finishedParsing):
   67333         * svg/SVGStyleElement.cpp:
   67334         (WebCore::SVGStyleElement::finishedParsing):
   67335 
   67336 2007-12-07  Sam Weinig  <sam (a] webkit.org>
   67337 
   67338         Reviewed by Darin.
   67339 
   67340         - Removes the faulty isSafeScript implementation that was only
   67341           used for plugins.
   67342         - Renames isSafeScript to allowsAccessFrom.
   67343 
   67344         * bindings/js/JSDOMWindowCustom.cpp:
   67345         (WebCore::JSDOMWindow::customGetOwnPropertySlot):
   67346         (WebCore::JSDOMWindow::customPut):
   67347         * bindings/js/kjs_dom.cpp:
   67348         (WebCore::checkNodeSecurity):
   67349         * bindings/js/kjs_window.cpp:
   67350         (KJS::createWindow):
   67351         (KJS::Window::getValueProperty):
   67352         (KJS::Window::namedItemGetter):
   67353         (KJS::Window::getOwnPropertySlot):
   67354         (KJS::Window::put):
   67355         (KJS::Window::allowsAccessFrom):
   67356         (KJS::Window::setListener):
   67357         (KJS::Window::getListener):
   67358         (KJS::WindowProtoFuncOpen::callAsFunction):
   67359         (KJS::WindowProtoFuncSetTimeout::callAsFunction):
   67360         (KJS::WindowProtoFuncClearTimeout::callAsFunction):
   67361         (KJS::WindowProtoFuncSetInterval::callAsFunction):
   67362         (KJS::WindowProtoFuncAddEventListener::callAsFunction):
   67363         (KJS::WindowProtoFuncRemoveEventListener::callAsFunction):
   67364         (KJS::WindowProtoFuncNotImplemented::callAsFunction):
   67365         (KJS::Location::getOwnPropertySlot):
   67366         (KJS::Location::put):
   67367         (KJS::LocationProtoFuncReplace::callAsFunction):
   67368         (KJS::LocationProtoFuncReload::callAsFunction):
   67369         (KJS::LocationProtoFuncAssign::callAsFunction):
   67370         (KJS::LocationProtoFuncToString::callAsFunction):
   67371         * bindings/js/kjs_window.h:
   67372         (KJS::Window::allowsAccessFrom):
   67373         * bindings/objc/WebScriptObject.mm:
   67374         (-[WebScriptObject _isSafeScript]): Reverse caller/argument of allowsAccessFrom to match
   67375         the new call.
   67376         * bindings/scripts/CodeGeneratorJS.pm:
   67377 
   67378 2007-12-08  Rob Buis  <buis (a] kde.org>
   67379 
   67380         Reviewed by Darin.
   67381 
   67382         http://bugs.webkit.org/show_bug.cgi?id=15464
   67383         SVGLengthList allows bad values
   67384 
   67385         Be more strict with svg lengths without a unit identifier.
   67386 
   67387         Test: svg/custom/invalid-lengthlist.svg
   67388 
   67389         * svg/SVGLength.cpp:
   67390         (WebCore::SVGLength::setValueAsString):
   67391 
   67392 2007-12-08  Rob Buis  <buis (a] kde.org>
   67393 
   67394         Mac Tiger build fix.
   67395 
   67396         Use the wtf prefix when including MathExtras.h.
   67397 
   67398         * rendering/RenderMedia.cpp:
   67399 
   67400 2007-12-08  Alp Toker  <alp (a] atoker.com>
   67401 
   67402         GTK+ build fix (for ENABLE_VIDEO builds):
   67403 
   67404         Include MathExtras.h to get isfinite().
   67405 
   67406         * rendering/RenderMedia.cpp:
   67407 
   67408 2007-12-08  Rob Buis  <buis (a] kde.org>
   67409 
   67410         Reviewed by Darin.
   67411 
   67412         http://bugs.webkit.org/show_bug.cgi?id=15528
   67413         svg_dynamic_cast should be removed
   67414 
   67415         Replace svg_dynamic_cast with a combination of
   67416         isSVGElement and static_cast.
   67417 
   67418         * rendering/SVGRootInlineBox.cpp:
   67419         (WebCore::SVGRootInlineBox::buildLayoutInformation):
   67420         (WebCore::SVGRootInlineBox::buildTextChunks):
   67421         * svg/SVGAnimationElement.cpp:
   67422         (WebCore::SVGAnimationElement::targetElement):
   67423         * svg/SVGElement.h:
   67424         * svg/SVGElementInstance.cpp:
   67425         (WebCore::SVGElementInstance::updateInstance):
   67426         * svg/SVGFilterElement.cpp:
   67427         (WebCore::SVGFilterElement::canvasResource):
   67428         * svg/SVGGradientElement.cpp:
   67429         (WebCore::SVGGradientElement::buildStops):
   67430         * svg/SVGLocatable.cpp:
   67431         (WebCore::SVGLocatable::getTransformToElement):
   67432         * svg/SVGMaskElement.cpp:
   67433         (WebCore::SVGMaskElement::drawMaskerContent):
   67434         * svg/SVGSwitchElement.cpp:
   67435         (WebCore::SVGSwitchElement::childShouldCreateRenderer):
   67436         * svg/SVGUseElement.cpp:
   67437         (WebCore::SVGUseElement::insertedIntoDocument):
   67438         (WebCore::SVGUseElement::buildPendingResource):
   67439         (WebCore::SVGUseElement::buildInstanceTree):
   67440         (WebCore::SVGUseElement::handleDeepUseReferencing):
   67441         (WebCore::SVGUseElement::buildShadowTree):
   67442         (WebCore::SVGUseElement::expandUseElementsInShadowTree):
   67443         (WebCore::SVGUseElement::associateInstancesWithShadowTreeElements):
   67444         * svg/graphics/SVGResource.cpp:
   67445         (WebCore::getResourceById):
   67446 
   67447 2007-12-07  Antti Koivisto  <antti (a] apple.com>
   67448 
   67449         Reviewed by Adele.
   67450         
   67451         Partial fix for <rdar://problem/5633400>
   67452         Transformed <video>, <img>, <embed> are not clipped correctly until a repaint is forced
   67453         
   67454         Fix video painting when transform is applied.
   67455 
   67456         Test: media/video-transformed.html
   67457 
   67458         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
   67459         (WebCore::MediaPlayerPrivate::paint):
   67460 
   67461 2007-12-07  Dan Bernstein  <mitz (a] apple.com>
   67462 
   67463         Reviewed by Sam Weinig.
   67464 
   67465         - fix http://bugs.webkit.org/show_bug.cgi?id=16348
   67466           @font-face does not affect the default style
   67467 
   67468         Test: fast/css/font-face-default-font.html
   67469 
   67470         * dom/Document.cpp:
   67471         (WebCore::Document::recalcStyle): Pass our font selector to
   67472         Font::update() if we already have one.
   67473 
   67474 2007-12-07  Darin Adler  <darin (a] apple.com>
   67475 
   67476         - fix Windows build
   67477 
   67478         * bridge/win/GlobalHistoryWin.cpp:
   67479         (WebCore::historyContains): Missed a rename.
   67480 
   67481 2007-12-07  Brady Eidson  <beidson (a] apple.com>
   67482 
   67483         Reviewed by Anders and Darin
   67484 
   67485         When a statement bumps up against the quota and the UI Delegate grants more space, we need to
   67486         actually set the new maximum size on the SQLiteDatabase (in addition to storing the new max quota
   67487         in the DatabaseTracker, which was already done)
   67488 
   67489         * storage/SQLTransaction.cpp:
   67490         (WebCore::SQLTransaction::runStatements): If a statement is being retried, set the maximum size on
   67491           the SQLiteDatabase to the new maximum size
   67492 
   67493 2007-12-07  Darin Adler  <darin (a] apple.com>
   67494 
   67495         - fix Tiger build
   67496 
   67497         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm: Tiger didn't even have
   67498         QTKIT_VERSION_MAX_ALLOWED, so add logic to work without that.
   67499 
   67500 2007-12-07  Darin Adler  <darin (a] apple.com>
   67501 
   67502         - fix 64-bit build, hopefully without breaking Tiger build
   67503 
   67504         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
   67505         (WebCore::MediaPlayerPrivate::updateStates):
   67506         Don't use Movies.h constants that are nonexistent in 64-bit.
   67507         Define the new QTMovie.h constants, though, when using an older QTKit.
   67508 
   67509 2007-12-07  Brady Eidson  <beidson (a] apple.com>
   67510 
   67511         Reviewed by Anders
   67512 
   67513         Fix <rdar://problem/5636115> - Prompted for quota increase to create database when it already existed
   67514 
   67515         * storage/DatabaseTracker.cpp:
   67516         (WebCore::DatabaseTracker::canEstablishDatabase): Check hasEntryForDatabase before doing any prompting
   67517         (WebCore::DatabaseTracker::hasEntryForDatabase): Check and see if this database already exists
   67518         * storage/DatabaseTracker.h:
   67519 
   67520 2007-12-07  Darin Adler  <darin (a] apple.com>
   67521 
   67522         Reviewed by Mitz.
   67523 
   67524         - http://bugs.webkit.org/show_bug.cgi?id=15981
   67525           speed up visited-link code a bit
   67526 
   67527         * bridge/GlobalHistory.h: Change historyContains to take a character pointer plus length
   67528         instead of requiring a DeprecatedString.
   67529 
   67530         * bridge/mac/GlobalHistoryMac.mm: (WebCore::historyContains): Updated for above change.
   67531         Also removes pointless "fast Latin-1" case that was never used.
   67532         * bridge/win/GlobalHistoryWin.cpp: (WebCore::historyContains): Ditto.
   67533         * platform/gtk/TemporaryLinkStubs.cpp: (WebCore::historyContains): Ditto.
   67534         * platform/wx/TemporaryLinkStubs.cpp: (WebCore::historyContains): Ditto.
   67535 
   67536         * css/CSSStyleSelector.cpp:
   67537         (WebCore::findHash): Added. Helper for cleanpath.
   67538         (WebCore::findSlashDotDotSlash): Ditto.
   67539         (WebCore::findSlashSlash): Ditto.
   67540         (WebCore::findSlashDotSlash): Ditto.
   67541         (WebCore::cleanpath): Changed to use fast helper functions instead of slower general-purpose
   67542         DeprecatedString find function.
   67543         (WebCore::containsColonSlashSlash): Added. Helper for checkPseudoState.
   67544         (WebCore::checkPseudoState): Got rid of reference count churn by using an AtomicString*
   67545         instead of an AtomicString for the attribute value. Changed to use fast helper function
   67546         instead of slower DeprecatedString::contains function, and also made the fast case not
   67547         bother allocating a DeprecatedConstString.
   67548 
   67549         - unrelated tiny cleanup
   67550 
   67551         * platform/graphics/svg/cg/SVGPaintServerGradientCg.cpp:
   67552         (WebCore::releaseCachedStops): Use static_cast instead of reinterpret_cast.
   67553         (WebCore::cgGradientCallback): Ditto.
   67554 
   67555 2007-12-07  Darin Adler  <darin (a] apple.com>
   67556 
   67557         Fix build on Tiger (Mark Rowe told me how).
   67558 
   67559         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
   67560         Include <objc/objc-runtime.h>, which existed back on Tiger,
   67561         rather than <objc/runtime.h>, which did not.
   67562 
   67563 2007-12-07  Geoffrey Garen  <ggaren (a] apple.com>
   67564 
   67565         Build fix: rolling out last build fix to change #include path.
   67566 
   67567         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
   67568 
   67569 2007-12-07  Steve Falkenburg  <sfalken (a] apple.com>
   67570 
   67571         Re-named our B&I flag from BUILDBOT to PRODUCTION.
   67572 
   67573         Reviewed by Sam Weinig.
   67574 
   67575         * WebCore.vcproj/WebCore.make:
   67576 
   67577 2007-12-07  Geoffrey Garen  <ggaren (a] apple.com>
   67578 
   67579         Build fix: corrected #include path.
   67580 
   67581         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
   67582 
   67583 2007-12-07  Geoffrey Garen  <ggaren (a] apple.com>
   67584 
   67585         Reviewed by Sam Weinig.
   67586 
   67587         Added some namespace qualifications and a forwarding header, now that
   67588         KJS::Node is sometimes #included in WebCore by JavaScriptCore headers.
   67589 
   67590         * ForwardingHeaders/wtf/ListRefPtr.h: Added.
   67591         * bindings/js/JSXSLTProcessor.cpp:
   67592         (KJS::JSXSLTProcessorPrototypeFunctionTransformToFragment::callAsFunction):
   67593         * bindings/js/kjs_binding.cpp:
   67594         (KJS::ScriptInterpreter::getDOMNodeForDocument):
   67595         (KJS::ScriptInterpreter::forgetDOMNodeForDocument):
   67596         (KJS::ScriptInterpreter::putDOMNodeForDocument):
   67597         (KJS::ScriptInterpreter::markDOMNodesForDocument):
   67598         (KJS::ScriptInterpreter::updateDOMNodeDocument):
   67599 
   67600 2007-12-07  Adam Roben  <aroben (a] apple.com>
   67601 
   67602         Add SoftLinking.h for Windows and use it in a few places
   67603 
   67604         Reviewed by Oliver.
   67605 
   67606         * WebCore.vcproj/WebCore.vcproj: Added new file to project.
   67607         * platform/win/PlatformScrollBarSafari.cpp: Use SoftLinking.h.
   67608         (WebCore::PlatformScrollbar::PlatformScrollbar): Removed manual
   67609         soft-linking calls.
   67610         (WebCore::PlatformScrollbar::paintButton): Check for the presence of
   67611         the SafariTheme library now that we can't check for the presence of
   67612         paintThemePart directly.
   67613         (WebCore::PlatformScrollbar::paintTrack): Ditto.
   67614         (WebCore::PlatformScrollbar::paintThumb): Ditto.
   67615         * platform/win/SoftLinking.h: Copied from WebCore/platform/mac/SoftLinking.h.
   67616         * rendering/RenderThemeSafari.cpp: Same basic changes as to
   67617         PlatformScrollBarSafari.cpp.
   67618         (WebCore::RenderThemeSafari::RenderThemeSafari):
   67619         (WebCore::RenderThemeSafari::isControlStyled):
   67620         (WebCore::RenderThemeSafari::paintCapsLockIndicator):
   67621         * rendering/RenderThemeSafari.h: Removed m_themeDLL member.
   67622 
   67623 2007-12-07  Darin Adler  <darin (a] apple.com>
   67624 
   67625         Reviewed by Adele.
   67626 
   67627         - fix <rdar://problem/5608795> CrashTracer: 481 crashes in Safari
   67628           at WebCore::HTMLSelectElement::saveState const + 152
   67629 
   67630         Test: fast/forms/select-set-inner.html
   67631 
   67632         * dom/ContainerNode.cpp:
   67633         (WebCore::ContainerNode::removeChildren): Added a return value, as with other
   67634         calls that change children, so we can optimize for the case where it does nothing.
   67635         (WebCore::ContainerNode::cloneChildNodes): Changed parameter type to ContainerNode.
   67636         * dom/ContainerNode.h: See above.
   67637 
   67638         * html/HTMLOptGroupElement.cpp:
   67639         (WebCore::HTMLOptGroupElement::removeChildren): Override removeChildren and call
   67640         recalcSelectOptions in that case.
   67641         (WebCore::HTMLOptGroupElement::childrenChanged): Override childrenChanged instead of
   67642         addChild, for consistency with HTMLSelectElement; no need to override both.
   67643         (WebCore::HTMLOptGroupElement::groupLabelText): Made const.
   67644         * html/HTMLOptGroupElement.h: See above.
   67645 
   67646         * html/HTMLSelectElement.cpp: Don't override addChild any more, because we already
   67647         override childrenChanged, and addChild calls that.
   67648         (WebCore::HTMLSelectElement::removeChildren): Override removeChildren and call
   67649         recalcSelectOptions in that case.
   67650         (WebCore::HTMLSelectElement::recalcListItems): Tightened up the code a little bit
   67651         by using a for loop and traverseNextSibling. Also added some new comments and
   67652         removed some obsolete ones.
   67653         (WebCore::HTMLSelectElement::checkListItems): Added. Debug-only check to make
   67654         sure we don't have a stale list items vector.
   67655         * html/HTMLSelectElement.h: Changed listItems() to invoke checkListItems().
   67656         This will help us catch cases where we have too few calls to setRecalcListItems.
   67657 
   67658 2007-12-07  Dan Bernstein  <mitz (a] apple.com>
   67659 
   67660         Reviewed by Darin Adler.
   67661 
   67662         - WebCore part of fixing <rdar://problem/5499918> REGRESSION: insertion point in input field with custom border cuts holes in focus ring interior edges
   67663 
   67664         Test: fast/repaint/focus-ring.html
   67665 
   67666         * editing/SelectionController.cpp:
   67667         (WebCore::SelectionController::caretRepaintRect): Changed to return just
   67668         the caret rect without any padding.
   67669         (WebCore::SelectionController::recomputeCaretRect): Changed to repaint
   67670         just the caret rect without any padding.
   67671         * platform/graphics/GraphicsContext.h: Removed setFocusRingClip() and
   67672         clearFocusRingClip().
   67673         * platform/graphics/cairo/GraphicsContextCairo.cpp: Ditto.
   67674         * platform/graphics/cg/GraphicsContextCG.cpp: Ditto.
   67675         * platform/graphics/cg/GraphicsContextPlatformPrivate.h: Removed
   67676         m_focusRingClip member.
   67677         * platform/graphics/mac/GraphicsContextMac.mm:
   67678         (WebCore::GraphicsContext::drawFocusRing): Changed to call
   67679         wkDrawFocusRing() once without setting up additional clip. On Leopard,
   67680         wkDrawFocusRing() respects the context clip now. On Tiger, a
   67681         transparency layer is used to apply clipping to the focus ring.
   67682         * platform/graphics/qt/GraphicsContextQt.cpp: Removed focus ring clip
   67683         methods and member.
   67684         * platform/graphics/wx/GraphicsContextWx.cpp: Ditto.
   67685         * platform/mac/WebCoreSystemInterface.h: Removed the clipRect argument
   67686         to wkDrawFocusRing().
   67687         * platform/mac/WebCoreSystemInterface.mm: Ditto.
   67688         * rendering/RenderLayer.cpp:
   67689         (WebCore::setClip): Removed call to set the focus ring clip.
   67690         (WebCore::restoreClip): Removed call to reset the focus ring clip.
   67691 
   67692 2007-12-07  Darin Adler  <darin (a] apple.com>
   67693 
   67694         Reviewed by Antti Koivisto and Kevin Decker.
   67695 
   67696         - fix <rdar://problem/5601586> QtKit should be dynamically loaded upon need, not linked at startup
   67697 
   67698         Also did a lot of small tweaks to MediaPlayerPrivateQTKit.
   67699 
   67700         * WebCore.xcodeproj/project.pbxproj: Don't link to QTKit.
   67701 
   67702         * platform/graphics/mac/MediaPlayerPrivateQTKit.h: Omit unneeded includes and declarations.
   67703         Made a lot more functions const. Made a few more members private and a couple inline.
   67704         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm: Added soft linking machinery for all the
   67705         things we currently use in QTKit. It's a little more awkward for classes and other data objects
   67706         than it is for functions, but still relatively straightforward, with no changes needed to the
   67707         client code. Added using namespace directives. Made a cuePointTimerInterval constant and put
   67708         it at the top of the file. Use 0 consistently instead of sometimes 0 and sometimes 0.0f.
   67709         (WebCore::MediaPlayerPrivate::MediaPlayerPrivate): Removed unneeded initialization of RetainPtr
   67710         members to nil.
   67711         (WebCore::MediaPlayerPrivate::createQTMovie): Use adoptNS instead of autorelease.
   67712         (WebCore::MediaPlayerPrivate::createQTMovieView): Ditto. Also use -[NSColor clearColor].
   67713         (WebCore::MediaPlayerPrivate::createQTTime): Remove an unneeded type cast that had no effect.
   67714         Changed to use long instead of int because that's the type for a QTTime time scale anyway.
   67715         (WebCore::MediaPlayerPrivate::duration): Use a static_cast instead of a C-style cast.
   67716         (WebCore::MediaPlayerPrivate::currentTime): Ditto. Also merged into a single expression.
   67717         (WebCore::MediaPlayerPrivate::cuePointTimerFired): Added code to make a copy of the cue
   67718         points set to avoid a potential problem with a set being modified as we iterate it.
   67719         (WebCore::MediaPlayerPrivate::bytesLoaded): Removed unneeded null check of m_qtMovie.
   67720         (WebCore::MediaPlayerPrivate::updateStates): Instead of comments explaining the numeric
   67721         values, used the constants from the headers directly.
   67722         (WebCore::MediaPlayerPrivate::getSupportedTypes): Instead of (QTMovieFileTypeOptions)0,
   67723         pass the named constant with value 0, QTIncludeCommonTypes. Skipped the intermediate type
   67724         of NSString to remove one cast. Replaced C-style cast with reinterpret_cast (arguably
   67725         no better). Used RetainPtr instead of explicit CFRelease calls.
   67726 
   67727         * platform/mac/SoftLinking.h: Added macros to do soft linking for classes and for pointers.
   67728         It's not quite as automatic as the soft linking we can do for functions, since these define
   67729         functions to get the values, so you need to define macros to make what look like variable
   67730         accesses turn into function calls. See MediaPlayerPrivateQTKit for the details.
   67731 
   67732         * html/HTMLMediaElement.h:
   67733         * html/TimeRanges.h:
   67734         * html/VoidCallback.h:
   67735         * platform/graphics/MediaPlayer.h:
   67736         Use angle brackets for wtf includes. Omit unneeded includes.
   67737 
   67738 2007-12-07  Dan Bernstein  <mitz (a] apple.com>
   67739 
   67740         Reviewed by Darin Adler.
   67741 
   67742         - fix http://bugs.webkit.org/show_bug.cgi?id=16334
   67743           <rdar://problem/5634923> REGRESSION (r28299): Homepage of any DotMac Web Gallery won't load completely
   67744 
   67745         Test: fast/dynamic/subtree-no-common-root-static-y.html
   67746 
   67747         * rendering/RenderObject.cpp:
   67748         (WebCore::RenderObject::markContainingBlocksForLayout): Changed the call
   67749         to setChildNeedsLayout() to not mark containing blocks and added a
   67750         separate call to markContainingBlocksForLayout() that will not schedule
   67751         a layout if we are already in the middle of scheduleRelayoutOfSubtree().
   67752 
   67753 2007-12-07  Alexey Proskuryakov  <ap (a] webkit.org>
   67754 
   67755         Reviewed by Darin.
   67756 
   67757         http://bugs.webkit.org/show_bug.cgi?id=16325
   67758         <rdar://problem/5632997> REGRESSION: www.xerox.ru doesn't work
   67759         
   67760         Test: http/tests/misc/empty-cookie.html
   67761 
   67762         * platform/mac/CookieJar.mm:
   67763         (WebCore::setCookies): Don't store empty cookies.
   67764         (WebCore::cookies): Filter out empty cookies if we have them, as they could have been set
   67765         with an earlier version of Leopard!
   67766 
   67767 2007-12-06  Ada Chan  <adachan (a] apple.com>
   67768 
   67769         Fixed the if statement (ERROR_SUCCESS is 0 and we were actually
   67770         returning true when there's an error).
   67771 
   67772         Reviewed by Steve.
   67773 
   67774         * platform/win/FileSystemWin.cpp:
   67775         (WebCore::makeAllDirectories):
   67776 
   67777 2007-12-06  Darin Adler  <darin (a] apple.com>
   67778 
   67779         - fix broken regression test
   67780 
   67781         * bindings/js/kjs_binding.cpp:
   67782         (KJS::setDOMException): Oops, this was just supposed to be PERMISSION_DENIED.
   67783 
   67784 2007-12-06  Darin Adler  <darin (a] apple.com>
   67785 
   67786         Reviewed by Sam Weinig.
   67787 
   67788         - fix http://bugs.webkit.org/show_bug.cgi?id=16332
   67789           ObjC DOM exception object descriptions should include the exception name
   67790 
   67791         * WebCore.pro: Added ExceptionCode.cpp.
   67792         * WebCore.vcproj/WebCore.vcproj: Added ExceptionCode.cpp.
   67793         * WebCore.xcodeproj/project.pbxproj: Added ExceptionCode.cpp.
   67794         * WebCoreSources.bkl: Added ExceptionCode.cpp.
   67795 
   67796         * bindings/js/kjs_binding.cpp: (KJS::setDOMException): Moved the code to decompose an
   67797         ExceptionCode into ExceptionCode.h/cpp -- getExceptionCodeDescription. Also removed
   67798         the many unneeded includes that were here. Had to keep one special case here, for
   67799         SECURITY_ERR.
   67800 
   67801         * bindings/objc/ExceptionHandlers.mm: (WebCore::raiseDOMException): Changed to use the
   67802         new getExceptionCodeDescription function so that this shares the exception name
   67803         information that was previously only available to JavaScript.
   67804 
   67805         * dom/ExceptionCode.cpp: Copied from bindings/js/kjs_binding.cpp.
   67806         (WebCore::getExceptionCodeDescription): Added some assertions, and made the function
   67807         handle exception names in a slightly more robust way that is not subject to integer
   67808         overflow. (Not a real world issue since we should never receive a bad exception code.)
   67809 
   67810         * dom/ExceptionCode.h: Added the ExceptionCodeDescription struct and the
   67811         getExceptionCodeDescription function.
   67812 
   67813         * svg/SVGException.h: Added a missing #include and got rid of some comments. Some of
   67814         the comments were mildly helpful, but others were incorrect. This now matches the other
   67815         exception-related headers such as RangeException.h.
   67816 
   67817 2007-12-06  Brady Eidson  <beidson (a] apple.com>
   67818 
   67819         Reviewed by Darin
   67820 
   67821         Fixed a glaring bug that would prevent a statement from getting run a second time
   67822 
   67823         * storage/SQLStatement.cpp:
   67824         (WebCore::SQLStatement::execute): Clear failure due to quota *before* we check the error
   67825           and return early
   67826         (WebCore::SQLStatement::clearFailureDueToQuota): Only clear the error if it was a quota error
   67827 
   67828 2007-12-06  Timothy Hatcher  <timothy (a] apple.com>
   67829 
   67830         Reviewed by Oliver Hunt.
   67831 
   67832         Use keydown instead of keypress so keyIdentifier can be used.
   67833 
   67834         * page/inspector/ConsolePanel.js: Use keydown instead of keypress.
   67835         * page/inspector/DatabasePanel.js: Ditto.
   67836         * page/inspector/inspector.js: Ditto. Plus call removeEventListener
   67837         before deleting windowLoaded.
   67838 
   67839 2007-12-06  Adam Roben  <aroben (a] apple.com>
   67840 
   67841         Rename FontsTable.plist to FontsList.plist
   67842 
   67843         Rubberstamped by Hyatt.
   67844 
   67845         * platform/graphics/win/FontDatabase.cpp:
   67846 
   67847 2007-12-06  Brady Eidson  <beidson (a] apple.com>
   67848 
   67849         Reviewed by Darin
   67850 
   67851         Tweaked a comment and a few assertions from my last checkin
   67852 
   67853         * storage/SQLStatement.cpp:
   67854         (WebCore::SQLStatement::execute):
   67855         (WebCore::SQLStatement::clearFailureDueToQuota):
   67856         (WebCore::SQLStatement::lastExecutionFailedDueToQuota):
   67857 
   67858 2007-12-06  Brady Eidson <beidson (a] apple.com>
   67859 
   67860         Reviewed by Darin
   67861 
   67862         Finished hooking up UI Delegate for databases - Database operations will now enforce a size quota and
   67863         will ask the UI Delegate for more space when that quota is met
   67864 
   67865         * platform/sql/SQLiteDatabase.cpp: Add the new SQLResultFull constant
   67866         * platform/sql/SQLiteDatabase.h: Ditto
   67867 
   67868         * storage/Database.cpp:
   67869         (WebCore::Database::securityOriginData): Added this accessor, copying for thread safety
   67870         (WebCore::Database::stringIdentifier): Ditto
   67871         * storage/Database.h:
   67872 
   67873         * storage/SQLStatement.cpp:
   67874         (WebCore::SQLStatement::SQLStatement):
   67875         (WebCore::SQLStatement::execute): Change to return an enum that represents 3 states - success, error, and quota.
   67876           If the result is quota, this statement expects that it might be run again, presumably after the user increases 
   67877           the quota
   67878         (WebCore::SQLStatement::setFailureDueToQuota): Setup a quota failure, including a flag and the error
   67879         (WebCore::SQLStatement::clearFailureDueToQuota): Clear a quota failure, for when the statement is rerun
   67880         (WebCore::SQLStatement::lastExecutionFailedDueToQuota):
   67881         * storage/SQLStatement.h:
   67882 
   67883         * storage/SQLTransaction.cpp:
   67884         (WebCore::SQLTransaction::SQLTransaction):
   67885         (WebCore::SQLTransaction::performPendingCallback): Added an acceptable callback pointer
   67886         (WebCore::SQLTransaction::openTransactionAndPreflight): Setup the quota in the database that will remain for this 
   67887           transaction.  Note that in this patch, the quota being set is wrong - it makes sense to fix that in a follow up patch
   67888         (WebCore::SQLTransaction::runStatements): Modified to add the ability to re-run a statement based on the UI delegate
   67889           decision and whether the current statement was already run
   67890         (WebCore::SQLTransaction::runCurrentStatement): Added another result condition - the Quota result - and handle it
   67891         (WebCore::SQLTransaction::handleCurrentStatementError): Statements can now error-out from two places, so the code
   67892           that handles a statement error was moved here
   67893         (WebCore::SQLTransaction::deliverQuotaIncreaseCallback): Added - Consult the UI delegate for more quota, then 
   67894           reschedule the current statement on the database thread
   67895         * storage/SQLTransaction.h:
   67896 
   67897 2007-12-06  Steve Falkenburg  <sfalken (a] apple.com>
   67898 
   67899         <rdar://problem/5614257> Crash in timer / hashtable code due to uncaught exception
   67900         
   67901         Don't use callback-based timers, since these cause Windows to eat Windows crashes
   67902         in code the timers call.
   67903         
   67904         Windows appears to be defending against "shatter" attacks partially by setting
   67905         up a structured exception block while dispatching callback-based WM_TIMERs.
   67906         
   67907         I verified this by adding a divide by zero into some timer callback code.
   67908         In the case where the timer was dispatched via a callback, the divide by zero
   67909         exception was silently handled and ignored, with execution continuing after
   67910         our call to DispatchMessage.  When processed via the WNDPROC, no SEH
   67911         block was established by Windows, and our divide by zero generated a real
   67912         crash (which is what we wanted).
   67913         
   67914         Windows handling our crashes for us led us to leave the timer data structures
   67915         in an invalid state so the next time a timer was set, we'd crash accessing an
   67916         invalid HashMap of timer data.
   67917         
   67918         Reviewed by Hyatt.
   67919 
   67920         * platform/win/SharedTimerWin.cpp:
   67921         (WebCore::TimerWindowWndProc):
   67922         (WebCore::setSharedTimerFireTime):
   67923 
   67924 2007-12-06  Adam Roben  <aroben (a] apple.com>
   67925 
   67926         Fix <rdar://5108390> Feed title is too low in blue banner
   67927 
   67928         Way back in r23069 we started applying the same font ascent hack that
   67929         Mac WebKit applies to Helvetica, Times, and Courier. We did this so
   67930         that those fonts would match the Mac metrics when we run the
   67931         regression tests. However, this hack was applying to Arial on Windows
   67932         when a site would specify the Helvetica font face because Windows will
   67933         alias the font names. Instead of removing the hack entirely, we
   67934         turn it off by default but provide some SPI so that DumpRenderTree can
   67935         turn it on.
   67936 
   67937         Reviewed by Hyatt.
   67938 
   67939         All tests pass.
   67940 
   67941         * platform/graphics/FontData.h: Add a new static method to turn on the
   67942         hack on Windows only.
   67943         * platform/graphics/win/FontDataWin.cpp:
   67944         (WebCore::FontData::setShouldApplyMacAscentHack): Added.
   67945         (WebCore::FontData::platformInit): Only perform the hack if
   67946         shouldApplyMacAscentHack is true.
   67947 
   67948 2007-12-06  Geoffrey Garen  <ggaren (a] apple.com>
   67949 
   67950         Reviewed by Sam Weinig.
   67951 
   67952         Fixed http://bugs.webkit.org/show_bug.cgi?id=16328
   67953         REGRESSION (r28470): Crash expanding a GMail conversation
   67954         
   67955         * page/Frame.cpp:
   67956         (WebCore::Frame::scriptProxy): Only return 0 if JS seems disabled *and*
   67957         we haven't created the proxy yet. If we've created the proxy already, a
   67958         script may be in the midst of execution, even though we've lost our
   67959         settings object. During execution, scripts assume they have free access
   67960         to the proxy.
   67961 
   67962 2007-12-06  Adele Peterson  <adele (a] apple.com>
   67963 
   67964         Reviewed by Oliver.
   67965 
   67966         Fix for <rdar://problem/5631356> Toggling display property on video causes controls to get lost
   67967 
   67968         * html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::attach): Call updateFromElement.
   67969         * html/HTMLMediaElement.h:
   67970 
   67971 2007-12-05  Antti Koivisto  <antti (a] apple.com>
   67972 
   67973         Reviewed by Oliver.
   67974 
   67975         Rename
   67976 
   67977         Movie -> MediaPlayer
   67978         MoviePrivate -> MediaPlayerPrivate
   67979         
   67980         Movie is QuickTime terminology and clashes with its C API.
   67981 
   67982         * WebCore.xcodeproj/project.pbxproj:
   67983         * html/HTMLMediaElement.cpp:
   67984         (WebCore::HTMLMediaElement::HTMLMediaElement):
   67985         (WebCore::HTMLMediaElement::~HTMLMediaElement):
   67986         (WebCore::HTMLMediaElement::initAndDispatchProgressEvent):
   67987         (WebCore::HTMLMediaElement::bufferingRate):
   67988         (WebCore::HTMLMediaElement::load):
   67989         (WebCore::HTMLMediaElement::mediaPlayerNetworkStateChanged):
   67990         (WebCore::HTMLMediaElement::mediaPlayerReadyStateChanged):
   67991         (WebCore::HTMLMediaElement::setReadyState):
   67992         (WebCore::HTMLMediaElement::progressEventTimerFired):
   67993         (WebCore::HTMLMediaElement::seek):
   67994         (WebCore::HTMLMediaElement::currentTime):
   67995         (WebCore::HTMLMediaElement::duration):
   67996         (WebCore::HTMLMediaElement::playbackRate):
   67997         (WebCore::HTMLMediaElement::setPlaybackRate):
   67998         (WebCore::HTMLMediaElement::play):
   67999         (WebCore::HTMLMediaElement::pause):
   68000         (WebCore::HTMLMediaElement::setVolume):
   68001         (WebCore::HTMLMediaElement::setMuted):
   68002         (WebCore::HTMLMediaElement::pickMedia):
   68003         (WebCore::HTMLMediaElement::checkIfSeekNeeded):
   68004         (WebCore::HTMLMediaElement::mediaPlayerVolumeChanged):
   68005         (WebCore::HTMLMediaElement::mediaPlayerTimeChanged):
   68006         (WebCore::HTMLMediaElement::mediaPlayerCuePointReached):
   68007         (WebCore::HTMLMediaElement::addCuePoint):
   68008         (WebCore::HTMLMediaElement::buffered):
   68009         (WebCore::HTMLMediaElement::seekable):
   68010         (WebCore::HTMLMediaElement::effectiveStart):
   68011         (WebCore::HTMLMediaElement::effectiveEnd):
   68012         (WebCore::HTMLMediaElement::effectiveLoopStart):
   68013         (WebCore::HTMLMediaElement::effectiveLoopEnd):
   68014         (WebCore::HTMLMediaElement::updateMediaPlayer):
   68015         (WebCore::HTMLMediaElement::willSaveToCache):
   68016         * html/HTMLMediaElement.h:
   68017         (WebCore::HTMLMediaElement::player):
   68018         * html/HTMLVideoElement.cpp:
   68019         (WebCore::HTMLVideoElement::videoWidth):
   68020         (WebCore::HTMLVideoElement::videoHeight):
   68021         * platform/MIMETypeRegistry.cpp:
   68022         (WebCore::initialiseSupportedMediaMIMETypes):
   68023         (WebCore::MIMETypeRegistry::isSupportedMediaMIMEType):
   68024         (WebCore::MIMETypeRegistry::getSupportedMediaMIMETypes):
   68025         * platform/MIMETypeRegistry.h:
   68026         * platform/graphics/MediaPlayer.cpp: Copied from WebCore/platform/graphics/Movie.cpp.
   68027         (WebCore::MediaPlayer::MediaPlayer):
   68028         (WebCore::MediaPlayer::~MediaPlayer):
   68029         (WebCore::MediaPlayer::load):
   68030         (WebCore::MediaPlayer::cancelLoad):
   68031         (WebCore::MediaPlayer::play):
   68032         (WebCore::MediaPlayer::pause):
   68033         (WebCore::MediaPlayer::duration):
   68034         (WebCore::MediaPlayer::currentTime):
   68035         (WebCore::MediaPlayer::seek):
   68036         (WebCore::MediaPlayer::paused):
   68037         (WebCore::MediaPlayer::seeking):
   68038         (WebCore::MediaPlayer::naturalSize):
   68039         (WebCore::MediaPlayer::hasVideo):
   68040         (WebCore::MediaPlayer::networkState):
   68041         (WebCore::MediaPlayer::readyState):
   68042         (WebCore::MediaPlayer::volume):
   68043         (WebCore::MediaPlayer::setVolume):
   68044         (WebCore::MediaPlayer::rate):
   68045         (WebCore::MediaPlayer::setRate):
   68046         (WebCore::MediaPlayer::muted):
   68047         (WebCore::MediaPlayer::setMuted):
   68048         (WebCore::MediaPlayer::dataRate):
   68049         (WebCore::MediaPlayer::setEndTime):
   68050         (WebCore::MediaPlayer::addCuePoint):
   68051         (WebCore::MediaPlayer::removeCuePoint):
   68052         (WebCore::MediaPlayer::clearCuePoints):
   68053         (WebCore::MediaPlayer::maxTimeBuffered):
   68054         (WebCore::MediaPlayer::maxTimeSeekable):
   68055         (WebCore::MediaPlayer::bytesLoaded):
   68056         (WebCore::MediaPlayer::totalBytesKnown):
   68057         (WebCore::MediaPlayer::totalBytes):
   68058         (WebCore::MediaPlayer::setRect):
   68059         (WebCore::MediaPlayer::visible):
   68060         (WebCore::MediaPlayer::setVisible):
   68061         (WebCore::MediaPlayer::paint):
   68062         (WebCore::MediaPlayer::getSupportedTypes):
   68063         (WebCore::MediaPlayer::networkStateChanged):
   68064         (WebCore::MediaPlayer::readyStateChanged):
   68065         (WebCore::MediaPlayer::volumeChanged):
   68066         (WebCore::MediaPlayer::timeChanged):
   68067         (WebCore::MediaPlayer::cuePointReached):
   68068         * platform/graphics/MediaPlayer.h: Copied from WebCore/platform/graphics/Movie.h.
   68069         (WebCore::MediaPlayerClient::~MediaPlayerClient):
   68070         (WebCore::MediaPlayerClient::mediaPlayerNetworkStateChanged):
   68071         (WebCore::MediaPlayerClient::mediaPlayerReadyStateChanged):
   68072         (WebCore::MediaPlayerClient::mediaPlayerVolumeChanged):
   68073         (WebCore::MediaPlayerClient::mediaPlayerTimeChanged):
   68074         (WebCore::MediaPlayerClient::mediaPlayerCuePointReached):
   68075         * platform/graphics/Movie.cpp: Removed.
   68076         * platform/graphics/Movie.h: Removed.
   68077         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp: Copied from WebCore/platform/graphics/gtk/MoviePrivateGStreamer.cpp.
   68078         (WebCore::mediaPlayerPrivateErrorCallback):
   68079         (WebCore::mediaPlayerPrivateEOSCallback):
   68080         (WebCore::mediaPlayerPrivateStateCallback):
   68081         (WebCore::mediaPlayerPrivateBufferingCallback):
   68082         (WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
   68083         (WebCore::MediaPlayerPrivate::~MediaPlayerPrivate):
   68084         (WebCore::MediaPlayerPrivate::load):
   68085         (WebCore::MediaPlayerPrivate::play):
   68086         (WebCore::MediaPlayerPrivate::pause):
   68087         (WebCore::MediaPlayerPrivate::duration):
   68088         (WebCore::MediaPlayerPrivate::currentTime):
   68089         (WebCore::MediaPlayerPrivate::seek):
   68090         (WebCore::MediaPlayerPrivate::setEndTime):
   68091         (WebCore::MediaPlayerPrivate::addCuePoint):
   68092         (WebCore::MediaPlayerPrivate::removeCuePoint):
   68093         (WebCore::MediaPlayerPrivate::clearCuePoints):
   68094         (WebCore::MediaPlayerPrivate::startCuePointTimerIfNeeded):
   68095         (WebCore::MediaPlayerPrivate::cancelSeek):
   68096         (WebCore::MediaPlayerPrivate::cuePointTimerFired):
   68097         (WebCore::MediaPlayerPrivate::paused):
   68098         (WebCore::MediaPlayerPrivate::seeking):
   68099         (WebCore::MediaPlayerPrivate::naturalSize):
   68100         (WebCore::MediaPlayerPrivate::hasVideo):
   68101         (WebCore::MediaPlayerPrivate::setVolume):
   68102         (WebCore::MediaPlayerPrivate::setMuted):
   68103         (WebCore::MediaPlayerPrivate::setRate):
   68104         (WebCore::MediaPlayerPrivate::dataRate):
   68105         (WebCore::MediaPlayerPrivate::networkState):
   68106         (WebCore::MediaPlayerPrivate::readyState):
   68107         (WebCore::MediaPlayerPrivate::maxTimeBuffered):
   68108         (WebCore::MediaPlayerPrivate::maxTimeSeekable):
   68109         (WebCore::MediaPlayerPrivate::maxTimeLoaded):
   68110         (WebCore::MediaPlayerPrivate::bytesLoaded):
   68111         (WebCore::MediaPlayerPrivate::totalBytesKnown):
   68112         (WebCore::MediaPlayerPrivate::totalBytes):
   68113         (WebCore::MediaPlayerPrivate::cancelLoad):
   68114         (WebCore::MediaPlayerPrivate::updateStates):
   68115         (WebCore::MediaPlayerPrivate::loadStateChanged):
   68116         (WebCore::MediaPlayerPrivate::rateChanged):
   68117         (WebCore::MediaPlayerPrivate::sizeChanged):
   68118         (WebCore::MediaPlayerPrivate::timeChanged):
   68119         (WebCore::MediaPlayerPrivate::volumeChanged):
   68120         (WebCore::MediaPlayerPrivate::didEnd):
   68121         (WebCore::MediaPlayerPrivate::loadingFailed):
   68122         (WebCore::MediaPlayerPrivate::setRect):
   68123         (WebCore::MediaPlayerPrivate::setVisible):
   68124         (WebCore::MediaPlayerPrivate::paint):
   68125         (WebCore::MediaPlayerPrivate::getSupportedTypes):
   68126         (WebCore::MediaPlayerPrivate::createGSTPlayBin):
   68127         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.h: Copied from WebCore/platform/graphics/gtk/MoviePrivateGStreamer.h.
   68128         * platform/graphics/gtk/MoviePrivateGStreamer.cpp: Removed.
   68129         * platform/graphics/gtk/MoviePrivateGStreamer.h: Removed.
   68130         * platform/graphics/mac/MediaPlayerPrivateQTKit.h: Copied from WebCore/platform/graphics/mac/MoviePrivateQTKit.h.
   68131         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm: Copied from WebCore/platform/graphics/mac/MoviePrivateQTKit.mm.
   68132         (WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
   68133         (WebCore::MediaPlayerPrivate::~MediaPlayerPrivate):
   68134         (WebCore::MediaPlayerPrivate::createQTMovie):
   68135         (WebCore::MediaPlayerPrivate::createQTMovieView):
   68136         (WebCore::MediaPlayerPrivate::createQTTime):
   68137         (WebCore::MediaPlayerPrivate::load):
   68138         (WebCore::MediaPlayerPrivate::play):
   68139         (WebCore::MediaPlayerPrivate::pause):
   68140         (WebCore::MediaPlayerPrivate::duration):
   68141         (WebCore::MediaPlayerPrivate::currentTime):
   68142         (WebCore::MediaPlayerPrivate::seek):
   68143         (WebCore::MediaPlayerPrivate::doSeek):
   68144         (WebCore::MediaPlayerPrivate::cancelSeek):
   68145         (WebCore::MediaPlayerPrivate::seekTimerFired):
   68146         (WebCore::MediaPlayerPrivate::setEndTime):
   68147         (WebCore::MediaPlayerPrivate::addCuePoint):
   68148         (WebCore::MediaPlayerPrivate::removeCuePoint):
   68149         (WebCore::MediaPlayerPrivate::clearCuePoints):
   68150         (WebCore::MediaPlayerPrivate::startCuePointTimerIfNeeded):
   68151         (WebCore::MediaPlayerPrivate::cuePointTimerFired):
   68152         (WebCore::MediaPlayerPrivate::paused):
   68153         (WebCore::MediaPlayerPrivate::seeking):
   68154         (WebCore::MediaPlayerPrivate::naturalSize):
   68155         (WebCore::MediaPlayerPrivate::hasVideo):
   68156         (WebCore::MediaPlayerPrivate::setVolume):
   68157         (WebCore::MediaPlayerPrivate::setMuted):
   68158         (WebCore::MediaPlayerPrivate::setRate):
   68159         (WebCore::MediaPlayerPrivate::dataRate):
   68160         (WebCore::MediaPlayerPrivate::networkState):
   68161         (WebCore::MediaPlayerPrivate::readyState):
   68162         (WebCore::MediaPlayerPrivate::maxTimeBuffered):
   68163         (WebCore::MediaPlayerPrivate::maxTimeSeekable):
   68164         (WebCore::MediaPlayerPrivate::maxTimeLoaded):
   68165         (WebCore::MediaPlayerPrivate::bytesLoaded):
   68166         (WebCore::MediaPlayerPrivate::totalBytesKnown):
   68167         (WebCore::MediaPlayerPrivate::totalBytes):
   68168         (WebCore::MediaPlayerPrivate::cancelLoad):
   68169         (WebCore::MediaPlayerPrivate::updateStates):
   68170         (WebCore::MediaPlayerPrivate::loadStateChanged):
   68171         (WebCore::MediaPlayerPrivate::rateChanged):
   68172         (WebCore::MediaPlayerPrivate::sizeChanged):
   68173         (WebCore::MediaPlayerPrivate::timeChanged):
   68174         (WebCore::MediaPlayerPrivate::volumeChanged):
   68175         (WebCore::MediaPlayerPrivate::didEnd):
   68176         (WebCore::MediaPlayerPrivate::setRect):
   68177         (WebCore::MediaPlayerPrivate::setVisible):
   68178         (WebCore::MediaPlayerPrivate::paint):
   68179         (WebCore::MediaPlayerPrivate::getSupportedTypes):
   68180         (-[WebCoreMovieObserver initWithCallback:WebCore::]):
   68181         * platform/graphics/mac/MoviePrivateQTKit.h: Removed.
   68182         * platform/graphics/mac/MoviePrivateQTKit.mm: Removed.
   68183         * rendering/RenderMedia.cpp:
   68184         (WebCore::RenderMedia::player):
   68185         * rendering/RenderMedia.h:
   68186         * rendering/RenderVideo.cpp:
   68187         (WebCore::RenderVideo::RenderVideo):
   68188         (WebCore::RenderVideo::~RenderVideo):
   68189         (WebCore::RenderVideo::videoSizeChanged):
   68190         (WebCore::RenderVideo::paintReplaced):
   68191         (WebCore::RenderVideo::layout):
   68192         (WebCore::RenderVideo::updateFromElement):
   68193         (WebCore::RenderVideo::updatePlayer):
   68194         * rendering/RenderVideo.h:
   68195 
   68196 2007-12-06  Geoffrey Garen  <ggaren (a] apple.com>
   68197 
   68198         Build fix: access global object directly.
   68199 
   68200         * plugins/win/PluginViewWin.cpp:
   68201         (WebCore::PluginViewWin::bindingInstance):
   68202 
   68203 2007-12-06  Mark Rowe  <mrowe (a] apple.com>
   68204 
   68205         Reviewed by Eric.
   68206 
   68207         Fix bug spotted by GCC 4.2.
   68208 
   68209         * bindings/js/kjs_window.cpp:
   68210         (KJS::allowPopUp): Remove extraneous semicolon that completely changed the meaning of allowPopUp.
   68211 
   68212 2007-12-06  Holger Hans Peter Freyther <holger.freyther (a] trolltech.com>
   68213 
   68214         Reviewed by Alp Toker.
   68215 
   68216         http://bugs.webkit.org/show_bug.cgi?id=16173
   68217         Licensing change
   68218 
   68219         Change license from BSD to LGPL.
   68220 
   68221         * platform/gtk/FileSystemGtk.cpp:
   68222 
   68223 2007-12-05  Rob Buis  <buis (a] kde.org>
   68224 
   68225         Reviewed by Mitz.
   68226 
   68227         http://bugs.webkit.org/show_bug.cgi?id=15289
   68228         WebKit does not respect clip paths of a 0x0 rect
   68229 
   68230         Make empty clip paths clip the whole referencing graphic.
   68231 
   68232         * svg/SVGClipPathElement.cpp:
   68233         (WebCore::SVGClipPathElement::canvasResource):
   68234         * svg/graphics/SVGResourceClipper.h:
   68235         (WebCore::ClipDataList::isEmpty):
   68236 
   68237 2007-12-05  Darin Adler  <darin (a] apple.com>
   68238 
   68239         Reviewed by Maciej.
   68240 
   68241         - fix http://bugs.webkit.org/show_bug.cgi?id=16266
   68242           <rdar://problem/5625279> REGRESSION: crash loading CNN.com at
   68243           Interpreter::createObjectsForGlobalObjectProperties()
   68244 
   68245         I don't know how to reproduce this in a test.
   68246 
   68247         * bindings/js/JSDocumentCustom.cpp: (WebCore::JSDocument::mark):
   68248         Call JSEventTargetNode::mark instead of DOMObject::mark. There's no difference
   68249         right now, but it's best to call your base class, not your base's base.
   68250 
   68251         * bindings/js/kjs_events.h: Removed unneeded virtual from the
   68252         JSUnprotectedEventListener::mark() function; it neither derives from or is
   68253         derived from anyone else with a mark() function so there's no need for virtual.
   68254 
   68255         * bindings/js/kjs_window.cpp: (KJS::Window::mark): Call JSGlobalObject::mark,
   68256         not JSObject::mark. This is the actual bug fix.
   68257 
   68258 2007-12-05  Pierre-Luc Beaudoin  <pierre-luc.beaudoin (a] collabora.co.uk>
   68259 
   68260         http://bugs.webkit.org/show_bug.cgi?id=16145
   68261         [gtk] Implement media support in GTK backend
   68262 
   68263         Reviewed by Alp Toker.
   68264 
   68265         Remove old comments, fix variable names, match WebKit coding style.
   68266 
   68267         * platform/graphics/gtk/MoviePrivateGStreamer.cpp:
   68268         (WebCore::moviePrivateEOSCallback):
   68269         (WebCore::MoviePrivate::MoviePrivate):
   68270         (WebCore::MoviePrivate::load):
   68271         (WebCore::MoviePrivate::play):
   68272         (WebCore::MoviePrivate::pause):
   68273         (WebCore::MoviePrivate::currentTime):
   68274         (WebCore::MoviePrivate::seek):
   68275         (WebCore::MoviePrivate::cancelSeek):
   68276         (WebCore::MoviePrivate::seeking):
   68277         (WebCore::MoviePrivate::naturalSize):
   68278         (WebCore::MoviePrivate::setVolume):
   68279         (WebCore::MoviePrivate::setMuted):
   68280         (WebCore::MoviePrivate::maxTimeBuffered):
   68281         (WebCore::MoviePrivate::bytesLoaded):
   68282         (WebCore::MoviePrivate::totalBytesKnown):
   68283         (WebCore::MoviePrivate::totalBytes):
   68284         (WebCore::MoviePrivate::updateStates):
   68285         (WebCore::MoviePrivate::didEnd):
   68286         (WebCore::MoviePrivate::paint):
   68287         (WebCore::MoviePrivate::createGSTPlayBin):
   68288         * platform/graphics/gtk/MoviePrivateGStreamer.h:
   68289 
   68290 2007-12-05  Mark Rowe  <mrowe (a] apple.com>
   68291 
   68292         Speculative wx build fix.  Add PlugInInfoStore::pluginNameForMIMEType to the temporary link stubs.
   68293 
   68294         * platform/wx/TemporaryLinkStubs.cpp:
   68295 
   68296 2007-12-05  Alp Toker  <alp (a] atoker.com>
   68297 
   68298         Rubber stamped by Mark Rowe.
   68299 
   68300         Remove DEPENDPATH on the generated sources directory. This causes
   68301         trouble and is no longer necessary following the glib-genmarshal
   68302         generator split.
   68303 
   68304         * WebCore.pro:
   68305 
   68306 2007-12-04  Geoffrey Garen  <ggaren (a] apple.com>
   68307 
   68308         Reviewed by Darin Adler.
   68309 
   68310         Third step in refactoring JSGlobalObject: Moved data members and data
   68311         member access from Interpreter to JSGlobalObject. Changed Interpreter
   68312         member functions to static functions. Same for the subclass, 
   68313         ScriptInterpreter.
   68314         
   68315         This is a big change, but it's mostly code motion and renaming.
   68316         
   68317 2007-12-05  Darin Adler  <darin (a] apple.com>
   68318 
   68319         "Reviewed" by Geoff.
   68320 
   68321         * loader/FrameLoader.cpp:
   68322         (WebCore::FrameLoader::checkLoadCompleteForThisFrame): Removed assertion.
   68323         (WebCore::FrameLoader::dispatchDidCommitLoad): This one too.
   68324         The assertions are firing like crazy. Not sure why yet.
   68325 
   68326 2007-12-05  Darin Adler  <darin (a] apple.com>
   68327 
   68328         Reviewed by Adam Roben.
   68329 
   68330         - fix http://bugs.webkit.org/show_bug.cgi?id=16306
   68331           Assertion failed in WebCore/loader/FrameLoader.cpp:4642
   68332 
   68333         * loader/FrameLoader.cpp:
   68334         (WebCore::FrameLoader::dispatchDidCommitLoad): Check m_creatingInitialEmptyDocument
   68335         and don't deliver the client call in that case.
   68336 
   68337 2007-12-05  Mark Rowe  <mrowe (a] apple.com>
   68338 
   68339         Reviewed by Kevin Decker.
   68340 
   68341         Fix 64-bit debug build.
   68342 
   68343         * platform/text/mac/TextCodecMac.cpp:
   68344         (WebCore::TextCodecMac::decode): OSStatus is a long for 32-bit but int on 64-bit,
   68345         so we need to cast it to be able to use a single format specifier on both.
   68346 
   68347 2007-12-05  Kevin Decker  <kdecker (a] apple.com>
   68348 
   68349         Reviewed by Hyatt.
   68350 
   68351         <rdar://problem/5613106> Acordex: REGRESSION (Tiger-Leopard): plug-ins can no longer take over TIFF images (affects uspto.gov)
   68352        
   68353         * loader/FrameLoader.cpp:
   68354         (WebCore::FrameLoader::shouldUsePlugin): Allow plug-ins (with the exception of QuickTime) to
   68355         takeover TIFF once again.
   68356         
   68357 2007-12-05  Luca Bruno  <lethalman88 (a] gmail.com>
   68358 
   68359         Reviewed by Alp Toker.
   68360 
   68361         http://bugs.webkit.org/show_bug.cgi?id=16290
   68362         [GTK] Pasting clipboard in rich text.
   68363 
   68364         * platform/gtk/PasteboardGtk.cpp:
   68365         (Pasteboard::documentFragment): Implement rich text paste support.
   68366 
   68367 2007-12-05  Adele Peterson  <adele (a] apple.com>
   68368 
   68369         Reviewed by Hyatt.
   68370 
   68371         Reverting fix for <rdar://problem/5499918> REGRESSION: insertion point in input field with custom border cuts holes in focus ring interior edges
   68372 
   68373         We need to just fix the underlying focus ring repaint problem.
   68374 
   68375         * rendering/RenderTextControl.cpp: (WebCore::RenderTextControl::setStyle):
   68376 
   68377 2007-12-04  Kevin McCullough  <kmccullough (a] apple.com>
   68378 
   68379         Reviewed by Darin.
   68380 
   68381         - <rdar://5621435>
   68382         - Security Fix. Instead of having it off by default, WebKit now must
   68383         explicitly turn off local-resource restriction when needed for backwards
   68384         compatibility reasons.
   68385 
   68386         * loader/FrameLoader.cpp:
   68387 
   68388 2007-12-05  Adam Roben  <aroben (a] apple.com>
   68389 
   68390         Set the menu item identifier for all menu items
   68391 
   68392         This allows WebKit clients to distinguish between submenus in the
   68393         context menu.
   68394 
   68395         Reviewed by Darin.
   68396 
   68397         No test possible.
   68398 
   68399         * platform/win/ContextMenuItemWin.cpp:
   68400         (WebCore::ContextMenuItem::ContextMenuItem):
   68401 
   68402 2007-12-05  Dan Bernstein  <mitz (a] apple.com>
   68403 
   68404         Reviewed by Darin Adler.
   68405 
   68406         - WebCore part of fixing <rdar://problem/5111082> Flash popup video ad doesn't close when clicked at http://www.firestonecompleteautocare.com/
   68407 
   68408         * manual-tests/nested-plug-ins.html: Added.
   68409         * manual-tests/resources/nested-plug-ins-inner-frame.html: Added.
   68410         * manual-tests/resources/nested-plug-ins-outer-frame.html: Added.
   68411         * platform/ScrollView.h:
   68412         * platform/Widget.h:
   68413         (WebCore::Widget::attachToWindow): Added. Tells the widget that it is connected
   68414         via visible ScrollViews to the root ScrollView of the WebView.
   68415         (WebCore::Widget::detachFromWindow): Added. Tells the widget that it is no longer
   68416         connected via visible ScrollViews to the root ScrollView of the WebView.
   68417         * platform/win/ScrollViewWin.cpp:
   68418         (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate): Added
   68419         m_visible and m_attachedToWindow members.
   68420         (WebCore::ScrollView::attachToWindow): Added. Attaches all children if this
   68421         view is visible.
   68422         (WebCore::ScrollView::detachFromWindow): Added. Detaches all children if this
   68423         view is visible (otherwise they would be detached already).
   68424         (WebCore::ScrollView::show): Added. Attaches all children if this view
   68425         is attached.
   68426         (WebCore::ScrollView::hide): Added. Detaches all children if this view
   68427         is attached (otherwise they would be detached already).
   68428         (WebCore::ScrollView::isAttachedToWindow): Added.
   68429         * platform/win/WidgetWin.cpp:
   68430         (WebCore::Widget::setParent): Added calls to attachToWindow() and detachFromWindow()
   68431         depending on whether the parent is set and attached or not.
   68432         * plugins/win/PluginViewWin.cpp:
   68433         (WebCore::PluginViewWin::setFocus):
   68434         (WebCore::PluginViewWin::show): Changed to show the plug-in only if
   68435         this view is attached.
   68436         (WebCore::PluginViewWin::hide): Changed to hide the plug-in only if this
   68437         view is attached (otherwise it would be hidden already).
   68438         (WebCore::PluginViewWin::attachToWindow): Added. Shows the plug-in if this view
   68439         is visible.
   68440         (WebCore::PluginViewWin::detachFromWindow): Added. Hides the plug-in if this view
   68441         is visible (otherwise it would be hidden already).
   68442         (WebCore::PluginViewWin::PluginViewWin):
   68443         * plugins/win/PluginViewWin.h: Added m_attachedToWindow member.
   68444 
   68445 2007-12-04  Alp Toker  <alp (a] atoker.com>
   68446 
   68447         Potential GTK+ build fix for the glib-genmarshal issue.
   68448 
   68449         Split the glib-genmarshal qmake generator in two; one for the source
   68450         file, another for the header.
   68451 
   68452         * WebCore.pro:
   68453 
   68454 2007-12-04  Alp Toker  <alp (a] atoker.com>
   68455 
   68456         GTK+ build fix.
   68457 
   68458         * platform/PlugInInfoStore.h:
   68459 
   68460 2007-12-04  Kevin Decker  <kdecker (a] apple.com>
   68461 
   68462         Reviewed by Anders.
   68463 
   68464         <rdar://problem/5629125> PluginInfoStore needs the ability to return the name of a plug-in for a given MIME type
   68465 
   68466         * page/mac/WebCoreViewFactory.h: Added pluginNameForMIMEType: method.
   68467         * platform/PlugInInfoStore.h:
   68468         * platform/gtk/TemporaryLinkStubs.cpp: Added stub version of pluginNameForMIMEType.
   68469         (PlugInInfoStore::pluginNameForMIMEType):
   68470         * platform/mac/PlugInInfoStoreMac.mm:
   68471         (WebCore::PlugInInfoStore::pluginNameForMIMEType): Added.
   68472         * platform/qt/PlugInInfoStoreQt.cpp: 
   68473         (WebCore::PlugInInfoStore::pluginNameForMIMEType): Added stub version of pluginNameForMIMEType.
   68474         * plugins/win/PlugInInfoStoreWin.cpp: 
   68475         (WebCore::PlugInInfoStore::pluginNameForMIMEType): Added stub version of pluginNameForMIMEType.
   68476 
   68477 2007-12-04  Adele Peterson  <adele (a] apple.com>
   68478 
   68479         Reviewed by Darin.
   68480 
   68481         Fix for <rdar://problem/5499918> REGRESSION: insertion point in input field with custom border cuts holes in focus ring interior edges
   68482 
   68483         * rendering/RenderTextControl.cpp: (WebCore::RenderTextControl::setStyle):
   68484         Adjust outline-offset so it doesn't extend beyond the border to interfere with typing
   68485 
   68486 2007-12-04  Anders Carlsson  <andersca (a] apple.com>
   68487 
   68488         Reviewed by Jon.
   68489 
   68490         Always call NPP_NewStream, NPP_DestroyStream and NPP_URLNotify for JavaScript
   68491         result streams, even if the JavaScript expression threw an exception or returned undefined.
   68492         This matches what Firefox does.
   68493         
   68494         * plugins/win/PluginStreamWin.cpp:
   68495         (WebCore::PluginStreamWin::sendJavaScriptStream):
   68496         Handle the result string being null, and set the correct NPReason if it is.
   68497         
   68498         * plugins/win/PluginViewWin.cpp:
   68499         (WebCore::PluginViewWin::performRequest):
   68500         Always send the JavaScript stream, regardless of the result could be converted to a string or not.
   68501 
   68502 2007-12-04  Adele Peterson  <adele (a] apple.com>
   68503 
   68504         Reviewed by Hyatt.
   68505 
   68506         Fix for <rdar://problem/5622464> controls should show up for audio element
   68507 
   68508         * css/html4.css: Added styles for audio controls.  This will need to be refined, since we may want a different look for audio controls.
   68509         * html/HTMLMediaElement.cpp:
   68510         (WebCore::HTMLMediaElement::attributeChanged): When the controls attribute changes detach and reattach if necessary. 
   68511         (WebCore::HTMLMediaElement::rendererIsNeeded): Added.
   68512         (WebCore::HTMLMediaElement::createRenderer): Added.  Uses RenderMedia.
   68513         * html/HTMLMediaElement.h:
   68514         * rendering/RenderMedia.cpp: (WebCore::RenderMedia::RenderMedia): Added constructor that doesn't take intrinsic size.
   68515         * rendering/RenderMedia.h:
   68516 
   68517 2007-12-04  Anders Carlsson  <andersca (a] apple.com>
   68518 
   68519         Reviewed by Sam.
   68520 
   68521         Add isSafeScript(const JSGlobalObject*) so we won't get the JSGlobalObject
   68522         implementation, which always returns true(!).
   68523         
   68524         * bindings/js/kjs_window.cpp:
   68525         (KJS::Window::isSafeScript):
   68526         Make the static isSafeScript method take two JSGlobalObjects.
   68527         
   68528         * bindings/js/kjs_window.h:
   68529         (KJS::Window::isSafeScript):
   68530         Implement isSafeScript and have it call the static method.
   68531 
   68532 2007-11-27  Adam Roben  <aroben (a] apple.com>
   68533 
   68534         Make the implementation of Frame::setNeedsReapplyStyles cross-platform
   68535 
   68536         Reviewed by Hyatt.
   68537 
   68538         No change in functionality.
   68539 
   68540         * page/Frame.cpp:
   68541         (WebCore::Frame::setNeedsReapplyStyles): Added. Invalidates the
   68542         FrameView so that FrameView::layout will be called, which ends up
   68543         calling reapplyStyles.
   68544         (WebCore::Frame::needsReapplyStyles): Added.
   68545         (WebCore::Frame::reapplyStyles): Renamed from reparseConfiguration.
   68546         (WebCore::FramePrivate::FramePrivate):
   68547         * page/Frame.h:
   68548         * page/FramePrivate.h: Added new boolean member.
   68549         * page/FrameView.cpp:
   68550         (WebCore::FrameView::layout): Call Frame::reapplyStyles if needed.
   68551         (WebCore::FrameView::needsLayout): Say that we need layout if the
   68552         Frame needs styles reapplied.
   68553         * page/mac/WebCoreFrameBridge.h: Removed setNeedsReapplyStyles.
   68554         * page/mac/WebCoreFrameBridge.mm:
   68555         (-[WebCoreFrameBridge reapplyStylesForDeviceType:]): Updated for
   68556         rename.
   68557 
   68558         * bridge/win/FrameWin.cpp: Removed Frame::setNeedsReapplyStyles.
   68559         * page/gtk/FrameGtk.cpp: Ditto.
   68560         * page/mac/FrameMac.mm: Ditto.
   68561         * page/qt/FrameQt.cpp: Ditto.
   68562         * platform/wx/TemporaryLinkStubs.cpp: Ditto.
   68563 
   68564 2007-12-04  Antti Koivisto  <antti (a] apple.com>
   68565 
   68566         Reviewed by Adele.
   68567 
   68568         Pass intrinsic size to the base class.
   68569 
   68570         * rendering/RenderMedia.cpp:
   68571         (WebCore::RenderMedia::RenderMedia):
   68572 
   68573 2007-12-04  Adele Peterson  <adele (a] apple.com>
   68574 
   68575         Reviewed by Darin.
   68576 
   68577         Fix for <rdar://problem/5578209> REGRESSION: Crash in WebCore::DeprecatedValueListImpl::Private::copyList when going back on zoomerang.com/survey
   68578 
   68579         * loader/FrameLoader.cpp: (WebCore::FrameLoader::scheduleHistoryNavigation):
   68580           When the new url is exactly the same as the old url, don't treat it like a fragment navigation, since its going to cause a reload.
   68581 
   68582 2007-12-04  Darin Adler  <darin (a] apple.com>
   68583 
   68584         Reviewed by Kevin Decker.
   68585 
   68586         - added an assertion for a situation that leads to a Safari assertion:
   68587           a commit that is not followed by a load completion
   68588 
   68589         - removed some unneeded FrameLoader stuff -- maybe some day we'll get this
   68590           class cut down to size
   68591 
   68592         * loader/FrameLoader.cpp:
   68593         (WebCore::FrameLoader::FrameLoader): Added boolean for assertion.
   68594         (WebCore::FrameLoader::checkLoadCompleteForThisFrame): Added code to assert
   68595         that we already sent a commit before sending a complete.
   68596         (WebCore::FrameLoader::continueFragmentScrollAfterNavigationPolicy): Call
   68597         client directly instead of indirecting through a function.
   68598         (WebCore::FrameLoader::loadItem): Ditto.
   68599         (WebCore::FrameLoader::goToItem): Ditto.
   68600         (WebCore::FrameLoader::addHistoryForCurrentLocation): Get the private browsing
   68601         state from Settings instead of FrameLoaderClient. Also call client directly
   68602         instead of indirecting through a function.
   68603         (WebCore::FrameLoader::updateHistoryForReload): Call client directly instead
   68604         of indirecting through a function.
   68605         (WebCore::FrameLoader::dispatchDidCommitLoad): Added code to assert
   68606         that we did not yet send a commit and set the flag that will be used to check
   68607         that we don't do this twice in a row without an intervening completion call.
   68608 
   68609         * loader/FrameLoader.h: Added a boolean for the assertion. Removed six
   68610         now-unneeded functions.
   68611 
   68612         * loader/FrameLoaderClient.h: Removed now-unneeded privateBrowsingEnabled function.
   68613 
   68614         * loader/ResourceLoader.cpp: (WebCore::ResourceLoader::willCacheResponse): Get
   68615         the private browsing state from Settings instead of FrameLoaderClient.
   68616 
   68617         * svg/graphics/SVGImageEmptyClients.h: Removed obsolete privateBrowsingEnabled.
   68618 
   68619 2007-12-03  Antti Koivisto  <antti (a] apple.com>
   68620 
   68621         Reviewed by Adele.
   68622         
   68623         Fix <rdar://problem/5624802> 
   68624         Controller displays outside of <video> element when width and height aren't specified 
   68625 
   68626         - Explicitly adjust size of the controls tree root.
   68627         - Switch RenderMedia base class back to RenderReplaced. It is easier to manage the shadow tree
   68628           by hand. This also allows better code sharing with other replaced element classes.
   68629         - Move duplicated layout and painting code from subclasses up to RenderReplaced.
   68630 
   68631         Test: media/video-controls-rendering.html
   68632 
   68633         * rendering/RenderHTMLCanvas.cpp:
   68634         (WebCore::RenderHTMLCanvas::paintReplaced):
   68635         * rendering/RenderHTMLCanvas.h:
   68636             Share code.
   68637         * rendering/RenderImage.cpp:
   68638         (WebCore::RenderImage::paintReplaced):
   68639         (WebCore::RenderImage::minimumReplacedHeight):
   68640         * rendering/RenderImage.h:
   68641             Share code.
   68642         * rendering/RenderMedia.cpp:
   68643         (WebCore::RenderMediaControlShadowRoot::RenderMediaControlShadowRoot):
   68644         (WebCore::RenderMediaControlShadowRoot::setParent):
   68645             Add a subclass just to get through encapsulation to use setParent().
   68646         (WebCore::MediaControlShadowRootElement::MediaControlShadowRootElement):
   68647             Move initialization to the constructor.
   68648         (WebCore::RenderMedia::RenderMedia):
   68649         (WebCore::RenderMedia::~RenderMedia):
   68650         (WebCore::RenderMedia::layout):
   68651             Resize and layout the controller root by hand.
   68652         (WebCore::RenderMedia::firstChild):
   68653         (WebCore::RenderMedia::lastChild):
   68654         (WebCore::RenderMedia::removeChild):
   68655             Support one child renderer for controls.
   68656         (WebCore::RenderMedia::createControlsShadowRoot):
   68657         * rendering/RenderMedia.h:
   68658         (WebCore::RenderMedia::isMedia):
   68659             Switch base class to RenderReplaced, delete the now unnecessary stuff.
   68660         * rendering/RenderReplaced.cpp:
   68661         (WebCore::RenderReplaced::layout):
   68662         (WebCore::RenderReplaced::paint):
   68663         * rendering/RenderReplaced.h:
   68664         (WebCore::RenderReplaced::minimumReplacedHeight):
   68665         (WebCore::RenderReplaced::paintReplaced):
   68666             Share code.
   68667         * rendering/RenderVideo.cpp:
   68668         (WebCore::RenderVideo::videoSizeChanged):
   68669             Simplify, just request relayout.
   68670         (WebCore::RenderVideo::paintReplaced):
   68671         (WebCore::RenderVideo::layout):
   68672         * rendering/RenderVideo.h:
   68673             Share code.
   68674 
   68675 2007-12-04  Michael Natterer  <mitch (a] imendio.com>
   68676 
   68677         Reviewed by Alp Toker.
   68678 
   68679         * WebCore.pro: fix build of webkit-marshal by building the
   68680         functions into a separate .cpp file instead of including them in
   68681         the header. This way we can use the marshallers from more than one
   68682         file without using bad hacks.
   68683 
   68684         Add the generated sources directory to DEPENDPATH.
   68685 
   68686 2007-12-04  Pierre-Luc Beaudoin  <pierre-luc.beaudoin (a] collabora.co.uk>
   68687 
   68688         Reviewed by Alp Toker.
   68689 
   68690         http://bugs.webkit.org/show_bug.cgi?id=16145
   68691         [gtk] Implement media support in GTK backend
   68692 
   68693         This implements the media tags of HTML5 on the GTK+ port based on the 
   68694         Mac port. Media tests pass although some tests required a small modifications: 
   68695         As per the HTML5 spec, the loading of the clip should start only after 
   68696         all script are done.  But in the case of the tests, the loading starts 
   68697         before some callbacks get registered.  This has been discussed with 
   68698         Antti Koivisto, and the tests should be updated.
   68699 
   68700         There is only one known issue: one time in 10 tries, loading a buffered 
   68701         clip will never end buffering.  The buffering will stall at 97% for no 
   68702         apparent reasons.  Reloading the page usually works around the problem.
   68703         On the GStreamer side, some codecs don't return correct values, therefore
   68704         they make the tests fail.  For instance H.264 will make the video-end 
   68705         test fail.  This should be fixed in GStreamer 0.10.15.
   68706 
   68707         This version displays video in a pop up window.  A place holder is drawn
   68708         on the page where the video should appear.
   68709 
   68710         By default, it is turned off in WebCore.pro until GStreamer/X
   68711         detection issues are sorted out.
   68712 
   68713         * WebCore.pro:
   68714         Disable video for now
   68715         * platform/Logging.cpp:
   68716         * platform/Logging.h:
   68717         Added a logging level for Media stuff
   68718         * platform/graphics/Movie.cpp:
   68719         * platform/graphics/gtk/MoviePrivateGStreamer.cpp: Added.
   68720         (WebCore::moviePrivateErrorCallback):
   68721         (WebCore::moviePrivateEOSCallback):
   68722         (WebCore::moviePrivateStateCallback):
   68723         (WebCore::moviePrivateBufferingCallback):
   68724         (WebCore::moviePrivateWindowIDCallback):
   68725         (WebCore::MoviePrivate::MoviePrivate):
   68726         (WebCore::MoviePrivate::~MoviePrivate):
   68727         (WebCore::MoviePrivate::load):
   68728         (WebCore::MoviePrivate::play):
   68729         (WebCore::MoviePrivate::pause):
   68730         (WebCore::MoviePrivate::duration):
   68731         (WebCore::MoviePrivate::currentTime):
   68732         (WebCore::MoviePrivate::seek):
   68733         (WebCore::MoviePrivate::setEndTime):
   68734         (WebCore::MoviePrivate::addCuePoint):
   68735         (WebCore::MoviePrivate::removeCuePoint):
   68736         (WebCore::MoviePrivate::clearCuePoints):
   68737         (WebCore::MoviePrivate::startCuePointTimerIfNeeded):
   68738         (WebCore::MoviePrivate::cancelSeek):
   68739         (WebCore::MoviePrivate::cuePointTimerFired):
   68740         (WebCore::MoviePrivate::paused):
   68741         (WebCore::MoviePrivate::seeking):
   68742         (WebCore::MoviePrivate::naturalSize):
   68743         (WebCore::MoviePrivate::hasVideo):
   68744         (WebCore::MoviePrivate::setVolume):
   68745         (WebCore::MoviePrivate::setMuted):
   68746         (WebCore::MoviePrivate::setRate):
   68747         (WebCore::MoviePrivate::dataRate):
   68748         (WebCore::MoviePrivate::networkState):
   68749         (WebCore::MoviePrivate::readyState):
   68750         (WebCore::MoviePrivate::maxTimeBuffered):
   68751         (WebCore::MoviePrivate::maxTimeSeekable):
   68752         (WebCore::MoviePrivate::maxTimeLoaded):
   68753         (WebCore::MoviePrivate::bytesLoaded):
   68754         (WebCore::MoviePrivate::totalBytesKnown):
   68755         (WebCore::MoviePrivate::totalBytes):
   68756         (WebCore::MoviePrivate::cancelLoad):
   68757         (WebCore::MoviePrivate::updateStates):
   68758         (WebCore::MoviePrivate::loadStateChanged):
   68759         (WebCore::MoviePrivate::rateChanged):
   68760         (WebCore::MoviePrivate::sizeChanged):
   68761         (WebCore::MoviePrivate::timeChanged):
   68762         (WebCore::MoviePrivate::volumeChanged):
   68763         (WebCore::MoviePrivate::didEnd):
   68764         (WebCore::MoviePrivate::loadingFailed):
   68765         (WebCore::MoviePrivate::setRect):
   68766         (WebCore::MoviePrivate::setVisible):
   68767         (WebCore::MoviePrivate::paint):
   68768         (WebCore::MoviePrivate::getSupportedTypes):
   68769         (WebCore::MoviePrivate::createGSTPlayBin):
   68770         * platform/graphics/gtk/MoviePrivateGStreamer.h: Added.
   68771 
   68772 2007-12-04  Holger Hans Peter Freyther <holger.freyther (a] trolltech.com>
   68773 
   68774         Reviewed by Simon.
   68775 
   68776         * Implement the InspectorClient for the Qt port
   68777         * It does not support highlighting of nodes yet
   68778         * Use QRC to open the internal page. The important thing is the
   68779         '/' in the URL to make WebCore::Document::completeURL behave the
   68780         way we want.
   68781         * To make the InspectorClient work we will have to mark qrc as secure.
   68782 
   68783         * WebCore.pro:
   68784         * loader/FrameLoader.cpp:
   68785         (WebCore::localSchemes):
   68786         * page/inspector/WebKit.qrc: Added.
   68787 
   68788 2007-12-04  Alp Toker  <alp (a] atoker.com>
   68789 
   68790         Rubber stamped by Mark Rowe.
   68791 
   68792         Remove two unused variables to silence warnings.
   68793 
   68794         * html/CanvasRenderingContext2D.cpp:
   68795         (WebCore::CanvasRenderingContext2D::fill):
   68796         (WebCore::CanvasRenderingContext2D::stroke):
   68797 
   68798 2007-12-03  Dan Bernstein  <mitz (a] apple.com>
   68799 
   68800         Reviewed by Darin Adler.
   68801 
   68802         - fix <rdar://problem/5134044> fast/frames/frame-src-attribute.html fails on Windows
   68803 
   68804         * platform/win/ScrollViewWin.cpp:
   68805         (WebCore::ScrollView::visibleWidth): Do not return negative values.
   68806         (WebCore::ScrollView::visibleHeight): Ditto.
   68807 
   68808 2007-12-03  Dan Bernstein  <mitz (a] apple.com>
   68809 
   68810         Reviewed by Dave Hyatt.
   68811 
   68812         - fix <rdar://problem/5346452> Resize event doesn't fire on body element inside a frame
   68813 
   68814         Test: fast/events/resize-subframe.html
   68815 
   68816         * page/FrameView.cpp:
   68817         (WebCore::FrameViewPrivate::FrameViewPrivate): Added a timer used when
   68818         deferring tasks that need to be done after layout.
   68819         (WebCore::FrameViewPrivate::reset):
   68820         (WebCore::FrameView::~FrameView):
   68821         (WebCore::FrameView::layout): Moved the updating of widget positions,
   68822         loading plug-ins and sending events queued up during layout into
   68823         performPostLayoutTasks(). performPostLayoutTasks() is called after
   68824         layout unless the layout was triggered by a previous layout's post-
   68825         layout tasks. In the latter case, performPostLayoutTasks() is scheduled
   68826         to run later.
   68827         (WebCore::FrameView::performPostLayoutTasks): Performs work that needs
   68828         to be done after layout but which can result in arbitrary code
   68829         execution and therefore may re-invalidate the layout. This includes
   68830         updating widget positions, loading plug-ins, and dispatching layout-
   68831         related DOM events (scroll, overflow and resize).
   68832         (WebCore::FrameView::postLayoutTimerFired):
   68833         (WebCore::FrameView::dispatchScheduledEvents):
   68834         * page/FrameView.h:
   68835         * page/mac/WebCoreFrameBridge.h:
   68836         * page/mac/WebCoreFrameBridge.mm: Removed -sendResizeEvent since this
   68837         is handled by FrameView now.
   68838 
   68839 2007-12-03  Rob Buis  <buis (a] kde.org>
   68840 
   68841         Reviewed by Darin.
   68842 
   68843         http://bugs.webkit.org/show_bug.cgi?id=15767
   68844         Text decorations do not respect "visibility" property
   68845 
   68846         Only paint decorations if visibility is "visible".
   68847 
   68848         * rendering/SVGInlineTextBox.cpp:
   68849         (WebCore::SVGInlineTextBox::paintDecoration):
   68850 
   68851 2007-12-03  Steve Falkenburg  <sfalken (a] apple.com>
   68852 
   68853         Fix build.
   68854 
   68855         * WebCore.vcproj/WebCore.vcproj:
   68856 
   68857 2007-12-03  Nikolas Zimmermann  <zimmermann (a] kde.org>
   68858 
   68859         Reviewed by David.
   68860 
   68861         Fixes: http://bugs.webkit.org/show_bug.cgi?id=15645
   68862         Don't allow selectors to interfere with the SVG shadow tree (<use> internal non-exposed tree).
   68863 
   68864         * css/CSSStyleSelector.cpp:
   68865         (WebCore::CSSStyleSelector::checkSelector):
   68866 
   68867 2007-12-03  Dan Bernstein  <mitz (a] apple.com>
   68868 
   68869         Reviewed by Adam Roben.
   68870 
   68871         - fix <rdar://problem/5538651> REGRESSSION: domfuzz: null deref in WebCore::Document::canReplaceChild
   68872 
   68873         Test: fast/dom/Document/replaceChild-null-oldChild.html
   68874 
   68875         * dom/Document.cpp:
   68876         (WebCore::Document::canReplaceChild):
   68877 
   68878 2007-12-03  Holger Hans Peter Freyther  <holger.freyther (a] trolltech.com>
   68879 
   68880         Reviewed by Simon.
   68881 
   68882         * Avoid crashes by making sure everything is layouted before
   68883         we start painting. This avoids a crash in Widget::invalidateRect
   68884         because QPainter::begin would fail
   68885         * The QWebFrame::layout() methods and calls are left untouched because
   68886         this would be an API decision.
   68887         
   68888 
   68889         WARNING: NO TEST CASES ADDED OR CHANGED
   68890 
   68891         * page/FrameView.cpp:
   68892         (WebCore::FrameView::updateControlTints):
   68893         * page/FrameView.h:
   68894         * platform/ScrollView.h:
   68895         * platform/qt/ScrollViewQt.cpp:
   68896         (WebCore::ScrollView::children):
   68897 
   68898 2007-12-03  Holger Hans Peter Freyther  <holger.freyther (a] trolltech.com>
   68899 
   68900         Reviewed by Simon.
   68901 
   68902         * Implement GraphicsContext::fillRoundedRect similiar to the
   68903         CoreGraphics implementation only addPath is not called this
   68904         seems to be only needed for CoreGraphics.
   68905         
   68906 
   68907         WARNING: NO TEST CASES ADDED OR CHANGED
   68908 
   68909         * platform/graphics/qt/GraphicsContextQt.cpp:
   68910         (WebCore::GraphicsContext::fillRoundedRect):
   68911 
   68912 2007-12-03  Holger Hans Peter Freyther  <holger.freyther (a] trolltech.com>
   68913 
   68914         Reviewed by Simon.
   68915 
   68916         * Coding Style fixes
   68917         
   68918 
   68919         WARNING: NO TEST CASES ADDED OR CHANGED
   68920 
   68921         * platform/qt/ScrollViewQt.cpp:
   68922         (WebCore::ScrollView::addChild):
   68923         (WebCore::ScrollView::removeChild):
   68924 
   68925 2007-12-03  Alp Toker  <alp (a] atoker.com>
   68926 
   68927         Reviewed by Mark Rowe.
   68928 
   68929         Don't delete the decoder if it's already been created. The one we have
   68930         is fine.
   68931 
   68932         Cairo image cleanups. Nothing substantial.
   68933 
   68934         Notify ImageObservers where appropriate.
   68935 
   68936         * platform/graphics/cairo/ImageCairo.cpp:
   68937         (WebCore::BitmapImage::draw):
   68938         (WebCore::Image::drawPattern):
   68939         * platform/graphics/cairo/ImageSourceCairo.cpp:
   68940         (WebCore::ImageSource::setData):
   68941         * platform/graphics/gtk/ImageGtk.cpp:
   68942 
   68943 2007-12-03  Simon Hausmann  <hausmann (a] webkit.org>
   68944 
   68945         Reviewed by Lars.
   68946 
   68947         Fixed crash when rendering form elements with Qt 4.4
   68948 
   68949         QPainter::device() is not guaranteed to return a QWidget, so do the safe "cast" with the
   68950         help of QPaintDevice::devType().
   68951         Also fall back to the QApplication::style() if we don't have a widget.
   68952 
   68953         * platform/qt/RenderThemeQt.cpp:
   68954         (WebCore::RenderThemeQt::paintButton):
   68955         (WebCore::RenderThemeQt::paintTextField):
   68956         (WebCore::RenderThemeQt::paintMenuList):
   68957         (WebCore::RenderThemeQt::getStylePainterAndWidgetFromPaintInfo):
   68958 
   68959 2007-12-02  Holger Hans Peter Freyther  <holger.freyther (a] trolltech.com>
   68960 
   68961         Reviewed by Sam Weinig.
   68962 
   68963         * Add FrameLoader::shouldTreatSchemeAsLocal which is similar to
   68964         shouldTreatURLAsLocal.
   68965         * Make use of FrameLoader::shouldTreatSchemeAsLocal in SecurityOrigin
   68966         and do not hardcode "file". This is needed for the WebKit/qt port to make
   68967         the Web Inspector work as it using the qrc protocol instead of file.
   68968 
   68969 
   68970         * loader/FrameLoader.cpp:
   68971         (WebCore::FrameLoader::shouldTreatSchemeAsLocal):
   68972         * loader/FrameLoader.h:
   68973         * platform/SecurityOrigin.cpp:
   68974         (WebCore::SecurityOrigin::isSecureTransitionTo):
   68975 
   68976 2007-12-02  Holger Hans Peter Freyther  <holger.freyther (a] trolltech.com>
   68977 
   68978         Rubber stamped by Sam Weinig.
   68979 
   68980         Only add applewebdata to the localSchemes when building for the
   68981         mac. This is in preparation of adding qrc for the Qt port there
   68982         as well and http://bugs.webkit.org/show_bug.cgi?id=15938.
   68983 
   68984         According to Anders applewebdata is not used on the win port.
   68985 
   68986         * loader/FrameLoader.cpp:
   68987         (WebCore::localSchemes):
   68988 
   68989 2007-12-02  Holger Hans Peter Freyther  <holger.freyther (a] trolltech.com>
   68990 
   68991         Rubber stamped by Sam Weinig.
   68992 
   68993         Fix a typo. It is contains and not containts
   68994 
   68995         * loader/FrameLoader.cpp:
   68996 
   68997 2007-12-03  Alp Toker  <alp (a] atoker.com>
   68998 
   68999         Add another missing DEPENDPATH.
   69000 
   69001         Noticed when fixing the build.
   69002 
   69003         * WebCore.pro:
   69004 
   69005 2007-12-03  Adam Roben  <aroben (a] apple.com>
   69006 
   69007         Speculative Windows build fix
   69008 
   69009         * plugins/win/PluginViewWin.cpp:
   69010         (WebCore::getString):
   69011 
   69012 2007-12-03  Geoffrey Garen  <ggaren (a] apple.com>
   69013 
   69014         Build fix: added symbols to the right .exp file.
   69015 
   69016         * WebCore.base.exp:
   69017 
   69018 2007-12-02  Geoffrey Garen  <ggaren (a] apple.com>
   69019 
   69020         Reviewed by Eric Seidel.
   69021 
   69022         Updated to match the JavaScriptCore change to move virtual methods from
   69023         Interpreter to JSGlobalObject.
   69024         
   69025         Moved virtual ScriptInterpreter functions to Window.
   69026 
   69027 2007-12-02  Darin Adler  <darin (a] apple.com>
   69028 
   69029         Reviewed by Mitz.
   69030 
   69031         - fix <rdar://problem/5601995> Hang/crash on http://ebay-uk.custhelp.com/
   69032 
   69033         There were two problems here:
   69034 
   69035             1) Incorrect HTMLCollection behavior led to us trying to insert a
   69036                new row inside an existing row instead of next to it. The fix for
   69037                this is to make HTMLCollection work better for table-related
   69038                collections.
   69039 
   69040             2) HTMLTableRowElement::insertCell would return a bad pointer if
   69041                the insertion failed. The code should have failed, but not crashed,
   69042                so it's worth fixing that too.
   69043 
   69044         While fixing the HTMLCollection issues, I did some clean-up of that
   69045         class and its derived classes.
   69046 
   69047         Test: fast/dom/HTMLTableElement/rows.html
   69048         Test: fast/dom/HTMLTableElement/tBodies.html
   69049         Test: fast/dom/HTMLTableRowElement/cells.html
   69050         Test: fast/dom/HTMLTableRowElement/insertCell.html
   69051         Test: fast/dom/HTMLTableSectionElement/rows.html
   69052 
   69053         * bindings/js/JSHTMLCollectionCustom.cpp:
   69054         (WebCore::toJS): Updated because collectionType() was renamed to type().
   69055 
   69056         * html/HTMLCollection.cpp:
   69057         (WebCore::HTMLCollection::HTMLCollection): Updated for data member name
   69058         changes. Also added a protected constructor for use by derived classes
   69059         that pass in a CollectionInfo.
   69060         (WebCore::HTMLCollection::CollectionInfo::copyCacheMap): Moved out of
   69061         the header.
   69062         (WebCore::isTableSection): Added.
   69063         (WebCore::HTMLCollection::itemAfter): Renamed from traverseNextItem,
   69064         because the old name was grammatically incorrect and thus a bit confusing.
   69065         Changed to operate on Element* instead of Node*, and use 0 to start
   69066         rather than passing in the base node (required since the base node can be
   69067         a document, which is not an element). Generalized the code that made
   69068         NodeChildren not descend into deeper descendants so it can be used for
   69069         TRCells, TSectionRows, TableTBodies, and TableRows. Reformatted the
   69070         switch statement and got rid of the "found" boolean since we can just
   69071         return when we find something. Got rid of the default case, and instead
   69072         listed all the enum values. Also changed to use a for loop for clarity.
   69073         (WebCore::HTMLCollection::calcLength): Updated for itemAfter changes.
   69074         (WebCore::HTMLCollection::item): Ditto.
   69075         (WebCore::HTMLCollection::nextItem): Ditto.
   69076         (WebCore::HTMLCollection::checkForNameMatch): Updated to take an Element
   69077         instead of a Node pointer.
   69078         (WebCore::HTMLCollection::namedItem): More of the same.
   69079         (WebCore::HTMLCollection::updateNameCache): Ditto.
   69080         (WebCore::HTMLCollection::namedItems): Ditto.
   69081         (WebCore::HTMLCollection::nextNamedItem): Ditto.
   69082         (WebCore::HTMLCollection::tags): Ditto.
   69083 
   69084         * html/HTMLCollection.h: Added a type FormElements, so that the
   69085         HTMLFormCollection would not have a type of DocImages, which is what
   69086         it previously did. Changed the base parameter to be a PassRefPtr to
   69087         make it clear we take ownership of it. Added a comment explaining
   69088         why we should change the name CollectionInfo. Made a lot more members
   69089         private instead of protected. Renamed traverseNextItem to itemAfter.
   69090         Changed most functions to take Element* instead of Node*.
   69091 
   69092         * html/HTMLFormCollection.cpp:
   69093         (WebCore::HTMLFormCollection::formCollectionInfo): Added.
   69094         (WebCore::HTMLFormCollection::HTMLFormCollection): Updated to pass
   69095         collection info into the base class.
   69096         (WebCore::HTMLFormCollection::calcLength): Updated to use base() so we
   69097         don't need to get at m_base directly.
   69098         (WebCore::HTMLFormCollection::item): Same, but for info().
   69099         (WebCore::HTMLFormCollection::getNamedItem): Removed unused first
   69100         argument.
   69101         (WebCore::HTMLFormCollection::getNamedFormItem): Got rid of unneeded
   69102         checks that the base is still an element and still a form, since that's
   69103         guaranteed.
   69104         (WebCore::HTMLFormCollection::nextItem): Use info().
   69105         (WebCore::HTMLFormCollection::nextNamedItemInternal): Node instead of
   69106         Element, some name changes.
   69107         (WebCore::HTMLFormCollection::namedItem): Update for changes elsewhere.
   69108         (WebCore::HTMLFormCollection::nextNamedItem): Ditto, also rewrote loop
   69109         to be much simpler.
   69110         (WebCore::HTMLFormCollection::updateNameCache): More of the same.
   69111 
   69112         * html/HTMLFormCollection.h: Changed constructor to take an
   69113         HTMLFormElement, using a PassRefPtr to communicate transfer of
   69114         ownership. Made everything private instead of protected. Removed
   69115         unneeded override of firstItem. Made getNamedItem and
   69116         nextNamedItemInternal non-virtual. Removed unused first argument of
   69117         getNamedItem. Added declaration of formCollectionInfo.
   69118 
   69119         * html/HTMLNameCollection.cpp:
   69120         (WebCore::HTMLNameCollection::HTMLNameCollection): Updated to pass
   69121         collection info into the base class.
   69122         (WebCore::HTMLNameCollection::itemAfter): Reformatted a bit and
   69123         changed into a for loop.
   69124 
   69125         * html/HTMLNameCollection.h: Updated for name changes. Made function
   69126         private instead of public. Used PassRefPtr in constructor.
   69127 
   69128         * html/HTMLOptionsCollection.cpp:
   69129         (WebCore::HTMLOptionsCollection::HTMLOptionsCollection): Updated to
   69130         pass collection info into the base class.
   69131         (WebCore::HTMLOptionsCollection::add): Updated for public/private
   69132         changes in the base class.
   69133         (WebCore::HTMLOptionsCollection::selectedIndex): Ditto.
   69134         (WebCore::HTMLOptionsCollection::setSelectedIndex): Ditto.
   69135         (WebCore::HTMLOptionsCollection::setLength): Ditto.
   69136 
   69137         * html/HTMLOptionsCollection.h: Changed constructor parameter to be a
   69138         PassRefPtr.
   69139 
   69140         * html/HTMLTableRowElement.cpp:
   69141         (WebCore::HTMLTableRowElement::insertCell): Changed code to use RefPtr
   69142         and PassRefPtr since this creates a new object. This alone fixed the
   69143         crash. Also cleaned up logic a bit to be more readable.
   69144 
   69145         * html/HTMLTableRowElement.h: Changed insertCell to return a PassRefPtr.
   69146         Also reordered functions a bit to make things a little more logical and
   69147         removed the unused ncols data member.
   69148 
   69149         * html/HTMLTableSectionElement.cpp:
   69150         (WebCore::HTMLTableSectionElement::rows): Pass TSectionRows, not
   69151         TableRows. This mistake was harmless before because TableRows and
   69152         TSectionRows were handled identically inside HTMLCollection, but that is
   69153         no longer the case with this fix.
   69154 
   69155         * bindings/scripts/CodeGeneratorJS.pm: Add an include to cope with the
   69156         fact that HTMLOptionsCollection no longer includes HTMLOptionElement.
   69157         I don't think this really should be a special case -- might be worth
   69158         returning later to see if this can be optimized.
   69159 
   69160 2007-12-02  Nikolas Zimmermann  <zimmermann (a] kde.org>
   69161 
   69162         Reviewed by Adam.
   69163 
   69164         RenderSVGViewportContainer sets wrong width/height.
   69165         Share code with RenderSVGContainer in a central calcBounds() function.
   69166 
   69167         Fixes:
   69168         - svg/custom/use-css-events.svg (http://bugs.webkit.org/show_bug.cgi?id=15403)
   69169         - svg/custom/deep-dynamic-updates.svg
   69170         - svg/custom/use-clipped-hit.svg
   69171         - svg/custom/image-clipped-hit.svg
   69172 
   69173         * rendering/RenderSVGContainer.cpp:
   69174         (WebCore::RenderSVGContainer::layout):
   69175         (WebCore::RenderSVGContainer::calcBounds):
   69176         * rendering/RenderSVGContainer.h:
   69177         * rendering/RenderSVGViewportContainer.cpp:
   69178         (WebCore::RenderSVGViewportContainer::layout):
   69179 
   69180 2007-12-02  Brady Eidson <beidson (a] apple.com>
   69181 
   69182         Reviewed by Darin
   69183 
   69184         databaseChanged notifications were being sent out on the database thread - they need to be on the main thread
   69185         like all other notifications we send out!
   69186 
   69187         * platform/SecurityOriginData.cpp:
   69188         (WebCore::SecurityOriginData::copy): Add a deep copy method, for when an object thread hops
   69189         * platform/SecurityOriginData.h:
   69190 
   69191         * storage/DatabaseTracker.cpp:
   69192         (WebCore::notificationMutex):
   69193         (WebCore::notificationQueue):
   69194         (WebCore::DatabaseTracker::scheduleNotifyDatabaseChanged): Add the origin/name pair to a queue
   69195         (WebCore::DatabaseTracker::scheduleForNotification): Schedule to deliver this queue of notifications
   69196           on the main thread
   69197         (WebCore::DatabaseTracker::notifyDatabasesChanged): Deliver all notifications in the queue
   69198         * storage/DatabaseTracker.h:
   69199 
   69200         * storage/SQLTransaction.cpp:
   69201         (WebCore::SQLTransaction::postflightAndCommit): scheduleNotifyDatabaseChanged() instead of "notify now!"
   69202         (WebCore::SQLTransaction::cleanupAfterTransactionErrorCallback): Ditto
   69203 
   69204 2007-12-02  Rob Buis  <buis (a] kde.org>
   69205 
   69206         Reviewed by Darin.
   69207 
   69208         http://bugs.webkit.org/show_bug.cgi?id=16002
   69209         Load SVG (and other) UA StyleSheets dynamically when needed
   69210 
   69211         Load svg sheet when needed.
   69212 
   69213         * css/CSSStyleSelector.cpp:
   69214         (WebCore::screenEval):
   69215         (WebCore::printEval):
   69216         (WebCore::CSSStyleSelector::CSSStyleSelector):
   69217         (WebCore::CSSStyleSelector::loadDefaultStyle):
   69218         (WebCore::CSSStyleSelector::styleForElement):
   69219         (WebCore::CSSRuleSet::addRulesFromSheet):
   69220 
   69221 2007-12-02  Mark Rowe  <mrowe (a] apple.com>
   69222 
   69223         Try and fix the Windows build.
   69224 
   69225         * plugins/win/PluginViewWin.cpp:
   69226         (WebCore::PluginViewWin::bindingInstance):
   69227 
   69228 2007-12-02  Nikolas Zimmermann  <zimmermann (a] kde.org>
   69229 
   69230         Rubber stamped by Eric.
   69231 
   69232         Move platform/graphics/svg to graphics/svg as discussed on webkit-dev.
   69233         Updated all project files.
   69234 
   69235         * WebCore.pro:
   69236         * WebCore.vcproj/WebCore.vcproj:
   69237         * WebCore.xcodeproj/project.pbxproj:
   69238         * platform/graphics/svg: Removed.
   69239         * platform/graphics/svg/SVGImage.cpp: Removed.
   69240         * platform/graphics/svg/SVGImage.h: Removed.
   69241         * platform/graphics/svg/SVGImageEmptyClients.h: Removed.
   69242         * platform/graphics/svg/SVGPaintServer.cpp: Removed.
   69243         * platform/graphics/svg/SVGPaintServer.h: Removed.
   69244         * platform/graphics/svg/SVGPaintServerGradient.cpp: Removed.
   69245         * platform/graphics/svg/SVGPaintServerGradient.h: Removed.
   69246         * platform/graphics/svg/SVGPaintServerLinearGradient.cpp: Removed.
   69247         * platform/graphics/svg/SVGPaintServerLinearGradient.h: Removed.
   69248         * platform/graphics/svg/SVGPaintServerPattern.cpp: Removed.
   69249         * platform/graphics/svg/SVGPaintServerPattern.h: Removed.
   69250         * platform/graphics/svg/SVGPaintServerRadialGradient.cpp: Removed.
   69251         * platform/graphics/svg/SVGPaintServerRadialGradient.h: Removed.
   69252         * platform/graphics/svg/SVGPaintServerSolid.cpp: Removed.
   69253         * platform/graphics/svg/SVGPaintServerSolid.h: Removed.
   69254         * platform/graphics/svg/SVGResource.cpp: Removed.
   69255         * platform/graphics/svg/SVGResource.h: Removed.
   69256         * platform/graphics/svg/SVGResourceClipper.cpp: Removed.
   69257         * platform/graphics/svg/SVGResourceClipper.h: Removed.
   69258         * platform/graphics/svg/SVGResourceFilter.cpp: Removed.
   69259         * platform/graphics/svg/SVGResourceFilter.h: Removed.
   69260         * platform/graphics/svg/SVGResourceListener.h: Removed.
   69261         * platform/graphics/svg/SVGResourceMarker.cpp: Removed.
   69262         * platform/graphics/svg/SVGResourceMarker.h: Removed.
   69263         * platform/graphics/svg/SVGResourceMasker.cpp: Removed.
   69264         * platform/graphics/svg/SVGResourceMasker.h: Removed.
   69265         * platform/graphics/svg/cairo: Removed.
   69266         * platform/graphics/svg/cairo/RenderPathCairo.cpp: Removed.
   69267         * platform/graphics/svg/cairo/SVGPaintServerCairo.cpp: Removed.
   69268         * platform/graphics/svg/cairo/SVGPaintServerGradientCairo.cpp: Removed.
   69269         * platform/graphics/svg/cairo/SVGPaintServerPatternCairo.cpp: Removed.
   69270         * platform/graphics/svg/cairo/SVGPaintServerSolidCairo.cpp: Removed.
   69271         * platform/graphics/svg/cairo/SVGResourceClipperCairo.cpp: Removed.
   69272         * platform/graphics/svg/cairo/SVGResourceMaskerCairo.cpp: Removed.
   69273         * platform/graphics/svg/cg: Removed.
   69274         * platform/graphics/svg/cg/CgSupport.cpp: Removed.
   69275         * platform/graphics/svg/cg/CgSupport.h: Removed.
   69276         * platform/graphics/svg/cg/RenderPathCg.cpp: Removed.
   69277         * platform/graphics/svg/cg/SVGPaintServerCg.cpp: Removed.
   69278         * platform/graphics/svg/cg/SVGPaintServerGradientCg.cpp: Removed.
   69279         * platform/graphics/svg/cg/SVGPaintServerPatternCg.cpp: Removed.
   69280         * platform/graphics/svg/cg/SVGPaintServerSolidCg.cpp: Removed.
   69281         * platform/graphics/svg/cg/SVGResourceClipperCg.cpp: Removed.
   69282         * platform/graphics/svg/cg/SVGResourceFilterCg.cpp: Removed.
   69283         * platform/graphics/svg/cg/SVGResourceFilterCg.mm: Removed.
   69284         * platform/graphics/svg/cg/SVGResourceMaskerCg.cpp: Removed.
   69285         * platform/graphics/svg/cg/SVGResourceMaskerCg.mm: Removed.
   69286         * platform/graphics/svg/filters: Removed.
   69287         * platform/graphics/svg/filters/SVGDistantLightSource.h: Removed.
   69288         * platform/graphics/svg/filters/SVGFEBlend.cpp: Removed.
   69289         * platform/graphics/svg/filters/SVGFEBlend.h: Removed.
   69290         * platform/graphics/svg/filters/SVGFEColorMatrix.cpp: Removed.
   69291         * platform/graphics/svg/filters/SVGFEColorMatrix.h: Removed.
   69292         * platform/graphics/svg/filters/SVGFEComponentTransfer.cpp: Removed.
   69293         * platform/graphics/svg/filters/SVGFEComponentTransfer.h: Removed.
   69294         * platform/graphics/svg/filters/SVGFEComposite.cpp: Removed.
   69295         * platform/graphics/svg/filters/SVGFEComposite.h: Removed.
   69296         * platform/graphics/svg/filters/SVGFEConvolveMatrix.cpp: Removed.
   69297         * platform/graphics/svg/filters/SVGFEConvolveMatrix.h: Removed.
   69298         * platform/graphics/svg/filters/SVGFEDiffuseLighting.cpp: Removed.
   69299         * platform/graphics/svg/filters/SVGFEDiffuseLighting.h: Removed.
   69300         * platform/graphics/svg/filters/SVGFEDisplacementMap.cpp: Removed.
   69301         * platform/graphics/svg/filters/SVGFEDisplacementMap.h: Removed.
   69302         * platform/graphics/svg/filters/SVGFEFlood.cpp: Removed.
   69303         * platform/graphics/svg/filters/SVGFEFlood.h: Removed.
   69304         * platform/graphics/svg/filters/SVGFEGaussianBlur.cpp: Removed.
   69305         * platform/graphics/svg/filters/SVGFEGaussianBlur.h: Removed.
   69306         * platform/graphics/svg/filters/SVGFEImage.cpp: Removed.
   69307         * platform/graphics/svg/filters/SVGFEImage.h: Removed.
   69308         * platform/graphics/svg/filters/SVGFEMerge.cpp: Removed.
   69309         * platform/graphics/svg/filters/SVGFEMerge.h: Removed.
   69310         * platform/graphics/svg/filters/SVGFEMorphology.cpp: Removed.
   69311         * platform/graphics/svg/filters/SVGFEMorphology.h: Removed.
   69312         * platform/graphics/svg/filters/SVGFEOffset.cpp: Removed.
   69313         * platform/graphics/svg/filters/SVGFEOffset.h: Removed.
   69314         * platform/graphics/svg/filters/SVGFESpecularLighting.cpp: Removed.
   69315         * platform/graphics/svg/filters/SVGFESpecularLighting.h: Removed.
   69316         * platform/graphics/svg/filters/SVGFETile.h: Removed.
   69317         * platform/graphics/svg/filters/SVGFETurbulence.cpp: Removed.
   69318         * platform/graphics/svg/filters/SVGFETurbulence.h: Removed.
   69319         * platform/graphics/svg/filters/SVGFilterEffect.cpp: Removed.
   69320         * platform/graphics/svg/filters/SVGFilterEffect.h: Removed.
   69321         * platform/graphics/svg/filters/SVGLightSource.cpp: Removed.
   69322         * platform/graphics/svg/filters/SVGLightSource.h: Removed.
   69323         * platform/graphics/svg/filters/SVGPointLightSource.h: Removed.
   69324         * platform/graphics/svg/filters/SVGSpotLightSource.h: Removed.
   69325         * platform/graphics/svg/filters/cg: Removed.
   69326         * platform/graphics/svg/filters/cg/SVGFEBlendCg.mm: Removed.
   69327         * platform/graphics/svg/filters/cg/SVGFEColorMatrixCg.mm: Removed.
   69328         * platform/graphics/svg/filters/cg/SVGFEComponentTransferCg.mm: Removed.
   69329         * platform/graphics/svg/filters/cg/SVGFECompositeCg.mm: Removed.
   69330         * platform/graphics/svg/filters/cg/SVGFEDiffuseLightingCg.mm: Removed.
   69331         * platform/graphics/svg/filters/cg/SVGFEDisplacementMapCg.mm: Removed.
   69332         * platform/graphics/svg/filters/cg/SVGFEFloodCg.mm: Removed.
   69333         * platform/graphics/svg/filters/cg/SVGFEGaussianBlurCg.mm: Removed.
   69334         * platform/graphics/svg/filters/cg/SVGFEHelpersCg.h: Removed.
   69335         * platform/graphics/svg/filters/cg/SVGFEHelpersCg.mm: Removed.
   69336         * platform/graphics/svg/filters/cg/SVGFEImageCg.mm: Removed.
   69337         * platform/graphics/svg/filters/cg/SVGFEMergeCg.mm: Removed.
   69338         * platform/graphics/svg/filters/cg/SVGFEOffsetCg.mm: Removed.
   69339         * platform/graphics/svg/filters/cg/SVGFESpecularLightingCg.mm: Removed.
   69340         * platform/graphics/svg/filters/cg/SVGFETileCg.mm: Removed.
   69341         * platform/graphics/svg/filters/cg/SVGFilterEffectCg.mm: Removed.
   69342         * platform/graphics/svg/filters/cg/WKArithmeticFilter.cikernel: Removed.
   69343         * platform/graphics/svg/filters/cg/WKArithmeticFilter.h: Removed.
   69344         * platform/graphics/svg/filters/cg/WKArithmeticFilter.m: Removed.
   69345         * platform/graphics/svg/filters/cg/WKComponentMergeFilter.cikernel: Removed.
   69346         * platform/graphics/svg/filters/cg/WKComponentMergeFilter.h: Removed.
   69347         * platform/graphics/svg/filters/cg/WKComponentMergeFilter.m: Removed.
   69348         * platform/graphics/svg/filters/cg/WKDiffuseLightingFilter.cikernel: Removed.
   69349         * platform/graphics/svg/filters/cg/WKDiffuseLightingFilter.h: Removed.
   69350         * platform/graphics/svg/filters/cg/WKDiffuseLightingFilter.m: Removed.
   69351         * platform/graphics/svg/filters/cg/WKDiscreteTransferFilter.cikernel: Removed.
   69352         * platform/graphics/svg/filters/cg/WKDiscreteTransferFilter.h: Removed.
   69353         * platform/graphics/svg/filters/cg/WKDiscreteTransferFilter.m: Removed.
   69354         * platform/graphics/svg/filters/cg/WKDisplacementMapFilter.cikernel: Removed.
   69355         * platform/graphics/svg/filters/cg/WKDisplacementMapFilter.h: Removed.
   69356         * platform/graphics/svg/filters/cg/WKDisplacementMapFilter.m: Removed.
   69357         * platform/graphics/svg/filters/cg/WKDistantLightFilter.cikernel: Removed.
   69358         * platform/graphics/svg/filters/cg/WKDistantLightFilter.h: Removed.
   69359         * platform/graphics/svg/filters/cg/WKDistantLightFilter.m: Removed.
   69360         * platform/graphics/svg/filters/cg/WKGammaTransferFilter.cikernel: Removed.
   69361         * platform/graphics/svg/filters/cg/WKGammaTransferFilter.h: Removed.
   69362         * platform/graphics/svg/filters/cg/WKGammaTransferFilter.m: Removed.
   69363         * platform/graphics/svg/filters/cg/WKIdentityTransferFilter.h: Removed.
   69364         * platform/graphics/svg/filters/cg/WKIdentityTransferFilter.m: Removed.
   69365         * platform/graphics/svg/filters/cg/WKLinearTransferFilter.cikernel: Removed.
   69366         * platform/graphics/svg/filters/cg/WKLinearTransferFilter.h: Removed.
   69367         * platform/graphics/svg/filters/cg/WKLinearTransferFilter.m: Removed.
   69368         * platform/graphics/svg/filters/cg/WKNormalMapFilter.cikernel: Removed.
   69369         * platform/graphics/svg/filters/cg/WKNormalMapFilter.h: Removed.
   69370         * platform/graphics/svg/filters/cg/WKNormalMapFilter.m: Removed.
   69371         * platform/graphics/svg/filters/cg/WKPointLightFilter.cikernel: Removed.
   69372         * platform/graphics/svg/filters/cg/WKPointLightFilter.h: Removed.
   69373         * platform/graphics/svg/filters/cg/WKPointLightFilter.m: Removed.
   69374         * platform/graphics/svg/filters/cg/WKSpecularLightingFilter.cikernel: Removed.
   69375         * platform/graphics/svg/filters/cg/WKSpecularLightingFilter.h: Removed.
   69376         * platform/graphics/svg/filters/cg/WKSpecularLightingFilter.m: Removed.
   69377         * platform/graphics/svg/filters/cg/WKSpotLightFilter.cikernel: Removed.
   69378         * platform/graphics/svg/filters/cg/WKSpotLightFilter.h: Removed.
   69379         * platform/graphics/svg/filters/cg/WKSpotLightFilter.m: Removed.
   69380         * platform/graphics/svg/filters/cg/WKTableTransferFilter.cikernel: Removed.
   69381         * platform/graphics/svg/filters/cg/WKTableTransferFilter.h: Removed.
   69382         * platform/graphics/svg/filters/cg/WKTableTransferFilter.m: Removed.
   69383         * platform/graphics/svg/mac: Removed.
   69384         * platform/graphics/svg/mac/SVGResourceFilterPlatformDataMac.h: Removed.
   69385         * platform/graphics/svg/mac/SVGResourceFilterPlatformDataMac.mm: Removed.
   69386         * platform/graphics/svg/qt: Removed.
   69387         * platform/graphics/svg/qt/RenderPathQt.cpp: Removed.
   69388         * platform/graphics/svg/qt/SVGPaintServerGradientQt.cpp: Removed.
   69389         * platform/graphics/svg/qt/SVGPaintServerLinearGradientQt.cpp: Removed.
   69390         * platform/graphics/svg/qt/SVGPaintServerPatternQt.cpp: Removed.
   69391         * platform/graphics/svg/qt/SVGPaintServerQt.cpp: Removed.
   69392         * platform/graphics/svg/qt/SVGPaintServerRadialGradientQt.cpp: Removed.
   69393         * platform/graphics/svg/qt/SVGPaintServerSolidQt.cpp: Removed.
   69394         * platform/graphics/svg/qt/SVGResourceClipperQt.cpp: Removed.
   69395         * platform/graphics/svg/qt/SVGResourceFilterQt.cpp: Removed.
   69396         * platform/graphics/svg/qt/SVGResourceMaskerQt.cpp: Removed.
   69397         * svg/graphics: Copied from platform/graphics/svg.
   69398 
   69399 2007-12-02  Nikolas Zimmermann  <zimmermann (a] kde.org>
   69400 
   69401         Reviewed by Maciej.
   69402 
   69403         Fix IDL lookup in subdirectories. Missing 'my' prefix for the 'thisDir' variable.
   69404         When entering subdirectories the 'thisDir' variable got altered - see snippet:
   69405 
   69406         THISDIR: WebCore/page FOUND FILE: FrameView.h (endCondition: 0)
   69407         ..
   69408         -> ENTER: WebCore/page/gtk (THIS DIR: WebCore/page)
   69409         ...
   69410         <- LEAVE: WebCore/page/gtk (THIS DIR: WebCore/page/gtk)
   69411         THISDIR: WebCore/page/gtk FOUND FILE: History.cpp (endCondition: 0)
   69412 
   69413         'History.cpp' is located in WebCore/page not WebCore/page/gtk.
   69414 
   69415         * bindings/scripts/CodeGenerator.pm:
   69416 
   69417 2007-12-01  Alp Toker  <alp (a] atoker.com>
   69418 
   69419         Reviewed by Adam Roben.
   69420 
   69421         Add the newly introduced webkit.h convenience header.
   69422 
   69423         * WebCore.pro:
   69424 
   69425 2007-12-01  Antti Koivisto  <antti (a] apple.com>
   69426 
   69427         Reviewed by Adam.
   69428         
   69429         - Fix crash when removing a loading media element from the tree.
   69430         - Follow the spec by invoking pause() when element is removed from the tree instead of unloading.
   69431 
   69432         Tests: http/tests/media/remove-while-loading.html
   69433                media/remove-from-document.html
   69434 
   69435         * html/HTMLMediaElement.cpp:
   69436         (WebCore::HTMLMediaElement::removedFromDocument):
   69437 
   69438 2007-12-01  Geoffrey Garen  <ggaren (a] apple.com>
   69439 
   69440         Reviewed by Beth Dakin.
   69441 
   69442         Restored the test string in this test.
   69443 
   69444         * manual-tests/window-open-features-parsing.html:
   69445 
   69446 2007-11-30  Geoffrey Garen  <ggaren (a] apple.com>
   69447 
   69448         Reviewed by Beth Dakin.
   69449         
   69450         Modified WebCore to follow the new JSGlobalObject/Interpreter ownership
   69451         rules in JavaScriptCore.
   69452 
   69453         * bindings/js/kjs_binding.cpp:
   69454         * bindings/js/kjs_binding.h: Removed stale, unused 
   69455         interpreterForGlobalObject().
   69456 
   69457         * bindings/js/kjs_proxy.cpp: Changed to store a global object, rather
   69458         than an interpreter.
   69459         (WebCore::KJSProxy::finishedWithEvent): Need to NULL check 
   69460         m_globalObject here because we no longer unnecessarily instantiate it.
   69461 
   69462         * bindings/js/kjs_window.cpp:
   69463         (KJS::ScheduledAction::execute):
   69464         * bindings/js/kjs_window.h: Removed redundant and less efficient 
   69465         interpreter() function -- global objects have direct access to their
   69466         interpreters now.
   69467 
   69468         Changed these functions to pass around JSGlobalObjects instead of 
   69469         Interpreters:
   69470 
   69471         * page/Frame.cpp:
   69472         (WebCore::Frame::bindingRootObject):
   69473         (WebCore::Frame::createRootObject):
   69474         * page/Frame.h:
   69475         * page/mac/WebCoreFrameBridge.mm:
   69476         (createRootObject):
   69477 
   69478 2007-12-01  Darin Adler  <darin (a] apple.com>
   69479 
   69480         Reviewed by Mitz.
   69481 
   69482         - fix problem tracked by these bugs:
   69483           http://bugs.webkit.org/show_bug.cgi?id=16097
   69484           <rdar://problem/5619305> Safari crashes during load of LexisNexis search results
   69485           <rdar://problem/5510779> CrashTracer: [USER] 25 crashes in Safari at
   69486           WebCore::DocumentLoader::isLoadingMultipartContent const
   69487 
   69488         * loader/ImageDocument.cpp:
   69489         (WebCore::ImageDocument::createDocumentStructure): Create an ImageDocumentElement
   69490         instead of an HTMLImageElement.
   69491         (WebCore::ImageDocument::scale): Added a null check for m_imageElement.
   69492         (WebCore::ImageDocument::resizeImageToFit): Ditto.
   69493         (WebCore::ImageDocument::restoreImageSize): Ditto.
   69494         (WebCore::ImageDocument::imageFitsInWindow): Ditto.
   69495         (WebCore::ImageDocument::windowSizeChanged): Ditto.
   69496         (WebCore::ImageDocumentElement::~ImageDocumentElement): Call
   69497         disconnectImageElement so m_imageElement will be set to 0
   69498          if we're still connected to the document.
   69499         (WebCore::ImageDocumentElement::willMoveToNewOwnerDocument): Ditto.
   69500 
   69501         * loader/ImageDocument.h: Changed image element type to be
   69502         ImageDocumentElement instead of HTMLImageElement. Also added
   69503         a disconnectImageElement function that sets m_imageElement to 0.
   69504 
   69505 2007-12-01  Darin Adler  <darin (a] apple.com>
   69506 
   69507         - remove the empty directories
   69508 
   69509         * ksvg2: Removed.
   69510         * ksvg2/css: Removed.
   69511         * ksvg2/events: Removed.
   69512         * ksvg2/misc: Removed.
   69513         * ksvg2/scripts: Removed.
   69514 
   69515 2007-12-01  Julien Chaffraix  <julien.chaffraix (a] gmail.com>
   69516 
   69517         Bug 16189: XMLHttpRequest::setRequestHeader() should not set certain headers
   69518 
   69519         Reviewed by Darin Adler.
   69520 
   69521         * xml/XMLHttpRequest.cpp:
   69522         (WebCore::canSetRequestHeader):
   69523 
   69524         Test: http/tests/xmlhttprequest/set-dangerous-headers.html
   69525 
   69526 2007-12-01  Rahul Abrol  <ra5ul (a] comcast.net>
   69527 
   69528         Reviewed by Adam Roben.
   69529 
   69530         http://bugs.webkit.org/show_bug.cgi?id=16128
   69531         Ignore resizable=no for window.open().
   69532 
   69533         * bindings/js/kjs_window.cpp:
   69534         (KJS::setWindowFeature):
   69535         (KJS::parseWindowFeatures):
   69536         * manual-tests/window-open-features-parsing.html:
   69537 
   69538 2007-12-01  Dan Bernstein  <mitz (a] apple.com>
   69539 
   69540         Reviewed by Darin Adler.
   69541 
   69542         - fix <rdar://problem/5619240> REGRESSION (Leopard-r28069): Reproducible crash with a Mootools-based calendar picker (jump to null in FrameView::layout)
   69543 
   69544         Test: fast/dynamic/subtree-common-root.html
   69545 
   69546         * page/FrameView.cpp:
   69547         (WebCore::FrameView::layoutRoot): Added a parameter to let this method
   69548         return the layout root for a pending layout as well.
   69549         (WebCore::FrameView::scheduleRelayoutOfSubtree): Pass the new root
   69550         to markContainingBlocksForLayout(). Otherwise,
   69551         markContainingBlocksForLayout() could mark past the new root, if it had
   69552         previously been marked as having a normal child needing layout and then
   69553         was reached via a positioned child.
   69554         * page/FrameView.h:
   69555         * rendering/RenderBox.cpp:
   69556         (WebCore::RenderBox::calcWidth):
   69557         * rendering/RenderObject.cpp:
   69558         (WebCore::RenderObject::~RenderObject): Fixed the ASSERT so that
   69559         it would really catch deletion of the layout root.
   69560         (WebCore::RenderObject::markContainingBlocksForLayout): Added the
   69561         newRoot parameter, which tells this method where to stop marking.
   69562         * rendering/RenderObject.h:
   69563 
   69564 2007-12-01  Dan Bernstein  <mitz (a] apple.com>
   69565 
   69566         Reviewed by Darin Adler.
   69567 
   69568         - fold FontStyle into TextRun
   69569 
   69570         * WebCore.xcodeproj/project.pbxproj:
   69571         * platform/graphics/Font.cpp:
   69572         (WebCore::WidthIterator::WidthIterator):
   69573         (WebCore::WidthIterator::advance):
   69574         (WebCore::Font::width):
   69575         (WebCore::Font::drawSimpleText):
   69576         (WebCore::Font::drawGlyphBuffer):
   69577         (WebCore::Font::drawText):
   69578         (WebCore::Font::floatWidth):
   69579         (WebCore::Font::floatWidthForSimpleText):
   69580         (WebCore::Font::selectionRectForText):
   69581         (WebCore::Font::selectionRectForSimpleText):
   69582         (WebCore::Font::offsetForPosition):
   69583         (WebCore::Font::offsetForPositionForSimpleText):
   69584         * platform/graphics/Font.h:
   69585         (WebCore::TextRun::TextRun):
   69586         (WebCore::TextRun::setText):
   69587         (WebCore::TextRun::allowTabs):
   69588         (WebCore::TextRun::xPos):
   69589         (WebCore::TextRun::padding):
   69590         (WebCore::TextRun::rtl):
   69591         (WebCore::TextRun::ltr):
   69592         (WebCore::TextRun::directionalOverride):
   69593         (WebCore::TextRun::applyRunRounding):
   69594         (WebCore::TextRun::applyWordRounding):
   69595         (WebCore::TextRun::spacingDisabled):
   69596         (WebCore::TextRun::disableSpacing):
   69597         (WebCore::TextRun::disableRoundingHacks):
   69598         (WebCore::TextRun::setRTL):
   69599         (WebCore::TextRun::setDirectionalOverride):
   69600         * platform/graphics/FontStyle.h: Removed.
   69601         * platform/graphics/GraphicsContext.cpp:
   69602         (WebCore::GraphicsContext::drawText):
   69603         (WebCore::GraphicsContext::drawBidiText):
   69604         (WebCore::GraphicsContext::drawHighlightForText):
   69605         * platform/graphics/GraphicsContext.h:
   69606         * platform/graphics/StringTruncator.cpp:
   69607         (WebCore::stringWidth):
   69608         * platform/graphics/gtk/FontGtk.cpp:
   69609         (WebCore::Font::drawComplexText):
   69610         (WebCore::Font::floatWidthForComplexText):
   69611         (WebCore::Font::offsetForPositionForComplexText):
   69612         (WebCore::Font::selectionRectForComplexText):
   69613         * platform/graphics/mac/FontMac.mm:
   69614         (WebCore::ATSULayoutParameters::ATSULayoutParameters):
   69615         (WebCore::addDirectionalOverride):
   69616         (WebCore::overrideLayoutOperation):
   69617         (WebCore::ATSULayoutParameters::initialize):
   69618         (WebCore::Font::selectionRectForComplexText):
   69619         (WebCore::Font::drawComplexText):
   69620         (WebCore::Font::floatWidthForComplexText):
   69621         (WebCore::Font::offsetForPositionForComplexText):
   69622         * platform/graphics/qt/FontQt.cpp:
   69623         (WebCore::generateComponents):
   69624         (WebCore::Font::drawText):
   69625         (WebCore::Font::width):
   69626         (WebCore::Font::offsetForPosition):
   69627         (WebCore::cursorToX):
   69628         (WebCore::Font::selectionRectForText):
   69629         * platform/graphics/win/FontWin.cpp:
   69630         (WebCore::Font::selectionRectForComplexText):
   69631         (WebCore::Font::drawComplexText):
   69632         (WebCore::Font::floatWidthForComplexText):
   69633         (WebCore::Font::offsetForPositionForComplexText):
   69634         * platform/graphics/wx/FontWx.cpp:
   69635         (WebCore::Font::selectionRectForComplexText):
   69636         (WebCore::Font::drawComplexText):
   69637         (WebCore::Font::floatWidthForComplexText):
   69638         (WebCore::Font::offsetForPositionForComplexText):
   69639         * platform/mac/WebCoreTextRenderer.mm:
   69640         (WebCoreDrawTextAtPoint):
   69641         (WebCoreTextFloatWidth):
   69642         * platform/win/PopupMenuWin.cpp:
   69643         (WebCore::PopupMenu::paint):
   69644         * platform/win/UniscribeController.cpp:
   69645         (WebCore::UniscribeController::UniscribeController):
   69646         (WebCore::UniscribeController::offsetForPosition):
   69647         (WebCore::UniscribeController::advance):
   69648         (WebCore::UniscribeController::itemizeShapeAndPlace):
   69649         (WebCore::UniscribeController::resetControlAndState):
   69650         (WebCore::UniscribeController::shapeAndPlaceItem):
   69651         * platform/win/UniscribeController.h:
   69652         * platform/win/WebCoreTextRenderer.cpp:
   69653         (WebCore::doDrawTextAtPoint):
   69654         * rendering/EllipsisBox.cpp:
   69655         (WebCore::EllipsisBox::paint):
   69656         * rendering/InlineTextBox.cpp:
   69657         (WebCore::InlineTextBox::selectionRect):
   69658         (WebCore::InlineTextBox::paint):
   69659         (WebCore::InlineTextBox::paintSelection):
   69660         (WebCore::InlineTextBox::paintCompositionBackground):
   69661         (WebCore::InlineTextBox::paintSpellingOrGrammarMarker):
   69662         (WebCore::InlineTextBox::paintTextMatchMarker):
   69663         (WebCore::InlineTextBox::offsetForPosition):
   69664         (WebCore::InlineTextBox::positionForOffset):
   69665         * rendering/RenderFileUploadControl.cpp:
   69666         (WebCore::RenderFileUploadControl::paintObject):
   69667         (WebCore::RenderFileUploadControl::calcPrefWidths):
   69668         * rendering/RenderImage.cpp:
   69669         * rendering/RenderListBox.cpp:
   69670         (WebCore::RenderListBox::updateFromElement):
   69671         (WebCore::RenderListBox::paintItemForeground):
   69672         * rendering/RenderMenuList.cpp:
   69673         (WebCore::RenderMenuList::updateOptionsWidth):
   69674         * rendering/RenderText.cpp:
   69675         (WebCore::RenderText::widthFromCache):
   69676         (WebCore::RenderText::calcPrefWidths):
   69677         (WebCore::RenderText::width):
   69678         * rendering/RenderText.h:
   69679         (WebCore::RenderText::allowTabs):
   69680         * rendering/RenderTextControl.cpp:
   69681         (WebCore::RenderTextControl::calcPrefWidths):
   69682         * rendering/SVGInlineTextBox.cpp:
   69683         (WebCore::SVGInlineTextBox::calculateGlyphWidth):
   69684         (WebCore::SVGInlineTextBox::paintCharacters):
   69685         (WebCore::SVGInlineTextBox::paintSelection):
   69686         * rendering/SVGRootInlineBox.cpp:
   69687         (WebCore::SVGRootInlineBoxPaintWalker::chunkPortionCallback):
   69688         (WebCore::cummulatedWidthOfInlineBoxCharacterRange):
   69689         (WebCore::svgTextRunForInlineTextBox):
   69690         * rendering/SVGRootInlineBox.h:
   69691 
   69692 2007-12-01  Adam Treat  <treat (a] kde.org>
   69693 
   69694         Reviewed by Simon.
   69695 
   69696         * Don't hide symbols when in Debug mode
   69697         * On Linux (glibc) provide a backtrace in the test output for debugging purposes
   69698 
   69699         * WebCore.pro:
   69700 
   69701 2007-11-30  Alp Toker  <alp (a] atoker.com>
   69702 
   69703         Reviewed by Adam Roben.
   69704 
   69705         http://bugs.webkit.org/show_bug.cgi?id=15691
   69706         [GTK] Public API does not follow GTK+ conventions
   69707 
   69708         Refactor the WebKit/GTK+ public API. Changes:
   69709           WebKitPage -> WebKitWebView
   69710           WebKitFrame -> WebKitWebFrame
   69711 
   69712         Public API source and header names have been updated to mirror the API
   69713         changes.
   69714 
   69715         The API is now kept in WebKit/gtk/WebView to match other ports in the
   69716         same class such as Mac and Win.
   69717 
   69718         * WebCore.pro:
   69719 
   69720 2007-11-30   Anders Carlsson  <andersca (a] apple.com>
   69721 
   69722         Add platform/text project group.
   69723         
   69724         * WebCore.vcproj/WebCore.vcproj:
   69725 
   69726 2007-11-30   Anders Carlsson  <andersca (a] apple.com>
   69727 
   69728         Remove extra </Filter> tag which prevented the vcproj from being parsed correctly.
   69729         
   69730         * WebCore.vcproj/WebCore.vcproj:
   69731 
   69732 2007-11-30  Nikolas Zimmermann  <zimmermann (a] kde.org>
   69733 
   69734         Not reviewed. Try to fix qt/gtk build.
   69735 
   69736         * WebCore.pro:
   69737 
   69738 2007-11-30  Nikolas Zimmermann  <zimmermann (a] kde.org>
   69739 
   69740         Rubber stamped by Eric.
   69741 
   69742         Final integration of ksvg2 in WebKit. Moving ksvg2/ to svg/ and killing all it's subdirectories,
   69743         by moving the files into approriate locations (css, rendering, ...) - as dicsussed on the
   69744         mailing list and on IRC with David/Darin & Eric.
   69745 
   69746         Updated all build files - though I can't guarantee it builds on non-mac. Need buildbot to verify.
   69747 
   69748         * DerivedSources.make:
   69749         * WebCore.pro:
   69750         * WebCore.vcproj/WebCore.vcproj:
   69751         * WebCore.xcodeproj/project.pbxproj:
   69752         * bindings/js/JSSVGLazyEventListener.cpp: Copied from ksvg2/events/JSSVGLazyEventListener.cpp.
   69753         * bindings/js/JSSVGLazyEventListener.h: Copied from ksvg2/events/JSSVGLazyEventListener.h.
   69754         * css/SVGCSSComputedStyleDeclaration.cpp: Copied from ksvg2/css/SVGCSSComputedStyleDeclaration.cpp.
   69755         * css/SVGCSSParser.cpp: Copied from ksvg2/css/SVGCSSParser.cpp.
   69756         * css/SVGCSSPropertyNames.in: Copied from ksvg2/css/SVGCSSPropertyNames.in.
   69757         * css/SVGCSSStyleSelector.cpp: Copied from ksvg2/css/SVGCSSStyleSelector.cpp.
   69758         * css/SVGCSSValueKeywords.in: Copied from ksvg2/css/SVGCSSValueKeywords.in.
   69759         * dom/make_names.pl: Copied from ksvg2/scripts/make_names.pl.
   69760         * ksvg2/css/SVGCSSComputedStyleDeclaration.cpp: Removed.
   69761         * ksvg2/css/SVGCSSParser.cpp: Removed.
   69762         * ksvg2/css/SVGCSSPropertyNames.in: Removed.
   69763         * ksvg2/css/SVGCSSStyleSelector.cpp: Removed.
   69764         * ksvg2/css/SVGCSSValueKeywords.in: Removed.
   69765         * ksvg2/css/SVGRenderStyle.cpp: Removed.
   69766         * ksvg2/css/SVGRenderStyle.h: Removed.
   69767         * ksvg2/css/SVGRenderStyleDefs.cpp: Removed.
   69768         * ksvg2/css/SVGRenderStyleDefs.h: Removed.
   69769         * ksvg2/events/JSSVGLazyEventListener.cpp: Removed.
   69770         * ksvg2/events/JSSVGLazyEventListener.h: Removed.
   69771         * ksvg2/events/SVGZoomEvent.cpp: Removed.
   69772         * ksvg2/events/SVGZoomEvent.h: Removed.
   69773         * ksvg2/events/SVGZoomEvent.idl: Removed.
   69774         * ksvg2/misc/PointerEventsHitRules.cpp: Removed.
   69775         * ksvg2/misc/PointerEventsHitRules.h: Removed.
   69776         * ksvg2/misc/SVGDocumentExtensions.cpp: Removed.
   69777         * ksvg2/misc/SVGDocumentExtensions.h: Removed.
   69778         * ksvg2/misc/SVGImageLoader.cpp: Removed.
   69779         * ksvg2/misc/SVGImageLoader.h: Removed.
   69780         * ksvg2/misc/SVGTimer.cpp: Removed.
   69781         * ksvg2/misc/SVGTimer.h: Removed.
   69782         * ksvg2/misc/TimeScheduler.cpp: Removed.
   69783         * ksvg2/misc/TimeScheduler.h: Removed.
   69784         * ksvg2/misc/xlinkattrs.in: Removed.
   69785         * ksvg2/scripts/make_names.pl: Removed.
   69786         * ksvg2/svg: Removed.
   69787         * ksvg2/svg/ColorDistance.cpp: Removed.
   69788         * ksvg2/svg/ColorDistance.h: Removed.
   69789         * ksvg2/svg/GradientAttributes.h: Removed.
   69790         * ksvg2/svg/LinearGradientAttributes.h: Removed.
   69791         * ksvg2/svg/PatternAttributes.h: Removed.
   69792         * ksvg2/svg/RadialGradientAttributes.h: Removed.
   69793         * ksvg2/svg/SVGAElement.cpp: Removed.
   69794         * ksvg2/svg/SVGAElement.h: Removed.
   69795         * ksvg2/svg/SVGAElement.idl: Removed.
   69796         * ksvg2/svg/SVGAngle.cpp: Removed.
   69797         * ksvg2/svg/SVGAngle.h: Removed.
   69798         * ksvg2/svg/SVGAngle.idl: Removed.
   69799         * ksvg2/svg/SVGAnimateColorElement.cpp: Removed.
   69800         * ksvg2/svg/SVGAnimateColorElement.h: Removed.
   69801         * ksvg2/svg/SVGAnimateColorElement.idl: Removed.
   69802         * ksvg2/svg/SVGAnimateElement.cpp: Removed.
   69803         * ksvg2/svg/SVGAnimateElement.h: Removed.
   69804         * ksvg2/svg/SVGAnimateElement.idl: Removed.
   69805         * ksvg2/svg/SVGAnimateMotionElement.cpp: Removed.
   69806         * ksvg2/svg/SVGAnimateMotionElement.h: Removed.
   69807         * ksvg2/svg/SVGAnimateTransformElement.cpp: Removed.
   69808         * ksvg2/svg/SVGAnimateTransformElement.h: Removed.
   69809         * ksvg2/svg/SVGAnimateTransformElement.idl: Removed.
   69810         * ksvg2/svg/SVGAnimatedAngle.idl: Removed.
   69811         * ksvg2/svg/SVGAnimatedBoolean.idl: Removed.
   69812         * ksvg2/svg/SVGAnimatedEnumeration.idl: Removed.
   69813         * ksvg2/svg/SVGAnimatedInteger.idl: Removed.
   69814         * ksvg2/svg/SVGAnimatedLength.idl: Removed.
   69815         * ksvg2/svg/SVGAnimatedLengthList.idl: Removed.
   69816         * ksvg2/svg/SVGAnimatedNumber.idl: Removed.
   69817         * ksvg2/svg/SVGAnimatedNumberList.idl: Removed.
   69818         * ksvg2/svg/SVGAnimatedPathData.cpp: Removed.
   69819         * ksvg2/svg/SVGAnimatedPathData.h: Removed.
   69820         * ksvg2/svg/SVGAnimatedPathData.idl: Removed.
   69821         * ksvg2/svg/SVGAnimatedPoints.cpp: Removed.
   69822         * ksvg2/svg/SVGAnimatedPoints.h: Removed.
   69823         * ksvg2/svg/SVGAnimatedPoints.idl: Removed.
   69824         * ksvg2/svg/SVGAnimatedPreserveAspectRatio.idl: Removed.
   69825         * ksvg2/svg/SVGAnimatedRect.idl: Removed.
   69826         * ksvg2/svg/SVGAnimatedString.idl: Removed.
   69827         * ksvg2/svg/SVGAnimatedTemplate.h: Removed.
   69828         * ksvg2/svg/SVGAnimatedTransformList.idl: Removed.
   69829         * ksvg2/svg/SVGAnimationElement.cpp: Removed.
   69830         * ksvg2/svg/SVGAnimationElement.h: Removed.
   69831         * ksvg2/svg/SVGAnimationElement.idl: Removed.
   69832         * ksvg2/svg/SVGCircleElement.cpp: Removed.
   69833         * ksvg2/svg/SVGCircleElement.h: Removed.
   69834         * ksvg2/svg/SVGCircleElement.idl: Removed.
   69835         * ksvg2/svg/SVGClipPathElement.cpp: Removed.
   69836         * ksvg2/svg/SVGClipPathElement.h: Removed.
   69837         * ksvg2/svg/SVGClipPathElement.idl: Removed.
   69838         * ksvg2/svg/SVGColor.cpp: Removed.
   69839         * ksvg2/svg/SVGColor.h: Removed.
   69840         * ksvg2/svg/SVGColor.idl: Removed.
   69841         * ksvg2/svg/SVGComponentTransferFunctionElement.cpp: Removed.
   69842         * ksvg2/svg/SVGComponentTransferFunctionElement.h: Removed.
   69843         * ksvg2/svg/SVGComponentTransferFunctionElement.idl: Removed.
   69844         * ksvg2/svg/SVGCursorElement.cpp: Removed.
   69845         * ksvg2/svg/SVGCursorElement.h: Removed.
   69846         * ksvg2/svg/SVGCursorElement.idl: Removed.
   69847         * ksvg2/svg/SVGDefinitionSrcElement.cpp: Removed.
   69848         * ksvg2/svg/SVGDefinitionSrcElement.h: Removed.
   69849         * ksvg2/svg/SVGDefinitionSrcElement.idl: Removed.
   69850         * ksvg2/svg/SVGDefsElement.cpp: Removed.
   69851         * ksvg2/svg/SVGDefsElement.h: Removed.
   69852         * ksvg2/svg/SVGDefsElement.idl: Removed.
   69853         * ksvg2/svg/SVGDescElement.cpp: Removed.
   69854         * ksvg2/svg/SVGDescElement.h: Removed.
   69855         * ksvg2/svg/SVGDescElement.idl: Removed.
   69856         * ksvg2/svg/SVGDocument.cpp: Removed.
   69857         * ksvg2/svg/SVGDocument.h: Removed.
   69858         * ksvg2/svg/SVGDocument.idl: Removed.
   69859         * ksvg2/svg/SVGElement.cpp: Removed.
   69860         * ksvg2/svg/SVGElement.h: Removed.
   69861         * ksvg2/svg/SVGElement.idl: Removed.
   69862         * ksvg2/svg/SVGElementInstance.cpp: Removed.
   69863         * ksvg2/svg/SVGElementInstance.h: Removed.
   69864         * ksvg2/svg/SVGElementInstance.idl: Removed.
   69865         * ksvg2/svg/SVGElementInstanceList.cpp: Removed.
   69866         * ksvg2/svg/SVGElementInstanceList.h: Removed.
   69867         * ksvg2/svg/SVGElementInstanceList.idl: Removed.
   69868         * ksvg2/svg/SVGEllipseElement.cpp: Removed.
   69869         * ksvg2/svg/SVGEllipseElement.h: Removed.
   69870         * ksvg2/svg/SVGEllipseElement.idl: Removed.
   69871         * ksvg2/svg/SVGException.h: Removed.
   69872         * ksvg2/svg/SVGException.idl: Removed.
   69873         * ksvg2/svg/SVGExternalResourcesRequired.cpp: Removed.
   69874         * ksvg2/svg/SVGExternalResourcesRequired.h: Removed.
   69875         * ksvg2/svg/SVGExternalResourcesRequired.idl: Removed.
   69876         * ksvg2/svg/SVGFEBlendElement.cpp: Removed.
   69877         * ksvg2/svg/SVGFEBlendElement.h: Removed.
   69878         * ksvg2/svg/SVGFEBlendElement.idl: Removed.
   69879         * ksvg2/svg/SVGFEColorMatrixElement.cpp: Removed.
   69880         * ksvg2/svg/SVGFEColorMatrixElement.h: Removed.
   69881         * ksvg2/svg/SVGFEColorMatrixElement.idl: Removed.
   69882         * ksvg2/svg/SVGFEComponentTransferElement.cpp: Removed.
   69883         * ksvg2/svg/SVGFEComponentTransferElement.h: Removed.
   69884         * ksvg2/svg/SVGFEComponentTransferElement.idl: Removed.
   69885         * ksvg2/svg/SVGFECompositeElement.cpp: Removed.
   69886         * ksvg2/svg/SVGFECompositeElement.h: Removed.
   69887         * ksvg2/svg/SVGFECompositeElement.idl: Removed.
   69888         * ksvg2/svg/SVGFEDiffuseLightingElement.cpp: Removed.
   69889         * ksvg2/svg/SVGFEDiffuseLightingElement.h: Removed.
   69890         * ksvg2/svg/SVGFEDiffuseLightingElement.idl: Removed.
   69891         * ksvg2/svg/SVGFEDisplacementMapElement.cpp: Removed.
   69892         * ksvg2/svg/SVGFEDisplacementMapElement.h: Removed.
   69893         * ksvg2/svg/SVGFEDisplacementMapElement.idl: Removed.
   69894         * ksvg2/svg/SVGFEDistantLightElement.cpp: Removed.
   69895         * ksvg2/svg/SVGFEDistantLightElement.h: Removed.
   69896         * ksvg2/svg/SVGFEDistantLightElement.idl: Removed.
   69897         * ksvg2/svg/SVGFEFloodElement.cpp: Removed.
   69898         * ksvg2/svg/SVGFEFloodElement.h: Removed.
   69899         * ksvg2/svg/SVGFEFloodElement.idl: Removed.
   69900         * ksvg2/svg/SVGFEFuncAElement.cpp: Removed.
   69901         * ksvg2/svg/SVGFEFuncAElement.h: Removed.
   69902         * ksvg2/svg/SVGFEFuncAElement.idl: Removed.
   69903         * ksvg2/svg/SVGFEFuncBElement.cpp: Removed.
   69904         * ksvg2/svg/SVGFEFuncBElement.h: Removed.
   69905         * ksvg2/svg/SVGFEFuncBElement.idl: Removed.
   69906         * ksvg2/svg/SVGFEFuncGElement.cpp: Removed.
   69907         * ksvg2/svg/SVGFEFuncGElement.h: Removed.
   69908         * ksvg2/svg/SVGFEFuncGElement.idl: Removed.
   69909         * ksvg2/svg/SVGFEFuncRElement.cpp: Removed.
   69910         * ksvg2/svg/SVGFEFuncRElement.h: Removed.
   69911         * ksvg2/svg/SVGFEFuncRElement.idl: Removed.
   69912         * ksvg2/svg/SVGFEGaussianBlurElement.cpp: Removed.
   69913         * ksvg2/svg/SVGFEGaussianBlurElement.h: Removed.
   69914         * ksvg2/svg/SVGFEGaussianBlurElement.idl: Removed.
   69915         * ksvg2/svg/SVGFEImageElement.cpp: Removed.
   69916         * ksvg2/svg/SVGFEImageElement.h: Removed.
   69917         * ksvg2/svg/SVGFEImageElement.idl: Removed.
   69918         * ksvg2/svg/SVGFELightElement.cpp: Removed.
   69919         * ksvg2/svg/SVGFELightElement.h: Removed.
   69920         * ksvg2/svg/SVGFEMergeElement.cpp: Removed.
   69921         * ksvg2/svg/SVGFEMergeElement.h: Removed.
   69922         * ksvg2/svg/SVGFEMergeElement.idl: Removed.
   69923         * ksvg2/svg/SVGFEMergeNodeElement.cpp: Removed.
   69924         * ksvg2/svg/SVGFEMergeNodeElement.h: Removed.
   69925         * ksvg2/svg/SVGFEMergeNodeElement.idl: Removed.
   69926         * ksvg2/svg/SVGFEOffsetElement.cpp: Removed.
   69927         * ksvg2/svg/SVGFEOffsetElement.h: Removed.
   69928         * ksvg2/svg/SVGFEOffsetElement.idl: Removed.
   69929         * ksvg2/svg/SVGFEPointLightElement.cpp: Removed.
   69930         * ksvg2/svg/SVGFEPointLightElement.h: Removed.
   69931         * ksvg2/svg/SVGFEPointLightElement.idl: Removed.
   69932         * ksvg2/svg/SVGFESpecularLightingElement.cpp: Removed.
   69933         * ksvg2/svg/SVGFESpecularLightingElement.h: Removed.
   69934         * ksvg2/svg/SVGFESpecularLightingElement.idl: Removed.
   69935         * ksvg2/svg/SVGFESpotLightElement.cpp: Removed.
   69936         * ksvg2/svg/SVGFESpotLightElement.h: Removed.
   69937         * ksvg2/svg/SVGFESpotLightElement.idl: Removed.
   69938         * ksvg2/svg/SVGFETileElement.cpp: Removed.
   69939         * ksvg2/svg/SVGFETileElement.h: Removed.
   69940         * ksvg2/svg/SVGFETileElement.idl: Removed.
   69941         * ksvg2/svg/SVGFETurbulenceElement.cpp: Removed.
   69942         * ksvg2/svg/SVGFETurbulenceElement.h: Removed.
   69943         * ksvg2/svg/SVGFETurbulenceElement.idl: Removed.
   69944         * ksvg2/svg/SVGFilterElement.cpp: Removed.
   69945         * ksvg2/svg/SVGFilterElement.h: Removed.
   69946         * ksvg2/svg/SVGFilterElement.idl: Removed.
   69947         * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.cpp: Removed.
   69948         * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.h: Removed.
   69949         * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.idl: Removed.
   69950         * ksvg2/svg/SVGFitToViewBox.cpp: Removed.
   69951         * ksvg2/svg/SVGFitToViewBox.h: Removed.
   69952         * ksvg2/svg/SVGFitToViewBox.idl: Removed.
   69953         * ksvg2/svg/SVGFontFaceElement.cpp: Removed.
   69954         * ksvg2/svg/SVGFontFaceElement.h: Removed.
   69955         * ksvg2/svg/SVGFontFaceElement.idl: Removed.
   69956         * ksvg2/svg/SVGFontFaceFormatElement.cpp: Removed.
   69957         * ksvg2/svg/SVGFontFaceFormatElement.h: Removed.
   69958         * ksvg2/svg/SVGFontFaceFormatElement.idl: Removed.
   69959         * ksvg2/svg/SVGFontFaceNameElement.cpp: Removed.
   69960         * ksvg2/svg/SVGFontFaceNameElement.h: Removed.
   69961         * ksvg2/svg/SVGFontFaceNameElement.idl: Removed.
   69962         * ksvg2/svg/SVGFontFaceSrcElement.cpp: Removed.
   69963         * ksvg2/svg/SVGFontFaceSrcElement.h: Removed.
   69964         * ksvg2/svg/SVGFontFaceSrcElement.idl: Removed.
   69965         * ksvg2/svg/SVGFontFaceUriElement.cpp: Removed.
   69966         * ksvg2/svg/SVGFontFaceUriElement.h: Removed.
   69967         * ksvg2/svg/SVGFontFaceUriElement.idl: Removed.
   69968         * ksvg2/svg/SVGForeignObjectElement.cpp: Removed.
   69969         * ksvg2/svg/SVGForeignObjectElement.h: Removed.
   69970         * ksvg2/svg/SVGForeignObjectElement.idl: Removed.
   69971         * ksvg2/svg/SVGGElement.cpp: Removed.
   69972         * ksvg2/svg/SVGGElement.h: Removed.
   69973         * ksvg2/svg/SVGGElement.idl: Removed.
   69974         * ksvg2/svg/SVGGradientElement.cpp: Removed.
   69975         * ksvg2/svg/SVGGradientElement.h: Removed.
   69976         * ksvg2/svg/SVGGradientElement.idl: Removed.
   69977         * ksvg2/svg/SVGImageElement.cpp: Removed.
   69978         * ksvg2/svg/SVGImageElement.h: Removed.
   69979         * ksvg2/svg/SVGImageElement.idl: Removed.
   69980         * ksvg2/svg/SVGLangSpace.cpp: Removed.
   69981         * ksvg2/svg/SVGLangSpace.h: Removed.
   69982         * ksvg2/svg/SVGLangSpace.idl: Removed.
   69983         * ksvg2/svg/SVGLength.cpp: Removed.
   69984         * ksvg2/svg/SVGLength.h: Removed.
   69985         * ksvg2/svg/SVGLength.idl: Removed.
   69986         * ksvg2/svg/SVGLengthList.cpp: Removed.
   69987         * ksvg2/svg/SVGLengthList.h: Removed.
   69988         * ksvg2/svg/SVGLengthList.idl: Removed.
   69989         * ksvg2/svg/SVGLineElement.cpp: Removed.
   69990         * ksvg2/svg/SVGLineElement.h: Removed.
   69991         * ksvg2/svg/SVGLineElement.idl: Removed.
   69992         * ksvg2/svg/SVGLinearGradientElement.cpp: Removed.
   69993         * ksvg2/svg/SVGLinearGradientElement.h: Removed.
   69994         * ksvg2/svg/SVGLinearGradientElement.idl: Removed.
   69995         * ksvg2/svg/SVGList.h: Removed.
   69996         * ksvg2/svg/SVGListTraits.h: Removed.
   69997         * ksvg2/svg/SVGLocatable.cpp: Removed.
   69998         * ksvg2/svg/SVGLocatable.h: Removed.
   69999         * ksvg2/svg/SVGLocatable.idl: Removed.
   70000         * ksvg2/svg/SVGMPathElement.cpp: Removed.
   70001         * ksvg2/svg/SVGMPathElement.h: Removed.
   70002         * ksvg2/svg/SVGMarkerElement.cpp: Removed.
   70003         * ksvg2/svg/SVGMarkerElement.h: Removed.
   70004         * ksvg2/svg/SVGMarkerElement.idl: Removed.
   70005         * ksvg2/svg/SVGMaskElement.cpp: Removed.
   70006         * ksvg2/svg/SVGMaskElement.h: Removed.
   70007         * ksvg2/svg/SVGMaskElement.idl: Removed.
   70008         * ksvg2/svg/SVGMatrix.idl: Removed.
   70009         * ksvg2/svg/SVGMetadataElement.cpp: Removed.
   70010         * ksvg2/svg/SVGMetadataElement.h: Removed.
   70011         * ksvg2/svg/SVGMetadataElement.idl: Removed.
   70012         * ksvg2/svg/SVGNumber.idl: Removed.
   70013         * ksvg2/svg/SVGNumberList.cpp: Removed.
   70014         * ksvg2/svg/SVGNumberList.h: Removed.
   70015         * ksvg2/svg/SVGNumberList.idl: Removed.
   70016         * ksvg2/svg/SVGPaint.cpp: Removed.
   70017         * ksvg2/svg/SVGPaint.h: Removed.
   70018         * ksvg2/svg/SVGPaint.idl: Removed.
   70019         * ksvg2/svg/SVGParserUtilities.cpp: Removed.
   70020         * ksvg2/svg/SVGParserUtilities.h: Removed.
   70021         * ksvg2/svg/SVGPathElement.cpp: Removed.
   70022         * ksvg2/svg/SVGPathElement.h: Removed.
   70023         * ksvg2/svg/SVGPathElement.idl: Removed.
   70024         * ksvg2/svg/SVGPathSeg.h: Removed.
   70025         * ksvg2/svg/SVGPathSeg.idl: Removed.
   70026         * ksvg2/svg/SVGPathSegArc.cpp: Removed.
   70027         * ksvg2/svg/SVGPathSegArc.h: Removed.
   70028         * ksvg2/svg/SVGPathSegArcAbs.idl: Removed.
   70029         * ksvg2/svg/SVGPathSegArcRel.idl: Removed.
   70030         * ksvg2/svg/SVGPathSegClosePath.cpp: Removed.
   70031         * ksvg2/svg/SVGPathSegClosePath.h: Removed.
   70032         * ksvg2/svg/SVGPathSegClosePath.idl: Removed.
   70033         * ksvg2/svg/SVGPathSegCurvetoCubic.cpp: Removed.
   70034         * ksvg2/svg/SVGPathSegCurvetoCubic.h: Removed.
   70035         * ksvg2/svg/SVGPathSegCurvetoCubicAbs.idl: Removed.
   70036         * ksvg2/svg/SVGPathSegCurvetoCubicRel.idl: Removed.
   70037         * ksvg2/svg/SVGPathSegCurvetoCubicSmooth.cpp: Removed.
   70038         * ksvg2/svg/SVGPathSegCurvetoCubicSmooth.h: Removed.
   70039         * ksvg2/svg/SVGPathSegCurvetoCubicSmoothAbs.idl: Removed.
   70040         * ksvg2/svg/SVGPathSegCurvetoCubicSmoothRel.idl: Removed.
   70041         * ksvg2/svg/SVGPathSegCurvetoQuadratic.cpp: Removed.
   70042         * ksvg2/svg/SVGPathSegCurvetoQuadratic.h: Removed.
   70043         * ksvg2/svg/SVGPathSegCurvetoQuadraticAbs.idl: Removed.
   70044         * ksvg2/svg/SVGPathSegCurvetoQuadraticRel.idl: Removed.
   70045         * ksvg2/svg/SVGPathSegCurvetoQuadraticSmooth.cpp: Removed.
   70046         * ksvg2/svg/SVGPathSegCurvetoQuadraticSmooth.h: Removed.
   70047         * ksvg2/svg/SVGPathSegCurvetoQuadraticSmoothAbs.idl: Removed.
   70048         * ksvg2/svg/SVGPathSegCurvetoQuadraticSmoothRel.idl: Removed.
   70049         * ksvg2/svg/SVGPathSegLineto.cpp: Removed.
   70050         * ksvg2/svg/SVGPathSegLineto.h: Removed.
   70051         * ksvg2/svg/SVGPathSegLinetoAbs.idl: Removed.
   70052         * ksvg2/svg/SVGPathSegLinetoHorizontal.cpp: Removed.
   70053         * ksvg2/svg/SVGPathSegLinetoHorizontal.h: Removed.
   70054         * ksvg2/svg/SVGPathSegLinetoHorizontalAbs.idl: Removed.
   70055         * ksvg2/svg/SVGPathSegLinetoHorizontalRel.idl: Removed.
   70056         * ksvg2/svg/SVGPathSegLinetoRel.idl: Removed.
   70057         * ksvg2/svg/SVGPathSegLinetoVertical.cpp: Removed.
   70058         * ksvg2/svg/SVGPathSegLinetoVertical.h: Removed.
   70059         * ksvg2/svg/SVGPathSegLinetoVerticalAbs.idl: Removed.
   70060         * ksvg2/svg/SVGPathSegLinetoVerticalRel.idl: Removed.
   70061         * ksvg2/svg/SVGPathSegList.cpp: Removed.
   70062         * ksvg2/svg/SVGPathSegList.h: Removed.
   70063         * ksvg2/svg/SVGPathSegList.idl: Removed.
   70064         * ksvg2/svg/SVGPathSegMoveto.cpp: Removed.
   70065         * ksvg2/svg/SVGPathSegMoveto.h: Removed.
   70066         * ksvg2/svg/SVGPathSegMovetoAbs.idl: Removed.
   70067         * ksvg2/svg/SVGPathSegMovetoRel.idl: Removed.
   70068         * ksvg2/svg/SVGPatternElement.cpp: Removed.
   70069         * ksvg2/svg/SVGPatternElement.h: Removed.
   70070         * ksvg2/svg/SVGPatternElement.idl: Removed.
   70071         * ksvg2/svg/SVGPoint.idl: Removed.
   70072         * ksvg2/svg/SVGPointList.cpp: Removed.
   70073         * ksvg2/svg/SVGPointList.h: Removed.
   70074         * ksvg2/svg/SVGPointList.idl: Removed.
   70075         * ksvg2/svg/SVGPolyElement.cpp: Removed.
   70076         * ksvg2/svg/SVGPolyElement.h: Removed.
   70077         * ksvg2/svg/SVGPolygonElement.cpp: Removed.
   70078         * ksvg2/svg/SVGPolygonElement.h: Removed.
   70079         * ksvg2/svg/SVGPolygonElement.idl: Removed.
   70080         * ksvg2/svg/SVGPolylineElement.cpp: Removed.
   70081         * ksvg2/svg/SVGPolylineElement.h: Removed.
   70082         * ksvg2/svg/SVGPolylineElement.idl: Removed.
   70083         * ksvg2/svg/SVGPreserveAspectRatio.cpp: Removed.
   70084         * ksvg2/svg/SVGPreserveAspectRatio.h: Removed.
   70085         * ksvg2/svg/SVGPreserveAspectRatio.idl: Removed.
   70086         * ksvg2/svg/SVGRadialGradientElement.cpp: Removed.
   70087         * ksvg2/svg/SVGRadialGradientElement.h: Removed.
   70088         * ksvg2/svg/SVGRadialGradientElement.idl: Removed.
   70089         * ksvg2/svg/SVGRect.idl: Removed.
   70090         * ksvg2/svg/SVGRectElement.cpp: Removed.
   70091         * ksvg2/svg/SVGRectElement.h: Removed.
   70092         * ksvg2/svg/SVGRectElement.idl: Removed.
   70093         * ksvg2/svg/SVGRenderingIntent.h: Removed.
   70094         * ksvg2/svg/SVGRenderingIntent.idl: Removed.
   70095         * ksvg2/svg/SVGSVGElement.cpp: Removed.
   70096         * ksvg2/svg/SVGSVGElement.h: Removed.
   70097         * ksvg2/svg/SVGSVGElement.idl: Removed.
   70098         * ksvg2/svg/SVGScriptElement.cpp: Removed.
   70099         * ksvg2/svg/SVGScriptElement.h: Removed.
   70100         * ksvg2/svg/SVGScriptElement.idl: Removed.
   70101         * ksvg2/svg/SVGSetElement.cpp: Removed.
   70102         * ksvg2/svg/SVGSetElement.h: Removed.
   70103         * ksvg2/svg/SVGSetElement.idl: Removed.
   70104         * ksvg2/svg/SVGStopElement.cpp: Removed.
   70105         * ksvg2/svg/SVGStopElement.h: Removed.
   70106         * ksvg2/svg/SVGStopElement.idl: Removed.
   70107         * ksvg2/svg/SVGStringList.cpp: Removed.
   70108         * ksvg2/svg/SVGStringList.h: Removed.
   70109         * ksvg2/svg/SVGStringList.idl: Removed.
   70110         * ksvg2/svg/SVGStylable.cpp: Removed.
   70111         * ksvg2/svg/SVGStylable.h: Removed.
   70112         * ksvg2/svg/SVGStylable.idl: Removed.
   70113         * ksvg2/svg/SVGStyleElement.cpp: Removed.
   70114         * ksvg2/svg/SVGStyleElement.h: Removed.
   70115         * ksvg2/svg/SVGStyleElement.idl: Removed.
   70116         * ksvg2/svg/SVGStyledElement.cpp: Removed.
   70117         * ksvg2/svg/SVGStyledElement.h: Removed.
   70118         * ksvg2/svg/SVGStyledLocatableElement.cpp: Removed.
   70119         * ksvg2/svg/SVGStyledLocatableElement.h: Removed.
   70120         * ksvg2/svg/SVGStyledTransformableElement.cpp: Removed.
   70121         * ksvg2/svg/SVGStyledTransformableElement.h: Removed.
   70122         * ksvg2/svg/SVGSwitchElement.cpp: Removed.
   70123         * ksvg2/svg/SVGSwitchElement.h: Removed.
   70124         * ksvg2/svg/SVGSwitchElement.idl: Removed.
   70125         * ksvg2/svg/SVGSymbolElement.cpp: Removed.
   70126         * ksvg2/svg/SVGSymbolElement.h: Removed.
   70127         * ksvg2/svg/SVGSymbolElement.idl: Removed.
   70128         * ksvg2/svg/SVGTRefElement.cpp: Removed.
   70129         * ksvg2/svg/SVGTRefElement.h: Removed.
   70130         * ksvg2/svg/SVGTRefElement.idl: Removed.
   70131         * ksvg2/svg/SVGTSpanElement.cpp: Removed.
   70132         * ksvg2/svg/SVGTSpanElement.h: Removed.
   70133         * ksvg2/svg/SVGTSpanElement.idl: Removed.
   70134         * ksvg2/svg/SVGTests.cpp: Removed.
   70135         * ksvg2/svg/SVGTests.h: Removed.
   70136         * ksvg2/svg/SVGTests.idl: Removed.
   70137         * ksvg2/svg/SVGTextContentElement.cpp: Removed.
   70138         * ksvg2/svg/SVGTextContentElement.h: Removed.
   70139         * ksvg2/svg/SVGTextContentElement.idl: Removed.
   70140         * ksvg2/svg/SVGTextElement.cpp: Removed.
   70141         * ksvg2/svg/SVGTextElement.h: Removed.
   70142         * ksvg2/svg/SVGTextElement.idl: Removed.
   70143         * ksvg2/svg/SVGTextPathElement.cpp: Removed.
   70144         * ksvg2/svg/SVGTextPathElement.h: Removed.
   70145         * ksvg2/svg/SVGTextPathElement.idl: Removed.
   70146         * ksvg2/svg/SVGTextPositioningElement.cpp: Removed.
   70147         * ksvg2/svg/SVGTextPositioningElement.h: Removed.
   70148         * ksvg2/svg/SVGTextPositioningElement.idl: Removed.
   70149         * ksvg2/svg/SVGTitleElement.cpp: Removed.
   70150         * ksvg2/svg/SVGTitleElement.h: Removed.
   70151         * ksvg2/svg/SVGTitleElement.idl: Removed.
   70152         * ksvg2/svg/SVGTransform.cpp: Removed.
   70153         * ksvg2/svg/SVGTransform.h: Removed.
   70154         * ksvg2/svg/SVGTransform.idl: Removed.
   70155         * ksvg2/svg/SVGTransformDistance.cpp: Removed.
   70156         * ksvg2/svg/SVGTransformDistance.h: Removed.
   70157         * ksvg2/svg/SVGTransformList.cpp: Removed.
   70158         * ksvg2/svg/SVGTransformList.h: Removed.
   70159         * ksvg2/svg/SVGTransformList.idl: Removed.
   70160         * ksvg2/svg/SVGTransformable.cpp: Removed.
   70161         * ksvg2/svg/SVGTransformable.h: Removed.
   70162         * ksvg2/svg/SVGTransformable.idl: Removed.
   70163         * ksvg2/svg/SVGURIReference.cpp: Removed.
   70164         * ksvg2/svg/SVGURIReference.h: Removed.
   70165         * ksvg2/svg/SVGURIReference.idl: Removed.
   70166         * ksvg2/svg/SVGUnitTypes.h: Removed.
   70167         * ksvg2/svg/SVGUnitTypes.idl: Removed.
   70168         * ksvg2/svg/SVGUseElement.cpp: Removed.
   70169         * ksvg2/svg/SVGUseElement.h: Removed.
   70170         * ksvg2/svg/SVGUseElement.idl: Removed.
   70171         * ksvg2/svg/SVGViewElement.cpp: Removed.
   70172         * ksvg2/svg/SVGViewElement.h: Removed.
   70173         * ksvg2/svg/SVGViewElement.idl: Removed.
   70174         * ksvg2/svg/SVGViewSpec.cpp: Removed.
   70175         * ksvg2/svg/SVGViewSpec.h: Removed.
   70176         * ksvg2/svg/SVGViewSpec.idl: Removed.
   70177         * ksvg2/svg/SVGZoomAndPan.cpp: Removed.
   70178         * ksvg2/svg/SVGZoomAndPan.h: Removed.
   70179         * ksvg2/svg/SVGZoomAndPan.idl: Removed.
   70180         * ksvg2/svg/svgattrs.in: Removed.
   70181         * ksvg2/svg/svgtags.in: Removed.
   70182         * rendering/PointerEventsHitRules.cpp: Copied from ksvg2/misc/PointerEventsHitRules.cpp.
   70183         * rendering/PointerEventsHitRules.h: Copied from ksvg2/misc/PointerEventsHitRules.h.
   70184         * rendering/SVGRenderStyle.cpp: Copied from ksvg2/css/SVGRenderStyle.cpp.
   70185         * rendering/SVGRenderStyle.h: Copied from ksvg2/css/SVGRenderStyle.h.
   70186         * rendering/SVGRenderStyleDefs.cpp: Copied from ksvg2/css/SVGRenderStyleDefs.cpp.
   70187         * rendering/SVGRenderStyleDefs.h: Copied from ksvg2/css/SVGRenderStyleDefs.h.
   70188         * svg: Copied from ksvg2/svg.
   70189         * svg/SVGDocumentExtensions.cpp: Copied from ksvg2/misc/SVGDocumentExtensions.cpp.
   70190         * svg/SVGDocumentExtensions.h: Copied from ksvg2/misc/SVGDocumentExtensions.h.
   70191         * svg/SVGImageLoader.cpp: Copied from ksvg2/misc/SVGImageLoader.cpp.
   70192         * svg/SVGImageLoader.h: Copied from ksvg2/misc/SVGImageLoader.h.
   70193         * svg/SVGTimer.cpp: Copied from ksvg2/misc/SVGTimer.cpp.
   70194         * svg/SVGTimer.h: Copied from ksvg2/misc/SVGTimer.h.
   70195         * svg/SVGZoomEvent.cpp: Copied from ksvg2/events/SVGZoomEvent.cpp.
   70196         * svg/SVGZoomEvent.h: Copied from ksvg2/events/SVGZoomEvent.h.
   70197         * svg/SVGZoomEvent.idl: Copied from ksvg2/events/SVGZoomEvent.idl.
   70198         * svg/TimeScheduler.cpp: Copied from ksvg2/misc/TimeScheduler.cpp.
   70199         * svg/TimeScheduler.h: Copied from ksvg2/misc/TimeScheduler.h.
   70200         * svg/xlinkattrs.in: Copied from ksvg2/misc/xlinkattrs.in.
   70201 
   70202 2007-11-30  Kevin Ollivier  <kevino (a] theolliviers.com>
   70203 
   70204         wx build fix. Add WebCore/platform/graphics/wx to includes.
   70205 
   70206         * webcore-wx.bkl:
   70207 
   70208 2007-11-30  Brady Eidson  <beidson (a] apple.com>
   70209 
   70210         Reviewed by Geoff
   70211 
   70212         Further hookup of Database API
   70213         With this change, any database operation that writes to the database (UPDATE, INSERT, CREATE, etc) will
   70214         result in a didModifyDatabase notification when the transaction is successfully committed
   70215 
   70216         * storage/DatabaseAuthorizer.cpp: Global rename of "m_lastActionIncreasedSize" to "m_lastActionChangedDatabase"
   70217         (WebCore::DatabaseAuthorizer::reset):
   70218         (WebCore::DatabaseAuthorizer::createTable):
   70219         (WebCore::DatabaseAuthorizer::allowAlterTable):
   70220         (WebCore::DatabaseAuthorizer::createIndex):
   70221         (WebCore::DatabaseAuthorizer::createTrigger):
   70222         (WebCore::DatabaseAuthorizer::createVTable):
   70223         (WebCore::DatabaseAuthorizer::allowInsert):
   70224         (WebCore::DatabaseAuthorizer::allowUpdate):
   70225         * storage/DatabaseAuthorizer.h:
   70226         (WebCore::DatabaseAuthorizer::lastActionChangedDatabase):
   70227 
   70228         * storage/DatabaseTracker.cpp:
   70229         (WebCore::DatabaseTracker::notifyDatabaseChanged): Added.  Allow external entities (SQLTransaction) to be able
   70230           to request a didModifyDatabase notification to the delegate
   70231         * storage/DatabaseTracker.h:
   70232 
   70233         * storage/SQLTransaction.cpp: Added m_modifiedDatabase flag which tracks if any statement over the course of 
   70234           a transaction resulted in a change to the database.
   70235         (WebCore::SQLTransaction::SQLTransaction):
   70236         (WebCore::SQLTransaction::runCurrentStatement): Set m_modifiedDatabase to true if the authorizer reports a mutation
   70237           statement occurred
   70238         (WebCore::SQLTransaction::postflightAndCommit): If the transaction successfully commits, call DatabaseTracker::notifyDatabaseChanged
   70239         (WebCore::SQLTransaction::cleanupAfterTransactionErrorCallback): Ditto
   70240         * storage/SQLTransaction.h:
   70241 
   70242 2007-11-30  Nikolas Zimmermann  <zimmermann (a] kde.org>
   70243 
   70244         Rubber stamped by David.
   70245 
   70246         Next round of moves - platform reorganization.
   70247         Move text/font/glyph related files from the individual port directories
   70248         into platform/text/<port> or platform/graphics/<port>.
   70249 
   70250         * DerivedSources.make:
   70251         * WebCore.pro:
   70252         * WebCore.vcproj/WebCore.vcproj:
   70253         * WebCore.xcodeproj/project.pbxproj:
   70254         * platform/cf/StringCF.cpp: Removed.
   70255         * platform/cf/StringImplCF.cpp: Removed.
   70256         * platform/graphics/gtk/FontCacheGtk.cpp: Copied from platform/gtk/FontCacheGtk.cpp.
   70257         * platform/graphics/gtk/FontDataGtk.cpp: Copied from platform/gtk/FontDataGtk.cpp.
   70258         * platform/graphics/gtk/FontGtk.cpp: Copied from platform/gtk/FontGtk.cpp.
   70259         * platform/graphics/gtk/FontPlatformData.h: Copied from platform/gtk/FontPlatformData.h.
   70260         * platform/graphics/gtk/FontPlatformDataGtk.cpp: Copied from platform/gtk/FontPlatformDataGtk.cpp.
   70261         * platform/graphics/gtk/GlyphPageTreeNodeGtk.cpp: Copied from platform/gtk/GlyphPageTreeNodeGtk.cpp.
   70262         * platform/graphics/mac/FontCacheMac.mm: Copied from platform/mac/FontCacheMac.mm.
   70263         * platform/graphics/mac/FontCustomPlatformData.cpp: Copied from platform/mac/FontCustomPlatformData.cpp.
   70264         * platform/graphics/mac/FontCustomPlatformData.h: Copied from platform/mac/FontCustomPlatformData.h.
   70265         * platform/graphics/mac/FontDataMac.mm: Copied from platform/mac/FontDataMac.mm.
   70266         * platform/graphics/mac/FontMac.mm: Copied from platform/mac/FontMac.mm.
   70267         * platform/graphics/mac/FontPlatformData.h: Copied from platform/mac/FontPlatformData.h.
   70268         * platform/graphics/mac/FontPlatformDataMac.mm: Copied from platform/mac/FontPlatformDataMac.mm.
   70269         * platform/graphics/mac/GlyphPageTreeNodeMac.cpp: Copied from platform/mac/GlyphPageTreeNodeMac.cpp.
   70270         * platform/graphics/qt/FontCacheQt.cpp: Copied from platform/qt/FontCacheQt.cpp.
   70271         * platform/graphics/qt/FontCustomPlatformData.cpp: Copied from platform/qt/FontCustomPlatformData.cpp.
   70272         * platform/graphics/qt/FontCustomPlatformData.h: Copied from platform/qt/FontCustomPlatformData.h.
   70273         * platform/graphics/qt/FontDataQt.cpp: Copied from platform/qt/FontDataQt.cpp.
   70274         * platform/graphics/qt/FontPlatformData.h: Copied from platform/qt/FontPlatformData.h.
   70275         * platform/graphics/qt/FontQt.cpp: Copied from platform/qt/FontQt.cpp.
   70276         * platform/graphics/qt/GlyphPageTreeNodeQt.cpp: Copied from platform/qt/GlyphPageTreeNodeQt.cpp.
   70277         * platform/graphics/win/FontCacheWin.cpp: Copied from platform/win/FontCacheWin.cpp.
   70278         * platform/graphics/win/FontCustomPlatformData.cpp: Copied from platform/win/FontCustomPlatformData.cpp.
   70279         * platform/graphics/win/FontCustomPlatformData.h: Copied from platform/win/FontCustomPlatformData.h.
   70280         * platform/graphics/win/FontDataWin.cpp: Copied from platform/win/FontDataWin.cpp.
   70281         * platform/graphics/win/FontDatabase.cpp: Copied from platform/win/FontDatabase.cpp.
   70282         * platform/graphics/win/FontDatabase.h: Copied from platform/win/FontDatabase.h.
   70283         * platform/graphics/win/FontPlatformData.h: Copied from platform/win/FontPlatformData.h.
   70284         * platform/graphics/win/FontPlatformDataWin.cpp: Copied from platform/win/FontPlatformDataWin.cpp.
   70285         * platform/graphics/win/FontWin.cpp: Copied from platform/win/FontWin.cpp.
   70286         * platform/graphics/win/GlyphPageTreeNodeWin.cpp: Copied from platform/win/GlyphPageTreeNodeWin.cpp.
   70287         * platform/graphics/wx/FontCacheWx.cpp: Copied from platform/wx/FontCacheWx.cpp.
   70288         * platform/graphics/wx/FontDataWx.cpp: Copied from platform/wx/FontDataWx.cpp.
   70289         * platform/graphics/wx/FontPlatformData.h: Copied from platform/wx/FontPlatformData.h.
   70290         * platform/graphics/wx/FontPlatformDataWx.cpp: Copied from platform/wx/FontPlatformDataWx.cpp.
   70291         * platform/graphics/wx/FontWx.cpp: Copied from platform/wx/FontWx.cpp.
   70292         * platform/graphics/wx/GlyphMapWx.cpp: Copied from platform/wx/GlyphMapWx.cpp.
   70293         * platform/gtk/FontCacheGtk.cpp: Removed.
   70294         * platform/gtk/FontDataGtk.cpp: Removed.
   70295         * platform/gtk/FontGtk.cpp: Removed.
   70296         * platform/gtk/FontPlatformData.h: Removed.
   70297         * platform/gtk/FontPlatformDataGtk.cpp: Removed.
   70298         * platform/gtk/GlyphPageTreeNodeGtk.cpp: Removed.
   70299         * platform/gtk/TextBreakIteratorInternalICUGtk.cpp: Removed.
   70300         * platform/mac/FontCacheMac.mm: Removed.
   70301         * platform/mac/FontCustomPlatformData.cpp: Removed.
   70302         * platform/mac/FontCustomPlatformData.h: Removed.
   70303         * platform/mac/FontDataMac.mm: Removed.
   70304         * platform/mac/FontMac.mm: Removed.
   70305         * platform/mac/FontPlatformData.h: Removed.
   70306         * platform/mac/FontPlatformDataMac.mm: Removed.
   70307         * platform/mac/GlyphPageTreeNodeMac.cpp: Removed.
   70308         * platform/mac/ShapeArabic.c: Removed.
   70309         * platform/mac/ShapeArabic.h: Removed.
   70310         * platform/mac/StringImplMac.mm: Removed.
   70311         * platform/mac/StringMac.mm: Removed.
   70312         * platform/mac/TextBoundaries.mm: Removed.
   70313         * platform/mac/TextBreakIteratorInternalICUMac.mm: Removed.
   70314         * platform/mac/TextCodecMac.cpp: Removed.
   70315         * platform/mac/TextCodecMac.h: Removed.
   70316         * platform/mac/character-sets.txt: Removed.
   70317         * platform/mac/mac-encodings.txt: Removed.
   70318         * platform/mac/make-charset-table.pl: Removed.
   70319         * platform/qt/FontCacheQt.cpp: Removed.
   70320         * platform/qt/FontCustomPlatformData.cpp: Removed.
   70321         * platform/qt/FontCustomPlatformData.h: Removed.
   70322         * platform/qt/FontDataQt.cpp: Removed.
   70323         * platform/qt/FontPlatformData.h: Removed.
   70324         * platform/qt/FontQt.cpp: Removed.
   70325         * platform/qt/GlyphPageTreeNodeQt.cpp: Removed.
   70326         * platform/qt/StringQt.cpp: Removed.
   70327         * platform/qt/TextBoundaries.cpp: Removed.
   70328         * platform/qt/TextBreakIteratorQt.cpp: Removed.
   70329         * platform/qt/TextCodecQt.cpp: Removed.
   70330         * platform/qt/TextCodecQt.h: Removed.
   70331         * platform/symbian/StringImplSymbian.cpp: Removed.
   70332         * platform/symbian/StringSymbian.cpp: Removed.
   70333         * platform/text/cf: Added.
   70334         * platform/text/cf/StringCF.cpp: Copied from platform/cf/StringCF.cpp.
   70335         * platform/text/cf/StringImplCF.cpp: Copied from platform/cf/StringImplCF.cpp.
   70336         * platform/text/gtk: Added.
   70337         * platform/text/gtk/TextBreakIteratorInternalICUGtk.cpp: Copied from platform/gtk/TextBreakIteratorInternalICUGtk.cpp.
   70338         * platform/text/mac/ShapeArabic.c: Copied from platform/mac/ShapeArabic.c.
   70339         * platform/text/mac/ShapeArabic.h: Copied from platform/mac/ShapeArabic.h.
   70340         * platform/text/mac/StringImplMac.mm: Copied from platform/mac/StringImplMac.mm.
   70341         * platform/text/mac/StringMac.mm: Copied from platform/mac/StringMac.mm.
   70342         * platform/text/mac/TextBoundaries.mm: Copied from platform/mac/TextBoundaries.mm.
   70343         * platform/text/mac/TextBreakIteratorInternalICUMac.mm: Copied from platform/mac/TextBreakIteratorInternalICUMac.mm.
   70344         * platform/text/mac/TextCodecMac.cpp: Copied from platform/mac/TextCodecMac.cpp.
   70345         * platform/text/mac/TextCodecMac.h: Copied from platform/mac/TextCodecMac.h.
   70346         * platform/text/mac/character-sets.txt: Copied from platform/mac/character-sets.txt.
   70347         * platform/text/mac/mac-encodings.txt: Copied from platform/mac/mac-encodings.txt.
   70348         * platform/text/mac/make-charset-table.pl: Copied from platform/mac/make-charset-table.pl.
   70349         * platform/text/qt: Added.
   70350         * platform/text/qt/StringQt.cpp: Copied from platform/qt/StringQt.cpp.
   70351         * platform/text/qt/TextBoundaries.cpp: Copied from platform/qt/TextBoundaries.cpp.
   70352         * platform/text/qt/TextBreakIteratorQt.cpp: Copied from platform/qt/TextBreakIteratorQt.cpp.
   70353         * platform/text/qt/TextCodecQt.cpp: Copied from platform/qt/TextCodecQt.cpp.
   70354         * platform/text/qt/TextCodecQt.h: Copied from platform/qt/TextCodecQt.h.
   70355         * platform/text/symbian: Added.
   70356         * platform/text/symbian/StringImplSymbian.cpp: Copied from platform/symbian/StringImplSymbian.cpp.
   70357         * platform/text/symbian/StringSymbian.cpp: Copied from platform/symbian/StringSymbian.cpp.
   70358         * platform/text/win: Added.
   70359         * platform/text/win/TextBreakIteratorInternalICUWin.cpp: Copied from platform/win/TextBreakIteratorInternalICUWin.cpp.
   70360         * platform/text/wx: Added.
   70361         * platform/text/wx/StringWx.cpp: Copied from platform/wx/StringWx.cpp.
   70362         * platform/win/FontCacheWin.cpp: Removed.
   70363         * platform/win/FontCustomPlatformData.cpp: Removed.
   70364         * platform/win/FontCustomPlatformData.h: Removed.
   70365         * platform/win/FontDataWin.cpp: Removed.
   70366         * platform/win/FontDatabase.cpp: Removed.
   70367         * platform/win/FontDatabase.h: Removed.
   70368         * platform/win/FontPlatformData.h: Removed.
   70369         * platform/win/FontPlatformDataWin.cpp: Removed.
   70370         * platform/win/FontWin.cpp: Removed.
   70371         * platform/win/GlyphPageTreeNodeWin.cpp: Removed.
   70372         * platform/win/TextBreakIteratorInternalICUWin.cpp: Removed.
   70373         * platform/wx/FontCacheWx.cpp: Removed.
   70374         * platform/wx/FontDataWx.cpp: Removed.
   70375         * platform/wx/FontPlatformData.h: Removed.
   70376         * platform/wx/FontPlatformDataWx.cpp: Removed.
   70377         * platform/wx/FontWx.cpp: Removed.
   70378         * platform/wx/GlyphMapWx.cpp: Removed.
   70379         * platform/wx/StringWx.cpp: Removed.
   70380         * webcore-wx.bkl:
   70381 
   70382 2007-11-30  Kevin Ollivier  <kevino (a] theolliviers.com>
   70383 
   70384         Build fix for wx port. Adding editing/RemoveFormatCommand.cpp
   70385 
   70386         * WebCoreSources.bkl:
   70387 
   70388 2007-11-30  Simon Hausmann  <hausmann (a] webkit.org>
   70389 
   70390         Reviewed by Adam Roben.
   70391 
   70392         Fix the build with DATABASE=0.
   70393 
   70394         * page/Settings.cpp:
   70395         (WebCore::Settings::setDefaultDatabaseOriginQuota):
   70396         (WebCore::Settings::defaultDatabaseOriginQuota):
   70397 
   70398 2007-11-30  Nikolas Zimmermann  <zimmermann (a] kde.org>
   70399 
   70400         Rubber stamped by Darin.
   70401 
   70402         Fix misplaced file. The name "FontStyle" is not correct though - it probably
   70403         needs yet another move - but this time inside platform/graphics - as soon
   70404         as we agree on a better name.
   70405 
   70406         * WebCore.xcodeproj/project.pbxproj:
   70407         * platform/graphics/FontStyle.h: Copied from platform/text/FontStyle.h.
   70408         * platform/text/FontStyle.h: Removed.
   70409 
   70410 2007-11-30  Nikolas Zimmermann  <zimmermann (a] kde.org>
   70411 
   70412         Reviewed by Sam.
   70413 
   70414         Rename "FontStyle FontStyle(...)" to "FontStyle fontStyle(...)".
   70415         I scripted a bit too much while doing the TextStyle -> FontStyle change.
   70416 
   70417         * platform/win/PopupMenuWin.cpp:
   70418         (WebCore::PopupMenu::paint):
   70419         * rendering/EllipsisBox.cpp:
   70420         (WebCore::EllipsisBox::paint):
   70421         * rendering/RenderFileUploadControl.cpp:
   70422         (WebCore::RenderFileUploadControl::paintObject):
   70423         * rendering/RenderListBox.cpp:
   70424         (WebCore::RenderListBox::updateFromElement):
   70425         (WebCore::RenderListBox::paintItemForeground):
   70426         * rendering/RenderTextControl.cpp:
   70427         (WebCore::RenderTextControl::setStyle):
   70428         (WebCore::RenderTextControl::createInnerTextStyle):
   70429         (WebCore::RenderTextControl::createSubtreeIfNeeded):
   70430         * rendering/RenderTextControl.h:
   70431         * rendering/SVGRootInlineBox.cpp:
   70432         (WebCore::svgFontStyleForInlineTextBox):
   70433 
   70434 2007-11-30  Alp Toker  <alp (a] atoker.com>
   70435 
   70436         GTK+ build fix following the recent text reorganization.
   70437 
   70438         * WebCore.pro:
   70439 
   70440 2007-11-29  Jon Honeycutt  <jhoneycutt (a] apple.com>
   70441 
   70442         Reviewed by Adam.
   70443 
   70444         Part of <rdar://problem/5506522> Seed: cannot type into text box in
   70445         Facebook, don't see plugin content (Adobe Flash)
   70446 
   70447         * plugins/win/PluginViewWin.cpp:
   70448         (WebCore::PluginViewWin::handleMouseEvent): Focus the plugin's parent
   70449         frame  
   70450 
   70451 2007-11-30  Nikolas Zimmermann  <zimmermann (a] kde.org>
   70452 
   70453         Not reviewed. Trying to fix gtk/qt/wx build. (I expected problems because of the moves)
   70454 
   70455         * WebCore.pro:
   70456         * webcore-base.bkl:
   70457 
   70458 2007-11-30  Nikolas Zimmermann  <zimmermann (a] kde.org>
   70459 
   70460         Rubber stamped by Brady.
   70461 
   70462         Started platform reorganization (platform/text addition).
   70463         Moving string/text/font related classes into new places - as discussed on webkit-dev.
   70464 
   70465         In a follow-up commit I'll move classes out of platform/{mac,win,...} into
   70466         platform/text/{mac,win,...}, and also do the ksvg2/ -> svg/ move.
   70467 
   70468         * WebCore.order:
   70469         * WebCore.pro:
   70470         * WebCore.vcproj/WebCore.vcproj:
   70471         * WebCore.xcodeproj/project.pbxproj:
   70472         * WebCoreSources.bkl:
   70473         * editing/ReplaceSelectionCommand.cpp:
   70474         (WebCore::ReplacementFragment::insertFragmentForTestRendering):
   70475         * platform/AtomicString.cpp: Removed.
   70476         * platform/AtomicString.h: Removed.
   70477         * platform/AtomicStringImpl.h: Removed.
   70478         * platform/Base64.cpp: Removed.
   70479         * platform/Base64.h: Removed.
   70480         * platform/BidiContext.cpp: Removed.
   70481         * platform/BidiContext.h: Removed.
   70482         * platform/BidiResolver.h: Removed.
   70483         * platform/CString.cpp: Removed.
   70484         * platform/CString.h: Removed.
   70485         * platform/CharacterNames.h: Removed.
   70486         * platform/CharsetData.h: Removed.
   70487         * platform/Font.cpp: Removed.
   70488         * platform/Font.h: Removed.
   70489         * platform/FontCache.cpp: Removed.
   70490         * platform/FontCache.h: Removed.
   70491         * platform/FontData.cpp: Removed.
   70492         * platform/FontData.h: Removed.
   70493         * platform/FontDescription.h: Removed.
   70494         * platform/FontFallbackList.cpp: Removed.
   70495         * platform/FontFallbackList.h: Removed.
   70496         * platform/FontFamily.cpp: Removed.
   70497         * platform/FontFamily.h: Removed.
   70498         * platform/FontSelector.h: Removed.
   70499         * platform/GlyphBuffer.h: Removed.
   70500         * platform/GlyphPageTreeNode.cpp: Removed.
   70501         * platform/GlyphPageTreeNode.h: Removed.
   70502         * platform/GlyphWidthMap.cpp: Removed.
   70503         * platform/GlyphWidthMap.h: Removed.
   70504         * platform/PlatformString.h: Removed.
   70505         * platform/RegularExpression.cpp: Removed.
   70506         * platform/RegularExpression.h: Removed.
   70507         * platform/SegmentedString.cpp: Removed.
   70508         * platform/SegmentedString.h: Removed.
   70509         * platform/String.cpp: Removed.
   70510         * platform/StringHash.h: Removed.
   70511         * platform/StringImpl.cpp: Removed.
   70512         * platform/StringImpl.h: Removed.
   70513         * platform/StringTruncator.cpp: Removed.
   70514         * platform/StringTruncator.h: Removed.
   70515         * platform/TextBoundaries.h: Removed.
   70516         * platform/TextBoundariesICU.cpp: Removed.
   70517         * platform/TextBreakIterator.h: Removed.
   70518         * platform/TextBreakIteratorICU.cpp: Removed.
   70519         * platform/TextBreakIteratorInternalICU.h: Removed.
   70520         * platform/TextCodec.cpp: Removed.
   70521         * platform/TextCodec.h: Removed.
   70522         * platform/TextCodecICU.cpp: Removed.
   70523         * platform/TextCodecICU.h: Removed.
   70524         * platform/TextCodecLatin1.cpp: Removed.
   70525         * platform/TextCodecLatin1.h: Removed.
   70526         * platform/TextCodecUTF16.cpp: Removed.
   70527         * platform/TextCodecUTF16.h: Removed.
   70528         * platform/TextCodecUserDefined.cpp: Removed.
   70529         * platform/TextCodecUserDefined.h: Removed.
   70530         * platform/TextDecoder.cpp: Removed.
   70531         * platform/TextDecoder.h: Removed.
   70532         * platform/TextDirection.h: Removed.
   70533         * platform/TextEncoding.cpp: Removed.
   70534         * platform/TextEncoding.h: Removed.
   70535         * platform/TextEncodingRegistry.cpp: Removed.
   70536         * platform/TextEncodingRegistry.h: Removed.
   70537         * platform/TextStream.cpp: Removed.
   70538         * platform/TextStream.h: Removed.
   70539         * platform/TextStyle.h: Removed.
   70540         * platform/UnicodeRange.cpp: Removed.
   70541         * platform/UnicodeRange.h: Removed.
   70542         * platform/graphics/Font.cpp: Copied from platform/Font.cpp.
   70543         (WebCore::WidthIterator::WidthIterator):
   70544         (WebCore::Font::width):
   70545         (WebCore::Font::drawSimpleText):
   70546         (WebCore::Font::drawGlyphBuffer):
   70547         (WebCore::Font::drawText):
   70548         (WebCore::Font::floatWidth):
   70549         (WebCore::Font::floatWidthForSimpleText):
   70550         (WebCore::Font::selectionRectForText):
   70551         (WebCore::Font::selectionRectForSimpleText):
   70552         (WebCore::Font::offsetForPosition):
   70553         (WebCore::Font::offsetForPositionForSimpleText):
   70554         * platform/graphics/Font.h: Copied from platform/Font.h.
   70555         * platform/graphics/FontCache.cpp: Copied from platform/FontCache.cpp.
   70556         * platform/graphics/FontCache.h: Copied from platform/FontCache.h.
   70557         * platform/graphics/FontData.cpp: Copied from platform/FontData.cpp.
   70558         * platform/graphics/FontData.h: Copied from platform/FontData.h.
   70559         * platform/graphics/FontDescription.h: Copied from platform/FontDescription.h.
   70560         * platform/graphics/FontFallbackList.cpp: Copied from platform/FontFallbackList.cpp.
   70561         * platform/graphics/FontFallbackList.h: Copied from platform/FontFallbackList.h.
   70562         * platform/graphics/FontFamily.cpp: Copied from platform/FontFamily.cpp.
   70563         * platform/graphics/FontFamily.h: Copied from platform/FontFamily.h.
   70564         * platform/graphics/FontSelector.h: Copied from platform/FontSelector.h.
   70565         * platform/graphics/GlyphBuffer.h: Copied from platform/GlyphBuffer.h.
   70566         * platform/graphics/GlyphPageTreeNode.cpp: Copied from platform/GlyphPageTreeNode.cpp.
   70567         * platform/graphics/GlyphPageTreeNode.h: Copied from platform/GlyphPageTreeNode.h.
   70568         * platform/graphics/GlyphWidthMap.cpp: Copied from platform/GlyphWidthMap.cpp.
   70569         * platform/graphics/GlyphWidthMap.h: Copied from platform/GlyphWidthMap.h.
   70570         * platform/graphics/GraphicsContext.cpp:
   70571         (WebCore::GraphicsContext::drawText):
   70572         (WebCore::GraphicsContext::drawBidiText):
   70573         (WebCore::GraphicsContext::drawHighlightForText):
   70574         * platform/graphics/GraphicsContext.h:
   70575         * platform/graphics/StringTruncator.cpp: Copied from platform/StringTruncator.cpp.
   70576         (WebCore::stringWidth):
   70577         * platform/graphics/StringTruncator.h: Copied from platform/StringTruncator.h.
   70578         * platform/graphics/qt/GraphicsContextQt.cpp:
   70579         * platform/gtk/FontGtk.cpp:
   70580         (WebCore::Font::drawComplexText):
   70581         (WebCore::Font::floatWidthForComplexText):
   70582         (WebCore::Font::offsetForPositionForComplexText):
   70583         (WebCore::Font::selectionRectForComplexText):
   70584         * platform/mac/FontMac.mm:
   70585         (WebCore::ATSULayoutParameters::ATSULayoutParameters):
   70586         (WebCore::Font::selectionRectForComplexText):
   70587         (WebCore::Font::drawComplexText):
   70588         (WebCore::Font::floatWidthForComplexText):
   70589         (WebCore::Font::offsetForPositionForComplexText):
   70590         * platform/mac/WebCoreTextRenderer.mm:
   70591         (WebCoreDrawTextAtPoint):
   70592         (WebCoreTextFloatWidth):
   70593         * platform/qt/FontQt.cpp:
   70594         (WebCore::generateComponents):
   70595         (WebCore::Font::drawText):
   70596         (WebCore::Font::width):
   70597         (WebCore::Font::floatWidth):
   70598         (WebCore::Font::offsetForPosition):
   70599         (WebCore::cursorToX):
   70600         (WebCore::Font::selectionRectForText):
   70601         * platform/text: Added.
   70602         * platform/text/AtomicString.cpp: Copied from platform/AtomicString.cpp.
   70603         * platform/text/AtomicString.h: Copied from platform/AtomicString.h.
   70604         * platform/text/AtomicStringImpl.h: Copied from platform/AtomicStringImpl.h.
   70605         * platform/text/Base64.cpp: Copied from platform/Base64.cpp.
   70606         * platform/text/Base64.h: Copied from platform/Base64.h.
   70607         * platform/text/BidiContext.cpp: Copied from platform/BidiContext.cpp.
   70608         * platform/text/BidiContext.h: Copied from platform/BidiContext.h.
   70609         * platform/text/BidiResolver.h: Copied from platform/BidiResolver.h.
   70610         * platform/text/CString.cpp: Copied from platform/CString.cpp.
   70611         * platform/text/CString.h: Copied from platform/CString.h.
   70612         * platform/text/CharacterNames.h: Copied from platform/CharacterNames.h.
   70613         * platform/text/FontStyle.h: Copied from platform/TextStyle.h.
   70614         (WebCore::FontStyle::FontStyle):
   70615         * platform/text/PlatformString.h: Copied from platform/PlatformString.h.
   70616         * platform/text/RegularExpression.cpp: Copied from platform/RegularExpression.cpp.
   70617         * platform/text/RegularExpression.h: Copied from platform/RegularExpression.h.
   70618         * platform/text/SegmentedString.cpp: Copied from platform/SegmentedString.cpp.
   70619         * platform/text/SegmentedString.h: Copied from platform/SegmentedString.h.
   70620         * platform/text/String.cpp: Copied from platform/String.cpp.
   70621         * platform/text/StringHash.h: Copied from platform/StringHash.h.
   70622         * platform/text/StringImpl.cpp: Copied from platform/StringImpl.cpp.
   70623         * platform/text/StringImpl.h: Copied from platform/StringImpl.h.
   70624         * platform/text/TextBoundaries.h: Copied from platform/TextBoundaries.h.
   70625         * platform/text/TextBoundariesICU.cpp: Copied from platform/TextBoundariesICU.cpp.
   70626         (WebCore::findNextWordFromIndex):
   70627         * platform/text/TextBreakIterator.h: Copied from platform/TextBreakIterator.h.
   70628         * platform/text/TextBreakIteratorICU.cpp: Copied from platform/TextBreakIteratorICU.cpp.
   70629         * platform/text/TextBreakIteratorInternalICU.h: Copied from platform/TextBreakIteratorInternalICU.h.
   70630         * platform/text/TextCodec.cpp: Copied from platform/TextCodec.cpp.
   70631         * platform/text/TextCodec.h: Copied from platform/TextCodec.h.
   70632         * platform/text/TextCodecICU.cpp: Copied from platform/TextCodecICU.cpp.
   70633         * platform/text/TextCodecICU.h: Copied from platform/TextCodecICU.h.
   70634         * platform/text/TextCodecLatin1.cpp: Copied from platform/TextCodecLatin1.cpp.
   70635         * platform/text/TextCodecLatin1.h: Copied from platform/TextCodecLatin1.h.
   70636         * platform/text/TextCodecUTF16.cpp: Copied from platform/TextCodecUTF16.cpp.
   70637         * platform/text/TextCodecUTF16.h: Copied from platform/TextCodecUTF16.h.
   70638         * platform/text/TextCodecUserDefined.cpp: Copied from platform/TextCodecUserDefined.cpp.
   70639         * platform/text/TextCodecUserDefined.h: Copied from platform/TextCodecUserDefined.h.
   70640         * platform/text/TextDecoder.cpp: Copied from platform/TextDecoder.cpp.
   70641         * platform/text/TextDecoder.h: Copied from platform/TextDecoder.h.
   70642         * platform/text/TextDirection.h: Copied from platform/TextDirection.h.
   70643         * platform/text/TextEncoding.cpp: Copied from platform/TextEncoding.cpp.
   70644         * platform/text/TextEncoding.h: Copied from platform/TextEncoding.h.
   70645         * platform/text/TextEncodingRegistry.cpp: Copied from platform/TextEncodingRegistry.cpp.
   70646         * platform/text/TextEncodingRegistry.h: Copied from platform/TextEncodingRegistry.h.
   70647         * platform/text/TextStream.cpp: Copied from platform/TextStream.cpp.
   70648         * platform/text/TextStream.h: Copied from platform/TextStream.h.
   70649         * platform/text/UnicodeRange.cpp: Copied from platform/UnicodeRange.cpp.
   70650         * platform/text/UnicodeRange.h: Copied from platform/UnicodeRange.h.
   70651         * platform/text/mac: Added.
   70652         * platform/text/mac/CharsetData.h: Copied from platform/CharsetData.h.
   70653         * platform/win/FontWin.cpp:
   70654         (WebCore::Font::selectionRectForComplexText):
   70655         (WebCore::Font::drawComplexText):
   70656         (WebCore::Font::floatWidthForComplexText):
   70657         (WebCore::Font::offsetForPositionForComplexText):
   70658         * platform/win/PopupMenuWin.cpp:
   70659         (WebCore::PopupMenu::paint):
   70660         * platform/win/UniscribeController.cpp:
   70661         (WebCore::UniscribeController::UniscribeController):
   70662         * platform/win/UniscribeController.h:
   70663         * platform/win/WebCoreTextRenderer.cpp:
   70664         (WebCore::doDrawTextAtPoint):
   70665         * platform/wx/FontWx.cpp:
   70666         (WebCore::Font::selectionRectForComplexText):
   70667         (WebCore::Font::drawComplexText):
   70668         (WebCore::Font::floatWidthForComplexText):
   70669         (WebCore::Font::offsetForPositionForComplexText):
   70670         * rendering/EllipsisBox.cpp:
   70671         (WebCore::EllipsisBox::paint):
   70672         * rendering/InlineTextBox.cpp:
   70673         (WebCore::InlineTextBox::selectionRect):
   70674         (WebCore::InlineTextBox::paint):
   70675         (WebCore::InlineTextBox::paintSelection):
   70676         (WebCore::InlineTextBox::paintCompositionBackground):
   70677         (WebCore::InlineTextBox::paintSpellingOrGrammarMarker):
   70678         (WebCore::InlineTextBox::paintTextMatchMarker):
   70679         (WebCore::InlineTextBox::offsetForPosition):
   70680         (WebCore::InlineTextBox::positionForOffset):
   70681         * rendering/RenderFileUploadControl.cpp:
   70682         (WebCore::RenderFileUploadControl::paintObject):
   70683         (WebCore::RenderFileUploadControl::calcPrefWidths):
   70684         * rendering/RenderImage.cpp:
   70685         * rendering/RenderListBox.cpp:
   70686         (WebCore::RenderListBox::updateFromElement):
   70687         (WebCore::RenderListBox::paintItemForeground):
   70688         * rendering/RenderMenuList.cpp:
   70689         (WebCore::RenderMenuList::updateOptionsWidth):
   70690         * rendering/RenderText.cpp:
   70691         (WebCore::RenderText::widthFromCache):
   70692         (WebCore::RenderText::calcPrefWidths):
   70693         (WebCore::RenderText::width):
   70694         * rendering/RenderTextControl.cpp:
   70695         (WebCore::RenderTextControl::setStyle):
   70696         (WebCore::RenderTextControl::createInnerFontStyle):
   70697         (WebCore::RenderTextControl::createSubtreeIfNeeded):
   70698         (WebCore::RenderTextControl::calcPrefWidths):
   70699         * rendering/RenderTextControl.h:
   70700         * rendering/SVGInlineTextBox.cpp:
   70701         (WebCore::SVGInlineTextBox::calculateGlyphWidth):
   70702         (WebCore::SVGInlineTextBox::paintCharacters):
   70703         (WebCore::SVGInlineTextBox::paintSelection):
   70704         * rendering/SVGRootInlineBox.cpp:
   70705         (WebCore::cummulatedWidthOfInlineBoxCharacterRange):
   70706         (WebCore::svgFontStyleForInlineTextBox):
   70707         * rendering/SVGRootInlineBox.h:
   70708 
   70709 2007-11-30  Adele Peterson  <adele (a] apple.com>
   70710 
   70711         Reviewed by Darin.
   70712 
   70713         Fix for http://bugs.webkit.org/show_bug.cgi?id=16072
   70714         <rdar://problem/5463821> REGRESSION: Mousemove event isn't fired when mouse moves over scrollbar with pressed button (16072)
   70715 
   70716         Test: fast/events/mousemove-after-drag-over-scrollbar.html
   70717 
   70718         * page/EventHandler.cpp:
   70719         (WebCore::EventHandler::handleMouseMoveEvent): If the mouse is pressed, and we've moved over a new scrollbar, then we can clear m_lastScrollbarUnderMouse.
   70720          We should only need to show the hover effect when the mouse isn't pressed.
   70721 
   70722 2007-11-29  Brady Eidson <beidson (a] apple.com>
   70723 
   70724         Reviewed by Tim
   70725 
   70726         Part of <rdar://problem/5556377> - Need to accurately track and enforce database quota
   70727 
   70728         SQLite has the ability to enforce the page usage for databases.  This gives us bulletproof
   70729         enforcement of the database size limit with reasonable granularity (within 1023 bytes by 
   70730         default on OS X with SQLite 3.4.0)
   70731 
   70732         This also involved enhancing the ability to install/remove the authorizer to run the PRAGMA
   70733         statements involved
   70734 
   70735         Note this patch does not actually use the new maximumSize() functionality of the 
   70736         SQLiteDatabase class - that can be reviewed/landed seperately
   70737         
   70738         * platform/sql/SQLiteDatabase.cpp:
   70739         (WebCore::SQLiteDatabase::SQLiteDatabase): 
   70740         (WebCore::SQLiteDatabase::maximumSize): Return the current maximum size in bytes
   70741         (WebCore::SQLiteDatabase::setMaximumSize): Based on m_pageSize, set the maximum page count
   70742           to enforce the maximum size in bytes
   70743         (WebCore::SQLiteDatabase::pageSize): Fetch m_pageSize if it hasn't been fetched, or return
   70744           the cached value
   70745         (WebCore::SQLiteDatabase::setAuthorizer): Use enableAuthorizer for the sqlite_* level 
   70746           authorizer setup
   70747         (WebCore::SQLiteDatabase::enableAuthorizer): Install or remove the sqlite authorizer handler
   70748         * platform/sql/SQLiteDatabase.h: Add the m_pageSize member so we only have to fetch it once
   70749 
   70750 2007-11-29  Holger Hans Peter Freyther  <holger.freyther (a] trolltech.com>
   70751 
   70752         Reviewed by Maciej.
   70753 
   70754         * Fix fast/events/mousedown_in_scrollbar.html
   70755         * This test used to crash in PlatformScrollbarQt::mouse*Event due parent() returning 0.
   70756         * Extend the current check that the scrollbar in the mev can be go away.
   70757         This happens if we destroy a RenderLayer as the result of a click. In the
   70758         case of Qt we can have this scrollbar in m_lastScrollbarUnderMouse. The RenderLayer
   70759         is the ScrollbarClient, m_lastScrollbarUnderMouse is a RefPtr and keeps the
   70760         last reference. When calling into this scrollbar the m_client pointer is a dangling pointer.
   70761         We extend the check to set m_lastScrollbarUnderMouse back to zero when it was the
   70762         scrollbar in the old mev and is gone in the new one.
   70763         * This happens only on the Qt port because we send more/different move events.
   70764 
   70765         * page/EventHandler.cpp:
   70766         (WebCore::EventHandler::handleMousePressEvent):
   70767 
   70768 2007-11-29  Antti Koivisto  <antti (a] apple.com>
   70769 
   70770         Reviewed by Mitz.
   70771 
   70772         Fix aspect ratio calculation of video.
   70773         
   70774         Video should always be treated as a replaced element in size calculation.
   70775         
   70776         Test: media/video-aspect-ratio.html
   70777 
   70778         * rendering/RenderBox.cpp:
   70779         (WebCore::RenderBox::calcWidth):
   70780         (WebCore::RenderBox::calcHeight):
   70781         * rendering/RenderBox.h:
   70782         (WebCore::RenderBox::shouldCalculateSizeAsReplaced):
   70783         * rendering/RenderMedia.h:
   70784         (WebCore::RenderMedia::shouldCalculateSizeAsReplaced):
   70785 
   70786 2007-11-29  Sam Weinig  <sam (a] webkit.org>
   70787 
   70788         Reviewed by Oliver.
   70789 
   70790         Additional fix for <rdar://problem/5592988> / http://bugs.webkit.org/show_bug.cgi?id=15936
   70791         - More closely match IE's policy for frame navigation.
   70792 
   70793         * bindings/js/kjs_window.cpp:
   70794         (KJS::WindowProtoFuncOpen::callAsFunction):
   70795         * loader/FrameLoader.cpp:
   70796         (WebCore::FrameLoader::shouldAllowNavigation):
   70797         * page/FrameTree.cpp:
   70798         (WebCore::FrameTree::top):
   70799         * page/FrameTree.h:
   70800 
   70801 2007-11-29  Dan Bernstein  <mitz (a] apple.com>
   70802 
   70803         Reviewed by Adam Roben and John Sullivan.
   70804 
   70805         - make the recent searches popup extend only along the straight part of
   70806           the search field (unless it needs to be wider).
   70807 
   70808         * platform/PopupMenuClient.h:
   70809           Added clientInsetLeft() and clientInsetRight() for clients to
   70810           specify desired horizontal insets for the menu.
   70811         * platform/win/PopupMenuWin.cpp:
   70812         (WebCore::PopupMenu::calculatePositionAndSize):
   70813         (WebCore::PopupMenu::paint):
   70814         * rendering/RenderMenuList.cpp:
   70815         (WebCore::RenderMenuList::clientInsetLeft): Added. Returns 0.
   70816         (WebCore::RenderMenuList::clientInsetRight): Ditto.
   70817         * rendering/RenderMenuList.h:
   70818         * rendering/RenderTextControl.cpp:
   70819         (WebCore::RenderTextControl::clientInsetLeft): Added. Returns half the
   70820         control's height, which is the radius of the cap on the left.
   70821         (WebCore::RenderTextControl::clientInsetRight): Added.
   70822         * rendering/RenderTextControl.h:
   70823 
   70824 2007-11-30  Alp Toker  <alp (a] atoker.com>
   70825 
   70826         Reviewed by Maciej.
   70827 
   70828         http://bugs.webkit.org/show_bug.cgi?id=16173
   70829         Licensing change
   70830 
   70831         Change license from BSD to LGPL.
   70832 
   70833         This is being done to encourage vendors to contribute their fixes back
   70834         upstream.
   70835 
   70836         * platform/graphics/gtk/ColorGtk.cpp:
   70837         * platform/graphics/gtk/IntPointGtk.cpp:
   70838         * platform/graphics/gtk/IntRectGtk.cpp:
   70839         * platform/graphics/svg/cairo/RenderPathCairo.cpp:
   70840         * platform/graphics/svg/cairo/SVGPaintServerCairo.cpp:
   70841         * platform/graphics/svg/cairo/SVGPaintServerGradientCairo.cpp:
   70842         * platform/graphics/svg/cairo/SVGPaintServerPatternCairo.cpp:
   70843         * platform/graphics/svg/cairo/SVGPaintServerSolidCairo.cpp:
   70844         * platform/graphics/svg/cairo/SVGResourceClipperCairo.cpp:
   70845         * platform/graphics/svg/cairo/SVGResourceMaskerCairo.cpp:
   70846         * platform/gtk/Language.cpp:
   70847         * platform/gtk/LoggingGtk.cpp:
   70848         * platform/gtk/SoundGtk.cpp:
   70849         * platform/gtk/SystemTimeGtk.cpp:
   70850         * platform/gtk/TextBreakIteratorInternalICUGtk.cpp:
   70851 
   70852 2007-11-29  Darin Adler  <darin (a] apple.com>
   70853 
   70854         Reviewed by Adele.
   70855 
   70856         - fix http://bugs.webkit.org/show_bug.cgi?id=16191
   70857           REGRESSION: cannot tab to radio input after setting checked to false
   70858 
   70859         Test: fast/forms/input-radio-checked-tab.html
   70860 
   70861         * html/HTMLFormElement.cpp:
   70862         (WebCore::HTMLFormElement::CheckedRadioButtons::addButton): Fix this code
   70863         so that it doesn't call setChecked(false) until after the map has been updated.
   70864         Otherwise, we can end up deallocating the map before manipulating it. As long
   70865         as I was changing the function, I decided to make it do only a single hash
   70866         table lookup.
   70867 
   70868         * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::setChecked):
   70869         Remove the button from the radio buttons set before changing the checked
   70870         state. This matches the idiom used elsewhere and fixes the problem where
   70871         setting checked to false would not remove it from the set.
   70872 
   70873 2007-11-29  Justin Garcia  <justin.garcia (a] apple.com>
   70874 
   70875         Reviewed by Darin Adler.
   70876 
   70877         <rdar://problem/5620093> Brief hang when Safari caches page text of XML document
   70878 
   70879         * editing/TextIterator.cpp:
   70880         (WebCore::TextIterator::representNodeOffsetZero): When we haven't been emitting any 
   70881         characters, shouldRepresentNodeOffsetZero() can create VisiblePositions, which is
   70882         expensive.  So, we perform the inexpensive checks on m_node to see if it necessitates 
   70883         emitting a character first and will early return before encountering 
   70884         shouldRepresentNodeOffsetZero()s worse case behavior.
   70885 
   70886 2007-11-29  Anders Carlsson  <andersca (a] apple.com>
   70887 
   70888         Reviewed by Sam.
   70889 
   70890         Don't install event handlers or set the zoom cursor if auto-shrink has been disabled.
   70891 
   70892         * loader/ImageDocument.cpp:
   70893         (WebCore::ImageDocument::createDocumentStructure):
   70894         (WebCore::ImageDocument::imageChanged):
   70895 
   70896 2007-11-29  Beth Dakin  <bdakin (a] apple.com>
   70897 
   70898         Reviewed by Geoff.
   70899 
   70900         Fix for <rdar://problem/5620151> Disable JavaScript for SVG as 
   70901         image for <img> and CSS images
   70902 
   70903         * platform/graphics/svg/SVGImage.cpp:
   70904         (WebCore::SVGImage::dataChanged): When we create the empty clients, 
   70905         explicitly disable JavaScript in the settings.
   70906 
   70907 2007-11-29  Brady Eidson  <beidson (a] apple.com>
   70908 
   70909         Reviewed by Anders
   70910 
   70911         Support for <rdar://problem/5556381> and <rdar://problem/5556379>
   70912 
   70913         The Database feature in the engine needs to support delegate calls for policy decisions and
   70914         also provide notifications when origins and databases change their state.
   70915 
   70916         This patch also polishes off the missing features of the management API
   70917 
   70918         * page/Chrome.cpp: Implement the two UIDelegate methods
   70919         (WebCore::Chrome::requestQuotaIncreaseForNewDatabase): Ask for more space to create a new database if it won't fit
   70920         (WebCore::Chrome::requestQuotaIncreaseForDatabaseOperation): Ask for more space to complete an in-progress operation
   70921         * page/Chrome.h:
   70922         * page/ChromeClient.h:
   70923         * platform/graphics/svg/SVGImageEmptyClients.h:
   70924         (WebCore::SVGEmptyChromeClient::requestQuotaIncreaseForNewDatabase):
   70925         (WebCore::SVGEmptyChromeClient::requestQuotaIncreaseForDatabaseOperation):
   70926 
   70927         * storage/Database.cpp:
   70928         (WebCore::Database::openDatabase): Check to see if this database can be opened - the quota must be high 
   70929           enough and if it isn't, the UIDelegate should have a change to bump the quota.
   70930           Also update the UI-relevant details (display name and estimated size) upon successful opening of the database
   70931 
   70932         * storage/DatabaseDetails.h: Remove the version parameter as it is a programatic detail of a
   70933           site database and is not important to API clients
   70934         (WebCore::DatabaseDetails::DatabaseDetails):
   70935         (WebCore::DatabaseDetails::isValid):
   70936         (WebCore::DatabaseDetails::name):
   70937 
   70938         * storage/DatabaseTracker.cpp:
   70939         (WebCore::DatabaseTracker::openTrackerDatabase): Tweaked the schema here - there was a horrible bug with the old schema that would
   70940           prevent you from having two databases of the same name from two different origins.  Also simplify the origin-management schema
   70941         (WebCore::DatabaseTracker::canEstablishDatabase): Added.  Does some estimated size vs quota checks, and asks the UI delegate for 
   70942           more space if necessary
   70943         (WebCore::DatabaseTracker::hasEntryForOrigin):
   70944         (WebCore::DatabaseTracker::establishEntryForOrigin): Establishes a tracker entry for the given origin with the current default quota
   70945           Also notifies the client of the new origin
   70946         (WebCore::DatabaseTracker::setDatabaseDetails): Update the display name and estimated size for the given database
   70947         (WebCore::DatabaseTracker::fullPathForDatabase): Tweak to add the ability to get the path without creating it - for management purposes
   70948         (WebCore::DatabaseTracker::populateOrigins): Populate origins from the Origins table instead of the Databases table
   70949         (WebCore::DatabaseTracker::origins):
   70950         (WebCore::DatabaseTracker::detailsForNameAndOrigin): For API management
   70951         (WebCore::DatabaseTracker::usageForDatabase):
   70952         (WebCore::DatabaseTracker::usageForOrigin):
   70953         (WebCore::DatabaseTracker::quotaForOrigin):
   70954         (WebCore::DatabaseTracker::setQuota): Notify the client
   70955         (WebCore::DatabaseTracker::addDatabase): Notify the client 
   70956         (WebCore::DatabaseTracker::deleteAllDatabases):
   70957         (WebCore::DatabaseTracker::deleteDatabasesWithOrigin):
   70958         (WebCore::DatabaseTracker::deleteDatabase):
   70959         (WebCore::DatabaseTracker::deleteDatabaseFile):
   70960         * storage/DatabaseTracker.h:
   70961 
   70962 2007-11-29  Dan Bernstein  <mitz (a] apple.com>
   70963 
   70964         Reviewed by Beth Dakin and Darin Adler.
   70965 
   70966         - manual test for <rdar://problem/5346394> Contextmenu event doesn't fire on body element inside frame
   70967 
   70968         * manual-tests/context-click-unfocused-frame.html: Added.
   70969 
   70970 2007-11-28  Antti Koivisto  <antti (a] apple.com>
   70971 
   70972         Reviewed by Geoff.
   70973         
   70974         Fallback content inside media elements should not be rendered.
   70975 
   70976         Test: media/fallback.html
   70977 
   70978         * rendering/RenderMedia.h:
   70979         (WebCore::RenderMedia::canHaveChildren):
   70980 
   70981 2007-11-28  Mark Rowe  <mrowe (a] apple.com>
   70982 
   70983         Windows build fix.
   70984 
   70985         * WebCore.vcproj/WebCore.vcproj:
   70986 
   70987 2007-11-28  Mark Rowe  <mrowe (a] apple.com>
   70988 
   70989         Gtk build fix.
   70990 
   70991         * WebCore.pro:
   70992 
   70993 2007-11-28  Antti Koivisto  <antti (a] apple.com>
   70994 
   70995         Reviewed by Oliver.
   70996 
   70997         Make QTMovieView fill color transparent. This behavior matches the specification
   70998         (and allows nice alpha blended video).
   70999 
   71000         * platform/graphics/mac/MoviePrivateQTKit.mm:
   71001         (WebCore::MoviePrivate::createQTMovieView):
   71002 
   71003 2007-11-28  Antti Koivisto  <antti (a] apple.com>
   71004 
   71005         Reviewed by Darin.
   71006 
   71007         Test: media/video-controls.html
   71008         
   71009         <rdar://problem/5605668>
   71010         Implement controls attribute for video element
   71011         
   71012         - Add RenderMedia and make RenderVideo its subclass. Controls code goes to RenderMedia while
   71013           video specific (painting etc) code stays in RenderVideo. For example audio controls can be implemented
   71014           later by just instantiating RenderMedia as renderer.
   71015         - Make media renderer hierarchy inherit from RenderBlock instead of RenderReplaced so it can 
   71016           have child nodes (for controls).
   71017         - Controls are implemented as a shadow DOM.
   71018         - Current look is a placeholder. It is defined purely in CSS.
   71019         - Some things like volume controls are not yet implemented.
   71020         - Fade-in/out is done manually, CSS animations don't work well in shadow trees.
   71021           
   71022         * WebCore.xcodeproj/project.pbxproj:
   71023         * css/html4.css:
   71024         * html/HTMLMediaElement.cpp:
   71025         (WebCore::HTMLMediaElement::attributeChanged):
   71026         (WebCore::HTMLMediaElement::updateMovie):
   71027         (WebCore::HTMLMediaElement::defaultEventHandler):
   71028         * html/HTMLMediaElement.h:
   71029         * rendering/RenderMedia.cpp: Added.
   71030         (WebCore::MediaControlShadowRootElement::MediaControlShadowRootElement):
   71031         (WebCore::MediaControlShadowRootElement::isShadowNode):
   71032         (WebCore::MediaControlShadowRootElement::shadowParentNode):
   71033         (WebCore::MediaControlInputElement::MediaControlInputElement):
   71034         (WebCore::MediaControlInputElement::attachToParent):
   71035         (WebCore::MediaControlPlayButtonElement::MediaControlPlayButtonElement):
   71036         (WebCore::MediaControlPlayButtonElement::inPausedState):
   71037         (WebCore::MediaControlPlayButtonElement::defaultEventHandler):
   71038         (WebCore::MediaControlPlayButtonElement::update):
   71039         (WebCore::MediaControlTimelineElement::MediaControlTimelineElement):
   71040         (WebCore::MediaControlTimelineElement::defaultEventHandler):
   71041         (WebCore::MediaControlTimelineElement::update):
   71042         (WebCore::RenderMedia::RenderMedia):
   71043         (WebCore::RenderMedia::~RenderMedia):
   71044         (WebCore::RenderMedia::mediaElement):
   71045         (WebCore::RenderMedia::movie):
   71046         (WebCore::RenderMedia::setStyle):
   71047         (WebCore::RenderMedia::createControlsShadowRoot):
   71048         (WebCore::RenderMedia::createPanel):
   71049         (WebCore::RenderMedia::createPlayButton):
   71050         (WebCore::RenderMedia::createTimeline):
   71051         (WebCore::RenderMedia::createTimeDisplay):
   71052         (WebCore::RenderMedia::updateFromElement):
   71053         (WebCore::RenderMedia::updateControls):
   71054         (WebCore::RenderMedia::timeUpdateTimerFired):
   71055         (WebCore::RenderMedia::updateTimeDisplay):
   71056         (WebCore::RenderMedia::updateControlVisibility):
   71057         (WebCore::RenderMedia::changeOpacity):
   71058         (WebCore::RenderMedia::opacityAnimationTimerFired):
   71059         (WebCore::RenderMedia::forwardEvent):
   71060         * rendering/RenderMedia.h: Added.
   71061         (WebCore::RenderMedia::renderName):
   71062         (WebCore::RenderMedia::isMedia):
   71063         (WebCore::RenderMedia::intrinsicSize):
   71064         * rendering/RenderObject.h:
   71065         (WebCore::RenderObject::isMedia):
   71066         * rendering/RenderVideo.cpp:
   71067         (WebCore::RenderVideo::RenderVideo):
   71068         (WebCore::RenderVideo::videoSizeChanged):
   71069         (WebCore::RenderVideo::paintObject):
   71070         (WebCore::RenderVideo::layout):
   71071         (WebCore::RenderVideo::updateFromElement):
   71072         (WebCore::RenderVideo::calcAspectRatioWidth):
   71073         (WebCore::RenderVideo::calcAspectRatioHeight):
   71074         * rendering/RenderVideo.h:
   71075 
   71076 2007-11-28  Justin Garcia  <justin.garcia (a] apple.com>
   71077 
   71078         Reviewed by Darin Adler.
   71079 
   71080         <rdar://problem/5573879> GMail Beta: Crash in when undoing Remove Formating
   71081         
   71082         In the new beta, Google has added some custom code on top of our RemoveFormat
   71083         to work around a bug where fully selected lists aren't removed.  This code corrupts
   71084         the undo stack and causes crashes.  This change fixes two problems with RemoveFormat
   71085         so that Google doesn't have to have any custom code. After checking this in I'll 
   71086         work on bulletproofing the undo stack
   71087 
   71088         * WebCore.xcodeproj/project.pbxproj: 
   71089         * editing/CompositeEditCommand.cpp:
   71090         (WebCore::CompositeEditCommand::insertLineBreak): Added this convenience method.
   71091         (WebCore::CompositeEditCommand::inputText): Added code to select all inserted text, not
   71092         just the last paragraph.  Added code to support an input string with '\n's.
   71093         * editing/CompositeEditCommand.h:
   71094         * editing/Editor.cpp:
   71095         (WebCore::Editor::removeFormattingAndStyle): Moved code to its own EditCommand.
   71096         * editing/RemoveFormatCommand.cpp: Added. Moved code from removeFormattingAndStyle here.
   71097         (WebCore::RemoveFormatCommand::RemoveFormatCommand):
   71098         (WebCore::RemoveFormatCommand::doApply): Added code to remove fully selected lists.
   71099         * editing/RemoveFormatCommand.h: Added.
   71100         (WebCore::RemoveFormatCommand::editingAction):
   71101 
   71102 2007-11-28  Dan Bernstein  <mitz (a] apple.com>
   71103 
   71104         Reviewed by Dave Hyatt.
   71105 
   71106         - fix <rdar://problem/5612459> CrashTracer: [REGRESSION] 61 crashes in Safari at com.apple.WebCore: WebCore::AutoTableLayout::layout + 2046
   71107 
   71108         Test: fast/table/empty-auto-column-zero-divide.html
   71109 
   71110         * rendering/AutoTableLayout.cpp:
   71111         (WebCore::AutoTableLayout::recalcColumn):
   71112         (WebCore::AutoTableLayout::fullRecalc):
   71113         (WebCore::AutoTableLayout::calcEffectiveWidth):
   71114         (WebCore::AutoTableLayout::layout): When distributing the remaining
   71115         width among columns, skip those whose effective (rather than
   71116         specified) width is auto and contain only empty cells.
   71117 
   71118 2007-11-28  Peter Kasting  <pkasting (a] google.com>
   71119 
   71120         Reviewed by Alp Toker.
   71121 
   71122         http://bugs.webkit.org/show_bug.cgi?id=16169
   71123         GIF decoder needs to set hasAlpha() correctly on subsequent frames.
   71124         
   71125         This also removes the workaround for this problem in
   71126         ImageSourceCairo.cpp.
   71127 
   71128         * platform/graphics/cairo/ImageSourceCairo.cpp:
   71129         (WebCore::ImageSource::frameHasAlphaAtIndex):
   71130         * platform/image-decoders/gif/GIFImageDecoder.cpp:
   71131         (WebCore::GIFImageDecoder::initFrameBuffer):
   71132 
   71133 2007-11-28  Dan Bernstein  <mitz (a] apple.com>
   71134 
   71135         Reviewed by Darin Adler and Adam Roben.
   71136 
   71137         - <rdar://problem/5057218> Reenable "recent searches" search field menu when menu is fully implemented
   71138 
   71139         * platform/win/SearchPopupMenuWin.cpp:
   71140         (WebCore::SearchPopupMenu::enabled): Changed to return true.
   71141         (WebCore::autosaveKey): Added. Returns a preferences key for the
   71142         autosave name by prefixing it with "com.apple.WebKit.searchField:".
   71143         (WebCore::SearchPopupMenu::saveRecentSearches): Implemented.
   71144         (WebCore::SearchPopupMenu::loadRecentSearches): Implemented.
   71145 
   71146 2007-11-28  Alp Toker  <alp (a] atoker.com>
   71147 
   71148         Reviewed by Mark Rowe.
   71149 
   71150         http://bugs.webkit.org/show_bug.cgi?id=15689
   71151         [GTK] Background of loading images is always black
   71152 
   71153         frameHasAlphaAtIndex() exists only to allow optimization for cases we
   71154         are certain the image can be blitted rather than composited.
   71155 
   71156         Thus we need to be conservative, returning false only when we are
   71157         absolutely certain there is no need for composited copying, and true
   71158         otherwise.
   71159 
   71160         CG doesn't even bother with this optimization at all and always
   71161         returns true.
   71162 
   71163         Patch includes a workaround for
   71164           http://bugs.webkit.org/show_bug.cgi?id=16169
   71165           GIF ImageDecoder hasAlpha() return value incorrect
   71166 
   71167         * platform/graphics/cairo/ImageSourceCairo.cpp:
   71168         (WebCore::ImageSource::frameHasAlphaAtIndex):
   71169 
   71170 2007-11-27  Alp Toker  <alp (a] atoker.com>
   71171 
   71172         Reviewed by Mark Rowe.
   71173 
   71174         Install the JavaScriptCore headers as part of the GTK+ port.
   71175 
   71176         * WebCore.pro:
   71177 
   71178 2007-11-27  Beth Dakin  <bdakin (a] apple.com>
   71179 
   71180         Reviewed by Oliver.
   71181 
   71182         Fix for <rdar://problem/5616052> SVGs with width or height of 100% 
   71183         hang when used as a background-image (16164)
   71184 
   71185         * platform/graphics/svg/SVGImage.cpp:
   71186         (WebCore::SVGImage::size): Use valueAsPercentage() for percents 
   71187         instead of valueInSpecifiedUnits(). valueInSpecifiedUnits() 
   71188         returns, for example, 50 for 50%, so multiplying percentages by the 
   71189         default size of 300 x 150 led to ridiculously huge dimensions for 
   71190         SVG images, and the subsequent hang. 
   71191 
   71192 2007-11-27  Jon Honeycutt  <jhoneycutt (a] apple.com>
   71193 
   71194         Reviewed by Adam.
   71195 
   71196         Set haveRegisteredWindowClass when we register the window class.
   71197 
   71198         * plugins/win/PluginViewWin.cpp:
   71199         (WebCore::registerPluginView):
   71200 
   71201 2007-11-27  Timothy Hatcher  <timothy (a] apple.com>
   71202 
   71203         Reviewed by Sam Weinig.
   71204 
   71205         Bug 16165: Dragging the inspector toolbar should move the window
   71206         http://bugs.webkit.org/show_bug.cgi?id=16165
   71207 
   71208         * page/inspector/DocumentPanel.js: Call the new drag functions, and cleanup code.
   71209         * page/inspector/inspector.css: Only make the toolbar transparent in detached mode.
   71210         * page/inspector/inspector.js: Call the new drag functions, and cleanup code. Add
   71211           toolbar drag functions that move the window.
   71212 
   71213 2007-11-27  Antti Koivisto  <antti (a] apple.com>
   71214 
   71215         Reviewed by Mitz.
   71216 
   71217         Small changes to make RenderSlider a bit more generic so it can be used in video controls.
   71218 
   71219         * html/HTMLInputElement.cpp:
   71220         (WebCore::HTMLInputElement::defaultEventHandler): Fix coordinates with forwarded events.
   71221         * rendering/RenderSlider.cpp:
   71222         (WebCore::HTMLSliderThumbElement::defaultEventHandler): Fix coordinates with forwarded events.
   71223         (WebCore::RenderSlider::setStyle):
   71224         (WebCore::RenderSlider::createThumbStyle): Copy thumb left and top from the orginal style so position does not reset.
   71225         (WebCore::RenderSlider::mouseEventIsInThumb): Make this work with forwarded events.
   71226         * rendering/RenderSlider.h:
   71227 
   71228 2007-11-27  Antti Koivisto  <antti (a] apple.com>
   71229 
   71230         Reviewed by Darin.
   71231 
   71232         - Don't use hasPseudoId() optimization for pseudo styles used in shadow trees. These styles
   71233           generally exist when asked for so the optimization does not do much. This reverses the continuing
   71234           growth of the _pseudoBits bitfield in RenderStyle.
   71235         - Add some pseudo elements for media controls
   71236 
   71237         * css/CSSSelector.cpp:
   71238         (WebCore::CSSSelector::extractPseudoType):
   71239         * css/CSSSelector.h:
   71240         (WebCore::CSSSelector::):
   71241         * css/CSSStyleSelector.cpp:
   71242         (WebCore::CSSStyleSelector::matchRulesForList):
   71243         (WebCore::CSSStyleSelector::checkOneSelector):
   71244         * rendering/RenderObject.cpp:
   71245         (WebCore::RenderObject::getPseudoStyle):
   71246         * rendering/RenderStyle.cpp:
   71247         (WebCore::pseudoBit):
   71248         (WebCore::RenderStyle::hasPseudoStyle):
   71249         (WebCore::RenderStyle::setHasPseudoStyle):
   71250         * rendering/RenderStyle.h:
   71251         (WebCore::RenderStyle::):
   71252 
   71253 2007-11-27  Timothy Hatcher  <timothy (a] apple.com>
   71254 
   71255         Reviewed by Kevin McCullough.
   71256 
   71257         Bug 16161: window.moveBy(0, 0) moves the window by -22px vertically
   71258         http://bugs.webkit.org/show_bug.cgi?id=16161
   71259 
   71260         Removed the "Adjust the window rect to be in the coordinate space of
   71261         the screen rect" step which was always adding (0,22) to the window
   71262         position (on the main screen). Instead, account for screen X and Y
   71263         in the bottom and right constrain step.
   71264 
   71265         Added more test cases to: fast/dom/Window/window-resize.html
   71266 
   71267         * bindings/js/kjs_window.cpp:
   71268         (KJS::adjustWindowRect):
   71269 
   71270 2007-11-27  Timothy Hatcher  <timothy (a] apple.com>
   71271 
   71272         Reviewed by Adam Roben.
   71273 
   71274         * page/inspector/inspector.css: Make the text in the Network
   71275         panel legend more readable.
   71276 
   71277 2007-11-27  Timothy Hatcher  <timothy (a] apple.com>
   71278 
   71279         Reviewed by Adam Roben.
   71280 
   71281         Don't call setNeedsReapplyStylesInAllFrames if the
   71282         authorAndUserStylesEnabled setting didn't change.
   71283 
   71284         * page/Settings.cpp:
   71285         (WebCore::Settings::setAuthorAndUserStylesEnabled):
   71286 
   71287 2007-11-27  Alp Toker  <alp (a] atoker.com>
   71288 
   71289         Fix potential broken build due to a missing DEPENDPATH.
   71290 
   71291         * WebCore.pro:
   71292 
   71293 2007-11-26  Timothy Hatcher  <timothy (a] apple.com>
   71294 
   71295         Reviewed by Dave Hyatt.
   71296 
   71297         <rdar://problem/5569233> Add the ability to disable author and user CSS styles
   71298 
   71299         * WebCore.base.exp: Add the Settings::setAuthorAndUserStylesEnabled symbol.
   71300         * css/CSSStyleSelector.cpp:
   71301         (WebCore::CSSStyleSelector::CSSStyleSelector): Add a new matchAuthorAndUserStyles parameter.
   71302         (WebCore::CSSStyleSelector::styleForElement): Check m_matchAuthorAndUserStyles before
   71303         matching user and author rules.
   71304         (WebCore::CSSStyleSelector::pseudoStyleForElement): Ditto.
   71305         (WebCore::CSSStyleSelector::styleRulesForElement): Ditto.
   71306         * css/CSSStyleSelector.h: Add m_matchAuthorAndUserStyles and new constructor parameter.
   71307         * dom/Document.cpp:
   71308         (WebCore::Document::Document): Pass Settings::authorAndUserStylesEnabled to the CSSStyleSelector.
   71309         (WebCore::Document::recalcStyleSelector): Skip collecting the author stylesheets if
   71310         Settings::authorAndUserStylesEnabled is false, and pass that to the CSSStyleSelector.
   71311         * page/Settings.cpp:
   71312         (WebCore::Settings::Settings): Initialize m_authorAndUserStylesEnabled to true.
   71313         (WebCore::Settings::setAuthorAndUserStylesEnabled): Recalc style in all the frames
   71314         when the setting changes.
   71315         * page/Settings.h: Add m_authorAndUserStylesEnabled.
   71316         (WebCore::Settings::authorAndUserStylesEnabled): Return m_authorAndUserStylesEnabled.
   71317 
   71318 2007-11-27  Alp Toker  <alp (a] atoker.com>
   71319 
   71320         Reviewed by Mark Rowe.
   71321 
   71322         Based on changes by Mike Emmel.
   71323 
   71324         CURL HTTP backend local file fixes:
   71325 
   71326         Set a MIME type for local files based on the file extension.
   71327 
   71328         Remove any HTTP query part sent to a local file.
   71329 
   71330         * platform/network/curl/ResourceHandleManager.cpp:
   71331         (WebCore::ResourceHandleManager::startJob):
   71332 
   71333 2007-11-26  Brady Eidson  <beidson (a] apple.com>
   71334 
   71335         Reviewed by Mark Rowe
   71336 
   71337         Allow setting the default storage quota per database origin
   71338 
   71339         * WebCore.base.exp:
   71340 
   71341         * page/Settings.cpp:
   71342         (WebCore::Settings::setDefaultDatabaseOriginQuota):
   71343         (WebCore::Settings::defaultDatabaseOriginQuota):
   71344         * page/Settings.h:
   71345 
   71346         * storage/DatabaseTracker.cpp:
   71347         (WebCore::DatabaseTracker::DatabaseTracker):
   71348         (WebCore::DatabaseTracker::setDefaultOriginQuota):
   71349         (WebCore::DatabaseTracker::defaultOriginQuota):
   71350         * storage/DatabaseTracker.h:
   71351 
   71352 2007-11-26  Peter Kasting  <pkasting (a] google.com>
   71353 
   71354         Reviewed by Alp Toker.
   71355 
   71356         http://bugs.webkit.org/show_bug.cgi?id=15974
   71357         GIF decoding should respect frames' specified disposal methods.
   71358 
   71359         * platform/image-decoders/ImageDecoder.h:
   71360         (WebCore::RGBA32Buffer::):
   71361         (WebCore::RGBA32Buffer::RGBA32Buffer):
   71362         (WebCore::RGBA32Buffer::disposalMethod):
   71363         (WebCore::RGBA32Buffer::setDisposalMethod):
   71364         * platform/image-decoders/gif/GIFImageDecoder.cpp:
   71365         (WebCore::GIFImageDecoder::frameBufferAtIndex):
   71366         (WebCore::GIFImageDecoder::initFrameBuffer):
   71367         (WebCore::GIFImageDecoder::prepEmptyFrameBuffer):
   71368         (WebCore::GIFImageDecoder::haveDecodedRow):
   71369         (WebCore::GIFImageDecoder::frameComplete):
   71370         * platform/image-decoders/gif/GIFImageDecoder.h:
   71371         * platform/image-decoders/gif/GIFImageReader.cpp:
   71372         (GIFImageReader::read):
   71373         * platform/image-decoders/gif/GIFImageReader.h:
   71374         (GIFFrameReader::GIFFrameReader):
   71375 
   71376 2007-11-26  Adam Roben  <aroben (a] apple.com>
   71377 
   71378         Add a Color(CGColorRef) constructor
   71379 
   71380         Reviewed by Darin.
   71381 
   71382         * platform/graphics/Color.h:
   71383         * platform/graphics/cg/ColorCG.cpp:
   71384         (WebCore::Color::Color): Added.
   71385 
   71386 2007-11-26  Adele Peterson  <adele (a] apple.com>
   71387 
   71388         Reviewed by Darin.
   71389 
   71390         Update to last change.  Moved addPendingSheet call to within nil check for m_cachedSheet.
   71391 
   71392         * page/Frame.cpp:
   71393         (WebCore::UserStyleSheetLoader::UserStyleSheetLoader):
   71394 
   71395 2007-11-26  Adele Peterson  <adele (a] apple.com>
   71396 
   71397         Reviewed by Darin.
   71398 
   71399         Fix for <rdar://problem/5591583> CrashTracer: [USER] 157 in Mail crashes at -[WebCoreFrameBridge reapplyStylesForDeviceType:]
   71400 
   71401         * page/Frame.cpp: Add nil checks since every other caller of requestCSSStyleSheet checks for nil.
   71402         (WebCore::UserStyleSheetLoader::UserStyleSheetLoader):
   71403         (WebCore::UserStyleSheetLoader::~UserStyleSheetLoader):
   71404 
   71405 2007-11-26  Mark Rowe  <mrowe (a] apple.com>
   71406 
   71407         GCC 4.2 build fix.
   71408 
   71409         * xml/XSLTUnicodeSort.cpp: Add another WTF_ATTRIBUTE_PRINTF.
   71410 
   71411 2007-11-26  Feng Qian <feng (a] chromium.org>
   71412 
   71413         Reviewed and touched up by Sam Weinig.
   71414 
   71415         Fix for http://bugs.webkit.org/show_bug.cgi?id=16073
   71416 
   71417         Test: http/tests/security/xss-DENIED-invalid-domain-change.html
   71418 
   71419         * dom/Document.cpp:
   71420         (WebCore::Document::setDomain): Don't set the securityOrigin policy unless
   71421         the set succeeds.  Adds some early returns as well.
   71422 
   71423 2007-11-26  Steve Falkenburg  <sfalken (a] apple.com>
   71424 
   71425         Build fix.
   71426 
   71427         * WebCore.vcproj/WebCore.make:
   71428         * WebCore.vcproj/migrate-idls.sh:
   71429 
   71430 2007-11-26  Sam Weinig  <sam (a] webkit.org>
   71431 
   71432         Fix potential null-dereference.
   71433 
   71434         Reviewed by Adam Roben.
   71435 
   71436         * page/FrameTree.cpp:
   71437         (WebCore::FrameTree::isDescendantOf):
   71438 
   71439 2007-11-26  Sam Weinig  <sam (a] webkit.org>
   71440 
   71441         Reviewed by Darin.
   71442 
   71443         Fix for <rdar://problem/5592988>
   71444         - Enforce tighter restrictions on what frames in other domains
   71445           can be navigated.
   71446 
   71447         Tests: http/tests/security/frameNavigation/xss-ALLOWED-parent-navigation-change.html
   71448                http/tests/security/frameNavigation/xss-ALLOWED-targeted-subframe-navigation-change.html
   71449 
   71450         * bindings/js/kjs_window.cpp:
   71451         (KJS::Window::put):
   71452         (KJS::Location::put):
   71453         (KJS::LocationProtoFuncReplace::callAsFunction):
   71454         (KJS::LocationProtoFuncAssign::callAsFunction):
   71455         * loader/FrameLoader.cpp:
   71456         (WebCore::FrameLoader::createWindow):
   71457         (WebCore::FrameLoader::load):
   71458         (WebCore::FrameLoader::shouldAllowNavigation): Move and update logic from canTarget().
   71459         * loader/FrameLoader.h:
   71460         * page/FrameTree.cpp:
   71461         (WebCore::FrameTree::isDescendantOf): Make this O(1) in the case when both frames are not
   71462         in the same page.
   71463 
   71464 2007-11-26  Steve Falkenburg  <sfalken (a] apple.com>
   71465 
   71466         Build fix.
   71467 
   71468         * WebCore.vcproj/migrate-idls.sh:
   71469 
   71470 2007-11-26  Dan Bernstein  <mitz (a] apple.com>
   71471 
   71472         Reviewed by Dave Hyatt.
   71473 
   71474         - fix <rdar://problem/5609337> Making a float shorter does not remove it from the floating object list of a nested block it intruded into
   71475 
   71476         Test: fast/dynamic/float-withdrawal-2.html
   71477 
   71478         * rendering/RenderBlock.cpp:
   71479         (WebCore::RenderBlock::layoutBlockChildren): When a float may have
   71480         been withdrawn from a child, mark all descendants if necessary and not
   71481         just the child.
   71482 
   71483 2007-11-26  Steve Falkenburg  <sfalken (a] apple.com>
   71484 
   71485         Build fix.
   71486 
   71487         * WebCore.vcproj/MigrateIDLAndScripts: Copied from WebCore.vcproj/MigrateIDLAndScripts.make.
   71488         * WebCore.vcproj/MigrateIDLAndScripts.make: Removed.
   71489         * WebCore.vcproj/migrate-idls.sh:
   71490 
   71491 2007-11-26  Brady Eidson  <beidson (a] apple.com>
   71492 
   71493         Reviewed by Anders (and typo lovingly found by Adam)
   71494 
   71495         Change Databases to be stored in a per-origin directory hierarchy - this will make
   71496         storage quotas much easier to enforce
   71497 
   71498         * platform/SecurityOriginData.cpp:
   71499         (WebCore::SecurityOriginData::SecurityOriginData): Parse string based on '_' instead of ':'
   71500         (WebCore::SecurityOriginData::stringIdentifier): Change to use '_' as a separator instead of ':'.  
   71501           '_' still works due to not being allowed in domain names, but also is a valid filename character '
   71502           on all filesystems we care about
   71503 
   71504         * storage/DatabaseTracker.cpp:
   71505         (WebCore::DatabaseTracker::fullPathForDatabase): Create a per-origin directory hierarchy to categorize
   71506           databases by origin
   71507 
   71508 2007-11-26  Timothy Hatcher  <timothy (a] apple.com>
   71509 
   71510         Reviewed by Adam Roben.
   71511 
   71512         Bug 16137: Web Inspector window on Leopard should have a unified toolbar and window title
   71513         http://bugs.webkit.org/show_bug.cgi?id=16137
   71514 
   71515         On Leopard the toolbar background will be transparent, to allow the
   71516         window background to show through the transparent WebView. The 
   71517         search results divs needed to move inside the "main" div, so they
   71518         would be clipped and not show where the toolbar is.
   71519 
   71520         * page/InspectorController.cpp:
   71521         (WebCore::platform): Return a string for which platform we are.
   71522         (WebCore::InspectorController::windowScriptObjectAvailable):
   71523         Define the platform function on the JavaScript class.
   71524         * page/inspector/Panel.js: Add panels to the panels div.
   71525         * page/inspector/inspector.css: On the Leopard platform make
   71526         the toolbar background transparent so the window background shows.
   71527         * page/inspector/inspector.html: Add a panels div and move search
   71528         result divs inside the main div.
   71529         * page/inspector/inspector.js: Tweak the resize code to acount for
   71530         the search results divs moving inside the main div.
   71531 
   71532 2007-11-25  Rodney Dawes  <dobey (a] wayofthemonkey.com>
   71533 
   71534         Reviewed by Maciej Stachowiak.
   71535 
   71536         Remove the unneeded CFNETWORK #ifdefs.
   71537 
   71538         * loader/NetscapePlugInStreamLoader.h:
   71539 
   71540 2007-11-24  Laszlo Gombos  <laszlo.gombos (a] gmail.com>
   71541 
   71542         Reviewed by Sam Weinig.
   71543 
   71544         Add printf format attribute to several functions. Use the the new WTF_ATTRIBUTE_PRINTF define.
   71545 
   71546         * dom/XMLTokenizer.cpp:
   71547         * dom/XMLTokenizer.h:
   71548         * platform/DeprecatedString.h:
   71549         * platform/PlatformString.h:
   71550 
   71551 2007-11-25  Dan Bernstein  <mitz (a] apple.com>
   71552 
   71553         Reviewed by Adam Roben.
   71554 
   71555         - fix off-center error images
   71556 
   71557         Covered by many pixel tests with missing images
   71558 
   71559         * rendering/RenderImage.cpp:
   71560         (WebCore::RenderImage::paint): Account for the 1 pixel outline when
   71561         positioning the error image.
   71562 
   71563 2007-11-25  Kevin Ollivier  <kevino (a] theolliviers.com>
   71564 
   71565         wx build fix. Fix filename case for case-sensitive filesystems.
   71566 
   71567         * WebCoreSources.bkl:
   71568 
   71569 2007-11-22  Nikolas Zimmermann  <zimmermann (a] kde.org>
   71570 
   71571         Reviewed by Adam Roben.
   71572 
   71573         Fixes: http://bugs.webkit.org/show_bug.cgi?id=15564
   71574 
   71575         Fix problems with hidden glyphs. They were taken into account for quite
   71576         some operations (hit testing, length calulcations etc..) except painting.
   71577         Especially fixes boundaries of <textPath> (see using Web Inspector) if
   71578         text-anchor isn't equal to 'start'.
   71579 
   71580         Added testcase:
   71581         svg/text/textPathBoundsBug.svg
   71582 
   71583         Fixed testcase: (all showed text selection problems on text paths)
   71584         svg/batik/text/textGlyphOrientationHorizontal.svg
   71585         svg/batik/text/textOnPath.svg
   71586         svg/batik/text/textOnPath3.svg
   71587         svg/batik/text/verticalTextOnPath.svg
   71588         svg/text/text-align-04-b.svg
   71589         svg/W3C-SVG-1.1/text-align-04-b.svg
   71590 
   71591         * rendering/SVGCharacterLayoutInfo.cpp:
   71592         (WebCore::SVGChar::isHidden):
   71593         * rendering/SVGCharacterLayoutInfo.h:
   71594         (WebCore::SVGCharOnPath::SVGCharOnPath):
   71595         * rendering/SVGInlineTextBox.cpp:
   71596         (WebCore::SVGInlineTextBoxClosestCharacterToPositionWalker::chunkPortionCallback):
   71597         (WebCore::SVGInlineTextBoxSelectionRectWalker::chunkPortionCallback):
   71598         * rendering/SVGRootInlineBox.cpp:
   71599         (WebCore::topLeftPositionOfCharacterRange):
   71600         (WebCore::SVGRootInlineBoxPaintWalker::chunkPortionCallback):
   71601         (WebCore::cummulatedWidthOrHeightOfTextChunk):
   71602         (WebCore::applyTextAnchorToTextChunk):
   71603         (WebCore::applyTextLengthCorrectionToTextChunk):
   71604         (WebCore::SVGRootInlineBox::layoutInlineBoxes):
   71605         (WebCore::SVGRootInlineBox::buildLayoutInformationForTextBox):
   71606         (WebCore::SVGRootInlineBox::buildTextChunks):
   71607 
   71608 2007-11-25  Alexey Proskuryakov  <ap (a] webkit.org>
   71609 
   71610         Reviewed by Maciej.
   71611 
   71612         http://bugs.webkit.org/show_bug.cgi?id=15919
   71613         XSLTProcessor.transformToFragment creates an extra not defined TEXT_NODE at the end
   71614 
   71615         Test: fast/xsl/extra-lf-at-end.html
   71616 
   71617         * xml/XSLTProcessor.cpp:
   71618         (WebCore::writeToVector): Changed to use Vector to avoid slow String::apend().
   71619         (WebCore::saveResultToString): Remove trailing line feed if present.
   71620 
   71621 2007-11-24  Mark Rowe  <mrowe (a] apple.com>
   71622 
   71623         Reviewed by Tim Hatcher.
   71624 
   71625         Fix <rdar://problem/5432686> 333MB RPRVT seems to leak @ www.43folders.com (1hr plug-in stream).
   71626         http://bugs.webkit.org/show_bug.cgi?id=13705
   71627 
   71628         Don't buffer the entire stream contents in memory in the ResourceLoader.
   71629 
   71630         * loader/mac/NetscapePlugInStreamLoaderMac.mm:
   71631         (WebCore::NetscapePlugInStreamLoader::NetscapePlugInStreamLoader):
   71632         (WebCore::NetscapePlugInStreamLoader::didFinishLoading):
   71633         * loader/mac/WebPlugInStreamLoaderDelegate.h:
   71634 
   71635 2007-11-23  Adam Roben  <aroben (a] apple.com>
   71636 
   71637         Get rid of WebCoreSystemInterface on Windows
   71638 
   71639         The one function defined in that file is now in WebKitSystemInterface.
   71640 
   71641         Reviewed by Tim.
   71642 
   71643         * WebCore.vcproj/WebCore.vcproj: Removed
   71644         WebCoreSystemInterface.{cpp,h}.
   71645         * platform/graphics/cg/ImageCG.cpp: Made #include of
   71646         WebCoreSystemInterface.h Mac-only.
   71647         * platform/win/GraphicsContextWin.cpp: Ditto.
   71648         * platform/win/WebCoreSystemInterface.cpp: Removed.
   71649         * platform/win/WebCoreSystemInterface.h: Removed.
   71650 
   71651 2007-11-24  Adam Roben  <aroben (a] apple.com>
   71652 
   71653         Replace uses of %@ with %s in the inspector
   71654 
   71655         Rubberstamped by Tim.
   71656 
   71657         * English.lproj/InspectorLocalizedStrings.js: Changed %@ to %s.
   71658         * page/inspector/DatabasePanel.js: Ditto.
   71659         * page/inspector/StylesSidebarPane.js: Ditto.
   71660         * page/inspector/inspector.js: Ditto.
   71661         * page/inspector/utilities.js:
   71662         (String.vsprintf): Removed @ as a format specifier.
   71663 
   71664 2007-11-24  Adam Roben  <aroben (a] apple.com>
   71665 
   71666         Windows build fix
   71667 
   71668         Turn off the change made in r27984 on Windows for now.
   71669 
   71670         * xml/XSLTProcessor.cpp:
   71671         (WebCore::XSLTProcessor::transformToString):
   71672         * xml/XSLTUnicodeSort.cpp:
   71673 
   71674 2007-11-24  Timothy Hatcher  <timothy (a] apple.com>
   71675 
   71676         Reviewed by Adam Roben.
   71677 
   71678         Bug 16121: Web Inspector needs helper functions that pass a 'this' object to
   71679         addEventListener and setTimeout
   71680         http://bugs.webkit.org/show_bug.cgi?id=16121
   71681 
   71682         Add Function.prototype.bind. This helper will return a wrapper function
   71683         that will call the original function with the supplied arguments
   71684         and using the supplied 'this' object.
   71685 
   71686         * page/inspector/Database.js: Remove a use of setTimeout by
   71687           inheriting some common functions from Resource.
   71688         * page/inspector/DatabasePanel.js: Use the new bind function.
   71689         * page/inspector/ConsolePanel.js: Ditto.
   71690         * page/inspector/DocumentPanel.js: Ditto.
   71691         * page/inspector/NetworkPanel.js: Ditto.
   71692         * page/inspector/PropertiesSection.js: Ditto.
   71693         * page/inspector/Resource.js: Ditto.
   71694         * page/inspector/SidebarPane.js: Ditto.
   71695         * page/inspector/inspector.html: Moved Database.js after Resource.js,
   71696           now that Database.js uses it.
   71697         * page/inspector/inspector.js: Use the new bind function. Also
   71698           removed a setTimeout used for the localized strings code. There is
   71699           now a load event listener added to the localized strings script
   71700           element that will call WebInspector.loaded.
   71701         * page/inspector/utilities.js: Add Function.prototype.bind.
   71702 
   71703 2007-11-24  Timothy Hatcher  <timothy (a] apple.com>
   71704 
   71705         Reviewed by Adam Roben.
   71706 
   71707         Bug 16112: Some Web Inspector UI elements use offsetWidth and offsetHeight before the stylesheet loads
   71708         http://bugs.webkit.org/show_bug.cgi?id=16112
   71709 
   71710         In the places where we use offsetWidth and offsetHeight before
   71711         the stylesheet loads there is now a check. If the body's
   71712         offsetWidth is not greater than zero, then set a timeout
   71713         to do the updates requiring the stylesheet later.
   71714 
   71715         The three places this happened:
   71716         - DOM tree selection highlight would show up at the wrong height
   71717           when using Inspect Element to open the inspector.
   71718         - DOM tree breadcrumbs would not collapse when using Inspect Element
   71719           to open the inspector.
   71720         - Network Timeline divider lines would not show when opening directly
   71721           into the timeline.
   71722 
   71723         * page/inspector/DocumentPanel.js: Check if the stylesheet loaded.
   71724         * page/inspector/NetworkPanel.js: Ditto.
   71725         * page/inspector/inspector.html: Include the stylesheet before
   71726           any scripts, this will help get it loaded sooner.
   71727 
   71728 2007-11-24  Kevin Ollivier  <kevino (a] theolliviers.com>
   71729 
   71730         Add wx implementation for pathGetFilename
   71731 
   71732         Reviewed by David D. Kilzer.
   71733 
   71734         * html/HTMLFormElement.cpp:
   71735         (WebCore::pathGetFilename):
   71736 
   71737 2007-11-23  Timothy Hatcher  <timothy (a] apple.com>
   71738 
   71739         Reviewed by Adam Roben.
   71740 
   71741         Bug 16110: Clicking inside the resource headers in the network timeline collapses them
   71742         http://bugs.webkit.org/show_bug.cgi?id=16110
   71743 
   71744         Toggle the resource headers only if the click happens on the
   71745         resource row, not within the headers area.
   71746 
   71747         * WebCore.xcodeproj/project.pbxproj:
   71748         * page/inspector/NetworkPanel.js:
   71749 
   71750 2007-11-23  Kevin Ollivier  <kevino (a] theolliviers.com>
   71751 
   71752         Win build fixes. CURL needs winsock, so don't disable it, and
   71753         include pthreads.h to get the threadsafe *_r functions.
   71754 
   71755         Reviewed by Adam Roben.
   71756 
   71757         * config.h:
   71758         * loader/FTPDirectoryDocument.cpp:
   71759         * loader/FTPDirectoryParser.cpp:
   71760 
   71761 2007-11-23  Kevin Ollivier  <kevino (a] theolliviers.com>
   71762 
   71763         wx build fix. Move wx settings to project build settings,
   71764         remove some old settings that were masking a build problem,
   71765         and fix include ordering to ensure proper config.h and
   71766         unicode/utf8.h headers are used. 
   71767 
   71768         * webcore-base.bkl:
   71769         * webcore-wx.bkl:
   71770 
   71771 2007-11-23  Simon Hausmann  <hausmann (a] webkit.org>
   71772 
   71773         Reviewed by George Staikos <staikos (a] kde.org>.
   71774 
   71775         Another build fix specific to trunk (instead of the stable branch) to fix make clean (which the buildbots call).
   71776 
   71777         * WebCore.pro:
   71778 
   71779 2007-11-23  Alexey Proskuryakov  <ap (a] webkit.org>
   71780 
   71781         Not reviewed, trivial leak fix.
   71782 
   71783         Fix xsltUnicodeSortFunction() memory leaks.
   71784 
   71785         * xml/XSLTUnicodeSort.cpp:
   71786         (WebCore::xsltUnicodeSortFunction):
   71787 
   71788 2007-11-23  Alexey Proskuryakov  <ap (a] webkit.org>
   71789 
   71790         Reviewed by Maciej.
   71791 
   71792         <rdar://problem/5539306> REGRESSION: redirect fails when subframe's document is opened but
   71793         not closed (affects digg.com)
   71794 
   71795         Tests: fast/loader/meta-refresh-vs-open.html
   71796                fast/loader/redirect-with-open-subframe-2.html
   71797                fast/loader/redirect-with-open-subframe.html
   71798                http/tests/loading/onload-vs-immediate-refresh.pl
   71799 
   71800         * loader/FrameLoader.cpp:
   71801         (WebCore::FrameLoader::scheduleRedirection): Only check whether the load is complete for
   71802         HTTP redirects - JavaScript-initiated ones are effective immediately.
   71803 
   71804 2007-11-23  Dan Bernstein  <mitz (a] apple.com>
   71805 
   71806         Reviewed by Alexey Proskuryakov.
   71807 
   71808         - apply matrix transforms on the correct side of the transformation
   71809           matrix (not on the side where the vector is multiplied).
   71810 
   71811         Test: fast/transforms/matrix-02.html
   71812 
   71813         * rendering/RenderStyle.h:
   71814         (WebCore::MatrixTransformOperation::apply):
   71815 
   71816 2007-11-23  Alexey Proskuryakov  <ap (a] webkit.org>
   71817 
   71818         Reviewed by Maciej.
   71819 
   71820         http://bugs.webkit.org/show_bug.cgi?id=16077
   71821         <rdar://problem/5609785> XSLT processor <xsl:sort> algorithm is incompatible with other
   71822         browser implementations
   71823 
   71824         Test: fast/xsl/sort-unicode.xml
   71825 
   71826         * xml/XSLTProcessor.cpp:
   71827         (WebCore::XSLTProcessor::transformToString): Set a custom sort function.
   71828 
   71829         * xml/XSLTUnicodeSort.cpp: Added.
   71830         (init_xsltTransformError):
   71831         (xsltTransformError):
   71832         (WebCore::xsltUnicodeSortFunction):
   71833         * xml/XSLTUnicodeSort.h: Added.
   71834         ICU-based implementation of xsl:sort, using an example from libxslt distribution.
   71835         Only minimal coding style fixes to ease synchronization with upstream in the future.
   71836 
   71837         * icu/unicode/ucol.h: Added.
   71838         * icu/unicode/uset.h: Added.
   71839         Taken from ICU 3.2
   71840 
   71841         * WebCore.pro:
   71842         * WebCore.vcproj/WebCore.vcproj:
   71843         * WebCore.xcodeproj/project.pbxproj:
   71844         * WebCoreSources.bkl:
   71845         Added XSLTUnicodeSort.cpp.
   71846 
   71847 2007-11-22  Alexey Proskuryakov  <ap (a] webkit.org>
   71848 
   71849         Reviewed by Maciej.
   71850 
   71851         http://bugs.webkit.org/show_bug.cgi?id=14977
   71852         Hixie's DOM Core performance test shows insert >10x slower than append
   71853 
   71854         Each invocation of Element.childNodes[n] was creating and registering a new ChildNodeList,
   71855         which persisted and listened to notifications until GC.
   71856 
   71857         A fix is to avoid registering child node lists for notifications - they don't need them, as
   71858         they share a common cache in Node.
   71859 
   71860         * dom/Node.cpp:
   71861         (WebCore::Node::registerNodeList):
   71862         (WebCore::Node::unregisterNodeList):
   71863         (WebCore::Node::notifyLocalNodeListsAttributeChanged):
   71864         (WebCore::Node::notifyLocalNodeListsChildrenChanged):
   71865         * dom/NodeList.h:
   71866         (WebCore::NodeList::needsNotifications):
   71867 
   71868 2007-11-22  Dan Bernstein  <mitz (a] apple.com>
   71869 
   71870         Reviewed by Antti Koivisto.
   71871 
   71872         - fix http://bugs.webkit.org/show_bug.cgi?id=15811
   71873           WebKit plug-ins can re-enter WebKit under attach()
   71874           <rdar://problem/5577978>
   71875 
   71876         Defer plug-in loading until after attach and recalcStyle using the
   71877         post-attach callback mechanism. Netscape plug-ins are still loaded only
   71878         after layout.
   71879 
   71880         * dom/ContainerNode.cpp:
   71881         Made NodeCallbackQueue elements retain the Node because callbacks might
   71882         delete nodes that are in the callback queue.
   71883         (WebCore::ContainerNode::suspendPostAttachCallbacks): Added. Needed to
   71884         prevent post-attach callbacks from being dispatched under recalcStyle().
   71885         (WebCore::ContainerNode::resumePostAttachCallbacks): Ditto.
   71886         (WebCore::ContainerNode::dispatchPostAttachCallbacks): Factored out from
   71887         attach().
   71888         (WebCore::ContainerNode::attach):
   71889         * dom/ContainerNode.h:
   71890         * dom/Document.cpp:
   71891         (WebCore::Document::recalcStyle): Added calls to
   71892         suspendPostAttachCallbacks() and resumePostAttachCallbacks().
   71893         * html/HTMLEmbedElement.cpp:
   71894         (WebCore::HTMLEmbedElement::HTMLEmbedElement):
   71895         (WebCore::HTMLEmbedElement::attach): Changed to queue the widget update
   71896         for post-attach.
   71897         (WebCore::HTMLEmbedElement::updateWidget): Added. Called by the
   71898         post-attach callback.
   71899         * html/HTMLEmbedElement.h: Added an m_needWidgetUpdate member needed to
   71900         prevent a double update if another plug-in's post-attach updateWidget()
   71901         triggers a layout which updates the widget before this plug-in's
   71902         post-attach callback is invoked.
   71903         (WebCore::HTMLEmbedElement::setNeedWidgetUpdate): Added a setter for
   71904         m_needWidgetUpdate.
   71905         * html/HTMLObjectElement.cpp:
   71906         (WebCore::HTMLObjectElement::attach): Changed to queue the widget update
   71907         for post-attach.
   71908         (WebCore::HTMLObjectElement::updateWidget): Added. Called by the
   71909         post-attach callback.
   71910         * html/HTMLObjectElement.h:
   71911         (WebCore::HTMLObjectElement::setNeedWidgetUpdate): Added a setter for
   71912         m_needWidgetUpdate.
   71913         * html/HTMLPlugInElement.cpp:
   71914         (WebCore::HTMLPlugInElement::updateWidgetCallback): Added.
   71915         * html/HTMLPlugInElement.h:
   71916         (WebCore::HTMLPlugInElement::updateWidget):
   71917         * rendering/RenderPartObject.cpp:
   71918         (WebCore::RenderPartObject::updateWidget): Added calls to
   71919         setNeedWidgetUpdate(false) so that if this method is called from
   71920         FrameView::layout() during post-attach dispatch of another plug-in,
   71921         it will not be called again when this plug-in's post-attach callback
   71922         is dispatched.
   71923         * rendering/RenderPartObject.h:
   71924         (WebCore::RenderPartObject::updateWidget) Renamed argument to match
   71925         the method definition.
   71926 
   71927 2007-11-22  Timothy Hatcher  <timothy (a] apple.com>
   71928 
   71929         Reviewed by Dan Bernstein.
   71930 
   71931         Fix the Element.hasStyleClass and Element.removeStyleClass helpers
   71932         to not find and replace substrings, but whole class names at the
   71933         beginning or end of the string or surrounded by whitespace.
   71934 
   71935         * page/inspector/utilities.js:
   71936 
   71937 2007-11-22  Timothy Hatcher  <timothy (a] apple.com>
   71938 
   71939         Revert part of my r27935 change that made the Tip balloons
   71940         animate with CSS transitions. The balloon was only opacity 0,
   71941         so it would cause its row to highlight when hovering over
   71942         another row.
   71943 
   71944         * page/inspector/NetworkPanel.js:
   71945         * page/inspector/inspector.css:
   71946 
   71947 2007-11-22  Dan Bernstein  <mitz (a] apple.com>
   71948 
   71949         Reviewed by Maciej Stachowiak.
   71950 
   71951         - fix http://bugs.webkit.org/show_bug.cgi?id=15943
   71952           -webkit-transform matrix does not work
   71953 
   71954         Test: fast/transforms/matrix-01.html
   71955 
   71956         Parse all six matrix entries as numbers.
   71957 
   71958         * css/CSSParser.cpp:
   71959         (WebCore::TransformOperationInfo::TransformOperationInfo):
   71960         (WebCore::CSSParser::parseTransform):
   71961         * css/CSSStyleSelector.cpp:
   71962         (WebCore::CSSStyleSelector::applyProperty):
   71963         * rendering/RenderStyle.cpp:
   71964         (WebCore::MatrixTransformOperation::blend):
   71965         * rendering/RenderStyle.h:
   71966         (WebCore::MatrixTransformOperation::MatrixTransformOperation):
   71967         (WebCore::MatrixTransformOperation::apply):
   71968 
   71969 2007-11-22  Laszlo Gombos  <laszlo.gombos (a] gmail.com>
   71970 
   71971         Reviewed by Alp Toker.
   71972 
   71973         Fix some compilation warnings.  Do not reference undefined (platform) specific type (WebCore::CachedFont::m_fontData)
   71974 
   71975         * loader/CachedFont.cpp:
   71976         (WebCore::CachedFont::~CachedFont):
   71977         (WebCore::CachedFont::allReferencesRemoved):
   71978 
   71979 2007-11-22  Alp Toker  <alp (a] atoker.com>
   71980 
   71981         Reviewed by Mark Rowe.
   71982 
   71983         GTK+ drawing fix.
   71984 
   71985         Add a check to avoid crashing when the GraphicsContext is not
   71986         associated with a GdkEventExpose. This was noticed when adding
   71987         printing support but might be triggered in other situations too.
   71988 
   71989         * platform/gtk/WidgetGtk.cpp:
   71990         (WebCore::Widget::paint):
   71991 
   71992 2007-11-22  Julien Chaffraix  <julien.chaffraix (a] gmail.com>
   71993 
   71994         Reviewed by Alexey.
   71995 
   71996         Bug 15530: XMLHttpRequest should not support certain methods
   71997 
   71998         Test: http/tests/xmlhttprequest/xmlhttprequest-forbidden-methods-exception.html
   71999 
   72000         * xml/XMLHttpRequest.cpp:
   72001         (WebCore::XMLHttpRequest::open):
   72002 
   72003 2007-11-22  Simon Hausmann  <hausmann (a] kde.org>
   72004 
   72005         Reviewed by George.
   72006 
   72007         For the build inside Qt include qbase.pri and don't duplicate what qbase.pri otherwise does (install targets, etc.)
   72008 
   72009         * WebCore.pro:
   72010 
   72011 2007-11-22  Simon Hausmann  <hausmann (a] kde.org>
   72012 
   72013         Reviewed by George.
   72014 
   72015         Don't set OBJECTS_DIR when building inside Qt
   72016 
   72017         * WebCore.pro:
   72018 
   72019 2007-11-22  Simon Hausmann  <hausmann (a] kde.org>
   72020 
   72021         Reviewed by George.
   72022 
   72023         Use ../generated as path for the generated sources for builds inside Qt
   72024 
   72025         * WebCore.pro:
   72026 
   72027 2007-11-22  Simon Hausmann  <hausmann (a] kde.org>
   72028 
   72029         Reviewed by George.
   72030 
   72031         Make the directory of where to put the generated sources configurable through the GENERATED_SOURCE_DIR variable
   72032 
   72033         * WebCore.pro:
   72034 
   72035 2007-11-22  Simon Hausmann  <hausmann (a] kde.org>
   72036 
   72037         Reviewed by George.
   72038 
   72039         Centralize the setup for all the extra compilers in a addExtraCompiler function.
   72040         
   72041         This allows adding a "generated_files" target that builds all generated files using "make generated_files".
   72042         For the build inside Qt we do not generate actual rules for the extra compilers but instead
   72043         do the variable substitution of compiler.output manually and add the generated sources to SOURCES.
   72044 
   72045         * WebCore.pro:
   72046 
   72047 2007-11-21  Timothy Hatcher  <timothy (a] apple.com>
   72048 
   72049         Reviewed by Eric Seidel.
   72050 
   72051         Show Fonts as Yellow in the network timeline.
   72052 
   72053         * page/inspector/NetworkPanel.js:
   72054         * page/inspector/inspector.css:
   72055 
   72056 2007-11-21  Dan Bernstein  <mitz (a] apple.com>
   72057 
   72058         Reviewed by Eric Seidel.
   72059 
   72060         - fix <rdar://problem/5607037> REGRESSION (r27351): Departure date does not repaint when changed on Google Maps public transit planner (16034)
   72061 
   72062         Test: fast/repaint/subtree-root-skipped.html
   72063 
   72064         * page/FrameView.cpp:
   72065         (WebCore::FrameViewPrivate::FrameViewPrivate): Initialize the layout
   72066         root to 0.
   72067         (WebCore::FrameView::layoutRoot): Changed to return a RenderObject
   72068         instead of a Node.
   72069         (WebCore::FrameView::layout): Changed for layout root being a renderer
   72070         rather than a DOM node. Also replaced clearing the repaint rects
   72071         set with asserting that it is empty if this is the top-level call to
   72072         layout(). If it is not, the set may contain rects from enclosing
   72073         layout() and those should not be removed.
   72074         (WebCore::FrameView::scheduleRelayout): Changed for layout root being
   72075         a renderer rather than a DOM node.
   72076         (WebCore::isObjectAncestorContainerOf): Added this helper function that
   72077         tests whether one object will be marked by calling
   72078         markContainingBlocksForLayout() on the other.
   72079         (WebCore::FrameView::scheduleRelayoutOfSubtree): Changed for layout
   72080         root being a renderer rather than a DOM node. Changed the check if new
   72081         and current layout roots are on the same path from the root to use
   72082         the subgraph of the render tree defined by container()hood instead of
   72083         the DOM tree and parenthood.
   72084         * page/FrameView.h:
   72085         * rendering/RenderBox.cpp: 
   72086         (WebCore::RenderBox::calcWidth): Changed for layout root being a
   72087         renderer rather than a DOM node.
   72088         * rendering/RenderObject.cpp:
   72089         (WebCore::RenderObject::~RenderObject): Added an assertion that the
   72090         object being deleted is not currently the layout root.
   72091         (WebCore::RenderObject::scheduleRelayout): Changed for layout root being
   72092         a renderer rather than a DOM node.
   72093 
   72094 2007-11-21  Mark Rowe  <mrowe (a] apple.com>
   72095 
   72096         Reviewed by Eric.
   72097 
   72098         Fix WebCore to build without warnings under GCC 4.2.
   72099 
   72100         * Configurations/Base.xcconfig:
   72101         * css/CSSRuleList.cpp:
   72102         (WebCore::CSSRuleList::deleteRule):
   72103         * css/CSSStyleSelector.cpp:
   72104         (WebCore::CSSStyleSelector::locateSharedStyle):
   72105         * html/HTMLParser.cpp:
   72106         (WebCore::HTMLParser::allowNestedRedundantTag):
   72107         * rendering/RenderBlock.cpp:
   72108         (WebCore::RenderBlock::fillInlineSelectionGaps):
   72109         (WebCore::RenderBlock::fillBlockSelectionGaps):
   72110         * rendering/RenderLayer.cpp:
   72111         (WebCore::RenderLayer::stackingContext):
   72112         (WebCore::RenderLayer::enclosingPositionedAncestor):
   72113         (WebCore::RenderLayer::transparentAncestor):
   72114         * rendering/RenderStyle.cpp:
   72115         (WebCore::BackgroundLayer::fillUnsetProperties):
   72116         (WebCore::Transition::fillUnsetProperties):
   72117         * rendering/RenderText.cpp:
   72118         (WebCore::RenderText::containsOnlyWhitespace):
   72119         * rendering/bidi.cpp:
   72120         (WebCore::RenderBlock::determineStartPosition):
   72121 
   72122 2007-11-21  Alp Toker  <alp (a] atoker.com>
   72123 
   72124         Reviewed by Mark Rowe.
   72125 
   72126         http://bugs.webkit.org/show_bug.cgi?id=16071
   72127         Curl backend handles EINTR incorrectly
   72128 
   72129         Defer timers during select() to avoid interruption by timer signals.
   72130 
   72131         * platform/network/curl/ResourceHandleManager.cpp:
   72132         (WebCore::ResourceHandleManager::downloadTimerCallback):
   72133 
   72134 2007-11-21  Mark Rowe  <mrowe (a] apple.com>
   72135 
   72136         Reviewed by Tim Hatcher.
   72137 
   72138         Changes due to <rdar://problem/5602936> Need to resolve new GCC 4.2 warnings
   72139 
   72140         Update format strings to use format specifiers that match the argument types.
   72141 
   72142         * loader/icon/IconDatabase.cpp:
   72143         (WebCore::IconDatabase::performURLImport):
   72144         (WebCore::IconDatabase::writeToDatabase):
   72145         * platform/mac/TextCodecMac.cpp:
   72146         (WebCore::TextCodecMac::decode):
   72147         * storage/Database.cpp:
   72148         (WebCore::Database::deliverAllPendingCallbacks):
   72149 
   72150 2007-11-21  Xan Lopez  <xan (a] gnome.org>
   72151 
   72152         Reviewed by Alp Toker.
   72153 
   72154         Clarify scroll event processing with a comment.
   72155 
   72156         * platform/gtk/PlatformScrollBarGtk.cpp:
   72157         (gtkScrollEventCallback):
   72158 
   72159 2007-11-21  Timothy Hatcher  <timothy (a] apple.com>
   72160 
   72161         Reviewed by Adam Roben.
   72162 
   72163         Bug 16085: Web Inspector's Network Timeline graph code clean up and misc. fixes
   72164         http://bugs.webkit.org/show_bug.cgi?id=16085
   72165         
   72166         Changes include:
   72167         - Refactor the drawing code as nested functions instead of global functions.
   72168         - Compute the segment percentages only once per call to drawSummaryGraph.
   72169         - Account for percentages that rounded down to total less-than 100%.
   72170         - Draw the pill shadow better using the canvas shadow drawing properties.
   72171         - Removes a couple canvas context saves and restores.
   72172 
   72173         * page/inspector/NetworkPanel.js:
   72174 
   72175 2007-11-21  Alexey Proskuryakov  <ap (a] webkit.org>
   72176 
   72177         Reviewed by Adam Roben.
   72178 
   72179         http://bugs.webkit.org/show_bug.cgi?id=16056
   72180         Unicode not being interpreted correctly in Web Inspector source view
   72181 
   72182         Cannot be tested automatically.
   72183 
   72184         * loader/CachedCSSStyleSheet.cpp:
   72185         (WebCore::CachedCSSStyleSheet::encoding):
   72186         * loader/CachedCSSStyleSheet.h:
   72187         * loader/CachedResource.h:
   72188         (WebCore::CachedResource::encoding):
   72189         * loader/CachedScript.cpp:
   72190         (WebCore::CachedScript::encoding):
   72191         * loader/CachedScript.h:
   72192         * loader/CachedXBLDocument.cpp:
   72193         (WebCore::CachedXBLDocument::encoding):
   72194         * loader/CachedXBLDocument.h:
   72195         * loader/CachedXSLStyleSheet.cpp:
   72196         (WebCore::CachedXSLStyleSheet::encoding):
   72197         * loader/CachedXSLStyleSheet.h:
   72198         Teach textual CachedResources to report their encodings.
   72199 
   72200         * page/InspectorController.cpp:
   72201         (WebCore::addSourceToFrame):
   72202         (WebCore::updateResourceResponse):
   72203         Use the actual encoding - the network layer has little idea about it.
   72204 
   72205 2007-11-20  Mark Rowe  <mrowe (a] apple.com>
   72206 
   72207         Reviewed by Maciej Stachowiak.
   72208 
   72209         Fix <rdar://problem/5609579> (DOMParser().parseFromString() freezes Safari when parsing large nodes with XML entities)
   72210         http://bugs.webkit.org/show_bug.cgi?id=16076
   72211 
   72212         XMLTokenizer was calling CharacterData::appendData twice per entity in the fragment of XML being
   72213         parsed (once for text before the entity, once for the entity itself).  This triggered O(n^2) copying
   72214         of the CharacterData's string due to resizing.  We now prevent this happening by buffering all the
   72215         content for a given Text node in the XMLTokenizer before sending it out to the node in a single go.
   72216 
   72217         * dom/XMLTokenizer.cpp:
   72218         (WebCore::XMLTokenizer::characters): Append the characters to the buffer.
   72219         (WebCore::XMLTokenizer::endDocument): Ensure the buffer is flushed when the document has ended.
   72220         (WebCore::endDocumentHandler):
   72221         (WebCore::XMLTokenizer::enterText):
   72222         (WebCore::XMLTokenizer::exitText): Append the contents of the buffer to the node.
   72223         (WebCore::XMLTokenizer::initializeParserContext): Add the endDocument handler.
   72224         (WebCore::parseXMLDocumentFragment): Force endDocument to be called when parsing a fragment to ensure
   72225         that the buffer gets flushed to the node.
   72226         * dom/XMLTokenizer.h:
   72227 
   72228 2007-11-20  Timothy Hatcher  <timothy (a] apple.com>
   72229 
   72230         Reviewed by Mark Rowe.
   72231 
   72232         Animate the status area and tip balloons in the Web Inspector
   72233         with CSS animations.
   72234 
   72235         * page/inspector/NetworkPanel.js:
   72236         * page/inspector/inspector.css:
   72237         * page/inspector/inspector.js:
   72238 
   72239 2007-11-20  Kevin Ollivier  <kevino (a] theolliviers.com>
   72240 
   72241         wx build fix for Windows. Don't use WebCore/move-js-headers.sh as
   72242         it indiscriminately copies any headers inside JavaScriptCore,
   72243         which includes Tiger ICU headers. 
   72244 
   72245         * webcore-base.bkl:
   72246         Remove references to the WebCore/include dir generated by
   72247         move-js-headers.sh, and also get headers from JavaScriptCore
   72248         directly rather than from WebCore/ForwardingHeaders. 
   72249 
   72250 2007-11-20  Alp Toker  <alp (a] atoker.com>
   72251 
   72252         Reviewed by Mark Rowe.
   72253 
   72254         Avoid pointlessly mallocing and freeing this transform matrix.
   72255 
   72256         * platform/gtk/FontPlatformDataGtk.cpp:
   72257         (WebCore::FontPlatformData::FontPlatformData):
   72258 
   72259 2007-11-20  Naiem Shaik  <naiem.shaik (a] gmail.com>
   72260 
   72261         Reviewed by Alp Toker.
   72262 
   72263         http://bugs.webkit.org/show_bug.cgi?id=15763
   72264         [GTK] Enter key does not take to the link highlighted.
   72265 
   72266         Add missing keycode cases.
   72267 
   72268         * platform/gtk/KeyEventGtk.cpp:
   72269         (WebCore::keyIdentifierForGdkKeyCode):
   72270         (WebCore::windowsKeyCodeForKeyEvent):
   72271         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
   72272 
   72273 2007-11-20  Mark Rowe  <mrowe (a] apple.com>
   72274 
   72275         Reviewed by Sam Weinig.
   72276 
   72277         Fix http://bugs.webkit.org/show_bug.cgi?id=16074
   72278         Bug 16074: execCommand("InsertHorizontalRule", false, "") results in id="" being inserted
   72279 
   72280         For consistency with InsertOrderedList and InsertUnorderedList a value parameter of "" should
   72281         not result in an id being set.
   72282 
   72283         * editing/JSEditor.cpp: Don't set the id attribute if value is empty.
   72284 
   72285 2007-11-20  Dan Bernstein  <mitz (a] apple.com>
   72286 
   72287         Reviewed by Adam Roben.
   72288 
   72289         - fix <rdar://problem/5090708> Textareas render broken-looking scrollbars when too short to show full scrollbar
   72290 
   72291         * platform/win/PlatformScrollBar.h:
   72292         * platform/win/PlatformScrollBarSafari.cpp:
   72293         Added the "hit inset" constants (representing how far the track eats
   72294         into the button).
   72295         (WebCore::PlatformScrollbar::paint): Changed to paint the buttons and
   72296         the thumb only if they should be showing.
   72297         (WebCore::PlatformScrollbar::hasButtons): Added. Returns whether the
   72298         arrows should be drawn.
   72299         (WebCore::PlatformScrollbar::hasThumb): Added. Returns whether the thumb
   72300         should be drawn.
   72301         (WebCore::PlatformScrollbar::forwardButtonRect):
   72302         (WebCore::PlatformScrollbar::trackRect): Changed to return the entire
   72303         bounds of the scrollbar if the scrollbar has no buttons.
   72304         (WebCore::PlatformScrollbar::paintTrack): Changed to paint a disabled
   72305         track along the entire scrollbar if it has not buttons.
   72306         (WebCore::PlatformScrollbar::hitTest): Changed to hit test only the
   72307         parts that the scrollbar has in its current dimensions.
   72308 
   72309 2007-11-20  Mark Rowe  <mrowe (a] apple.com>
   72310 
   72311         Reviewed by Alp Toker.
   72312 
   72313         * config.h: Change #if to #ifdef to silence warnings on non-Apple platforms.
   72314 
   72315 2007-11-20  Simon Hausmann  <hausmann (a] kde.org>
   72316 
   72317         Reviewed by Adam Treat <treat (a] kde.org>.
   72318 
   72319         Remove static linkage of QtWebKit against the ICO image format plugin.
   72320         Instead build the support for the ICO image format as a proper standalone qt image format plugin and install it.
   72321 
   72322         * WebCore.pro:
   72323         * platform/graphics/qt/ImageDecoderQt.cpp:
   72324 
   72325 2007-11-20  David D. Kilzer  <ddkilzer (a] webkit.org>
   72326 
   72327         no-svg build broken after r27278
   72328         <http://bugs.webkit.org/show_bug.cgi?id=16061>
   72329 
   72330         Reviewed by Eric.
   72331 
   72332         * bindings/scripts/CodeGeneratorObjC.pm: Always generate DOMHTMLEmbedElementPrivate.h
   72333         and DOMHTMLObjectElementPrivate.h for no-svg build.
   72334 
   72335 2007-11-20  Adam Treat  <treat (a] kde.org>
   72336 
   72337         Reviewed by Simon.
   72338 
   72339         * Don't use so much heap memory.
   72340 
   72341         * platform/graphics/qt/ImageDecoderQt.cpp:
   72342         * platform/graphics/qt/ImageDecoderQt.h:
   72343         * platform/graphics/qt/ImageSourceQt.cpp:
   72344         (WebCore::ImageSource::createFrameAtIndex):
   72345 
   72346 2007-11-20  Lars Knoll  <lars (a] trolltech.com>
   72347 
   72348         Reviewed by Simon.
   72349 
   72350         Fix text break interators.
   72351         
   72352         The break iterators where trying to be smart about the input
   72353         string and caching their results. Unfortunately a pointer/string length
   72354         comparison is not good enough in all cases (since some input is stack based
   72355         temp strings). Removed the caching but at the same time started to use a more
   72356         efficient constructor of QTextBoundaryFinder that doesn't need to malloc for
   72357         most strings.
   72358         
   72359         Fixes two test cases that test "text-transform: capitalize".
   72360 
   72361         * platform/qt/TextBreakIteratorQt.cpp:
   72362         (WebCore::wordBreakIterator):
   72363         (WebCore::characterBreakIterator):
   72364         (WebCore::lineBreakIterator):
   72365         (WebCore::sentenceBreakIterator):
   72366 
   72367 2007-11-20  Adam Treat  <treat (a] kde.org>
   72368 
   72369         Reviewed by George.
   72370 
   72371         * Make gif animations work for instance.
   72372 
   72373         * platform/graphics/qt/ImageDecoderQt.cpp:
   72374         (WebCore::ImageDecoderQt::reset):
   72375         (WebCore::ImageDecoderQt::setData):
   72376         (WebCore::ImageDecoderQt::frameCount):
   72377         (WebCore::ImageDecoderQt::repetitionCount):
   72378         * platform/graphics/qt/ImageDecoderQt.h:
   72379 
   72380 2007-11-20  Adam Treat  <treat (a] kde.org>
   72381 
   72382         * Build in release mode
   72383 
   72384         * platform/NotImplemented.h:
   72385 
   72386 2007-11-20  Adam Treat  <treat (a] kde.org>
   72387 
   72388         Reviewed by Simon and George.
   72389 
   72390         * Be quiet and allow suppression of NotImplemented calls at runtime.
   72391 
   72392         * platform/NotImplemented.h:
   72393 
   72394 2007-11-19  Doug Turner  <dougt (a] meer.net>
   72395 
   72396         Reviewed by Alp Toker.
   72397 
   72398         http://bugs.webkit.org/show_bug.cgi?id=16054
   72399         Crash when GlyphPage::fill is called with more than 256 bytes of data
   72400 
   72401         http://bugs.webkit.org/show_bug.cgi?id=14446
   72402         [GDK] Crash on http://www.wikipedia.org/
   72403 
   72404         setGlyphDataForIndex() uses a fixed array of size 256 which we can't
   72405         exceed. We need to return failure if the buffer has Unicode
   72406         supplementary characters for now.
   72407 
   72408         This strategy matches the Win port, which also doesn't support this
   72409         case yet.
   72410 
   72411         Add an assertion so nobody makes this mistake again.
   72412 
   72413         * platform/GlyphPageTreeNode.h:
   72414         (WebCore::GlyphPage::setGlyphDataForIndex):
   72415         * platform/gtk/GlyphPageTreeNodeGtk.cpp:
   72416         (WebCore::GlyphPage::fill):
   72417 
   72418 2007-11-19  Doug Turner  <dougt (a] meer.net>
   72419 
   72420         Reviewed by Timothy Hatcher.
   72421 
   72422         http://bugs.webkit.org/show_bug.cgi?id=16050
   72423         sqlite3_prepare16_v2 build bustage.
   72424 
   72425         Using the correct SQLITE_VERSION_NUMBER around sqlite_prepare16_v2
   72426         to fix build bustage.
   72427 
   72428         * platform/sql/SQLiteStatement.cpp:
   72429         (WebCore::SQLiteStatement::prepare):
   72430 
   72431 2007-11-19  Mark Rowe  <mrowe (a] apple.com>
   72432 
   72433         Build fix.  Don't over-qualify the constructor name.
   72434 
   72435         * storage/DatabaseDetails.h:
   72436 
   72437 2007-11-19  Brady Eidson <beidson (a] apple.com>
   72438 
   72439         Reviewed by Maciej
   72440 
   72441         Stub out the WebCore parts of the WebKit API
   72442 
   72443         * WebCore.base.exp:
   72444         * WebCore.xcodeproj/project.pbxproj:
   72445 
   72446         * storage/DatabaseDetails.h: Added.  Simple container for vitals on a specific database
   72447         (WebCore::DatabaseDetails::DatabaseDetails::DatabaseDetails):
   72448         (WebCore::DatabaseDetails::DatabaseDetails):
   72449         (WebCore::DatabaseDetails::isValid):
   72450         (WebCore::DatabaseDetails::name):
   72451         (WebCore::DatabaseDetails::version):
   72452         (WebCore::DatabaseDetails::displayName):
   72453         (WebCore::DatabaseDetails::expectedUsage):
   72454         (WebCore::DatabaseDetails::currentUsage):
   72455 
   72456         * storage/DatabaseTracker.cpp:  Added various methods for API usage
   72457         (WebCore::DatabaseTracker::detailsForNameAndOrigin):
   72458         (WebCore::DatabaseTracker::usageForOrigin):
   72459         (WebCore::DatabaseTracker::quotaForOrigin):
   72460         (WebCore::DatabaseTracker::setQuota):
   72461         * storage/DatabaseTracker.h:
   72462 
   72463 2007-11-19  Kevin Ollivier  <kevino (a] theolliviers.com>
   72464 
   72465         wx port build fix.
   72466 
   72467         * platform/graphics/wx/AffineTransformWx.cpp:
   72468         (WebCore::AffineTransform::operator== ):
   72469         m_transform is only available when using wxGraphicsContext.
   72470 
   72471 2007-11-19  Alp Toker  <alp (a] atoker.com>
   72472 
   72473         Reviewed by Mark Rowe.
   72474 
   72475         GTK+ drawing fixes.
   72476 
   72477         Add a check to avoid crashing when the GraphicsContext is not
   72478         associated with a GdkDrawable. This was noticed when adding printing
   72479         support but might be triggered in other situations too.
   72480 
   72481         Do not render themes when painting is disabled. This is an
   72482         optimisation for cases where GraphicsContext is used to calculate page
   72483         dimensions etc. without actually rendering.
   72484 
   72485         * platform/graphics/cairo/GraphicsContextCairo.cpp:
   72486         (WebCore::GraphicsContext::gdkDrawable):
   72487         * platform/gtk/RenderThemeGtk.cpp:
   72488         (WebCore::paintMozWidget):
   72489 
   72490 2007-11-13  Rahul Abrol  <ra5ul (a] comcast.net>
   72491 
   72492         Reviewed by Tim Hatcher.
   72493 
   72494         http://bugs.webkit.org/show_bug.cgi?id=15977
   72495         Resizing images preference now toggles default image state.
   72496 
   72497         * loader/ImageDocument.cpp:
   72498         (WebCore::ImageDocument::ImageDocument):
   72499         (WebCore::ImageDocument::createDocumentStructure):
   72500         (WebCore::ImageDocument::imageChanged):
   72501 
   72502 2007-11-19  Kevin Ollivier  <kevino (a] theolliviers.com>
   72503 
   72504         Update wx port build sources with recent changes, update
   72505         wx FontPlatformData to be a class (MSVC7 gets confused
   72506         otherwise...) and implement its hash() method.
   72507 
   72508         Reviewed by Adam.
   72509 
   72510         * WebCoreSources.bkl:
   72511         * platform/wx/FontPlatformData.h:
   72512         (WebCore::FontPlatformData::hash):
   72513 
   72514 2007-11-19  Julien Chaffraix  <julien.chaffraix (a] gmail.com>
   72515 
   72516         Reviewed by Darin.
   72517 
   72518         http://bugs.webkit.org/show_bug.cgi?id=12194
   72519         Bug 12194: Trying to access XMLHttpRequest.responseText or responseXML when they 
   72520         are not available should raise an exception
   72521 
   72522         Tests: http/tests/xmlhttprequest/xmlhttprequest-responseText-exception.html
   72523                http/tests/xmlhttprequest/xmlhttprequest-responseXML-exception.html
   72524 
   72525         * bindings/js/JSXMLHttpRequest.cpp:
   72526         (KJS::JSXMLHttpRequest::getValueProperty):
   72527         * xml/XMLHttpRequest.cpp:
   72528         (WebCore::XMLHttpRequest::getResponseText):
   72529         (WebCore::XMLHttpRequest::getResponseXML):
   72530         * xml/XMLHttpRequest.h:
   72531 
   72532 2007-11-19  Peter Kasting  <pkasting (a] google.com>
   72533 
   72534         Reviewed by Darin Adler.
   72535 
   72536         http://bugs.webkit.org/show_bug.cgi?id=15971
   72537         The GIF decoder should not fail decoding if the caller asks it to
   72538         decode again when no new data has arrived since the last call.
   72539 
   72540         * platform/image-decoders/gif/GIFImageReader.cpp:
   72541         (GIFImageReader::read):
   72542 
   72543 2007-11-18  Brady Eidson <beidson (a] apple.com>
   72544 
   72545         Reviewed by Eric
   72546 
   72547         Fix a crash hashing a default SecurityOriginData object 
   72548 
   72549         * storage/DatabaseTracker.cpp:
   72550         (WebCore::SecurityOriginDataHash::hash): The default object has some default strings with NULL
   72551           StringImpls - don't try to hash those!
   72552 
   72553 2007-11-18  Timothy Hatcher  <timothy (a] apple.com>
   72554 
   72555         Reviewed by Sam Weinig.
   72556 
   72557         Bug 16043: Remove InspectorController.log now that console.log works
   72558         http://bugs.webkit.org/show_bug.cgi?id=16043
   72559 
   72560         Remove the last uses of InspectorController.log. Once use was no longer needed,
   72561         checking an erro case that can't happen anymore. The other case now uses console.error.
   72562 
   72563         * page/InspectorController.cpp: Remove the log function.
   72564         (WebCore::InspectorController::windowScriptObjectAvailable): Remove the log function from
   72565         InspectorController script class.
   72566         * page/inspector/DocumentPanel.js: Remove a use of InspectorController.log that isn't needed.
   72567         * page/inspector/Panel.js: Change InspectorController.log to console.log and early return.
   72568 
   72569 2007-11-18  Timothy Hatcher  <timothy (a] apple.com>
   72570 
   72571         Reviewed by Brady.
   72572 
   72573         Bug 16041: REGRESSION: the Database panel in the Inspector stopped showing errors
   72574         http://bugs.webkit.org/show_bug.cgi?id=16041
   72575 
   72576         * page/inspector/DatabasePanel.js: Implement error callbacks to pass to executeSql()
   72577           and transaction(). Refactored some code for the success and error callbacks to use.
   72578 
   72579 2007-11-18  Alexey Proskuryakov  <ap (a] webkit.org>
   72580 
   72581         Reviewed by Maciej.
   72582 
   72583         <rdar://problem/5546393> Whitespace handling doesn't match HTML5.
   72584 
   72585         HTML5 definition is the same as MSIE's, with the exception that the latter strips null
   72586         characters. Firefox also treats U+0008 as whitespace, but not U+000B or U+000C.
   72587 
   72588         Test: fast/parser/html-whitespace.html
   72589 
   72590         * html/HTMLTokenizer.cpp:
   72591         (WebCore::HTMLTokenizer::parseSpecial):
   72592         (WebCore::HTMLTokenizer::parseTag):
   72593         Use isASCIISpace, which matches HTML5 definition of whitespace, and also what we use to
   72594         check for whitespace almost everywhere.
   72595 
   72596 2007-11-17  Mark Rowe  <mrowe (a] apple.com>
   72597 
   72598         Reviewed by Darin Adler.
   72599 
   72600         Fix: <rdar://problem/5607032> REGRESSION: testapi exits with assertion failure in debug build
   72601              <rdar://problem/5440659> JSGlobalContextCreate throws away globalObjectClass's prototype
   72602              http://bugs.webkit.org/show_bug.cgi?id=16033
   72603 
   72604         Update for changes in Interpreter method signatures.
   72605 
   72606         * bindings/js/kjs_binding.cpp:
   72607         (KJS::ScriptInterpreter::ScriptInterpreter):
   72608         * bindings/js/kjs_window.cpp:
   72609         (KJS::Window::clear):
   72610 
   72611 2007-11-17  Timothy Hatcher  <timothy (a] apple.com>
   72612 
   72613         Reviewed by Mark Rowe.
   72614 
   72615         Bug 13470: i18n: The Web Inspector is not localizable
   72616         http://bugs.webkit.org/show_bug.cgi?id=13470
   72617 
   72618         Add support for localization to the Web Inspector. Clients need to
   72619         implement localizedStringsURL() to return the URL of the
   72620         InspectorLocalizedStrings.js that best matches the user's language.
   72621 
   72622         * English.lproj: Added.
   72623         * English.lproj/InspectorLocalizedStrings.js: Added.
   72624         * WebCore.xcodeproj/project.pbxproj: Add InspectorLocalizedStrings.js.
   72625         * page/InspectorClient.h: Add localizedStringsURL.
   72626         * page/InspectorController.cpp: Add localizedStringsURL that calls
   72627           the client. Also added a version exposed to JavaScript.
   72628         * page/InspectorController.h: Add localizedStringsURL.
   72629         * page/inspector/ConsolePanel.js: Call WebInspector.UIString
   72630           for user visible strings.
   72631         * page/inspector/DatabasePanel.js: Ditto.
   72632         * page/inspector/DocumentPanel.js: Ditto.
   72633         * page/inspector/ImagePanel.js: Ditto.
   72634         * page/inspector/MetricsSidebarPane.js: Ditto.
   72635         * page/inspector/NetworkPanel.js: Ditto.
   72636         * page/inspector/Panel.js: Ditto.
   72637         * page/inspector/PropertiesSidebarPane.js: Ditto.
   72638         * page/inspector/Resource.js: Ditto.
   72639         * page/inspector/ResourceCategory.js: Ditto.
   72640         * page/inspector/SourcePanel.js: Ditto.
   72641         * page/inspector/StylesSidebarPane.js: Ditto.
   72642         * page/inspector/inspector.css: Use pre-wrap so database errors can use \n.
   72643         * page/inspector/inspector.html: Remove some user visible strings.
   72644         * page/inspector/inspector.js: Added WebInspector.UIString and call
   72645           WebInspector.UIString for user visible strings. Some code needed to be 
   72646           moved to WebInspector.loaded to use UIString after the localized strings
   72647           get loaded.
   72648         * platform/graphics/svg/SVGImageEmptyClients.h:
   72649         (WebCore::SVGEmptyFrameLoaderClient::redirectDataToPlugin): Remove WebCore:: prefix.
   72650         (WebCore::SVGEmptyInspectorClient::createPage): Ditto.
   72651         (WebCore::SVGEmptyInspectorClient::localizedStringsURL): Add empty stub.
   72652         (WebCore::SVGEmptyInspectorClient::highlight): Remove WebCore:: prefix.
   72653         (WebCore::SVGEmptyInspectorClient::inspectedURLChanged): Ditto.
   72654 
   72655 2007-11-17  Timothy Hatcher  <timothy (a] apple.com>
   72656 
   72657         Reviewed by Adam.
   72658 
   72659         Reworte String.sprintf to fix many bad bugs and to not use RegExp. Also added
   72660         String.vsprintf so it can be used later for the localization function.
   72661 
   72662         This version only supports argument reordering, precision for floats, and these
   72663         format characters: d, f, s and @. Any unsupported format characters are logged
   72664         and substituted like strings.
   72665 
   72666         * page/inspector/utilities.js:
   72667 
   72668 2007-11-17  Alexey Proskuryakov  <ap (a] webkit.org>
   72669 
   72670         Windows build fix.
   72671 
   72672         * editing/Editor.h: Made canSmartCopyOrDelete public, as Windows WebView still needs it.
   72673 
   72674 2007-11-17  Alexey Proskuryakov  <ap (a] webkit.org>
   72675 
   72676         Reviewed by Darin.
   72677 
   72678         http://bugs.webkit.org/show_bug.cgi?id=15969
   72679         Eliminate Editor::deleteRange()
   72680 
   72681         No change in functionality.
   72682 
   72683         * editing/CompositeEditCommand.h: Removed unimplemented deleteKeyPressed().
   72684 
   72685         * editing/Editor.cpp:
   72686         (WebCore::Editor::deleteWithDirection):
   72687         (WebCore::Editor::cut):
   72688         (WebCore::Editor::performDelete):
   72689         * editing/Editor.h:
   72690         Moved relevant Editor::deleteRange() functionality to its callers.
   72691         Removed deleteSelectionWithSmartDelete(void), which was more confusing than helpful
   72692         in my opinion.
   72693 
   72694         * editing/mac/EditorMac.mm:
   72695         (WebCore::initializeKillRingIfNeeded):
   72696         (WebCore::Editor::addToKillRing):
   72697         (WebCore::Editor::yank):
   72698         (WebCore::Editor::yankAndSelect):
   72699         (WebCore::Editor::setMark):
   72700         (WebCore::unionDOMRanges):
   72701         (WebCore::Editor::deleteToMark):
   72702         (WebCore::Editor::selectToMark):
   72703         (WebCore::Editor::swapWithMark):
   72704         Pushed kill ring handling down from WebCore.
   72705 
   72706         * page/mac/WebCoreFrameBridge.h:
   72707         * page/mac/WebCoreFrameBridge.mm:
   72708         Removed setMarkDOMRange (the corresponding getter is still needed).
   72709 
   72710         * WebCore.base.exp: No longer need to export Editor::deleteRange() and Editor::insertTextWithoutSendingTextEvent().
   72711         Export the new kill ring functions.
   72712 
   72713 2007-11-16  Ryan Leavengood  <leavengood (a] gmail.com>
   72714 
   72715         Reviewed by David Kilzer.
   72716 
   72717         Build fix: the needed headers for POSIX file functions were not
   72718         included.
   72719 
   72720         * platform/posix/FileSystemPOSIX.cpp:
   72721 
   72722 2007-11-16  Dan Bernstein  <mitz (a] apple.com>
   72723 
   72724         Reviewed by Darin Adler.
   72725 
   72726         - fix the common case of <http://bugs.webkit.org/show_bug.cgi?id=15994>
   72727           REGRESSION: Incomplete repaint of CSS image substitution
   72728 
   72729         Test: fast/repaint/clip-with-layout-delta.html
   72730 
   72731         * rendering/LayoutState.cpp:
   72732         (WebCore::LayoutState::LayoutState): Account for layout delta when
   72733         pushing additional clip.
   72734 
   72735 2007-11-16  Antti Koivisto  <antti (a] apple.com>
   72736 
   72737         Reviewed by Adele.
   72738         
   72739         Seeking related fixes, updates to match the latest specification
   72740         - rename loopCount of HTMLMediaElement to playCount
   72741         - add explicit seeking attribute to HTMLMediaElement to get semantics right
   72742         - implement the specification behavior that currentTime must immediately return seeked position in HTMLMediaElement 
   72743           instead of MoviePrivateQTKit 
   72744         - fix broken behavior when seeking past end of the media, add tests
   72745         - replace Movie didEnd callback with broader timeChanged callback (which gets called in didEnd case too)
   72746         - use setDelayCallbacks: in various MoviePrivateQTKit methods to avoid bug prone synchronous callbacks from QT, make
   72747           HTMLMediaElement not depend on synchronous callbacks
   72748         - do some cleanups and simplifications in MoviePrivateQTKit, get rid of m_rateBeforeSeek and m_blockStateUpdate variables
   72749 
   72750         Tests: http/tests/media/video-seekable-stall.html
   72751                media/video-seeking.html
   72752                media/video-seek-past-end-paused.html
   72753                media/video-seek-past-end-playing.html
   72754 
   72755         * html/HTMLAttributeNames.in: 
   72756         * html/HTMLMediaElement.cpp:
   72757         (WebCore::HTMLMediaElement::HTMLMediaElement):
   72758         (WebCore::HTMLMediaElement::load):
   72759         (WebCore::HTMLMediaElement::movieNetworkStateChanged):
   72760         (WebCore::HTMLMediaElement::setReadyState):
   72761         (WebCore::HTMLMediaElement::seek):
   72762         (WebCore::HTMLMediaElement::seeking):
   72763         (WebCore::HTMLMediaElement::currentTime):
   72764         (WebCore::HTMLMediaElement::ended):
   72765         (WebCore::HTMLMediaElement::play):
   72766         (WebCore::HTMLMediaElement::pause):
   72767         (WebCore::HTMLMediaElement::playCount):
   72768         (WebCore::HTMLMediaElement::setPlayCount):
   72769         (WebCore::HTMLMediaElement::checkIfSeekNeeded):
   72770         (WebCore::HTMLMediaElement::movieTimeChanged):
   72771         (WebCore::HTMLMediaElement::endedPlayback):
   72772         (WebCore::HTMLMediaElement::updateMovie):
   72773         * html/HTMLMediaElement.h:
   72774         * html/HTMLMediaElement.idl:
   72775         * platform/graphics/Movie.cpp:
   72776         (WebCore::Movie::timeChanged):
   72777         * platform/graphics/Movie.h:
   72778         (WebCore::MovieClient::movieTimeChanged):
   72779         * platform/graphics/mac/MoviePrivateQTKit.h:
   72780         * platform/graphics/mac/MoviePrivateQTKit.mm:
   72781         (WebCore::MoviePrivate::MoviePrivate):
   72782         (WebCore::MoviePrivate::load):
   72783         (WebCore::MoviePrivate::play):
   72784         (WebCore::MoviePrivate::pause):
   72785         (WebCore::MoviePrivate::currentTime):
   72786         (WebCore::MoviePrivate::seek):
   72787         (WebCore::MoviePrivate::doSeek):
   72788         (WebCore::MoviePrivate::cancelSeek):
   72789         (WebCore::MoviePrivate::seekTimerFired):
   72790         (WebCore::MoviePrivate::startCuePointTimerIfNeeded):
   72791         (WebCore::MoviePrivate::paused):
   72792         (WebCore::MoviePrivate::updateStates):
   72793         (WebCore::MoviePrivate::timeChanged):
   72794         (WebCore::MoviePrivate::didEnd):
   72795 
   72796 2007-11-16  Anders Carlsson  <andersca (a] apple.com>
   72797 
   72798         Reviewed by Adam.
   72799 
   72800         <rdar://problem/5603832>
   72801         XMLHttpRequest readyState 3 & responseText buffer issues.
   72802 
   72803         * platform/network/cf/ResourceHandleCFNet.cpp:
   72804         (WebCore::makeFinalRequest):
   72805         Add new parameter which controls whether content sniffing should be turned off.
   72806         
   72807         (WebCore::ResourceHandle::loadResourceSynchronously):
   72808         Always content sniff sync loads.
   72809         
   72810         * platform/network/cf/ResourceRequestCFNet.cpp:
   72811         (WebCore::ResourceRequest::doUpdatePlatformRequest):
   72812         If the ResourceRequest already has a backing CFURLRequest, make a copy of it. This preserves
   72813         any properties set on the CFURLRequest.
   72814 
   72815 2007-11-16  Jon Honeycutt  <jhoneycutt (a] apple.com>
   72816 
   72817         Reviewed by Ollie.
   72818 
   72819         <rdar://problem/5605175> Crash closing or leaving window with ViewPoint 
   72820         Media player plugin
   72821 
   72822         ViewPoint plugin requires that we pass a valid NPSavedData* to
   72823         NPP_Destroy.
   72824 
   72825         * plugins/win/PluginViewWin.cpp: Pass a valid NPSavedData* to
   72826         NPP_Destroy. If the plugin allocates data, discard it
   72827 
   72828 2007-11-16  Mark Rowe  <mrowe (a] apple.com>
   72829 
   72830         Reviewed by Tim Hatcher.
   72831 
   72832         Build WebCore as a sub-framework of WebKit in all configurations.
   72833 
   72834         * Configurations/WebCore.xcconfig:
   72835         * WebCore.xcodeproj/project.pbxproj:
   72836 
   72837 2007-11-16  Doug Turner  <dougt (a] meer.net>
   72838 
   72839         Reviewed by Alp.
   72840 
   72841         http://bugs.webkit.org/show_bug.cgi?id=16018
   72842         build bustage when building on debian 4.0
   72843 
   72844         Fix build bustage on GTK+ with older versions of Pango.
   72845 
   72846         Don't cache the return value since the docs say it can change.
   72847 
   72848         * platform/gtk/Language.cpp:
   72849         (WebCore::defaultLanguage):
   72850 
   72851 2007-11-16  Brady Eidson  <beidson (a] apple.com>
   72852 
   72853         Build fix
   72854 
   72855         * platform/SecurityOriginData.h:
   72856         (WebCore::operator!=): Whoops!
   72857 
   72858 2007-11-16  Brady Eidson  <beidson (a] apple.com>
   72859 
   72860         Reviewed by Sam
   72861 
   72862         Further purify DatabaseTracker to use SecurityOriginData instead of "a String"
   72863 
   72864         * WebCore.base.exp:
   72865         * WebCore.xcodeproj/project.pbxproj:
   72866         * WebCore.vcproj/WebCore.vcproj
   72867         * WebCore.pro
   72868 
   72869         * platform/SecurityOriginData.cpp: Added.
   72870         (WebCore::SecurityOriginData::SecurityOriginData): Add a constructor that takes a "stringIdentifier"-style string,
   72871           since that form is what will be stored in the Databases.db on disk
   72872         (WebCore::SecurityOriginData::stringIdentifier):
   72873         * platform/SecurityOriginData.h:
   72874         (WebCore::SecurityOriginData::protocol):
   72875         (WebCore::SecurityOriginData::host):
   72876         (WebCore::SecurityOriginData::port):
   72877 
   72878         * storage/DatabaseTracker.cpp:
   72879         (WebCore::SecurityOriginDataHash::hash): Follow the pattern Darin set in FontCache.cpp to make a decent hash for 
   72880           a SecurityOriginData object
   72881         (WebCore::SecurityOriginDataHash::equal):
   72882         (WebCore::SecurityOriginDataTraits::deletedValue): "file::1" will never exist in normal operation
   72883         (WebCore::SecurityOriginDataTraits::emptyValue): "file::2" will never exist in normal operation
   72884         (WebCore::DatabaseTracker::fullPathForDatabase):
   72885         (WebCore::DatabaseTracker::populateOrigins):
   72886         (WebCore::DatabaseTracker::origins):
   72887         (WebCore::DatabaseTracker::addDatabase):
   72888         * storage/DatabaseTracker.h:
   72889 
   72890 2007-11-16  Alexey Proskuryakov  <ap (a] webkit.org>
   72891 
   72892         Windows build fix.
   72893 
   72894         * WebCore.vcproj/WebCore.vcproj: Removed VoidCallback.cpp, added JSCustomVoidCallback.{h,cpp}.
   72895 
   72896 2007-11-16  Nikolas Zimmermann  <zimmermann (a] kde.org>
   72897 
   72898         Reviewed by Eric.
   72899 
   72900         Fixes: http://bugs.webkit.org/show_bug.cgi?id=12290
   72901 
   72902         Implement all SVGTextContentElement DOM methods.
   72903         This is the last missing SVG text feature. SVG fonts is next.
   72904 
   72905         Added testcase: svg/custom/text-dom-01-f.svg (tests all new methods)
   72906 
   72907         * ksvg2/svg/SVGTextContentElement.cpp:
   72908         (WebCore::cummulatedCharacterRangeLength):
   72909         (WebCore::SVGInlineTextBoxQueryWalker::):
   72910         (WebCore::SVGInlineTextBoxQueryWalker::SVGInlineTextBoxQueryWalker):
   72911         (WebCore::SVGInlineTextBoxQueryWalker::chunkPortionCallback):
   72912         (WebCore::SVGInlineTextBoxQueryWalker::setQueryInputParameters):
   72913         (WebCore::SVGInlineTextBoxQueryWalker::longResult):
   72914         (WebCore::SVGInlineTextBoxQueryWalker::floatResult):
   72915         (WebCore::SVGInlineTextBoxQueryWalker::pointResult):
   72916         (WebCore::SVGInlineTextBoxQueryWalker::rectResult):
   72917         (WebCore::SVGInlineTextBoxQueryWalker::stopProcessing):
   72918         (WebCore::findInlineTextBoxInTextChunks):
   72919         (WebCore::rootInlineBoxForTextContentElement):
   72920         (WebCore::executeTextQuery):
   72921         (WebCore::SVGTextContentElement::getNumberOfChars):
   72922         (WebCore::SVGTextContentElement::getComputedTextLength):
   72923         (WebCore::SVGTextContentElement::getSubStringLength):
   72924         (WebCore::SVGTextContentElement::getStartPositionOfChar):
   72925         (WebCore::SVGTextContentElement::getEndPositionOfChar):
   72926         (WebCore::SVGTextContentElement::getExtentOfChar):
   72927         (WebCore::SVGTextContentElement::getRotationOfChar):
   72928         (WebCore::SVGTextContentElement::getCharNumAtPosition):
   72929         (WebCore::SVGTextContentElement::selectSubString):
   72930         * ksvg2/svg/SVGTextContentElement.h:
   72931         * rendering/SVGInlineTextBox.h:
   72932 
   72933 2007-11-15  Adele Peterson  <adele (a] apple.com>
   72934 
   72935         Reviewed by Oliver.
   72936 
   72937         Fix for <rdar://problem/5566652> CrashTracer: [USER] 3 crashes in Safari at HTMLSelectElement::menuListDefaultEventHandler (reproducible on mactc30.com)
   72938 
   72939         Test: fast/forms/menulist-no-renderer-onmousedown.html
   72940 
   72941         * html/HTMLSelectElement.cpp:
   72942         (WebCore::HTMLSelectElement::defaultEventHandler): Nil check the renderer here.  None of the default behavior makes sense if there's no renderer.
   72943         (WebCore::HTMLSelectElement::listBoxDefaultEventHandler): Moved the nil check to the main defaultEventHandler.
   72944 
   72945 2007-11-15  Antti Koivisto  <antti (a] apple.com>
   72946 
   72947         Reviewed by Adele.
   72948 
   72949         Fix <rdar://problem/5601598>
   72950         The movie tag should do initialization on need and not during startup.
   72951         
   72952         Initialize Movie MIME type hash on demand
   72953 
   72954         * platform/MIMETypeRegistry.cpp:
   72955         (WebCore::initialiseSupportedMovieMIMETypes):
   72956         (WebCore::initialiseMIMETypeRegistry):
   72957         (WebCore::MIMETypeRegistry::isSupportedMovieMIMEType):
   72958         (WebCore::MIMETypeRegistry::getSupportedMovieMIMETypes):
   72959 
   72960 2007-11-15  Mark Rowe  <mrowe (a] apple.com>
   72961 
   72962         Build fix for Qt on Windows.
   72963 
   72964         * xml/XPathStep.cpp:
   72965         (WebCore::XPath::Step::nodesInAxis):
   72966 
   72967 2007-11-15  Timothy Hatcher  <timothy (a] apple.com>
   72968 
   72969         Reviewed by Mark Rowe.
   72970 
   72971         Bug 14761: Web Inspector leaks JS objects and DOM nodes
   72972         http://bugs.webkit.org/show_bug.cgi?id=14761
   72973 
   72974         * page/InspectorController.cpp:
   72975         (WebCore::InspectorController::~InspectorController):
   72976         Change the tear down order so that inspectorDestroyed() is called before
   72977         InspectorController private data is set to Zero. The inspectorDestroyed()
   72978         call ends up closing the WebView and triggering InspectorController::close()
   72979         which unprotects m_scriptObject. This didn't happen when the private data
   72980         was cleared before calling inspectorDestroyed().
   72981 
   72982 2007-11-15  Mark Rowe  <mrowe (a] apple.com>
   72983 
   72984         Gtk build fix.
   72985 
   72986         * WebCore.pro:
   72987 
   72988 2007-11-15  Alexey Proskuryakov  <ap (a] webkit.org>
   72989 
   72990         Reviewed by Darin.
   72991 
   72992         http://bugs.webkit.org/show_bug.cgi?id=15989
   72993         XPath queries with predicates incorrectly retains the current node across unions
   72994 
   72995         Test: fast/xpath/union-context-node.xhtml
   72996 
   72997         * xml/XPathPath.cpp:
   72998         (WebCore::XPath::LocationPath::evaluate): Restore context after evaluation.
   72999         * xml/XPathStep.cpp:
   73000         (WebCore::XPath::Step::evaluate): Do not backup context, as we can easily re-create it.
   73001 
   73002 2007-11-15  Alexey Proskuryakov  <ap (a] webkit.org>
   73003 
   73004         Reviewed by Darin.
   73005 
   73006         http://bugs.webkit.org/show_bug.cgi?id=15988
   73007         REGRESSION: XPath preceding-axis query misses nested elements
   73008 
   73009         Test: fast/xpath/preceding-axis.xhtml
   73010 
   73011         * xml/XPathStep.cpp:
   73012         (WebCore::XPath::Step::nodesInAxis): Hopefully correct this time.
   73013 
   73014 2007-11-15  Timothy Hatcher  <timothy (a] apple.com>
   73015 
   73016         Reviewed by Mark Rowe and Sam.
   73017 
   73018         This corrects a couple of issues in the Web Inspector where selected search results
   73019         would not have the right text color when the window is inactive or the results are focused.
   73020 
   73021         * page/inspector/inspector.css:
   73022 
   73023 2007-11-15  Timothy Hatcher  <timothy (a] apple.com>
   73024 
   73025         Reviewed by Sam.
   73026 
   73027         Bug 16007: REGRESSION: Disclosure triangle click zone for resource categories is off by 10 pixels
   73028         http://bugs.webkit.org/show_bug.cgi?id=16007
   73029 
   73030         Makes the click width an option on TreeElement and make ResourceCategoryTreeElement
   73031         a true subclass of TreeElement. The click width for ResourceCategoryTreeElement is 
   73032         20 pixels, and the default is 10 pixels.
   73033 
   73034         * page/inspector/ResourceCategory.js:
   73035         * page/inspector/treeoutline.js:
   73036 
   73037 2007-11-15  Anders Carlsson  <andersca (a] apple.com>
   73038 
   73039         Reviewed by Brady.
   73040 
   73041         Pass a VoidCallback to Database::transaction and Database::changeVersion.
   73042         This is not yet hooked up to the database machinery.
   73043         
   73044         * WebCore.vcproj/WebCore.vcproj:
   73045         * bindings/js/JSDatabaseCustom.cpp:
   73046         (WebCore::JSDatabase::changeVersion):
   73047         (WebCore::JSDatabase::transaction):
   73048         * storage/Database.cpp:
   73049         (WebCore::Database::changeVersion):
   73050         (WebCore::Database::transaction):
   73051         * storage/Database.h:
   73052 
   73053 2007-11-15  Timothy Hatcher  <timothy (a] apple.com>
   73054 
   73055         Reviewed by Adam.
   73056 
   73057         Bug 16005: Hovering in the breadcrumbs causes jumpy behavior
   73058         http://bugs.webkit.org/show_bug.cgi?id=16005
   73059 
   73060         Hovering over cumbs no longer exposes new crumbs. Clicking on a collapsed
   73061         crumb will expose as many hidden crumbs as possible to the user. Also crumbs
   73062         that have ID attributes will compact to the ID over the tag name.
   73063 
   73064         * page/inspector/DocumentPanel.js:
   73065 
   73066 2007-11-15  Anders Carlsson  <andersca (a] apple.com>
   73067 
   73068         Reviewed by Sam.
   73069 
   73070         Make the VoidCallback DOM interface behave more like our other DOM interfaces.
   73071         
   73072         * bindings/js/JSCustomVoidCallback.h: Added.
   73073         * bindings/js/JSCustomVoidCallback.cpp: Added.
   73074         (WebCore::JSCustomVoidCallback::JSCustomVoidCallback):
   73075         (WebCore::JSCustomVoidCallback::handleEvent):
   73076         VoidCallback implementation that wraps a JS object.
   73077         
   73078         (WebCore::toVoidCallback):
   73079         New method that creates a VoidCallback implementation given a JS object.
   73080         
   73081         * bindings/scripts/CodeGeneratorJS.pm:
   73082         Specify that VoidCallback can fail conversion and add a custom conversion function.
   73083         
   73084         * html/HTMLMediaElement.cpp:
   73085         (WebCore::HTMLMediaElement::movieCuePointReached):
   73086         Call handleEvent on the callback.
   73087         
   73088         (WebCore::HTMLMediaElement::removeCuePoint):
   73089         Comment out parts of this method, it has already been removed in the HTML5 spec and it relies
   73090         on overriding VoidCallback equality.
   73091         
   73092         * html/VoidCallback.cpp: Removed.
   73093         
   73094         * html/VoidCallback.h:
   73095         (WebCore::VoidCallback::VoidCallback):
   73096         (WebCore::VoidCallback::~VoidCallback):
   73097         Make this an abstract class with a pure virtual handleEvent method.
   73098         
   73099 2007-11-15  Adam Roben  <aroben (a] apple.com>
   73100 
   73101         Fix <rdar://5485108> Type-select while a <select> menu is open doesn't work
   73102 
   73103         There were two things broken here:
   73104            - WebView now requires a WM_CHAR message to be sent before it will
   73105              create a keyboard event with a charCode, but we were only sending
   73106              a WM_KEYDOWN event.
   73107            - The popup menu was not updating its focused index when the
   73108              <select> element's selectedIndex changed.
   73109 
   73110         Reviewed by Adele.
   73111 
   73112         * platform/win/PopupMenuWin.cpp:
   73113         (WebCore::PopupMenu::updateFromElement): Update the focused index from
   73114         the client's selected index.
   73115         (WebCore::PopupWndProc): When we receive a WM_CHAR message for a
   73116         printable character, manufacture a WM_KEYDOWN message for it and post
   73117         both that and the current WM_CHAR message to the WebView.
   73118 
   73119 2007-11-15  Brady Eidson  <beidson (a] apple.com>
   73120 
   73121         Build fix
   73122 
   73123         * storage/DatabaseTracker.cpp:
   73124         (WebCore::DatabaseTracker::fullPathForDatabase):
   73125         (WebCore::DatabaseTracker::databaseNamesForOrigin):
   73126 
   73127 2007-11-15  Brady Eidson  <beidson (a] apple.com>
   73128 
   73129         Reviewed by John and Sam
   73130 
   73131         Stubbing out everything required for a WebKit API for databases
   73132 
   73133         Biggest change in WebCore is that we passed around SecurityOriginData as the representation
   73134         of a SecurityOrigin, instead of a String or a SecurityOrigin itself (which is an opaque object
   73135         that has a different purpose besides just hanging on to the data)
   73136 
   73137         * WebCore.base.exp:
   73138         * WebCore.xcodeproj/project.pbxproj:
   73139 
   73140         * platform/SecurityOrigin.cpp:
   73141         * platform/SecurityOrigin.h:
   73142         * platform/SecurityOriginData.h: Added.  Simple object to encapsulate the 3
   73143           pieces of data in the SecurityOrigin tuple
   73144         (WebCore::SecurityOriginData::SecurityOriginData):
   73145         (WebCore::SecurityOriginData::protocol):
   73146         (WebCore::SecurityOriginData::host):
   73147         (WebCore::SecurityOriginData::port):
   73148         (WebCore::SecurityOriginData::toString): Simple concatenation of the 3 components,
   73149           colon separated
   73150 
   73151         * storage/Database.cpp:
   73152         (WebCore::Database::Database): Use SecurityOriginData instead
   73153 
   73154         * storage/DatabaseTracker.cpp:
   73155         (WebCore::DatabaseTracker::fullPathForDatabase):
   73156         (WebCore::DatabaseTracker::databaseNamesForOrigin):
   73157         (WebCore::DatabaseTracker::deleteDatabasesWithOrigin):
   73158         (WebCore::DatabaseTracker::deleteDatabase):
   73159         * storage/DatabaseTracker.h:
   73160 
   73161         * storage/DatabaseTrackerClient.h: Added.  For dispatching notifications up to WebKit
   73162         (WebCore::DatabaseTrackerClient::~DatabaseTrackerClient):2007-11-15  Jon Honeycutt  <jhoneycutt (a] apple.com>
   73163 
   73164 2007-11-15  Jon Honeycutt  <jhoneycutt (a] apple.com>
   73165 
   73166         Reviewed by Anders.
   73167 
   73168         NP_ASFILEONLY streams should not buffer data in m_deliveryData.
   73169 
   73170         * plugins/win/PluginStreamWin.cpp:
   73171         (WebCore::PluginStreamWin::didReceiveData):
   73172 
   73173 2007-11-15  Justin Garcia  <justin.garcia (a] apple.com>
   73174 
   73175         Reviewed by Adele Peterson.
   73176 
   73177         <rdar://problem/5497643> Crash at Node::isDescendantOf when switching out of Edit HTML Source mode
   73178         
   73179         A textarea that contained the selection was removed but the selection wasn't cleared,
   73180         and we'd crash in code that assumed a valid, in-document selection.
   73181 
   73182         * editing/SelectionController.cpp:
   73183         (WebCore::removingNodeRemovesPosition): Clear the selection if the node being removed is the
   73184         shadowAncestorNode of the node that contains the position, not just if the node being removed
   73185         contains that shadowAncestorNode.
   73186 
   73187 2007-11-15  Nikolas Zimmermann  <zimmermann (a] kde.org>
   73188 
   73189         Reviewed by Maciej.
   73190 
   73191         Fix logic error: calculateGlyphBoundaries takes RTL text into account itself, no need to adjust offsets before.
   73192 
   73193         * rendering/SVGInlineTextBox.cpp:
   73194         (WebCore::SVGInlineTextBoxClosestCharacterToPositionWalker::chunkPortionCallback):
   73195         (WebCore::SVGInlineTextBoxSelectionRectWalker::chunkPortionCallback):
   73196 
   73197 2007-11-15  Anders Carlsson  <andersca (a] apple.com>
   73198 
   73199         Reviewed by Brady.
   73200 
   73201         <rdar://problem/5562470>
   73202         openDatabase does not work when the version string is empty
   73203 
   73204         If the string is empty, pass a real empty string to sqlite3_bind_text16.
   73205         
   73206         * platform/sql/SQLiteStatement.cpp:
   73207         (WebCore::SQLiteStatement::bindText):
   73208 
   73209 2007-11-15  Anders Carlsson  <andersca (a] apple.com>
   73210 
   73211         Reviewed by Brady.
   73212 
   73213         Get rid of SQLiteStatement::bindText and rename bindText16 to bindText.
   73214         Remove the copy parameter from bindText and bindBlob and always copy passed in data instead.
   73215 
   73216         * loader/icon/IconDatabase.cpp:
   73217         (WebCore::IconDatabase::setIconIDForPageURLInSQLDatabase):
   73218         (WebCore::IconDatabase::removePageURLFromSQLDatabase):
   73219         (WebCore::IconDatabase::getIconIDForIconURLFromSQLDatabase):
   73220         (WebCore::IconDatabase::addIconURLToSQLDatabase):
   73221         (WebCore::IconDatabase::getImageDataForIconURLFromSQLDatabase):
   73222         (WebCore::IconDatabase::writeIconSnapshotToSQLDatabase):
   73223         * platform/sql/SQLiteStatement.cpp:
   73224         (WebCore::SQLiteStatement::prepare):
   73225         * platform/sql/SQLiteStatement.h:
   73226         * storage/Database.cpp:
   73227         (WebCore::setTextValueInDatabase):
   73228         * storage/DatabaseTracker.cpp:
   73229         (WebCore::DatabaseTracker::fullPathForDatabase):
   73230         (WebCore::DatabaseTracker::databaseNamesForOrigin):
   73231         (WebCore::DatabaseTracker::addDatabase):
   73232 
   73233 2007-11-14  Brady Eidson <beidson (a] apple.com>
   73234 
   73235         Rubberstamped by Sam
   73236 
   73237         * platform/SecurityOrigin.h: Lets make this an unsigned short and *not* rule out half the possible ports?
   73238 
   73239 2007-11-14  Alexey Proskuryakov  <ap (a] webkit.org>
   73240 
   73241         Reviewed by Justin Garcia.
   73242 
   73243         http://bugs.webkit.org/show_bug.cgi?id=15781
   73244         REGRESSION: Ligatures fail to form when typing in Devanagari (because WebKit can't handle
   73245         a marked range that covers half of a composed character sequence)
   73246 
   73247         Test: platform/mac/editing/input/devanagari-ligature.html
   73248 
   73249         This fix is somewhat of a hack, as it asks editing commands to work with invalid selections.
   73250         However, this is not entirely new for them, as Roman accents are typed in a similar manner.
   73251 
   73252         In the future, we probably want to make commands work with ranges (or Positions explicitly).
   73253 
   73254         * editing/Editor.cpp:
   73255         (WebCore::Editor::selectComposition): Force selection to composition range.
   73256         * editing/InsertTextCommand.cpp:
   73257         (WebCore::InsertTextCommand::input): Force ending selection to inserted text range.
   73258 
   73259 2007-11-14  Beth Dakin  <bdakin (a] apple.com>
   73260 
   73261         Reviewed by Hyatt.
   73262 
   73263         Fix for <rdar://problem/5540855> REGRESSION: Combination of client-
   73264         side image map and <a> tag is not working properly (15522)
   73265 
   73266         * html/HTMLMapElement.cpp:
   73267         (WebCore::HTMLMapElement::checkDTD): Allow <map> to have both block 
   73268         and inline children rather than just block children. This matches 
   73269         Firefox. 
   73270 
   73271 2007-11-14  Justin Garcia  <justin.garcia (a] apple.com>
   73272 
   73273         Reviewed by Alexey Proskuryakov.
   73274 
   73275         <rdar://problem/5546763> CrashTracer: [USER] 362 crashes at WebCore::DeleteSelectionCommand::mergeParagraphs
   73276 
   73277         * editing/DeleteSelectionCommand.cpp:
   73278         (WebCore::DeleteSelectionCommand::handleGeneralDelete): 
   73279         Removed an irrelevant FIXME.
   73280         (WebCore::DeleteSelectionCommand::mergeParagraphs): If the block that contained the end of the selection
   73281         hasn't been removed but has been emptied by deletion, we would to try and fail to create a VisiblePosition
   73282         inside that block, which could lead to a crash.  If that happens, there's no content in the block to move,
   73283         so just remove the block and return.
   73284         Preserve m_needPlaceholder during the call to moveParagraphs, since it may change it and since it does
   73285         its own placeholder insertion when necessary.
   73286         (WebCore::DeleteSelectionCommand::doApply): No need to check m_needPlaceholder before calling mergeParagraphs,
   73287         because it handles preserving m_needPlaceholder when it calls moveParagraphs.
   73288         
   73289 2007-11-14  Timothy Hatcher  <timothy (a] apple.com>
   73290 
   73291         Reviewed by Adam.
   73292 
   73293         Bug 14380: Long DOM ancestry breadcrumb lists get cut off
   73294         http://bugs.webkit.org/show_bug.cgi?id=14380
   73295 
   73296         The breadcumbs will now be compacted and collapsed if there isn't enough room
   73297         to show everything. The collapsing algorithm always affects the crumbs that
   73298         are farthest away from the selected or hovered crumb first.
   73299 
   73300         * page/inspector/DocumentPanel.js:
   73301         * page/inspector/inspector.css:
   73302 
   73303 2007-11-14  Anders Carlsson  <andersca (a] apple.com>
   73304 
   73305         Use the correct include path.
   73306         
   73307         * platform/Cursor.h:
   73308         * plugins/win/PluginPackageWin.h:
   73309         * plugins/win/PluginStreamWin.h:
   73310 
   73311 2007-11-13  Brady Eidson  <beidson (a] apple.com>
   73312 
   73313         Reviewed by Adam
   73314 
   73315         http://bugs.webkit.org/show_bug.cgi?id=15976 - ASSERT/crash when SQLTransactionCallback throws an exception
   73316 
   73317         * storage/SQLTransaction.cpp:
   73318         (WebCore::SQLTransaction::deliverTransactionCallback): Make a transaction error for the case where the 
   73319           SQLTransactionCallback fails
   73320         (WebCore::SQLTransaction::deliverTransactionErrorCallback): Don't assert on the error callback, but null check it
   73321           and make the commit/rollback decision accordingly
   73322 
   73323 2007-11-13  Oliver Hunt  <oliver (a] apple.com>
   73324 
   73325         Reviewed by Anders.
   73326 
   73327         <rdar://problem/5365030> calling dataWithPDFInsideRect on an SVG with a gradient crashes (14780)
   73328 
   73329         When drawing directly to PDF CG may delay the use of the gradient function until outside our
   73330         standard drawing path, which in turn could let us invalidate the caches before they were used.
   73331 
   73332         To work around this we now store the cached stops in a RefCounted object, so that we can ensure
   73333         that cache exists as long as required.
   73334         
   73335         * platform/graphics/svg/SVGPaintServerGradient.cpp:
   73336         (WebCore::SVGPaintServerGradient::SVGPaintServerGradient):
   73337         * platform/graphics/svg/SVGPaintServerGradient.h:
   73338         * platform/graphics/svg/cg/SVGPaintServerGradientCg.cpp:
   73339         (WebCore::cgGradientCallback):
   73340         (WebCore::CGShadingRefForLinearGradient):
   73341         (WebCore::CGShadingRefForRadialGradient):
   73342         (WebCore::SVGPaintServerGradient::updateQuartzGradientStopsCache):
   73343 
   73344 2007-11-13  Anders Carlsson  <andersca (a] apple.com>
   73345 
   73346         Fix Windows build.
   73347         
   73348         * platform/Cursor.h:
   73349         * plugins/win/PluginPackageWin.h:
   73350         * plugins/win/PluginStreamWin.h:
   73351 
   73352 2007-11-13  Geoffrey Garen  <ggaren (a] apple.com>
   73353 
   73354         Reviewed by Anders Carlsson.
   73355 
   73356         Renamed Shared to RefCounted.
   73357 
   73358         * ForwardingHeaders/wtf/RefCounted.h: Copied from WebCore/ForwardingHeaders/wtf/Shared.h.
   73359         * ForwardingHeaders/wtf/Shared.h: Removed.
   73360         * bindings/js/JSSVGPODTypeWrapper.h:
   73361         * css/CSSFontFace.h:
   73362         * css/CSSRuleList.h:
   73363         * css/Counter.h:
   73364         * css/Pair.h:
   73365         * css/Rect.h:
   73366         * css/StyleBase.h:
   73367         * css/StyleSheetList.h:
   73368         * dom/Attribute.h:
   73369         * dom/Clipboard.h:
   73370         * dom/DOMImplementation.h:
   73371         * dom/Event.h:
   73372         * dom/EventListener.h:
   73373         * dom/NamedNodeMap.h:
   73374         * dom/NodeFilter.h:
   73375         * dom/NodeFilterCondition.h:
   73376         * dom/NodeList.h:
   73377         * dom/QualifiedName.h:
   73378         * dom/Range.h:
   73379         * dom/RangeException.h:
   73380         * dom/RegisteredEventListener.h:
   73381         * dom/Traversal.h:
   73382         * editing/EditCommand.h:
   73383         * history/BackForwardList.h:
   73384         * history/CachedPage.h:
   73385         * history/HistoryItem.cpp:
   73386         (WebCore::HistoryItem::HistoryItem):
   73387         * history/HistoryItem.h:
   73388         * html/CanvasGradient.h:
   73389         * html/CanvasPattern.h:
   73390         * html/CanvasRenderingContext2D.h:
   73391         * html/CanvasStyle.h:
   73392         * html/HTMLCollection.h:
   73393         * html/MediaError.h:
   73394         * html/TimeRanges.h:
   73395         * html/VoidCallback.h:
   73396         * ksvg2/css/SVGRenderStyle.cpp:
   73397         (WebCore::SVGRenderStyle::SVGRenderStyle):
   73398         * ksvg2/css/SVGRenderStyle.h:
   73399         * ksvg2/css/SVGRenderStyleDefs.cpp:
   73400         (StyleFillData::StyleFillData):
   73401         (StyleStrokeData::StyleStrokeData):
   73402         (StyleStopData::StyleStopData):
   73403         (StyleTextData::StyleTextData):
   73404         (StyleClipData::StyleClipData):
   73405         (StyleMaskData::StyleMaskData):
   73406         (StyleMarkerData::StyleMarkerData):
   73407         (StyleMiscData::StyleMiscData):
   73408         * ksvg2/css/SVGRenderStyleDefs.h:
   73409         * ksvg2/svg/SVGAngle.cpp:
   73410         (WebCore::SVGAngle::SVGAngle):
   73411         * ksvg2/svg/SVGAngle.h:
   73412         * ksvg2/svg/SVGAnimatedTemplate.h:
   73413         * ksvg2/svg/SVGElementInstanceList.h:
   73414         * ksvg2/svg/SVGException.h:
   73415         * ksvg2/svg/SVGList.h:
   73416         * ksvg2/svg/SVGPathSeg.h:
   73417         * ksvg2/svg/SVGPreserveAspectRatio.cpp:
   73418         (WebCore::SVGPreserveAspectRatio::SVGPreserveAspectRatio):
   73419         * ksvg2/svg/SVGPreserveAspectRatio.h:
   73420         * ksvg2/svg/SVGRenderingIntent.h:
   73421         * ksvg2/svg/SVGTransform.h:
   73422         * ksvg2/svg/SVGUnitTypes.h:
   73423         * loader/DocumentLoader.h:
   73424         * loader/FormState.h:
   73425         * loader/ResourceLoader.h:
   73426         * loader/TextResourceDecoder.h:
   73427         * loader/icon/IconRecord.h:
   73428         * page/BarInfo.h:
   73429         * page/Console.h:
   73430         * page/DOMSelection.h:
   73431         * page/DOMWindow.h:
   73432         * page/Frame.h:
   73433         * page/History.h:
   73434         * page/InspectorController.cpp:
   73435         * page/Plugin.h:
   73436         * page/Screen.h:
   73437         * platform/ArrayImpl.h:
   73438         * platform/CString.h:
   73439         * platform/Cursor.h:
   73440         * platform/DeprecatedValueListImpl.cpp:
   73441         (WebCore::DeprecatedValueListImpl::Private::Private):
   73442         * platform/FileChooser.h:
   73443         * platform/FontFallbackList.h:
   73444         * platform/FontFamily.cpp:
   73445         (WebCore::FontFamily::FontFamily):
   73446         * platform/FontFamily.h:
   73447         * platform/FontSelector.h:
   73448         * platform/GlyphPageTreeNode.h:
   73449         * platform/PopupMenu.h:
   73450         * platform/RegularExpression.cpp:
   73451         * platform/ScrollBar.h:
   73452         * platform/SharedBuffer.h:
   73453         * platform/StringImpl.h:
   73454         * platform/graphics/Icon.h:
   73455         * platform/graphics/svg/SVGResource.h:
   73456         * platform/network/FormData.cpp:
   73457         (WebCore::FormData::FormData):
   73458         * platform/network/FormData.h:
   73459         * platform/network/ResourceHandle.h:
   73460         * platform/network/ResourceHandleClient.h:
   73461         * rendering/RenderStyle.cpp:
   73462         (WebCore::StyleSurroundData::StyleSurroundData):
   73463         (WebCore::StyleBoxData::StyleBoxData):
   73464         (WebCore::StyleVisualData::StyleVisualData):
   73465         (WebCore::StyleBackgroundData::StyleBackgroundData):
   73466         (WebCore::StyleMarqueeData::StyleMarqueeData):
   73467         (WebCore::StyleFlexibleBoxData::StyleFlexibleBoxData):
   73468         (WebCore::StyleMultiColData::StyleMultiColData):
   73469         (WebCore::StyleTransformData::StyleTransformData):
   73470         (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
   73471         (WebCore::StyleRareInheritedData::StyleRareInheritedData):
   73472         (WebCore::StyleInheritedData::StyleInheritedData):
   73473         * rendering/RenderStyle.h:
   73474         * rendering/SVGCharacterLayoutInfo.h:
   73475         (WebCore::SVGCharOnPath::SVGCharOnPath):
   73476         * storage/SQLResultSetRowList.h:
   73477         * xml/DOMParser.h:
   73478         * xml/XMLHttpRequest.h:
   73479         * xml/XMLSerializer.h:
   73480         * xml/XPathEvaluator.h:
   73481         * xml/XPathExpression.h:
   73482         * xml/XPathNSResolver.h:
   73483         * xml/XPathResult.h:
   73484         * xml/XPathValue.h:
   73485         * xml/XSLTProcessor.h:
   73486 
   73487 2007-11-13  Brady Eidson  <beidson (a] apple.com>
   73488 
   73489         Reviewed by Mark Rowe
   73490 
   73491         Remove errantly added files, and fix the idl (for reference's sake)
   73492 
   73493         * storage/JSCustomSQLStatementCallback.h: Removed.
   73494         * storage/JSCustomSQLStatementErrorCallback.h: Removed.
   73495         * storage/JSCustomSQLTransactionCallback.h: Removed.
   73496         * storage/JSCustomSQLTransactionErrorCallback.h: Removed.
   73497         * storage/SQLStatementCallback.idl:
   73498 
   73499 2007-11-13  Adam Roben  <aroben (a] apple.com>
   73500 
   73501         Fix a bug and improve upon Brady's fix
   73502 
   73503         Reviewed by Anders.
   73504 
   73505         * bindings/js/JSSQLTransactionCustom.cpp:
   73506         (WebCore::JSSQLTransaction::executeSql): Made the code a little
   73507         clearer and more correct.
   73508         * loader/icon/IconDatabase.cpp: Put parentheses around the expansion
   73509         of IS_ICON_SYNC_THREAD() so that ASSERT_NOT_SYNC_THREAD() does the
   73510         comparison it meant to.
   73511 
   73512 2007-11-13  Sam Weinig  <sam (a] webkit.org>
   73513 
   73514         Fix Qt and Gtk builds.
   73515 
   73516         * WebCore.pro: Remove non-generated idl files.
   73517 
   73518 2007-11-13  Mark Rowe  <mrowe (a] apple.com>
   73519 
   73520         Remove removed file from the project.
   73521 
   73522         * WebCore.pro:
   73523 
   73524 2007-11-13  Brady Eidson  <beidson (a] apple.com>
   73525 
   73526         Release build fix
   73527 
   73528         * bindings/js/JSSQLTransactionCustom.cpp:
   73529         (WebCore::JSSQLTransaction::executeSql):
   73530 
   73531 2007-11-13  Adam Roben  <aroben (a] apple.com>
   73532 
   73533         Add WindowMessageBroadcaster
   73534 
   73535         This class is used to listen in on messages sent to HWNDs. Multiple
   73536         WindowMessageListeners can be notified about messages sent to a single
   73537         HWND, and one WindowMessageListener can listen to messages from
   73538         multiple HWNDs.
   73539 
   73540         Reviewed by Ada.
   73541 
   73542         * WebCore.vcproj/WebCore.vcproj: Added new files to project.
   73543         * platform/win/WindowMessageBroadcaster.cpp: Added.
   73544         (WebCore::instancesMap): Static helper.
   73545         (WebCore::WindowMessageBroadcaster::addListener): Registers a listener
   73546         for a particular HWND.
   73547         (WebCore::WindowMessageBroadcaster::removeListener): Removes a
   73548         listener for a particular HWND.
   73549         (WebCore::WindowMessageBroadcaster::WindowMessageBroadcaster):
   73550         (WebCore::WindowMessageBroadcaster::~WindowMessageBroadcaster):
   73551         (WebCore::WindowMessageBroadcaster::destroy): Removes this broadcaster
   73552         from the instancesMap, removes all of its listeners, unsubclasses the
   73553         window, and deletes the broadcaster.
   73554         (WebCore::WindowMessageBroadcaster::unsubclassWindow): Unsubclasses
   73555         the window (which means that SubclassedWndProc won't be called again
   73556         for this window).
   73557         (WebCore::WindowMessageBroadcaster::SubclassedWndProc): Notifies all
   73558         the listeners about every message sent to the HWND
   73559         * platform/win/WindowMessageBroadcaster.h: Added.
   73560         (WebCore::WindowMessageBroadcaster::listeners):
   73561         (WebCore::WindowMessageBroadcaster::originalWndProc):
   73562         * platform/win/WindowMessageListener.h: Added.
   73563 
   73564 2007-11-13  Geoffrey Garen  <ggaren (a] apple.com>
   73565 
   73566         Reviewed by Sam Weinig.
   73567 
   73568         Moved Shared.h into wtf so it could be used in more places. Retained 
   73569         TreeShared, but moved it to its own file, TreeShared.h.
   73570 
   73571         * ForwardingHeaders/wtf/Shared.h: Added.
   73572         * WebCore.xcodeproj/project.pbxproj:
   73573         * bindings/js/JSSVGPODTypeWrapper.h:
   73574         * css/CSSFontFace.h:
   73575         * css/CSSRuleList.h:
   73576         * css/Counter.h:
   73577         * css/Pair.h:
   73578         * css/Rect.h:
   73579         * css/StyleBase.h:
   73580         * css/StyleSheetList.h:
   73581         * dom/Clipboard.h:
   73582         * dom/DOMImplementation.h:
   73583         * dom/Event.h:
   73584         * dom/EventListener.h:
   73585         * dom/NamedNodeMap.h:
   73586         * dom/NodeFilterCondition.h:
   73587         * dom/NodeList.h:
   73588         * dom/Range.h:
   73589         * dom/RangeException.h:
   73590         * dom/RegisteredEventListener.h:
   73591         * dom/Traversal.h:
   73592         * history/BackForwardList.h:
   73593         * history/CachedPage.h:
   73594         * history/HistoryItem.h:
   73595         * html/CanvasGradient.h:
   73596         * html/CanvasPattern.h:
   73597         * html/HTMLCollection.h:
   73598         * html/MediaError.h:
   73599         * html/TimeRanges.h:
   73600         * html/VoidCallback.h:
   73601         * ksvg2/css/SVGRenderStyleDefs.h:
   73602         * ksvg2/svg/SVGAnimatedTemplate.h:
   73603         * ksvg2/svg/SVGElementInstanceList.h:
   73604         * ksvg2/svg/SVGList.h:
   73605         * ksvg2/svg/SVGPathSeg.h:
   73606         * ksvg2/svg/SVGPreserveAspectRatio.h:
   73607         * ksvg2/svg/SVGRenderingIntent.h:
   73608         * ksvg2/svg/SVGTransform.h:
   73609         * ksvg2/svg/SVGUnitTypes.h:
   73610         * loader/DocumentLoader.h:
   73611         * loader/FormState.h:
   73612         * loader/ResourceLoader.h:
   73613         * loader/TextResourceDecoder.h:
   73614         * loader/icon/IconRecord.h:
   73615         * page/BarInfo.h:
   73616         * page/Console.h:
   73617         * page/DOMSelection.h:
   73618         * page/DOMWindow.h:
   73619         * page/History.h:
   73620         * page/InspectorController.cpp:
   73621         * page/Plugin.h:
   73622         * page/Screen.h:
   73623         * platform/ArrayImpl.h:
   73624         * platform/CString.h:
   73625         * platform/DeprecatedValueListImpl.cpp:
   73626         * platform/FontFallbackList.h:
   73627         * platform/FontFamily.h:
   73628         * platform/FontSelector.h:
   73629         * platform/GlyphPageTreeNode.h:
   73630         * platform/PopupMenu.h:
   73631         * platform/RegularExpression.cpp:
   73632         * platform/ScrollBar.h:
   73633         * platform/Shared.h: Removed.
   73634         * platform/SharedBuffer.h:
   73635         * platform/StringImpl.h:
   73636         * platform/graphics/Icon.h:
   73637         * platform/graphics/svg/SVGResource.h:
   73638         * platform/network/FormData.h:
   73639         * platform/network/ResourceHandleClient.h:
   73640         * rendering/RenderStyle.h:
   73641         * rendering/SVGCharacterLayoutInfo.h:
   73642         * storage/SQLResultSetRowList.h:
   73643         * xml/DOMParser.h:
   73644         * xml/XMLSerializer.h:
   73645         * xml/XPathEvaluator.h:
   73646         * xml/XPathExpression.h:
   73647         * xml/XPathNSResolver.h:
   73648         * xml/XPathResult.h:
   73649 
   73650 2007-11-13  Brady Eidson  <beidson (a] apple.com>
   73651 
   73652         JS bindings by Anders, reviewed by Brady
   73653         WebCore changes by Brady, reviewed by Anders and Tim
   73654 
   73655         Adapt to the new iteration of the HTML5 client-side storage spec.
   73656 
   73657         Based largely on implementation feedback we generated in landing our first version of this API and also
   73658         on the input of others in the community, the database spec went through a large overhaul that addresses
   73659         many concerns.  Amongst other changes/improvements:
   73660         - SQLTransaction object is added and all transactions are explicit.  In addition, since the API manages
   73661           transactions explicitly, transaction-related language in SQL statements is disallowed
   73662         - executeSql() is now on a transaction object instead of the database object.
   73663         - Database.changeVersion() now takes place within the context of a transaction.  Therefore the version 
   73664           change can be atomic along with the statements that modify the DB schema
   73665 
   73666         Most of the logic now takes place during the "transaction steps," which the specification clearly lays out
   73667         as a chain of events on the SQLTransaction object where processing is handed off between being processed 
   73668         asynchronously and calling back up to javascript.  To accomplish this voodoo, SQLTransaction has a series of 
   73669         methods that roughly match up with the "transaction steps" and it keeps a pointer to the next step.
   73670 
   73671         * DerivedSources.make:
   73672         * WebCore.xcodeproj/project.pbxproj:
   73673 
   73674         * bindings/js/JSDatabaseCustom.cpp:
   73675         (WebCore::JSDatabase::changeVersion): Adapt to the new API
   73676         (WebCore::JSDatabase::transaction): Added
   73677 
   73678         * bindings/js/JSSQLTransactionCustom.cpp: Added.
   73679         (WebCore::JSSQLTransaction::executeSql): Added
   73680 
   73681         * page/DOMWindow.cpp:
   73682         (WebCore::DOMWindow::openDatabase): Add the new arguments
   73683         * page/DOMWindow.h:
   73684         * page/DOMWindow.idl:
   73685 
   73686         * page/inspector/DatabasePanel.js: Use the new API
   73687 
   73688         * storage/ChangeVersionWrapper.cpp: Added.  Implementation of "SQLTransactionWrapper" that enforces
   73689           changing the version of the database
   73690         (WebCore::ChangeVersionWrapper::ChangeVersionWrapper):
   73691         (WebCore::ChangeVersionWrapper::performPreflight):
   73692         (WebCore::ChangeVersionWrapper::performPostflight):
   73693         * storage/ChangeVersionWrapper.h: Added.
   73694         (WebCore::ChangeVersionWrapper::sqlError):
   73695 
   73696         * storage/Database.cpp: Removed the "main thread" and "background thread" sqlite handles as all sqlite operations can now
   73697           happen solely on the background thread - most of these changes result from that change
   73698         (WebCore::Database::Database): Removed an obsolete FIXME
   73699         (WebCore::Database::openAndVerifyVersion): 
   73700         (WebCore::Database::getVersionFromDatabase):
   73701         (WebCore::Database::setVersionInDatabase):
   73702         (WebCore::Database::versionMatchesExpected): Atomically guarantee that the current version and expected version are the same
   73703         (WebCore::Database::performOpenAndVerify):
   73704         (WebCore::Database::performTransactionStep): Added, as a hook for the DatabaseTransactionTask on the DatabaseThread
   73705         (WebCore::Database::changeVersion): Changed for the new API from JS
   73706         (WebCore::Database::transaction): Added, for the new API from JS
   73707         (WebCore::Database::scheduleTransaction): Add a transaction to this Database's transaction queue
   73708         (WebCore::Database::scheduleTransactionStep): Schedule the current transaction to be called on the background thread
   73709         (WebCore::Database::scheduleTransactionCallback): Schedule the current transaction to perform a callback on the main thread
   73710         (WebCore::Database::performGetTableNames):
   73711         (WebCore::Database::deliverAllPendingCallbacks):
   73712         (WebCore::Database::deliverPendingCallback):
   73713         (WebCore::Database::setExpectedVersion):
   73714         * storage/Database.h: 
   73715         * storage/Database.idl:
   73716 
   73717         * storage/DatabaseTask.cpp:  Changed DatabaseTask to create a mutex on demand, and use the existence of that mutex
   73718           to replace the m_synchronous flag
   73719         (WebCore::DatabaseTask::performTask):
   73720         (WebCore::DatabaseTask::lockForSynchronousScheduling):
   73721         (WebCore::DatabaseTask::waitForSynchronousCompletion):
   73722         (WebCore::DatabaseTransactionTask::DatabaseTransactionTask):
   73723         * storage/DatabaseTask.h:
   73724 
   73725         * storage/SQLError.h: New API object
   73726 
   73727         * storage/SQLResultSet.cpp:
   73728         (WebCore::SQLResultSet::SQLResultSet): Small changes to the API object
   73729         * storage/SQLResultSet.h:
   73730         * storage/SQLResultSet.idl:
   73731 
   73732         * storage/SQLStatement.cpp: Added.
   73733         (WebCore::SQLStatement::SQLStatement):
   73734         (WebCore::SQLStatement::execute): Actually execute the sql statement on the SQLiteDatabase if it's still valid
   73735         (WebCore::SQLStatement::setVersionMismatchedError): Flag this statement as bad before it even starts in case
   73736           of an actual version vs. expected version mismatch
   73737         (WebCore::SQLStatement::performCallback): Call the right callback (SQLStatement or SQLStatementError) for this statement
   73738         * storage/SQLStatement.h: Added.
   73739         (WebCore::SQLStatement::hasStatementCallback):
   73740         (WebCore::SQLStatement::hasStatementErrorCallback):
   73741         (WebCore::SQLStatement::sqlError): Get the error for this statement, if any
   73742 
   73743         * storage/SQLTransaction.cpp: Added.
   73744         (WebCore::SQLTransaction::SQLTransaction):
   73745         (WebCore::SQLTransaction::executeSQL): Entry point for the API from JS
   73746         (WebCore::SQLTransaction::enqueueStatement): Add a new statement onto the queue
   73747         (WebCore::SQLTransaction::performNextStep): Call the method for the next step
   73748         (WebCore::SQLTransaction::performPendingCallback): Call the method for the pending callback
   73749         (WebCore::SQLTransaction::openTransactionAndPreflight): Open a transaction to the database and preflight 
   73750           using the SQLTransactionWrapper, if any
   73751         (WebCore::SQLTransaction::deliverTransactionCallback): Deliver the transaction callback to the javascript thread
   73752         (WebCore::SQLTransaction::scheduleToRunStatements): Convinience to schedule this transaction on the database thread 
   73753           and make runStatements() the next step
   73754         (WebCore::SQLTransaction::runStatements): Start running the sql statements queued up for this transaction 
   73755         (WebCore::SQLTransaction::getNextStatement): Bring the next statement off the queue
   73756         (WebCore::SQLTransaction::runCurrentStatement): Execute the current statement
   73757         (WebCore::SQLTransaction::deliverStatementCallback): Deliver the SQLStatementCallback for this statement
   73758         (WebCore::SQLTransaction::postflightAndCommit): Postflight the transaction using SQLTransactionWrapper and commit it
   73759         (WebCore::SQLTransaction::handleTransactionError): Make the right call for any error that occurred on the Transaction
   73760         (WebCore::SQLTransaction::deliverTransactionErrorCallback): Deliver the SQLTransactionErrorCallback
   73761         (WebCore::SQLTransaction::cleanupAfterTransactionErrorCallback): Either do a final commit or rollback to cleanup the
   73762           transaction after it error'ed out
   73763         * storage/SQLTransaction.h:
   73764         (WebCore::SQLTransactionWrapper::~SQLTransactionWrapper): 
   73765         (WebCore::SQLTransaction::database):
   73766         * storage/SQLTransaction.idl:
   73767 
   73768         The following were made obsolete by the new version of the API:
   73769         * bindings/js/JSCustomSQLCallback.cpp: Removed.
   73770         * bindings/js/JSCustomSQLCallback.h: Removed.
   73771         * bindings/js/JSCustomVersionChangeCallback.cpp: Removed.
   73772         * bindings/js/JSCustomVersionChangeCallback.h: Removed.
   73773         * storage/DatabaseCallback.cpp: Removed.
   73774         * storage/DatabaseCallback.h: Removed.
   73775         * storage/SQLCallback.h: Removed.
   73776         * storage/SQLCallback.idl: Removed.
   73777         * storage/VersionChangeCallback.h: Removed.
   73778         * storage/VersionChangeCallback.idl: Removed.
   73779 
   73780 2007-11-13  Dan Bernstein  <mitz (a] apple.com>
   73781 
   73782         Reviewed by Beth Dakin.
   73783 
   73784         - fix <rdar://problem/5551163> REGRESSION: Cursor does not change to arrow on "X" button in google maps, making it hard to click
   73785 
   73786         * css/html4.css: Added a 'cursor: auto' rule for links.
   73787         * manual-tests/link-cursor-auto.html: Added.
   73788 
   73789 2007-11-13  Dan Bernstein  <mitz (a] apple.com>
   73790 
   73791         Reviewed by Beth Dakin.
   73792 
   73793         - fix <rdar://problem/5516272> Reproducible crash in RenderObject::setStyle involving going Back from a non-HTML document (Bookmarks view, PDF view)
   73794 
   73795         The root cause for the crash is that when a non-HTML view enters the
   73796         frame, the frame's document pointer keeps pointing at the last HTML-type
   73797         document it contained. This patch does not address the root cause, but
   73798         makes changes to account for that condition.
   73799 
   73800         * loader/FrameLoader.cpp:
   73801         (WebCore::FrameLoader::receivedMainResourceError): Do not change the
   73802         frame's current document's page cache state here.
   73803         (WebCore::FrameLoader::invalidateCurrentItemCachedPage): If the frame's
   73804         current document is in fact the history item being invalidated, then
   73805         set its page cache state here.
   73806 
   73807 2007-11-12  Antti Koivisto  <antti (a] apple.com>
   73808 
   73809         Reviewed by Adele.
   73810 
   73811         Fix that 'timeupdate' and 'waiting' events were never dispatched.
   73812         
   73813         Add explicit m_paused attribute instead of trying to derive paused state from
   73814         underlying media. Call updatePlayState() to start/stop media playback
   73815         when any attribute that affects active playback state changes. This matches 
   73816         specification text.
   73817         
   73818         Test: http/tests/media/video-play-stall.html
   73819 
   73820         * html/HTMLMediaElement.cpp:
   73821         (WebCore::HTMLMediaElement::HTMLMediaElement):
   73822         (WebCore::HTMLMediaElement::setReadyState):
   73823         (WebCore::HTMLMediaElement::paused):
   73824         (WebCore::HTMLMediaElement::play):
   73825         (WebCore::HTMLMediaElement::pause):
   73826         (WebCore::HTMLMediaElement::checkIfSeekNeeded):
   73827         (WebCore::HTMLMediaElement::movieDidEnd):
   73828         (WebCore::HTMLMediaElement::updatePlayState):
   73829         * html/HTMLMediaElement.h:
   73830 
   73831 2007-11-13  John Sullivan  <sullivan (a] apple.com>
   73832 
   73833         Reviewed by Darin.
   73834 
   73835         removed recently-added PreferredType concept; we found a better way to do what
   73836         ths was accomplishing
   73837 
   73838         * bridge/WindowFeatures.h:
   73839         (WebCore::WindowFeatures::WindowFeatures):
   73840         removed definition of PreferredType
   73841                         
   73842         * page/ContextMenuController.cpp:
   73843         (WebCore::openNewWindow):
   73844         removed use of PreferredType
   73845 
   73846 2007-11-12  Alexey Proskuryakov  <ap (a] webkit.org>
   73847 
   73848         Reviewed by Darin.
   73849 
   73850         http://bugs.webkit.org/show_bug.cgi?id=15954
   73851         Move DOM Selection operations out of SelectionController
   73852 
   73853         No change in functionality.
   73854 
   73855         * editing/SelectionController.cpp:
   73856         (WebCore::SelectionController::setSelectedRange):
   73857         * editing/SelectionController.h:
   73858         * page/DOMSelection.cpp:
   73859         (WebCore::DOMSelection::anchorNode):
   73860         (WebCore::DOMSelection::baseNode):
   73861         (WebCore::DOMSelection::anchorOffset):
   73862         (WebCore::DOMSelection::baseOffset):
   73863         (WebCore::DOMSelection::focusNode):
   73864         (WebCore::DOMSelection::extentNode):
   73865         (WebCore::DOMSelection::focusOffset):
   73866         (WebCore::DOMSelection::extentOffset):
   73867         (WebCore::DOMSelection::isCollapsed):
   73868         (WebCore::DOMSelection::type):
   73869         (WebCore::DOMSelection::rangeCount):
   73870         (WebCore::DOMSelection::collapse):
   73871         (WebCore::DOMSelection::collapseToEnd):
   73872         (WebCore::DOMSelection::collapseToStart):
   73873         (WebCore::DOMSelection::empty):
   73874         (WebCore::DOMSelection::setBaseAndExtent):
   73875         (WebCore::DOMSelection::setPosition):
   73876         (WebCore::DOMSelection::modify):
   73877         (WebCore::DOMSelection::extend):
   73878         (WebCore::DOMSelection::getRangeAt):
   73879         (WebCore::DOMSelection::removeAllRanges):
   73880         (WebCore::DOMSelection::addRange):
   73881         (WebCore::DOMSelection::deleteFromDocument):
   73882         (WebCore::DOMSelection::containsNode):
   73883         (WebCore::DOMSelection::selectAllChildren):
   73884         (WebCore::DOMSelection::toString):
   73885         * page/DOMSelection.h:
   73886         Moved all DOM API methods to DOMSelection; changed SelectionController::setSelectedRange()
   73887         to return its result directly instead of via an ExceptionCode that no caller wanted.
   73888 
   73889         * editing/Editor.cpp:
   73890         (WebCore::Editor::deleteRange):
   73891         (WebCore::Editor::removeFormattingAndStyle):
   73892         (WebCore::Editor::selectComposition):
   73893         (WebCore::Editor::setComposition):
   73894         * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::defaultEventHandler):
   73895         Adapted for SelectionController::setSelectedRange() now returning a bool.
   73896         SelectionController::toString() is no longer avasilable, use plainText() explicitly.
   73897 
   73898         * WebCore.base.exp: Changed SelectionController::setSelectedRange() signature.
   73899 
   73900 2007-11-12  Dan Bernstein  <mitz (a] apple.com>
   73901 
   73902         Reviewed by Darin Adler.
   73903 
   73904         - <http://bugs.webkit.org/show_bug.cgi?id=15890>
   73905           Most of www.aol.com still redraws unnecessarily when headline/photo section changes
   73906 
   73907         Test: fast/repaint/invisible-objects.html
   73908 
   73909         Avoid repainting invisible blocks if they are enclosed in a layer that
   73910         contains no visible objects.
   73911 
   73912         * rendering/RenderBlock.cpp:
   73913         (WebCore::RenderBlock::layoutBlock):
   73914         * rendering/RenderBox.cpp:
   73915         (WebCore::RenderBox::absoluteClippedOverflowRect):
   73916 
   73917 2007-11-12  Timothy Hatcher  <timothy (a] apple.com>
   73918 
   73919         Reviewed by Mark Rowe.
   73920 
   73921         Prevent selecting a word in the breadcrumb or the styles section when double
   73922         clicking on a DOM node in the outline tree.
   73923 
   73924         * page/inspector/DocumentPanel.js: Call preventDefault() when a mousedown event
   73925           with a detail of 2 or higher comes in. This prevents the selection.
   73926         * page/inspector/inspector.css: Mark the breadcrumb as user-select: none.
   73927 
   73928 2007-11-12  Oliver Hunt  <oliver (a] apple.com>
   73929 
   73930         Reviewed by John S.
   73931 
   73932         <rdar://problem/5537289> REGRESSION: Dragging a link or an image from an IFrame causes the page to not respond to clicks afterwards (15460)
   73933         
   73934         EventHandler needs to reset these fields when a drag terminates, otherwise
   73935         EventHandler is left in an inconsistent state when a drag is initiated on a
   73936         page with multiple frames.
   73937 
   73938         * page/EventHandler.cpp:
   73939         (WebCore::EventHandler::cancelDragAndDrop):
   73940         (WebCore::EventHandler::performDragAndDrop):
   73941         (WebCore::EventHandler::clearDragState):
   73942         * page/EventHandler.h:
   73943 
   73944 2007-11-12  Oliver Hunt  <oliver (a] apple.com>
   73945 
   73946         Reviewed by Darin and Antti.
   73947 
   73948         Return behaviour for 0 sized pattern back to what it was prior to r27704
   73949 
   73950         This change in behaviour broke two layout tests in DRT, so correcting it
   73951         corrects existing tests.
   73952 
   73953         * platform/graphics/cg/ImageBufferCG.cpp:
   73954 
   73955 2007-11-12  Timothy Hatcher  <timothy (a] apple.com>
   73956 
   73957         Reviewed by John.
   73958 
   73959         <rdar://problem/5268311> REGRESSION (Safari 2-3): Exception thrown when calling -[WebDataSource subresources]
   73960 
   73961         * page/mac/WebCoreFrameBridge.mm:
   73962         (-[WebCoreFrameBridge getAllResourceDatas:andResponses:]):
   73963         If the SharedBuffer is null insert an empty NSData instead of nil.
   73964 
   73965 2007-11-12  Darin Adler  <darin (a] apple.com>
   73966 
   73967         Reviewed by Tim.
   73968 
   73969         - http://bugs.webkit.org/show_bug.cgi?id=15947
   73970           speed up page loading a bit by inlining
   73971 
   73972         * loader/FrameLoader.cpp: (WebCore::FrameLoader::isLocationChange):
   73973         Factored out the slow case of isScheduledLocationChangePending into this.
   73974 
   73975         * loader/FrameLoader.h:
   73976         (WebCore::FrameLoader::isScheduledLocationChangePending): Added an
   73977         inline check of the far and away most common case, where m_scheduledRedirection
   73978         is 0; the rest is in the isLocationChange function.
   73979 
   73980 2007-11-12  George Staikos  <staikos (a] kde.org>
   73981 
   73982         Reviewed by Tim.
   73983 
   73984         Extract the text match marker highlight color into RenderTheme instead
   73985         of the hardcoded yellow.
   73986 
   73987         * rendering/InlineTextBox.cpp:
   73988         (WebCore::InlineTextBox::paintTextMatchMarker):
   73989         * rendering/RenderTheme.cpp:
   73990         (WebCore::RenderTheme::platformTextSearchHighlightColor):
   73991         * rendering/RenderTheme.h:
   73992 
   73993 2007-11-12  Mark Rowe  <mrowe (a] apple.com>
   73994 
   73995         Fix deadlock on launch on the Mac.
   73996 
   73997         * loader/icon/IconDatabase.cpp:
   73998         (WebCore::IconDatabase::open): Restore unlock that was mistakenly removed in r27717.
   73999 
   74000 2007-11-12  Justin Haygood  <jhaygood (a] reaktix.com>
   74001 
   74002         Reviewed by Brady.
   74003 
   74004         http://bugs.webkit.org/show_bug.cgi?id=15955
   74005         Reimplement threading functions in IconDatabase and SQLiteDatabase in terms of the threading abstractions
   74006 
   74007         * loader/icon/IconDatabase.cpp:
   74008         (WebCore::IconDatabase::open):
   74009         (WebCore::IconDatabase::close):
   74010         * loader/icon/IconDatabase.h:
   74011         * platform/sql/SQLiteDatabase.cpp:
   74012         (WebCore::SQLiteDatabase::SQLiteDatabase):
   74013         (WebCore::SQLiteDatabase::open):
   74014         (WebCore::SQLiteDatabase::close):
   74015         * platform/sql/SQLiteDatabase.h:
   74016 
   74017 2007-11-12  Adam Roben  <aroben (a] apple.com>
   74018 
   74019         Windows build fix
   74020 
   74021         * config.h: Touch because VS apparently can't figure out which files
   74022         depend on ResourceResponse.h.
   74023         * WebCore.vcproj/WebCore.vcproj: Add ResourceResponseBase files to
   74024         project and remove old ResourceResponse files.
   74025 
   74026 2007-11-12  Julien Chaffraix  <julien.chaffraix (a] gmail.com>
   74027 
   74028         Reviewed by Darin.
   74029 
   74030         http://bugs.webkit.org/show_bug.cgi?id=15334
   74031         Split ResourceResponse into platform specific files
   74032 
   74033         * WebCore.base.exp:
   74034         * WebCore.pro:
   74035         * WebCore.vcproj/WebCore.vcproj:
   74036         * WebCore.xcodeproj/project.pbxproj:
   74037         * platform/network/ResourceResponse.cpp: Removed.
   74038         * platform/network/ResourceResponse.h: Removed.
   74039         * platform/network/ResourceResponseBase.cpp: Copied from platform/network/ResourceResponse.cpp.
   74040         (WebCore::ResourceResponseBase::asResourceResponse):
   74041         (WebCore::ResourceResponseBase::isHTTP):
   74042         (WebCore::ResourceResponseBase::url):
   74043         (WebCore::ResourceResponseBase::setUrl):
   74044         (WebCore::ResourceResponseBase::mimeType):
   74045         (WebCore::ResourceResponseBase::setMimeType):
   74046         (WebCore::ResourceResponseBase::expectedContentLength):
   74047         (WebCore::ResourceResponseBase::setExpectedContentLength):
   74048         (WebCore::ResourceResponseBase::textEncodingName):
   74049         (WebCore::ResourceResponseBase::setTextEncodingName):
   74050         (WebCore::ResourceResponseBase::suggestedFilename):
   74051         (WebCore::ResourceResponseBase::setSuggestedFilename):
   74052         (WebCore::ResourceResponseBase::httpStatusCode):
   74053         (WebCore::ResourceResponseBase::setHTTPStatusCode):
   74054         (WebCore::ResourceResponseBase::httpStatusText):
   74055         (WebCore::ResourceResponseBase::setHTTPStatusText):
   74056         (WebCore::ResourceResponseBase::httpHeaderField):
   74057         (WebCore::ResourceResponseBase::setHTTPHeaderField):
   74058         (WebCore::ResourceResponseBase::httpHeaderFields):
   74059         (WebCore::ResourceResponseBase::isAttachment):
   74060         (WebCore::ResourceResponseBase::setExpirationDate):
   74061         (WebCore::ResourceResponseBase::expirationDate):
   74062         (WebCore::ResourceResponseBase::setLastModifiedDate):
   74063         (WebCore::ResourceResponseBase::lastModifiedDate):
   74064         (WebCore::ResourceResponseBase::updateResourceResponse):
   74065         * platform/network/ResourceResponseBase.h: Copied from platform/network/ResourceResponse.h.
   74066         (WebCore::ResourceResponseBase::ResourceResponseBase):
   74067         * platform/network/cf/ResourceResponse.h: Added.
   74068         (WebCore::ResourceResponse::ResourceResponse):
   74069         * platform/network/curl/ResourceResponse.h: Added.
   74070         (WebCore::ResourceResponse::ResourceResponse):
   74071         (WebCore::ResourceResponse::doUpdateResourceResponse):
   74072         * platform/network/mac/ResourceResponse.h: Added.
   74073         (WebCore::ResourceResponse::ResourceResponse):
   74074         * platform/network/qt/ResourceResponse.h: Added.
   74075         (WebCore::ResourceResponse::ResourceResponse):
   74076         (WebCore::ResourceResponse::doUpdateResourceResponse):
   74077 
   74078 2007-11-11  Justin Haygood  <jhaygood (a] reaktix.com>
   74079 
   74080         Reviewed by Adam Roben.
   74081 
   74082         http://bugs.webkit.org/show_bug.cgi?id=15939
   74083         Adds a currentThread API for use by SQLiteDatabase, etc.
   74084 
   74085         * platform/Threading.h:
   74086         * platform/ThreadingNone.cpp:
   74087         (WebCore::currentThread):
   74088         * platform/gtk/ThreadingGtk.cpp:
   74089         (WebCore::identifierByGthreadHandle):
   74090         * platform/pthreads/ThreadingPthreads.cpp:
   74091         (WebCore::identifierByPthreadHandle):
   74092         (WebCore::currentThread):
   74093 
   74094 2007-11-11  Dan Bernstein  <mitz (a] apple.com>
   74095 
   74096         Reviewed by Adam Roben.
   74097 
   74098         - fix http://bugs.webkit.org/show_bug.cgi?id=15942
   74099           REGRESSION: Selecting "Edit Html" tab in Blogger causes crash (Assertion failed: isRange())
   74100 
   74101         Test: editing/selection/cleared-by-relayout.html
   74102 
   74103         * editing/Selection.cpp:
   74104         (WebCore::Selection::toRange): Check if the selection has been cleared
   74105         by updating layout.
   74106 
   74107 2007-11-11  Darin Adler  <darin (a] apple.com>
   74108 
   74109         Reviewed by Mark Rowe.
   74110 
   74111         - fix line numbers that were off since my recent patch
   74112 
   74113         * platform/SegmentedString.h:
   74114         (WebCore::SegmentedSubstring::SegmentedSubstring): Reversed the sense of m_excludeLineNumbers
   74115         and rename it to m_doNotExcludeLineNumbers.
   74116         (WebCore::SegmentedSubstring::excludeLineNumbers): Updated.
   74117         (WebCore::SegmentedSubstring::doNotExcludeLineNumbers): Added.
   74118         (WebCore::SegmentedSubstring::setExcludeLineNumbers): Updated.
   74119         (WebCore::SegmentedString::advance): Use doNotExcludeLineNumbers to reverse the sense and fix
   74120         the regression, but keep the speediness. I accidentally had removed a ! here.
   74121 
   74122         * platform/SegmentedString.cpp:
   74123         (WebCore::SegmentedString::advanceSlowCase): Use doNotExcludeLineNumbers.
   74124 
   74125 2007-11-11  Oliver Hunt  <oliver (a] apple.com>
   74126 
   74127         Reviewed by Darin.
   74128 
   74129         Fix for <rdar://problem/5585334> numfuzz: integer overflows opening
   74130         malformed SVG file in WebCore::ImageBuffer::create. Add protection
   74131         against a potential overflow.
   74132 
   74133         * platform/graphics/cg/ImageBufferCG.cpp:
   74134 
   74135 2007-11-11  Antti Koivisto  <antti (a] apple.com>
   74136 
   74137         Reviewed by Darin.
   74138 
   74139         Fix a bunch of cases where the exception code is checked by the function but is not zeroed first.
   74140 
   74141         * bindings/js/kjs_binding.cpp:
   74142         (KJS::setDOMException):
   74143         * dom/Attr.cpp:
   74144         (WebCore::Attr::setPrefix):
   74145         * dom/Document.cpp:
   74146         (WebCore::Document::createElement):
   74147         * dom/Element.cpp:
   74148         (WebCore::Element::setPrefix):
   74149         * dom/Range.cpp:
   74150         (WebCore::Range::setStart):
   74151         (WebCore::Range::setEnd):
   74152         (WebCore::Range::isPointInRange):
   74153         (WebCore::Range::comparePoint):
   74154         (WebCore::Range::compareBoundaryPoints):
   74155         (WebCore::Range::deleteContents):
   74156         (WebCore::Range::processContents):
   74157         (WebCore::Range::extractContents):
   74158         (WebCore::Range::insertNode):
   74159         (WebCore::Range::setStartAfter):
   74160         (WebCore::Range::setEndBefore):
   74161         (WebCore::Range::setEndAfter):
   74162         (WebCore::Range::selectNode):
   74163         (WebCore::Range::surroundContents):
   74164         (WebCore::Range::setStartBefore):
   74165         * editing/TextIterator.cpp:
   74166         (WebCore::TextIterator::TextIterator):
   74167         * html/CanvasRenderingContext2D.cpp:
   74168         (WebCore::CanvasRenderingContext2D::createPattern):
   74169         * html/HTMLMediaElement.cpp:
   74170         (WebCore::HTMLMediaElement::play):
   74171         (WebCore::HTMLMediaElement::pause):
   74172         * html/HTMLSelectElement.cpp:
   74173         (WebCore::HTMLSelectElement::add):
   74174         (WebCore::HTMLSelectElement::setOption):
   74175         * xml/XPathEvaluator.cpp:
   74176         (WebCore::XPathEvaluator::evaluate):
   74177 
   74178 2007-11-11  Darin Adler  <darin (a] apple.com>
   74179 
   74180         Reviewed by Mitz.
   74181 
   74182         - http://bugs.webkit.org/show_bug.cgi?id=15945
   74183           speed up GraphicsContextCG typical case by skipping roundToDevicePixels
   74184 
   74185         * platform/graphics/cg/GraphicsContextCG.cpp:
   74186         (WebCore::GraphicsContext::restorePlatformState): Clear the flag since we no
   74187         longer know if the transform is identity or not.
   74188         (WebCore::GraphicsContext::strokeArc): Removed an extra set of redundant
   74189         CGContextSave/RestoreGState.
   74190         (WebCore::GraphicsContext::beginTransparencyLayer): Clear the flag since we no
   74191         longer know if the transform is identity or not.
   74192         (WebCore::GraphicsContext::endTransparencyLayer): Ditto.
   74193         (WebCore::GraphicsContext::scale): Ditto.
   74194         (WebCore::GraphicsContext::rotate): Ditto.
   74195         (WebCore::GraphicsContext::translate): Ditto.
   74196         (WebCore::GraphicsContext::concatCTM): Ditto.
   74197         (WebCore::GraphicsContext::roundToDevicePixels): Return quickly if the transform
   74198         is known to be identity, and record that fact when we discover it otherwise.
   74199 
   74200         * platform/graphics/cg/GraphicsContextPlatformPrivate.h:
   74201         (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
   74202         Added a m_userToDeviceTransformKnownToBeIdentity flag, initialized to false.
   74203 
   74204 2007-11-11  Darin Adler  <darin (a] apple.com>
   74205 
   74206         Reviewed by Mitz.
   74207 
   74208         - http://bugs.webkit.org/show_bug.cgi?id=15944
   74209           streamline SegmentedString to speed up parsing
   74210 
   74211         I measured a speed-up of the page load test while developing this patch. I don't
   74212         have a precise figure, though.
   74213 
   74214         * html/HTMLTokenizer.h: Removed unneeded lineNumberPtr() function. Also renamed
   74215         lineno to m_lineNumber.
   74216         * html/HTMLTokenizer.cpp:
   74217         (WebCore::HTMLTokenizer::processListing): Don't pass 0 to the advance function
   74218         since we don't want to update a line number.
   74219         (WebCore::HTMLTokenizer::parseSpecial): Ditto.
   74220         (WebCore::HTMLTokenizer::parseComment): Pass the line number data member directly
   74221         instead of lineNumberPtr() since the advance function now takes a reference.
   74222         (WebCore::HTMLTokenizer::parseServer): Ditto.
   74223         (WebCore::HTMLTokenizer::parseProcessingInstruction): Ditto.
   74224         (WebCore::HTMLTokenizer::parseText): Ditto.
   74225         (WebCore::HTMLTokenizer::parseEntity): Ditto.
   74226         (WebCore::HTMLTokenizer::parseTag): Ditto.
   74227         (WebCore::HTMLTokenizer::write): Ditto.
   74228 
   74229         * loader/FTPDirectoryDocument.cpp: (WebCore::FTPDirectoryTokenizer::write):
   74230         * loader/TextDocument.cpp: (WebCore::TextTokenizer::write):
   74231         Don't pass 0 to the advance function.
   74232 
   74233         * platform/SegmentedString.h: (WebCore::SegmentedString::advance): Streamlined
   74234         the most common case, and pushed less common cases into a separate function
   74235         that is not inlined. Also got rid of a branch by separating the case with a
   74236         line number from the case without one.
   74237 
   74238         * platform/SegmentedString.cpp: (WebCore::SegmentedString::advanceSlowCase):
   74239         Added. The aforementioned less common cases are here.
   74240 
   74241 2007-11-11  Antti Koivisto  <antti (a] apple.com>
   74242 
   74243         Forgot to do this review change (and test HTTP commit).
   74244 
   74245         * html/HTMLMediaElement.cpp:
   74246         (WebCore::HTMLMediaElement::play):
   74247 
   74248 2007-11-11  Antti Koivisto  <antti (a] apple.com>
   74249 
   74250         Reviewed by Darin.
   74251         
   74252         - Update play() and pause() to match current HTML5 draft
   74253             - send events asynchronously
   74254             - add timeupdate event to pause
   74255             - rethrow load() exception, not others
   74256         - Use list for async events to get ordering right
   74257 
   74258         Tests: media/video-pause-empty-events.html
   74259                media/video-play-empty-events.html
   74260                media/video-play-pause-events.html
   74261                media/video-play-pause-exception.html
   74262 
   74263         * html/HTMLMediaElement.cpp:
   74264         (WebCore::HTMLMediaElement::dispatchEventAsync): 
   74265         (WebCore::HTMLMediaElement::asyncEventTimerFired):
   74266         (WebCore::HTMLMediaElement::play):
   74267         (WebCore::HTMLMediaElement::pause):
   74268         * html/HTMLMediaElement.h:
   74269 
   74270 2007-11-11  Nikolas Zimmermann  <zimmermann (a] kde.org>
   74271 
   74272         Reviewed by Eric.
   74273 
   74274         Fixes: http://bugs.webkit.org/show_bug.cgi?id=6424 (<text>, <tspan> dominant-baseline attribute is not respected)
   74275 
   74276         Add (basic) support for dominant-baseline / alignment-baseline text properties.
   74277         Note: there are no official testcases, and no-one implemented it before. Only ASV3
   74278               supported dominant-baseline, but not correct it seems.
   74279 
   74280         * rendering/SVGRootInlineBox.cpp:
   74281         (WebCore::dominantBaselineToShift):
   74282         (WebCore::alignmentBaselineToShift):
   74283         (WebCore::SVGRootInlineBox::buildLayoutInformationForTextBox):
   74284 
   74285 2007-11-11  Adam Roben  <aroben (a] apple.com>
   74286 
   74287         Add wrappers around CoCreateInstance to COMPtr
   74288 
   74289         I followed the example of the Query constructor and query method by
   74290         adding a Create constructor and create method.
   74291 
   74292         Reviewed by Darin.
   74293 
   74294         * platform/win/COMPtr.h:
   74295         (COMPtr::COMPtr): Added a new constructor that calls
   74296         CoCreateInstance.
   74297         (COMPtr::create): Added.
   74298         (COMPtr::createInstance): Added.
   74299 
   74300 2007-11-11  Alexey Proskuryakov  <ap (a] nypop.com>
   74301 
   74302         Reviewed by Darin.
   74303 
   74304         http://bugs.webkit.org/show_bug.cgi?id=15896
   74305         More editing cleanup
   74306 
   74307         No functionality changes.
   74308 
   74309         * dom/Node.h: Moved several editing-related methods elsewhere.
   74310         * dom/Node.cpp: (WebCore::Node::maxCharacterOffset): Renamed from maxOffset()
   74311         to highlight that it is a match to offsetInCharacters(), and much different from other
   74312         offset-related methods. Added ASSERT_NOT_REACHED(), as callers are supposed to check
   74313         offsetInCharacters() before calling this.
   74314 
   74315         * dom/CharacterData.cpp: (WebCore::CharacterData::maxCharacterOffset):
   74316         * dom/CharacterData.h: (WebCore::CharacterData::isCharacterDataNode):
   74317         Updated for above renamings.
   74318 
   74319         * dom/Comment.{h,cpp}: Removed an override for offsetInCharacters(), which is already present in CharacterData.
   74320 
   74321         * dom/Document.{h,cpp}: Folded updateSelection() into Frame::selectionLayoutChanged().
   74322 
   74323         * dom/Position.h:
   74324         * dom/Position.cpp:
   74325         (WebCore::Position::uncheckedPreviousOffset): Moved from Node::previousOffset().
   74326         (WebCore::Position::uncheckedNextOffset): Moved from Node::NextOffset().
   74327         (WebCore::Position::previous): Adapted to the above move.
   74328         (WebCore::Position::next): Ditto.
   74329         (WebCore::Position::upstream): Removed an isBR() check, since a non-BR element cannot have a BR renderer (I think),
   74330         and BR elements are covered by editingIgnoresContent().
   74331         (WebCore::Position::downstream): Ditto.
   74332         (WebCore::caretMaxRenderedOffset): Moved from Node::caretMaxRenderedOffset().
   74333         (WebCore::Position::rendersInDifferentPosition): Updated for the above moves.
   74334 
   74335         * dom/PositionIterator.h: Added a comment describing this class from the original check-in.
   74336         * dom/PositionIterator.cpp:
   74337         (WebCore::PositionIterator::increment): Updated for the above moves.
   74338         (WebCore::PositionIterator::decrement): Ditto.
   74339 
   74340         * dom/ProcessingInstruction.h:
   74341         * dom/ProcessingInstruction.cpp: (WebCore::ProcessingInstruction::maxCharacterOffset):
   74342         ProcessingInstruction was already returning true from offsetInCharacters(), but didn't override maxCharacterOffset().
   74343         I think that implementing it has no actual effect, as PIs are not rendered, but it looks cleaner this way.
   74344 
   74345         * dom/Range.cpp:
   74346         (WebCore::Range::selectNodeContents):
   74347         * editing/ApplyStyleCommand.cpp:
   74348         (WebCore::ApplyStyleCommand::applyRelativeFontStyleChange):
   74349         (WebCore::ApplyStyleCommand::applyInlineStyle):
   74350         (WebCore::maxRangeOffset):
   74351         (WebCore::ApplyStyleCommand::removeInlineStyle):
   74352         (WebCore::ApplyStyleCommand::splitTextAtStartIfNeeded):
   74353         (WebCore::ApplyStyleCommand::splitTextAtEndIfNeeded):
   74354         (WebCore::ApplyStyleCommand::splitTextElementAtStartIfNeeded):
   74355         (WebCore::ApplyStyleCommand::splitTextElementAtEndIfNeeded):
   74356         (WebCore::ApplyStyleCommand::mergeEndWithNextIfIdentical):
   74357         * editing/CompositeEditCommand.cpp:
   74358         (WebCore::CompositeEditCommand::insertNodeAt):
   74359         (WebCore::CompositeEditCommand::positionOutsideTabSpan):
   74360         * editing/DeleteSelectionCommand.cpp:
   74361         (WebCore::DeleteSelectionCommand::handleGeneralDelete):
   74362         * editing/InsertLineBreakCommand.cpp:
   74363         (WebCore::InsertLineBreakCommand::doApply):
   74364         * editing/InsertParagraphSeparatorCommand.cpp:
   74365         (WebCore::InsertParagraphSeparatorCommand::doApply):
   74366         * editing/InsertTextCommand.cpp:
   74367         (WebCore::InsertTextCommand::insertTab):
   74368         * editing/visible_units.cpp:
   74369         (WebCore::previousLinePosition):
   74370         (WebCore::nextLinePosition):
   74371         Updated for the above moves.
   74372 
   74373         * editing/Editor.cpp:
   74374         (WebCore::Editor::advanceToNextMisspelling): Added a missing rangeCompliantEquivalent() call.
   74375 
   74376         * editing/TextIterator.cpp:
   74377         (WebCore::SimplifiedBackwardsTextIterator::SimplifiedBackwardsTextIterator): Changed the condition to obviously
   74378         match a maxCharacterOffset() call made after it; hopefully, this doesn't break any border cases.
   74379         (WebCore::SimplifiedBackwardsTextIterator::advance): Updated for the above moves.
   74380 
   74381         * editing/htmlediting.h:
   74382         * editing/htmlediting.cpp:
   74383         (WebCore::canHaveChildrenForEditing): Removed a bogus comment: I don't thin BRs have a special ability to accept
   74384         child nodes, other than via DOM manipulation, which is not specific to BRs.
   74385         (WebCore::rangeCompliantEquivalent): Removed a check for BR, which is already covered by editingIgnoresContent().
   74386         (WebCore::maxDeepOffset): Ditto.
   74387         (WebCore::caretMinOffset): Moved from Node. Changed some runtime checks that seemingly cannot fail into assertions.
   74388         (WebCore::caretMaxOffset): Ditto.
   74389 
   74390         * page/EventHandler.cpp:
   74391         (WebCore::EventHandler::handleMousePressEventSingleClick): Pass 0 to VisiblePosition constructor instead of
   74392         caretMinOffset. I didn't want to include htmlediting.h here, and I think that VisiblePosition constructor
   74393         will take care of adjusting the offset.
   74394 
   74395         * page/Frame.cpp: (WebCore::Frame::selectionLayoutChanged): Folded Document::updateSelection() here.
   74396         * page/mac/WebCoreFrameBridge.mm:
   74397         (-[WebCoreFrameBridge smartDeleteRangeForProposedRange:]): Added missing rangeCompliantEquivalent() calls.
   74398         * rendering/RenderBlock.cpp: (WebCore::RenderBlock::positionForRenderer): Changed to not round-trip via editing.
   74399         Changed some runtime checks that seemingly cannot fail into assertions.
   74400 
   74401 2007-11-11  Darin Adler  <darin (a] apple.com>
   74402 
   74403         Reviewed by Sam.
   74404 
   74405         - updated for JSRegExp function changes
   74406 
   74407         * platform/RegularExpression.cpp:
   74408         (WebCore::RegularExpression::Private::compile):
   74409         (WebCore::RegularExpression::match):
   74410 
   74411 2007-11-10  Mark Rowe  <mrowe (a] apple.com>
   74412 
   74413         Qt Linux build fix.
   74414 
   74415         * platform/UnicodeRange.h:
   74416 
   74417 2007-11-10  Mark Rowe  <mrowe (a] apple.com>
   74418 
   74419         Qt Windows build fix.
   74420 
   74421         * platform/UnicodeRange.h:
   74422 
   74423 2007-11-10  Nikolas Zimmermann  <zimmermann (a] kde.org>
   74424 
   74425         Reviewed by Eric.
   74426 
   74427         Fixes: http://bugs.webkit.org/show_bug.cgi?id=15937 (Add glyph-orientation-horizontal/vertical support)
   74428         Fixes: http://bugs.webkit.org/show_bug.cgi?id=13971 (text-anchor support on vertical text seems slightly off)
   74429 
   74430         Add glyph-orientation-* support for text & textPath. (90/180/270 and 'auto')
   74431         Also fix all vertical text handling - for text & textPath! (especially latin1 characters auto orientation in vertical writing modes)
   74432 
   74433         * WebCore.pro: Add platform/UnicodeRange.cpp to build
   74434         * WebCore.xcodeproj/project.pbxproj: Dito.
   74435         * rendering/SVGCharacterLayoutInfo.cpp: Respect orientationShiftX/Y & angle in characterTransform()
   74436         (WebCore::SVGChar::characterTransform):
   74437         * rendering/SVGCharacterLayoutInfo.h: New variables.
   74438         (WebCore::SVGCharOnPath::SVGCharOnPath):
   74439         (WebCore::SVGChar::SVGChar):
   74440         * rendering/SVGRootInlineBox.cpp: Added glyph-orientation-* handling.
   74441         (WebCore::glyphOrientationToAngle):
   74442         (WebCore::glyphOrientationIsMultiplyOf180Degrees):
   74443         (WebCore::calculateGlyphAdvanceAndShiftRespectingOrientation):
   74444         (WebCore::cummulatedHeightOfInlineBoxCharacterRange):
   74445         (WebCore::cummulatedWidthOrHeightOfTextChunk):
   74446         (WebCore::SVGRootInlineBox::buildLayoutInformationForTextBox):
   74447 
   74448 2007-11-10  Timothy Hatcher  <timothy (a] apple.com>
   74449 
   74450         Reviewed by Sam Weinig.
   74451 
   74452         * page/inspector/StylesSidebarPane.js: Fix the wording of a comment
   74453           and switch over to use getUniqueProperties in another place.
   74454 
   74455 2007-11-10  John Sullivan  <sullivan (a] apple.com>
   74456 
   74457         Reviewed by Sam Weinig
   74458 
   74459         Rest of fix for 5394877
   74460 
   74461         * bindings/js/kjs_window.cpp:
   74462         (KJS::Window::isSafeScript):
   74463         Don't log unsafe JavaScript attempts in the other version of isSafeScript() if in
   74464         private browsing mode either.
   74465 
   74466 2007-11-10  Nikolas Zimmermann  <zimmermann (a] kde.org>
   74467 
   74468         Reviewed by Oliver.
   74469 
   74470         Fix function name difference - header said 'unicodeRangeForCharacter', actually
   74471         implemented function is 'findCharUnicodeRange'. They are not compiled yet.
   74472 
   74473         * platform/UnicodeRange.h:
   74474 
   74475 2007-11-10  Dan Bernstein  <mitz (a] apple.com>
   74476 
   74477         Reviewed by Darin Adler.
   74478 
   74479         - fix <rdar://problem/5450655> Control-clicking text in a link can surprisingly select only part of the link, should select entire link
   74480 
   74481         No test because context menu events cannot be tested in DumpRenderTree.
   74482 
   74483         * page/EventHandler.cpp:
   74484         (WebCore::EventHandler::selectClosestWordOrLinkFromMouseEvent): Added.
   74485         If the click occurred in an active link, selects the entire link
   74486         element. Otherwise selects the closest word.
   74487         (WebCore::EventHandler::sendContextMenuEvent): Call
   74488         selectClosestWordOrLinkFromMouseEvent().
   74489         * page/EventHandler.h:
   74490 
   74491 2007-11-10  John Sullivan  <sullivan (a] apple.com>
   74492 
   74493         Reviewed by Tim Hatcher
   74494 
   74495         - fixed <rdar://problem/5394877> Safari should not log unsafe JavaScript attempts when 
   74496           in private browsing mode (only an issue if Log JavaScript Exceptions is turned on)
   74497 
   74498         * bindings/js/kjs_window.cpp:
   74499         (KJS::Window::isSafeScript):
   74500         Don't log unsafe JavaScript attempts to console or chromeClient if in private browsing mode
   74501 
   74502 2007-11-10  Alexey Proskuryakov  <ap (a] webkit.org>
   74503 
   74504         Reviewed by Darin.
   74505 
   74506         http://bugs.webkit.org/show_bug.cgi?id=15922
   74507         Implement more of Mozilla Selection API
   74508 
   74509         Tests: editing/selection/containsNode.html
   74510                editing/selection/deleteFromDocument.html
   74511                editing/selection/extend.html
   74512                editing/selection/selectAllChildren.html
   74513 
   74514         * editing/SelectionController.cpp:
   74515         (WebCore::SelectionController::deleteFromDocument):
   74516         (WebCore::SelectionController::containsNode):
   74517         (WebCore::SelectionController::selectAllChildren):
   74518         (WebCore::SelectionController::extend):
   74519         * editing/SelectionController.h:
   74520         Added deleteFromDocument(), containsNode(), and selectAllChildren(). Reimplemented extend(),
   74521         which existed, but didn't match Firefox behavior and wasn't exposed via bindings.
   74522         Removed a comment mentioning removeRange(), as this method makes no sense without multiple
   74523         selection range support.
   74524 
   74525         * page/DOMSelection.cpp:
   74526         (WebCore::DOMSelection::extend):
   74527         (WebCore::DOMSelection::deleteFromDocument):
   74528         (WebCore::DOMSelection::containsNode):
   74529         (WebCore::DOMSelection::selectAllChildren):
   74530         * page/DOMSelection.h:
   74531         * page/DOMSelection.idl:
   74532         Exposed the new methods.
   74533 
   74534 2007-11-10  Alexey Proskuryakov  <ap (a] webkit.org>
   74535 
   74536         Reviewed by Darin.
   74537 
   74538         http://bugs.webkit.org/show_bug.cgi?id=15892
   74539         DOM Range operations are not implemented for ProcessingInstruction nodes
   74540 
   74541         Test: fast/dom/Range/range-processing-instructions.html
   74542 
   74543         * dom/Range.cpp:
   74544         (WebCore::Range::processContents): Implemented ProcessingInstruction cases.
   74545         (WebCore::Range::checkNodeWOffset): Removed a FIXME - yes, I think that we are supposed
   74546         to use ProcessingInstruction.data.
   74547 
   74548 2007-11-09  Timothy Hatcher  <timothy (a] apple.com>
   74549 
   74550         Reviewed by Mark Rowe.
   74551 
   74552         Bug 12054: Ability to serialize an element subtree (into clipboard?) from the DOM inspector
   74553         http://bugs.webkit.org/show_bug.cgi?id=12054
   74554 
   74555         - Add support code for routing copy events to the focused element.
   74556         - Implement copying the currently selected DOM node. The node
   74557           and it's subtree is copied to the clipboard. If the node has no
   74558           outerHTML, the nodeValue is copied (text nodes, etc.)
   74559         - Implement copy for the resource sidebar. The URL is copied for the
   74560           currently selected resource.
   74561 
   74562         * page/inspector/DocumentPanel.js:
   74563         * page/inspector/inspector.js:
   74564 
   74565 2007-11-09  Antti Koivisto  <antti (a] apple.com>
   74566 
   74567         Reviewed by Adele.
   74568 
   74569         Fix occasional blank video with poster attribute.
   74570 
   74571         * html/HTMLMediaElement.cpp:
   74572         (WebCore::HTMLMediaElement::load):
   74573         (WebCore::HTMLMediaElement::didRestoreFromCache):
   74574         Just calling updateFromElement() does the right thing for both poster image and video.
   74575 
   74576 2007-11-04  Sam Weinig  <sam (a] webkit.org>
   74577 
   74578         Reviewed by Adam Roben.
   74579 
   74580         <rdar://problem/5435940>
   74581         The COM bindings for the DOM should be autogenerated like the other DOM bindings
   74582 
   74583         Initial commit of the autogeneration of the COM DOM Bindings.  No behavior change
   74584         is being introduced in this patch and to insure that no conflicts arise, a temporary
   74585         prefix of "GEN_" has been used for all the new classes.
   74586 
   74587         The build architecture for these bindings differs slightly from the other autogenerated
   74588         bindings.  Instead of building in WebCore and migrating the resuting code to WebKit (as
   74589         is done for the Objective-C bindigs currently), the IDLs and generation scripts are
   74590         migrated to WebKit and built there.  This is done with a series of scripts and Makefiles.
   74591 
   74592         This commit includes:
   74593             - Hand rolled root class/Interface GEN_DOMObject used to facilated object creation
   74594               and ref-counting.
   74595             - Generating all of the Core DOM and most of HTML and CSS
   74596             - Generating Event, EventTarget, and EventListener
   74597 
   74598         * WebCore.vcproj/MigrateIDLAndScripts.make: Added.
   74599         * WebCore.vcproj/WebCore.vcproj:
   74600         * WebCore.vcproj/migrate-idls.sh: Added.
   74601         * bindings/scripts/CodeGenerator.pm:
   74602         * bindings/scripts/CodeGeneratorCOM.pm: Added.
   74603         * dom/EventListener.h: Make the isWindowEvent parameter default to false
   74604         to allow autogeneration based on the IDL.
   74605 
   74606 2007-11-09  Tristan O'Tierney  <tristan (a] apple.com>
   74607 
   74608         Reviewed by Timothy Hatcher.
   74609         
   74610         This patch is for the WebKit side of <rdar://problem/5591115>.
   74611         We need a way to tell context menu navigations, such as "Open in New Window"
   74612         to override any sort of browser preference for tab based navigation.
   74613 
   74614         * bridge/WindowFeatures.h:
   74615         (WebCore::WindowFeatures::WindowFeatures):
   74616         Added a new struct member var, preferredType
   74617         and an accompanying enum type PreferredType
   74618         to send a window type recommendation up to the Chrome. 
   74619         
   74620         * page/ContextMenuController.cpp:
   74621         (WebCore::openNewWindow):
   74622         Set the window features to recommend a new Window for
   74623         "Open in New Window" context menu action.
   74624 
   74625 2007-11-08  Adam Roben  <aroben (a] apple.com>
   74626 
   74627         Fix <rdar://5483519> Pressing Enter on selected buttons should fire onclick
   74628 
   74629         We now match the behavior of Firefox and IE, which is to always just
   74630         send a click event to the focused button when the Enter key is pressed
   74631         (previously we were submitting forms directly in some cases).
   74632 
   74633         Reviewed by Adele.
   74634 
   74635         Test: fast/forms/enter-clicks-buttons.html
   74636 
   74637         * html/HTMLButtonElement.cpp:
   74638         (WebCore::HTMLButtonElement::defaultEventHandler): Don't do anything
   74639         fancy when Enter is pressed on a <button type=button> -- just send a
   74640         click event like we do for other button types.
   74641         * html/HTMLInputElement.cpp:
   74642         (WebCore::HTMLInputElement::defaultEventHandler): Treat type=button
   74643         the same way we treat type=submit and type=reset: just send a click
   74644         event when Enter is pressed.
   74645 
   74646 2007-11-09  Dan Bernstein  <mitz (a] apple.com>
   74647 
   74648         Reviewed by Antti Koivisto.
   74649 
   74650         - fix a bug in invisible layer culling: dynamically changing a 
   74651           descendant of an invisible layer to be visible did not work
   74652 
   74653         Test: fast/layers/layer-content-visibility-change.html
   74654 
   74655         * rendering/RenderLayer.cpp:
   74656         (WebCore::RenderLayer::setHasVisibleContent): If we got visible content,
   74657         make sure that our stacking context rebuilds its z-order lists to
   74658         include us.
   74659 
   74660 2007-11-09  David Hyatt  <hyatt (a] apple.com>
   74661 
   74662         Clean up matrix() parsing.  Make sure the first four arguments can be lengths or numbers.  The last two
   74663         args can be lengths or numbers or percents.
   74664 
   74665         Reviewed by Beth
   74666 
   74667         * WebCore.xcodeproj/project.pbxproj:
   74668         * css/CSSParser.cpp:
   74669         (WebCore::TransformOperationInfo::TransformOperationInfo):
   74670         (WebCore::CSSParser::parseTransform):
   74671         * rendering/RenderStyle.h:
   74672         (WebCore::MatrixTransformOperation::apply):
   74673 
   74674 2007-11-09  Beth Dakin  <bdakin (a] apple.com>
   74675 
   74676         Reviewed by Oliver.
   74677 
   74678         Fix for <rdar://problem/5586370> CSS Transform - incorrect matrix 
   74679         math leads to crazy problems
   74680 
   74681         Transform matrices accept the first four parameters as CSS lengths. 
   74682         CSS lengths get mapped into WebCore::Lengths as percents by 
   74683         WebCore::convertToLength(). Percent lengths cannot call value(). It 
   74684         does not yield a correct result and it asserts on Debug builds. 
   74685 
   74686         * rendering/RenderStyle.h:
   74687         (WebCore::MatrixTransformOperation::apply): Instead of calling 
   74688         value() on the lengths, call calcValue. This fixes the assert and 
   74689         the bad rendering. 
   74690 
   74691 2007-11-09  Simon Hausmann  <hausmann (a] kde.org>
   74692 
   74693         build/link fix for Qt/Windows.
   74694 
   74695         userIdleTime() is stubbed in win/SystemTimeWin.cpp, so don't
   74696         define it twice.
   74697 
   74698         * platform/qt/TemporaryLinkStubs.cpp:
   74699 
   74700 2007-11-09  Simon Hausmann  <hausmann (a] kde.org>
   74701 
   74702         Reviewed by Holger.
   74703 
   74704         Fix ContextMenu allocation in the Qt port.
   74705 
   74706         Store all items and submenus value based in ContextMenu and ContextMenuItem.
   74707         That fixes the crashes when the context menu was populated with sub-menus because
   74708         of the use of temporary ContextMenu objects like this:
   74709 
   74710         ContextMenu subMenu(...);
   74711         subMenu.appendItem(...);
   74712         subMenu.appendItem(...);
   74713 
   74714         subMenuItem.setSubMenu(&subMenu); // temporary pointer, need to _copy_ contents
   74715 
   74716         * platform/ContextMenu.h:
   74717         * platform/ContextMenuItem.h:
   74718         * platform/PlatformMenuDescription.h:
   74719         * platform/qt/ContextMenuItemQt.cpp:
   74720         (WebCore::ContextMenuItem::ContextMenuItem):
   74721         (WebCore::ContextMenuItem::platformSubMenu):
   74722         * platform/qt/ContextMenuQt.cpp:
   74723         (WebCore::ContextMenu::ContextMenu):
   74724         (WebCore::ContextMenu::~ContextMenu):
   74725         (WebCore::ContextMenu::appendItem):
   74726         (WebCore::ContextMenu::itemCount):
   74727 
   74728 2007-11-09  Peter Kasting  <pkasting (a] google.com>
   74729 
   74730         Reviewed by Mark Rowe.
   74731 
   74732         http://bugs.webkit.org/show_bug.cgi?id=15909
   74733         Malformed GIFs should not result in memory corruption.
   74734 
   74735         * platform/image-decoders/gif/GIFImageDecoder.cpp:
   74736         (WebCore::GIFImageDecoder::haveDecodedRow):
   74737 
   74738 2007-11-08  Timothy Hatcher  <timothy (a] apple.com>
   74739 
   74740         Reviewed by Sam Weinig.
   74741 
   74742         Some Web Inspector CSS editing changes.
   74743         - Only delete the property if all the text is delete or the new user input correctly parses.
   74744           This prevents deleting the existing property if the new text is invalid.
   74745         - Intercept the Escape key and cancel editing, not saving any changes.
   74746 
   74747         * page/inspector/StylesSidebarPane.js:
   74748 
   74749 2007-11-08  Kevin Ollivier  <kevino (a] theolliviers.com>
   74750 
   74751         Bakefiles for building WebCore, needed by wx port.
   74752 
   74753         Reviewed by Mark Rowe.
   74754 
   74755         * WebCoreSources.bkl: Added.
   74756         * webcore-base.bkl: Added.
   74757         * webcore-wx.bkl: Added.
   74758 
   74759 2007-11-08  Justin Haygood  <jhaygood (a] reaktix.com>
   74760 
   74761         Reviewed by Mark Rowe.
   74762 
   74763         http://bugs.webkit.org/show_bug.cgi?id=15905
   74764 
   74765         Fix builds with HTML 5 Storage support disabled.
   74766         ENABLE(DATABASE) needs to be added in a few places.
   74767 
   74768         * page/InspectorController.cpp:
   74769         * storage/Database.h:
   74770 
   74771 2007-11-08  Steve Falkenburg  <sfalken (a] apple.com>
   74772 
   74773         <rdar://problem/5524082> Allow images to be dragged out directly into other apps
   74774         
   74775         We weren't including CF_HDROP in our image drops.  This broke drag of
   74776         images out of the browser window directly into other apps (examples
   74777         include notepad, mspaint, msword).
   74778         
   74779         Reviewed by Oliver, Ada.
   74780 
   74781         * platform/win/ClipboardWin.cpp:
   74782         (WebCore::createGlobalImageFileContent): Removed unused variable.
   74783         (WebCore::createGlobalHDropContent): Added
   74784         (WebCore::writeFileToDataObject): Write HDROP data if available.
   74785         (WebCore::writeImageToDataObject): Write HDROP for dragged images.
   74786         (WebCore::ClipboardWin::writeURL): Don't write HDROP for dragged URLs.
   74787 
   74788 2007-11-08  Xan Lopez  <xan (a] gnome.org>
   74789 
   74790         Reviewed by Alp.
   74791 
   74792         http://bugs.webkit.org/show_bug.cgi?id=15908
   74793         Use g_object_ref_sink when available
   74794 
   74795         * platform/gtk/PopupMenuGtk.cpp:
   74796         (WebCore::PopupMenu::show):
   74797         * platform/gtk/ScrollViewGtk.cpp:
   74798         (WebCore::ScrollView::setGtkAdjustments):
   74799 
   74800 2007-11-08  Dan Bernstein  <mitz (a] apple.com>
   74801 
   74802         Reviewed by Beth Dakin.
   74803 
   74804         - fix <rdar://problem/5491922> REGRESSION (Safari 2-3): Flash-based "Cash Optimizer" on etrade.com does not draw completely
   74805 
   74806         Test: fast/dom/length-attribute-mapping.html
   74807 
   74808         * dom/StyledElement.cpp:
   74809         (WebCore::StyledElement::addCSSLength): Changed the garbage-stripping
   74810         logic to stop after the first "%" or "*" in the string. This allows for
   74811         "100%25" to be mapped to "100%" like it is in Firefox and WinIE.
   74812 
   74813 2007-11-08  Kevin McCullough  <kmccullough (a] apple.com>
   74814 
   74815         - Build fix.
   74816 
   74817         * loader/FrameLoaderClient.h:
   74818         * platform/graphics/svg/SVGImageEmptyClients.h:
   74819         (WebCore::SVGEmptyFrameLoaderClient::windowObjectCleared):
   74820 
   74821 2007-11-08  Kevin McCullough  <kmccullough (a] apple.com>
   74822 
   74823         Reviewed by Sam.
   74824 
   74825         - windowObjectCleared() is no longer const.  It needs to setup the
   74826         script debugger and cannot be const to do so.
   74827 
   74828         * loader/FrameLoaderClient.h:
   74829         * platform/graphics/svg/SVGImageEmptyClients.h:
   74830         (WebCore::SVGEmptyFrameLoaderClient::windowObjectCleared):
   74831 
   74832 2007-11-08  Adam Roben  <aroben (a] apple.com>
   74833 
   74834         Hopeful Windows build fix
   74835 
   74836         * rendering/RenderObject.cpp: Touch this file to make it recompile.
   74837 
   74838 2007-11-08  Sam Weinig  <sam (a] webkit.org>
   74839 
   74840         Reviewed by Darin.
   74841 
   74842         Convert JavaScript internal function objects to use one class per
   74843         function.  This avoids a switch statement inside what used to be
   74844         the shared function classes and will allow Shark to better analyze
   74845         the code.
   74846 
   74847         To make this switch, the value property of the HashEntry was changed
   74848         to a union of an intptr_t (which is used to continue handle valueGetters)
   74849         and function pointer which points to a static constructor for the
   74850         individual new function objects.
   74851 
   74852         SunSpider claims this is a 1.0% speedup.
   74853 
   74854         - On the WebCore side, I updated CodeGeneratorJS.pm to generate the
   74855           new classes and hand updated the remain non-generated (groan) classes.
   74856 
   74857         * bindings/js/JSDOMWindowCustom.cpp:
   74858         (WebCore::JSDOMWindow::customGetOwnPropertySlot):
   74859         * bindings/js/JSEventTargetNode.cpp:
   74860         (WebCore::JSEventTargetNodePrototypeFunctionAddEventListener::callAsFunction):
   74861         (WebCore::JSEventTargetNodePrototypeFunctionRemoveEventListener::callAsFunction):
   74862         (WebCore::JSEventTargetNodePrototypeFunctionDispatchEvent::callAsFunction):
   74863         * bindings/js/JSEventTargetNode.h:
   74864         * bindings/js/JSHTMLInputElementBase.cpp:
   74865         (WebCore::JSHTMLInputElementBaseFunctionSetSelectionRange::callAsFunction):
   74866         (WebCore::JSHTMLInputElementBase::getOwnPropertySlot):
   74867         * bindings/js/JSHTMLInputElementBase.h:
   74868         (WebCore::JSHTMLInputElementBase::):
   74869         * bindings/js/JSXMLHttpRequest.cpp:
   74870         (KJS::JSXMLHttpRequestPrototypeFunctionAbort::callAsFunction):
   74871         (KJS::JSXMLHttpRequestPrototypeFunctionGetAllResponseHeaders::callAsFunction):
   74872         (KJS::JSXMLHttpRequestPrototypeFunctionGetResponseHeader::callAsFunction):
   74873         (KJS::JSXMLHttpRequestPrototypeFunctionOpen::callAsFunction):
   74874         (KJS::JSXMLHttpRequestPrototypeFunctionSend::callAsFunction):
   74875         (KJS::JSXMLHttpRequestPrototypeFunctionSetRequestHeader::callAsFunction):
   74876         (KJS::JSXMLHttpRequestPrototypeFunctionOverrideMIMEType::callAsFunction):
   74877         (KJS::JSXMLHttpRequestPrototypeFunctionAddEventListener::callAsFunction):
   74878         (KJS::JSXMLHttpRequestPrototypeFunctionRemoveEventListener::callAsFunction):
   74879         (KJS::JSXMLHttpRequestPrototypeFunctionDispatchEvent::callAsFunction):
   74880         * bindings/js/JSXMLHttpRequest.h:
   74881         (KJS::JSXMLHttpRequest::impl):
   74882         * bindings/js/JSXSLTProcessor.cpp:
   74883         (KJS::JSXSLTProcessorPrototypeFunctionImportStylesheet::callAsFunction):
   74884         (KJS::JSXSLTProcessorPrototypeFunctionTransformToFragment::callAsFunction):
   74885         (KJS::JSXSLTProcessorPrototypeFunctionTransformToDocument::callAsFunction):
   74886         (KJS::JSXSLTProcessorPrototypeFunctionSetParameter::callAsFunction):
   74887         (KJS::JSXSLTProcessorPrototypeFunctionGetParameter::callAsFunction):
   74888         (KJS::JSXSLTProcessorPrototypeFunctionRemoveParameter::callAsFunction):
   74889         (KJS::JSXSLTProcessorPrototypeFunctionClearParameters::callAsFunction):
   74890         (KJS::JSXSLTProcessorPrototypeFunctionReset::callAsFunction):
   74891         * bindings/js/JSXSLTProcessor.h:
   74892         * bindings/js/kjs_events.cpp:
   74893         (WebCore::JSClipboardPrototypeFunctionClearData::callAsFunction):
   74894         (WebCore::JSClipboardPrototypeFunctionGetData::callAsFunction):
   74895         (WebCore::JSClipboardPrototypeFunctionSetData::callAsFunction):
   74896         (WebCore::JSClipboardPrototypeFunctionSetDragImage::callAsFunction):
   74897         * bindings/js/kjs_events.h:
   74898         * bindings/js/kjs_navigator.cpp:
   74899         (KJS::Plugins::):
   74900         (KJS::Navigator::getOwnPropertySlot):
   74901         (KJS::Plugins::getOwnPropertySlot):
   74902         (KJS::PluginsFunctionRefresh::callAsFunction):
   74903         (KJS::NavigatorProtoFuncJavaEnabled::callAsFunction):
   74904         * bindings/js/kjs_navigator.h:
   74905         (KJS::Navigator::):
   74906         * bindings/js/kjs_window.cpp:
   74907         (KJS::Window::getOwnPropertySlot):
   74908         (KJS::Window::put):
   74909         (KJS::WindowProtoFuncAToB::callAsFunction):
   74910         (KJS::WindowProtoFuncBToA::callAsFunction):
   74911         (KJS::WindowProtoFuncOpen::callAsFunction):
   74912         (KJS::WindowProtoFuncScrollBy::callAsFunction):
   74913         (KJS::WindowProtoFuncScrollTo::callAsFunction):
   74914         (KJS::WindowProtoFuncMoveBy::callAsFunction):
   74915         (KJS::WindowProtoFuncMoveTo::callAsFunction):
   74916         (KJS::WindowProtoFuncResizeBy::callAsFunction):
   74917         (KJS::WindowProtoFuncResizeTo::callAsFunction):
   74918         (KJS::WindowProtoFuncSetTimeout::callAsFunction):
   74919         (KJS::WindowProtoFuncClearTimeout::callAsFunction):
   74920         (KJS::WindowProtoFuncSetInterval::callAsFunction):
   74921         (KJS::WindowProtoFuncAddEventListener::callAsFunction):
   74922         (KJS::WindowProtoFuncRemoveEventListener::callAsFunction):
   74923         (KJS::WindowProtoFuncShowModalDialog::callAsFunction):
   74924         (KJS::WindowProtoFuncNotImplemented::callAsFunction):
   74925         (KJS::Location::getOwnPropertySlot):
   74926         (KJS::Location::put):
   74927         (KJS::LocationProtoFuncReplace::callAsFunction):
   74928         (KJS::LocationProtoFuncReload::callAsFunction):
   74929         (KJS::LocationProtoFuncAssign::callAsFunction):
   74930         (KJS::LocationProtoFuncToString::callAsFunction):
   74931         * bindings/js/kjs_window.h:
   74932         (KJS::Window::):
   74933         * bindings/scripts/CodeGeneratorJS.pm:
   74934 
   74935 2007-11-08  Mark Rowe  <mrowe (a] apple.com>
   74936 
   74937         Fix the Gtk, Qt and Wx builds.
   74938 
   74939         * platform/gtk/TemporaryLinkStubs.cpp:
   74940         * platform/qt/TemporaryLinkStubs.cpp:
   74941         * platform/wx/TemporaryLinkStubs.cpp:
   74942 
   74943 2007-11-08  Mark Rowe  <mrowe (a] apple.com>
   74944 
   74945         Not reviewed.  Fix two instances of includes using the wrong case in the filename.
   74946 
   74947         * platform/graphics/mac/MoviePrivateQTKit.mm:
   74948         * platform/wx/MimeTypeRegistryWx.cpp:
   74949 
   74950 2007-11-08  Darin Adler  <darin (a] apple.com>
   74951 
   74952         Reviewed by Adam.
   74953 
   74954         - fix <rdar://problem/5552943> accesskey does not focus <button> elements
   74955 
   74956         Test: fast/forms/access-key.html
   74957 
   74958         * html/HTMLButtonElement.cpp: (WebCore::HTMLButtonElement::accessKeyAction):
   74959         Added a call to focus.
   74960 
   74961 2007-11-07  Darin Adler  <darin (a] apple.com>
   74962 
   74963         Reviewed by Steve.
   74964 
   74965         - cut down on notImplemented() functions on Windows
   74966 
   74967         * bridge/AXObjectCache.h: Put #if around the accessibility
   74968         global.
   74969 
   74970         * bridge/win/FrameWin.cpp: (WebCore::Frame::setNeedsReapplyStyles):
   74971         Moved here from TemporaryLinkStubs.
   74972 
   74973         * dom/Document.cpp: (WebCore::Document::lastModified): Re-implemented
   74974         using the ResourceResponse that's now available from the DocumentLoader.
   74975 
   74976         * editing/JSEditor.cpp: (execTranspose): Changed to call transpose() on
   74977         the Editor instead of the obsolete one on the Frame.
   74978 
   74979         * loader/DocumentLoader.h: Removed getResponseModifiedHeader.
   74980         * loader/FrameLoader.h: Removed overrideMediaType.
   74981 
   74982         * loader/gtk/DocumentLoaderGtk.cpp: Removed.
   74983         * loader/mac/DocumentLoaderMac.mm: Removed.
   74984         * loader/qt/DocumentLoaderQt.cpp: Removed.
   74985 
   74986         * page/Frame.cpp: Removed transpose.
   74987         * page/Frame.h: Ditto.
   74988         * page/FrameView.h: Removed updateBorder.
   74989         * page/gtk/FrameGtk.cpp: Removed issueTransposeCommand.
   74990         * page/mac/FrameMac.mm: Ditto.
   74991         * page/mac/WebCoreFrameBridge.h: Removed issueTransposeCommand and
   74992         overrideMediaType.
   74993         * page/qt/FrameQt.cpp: Removed issueTransposeCommand.
   74994 
   74995         * platform/gtk/TemporaryLinkStubs.cpp: Removed gAccessibilityEnabled.
   74996         * platform/qt/TemporaryLinkStubs.cpp: Ditto.
   74997         * platform/win/TemporaryLinkStubs.cpp: Removed or moved all but 3 of the stubs.
   74998         * platform/wx/TemporaryLinkStubs.cpp: Removed gAccessibilityEnabled,
   74999         issueTransposeCommand, and overrideMediaType.
   75000 
   75001         * platform/network/cf/ResourceHandleCFNet.cpp:
   75002         (WebCore::ResourceHandle::loadsBlocked): Moved here from TemporaryLinkStubs.
   75003         (WebCore::ResourceHandle::willLoadFromCache): Ditto.
   75004         * platform/win/GraphicsContextWin.cpp:
   75005         (WebCore::GraphicsContextPlatformPrivate::clip): Ditto.
   75006         * platform/win/ScrollViewWin.cpp: (WebCore::ScrollView::inWindow): Ditto.
   75007         * platform/win/SystemTimeWin.cpp: (WebCore::userIdleTime): Ditto.
   75008         * platform/win/WidgetWin.cpp: (WebCore::Widget::setIsSelected): Ditto.
   75009 
   75010         * WebCore.pro: Updated for removed files.
   75011         * WebCore.xcodeproj/project.pbxproj: Updated for removed file.
   75012 
   75013 2007-11-08  Mark Rowe  <mrowe (a] apple.com>
   75014 
   75015        Build fix for case-sensitive file systems.  Fix case of file names
   75016        in #include's.
   75017 
   75018         * html/HTMLMediaElement.cpp:
   75019         * platform/graphics/Movie.cpp:
   75020 
   75021 2007-11-08  Holger Hans Peter Freyther  <holger.freyther (a] trolltech.com>
   75022 
   75023         Reviewed by Lars Knoll <lars (a] trolltech.com>.
   75024 
   75025         Remove some warnings about not implemented methods.
   75026 
   75027         * ResourceHandle::loadsBlocked and ResourceHandle::supportsBufferedData are
   75028         specific to the NS API and won't be implemented on Qt.
   75029         * ResourceHandle::bufferedData can not be reached as we return false in
   75030         ResourceHandle::supportsBufferedData.
   75031 
   75032 
   75033         * platform/network/qt/ResourceHandleQt.cpp:
   75034         (WebCore::ResourceHandle::supportsBufferedData):
   75035 
   75036 2007-11-08  Holger Hans Peter Freyther  <holger.freyther (a] trolltech.com>
   75037 
   75038         Reviewed by Lars Knoll <lars (a] trolltech.com>.
   75039 
   75040         Cleanup checking for the request method.
   75041 
   75042         * Check the request method only in QWebNetworkManager::add.
   75043         * Currently HEAD, GET, POST are allowed and for everything else
   75044         QWebNetworkManager::add returns false.
   75045         * Returning false is compatible with ResourceHandle::start and it
   75046         can be used in ResourceHandle::loadResourceSynchronously to generate
   75047         a ResourceError
   75048 
   75049 
   75050         * platform/network/qt/ResourceHandleQt.cpp:
   75051         (WebCore::ResourceHandle::start):
   75052         (WebCore::ResourceHandle::loadResourceSynchronously):
   75053 
   75054 2007-11-08  Holger Hans Peter Freyther  <holger.freyther (a] trolltech.com>
   75055 
   75056         Reviewed by Lars Knoll <lars (a] trolltech.com>.
   75057 
   75058         Implement WebCore::callOnMainThread
   75059 
   75060         Implemented using a global QObject, that is moved to the main thread
   75061         and then sending a custom event to it.
   75062         Picked a number below QEvent::User but above any other documented value.
   75063 
   75064 
   75065         * platform/qt/ThreadingQt.cpp:
   75066         (WebCore::PerformFunctionEvent::PerformFunctionEvent):
   75067         (WebCore::MainThreadInvoker::MainThreadInvoker):
   75068         (WebCore::MainThreadInvoker::event):
   75069         (WebCore::callOnMainThread):
   75070 
   75071 2007-11-08  Holger Hans Peter Freyther  <holger.freyther (a] trolltech.com>
   75072 
   75073         Reviewed by Lars Knoll <lars (a] trolltech.com>.
   75074 
   75075         Avoid problems with calling QPainter::begin() on an already active paintdevice
   75076 
   75077         * Partial pick from 6200e04c3e0a77873c3b3f3969b65bc701020326 to avoid getting
   75078         crashes on Qt/Mac 4.4 with QPainter::begin to fail because we already draw.
   75079         * If we are in a layout or need one do not paint. This can happen for the PlatformScrollBar
   75080         used by the ScrollView on a layout triggered by QWebPage::paintEvent.
   75081 
   75082 
   75083         * platform/qt/WidgetQt.cpp:
   75084         (WebCore::Widget::invalidateRect):
   75085 
   75086 2007-11-08  Eric Seidel  <eric (a] webkit.org>
   75087 
   75088         No review.
   75089 
   75090         * ksvg2/svg/SVGPathElement.h: remove old comment
   75091 
   75092 2007-11-07  Antti Koivisto  <antti (a] apple.com>
   75093 
   75094         Reviewed by Ollie.
   75095 
   75096         Ensure video renderer has correct size if video has already been loaded
   75097         when it is constructed.
   75098 
   75099         * rendering/RenderVideo.cpp:
   75100         (WebCore::RenderVideo::RenderVideo):
   75101 
   75102 2007-11-07  Antti Koivisto  <antti (a] apple.com>
   75103 
   75104         Reviewed by Ollie.
   75105 
   75106         Ensure video is visible when it should be.
   75107 
   75108         * rendering/RenderVideo.cpp:
   75109         (WebCore::RenderVideo::updateMovie):
   75110 
   75111 2007-11-07  Dan Bernstein  <mitz (a] apple.com>
   75112 
   75113         Reviewed by Darin Adler.
   75114 
   75115         - fix <rdar://problem/5523503> Safari crashes clicking scroll bar in FaceBook 'Trips'
   75116 
   75117         Layers and listboxes are two kinds of ScrollBarClient that can be
   75118         removed while the scrollbar is tracking the mouse. The scrollbar is not
   75119         destroyed until later, and meanwhile it can try to call the client,
   75120         which results in a crash.
   75121 
   75122         * manual-tests/stale-scrollbar-client-crash.html: Added.
   75123         * platform/ScrollBar.h:
   75124         (WebCore::Scrollbar::setClient): Added.
   75125         * rendering/RenderLayer.cpp:
   75126         (WebCore::RenderLayer::destroyScrollbar): Call Scrollbar::setClient().
   75127         * rendering/RenderListBox.cpp:
   75128         (WebCore::RenderListBox::~RenderListBox): Ditto.
   75129 
   75130 2007-11-07  Adam Roben  <aroben (a] apple.com>
   75131 
   75132         Fix <rdar://5569268> Crash when opening any FTP site in second tab/window
   75133 
   75134         Reviewed by Sam.
   75135 
   75136         No test possible.
   75137 
   75138         * platform/win/SharedBufferWin.cpp:
   75139         (WebCore::SharedBuffer::createWithContentsOfFile): Bail if we get an
   75140         empty path, because _wfopen_s will crash if we pass it a null pointer.
   75141 
   75142 2007-11-07  David Kilzer  <ddkilzer (a] apple.com>
   75143 
   75144         WebKit confuses width/height for Media Queries device-aspect-ratio evaluation
   75145         <http://bugs.webkit.org/show_bug.cgi?id=14893>
   75146         <rdar://problem/5380295>
   75147 
   75148         Reviewed by Darin.
   75149 
   75150         Tests: fast/css/device-aspect-ratio.html
   75151                fast/css/max-device-aspect-ratio.html
   75152                fast/css/min-device-aspect-ratio.html
   75153 
   75154         * css/MediaQueryEvaluator.cpp:
   75155         (WebCore::parseAspectRatio): Renamed method parameters from a/b to h/v.
   75156         (WebCore::device_aspect_ratioMediaFeatureEval): Renamed local variables from
   75157         a/b to h/v.  Switched first two arguments of the call to cmpvalue() to fix
   75158         the bug.
   75159 
   75160 2007-11-07  Dan Bernstein  <mitz (a] apple.com>
   75161 
   75162         Reviewed by Dave Hyatt.
   75163 
   75164         - fix http://bugs.webkit.org/show_bug.cgi?id=15887
   75165           REGRESSION (r27576): Crash in RenderStyle::affectedByHoverRules clicking link on Digg
   75166 
   75167         Test: fast/css/display-none-inline-style-change-crash.html
   75168 
   75169         * dom/Element.cpp:
   75170         (WebCore::Element::recalcStyle): Fixed the crash by null-checking
   75171         the current style and removed other checks that are not strictly
   75172         necessary.
   75173 
   75174 2007-11-07  Brady Eidson  <beidson (a] apple.com>
   75175 
   75176         Rubberstamped by Sam
   75177 
   75178         Remove FrameLoaderClient methods from SVG that were pruned awhile ago
   75179 
   75180         * platform/graphics/svg/SVGImageEmptyClients.h:
   75181 
   75182 2007-11-07  Dan Bernstein  <mitz (a] apple.com>
   75183 
   75184         Reviewed by Darin Adler.
   75185 
   75186         - fix a bug where CSS rules with :hover in the ancestor chain stopped
   75187           working after changing the inline style declaration of the ancestor
   75188 
   75189         Test: fast/css/affected-by-hover-after-style-change.html
   75190 
   75191         * dom/Element.cpp:
   75192         (WebCore::Element::recalcStyle): If we are not forcing style
   75193         recalculation for all descendants, preserve any "affected by
   75194         {hover|active|drag} bits that we may have acquired from them.
   75195         Also renamed _style to currentStyle.
   75196 
   75197 2007-11-06  Timothy Hatcher  <timothy (a] apple.com>
   75198 
   75199         Reviewed by Adam.
   75200 
   75201         Bug 11920: Web Inspector should have Firebug-like CSS editing
   75202         http://bugs.webkit.org/show_bug.cgi?id=11920
   75203 
   75204         * css/CSSComputedStyleDeclaration.h:
   75205           (WebCore::CSSComputedStyleDeclaration::isPropertyImplicit): Return false. I'm not sure why
   75206           this was true, but computed style has no concept of implicit. So false makes more sense
   75207           and makes the code simpler in the inspector. This function was added for the inspector,
   75208           so this isn't a compatibility change.
   75209         * page/inspector/PropertiesSection.js: Add a getter/setter to reset populated status.
   75210         * page/inspector/StylesSidebarPane.js: Some refactoring along with the main support for
   75211           style editing.
   75212         * page/inspector/inspector.css: Style changes for propery editing and focus correctness.
   75213         * page/inspector/inspector.js: Look for a handleKeyEvent function of the focus element before
   75214           trying to call a function based on the element's id. Call focused and blurred on the focused
   75215           element when currentFocusElement is changed. Use the new listItemElement getter instead of
   75216           the private property.
   75217         * page/inspector/treeoutline.js: No longer expand on double click if ondblclick is implemented.
   75218           Shrink the toggle zone to 10px to better match the size of the arrow. Add an onattach call
   75219           to allow generation of the title using the DOM element. Add listItemElement and
   75220           childrenListElement getters.
   75221         * page/inspector/utilities.js: Add new helper prototype methods on CSSStyleDeclaration.
   75222         * page/inspector/DocumentPanel.js: Use the new listItemElement getter instead of the private
   75223           property. Also expand the DOM node on double click now that the TreeOutline dosen't do it.
   75224         * page/inspector/Resource.js: Use the new listItemElement and childrenListElement getters
   75225           instead of the private properties.
   75226 
   75227 2007-11-07  Simon Hausmann  <hausmann (a] kde.org>
   75228 
   75229         Reviewed by Alexey Proskuryakov.
   75230 
   75231         Coding style fix, don't use inline explicitly.
   75232 
   75233         * bridge/WindowFeatures.h:
   75234 
   75235 2007-11-07  Simon Hausmann  <hausmann (a] kde.org>
   75236 
   75237         Reviewed by Maciej.
   75238 
   75239         For safety provide a default constructor for WindowFeatures().
   75240         ContextMenuController.cpp: createNewWindow as well as QWebPage need to
   75241         create a default initialized WindowFeatures object on the fly.
   75242 
   75243         * bridge/WindowFeatures.h:
   75244         (WebCore::WindowFeatures::WindowFeatures):
   75245 
   75246 2007-11-07  Simon Hausmann  <shausman (a] trolltech.com>
   75247 
   75248         Reviewed by Lars.
   75249 
   75250         Fix "nmake clean" for the Qt/Windows build by replacing tmp/ with a variable that ends with the correct type of slash/backslash depending on the choice of compiler/make tool.
   75251 
   75252         * WebCore.pro:
   75253 
   75254 2007-11-07  Simon Hausmann  <hausmann (a] kde.org>
   75255 
   75256         Reviewed by Lars.
   75257 
   75258         Made the QWebSettings::webGraphic functions static. The implementation was using QWebSettings::global() anyway.
   75259 
   75260         * platform/graphics/qt/ImageQt.cpp:
   75261         (loadResourcePixmap):
   75262 
   75263 2007-11-07  Simon Hausmann  <hausmann (a] kde.org>
   75264 
   75265         Reviewed by Lars.
   75266 
   75267         Moved the WebCore::Image specific function loadResourcePixmap from qwebsettings.cpp to ImageQt.cpp and made it static.
   75268 
   75269         * platform/graphics/qt/ImageQt.cpp:
   75270         (loadResourcePixmap):
   75271 
   75272 2007-11-07  Simon Hausmann  <hausmann (a] kde.org>
   75273 
   75274         Reviewed by Lars.
   75275 
   75276         Restructure the context menu classes for the Qt port. ContextMenu and ContextMenuItem don't store
   75277         QActions/QMenus anymore but just store the action type, tag, title and optionally submenu as created
   75278         in ContextMenu::populate().
   75279         For the actual Qt context menu we traverse this structure after sendContextMenuEvent and create a QMenu
   75280         out of it. That menu is currently not functional anymore though.
   75281 
   75282         * platform/ContextMenu.h:
   75283         * platform/ContextMenuItem.h:
   75284         (WebCore::PlatformMenuItemDescription::PlatformMenuItemDescription):
   75285         * platform/PlatformMenuDescription.h:
   75286         * platform/qt/ContextMenuItemQt.cpp:
   75287         (WebCore::ContextMenuItem::ContextMenuItem):
   75288         (WebCore::ContextMenuItem::type):
   75289         (WebCore::ContextMenuItem::setType):
   75290         (WebCore::ContextMenuItem::action):
   75291         (WebCore::ContextMenuItem::setAction):
   75292         (WebCore::ContextMenuItem::title):
   75293         (WebCore::ContextMenuItem::setTitle):
   75294         (WebCore::ContextMenuItem::platformSubMenu):
   75295         (WebCore::ContextMenuItem::setSubMenu):
   75296         (WebCore::ContextMenuItem::setChecked):
   75297         (WebCore::ContextMenuItem::setEnabled):
   75298         * platform/qt/ContextMenuQt.cpp:
   75299         (WebCore::ContextMenu::ContextMenu):
   75300         (WebCore::ContextMenu::~ContextMenu):
   75301         (WebCore::ContextMenu::appendItem):
   75302         (WebCore::ContextMenu::itemCount):
   75303         (WebCore::ContextMenu::insertItem):
   75304         (WebCore::ContextMenu::setPlatformDescription):
   75305         (WebCore::ContextMenu::platformDescription):
   75306 
   75307 2007-11-07  Simon Hausmann  <hausmann (a] kde.org>
   75308 
   75309         Reviewed by Lars.
   75310 
   75311         Changed ContextMenu::setPlatformDescription for the Qt port to not show the qmenu right away
   75312         but instead just behave as a normal setter that takes ownership of the platform menu description (the qmenu).
   75313         Instead now QWebPage::contextMenuEvent() retrieves the QMenu after calling sendContextMenuEvent and calls exec()
   75314         on it.
   75315 
   75316         * platform/qt/ContextMenuQt.cpp:
   75317 
   75318 2007-11-07  Simon Hausmann  <hausmann (a] kde.org>
   75319 
   75320         Reviewed by Lars.
   75321 
   75322         Changed to PlatformMouseEvent constructor to allow construction from a QContextMenuEvent.
   75323         Call sendContextMenuEvent on the event handler from a QWidget::contextMenuEvent re-implementation instead of in mousePressEvent.
   75324 
   75325         * platform/PlatformMouseEvent.h:
   75326         * platform/qt/PlatformMouseEventQt.cpp:
   75327         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
   75328 
   75329 2007-11-07  Lars Knoll  <lars (a] trolltech.com>
   75330 
   75331         Reviewed by Simon.
   75332 
   75333         don't put nbsp's into the plan text paste
   75334         
   75335         Fix both ClipboardQt and PasteboardQt to replace
   75336         nbsp's with spaces before putting the text onto the
   75337         native clipboard. This is consistent with Mac and Win
   75338         and fixes at least editing/pasteboard/4076267-3.html
   75339 
   75340         * platform/qt/ClipboardQt.cpp:
   75341         (WebCore::ClipboardQt::writeRange):
   75342         * platform/qt/PasteboardQt.cpp:
   75343         (WebCore::Pasteboard::writeSelection):
   75344 
   75345 2007-11-07  Holger Hans Peter Freyther  <holger.freyther (a] trolltech.com>
   75346 
   75347         Reviewed by Lars Knoll <lars (a] trolltech.com>.
   75348 
   75349         Implement Pasteboard::writeImage()
   75350         
   75351         * Pasteboard is now fully implemented. Copying of Images into the Clipboard
   75352         is now supported.
   75353         * As with URLs we only copy into the Clipboard (and not additionally to the
   75354         Selection)
   75355 
   75356         * platform/qt/PasteboardQt.cpp:
   75357         (WebCore::Pasteboard::writeImage):
   75358 
   75359 2007-11-07  Holger Hans Peter Freyther  <holger.freyther (a] trolltech.com>
   75360 
   75361         Reviewed by Lars Knoll <lars (a] trolltech.com>.
   75362 
   75363         Apple CodingStyle fixes
   75364 
   75365         * platform/qt/PasteboardQt.cpp:
   75366         (WebCore::Pasteboard::documentFragment):
   75367 
   75368 2007-11-07  Holger Hans Peter Freyther  <holger.freyther (a] trolltech.com>
   75369 
   75370         Reviewed by Lars Knoll <lars (a] trolltech.com>.
   75371 
   75372         Implement Pasteboard::writeURL()
   75373         * The URL currently gets written as text/plain and text/uri-list.
   75374         The win and mac port have some more types which we currently do
   75375         not support. When supporting them we can use the 'titleString'
   75376         as well.
   75377         * As with writeSelection we only copy into the Clipboard. We could
   75378         consider copying into the Selection as well.
   75379 
   75380         * platform/qt/PasteboardQt.cpp:
   75381         (WebCore::Pasteboard::writeURL):
   75382 
   75383 2007-11-07  Holger Hans Peter Freyther  <holger.freyther (a] trolltech.com>
   75384 
   75385         Reviewed by Lars Knoll <lars (a] trolltech.com>.
   75386 
   75387         Kill whitespace
   75388 
   75389         * platform/qt/PasteboardQt.cpp:
   75390         (WebCore::Pasteboard::documentFragment):
   75391 
   75392 2007-11-07  Lars Knoll  <lars (a] trolltech.com>
   75393 
   75394         Reviewed by Simon.
   75395 
   75396         Use the correct function calls to convert a selection to
   75397         HTML or plain text.
   75398 
   75399         * platform/qt/ClipboardQt.cpp:
   75400         (WebCore::ClipboardQt::setData):
   75401         (WebCore::ClipboardQt::writeRange):
   75402         * platform/qt/PasteboardQt.cpp:
   75403         (WebCore::Pasteboard::writeSelection):
   75404 
   75405 2007-11-07  Lars Knoll  <lars (a] trolltech.com>
   75406 
   75407         Reviewed by Simon.
   75408 
   75409         Some more clipboard fixes.
   75410         
   75411         We have to set things immediately on the QClipBoard if the
   75412         Clipboard object is not for dragging.
   75413         
   75414         This is due to the fact that the Clipboard object might be
   75415         rather long lived if accessed through javascript (it'll only
   75416         get deleted by JS garbage collection). We have to transfer
   75417         the data over to the QClipboard before that to make things work.
   75418         
   75419         Fixes editing/execCommand/copy-without-selection.html
   75420 
   75421         * platform/qt/ClipboardQt.cpp:
   75422         (WebCore::ClipboardQt::ClipboardQt):
   75423         (WebCore::ClipboardQt::~ClipboardQt):
   75424         (WebCore::ClipboardQt::clearData):
   75425         (WebCore::ClipboardQt::clearAllData):
   75426         (WebCore::ClipboardQt::getData):
   75427         (WebCore::ClipboardQt::setData):
   75428         (WebCore::ClipboardQt::declareAndWriteDragImage):
   75429         (WebCore::ClipboardQt::writeURL):
   75430         (WebCore::ClipboardQt::writeRange):
   75431 
   75432 2007-11-07  Simon Hausmann  <hausmann (a] kde.org>
   75433 
   75434         Reviewed by Mark.
   75435 
   75436         Fix compilation on Windows with non-cygwin perl. open FILE, "|-" is
   75437         not supported due to implicit forks, use IPC::Open2 instead.
   75438 
   75439         * bindings/scripts/IDLParser.pm:
   75440 
   75441 2007-11-07  Dan Bernstein  <mitz (a] apple.com>
   75442 
   75443         Reviewed by Brady Eidson.
   75444 
   75445         - fix http://bugs.webkit.org/show_bug.cgi?id=15877
   75446           REGRESSION: r27486 caused a layout regression at my bank's website
   75447 
   75448         Test: fast/block/float/overhanging-after-height-decrease-offsets.html
   75449 
   75450         * rendering/RenderBlock.cpp:
   75451         (WebCore::RenderBlock::layoutBlock):
   75452 
   75453 2007-11-06  Beth Dakin  <bdakin (a] apple.com>
   75454 
   75455         Reviewed by Sam.
   75456 
   75457         <rdar://problem/5575812> REGRESSION:When using absolute positioning 
   75458         with overflow:auto div, WebKit seems to add an additional 15px
   75459 
   75460         * rendering/RenderBox.cpp:
   75461         (WebCore::RenderBox::containingBlockWidthForPositioned): We need to 
   75462         subtract off the vertical scrollbar width too.
   75463 
   75464 2007-11-06  Justin Garcia  <justin.garcia (a] apple.com>
   75465 
   75466         Reviewed by Dan Bernstein.
   75467         
   75468         <rdar://problem/5583387> ASSERTION FAILED: !refChild->hasTagName(bodyTag) when pasting newline in plain text into rich text Mail
   75469         <rdar://problem/5583362> REGRESSION (5523.10.3-TOT): Newlines stripped when pasting plain text in Mail
   75470 
   75471         * editing/markup.cpp:
   75472         (WebCore::createFragmentFromText): Put paragraphs of text into clones of the block
   75473         that encloses the input context, unless that block is the body, which shouldn't
   75474         be cloned.  In that case, use regular divs, as we did before r27369.
   75475 
   75476 2007-11-06  Christian Dywan  <christian (a] twotoasts.de>
   75477 
   75478         Reviewed by Darin.
   75479 
   75480         Fix http://bugs.webkit.org/show_bug.cgi?id=15828
   75481         Bug 15828: WebKit GTK include and lib directory is installed in qt4-named directory
   75482 
   75483         * WebCore.pro: Use sane default install paths for the gtk port.
   75484 
   75485 2007-11-06  Justin Garcia  <justin.garcia (a] apple.com>
   75486 
   75487         Reviewed by Darin Adler.
   75488         
   75489         <rdar://problem/5576619> 
   75490         REGRESSION: Caret disappears after deleting the last character in inline hole (15714)
   75491 
   75492         * editing/TypingCommand.cpp:
   75493         (WebCore::TypingCommand::deleteSelection): Like the other TypingCommands, including
   75494         both of the other deletion commands, call typingAddedToOpenCommand(), which takes 
   75495         the command's endingSelection and sets it as selection.
   75496 
   75497 2007-11-06  Dan Bernstein  <mitz (a] apple.com>
   75498 
   75499         Reviewed by Antti Koivisto and Dave Hyatt.
   75500 
   75501         - fix <rdar://problem/5582961> Incorrect layout and floating object list corruption when CSS decreases a block's height
   75502 
   75503         Test: fast/block/float/overhanging-after-height-decrease.html
   75504 
   75505         * rendering/RenderBlock.cpp:
   75506         (WebCore::RenderBlock::layoutBlock): If after calculating the height
   75507         it turns out that there are overhanging floats that were not overhanging
   75508         before, rescan children with overhanging floats and add them. 
   75509         (WebCore::RenderBlock::layoutBlockChildren): Added a parameter that
   75510         returns the lowest float bottom of any of the children.
   75511         (WebCore::RenderBlock::addOverhangingFloats): Changed to return the
   75512         lowest float bottom.
   75513         * rendering/RenderBlock.h:
   75514 
   75515 2007-11-06  Adele Peterson  <adele (a] apple.com>
   75516 
   75517         Reviewed by Darin.
   75518 
   75519         Switched all uses of HTMLImageLoader to use OwnPtrs.
   75520 
   75521         * html/HTMLInputElement.h:
   75522         * html/HTMLInputElement.cpp:
   75523         (WebCore::HTMLInputElement::init):
   75524         (WebCore::HTMLInputElement::~HTMLInputElement):
   75525         (WebCore::HTMLInputElement::setInputType):
   75526         (WebCore::HTMLInputElement::parseMappedAttribute):
   75527         (WebCore::HTMLInputElement::attach):
   75528         * html/HTMLObjectElement.h:
   75529         * html/HTMLObjectElement.cpp:
   75530         (WebCore::HTMLObjectElement::HTMLObjectElement):
   75531         (WebCore::HTMLObjectElement::~HTMLObjectElement):
   75532         (WebCore::HTMLObjectElement::parseMappedAttribute):
   75533         (WebCore::HTMLObjectElement::attach):
   75534         * html/HTMLVideoElement.h:
   75535         * html/HTMLVideoElement.cpp:
   75536         (WebCore::HTMLVideoElement::HTMLVideoElement):
   75537         (WebCore::HTMLVideoElement::attach):
   75538         (WebCore::HTMLVideoElement::detach):
   75539         (WebCore::HTMLVideoElement::parseMappedAttribute):
   75540 
   75541 2007-11-06  Antti Koivisto  <antti (a] apple.com>
   75542 
   75543         Reviewed by Darin.
   75544         
   75545         Trigger media load on on src attribute changes as specified in new HTML5 draft.
   75546 
   75547         Tests: media/video-src-change.html
   75548                media/video-src-remove.html
   75549                media/video-src-set.html
   75550 
   75551         * html/HTMLMediaElement.cpp:
   75552         (WebCore::HTMLMediaElement::attributeChanged):
   75553         * html/HTMLMediaElement.h:
   75554 
   75555 2007-11-06  Dan Bernstein  <mitz (a] apple.com>
   75556 
   75557         Reviewed by Darin Adler.
   75558 
   75559         - fix http://bugs.webkit.org/show_bug.cgi?id=15838
   75560           Incomplete repaint toggling "How you know this person" on Facebook
   75561 
   75562         Test: fast/repaint/make-children-non-inline.html
   75563 
   75564         * rendering/RenderBlock.cpp:
   75565         (WebCore::RenderBlock::makeChildrenNonInline): Repaint the block. This
   75566         is needed because the inline children may be repositioned as they move
   75567         into new anonymous blocks, but those blocks have no knowledge of where
   75568         their children used to be, so they cannot invalidate those areas.
   75569 
   75570 2007-11-06  Alexey Proskuryakov  <ap (a] webkit.org>
   75571 
   75572         Reviewed by Darin.
   75573 
   75574         http://bugs.webkit.org/show_bug.cgi?id=15847
   75575         Some editing cleanup
   75576 
   75577         No change in functionality.
   75578 
   75579         * editing/TextIterator.cpp:
   75580         (WebCore::plainText):
   75581         * editing/TextIterator.h:
   75582         Made WebCore::plainText() return String instead of DeprecatedString.
   75583 
   75584         * bridge/mac/WebCoreAXObject.mm:
   75585         (-[WebCoreAXObject textUnderElement]):
   75586         (-[WebCoreAXObject value]):
   75587         (-[WebCoreAXObject doAXBoundsForTextMarkerRange:]):
   75588         (-[WebCoreAXObject doAXNextSentenceEndTextMarkerForTextMarker:]):
   75589         (-[WebCoreAXObject doAXPreviousSentenceStartTextMarkerForTextMarker:]):
   75590         Updated for the above change. There is no need to explicitly convert to NSString now.
   75591 
   75592         * editing/EditCommand.cpp:
   75593         (WebCore::EditCommand::EditCommand): m_startingSelection and m_endingSelection are actually
   75594         initialized in constructor body, so the work done in initializer list was wasted.
   75595 
   75596         (WebCore::EditCommand::apply): Moved some stars.
   75597         (WebCore::EditCommand::unapply): Ditto.
   75598         (WebCore::EditCommand::reapply): Ditto.
   75599         (WebCore::EditCommand::setStartingSelection): The loop exit condition was evaluated twice,
   75600         removed one of the checks.
   75601 
   75602         * editing/SelectionController.cpp:
   75603         (WebCore::SelectionController::toString): plainText() result type now matches what we need here.
   75604 
   75605         * page/mac/WebCoreFrameBridge.h:
   75606         * page/mac/WebCoreFrameBridge.mm:
   75607         Removed unused -[WebCoreFrameBridge deleteKeyPressedWithSmartDelete:granularity:] and
   75608         -[WebCoreFrameBridge forwardDeleteKeyPressedWithSmartDelete:granularity:].
   75609 
   75610 2007-11-05  Mark Rowe  <mrowe (a] apple.com>
   75611 
   75612         Mac build fix.
   75613 
   75614         * bindings/js/JSHTMLDocumentCustom.cpp:
   75615         (WebCore::writeHelper):
   75616 
   75617 2007-11-05  Adam Roben  <aroben (a] apple.com>
   75618 
   75619         Don't crash if SafariTheme can't be loaded
   75620 
   75621         PlatformScrollBarSafari and RenderThemeSafari were not checking
   75622         whether SafariTheme was successfully loaded. All other uses of
   75623         SafariTheme already check this.
   75624 
   75625         Reviewed by Steve.
   75626 
   75627         * platform/win/PlatformScrollBarSafari.cpp: Don't paint if SafariTheme
   75628         couldn't be loaded.
   75629         (WebCore::PlatformScrollbar::paintButton):
   75630         (WebCore::PlatformScrollbar::paintTrack):
   75631         (WebCore::PlatformScrollbar::paintThumb):
   75632         * rendering/RenderThemeSafari.cpp:
   75633         (WebCore::RenderThemeSafari::isControlStyled): Always return true if
   75634         we couldn't load SafariTheme. This way we should never try to paint
   75635         themed controls (and we assert as such in the paint functions).
   75636         (WebCore::RenderThemeSafari::paintCheckbox):
   75637         (WebCore::RenderThemeSafari::paintRadio):
   75638         (WebCore::RenderThemeSafari::paintButton):
   75639         (WebCore::RenderThemeSafari::paintTextField):
   75640         (WebCore::RenderThemeSafari::paintCapsLockIndicator):
   75641         (WebCore::RenderThemeSafari::paintTextArea):
   75642         (WebCore::RenderThemeSafari::paintMenuList):
   75643         (WebCore::RenderThemeSafari::paintSliderThumb):
   75644         (WebCore::RenderThemeSafari::paintSearchField):
   75645         (WebCore::RenderThemeSafari::paintSearchFieldCancelButton):
   75646         (WebCore::RenderThemeSafari::paintSearchFieldResultsDecoration):
   75647         (WebCore::RenderThemeSafari::paintSearchFieldResultsButton):
   75648 
   75649 2007-11-05  Kevin Ollivier  <kevino (a] theolliviers.com>
   75650 
   75651         Adding the rest of wx port's graphics impl. 
   75652 
   75653         Rubber-stamped by Maciej Stachowiak.
   75654 
   75655         * platform/graphics/wx/AffineTransformWx.cpp: Added.
   75656         * platform/graphics/wx/GraphicsContextWx.cpp: Added.
   75657         * platform/graphics/wx/ImageBufferWx.cpp: Added.
   75658         * platform/graphics/wx/ImageSourceWx.cpp: Added.
   75659         * platform/graphics/wx/ImageWx.cpp: Added.
   75660         * platform/graphics/wx/PathWx.cpp: Added.
   75661 
   75662 2007-11-05  Kevin Ollivier  <kevino (a] theolliviers.com>
   75663 
   75664         wx port bug fixes and new files to get platform/wx building on trunk.
   75665 
   75666         Rubber-stamped by Maciej Stachowiak.
   75667 
   75668         * platform/wx/CursorWx.cpp:
   75669         * platform/wx/FileSystemWx.cpp: Added.
   75670         * platform/wx/FontCacheWx.cpp:
   75671         * platform/wx/FontPlatformDataWx.cpp:
   75672         * platform/wx/FontWx.cpp:
   75673         * platform/wx/KeyboardEventWx.cpp:
   75674         * platform/wx/LocalizedStringsWx.cpp: Added.
   75675         * platform/wx/LoggingWx.cpp: Added.
   75676         * platform/wx/RenderThemeWx.cpp:
   75677         * platform/wx/ScrollViewWx.cpp:
   75678         * platform/wx/SharedTimerWx.cpp:
   75679         * platform/wx/StringWx.cpp:
   75680         * platform/wx/ThreadingWx.cpp: Added.
   75681         * platform/wx/WidgetWx.cpp:
   75682 
   75683 2007-11-05  Adele Peterson  <adele (a] apple.com>
   75684 
   75685         Reviewed by Maciej.
   75686 
   75687         Fix for <rdar://problem/5579999> Add poster attribute for video element
   75688 
   75689         * html/HTMLAttributeNames.in: Added poster attribute.
   75690 
   75691         * html/HTMLImageLoader.cpp: (WebCore::HTMLImageLoader::updateFromElement):
   75692           Calls imageSourceAttributeName instead of having special cases for the different kinds of elements. 
   75693         * dom/Element.cpp: (WebCore::Element::imageSourceAttributeName): Added.
   75694         * dom/Element.h:
   75695         * html/HTMLObjectElement.cpp: (WebCore::HTMLObjectElement::imageSourceAttributeName): Added.
   75696         * html/HTMLObjectElement.h:
   75697 
   75698         * html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::movieNetworkStateChanged):
   75699           Calls updatePosterImage when the network state is empty and when the first frame has been loaded.
   75700         * html/HTMLMediaElement.h: (WebCore::HTMLMediaElement::rendererIsNeeded): Made this inline.  HTMLVideoElement now also implements this.
   75701 
   75702         * html/HTMLVideoElement.idl: Added case for poster attribute.
   75703         * html/HTMLVideoElement.h: Added image loader and flag to keep track of whether or not the poster image should be shown.
   75704         * html/HTMLVideoElement.cpp:
   75705         (WebCore::HTMLVideoElement::HTMLVideoElement): Initialize m_imageLoader and m_shouldShowPosterImage.
   75706         (WebCore::HTMLVideoElement::rendererIsNeeded): Calls HTMLElement::rendererIsNeeded since HTMLMediaElements have renderer by default.
   75707         (WebCore::HTMLVideoElement::createRenderer): Create a RenderImage or RenderVideo depending on whether or not the poster image should be shown.
   75708         (WebCore::HTMLVideoElement::attach): Set up image loader and RenderImage if necessary.
   75709         (WebCore::HTMLVideoElement::detach): Delete image loader if its no longer needed.
   75710         (WebCore::HTMLVideoElement::parseMappedAttribute): Added case to process poster attribute.
   75711         (WebCore::HTMLVideoElement::poster): Added getter for poster attribute.
   75712         (WebCore::HTMLVideoElement::setPoster): Added setter for poster attribute.
   75713         (WebCore::HTMLVideoElement::isURLAttribute): Added.
   75714         (WebCore::HTMLVideoElement::imageSourceAttributeName): Added.
   75715         (WebCore::HTMLVideoElement::updatePosterImage): Added.  Updates m_shouldShowPosterImage and if its changed, detaches and attaches so the renderer is correct.
   75716 
   75717 2007-11-05  Adam Roben  <aroben (a] apple.com>
   75718 
   75719         Fix <rdar://5563572> SVG image support is turned off
   75720 
   75721         Turned on SVG images for all platforms.
   75722 
   75723         Reviewed by Eric.
   75724 
   75725         * WebCore.vcproj/WebCore.vcproj: Added SVGImage.{cpp,h}
   75726         * loader/CachedImage.cpp:
   75727         (WebCore::CachedImage::createImage): Removed platform checks for
   75728         SVGImage.
   75729 
   75730 2007-11-05  Antti Koivisto  <antti (a] apple.com>
   75731 
   75732         Reviewed by Darin.
   75733 
   75734         QTMovieView can generate callbacks during paint. This can lead to crashes.
   75735         
   75736         Delay callbacks so they get handled after painting is completed. No test case,
   75737         I don't know how to reliably reproduce this.
   75738 
   75739         * platform/graphics/mac/MoviePrivateQTKit.mm:
   75740         (WebCore::MoviePrivate::MoviePrivate):
   75741         (WebCore::MoviePrivate::~MoviePrivate):
   75742         (WebCore::MoviePrivate::paint):
   75743         (-[WebCoreMovieObserver initWithCallback:WebCore::]):
   75744         (-[WebCoreMovieObserver disconnect]):
   75745         (-[WebCoreMovieObserver loadStateChanged:]):
   75746         (-[WebCoreMovieObserver rateChanged:]):
   75747         (-[WebCoreMovieObserver sizeChanged:]):
   75748         (-[WebCoreMovieObserver timeChanged:]):
   75749         (-[WebCoreMovieObserver volumeChanged:]):
   75750         (-[WebCoreMovieObserver didEnd:]):
   75751         (-[WebCoreMovieObserver setDelayCallbacks:]):
   75752 
   75753 2007-11-05  Antti Koivisto  <antti (a] apple.com>
   75754 
   75755         Reviewed by Adam.
   75756 
   75757         Add some missing WebCore* prefixes to ObjC classes
   75758 
   75759         * platform/mac/FileChooserMac.mm:
   75760         (WebCore::FileChooser::FileChooser):
   75761         * platform/mac/SharedBufferMac.mm:
   75762         (WebCore::SharedBuffer::createNSData):
   75763         (WebCore::SharedBuffer::createCFData):
   75764         * platform/mac/SharedTimerMac.cpp:
   75765         (WebCore::setSharedTimerFireTime):
   75766 
   75767 2007-11-05  Ada Chan  <adachan (a] apple.com>
   75768 
   75769         <rdar://problem/5579772> Regression: AltGr does not work
   75770         We now store the system key event info in PlatforkKeyboardEvent().
   75771 
   75772         Reviewed by Oliver.
   75773 
   75774         * platform/PlatformKeyboardEvent.h:
   75775         (WebCore::PlatformKeyboardEvent::isSystemKey):
   75776         * platform/win/KeyEventWin.cpp:
   75777         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
   75778 
   75779 2007-11-02  Tristan O'Tierney  <tristan (a] apple.com>
   75780 
   75781         Reviewed by Darin Adler.
   75782 
   75783         * WebCore.xcodeproj/project.pbxproj:
   75784         Set WindowFeatures.h as a Private header.
   75785         
   75786         * loader/FrameLoader.cpp:
   75787         (WebCore::FrameLoader::createWindow):
   75788         Revised to use a single createWindow function instead of
   75789         two createWindow functions and one createModalDialog function.
   75790         The logic for this is now addressed in WebKit in an effort
   75791         to make this easier to follow.
   75792         
   75793         * page/Chrome.cpp:
   75794         (WebCore::Chrome::createWindow):
   75795         * page/Chrome.h:
   75796         * page/ChromeClient.h:
   75797         * page/ContextMenuController.cpp:
   75798         (WebCore::openNewWindow):
   75799         * platform/graphics/svg/SVGImageEmptyClients.h:
   75800         (WebCore::SVGEmptyChromeClient::createWindow):
   75801         Revised to take new additional windowFeatures parameter.
   75802 
   75803 2007-11-04  Geoffrey Garen  <ggaren (a] apple.com>
   75804 
   75805         Reviewed by Darin Adler.
   75806         
   75807         http://bugs.webkit.org/show_bug.cgi?id=15835
   75808 
   75809         Small adaptations to new KJS::List class.
   75810 
   75811         * bindings/js/kjs_window.cpp:
   75812         (KJS::WindowFunc::callAsFunction):
   75813         (KJS::ScheduledAction::ScheduledAction):
   75814 
   75815 2007-11-05  Adam Roben  <aroben (a] apple.com>
   75816 
   75817         Allow passing a base class pointer to COMPtr::copyRefTo
   75818 
   75819         Reviewed by Sam.
   75820 
   75821         * platform/win/COMPtr.h:
   75822 
   75823 2007-11-05  Dan Bernstein  <mitz (a] apple.com>
   75824 
   75825         Reviewed by Oliver Hunt.
   75826 
   75827         - fix ASSERTION FAILED: !HashTranslator::equal(KeyTraits::emptyValue(), key) when a class attribute is all-whitespace
   75828 
   75829         Test: fast/dom/class-all-whitespace.html
   75830 
   75831         * dom/StyledElement.cpp:
   75832         (WebCore::StyledElement::parseMappedAttribute): Check if there is any
   75833         non-whitespace character in the class attribute.
   75834 
   75835 2007-11-05  Brady Eidson  <beidson (a] apple.com>
   75836 
   75837         Reviewed by Sam
   75838 
   75839         Add transaction blocking to the DatabaseAuthorizer in preparation for the new version
   75840         of the sql storage API
   75841 
   75842         * storage/DatabaseAuthorizer.cpp:
   75843         (WebCore::DatabaseAuthorizer::allowTransaction):
   75844         * storage/DatabaseAuthorizer.h:
   75845 
   75846 2007-11-05  Mark Rowe  <mrowe (a] apple.com>
   75847 
   75848         Reviewed by Alp Toker.
   75849 
   75850         Have getMIMETypeForExtension return a null string when no MIME type is known
   75851         for the extension rather than returning "text/plain".  This prevents plugin data
   75852         being dumped into object elements when plugins are disabled.
   75853 
   75854         * platform/gtk/MIMETypeRegistryGtk.cpp:
   75855         (WebCore::MIMETypeRegistry::getMIMETypeForExtension):
   75856 
   75857 2007-11-04  Sam Weinig  <sam (a] webkit.org>
   75858 
   75859         Rubber-stamped by Adam Roben.
   75860 
   75861         Rename SecurityOrigin::allowsAccessFrom to SecurityOrigin::canAccess to 
   75862         clear up ambiguity.
   75863 
   75864         * bindings/js/kjs_window.cpp:
   75865         (KJS::Window::isSafeScript):
   75866         * platform/SecurityOrigin.cpp:
   75867         (WebCore::SecurityOrigin::canAccess):
   75868         * platform/SecurityOrigin.h:
   75869 
   75870 2007-11-04  Timothy Hatcher  <timothy (a] apple.com>
   75871 
   75872         Reviewed by Adam.
   75873 
   75874         Bug 15834: There are many subtle bugs in the Styles pane of the Web Inspector
   75875         http://bugs.webkit.org/show_bug.cgi?id=15834
   75876 
   75877         - Broke up DocumentPanel and added three SidebarPane sub-classes.
   75878         - Fixed many Style pane bugs, including:
   75879           * Poor handling of duplicate properties in the same rule. Some of this can't be
   75880             fixed since we can't only get the "winning" value for duplicate properties.
   75881             So we should only show one entry per unique property name.
   75882           * Computed style does not show font shorthand sub-properties if 'font' was used.
   75883           * Property priority was broken, the wrong properties were crossed out.
   75884           * The 'border' shorthand shows null for the shorthand value.
   75885           * Shorthands didn't show their priority (e.g. !important).
   75886           * HSL and HTML hex colors didn't have preview swatch blocks.
   75887           * Code refactoring, making it easier to reuse for console.log later.
   75888 
   75889         * page/inspector/DocumentPanel.js: Move sidebar pane code to three seperate
   75890           classes in new files.
   75891         * page/inspector/MetricsSidebarPane.js: Added.
   75892         * page/inspector/Panel.js: Remove an InspectorController.log() call.
   75893         * page/inspector/PropertiesSection.js: Add the section to the TreeOutline.
   75894           So TreeElements can access properties on their section.
   75895         * page/inspector/PropertiesSidebarPane.js: Added.
   75896         * page/inspector/SidebarPane.js: Remove the explicit asignment of the
   75897           onexpand and oncollapse to null. These were hiding prototypes.
   75898         * page/inspector/StylesSidebarPane.js: Added.
   75899         * page/inspector/inspector.html: Include the new script files.
   75900         * page/inspector/treeoutline.js: If a null representedObject is passed
   75901           in just use a empty object.
   75902 
   75903 2007-11-04  David D. Kilzer  <ddkilzer (a] webkit.org>
   75904 
   75905         Fix build when spaces appear in the WebKit source path.
   75906 
   75907         Reviewed by Mark Rowe.
   75908 
   75909         * bindings/scripts/IDLParser.pm: Use safer open() method which lists
   75910         arguments individually and prevents the need to work around spaces
   75911         in the path.
   75912 
   75913 2007-11-04  Alp Toker  <alp (a] atoker.com>
   75914 
   75915         Reviewed by Alexey Proskuryakov.
   75916 
   75917         Fix a crash when no clipboard text is available
   75918 
   75919         * platform/gtk/PasteboardGtk.cpp:
   75920         (WebCore::Pasteboard::plainText):
   75921 
   75922 2007-11-03  Darin Adler  <darin (a] apple.com>
   75923 
   75924         Reviewed by Maciej.
   75925 
   75926         - WebCore part of http://bugs.webkit.org/show_bug.cgi?id=15821
   75927           remove unused PCRE features for speed
   75928 
   75929         * page/Frame.cpp: (WebCore::Frame::matchLabelsAgainstElement):
   75930         * page/mac/FrameMac.mm: (WebCore::Frame::matchLabelsAgainstElement):
   75931         Remove use of "[[:digit:]]" syntax. This hasn't worked for some time.
   75932         Use "\d" instead.
   75933 
   75934         * platform/RegularExpression.h: Remove the unused cap function. We can
   75935         add it back later if we find we need it.
   75936         * platform/RegularExpression.cpp:
   75937         (WebCore::RegularExpression::Private::compile): Update for JavaScriptCore
   75938         regular expression entry point changes.
   75939         (WebCore::RegularExpression::Private::~Private): Ditto.
   75940         (WebCore::RegularExpression::match): Remove the code to set PCRE_NOTBOL.
   75941         This means that regular expressions with metacharactesr like ^ in them
   75942         won't work any more with non-whole-string searches, but we don't use
   75943         any regular expressions like that.
   75944 
   75945 2007-11-03  Kevin Ollivier  <kevino (a] theolliviers.com>
   75946 
   75947         Update the link stubs to match the current build,
   75948         and fix coding style issues.
   75949 
   75950         Reviewed by Mark Rowe.
   75951 
   75952         * platform/wx/TemporaryLinkStubs.cpp:
   75953         (loadResourceIntoArray):
   75954         (findNextSentenceFromIndex):
   75955         (findSentenceBoundary):
   75956         (Frame::dashboardRegionsChanged):
   75957         (WebCore::historyContains):
   75958         (CachedPage::close):
   75959         (Editor::showStylesPanel):
   75960         (EventHandler::passSubframeEventToSubframe):
   75961         (EventHandler::passWheelEventToWidget):
   75962         (WebCore::currentTextBreakLocaleID):
   75963 
   75964 2007-11-03  Kevin Ollivier  <kevino (a] theolliviers.com>
   75965 
   75966         wx <-> WebKit conversions for IntPoint, IntRect and FloatRect
   75967 
   75968         Reviewed by Mark Rowe.
   75969 
   75970         * platform/graphics/wx/FloatRectWx.cpp: Added.
   75971         * platform/graphics/wx/IntPointWx.cpp: Added.
   75972         * platform/graphics/wx/IntRectWx.cpp: Added.
   75973 
   75974 2007-11-03  Kevin Ollivier  <kevino (a] theolliviers.com>
   75975 
   75976         wx <-> WebKit data type conversions for Pen and Color.
   75977 
   75978         Reviewed by Darin Adler.
   75979 
   75980         * platform/graphics/wx: Added.
   75981         * platform/graphics/wx/ColorWx.cpp: Added.
   75982         * platform/graphics/wx/PenWx.cpp: Added.
   75983 
   75984 2007-11-03  Sam Weinig  <sam (a] webkit.org>
   75985 
   75986         Reviewed by Oliver.
   75987 
   75988         Remove dummy variable from ClassInfo reducing the size of the struct by 1 word.
   75989         The variable had been kept around for binary compatibility, but since nothing
   75990         else is there is no point in continuing to keep it around.
   75991 
   75992         * bindings/js/JSDOMExceptionConstructor.cpp:
   75993         * bindings/js/JSHTMLInputElementBase.cpp:
   75994         * bindings/js/JSNamedNodesCollection.cpp:
   75995         * bindings/js/JSXMLHttpRequest.cpp:
   75996         * bindings/js/JSXSLTProcessor.cpp:
   75997         * bindings/js/kjs_css.cpp:
   75998         * bindings/js/kjs_events.cpp:
   75999         * bindings/js/kjs_navigator.cpp:
   76000         * bindings/js/kjs_window.cpp:
   76001         * bindings/scripts/CodeGeneratorJS.pm:
   76002 
   76003 2007-11-03  Kevin Ollivier  <kevino (a] theolliviers.com>
   76004 
   76005         Build fixes to get wx impls. building on trunk.
   76006 
   76007         Reviewed by Mark Rowe.
   76008 
   76009         * platform/wx/DragDataWx.cpp:
   76010         (WebCore::DragData::containsFiles):
   76011         (WebCore::DragData::asFilenames):
   76012         * platform/wx/DragImageWx.cpp:
   76013         (WebCore::scaleDragImage):
   76014         * platform/wx/MimeTypeRegistryWx.cpp:
   76015         (WebCore::MIMETypeRegistry::getMIMETypeForExtension):
   76016         * platform/wx/MouseEventWx.cpp:
   76017         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
   76018         * platform/wx/MouseWheelEventWx.cpp:
   76019         * platform/wx/PasteboardWx.cpp:
   76020         (WebCore::Pasteboard::writeImage):
   76021         * platform/wx/WidgetWx.cpp:
   76022         (WebCore::Widget::setCursor):
   76023 
   76024 2007-11-03  David D. Kilzer  <ddkilzer (a] webkit.org>
   76025 
   76026         Sort files(...); sections of Xcode project files.
   76027 
   76028         Rubber-stamped by Darin.
   76029 
   76030         * WebCore.xcodeproj/project.pbxproj:
   76031         * manual-tests/NPN_Invoke/NPN_Invoke.xcodeproj/project.pbxproj:
   76032 
   76033 2007-11-03  Kevin Ollivier  <kevino (a] theolliviers.com>
   76034 
   76035         Coding style fixes for platform/wx files.
   76036 
   76037         Reviewed by Mark Rowe.
   76038 
   76039         * platform/wx/ClipboardWx.cpp:
   76040         * platform/wx/GlyphMapWx.cpp:
   76041         * platform/wx/ScreenWx.cpp:
   76042 
   76043 2007-11-03  Alp Toker  <alp (a] atoker.com>
   76044 
   76045         Reviewed by Mark Rowe.
   76046 
   76047         Implement platform scrollbar static width/height getters
   76048 
   76049         * platform/gtk/PlatformScrollBar.h:
   76050         * platform/gtk/PlatformScrollBarGtk.cpp:
   76051         (scrollbarSize):
   76052         (PlatformScrollbar::horizontalScrollbarHeight):
   76053 
   76054 2007-11-03  Alp Toker  <alp (a] atoker.com>
   76055 
   76056         Reviewed by Mark Rowe.
   76057 
   76058         Cast function pointers to gpointer.
   76059 
   76060         * platform/gtk/PlatformScrollBarGtk.cpp:
   76061         (PlatformScrollbar::~PlatformScrollbar):
   76062 
   76063 2007-11-03  Alp Toker  <alp (a] atoker.com>
   76064 
   76065         Reviewed by Adam Roben.
   76066 
   76067         RenderThemeGtk implementation based on Mozilla's GTK+ style code
   76068 
   76069         There is still work needed to complete this feature.
   76070 
   76071         * WebCore.pro:
   76072         * platform/gtk/RenderThemeGtk.cpp:
   76073         (WebCore::theme):
   76074         (WebCore::RenderThemeGtk::RenderThemeGtk):
   76075         (WebCore::supportsFocus):
   76076         (WebCore::RenderThemeGtk::supportsFocusRing):
   76077         (WebCore::RenderThemeGtk::controlSupportsTints):
   76078         (WebCore::RenderThemeGtk::baselinePosition):
   76079         (WebCore::adjustMozStyle):
   76080         (WebCore::setMozState):
   76081         (WebCore::paintMozWidget):
   76082         (WebCore::setButtonPadding):
   76083         (WebCore::setToggleSize):
   76084         (WebCore::RenderThemeGtk::setCheckboxSize):
   76085         (WebCore::RenderThemeGtk::paintCheckbox):
   76086         (WebCore::RenderThemeGtk::setRadioSize):
   76087         (WebCore::RenderThemeGtk::paintRadio):
   76088         (WebCore::RenderThemeGtk::adjustButtonStyle):
   76089         (WebCore::RenderThemeGtk::paintButton):
   76090         (WebCore::RenderThemeGtk::adjustMenuListStyle):
   76091         (WebCore::RenderThemeGtk::paintMenuList):
   76092         (WebCore::RenderThemeGtk::adjustTextFieldStyle):
   76093         (WebCore::RenderThemeGtk::paintTextField):
   76094         (WebCore::RenderThemeGtk::adjustSearchFieldResultsButtonStyle):
   76095         (WebCore::RenderThemeGtk::paintSearchFieldResultsButton):
   76096         (WebCore::RenderThemeGtk::adjustSearchFieldResultsDecorationStyle):
   76097         (WebCore::RenderThemeGtk::paintSearchFieldResultsDecoration):
   76098         (WebCore::RenderThemeGtk::adjustSearchFieldCancelButtonStyle):
   76099         (WebCore::RenderThemeGtk::paintSearchFieldCancelButton):
   76100         (WebCore::RenderThemeGtk::adjustSearchFieldStyle):
   76101         (WebCore::RenderThemeGtk::paintSearchField):
   76102         (WebCore::RenderThemeGtk::platformActiveSelectionBackgroundColor):
   76103         (WebCore::RenderThemeGtk::platformInactiveSelectionBackgroundColor):
   76104         (WebCore::RenderThemeGtk::platformActiveSelectionForegroundColor):
   76105         (WebCore::RenderThemeGtk::platformInactiveSelectionForegroundColor):
   76106         (WebCore::RenderThemeGtk::activeListBoxSelectionBackgroundColor):
   76107         (WebCore::RenderThemeGtk::inactiveListBoxSelectionBackgroundColor):
   76108         (WebCore::RenderThemeGtk::activeListBoxSelectionForegroundColor):
   76109         (WebCore::RenderThemeGtk::inactiveListBoxSelectionForegroundColor):
   76110         (WebCore::RenderThemeGtk::caretBlinkFrequency):
   76111         (WebCore::RenderThemeGtk::systemFont):
   76112         (WebCore::gtkStyleSetCallback):
   76113         (WebCore::RenderThemeGtk::gtkContainer):
   76114         (WebCore::RenderThemeGtk::gtkEntry):
   76115         (WebCore::RenderThemeGtk::gtkTreeView):
   76116         * platform/gtk/RenderThemeGtk.h:
   76117         * platform/gtk/gtk2drawing.c: Added.
   76118         (moz_gtk_enable_style_props):
   76119         (ensure_window_widget):
   76120         (setup_widget_prototype):
   76121         (ensure_button_widget):
   76122         (ensure_checkbox_widget):
   76123         (ensure_radiobutton_widget):
   76124         (ensure_scrollbar_widget):
   76125         (ensure_spin_widget):
   76126         (ensure_scale_widget):
   76127         (ensure_entry_widget):
   76128         (ensure_option_menu_widget):
   76129         (ensure_arrow_widget):
   76130         (ensure_handlebox_widget):
   76131         (ensure_toolbar_widget):
   76132         (ensure_tooltip_widget):
   76133         (ensure_tab_widget):
   76134         (ensure_progress_widget):
   76135         (ensure_frame_widget):
   76136         (ensure_menu_bar_widget):
   76137         (ensure_menu_bar_item_widget):
   76138         (ensure_menu_popup_widget):
   76139         (ensure_menu_item_widget):
   76140         (ensure_check_menu_item_widget):
   76141         (ConvertGtkState):
   76142         (TSOffsetStyleGCArray):
   76143         (TSOffsetStyleGCs):
   76144         (moz_gtk_button_paint):
   76145         (moz_gtk_init):
   76146         (moz_gtk_checkbox_get_metrics):
   76147         (moz_gtk_radio_get_metrics):
   76148         (moz_gtk_checkbox_get_focus):
   76149         (moz_gtk_radio_get_focus):
   76150         (moz_gtk_button_get_focus):
   76151         (moz_gtk_option_menu_get_metrics):
   76152         (moz_gtk_toggle_paint):
   76153         (calculate_arrow_dimensions):
   76154         (moz_gtk_scrollbar_button_paint):
   76155         (moz_gtk_scrollbar_trough_paint):
   76156         (moz_gtk_scrollbar_thumb_paint):
   76157         (moz_gtk_spin_paint):
   76158         (moz_gtk_scale_paint):
   76159         (moz_gtk_scale_thumb_paint):
   76160         (moz_gtk_gripper_paint):
   76161         (moz_gtk_entry_paint):
   76162         (moz_gtk_option_menu_paint):
   76163         (moz_gtk_dropdown_arrow_paint):
   76164         (moz_gtk_container_paint):
   76165         (moz_gtk_toggle_label_paint):
   76166         (moz_gtk_toolbar_paint):
   76167         (moz_gtk_tooltip_paint):
   76168         (moz_gtk_frame_paint):
   76169         (moz_gtk_progressbar_paint):
   76170         (moz_gtk_progress_chunk_paint):
   76171         (moz_gtk_tab_paint):
   76172         (moz_gtk_tabpanels_paint):
   76173         (moz_gtk_menu_bar_paint):
   76174         (moz_gtk_menu_popup_paint):
   76175         (moz_gtk_menu_item_paint):
   76176         (moz_gtk_check_menu_item_paint):
   76177         (moz_gtk_window_paint):
   76178         (moz_gtk_get_widget_border):
   76179         (moz_gtk_get_dropdown_arrow_size):
   76180         (moz_gtk_get_scalethumb_metrics):
   76181         (moz_gtk_get_scrollbar_metrics):
   76182         (moz_gtk_widget_paint):
   76183         (moz_gtk_get_scrollbar_widget):
   76184         (moz_gtk_shutdown):
   76185         * platform/gtk/gtkdrawing.h: Added.
   76186 
   76187 2007-11-03  Alp Toker  <alp (a] atoker.com>
   76188 
   76189         Reviewed by Mark Rowe.
   76190 
   76191         Do not allow scrollbars to handle wheel events
   76192         
   76193         We bubble the wheel event up so the parent can handle it instead.
   76194 
   76195         * platform/gtk/PlatformScrollBarGtk.cpp:
   76196         (gtkScrollEventCallback):
   76197         (PlatformScrollbar::PlatformScrollbar):
   76198         (PlatformScrollbar::~PlatformScrollbar):
   76199 
   76200 2007-11-03  Alp Toker  <alp (a] atoker.com>
   76201 
   76202         Reviewed by Mark Rowe.
   76203 
   76204         Frame scrolling and invalidation fixes
   76205 
   76206         Make upward scroll events have a positive delta to match other ports.
   76207 
   76208         Fix the invalidation rect offset for frames so that scrolling works properly.
   76209 
   76210         Avoid allocating negative sizes to widgets to avoid GTK+ warnings.
   76211 
   76212         Allow tabbing to all widgets and links.
   76213 
   76214         Fix event returns, improving the focus situation and correcting scroll wheel
   76215         behavior.
   76216 
   76217         * page/gtk/EventHandlerGtk.cpp:
   76218         (WebCore::EventHandler::tabsToAllControls):
   76219         (WebCore::EventHandler::passWheelEventToWidget):
   76220         * platform/gtk/ScrollViewGtk.cpp:
   76221         (WebCore::ScrollViewScrollbar::geometryChanged):
   76222         (WebCore::ScrollView::updateContents):
   76223         (WebCore::ScrollView::update):
   76224         (WebCore::ScrollView::wheelEvent):
   76225         (WebCore::ScrollView::updateScrollbars):
   76226         * platform/gtk/WheelEventGtk.cpp:
   76227         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
   76228 
   76229 2007-11-03  David D. Kilzer  <ddkilzer (a] webkit.org>
   76230 
   76231         LGPL'ed files contain incorrect FSF address
   76232         <http://bugs.webkit.org/show_bug.cgi?id=14885>
   76233 
   76234         * bindings/js/JSSVGTransformListCustom.cpp:
   76235         * ksvg2/svg/SVGException.idl:
   76236         * ksvg2/svg/SVGTextPathElement.cpp:
   76237         * ksvg2/svg/SVGTextPathElement.h:
   76238         * ksvg2/svg/SVGViewSpec.cpp:
   76239         * ksvg2/svg/SVGViewSpec.h:
   76240         * platform/mac/FontCustomPlatformData.cpp:
   76241         * platform/mac/FontCustomPlatformData.h:
   76242         * platform/mac/FontPlatformDataMac.mm:
   76243         * platform/win/FontCustomPlatformData.cpp:
   76244         * platform/win/FontCustomPlatformData.h:
   76245         * rendering/RenderSVGRoot.cpp:
   76246         * rendering/RenderSVGRoot.h:
   76247         * rendering/RenderSVGTextPath.cpp:
   76248         * rendering/RenderSVGTextPath.h:
   76249         * rendering/RenderSVGTransformableContainer.h:
   76250         * rendering/RenderSVGViewportContainer.cpp:
   76251         * rendering/RenderSVGViewportContainer.h:
   76252         * rendering/SVGCharacterLayoutInfo.cpp:
   76253         * rendering/SVGCharacterLayoutInfo.h:
   76254         * rendering/SVGRenderSupport.cpp:
   76255         * rendering/SVGRenderSupport.h:
   76256 
   76257 2007-11-02  Antti Koivisto  <antti (a] apple.com>
   76258 
   76259         Reviewed by Adam.
   76260         
   76261         Add video width/height DOM and content attributes from latest HTML5 draft.
   76262 
   76263         Test: media/video-width-height.html
   76264 
   76265         * html/HTMLVideoElement.cpp:
   76266         (WebCore::HTMLVideoElement::parseMappedAttribute):
   76267         (WebCore::HTMLVideoElement::width):
   76268         (WebCore::HTMLVideoElement::setWidth):
   76269         (WebCore::HTMLVideoElement::height):
   76270         (WebCore::HTMLVideoElement::setHeight):
   76271         * html/HTMLVideoElement.h:
   76272         * html/HTMLVideoElement.idl:
   76273 
   76274 2007-11-02  Darin Adler  <darin (a] apple.com>
   76275 
   76276         Reviewed by Maciej.
   76277 
   76278         * DerivedSources.make: Remove a few explicit filenames from some rules by using
   76279         make variables a little more.
   76280         * WebCore.LP64.exp: Fix typo, grammar.
   76281 
   76282 2007-11-02  Darin Adler  <darin (a] apple.com>
   76283 
   76284         Reviewed by Maciej.
   76285 
   76286         - use the new HashMap::take function where appropriate
   76287 
   76288         * bindings/js/kjs_binding.cpp:
   76289         (KJS::addWrapper): Made an inline rather than a macro; inlines good, macros bad.
   76290         (KJS::removeWrapper): Ditto.
   76291         (KJS::removeWrappers): Ditto.
   76292         (KJS::ScriptInterpreter::putDOMObject): Use the inline instead of the macro.
   76293         (KJS::ScriptInterpreter::forgetDOMObject): Ditto. This involves using take instead
   76294         of remove -- in theory ever so slightly less efficient, but I think it's fine.
   76295         (KJS::ScriptInterpreter::forgetDOMNodeForDocument): Ditto.
   76296         (KJS::ScriptInterpreter::putDOMNodeForDocument): Use the inline instead of the macro.
   76297         (KJS::ScriptInterpreter::forgetAllDOMNodesForDocument): Use take instead of find/remove.
   76298         (KJS::ScriptInterpreter::updateDOMNodeDocument): Use the inlines instead of the macros.
   76299 
   76300         * bindings/js/kjs_window.cpp: (KJS::Window::clearTimeout): Use take instead of find/remove.
   76301         * bridge/mac/AXObjectCacheMac.mm: (WebCore::AXObjectCache::remove): Ditto.
   76302         * page/AnimationController.cpp: (WebCore::AnimationControllerPrivate::clear): Ditto.
   76303         * rendering/RenderBlock.cpp:
   76304         (WebCore::RenderBlock::~RenderBlock): Ditto.
   76305         (WebCore::RenderBlock::setDesiredColumnCountAndWidth): Ditto.
   76306         * rendering/RootInlineBox.cpp: Ditto.(WebCore::RootInlineBox::detachEllipsisBox): Ditto.
   76307 
   76308 2007-11-02  Antti Koivisto  <antti (a] apple.com>
   76309 
   76310         Reviewed by Darin.
   76311 
   76312         Enable video composition.
   76313 
   76314         * WebCore.base.exp:
   76315         * platform/graphics/mac/MoviePrivateQTKit.mm:
   76316         (WebCore::MoviePrivate::createQTMovieView):
   76317         * platform/mac/WebCoreSystemInterface.h:
   76318         * platform/mac/WebCoreSystemInterface.mm:
   76319 
   76320 2007-11-02  Darin Adler  <darin (a] apple.com>
   76321 
   76322         Reviewed by Mitz.
   76323 
   76324         - fix http://bugs.webkit.org/show_bug.cgi?id=15806
   76325           <rdar://problem/5561626> ASSERT(element->isRadioButton()) fires destroying form elements
   76326 
   76327         Test: fast/forms/remove-radio-button-assert.html
   76328 
   76329         * html/HTMLGenericFormElement.cpp: (WebCore::HTMLGenericFormElement::removeFromForm):
   76330         Added protected function to be used by derived classes that need to do the same sort
   76331         of removal from form that's automatically done by the base class in certain circumstances.
   76332         * html/HTMLGenericFormElement.h: Added removeFromForm.
   76333 
   76334         * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::~HTMLInputElement):
   76335         Call removeFromForm here so the element is removed before we destroy the HTMLInputElement
   76336         part of this object. By the time we get to the base class's destructor it's too late.
   76337         The problem is specific to radio buttons so we don't have to worry about other classes
   76338         derived from HTMLGenericFormElement.
   76339 
   76340 2007-11-02  Darin Adler  <darin (a] apple.com>
   76341 
   76342         Reviewed by Mitz.
   76343 
   76344         - speculative fix for http://bugs.webkit.org/show_bug.cgi?id=15805
   76345           <rdar://problem/5510779> crashes in isLoadingMultipartContent
   76346 
   76347         * loader/DocumentLoader.cpp: (WebCore::DocumentLoader::isLoadingMultipartContent):
   76348         Instead of asserting the frame loader is non-0, return false if it is 0.
   76349 
   76350 2007-11-02  Darin Adler  <darin (a] apple.com>
   76351 
   76352         Reviewed by Mitz.
   76353 
   76354         - fix <rdar://problem/5530185> WebKit does not show <object> fallback content when both
   76355           URL and MIME type is omitted
   76356 
   76357         Already covered by existing tests (that had incorrect results).
   76358 
   76359         * loader/FrameLoader.cpp: (WebCore::FrameLoader::requestObject): Return false to indicate
   76360         failure when both URL and MIME type are empty. The old code would not attempt a load, but
   76361         it would indicate success.
   76362 
   76363         * rendering/RenderPartObject.cpp: (WebCore::RenderPartObject::updateWidget): Remove
   76364         non-helpful early exit for the case where there is no URL and no type. Returning early
   76365         prevents the fallback code from running.
   76366 
   76367 2007-11-02  Alp Toker  <alp (a] atoker.com>
   76368 
   76369         Reviewed by Darin.
   76370 
   76371         Include Cairo headers properly
   76372 
   76373         * platform/graphics/AffineTransform.h:
   76374         * platform/graphics/ImageBuffer.h:
   76375         * platform/graphics/cairo/AffineTransformCairo.cpp:
   76376         * platform/gtk/FontPlatformDataGtk.cpp:
   76377 
   76378 2007-11-01  Oliver Hunt  <oliver (a] apple.com>
   76379 
   76380         Reviewed by Alexey.
   76381 
   76382         Make sure we send the correct events for Capslock, Shift, Ctrl, Alt and the Windows key        
   76383 
   76384         * platform/win/KeyEventWin.cpp:
   76385         (WebCore::keyIdentifierForWindowsKeyCode):
   76386         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
   76387 
   76388 2007-11-01  Geoffrey Garen  <ggaren (a] apple.com>
   76389 
   76390         Reviewed by Maciej Stachowiak.
   76391         
   76392         In preparation for making List a simple stack-allocated Vector:
   76393 
   76394         Removed all instances of List copying, assignment, and/or storage.
   76395         
   76396         Layout tests and JS tests pass.
   76397 
   76398         * bindings/js/kjs_window.cpp:
   76399         (KJS::WindowFunc::callAsFunction): Stores a Vector of protected 
   76400         JSValue*'s instead of a List now. Converts to List on the fly when 
   76401         calling the timer function. This is slightly less efficient, but the 
   76402         common case is 0-2 arguments, so it's no biggie.
   76403 
   76404         (HTML iBench shows no regression. PLT does not use JS timers.)
   76405         
   76406         (KJS::ScheduledAction::execute): Uses the more efficient and non-copying
   76407         List::slice now.
   76408         (KJS::ScheduledAction::ScheduledAction): ditto
   76409 
   76410         * bindings/objc/WebScriptObject.mm:
   76411         (getListFromNSArray): Takes a List out parameter now, to avoid copying.
   76412 
   76413 2007-11-01  Oliver Hunt  <oliver (a] apple.com>
   76414 
   76415         Reviewed by Geoff.
   76416 
   76417         Correct event behaviour on certain control keys
   76418 
   76419         Make sure we send the correct keyDown and keyUp events for the
   76420         control keys CapsLock, Shift, Ctrl, Alt, and Meta/Command, and
   76421         uses Windows key codes for the event keyCode.
   76422 
   76423         * WebCore.base.exp:
   76424         * page/EventHandler.cpp:
   76425         (WebCore::EventHandler::keyEvent):
   76426         * platform/PlatformKeyboardEvent.h:
   76427         * platform/gtk/KeyEventGtk.cpp:
   76428         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
   76429         * platform/mac/KeyEventMac.mm:
   76430         (WebCore::keyIdentifierForKeyEvent):
   76431         (WebCore::WindowsKeyCodeForKeyEvent):
   76432         (WebCore::isKeyUpEvent):
   76433         (WebCore::textFromEvent):
   76434         (WebCore::unmodifiedTextFromEvent):
   76435         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
   76436         * platform/win/KeyEventWin.cpp:
   76437         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
   76438         * platform/wx/KeyEventWin.cpp:
   76439         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
   76440 
   76441 2007-11-01  Timothy Hatcher  <timothy (a] apple.com>
   76442 
   76443         Reviewed by Sam.
   76444 
   76445         * page/inspector/inspector.css: Use the white disclosure triangles
   76446           when a parent DOM element is sepected.
   76447 
   76448 2007-11-01  Justin Garcia  <justin.garcia (a] apple.com>
   76449 
   76450         Reviewed by Oliver Hunt.
   76451 
   76452         <rdar://problem/5195056> Huge plain text pastes are slow, time spent in ApplyStyleCommand::doApply
   76453 
   76454         * editing/ReplaceSelectionCommand.cpp:
   76455         (WebCore::ReplaceSelectionCommand::doApply): No need to match style when pasting
   76456         into a plaintext-only region, since when we build the fragment to insert from
   76457         plain text, we don't put any style information on it, so it will automatically
   76458         match style with no intervention.
   76459         * editing/markup.cpp:
   76460         (WebCore::createFragmentFromText): Place paragraphs into clones of the
   76461         block being inserted into, instead of default paragraph elements,
   76462         so that when inserted content will match the surrounding paragraph style.
   76463         This was broken before, but I haven't added a layout test yet because
   76464         there currently isn't a way to get only plain text onto the pasteboard
   76465         in a layout test.
   76466 
   76467 2007-11-01  Sam Weinig  <sam (a] webkit.org>
   76468 
   76469         Reviewed by Adam Roben. 
   76470 
   76471         Add a releaseRef method to COMPtr which matches the behavior
   76472         of the method by the same name in PassRefPtr.  This is in
   76473         preparation of adding autogenerated COM DOM bindings.
   76474 
   76475         * platform/win/COMPtr.h:
   76476         (COMPtr::releaseRef):
   76477 
   76478 2007-11-01  Kevin Ollivier  <kevino (a] theolliviers.com>
   76479 
   76480         wx impl. for DragController and EventHandler interfaces.
   76481 
   76482         Reviewed by Adam Roben.
   76483 
   76484         * page/wx: Added.
   76485         * page/wx/DragControllerWx.cpp: Added.
   76486         (WebCore::DragController::isCopyKeyDown):
   76487         (WebCore::DragController::dragOperation):
   76488         (WebCore::DragController::maxDragImageSize):
   76489         * page/wx/EventHandlerWx.cpp: Added.
   76490         (WebCore::EventHandler::passMousePressEventToSubframe):
   76491         (WebCore::EventHandler::passMouseMoveEventToSubframe):
   76492         (WebCore::EventHandler::passMouseReleaseEventToSubframe):
   76493         (WebCore::EventHandler::passMousePressEventToScrollbar):
   76494         (WebCore::EventHandler::passWidgetMouseDownEventToWidget):
   76495         (WebCore::EventHandler::focusDocumentView):
   76496         (WebCore::EventHandler::eventActivatedView):
   76497         (WebCore::EventHandler::createDraggingClipboard):
   76498 
   76499 2007-11-01  Kevin Ollivier  <kevino (a] theolliviers.com>
   76500 
   76501         Adding files for wx impl. of editing interfaces.
   76502 
   76503         Reviewed by Adam Roben.
   76504 
   76505         * editing/wx: Added.
   76506         * editing/wx/EditorWx.cpp: Added.
   76507         (WebCore::Editor::newGeneralClipboard):
   76508 
   76509 2007-11-01  Sam Weinig  <sam (a] webkit.org>
   76510 
   76511         Reviewed by Adam Roben.
   76512 
   76513         Make implicit conversions from LPCSTRs and BSTRs to WebCore string
   76514         types possible in preparation of adding autogenerated COM DOM bindings.
   76515 
   76516         * platform/AtomicString.cpp: 
   76517         (WebCore::AtomicString::add):
   76518         * platform/AtomicString.h:
   76519         (WebCore::AtomicString::AtomicString):
   76520         * platform/PlatformString.h:
   76521         * platform/win/BString.cpp:
   76522         (WebCore::BString::BString):
   76523         * platform/win/BString.h:
   76524 
   76525 2007-11-01  Brady Eidson  <beidson (a] apple.com>
   76526 
   76527         Reviewed by Anders
   76528 
   76529         Renamed a flag inside of SQLiteTransaction and added an accessor (for future work)
   76530 
   76531         * platform/sql/SQLiteTransaction.cpp:
   76532         (WebCore::SQLiteTransaction::SQLiteTransaction):
   76533         (WebCore::SQLiteTransaction::~SQLiteTransaction):
   76534         (WebCore::SQLiteTransaction::begin):
   76535         (WebCore::SQLiteTransaction::commit):
   76536         (WebCore::SQLiteTransaction::rollback):
   76537         * platform/sql/SQLiteTransaction.h:
   76538         (WebCore::SQLiteTransaction::inProgress):
   76539 
   76540 2007-11-01  Adam Roben  <aroben (a] apple.com>
   76541 
   76542         Remove all duplicate xcopy commands from WebCore's post-build step
   76543 
   76544         Also add the /d option to the copy of platform/sql.
   76545 
   76546         Rubberstamped by Sam.
   76547 
   76548         * WebCore.vcproj/WebCore.vcproj:
   76549 
   76550 2007-11-01  Adele Peterson  <adele (a] apple.com>
   76551 
   76552         Reviewed by Maciej.
   76553 
   76554         Add support for the animation of the -webkit-border-raduis properties.
   76555 
   76556         * page/AnimationController.cpp:
   76557         (WebCore::blendFunc): Added for IntSize.
   76558         (WebCore::ImplicitAnimation::animate): Added cases for border radius properties.
   76559 
   76560 2007-11-01  Alp Toker  <alp (a] atoker.com>
   76561 
   76562         Reviewed by Mitz Pettel.
   76563 
   76564         Fix an unbalanced save/restore.
   76565 
   76566         * platform/graphics/cg/ImageCG.cpp:
   76567         (WebCore::BitmapImage::draw):
   76568 
   76569 2007-11-01  David Hyatt  <hyatt (a] apple.com>
   76570 
   76571         Add support for the animation of the visibility property.
   76572 
   76573         Reviewed by oliver, aroben
   76574 
   76575         * page/AnimationController.cpp:
   76576         (WebCore::blendFunc):
   76577         (WebCore::ImplicitAnimation::animate):
   76578 
   76579 2007-11-01  Kevin McCullough  <kmccullough (a] apple.com>
   76580 
   76581         Reviewed by Adam.
   76582 
   76583         - Made COMPtr be able to be used by certain other templates,
   76584         specifically HashSet.
   76585 
   76586         * platform/win/COMPtr.h:
   76587         (WTF::):
   76588 
   76589 2007-11-01  Dan Bernstein  <mitz (a] apple.com>
   76590 
   76591         Reviewed by Dave Hyatt.
   76592 
   76593         - fix http://bugs.webkit.org/show_bug.cgi?id=15015
   76594           <rdar://problem/5420308> Most of www.aol.com redraws unnecessarily when headline/photo section changes
   76595 
   76596         Test: fast/repaint/overflow-clip-subtree-layout.html
   76597 
   76598         This patch does not address the bigger issue of doing a full relayout
   76599         of inline flows containing floats, but it addresses the problem on
   76600         aol.com, where the changes that trigger layout are confined to an
   76601         overflow area inside the float.
   76602 
   76603         * page/FrameView.cpp:
   76604         (WebCore::FrameView::scheduleRelayoutOfSubtree): If the new and old
   76605         layout roots are different but one descends from the other, make (or
   76606         keep) the ancestor as the layout root.
   76607         * rendering/RenderObject.cpp:
   76608         (WebCore::objectIsRelayoutBoundary): Made boxes with overflow
   76609         clipping and non-auto width and height relayout boundaries.
   76610 
   76611 2007-11-01  Alexey Proskuryakov  <ap (a] webkit.org>
   76612 
   76613         Reviewed by Mark Rowe.
   76614 
   76615         Fixed line endings that got confused in this file somehow.
   76616 
   76617         * platform/network/ResourceResponse.cpp:
   76618         (WebCore::ResourceResponse::isAttachment):
   76619 
   76620 2007-11-01  Peter Kasting  <pkasting (a] google.com>
   76621 
   76622         Reviewed by Dave Hyatt.
   76623 
   76624         http://bugs.webkit.org/show_bug.cgi?id=15778
   76625         Malformed GIFs should not result in memory corruption.
   76626 
   76627         * platform/image-decoders/gif/GIFImageDecoder.cpp:
   76628         (WebCore::GIFImageDecoder::haveDecodedRow):
   76629         * platform/image-decoders/gif/GIFImageReader.cpp:
   76630         (GIFImageReader::output_row):
   76631         (GIFImageReader::read):
   76632 
   76633 2007-10-31  Adam Roben  <aroben (a] apple.com>
   76634 
   76635         Fix a crash when parsing a cubic-bezier function
   76636 
   76637         Reviewed by Hyatt.
   76638 
   76639         Test: fast/css/parse-timing-function-crash.html
   76640 
   76641         * WebCore.vcproj/WebCore.vcproj:
   76642         * css/CSSParser.cpp:
   76643         (WebCore::CSSParser::parseTimingFunctionValue): Don't walk off the end
   76644         of the ValueList.
   76645 
   76646 2007-10-31  David Hyatt  <hyatt (a] apple.com>
   76647 
   76648         Fix a merge error from when I applied my patch to ToT.  A couple of lines should be part of an if.
   76649 
   76650         * rendering/RenderStyle.cpp:
   76651         (WebCore::RenderStyle::adjustTransitions):
   76652 
   76653 2007-10-31  Anders Carlsson  <andersca (a] apple.com>
   76654 
   76655         Reviewed by Sam.
   76656 
   76657         Add new SQL callback interfaces and JS implementations of them.
   76658         
   76659         * DerivedSources.make:
   76660         * WebCore.xcodeproj/project.pbxproj:
   76661         * bindings/js/JSCustomSQLStatementCallback.cpp: Added.
   76662         (WebCore::JSCustomSQLStatementCallback::JSCustomSQLStatementCallback):
   76663         (WebCore::JSCustomSQLStatementCallback::handleEvent):
   76664         * bindings/js/JSCustomSQLStatementCallback.h: Added.
   76665         * bindings/js/JSCustomSQLStatementErrorCallback.cpp: Added.
   76666         (WebCore::JSCustomSQLStatementErrorCallback::JSCustomSQLStatementErrorCallback):
   76667         (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
   76668         * bindings/js/JSCustomSQLStatementErrorCallback.h: Added.
   76669         * bindings/js/JSCustomSQLTransactionCallback.cpp: Added.
   76670         (WebCore::JSCustomSQLTransactionCallback::JSCustomSQLTransactionCallback):
   76671         (WebCore::JSCustomSQLTransactionCallback::handleEvent):
   76672         * bindings/js/JSCustomSQLTransactionCallback.h: Added.
   76673         * bindings/js/JSCustomSQLTransactionErrorCallback.cpp: Added.
   76674         (WebCore::JSCustomSQLTransactionErrorCallback::JSCustomSQLTransactionErrorCallback):
   76675         (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent):
   76676         * bindings/js/JSCustomSQLTransactionErrorCallback.h: Added.
   76677         * storage/JSCustomSQLStatementCallback.h: Added.
   76678         * storage/JSCustomSQLStatementErrorCallback.h: Added.
   76679         * storage/JSCustomSQLTransactionCallback.h: Added.
   76680         * storage/JSCustomSQLTransactionErrorCallback.h: Added.
   76681         * storage/SQLStatementCallback.h: Added.
   76682         (WebCore::SQLStatementCallback::~SQLStatementCallback):
   76683         * storage/SQLStatementCallback.idl: Added.
   76684         * storage/SQLStatementErrorCallback.h: Added.
   76685         (WebCore::SQLStatementErrorCallback::~SQLStatementErrorCallback):
   76686         * storage/SQLStatementErrorCallback.idl: Added.
   76687         * storage/SQLTransaction.h: Added.
   76688         * storage/SQLTransaction.idl: Added.
   76689         * storage/SQLTransactionCallback.h: Added.
   76690         (WebCore::SQLTransactionCallback::~SQLTransactionCallback):
   76691         * storage/SQLTransactionCallback.idl: Added.
   76692         * storage/SQLTransactionErrorCallback.h: Added.
   76693         (WebCore::SQLTransactionErrorCallback::~SQLTransactionErrorCallback):
   76694         * storage/SQLTransactionErrorCallback.idl: Added.
   76695 
   76696 2007-10-31  Justin Garcia  <justin.garcia (a] apple.com>
   76697 
   76698         Reviewed by Dave Harrison.
   76699 
   76700         <rdar://problem/5569741> Pasting content with a line break into a list can remove the list
   76701 
   76702         * editing/htmlediting.cpp:
   76703         (WebCore::enclosingEmptyListItem): A single list item can contain multiple 
   76704         paragraphs, so if the incoming VisiblePosition is in an empty paragraph in a 
   76705         list item, that list item isn't necessarily empty.
   76706 
   76707 2007-10-31  David Hyatt  <hyatt (a] apple.com>
   76708 
   76709         Disable style sharing for animating styles.
   76710 
   76711         Reviewed by mitzpettel
   76712 
   76713         * css/CSSStyleSelector.cpp:
   76714         (WebCore::CSSStyleSelector::canShareStyleWithElement):
   76715 
   76716 2007-10-31  Dan Bernstein  <mitz (a] apple.com>
   76717 
   76718         Reviewed by Darin Adler.
   76719 
   76720         - fix intermediate length calculation
   76721 
   76722         * rendering/Length.h:
   76723         (WebCore::Length::blend):
   76724 
   76725 2007-10-31  Anders Carlsson  <andersca (a] apple.com>
   76726 
   76727         Reviewed by Darin.
   76728 
   76729         Add new SQLError implementation.
   76730         
   76731         * DerivedSources.make:
   76732         * WebCore.vcproj/WebCore.vcproj:
   76733         * WebCore.xcodeproj/project.pbxproj:
   76734         * storage/SQLError.h: Added.
   76735         (WebCore::SQLError::SQLError):
   76736         (WebCore::SQLError::code):
   76737         (WebCore::SQLError::message):
   76738         * storage/SQLError.idl: Added.
   76739 
   76740 2007-10-31  David Hyatt  <hyatt (a] apple.com>
   76741 
   76742         Change the initial value of transition-property to all.  Change the initial value of
   76743         transition-duration to 0.
   76744 
   76745         Reviewed by antti
   76746 
   76747         * rendering/RenderStyle.h:
   76748         (WebCore::RenderStyle::initialTransitionDuration):
   76749         (WebCore::RenderStyle::initialTransitionProperty):
   76750 
   76751 2007-10-31  Alp Toker  <alp (a] atoker.com>
   76752 
   76753         Reviewed by Mark Rowe.
   76754 
   76755         The new Color must be marked valid.
   76756 
   76757         * platform/graphics/gtk/ColorGtk.cpp:
   76758 
   76759 2007-10-31  Simon Hausmann  <hausmann (a] kde.org>
   76760 
   76761         Reviewed by Maciej;
   76762 
   76763         Build fix for non-Qt builds.
   76764 
   76765         * dom/XMLTokenizer.cpp:
   76766         (WebCore::XMLTokenizer::XMLTokenizer):
   76767 
   76768 2007-10-31  Simon Hausmann  <hausmann (a] kde.org>
   76769 
   76770         Reviewed by Lars.
   76771 
   76772         Fix dependency path to header files of the public API of the Qt port.
   76773 
   76774         * WebCore.pro:
   76775 
   76776 2007-10-31  Holger Freyther  <zecke (a] selfish.org>
   76777 
   76778         Reviewed by Simon.
   76779 
   76780         * QXmlStreamNamespaceDeclaration doesn't have the constructor we
   76781         want to use for Qt4.3. Reenable the old code path which is likely
   76782         to be dead as I have not checked if m_prefixToNamespaceMap is actually
   76783         used.
   76784         * Guard the entity resolver with the QT_VERSION as well.
   76785         * Partially reverts 369506279abdaa863e15efed649ca19e062f2c30 and
   76786         d2b54d0fc1b07a2480f4f7a1417abd7a636b0107 for Qt4.3.
   76787 
   76788         * dom/XMLTokenizer.cpp:
   76789         (WebCore::XMLTokenizer::XMLTokenizer):
   76790         * dom/XMLTokenizer.h:
   76791 
   76792 2007-10-31  Holger Freyther  <zecke (a] selfish.org>
   76793 
   76794         Reviewed by Lars Knoll <lars (a] trolltech.com>.
   76795 
   76796         * QMimeData::removeData will be new in Qt4.4, don't use it for Qt4.3 
   76797         * Provide a bad fallback implementation to filter the format list.
   76798 
   76799         * platform/qt/ClipboardQt.cpp:
   76800         (WebCore::ClipboardQt::clearData):
   76801 
   76802 2007-10-31  Lars Knoll  <lars (a] trolltech.com>
   76803 
   76804         Reviewed by Simon.
   76805 
   76806         add an entitiy resolver to QXmlStream.
   76807         Fixes fast/parser/entities-in-attributes.xhtml.
   76808 
   76809         * dom/XMLTokenizer.cpp:
   76810         (WebCore::EntityResolver::resolveUndeclaredEntity):
   76811         (WebCore::XMLTokenizer::XMLTokenizer):
   76812         (WebCore::XMLTokenizer::~XMLTokenizer):
   76813 
   76814 2007-10-31  Lars Knoll  <lars (a] trolltech.com>
   76815 
   76816         Reviewed by Simon.
   76817 
   76818         Fixes in the XML tokenizer when using QXmlStream.
   76819         
   76820         Use new functionality of QXmlStream in Qt 4.4 to simplify
   76821         the code (but keep the old code for now to still support Qt 4.3).
   76822         
   76823         Add proper support for namespace handling when parsing into
   76824         a document fragment.
   76825 
   76826         * dom/XMLTokenizer.cpp:
   76827         (WebCore::XMLTokenizer::XMLTokenizer):
   76828         (WebCore::XMLTokenizer::write):
   76829         (WebCore::XMLTokenizer::startElementNs):
   76830         * dom/XMLTokenizer.h:
   76831 
   76832 2007-10-31  Lars Knoll  <lars (a] trolltech.com>
   76833 
   76834         Reviewed by Simon.
   76835 
   76836         add support for dragging images.
   76837 
   76838         * platform/DragImage.h:
   76839         * platform/qt/ClipboardQt.cpp:
   76840         (WebCore::ClipboardQt::clearData):
   76841         (WebCore::ClipboardQt::setDragImage):
   76842         (WebCore::ClipboardQt::setDragImageElement):
   76843         (WebCore::ClipboardQt::createDragImage):
   76844         (WebCore::getCachedImage):
   76845         (WebCore::ClipboardQt::declareAndWriteDragImage):
   76846         * platform/qt/ClipboardQt.h:
   76847 
   76848 2007-10-31  Lars Knoll  <lars (a] trolltech.com>
   76849 
   76850         Reviewed by Simon.
   76851 
   76852         fix most of the issues I found with Clipboard and DnD.
   76853 
   76854         * editing/qt/EditorQt.cpp:
   76855         * platform/qt/ClipboardQt.cpp:
   76856         (WebCore::ClipboardQt::ClipboardQt):
   76857         (WebCore::ClipboardQt::~ClipboardQt):
   76858         (WebCore::ClipboardQt::clearData):
   76859         (WebCore::ClipboardQt::clearAllData):
   76860         (WebCore::ClipboardQt::getData):
   76861         (WebCore::ClipboardQt::setData):
   76862         (WebCore::ClipboardQt::types):
   76863         (WebCore::ClipboardQt::setDragImage):
   76864         (WebCore::ClipboardQt::setDragImageElement):
   76865         (WebCore::ClipboardQt::declareAndWriteDragImage):
   76866         (WebCore::ClipboardQt::writeURL):
   76867         (WebCore::ClipboardQt::writeRange):
   76868         (WebCore::ClipboardQt::hasData):
   76869         * platform/qt/ClipboardQt.h:
   76870         * platform/qt/DragDataQt.cpp:
   76871         (WebCore::DragData::asURL):
   76872 
   76873 2007-10-30  Mark Rowe  <mrowe (a] apple.com>
   76874 
   76875         Fix the Gtk and Qt builds by stubbing out PlatformKeyboardEvent::currentCapsLockState.
   76876 
   76877         * platform/gtk/KeyEventGtk.cpp:
   76878         (WebCore::PlatformKeyboardEvent::currentCapsLockState):
   76879         * platform/qt/PlatformKeyboardEventQt.cpp:
   76880         (WebCore::PlatformKeyboardEvent::currentCapsLockState):
   76881 
   76882 2007-10-31  Alexey Proskuryakov  <ap (a] webkit.org>
   76883 
   76884         Reviewed by Anders.
   76885 
   76886         http://bugs.webkit.org/show_bug.cgi?id=15762
   76887         XSLStylesheet loads subresources from a wrong URL
   76888 
   76889         Covered by corrected existing tests.
   76890 
   76891         * xml/XSLStyleSheet.cpp:
   76892         (WebCore::XSLStyleSheet::parseString): Pass stylesheet URL, not
   76893         the document one.
   76894 
   76895 2007-10-31  Alexey Proskuryakov  <ap (a] webkit.org>
   76896 
   76897         Reviewed by Darin.
   76898 
   76899         http://bugs.webkit.org/show_bug.cgi?id=10818
   76900         String::append does 2 full copies instead of 1 (or zero!)
   76901 
   76902         No change in functionality, thus no test.
   76903 
   76904         * platform/String.cpp:
   76905         (WebCore::String::append): Rewrote to copy once. Also removed an ancient
   76906         FIXME that doesn't seem to make any sense. Note that append() behavior doesn't 
   76907         match documented String behavior ("modifications to one instance will
   76908         also modify all others"), but there are a lot of methods that don't.
   76909 
   76910 2007-10-31  Adam Roben  <aroben (a] apple.com>
   76911 
   76912         Windows build fix
   76913 
   76914         * WebCore.vcproj/WebCore.vcproj: Add [JS]ProgressEvent.{cpp,h} files.
   76915 
   76916 2007-10-30  Adam Roben  <aroben (a] apple.com>
   76917 
   76918         Windows build fixes
   76919 
   76920         I'm not completely sure why these const issues weren't caught by GCC,
   76921         but MSVC was certainly not happy with them.
   76922 
   76923         * editing/IndentOutdentCommand.cpp:
   76924         (WebCore::isIndentBlockquote):
   76925         * editing/markup.cpp:
   76926         (WebCore::styleFromMatchedRulesAndInlineDecl):
   76927 
   76928 2007-10-30  David Hyatt  <hyatt (a] apple.com>
   76929 
   76930         transition-property was defaulting to all when it should default to none.  
   76931 
   76932         It was taking a string type.  I figured out how to make it take an ident instead, so you can write:
   76933 
   76934         transition-property: opacity
   76935 
   76936         instead of
   76937 
   76938         transition-property: "opacity"
   76939 
   76940         Transition layers also weren't properly repeating patterns the way they were supposed to.  I fixed that.
   76941 
   76942         Finally, I fixed a bug in the code to fix up transition layers where something was misplaced that should have been inside a null check.
   76943 
   76944         Reviewed by aroben
   76945 
   76946         * css/CSSHelper.h:
   76947         * css/CSSParser.cpp:
   76948         (WebCore::CSSParser::parseTransitionProperty):
   76949         * css/CSSStyleSelector.cpp:
   76950         (WebCore::CSSStyleSelector::adjustRenderStyle):
   76951         * page/AnimationController.cpp:
   76952         (WebCore::ImplicitAnimation::animate):
   76953         * rendering/RenderStyle.cpp:
   76954         (WebCore::RenderStyle::adjustTransitions):
   76955         * rendering/RenderStyle.h:
   76956         (WebCore::RenderStyle::initialTransitionProperty):
   76957 
   76958 2007-10-30  Antti Koivisto  <antti (a] apple.com>
   76959 
   76960         Reviewed by Geoff.
   76961 
   76962         Leak fix
   76963 
   76964         * platform/graphics/mac/MoviePrivateQTKit.mm:
   76965         (WebCore::MoviePrivate::getSupportedTypes):
   76966 
   76967 2007-10-30  Dan Bernstein  <mitz (a] apple.com>
   76968 
   76969         Reviewed by Stephanie Lewis.
   76970 
   76971         - fix <rdar://problem/5547237> REGRESSION (304-ToT): Repro font-related crash in fontdatawin.cpp Line 93 (many sites)
   76972 
   76973         * platform/win/FontDataWin.cpp:
   76974         (WebCore::FontData::platformInit): Handle the case where the font has no
   76975         glyphs on page zero.
   76976 
   76977 2007-10-30  David Hyatt  <hyatt (a] apple.com>
   76978 
   76979         Make sure CSS transforms can be animated using the CSS transition property.
   76980 
   76981         Reviewed by Dan and Antti
   76982 
   76983         * css/CSSStyleSelector.cpp:
   76984         (WebCore::CSSStyleSelector::applyProperty):
   76985         * page/AnimationController.cpp:
   76986         (WebCore::blendFunc):
   76987         (WebCore::ImplicitAnimation::animate):
   76988         * rendering/Length.h:
   76989         (WebCore::Length::blend):
   76990         * rendering/RenderStyle.cpp:
   76991         (WebCore::StyleTransformData::operator==):
   76992         (WebCore::TransformOperations::operator==):
   76993         (WebCore::blendLengths):
   76994         (WebCore::ScaleTransformOperation::blend):
   76995         (WebCore::RotateTransformOperation::blend):
   76996         (WebCore::SkewTransformOperation::blend):
   76997         (WebCore::TranslateTransformOperation::blend):
   76998         (WebCore::MatrixTransformOperation::blend):
   76999         * rendering/RenderStyle.h:
   77000         (WebCore::TransformOperations::operator!=):
   77001         (WebCore::TransformOperations::isEmpty):
   77002         (WebCore::TransformOperations::size):
   77003         (WebCore::TransformOperations::operator[]):
   77004         (WebCore::TransformOperations::append):
   77005         (WebCore::RenderStyle::transform):
   77006         (WebCore::RenderStyle::setTransform):
   77007         (WebCore::RenderStyle::initialTransform):
   77008 
   77009 2007-10-30  Antti Koivisto  <antti (a] apple.com>
   77010 
   77011         Another Qt/GTK build fix.
   77012 
   77013         * bindings/js/JSHTMLElementWrapperFactory.cpp:
   77014 
   77015 2007-10-30  Antti Koivisto  <antti (a] apple.com>
   77016 
   77017         Attempt to fix Qt/GTK build.
   77018 
   77019         * WebCore.pro:
   77020 
   77021 2007-10-30  Justin Garcia  <justin.garcia (a] apple.com>
   77022 
   77023         Reviewed by Darin Adler.
   77024 
   77025         <rdar://problem/5549929> CrashTracer: [USER] 35 crashes at WebCore::CharacterData::insertData
   77026         
   77027         We were trying to insert a tab into a br, after the br incorrectly ended up inside
   77028         a tab span.
   77029         
   77030         * editing/DeleteButtonController.cpp: 
   77031         (WebCore::isDeletableElement): Changed to take in a const Node* instead of a Node*.
   77032         * editing/DeleteSelectionCommand.cpp:
   77033         (WebCore::isTableRow): Ditto.
   77034         * editing/IndentOutdentCommand.cpp:
   77035         (WebCore::isIndentBlockquote): Ditto.
   77036         (WebCore::isListOrIndentBlockquote): Ditto.
   77037         * editing/InsertLineBreakCommand.cpp:
   77038         (WebCore::InsertLineBreakCommand::shouldUseBreakElement): Added, moved code from
   77039         doApply here.
   77040         (WebCore::InsertLineBreakCommand::doApply): 
   77041         Don't upstream() the insertion position.  upstream()ing it will only have an effect
   77042         when the insertion position is the first in its paragraph (since we canonicalize
   77043         VisiblePositions to the upstream() candidate).  In this start of paragraph case, 
   77044         upstream() can move outside inline elements like tab spans or elements that might
   77045         have a different whitespace mode (added two test cases to cover these).
   77046         Moved code to decide whether to insert a br or a '\n' to its own method.
   77047         Removed special case code for inserting at a position inside a tab span.  We instead
   77048         adjust the insertion position before insertion if it is inside a tab span and
   77049         handle insertion in the appropriate if-block.  This fixes a bug where we would 
   77050         only insert one line break when two were needed (added a testcase).
   77051         Removed special case code for inserting before and after tables and horizontal
   77052         rules.  We handle these insertions in the appropriate if-block.
   77053         * editing/InsertLineBreakCommand.h:
   77054         * editing/ReplaceSelectionCommand.cpp:
   77055         (WebCore::isMailPasteAsQuotationNode): Change to take in a const Node*.
   77056         * editing/htmlediting.cpp:
   77057         (WebCore::isContentEditable): Ditto.
   77058         (WebCore::isBlock): Ditto.
   77059         (WebCore::enclosingNodeOfType): Changed to take a function pointer to a function
   77060         that takes in a const Node*.
   77061         (WebCore::isTabSpanTextNode): Check to see that the node actually a text node,
   77062         and not, say, a br.
   77063         * editing/htmlediting.h:
   77064         * editing/markup.cpp:
   77065         (WebCore::styleFromMatchedRulesAndInlineDecl): Changed to take in a const Node*.
   77066         (WebCore::elementHasTextDecorationProperty): Ditto.
   77067 
   77068 2007-10-30  Antti Koivisto  <antti (a] apple.com>
   77069 
   77070         Add missing files.
   77071 
   77072         * html/VoidCallback.cpp: Added.
   77073         (VoidCallback::VoidCallback):
   77074         (VoidCallback::~VoidCallback):
   77075         (VoidCallback::handleEvent):
   77076         (VoidCallback::execute):
   77077         (VoidCallback::operator==):
   77078         (WebCore::toVoidCallback):
   77079         * html/VoidCallback.h: Added.
   77080         * html/VoidCallback.idl: Added.
   77081 
   77082 2007-10-30  David Kilzer  <ddkilzer (a] webkit.org>
   77083 
   77084         Generated files missing from WebCore's Xcode project file
   77085         <http://bugs.webkit.org/show_bug.cgi?id=15406>
   77086 
   77087         Reviewed by Darin.
   77088 
   77089         Added the following files to the Xcode project file (note that
   77090         JSHTMLInputElementBaseTable.cpp is used as a header file):
   77091 
   77092         - DOMCSSStyleSheetPrivate.h
   77093         - DOMEventPrivate.h
   77094         - DOMHTMLCollectionPrivate.h
   77095         - DOMHTMLEmbedElementPrivate.h
   77096         - DOMHTMLIFrameElementPrivate.h
   77097         - DOMHTMLObjectElementPrivate.h
   77098         - DOMHTMLSelectElementPrivate.h
   77099         - DOMTextEventInternal.h
   77100         - JSHTMLInputElementBaseTable.cpp
   77101 
   77102         * DerivedSources.make: Removed DOMSVGException.h and JSSVGAnimatedPoints.h
   77103         since their generated code was not used.
   77104         * WebCore.xcodeproj/project.pbxproj: Added missing header files.
   77105 
   77106 2007-10-29  Antti Koivisto  <antti (a] apple.com>
   77107 
   77108         Rubber stamped by Adele.
   77109 
   77110         Initial media (<video> and <audio>) support from feature branch and 
   77111         QTKit based platform implementation.
   77112         
   77113         This will need to be updated to match current draft specification.
   77114 
   77115         * Configurations/WebCore.xcconfig:
   77116         * DerivedSources.make:
   77117         * WebCore.base.exp:
   77118         * WebCore.xcodeproj/project.pbxproj:
   77119         * bindings/js/JSEventCustom.cpp:
   77120         (WebCore::toJS):
   77121         * bindings/js/JSHTMLAudioElementConstructor.cpp: Added.
   77122         (WebCore::JSHTMLAudioElementConstructor::JSHTMLAudioElementConstructor):
   77123         (WebCore::JSHTMLAudioElementConstructor::implementsConstruct):
   77124         (WebCore::JSHTMLAudioElementConstructor::construct):
   77125         * bindings/js/JSHTMLAudioElementConstructor.h: Added.
   77126         * bindings/js/JSHTMLElementWrapperFactory.cpp:
   77127         (WebCore::createJSHTMLWrapper):
   77128         * bindings/js/kjs_window.cpp:
   77129         (KJS::Window::getValueProperty):
   77130         * bindings/js/kjs_window.h:
   77131         (KJS::Window::):
   77132         * bindings/scripts/CodeGeneratorJS.pm:
   77133         * dom/Document.cpp:
   77134         (WebCore::Document::createEvent):
   77135         (WebCore::Document::willSaveToCache):
   77136         (WebCore::Document::didRestoreFromCache):
   77137         (WebCore::Document::registerForCacheCallbacks):
   77138         (WebCore::Document::unregisterForCacheCallbacks):
   77139         * dom/Document.h:
   77140         * dom/Element.cpp:
   77141         (WebCore::Element::setBooleanAttribute):
   77142         * dom/Element.h:
   77143         (WebCore::Element::willSaveToCache):
   77144         * dom/Event.cpp:
   77145         (WebCore::Event::isProgressEvent):
   77146         * dom/Event.h:
   77147         * dom/EventNames.h:
   77148         * dom/EventTargetNode.cpp:
   77149         (WebCore::EventTargetNode::dispatchProgressEvent):
   77150         * dom/EventTargetNode.h:
   77151         * dom/ProgressEvent.cpp: Added.
   77152         (WebCore::ProgressEvent::ProgressEvent):
   77153         (WebCore::ProgressEvent::initProgressEvent):
   77154         (WebCore::ProgressEvent::initProgressEventNS):
   77155         * dom/ProgressEvent.h: Added.
   77156         (WebCore::ProgressEvent::lengthComputable):
   77157         (WebCore::ProgressEvent::loaded):
   77158         (WebCore::ProgressEvent::total):
   77159         (WebCore::ProgressEvent::isProgressEvent):
   77160         * dom/ProgressEvent.idl: Added.
   77161         * history/CachedPage.cpp:
   77162         (WebCore::CachedPage::CachedPage):
   77163         * html/HTMLAttributeNames.in:
   77164         * html/HTMLAudioElement.cpp: Added.
   77165         (WebCore::HTMLAudioElement::HTMLAudioElement):
   77166         * html/HTMLAudioElement.h: Added.
   77167         (WebCore::HTMLAudioElement::tagPriority):
   77168         * html/HTMLAudioElement.idl: Added.
   77169         * html/HTMLElement.cpp:
   77170         (WebCore::inlineTagList):
   77171         * html/HTMLElementFactory.cpp:
   77172         (WebCore::audioConstructor):
   77173         (WebCore::videoConstructor):
   77174         (WebCore::sourceConstructor):
   77175         (WebCore::createFunctionMap):
   77176         * html/HTMLInputElement.cpp:
   77177         (WebCore::HTMLInputElement::~HTMLInputElement):
   77178         (WebCore::HTMLInputElement::setInputType):
   77179         (WebCore::HTMLInputElement::willMoveToNewOwnerDocument):
   77180         (WebCore::HTMLInputElement::didMoveToNewOwnerDocument):
   77181         * html/HTMLMediaElement.cpp: Added.
   77182         (WebCore::HTMLMediaElement::HTMLMediaElement):
   77183         (WebCore::HTMLMediaElement::~HTMLMediaElement):
   77184         (WebCore::HTMLMediaElement::checkDTD):
   77185         (WebCore::HTMLMediaElement::rendererIsNeeded):
   77186         (WebCore::HTMLMediaElement::createRenderer):
   77187         (WebCore::HTMLMediaElement::insertedIntoDocument):
   77188         (WebCore::HTMLMediaElement::removedFromDocument):
   77189         (WebCore::HTMLMediaElement::scheduleLoad):
   77190         (WebCore::HTMLMediaElement::initAndDispatchProgressEvent):
   77191         (WebCore::HTMLMediaElement::dispatchEventAsync):
   77192         (WebCore::HTMLMediaElement::loadTimerFired):
   77193         (WebCore::HTMLMediaElement::asyncEventTimerFired):
   77194         (WebCore::serializeTimeOffset):
   77195         (WebCore::parseTimeOffset):
   77196         (WebCore::HTMLMediaElement::getTimeOffsetAttribute):
   77197         (WebCore::HTMLMediaElement::setTimeOffsetAttribute):
   77198         (WebCore::HTMLMediaElement::error):
   77199         (WebCore::HTMLMediaElement::src):
   77200         (WebCore::HTMLMediaElement::HTMLMediaElement::setSrc):
   77201         (WebCore::HTMLMediaElement::currentSrc):
   77202         (WebCore::HTMLMediaElement::networkState):
   77203         (WebCore::HTMLMediaElement::bufferingRate):
   77204         (WebCore::HTMLMediaElement::load):
   77205         (WebCore::HTMLMediaElement::movieNetworkStateChanged):
   77206         (WebCore::HTMLMediaElement::movieReadyStateChanged):
   77207         (WebCore::HTMLMediaElement::setReadyState):
   77208         (WebCore::HTMLMediaElement::progressEventTimerFired):
   77209         (WebCore::HTMLMediaElement::seek):
   77210         (WebCore::HTMLMediaElement::readyState):
   77211         (WebCore::HTMLMediaElement::seeking):
   77212         (WebCore::HTMLMediaElement::currentTime):
   77213         (WebCore::HTMLMediaElement::setCurrentTime):
   77214         (WebCore::HTMLMediaElement::duration):
   77215         (WebCore::HTMLMediaElement::paused):
   77216         (WebCore::HTMLMediaElement::defaultPlaybackRate):
   77217         (WebCore::HTMLMediaElement::setDefaultPlaybackRate):
   77218         (WebCore::HTMLMediaElement::playbackRate):
   77219         (WebCore::HTMLMediaElement::setPlaybackRate):
   77220         (WebCore::HTMLMediaElement::ended):
   77221         (WebCore::HTMLMediaElement::autoplay):
   77222         (WebCore::HTMLMediaElement::setAutoplay):
   77223         (WebCore::HTMLMediaElement::play):
   77224         (WebCore::HTMLMediaElement::pause):
   77225         (WebCore::HTMLMediaElement::loopCount):
   77226         (WebCore::HTMLMediaElement::setLoopCount):
   77227         (WebCore::HTMLMediaElement::start):
   77228         (WebCore::HTMLMediaElement::setStart):
   77229         (WebCore::HTMLMediaElement::end):
   77230         (WebCore::HTMLMediaElement::setEnd):
   77231         (WebCore::HTMLMediaElement::loopStart):
   77232         (WebCore::HTMLMediaElement::setLoopStart):
   77233         (WebCore::HTMLMediaElement::loopEnd):
   77234         (WebCore::HTMLMediaElement::setLoopEnd):
   77235         (WebCore::HTMLMediaElement::currentLoop):
   77236         (WebCore::HTMLMediaElement::setCurrentLoop):
   77237         (WebCore::HTMLMediaElement::controls):
   77238         (WebCore::HTMLMediaElement::setControls):
   77239         (WebCore::HTMLMediaElement::volume):
   77240         (WebCore::HTMLMediaElement::setVolume):
   77241         (WebCore::HTMLMediaElement::muted):
   77242         (WebCore::HTMLMediaElement::setMuted):
   77243         (WebCore::HTMLMediaElement::pickMedia):
   77244         (WebCore::HTMLMediaElement::checkIfSeekNeeded):
   77245         (WebCore::HTMLMediaElement::movieVolumeChanged):
   77246         (WebCore::HTMLMediaElement::movieDidEnd):
   77247         (WebCore::HTMLMediaElement::movieCuePointReached):
   77248         (WebCore::HTMLMediaElement::addCuePoint):
   77249         (WebCore::HTMLMediaElement::removeCuePoint):
   77250         (WebCore::HTMLMediaElement::buffered):
   77251         (WebCore::HTMLMediaElement::played):
   77252         (WebCore::HTMLMediaElement::seekable):
   77253         (WebCore::HTMLMediaElement::effectiveStart):
   77254         (WebCore::HTMLMediaElement::effectiveEnd):
   77255         (WebCore::HTMLMediaElement::effectiveLoopStart):
   77256         (WebCore::HTMLMediaElement::effectiveLoopEnd):
   77257         (WebCore::HTMLMediaElement::activelyPlaying):
   77258         (WebCore::HTMLMediaElement::endedPlayback):
   77259         (WebCore::HTMLMediaElement::willSaveToCache):
   77260         (WebCore::HTMLMediaElement::didRestoreFromCache):
   77261         * html/HTMLMediaElement.h: Added.
   77262         (WebCore::HTMLMediaElement::movie):
   77263         (WebCore::HTMLMediaElement::isVideo):
   77264         (WebCore::HTMLMediaElement::):
   77265         (WebCore::HTMLMediaElement::CallbackEntry::CallbackEntry):
   77266         * html/HTMLMediaElement.idl: Added.
   77267         * html/HTMLSourceElement.cpp: Added.
   77268         (WebCore::HTMLSourceElement::HTMLSourceElement):
   77269         (WebCore::HTMLSourceElement::~HTMLSourceElement):
   77270         (WebCore::HTMLSourceElement::insertedIntoDocument):
   77271         (WebCore::HTMLSourceElement::src):
   77272         (WebCore::HTMLSourceElement::setSrc):
   77273         (WebCore::HTMLSourceElement::media):
   77274         (WebCore::HTMLSourceElement::setMedia):
   77275         (WebCore::HTMLSourceElement::type):
   77276         (WebCore::HTMLSourceElement::setType):
   77277         * html/HTMLSourceElement.h: Added.
   77278         (WebCore::HTMLSourceElement::endTagRequirement):
   77279         (WebCore::HTMLSourceElement::tagPriority):
   77280         * html/HTMLSourceElement.idl: Added.
   77281         * html/HTMLTagNames.in:
   77282         * html/HTMLVideoElement.cpp: Added.
   77283         (WebCore::HTMLVideoElement::HTMLVideoElement):
   77284         (WebCore::HTMLVideoElement::videoWidth):
   77285         (WebCore::HTMLVideoElement::videoHeight):
   77286         * html/HTMLVideoElement.h: Added.
   77287         (WebCore::HTMLVideoElement::tagPriority):
   77288         (WebCore::HTMLVideoElement::isVideo):
   77289         * html/HTMLVideoElement.idl: Added.
   77290         * html/MediaError.h: Added.
   77291         (WebCore::MediaError::):
   77292         (WebCore::MediaError::MediaError):
   77293         (WebCore::MediaError::code):
   77294         * html/MediaError.idl: Added.
   77295         * html/TimeRanges.cpp: Added.
   77296         (TimeRanges::TimeRanges):
   77297         (TimeRanges::start):
   77298         (TimeRanges::end):
   77299         (TimeRanges::add):
   77300         (TimeRanges::contain):
   77301         * html/TimeRanges.h: Added.
   77302         (WebCore::TimeRanges::TimeRanges):
   77303         (WebCore::TimeRanges::length):
   77304         (WebCore::TimeRanges::Range::Range):
   77305         * html/TimeRanges.idl: Added.
   77306         * page/DOMWindow.idl:
   77307         * platform/MIMETypeRegistry.cpp:
   77308         (WebCore::initialiseSupportedMovieMIMETypes):
   77309         (WebCore::initialiseMIMETypeRegistry):
   77310         (WebCore::MIMETypeRegistry::isSupportedMovieMIMEType):
   77311         (WebCore::MIMETypeRegistry::getSupportedMovieMIMETypes):
   77312         * platform/MIMETypeRegistry.h:
   77313         * platform/graphics/Movie.cpp: Added.
   77314         (WebCore::Movie::Movie):
   77315         (WebCore::Movie::~Movie):
   77316         (WebCore::Movie::load):
   77317         (WebCore::Movie::cancelLoad):
   77318         (WebCore::Movie::play):
   77319         (WebCore::Movie::pause):
   77320         (WebCore::Movie::duration):
   77321         (WebCore::Movie::currentTime):
   77322         (WebCore::Movie::seek):
   77323         (WebCore::Movie::paused):
   77324         (WebCore::Movie::seeking):
   77325         (WebCore::Movie::naturalSize):
   77326         (WebCore::Movie::hasVideo):
   77327         (WebCore::Movie::networkState):
   77328         (WebCore::Movie::readyState):
   77329         (WebCore::Movie::volume):
   77330         (WebCore::Movie::setVolume):
   77331         (WebCore::Movie::rate):
   77332         (WebCore::Movie::setRate):
   77333         (WebCore::Movie::muted):
   77334         (WebCore::Movie::setMuted):
   77335         (WebCore::Movie::dataRate):
   77336         (WebCore::Movie::setEndTime):
   77337         (WebCore::Movie::addCuePoint):
   77338         (WebCore::Movie::removeCuePoint):
   77339         (WebCore::Movie::clearCuePoints):
   77340         (WebCore::Movie::maxTimeBuffered):
   77341         (WebCore::Movie::maxTimeSeekable):
   77342         (WebCore::Movie::bytesLoaded):
   77343         (WebCore::Movie::totalBytesKnown):
   77344         (WebCore::Movie::totalBytes):
   77345         (WebCore::Movie::setRect):
   77346         (WebCore::Movie::visible):
   77347         (WebCore::Movie::setVisible):
   77348         (WebCore::Movie::paint):
   77349         (WebCore::Movie::getSupportedTypes):
   77350         (WebCore::Movie::networkStateChanged):
   77351         (WebCore::Movie::readyStateChanged):
   77352         (WebCore::Movie::volumeChanged):
   77353         (WebCore::Movie::didEnd):
   77354         (WebCore::Movie::cuePointReached):
   77355         * platform/graphics/Movie.h: Added.
   77356         (WebCore::MovieClient::~MovieClient):
   77357         (WebCore::MovieClient::movieNetworkStateChanged):
   77358         (WebCore::MovieClient::movieReadyStateChanged):
   77359         (WebCore::MovieClient::movieVolumeChanged):
   77360         (WebCore::MovieClient::movieDidEnd):
   77361         (WebCore::MovieClient::movieCuePointReached):
   77362         (WebCore::Movie::parentWidget):
   77363         (WebCore::Movie::setParentWidget):
   77364         (WebCore::Movie::rect):
   77365         (WebCore::Movie::):
   77366         * platform/graphics/mac/MoviePrivateQTKit.h: Added.
   77367         * platform/graphics/mac/MoviePrivateQTKit.mm: Added.
   77368         (WebCore::MoviePrivate::MoviePrivate):
   77369         (WebCore::MoviePrivate::~MoviePrivate):
   77370         (WebCore::MoviePrivate::createQTMovie):
   77371         (WebCore::MoviePrivate::createQTMovieView):
   77372         (WebCore::MoviePrivate::createQTTime):
   77373         (WebCore::MoviePrivate::load):
   77374         (WebCore::MoviePrivate::play):
   77375         (WebCore::MoviePrivate::pause):
   77376         (WebCore::MoviePrivate::duration):
   77377         (WebCore::MoviePrivate::currentTime):
   77378         (WebCore::MoviePrivate::seek):
   77379         (WebCore::MoviePrivate::setEndTime):
   77380         (WebCore::MoviePrivate::addCuePoint):
   77381         (WebCore::MoviePrivate::removeCuePoint):
   77382         (WebCore::MoviePrivate::clearCuePoints):
   77383         (WebCore::MoviePrivate::startCuePointTimerIfNeeded):
   77384         (WebCore::MoviePrivate::cancelSeek):
   77385         (WebCore::MoviePrivate::seekTimerFired):
   77386         (WebCore::MoviePrivate::cuePointTimerFired):
   77387         (WebCore::MoviePrivate::paused):
   77388         (WebCore::MoviePrivate::seeking):
   77389         (WebCore::MoviePrivate::naturalSize):
   77390         (WebCore::MoviePrivate::hasVideo):
   77391         (WebCore::MoviePrivate::setVolume):
   77392         (WebCore::MoviePrivate::setMuted):
   77393         (WebCore::MoviePrivate::setRate):
   77394         (WebCore::MoviePrivate::dataRate):
   77395         (WebCore::MoviePrivate::networkState):
   77396         (WebCore::MoviePrivate::readyState):
   77397         (WebCore::MoviePrivate::maxTimeBuffered):
   77398         (WebCore::MoviePrivate::maxTimeSeekable):
   77399         (WebCore::MoviePrivate::maxTimeLoaded):
   77400         (WebCore::MoviePrivate::bytesLoaded):
   77401         (WebCore::MoviePrivate::totalBytesKnown):
   77402         (WebCore::MoviePrivate::totalBytes):
   77403         (WebCore::MoviePrivate::cancelLoad):
   77404         (WebCore::MoviePrivate::updateStates):
   77405         (WebCore::MoviePrivate::loadStateChanged):
   77406         (WebCore::MoviePrivate::rateChanged):
   77407         (WebCore::MoviePrivate::sizeChanged):
   77408         (WebCore::MoviePrivate::timeChanged):
   77409         (WebCore::MoviePrivate::volumeChanged):
   77410         (WebCore::MoviePrivate::didEnd):
   77411         (WebCore::MoviePrivate::setRect):
   77412         (WebCore::MoviePrivate::setVisible):
   77413         (WebCore::MoviePrivate::paint):
   77414         (WebCore::MoviePrivate::getSupportedTypes):
   77415         (-[WebCoreMovieObserver loadStateChanged:]):
   77416         (-[WebCoreMovieObserver rateChanged:]):
   77417         (-[WebCoreMovieObserver sizeChanged:]):
   77418         (-[WebCoreMovieObserver timeChanged:]):
   77419         (-[WebCoreMovieObserver volumeChanged:]):
   77420         (-[WebCoreMovieObserver didEnd:]):
   77421         (-[WebCoreMovieObserver setCallback:WebCore::]):
   77422         * platform/mac/WebCoreSystemInterface.h:
   77423         * platform/mac/WebCoreSystemInterface.mm:
   77424         * rendering/RenderLayer.cpp:
   77425         (WebCore::RenderLayer::collectLayers):
   77426         * rendering/RenderVideo.cpp: Added.
   77427         (WebCore::RenderVideo::RenderVideo):
   77428         (WebCore::RenderVideo::~RenderVideo):
   77429         (WebCore::RenderVideo::movie):
   77430         (WebCore::RenderVideo::videoSizeChanged):
   77431         (WebCore::RenderVideo::paint):
   77432         (WebCore::RenderVideo::layout):
   77433         (WebCore::RenderVideo::updateFromElement):
   77434         (WebCore::RenderVideo::updateMovie):
   77435         (WebCore::RenderVideo::isWidthSpecified):
   77436         (WebCore::RenderVideo::isHeightSpecified):
   77437         (WebCore::RenderVideo::calcReplacedWidth):
   77438         (WebCore::RenderVideo::calcReplacedHeight):
   77439         (WebCore::RenderVideo::calcAspectRatioWidth):
   77440         (WebCore::RenderVideo::calcAspectRatioHeight):
   77441         (WebCore::RenderVideo::calcPrefWidths):
   77442         * rendering/RenderVideo.h: Added.
   77443         (WebCore::RenderVideo::renderName):
   77444 
   77445 2007-10-30  Sam Weinig  <sam (a] webkit.org>
   77446 
   77447         Reviewed by Adam Roben.
   77448 
   77449         Add Interface and Class UUIDs to the IDLs in preparation of adding
   77450         autogeneration of the COM DOM bindings.
   77451 
   77452         * bindings/scripts/IDLParser.pm: Relax parsing rules to allow newlines as whitespace.
   77453         * css/CSSCharsetRule.idl:
   77454         * css/CSSFontFaceRule.idl:
   77455         * css/CSSImportRule.idl:
   77456         * css/CSSMediaRule.idl:
   77457         * css/CSSPageRule.idl:
   77458         * css/CSSPrimitiveValue.idl:
   77459         * css/CSSRule.idl:
   77460         * css/CSSRuleList.idl:
   77461         * css/CSSStyleDeclaration.idl:
   77462         * css/CSSStyleRule.idl:
   77463         * css/CSSStyleSheet.idl:
   77464         * css/CSSUnknownRule.idl:
   77465         * css/CSSValue.idl:
   77466         * css/CSSValueList.idl:
   77467         * css/Counter.idl:
   77468         * css/MediaList.idl:
   77469         * css/RGBColor.idl:
   77470         * css/Rect.idl:
   77471         * css/StyleSheet.idl:
   77472         * css/StyleSheetList.idl:
   77473         * dom/Attr.idl:
   77474         * dom/CDATASection.idl:
   77475         * dom/CharacterData.idl:
   77476         * dom/Comment.idl:
   77477         * dom/DOMImplementation.idl:
   77478         * dom/Document.idl:
   77479         * dom/DocumentFragment.idl:
   77480         * dom/DocumentType.idl:
   77481         * dom/Element.idl:
   77482         * dom/Entity.idl:
   77483         * dom/EntityReference.idl:
   77484         * dom/Event.idl:
   77485         * dom/EventListener.idl:
   77486         * dom/EventTarget.idl:
   77487         * dom/NamedNodeMap.idl:
   77488         * dom/Node.idl:
   77489         * dom/NodeList.idl:
   77490         * dom/Notation.idl:
   77491         * dom/ProcessingInstruction.idl:
   77492         * dom/Text.idl:
   77493         * html/CanvasGradient.idl:
   77494         * html/CanvasPattern.idl:
   77495         * html/CanvasRenderingContext2D.idl:
   77496         * html/HTMLAnchorElement.idl:
   77497         * html/HTMLAppletElement.idl:
   77498         * html/HTMLAreaElement.idl:
   77499         * html/HTMLBRElement.idl:
   77500         * html/HTMLBaseElement.idl:
   77501         * html/HTMLBaseFontElement.idl:
   77502         * html/HTMLBlockquoteElement.idl:
   77503         * html/HTMLBodyElement.idl:
   77504         * html/HTMLButtonElement.idl:
   77505         * html/HTMLCanvasElement.idl:
   77506         * html/HTMLCollection.idl:
   77507         * html/HTMLDListElement.idl:
   77508         * html/HTMLDirectoryElement.idl:
   77509         * html/HTMLDivElement.idl:
   77510         * html/HTMLDocument.idl:
   77511         * html/HTMLElement.idl:
   77512         * html/HTMLEmbedElement.idl:
   77513         * html/HTMLFieldSetElement.idl:
   77514         * html/HTMLFontElement.idl:
   77515         * html/HTMLFormElement.idl:
   77516         * html/HTMLFrameElement.idl:
   77517         * html/HTMLFrameSetElement.idl:
   77518         * html/HTMLHRElement.idl:
   77519         * html/HTMLHeadElement.idl:
   77520         * html/HTMLHeadingElement.idl:
   77521         * html/HTMLHtmlElement.idl:
   77522         * html/HTMLIFrameElement.idl:
   77523         * html/HTMLImageElement.idl:
   77524         * html/HTMLInputElement.idl:
   77525         * html/HTMLIsIndexElement.idl:
   77526         * html/HTMLLIElement.idl:
   77527         * html/HTMLLabelElement.idl:
   77528         * html/HTMLLegendElement.idl:
   77529         * html/HTMLLinkElement.idl:
   77530         * html/HTMLMapElement.idl:
   77531         * html/HTMLMarqueeElement.idl:
   77532         * html/HTMLMenuElement.idl:
   77533         * html/HTMLMetaElement.idl:
   77534         * html/HTMLModElement.idl:
   77535         * html/HTMLOListElement.idl:
   77536         * html/HTMLObjectElement.idl:
   77537         * html/HTMLOptGroupElement.idl:
   77538         * html/HTMLOptionElement.idl:
   77539         * html/HTMLOptionsCollection.idl:
   77540         * html/HTMLParagraphElement.idl:
   77541         * html/HTMLParamElement.idl:
   77542         * html/HTMLPreElement.idl:
   77543         * html/HTMLQuoteElement.idl:
   77544         * html/HTMLScriptElement.idl:
   77545         * html/HTMLSelectElement.idl:
   77546         * html/HTMLStyleElement.idl:
   77547         * html/HTMLTableCaptionElement.idl:
   77548         * html/HTMLTableCellElement.idl:
   77549         * html/HTMLTableColElement.idl:
   77550         * html/HTMLTableElement.idl:
   77551         * html/HTMLTableRowElement.idl:
   77552         * html/HTMLTableSectionElement.idl:
   77553         * html/HTMLTextAreaElement.idl:
   77554         * html/HTMLTitleElement.idl:
   77555         * html/HTMLUListElement.idl:
   77556 
   77557 2007-10-30  Adele Peterson  <adele (a] apple.com>
   77558 
   77559         RS by Darin.
   77560 
   77561         * page/AnimationController.cpp: (WebCore::blendFunc): Use lround instead of round.
   77562 
   77563 2007-10-29  Timothy Hatcher  <timothy (a] apple.com>
   77564 
   77565         Reviewed by John Sullivan.
   77566 
   77567         - Allow showing and closing the inspector programatically.
   77568         - Add showConsole() and showTimeline() methods. 
   77569 
   77570         * WebCore.base.exp: Add exports for WebKit.
   77571         * page/InspectorController.cpp:
   77572         (WebCore::callSimpleFunction): Renamed from callClearFunction().
   77573         (WebCore::unloading): Renamed to close().
   77574         (WebCore::InspectorController::InspectorController):
   77575         (WebCore::InspectorController::inspect): Moved showing code to show().
   77576         (WebCore::InspectorController::setWindowVisible): Show the timeline or console if needed.
   77577         (WebCore::InspectorController::show): Code factored out of inspect().
   77578         (WebCore::InspectorController::showConsole): Call show() and the JS showConsole().
   77579         (WebCore::InspectorController::showTimeline): Call show() and the JS showTimeline().
   77580         (WebCore::InspectorController::close):
   77581         (WebCore::InspectorController::clearScriptResources): Call the new callSimpleFunction.
   77582         (WebCore::InspectorController::clearDatabaseScriptResources): Ditto.
   77583         (WebCore::InspectorController::clearScriptConsoleMessages): Ditto.
   77584         (WebCore::InspectorController::clearNetworkTimeline): Ditto.
   77585         * page/InspectorController.h: Add and rename methods.
   77586         * page/inspector/inspector.js: Add showConsole() and showTimeline().
   77587 
   77588 2007-10-30  Adele Peterson  <adele (a] apple.com>
   77589 
   77590         Reviewed by Sam.
   77591 
   77592         Build fix.
   77593 
   77594         * page/AnimationController.cpp: (WebCore::blendFunc):
   77595 
   77596 2007-10-30  Adele Peterson  <adele (a] apple.com>
   77597 
   77598         Reviewed by Darin.
   77599 
   77600         WebCore part of fix for http://bugs.webkit.org/show_bug.cgi?id=10577
   77601         <rdar://problem/5103625> REGRESSION: Caps lock icon should show in password fields
   77602 
   77603         Test: manual-tests/password-caps-lock.html
   77604 
   77605         * WebCore.base.exp: Added symbol for capsLockStateMayHaveChanged.
   77606 
   77607         * page/Frame.cpp: (WebCore::Frame::setIsActive): Calls capsLockStateMayHaveChanged.
   77608         * page/EventHandler.cpp: (WebCore::EventHandler::capsLockStateMayHaveChanged): Added. Tells the focused node's renderer that the capsLockStateMayHaveChanged.
   77609         * page/EventHandler.h:
   77610 
   77611         * platform/PlatformKeyboardEvent.h:
   77612         * platform/mac/KeyEventMac.mm: (WebCore::PlatformKeyboardEvent::currentCapsLockState): Added.
   77613         * platform/win/KeyEventWin.cpp: (WebCore::PlatformKeyboardEvent::currentCapsLockState): Added.
   77614 
   77615         * rendering/RenderTextControl.cpp:
   77616         (WebCore::RenderTextControl::RenderTextControl):
   77617         (WebCore::RenderTextControl::paint): Added.  If m_shouldDrawCapsLockIndicator is true, paints the caps lock indicator after the background.
   77618         (WebCore::RenderTextControl::forwardEvent): When the control gets and loses focus, update the caps lock state.
   77619         (WebCore::RenderTextControl::capsLockStateMayHaveChanged): Added. Updates m_shouldDrawCapsLockIndicator, which is true if the field is a password field, 
   77620          and the frame is active, and the element is focused, and the caps lock is on.  Causes a repaint when m_shouldDrawCapsLockIndicator changes state.
   77621         * rendering/RenderTextControl.h: Added m_shouldDrawCapsLockIndicator.
   77622         * rendering/RenderObject.h: (WebCore::RenderObject::capsLockStateMayHaveChanged): Added.
   77623 
   77624         * rendering/RenderTheme.h: (WebCore::RenderTheme::paintCapsLockIndicator): Added.
   77625         * rendering/RenderThemeMac.h:
   77626         * rendering/RenderThemeMac.mm: (WebCore::RenderThemeMac::paintCapsLockIndicator): Added.  Calls wkDrawCapsLockIndicator.
   77627         * rendering/RenderThemeSafari.cpp: (WebCore::RenderThemeSafari::paintCapsLockIndicator): Added.  Calls paintThemePart for the CapsLockPart.
   77628         * rendering/RenderThemeSafari.h:
   77629 
   77630 2007-10-30  David Hyatt  <hyatt (a] apple.com>
   77631 
   77632         Land support for implicit animation in CSS.
   77633 
   77634         Reviewed by mitz, darin
   77635 
   77636         * css/CSSParser.cpp:
   77637         (WebCore::CSSParser::parseTimingFunctionValue):
   77638         (WebCore::CSSParser::parseTransitionTimingFunction):
   77639         (WebCore::CSSParser::parseTransitionProperty):
   77640         * css/CSSStyleSelector.cpp:
   77641         (WebCore::CSSStyleSelector::mapTransitionDuration):
   77642         (WebCore::CSSStyleSelector::mapTransitionRepeatCount):
   77643         (WebCore::CSSStyleSelector::mapTransitionTimingFunction):
   77644         (WebCore::CSSStyleSelector::mapTransitionProperty):
   77645         * css/CSSTimingFunctionValue.h:
   77646         (WebCore::CSSTimingFunctionValue::CSSTimingFunctionValue):
   77647         (WebCore::CSSTimingFunctionValue::x1):
   77648         (WebCore::CSSTimingFunctionValue::y1):
   77649         (WebCore::CSSTimingFunctionValue::x2):
   77650         (WebCore::CSSTimingFunctionValue::y2):
   77651         * dom/Element.cpp:
   77652         (WebCore::Element::styleForRenderer):
   77653         (WebCore::Element::createRenderer):
   77654         * dom/Node.cpp:
   77655         (WebCore::Node::createRendererIfNeeded):
   77656         (WebCore::Node::setRenderStyle):
   77657         * page/AnimationController.cpp:
   77658         (WebCore::CurveData::CurveData):
   77659         (WebCore::CurveData::sampleCurveX):
   77660         (WebCore::CurveData::sampleCurveY):
   77661         (WebCore::CurveData::sampleCurveDerivativeX):
   77662         (WebCore::CurveData::solveCurveX):
   77663         (WebCore::solveEpsilon):
   77664         (WebCore::solveCubicBezierFunction):
   77665         (WebCore::ImplicitAnimation::finished):
   77666         (WebCore::CompositeImplicitAnimation::~CompositeImplicitAnimation):
   77667         (WebCore::CompositeImplicitAnimation::hasAnimationForProperty):
   77668         (WebCore::ImplicitAnimation::ImplicitAnimation):
   77669         (WebCore::ImplicitAnimation::~ImplicitAnimation):
   77670         (WebCore::ImplicitAnimation::reset):
   77671         (WebCore::ImplicitAnimation::progress):
   77672         (WebCore::blendFunc):
   77673         (WebCore::ImplicitAnimation::animate):
   77674         (WebCore::CompositeImplicitAnimation::animate):
   77675         (WebCore::CompositeImplicitAnimation::animating):
   77676         (WebCore::CompositeImplicitAnimation::reset):
   77677         (WebCore::AnimationControllerPrivate::hasImplicitAnimations):
   77678         (WebCore::AnimationControllerPrivate::AnimationControllerPrivate):
   77679         (WebCore::AnimationControllerPrivate::~AnimationControllerPrivate):
   77680         (WebCore::AnimationControllerPrivate::get):
   77681         (WebCore::AnimationControllerPrivate::clear):
   77682         (WebCore::AnimationControllerPrivate::updateTimer):
   77683         (WebCore::AnimationControllerPrivate::timerFired):
   77684         (WebCore:::m_data):
   77685         (WebCore::AnimationController::~AnimationController):
   77686         (WebCore::AnimationController::cancelImplicitAnimations):
   77687         (WebCore::AnimationController::updateImplicitAnimations):
   77688         (WebCore::AnimationController::suspendAnimations):
   77689         (WebCore::AnimationController::resumeAnimations):
   77690         * page/AnimationController.h:
   77691         * page/Frame.cpp:
   77692         (WebCore::FramePrivate::FramePrivate):
   77693         * rendering/RenderBox.cpp:
   77694         (WebCore::RenderBox::setStyle):
   77695         (WebCore::RenderBox::destroy):
   77696         * rendering/RenderObject.cpp:
   77697         (WebCore::RenderObject::setAnimatableStyle):
   77698         (WebCore::RenderObject::destroy):
   77699         * rendering/RenderObject.h:
   77700         * rendering/RenderStyle.h:
   77701         (WebCore::TimingFunction::TimingFunction):
   77702         (WebCore::TimingFunction::operator==):
   77703         (WebCore::TimingFunction::x1):
   77704         (WebCore::TimingFunction::y1):
   77705         (WebCore::TimingFunction::x2):
   77706         (WebCore::TimingFunction::y2):
   77707         (WebCore::TimingFunction::type):
   77708         (WebCore::Transition::transitionProperty):
   77709         (WebCore::Transition::setTransitionProperty):
   77710         (WebCore::RenderStyle::initialTransitionProperty):
   77711         * rendering/RenderWidget.cpp:
   77712         (WebCore::RenderWidget::destroy):
   77713 
   77714 2007-10-29  Beth Dakin  <bdakin (a] apple.com>
   77715 
   77716         Reviewed by Hyatt.
   77717 
   77718         Fix for <rdar://problem/5399614> anchor tag is not rendered without 
   77719         text content, works in Firefox with CSS background-image (13237)
   77720 
   77721         This patch allows empty inlines that have box decorations or width 
   77722         from border/padding/margin to have line boxes.
   77723 
   77724         * rendering/bidi.cpp:
   77725         (WebCore::inlineFlowAllowsLineBox): Convenience function that 
   77726         defines when we allow an inline flow to have a line box.
   77727         (WebCore::requiresLineBox): Call inlineFlowAllowsLineBox.
   77728         (WebCore::shouldSkipWhitespaceAfterStartObject): New function to 
   77729         merge some shared code between list markers and empty inline flows 
   77730         that fall at the beginning of a line.
   77731         (WebCore::RenderBlock::findNextLineBreak): Make flows more like 
   77732         list markers.
   77733 
   77734         One interesting side effect of this bug appeared in our xhtml/svg 
   77735         tests that generate parser error tags. The tag we generate was 
   77736         actually an empty inline with box decorations. This patch causes 
   77737         those inlines to draw now, and the parser errors looked strange. So 
   77738         I changed it so that the parsererror tag is display:block. This 
   77739         matches Firefox, and I think was the original intent of the tag 
   77740         since that causes its red background and border to show up.
   77741         * dom/XMLTokenizer.cpp:
   77742         (WebCore::createXHTMLParserErrorHeader):
   77743 
   77744 2007-10-29  Dan Bernstein  <mitz (a] apple.com>
   77745 
   77746         Reviewed by Dave Hyatt.
   77747 
   77748         - fix crashing tests fast/frames/inline-object-inside-frameset.html and
   77749           fast/forms/form-hides-table.html
   77750 
   77751         * rendering/RenderBox.cpp:
   77752         (WebCore::RenderBox::destroy):
   77753         * rendering/RenderWidget.cpp:
   77754         (WebCore::RenderWidget::destroy):
   77755 
   77756 2007-10-29  Dan Bernstein  <mitz (a] apple.com>
   77757 
   77758         Reviewed by Adam Roben.
   77759 
   77760         - fix http://bugs.webkit.org/show_bug.cgi?id=15750
   77761           REGRESSION(r27173): Web Inspector freezes beneath Image::drawPattern()
   77762 
   77763         Test: fast/backgrounds/size/zero.html
   77764 
   77765         * platform/graphics/cg/ImageCG.cpp:
   77766         (WebCore::Image::drawPattern): Added an ASSERT and an early return
   77767         to guard against singular pattern transforms.
   77768         * rendering/RenderBox.cpp:
   77769         (WebCore::cacluateBackgroundSize): Changed to ensure a minimum tile
   77770         size of 1x1.
   77771 
   77772 2007-10-29  Alp Toker  <alp (a] atoker.com>
   77773 
   77774         Reviewed by Maciej.
   77775 
   77776         Add GTK+ convenience conversions for various primitives
   77777 
   77778         * WebCore.pro:
   77779         * platform/graphics/Color.h:
   77780         * platform/graphics/IntPoint.h:
   77781         * platform/graphics/IntRect.h:
   77782         * platform/graphics/gtk/ColorGtk.cpp: Added.
   77783         (WebCore::Color::Color):
   77784         * platform/graphics/gtk/IntPointGtk.cpp: Added.
   77785         (WebCore::IntPoint::IntPoint):
   77786         (WebCore::IntPoint::operator GdkPoint):
   77787         * platform/graphics/gtk/IntRectGtk.cpp: Added.
   77788         (WebCore::IntRect::IntRect):
   77789         (WebCore::IntRect::operator GdkRectangle):
   77790 
   77791 2007-10-29  Jon Honeycutt  <jhoneycutt (a] apple.com>
   77792 
   77793         Reviewed by Anders.
   77794 
   77795         Speculative fix for <rdar://5538489> Safari 3.0.4 seed hangs at
   77796         http://tgmonline.futuregamer.it/ (works fine on Safari 2.0.4 and Safari
   77797         Beta for Mac)
   77798         
   77799         I cannot reproduce this hang, but it is likely due to our not limiting
   77800         WM_USER+1 messages or InvalidateRect calls for a plugin with initially-
   77801         unknown MIME type. The embed tag on the page is missing a type
   77802         attribute, so as fallback, we choose to load the Flash plugin based on
   77803         the file extension of "swf." However, we do not record this determined
   77804         MIME type, and so our quirks cannot be established.
   77805         
   77806         Changed findPlugin() so that, if it fails to find a plugin for the
   77807         given MIME type, it will lookup the MIME type for the file extension -
   77808         overwriting its passed MIME type parameter - and search for a plugin
   77809         for that MIME type.
   77810 
   77811         * plugins/win/PluginDatabaseWin.cpp:
   77812         (WebCore::PluginDatabaseWin::pluginForMIMEType): Added an early return
   77813         if the MIME type is empty
   77814         (WebCore::PluginDatabaseWin::MIMETypeForExtension): Added to replace
   77815         pluginForExtension. Returns a String with the MIME type for the file
   77816         extension. Also, changed to use case-insensitive compares
   77817         (WebCore::PluginDatabaseWin::findPlugin): If we fail to find a plugin
   77818         for the given extension, overwrite the incoming MIME type parameter
   77819         with the MIME type for the file extension, and search for a plugin for
   77820         that MIME type. Also, changed the way that the extension is determined
   77821         (WebCore::PluginDatabaseWin::createPluginView): Pass a mutable String
   77822         to findPlugin() so that it can be updated if necessary
   77823         * plugins/win/PluginDatabaseWin.h: Changed findPlugin() to take a non-
   77824         const String, removed definition of pluginForExtension, added
   77825         definition for MIMETypeForExtension
   77826         * plugins/win/PluginPackageWin.cpp: 
   77827         (WebCore::PluginPackageWin::fetchInfo): Store the MIME type in
   77828         lowercase for easier compares
   77829 
   77830 2007-10-29  Andrew Wellington  <proton (a] wiretapped.net>
   77831 
   77832         Not reviewed - build fix
   77833 
   77834         Fix Mac Build.
   77835         
   77836         WebKit/WebCore/xml/XSLTProcessor.cpp:79: warning: 'level' may be used uninitialized
   77837         in this function
   77838 
   77839         * xml/XSLTProcessor.cpp:
   77840         (WebCore::XSLTProcessor::parseErrorFunc):
   77841 
   77842 2007-10-29  Alp Toker  <alp (a] atoker.com>
   77843 
   77844         Reviewed by Adam Roben.
   77845 
   77846         http://bugs.webkit.org/show_bug.cgi?id=15725
   77847         [GTK] WebCore.pro header dependencies are incorrect
   77848 
   77849         Fix header dependencies in the build system
   77850 
   77851         INCLUDEPATH and DEPENDPATH are now up to date.
   77852 
   77853         * WebCore.pro:
   77854 
   77855 2007-10-29  Beth Dakin  <bdakin (a] apple.com>
   77856 
   77857         Build fix.
   77858 
   77859         * css/CSSParser.cpp:
   77860         (WebCore::CSSParser::parseTimingFunctionValue):
   77861         * css/CSSStyleSelector.cpp:
   77862         (WebCore::CSSStyleSelector::mapTransitionTimingFunction):
   77863 
   77864 2007-10-29  David Hyatt  <hyatt (a] apple.com>
   77865 
   77866         Land the back end for CSS animated property transitions.  I am landing this in stages, so the AnimationController
   77867         class is deliberately left empty.
   77868 
   77869         Reviewed by darin/aroben
   77870 
   77871         * WebCore.pro:
   77872         * WebCore.vcproj/WebCore.vcproj:
   77873         * WebCore.xcodeproj/project.pbxproj:
   77874         * css/CSSComputedStyleDeclaration.cpp:
   77875         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
   77876         * css/CSSPropertyNames.in:
   77877         * css/CSSTimingFunctionValue.cpp: Added.
   77878         (WebCore::CSSTimingFunctionValue::cssText):
   77879         * css/CSSTimingFunctionValue.h: Added.
   77880         (WebCore::CSSTimingFunctionValue::CSSTimingFunctionValue):
   77881         (WebCore::CSSTimingFunctionValue::firstPoint):
   77882         (WebCore::CSSTimingFunctionValue::secondPoint):
   77883         * css/CSSValueKeywords.in:
   77884         * history/CachedPage.cpp:
   77885         (WebCore::CachedPage::restore):
   77886         * page/AnimationController.cpp: Added.
   77887         (WebCore::AnimationController::AnimationController):
   77888         (WebCore::AnimationController::~AnimationController):
   77889         (WebCore::AnimationController::cancelTransitions):
   77890         (WebCore::AnimationController::updateTransitions):
   77891         (WebCore::AnimationController::suspendAnimations):
   77892         (WebCore::AnimationController::resumeAnimations):
   77893         * page/AnimationController.h: Added.
   77894         * page/Frame.cpp:
   77895         (WebCore::Frame::animationController):
   77896         (WebCore::Frame::clearTimers):
   77897         * page/Frame.h:
   77898         * page/FramePrivate.h:
   77899         * rendering/RenderBox.cpp:
   77900         (WebCore::RenderBox::setStyle):
   77901         (WebCore::RenderBox::destroy):
   77902         * rendering/RenderObject.cpp:
   77903         (WebCore::RenderObject::animationController):
   77904         * rendering/RenderObject.h:
   77905         * rendering/RenderStyle.cpp:
   77906         (WebCore::Transition::Transition):
   77907         (WebCore::Transition::~Transition):
   77908         (WebCore::Transition::operator=):
   77909         (WebCore::Transition::operator==):
   77910         (WebCore::Transition::fillUnsetProperties):
   77911         (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
   77912         (WebCore::StyleRareNonInheritedData::~StyleRareNonInheritedData):
   77913         (WebCore::StyleRareNonInheritedData::operator==):
   77914         (WebCore::StyleRareNonInheritedData::transitionDataEquivalent):
   77915         (WebCore::RenderStyle::diff):
   77916         (WebCore::RenderStyle::adjustTransitions):
   77917         (WebCore::RenderStyle::accessTransitions):
   77918         * rendering/RenderStyle.h:
   77919         (WebCore::BackgroundLayer::next):
   77920         (WebCore::TimingFunction::TimingFunction):
   77921         (WebCore::TimingFunction::operator==):
   77922         (WebCore::Transition::next):
   77923         (WebCore::Transition::isTransitionDurationSet):
   77924         (WebCore::Transition::isTransitionRepeatCountSet):
   77925         (WebCore::Transition::isTransitionTimingFunctionSet):
   77926         (WebCore::Transition::isTransitionPropertySet):
   77927         (WebCore::Transition::isEmpty):
   77928         (WebCore::Transition::clearTransitionDuration):
   77929         (WebCore::Transition::clearTransitionRepeatCount):
   77930         (WebCore::Transition::clearTransitionTimingFunction):
   77931         (WebCore::Transition::clearTransitionProperty):
   77932         (WebCore::Transition::transitionDuration):
   77933         (WebCore::Transition::transitionRepeatCount):
   77934         (WebCore::Transition::transitionTimingFunction):
   77935         (WebCore::Transition::transitionProperty):
   77936         (WebCore::Transition::setTransitionDuration):
   77937         (WebCore::Transition::setTransitionRepeatCount):
   77938         (WebCore::Transition::setTransitionTimingFunction):
   77939         (WebCore::Transition::setTransitionProperty):
   77940         (WebCore::Transition::setNext):
   77941         (WebCore::Transition::operator!=):
   77942         (WebCore::RenderStyle::transitions):
   77943         (WebCore::RenderStyle::clearTransitions):
   77944         (WebCore::RenderStyle::inheritTransitions):
   77945         (WebCore::RenderStyle::initialTransitionDuration):
   77946         (WebCore::RenderStyle::initialTransitionRepeatCount):
   77947         (WebCore::RenderStyle::initialTransitionTimingFunction):
   77948         (WebCore::RenderStyle::initialTransitionProperty):
   77949         * rendering/RenderWidget.cpp:
   77950         (WebCore::RenderWidget::destroy):
   77951 
   77952 2007-10-29  Alexey Proskuryakov  <ap (a] webkit.org>
   77953 
   77954         Reviewed by Darin.
   77955 
   77956         http://bugs.webkit.org/show_bug.cgi?id=6040
   77957         XSLT does not report errors to the user
   77958 
   77959         Made parseErrorFunc a static member function of XSLTProcessor to be reusable from XSLStylesheet.
   77960         Switched to xmlSetStructuredErrorFunc to get an error structure instead of pre-formatted console
   77961         output. Got rid of DeprecatedString in XSLTProcessor.
   77962 
   77963         * dom/Document.cpp:
   77964         (WebCore::Document::applyXSLTransform):
   77965         * xml/XSLStyleSheet.cpp:
   77966         (WebCore::XSLStyleSheet::parseString):
   77967         * xml/XSLTProcessor.cpp:
   77968         (WebCore::XSLTProcessor::parseErrorFunc):
   77969         (WebCore::docLoaderFunc):
   77970         (WebCore::setXSLTLoadCallBack):
   77971         (WebCore::writeToString):
   77972         (WebCore::saveResultToString):
   77973         (WebCore::transformTextStringToXHTMLDocumentString):
   77974         (WebCore::xsltParamArrayFromParameterMap):
   77975         (WebCore::freeXsltParamArray):
   77976         (WebCore::XSLTProcessor::createDocumentFromSource):
   77977         (WebCore::createFragmentFromSource):
   77978         (WebCore::xsltStylesheetPointer):
   77979         (WebCore::xmlDocPtrFromNode):
   77980         (WebCore::resultMIMEType):
   77981         (WebCore::XSLTProcessor::transformToString):
   77982         (WebCore::XSLTProcessor::transformToDocument):
   77983         (WebCore::XSLTProcessor::transformToFragment):
   77984         * xml/XSLTProcessor.h:
   77985         (WebCore::XSLTProcessor::setXSLStylesheet):
   77986         (WebCore::XSLTProcessor::importStylesheet):
   77987         (WebCore::XSLTProcessor::xslStylesheet):
   77988 
   77989 2007-10-29  Dan Bernstein  <mitz (a] apple.com>
   77990 
   77991         Reviewed by John Sullivan.
   77992 
   77993         - fix <rdar://problem/5424455> REGRESSION (r21168-r21193, Tiger only): Safari scrollbar is clipped at top when loading particular RSS page
   77994 
   77995         Test: fast/repaint/layout-state-only-positioned.html
   77996 
   77997         * rendering/RenderBlock.cpp:
   77998         (WebCore::RenderBlock::layoutOnlyPositionedObjects): Pop layout state
   77999         before updating scroll info, which possibly repaints us.
   78000 
   78001 2007-10-29  David Kilzer  <ddkilzer (a] webkit.org>
   78002 
   78003         REGRESSION (r17701): Favicons should be viewable as image documents
   78004         <http://bugs.webkit.org/show_bug.cgi?id=15640>
   78005 
   78006         Reviewed by Darin.
   78007 
   78008         On Tiger and Leopard, the image/x-icon MIME type is not returned from
   78009         CGImageSourceCopyTypeIdentifiers(), so opening a URL to a favicon caused
   78010         the icon to be downloaded instead being displayed in an image document.
   78011 
   78012         Test: fast/images/favicon-as-image.html
   78013 
   78014         * platform/MIMETypeRegistry.cpp:
   78015         (WebCore::initialiseSupportedImageMIMETypes): Manually add image/x-icon to
   78016         supportedImageMIMETypes and supportedImageResourceMIMETypes.  Also fixed
   78017         comment about the image/bmp MIME type since it applies to both Tiger and
   78018         Leopard.
   78019 
   78020 2007-10-29  Maciej Stachowiak  <mjs (a] apple.com>
   78021 
   78022         Reviewed by Mark.
   78023 
   78024         - fixed assertion failures detected by the new assertions
   78025 
   78026         * bindings/objc/DOMRGBColor.mm:
   78027         (-[DOMRGBColor dealloc]): Clear _internal before calling [super dealloc]
   78028         because it's not a pointer and shouldn't be in the normal wrapper cache.
   78029         * dom/Document.cpp:
   78030         (WebCore::Document::addImageMap): Don't access hashmap if name is null.
   78031         (WebCore::Document::removeImageMap): ditto
   78032         * dom/StyledElement.cpp:
   78033         (WebCore::StyledElement::parseMappedAttribute): Don't claim we have a class
   78034         when the class attribute is empty.
   78035         * platform/TextCodecICU.cpp:
   78036         (WebCore::gbkCallbackEscape): Don't look up 0 code points.
   78037 
   78038 2007-10-28  Alexey Proskuryakov  <ap (a] webkit.org>
   78039 
   78040         Reviewed by Darin.
   78041 
   78042         http://bugs.webkit.org/show_bug.cgi?id=10734
   78043         Made HTMLOptionElement.index read-only, matching IE and DOM standard.
   78044 
   78045         Test: fast/dom/HTMLOptionElement/set-option-index-text.html
   78046 
   78047         * html/HTMLOptionElement.idl: Marked index as readonly.
   78048 
   78049         * html/HTMLOptionElement.cpp:
   78050         * html/HTMLOptionElement.h:
   78051         Removed setIndex().
   78052 
   78053 2007-10-28  Eric Seidel  <eric (a] webkit.org>
   78054 
   78055         Reviewed by darin.
   78056 
   78057         Fix leaks on TOT and prevent Path code from logging to console so frequently
   78058 
   78059         * platform/graphics/svg/SVGResourceFilter.h:
   78060         (WebCore::SVGResourceFilterPlatformData::SVGResourceFilterPlatformData):
   78061         (WebCore::SVGResourceFilterPlatformData::~SVGResourceFilterPlatformData):
   78062         * platform/graphics/svg/cg/CgSupport.cpp:
   78063         (WebCore::strokeBoundingBox):
   78064         * platform/graphics/svg/cg/SVGResourceFilterCg.mm:
   78065         * platform/graphics/svg/mac/SVGResourceFilterPlatformDataMac.h:
   78066 
   78067 2007-10-28  Mark Rowe  <mrowe (a] apple.com>
   78068 
   78069         Reviewed by Maciej.
   78070 
   78071         Replace uses of isNaN and isInf with isnan and isinf.
   78072 
   78073         * bindings/js/JSHTMLOptionsCollectionCustom.cpp:
   78074         (WebCore::JSHTMLOptionsCollection::setLength):
   78075 
   78076 2007-10-28  Maciej Stachowiak  <mjs (a] apple.com>
   78077 
   78078         Reviewed by Mark.
   78079 
   78080         - fixed REGRESSION(r27176): Reproducible crash while trying to order dinner makes bdash sad
   78081         http://bugs.webkit.org/show_bug.cgi?id=15731
   78082 
   78083         * bindings/js/kjs_window.cpp:
   78084         (KJS::Window::installTimeout): Avoid putting in or accessing empty or deleted keys.
   78085         (KJS::Window::clearTimeout): ditto
   78086         * manual-tests/bad-clearTimeout-crash.html: Added. Automated test not possible.
   78087 
   78088 2007-10-28  Kevin Ollivier  <kevino (a] theolliviers.com>
   78089 
   78090         wx port defines for graphics and network layers.
   78091 
   78092         Reviewed by Darin Adler.
   78093 
   78094         * platform/graphics/AffineTransform.h:
   78095         * platform/graphics/BitmapImage.h:
   78096         * platform/graphics/Color.h:
   78097         * platform/graphics/FloatRect.h:
   78098         * platform/graphics/GraphicsContext.h:
   78099         * platform/graphics/ImageSource.h:
   78100         * platform/graphics/IntPoint.h:
   78101         * platform/graphics/IntRect.h:
   78102         * platform/graphics/Path.h:
   78103         * platform/graphics/Pen.h:
   78104         * platform/network/ResourceHandle.h:
   78105 
   78106 
   78107 2007-10-28  Alp Toker  <alp (a] atoker.com>
   78108 
   78109         Reviewed by Anders Carlsson.
   78110 
   78111         http://bugs.webkit.org/show_bug.cgi?id=14124
   78112         [CURL] Support data URLs
   78113 
   78114         Add data URL support (both Base64 and percent-encoded formats).
   78115 
   78116         Inspired by code from the Qt port.
   78117 
   78118         * platform/Base64.cpp:
   78119         (WebCore::base64Decode):
   78120         * platform/Base64.h:
   78121         * platform/network/curl/ResourceHandleManager.cpp:
   78122         (WebCore::ResourceHandleManager::startScheduledJobs):
   78123         (WebCore::parseDataUrl):
   78124 
   78125 2007-10-28  Alp Toker  <alp (a] atoker.com>
   78126 
   78127         Reviewed by Adam Roben.
   78128 
   78129         http://bugs.webkit.org/show_bug.cgi?id=15701
   78130         The curl http backend does not deal properly with redirects
   78131 
   78132         Implement http redirect support.
   78133 
   78134         * platform/network/curl/ResourceHandleManager.cpp:
   78135         (WebCore::headerCallback):
   78136 
   78137 2007-10-28  Kevin Ollivier  <kevino (a] theolliviers.com>
   78138 
   78139         Define types and accessors needed for wx implementation
   78140         of platform classes. Also, turn off DisallowCTypes.h because
   78141         disallowed methods appear in wx headers.
   78142 
   78143         Reviewed by Adam Roben.
   78144 
   78145         * config.h:
   78146         * platform/ContextMenuItem.h:
   78147         * platform/Cursor.h:
   78148         * platform/DeprecatedString.h:
   78149         * platform/DragData.h:
   78150         * platform/DragImage.h:
   78151         * platform/FontData.h:
   78152         (WebCore::FontData::getWxFont):
   78153         * platform/GlyphBuffer.h:
   78154         (WebCore::GlyphBuffer::glyphAt):
   78155         (WebCore::GlyphBuffer::advanceAt):
   78156         (WebCore::GlyphBuffer::add):
   78157         * platform/PlatformKeyboardEvent.h:
   78158         (WebCore::PlatformKeyboardEvent::isWxCharEvent):
   78159         * platform/PlatformMenuDescription.h:
   78160         * platform/PlatformMouseEvent.h:
   78161         * platform/PlatformString.h:
   78162         * platform/PlatformWheelEvent.h:
   78163         * platform/ScrollView.h:
   78164         * platform/Widget.h:
   78165         * platform/image-decoders/bmp/BMPImageDecoder.cpp:
   78166         * platform/image-decoders/gif/GIFImageDecoder.cpp:
   78167         * platform/image-decoders/gif/GIFImageReader.cpp:
   78168         * platform/image-decoders/ico/ICOImageDecoder.cpp:
   78169         * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
   78170         * platform/image-decoders/png/PNGImageDecoder.cpp:
   78171         * platform/image-decoders/xbm/XBMImageDecoder.cpp:
   78172 
   78173 2007-10-28  Mark Rowe  <mrowe (a] apple.com>
   78174 
   78175         We don't include "config.h" in headers.
   78176 
   78177         * dom/XMLTokenizer.h:
   78178         * platform/graphics/svg/SVGResourceFilter.h:
   78179         * platform/image-decoders/ImageDecoder.h:
   78180         * platform/wx/FontPlatformData.h:
   78181 
   78182 2007-10-28  Darin Adler  <darin (a] apple.com>
   78183 
   78184         * platform/graphics/svg/mac/SVGResourceFilterPlatformDataMac.h:
   78185         We don't include "config.h" in headers. Hope this desn't break
   78186         the non-SVG build again.
   78187 
   78188 2007-10-28  Eric Seidel  <eric (a] webkit.org>
   78189 
   78190         Build fix for non-SVG build, no review.
   78191 
   78192         * platform/graphics/svg/mac/SVGResourceFilterPlatformDataMac.h:
   78193         * platform/graphics/svg/mac/SVGResourceFilterPlatformDataMac.mm:
   78194 
   78195 2007-10-28  Eric Seidel  <eric (a] webkit.org>
   78196 
   78197         Reviewed by Oliver.
   78198 
   78199         Push SVGResourceFilter platform specific data down into m_platformData
   78200         in preparation for implementing a non-mac filter solution.
   78201         
   78202         Also update a very old email address in copyright headers
   78203 
   78204         * WebCore.xcodeproj/project.pbxproj:
   78205         * platform/graphics/FloatPoint3D.cpp:
   78206         (WebCore::FloatPoint3D::FloatPoint3D):
   78207         * platform/graphics/FloatPoint3D.h:
   78208         * platform/graphics/svg/SVGResourceFilter.cpp:
   78209         (WebCore::SVGResourceFilter::SVGResourceFilter):
   78210         * platform/graphics/svg/SVGResourceFilter.h:
   78211         (WebCore::SVGResourceFilter::platformData):
   78212         (WebCore::SVGResourceFilter::effects):
   78213         * platform/graphics/svg/cg/SVGResourceFilterCg.mm:
   78214         (WebCore::SVGResourceFilter::createPlatformData):l
   78215         (WebCore::SVGResourceFilter::prepareFilter):
   78216         (WebCore::SVGResourceFilter::applyFilter):
   78217         * platform/graphics/svg/filters/SVGDistantLightSource.h:
   78218         * platform/graphics/svg/filters/SVGFEBlend.cpp:
   78219         * platform/graphics/svg/filters/SVGFEBlend.h:
   78220         * platform/graphics/svg/filters/SVGFEColorMatrix.cpp:
   78221         * platform/graphics/svg/filters/SVGFEColorMatrix.h:
   78222         * platform/graphics/svg/filters/SVGFEComponentTransfer.cpp:
   78223         * platform/graphics/svg/filters/SVGFEComponentTransfer.h:
   78224         * platform/graphics/svg/filters/SVGFEComposite.cpp:
   78225         * platform/graphics/svg/filters/SVGFEComposite.h:
   78226         * platform/graphics/svg/filters/SVGFEConvolveMatrix.cpp:
   78227         * platform/graphics/svg/filters/SVGFEConvolveMatrix.h:
   78228         * platform/graphics/svg/filters/SVGFEDiffuseLighting.cpp:
   78229         * platform/graphics/svg/filters/SVGFEDiffuseLighting.h:
   78230         * platform/graphics/svg/filters/SVGFEDisplacementMap.cpp:
   78231         * platform/graphics/svg/filters/SVGFEDisplacementMap.h:
   78232         * platform/graphics/svg/filters/SVGFEFlood.cpp:
   78233         * platform/graphics/svg/filters/SVGFEFlood.h:
   78234         * platform/graphics/svg/filters/SVGFEGaussianBlur.cpp:
   78235         * platform/graphics/svg/filters/SVGFEGaussianBlur.h:
   78236         * platform/graphics/svg/filters/SVGFEImage.cpp:
   78237         * platform/graphics/svg/filters/SVGFEImage.h:
   78238         * platform/graphics/svg/filters/SVGFEMerge.cpp:
   78239         * platform/graphics/svg/filters/SVGFEMerge.h:
   78240         * platform/graphics/svg/filters/SVGFEMorphology.cpp:
   78241         * platform/graphics/svg/filters/SVGFEMorphology.h:
   78242         * platform/graphics/svg/filters/SVGFEOffset.cpp:
   78243         * platform/graphics/svg/filters/SVGFEOffset.h:
   78244         * platform/graphics/svg/filters/SVGFESpecularLighting.cpp:
   78245         * platform/graphics/svg/filters/SVGFESpecularLighting.h:
   78246         * platform/graphics/svg/filters/SVGFETile.h:
   78247         * platform/graphics/svg/filters/SVGFETurbulence.cpp:
   78248         * platform/graphics/svg/filters/SVGFETurbulence.h:
   78249         * platform/graphics/svg/filters/SVGFilterEffect.cpp:
   78250         * platform/graphics/svg/filters/SVGFilterEffect.h:
   78251         * platform/graphics/svg/filters/SVGLightSource.cpp:
   78252         * platform/graphics/svg/filters/SVGLightSource.h:
   78253         * platform/graphics/svg/filters/SVGPointLightSource.h:
   78254         * platform/graphics/svg/filters/SVGSpotLightSource.h:
   78255         * platform/graphics/svg/filters/cg/SVGFEBlendCg.mm:
   78256         (WebCore::SVGFEBlend::getCIFilter):
   78257         * platform/graphics/svg/filters/cg/SVGFEColorMatrixCg.mm:
   78258         (WebCore::SVGFEColorMatrix::getCIFilter):
   78259         * platform/graphics/svg/filters/cg/SVGFEComponentTransferCg.mm:
   78260         (WebCore::SVGFEComponentTransfer::getCIFilter):
   78261         * platform/graphics/svg/filters/cg/SVGFECompositeCg.mm:
   78262         (WebCore::SVGFEComposite::getCIFilter):
   78263         * platform/graphics/svg/filters/cg/SVGFEDiffuseLightingCg.mm:
   78264         (WebCore::SVGFEDiffuseLighting::getCIFilter):
   78265         * platform/graphics/svg/filters/cg/SVGFEDisplacementMapCg.mm:
   78266         (WebCore::SVGFEDisplacementMap::getCIFilter):
   78267         * platform/graphics/svg/filters/cg/SVGFEFloodCg.mm:
   78268         (WebCore::SVGFEFlood::getCIFilter):
   78269         * platform/graphics/svg/filters/cg/SVGFEHelpersCg.h:
   78270         * platform/graphics/svg/filters/cg/SVGFEImageCg.mm:
   78271         (WebCore::SVGFEImage::getCIFilter):
   78272         * platform/graphics/svg/filters/cg/SVGFEMergeCg.mm:
   78273         (WebCore::SVGFEMerge::getCIFilter):
   78274         * platform/graphics/svg/filters/cg/SVGFESpecularLightingCg.mm:
   78275         (WebCore::SVGFESpecularLighting::getCIFilter):
   78276         * platform/graphics/svg/mac: Added.
   78277         * platform/graphics/svg/mac/SVGResourceFilterPlatformDataMac.h: Added.
   78278         * platform/graphics/svg/mac/SVGResourceFilterPlatformDataMac.mm: Added.
   78279         (WebCore::SVGResourceFilterPlatformDataMac::SVGResourceFilterPlatformDataMac):
   78280         (WebCore::SVGResourceFilterPlatformDataMac::~SVGResourceFilterPlatformDataMac):
   78281         (WebCore::SVGResourceFilterPlatformDataMac::getCIFilterStack):
   78282         (WebCore::alphaImageForImage):
   78283         (WebCore::SVGResourceFilterPlatformDataMac::imageForName):
   78284         (WebCore::SVGResourceFilterPlatformDataMac::setImageForName):
   78285         (WebCore::SVGResourceFilterPlatformDataMac::setOutputImage):
   78286         (WebCore::SVGResourceFilterPlatformDataMac::inputImage):
   78287 
   78288 2007-10-28  Alexey Proskuryakov  <ap (a] webkit.org>
   78289 
   78290         Reviewed by Adam Roben.
   78291 
   78292         http://bugs.webkit.org/show_bug.cgi?id=15217
   78293         Plugin complains that xpcom_core.dll missing
   78294 
   78295         * plugins/win/PluginDatabaseWin.cpp:
   78296         (WebCore::PluginDatabaseWin::isPluginBlacklisted): Blacklist npmozax.dll.
   78297 
   78298 2007-10-28  Timothy Hatcher  <timothy (a] apple.com>
   78299 
   78300         Reviewed by Adam.
   78301 
   78302         Pass the Document's domain to InspectorController:didOpenDatabase. This matches
   78303         what the Inspector shows for other resources.
   78304 
   78305         * storage/Database.cpp:
   78306         (WebCore::Database::openDatabase):
   78307 
   78308         * dom/Document.h: Remove KURL.h, no longer needed.
   78309 
   78310 2007-10-28  Timothy Hatcher  <timothy (a] apple.com>
   78311 
   78312         Reviewed by Adam.
   78313 
   78314         Bug 15728: Selected Resource background image gradient has banding
   78315         http://bugs.webkit.org/show_bug.cgi?id=15728
   78316 
   78317         - Reduced images to 1px wide that are tiled horizontally in CSS.
   78318         - Corrected the -webkit-background-size usage to specify auto for the width.
   78319 
   78320         * page/inspector/Images/attachedShadow.png:
   78321         * page/inspector/Images/bottomShadow.png:
   78322         * page/inspector/Images/darkShadow.png:
   78323         * page/inspector/Images/gradient.png:
   78324         * page/inspector/Images/gradientHighlight.png:
   78325         * page/inspector/Images/gradientHighlightBottom.png:
   78326         * page/inspector/Images/sidebarSelection.png:
   78327         * page/inspector/Images/sidebarSelectionBlurred.png:
   78328         * page/inspector/Images/sidebarSelectionBlurredTall.png:
   78329         * page/inspector/Images/sidebarSelectionGray.png:
   78330         * page/inspector/Images/sidebarSelectionGrayTall.png:
   78331         * page/inspector/Images/sidebarSelectionTall.png:
   78332         * page/inspector/inspector.css:
   78333 
   78334 2007-10-27  Timothy Hatcher  <timothy (a] apple.com>
   78335 
   78336         Reviewed by Adam.
   78337 
   78338         Bug 15727: Resizing the resource sidebar doesn't scale the font preview or network timeline
   78339         http://bugs.webkit.org/show_bug.cgi?id=15727
   78340 
   78341         Add one window resize listener and call the new resize function on the currentPanel.
   78342         Also call the currentPanel's resize function when resizing the sidebar.
   78343 
   78344         * page/inspector/DocumentPanel.js: Implement resize and call updateTreeSelection() when
   78345           the panel is shown and when resizing the DOM sidebar.
   78346         * page/inspector/FontPanel.js: Implement resize.
   78347         * page/inspector/NetworkPanel.js: Ditto.
   78348         * page/inspector/inspector.js: Add a window resize listener.
   78349 
   78350 2007-10-27  Maciej Stachowiak  <mjs (a] apple.com>
   78351 
   78352         Reviewed by Oliver.
   78353         
   78354         - update for HashTable changes
   78355 
   78356         * bindings/js/JSSVGPODTypeWrapper.h:
   78357         * dom/Document.h:
   78358         * dom/QualifiedName.cpp:
   78359         * dom/StyledElement.cpp:
   78360         * ksvg2/svg/SVGAnimatedTemplate.h:
   78361         * platform/FontCache.cpp:
   78362         * platform/StringHash.h:
   78363         (WTF::):
   78364         * platform/TextEncodingRegistry.cpp:
   78365         * platform/graphics/IntSizeHash.h:
   78366         (WTF::):
   78367         * plugins/win/PluginPackageWin.h:
   78368 
   78369 2007-10-28  Alp Toker  <alp (a] atoker.com>
   78370 
   78371         Reviewed by Adam Roben.
   78372 
   78373         http://bugs.webkit.org/show_bug.cgi?id=15646
   78374         [GTK] caretBlinkFrequency is hard-coded in Frame.cpp
   78375 
   78376         Abstract caretBlinkFrequency to RenderTheme.
   78377 
   78378         * page/Frame.cpp:
   78379         (WebCore::Frame::selectionLayoutChanged):
   78380         * platform/gtk/RenderThemeGtk.cpp:
   78381         (WebCore::RenderThemeGtk::caretShouldBlink):
   78382         (WebCore::RenderThemeGtk::caretBlinkFrequency):
   78383         * platform/gtk/RenderThemeGtk.h:
   78384         * rendering/RenderTheme.h:
   78385 
   78386 2007-10-27  Timothy Hatcher  <timothy (a] apple.com>
   78387 
   78388         Reviewed by Adam.
   78389 
   78390         Don't print the line number in the Inspector Console if it is Zero.
   78391 
   78392         * page/inspector/ConsolePanel.js:
   78393 
   78394 2007-10-27  Sam Weinig  <sam (a] webkit.org>
   78395 
   78396         Reviewed by Adam Roben.
   78397 
   78398         Fix http://bugs.webkit.org/show_bug.cgi?id=14953
   78399         Implement window.console in WebCore
   78400 
   78401         - Adds a window.console object that has 4 methods (log, info, warn, and error)
   78402           that send messages to the Chrome.  This moves functionality that was in the
   78403           app down into WebCore.
   78404 
   78405         * DerivedSources.make:
   78406         * WebCore.pro:
   78407         * WebCore.vcproj/WebCore.vcproj:
   78408         * WebCore.xcodeproj/project.pbxproj:
   78409         * bindings/scripts/CodeGeneratorJS.pm: Add extended attribute
   78410         to mark attributes as [Replacable] which indicates they can 
   78411         overridden when set.
   78412         * page/Chrome.cpp:
   78413         (WebCore::Chrome::addMessageToConsole): Allow all messages to go
   78414         up to the ChromeClient.
   78415         * page/Console.cpp: Added.
   78416         (WebCore::Console::Console):
   78417         (WebCore::Console::disconnectFrame):
   78418         (WebCore::Console::error):
   78419         (WebCore::Console::info):
   78420         (WebCore::Console::log):
   78421         (WebCore::Console::warn):
   78422         * page/Console.h: Added.
   78423         * page/Console.idl: Added.
   78424         * page/DOMWindow.cpp:
   78425         (WebCore::DOMWindow::clear):
   78426         (WebCore::DOMWindow::console):
   78427         * page/DOMWindow.h:
   78428         * page/DOMWindow.idl:
   78429 
   78430 2007-10-27  Eric Seidel  <eric (a] webkit.org>
   78431 
   78432         Reviewed by aroben.
   78433         
   78434         Remove legacy createFilterEffect function (causing extra filter tests to fail on windows)
   78435 
   78436         No functional changes, thus no tests.
   78437 
   78438         * ksvg2/svg/SVGFEBlendElement.cpp:
   78439         (WebCore::SVGFEBlendElement::filterEffect):
   78440         * ksvg2/svg/SVGFEColorMatrixElement.cpp:
   78441         (WebCore::SVGFEColorMatrixElement::filterEffect):
   78442         * ksvg2/svg/SVGFEComponentTransferElement.cpp:
   78443         (WebCore::SVGFEComponentTransferElement::filterEffect):
   78444         * ksvg2/svg/SVGFECompositeElement.cpp:
   78445         (WebCore::SVGFECompositeElement::filterEffect):
   78446         * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
   78447         (WebCore::SVGFEDiffuseLightingElement::filterEffect):
   78448         * ksvg2/svg/SVGFEDisplacementMapElement.cpp:
   78449         (WebCore::SVGFEDisplacementMapElement::filterEffect):
   78450         * ksvg2/svg/SVGFEFloodElement.cpp:
   78451         (WebCore::SVGFEFloodElement::filterEffect):
   78452         * ksvg2/svg/SVGFEGaussianBlurElement.cpp:
   78453         (WebCore::SVGFEGaussianBlurElement::filterEffect):
   78454         * ksvg2/svg/SVGFEImageElement.cpp:
   78455         (WebCore::SVGFEImageElement::filterEffect):
   78456         * ksvg2/svg/SVGFEMergeElement.cpp:
   78457         (WebCore::SVGFEMergeElement::filterEffect):
   78458         * ksvg2/svg/SVGFEOffsetElement.cpp:
   78459         (WebCore::SVGFEOffsetElement::filterEffect):
   78460         * ksvg2/svg/SVGFESpecularLightingElement.cpp:
   78461         (WebCore::SVGFESpecularLightingElement::filterEffect):
   78462         * ksvg2/svg/SVGFETileElement.cpp:
   78463         (WebCore::SVGFETileElement::filterEffect):
   78464         * ksvg2/svg/SVGFETurbulenceElement.cpp:
   78465         (WebCore::SVGFETurbulenceElement::filterEffect):
   78466         * platform/graphics/svg/SVGResourceFilter.h:
   78467         * platform/graphics/svg/cg/SVGResourceFilterCg.cpp:
   78468         * platform/graphics/svg/cg/SVGResourceFilterCg.mm:
   78469         * platform/graphics/svg/qt/SVGResourceFilterQt.cpp:
   78470 
   78471 2007-10-27  Dan Bernstein  <mitz (a] apple.com>
   78472 
   78473         Reviewed by Darin Adler.
   78474 
   78475         - fix a crash when opening Zenoss server history view
   78476           <rdar://problem/5530657>
   78477 
   78478         Test: fast/table/colgroup-relative.html
   78479 
   78480         * rendering/LayoutState.cpp:
   78481         (WebCore::LayoutState::LayoutState): Added a hasLayer() check before
   78482         accessing layer().
   78483 
   78484 2007-10-27  Julien  <julien.chaffraix (a] gmail.com>
   78485 
   78486         Reviewed by Alexey.
   78487 
   78488         http://bugs.webkit.org/show_bug.cgi?id=13141
   78489         XMLHttpRequest should set readyState to 0 after abort()
   78490         
   78491         Test: http/tests/xmlhttprequest/xmlhttprequest-abort-readyState.html
   78492 
   78493         * xml/XMLHttpRequest.cpp:
   78494         (WebCore::XMLHttpRequest::open):
   78495         (WebCore::XMLHttpRequest::abort):
   78496 
   78497 2007-10-27  Dan Bernstein  <mitz (a] apple.com>
   78498 
   78499         Reviewed by Dave Hyatt.
   78500 
   78501         - fix rotated border images by using a temporary subimage containing
   78502           only the part we want to tile
   78503 
   78504         Test: fast/borders/border-image-rotate-transform.html
   78505 
   78506         * platform/graphics/cg/ImageCG.cpp:
   78507         (WebCore::Image::drawPatternCallback):
   78508         (WebCore::Image::drawPattern):
   78509 
   78510 2007-10-27  Jan Michael Alonzo  <jmalonzo (a] unpluggable.com>
   78511 
   78512         Reviewed by Alp.
   78513 
   78514         http://bugs.webkit.org/show_bug.cgi?id=15722
   78515         [GTK] Refactor gtk/RenderThemeGtk and implement a few more methods
   78516 
   78517         Refactor/enhance GTK RenderTheme
   78518 
   78519         * platform/gtk/RenderThemeGtk.cpp:
   78520         (WebCore::RenderThemeGtk::supportsFocus): added TextArea, Menulist, Radio, and Checkbox Appearances
   78521         (WebCore::RenderThemeGtk::supportsFocusRing): call supportsFocus() to check if focus on appearance is supported
   78522         (WebCore::RenderThemeGtk::controlSupportsTints): copied from Qt and Safari ports
   78523         (WebCore::RenderThemeGtk::baselinePosition): copied from Qt and Safari ports
   78524         (WebCore::RenderThemeGtk::paintCheckbox): moved painting in paintButton
   78525         (WebCore::RenderThemeGtk::paintRadio): moved painting in paintButton
   78526         (WebCore::RenderThemeGtk::paintButton): paint the different buttons here, checking for the right appearance before doing so
   78527         (WebCore::RenderThemeGtk::paintMenuList): use 0 instead of NULLs
   78528         (WebCore::RenderThemeGtk::adjustTextFieldStyle):
   78529         (WebCore::RenderThemeGtk::getThemeData):
   78530         * platform/gtk/RenderThemeGtk.h:
   78531         (WebCore::RenderThemeGtk::supportsControlTints):
   78532 
   78533 2007-10-27  Alexey Proskuryakov  <ap (a] webkit.org>
   78534 
   78535         Reviewed by Darin.
   78536 
   78537         http://bugs.webkit.org/show_bug.cgi?id=15555
   78538         XMLHttpRequest does not support charset "x-user-defined", which can
   78539         facilitate loading of binary data
   78540 
   78541         Test: http/tests/xmlhttprequest/binary-x-user-defined.html
   78542 
   78543         * WebCore.pro:
   78544         * WebCore.vcproj/WebCore.vcproj:
   78545         * WebCore.xcodeproj/project.pbxproj:
   78546         * platform/TextCodecUserDefined.cpp: Added.
   78547         (WebCore::TextCodecUserDefined::registerEncodingNames):
   78548         (WebCore::newStreamingTextDecoderUserDefined):
   78549         (WebCore::TextCodecUserDefined::registerCodecs):
   78550         (WebCore::TextCodecUserDefined::decode):
   78551         (WebCore::encodeComplexUserDefined):
   78552         (WebCore::TextCodecUserDefined::encode):
   78553         * platform/TextCodecUserDefined.h: Added.
   78554         * platform/TextEncodingRegistry.cpp:
   78555         (WebCore::buildBaseTextCodecMaps):
   78556 
   78557 2007-10-27  Alexey Proskuryakov  <ap (a] webkit.org>
   78558 
   78559         Reviewed by Darin.
   78560 
   78561         http://bugs.webkit.org/show_bug.cgi?id=15467
   78562         Setting innerHTML to blank string in application/xhtml+xml mode
   78563         throws DOM Exception 7
   78564 
   78565         Test: fast/dom/blank-innerHTML.xhtml
   78566 
   78567         * dom/XMLTokenizer.cpp:
   78568         (WebCore::parseXMLDocumentFragment): Bail out early if the input string is empty.
   78569 
   78570 2007-10-26  Sam Weinig  <sam (a] webkit.org>
   78571 
   78572         Enable dragging the left sidebar using the separator.
   78573 
   78574         Reviewed by Anders (unless Mitz says otherwise).
   78575 
   78576         * page/inspector/DocumentPanel.js:
   78577         * page/inspector/inspector.css:
   78578         * page/inspector/inspector.html:
   78579         * page/inspector/inspector.js:
   78580 
   78581 2007-10-26  Sam Weinig  <sam (a] webkit.org>
   78582 
   78583         Fix an off by one error when resizing the Inspector find window.
   78584 
   78585         Reviewed by Hyatt.
   78586 
   78587         * page/inspector/inspector.js:
   78588 
   78589 2007-10-26  Jon Honeycutt  <jhoneycutt (a] apple.com>
   78590 
   78591         Reviewed by Adam.
   78592 
   78593         Fix fallout from r26072, which leads to all plugin streams for local
   78594         resources being cancelled
   78595 
   78596         * loader/win/NetscapePlugInStreamLoaderWin.cpp:
   78597         (WebCore::NetscapePlugInStreamLoader::didReceiveResponse): Ensure this
   78598         is an HTTP response before checking the HTTP response code
   78599 
   78600 2007-10-26  David Hyatt  <hyatt (a] apple.com>
   78601 
   78602         Fix for http://bugs.webkit.org/show_bug.cgi?id=15719, transformed box doesn't repaint properly
   78603         when only translation changes.
   78604 
   78605         Move the updating of the transform to in between the old repaint and the new repaint.
   78606 
   78607         Reviewed by mitz
   78608 
   78609         fast/repaint/transform-translate.html
   78610 
   78611         * rendering/RenderLayer.cpp:
   78612         (WebCore::RenderLayer::updateLayerPositions):
   78613 
   78614 2007-10-26  Jon Honeycutt  <jhoneycutt (a] apple.com>
   78615 
   78616         Reviewed by Darin.
   78617 
   78618         <rdar://5557379> Crash in Silverlight when opening microsoft.com
   78619 
   78620         The crash is within Silverlight, and the latest version of the plugin
   78621         does not exhibit this crash, so just avoid loading this version of the
   78622         plugin.
   78623 
   78624         * plugins/win/PluginDatabaseWin.cpp: Added isPluginBlacklisted() and
   78625         constants silverlightPluginMinRequiredVersionMSDWORD and
   78626         silverlightPluginMinRequiredVersionLSDWORD. Their values are taken from 
   78627         the version info of Silverlight 1.0.20926.0, which is a version known
   78628         not to exhibit this crash
   78629         (WebCore::PluginDatabaseWin::isPluginBlacklisted): Determine whether
   78630         this plugin is blacklisted
   78631         * plugins/win/PluginDatabaseWin.h:
   78632         * plugins/win/PluginPackageWin.cpp:
   78633         (WebCore::PluginPackageWin::PluginPackageWin): Initialize m_fileVersion*
   78634         (WebCore::PluginPackageWin::getFileVersion):
   78635         (WebCore::PluginPackageWin::storeFileVersion): Read version info for
   78636         the plugin, and store the file version
   78637         (WebCore::PluginPackageWin::fetchInfo): After determining the name,
   78638         description, and file version, determine whether this plug-in is
   78639         blacklisted. If so, return false so this plug-in isn't loaded
   78640         * plugins/win/PluginPackageWin.h:
   78641 
   78642 2007-10-26  Sam Weinig  <sam (a] webkit.org>
   78643 
   78644         Reviewed by Adele Peterson.
   78645 
   78646         Fix for <rdar://problem/5421754>
   78647         m_frameName member variable in HTMLPlugInElement unnecessary
   78648 
   78649         - Refactor the willRemove() method down into HTMLFrameOwnerElement now that
   78650           we no longer need to use the m_frameName variable.
   78651 
   78652         * html/HTMLFrameElementBase.cpp:
   78653         * html/HTMLFrameElementBase.h:
   78654         * html/HTMLFrameOwnerElement.cpp:
   78655         (WebCore::HTMLFrameOwnerElement::willRemove):
   78656         * html/HTMLFrameOwnerElement.h:
   78657         * html/HTMLPlugInElement.cpp:
   78658         * html/HTMLPlugInElement.h:
   78659         * loader/FrameLoader.cpp:
   78660         (WebCore::FrameLoader::requestObject):
   78661 
   78662 2007-10-26  Adele Peterson  <adele (a] apple.com>
   78663 
   78664         Export _wkDrawCapsLockIndicator.
   78665 
   78666         * WebCore.base.exp:
   78667 
   78668 2007-10-26  Adele Peterson  <adele (a] apple.com>
   78669 
   78670         Reviewed by Oliver.
   78671 
   78672         Adding WebKitSystemInterface support for the caps lock indicator
   78673 
   78674         * platform/mac/WebCoreSystemInterface.h:
   78675         * platform/mac/WebCoreSystemInterface.mm:
   78676 
   78677 2007-10-26  Tristan O'Tierney  <tristan (a] apple.com>
   78678 
   78679         Reviewed by Darin Adler.
   78680 
   78681         <rdar://problem/5555053> REGRESSION:9A581: Window disappears when opening http://research.microsoft.com/users/darkok/
   78682         The problem was caused by checkin r24654. This change moved explicit bounds checking into adjustWindowRect
   78683         but failed to account for bounds checking (instead replaced with bounds clipping).  This caused issues
   78684         when NaN was used. This patch goes one step further and does NaN checking to prevent the possibility of
   78685         setting window bounds to NaN before an update occurs.
   78686 
   78687         Test: fast/dom/Window/window-resize-nan.html
   78688         
   78689         * bindings/js/kjs_window.cpp:
   78690         (KJS::adjustWindowRect):
   78691         Added a new parameter, pendingChanges, which takes pending changes to the window
   78692         rect, and if they are valid (not NaN) sets them on window.
   78693         
   78694         (KJS::WindowFunc::callAsFunction):
   78695         Adjusted uses of adjustWindowRect to take new update parameter.
   78696 
   78697 2007-10-26  Sam Weinig  <sam (a] webkit.org>
   78698 
   78699         Reviewed by Tim Hatcher.
   78700 
   78701         Fix for http://bugs.webkit.org/show_bug.cgi?id=15175
   78702         Cannot copy text of errors from Web Inspector from Console view
   78703 
   78704         * page/inspector/inspector.css: add -webkit-user-select: text for console messages.
   78705 
   78706 2007-10-26  Sam Weinig  <sam (a] webkit.org>
   78707 
   78708         Reviewed by Tim Hatcher.
   78709 
   78710         Fix for http://bugs.webkit.org/show_bug.cgi?id=15446
   78711         Web Inspector find window is not resizable
   78712 
   78713         - Adds ability to resize the find window.
   78714         - Fixes bug that messed up the find window when resizing the left sidebar. 
   78715 
   78716         * page/inspector/inspector.css:
   78717         * page/inspector/inspector.html:
   78718         * page/inspector/inspector.js:
   78719 
   78720 2007-10-26  Ada Chan  <adachan (a] apple.com>
   78721 
   78722         Update m_current index after we've removed an item:
   78723         - if item removed is before m_current, decrement m_current
   78724         - if the current item is removed, make sure m_current is within bounds.
   78725 
   78726         Reviewed by Darin.
   78727 
   78728         * history/BackForwardList.cpp:
   78729         (WebCore::BackForwardList::removeItem):
   78730 
   78731 2007-10-26  Mark Rowe  <mrowe (a] apple.com>
   78732 
   78733         Debug build fix.
   78734 
   78735         * bindings/js/kjs_proxy.cpp:
   78736         (WebCore::KJSProxy::~KJSProxy):
   78737 
   78738 2007-10-26  Maciej Stachowiak  <mjs (a] apple.com>
   78739 
   78740         No review, build fix.
   78741 
   78742         * bindings/objc/WebScriptObject.mm:
   78743         (+[WebScriptObject throwException:]):
   78744         (-[WebScriptObject setException:]):
   78745 
   78746 2007-10-26  Maciej Stachowiak  <mjs (a] apple.com>
   78747 
   78748         Rubber Stamped by Mark.
   78749 
   78750         - fix build
   78751 
   78752         * bridge/mac/WebCoreScriptDebugger.mm:
   78753         (-[WebCoreScriptCallFrame scopeChain]):
   78754         (-[WebCoreScriptCallFrame functionName]):
   78755         (-[WebCoreScriptCallFrame evaluateWebScript:]):
   78756 
   78757 2007-10-26  Maciej Stachowiak  <mjs (a] apple.com>
   78758 
   78759         Reviewed by Oliver.
   78760 
   78761         - update for JavaScriptCore header changes
   78762 
   78763         * bindings/objc/WebScriptObject.mm:
   78764         * bridge/mac/WebCoreScriptDebugger.mm:
   78765 
   78766 2007-10-26  Alp Toker  <alp (a] atoker.com>
   78767 
   78768         Reviewed by Mark Rowe.
   78769 
   78770         http://bugs.webkit.org/show_bug.cgi?id=15693
   78771         [GTK] Paging does not work when widget is added to a GtkScrolledWindow
   78772 
   78773         Eliminate MagicGtkScrollConstant in favour of the same calculations as
   78774         GtkTextView for step and page increments. This also makes paging work,
   78775         as the page increment was previously always 0.
   78776 
   78777         * platform/gtk/ScrollViewGtk.cpp:
   78778         (WebCore::ScrollView::updateScrollbars):
   78779 
   78780 2007-10-25  Dan Bernstein  <mitz (a] apple.com>
   78781 
   78782         Reviewed by Dave Hyatt and Sam Weinig.
   78783 
   78784         Build fix
   78785 
   78786         * platform/graphics/cg/ImageCG.cpp:
   78787         (WebCore::Image::drawPattern):
   78788 
   78789 2007-10-23  Jan Michael Alonzo  <jmalonzo (a] unpluggable.com>
   78790 
   78791         Reviewed by Alp.
   78792 
   78793         http://bugs.webkit.org/show_bug.cgi?id=15656
   78794         [GTK] Implement WebCore::Widget::isEnabled/setEnabled
   78795 
   78796         * platform/gtk/WidgetGtk.cpp:
   78797         (WebCore::Widget::isEnabled):
   78798         (WebCore::Widget::setEnabled): Implemented.
   78799 
   78800 2007-10-25  David Hyatt  <hyatt (a] apple.com>
   78801 
   78802         Fix for bug 15672, background images don't tile properly inside transforms.  This patch fixes background
   78803         tiling to work in the presence of transforms and fixes bugs in both SVG and CSS transforms.
   78804 
   78805         Reviewed by aroben and mitz
   78806 
   78807         * WebCore.base.exp:
   78808         * platform/graphics/Image.cpp:
   78809         (WebCore::Image::setData):
   78810         * platform/graphics/cg/ImageCG.cpp:
   78811         (WebCore::ImageInfo::ImageInfo):
   78812         (WebCore::Image::drawPatternCallback):
   78813         (WebCore::Image::drawPattern):
   78814         * platform/graphics/mac/GraphicsContextMac.mm:
   78815         (WebCore::GraphicsContext::drawLineForMisspellingOrBadGrammar):
   78816         * platform/mac/WebCoreSystemInterface.h:
   78817         * platform/mac/WebCoreSystemInterface.mm:
   78818 
   78819 2007-10-25  Brady Eidson  <beidson (a] apple.com>
   78820 
   78821         Blind build fix attempt
   78822 
   78823         * WebCore.pro:
   78824 
   78825 2007-10-25  Brady Eidson  <beidson (a] apple.com>
   78826 
   78827         Reviewed by Anders and Sam
   78828 
   78829         Bulk rename of platform/sql/SQL* to platform/sql/SQLite*
   78830         
   78831         This is more accurate in that there is no realistic "SQL" abstraction, the classes are obviously
   78832         tied extremely close to SQLite, and is necessitated by the introduction of "SQLTransaction" in 
   78833         the HTML5 database API which we are adopting.
   78834 
   78835         * WebCore.vcproj/WebCore.vcproj:
   78836         * WebCore.xcodeproj/project.pbxproj:
   78837         * loader/icon/IconDatabase.cpp:
   78838         (WebCore::IconDatabase::iconDatabaseSyncThread):
   78839         (WebCore::databaseVersionNumber):
   78840         (WebCore::isValidDatabase):
   78841         (WebCore::createDatabaseTables):
   78842         (WebCore::IconDatabase::performOpenInitialization):
   78843         (WebCore::IconDatabase::checkIntegrity):
   78844         (WebCore::IconDatabase::performURLImport):
   78845         (WebCore::IconDatabase::writeToDatabase):
   78846         (WebCore::IconDatabase::pruneUnretainedIcons):
   78847         (WebCore::IconDatabase::checkForDanglingPageURLs):
   78848         (WebCore::IconDatabase::imported):
   78849         (WebCore::IconDatabase::setImported):
   78850         (WebCore::readySQLiteStatement):
   78851         (WebCore::IconDatabase::setIconIDForPageURLInSQLDatabase):
   78852         (WebCore::IconDatabase::removePageURLFromSQLDatabase):
   78853         (WebCore::IconDatabase::getIconIDForIconURLFromSQLDatabase):
   78854         (WebCore::IconDatabase::addIconURLToSQLDatabase):
   78855         (WebCore::IconDatabase::getImageDataForIconURLFromSQLDatabase):
   78856         (WebCore::IconDatabase::removeIconFromSQLDatabase):
   78857         (WebCore::IconDatabase::writeIconSnapshotToSQLDatabase):
   78858         * loader/icon/IconDatabase.h:
   78859         * loader/icon/IconRecord.cpp:
   78860         * platform/sql/SQLAuthorizer.cpp: Removed.
   78861         * platform/sql/SQLAuthorizer.h: Removed.
   78862         * platform/sql/SQLDatabase.cpp: Removed.
   78863         * platform/sql/SQLDatabase.h: Removed.
   78864         * platform/sql/SQLStatement.cpp: Removed.
   78865         * platform/sql/SQLStatement.h: Removed.
   78866         * platform/sql/SQLTransaction.cpp: Removed.
   78867         * platform/sql/SQLTransaction.h: Removed.
   78868         * platform/sql/SQLiteAuthorizer.cpp: Copied from platform/sql/SQLAuthorizer.cpp.
   78869         * platform/sql/SQLiteAuthorizer.h: Copied from platform/sql/SQLAuthorizer.h.
   78870         (WebCore::SQLiteAuthorizer::~SQLiteAuthorizer):
   78871         * platform/sql/SQLiteDatabase.cpp: Copied from platform/sql/SQLDatabase.cpp.
   78872         (WebCore::SQLiteDatabase::SQLiteDatabase):
   78873         (WebCore::SQLiteDatabase::~SQLiteDatabase):
   78874         (WebCore::SQLiteDatabase::open):
   78875         (WebCore::SQLiteDatabase::close):
   78876         (WebCore::SQLiteDatabase::setFullsync):
   78877         (WebCore::SQLiteDatabase::setSynchronous):
   78878         (WebCore::SQLiteDatabase::setBusyTimeout):
   78879         (WebCore::SQLiteDatabase::setBusyHandler):
   78880         (WebCore::SQLiteDatabase::executeCommand):
   78881         (WebCore::SQLiteDatabase::returnsAtLeastOneResult):
   78882         (WebCore::SQLiteDatabase::tableExists):
   78883         (WebCore::SQLiteDatabase::clearAllTables):
   78884         (WebCore::SQLiteDatabase::runVacuumCommand):
   78885         (WebCore::SQLiteDatabase::lastInsertRowID):
   78886         (WebCore::SQLiteDatabase::lastChanges):
   78887         (WebCore::SQLiteDatabase::lastError):
   78888         (WebCore::SQLiteDatabase::lastErrorMsg):
   78889         (WebCore::SQLiteDatabase::authorizerFunction):
   78890         (WebCore::SQLiteDatabase::setAuthorizer):
   78891         (WebCore::SQLiteDatabase::lock):
   78892         (WebCore::SQLiteDatabase::unlock):
   78893         * platform/sql/SQLiteDatabase.h: Copied from platform/sql/SQLDatabase.h.
   78894         * platform/sql/SQLiteStatement.cpp: Copied from platform/sql/SQLStatement.cpp.
   78895         (WebCore::SQLiteStatement::SQLiteStatement):
   78896         (WebCore::SQLiteStatement::~SQLiteStatement):
   78897         (WebCore::SQLiteStatement::prepare):
   78898         * platform/sql/SQLiteStatement.h: Copied from platform/sql/SQLStatement.h.
   78899         (WebCore::SQLiteStatement::database):
   78900         * platform/sql/SQLiteTransaction.cpp: Copied from platform/sql/SQLTransaction.cpp.
   78901         (WebCore::SQLiteTransaction::SQLiteTransaction):
   78902         (WebCore::SQLiteTransaction::~SQLiteTransaction):
   78903         (WebCore::SQLiteTransaction::begin):
   78904         (WebCore::SQLiteTransaction::commit):
   78905         (WebCore::SQLiteTransaction::rollback):
   78906         * platform/sql/SQLiteTransaction.h: Copied from platform/sql/SQLTransaction.h.
   78907         * storage/Database.cpp:
   78908         (WebCore::retrieveTextResultFromDatabase):
   78909         (WebCore::setTextValueInDatabase):
   78910         (WebCore::Database::performExecuteSql):
   78911         (WebCore::Database::performGetTableNames):
   78912         (WebCore::Database::executeSql):
   78913         * storage/Database.h:
   78914         * storage/DatabaseAuthorizer.h:
   78915         * storage/DatabaseTracker.cpp:
   78916         (WebCore::DatabaseTracker::fullPathForDatabase):
   78917         (WebCore::DatabaseTracker::populateOrigins):
   78918         (WebCore::DatabaseTracker::databaseNamesForOrigin):
   78919         (WebCore::DatabaseTracker::addDatabase):
   78920         * storage/DatabaseTracker.h:
   78921 
   78922 2007-10-25  Alexey Proskuryakov  <ap (a] webkit.org>
   78923 
   78924         Reviewed by Darin.
   78925 
   78926         http://bugs.webkit.org/show_bug.cgi?id=15650
   78927         XML attribute nodes are not importable
   78928 
   78929         Tests: fast/dom/import-attribute-node.html
   78930                fast/dom/import-document-fragment.html
   78931 
   78932         * dom/Document.cpp:
   78933         (WebCore::Document::importNode): Implemented for Attribute and DocumentFragment nodes.
   78934 
   78935 2007-10-25  Dan Bernstein  <mitz (a] apple.com>
   78936 
   78937         Reviewed by Dave Hyatt.
   78938 
   78939         - fix http://bugs.webkit.org/show_bug.cgi?id=15362
   78940           <rdar://problem/5558715> Safari Crashes when opening a JS TreeGrid widget
   78941 
   78942         Test: fast/dynamic/insert-before-table-part-in-continuation.html
   78943 
   78944         * rendering/RenderFlow.cpp:
   78945         (WebCore::RenderFlow::addChildWithContinuation): If beforeChild's
   78946         parent is an anonymous table part, let the table figure out where to
   78947         insert the new child.
   78948 
   78949 2007-10-25  Alp Toker  <alp (a] atoker.com>
   78950 
   78951         Reviewed by Brady.
   78952 
   78953         http://bugs.webkit.org/show_bug.cgi?id=15686
   78954         GtkLauncher aborts on launch due to uninitialized threading subsystem
   78955 
   78956         Re-enable database support in the GTK+ port, with a fix.
   78957 
   78958         * WebCore.pro:
   78959 
   78960 2007-10-25  Jon Honeycutt  <jhoneycutt (a] apple.com>
   78961 
   78962         Reviewed by Steve.
   78963 
   78964         <rdar://5548217>: [NTS] Java 6 update 3 crashes Safari when loading a 
   78965         java page
   78966 
   78967         Previous patch erroneously compared a path and a
   78968         path-including-filename. This corrects that. It also caches the result
   78969         of safariPluginsPath() and uses shell API funcs for determining filename
   78970         and parent directory from a full path.
   78971 
   78972         * plugins/win/PluginDatabaseWin.cpp:
   78973         (WebCore::safariPluginsPath): Cache return value. Use API functions to
   78974         build the path
   78975         (WebCore::PluginDatabaseWin::pluginForMIMEType): Compare again plugin's
   78976         parent directory, not full path
   78977         (WebCore::PluginDatabaseWin::pluginForExtension): Same
   78978         * plugins/win/PluginPackageWin.cpp:
   78979         (WebCore::PluginPackageWin::PluginPackageWin): Store parent directory
   78980         * plugins/win/PluginPackageWin.h:
   78981         (WebCore::PluginPackageWin::parentDirectory):
   78982         * plugins/win/PluginStreamWin.cpp:
   78983         (WebCore::PluginStreamWin::didReceiveData):
   78984 
   78985 2007-10-25  Alp Toker  <alp (a] atoker.com>
   78986 
   78987         Unreviewed fix to make the GTK+ port run.
   78988 
   78989         http://bugs.webkit.org/show_bug.cgi?id=15686
   78990         GtkLauncher aborts on launch due to uninitialized threading subsystem
   78991 
   78992         Disable database support until #15686 is fixed.
   78993 
   78994         * WebCore.pro:
   78995 
   78996 2007-10-25  Simon Hausmann  <hausmann (a] kde.org>
   78997 
   78998         Reviewed by Lars.
   78999 
   79000         Fixed a crash in the Qt 4.4 based text iterators when they're called with a null string.
   79001 
   79002         * platform/qt/TextBreakIteratorQt.cpp:
   79003         (WebCore::wordBreakIterator):
   79004         (WebCore::characterBreakIterator):
   79005         (WebCore::lineBreakIterator):
   79006         (WebCore::sentenceBreakIterator):
   79007 
   79008 2007-10-25  Holger Freyther  <zecke (a] selfish.org>
   79009 
   79010         Reviewed by Simon Hausmann <hausmann (a] kde.org>.
   79011 
   79012         * We need to set a != 0 status code for the fast/loader/xmlhttprequest-missing-file-exception.html
   79013         * libxml2 has the semantic that when writing an empty string and finishing it will report an error. For QXmlStreamReader this is valid.
   79014         * This is causing some regressions...
   79015         
   79016 
   79017         * dom/XMLTokenizer.cpp:
   79018         (WebCore::XMLTokenizer::XMLTokenizer):
   79019         (WebCore::XMLTokenizer::write):
   79020         (WebCore::XMLTokenizer::end):
   79021         * dom/XMLTokenizer.h:
   79022 
   79023 2007-10-25  Holger Freyther  <zecke (a] selfish.org>
   79024 
   79025         Reviewed by Simon Hausmann <hausmann (a] kde.org>.
   79026 
   79027         * fast/dom/onerror-img.html regressed due checking the JobStates because in case of error (e.g. not being able to connect) the job will no be started.
   79028         * Use the error message from Qt. It might or might not be translated.
   79029 
   79030         * platform/network/qt/ResourceHandleQt.cpp:
   79031         (WebCore::WebCoreSynchronousLoader::didFail):
   79032 
   79033 2007-10-25  Holger Freyther  <zecke (a] selfish.org>
   79034 
   79035         Reviewed by Simon Hausmann <hausmann (a] kde.org>.
   79036 
   79037         * Implement our own queuing of network jobs to allow special handling of synchronous jobs. This makes us pass the fast/dom/xmlhttprequest-html-response-encoding.html test without a crash. Sync jobs will get a special treatment over the normals ones and in theory more than one sync job is supported.
   79038         * This should be thread-safe besides QWebNetworkJob::{ref,deref}
   79039         
   79040 
   79041         * platform/network/qt/ResourceHandleQt.cpp:
   79042         (WebCore::ResourceHandle::loadResourceSynchronously):
   79043 
   79044 2007-10-25  Alp Toker  <alp (a] atoker.com>
   79045 
   79046         Reviewed by Mark Rowe.
   79047 
   79048         Add support for list box theme colors and styled menu list buttons.
   79049 
   79050         Remove obsolete FIXMEs.
   79051 
   79052         * platform/gtk/RenderThemeGtk.cpp:
   79053         (WebCore::RenderThemeGtk::RenderThemeGtk):
   79054         (WebCore::RenderThemeGtk::paintCheckbox):
   79055         (WebCore::RenderThemeGtk::paintRadio):
   79056         (WebCore::RenderThemeGtk::paintButton):
   79057         (WebCore::RenderThemeGtk::adjustMenuListStyle):
   79058         (WebCore::RenderThemeGtk::paintMenuList):
   79059         (WebCore::RenderThemeGtk::activeListBoxSelectionBackgroundColor):
   79060         (WebCore::RenderThemeGtk::inactiveListBoxSelectionBackgroundColor):
   79061         (WebCore::RenderThemeGtk::activeListBoxSelectionForegroundColor):
   79062         (WebCore::RenderThemeGtk::inactiveListBoxSelectionForegroundColor):
   79063         (WebCore::RenderThemeGtk::gtkTreeView):
   79064         * platform/gtk/RenderThemeGtk.h:
   79065 
   79066 2007-10-25  Eric Seidel  <eric (a] webkit.org>
   79067 
   79068         Reviewed by Geoff.
   79069 
   79070         * bindings/js/kjs_window.h: fix bogus comment, s/DOMNode/DOMObject/
   79071 
   79072 2007-10-24  Eric Seidel  <eric (a] webkit.org>
   79073 
   79074         Reviewed by Maciej.
   79075         
   79076         Make Window subclass from JSGlobalObject (for a .5% win in Sunspider)
   79077         http://bugs.webkit.org/show_bug.cgi?id=15681
   79078 
   79079         No test cases necessary, no functional changes.
   79080 
   79081         * WebCore.xcodeproj/project.pbxproj:
   79082         * bindings/js/kjs_binding.cpp:
   79083         (KJS::ScriptInterpreter::ScriptInterpreter):
   79084         * bindings/js/kjs_binding.h:
   79085         * bindings/js/kjs_proxy.cpp:
   79086         (WebCore::KJSProxy::initScriptIfNeeded):
   79087         * bindings/js/kjs_window.cpp:
   79088         (KJS::Window::Window):
   79089         * bindings/js/kjs_window.h:
   79090         * bindings/objc/WebScriptObject.mm:
   79091         (_didExecute):
   79092         * bridge/mac/WebCoreScriptDebugger.mm:
   79093 
   79094 2007-10-24  Adam Roben  <aroben (a] apple.com>
   79095 
   79096         Add font database initialization code to WebCore
   79097 
   79098         Reviewed by Ada.
   79099 
   79100         * WebCore.vcproj/WebCore.vcproj: Added FontDatabase.{cpp,h}.
   79101         * platform/win/FontDatabase.cpp: Added.
   79102         (WebCore::systemFontsDirectory):
   79103         (WebCore::fontsPlistPath):
   79104         (WebCore::systemHasFontsNewerThanFontsPlist):
   79105         (WebCore::readFontPlist):
   79106         (WebCore::populateFontDatabaseFromPlist):
   79107         (WebCore::populateFontDatabaseFromFileSystem):
   79108         (WebCore::writeFontDatabaseToPlist):
   79109         (WebCore::populateFontDatabase): This is the only function callable
   79110         from outside this file. It populates the font database once, either
   79111         from the fonts plist, or from the filesystem (and then saves a new
   79112         fonts plist).
   79113         * platform/win/FontDatabase.h: Added.
   79114 
   79115 2007-10-24  Justin Garcia  <justin.garcia (a] apple.com>
   79116 
   79117         Reviewed by Darin Adler.
   79118 
   79119         Correcting the fix for:
   79120         <rdar://problem/5544856> 
   79121         REGRESSION: After typing 2-byte text, undo only undoes one keystroke at a time
   79122         
   79123         Made removal of the previous composition part of the current Undo step in the 
   79124         case where the new composition is the empty string, too.
   79125 
   79126         * editing/Editor.cpp:
   79127         (WebCore::Editor::confirmComposition): Call the new TypingCommand::deleteSelection,
   79128         which either has the currently open typing command delete the current selection, or
   79129         opens a new typing command (of type DeleteSelection) if one is not already open.
   79130         (WebCore::Editor::setComposition): Ditto.
   79131         * editing/TypingCommand.cpp:
   79132         (WebCore::TypingCommand::deleteSelection): Added.
   79133         (WebCore::TypingCommand::doApply): Handle DeleteSelection.
   79134         (WebCore::TypingCommand::deleteKeyPressed): Clarified which deleteSelection
   79135         is called.
   79136         (WebCore::TypingCommand::forwardDeleteKeyPressed): Ditto.
   79137         (WebCore::TypingCommand::preservesTypingStyle): Handle DeleteSelection.
   79138         * editing/TypingCommand.h:
   79139 
   79140 2007-10-24  Sam Weinig  <sam (a] webkit.org>
   79141 
   79142         Build fix.
   79143 
   79144         * WebCore.vcproj/WebCore.vcproj:
   79145 
   79146 2007-10-24  Alice Liu  <alice.liu (a] apple.com>
   79147 
   79148         Reviewed by Oliver.
   79149 
   79150         Fix <rdar://5410959>  editing/selection/drag-to-contenteditable-iframe.html fails on Windows
   79151         
   79152         * page/win/EventHandlerWin.cpp:
   79153         (WebCore::EventHandler::passMouseMoveEventToSubframe):
   79154         Some mouse move events are actually drags, which on mac return early from this function.
   79155         Adding the same logic to its Windows equivalent.  
   79156 
   79157 2007-10-24  Brady Eidson  <beidson (a] apple.com>
   79158 
   79159         Reviewed by Anders
   79160 
   79161         <rdar://5554130> DatabaseTracker.o has a global initializer
   79162 
   79163         Since DatabaseTracker is a singleton, it makes much more sense to keep the database path as a member variable.
   79164         Now constructing the shared DatabaseTracker no longer implicitly opens it - It is only opened when the databases 
   79165         path is set.
   79166         
   79167         * WebCore.vcproj/WebCore.vcproj: Copy WebCore/storage headers for WebKit build
   79168         
   79169         * storage/Database.cpp:
   79170         (WebCore::Database::~Database): Remove bogus assertion
   79171         
   79172         * storage/DatabaseTracker.cpp:
   79173         (WebCore::DatabaseTracker::DatabaseTracker): Does nothing now!  Move this code to openTrackerDatabase
   79174         (WebCore::DatabaseTracker::setDatabasePath): Set the member variable, also closing/opening the database if needed
   79175         (WebCore::DatabaseTracker::databasePath):
   79176         (WebCore::DatabaseTracker::openTrackerDatabase): To open and validate the Databases db, moved from the c'tor
   79177         (WebCore::DatabaseTracker::fullPathForDatabase): Return the member variable
   79178         * storage/DatabaseTracker.h:
   79179 
   79180 2007-10-24  David Hyatt  <hyatt (a] apple.com>
   79181 
   79182         Don't try to gap fill transformed selections.  Fix the invalidation of selection to use the clip to visible content
   79183         code path so that it works with multi-column layouts and transforms.
   79184 
   79185         Reviewed by aroben
   79186 
   79187         * rendering/RenderBlock.cpp:
   79188         (WebCore::RenderBlock::isSelectionRoot):
   79189         (WebCore::RenderBlock::fillSelectionGaps):
   79190         * rendering/RenderView.cpp:
   79191         (WebCore::RenderView::setSelection):
   79192 
   79193 2007-10-24  Eric Seidel  <eric (a] webkit.org>
   79194 
   79195         No review, I want to tickle the CIA bot to test changes,
   79196         and took this as an opportunity to clean up some old change logs.
   79197 
   79198         * ChangeLog-2005-08-23: update email address
   79199         * ChangeLog-2006-12-31: fix spelling mistakes
   79200 
   79201 2007-10-24  Dan Bernstein  <mitz (a] apple.com>
   79202 
   79203         Reviewed by Oliver Hunt.
   79204 
   79205         - add "(anonymous)" to the renderName of anonymous table cells, rows and sections
   79206 
   79207         * rendering/RenderTableCell.h:
   79208         (WebCore::RenderTableCell::renderName):
   79209         * rendering/RenderTableRow.h:
   79210         (WebCore::RenderTableRow::renderName):
   79211         * rendering/RenderTableSection.h:
   79212         (WebCore::RenderTableSection::renderName):
   79213 
   79214 2007-10-24  Timothy Hatcher  <timothy (a] apple.com>
   79215 
   79216         Reviewed by Adam.
   79217 
   79218         Bug 15476: DOM tree fully expands some elements when arrowing up
   79219         http://bugs.webkit.org/show_bug.cgi?id=15476
   79220 
   79221         Add a new expandTreeElementsWhenArrowing option to TreeOutline. This option
   79222         is used only for the sidebar and search results.
   79223 
   79224         * page/inspector/inspector.js: Opt-in for the sidebar and search results.
   79225         * page/inspector/treeoutline.js: Add expandTreeElementsWhenArrowing and pass
   79226           this option to traverseNextTreeElement and traversePreviousTreeElement.
   79227 
   79228 2007-10-24  Anders Carlsson  <andersca (a] apple.com>
   79229 
   79230         Reviewed by Geoff and Mitz.
   79231 
   79232         <rdar://problem/5493833>
   79233         REGRESSION: ~5MB of image data leaked @ cuteoverload.com (often seen while browsing other sites, too)
   79234 
   79235         * bindings/js/kjs_binding.cpp:
   79236         (KJS::ScriptInterpreter::markDOMNodesForDocument):
   79237         If an image element that is currently loading an image is not in the document,
   79238         it should still be marked.
   79239         
   79240         * bindings/js/kjs_html.cpp:
   79241         (WebCore::ImageConstructorImp::construct):
   79242         Force the document wrapper to be created.
   79243         
   79244         * html/HTMLImageElement.h:
   79245         (WebCore::HTMLImageElement::haveFiredLoadEvent):
   79246         New method which calls down to the image loader.
   79247         
   79248         * html/HTMLImageLoader.cpp:
   79249         (WebCore::HTMLImageLoader::HTMLImageLoader):
   79250         (WebCore::HTMLImageLoader::~HTMLImageLoader):
   79251         (WebCore::HTMLImageLoader::setLoadingImage):
   79252         (WebCore::HTMLImageLoader::dispatchLoadEvent):
   79253         Remove code that's not needed anymore.
   79254         
   79255         * html/HTMLImageLoader.h:
   79256         (WebCore::HTMLImageLoader::haveFiredLoadEvent):
   79257         Make this public.
   79258 
   79259 2007-10-23  Adam Roben  <aroben (a] apple.com>
   79260 
   79261         Move Windows safe file creation code into WebCore from WebPreferences
   79262 
   79263         Reviewed by Brady.
   79264 
   79265         * platform/FileSystem.h:
   79266         * platform/win/FileSystemWin.cpp:
   79267         (WebCore::safeCreateFile): Moved here from WebKit/win/WebPreferences.cpp.
   79268 
   79269 2007-10-23  Adam Roben  <aroben (a] apple.com>
   79270 
   79271         Add methods to FileSystemWin to get some user profile directories
   79272 
   79273         These directories are used to hold things like preferences, caches,
   79274         etc.
   79275 
   79276         Reviewed by Brady.
   79277 
   79278         * platform/FileSystem.h: Added new method declarations for Windows
   79279         only.
   79280         * platform/win/FileSystemWin.cpp:
   79281         (WebCore::bundleName): Added.
   79282         (WebCore::storageDirectory): Added.
   79283         (WebCore::cachedStorageDirectory): Added.
   79284         (WebCore::localUserSpecificStorageDirectory): Added. Returns the
   79285         directory where WebKit should store any user-specific data that should
   79286         stay local to the current machine (i.e., shouldn't be stored in a
   79287         roaming profile).
   79288         (WebCore::roamingUserSpecificStorageDirectory): Added. Returns the
   79289         directory where WebKit should store any user-specific data that should
   79290         move with the user from machine to machine (i.e., should be stored in
   79291         a roaming profile).
   79292 
   79293 2007-10-24  Alp Toker  <alp (a] atoker.com>
   79294 
   79295         Reviewed by Mark Rowe.
   79296 
   79297         http://bugs.webkit.org/show_bug.cgi?id=15659
   79298         InlineTextBox does not setStrokeStyle() as needed
   79299 
   79300         GraphicsContextCairo workaround to support a GraphicsContextCG quirk:
   79301 
   79302         Save and restore the StrokeStyle manually.
   79303 
   79304         * platform/graphics/cairo/GraphicsContextCairo.cpp:
   79305         (WebCore::GraphicsContext::drawLineForText):
   79306 
   79307 2007-10-24  Julien Chaffraix  <julien.chaffraix (a] gmail.com>
   79308 
   79309         Reviewed by Darin.
   79310 
   79311         Patch for http://bugs.webkit.org/show_bug.cgi?id=15356
   79312         Bug 15356: getResponseHeader and getAllResponseHeaders do not throw exceptions
   79313 
   79314         - getAllResponseHeaders and getResponseHeader throws INVALID_STATE_ERR exception as specified in the specification
   79315 
   79316         - Add the check to field-name production in getResponseHeader (call to isValidToken) and returns an empty string if the header is not valid (Opera and IE behaviour)
   79317 
   79318         - Updated XMLHttpRequest::responseMIMEType() to keep its behaviour
   79319 
   79320         Tests: http/tests/xmlhttprequest/xmlhttprequest-InvalidStateException-getAllRequestHeaders.html
   79321                http/tests/xmlhttprequest/xmlhttprequest-InvalidStateException-getRequestHeader.html
   79322                http/tests/xmlhttprequest/xmlhttprequest-invalidHeader-getRequestHeader.html
   79323 
   79324         * bindings/js/JSXMLHttpRequest.cpp:
   79325         (KJS::JSXMLHttpRequestPrototypeFunction::callAsFunction):
   79326         * xml/XMLHttpRequest.cpp:
   79327         (WebCore::XMLHttpRequest::getAllResponseHeaders):
   79328         (WebCore::XMLHttpRequest::getResponseHeader):
   79329         (WebCore::XMLHttpRequest::responseMIMEType):
   79330         * xml/XMLHttpRequest.h:
   79331 
   79332 2007-10-24  Lars Knoll  <lars (a] trolltech.com>
   79333 
   79334         Reviewed by Simon.
   79335 
   79336         implement most of DragData.
   79337 
   79338         * platform/qt/DragDataQt.cpp:
   79339         (WebCore::DragData::containsColor):
   79340         (WebCore::DragData::containsFiles):
   79341         (WebCore::DragData::asFilenames):
   79342         (WebCore::DragData::containsPlainText):
   79343         (WebCore::DragData::asPlainText):
   79344         (WebCore::DragData::asColor):
   79345         (WebCore::DragData::containsCompatibleContent):
   79346         (WebCore::DragData::containsURL):
   79347 
   79348 2007-10-24  Lars Knoll  <lars (a] trolltech.com>
   79349 
   79350         Reviewed by Simon.
   79351 
   79352         remove a stupid notImplemented() warning and implement PasteBoad::clear().
   79353 
   79354         * platform/qt/PasteboardQt.cpp:
   79355 
   79356 2007-10-24  Lars Knoll  <lars (a] trolltech.com>
   79357 
   79358         Reviewed by Simon.
   79359 
   79360         implement Pasteboard::documentFragment(), and fix a mem leak.
   79361 
   79362         * platform/qt/PasteboardQt.cpp:
   79363         (WebCore::Pasteboard::generalPasteboard):
   79364         (WebCore::Pasteboard::documentFragment):
   79365 
   79366 2007-10-24  Lars Knoll  <lars (a] trolltech.com>
   79367 
   79368         Reviewed by Simon.
   79369 
   79370         Simplify the PlatformKeyEvent constructor. No need to have an extra boolean for isKeyUp in there, as the QKeyEvent has the information.
   79371 
   79372         * platform/PlatformKeyboardEvent.h:
   79373         * platform/qt/PlatformKeyboardEventQt.cpp:
   79374         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
   79375 
   79376 2007-10-24  Lars Knoll  <lars (a] trolltech.com>
   79377 
   79378         Reviewed by Simon.
   79379 
   79380         use the new QTextBoundaryFinder class in Qt.
   79381 
   79382         * platform/qt/TextBoundaries.cpp:
   79383         (WebCore::findNextWordFromIndex):
   79384         (WebCore::findWordBoundary):
   79385         * platform/qt/TextBreakIteratorQt.cpp:
   79386         (WebCore::wordBreakIterator):
   79387         (WebCore::characterBreakIterator):
   79388         (WebCore::lineBreakIterator):
   79389         (WebCore::sentenceBreakIterator):
   79390         (WebCore::textBreakFirst):
   79391         (WebCore::textBreakNext):
   79392         (WebCore::textBreakPreceding):
   79393         (WebCore::textBreakFollowing):
   79394         (WebCore::textBreakCurrent):
   79395         (WebCore::isTextBreak):
   79396 
   79397 2007-10-24  Darin Adler  <darin (a] apple.com>
   79398 
   79399         Reviewed by Maciej.
   79400 
   79401         - http://bugs.webkit.org/show_bug.cgi?id=15657
   79402           change static hash tables to use powers of two for speed
   79403 
   79404         * bindings/scripts/CodeGeneratorJS.pm: Updated to generate new format.
   79405 
   79406 2007-10-24  Simon Hausmann  <hausmann (a] kde.org>
   79407 
   79408         Reviewed by Lars.
   79409 
   79410         Make the implementation of pathByAppendingComponent use QDir.
   79411 
   79412         * platform/qt/FileSystemQt.cpp:
   79413 
   79414 2007-10-24  David Hyatt  <hyatt (a] apple.com>
   79415 
   79416         Make repainting work with transforms.
   79417 
   79418         Reviewed by John Sullivan
   79419 
   79420         * rendering/RenderBox.cpp:
   79421         (WebCore::RenderBox::computeAbsoluteRepaintRect):
   79422 
   79423 2007-10-23  Alp Toker  <alp (a] atoker.com>
   79424 
   79425         Reviewed by Maciej.
   79426 
   79427         http://bugs.webkit.org/show_bug.cgi?id=14412
   79428         [GDK] Clipboard support
   79429 
   79430         Initial clipboard implementation for the GTK+ port.
   79431 
   79432         * platform/gtk/ClipboardGtk.cpp:
   79433         (WebCore::Editor::newGeneralClipboard):
   79434         * platform/gtk/PasteboardGtk.cpp:
   79435         (WebCore::Pasteboard::generalPasteboard):
   79436         (WebCore::Pasteboard::Pasteboard):
   79437         (WebCore::Pasteboard::~Pasteboard):
   79438         (WebCore::Pasteboard::writeSelection):
   79439         (WebCore::Pasteboard::writeImage):
   79440         (WebCore::Pasteboard::clear):
   79441         (WebCore::Pasteboard::plainText):
   79442         * platform/gtk/TemporaryLinkStubs.cpp:
   79443 
   79444 2007-10-23  Timothy Hatcher  <timothy (a] apple.com>
   79445 
   79446         Reviewed by Adam.
   79447 
   79448         Fixes the Network panel so that it refreshes as needed.
   79449 
   79450         * page/inspector/ConsolePanel.js: Call the base class show() and hide() first.
   79451         * page/inspector/NetworkPanel.js: Add refreshNeeded and refreshIfNeeded back. Ditto.
   79452 
   79453 2007-10-23  Justin Garcia  <justin.garcia (a] apple.com>
   79454 
   79455         Reviewed by Oliver Hunt.
   79456 
   79457         <rdar://problem/5544856> 
   79458         REGRESSION: After typing 2-byte text, undo only undoes one keystroke at a time
   79459         
   79460         No layout test for now because I'm having trouble getting Undo during a layout
   79461         test to only undo the last Undo step, and I want to write a test that fails
   79462         without the code change.
   79463 
   79464         * editing/Editor.cpp:
   79465         (WebCore::Editor::confirmComposition): When we replace the previous composition,
   79466         delete it with a sub-command of the command used to insert the new composition,
   79467         instead of with a separate command.  No new code was added because insertText
   79468         already deletes the current selection.
   79469         (WebCore::Editor::setComposition): Ditto.
   79470 
   79471 2007-10-23  Adam Roben  <aroben (a] apple.com>
   79472 
   79473         Fix the behavior of pathByAppendingComponent when path is empty
   79474 
   79475         We now use the Windows Shell API function PathAppendW instead of
   79476         rolling our own broken implementation.
   79477 
   79478         Reviewed by Anders.
   79479 
   79480         * platform/win/FileSystemWin.cpp:
   79481         (WebCore::pathByAppendingComponent):
   79482 
   79483 2007-10-23  Adele Peterson  <adele (a] apple.com>
   79484 
   79485         Reviewed by Darin.
   79486 
   79487         Fix for <rdar://problem/5543228> CrashTracer: [USER] 2 crashes in Safari at com.apple.WebCore: WebCore::HTMLInputElement::defaultEventHandler + 872
   79488 
   79489         Test: fast/forms/textfield-onchange-deletion.html
   79490 
   79491         * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::defaultEventHandler):
   79492           Refetch the renderer since arbitrary JS code run during onchange can do anything, including destroying it.
   79493 
   79494 2007-10-23  Timothy Hatcher  <timothy (a] apple.com>
   79495 
   79496         Reviewed by Sam Weinig.
   79497 
   79498         - Made seperate files for the various classes in ResourcePanel.js.
   79499         - Broke up ResourcePanel.js and created seperate panel classes for different resource types.
   79500         - Moved View code down to the Panel base-class.
   79501         - Reduced code duplication in DatabasePanel.js by sub-classing from the new ResourcePanel.
   79502 
   79503         * page/inspector/DatabasePanel.js:
   79504         * page/inspector/DocumentPanel.js: Added.
   79505         * page/inspector/FontPanel.js: Added.
   79506         * page/inspector/ImagePanel.js: Added.
   79507         * page/inspector/Panel.js: Added.
   79508         * page/inspector/PropertiesSection.js: Added.
   79509         * page/inspector/Resource.js:
   79510         * page/inspector/ResourcePanel.js:
   79511         * page/inspector/SidebarPane.js: Added.
   79512         * page/inspector/SourcePanel.js: Added.
   79513         * page/inspector/inspector.css:
   79514         * page/inspector/inspector.html:
   79515         * page/inspector/inspector.js:
   79516 
   79517 2007-10-23  Anders Carlsson  <andersca (a] apple.com>
   79518 
   79519         Correct the version #if check.
   79520         
   79521         * platform/sql/SQLDatabase.cpp:
   79522         (WebCore::SQLDatabase::authorizerFunction):
   79523 
   79524 2007-10-23  Jon Honeycutt  <jhoneycutt (a] apple.com>
   79525 
   79526         Reviewed by Anders.
   79527 
   79528         <rdar://5548217>: [NTS] Java 6 update 3 crashes Safari when loading a 
   79529         java page
   79530 
   79531         It is possible to load Mozilla's Java plugin instead of our own, which
   79532         can lead to a crash. The fix is to prefer plugins in our own Plugins
   79533         directory when searching for a plugin.
   79534 
   79535         * plugins/win/PluginDatabaseWin.cpp:
   79536         (WebCore::safariPluginsPath): Return the path to our own Plugins
   79537         directory
   79538         (WebCore::PluginDatabaseWin::defaultPluginPaths): Use new method
   79539         safariPluginsPath()
   79540         (WebCore::PluginDatabaseWin::pluginForMIMEType): If the plugin's path is
   79541         our Plugins path, return this plugin. Otherwise, continue scanning the
   79542         list of plugins
   79543         (WebCore::PluginDatabaseWin::pluginForExtension): Same
   79544         * plugins/win/PluginPackageWin.h:
   79545         (WebCore::PluginPackageWin::path): Return this plugin's path
   79546 
   79547 2007-10-23  Jasper Bryant-Greene  <m (a] ni.ac.nz>
   79548 
   79549         Reviewed by Darin.
   79550 
   79551         http://bugs.webkit.org/show_bug.cgi?id=15058
   79552         Precedence fault in KeyEventGdk causes shift, control, alt etc to work incorrectly
   79553 
   79554         Corrected precendence fault which was causing Shift, Alt, Control and
   79555         Meta to behave incorrectly on GTK.
   79556 
   79557         Coding style fix by Alp.
   79558 
   79559         * platform/gtk/KeyEventGtk.cpp:
   79560         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
   79561 
   79562 2007-10-23  Sam Weinig  <sam (a] webkit.org>
   79563 
   79564         Reviewed by Tim Hatcher.
   79565 
   79566         Add resizing of the DOM view right sidebar.  This allows us to actually see the values now.
   79567 
   79568         * page/inspector/ResourcePanel.js:
   79569         * page/inspector/inspector.css:
   79570         * page/inspector/inspector.js:
   79571         * page/inspector/utilities.js:
   79572 
   79573 2007-10-23  David Hyatt  <hyatt (a] apple.com>
   79574 
   79575         Get basic hit testing right for transforms.
   79576 
   79577         Reviewed by ollliej
   79578 
   79579         * platform/graphics/AffineTransform.cpp:
   79580         (WebCore::AffineTransform::mapPoint):
   79581         * platform/graphics/AffineTransform.h:
   79582         * rendering/InlineBox.cpp:
   79583         (WebCore::InlineBox::nodeAtPoint):
   79584         * rendering/RenderBlock.cpp:
   79585         (WebCore::RenderBlock::nodeAtPoint):
   79586         * rendering/RenderLayer.cpp:
   79587         (WebCore::RenderLayer::paintLayer):
   79588         (WebCore::RenderLayer::hitTest):
   79589         (WebCore::RenderLayer::hitTestLayer):
   79590         * rendering/RenderLayer.h:
   79591         * rendering/RenderObject.cpp:
   79592         (WebCore::RenderObject::hitTest):
   79593         * rendering/RenderObject.h:
   79594 
   79595 2007-10-23  Eric Seidel  <eric (a] webkit.org>
   79596 
   79597         Reviewed by Mark Rowe.
   79598 
   79599         Fix leaks seen on TOT from new font-face code.
   79600 
   79601         * ksvg2/svg/SVGFontFaceElement.cpp:
   79602         (WebCore::SVGFontFaceElement::rebuildFontFace): use a stack allocated CSSProperty instead of mallocing
   79603 
   79604 2007-10-23  Eric Seidel  <eric (a] webkit.org>
   79605 
   79606         Build fix only, no review.
   79607 
   79608         Sacrifice three virgin hours upon the altar of the heathen XCode gods
   79609         and pray that our build troubles are finally over. :(
   79610 
   79611         * DerivedSources.make: add DOMSVGException.h
   79612         * WebCore.xcodeproj/project.pbxproj: Remove DOMSVG*Interal.h files from "Copy Generated Headers" phase. Why?  Who knows.
   79613 
   79614 2007-10-22  Steve Falkenburg  <sfalken (a] apple.com>
   79615 
   79616         Fix build.
   79617 
   79618         * plugins/win/PluginViewWin.cpp:
   79619 
   79620 2007-10-22  Eric Seidel  <eric (a] webkit.org>
   79621 
   79622         Build fix only, no review.
   79623 
   79624         * WebCore.xcodeproj/project.pbxproj: re-add all DOMSVG headers to copy-files phase to make sure.
   79625 
   79626 2007-10-22  Eric Seidel  <eric (a] webkit.org>
   79627 
   79628         Build fix only, no review.
   79629 
   79630         * WebCore.xcodeproj/project.pbxproj: make sure DOMSVGAnimateElement.h is copied into headers.
   79631 
   79632 2007-10-22  Eric Seidel  <eric (a] webkit.org>
   79633 
   79634         Reviewed by Maciej.
   79635 
   79636         Fix build by properly exposing SVG font-face dom bindings.
   79637 
   79638         * DerivedSources.make:
   79639         * WebCore.vcproj/WebCore.vcproj: add font-face files to build
   79640         * WebCore.xcodeproj/project.pbxproj: add missing DOM bindings files
   79641         * bindings/js/JSSVGElementWrapperFactory.cpp:
   79642         * bindings/objc/DOM.mm:
   79643         (WebCore::createElementClassMap):
   79644         * bindings/objc/DOMSVG.h:
   79645         * ksvg2/svg/SVGDefinitionSrcElement.idl: inherit from SVGElement
   79646 
   79647 2007-10-22  Mark Rowe  <mrowe (a] apple.com>
   79648 
   79649         Gtk build fix.
   79650 
   79651         * WebCore.pro:
   79652 
   79653 2007-10-22  Darin Adler  <darin (a] apple.com>
   79654 
   79655         - a first cut at fixing the Qt and GTK builds
   79656 
   79657         * WebCore.pro: Add new .idl and .cpp files.
   79658         * DerivedSources.make: Re-sorted.
   79659 
   79660 2007-10-22  Eric Seidel  <eric (a] webkit.org>
   79661 
   79662         Reviewed by hyatt.
   79663 
   79664         Implement <font-face> and friends for SVG.
   79665         http://bugs.webkit.org/show_bug.cgi?id=10652
   79666 
   79667         * DerivedSources.make:
   79668         * WebCore.xcodeproj/project.pbxproj:
   79669         * bindings/js/JSSVGElementWrapperFactory.cpp:
   79670         * dom/Document.cpp:
   79671         (WebCore::Document::mappedElementSheet):
   79672         (WebCore::Document::recalcStyleSelector):
   79673         * dom/Document.h:
   79674         * ksvg2/scripts/make_names.pl:
   79675         * ksvg2/svg/SVGDefinitionSrcElement.cpp: Added.
   79676         (WebCore::SVGDefinitionSrcElement::SVGDefinitionSrcElement):
   79677         (WebCore::SVGDefinitionSrcElement::~SVGDefinitionSrcElement):
   79678         (WebCore::SVGDefinitionSrcElement::childrenChanged):
   79679         * ksvg2/svg/SVGDefinitionSrcElement.h: Added.
   79680         * ksvg2/svg/SVGDefinitionSrcElement.idl: Added.
   79681         * ksvg2/svg/SVGFontFaceElement.cpp: Added.
   79682         (WebCore::SVGFontFaceElement::SVGFontFaceElement):
   79683         (WebCore::SVGFontFaceElement::~SVGFontFaceElement):
   79684         (WebCore::cssPropertyIdForName):
   79685         (WebCore::mapAttributeToCSSProperty):
   79686         (WebCore::cssPropertyIdForSVGAttributeName):
   79687         (WebCore::SVGFontFaceElement::parseMappedAttribute):
   79688         (WebCore::SVGFontFaceElement::rebuildFontFace):
   79689         (WebCore::SVGFontFaceElement::childrenChanged):
   79690         * ksvg2/svg/SVGFontFaceElement.h: Added.
   79691         * ksvg2/svg/SVGFontFaceElement.idl: Added.
   79692         * ksvg2/svg/SVGFontFaceFormatElement.cpp: Added.
   79693         (WebCore::SVGFontFaceFormatElement::SVGFontFaceFormatElement):
   79694         (WebCore::SVGFontFaceFormatElement::~SVGFontFaceFormatElement):
   79695         (WebCore::SVGFontFaceFormatElement::childrenChanged):
   79696         * ksvg2/svg/SVGFontFaceFormatElement.h: Added.
   79697         * ksvg2/svg/SVGFontFaceFormatElement.idl: Added.
   79698         * ksvg2/svg/SVGFontFaceNameElement.cpp: Added.
   79699         (WebCore::SVGFontFaceNameElement::SVGFontFaceNameElement):
   79700         (WebCore::SVGFontFaceNameElement::~SVGFontFaceNameElement):
   79701         (WebCore::SVGFontFaceNameElement::srcValue):
   79702         * ksvg2/svg/SVGFontFaceNameElement.h: Added.
   79703         * ksvg2/svg/SVGFontFaceNameElement.idl: Added.
   79704         * ksvg2/svg/SVGFontFaceSrcElement.cpp: Added.
   79705         (WebCore::SVGFontFaceSrcElement::SVGFontFaceSrcElement):
   79706         (WebCore::SVGFontFaceSrcElement::~SVGFontFaceSrcElement):
   79707         (WebCore::SVGFontFaceSrcElement::srcValue):
   79708         (WebCore::SVGFontFaceSrcElement::childrenChanged):
   79709         * ksvg2/svg/SVGFontFaceSrcElement.h: Added.
   79710         * ksvg2/svg/SVGFontFaceSrcElement.idl: Added.
   79711         * ksvg2/svg/SVGFontFaceUriElement.cpp: Added.
   79712         (WebCore::SVGFontFaceUriElement::SVGFontFaceUriElement):
   79713         (WebCore::SVGFontFaceUriElement::~SVGFontFaceUriElement):
   79714         (WebCore::SVGFontFaceUriElement::srcValue):
   79715         (WebCore::SVGFontFaceUriElement::childrenChanged):
   79716         * ksvg2/svg/SVGFontFaceUriElement.h: Added.
   79717         * ksvg2/svg/SVGFontFaceUriElement.idl: Added.
   79718         * ksvg2/svg/svgtags.in:
   79719 
   79720 2007-10-22  Jon Honeycutt  <jhoneycutt (a] apple.com>
   79721 
   79722         Reviewed by Anders.
   79723 
   79724         <rdar://5548217>: [NTS] Java 6 update 3 crashes Safari when loading a 
   79725         java page
   79726 
   79727         We purposefully do not destroy our Java VM when its reference count
   79728         reaches 0, but we were unloading our JavaPlugin.dll when its reference
   79729         count reached 0, which lost the reference to the VM. This led to our
   79730         process trying to create a new VM the next time a page using Java was
   79731         loaded, and the JNI spec states that a single process is not allowed to
   79732         create more than one VM. The fix is to avoid unloading the Java plugin
   79733         via our PluginQuirkDontUnloadPlugin. 
   79734 
   79735         * plugins/win/PluginViewWin.cpp:
   79736         (WebCore::PluginViewWin::determineQuirks):
   79737 
   79738 2007-10-22  David Hyatt  <hyatt (a] apple.com>
   79739 
   79740         Fix for bug 15624, make transforms work properly with opacity.
   79741 
   79742         Make sure a unitless 0 is allowed as an angle argument to rotation/skew.
   79743 
   79744         Reviewed by Mitz Pettel
   79745 
   79746         fast/transforms/transforms-with-opacity.html
   79747         fast/transforms/skew-with-unitless-zero.html
   79748 
   79749         * css/CSSParser.cpp:
   79750         (WebCore::CSSParser::validUnit):
   79751         * rendering/RenderLayer.cpp:
   79752         (WebCore::transparencyClipBox):
   79753         (WebCore::RenderLayer::beginTransparencyLayers):
   79754         (WebCore::RenderLayer::paintLayer):
   79755         (WebCore::RenderLayer::calculateClipRects):
   79756         * rendering/RenderLayer.h:
   79757         (WebCore::RenderLayer::transform):
   79758 
   79759 2007-10-22  Adam Roben  <aroben (a] apple.com>
   79760 
   79761         Windows build fix
   79762 
   79763         * WebCore.vcproj/WebCore.vcproj: Copy header files from platform/sql.
   79764         * page/Page.cpp: Touched to force the header files to be copied.
   79765 
   79766 2007-10-22  Nikolas Zimmermann  <zimmermann (a] kde.org>
   79767 
   79768         Reviewed by Simon.
   79769 
   79770         Move textPath related SVGChar data in it's own structure SVGCharOnPath.
   79771         Store a pointer to that datastructure inside SVGChar, instead of 4 floats & one bool.
   79772 
   79773         Saves space for the common case. And allows me to add more data (another float) to support
   79774         glyph-orientation-* on textPath later on...
   79775 
   79776         * rendering/SVGCharacterLayoutInfo.cpp:
   79777         (WebCore::SVGChar::characterTransform):
   79778         * rendering/SVGCharacterLayoutInfo.h:
   79779         * rendering/SVGRootInlineBox.cpp:
   79780         (WebCore::SVGRootInlineBoxPaintWalker::chunkPortionCallback):
   79781         (WebCore::SVGRootInlineBox::buildLayoutInformationForTextBox):
   79782 
   79783 2007-10-22  Alp Toker  <alp (a] atoker.com>
   79784 
   79785         Reviewed by Nikolas Zimmermann.
   79786 
   79787         Implement more GraphicsContextCairo stubs.
   79788 
   79789         Remove a hack "to work around no current point bug" that was breaking
   79790         canvas tests.
   79791 
   79792         Fix warnings.
   79793 
   79794         * platform/graphics/cairo/CairoPath.h:
   79795         (WebCore::CairoPath::CairoPath):
   79796         * platform/graphics/cairo/GraphicsContextCairo.cpp:
   79797         (WebCore::GraphicsContext::addInnerRoundedRectClip):
   79798         (WebCore::GraphicsContext::strokeRect):
   79799         * platform/graphics/cairo/PathCairo.cpp:
   79800         (WebCore::Path::isEmpty):
   79801         * platform/graphics/svg/cairo/SVGPaintServerGradientCairo.cpp:
   79802         (WebCore::SVGPaintServerGradient::setup):
   79803         * platform/graphics/svg/cairo/SVGPaintServerSolidCairo.cpp:
   79804         (WebCore::SVGPaintServerSolid::setup):
   79805 
   79806 2007-10-22  Simon Hausmann  <hausmann (a] kde.org>
   79807 
   79808         Reviewed by Nikolas.
   79809 
   79810         Fix compilation from a clean build with the database feature disabled.
   79811         JSCustomVersionChangeCallback.cpp doesn't actually need the SQL header file, just ScriptInterpreter.
   79812 
   79813         * bindings/js/JSCustomVersionChangeCallback.cpp:
   79814         * page/InspectorController.cpp:
   79815 
   79816 2007-10-22  Andrew Wellington  <proton (a] wiretapped.net>
   79817 
   79818         Reviewed by Mark Rowe.
   79819 
   79820         Fix for local database support after r26879
   79821         Ensure that ENABLE_DATABASE and ENABLE_ICONDATABASE are correctly set
   79822 
   79823         * Configurations/WebCore.xcconfig:
   79824         * WebCore.pro:
   79825         * WebCore.vcproj/build-generated-files.sh:
   79826 
   79827 2007-10-22  Simon Hausmann  <hausmann (a] kde.org>
   79828 
   79829         Reviewed by Lars.
   79830 
   79831         Disable the Database feature for the qmake build for now.
   79832 
   79833         * WebCore.pro:
   79834 
   79835 2007-10-22  Simon Hausmann  <hausmann (a] kde.org>
   79836 
   79837         Reviewed by Lars.
   79838 
   79839         Make disabling the database feature (ENABLE_DATABASE=0) work by
   79840         placing various #ifdefs into the code and making the compilation of
   79841         some files optional.
   79842 
   79843         * WebCore.pro:
   79844         * dom/Document.cpp:
   79845         (WebCore::Document::~Document):
   79846         (WebCore::Document::defaultEventHandler):
   79847         * dom/Document.h:
   79848         * page/DOMWindow.cpp:
   79849         * page/DOMWindow.h:
   79850         * page/DOMWindow.idl:
   79851         * page/InspectorController.cpp:
   79852         (WebCore::InspectorController::windowScriptObjectAvailable):
   79853         (WebCore::InspectorController::populateScriptResources):
   79854         (WebCore::InspectorController::clearDatabaseScriptResources):
   79855         (WebCore::InspectorController::didCommitLoad):
   79856         * page/InspectorController.h:
   79857 
   79858 2007-10-22  Alp Toker  <alp (a] atoker.com>
   79859 
   79860         Reviewed by Mark Rowe.
   79861 
   79862         http://bugs.webkit.org/show_bug.cgi?id=15611
   79863         [GTK] Text selection behaviour different in Debug and Release builds
   79864 
   79865         http://bugs.webkit.org/show_bug.cgi?id=15578
   79866         [GTK] Text editor caret does not blink
   79867 
   79868         Never allow control to reach the end of non-void functions.
   79869 
   79870         Return more sensible values, or in some cases, nulls.
   79871 
   79872         * page/gtk/EventHandlerGtk.cpp:
   79873         (WebCore::isKeyboardOptionTab):
   79874         (WebCore::EventHandler::tabsToAllControls):
   79875         (WebCore::EventHandler::eventActivatedView):
   79876 
   79877 2007-10-22  Holger Freyther  <zecke (a] selfish.org>
   79878 
   79879         Reviewed by Simon Hausmann <hausmann (a] kde.org>.
   79880 
   79881         Implement ResourceHandle::loadResourceSynchronously using ResourceHandle and a special ResourceHandleClient. This approach has the possible danger of reentrancy.
   79882 
   79883         * platform/network/qt/ResourceHandleQt.cpp:
   79884         (WebCore::WebCoreSynchronousLoader::resourceResponse):
   79885         (WebCore::WebCoreSynchronousLoader::resourceError):
   79886         (WebCore::WebCoreSynchronousLoader::data):
   79887         (WebCore::WebCoreSynchronousLoader::WebCoreSynchronousLoader):
   79888         (WebCore::WebCoreSynchronousLoader::didReceiveResponse):
   79889         (WebCore::WebCoreSynchronousLoader::didReceiveData):
   79890         (WebCore::WebCoreSynchronousLoader::didFinishLoading):
   79891         (WebCore::WebCoreSynchronousLoader::didFail):
   79892         (WebCore::WebCoreSynchronousLoader::waitForCompletion):
   79893         (WebCore::ResourceHandle::loadResourceSynchronously):
   79894 
   79895 2007-10-22  Holger Hans Peter Freyther <zecke (a] selfish.org>
   79896 
   79897         Reviewed by Lars Knoll <lars (a] trolltech.com>.
   79898 
   79899         Style fix. It is allowed to attempt to delete 0.
   79900 
   79901         * platform/qt/ClipboardQt.cpp:
   79902 
   79903 2007-10-22  Holger Hans Peter Freyther <zecke (a] selfish.org>
   79904 
   79905         Reviewed by Lars Knoll <lars (a] trolltech.com>.
   79906 
   79907         Make it actually localizable....
   79908 
   79909         * platform/qt/Localizations.cpp:
   79910         (WebCore::submitButtonDefaultLabel):
   79911         (WebCore::inputElementAltText):
   79912         (WebCore::searchableIndexIntroduction):
   79913         (WebCore::fileButtonChooseFileLabel):
   79914         (WebCore::fileButtonNoFileSelectedLabel):
   79915         (WebCore::contextMenuItemTagOpenLinkInNewWindow):
   79916         (WebCore::contextMenuItemTagDownloadLinkToDisk):
   79917         (WebCore::contextMenuItemTagCopyLinkToClipboard):
   79918         (WebCore::contextMenuItemTagOpenImageInNewWindow):
   79919         (WebCore::contextMenuItemTagDownloadImageToDisk):
   79920         (WebCore::contextMenuItemTagCopyImageToClipboard):
   79921         (WebCore::contextMenuItemTagOpenFrameInNewWindow):
   79922         (WebCore::contextMenuItemTagCopy):
   79923         (WebCore::contextMenuItemTagGoBack):
   79924         (WebCore::contextMenuItemTagGoForward):
   79925         (WebCore::contextMenuItemTagStop):
   79926         (WebCore::contextMenuItemTagReload):
   79927         (WebCore::contextMenuItemTagCut):
   79928         (WebCore::contextMenuItemTagPaste):
   79929         (WebCore::contextMenuItemTagNoGuessesFound):
   79930         (WebCore::contextMenuItemTagIgnoreSpelling):
   79931         (WebCore::contextMenuItemTagLearnSpelling):
   79932         (WebCore::contextMenuItemTagSearchWeb):
   79933         (WebCore::contextMenuItemTagLookUpInDictionary):
   79934         (WebCore::contextMenuItemTagOpenLink):
   79935         (WebCore::contextMenuItemTagIgnoreGrammar):
   79936         (WebCore::contextMenuItemTagSpellingMenu):
   79937         (WebCore::contextMenuItemTagShowSpellingPanel):
   79938         (WebCore::contextMenuItemTagCheckSpelling):
   79939         (WebCore::contextMenuItemTagCheckSpellingWhileTyping):
   79940         (WebCore::contextMenuItemTagCheckGrammarWithSpelling):
   79941         (WebCore::contextMenuItemTagFontMenu):
   79942         (WebCore::contextMenuItemTagBold):
   79943         (WebCore::contextMenuItemTagItalic):
   79944         (WebCore::contextMenuItemTagUnderline):
   79945         (WebCore::contextMenuItemTagOutline):
   79946         (WebCore::contextMenuItemTagWritingDirectionMenu):
   79947         (WebCore::contextMenuItemTagDefaultDirection):
   79948         (WebCore::contextMenuItemTagLeftToRight):
   79949         (WebCore::contextMenuItemTagRightToLeft):
   79950         (WebCore::contextMenuItemTagInspectElement):
   79951         (WebCore::searchMenuNoRecentSearchesText):
   79952         (WebCore::searchMenuRecentSearchesText):
   79953 
   79954 2007-10-22  Holger Hans Peter Freyther <zecke (a] selfish.org>
   79955 
   79956         Reviewed by Lars Knoll <lars (a] trolltech.com>.
   79957 
   79958         Adjust the code to obey the Coding Style.
   79959 
   79960         * platform/qt/Localizations.cpp:
   79961         (WebCore::submitButtonDefaultLabel):
   79962         (WebCore::inputElementAltText):
   79963         (WebCore::resetButtonDefaultLabel):
   79964         (WebCore::defaultLanguage):
   79965         (WebCore::searchableIndexIntroduction):
   79966         (WebCore::fileButtonChooseFileLabel):
   79967         (WebCore::fileButtonNoFileSelectedLabel):
   79968         (WebCore::contextMenuItemTagOpenLinkInNewWindow):
   79969         (WebCore::contextMenuItemTagDownloadLinkToDisk):
   79970         (WebCore::contextMenuItemTagCopyLinkToClipboard):
   79971         (WebCore::contextMenuItemTagOpenImageInNewWindow):
   79972         (WebCore::contextMenuItemTagDownloadImageToDisk):
   79973         (WebCore::contextMenuItemTagCopyImageToClipboard):
   79974         (WebCore::contextMenuItemTagOpenFrameInNewWindow):
   79975         (WebCore::contextMenuItemTagCopy):
   79976         (WebCore::contextMenuItemTagGoBack):
   79977         (WebCore::contextMenuItemTagGoForward):
   79978         (WebCore::contextMenuItemTagStop):
   79979         (WebCore::contextMenuItemTagReload):
   79980         (WebCore::contextMenuItemTagCut):
   79981         (WebCore::contextMenuItemTagPaste):
   79982         (WebCore::contextMenuItemTagNoGuessesFound):
   79983         (WebCore::contextMenuItemTagIgnoreSpelling):
   79984         (WebCore::contextMenuItemTagLearnSpelling):
   79985         (WebCore::contextMenuItemTagSearchWeb):
   79986         (WebCore::contextMenuItemTagLookUpInDictionary):
   79987         (WebCore::contextMenuItemTagOpenLink):
   79988         (WebCore::contextMenuItemTagIgnoreGrammar):
   79989         (WebCore::contextMenuItemTagSpellingMenu):
   79990         (WebCore::contextMenuItemTagShowSpellingPanel):
   79991         (WebCore::contextMenuItemTagCheckSpelling):
   79992         (WebCore::contextMenuItemTagCheckSpellingWhileTyping):
   79993         (WebCore::contextMenuItemTagCheckGrammarWithSpelling):
   79994         (WebCore::contextMenuItemTagFontMenu):
   79995         (WebCore::contextMenuItemTagBold):
   79996         (WebCore::contextMenuItemTagItalic):
   79997         (WebCore::contextMenuItemTagUnderline):
   79998         (WebCore::contextMenuItemTagOutline):
   79999         (WebCore::contextMenuItemTagWritingDirectionMenu):
   80000         (WebCore::contextMenuItemTagDefaultDirection):
   80001         (WebCore::contextMenuItemTagLeftToRight):
   80002         (WebCore::contextMenuItemTagRightToLeft):
   80003         (WebCore::contextMenuItemTagInspectElement):
   80004         (WebCore::searchMenuNoRecentSearchesText):
   80005         (WebCore::searchMenuRecentSearchesText):
   80006         (WebCore::searchMenuClearRecentSearchesText):
   80007         (WebCore::AXWebAreaText):
   80008         (WebCore::AXLinkText):
   80009         (WebCore::AXListMarkerText):
   80010         (WebCore::AXImageMapText):
   80011         (WebCore::AXHeadingText):
   80012         (WebCore::unknownFileSizeText):
   80013 
   80014 2007-10-22 Holger Hans Peter Freyther <zecke (a] selfish.org>
   80015 
   80016         Reviewed by Lars Knoll <lars (a] trolltech.com>.
   80017 
   80018         Return a non empty string in more functions.
   80019 
   80020         * platform/qt/Localizations.cpp:
   80021         (WebCore::contextMenuItemTagShowSpellingPanel):
   80022 
   80023 2007-10-22  Holger Hans Peter Freyther <zecke (a] selfish.org>
   80024 
   80025         Reviewed by Lars Knoll <lars (a] trolltech.com>.
   80026 
   80027         Shrink the TemporaryLinkStubs and move the
   80028         Frame::setNeedsReapplyStyles stub to FrameQt.cpp
   80029 
   80030         * page/qt/FrameQt.cpp:
   80031         (WebCore::Frame::setNeedsReapplyStyles):
   80032         * platform/qt/TemporaryLinkStubs.cpp:
   80033 
   80034 2007-10-22  Holger Freyther  <zecke (a] selfish.org>
   80035 
   80036         Reviewed by Lars Knoll <lars (a] trolltech.com>.
   80037 
   80038         Implement the WebCore::fileSize function. The
   80039         implementation assumes that QFileInfo will cache
   80040         the result of the stat so that info.size() and
   80041         info.exists() use the same stat result.
   80042 
   80043         * platform/qt/FileSystemQt.cpp:
   80044         (WebCore::deleteFile):
   80045         * platform/qt/TemporaryLinkStubs.cpp:
   80046 
   80047 2007-10-21  Alp Toker  <alp (a] atoker.com>
   80048 
   80049         Reviewed by Mark Rowe.
   80050 
   80051         Use the portable GLib time function.
   80052 
   80053         Use event timestamps rather than the current time where available.
   80054 
   80055         Rename SharedTimerLinux.cpp since it isn't Linux-specific.
   80056 
   80057         * WebCore.pro:
   80058         * platform/gtk/MouseEventGtk.cpp:
   80059         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
   80060         * platform/gtk/SystemTimeGtk.cpp: Added.
   80061         (WebCore::currentTime):
   80062         * platform/gtk/SharedTimerGtk.cpp: Copied from platform/gtk/SharedTimerLinux.cpp.
   80063         * platform/gtk/SharedTimerLinux.cpp: Removed.
   80064 
   80065 2007-10-22  David Hyatt  <hyatt (a] apple.com>
   80066 
   80067         Fix for 15596, regression from my transform changes.  Preserve null checks on the clip rects calls for parent(),
   80068         since the method is called on orphaned layers.  This is not very well understood.
   80069 
   80070         Reviewed by eric
   80071 
   80072         * rendering/RenderLayer.cpp:
   80073         (WebCore::RenderLayer::calculateClipRects):
   80074         (WebCore::RenderLayer::calculateRects):
   80075 
   80076 2007-10-21  Mark Rowe  <mrowe (a] apple.com>
   80077 
   80078         Reviewed by Alp.
   80079 
   80080         http://bugs.webkit.org/show_bug.cgi?id=15575
   80081         Bug 15575: [GTK] Implement threading using GThread
   80082 
   80083         * WebCore.pro: Remove ThreadingPthreads.cpp from the Gtk build and link against libgthreads.
   80084         * loader/icon/IconDatabase.cpp: Initialize threading before the mutex is created to be compatible with gthreads.
   80085         (WebCore::iconDatabase):
   80086         (WebCore::IconDatabase::open):
   80087         * platform/Threading.h:
   80088         * platform/gtk/ThreadingGtk.cpp: Threading implementation in terms of GThread, based heavily on the pthreads implementation.
   80089         (WebCore::initializeThreading):
   80090         (WebCore::threadMapMutex):
   80091         (WebCore::threadMap):
   80092         (WebCore::establishIdentifierForThread):
   80093         (WebCore::threadForIdentifier):
   80094         (WebCore::clearThreadForIdentifier):
   80095         (WebCore::createThread):
   80096         (WebCore::waitForThreadCompletion):
   80097         (WebCore::detachThread):
   80098         (WebCore::Mutex::Mutex):
   80099         (WebCore::Mutex::~Mutex):
   80100         (WebCore::Mutex::lock):
   80101         (WebCore::Mutex::tryLock):
   80102         (WebCore::Mutex::unlock):
   80103         (WebCore::ThreadCondition::ThreadCondition):
   80104         (WebCore::ThreadCondition::~ThreadCondition):
   80105         (WebCore::ThreadCondition::wait):
   80106         (WebCore::ThreadCondition::signal):
   80107         (WebCore::ThreadCondition::broadcast):
   80108         * storage/Database.cpp:
   80109         (WebCore::Database::Database): Initialize threading when Database is used so that it will be initialized even
   80110         if the icon database is compiled out
   80111 
   80112 2007-10-21  Mark Rowe  <mrowe (a] apple.com>
   80113 
   80114         Build fix.
   80115 
   80116         * ksvg2/css/SVGCSSStyleSelector.cpp: Use fabsf when dealing with a float to prevent the
   80117         implicit conversion warning.
   80118 
   80119 2007-10-21  Alp Toker  <alp (a] atoker.com>
   80120 
   80121         Reviewed by Mark Rowe.
   80122 
   80123         Implement spelling and grammar mistake underlining with Pango/Cairo.
   80124 
   80125         This change does not add any actual support for spelling or grammar
   80126         checking to any port.
   80127 
   80128         * platform/graphics/cairo/GraphicsContextCairo.cpp:
   80129         (WebCore::GraphicsContext::drawLineForMisspellingOrBadGrammar):
   80130 
   80131 2007-10-21  Alp Toker  <alp (a] atoker.com>
   80132 
   80133         Reviewed by Mark Rowe.
   80134 
   80135         Cairo canvas fixes:
   80136 
   80137         Fix a refcounting issue leading to leaks and crashes on canvas
   80138         content.
   80139 
   80140         Delegate memory management of canvas images to Cairo.
   80141 
   80142         Mark unhandled conditions with notImplemented() instead of silently
   80143         ignoring them.
   80144 
   80145         * html/CanvasRenderingContext2D.cpp:
   80146         (WebCore::CanvasRenderingContext2D::drawImage):
   80147         * html/CanvasStyle.cpp:
   80148         (WebCore::CanvasStyle::applyStrokeColor):
   80149         * html/CanvasStyle.h:
   80150         * html/HTMLCanvasElement.cpp:
   80151         (WebCore::HTMLCanvasElement::HTMLCanvasElement):
   80152         (WebCore::HTMLCanvasElement::~HTMLCanvasElement):
   80153         (WebCore::HTMLCanvasElement::reset):
   80154         (WebCore::HTMLCanvasElement::paint):
   80155         (WebCore::HTMLCanvasElement::createDrawingContext):
   80156         (WebCore::HTMLCanvasElement::createPlatformImage):
   80157 
   80158 2007-10-21  Nikolas Zimmermann  <zimmermann (a] kde.org>
   80159 
   80160         Reviewed by Eric.
   80161 
   80162         Handle glyph-orientation-vertical / glyph-orientation-horizontal SVG CSS properties.
   80163 
   80164         The SVG layouting code itself doesn't handle these properties yet,
   80165         it's just about recognizing them in the SVG CSS engine.
   80166 
   80167         * ksvg2/css/SVGCSSComputedStyleDeclaration.cpp:
   80168         (WebCore::CSSComputedStyleDeclaration::getSVGPropertyCSSValue):
   80169         * ksvg2/css/SVGCSSParser.cpp:
   80170         (WebCore::CSSParser::parseSVGValue):
   80171         * ksvg2/css/SVGCSSStyleSelector.cpp:
   80172         (WebCore::CSSStyleSelector::applySVGProperty):
   80173         * ksvg2/css/SVGRenderStyle.h:
   80174         (WebCore::SVGRenderStyle::InheritedFlags::operator==):
   80175         (WebCore::SVGRenderStyle::InheritedFlags::operator!=):
   80176         (WebCore::SVGRenderStyle::setBitDefaults):
   80177         * ksvg2/css/SVGRenderStyleDefs.h:
   80178 
   80179 2007-10-21  Christian Dywan  <christian (a] twotoasts.de>
   80180 
   80181         Reviewed by Alp.
   80182 
   80183         http://bugs.webkit.org/show_bug.cgi?id=15589
   80184         Use glib's path separator on gtk
   80185 
   80186         * platform/gtk/FileSystemGtk.cpp:
   80187         (WebCore::pathByAppendingComponent):
   80188 
   80189 2007-10-21  Dan Bernstein  <mitz (a] apple.com>
   80190 
   80191         Reviewed by Dave Hyatt.
   80192 
   80193         - fix http://bugs.webkit.org/show_bug.cgi?id=15259
   80194           <rdar://problem/5499902> REGRESSION: Text overflows when using word spacing and centering (affects myspace.com music videos page)
   80195 
   80196         Test: fast/text/word-space.html
   80197 
   80198         * rendering/RenderBlock.cpp:
   80199         (WebCore::stripTrailingSpace): Added word-spacing to the width of the
   80200         space being stripped out.
   80201         * rendering/RenderText.cpp:
   80202         (WebCore::RenderText::trimmedPrefWidths): Changed handling of
   80203         leading space. Since Font::width includes leading space width but not
   80204         leading word spacing, this method needs to either remove the width of a
   80205         space character or add word spacing,
   80206         depending on stripFrontSpaces. 
   80207         (WebCore::RenderText::calcPrefWidths): Corrected the check for adding
   80208         trailing word spacing so that it would work in the case where the last
   80209         space is ignored.
   80210         * rendering/bidi.cpp:
   80211         (WebCore::RenderBlock::computeHorizontalPositionsForLine): Changed to
   80212         actually add word spacing to the total width.
   80213 
   80214 2007-10-20  David Hyatt  <hyatt (a] apple.com>
   80215 
   80216         Land support for the transform CSS property.  Basic painting now works properly. There are many open issues
   80217         that will have to be covered by individual bugs.
   80218 
   80219         Reviewed by olliej
   80220 
   80221         * css/CSSParser.cpp:
   80222         (WebCore::CSSParser::validUnit):
   80223         (WebCore::CSSParser::parseTransform):
   80224         * rendering/RenderLayer.cpp:
   80225         (WebCore::RenderLayer::RenderLayer):
   80226         (WebCore::RenderLayer::~RenderLayer):
   80227         (WebCore::RenderLayer::updateLayerPositions):
   80228         (WebCore::RenderLayer::updateTransform):
   80229         (WebCore::transparencyClipBox):
   80230         (WebCore::RenderLayer::beginTransparencyLayers):
   80231         (WebCore::RenderLayer::paintLayer):
   80232         (WebCore::RenderLayer::calculateClipRects):
   80233         (WebCore::RenderLayer::calculateRects):
   80234         (WebCore::RenderLayer::childrenClipRect):
   80235         (WebCore::RenderLayer::selfClipRect):
   80236         (WebCore::RenderLayer::intersectsDamageRect):
   80237         (WebCore::RenderLayer::boundingBox):
   80238         * rendering/RenderLayer.h:
   80239         * rendering/RenderObject.cpp:
   80240         (WebCore::RenderObject::containingBlock):
   80241         (WebCore::RenderObject::container):
   80242         * rendering/RenderStyle.cpp:
   80243         (WebCore::RenderStyle::applyTransform):
   80244         * rendering/RenderStyle.h:
   80245         (WebCore::TransformOperation::isScaleOperation):
   80246         (WebCore::TransformOperation::isRotateOperation):
   80247         (WebCore::TransformOperation::isSkewOperation):
   80248         (WebCore::TransformOperation::isTranslateOperation):
   80249         (WebCore::TransformOperation::isMatrixOperation):
   80250         (WebCore::ScaleTransformOperation::isScaleOperation):
   80251         (WebCore::RotateTransformOperation::isRotateOperation):
   80252         (WebCore::SkewTransformOperation::isSkewOperation):
   80253         (WebCore::TranslateTransformOperation::isTranslateOperation):
   80254         (WebCore::MatrixTransformOperation::isMatrixOperation):
   80255         * rendering/RenderTableRow.h:
   80256         (WebCore::RenderTableRow::requiresLayer):
   80257         * rendering/RenderTreeAsText.cpp:
   80258         (WebCore::writeLayers):
   80259 
   80260 2007-10-20  Timothy Hatcher  <timothy (a] apple.com>
   80261 
   80262         Reviewed by Adam.
   80263 
   80264         Add basic @font-face to the Web Inspector.
   80265 
   80266         * page/InspectorController.cpp:
   80267         (WebCore::InspectorResource::type): Check for CachedResource::FontResource.
   80268         * page/inspector/Resource.js: Add support for Font types and font preview in the icon.
   80269         * page/inspector/ResourcePanel.js: Show a font preview for font resources.
   80270         * page/inspector/inspector.css: Style for the font preview and font icon.
   80271         * page/inspector/inspector.js: Add font mime types.
   80272 
   80273 2007-10-20  Sam Weinig  <sam (a] webkit.org>
   80274 
   80275         Reviewed by Mark Rowe.
   80276 
   80277         Fixes:
   80278             - http://bugs.webkit.org/show_bug.cgi?id=14393
   80279               Column on the left side of the Web Inspector should have a smaller minimum width for resizing
   80280             - http://bugs.webkit.org/show_bug.cgi?id=14394
   80281               Left pane of the Web Inspector "shakes" when resizing it to maximum width
   80282 
   80283         * page/inspector/inspector.js: Change the constraint logic to only enforce a 100px min-width
   80284           and window.innerWidth - 100 max-width for the sidebar.  The change also makes the viewbuttons
   80285           move with the sidebar.
   80286 
   80287 2007-10-20  Dan Bernstein  <mitz (a] apple.com>
   80288 
   80289         Reviewed by Dave Hyatt.
   80290 
   80291         - fix http://bugs.webkit.org/show_bug.cgi?id=15208
   80292           display:table causes the collapsed text to show at a different position when expanded
   80293 
   80294         Test: fast/table/insert-before-anonymous-ancestors.html
   80295 
   80296         * rendering/RenderTable.cpp:
   80297         (WebCore::RenderTable::addChild): Rolled out r11579. I think whatever
   80298         that change was supposed to accomplish has since been done in other
   80299         places in the code.
   80300 
   80301 2007-10-20  Mark Rowe  <mrowe (a] apple.com>
   80302 
   80303         Reviewed by Dave Hyatt.
   80304 
   80305         Fix http://bugs.webkit.org/show_bug.cgi?id=15584
   80306         Bug 15584: REGRESSION(r26696): GtkLauncher segfaults on WebCore::WidthIterator::advance
   80307 
   80308         * platform/Font.cpp:
   80309         (WebCore::Font::glyphDataForCharacter): If the fallback page exists but does not have a
   80310         glyph for the character, fall back to the missing glyph data rather than returning an
   80311         invalid GlyphData.
   80312 
   80313 2007-10-20  Jasper Bryant-Greene  <m (a] ni.ac.nz>
   80314 
   80315         Reviewed by Maciej.
   80316 
   80317         Changed the hard-coded scroll delta in WheelEventGtk from 120 to 0.25,
   80318         as suggested by George Wright in #15108 (which this patch will
   80319         resolve).
   80320 
   80321         This gives a more sane scrolling behaviour, rather than the
   80322         jumping to the end or start of the document as occurred previously.
   80323 
   80324         * platform/gtk/WheelEventGtk.cpp:
   80325         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
   80326 
   80327 2007-10-20  Alp Toker  <alp (a] atoker.com>
   80328 
   80329         Reviewed by Eric.
   80330 
   80331         Support text boundary detection.
   80332         Move TextBoundariesWin.cpp to platform/ since it's portable and useful.
   80333         Split out and implement some TemporaryLinkStubs.
   80334 
   80335         * WebCore.pro:
   80336         * WebCore.vcproj/WebCore.vcproj:
   80337         * platform/TextBoundariesICU.cpp: Copied from WebCore/platform/win/TextBoundariesWin.cpp.
   80338         * platform/gtk/Language.cpp: Added.
   80339         (WebCore::defaultLanguage):
   80340         * platform/gtk/TemporaryLinkStubs.cpp:
   80341         * platform/gtk/TextBreakIteratorInternalICUGtk.cpp: Added.
   80342         (WebCore::currentTextBreakLocaleID):
   80343         * platform/win/TextBoundariesWin.cpp: Removed.
   80344 
   80345 2007-10-20  Mark Rowe  <mrowe (a] apple.com>
   80346 
   80347         Reviewed by Tim Hatcher.
   80348 
   80349         Workaround for http://bugs.webkit.org/show_bug.cgi?id=15574
   80350         Bug 15574: Web Inspector doesn't work with the new Database feature
   80351 
   80352         The executeSql callback is executed in the security domain of the web page that owns the database,
   80353         while the inspector's window object is in the callback functions scope chain.  This is leading to a
   80354         security violation when the callback attempts to access "document".  We can work around this by
   80355         ensuring that "document" can be found in the scope chain before the window object.
   80356 
   80357         * page/inspector/DatabasePanel.js:
   80358 
   80359 2007-10-20  Darin Adler  <darin (a] apple.com>
   80360 
   80361         Reviewed by Maciej.
   80362 
   80363         - http://bugs.webkit.org/show_bug.cgi?id=15567
   80364           speed up hashing const char* by removing call to strlen
   80365 
   80366         This includes one other fix as well. Both were from a day where I did some
   80367         profiling to find hot spots when running the page load test.
   80368 
   80369         * platform/StringImpl.cpp:
   80370         (WebCore::StringImpl::computeHash): Compute the hash without calling strlen.
   80371         Also change the argument names to not confusingly use m_ prefixes.
   80372         (WebCore::StringImpl::createStrippingNull): Added a faster case for strings that
   80373         don't have null.
   80374 
   80375 2007-10-20  Mark Rowe  <mrowe (a] apple.com>
   80376 
   80377         Reviewed by Alp.
   80378 
   80379         Gtk changes needed to enable HTML 5 client-side database storage.
   80380 
   80381         * WebCore.pro: Have Gtk use ThreadingPthreads.cpp.
   80382         * platform/pthreads/ThreadingPthreads.cpp: Include errno so that EDEADLK and EBUSY are available.
   80383 
   80384 2007-10-20  Mark Rowe  <mrowe (a] apple.com>
   80385 
   80386         Reviewed by Alp.
   80387 
   80388         Implement callOnMainThread for Gtk+ via a one-shot zero-delay timer that will be dispatched
   80389         from the main event loop.
   80390 
   80391         * WebCore.pro:
   80392         * platform/gtk/TemporaryLinkStubs.cpp:
   80393         * platform/gtk/ThreadingGtk.cpp: Added.
   80394         (WebCore::callFunctionOnMainThread):
   80395         (WebCore::callOnMainThread):
   80396 
   80397 2007-10-20  Nikolas Zimmermann  <zimmermann (a] kde.org>
   80398 
   80399         Reviewed by Eric.
   80400 
   80401         Fix non-functional display="inline" / display="none" for SVG text.
   80402 
   80403         Fixes: svg/W3C-SVG-1.1/animate-elem-39-t.svg (display="inline" support)
   80404         Fixes: svg/batik/text/textProperties2.svg (display="inline/none" support)
   80405         Fixes: svg/carto.net/tabgroup.svg (display="none" support, stray content before layouting)
   80406         
   80407         * css/svg.css: Remove "important" flag on text/foreignObject display: block property
   80408         * rendering/RenderSVGBlock.cpp:
   80409         (WebCore::RenderSVGBlock::setStyle):
   80410 
   80411 2007-10-20  Mark Rowe  <mrowe (a] apple.com>
   80412 
   80413         Reviewed by Alp.
   80414 
   80415         Replace #ifdef'd code with the appropriate use of a forwarding header.
   80416 
   80417         * ForwardingHeaders/kjs/array_instance.h: Added.
   80418         * bindings/js/JSDatabaseCustom.cpp:
   80419 
   80420 2007-10-20  Nikolas Zimmermann  <zimmermann (a] kde.org>
   80421 
   80422         Reviewed by Oliver.
   80423 
   80424         Add support for 'kerning' property in SVG text layout code.
   80425         Support all textLength/lengthAdjust modes on normal text & textPaths.
   80426 
   80427         Support letter & word spacing on textPath.
   80428         Fix text selection when any spacing (letter/word/kerning) is involved.
   80429 
   80430         Fixes: http://bugs.webkit.org/show_bug.cgi?id=15571
   80431         Fixes: svg/batik/text/textOnPathSpaces.svg (spacing)
   80432                svg/batik/text/textLayout.svg (kerning support)
   80433                svg/text/text-spacing-01-b.svg (text selection)
   80434 
   80435         * platform/Font.cpp:
   80436         (WebCore::WidthIterator::advance):
   80437         * platform/TextStyle.h:
   80438         (WebCore::TextStyle::TextStyle):
   80439         (WebCore::TextStyle::spacingDisabled):
   80440         (WebCore::TextStyle::disableSpacing):
   80441         * rendering/SVGCharacterLayoutInfo.cpp:
   80442         (WebCore::SVGCharacterLayoutInfo::SVGCharacterLayoutInfo):
   80443         (WebCore::SVGCharacterLayoutInfo::nextPathLayoutPointAndAngle):
   80444         (WebCore::SVGCharacterLayoutInfo::setInPathLayout):
   80445         (WebCore::SVGCharacterLayoutInfo::addLayoutInformation):
   80446         (WebCore::SVGChar::characterTransform):
   80447         * rendering/SVGCharacterLayoutInfo.h:
   80448         (WebCore::SVGTextChunkLayoutInfo::SVGTextChunkLayoutInfo):
   80449         * rendering/SVGRootInlineBox.cpp:
   80450         (WebCore::closeTextChunk):
   80451         (WebCore::calculateKerning):
   80452         (WebCore::SVGRootInlineBox::placeBoxesHorizontally):
   80453         (WebCore::svgTextStyleForInlineTextBox):
   80454         (WebCore::calculateTextAnchorShiftForTextChunk):
   80455         (WebCore::applyTextAnchorToTextChunk):
   80456         (WebCore::calculateTextLengthCorrectionForTextChunk):
   80457         (WebCore::applyTextLengthCorrectionToTextChunk):
   80458         (WebCore::SVGRootInlineBox::computePerCharacterLayoutInformation):
   80459         (WebCore::SVGRootInlineBox::buildLayoutInformation):
   80460         (WebCore::SVGRootInlineBox::buildLayoutInformationForTextBox):
   80461         (WebCore::SVGRootInlineBox::buildTextChunks):
   80462         (WebCore::SVGRootInlineBox::layoutTextChunks):
   80463         * rendering/SVGRootInlineBox.h:
   80464 
   80465 2007-10-20  Rodney Dawes  <dobey (a] wayofthemonkey.com>
   80466 
   80467         Reviewd by Darin.
   80468 
   80469         http://bugs.webkit.org/show_bug.cgi?id=15563
   80470         Fix conflict with X11 Window type in WebCore
   80471 
   80472         * WebCore/bindings/js/JSDocumentCustom.cpp:
   80473         * WebCore/bindings/js/JSHTMLDocumentCustom.cpp:
   80474         * WebCore/bindings/js/JSHTMLFrameSetElementCustom.cpp:
   80475         * WebCore/bindings/js/kjs_dom.cpp:
   80476         * WebCore/bindings/js/kjs_events.cpp:
   80477         * WebCore/bindings/js/kjs_proxy.cpp:
   80478         * WebCore/history/CachedPage.cpp:
   80479         * WebCore/page/Chrome.cpp:
   80480         * WebCore/page/Frame.cpp:
   80481 
   80482 2007-10-20  Simon Hausmann  <hausmann (a] kde.org>
   80483 
   80484         Build fix, not reviewed.
   80485 
   80486         Fix the Qt build by adding the two missing FileSystem functions.
   80487 
   80488         * platform/qt/FileSystemQt.cpp:
   80489         (WebCore::makeAllDirectories):
   80490         (WebCore::pathByAppendingComponent):
   80491 
   80492 2007-10-19  Alp Toker  <alp (a] atoker.com>
   80493 
   80494         Reviewed by Oliver.
   80495 
   80496         GTK+ build fix enabling the new local database storage feature.
   80497         There is also a prospective Qt build fix.
   80498 
   80499         * WebCore.pro:
   80500         * bindings/js/JSDatabaseCustom.cpp:
   80501         * platform/gtk/FileSystemGtk.cpp:
   80502         (WebCore::pathByAppendingComponent):
   80503         (WebCore::makeAllDirectories):
   80504 
   80505 2007-10-19  Andrew Wellington  <proton (a] wiretapped.net>
   80506 
   80507         Reviewed by Brady Eidson.
   80508 
   80509         Mac build fix.
   80510 
   80511         * WebCore.xcodeproj/project.pbxproj:
   80512 
   80513 2007-10-19  Alp Toker  <alp (a] atoker.com>
   80514 
   80515         Reviewed by Oliver.
   80516 
   80517         Use platform colors for text selection.
   80518         Update the cache when the GTK style is changed.
   80519 
   80520         * platform/gtk/RenderThemeGtk.cpp:
   80521         (WebCore::RenderThemeGtk::platformActiveSelectionBackgroundColor):
   80522         (WebCore::RenderThemeGtk::platformInactiveSelectionBackgroundColor):
   80523         (WebCore::RenderThemeGtk::platformActiveSelectionForegroundColor):
   80524         (WebCore::RenderThemeGtk::platformInactiveSelectionForegroundColor):
   80525         (WebCore::RenderThemeGtk::gtkStyleSet):
   80526         (WebCore::RenderThemeGtk::gtkEntry):
   80527         * platform/gtk/RenderThemeGtk.h:
   80528 
   80529 2007-10-19  Adele Peterson  <adele (a] apple.com>
   80530 
   80531         Reviewed by Beth.
   80532 
   80533         Fix for: <rdar://problem/5518461> REGRESSION (2.0.4-3): Popup arrows are missing in small popups at homedepot.com
   80534 
   80535         Test: fast/forms/menulist-no-overflow.html
   80536 
   80537         * rendering/RenderMenuList.cpp: (WebCore::RenderMenuList::setStyle): Don't allow overflow on menu lists.
   80538 
   80539 2007-10-19  Anders Carlsson  <andersca (a] apple.com>
   80540 
   80541         Reviewed by Brady.
   80542 
   80543         Move some SQL-related classes to platform/sql.
   80544         
   80545         * WebCore.vcproj/WebCore.vcproj:
   80546         * WebCore.xcodeproj/project.pbxproj:
   80547         * loader/icon/SQLDatabase.cpp: Removed.
   80548         * loader/icon/SQLDatabase.h: Removed.
   80549         * loader/icon/SQLStatement.cpp: Removed.
   80550         * loader/icon/SQLStatement.h: Removed.
   80551         * loader/icon/SQLTransaction.cpp: Removed.
   80552         * loader/icon/SQLTransaction.h: Removed.
   80553         * platform/sql/SQLDatabase.cpp: Copied from loader/icon/SQLDatabase.cpp.
   80554         * platform/sql/SQLDatabase.h: Copied from loader/icon/SQLDatabase.h.
   80555         * platform/sql/SQLStatement.cpp: Copied from loader/icon/SQLStatement.cpp.
   80556         * platform/sql/SQLStatement.h: Copied from loader/icon/SQLStatement.h.
   80557         * platform/sql/SQLTransaction.cpp: Copied from loader/icon/SQLTransaction.cpp.
   80558         * platform/sql/SQLTransaction.h: Copied from loader/icon/SQLTransaction.h.
   80559 
   80560 2007-10-19  Anders Carlsson  <andersca (a] apple.com>
   80561 
   80562         Reviewed by Adam.
   80563 
   80564         Update to match the latest version of the spec. Now, executeSQL takes an array
   80565         of SQL parameters instead of them being passed as arguments.
   80566         
   80567         * bindings/js/JSDatabaseCustom.cpp:
   80568         (WebCore::JSDatabase::executeSql):
   80569         * page/inspector/DatabasePanel.js:
   80570         * storage/Database.idl:
   80571 
   80572 2007-10-19  Brady Eidson  <beidson (a] apple.com>
   80573 
   80574         Reviewed by Tim
   80575 
   80576         Tiger's SQLite doesn't support CREATE TABLE IF NOT EXISTS :(
   80577 
   80578         * storage/Database.cpp:
   80579         (WebCore::Database::performOpenAndVerify):
   80580         * storage/DatabaseTracker.cpp:
   80581         (WebCore::DatabaseTracker::DatabaseTracker):
   80582 
   80583 2007-10-19  Anders Carlsson  <andersca (a] apple.com>
   80584 
   80585         Release build fix.
   80586         
   80587         * WebCore.vcproj/WebCore.vcproj:
   80588 
   80589 2007-10-19  Brady Eidson  <beidson (a] apple.com>
   80590 
   80591         Remove stray printfs
   80592 
   80593         * dom/Document.cpp:
   80594         (WebCore::Document::Document):
   80595         (WebCore::Document::~Document):
   80596 
   80597 2007-10-19  Anders Carlsson  <andersca (a] apple.com>
   80598 
   80599         Reviewed by Brady.
   80600 
   80601         Apparently the Win32 pthreads impl we use does not allow unlocking a mutex that has not
   80602         already been locked, so lock the mutex first.
   80603         
   80604         * storage/DatabaseThread.cpp:
   80605         (WebCore::DatabaseThread::databaseThread):
   80606 
   80607 2007-10-19  Brady Eidson  <beidson (a] apple.com>
   80608 
   80609         Better build fix
   80610 
   80611         * loader/icon/SQLDatabase.cpp:
   80612         (WebCore::SQLDatabase::authorizerFunction):  Definite works by 3.3.13
   80613 
   80614 2007-10-19  Brady Eidson  <beidson (a] apple.com>
   80615 
   80616         Build fix
   80617 
   80618         * loader/icon/SQLDatabase.cpp:
   80619         (WebCore::SQLDatabase::authorizerFunction): I don't know *when* these constants were
   80620           added to SQLite, but I know they were by 3.4.0
   80621 
   80622 2007-10-19  Brady Eidson  <beidson (a] apple.com>
   80623         Reviewed by Anders
   80624 
   80625         Windows specific changes, as well as renaming Queue -> Deque
   80626 
   80627         * ForwardingHeaders/wtf/Deque.h: Added.
   80628         * ForwardingHeaders/wtf/Queue.h: Removed.
   80629         * platform/win/FileSystemWin.cpp:
   80630         (WebCore::fileSize):
   80631         (WebCore::fileExists):
   80632         (WebCore::deleteFile):
   80633         (WebCore::pathByAppendingComponent):
   80634         (WebCore::fileSystemRepresentation):
   80635         (WebCore::makeAllDirectories):
   80636         (WebCore::homeDirectoryPath):
   80637         * storage/Database.h:
   80638         * storage/DatabaseThread.cpp:
   80639         (WebCore::DatabaseThread::documentGoingAway):
   80640         (WebCore::DatabaseThread::databaseGoingAway):
   80641         (WebCore::DatabaseThread::dispatchNextTaskIdentifier):
   80642         (WebCore::DatabaseThread::scheduleTask):
   80643         (WebCore::DatabaseThread::scheduleImmediateTask):
   80644         * storage/DatabaseThread.h:
   80645 
   80646 2007-10-19  Brady Eidson <beidson (a] apple.com>
   80647 
   80648         Reviewed by Tim and Anders
   80649 
   80650         Preliminary support for HTML5 local database storage (http://www.whatwg.org/specs/web-apps/current-work/)
   80651 
   80652         The specification is still in flux but the fundamentals are pretty solid and we can start using and testing 
   80653         this implementation even while filing bugs to track changes in the spec as it becomes more final
   80654 
   80655         There are some implementation details in this patch that seem unused or useless, but they remain in place 
   80656         while the spec is in flux and might go one way or another.
   80657 
   80658         * platform/Logging.cpp: Add StorageAPI logging channel
   80659         * platform/Logging.h:
   80660 
   80661         * storage/Database.cpp: Added.
   80662         (WebCore::Database::databaseInfoTableName):
   80663         (WebCore::databaseVersionKey):
   80664         (WebCore::Database::openDatabase): C++ version of the window.openDatabase() javascript API
   80665         (WebCore::Database::Database):
   80666         (WebCore::Database::~Database):
   80667         (WebCore::Database::openAndVerifyVersion):
   80668         (WebCore::retrieveTextResultFromDatabase):
   80669         (WebCore::Database::getVersionFromDatabase):
   80670         (WebCore::setTextValueInDatabase):
   80671         (WebCore::Database::setVersionInDatabase):
   80672         (WebCore::Database::databaseThreadGoingAway): May be removed in the future
   80673         (WebCore::Database::disableAuthorizer): For internal (WebInspector) use to get around the authorizer's restrictions
   80674         (WebCore::Database::enableAuthorizer):
   80675         (WebCore::Database::guidForOriginAndName): Candidate for refactoring and/or moving to the database tracker.  
   80676           The GUID for each database identifier is currently for tracking the database version, but might be rescoped in the future
   80677         (WebCore::Database::resetAuthorizer):
   80678         (WebCore::Database::performPolicyChecks): Currently, the only post-executeSql policy check planned is the origin size usage 
   80679         (WebCore::Database::scheduleDatabaseCallback):
   80680         (WebCore::Database::performOpenAndVerify): 
   80681         (WebCore::Database::performChangeVersion):
   80682         (WebCore::Database::performExecuteSql):
   80683         (WebCore::Database::performCloseTransaction):
   80684         (WebCore::Database::performGetTableNames):
   80685         (WebCore::Database::version): C++ version of the javascript API
   80686         (WebCore::Database::changeVersion): Ditto
   80687         (WebCore::Database::executeSql): Ditto
   80688         (WebCore::Database::closeTransaction): Ditto
   80689         (WebCore::Database::tableNames): For internal (WebInspector) use
   80690         (WebCore::Database::deliverAllPendingCallbacks):
   80691         (WebCore::Database::deliverPendingCallbacks):
   80692         * storage/Database.h: Added.
   80693         (WebCore::Database::databaseDebugName): For debug logging purposes
   80694         * storage/Database.idl: Added.
   80695 
   80696         * storage/DatabaseAuthorizer.cpp: Added.
   80697           The DatabaseAuthorizer is used to both prevent the script from doing "illegal" things in sql as well as
   80698           tracking when effects certain sql statements might have (such as increasing the size of the database)
   80699         (WebCore::DatabaseAuthorizer::DatabaseAuthorizer):
   80700         (WebCore::DatabaseAuthorizer::reset):
   80701         (WebCore::DatabaseAuthorizer::createTable):
   80702         (WebCore::DatabaseAuthorizer::createTempTable):
   80703         (WebCore::DatabaseAuthorizer::dropTable):
   80704         (WebCore::DatabaseAuthorizer::dropTempTable):
   80705         (WebCore::DatabaseAuthorizer::allowAlterTable):
   80706         (WebCore::DatabaseAuthorizer::createIndex):
   80707         (WebCore::DatabaseAuthorizer::createTempIndex):
   80708         (WebCore::DatabaseAuthorizer::dropIndex):
   80709         (WebCore::DatabaseAuthorizer::dropTempIndex):
   80710         (WebCore::DatabaseAuthorizer::createTrigger):
   80711         (WebCore::DatabaseAuthorizer::createTempTrigger):
   80712         (WebCore::DatabaseAuthorizer::dropTrigger):
   80713         (WebCore::DatabaseAuthorizer::dropTempTrigger):
   80714         (WebCore::DatabaseAuthorizer::createVTable):
   80715         (WebCore::DatabaseAuthorizer::dropVTable):
   80716         (WebCore::DatabaseAuthorizer::allowDelete):
   80717         (WebCore::DatabaseAuthorizer::allowInsert):
   80718         (WebCore::DatabaseAuthorizer::allowUpdate):
   80719         (WebCore::DatabaseAuthorizer::allowRead):
   80720         (WebCore::DatabaseAuthorizer::allowAnalyze):
   80721         (WebCore::DatabaseAuthorizer::allowPragma):
   80722         (WebCore::DatabaseAuthorizer::allowAttach):
   80723         (WebCore::DatabaseAuthorizer::allowDetach):
   80724         (WebCore::DatabaseAuthorizer::allowFunction):
   80725         (WebCore::DatabaseAuthorizer::disable):
   80726         (WebCore::DatabaseAuthorizer::enable):
   80727         (WebCore::DatabaseAuthorizer::denyBasedOnTableName): Don't allow access to the __WebKit meta info table as
   80728           it should be invisible to scripts
   80729         * storage/DatabaseAuthorizer.h: Added.
   80730         (WebCore::DatabaseAuthorizer::lastActionWasInsert):
   80731         (WebCore::DatabaseAuthorizer::lastActionIncreasedSize):
   80732 
   80733         * storage/DatabaseCallback.cpp: Added.
   80734           Generic item to queue up for callbacks on the main thread for database activities that take place on 
   80735           a secondary thread
   80736         (WebCore::DatabaseChangeVersionCallback::DatabaseChangeVersionCallback):
   80737         (WebCore::DatabaseChangeVersionCallback::performCallback):
   80738         (WebCore::DatabaseExecuteSqlCallback::DatabaseExecuteSqlCallback):
   80739         (WebCore::DatabaseExecuteSqlCallback::performCallback):
   80740         * storage/DatabaseCallback.h: Added.
   80741         (WebCore::DatabaseCallback::~DatabaseCallback):
   80742         (WebCore::DatabaseChangeVersionCallback::~DatabaseChangeVersionCallback):
   80743         (WebCore::DatabaseExecuteSqlCallback::~DatabaseExecuteSqlCallback):
   80744 
   80745         * storage/DatabaseTask.h: Added.
   80746           Generic work-item to be queued up on the background database thread
   80747         (WebCore::DatabaseTask::isComplete):
   80748         (WebCore::DatabaseOpenTask::exceptionCode):
   80749         (WebCore::DatabaseOpenTask::openSuccessful):
   80750         (WebCore::DatabaseTableNamesTask::tableNames):
   80751         * storage/DatabaseTask.cpp: Added.
   80752         (WebCore::DatabaseTask::DatabaseTask):
   80753         (WebCore::DatabaseTask::~DatabaseTask):
   80754         (WebCore::DatabaseTask::performTask):
   80755         (WebCore::DatabaseTask::lockForSynchronousScheduling): Used when the main thread needs this task accomplished 
   80756           synchronously
   80757         (WebCore::DatabaseTask::waitForSynchronousCompletion):
   80758 
   80759         (WebCore::DatabaseOpenTask::DatabaseOpenTask):
   80760         (WebCore::DatabaseOpenTask::doPerformTask):
   80761 
   80762         (WebCore::DatabaseExecuteSqlTask::DatabaseExecuteSqlTask):
   80763         (WebCore::DatabaseExecuteSqlTask::doPerformTask):
   80764 
   80765         (WebCore::DatabaseChangeVersionTask::DatabaseChangeVersionTask):
   80766         (WebCore::DatabaseChangeVersionTask::doPerformTask):
   80767 
   80768         (WebCore::DatabaseTableNamesTask::DatabaseTableNamesTask):
   80769         (WebCore::DatabaseTableNamesTask::doPerformTask):
   80770 
   80771         * storage/DatabaseThread.cpp: Added.
   80772           The current design is that each Document will have its own DatabaseThread.  This makes scripts on each
   80773           individual document more response at the cost of adding more threads and potentially creating concurrency
   80774           issues when the same database is open twice from two different documents
   80775         (WebCore::DatabaseThread::DatabaseThread):
   80776         (WebCore::DatabaseThread::~DatabaseThread):
   80777         (WebCore::DatabaseThread::start):
   80778         (WebCore::DatabaseThread::documentGoingAway): Called to shut the thread down when the document is destroyed
   80779         (WebCore::DatabaseThread::databaseGoingAway): Remove all pending tasks for this database
   80780         (WebCore::DatabaseThread::databaseThreadStart):
   80781         (WebCore::DatabaseThread::databaseThread):
   80782         (WebCore::DatabaseThread::dispatchNextTaskIdentifier):
   80783         (WebCore::DatabaseThread::scheduleTask):
   80784         (WebCore::DatabaseThread::scheduleImmediateTask): Schedule a task that gets to "cut to the front of the line" when
   80785           the main thread requires a task be performed synchronously
   80786         (WebCore::DatabaseThread::wakeWorkThread):
   80787         * storage/DatabaseThread.h: Added.
   80788 
   80789         * storage/DatabaseTracker.cpp: Added.
   80790           The DatabaseTracker is the master management of all databases.  It will keep track of the filename for a given
   80791           unique database, keep track of the total disk usage per-origin, and policys per database/origin
   80792         (WebCore::DatabaseTracker::setDatabasePath):
   80793         (WebCore::DatabaseTracker::databasePath):
   80794         (WebCore::DatabaseTracker::tracker):
   80795         (WebCore::DatabaseTracker::DatabaseTracker):
   80796         (WebCore::DatabaseTracker::fullPathForDatabase):
   80797         (WebCore::DatabaseTracker::populateOrigins):
   80798         (WebCore::DatabaseTracker::origins):
   80799         (WebCore::DatabaseTracker::databaseNamesForOrigin):
   80800         (WebCore::DatabaseTracker::addDatabase):
   80801         (WebCore::DatabaseTracker::deleteAllDatabases):
   80802         (WebCore::DatabaseTracker::deleteAllDatabasesForOrigin):
   80803         * storage/DatabaseTracker.h: Added.
   80804 
   80805         * storage/SQLCallback.h: Added. C++ version of the javascript executeSql() callback
   80806         (WebCore::SQLCallback::~SQLCallback):
   80807         * storage/SQLCallback.idl: Added.
   80808 
   80809         * storage/SQLResultSet.cpp: Added. C++ version of the javascript SQLResultSet object
   80810         (WebCore::SQLResultSet::SQLResultSet):
   80811         (WebCore::SQLResultSet::insertId):
   80812         (WebCore::SQLResultSet::rowsAffected):
   80813         (WebCore::SQLResultSet::errorCode):
   80814         (WebCore::SQLResultSet::error):
   80815         (WebCore::SQLResultSet::rows):
   80816         (WebCore::SQLResultSet::setInsertId):
   80817         (WebCore::SQLResultSet::setRowsAffected):
   80818         (WebCore::SQLResultSet::setErrorCode):
   80819         (WebCore::SQLResultSet::setErrorMessage):
   80820         * storage/SQLResultSet.h: Added.
   80821         * storage/SQLResultSet.idl: Added.
   80822 
   80823         * storage/SQLResultSetRowList.cpp: Added. C++ version of the javascript SQLResultSetRowList object
   80824         (WebCore::SQLResultSetRowList::length):
   80825         * storage/SQLResultSetRowList.h: Added.
   80826         (WebCore::SQLResultSetRowList::columnNames):
   80827         (WebCore::SQLResultSetRowList::values):
   80828         (WebCore::SQLResultSetRowList::addColumn):
   80829         (WebCore::SQLResultSetRowList::addResult):
   80830         * storage/SQLResultSetRowList.idl: Added.
   80831 
   80832         * storage/VersionChangeCallback.h: Added. C++ version of the javascript changeVersion() callback
   80833         (WebCore::VersionChangeCallback::~VersionChangeCallback):
   80834         * storage/VersionChangeCallback.idl: Added.
   80835 
   80836 2007-10-19  Brady Eidson <beidson (a] apple.com>
   80837 
   80838         Reviewed by Oliver + Same
   80839 
   80840         Forwarding header for the new wtf/Queue.h
   80841 
   80842         * ForwardingHeaders/wtf/Queue.h: Added.
   80843 
   80844 2007-10-19  Anders Carlsson <beidson (a] apple.com>
   80845 
   80846         Reviewed by Sam Weinig
   80847 
   80848         Most of the Javascript binding support for the Storage API
   80849 
   80850         * bindings/js/JSCustomSQLCallback.cpp: Added.
   80851         (WebCore::JSCustomSQLCallback::JSCustomSQLCallback):
   80852         (WebCore::JSCustomSQLCallback::handleEvent):
   80853         * bindings/js/JSCustomSQLCallback.h: Added.
   80854                 Add JSCustomSQLCallback which is an SQLCallback implementation that dispatches
   80855                 handleEvent to a JS function or a JS object with a handleEvent function.
   80856 
   80857         * bindings/js/JSCustomVersionChangeCallback.cpp: Added.
   80858         (WebCore::JSCustomVersionChangeCallback::JSCustomVersionChangeCallback):
   80859         (WebCore::JSCustomVersionChangeCallback::handleEvent):
   80860         * bindings/js/JSCustomVersionChangeCallback.h: Added.
   80861                 Add JSCustomSQLCallback which is an SQLCallback implementation that dispatches
   80862                 handleEvent to a JS function or a JS object with a handleEvent function.
   80863 
   80864         * bindings/js/JSDatabaseCustom.cpp: Added.
   80865         (WebCore::JSDatabase::executeSql):
   80866                 Custom implementation of executeSql that takes an array of parameters.
   80867                 
   80868         (WebCore::JSDatabase::changeVersion):
   80869                 Custom implementation of changeVersion.
   80870                 
   80871         * bindings/js/JSSQLResultSetRowListCustom.cpp: Added.
   80872         (WebCore::JSSQLResultSetRowList::item):
   80873                 Custom method that returns a JS object that corresponds to a given row in the database.
   80874 
   80875         * bindings/scripts/CodeGeneratorJS.pm:
   80876 
   80877         * page/DOMWindow.cpp:
   80878         (WebCore::DOMWindow::openDatabase):
   80879         * page/DOMWindow.h:
   80880         * page/DOMWindow.idl:
   80881                 Add openDatabase implementation.
   80882 
   80883 2007-10-19  Brady Eidson <beidson (a] apple.com>
   80884 
   80885         Reviewed by Oliver
   80886 
   80887         Added tons of utility to the FileSystem abstractions, including moving
   80888         some stuff over from IconDatabase
   80889 
   80890         * platform/FileSystem.h:
   80891 
   80892         * platform/cf/FileSystemCF.cpp: Added.
   80893         (WebCore::fileSystemRepresentation):
   80894 
   80895         * platform/mac/FileSystemMac.mm:
   80896 
   80897         * platform/posix/FileSystemPOSIX.cpp: Added.
   80898         (WebCore::fileExists):
   80899         (WebCore::deleteFile):
   80900         (WebCore::fileSize):
   80901         (WebCore::pathByAppendingComponent):
   80902         (WebCore::makeAllDirectories):
   80903 
   80904 2007-10-19  Timothy Hatcher  <timothy (a] apple.com>
   80905 
   80906         Reviewed by Adam Roben
   80907 
   80908         Preliminary Web Inspector support for the Storage API
   80909         (This patch does not include the support artwork)
   80910 
   80911         * page/InspectorController.cpp:
   80912         (WebCore::InspectorDatabaseResource::InspectorDatabaseResource):
   80913         (WebCore::InspectorDatabaseResource::setScriptObject):
   80914         (WebCore::databaseTableNames): Return the table names for a Database object.
   80915         (WebCore::InspectorController::setWindowVisible):
   80916         (WebCore::InspectorController::windowScriptObjectAvailable):
   80917         (WebCore::InspectorController::populateScriptResources):
   80918         (WebCore::InspectorController::addDatabaseScriptResource): Add the script object for the database.
   80919         (WebCore::InspectorController::removeDatabaseScriptResource): Remove the script object for the database.
   80920         (WebCore::InspectorController::clearDatabaseScriptResources): Remove all the database resources.
   80921         (WebCore::InspectorController::didCommitLoad): Call clearDatabaseScriptResources().
   80922         (WebCore::InspectorController::didOpenDatabase): Make a new InspectorDatabaseResource and add it to m_databaseResources.
   80923         * page/InspectorController.h:
   80924         * page/inspector/Database.js: Added.
   80925         * page/inspector/DatabasePanel.js: Added.
   80926         * page/inspector/ResourceCategory.js: Make resource categories assume less about the resource.
   80927         * page/inspector/inspector.css: Add styles for the database panel.
   80928         * page/inspector/inspector.html: Include DatabasePanel.js
   80929         * page/inspector/inspector.js: Support for adding and removing Database resources.
   80930 
   80931 2007-10-19  Brady Eidson <beidson (a] apple.com>
   80932 
   80933         Reviewed by Tim Hatcher
   80934 
   80935         Added support for Chrome prompts required by the Storage API
   80936 
   80937         * page/Chrome.cpp:
   80938         (WebCore::Chrome::runDatabaseSizeLimitPrompt):
   80939         * page/Chrome.h:
   80940         * page/ChromeClient.h:
   80941         * platform/graphics/svg/SVGImageEmptyClients.h:
   80942 
   80943 2007-10-19  Brady Eidson <beidson (a] apple.com>
   80944 
   80945         Contributions and Review by Anders
   80946 
   80947         Various SQLite tweaks in preparation for the storage API
   80948 
   80949         * loader/icon/SQLDatabase.cpp:
   80950         (WebCore::SQLDatabase::~SQLDatabase):
   80951         (WebCore::SQLDatabase::authorizerFunction): Static callback from sqlite for authorizer functions
   80952         (WebCore::SQLDatabase::setAuthorizer):
   80953         (WebCore::SQLDatabase::lock):
   80954         (WebCore::SQLDatabase::unlock):
   80955         * loader/icon/SQLDatabase.h:
   80956 
   80957         * loader/icon/SQLStatement.cpp:
   80958         (WebCore::SQLStatement::prepare): Switch to prepare16_v2
   80959         (WebCore::SQLStatement::bindDouble): Added
   80960         (WebCore::SQLStatement::bindValue): Bind a wrapped SQLValue object (described later)
   80961         (WebCore::SQLStatement::bindParameterCount): Accessor to the sqlite3 API for validating statements
   80962         * loader/icon/SQLStatement.h:
   80963         (WebCore::SQLStatement::isPrepared):
   80964 
   80965         * platform/sql/SQLAuthorizer.cpp: Added.  Fully virtual interface to implement your own SQLite authorizer
   80966         * platform/sql/SQLAuthorizer.h: Added.
   80967         (WebCore::SQLAuthorizer::~SQLAuthorizer):
   80968         (WebCore::SQLAuthorizer::createTable):
   80969         (WebCore::SQLAuthorizer::createTempTable):
   80970         (WebCore::SQLAuthorizer::dropTable):
   80971         (WebCore::SQLAuthorizer::dropTempTable):
   80972         (WebCore::SQLAuthorizer::allowAlterTable):
   80973         (WebCore::SQLAuthorizer::createIndex):
   80974         (WebCore::SQLAuthorizer::createTempIndex):
   80975         (WebCore::SQLAuthorizer::dropIndex):
   80976         (WebCore::SQLAuthorizer::dropTempIndex):
   80977         (WebCore::SQLAuthorizer::createTrigger):
   80978         (WebCore::SQLAuthorizer::createTempTrigger):
   80979         (WebCore::SQLAuthorizer::dropTrigger):
   80980         (WebCore::SQLAuthorizer::dropTempTrigger):
   80981         (WebCore::SQLAuthorizer::createView):
   80982         (WebCore::SQLAuthorizer::createTempView):
   80983         (WebCore::SQLAuthorizer::dropView):
   80984         (WebCore::SQLAuthorizer::dropTempView):
   80985         (WebCore::SQLAuthorizer::createVTable):
   80986         (WebCore::SQLAuthorizer::dropVTable):
   80987         (WebCore::SQLAuthorizer::allowDelete):
   80988         (WebCore::SQLAuthorizer::allowInsert):
   80989         (WebCore::SQLAuthorizer::allowUpdate):
   80990         (WebCore::SQLAuthorizer::allowTransaction):
   80991         (WebCore::SQLAuthorizer::allowSelect):
   80992         (WebCore::SQLAuthorizer::allowRead):
   80993         (WebCore::SQLAuthorizer::allowAttach):
   80994         (WebCore::SQLAuthorizer::allowDetach):
   80995         (WebCore::SQLAuthorizer::allowReindex):
   80996         (WebCore::SQLAuthorizer::allowAnalyze):
   80997         (WebCore::SQLAuthorizer::allowFunction):
   80998 
   80999         * platform/sql/SQLValue.cpp: Added.  Contains a value for a SQLite database that can be one of a few types.  
   81000           For now, just a String or a double
   81001         (WebCore::SQLValue::SQLValue):
   81002         (WebCore::SQLValue::string):
   81003         (WebCore::SQLValue::number):
   81004         * platform/sql/SQLValue.h: Added.
   81005         (WebCore::SQLValue::):
   81006         (WebCore::SQLValue::SQLValue):
   81007         (WebCore::SQLValue::type):
   81008 
   81009 2007-10-19  Brady Eidson <beidson (a] apple.com>
   81010 
   81011         Reviewed by Maciej
   81012 
   81013         Changed IconDatabase over to use new FileSystem apis
   81014 
   81015         * loader/icon/IconDatabase.cpp:
   81016         (WebCore::IconDatabase::open):
   81017 
   81018 2007-10-19  David Hyatt  <hyatt (a] apple.com>
   81019 
   81020         Fix for ebay parser crash.
   81021 
   81022         Reviewed by Beth
   81023 
   81024         fast/invalid/table-residual-style-crash.html added as a test
   81025 
   81026         * html/HTMLParser.cpp:
   81027         (WebCore::HTMLParser::handleResidualStyleCloseTagAcrossBlocks):
   81028 
   81029 2007-10-19  Sam Weinig  <sam (a] webkit.org>
   81030 
   81031         Fix Windows, Qt and GTK builds.
   81032 
   81033         * WebCore.pro:
   81034         * WebCore.vcproj/WebCore.vcproj:
   81035 
   81036 2007-10-19  Sam Weinig  <sam (a] webkit.org>
   81037 
   81038         Reviewed by Darin.
   81039 
   81040         Encapsulate the same origin check into the new SecurityOrigin class.
   81041 
   81042         * WebCore.xcodeproj/project.pbxproj:
   81043         * bindings/js/kjs_window.cpp:
   81044         (KJS::Window::isSafeScript):
   81045         * dom/Document.cpp:
   81046         (WebCore::Document::Document):
   81047         (WebCore::Document::defaultEventHandler):
   81048         * dom/Document.h:
   81049         (WebCore::Document::securityOrigin):
   81050         * loader/FrameLoader.cpp:
   81051         (WebCore::FrameLoader::begin):
   81052         (WebCore::FrameLoader::setOpener):
   81053         * loader/FrameLoader.h:
   81054         * platform/SecurityOrigin.cpp: Added.
   81055         (WebCore::SecurityOrigin::SecurityOrigin):
   81056         (WebCore::SecurityOrigin::clear):
   81057         (WebCore::SecurityOrigin::isEmpty):
   81058         (WebCore::SecurityOrigin::setForFrame):
   81059         (WebCore::SecurityOrigin::setDomainFromDOM):
   81060         (WebCore::SecurityOrigin::allowsAccessFrom):
   81061         (WebCore::SecurityOrigin::isSecureTransitionTo):
   81062         * platform/SecurityOrigin.h: Added.
   81063 
   81064 2007-10-19  Simon Hausmann  <hausmann (a] kde.org>
   81065 
   81066         Fix the Qt/Windows build: Added missing FontSelector.h include.
   81067 
   81068         * platform/qt/FontQt.cpp:
   81069 
   81070 2007-10-19  Simon Hausmann  <hausmann (a] kde.org>
   81071 
   81072         Reviewed by Lars.
   81073 
   81074         Qt/Windows build fix: Threading.h uses int32_t but doesn't include stdint.h.
   81075 
   81076         * platform/Threading.h:
   81077 
   81078 2007-10-19  Simon Hausmann  <hausmann (a] kde.org>
   81079 
   81080         Reviewed by Lars.
   81081 
   81082         Fix the Qt/Windows build, don't use cat but use the perl print trick
   81083         instead.
   81084 
   81085         * WebCore.pro:
   81086 
   81087 2007-10-18  Justin Garcia  <justin.garcia (a] apple.com>
   81088 
   81089         Reviewed by Kevin McCullough.
   81090 
   81091         <rdar://problem/5483526> 
   81092         GoogleDocs: A hang occurs when applying list styling to a selection containing a table and line breaks
   81093 
   81094         * editing/TextIterator.cpp:
   81095         (WebCore::TextIterator::exitNode): For selection preservation, we must emit a character
   81096         between every VisiblePosition.  We weren't emitting a space after some tables, because
   81097         we won't try to emit a space if shouldEmitNewlineAFterNode is true, even if no newline
   81098         was emitted.
   81099 
   81100 2007-10-18  Dan Bernstein  <mitz (a] apple.com>
   81101 
   81102         Reviewed by Adam Roben.
   81103 
   81104         - fix <rdar://problem/5313523>
   81105         REGRESSION(Leopard): http/tests/incremental/slow-utf8-text.pl fails on Leopard
   81106 
   81107         * platform/network/mac/ResourceResponseMac.mm:
   81108         (WebCore::ResourceResponse::doUpdateResourceResponse): Work around
   81109         <rdar://problem/5321972> by testing for the case of a response
   81110         with a MIME type of application/octet-stream and a Content-Type header
   81111         starting with text/plain and setting the MIME type to text/plain in
   81112         that case.
   81113 
   81114 2007-10-18  Mark Rowe  <mrowe (a] apple.com>
   81115 
   81116         Fix the no-SVG build.
   81117 
   81118         * css/CSSPrimitiveValueMappings.h: Move the CSSPrimitiveValue implementations for
   81119         LineCap, LineJoin and WindRule inside #if ENABLE(SVG).
   81120 
   81121 2007-10-18  Darin Adler  <darin (a] apple.com>
   81122 
   81123         Reviewed by Anders.
   81124 
   81125         - some small tweaks to the threading implementation
   81126 
   81127         I had trouble building on Windows. Either the problem went away by itself
   81128         or one of these changes fixed it.
   81129 
   81130         * platform/Threading.h: Eliminated the use of friend, and shared a single
   81131         declaration for the initializeThreading function.
   81132 
   81133         * platform/pthreads/ThreadingPthreads.cpp: (WebCore::ThreadCondition::wait):
   81134         Call impl() here.
   81135 
   81136         * platform/win/ThreadingWin.cpp: Got rid of two globals here with static
   81137         constructors. Also added a typedef for the type of the function queue.
   81138         (WebCore::functionQueueMutex): Added function.
   81139         (WebCore::functionQueue): Ditto.
   81140         (WebCore::callFunctionsOnMainThread): Use functions instead of using the
   81141         globals directly.
   81142         (WebCore::callOnMainThread): Ditto.
   81143 
   81144         * css/CSSParser.cpp: Had to touch this file to make things build.
   81145 
   81146 2007-10-18  Adam Roben  <aroben (a] apple.com>
   81147 
   81148         Fix <rdar://5547462> Need to copy Inspector resources in Production builds
   81149 
   81150         I also added an excludes file for the xcopy command to avoid copying
   81151         .svn folders.
   81152 
   81153         Reviewed by Geoff.
   81154 
   81155         * WebCore.vcproj/WebCore.make: Make sure we copy the Inspector
   81156         resources.
   81157         * WebCore.vcproj/WebCore.vcproj: Pass /exclude:xcopy.excludes to
   81158         xcopy.
   81159         * WebCore.vcproj/xcopy.excludes: Added.
   81160 
   81161 2007-10-18  Darin Adler  <darin (a] apple.com>
   81162 
   81163         Reviewed by Sam.
   81164 
   81165         - fix http://bugs.webkit.org/show_bug.cgi?id=15541
   81166           REGRESSION (r26616): prompt with one argument uses the literal "undefined" as default reply
   81167 
   81168         * page/DOMWindow.idl: Add ConvertUndefinedOrNullToNullString back for defaultValue.
   81169 
   81170 2007-10-18  Nikolas Zimmermann  <zimmermann (a] kde.org>
   81171 
   81172         Build fix. Not reviewed.
   81173 
   81174         Hopefully fix win build by including wtf/MathExtras.h.
   81175 
   81176         * platform/graphics/svg/cg/SVGPaintServerGradientCg.cpp:
   81177 
   81178 2007-10-18  Dan Bernstein  <mitz (a] apple.com>
   81179 
   81180         Reviewed by Nikolas Zimmermann.
   81181 
   81182         - fix http://bugs.webkit.org/show_bug.cgi?id=15367
   81183           Assertion failure inspecting a document including soft hyphen code (0xad)
   81184 
   81185         Test: fast/text/word-break-soft-hyphen.html
   81186 
   81187         * rendering/RenderText.cpp:
   81188         (WebCore::RenderText::calcPrefWidths): Changed to treat soft hyphens as 
   81189         word boundaries. This fixes the bug and is consistent with the fact that
   81190         run rounding does occur at soft hyphens.
   81191 
   81192 2007-10-18  Nikolas Zimmermann  <zimmermann (a] kde.org>
   81193 
   81194         Reviewed by Anders.
   81195 
   81196         Fix last layout test failure seen on buildbot "trunk-mac-ppc-release".
   81197         Problem: "svg/custom/mask-excessive-malloc.svg -> crashed"
   81198 
   81199         Clamp any ImageBuffer allocation within SVG to the RenderView's visibleSize
   81200         to avoid excessive mallocs (in the testcase above 1000000x1000000)
   81201 
   81202         * ksvg2/svg/SVGMaskElement.cpp:
   81203         (WebCore::SVGMaskElement::drawMaskerContent):
   81204         * ksvg2/svg/SVGPatternElement.cpp:
   81205         (WebCore::SVGPatternElement::buildPattern):
   81206         * platform/graphics/svg/cg/SVGPaintServerGradientCg.cpp:
   81207         (WebCore::SVGPaintServerGradient::teardown):
   81208         (WebCore::SVGPaintServerGradient::setup):
   81209         * platform/graphics/svg/cg/SVGResourceMaskerCg.mm:
   81210         (WebCore::SVGResourceMasker::applyMask):
   81211         * rendering/SVGRenderSupport.cpp:
   81212         (WebCore::clampImageBufferSizeToViewport):
   81213         * rendering/SVGRenderSupport.h:
   81214 
   81215 2007-10-18  Alexey Proskuryakov  <ap (a] webkit.org>
   81216 
   81217         Windows build fix.
   81218 
   81219         * css/CSSStyleSelector.cpp:
   81220         (WebCore::CSSStyleSelector::applyProperty): Add braces around cases that have local variables now.
   81221 
   81222 2007-10-18  Alexey Proskuryakov  <ap (a] webkit.org>
   81223 
   81224         Release build fix.
   81225 
   81226         * css/CSSStyleSelector.cpp:
   81227         (WebCore::CSSStyleSelector::applyProperty): 
   81228 
   81229 2007-10-18  Alexey Proskuryakov  <ap (a] webkit.org>
   81230 
   81231         Reviewed by Darin.
   81232 
   81233         Split most of CSSPrimitiveValue enum mapping out of CSSComputedStyleDeclaration::getPropertyCSSValue()
   81234         and CSSStyleSelector::applyProperty() (and their SVG counterparts). This should make the code more readable.
   81235 
   81236         * WebCore.xcodeproj/project.pbxproj:
   81237         * css/CSSComputedStyleDeclaration.cpp:
   81238         (WebCore::getPositionOffsetValue):
   81239         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
   81240         * css/CSSPrimitiveValue.cpp:
   81241         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
   81242         (WebCore::CSSPrimitiveValue::init):
   81243         * css/CSSPrimitiveValue.h:
   81244         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
   81245         * css/CSSPrimitiveValueMappings.h: Added.
   81246         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
   81247         (WebCore::CSSPrimitiveValue::operator EBorderStyle):
   81248         (WebCore::CSSPrimitiveValue::operator CompositeOperator):
   81249         (WebCore::CSSPrimitiveValue::operator EAppearance):
   81250         (WebCore::CSSPrimitiveValue::operator EBackgroundBox):
   81251         (WebCore::CSSPrimitiveValue::operator EBackgroundRepeat):
   81252         (WebCore::CSSPrimitiveValue::operator EBoxAlignment):
   81253         (WebCore::CSSPrimitiveValue::operator EBoxDirection):
   81254         (WebCore::CSSPrimitiveValue::operator EBoxLines):
   81255         (WebCore::CSSPrimitiveValue::operator EBoxOrient):
   81256         (WebCore::CSSPrimitiveValue::operator ECaptionSide):
   81257         (WebCore::CSSPrimitiveValue::operator EClear):
   81258         (WebCore::CSSPrimitiveValue::operator ECursor):
   81259         (WebCore::CSSPrimitiveValue::operator EDisplay):
   81260         (WebCore::CSSPrimitiveValue::operator EEmptyCell):
   81261         (WebCore::CSSPrimitiveValue::operator EFloat):
   81262         (WebCore::CSSPrimitiveValue::operator EKHTMLLineBreak):
   81263         (WebCore::CSSPrimitiveValue::operator EListStylePosition):
   81264         (WebCore::CSSPrimitiveValue::operator EListStyleType):
   81265         (WebCore::CSSPrimitiveValue::operator EMarginCollapse):
   81266         (WebCore::CSSPrimitiveValue::operator EMarqueeBehavior):
   81267         (WebCore::CSSPrimitiveValue::operator EMarqueeDirection):
   81268         (WebCore::CSSPrimitiveValue::operator EMatchNearestMailBlockquoteColor):
   81269         (WebCore::CSSPrimitiveValue::operator ENBSPMode):
   81270         (WebCore::CSSPrimitiveValue::operator EOverflow):
   81271         (WebCore::CSSPrimitiveValue::operator EPageBreak):
   81272         (WebCore::CSSPrimitiveValue::operator EPosition):
   81273         (WebCore::CSSPrimitiveValue::operator EResize):
   81274         (WebCore::CSSPrimitiveValue::operator ETableLayout):
   81275         (WebCore::CSSPrimitiveValue::operator ETextAlign):
   81276         (WebCore::CSSPrimitiveValue::operator ETextSecurity):
   81277         (WebCore::CSSPrimitiveValue::operator ETextTransform):
   81278         (WebCore::CSSPrimitiveValue::operator EUnicodeBidi):
   81279         (WebCore::CSSPrimitiveValue::operator EUserDrag):
   81280         (WebCore::CSSPrimitiveValue::operator EUserModify):
   81281         (WebCore::CSSPrimitiveValue::operator EUserSelect):
   81282         (WebCore::CSSPrimitiveValue::operator EVisibility):
   81283         (WebCore::CSSPrimitiveValue::operator EWhiteSpace):
   81284         (WebCore::CSSPrimitiveValue::operator EWordBreak):
   81285         (WebCore::CSSPrimitiveValue::operator EWordWrap):
   81286         (WebCore::CSSPrimitiveValue::operator LineCap):
   81287         (WebCore::CSSPrimitiveValue::operator LineJoin):
   81288         (WebCore::CSSPrimitiveValue::operator TextDirection):
   81289         (WebCore::CSSPrimitiveValue::operator WindRule):
   81290         (WebCore::CSSPrimitiveValue::operator EAlignmentBaseline):
   81291         (WebCore::CSSPrimitiveValue::operator EColorInterpolation):
   81292         (WebCore::CSSPrimitiveValue::operator EColorRendering):
   81293         (WebCore::CSSPrimitiveValue::operator EDominantBaseline):
   81294         (WebCore::CSSPrimitiveValue::operator EImageRendering):
   81295         (WebCore::CSSPrimitiveValue::operator EPointerEvents):
   81296         (WebCore::CSSPrimitiveValue::operator EShapeRendering):
   81297         (WebCore::CSSPrimitiveValue::operator ETextAnchor):
   81298         (WebCore::CSSPrimitiveValue::operator ETextRendering):
   81299         (WebCore::CSSPrimitiveValue::operator EWritingMode):
   81300         * css/CSSStyleSelector.cpp:
   81301         (WebCore::CSSStyleSelector::checkSelector):
   81302         (WebCore::CSSStyleSelector::checkOneSelector):
   81303         (WebCore::CSSRuleSet::addRulesFromSheet):
   81304         (WebCore::convertToLength):
   81305         (WebCore::CSSStyleSelector::applyDeclarations):
   81306         (WebCore::CSSStyleSelector::applyProperty):
   81307         (WebCore::CSSStyleSelector::mapBackgroundAttachment):
   81308         (WebCore::CSSStyleSelector::mapBackgroundClip):
   81309         (WebCore::CSSStyleSelector::mapBackgroundComposite):
   81310         (WebCore::CSSStyleSelector::mapBackgroundOrigin):
   81311         (WebCore::CSSStyleSelector::mapBackgroundRepeat):
   81312         (WebCore::CSSStyleSelector::mapBackgroundXPosition):
   81313         (WebCore::CSSStyleSelector::mapBackgroundYPosition):
   81314         * ksvg2/css/SVGCSSComputedStyleDeclaration.cpp:
   81315         (WebCore::CSSComputedStyleDeclaration::getSVGPropertyCSSValue):
   81316         * ksvg2/css/SVGCSSStyleSelector.cpp:
   81317         (WebCore::CSSStyleSelector::applySVGProperty):
   81318 
   81319 2007-10-18  Eric Seidel  <eric (a] webkit.org>
   81320 
   81321         Reviewed by Maciej.
   81322 
   81323         Fix crashers in SVGViewSpec::parseViewSpec
   81324         http://bugs.webkit.org/show_bug.cgi?id=15504
   81325 
   81326         Test is blocked by bug 15503, landed as:
   81327         * svg/dom/viewspec-parser.html-disabled
   81328 
   81329         * bindings/scripts/CodeGeneratorObjC.pm: support classes where all parents are interfaces
   81330         * ksvg2/svg/SVGViewSpec.cpp:
   81331         (WebCore::SVGViewSpec::parseViewSpec):
   81332         * ksvg2/svg/SVGViewSpec.idl: Added.
   81333 
   81334 2007-10-17  Rob Buis  <buis (a] kde.org>
   81335 
   81336         Reviewed by Darin, Adam, and Maciej.
   81337 
   81338         http://bugs.webkit.org/show_bug.cgi?id=12988
   81339         First element (in document order) is not returned when other duplicate ID-ed elements were created first
   81340 
   81341         Reset the element id cache when an id is added and there is a duplicate for that id.
   81342 
   81343         * dom/Document.cpp:
   81344         (WebCore::Document::addElementById):
   81345 
   81346 2007-10-17  Mark Rowe  <mrowe (a] apple.com>
   81347 
   81348         Mac build fix.
   81349 
   81350         * Configurations/WebCore.xcconfig:  Make it possible to include CoreGraphics header files.
   81351 
   81352 2007-10-17  Adam Roben  <aroben (a] apple.com>
   81353 
   81354         Fix an ASSERT on launch on Windows
   81355 
   81356         Fix dictated to me by Brady.
   81357 
   81358         * loader/icon/IconDatabase.cpp:
   81359         (WebCore::IconDatabase::syncThreadMainLoop): Make sure we hold
   81360         m_syncLock before going into the loop.
   81361 
   81362 2007-10-17  Adam Roben  <aroben (a] apple.com>
   81363 
   81364         Windows build fix
   81365 
   81366         * platform/graphics/AffineTransform.h: Don't #include
   81367         ApplicationServices.h.
   81368         * platform/graphics/cg/GraphicsContextCG.cpp: Add an #include that's
   81369         needed now that we're not #including ApplicationServices.h.
   81370 
   81371 2007-10-17  Mark Rowe  <mrowe (a] apple.com>
   81372 
   81373         Gtk build fix.  Move non-pthread stubs from Threading.h to ThreadingNone.cpp to prevent
   81374         multiple-definition link errors.
   81375 
   81376         * WebCore.pro:
   81377         * platform/Threading.h:
   81378         * platform/ThreadingNone.cpp: Added.
   81379         (WebCore::createThread):
   81380         (WebCore::waitForThreadCompletion):
   81381         (WebCore::detachThread):
   81382         (WebCore::Mutex::Mutex):
   81383         (WebCore::Mutex::~Mutex):
   81384         (WebCore::Mutex::lock):
   81385         (WebCore::Mutex::tryLock):
   81386         (WebCore::Mutex::unlock):
   81387         (WebCore::ThreadCondition::ThreadCondition):
   81388 
   81389 2007-10-17  Anders Carlsson  <andersca (a] apple.com>
   81390 
   81391         Reviewed by Oliver.
   81392 
   81393         * WebCore.xcodeproj/project.pbxproj:
   81394         * WebCore.vcproj/WebCore.vcproj:
   81395         
   81396         * config.h:
   81397         #define USE_PTHREADS on Windows.
   81398         
   81399         * loader/icon/IconDatabase.cpp:
   81400         (WebCore::IconDatabase::getOrCreateIconRecord):
   81401         (WebCore::IconDatabase::getOrCreatePageURLRecord):
   81402         Update for mutex changes.
   81403         
   81404         * platform/Threading.h:
   81405         (WebCore::ThreadSafeShared::ThreadSafeShared):
   81406         (WebCore::ThreadSafeShared::ref):
   81407         (WebCore::ThreadSafeShared::deref):
   81408         (WebCore::ThreadSafeShared::hasOneRef):
   81409         (WebCore::ThreadSafeShared::refCount):
   81410         (WebCore::ThreadSafeShared::isThreadSafe):
   81411         Add a new Shared base class that uses a mutex to manage its refcount.
   81412         
   81413         (WebCore::createThread):
   81414         (WebCore::waitForThreadCompletion):
   81415         (WebCore::detachThread):
   81416         New functions for thread creation.
   81417         
   81418         (WebCore::Mutex::Mutex):
   81419         (WebCore::Mutex::~Mutex):
   81420         (WebCore::Mutex::lock):
   81421         (WebCore::Mutex::tryLock):
   81422         (WebCore::Mutex::unlock):
   81423         Move the definitions to ThreadingPthreads.cpp
   81424         
   81425         (WebCore::ThreadCondition::ThreadCondition):
   81426         (WebCore::ThreadCondition::~ThreadCondition):
   81427         (WebCore::ThreadCondition::wait):
   81428         (WebCore::ThreadCondition::signal):
   81429         (WebCore::ThreadCondition::broadcast):
   81430         Move the definitions to ThreadingPthreads.cpp
   81431         
   81432         * platform/pthreads: Added.
   81433         * platform/pthreads/ThreadingPthreads.cpp: Added.
   81434         Add pthread specific implementation of the thread creation functions, Mutex and ThreadCondition.
   81435 
   81436 2007-10-17  David Hyatt  <hyatt (a] apple.com>
   81437 
   81438         Add support for creating a layer when a transform is in effect.  Add support to RenderStyle for
   81439         handing back a computed AffineTransform.
   81440 
   81441         Reviewed by Mitz Pettel
   81442 
   81443         * css/CSSStyleSelector.cpp:
   81444         (WebCore::CSSStyleSelector::adjustRenderStyle):
   81445         * rendering/RenderBox.cpp:
   81446         (WebCore::RenderBox::setStyle):
   81447         * rendering/RenderObject.cpp:
   81448         (WebCore::RenderObject::RenderObject):
   81449         (WebCore::RenderObject::requiresLayer):
   81450         (WebCore::RenderObject::setStyle):
   81451         * rendering/RenderObject.h:
   81452         (WebCore::RenderObject::hasTransform):
   81453         (WebCore::RenderObject::setHasTransform):
   81454         * rendering/RenderStyle.cpp:
   81455         (WebCore::RenderStyle::applyTransform):
   81456         * rendering/RenderStyle.h:
   81457         (WebCore::RenderStyle::hasTransform):
   81458         * rendering/RenderTableCell.cpp:
   81459         (WebCore::RenderTableCell::requiresLayer):
   81460         * rendering/RenderTableRow.h:
   81461         (WebCore::RenderTableRow::requiresLayer):
   81462 
   81463 2007-10-17  David Hyatt  <hyatt (a] apple.com>
   81464 
   81465         Add support for mapping of the transform CSS property into RenderStyles.  Everything is now ready for the front
   81466         end to use.
   81467 
   81468         Reviewed by Mitz Pettel
   81469 
   81470         * WebCore.xcodeproj/project.pbxproj:
   81471         * css/CSSStyleSelector.cpp:
   81472         (WebCore::CSSStyleSelector::applyProperty):
   81473         * css/CSSTransformValue.h:
   81474         (WebCore::CSSTransformValue::type):
   81475         (WebCore::CSSTransformValue::values):
   81476         * platform/graphics/AffineTransform.cpp:
   81477         (WebCore::AffineTransform::skew):
   81478         * platform/graphics/AffineTransform.h:
   81479         * rendering/RenderStyle.cpp:
   81480         (WebCore::StyleTransformData::StyleTransformData):
   81481         (WebCore::StyleTransformData::operator==):
   81482         (WebCore::StyleTransformData::transformDataEquivalent):
   81483         * rendering/RenderStyle.h:
   81484         (WebCore::TransformOperation::~TransformOperation):
   81485         (WebCore::TransformOperation::operator!=):
   81486         (WebCore::TransformOperation::isScaleOperation):
   81487         (WebCore::TransformOperation::isRotateOperation):
   81488         (WebCore::TransformOperation::isSkewOperation):
   81489         (WebCore::TransformOperation::isTranslateOperation):
   81490         (WebCore::TransformOperation::isMatrixOperation):
   81491         (WebCore::ScaleTransformOperation::ScaleTransformOperation):
   81492         (WebCore::ScaleTransformOperation::isScaleOperation):
   81493         (WebCore::ScaleTransformOperation::operator==):
   81494         (WebCore::ScaleTransformOperation::apply):
   81495         (WebCore::RotateTransformOperation::RotateTransformOperation):
   81496         (WebCore::RotateTransformOperation::isRotateOperation):
   81497         (WebCore::RotateTransformOperation::operator==):
   81498         (WebCore::RotateTransformOperation::apply):
   81499         (WebCore::SkewTransformOperation::SkewTransformOperation):
   81500         (WebCore::SkewTransformOperation::isSkewOperation):
   81501         (WebCore::SkewTransformOperation::operator==):
   81502         (WebCore::SkewTransformOperation::apply):
   81503         (WebCore::TranslateTransformOperation::TranslateTransformOperation):
   81504         (WebCore::TranslateTransformOperation::isTranslateOperation):
   81505         (WebCore::TranslateTransformOperation::operator==):
   81506         (WebCore::TranslateTransformOperation::apply):
   81507         (WebCore::MatrixTransformOperation::MatrixTransformOperation):
   81508         (WebCore::MatrixTransformOperation::isMatrixOperation):
   81509         (WebCore::MatrixTransformOperation::operator==):
   81510         (WebCore::MatrixTransformOperation::apply):
   81511         (WebCore::StyleTransformData::operator!=):
   81512         (WebCore::RenderStyle::transform):
   81513         (WebCore::RenderStyle::setTransform):
   81514         (WebCore::RenderStyle::initialTransform):
   81515 
   81516 2007-10-17  Adam Roben  <aroben (a] apple.com>
   81517 
   81518         * page/Frame.cpp: I had to touch this file when fixing the Windows
   81519         build. Checking it in in case it helps others, too.
   81520 
   81521 2007-10-17  Eric Seidel  <eric (a] webkit.org>
   81522 
   81523         Reviewed by Mark Rowe.
   81524         
   81525         Remove a couple more uses of svg_dynamic_cast.
   81526 
   81527         No functional changes, no tests.
   81528 
   81529         * ksvg2/svg/SVGPatternElement.cpp:
   81530         (WebCore::SVGPatternElement::buildPattern):
   81531 
   81532 2007-10-17  Mark Rowe  <mrowe (a] apple.com>
   81533 
   81534         Reviewed by Eric and Geoff.
   81535 
   81536         <rdar://problem/5453743> Repro ASSERT in CachedResource::setEncodedSize() loading image in background tab
   81537         http://bugs.webkit.org/show_bug.cgi?id=15191
   81538 
   81539         * loader/DocLoader.cpp:
   81540         (WebCore::DocLoader::setAutoLoadImages): Don't start a load if the CachedImage is already loading.
   81541 
   81542 2007-10-17  Justin Garcia  <justin.garcia (a] apple.com>
   81543 
   81544         Reviewed by Harrison.
   81545         
   81546         <rdar://problem/5481523> 
   81547         GoogleDocs: Safari hangs when indenting a particular table twice
   81548         
   81549         Fixed by fixing problems with the selection preservation done by IndentOutdentCommand.
   81550         It is now more difficult to create selections that cause hangs.  Those are covered by:
   81551         <rdar://problem/5543472>
   81552 
   81553         * editing/IndentOutdentCommand.cpp:
   81554         (WebCore::indexForVisiblePosition): Compute indices from the first VisiblePosition
   81555         in the document, instead of the first Position.
   81556         Use rangeCompliantEquivalents when creating the Range that we pass to rangeLength.
   81557         Tell TextIterator::rangeLength that we're doing selection preservation, so that it
   81558         will emit characters between all VisiblePositions.
   81559         (WebCore::IndentOutdentCommand::indentRegion): Fixed a bug where the range and location
   81560         passed to rangeFromLocationAndLength were reversed.
   81561         Tell rangeFromLocationAndLength that we're doing doing selection preservation, as
   81562         above.
   81563         * editing/TextIterator.cpp:
   81564         (WebCore::CharacterIterator::CharacterIterator): 
   81565         (WebCore::TextIterator::rangeLength): Rename emitSpacesForReplacedElements
   81566         to forSelectionPreservation, to match the name of the boolean inside TextIterator and
   81567         to match its meaning after r25522.
   81568         (WebCore::TextIterator::rangeFromLocationAndLength): Ditto.
   81569 
   81570 2007-10-16  Darin Adler  <darin (a] apple.com>
   81571 
   81572         Reviewed by Mitz.
   81573 
   81574         - fix http://bugs.webkit.org/show_bug.cgi?id=15536
   81575           need to cache missing glyph so we're not slow on pages that show missing glyphs
   81576 
   81577         - <rdar://problem/5404359> UI thread stall (>60sec) in MLANG running stress test
   81578           (related to font data caching)
   81579 
   81580         * platform/Font.cpp: (WebCore::Font::glyphDataForCharacter): Check for a null value
   81581         for fontData rather than for glyph to detect non-cached entries in the glyph data.
   81582 
   81583         * platform/gtk/GlyphPageTreeNodeGtk.cpp: (WebCore::GlyphPage::fill):
   81584         * platform/mac/GlyphPageTreeNodeMac.cpp: (WebCore::GlyphPage::fill):
   81585         * platform/win/GlyphPageTreeNodeWin.cpp: (WebCore::GlyphPage::fill):
   81586         Set fontData to 0 for missing glyph entries. Also fixed the Windows and GTK versions
   81587         to return the proper value for haveGlyphs.
   81588 
   81589 2007-10-16  Mark Rowe  <mrowe (a] apple.com>
   81590 
   81591         Gtk build fix.  Replace use of assert with ASSERT_NOT_REACHED.
   81592 
   81593         * platform/gtk/FontCacheGtk.cpp:
   81594         (WebCore::FontCache::platformInit):
   81595 
   81596 2007-10-16  Darin Adler  <darin (a] apple.com>
   81597 
   81598         Reviewed by Adam.
   81599 
   81600         - fix http://bugs.webkit.org/show_bug.cgi?id=15534
   81601           WebScriptObject.h has some formatting and editorial mistakes
   81602 
   81603         * bindings/objc/WebScriptObject.h: Fix wording and formatting.
   81604 
   81605 2007-10-16  Darin Adler  <darin (a] apple.com>
   81606 
   81607         - try to fix the Qt build
   81608 
   81609         * config.h: Don't use DisallowCType.h, since it's incompatible with some C++ headers
   81610         that are used in some Qt-specific source files.
   81611 
   81612 2007-10-16  Darin Adler  <darin (a] apple.com>
   81613 
   81614         Reviewed by Adele.
   81615 
   81616         - fix http://bugs.webkit.org/show_bug.cgi?id=15525
   81617           transpose (control-T) should do the last two characters on a line if at end of line
   81618         - remove unused CommandByName class
   81619         - move transpose command implementation here from Mac OS X WebKit
   81620 
   81621         * editing/Editor.h:
   81622         * editing/Editor.cpp:
   81623         (WebCore::execTranspose): Added.
   81624         (WebCore::Editor::transpose): Added. This has the transpose implementation from
   81625         WebCoreFrameBridge and WebHTMLView, translated into WebCore-style C++ and with
   81626         a special case for the end of a paragraph.
   81627 
   81628         * page/Frame.h: Removed unused command() function member.
   81629         * page/FramePrivate.h: Removed unused m_command data member.
   81630         * page/Frame.cpp: Ditto.
   81631 
   81632         * page/mac/WebCoreFrameBridge.h: Removed rangeOfCharactersAroundCaret method.
   81633         * page/mac/WebCoreFrameBridge.mm: Ditto.
   81634 
   81635         * WebCore.pro: Removed CommandByName.h/cpp.
   81636         * WebCore.vcproj/WebCore.vcproj: Ditto.
   81637         * WebCore.xcodeproj/project.pbxproj: Ditto.
   81638 
   81639         * editing/CommandByName.cpp: Removed.
   81640         * editing/CommandByName.h: Removed.
   81641 
   81642 2007-10-16  Darin Adler  <darin (a] apple.com>
   81643 
   81644         Reviewed by Maciej and Geoff (and looked over by Eric).
   81645 
   81646         - http://bugs.webkit.org/show_bug.cgi?id=15519
   81647           eliminate use of <ctype.h> for processing ASCII
   81648 
   81649         * ForwardingHeaders/wtf/ASCIICType.h: Added.
   81650         * ForwardingHeaders/wtf/DisallowCType.h: Added.
   81651 
   81652         * WebCorePrefix.h: Get rid of inclusion of <ctype.h>.
   81653         * config.h: Include DisallowCType.h.
   81654 
   81655         * css/CSSParser.cpp:
   81656         (WebCore::ParseString::lower):
   81657         * css/CSSPrimitiveValue.cpp:
   81658         (WebCore::isCSSTokenizerIdentifier):
   81659         * css/CSSStyleDeclaration.cpp:
   81660         (WebCore::propertyID):
   81661         * html/HTMLSelectElement.cpp:
   81662         (WebCore::stripLeadingWhiteSpace):
   81663         * html/HTMLTokenizer.cpp:
   81664         (WebCore::tagMatch):
   81665         * loader/FTPDirectoryParser.cpp:
   81666         (WebCore::parseOneFTPLine):
   81667         * loader/TextResourceDecoder.cpp:
   81668         (WebCore::TextResourceDecoder::checkForHeadCharset):
   81669         * platform/DeprecatedCString.cpp:
   81670         (WebCore::DeprecatedCString::lower):
   81671         (WebCore::DeprecatedCString::upper):
   81672         (WebCore::DeprecatedCString::find):
   81673         (WebCore::DeprecatedCString::contains):
   81674         * platform/DeprecatedString.cpp:
   81675         (WebCore::equalCaseInsensitive):
   81676         (WebCore::isCharacterAllowedInBase):
   81677         (WebCore::DeprecatedString::find):
   81678         (WebCore::DeprecatedString::contains):
   81679         (WebCore::toIntegralType):
   81680         * platform/DeprecatedString.h:
   81681         (WebCore::DeprecatedChar::isSpace):
   81682         (WebCore::DeprecatedChar::lower):
   81683         (WebCore::DeprecatedChar::upper):
   81684         * platform/KURL.cpp:
   81685         (WebCore::KURL::parse):
   81686         * platform/StringImpl.cpp:
   81687         (WebCore::isSpace):
   81688         (WebCore::StringImpl::containsOnlyWhitespace):
   81689         (WebCore::StringImpl::isLower):
   81690         (WebCore::StringImpl::lower):
   81691         (WebCore::StringImpl::find):
   81692         (WebCore::StringImpl::reverseFind):
   81693         (WebCore::equalIgnoringCase):
   81694         * platform/TextEncodingRegistry.cpp:
   81695         (WebCore::TextEncodingNameHash::equal):
   81696         (WebCore::TextEncodingNameHash::hash):
   81697         (WebCore::atomicCanonicalTextEncodingName):
   81698         * platform/mac/KeyEventMac.mm:
   81699         (WebCore::keyIdentifierForKeyEvent):
   81700         * platform/win/KeyEventWin.cpp:
   81701         (WebCore::keyIdentifierForWindowsKeyCode):
   81702         * platform/win/PopupMenuWin.cpp:
   81703         (WebCore::isASCIIPrintable):
   81704         (WebCore::PopupWndProc):
   81705         * plugins/win/PluginViewWin.cpp:
   81706         (WebCore::capitalizeRFC822HeaderFieldName):
   81707         * rendering/RenderText.cpp:
   81708         (WebCore::RenderText::widthFromCache):
   81709         Use ASCIICType.h functions instead of ctype.h ones.
   81710 
   81711 2007-10-16  Mitz Pettel  <mitz (a] webkit.org>
   81712 
   81713         Reviewed by Dave Hyatt.
   81714 
   81715         - fix http://bugs.webkit.org/show_bug.cgi?id=15296
   81716           REGRESSION (r19716-r19719): width not specified for <marquee> tag is causing the alignment issue.
   81717 
   81718         Test: fast/block/float/marquee-shrink-to-avoid-floats.html
   81719 
   81720         * rendering/RenderObject.cpp:
   81721         (WebCore::RenderObject::shrinkToAvoidFloats): Changed to return 'true' for <marquee>s with auto width.
   81722 
   81723 2007-10-16  Beth Dakin  <bdakin (a] apple.com>
   81724 
   81725         Reviewed by Darin.
   81726 
   81727         Fix for <rdar://problem/5517118> REGRESSION: 9A570 - Safari renders 
   81728         Amazon seller page way too small
   81729 
   81730         The font size at Amazon was way too small because the calls to 
   81731         getComputedStyle and getPropertyValue did not cause the div to 
   81732         attach because there was a pending stylesheet. The fix is to call 
   81733         updateLayoutIgnorePendingStylesheets() instead of just 
   81734         updateLayout().
   81735 
   81736         * css/CSSComputedStyleDeclaration.cpp:
   81737         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
   81738 
   81739 2007-10-16  David Hyatt  <hyatt (a] apple.com>
   81740 
   81741         Get transform-origin(x/y) mapped into the front end RenderStyle.  Adds a new StyleTransformData struct that
   81742         holds transform-origin (and that will also eventually hold the parsed transform operations as well).
   81743 
   81744         Reviewed by Beth
   81745 
   81746         * css/CSSStyleSelector.cpp:
   81747         (WebCore::CSSStyleSelector::applyProperty):
   81748         * rendering/RenderStyle.cpp:
   81749         (WebCore::StyleTransformData::StyleTransformData):
   81750         (WebCore::StyleTransformData::operator==):
   81751         (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
   81752         (WebCore::StyleRareNonInheritedData::operator==):
   81753         (WebCore::RenderStyle::RenderStyle):
   81754         (WebCore::RenderStyle::diff):
   81755         * rendering/RenderStyle.h:
   81756         (WebCore::StyleTransformData::operator!=):
   81757         (WebCore::RenderStyle::transformOriginX):
   81758         (WebCore::RenderStyle::transformOriginY):
   81759         (WebCore::RenderStyle::setTransformOriginX):
   81760         (WebCore::RenderStyle::setTransformOriginY):
   81761         (WebCore::RenderStyle::initialTransformOriginX):
   81762         (WebCore::RenderStyle::initialTransformOriginY):
   81763 
   81764 2007-10-16  Adele Peterson  <adele (a] apple.com>
   81765 
   81766         Reviewed by Alice.
   81767 
   81768         Fix for <rdar://problem/5538793> REGRESSION: Failing layout test: fast/forms/select-change-listbox-to-popup.html (due to landing feature branch)
   81769 
   81770         * html/HTMLSelectElement.cpp: (WebCore::HTMLSelectElement::parseMappedAttribute):  When switching between types of select elements, call setRecalcListItems
   81771           since recalcListItems updates the default selection in different ways for the different controls. 
   81772 
   81773 2007-10-16  Alice Liu  <alice.liu (a] apple.com>
   81774 
   81775         rubber-stamped by Darin.
   81776 
   81777         flipping my previous fix around so that mac is special-cased instead of win.
   81778 
   81779         * dom/Document.cpp:
   81780         (WebCore::Document::defaultEventHandler):
   81781 
   81782 2007-10-16  David Hyatt  <hyatt (a] apple.com>
   81783 
   81784         Clean up transform parsing.  Fix a crash, ditch the extra parse context class, and use RefPtr/PassRefPtr more
   81785         to simplify the code.
   81786 
   81787         Reviewed by aroben
   81788 
   81789         * css/CSSParser.cpp:
   81790         (WebCore::CSSParser::parseValue):
   81791         (WebCore::CSSParser::parseTransform):
   81792         * css/CSSParser.h:
   81793 
   81794 2007-10-16  Alice Liu  <alice.liu (a] apple.com>
   81795 
   81796         Reviewed by Adele.
   81797 
   81798         fixed <rdar://5085596> Accesskeys don't work
   81799         
   81800         * dom/Document.cpp:
   81801         (WebCore::Document::defaultEventHandler):
   81802         accesskey modifier is platform-depedent.
   81803 
   81804 2007-10-15  Mark Rowe  <mrowe (a] apple.com>
   81805 
   81806         Reviewed by John.
   81807 
   81808         <rdar://problem/5494040> Reproducible assertion failure in WebCore::IconDatabase::iconForPageURL
   81809 
   81810         A race condition between icon database import and Safari asking for an icon for the empty URL
   81811         was resulting in a PageURLRecord being created for a URL that can never be retained.  By enforcing
   81812         that PageURLRecord's cannot be created for the empty URL we can prevent the assertion from failing.
   81813 
   81814         * loader/icon/IconDatabase.cpp:
   81815         (WebCore::IconDatabase::iconForPageURL):
   81816         (WebCore::IconDatabase::getOrCreatePageURLRecord): Bail out early if the URL is empty.
   81817         (WebCore::IconDatabase::performURLImport): Don't create the PageURLRecord if the URL is empty.
   81818 
   81819 2007-10-15  Jon Honeycutt  <jhoneycutt (a] apple.com>
   81820 
   81821         Reviewed by Ollie.
   81822 
   81823         Use OwnPtr for m_deliveryData, and fix a bug where we were memmove()ing
   81824         over m_deliveryData instead of its data buffer
   81825 
   81826         * plugins/win/PluginStreamWin.cpp:
   81827         (WebCore::PluginStreamWin::~PluginStreamWin): Don't delete
   81828         m_deliveryData
   81829         (WebCore::PluginStreamWin::deliverData): Fix memmove() call
   81830         (WebCore::PluginStreamWin::didReceiveData): Assign using OwnPtr::set()
   81831         * plugins/win/PluginStreamWin.h: Use OwnPtr
   81832 
   81833 2007-10-15  Steve Falkenburg  <sfalken (a] apple.com>
   81834 
   81835         Reviewed by Oliver.
   81836 
   81837         Add missing null check.
   81838 
   81839         * platform/network/cf/AuthenticationCF.cpp:
   81840         (WebCore::core):
   81841 
   81842 2007-10-15  Mark Rowe  <mrowe (a] apple.com>
   81843 
   81844         Fix the no-SVG build again.  Add new transform CSS properties to the switch statements.
   81845 
   81846         * css/CSSComputedStyleDeclaration.cpp:
   81847         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
   81848         * css/CSSStyleSelector.cpp:
   81849         (WebCore::CSSStyleSelector::applyProperty):
   81850 
   81851 2007-10-15  Darin Adler  <darin (a] apple.com>
   81852 
   81853         Reviewed by Mitz.
   81854 
   81855         - http://bugs.webkit.org/show_bug.cgi?id=15518
   81856           Remove the unused attemptFontSubstitution feature and do some
   81857           cleanup of glyphDataForCharacter.
   81858 
   81859         * platform/Font.h:
   81860         * platform/Font.cpp:
   81861         (WebCore::WidthIterator::advance): Eliminated uneeded attemptFontSubstitution
   81862         and cluster parameters to the glyphDataForCharacter function.
   81863         (WebCore::Font::glyphDataForCharacter): Removed the cluster parameter and
   81864         attemptFontSubstitution parameter. Removed the isUpper check before calling
   81865         toUpper in the small caps code path. Split up the inner loop into separate
   81866         copies for non-small-caps and small caps. Broke out the system fallback
   81867         page handling so it's not inside the loop. Changed system fallback so it uses
   81868         the character and breaks it up into UTF-16 as needed, instead of using a
   81869         passed-in "character cluster".
   81870 
   81871         * platform/TextStyle.h:
   81872         (WebCore::TextStyle::TextStyle): Removed attemptFontSubstitution.
   81873         (WebCore::TextStyle::applyWordRounding): Ditto.
   81874 
   81875 2007-10-15  Jon Honeycutt  <jhoneycutt (a] apple.com>
   81876 
   81877         Reviewed by Ollie.
   81878 
   81879         Remove an operator precedence warning on Windows
   81880 
   81881         * editing/markup.cpp:
   81882         (WebCore::escapeContentText): Use (a) | (b)
   81883         (WebCore::appendEscapedContent): Use (a) | (b)
   81884 
   81885 2007-10-15  Kevin McCullough  <kmccullough (a] apple.com>
   81886 
   81887         Reviewed by Darin.
   81888 
   81889         - <rdar://problem/5238818> window.resizeTo doesn't restrict the resized window to the size of the screen
   81890         - Now we take the doc into account when resizing.
   81891         - Also I found an issue where we would resize to outside the window, because
   81892           the resize would be smaller than the window size but the location of the
   81893           window would make the resize go off-screen. Now we move the window back into the screen.
   81894 
   81895         * bindings/js/kjs_window.cpp:
   81896         (KJS::adjustWindowRect):
   81897         (KJS::WindowFunc::callAsFunction):
   81898 
   81899 2007-10-15  Jon Honeycutt  <jhoneycutt (a] apple.com>
   81900 
   81901         Reviewed by Anders.
   81902 
   81903         <rdar://5510700> Repro crash loading embedded Windows Media Player
   81904         content
   81905 
   81906         Anders noticed that the older Windows Media Player plugin (npdsplay.dll)
   81907         will crash if it receives its resource requests out of order, whereas we
   81908         were immediately fulfilling untargeted, non-JavaScript requests and
   81909         scheduling targeted or JavaScript resource requests. Implement his
   81910         suggested fix, which is to schedule PluginRequests for all resource
   81911         requests 
   81912 
   81913         * plugins/win/PluginViewWin.cpp:
   81914         (WebCore::getString):
   81915         (WebCore::PluginViewWin::performRequest): If this non-JavaScript request
   81916         has no target, create a stream for it
   81917         (WebCore::PluginViewWin::load): Schedule PluginRequests for all resource
   81918         requests
   81919 
   81920 2007-10-15  Mark Rowe  <mrowe (a] apple.com>
   81921 
   81922         Gtk and Qt build fix.  Add new .cpp file to project.
   81923 
   81924         * WebCore.pro:
   81925 
   81926 2007-10-15  John Sullivan  <sullivan (a] apple.com>
   81927 
   81928         * platform/mac/FontDataMac.mm:
   81929         D'oh! Added missing #import to fix build
   81930 
   81931 2007-10-15  John Sullivan  <sullivan (a] apple.com>
   81932 
   81933         Reviewed by Geoff
   81934 
   81935         * platform/mac/FontDataMac.mm:
   81936         (WebCore::FontData::smallCapsFontData):
   81937         replace NS_DURING/NS_HANDLER with WebCore-style BEGIN/END_BLOCK_OBJC_EXCEPTIONS
   81938 
   81939 2007-10-15  David Hyatt  <hyatt (a] apple.com>
   81940 
   81941         The CSS WG has been discussing the concept of rotation.  In the latest draft specification, two properties
   81942         have been introduced: rotation and rotation-point.  I believe these properties should be generalized to
   81943         allow for arbitrary transformations (e.g., translation, skew, rotate, scale).
   81944 
   81945         This patch adds support for the back-end parsing of two new CSS properties: transform and transform-origin.
   81946         They are directly analogous to the properties specified by the CSS WG, except that they are designed to allow
   81947         for arbitrary affine transforms rather than just rotation.
   81948 
   81949         Reviewed by Beth Dakin
   81950 
   81951         * WebCore.xcodeproj/project.pbxproj:
   81952         * WebCore.vcproj/WebCore.vcproj:
   81953         * css/CSSComputedStyleDeclaration.cpp:
   81954         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
   81955         * css/CSSParser.cpp:
   81956         (WebCore::CSSParser::parseValue):
   81957         (WebCore::TransformParseContext:::m_list):
   81958         (WebCore::TransformParseContext::list):
   81959         (WebCore::TransformParseContext::failed):
   81960         (WebCore::TransformParseContext::addValue):
   81961         (WebCore::TransformOperationInfo::TransformOperationInfo):
   81962         (WebCore::TransformOperationInfo::type):
   81963         (WebCore::TransformOperationInfo::argCount):
   81964         (WebCore::TransformOperationInfo::unit):
   81965         (WebCore::TransformOperationInfo::unknown):
   81966         (WebCore::TransformOperationInfo::hasCorrectArgCount):
   81967         (WebCore::CSSParser::parseTransform):
   81968         (WebCore::CSSParser::parseTransformOrigin):
   81969         * css/CSSParser.h:
   81970         * css/CSSPropertyNames.in:
   81971         * css/CSSTransformValue.cpp: Added.
   81972         (WebCore::CSSTransformValue::CSSTransformValue):
   81973         (WebCore::CSSTransformValue::~CSSTransformValue):
   81974         (WebCore::CSSTransformValue::addValue):
   81975         (WebCore::CSSTransformValue::cssText):
   81976         * css/CSSTransformValue.h: Added.
   81977         (WebCore::CSSTransformValue::):
   81978 
   81979 2007-10-15  Mark Rowe  <mrowe (a] apple.com>
   81980 
   81981         Reviewed by Oliver.
   81982 
   81983         Fix the no-SVG build.
   81984 
   81985         * DerivedSources.make: Use the correct file as input to generate CSSPropertyNames.h.
   81986         * rendering/RenderObject.cpp:
   81987         (WebCore::objectIsRelayoutBoundary):
   81988 
   81989 2007-10-15  Darin Adler  <darin (a] apple.com>
   81990 
   81991         Reviewed by Sam.
   81992 
   81993         - fix http://bugs.webkit.org/show_bug.cgi?id=15520
   81994           alert(undefined) should say "undefined" in the alert
   81995 
   81996         Test: fast/dom/Window/alert-undefined.html
   81997 
   81998         * page/DOMWindow.idl: Remove ConvertUndefinedOrNullToNullString from alert, confirm, and prompt.
   81999         It turns out that the default behavior is what the other browsers do (browsers tested: IE 7,
   82000         Firefox 2).
   82001 
   82002 2007-10-15  Adele Peterson  <adele (a] apple.com>
   82003 
   82004         Reviewed by Darin.
   82005 
   82006         Fix for http://bugs.webkit.org/show_bug.cgi?id=15252
   82007         <rdar://problem/5498184> REGRESSION: <select multiple> doesn't scroll to top when old options are removed and new ones are added, leaving listbox empty-looking
   82008 
   82009         * rendering/RenderListBox.cpp: (WebCore::RenderListBox::calcHeight): If the scrollbar is disabled, make sure the scroll offset gets reset to 0.  In general,
   82010           we don't want to unnecessarily adjust the scroll offset, but in this case, there won't be an obvious way for the user to adjust the scroller position once it's disabled.
   82011 
   82012 2007-10-15  Jon Honeycutt  <jhoneycutt (a] apple.com>
   82013 
   82014         Reviewed by Maciej.
   82015 
   82016         Return a more appropriate error from NPN_RequestRange, which is
   82017         currently unimplemented
   82018 
   82019         * plugins/win/npapi.cpp: return NPERR_STREAM_NOT_SEEKABLE 
   82020         (NPN_RequestRead):
   82021 
   82022 2007-10-15  Jon Honeycutt  <jhoneycutt (a] apple.com>
   82023 
   82024         Reviewed by Maciej.
   82025 
   82026         Add a missing function pointer to the m_browserFuncs structure
   82027 
   82028         * plugins/win/PluginPackageWin.cpp:
   82029         (WebCore::PluginPackageWin::load):
   82030 
   82031 2007-10-15  Simon Hausmann  <hausmann (a] kde.org>
   82032 
   82033         Reviewed by Lars.
   82034 
   82035         Fix the compilation of the Font code in the Qt port by adding the necessary stubs to support downloadable fonts through the @font-face rules.
   82036 
   82037         * WebCore.pro:
   82038         * loader/CachedFont.cpp:
   82039         * platform/qt/FontCacheQt.cpp: Removed.
   82040         * platform/qt/FontCustomPlatformData.cpp: Removed.
   82041         * platform/qt/FontCustomPlatformData.h: Removed.
   82042         * platform/qt/FontDataQt.cpp: Removed.
   82043         * platform/qt/FontPlatformData.h: Removed.
   82044         * platform/qt/FontQt.cpp:
   82045         * platform/qt/GlyphPageTreeNodeQt.cpp: Removed.
   82046 
   82047 2007-10-15  Simon Hausmann  <hausmann (a] kde.org>
   82048 
   82049         Reviewed by Lars.
   82050 
   82051         Adapt to the latest API changes in the SVG API/Code.
   82052 
   82053         * platform/graphics/svg/qt/RenderPathQt.cpp:
   82054         (WebCore::RenderPath::strokeContains):
   82055         (WebCore::getPathStroke):
   82056         * platform/graphics/svg/qt/SVGPaintServerQt.cpp:
   82057         (WebCore::SVGPaintServer::setPenProperties):
   82058         * platform/graphics/svg/qt/SVGResourceMaskerQt.cpp:
   82059 
   82060 2007-10-14  Nikolas Zimmermann  <zimmermann (a] kde.org>
   82061 
   82062         Reviewed by Eric.
   82063 
   82064         Fix bad abstraction in ImageBuffer class.
   82065         While the class itself is platform-aware and thus it's location in platform/graphics
   82066         is fine, it contains the "renderSubtreeToImage" method which operates on RenderObject.
   82067 
   82068         As it's SVG specific I decided to move this method into SVGRenderSupport, to avoid
   82069         implicit platform/ <-> rendering/ dependencies.
   82070 
   82071         * WebCore.pro:
   82072         * WebCore.vcproj/WebCore.vcproj:
   82073         * WebCore.xcodeproj/project.pbxproj:
   82074         * ksvg2/svg/SVGMaskElement.cpp:
   82075         (WebCore::SVGMaskElement::drawMaskerContent):
   82076         * ksvg2/svg/SVGPatternElement.cpp:
   82077         (WebCore::SVGPatternElement::buildPattern):
   82078         * platform/graphics/ImageBuffer.cpp: Removed.
   82079         * platform/graphics/ImageBuffer.h:
   82080         (WebCore::ImageBuffer::size):
   82081         * platform/graphics/svg/SVGImage.cpp:
   82082         (WebCore::SVGImage::nativeImageForCurrentFrame):
   82083         * rendering/SVGRenderSupport.cpp:
   82084         (WebCore::renderSubtreeToImage):
   82085         * rendering/SVGRenderSupport.h:
   82086 
   82087 2007-10-14  Peter Kasting  <pkasting (a] google.com>
   82088 
   82089         Reviewed by Maciej.
   82090 
   82091         http://bugs.webkit.org/show_bug.cgi?id=15210
   82092         Draw the image outline even for broken images.
   82093 
   82094         * rendering/RenderImage.cpp:
   82095         (WebCore::RenderImage::paint):
   82096 
   82097 2007-10-14  Kevin Ollivier  <kevino (a] theolliviers.com>
   82098 
   82099         Reviewed by Adam.
   82100 
   82101         Add support for MSVC7, and fix cases where PLATFORM(WIN) should
   82102         be PLATFORM(WIN_OS) for other ports building on Windows.
   82103 
   82104         * dom/XMLTokenizer.cpp:
   82105         * page/FrameTree.cpp:
   82106         * platform/StaticConstructors.h:
   82107         * platform/String.cpp:
   82108 
   82109 2007-10-14  Maxime Britto  <mbritto (a] pleyo.com>
   82110 
   82111         Reviewed by Mitz.
   82112 
   82113         Fix an error in the goBackOrForward() function : confusion between forwardListCount and backListCount.
   82114         http://bugs.webkit.org/show_bug.cgi?id=15212
   82115 
   82116         * loader/FrameLoader.cpp:
   82117         (WebCore::FrameLoader::goBackOrForward):
   82118 
   82119 2007-10-14  Mitz Pettel  <mitz (a] webkit.org>
   82120 
   82121         Reviewed by Darin.
   82122 
   82123         - fix http://bugs.webkit.org/show_bug.cgi?id=15181
   82124           text-transform: uppercase not working in input (submit, reset, button) elements
   82125           <rdar://problem/5474647>
   82126 
   82127         Test: fast/forms/button-text-transform.html
   82128 
   82129         Text transformations require access to the original text. The button's inner
   82130         text was an anonymous RenderText, meaning it did not have a node to retrieve
   82131         the original text from. The patch fixes this by changing the inner text into a
   82132         RenderTextFragment, which stores its own original text.
   82133 
   82134         * rendering/RenderButton.cpp:
   82135         (WebCore::RenderButton::setText):
   82136         * rendering/RenderButton.h:
   82137 
   82138 2007-10-14  Eric Seidel  <eric (a] webkit.org>
   82139 
   82140         Reviewed by Maciej.
   82141 
   82142         REGRESSION: Javascript bug in getElementsByName
   82143         http://bugs.webkit.org/show_bug.cgi?id=15274
   82144 
   82145         Test: fast/dom/getelementbyname-invalidation.html
   82146 
   82147         * dom/NameNodeList.h: remove empty rootNodeChildrenChanged override
   82148 
   82149 2007-10-14  Mitz Pettel  <mitz (a] webkit.org>
   82150 
   82151         Reviewed by Maciej.
   82152 
   82153         - http://bugs.webkit.org/show_bug.cgi?id=15303
   82154           Remove now-redundant code to restore dialog arguments after clear
   82155 
   82156         This patch reverts the kjs_window.* parts of r25576 because following
   82157         r25783, window properties, including dialog arguments, are not cleared
   82158         when the newly created modal dialog transitions to the document.
   82159 
   82160         * bindings/js/kjs_window.cpp:
   82161         (KJS::WindowPrivate::WindowPrivate):
   82162         (KJS::createWindow):
   82163         (KJS::showModalDialog):
   82164         (KJS::Window::clear):
   82165         (KJS::WindowFunc::callAsFunction):
   82166         (KJS::Window::setReturnValueSlot):
   82167         * bindings/js/kjs_window.h:
   82168 
   82169 2007-10-14  Mitz Pettel  <mitz (a] webkit.org>
   82170 
   82171         Reviewed by Dave Hyatt.
   82172 
   82173         - fix http://bugs.webkit.org/show_bug.cgi?id=15309
   82174           <rdar://problem/5512020> Crash due to infinite recursion in RenderTable::addChild
   82175 
   82176         Test: fast/table/generated-caption.html
   82177 
   82178         * rendering/RenderTable.cpp:
   82179         (WebCore::RenderTable::addChild): Changed to make sure that the child is
   82180         not added into generated after content. Also made adding a child before
   82181         a table caption work correctly instead of adding the child after the caption.
   82182 
   82183 2007-10-14  Peter Kasting  <pkasting (a] google.com>
   82184 
   82185         Reviewed by Maciej.
   82186 
   82187         http://bugs.webkit.org/show_bug.cgi?id=15141
   82188         Feed GIF reader data from the point in the stream it expects.  Also,
   82189         mirror the reader's failure state up to the wrapping decoder.
   82190 
   82191         * platform/image-decoders/gif/GIFImageReader.cpp:
   82192         (GIFImageReader::read):
   82193 
   82194 2007-10-14  Peter Kasting  <pkasting (a] google.com>
   82195 
   82196         Reviewed by Maciej.
   82197 
   82198         http://bugs.webkit.org/show_bug.cgi?id=15142
   82199         Return correct frame count in GIFImageDecoder::frameBufferAtIndex(),
   82200         even if more data has arrived since the last decoding pass.
   82201 
   82202         * platform/image-decoders/gif/GIFImageDecoder.cpp:
   82203         (WebCore::GIFImageDecoder::frameBufferAtIndex):
   82204 
   82205 == Rolled over to ChangeLog-2007-10-14 ==
   82206