[iOS] Redundant pointer events causes material design buttons to flush twice
[WebKit-https.git] / Source / WebCore / ChangeLog-2008-08-10
1 2008-08-10  Dan Bernstein  <mitz@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@apple.com>
461
462         - Windows build fix
463
464         * WebCore.vcproj/WebCore.vcproj: Added PlugInImageElement.*
465
466 2008-08-06  Kevin McCullough  <kmccullough@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@apple.com>
878
879         - fix typo
880
881         * page/mac/FrameMac.mm:
882
883 2008-08-05  Dan Bernstein  <mitz@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@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@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@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@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@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@apple.com>
935
936         Fix the ChangeLog that was corrupted by r34545.
937
938 2008-08-04  Timothy Hatcher  <timothy@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@webkit.org>
1272
1273         * ChangeLog: Fix date of previous commit (r35520)
1274
1275 2008-08-01  Marco Barisione  <marco.barisione@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@apple.com>
2368
2369         Reviewed by Sam Weinig.
2370
2371         Renamed "ConstructTypeNative" => "ConstructTypeHost".
2372         
2373 2008-07-28  Anders Carlsson  <andersca@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@apple.com>
2845
2846         Build fix.
2847
2848         * platform/win/PlatformScrollBarSafari.cpp:
2849
2850 2008-07-24  Tor Arne Vestbø  <tavestbo@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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@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&nb