Fix focus chain handling and cycling through focusable objects (links) using tab...
[WebKit-https.git] / WebCore / ChangeLog
1 2008-01-21  Simon Hausmann  <hausmann@webkit.org>
2
3         Reviewed by Holger.
4
5         Fix focus chain handling and cycling through focusable objects (links) using tab/backtab.
6         
7         * Fix GraphicsContext::drawFocusRing to also draw single focus rects.
8         * Implemented QWebPage::focusNextPrevChild by sending fake tab/shift-tab events
9         and make the return value depend on whether we successfully determined a focusable
10         node or not.
11         * Changed QWebView::focusNextPrevChild() to call the base QWidget implementation correctly
12         if we could not handle the focus chain ourselves.
13         * Changed the focus policy of QWebView to correctly use WheelFocus instead of ClickFocus.
14         * Made ChromeClientQt::canTakeFocus() and takeFocus() dummy method since they are only
15         used to control the situation of stepping out of the focus chain inside the page.
16         * Made inclusion of links in the focus chain configurable through QWebSettings::LinksIncludedInFocusChain.
17         The layout tests expect this to be disabled but for the user it seems sensible to have it
18         on by default, hence the default in qwebsettings.cpp
19
20         * platform/graphics/qt/GraphicsContextQt.cpp:
21         (WebCore::GraphicsContext::drawFocusRing):
22
23 2008-01-21  Simon Hausmann  <hausmann@webkit.org>
24
25         Reviewed by Holger.
26
27         Fix access key support and fast/forms/legend-access-key.html
28
29         SVN revision 26664 changed the default access key for the non-mac build to Alt
30         while this test relies on Ctrl.
31
32         * page/EventHandler.cpp:
33
34 2008-01-21  Simon Hausmann  <hausmann@webkit.org>
35
36         Reviewed by Holger.
37
38         Fix error reporting when parsing X(HT)ML fragments.
39         
40         We use the regular XMLTokenizer write()/.../end() sequence to parse those
41         fragments, but we should not report any parsing errors inline inside the
42         content. Instead we should just return the error and the DOM layer will take
43         care of throwing an exception.
44         
45         This fixes fast/innerHTML/innerHTML-changing-document-properties.xhtml
46         
47
48         * dom/XMLTokenizer.cpp:
49         (WebCore::createXHTMLParserErrorHeader):
50
51 2008-01-21  Holger Freyther  <holger.freyther@trolltech.com>
52
53         Reviewed by Simon.
54
55         Fix some issues with redirections.
56         
57         * Ensure that we deliver the response to the ResourceHandleClient only once by
58         setting m_responseSent back to false only before calling start() for the
59         redirection
60         * Added 307 as another HTTP status code that causes a redirection after POST to
61         become get, just like in MainResourceLoader::isPostOrRedirectAfterPost
62         * Also set the HTTP method on the ResourceRequest to GET before passing it to
63         willSendRequest.
64         * willSendRequest's newRequest argument is actually an in/out argument and could be
65         modified in theory, so set m_request accordingly after the call.
66         
67
68         * platform/network/qt/QNetworkReplyHandler.cpp:
69         (WebCore::QNetworkReplyHandler::finish):
70         (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
71
72 2008-01-21  Holger Freyther  <holger.freyther@trolltech.com>
73
74         Reviewed by Simon.
75
76         Fixed WebCore::cookies() to return all cookies, not only the first one.
77         
78         Fixes login into mail.yahoo.com.
79         
80
81         * platform/qt/CookieJarQt.cpp:
82         (WebCore::cookies):
83
84 2008-01-20  Oliver Hunt  <oliver@apple.com>
85
86         Reviewed by Mitz.
87
88         Fix http://bugs.webkit.org/show_bug.cgi?id=16816 , rdar://problem/5682985
89         
90         Correctly trigger willPerformDragDestinationAction when a drop causes a 
91         load to occur.  The logic that originally did this was lost during the
92         great drag migration of '07.
93
94         * page/DragController.cpp:
95         (WebCore::DragController::performDrag):
96
97 2008-01-20  Dan Bernstein  <mitz@apple.com>
98
99         Reviewed by Darin Adler.
100
101         - fix http://bugs.webkit.org/show_bug.cgi?id=16951
102           Assertion failure in FrameView::scheduleRelayout (!m_frame->document() || !m_frame->document()->inPageCache()) when going back from a page with a focused popup
103
104         * dom/Document.cpp:
105         (WebCore::Document::setFocusedNode): Bail out if the document is in the
106         page cache. Documents in the back/forward cache are "frozen" and should
107         not change state.
108
109 2008-01-20  Collin Jackson  <webkit@collinjackson.com>
110
111         Reviewed by Sam Weinig.
112
113         Fix for http://bugs.webkit.org/show_bug.cgi?id=16775
114
115         We now use frame()->loader()->url() for postMessage, preventing a
116         malicious sender from overwriting the uri property (using a <base> tag,
117         for example). Also, use frame->loader()->url().host() instead of 
118         instead of document()->SecurityOrigin()->domain() to reflect a recent
119         clarification in the HTML5 spec. 
120
121         Tests: http/tests/security/postMessage/domain-affected-by-document-domain.html
122                http/tests/security/postMessage/domain-and-uri-unaffected-by-base-tag.html
123                http/tests/security/postMessage/javascript-page-still-sends-domain.html
124
125         * bindings/js/JSDOMWindowCustom.cpp:
126         (WebCore::JSDOMWindow::postMessage):
127
128 2008-01-20  Antti Koivisto  <antti@apple.com>
129
130         Reviewed by Adele.
131
132         Fix <rdar://problem/5695451>
133         Middle part of the media timeline missing on Windows if load failed
134
135         Add some null checking to avoid getting garbage results from the functions.
136
137         * platform/graphics/MediaPlayer.cpp:
138         * platform/graphics/win/QTMovieWin.cpp:
139         (QTMovieWin::duration):
140         (QTMovieWin::currentTime):
141         (QTMovieWin::setCurrentTime):
142         (QTMovieWin::maxTimeLoaded):
143
144 2008-01-19  Alp Toker  <alp@atoker.com>
145
146         Reviewed by Mark Rowe.
147
148         http://bugs.webkit.org/show_bug.cgi?id=16944
149         Use of GST_PLUGIN_DEFINE_STATIC results in a module-level constructor
150
151         http://bugzilla.gnome.org/show_bug.cgi?id=510547
152         Epiphany/Webkit fails to start due to initializing threads twice
153
154         Don't call GST_PLUGIN_DEFINE_STATIC() as it performs g_thread_init()
155         in the global initializer, breaking subsequent calls to
156         g_thread_init() in applications.
157
158         * platform/graphics/gtk/VideoSinkGStreamer.cpp:
159
160 2008-01-19  Alp Toker  <alp@atoker.com>
161
162         Reviewed by Mark Rowe.
163
164         Remove any fragment part from the URL to be requested just before
165         passing it to curl, otherwise curl sends it as part of the HTTP/local
166         file request, causing page loads to fail.
167
168         * platform/network/curl/ResourceHandleManager.cpp:
169         (WebCore::ResourceHandleManager::startJob):
170
171 2008-01-19  Jan Michael Alonzo  <jmalonzo@unpluggable.com>
172
173         Reviewed by Alp Toker.
174
175         Add svg foreign object and svg experimental to the GTK+/autotools
176         build system.
177
178         * GNUmakefile.am:
179
180 2008-01-19  Dan Bernstein  <mitz@apple.com>
181
182         Reviewed by Maciej Stachowiak.
183
184         - fix <rdar://problem/5645813> CrashTracer: [USER] 6 crashes in Safari at com.apple.WebCore: WebCore::RenderBox::destroy + 116
185
186         Test: editing/selection/inconsistent-in-removeChildNode.html
187
188         * editing/SelectionController.cpp:
189         (WebCore::SelectionController::nodeWillBeRemoved): If the selection
190         base or extent are not visible any more, adjust the selection.
191
192 2008-01-19  Oliver Hunt  <oliver@apple.com>
193
194         Reviewed by Eric Seidel.
195
196         Build fix for --svg-foreign-object path
197
198         * svg/SVGForeignObjectElement.idl:
199
200 2008-01-18  Stephanie  <slewis@apple.com>
201
202         Reviewed by Oliver.
203
204         Workaround for <rdar://problem/5695848>.  Set mime_type for local files based on file extension. 
205
206         * platform/network/cf/ResourceResponseCFNet.cpp:
207         (WebCore::ResourceResponse::doUpdateResourceResponse):
208
209 2008-01-18  Ada Chan  <adachan@apple.com>
210
211         <rdar://problem/5682340> REGRESSION (r28188): Context menu appears at wrong place when clicking in iframe whose parent is scrolled (16827)
212         Calling absolutePosition() in EventHandler::hitTestResultAtPoint() is extremely inefficient and passing in
213         true as fixed before was wrong.  Use HitTestResult::localPoint() instead, and take into account border and padding widths.
214
215         Reviewed by Hyatt and Darin.
216
217         * page/EventHandler.cpp:
218         (WebCore::EventHandler::hitTestResultAtPoint):
219         * rendering/HitTestResult.cpp:
220         (WebCore::HitTestResult::operator=):
221
222 2008-01-18  Holger Hans Peter Freyther  <holger.freyther@trolltech.com>
223
224         Reviewed by Darin, landed by Beth.
225
226         - fixed http://bugs.webkit.org/show_bug.cgi?id=15765
227
228         The call to HTMLTokenizer::write might result in a call to ::end which will invoke
229         HTMLParser::finished() or Document::finishedParsing(). HTMLParser::finished() will eventually
230         call Document::finishedParsing. The Document will delete the calling HTMLTokenizer and from the deleted
231         tokenizer we will call into FrameLoader::tokenizerProcessedData.
232         -) FrameLoader::tokenizerProcessedData calls FrameLoader::checkCompleted which gets called from the Document::finishedParsing
233            (FrameLoader::finishedParsing).
234
235         * html/HTMLTokenizer.cpp:
236         (WebCore::HTMLTokenizer::timerFired):
237
238 2008-01-18  David Hyatt  <hyatt@apple.com>
239
240         Don't apply the border/margin/padding check to root line boxes, since their renderers
241         are blocks.
242
243         * rendering/InlineFlowBox.cpp:
244         (WebCore::InlineFlowBox::computeLogicalBoxHeights):
245         (WebCore::InlineFlowBox::placeBoxesVertically):
246
247 2008-01-18  Geoffrey Garen  <ggaren@apple.com>
248
249         Not reviewed: rolling out a previous patch.
250         
251         Fixed <rdar://problem/5695439> Crash during GCController destructor on
252         quitting browser
253
254         Used svn merge to roll out r29603 because it introduced some crashes
255         on quit.
256         
257         GC relies on static hash tables, so it's not safe to GC from a static
258         destructor, which might run after the static hash tables' destructors.
259
260         * bindings/js/GCController.cpp:
261         (WebCore::GCController::garbageCollectNow):
262         * bindings/js/GCController.h:
263
264 2008-01-18  David Hyatt  <hyatt@apple.com>
265
266         Fix for http://bugs.webkit.org/show_bug.cgi?id=15665
267
268         Building on Beth's earlier work to start building line boxes for empty inlines, this patch makes more
269         empty inline cases work.  Empty inlines on lines by themselves now set isLineEmpty to false so that
270         bidiReorderLine will get properly called.  In addition, the "shrink boxes with no text children" quirk
271         needs to be disabled for inlines with padding, margins or borders.
272
273         Reviewed by Beth
274
275         Added fast/inline/inline-padding-disables-text-quirk.html
276
277         * rendering/InlineFlowBox.cpp:
278         (WebCore::InlineFlowBox::computeLogicalBoxHeights):
279         (WebCore::InlineFlowBox::placeBoxesVertically):
280         (WebCore::InlineFlowBox::shrinkBoxesWithNoTextChildren):
281         * rendering/RenderObject.h:
282         (WebCore::RenderObject::hasBordersPaddingOrMargin):
283         * rendering/bidi.cpp:
284         (WebCore::inlineFlowRequiresLineBox):
285         (WebCore::RenderBlock::findNextLineBreak):
286
287 2008-01-18  David Hyatt  <hyatt@apple.com>
288
289         Fix for http://bugs.webkit.org/show_bug.cgi?id=14975
290
291         Computed size of padding is incorrect because we default padding to auto.  This is a made-up value that
292         was only used to implement cellpadding on tables.  We needed this made-up value in order to tell that
293         padding wasn't set so that we could then apply cellpadding.
294        
295         This patch rewrites cellpadding to be like other browsers.  Instead of being a setting on the table
296         renderer that applies to all cells (even ones that were not <td>s), cellpadding is now mapped into the
297         style of <td>s.  With this change it effectively becomes a content model feature and not a rendering
298         feature.
299
300         For example, a <td> will pick up cellpadding even when it is not a cell and/or the enclosing <table> is
301         not a table.  Anonymous cells and CSS-display-type cells will now never pick up cellpadding.  This behavior
302         is all consistent with other browsers.
303
304         Reviewed by Antti
305
306         Added fast/css/padding-no-renderer.html
307
308         * css/CSSStyleSelector.cpp:
309         (WebCore::CSSStyleSelector::canShareStyleWithElement):
310         (WebCore::CSSStyleSelector::styleForElement):
311         * css/CSSStyleSelector.h:
312         * dom/StyledElement.cpp:
313         * dom/StyledElement.h:
314         (WebCore::StyledElement::canHaveAdditionalAttributeStyleDecls):
315         (WebCore::StyledElement::additionalAttributeStyleDecls):
316         * html/HTMLTableCellElement.cpp:
317         (WebCore::HTMLTableCellElement::additionalAttributeStyleDecls):
318         * html/HTMLTableCellElement.h:
319         (WebCore::HTMLTableCellElement::canHaveAdditionalAttributeStyleDecls):
320         * html/HTMLTableColElement.cpp:
321         (WebCore::HTMLTableColElement::additionalAttributeStyleDecls):
322         * html/HTMLTableColElement.h:
323         (WebCore::HTMLTableColElement::canHaveAdditionalAttributeStyleDecls):
324         * html/HTMLTableElement.cpp:
325         (WebCore::HTMLTableElement::parseMappedAttribute):
326         (WebCore::HTMLTableElement::additionalAttributeStyleDecls):
327         (WebCore::HTMLTableElement::addSharedCellDecls):
328         (WebCore::HTMLTableElement::addSharedCellBordersDecl):
329         (WebCore::HTMLTableElement::addSharedCellPaddingDecl):
330         (WebCore::HTMLTableElement::addSharedGroupDecls):
331         (WebCore::HTMLTableElement::attach):
332         * html/HTMLTableElement.h:
333         (WebCore::HTMLTableElement::canHaveAdditionalAttributeStyleDecls):
334         * html/HTMLTableSectionElement.cpp:
335         (WebCore::HTMLTableSectionElement::additionalAttributeStyleDecls):
336         * html/HTMLTableSectionElement.h:
337         (WebCore::HTMLTableSectionElement::canHaveAdditionalAttributeStyleDecls):
338         * rendering/AutoTableLayout.cpp:
339         (WebCore::AutoTableLayout::recalcColumn):
340         * rendering/RenderObject.cpp:
341         (WebCore::RenderObject::paddingTop):
342         (WebCore::RenderObject::paddingBottom):
343         (WebCore::RenderObject::paddingLeft):
344         (WebCore::RenderObject::paddingRight):
345         * rendering/RenderStyle.cpp:
346         (WebCore::StyleSurroundData::StyleSurroundData):
347         * rendering/RenderStyle.h:
348         (WebCore::RenderStyle::initialPadding):
349         * rendering/RenderTable.cpp:
350         (WebCore::RenderTable::RenderTable):
351         * rendering/RenderTable.h:
352
353 2008-01-18  Dan Bernstein  <mitz@apple.com>
354
355         Reviewed by Dave Hyatt.
356
357         - fix <rdar://problem/5615307> Repro crash in WebKit!WebCore::RenderContainer::destroyLeftoverChildren
358
359         Test: fast/table/insert-row-before-form.html
360
361         * rendering/RenderTableRow.cpp:
362         (WebCore::RenderTableRow::addChild): Changed to ensure that the
363         object a new cell is inserted before is a child of the row, and
364         added an assertion that that object is either a cell or a form.
365         * rendering/RenderTableSection.cpp:
366         (WebCore::RenderTableSection::addChild): Changed to ensure that the
367         object a new row is inserted before is a child of the table section, and
368         added an assertion that that object is either a table row or a form.
369
370 2008-01-18  Geoffrey Garen  <ggaren@apple.com>
371
372         Reviewed by Brady Eidson.
373
374         Fixed <rdar://problem/5622424> World Leak dialog when closing a page
375         that has a Database
376         
377         The problem was that each transaction and SQL statement would hold on
378         to its callback indefinitely. By design, callbacks often establish
379         reference cycles to temporarily protect their execution environments.
380         To break the cycle, we need to explicitly release each callback as soon
381         as it is no longer needed.
382
383         * storage/SQLStatement.cpp:
384         (WebCore::SQLStatement::performCallback): Release our callback objects
385         after performing our callback.
386
387         * storage/SQLTransaction.cpp:
388         (WebCore::SQLTransaction::postflightAndCommit): Release our callback
389         objects after the transaction has terminated.
390         (WebCore::SQLTransaction::cleanupAfterTransactionErrorCallback): ditto.
391
392 2008-01-18  Adele Peterson  <adele@apple.com>
393
394         Reviewed by Antti.
395
396         Fix for <rdar://problem/5679490> media controls fade in and out too jerkily and too slowly
397
398         * rendering/RenderMedia.cpp: Shorten the duration for the fade in/out animation.
399
400 2008-01-18  Beth Dakin  <bdakin@apple.com>
401
402         Reviewed by Oliver.
403
404         Disables SVG foreign object for <rdar://problem/5686989> turn off 
405         SVG foreignobject because it does not repaint/dirty correctly
406
407         * DerivedSources.make:
408         * WebCore.SVG.ForeignObject.exp: Added.
409         * WebCore.SVG.exp:
410         * bindings/js/JSSVGElementWrapperFactory.cpp:
411         (WebCore::createJSSVGWrapper):
412         * rendering/RenderForeignObject.cpp:
413         * rendering/RenderForeignObject.h:
414         * svg/SVGForeignObjectElement.cpp:
415         * svg/SVGForeignObjectElement.h:
416         * svg/SVGForeignObjectElement.idl:
417         * svg/SVGLocatable.cpp:
418         (WebCore::SVGLocatable::nearestViewportElement):
419         (WebCore::SVGLocatable::farthestViewportElement):
420         * svg/SVGUseElement.cpp:
421         (WebCore::isDisallowedElement):
422         * svg/svgtags.in:
423
424 2008-01-18  Mark Rowe  <mrowe@apple.com>
425
426         Rubber-stamped by Adam Roben.
427
428         Fix mixed line endings in FileSystemWin.cpp and set svn:eol-style to native
429         to try and keep them consistent in the future.
430
431         * platform/win/FileSystemWin.cpp:
432         (WebCore::fileSize):
433         (WebCore::fileExists):
434         (WebCore::deleteFile):
435         (WebCore::pathByAppendingComponent):
436         (WebCore::fileSystemRepresentation):
437         (WebCore::makeAllDirectories):
438         (WebCore::homeDirectoryPath):
439         (WebCore::bundleName):
440         (WebCore::storageDirectory):
441         (WebCore::cachedStorageDirectory):
442
443 2008-01-18  Antti Koivisto  <antti@apple.com>
444
445         Reviewed by Adam.
446
447         Fix unreachable code warning in RenderVideo on Windows.
448         
449         Make switch cases explicit.
450
451         * rendering/RenderImage.cpp:
452         (WebCore::RenderImage::isWidthSpecified):
453         (WebCore::RenderImage::isHeightSpecified):
454         * rendering/RenderVideo.cpp:
455         (WebCore::RenderVideo::isWidthSpecified):
456         (WebCore::RenderVideo::isHeightSpecified):
457
458 2008-01-18  Timothy Hatcher  <timothy@apple.com>
459
460         Reviewed by Adam Roben.
461
462         <rdar://problem/5693558> REGRESSION (r29581): no form field focus
463         rings and inactive text selection after loading a page
464         Bug 16910: [GTK] REGRESSION: keyboard cursor doesn't blink
465         Bug 16917: REGRESSION (r29581/2): Google Maps search box loses focused appearance
466
467         * page/FocusController.cpp:
468         (WebCore::FocusController::setActive): Use focusedOrMainFrame() instead of focusedFrame()
469         to call selectionController()->pageActivationChanged() for cases when the focusedFrame()
470         has not been set yet. 
471
472 2008-01-18  Alexey Proskuryakov  <ap@webkit.org>
473
474         Reviewed by Brady.
475
476         Database origin tracking is broken.
477
478         * storage/DatabaseTracker.cpp: (WebCore::DatabaseTracker::populateOrigins):
479         Move reading from statement back into the loop (broken in r29386).
480
481 2008-01-18  Marius Storm-Olsen  <marius@trolltech.com>
482
483         Reviewed by Simon Hausmann <hausmann@webkit.org>.
484
485         Add use of precompiled header, when building inside Qt.
486         
487         Compiling WebKit was taking forever; 17 minutes on my machine for _one_ build! Adding the PCH at least brings it down to 12 minutes for one build, for me.
488         
489
490         * WebCore.pro:
491
492 2008-01-18  Simon Hausmann  <hausmann@webkit.org>
493
494         Reviewed by Holger.
495
496         Fix fast/forms/button-state-restore.html
497         
498         Similar to the fix for fast/forms/form-post-urlencoded.html transform POST
499         requests to data urls into GET.
500         
501
502         * platform/network/qt/QNetworkReplyHandler.cpp:
503         (WebCore::QNetworkReplyHandler::start):
504
505 2008-01-18  Simon Hausmann  <hausmann@webkit.org>
506
507         Reviewed by Holger.
508
509         Fix LayoutTests/fast/cookies/local-file-can-set-cookies.html
510         
511         In WebCore::cookies() don't return the full raw form but only the name=value
512         part. This fixes the getter part of the above test. The above test also
513         requires a parsing fix in Qt 4.4's QNetworkCookie to fully pass.
514         
515
516         * platform/qt/CookieJarQt.cpp:
517         (WebCore::cookies):
518
519 2008-01-18  Simon Hausmann  <hausmann@webkit.org>
520
521         Reviewed by Holger.
522
523         Fix svg/custom/path-getTotalLength.svg
524         
525         Path::apply creates a PathElement and its points array on the stack,
526         to fill it in from the QPainterPath data and then use the platform
527         independent path applier functions to calculate properties such as
528         the length. For converting a QPainterPath::CurveToElement we need
529         three points in the path element. However we allocated only two
530         on the stack and as a result we got memory corruption and the
531         failing test.
532         
533
534         * platform/graphics/qt/PathQt.cpp:
535         (WebCore::Path::apply):
536
537 2008-01-18  Simon Hausmann  <hausmann@webkit.org>
538
539         Reviewed by Holger.
540
541         Fix LayoutTests/fast/dom/document-attribute-js-null.html
542         
543         Don't crash when trying to get/set cookies without a frameloader.
544         
545
546         * platform/qt/CookieJarQt.cpp:
547         (WebCore::setCookies):
548         (WebCore::cookies):
549
550 2008-01-18  Simon Hausmann  <hausmann@webkit.org>
551
552         Reviewed by Holger.
553
554         Fix fast/dom/xmlhttprequest-get.xhtml
555         
556         For local file requests remove the content length and the last-modified
557         headers in the response.
558         
559
560         * platform/network/qt/QNetworkReplyHandler.cpp:
561         (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
562
563 2008-01-18  Simon Hausmann  <hausmann@webkit.org>
564
565         Reviewed by Holger.
566
567         Fix fast/forms/form-post-urlencoded.html.
568         
569         Post requests on files don't really make sense, but for
570         fast/forms/form-post-urlencoded.html we still need to retrieve the file,
571         which means we map it to a Get instead.
572         
573
574         * platform/network/qt/QNetworkReplyHandler.cpp:
575         (WebCore::QNetworkReplyHandler::start):
576
577 2008-01-18  Simon Hausmann  <hausmann@webkit.org>
578
579         Reviewed by Holger.
580
581         Make QNetworkReplyHandler::abort() more robust against multiple invocations.
582
583         During DRT runs I see cancel() being called on the same handle multiple times. Guard
584         against this a bit better by setting m_reply to 0 after we called abort() on it.
585
586         * platform/network/qt/QNetworkReplyHandler.cpp:
587         (WebCore::QNetworkReplyHandler::abort):
588
589 2008-01-18  Holger Hans Peter Freyther  <holger.freyther@trolltech.com>
590
591         Reviewed by Simon.
592
593         * httpBody() can return 0 and other ports (cf/mac) check for this condition
594         * Looking at the cf/mac implementation we might need to call setHTTPBody somewhere
595         as well.
596         
597
598         WARNING: NO TEST CASES ADDED OR CHANGED
599
600         * platform/network/qt/QNetworkReplyHandler.cpp:
601         (WebCore::QNetworkReplyHandler::start):
602
603 2008-01-18  Prasanth Ullattil  <prasanth.ullattil@trolltech.com>
604
605         Reviewed by Simon Hausmann <hausmann@webkit.org>.
606
607         Fix compilation in Win64(3): Due to the size of size_t cast the return value explicitly to double() to make sure the right Value() constructor is called.
608
609         * xml/XPathFunctions.cpp:
610         (WebCore::XPath::FunCount::evaluate):
611
612 2008-01-18  Holger Hans Peter Freyther  <holger.freyther@trolltech.com>
613
614         Reviewed by Simon.
615
616         * Remove our windowClipRect reimplementation and instead have our own
617         Widget::invalidate implementation that is invalidating
618         IntRect(0, 0, width(), height()) without trying to clip it (in contrast
619         to Widget::invalidateRect)
620
621         * platform/qt/PlatformScrollBar.h:
622         * platform/qt/PlatformScrollBarQt.cpp:
623         (WebCore::PlatformScrollbar::invalidate):
624
625 2008-01-18  Holger Hans Peter Freyther  <holger.freyther@trolltech.com>
626
627         Reviewed by Simon.
628
629         * Change the coordinate transformation in the PlatformMouseEvent handlers
630         * We want to convert from coordinates of the containing window to our local
631         position on the scrollbar.
632
633         * platform/qt/PlatformScrollBarQt.cpp:
634         (WebCore::PlatformScrollbar::handleMouseMoveEvent):
635         (WebCore::PlatformScrollbar::handleMousePressEvent):
636
637 2008-01-18  Holger Hans Peter Freyther  <holger.freyther@trolltech.com>
638
639         Reviewed by Simon.
640
641         * Make the qDebug more usable. Do not have an additional newline and print
642         the untranslated coordinates as well.
643
644         * platform/qt/PlatformScrollBarQt.cpp:
645         (WebCore::PlatformScrollbar::handleMouseMoveEvent):
646         (WebCore::PlatformScrollbar::handleMousePressEvent):
647
648 2008-01-18  Holger Hans Peter Freyther  <holger.freyther@trolltech.com>
649
650         Reviewed by Simon.
651
652         * Dead code, remove it
653
654         * platform/qt/PlatformScrollBarQt.cpp:
655
656 2008-01-18  Holger Hans Peter Freyther  <holger.freyther@trolltech.com>
657
658         Reviewed by Simon.
659
660         * Coding-Style fixes.
661
662         * platform/qt/PlatformScrollBarQt.cpp:
663         (WebCore::PlatformScrollbar::PlatformScrollbar):
664
665 2008-01-18  Holger Hans Peter Freyther  <holger.freyther@trolltech.com>
666
667         Reviewed by Simon.
668
669         * Coding-Style fix
670
671         * platform/graphics/qt/ImageDecoderQt.cpp:
672         (WebCore::ImageDecoderQt::ReadContext::ReadContext):
673
674 2008-01-17  Geoffrey Garen  <ggaren@apple.com>
675
676         Reviewed by Darin Adler.
677
678         Fixed: lots of WebCore leaks reported when quitting Safari
679         
680         If we're quitting with a GC still scheduled, do the GC before quitting.
681         That way, WebCore's leak counters won't count objects that were
682         scheduled for GC.
683
684         * bindings/js/GCController.cpp:
685         (WebCore::GCController::~GCController):
686         (WebCore::GCController::garbageCollectNow):
687         * bindings/js/GCController.h:
688
689 2008-01-17  Alp Toker  <alp@atoker.com>
690
691         Reviewed by Oliver Hunt.
692
693         gdk_screen_get_font_options() returns NULL if no default options are
694         set so we always have to NULL check to avoid crashes later on since
695         Cairo doesn't accept NULL font options.
696
697         * platform/graphics/gtk/FontPlatformDataGtk.cpp:
698         (WebCore::FontPlatformData::FontPlatformData):
699
700 2008-01-17  Antti Koivisto  <antti@apple.com>
701
702         Reviewed by Adele.
703
704         Windows fix for <rdar://problem/5605682>
705         Disallow streaming protocols for media elements
706         and <rdar://problem/5668711>
707         Limit the container and codec types that the <video> tag supports
708         
709         - Disable unsupported QuickTime tracks types. 
710         - Disallow streaming protocols (for now).
711
712         * WebCore.vcproj/WebCore.vcproj:
713         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
714         (WebCore::MediaPlayerPrivate::updateStates):
715         * platform/graphics/win/QTMovieWin.cpp:
716         (QTMovieWin::load):
717         (QTMovieWin::disableUnsupportedTracks):
718         * platform/graphics/win/QTMovieWin.h:
719
720 2008-01-17  Oliver Hunt  <oliver@apple.com>
721
722         Support smart copy and paste during drag and drop
723         
724         Reviewed by Alice
725         
726         In order for the drag and drop tests in Windows DRT to pass
727         we need to support smart cut and paste operations during
728         drag and drop on windows.
729         
730         There is no layout test as drag and drop is still unsupported
731         on windows.  Once supported smart drag/drop is tested by existing
732         tests
733
734         * platform/win/ClipboardUtilitiesWin.cpp:
735         (WebCore::smartPasteFormat):
736         * platform/win/ClipboardUtilitiesWin.h:
737         * platform/win/ClipboardWin.cpp:
738         (WebCore::ClipboardWin::writeRange):
739         * platform/win/DragDataWin.cpp:
740
741 2008-01-17  Oliver Hunt  <oliver@apple.com>
742
743         Reviewed by Anders.
744
745         <rdar://problem/5692940> Crash when attempting to get text properties in
746         SVG with no renderer
747
748         We use the element renderer to calculate the text element bounds,
749         however there was no check against the possibility of the text dimension
750         properties being requested on a element with no renderer (eg. unattached, 
751         display: none).
752
753         Test: svg/text/text-property-with-display-none.html
754
755         * svg/SVGTextContentElement.cpp:
756         (WebCore::rootInlineBoxForTextContentElement):
757
758 2008-01-17  Anders Carlsson  <andersca@apple.com>
759
760         Reviewed by Oliver.
761
762         <rdar://problem/5636742>
763         CrashTracer: [USER] 1302 crashes in Safari at com.apple.WebCore: WTF::Vector<char, 0ul>::reserveCapacity + 78
764         
765         When loading full-frame plug-ins, disable buffering data for the main resource loader. Otherwise, this can cause us
766         to crash when loading large files such as movies in the browser. We already do this for embedded plug-ins.
767         
768         * WebCore.base.exp:
769         * loader/DocumentLoader.h:
770         (WebCore::DocumentLoader::mainResourceLoader):
771         New accessor method.
772         
773         * loader/PluginDocument.cpp:
774         (WebCore::PluginTokenizer::writeRawData):
775         Disable buffering for the main resource loader.
776         
777         * loader/ResourceLoader.cpp:
778         (WebCore::ResourceLoader::setShouldBufferData):
779         * loader/ResourceLoader.h:
780         Have this free the buffer when disabling buffering.
781
782 2008-01-17  Adam Roben  <aroben@apple.com>
783
784         More Qt/GTK+ build fixing.
785
786         * platform/gtk/ScrollViewGtk.cpp:
787         * platform/qt/ScrollViewQt.cpp:
788
789 2008-01-17  Alexey Proskuryakov  <ap@webkit.org>
790
791         Reviewed by Darin.
792
793         http://bugs.webkit.org/show_bug.cgi?id=16902
794         <rdar://problem/5692566> fast/encoding/mailto-always-utf-8.html fails when run after
795         fast/dom/Window/window-property-shadowing.html
796
797         Test: fast/dom/Window/window-property-shadowing_.html
798
799         * loader/FrameLoader.cpp: (WebCore::FrameLoader::clear): Clear the frame name, too.
800
801 2008-01-17  Adam Roben  <aroben@apple.com>
802
803         Qt/GTK+ build fix.
804
805         * platform/gtk/ScrollViewGtk.cpp:
806         (WebCore::ScrollView::ScrollViewPrivate::isActive):
807         * platform/qt/ScrollViewQt.cpp:
808         (WebCore::ScrollView::ScrollViewPrivate::isActive):
809
810 2008-01-16  Adam Roben  <aroben@apple.com>
811
812         Update scroll bars/form controls when FocusController::isActive changes
813
814         Part of <rdar://5006915> Inactive look for Aqua controls
815
816         Reviewed by Darin.
817
818         All tests pass.
819
820         * page/FocusController.cpp:
821         (WebCore::FocusController::setActive): Update control tints when the
822         active state changes.
823         * page/FrameView.cpp:
824         (WebCore::FrameView::updateControlTints): On Windows, we have to ask
825         ScrollView to paint so that the outermost scroll bars will paint. On
826         Mac, the outermost scroll bars are taken care of by NSScroller.
827         * platform/PopupMenu.h: Updated for ScrollBarClient changes.
828         * platform/ScrollBar.h: Added a new ScrollBarClient method.
829         * platform/win/PlatformScrollBarSafari.cpp:
830         (WebCore::PlatformScrollbar::paint): Invalidate when updating control
831         tints so that we can paint with the new tint later.
832         (WebCore::PlatformScrollbar::paintButton): Pass the active state down
833         to SafariTheme.
834         (WebCore::PlatformScrollbar::paintTrack): Ditto.
835         (WebCore::PlatformScrollbar::paintThumb): Ditto.
836         * platform/win/ScrollViewWin.cpp:
837         (WebCore::ScrollView::ScrollViewPrivate::isActive): Added.
838         (WebCore::ScrollView::paint): Pass paint calls on down if we're
839         updating control tints so the scroll bars can invalidate.
840         * rendering/RenderLayer.cpp:
841         (WebCore::RenderLayer::isActive): Added.
842         * rendering/RenderLayer.h:
843         * rendering/RenderListBox.cpp:
844         (WebCore::RenderListBox::isActive): Added.
845         * rendering/RenderListBox.h:
846         * rendering/RenderTheme.cpp:
847         (WebCore::RenderTheme::isActive): Added.
848         * rendering/RenderTheme.h:
849         * rendering/RenderThemeSafari.cpp:
850         (WebCore::RenderThemeSafari::determineState): Pass the active state
851         down to SafariTheme.
852
853 2008-01-16  Adam Roben  <aroben@apple.com>
854
855         Move focused/active state from Frame to SelectionController/FocusController
856
857         This is the first part of <rdar://5006915> Inactive look for Aqua
858         controls.
859
860         The following methods were moved/renamed:
861             - Frame::setIsActive -> FocusController::setActive
862             - Frame::isActive -> SelectionController::isActiveAndFocused
863             - Frame::setWindowHasFocus -> SelectionController::setFocused
864
865         Active state is now correctly a Page-level concept.
866
867         The Mac parts of this patch were written by Darin.
868
869         Reviewed by Darin.
870
871         All tests pass.
872
873         * WebCore.base.exp: Updated for method renames.
874         * css/CSSStyleSelector.cpp:
875         (WebCore::CSSStyleSelector::checkOneSelector): Ditto.
876         * editing/SelectionController.cpp:
877         (WebCore::SelectionController::SelectionController): Initialize new
878         member.
879         (WebCore::SelectionController::focusedOrActiveStateChanged): New
880         private method. Most of this code came from Frame::setIsActive.
881         (WebCore::SelectionController::pageActivationChanged): Added.
882         (WebCore::SelectionController::setFocused): Added. Replaces
883         Frame::setWindowHasFocus.
884         (WebCore::SelectionController::isFocusedAndActive): Added. Replaces
885         Frame::isActive.
886         * editing/SelectionController.h:
887         * page/FocusController.cpp:
888         (WebCore::FocusController::FocusController): Initialize new member.
889         (WebCore::FocusController::setFocusedFrame): Changed to just call
890         SelectionController::setFocused, since active state has doesn't change
891         when the focused frame changes.
892         (WebCore::FocusController::setActive): Added. Replaces
893         Frame::setIsActive.
894         * page/FocusController.h:
895         (WebCore::FocusController::isActive): Added.
896         * page/Frame.cpp:
897         (WebCore::Frame::setDocument): Updated for method renames.
898         (WebCore::Frame::setFocusedNodeIfNeeded): Ditto.
899         (WebCore::Frame::updateSecureKeyboardEntryIfActive): Ditto.
900         (WebCore::FramePrivate::FramePrivate): Removed initialization of
901         removed members.
902         * page/Frame.h:
903         * page/FramePrivate.h:
904         * page/mac/WebCoreFrameBridge.h: Removed -selectionColor.
905         * page/mac/WebCoreFrameBridge.mm: Ditto.
906         * rendering/RenderListBox.cpp:
907         (WebCore::RenderListBox::paintItemForeground): Updated for method
908         renames.
909         (WebCore::RenderListBox::paintItemBackground): Ditto.
910         * rendering/RenderObject.cpp:
911         (WebCore::RenderObject::selectionBackgroundColor): Ditto.
912         (WebCore::RenderObject::selectionForegroundColor): Ditto.
913         * rendering/RenderTextControl.cpp:
914         (WebCore::RenderTextControl::capsLockStateMayHaveChanged): Ditto.
915         * rendering/RenderTheme.cpp:
916         (WebCore::RenderTheme::isFocused): Ditto.
917
918 2008-01-17  Holger Hans Peter Freyther  <holger.freyther@trolltech.com>
919
920         Reviewed by Simon.
921
922         * Make the nice 'safari' feature work on our port. When viewing a single image, clicking
923         on the image will zoom it.
924         * It seems like our platform can only determine the size of the image once it is completely
925         loaded. Call m_doc->imageChanged on the last chunk of data as well.
926
927         * loader/ImageDocument.cpp:
928         (WebCore::ImageTokenizer::finish):
929
930 2008-01-17  Simon Hausmann  <hausmann@webkit.org>
931
932         Reviewed by Lars.
933
934         Set the library version of QtWebKit to the Qt version.
935
936         * WebCore.pro:
937
938 2008-01-17  Simon Hausmann  <hausmann@webkit.org>
939
940         Reviewed by Holger.
941
942         Re-enable gzip compression as accepted encoding, now that the bug is fixed in Qt 4.4's network module.
943
944         * platform/network/qt/QNetworkReplyHandler.cpp:
945         (WebCore::QNetworkReplyHandler::QNetworkReplyHandler):
946
947 2008-01-17  Simon Hausmann  <hausmann@webkit.org>
948
949         Another Windows build fix, setCookies accidentially had a const
950         Document pointer.
951
952         * platform/network/win/CookieJarWin.cpp:
953
954 2008-01-17  Simon Hausmann  <hausmann@webkit.org>
955
956         MSVC Windows build fix. Forward declaring Document in CookieJar.h
957         seems not enough for MSVC.
958
959         * platform/network/win/CookieJarWin.cpp:
960
961 2008-01-17  Simon Hausmann  <hausmann@webkit.org>
962
963         Reviewed by Maciej, Lars, Holger.
964
965         http://bugs.webkit.org/show_bug.cgi?id=16589
966
967         Add a document parameter to WebCore::cookies, setCookies and cookiesEnabled.
968
969         * WebCore.pro:
970         * bindings/js/kjs_navigator.cpp:
971         (KJS::Navigator::getValueProperty):
972         * dom/Document.cpp:
973         (WebCore::Document::cookie):
974         * platform/CookieJar.h:
975         * platform/gtk/CookieJarGtk.cpp:
976         (WebCore::setCookies):
977         (WebCore::cookies):
978         * platform/mac/CookieJar.mm:
979         * platform/network/win/CookieJarWin.cpp:
980         * platform/qt/CookieJarQt.cpp:
981         (WebCore::setCookies):
982         (WebCore::cookies):
983         (WebCore::cookiesEnabled):
984         * platform/wx/TemporaryLinkStubs.cpp:
985
986 2008-01-17  Simon Hausmann  <hausmann@webkit.org>
987
988         Reviewed by Holger.
989
990         Windows build fix. (use localtime_r again instead of _s)
991
992         * loader/FTPDirectoryDocument.cpp:
993         (WebCore::processFileDateString):
994
995 2008-01-17  Frans Englich  <fenglich@trolltech.com>
996
997         Reviewed by Simon Hausmann <hausmann@webkit.org>.
998
999         Fix linking on MinGW and at least one MSVC platform by having gmtimeQt in the correct namespace.
1000
1001         * loader/FTPDirectoryDocument.cpp:
1002
1003 2008-01-17  Simon Hausmann  <hausmann@webkit.org>
1004
1005         Reviewed by Holger.
1006
1007         Don't link QtWebKit against libQtXml when building against Qt 4.4.
1008
1009         This is not necessary anymore since QXmlStream has been moved into QtCore.
1010
1011         * WebCore.pro:
1012
1013 2008-01-17  HÃ¥vard Wall  <hwall@trolltech.com>
1014
1015         Reviewed by Simon Hausmann <hausmann@webkit.org>.
1016
1017         Fix compilation on arm
1018
1019         * platform/graphics/qt/GraphicsContextQt.cpp:
1020         (WebCore::GraphicsContext::endTransparencyLayer):
1021
1022 2008-01-17  Simon Hausmann  <shausman@trolltech.com>
1023
1024         Reviewed by Holger.
1025
1026         Fix compilation against Qt 4.4 without files that are specific for the Qt 4.3 build.
1027
1028         * WebCore.pro:
1029         * platform/network/qt/ResourceHandleQt.cpp:
1030         * platform/qt/MIMETypeRegistryQt.cpp:
1031         * platform/qt/PlugInInfoStoreQt.cpp:
1032
1033 2008-01-17  Frans Englich  <fenglich@trolltech.com>
1034
1035         Reviewed by Simon Hausmann <hausmann@webkit.org>.
1036
1037         Fixes compilation with MinGW.
1038         Neither localtime_r nor localtime_s are available on MingW, so instead of
1039         calling back to the thread-unsafe localtime use QDateTime instead.
1040
1041         * loader/FTPDirectoryDocument.cpp:
1042         (WebCore::FTPDirectoryTokenizer::WebCore::processFilesizeString):
1043         (WebCore::FTPDirectoryTokenizer::WebCore::wasLastDayOfMonth):
1044         (WebCore::FTPDirectoryTokenizer::WebCore::WebCore::gmtimeQt):
1045         * loader/FTPDirectoryParser.cpp:
1046         (WebCore::parseOneFTPLine):
1047
1048 2008-01-17  Dan Bernstein  <mitz@apple.com>
1049
1050         Reviewed by Dave Hyatt.
1051
1052         - fix determinePitch for segmented fonts
1053
1054         Covered by fast/css/font-face-implicit-local-font.html
1055
1056         * platform/graphics/FontFallbackList.cpp:
1057         (WebCore::FontFallbackList::determinePitch): If the primary font is
1058         segmented, treat as fixed pitch only if it has only one segment
1059         and that segment is fixed-pitch.
1060
1061 2008-01-16  David Hyatt  <hyatt@apple.com>
1062
1063         Fix for http://bugs.webkit.org/show_bug.cgi?id=16611
1064
1065         Make sure vertical-align length values are offset from their parents rather than being absolute to the
1066         line.
1067
1068         Reviewed by olliej
1069
1070         Added fast/css/vertical-align-lengths.html
1071
1072         * rendering/RenderObject.cpp:
1073         (WebCore::RenderObject::getVerticalPosition):
1074
1075 2008-01-16  Dan Bernstein  <mitz@apple.com>
1076
1077         Reviewed by Dave Hyatt.
1078
1079         - fix for @font-face rules with unicode-range: always use a local font where not
1080           explicitly overlaid.
1081
1082         Test: fast/css/font-face-implicit-local-font.html
1083
1084         * css/CSSFontSelector.cpp:
1085         (WebCore::CSSFontSelector::addFontFaceRule): Changed to insert an implicit
1086         @font-face rule with the local font the matches the family and description before
1087         any explicit @font-face rules that overlay specific ranges of the same font.
1088         * css/CSSSegmentedFontFace.h:
1089         (WebCore::CSSSegmentedFontFace::numRanges): Addded.
1090
1091 2008-01-16  Antti Koivisto  <antti@apple.com>
1092
1093         Fix Tiger build.
1094
1095         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
1096         (WebCore::MediaPlayerPrivate::disableUnsupportedTracks):
1097
1098 2008-01-16  Antti Koivisto  <antti@apple.com>
1099
1100         Reviewed by Adele.
1101         
1102         OS X fix for <rdar://problem/5605682>
1103         Disallow streaming protocols for media elements
1104         and <rdar://problem/5668711>
1105         Limit the container and codec types that the <video> tag supports
1106         
1107         - Disable unsupported QuickTime tracks types. 
1108         - Disallow streaming protocols (for now).
1109         - Set QTMovie QTMoviePreventExternalURLLinksAttribute and QTSecurityPolicyNoCrossSiteAttribute 
1110           to limit QuickTime's access to external resources.
1111         
1112         Windows patch coming up.
1113
1114         Tests: media/broken-video.html
1115                media/unsupported-rtsp.html
1116                media/unsupported-tracks.html
1117
1118         * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
1119         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
1120         (WebCore::MediaPlayerPrivate::createQTMovie):
1121         (WebCore::MediaPlayerPrivate::updateStates):
1122         (WebCore::MediaPlayerPrivate::disableUnsupportedTracks):
1123
1124 2008-01-16  Rodney Dawes  <dobey@wayofthemonkey.com>
1125
1126         Reviewed by Alp Toker.
1127
1128         http://bugs.webkit.org/show_bug.cgi?id=16897
1129         Add shared plugins directory to INCLUDE path
1130
1131         Add the plugins directory to INCLUDEPATH
1132
1133         * GNUmakefile.am:
1134         * WebCore.pro:
1135
1136 2008-01-16  Geoffrey Garen  <ggaren@apple.com>
1137
1138         Reviewed by Sam Weinig.
1139         
1140         Added a debug counter for SQL transactions. This helped me debug an SQL
1141         leak.
1142
1143         * bindings/js/JSCustomSQLTransactionCallback.cpp:
1144         (WebCore::):
1145         (WebCore::JSCustomSQLTransactionCallbackCounter::~JSCustomSQLTransactionCallbackCounter):
1146         (WebCore::JSCustomSQLTransactionCallback::JSCustomSQLTransactionCallback):
1147         (WebCore::JSCustomSQLTransactionCallback::~JSCustomSQLTransactionCallback):
1148         * bindings/js/JSCustomSQLTransactionCallback.h:
1149
1150         * bindings/js/kjs_window.cpp: Removed a silly comment.
1151
1152 2008-01-16  David Hyatt  <hyatt@apple.com>
1153
1154         Fix for http://bugs.webkit.org/show_bug.cgi?id=14846, cell padding can't be changed dynamically.
1155
1156         Reviewed by Eric Seidel
1157
1158         Added fast/table/dynamic-cellpadding.html
1159
1160         * html/HTMLTableElement.cpp:
1161         (WebCore::HTMLTableElement::parseMappedAttribute):
1162         * rendering/RenderTable.cpp:
1163         (WebCore::RenderTable::setCellPadding):
1164         * rendering/RenderTable.h:
1165
1166 2008-01-16  David Hyatt  <hyatt@apple.com>
1167
1168         Fix for <rdar://problem/5681647> Item pages on http://www.stendmarsofa.com/ hang Safari
1169
1170         This regression was caused by an attempt to implement a WinIE quirk in RenderBlock::calcInlinePrefWidths.
1171         The original patch introduced pathological O(n^2) behavior into this function even when the quirk didn't need
1172         to apply.  In addition the quirk was only partially implemented (the full quirk did not care what was adjacent
1173         to images and also needed bidi.cpp patched, since the quirk applies both when computing pref widths and when
1174         laying out).
1175
1176         This new patch rewrites the quirk to be complete.  The original test case attached to the bug that tested a variety
1177         of image/text combinations now fully matches WinIE.
1178
1179         Reviewed by Beth
1180
1181         Added fast/table/unbreakable-images-quirk.html
1182
1183         * rendering/RenderBlock.cpp:
1184         (WebCore::RenderBlock::calcInlinePrefWidths):
1185         * rendering/bidi.cpp:
1186         (WebCore::RenderBlock::findNextLineBreak):
1187
1188 2008-01-16  Rodney Dawes  <dobey@wayofthemonkey.com>
1189
1190         Reviewed by Jon Honeycutt
1191
1192         Move isPluginBlacklisted to PluginPackageWin.cpp, to avoid
1193         a circular dependency on PluginDatabaseWin
1194         Remove the getFileVersion method, and just check the versions directly
1195         in isPluginBlacklisted, as it was the only caller
1196
1197         http://bugs.webkit.org/show_bug.cgi?id=16884
1198
1199         * plugins/win/PluginDatabaseWin.cpp:
1200         * plugins/win/PluginDatabaseWin.h:
1201         * plugins/win/PluginPackageWin.cpp:
1202         * plugins/win/PluginPackageWin.h:
1203
1204 2008-01-16  Holger Hans Peter Freyther  <holger.freyther@trolltech.com>
1205
1206         Reviewed by Lars.
1207
1208         * Set the cursor on the containingWindow() instead of the
1209         nativeWidget()
1210         * This should be safe even with plugins as the cursor is set
1211         on the mouse events.
1212
1213         * platform/qt/WidgetQt.cpp:
1214         (WebCore::Widget::setCursor):
1215
1216 2008-01-16  Brad Hughes  <bhughes@trolltech.com>
1217
1218         Reviewed by Lars.
1219
1220         Improve the sqlite3 dependency when building WebKit inside Qt.
1221
1222         Build sqlite3 into QtWebKit if a system sqlite3 development package
1223         can't be found.
1224
1225         * WebCore.pro:
1226
1227 2008-01-16  Lars Knoll  <lars@trolltech.com>
1228
1229         Reviewed by Simon Hausmann <simon.hausmann@trolltech.com>.
1230
1231         Implement GraphicsContext::clipOut and fix transparency layers.
1232
1233         Transparency layers where broken in two ways: It always used the
1234         complete device rect as the size of the layer pixmap and the pixmaps
1235         where not correctly initialized to transparent.
1236
1237         This fixes the worst drawing errors in the Inspector and makes drawing it
1238         10 times faster.
1239
1240         * platform/graphics/qt/GraphicsContextQt.cpp:
1241         (WebCore::toQtLineJoin):
1242         (WebCore::TransparencyLayer::TransparencyLayer):
1243         (WebCore::GraphicsContextPlatformPrivate::p):
1244         (WebCore::GraphicsContext::platformContext):
1245         (WebCore::GraphicsContext::savePlatformState):
1246         (WebCore::GraphicsContext::restorePlatformState):
1247         (WebCore::GraphicsContext::drawRect):
1248         (WebCore::GraphicsContext::drawLine):
1249         (WebCore::GraphicsContext::drawEllipse):
1250         (WebCore::GraphicsContext::strokeArc):
1251         (WebCore::GraphicsContext::drawConvexPolygon):
1252         (WebCore::GraphicsContext::fillRect):
1253         (WebCore::GraphicsContext::fillRoundedRect):
1254         (WebCore::GraphicsContext::clip):
1255         (WebCore::GraphicsContext::drawFocusRing):
1256         (WebCore::GraphicsContext::beginTransparencyLayer):
1257         (WebCore::GraphicsContext::endTransparencyLayer):
1258         (WebCore::GraphicsContext::clearRect):
1259         (WebCore::GraphicsContext::strokeRect):
1260         (WebCore::GraphicsContext::setLineCap):
1261         (WebCore::GraphicsContext::setLineJoin):
1262         (WebCore::GraphicsContext::setMiterLimit):
1263         (WebCore::GraphicsContext::setAlpha):
1264         (WebCore::GraphicsContext::setCompositeOperation):
1265         (WebCore::GraphicsContext::clipOut):
1266         (WebCore::GraphicsContext::translate):
1267         (WebCore::GraphicsContext::origin):
1268         (WebCore::GraphicsContext::rotate):
1269         (WebCore::GraphicsContext::scale):
1270         (WebCore::GraphicsContext::clipOutEllipseInRect):
1271         (WebCore::GraphicsContext::addInnerRoundedRectClip):
1272         (WebCore::GraphicsContext::setPlatformStrokeStyle):
1273         (WebCore::GraphicsContext::setPlatformStrokeThickness):
1274         (WebCore::GraphicsContext::setPlatformFillColor):
1275         (WebCore::GraphicsContext::setUseAntialiasing):
1276
1277 2008-01-16  Lars Knoll  <lars@trolltech.com>
1278
1279         Reviewed by Simon Hausmann <simon.hausmann@trolltech.com>.
1280
1281         Trivially implement the themed search field by mapping it to a text field
1282
1283         Also add a bunch of notImplemented warnings for other places where we don't
1284         have an implementatin in RenderTheme.
1285
1286         * platform/qt/RenderThemeQt.cpp:
1287         (WebCore::RenderThemeQt::paintTextField):
1288         (WebCore::RenderThemeQt::paintMenuListButton):
1289         (WebCore::RenderThemeQt::adjustMenuListButtonStyle):
1290         (WebCore::RenderThemeQt::paintSliderTrack):
1291         (WebCore::RenderThemeQt::paintSliderThumb):
1292         (WebCore::RenderThemeQt::paintSearchField):
1293         (WebCore::RenderThemeQt::adjustSearchFieldStyle):
1294         (WebCore::RenderThemeQt::adjustSearchFieldCancelButtonStyle):
1295         (WebCore::RenderThemeQt::paintSearchFieldCancelButton):
1296         (WebCore::RenderThemeQt::adjustSearchFieldDecorationStyle):
1297         (WebCore::RenderThemeQt::paintSearchFieldDecoration):
1298         (WebCore::RenderThemeQt::adjustSearchFieldResultsDecorationStyle):
1299         (WebCore::RenderThemeQt::paintSearchFieldResultsDecoration):
1300
1301 2008-01-16  Holger Freyther  <holger.freyther@trolltech.com>
1302
1303         Reviewed by Simon.
1304
1305         * Follow the EventHandlerWin.cpp and always return true in the handlers.
1306         * Match the windows implementation more closely as well.
1307         * This is fixing "selection" bugs with the Web Inspector
1308
1309         * page/qt/EventHandlerQt.cpp:
1310         (WebCore::EventHandler::focusDocumentView):
1311         (WebCore::EventHandler::passMousePressEventToSubframe):
1312         (WebCore::EventHandler::passMouseMoveEventToSubframe):
1313         (WebCore::EventHandler::passMouseReleaseEventToSubframe):
1314         (WebCore::EventHandler::passMousePressEventToScrollbar):
1315
1316 2008-01-16  Simon Hausmann  <hausmann@webkit.org>
1317
1318         Reviewed by Lars Knoll <lars@trolltech.com>.
1319
1320         Fix crashes in the new networking code.
1321
1322         When the ResourceLoader cancels the handle we have to make sure not to access
1323         the resource handle afterwards again.
1324
1325         * platform/network/qt/QNetworkReplyHandler.cpp:
1326         (WebCore::QNetworkReplyHandler::finish):
1327         (WebCore::QNetworkReplyHandler::forwardData):
1328
1329 2008-01-16  Lars Knoll  <lars@trolltech.com>
1330
1331         Reviewed by Simon.
1332
1333         add conversion methods from and to QUrl to KURL.
1334
1335         Use them in the places I found at the moment. Fixes a bug
1336         where form data was encoded twice.
1337         Also fix QWebSettings to take a QUrl for the user style sheet
1338         location.
1339
1340         * WebCore.pro:
1341         * platform/KURL.h:
1342         * platform/network/qt/QNetworkReplyHandler.cpp:
1343         (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
1344         * platform/network/qt/ResourceRequestQt.cpp:
1345         (WebCore::ResourceRequest::toNetworkRequest):
1346         * platform/qt/KURLQt.cpp: Added.
1347         (WebCore::KURL::KURL):
1348         (WebCore::KURL::operator QUrl):
1349
1350 2008-01-15  Darin Adler  <darin@apple.com>
1351
1352         Rubber-stamped by Maciej Stachowiak and Oliver Hunt.
1353
1354         - fix <rdar://problem/5689748> REGRESSION: Cannot redirect to protocols handled by external applications
1355
1356         Put navigation policy delegate calls back for redirects.
1357         Just rolled out the change where I took them out.
1358
1359         * loader/MainResourceLoader.cpp:
1360         (WebCore::MainResourceLoader::callContinueAfterNavigationPolicy):
1361         (WebCore::MainResourceLoader::continueAfterNavigationPolicy):
1362         (WebCore::MainResourceLoader::willSendRequest):
1363         * loader/MainResourceLoader.h:
1364
1365 2008-01-15  Adele Peterson  <adele@apple.com>
1366
1367         Reviewed by Sam.
1368
1369         Remove unused variable for old media control background drawing code.
1370
1371         * rendering/RenderThemeMac.h:
1372         * rendering/RenderThemeMac.mm:
1373         (WebCore::RenderThemeMac::RenderThemeMac):
1374         (WebCore::RenderThemeMac::~RenderThemeMac):
1375
1376 2008-01-15  Sam Weinig  <sam@webkit.org>
1377
1378         Reviewed by Geoffrey Garen.
1379
1380         Fix <rdar://problem/5595552> r27608 introduced a 20% increase in JS binary size, 4% increase in WebCore binary size
1381
1382         - Update JS Function implementations to use a static function based method. This decreases
1383           the binary size of an Intel only build by 1013.5K.
1384
1385         * WebCore.xcodeproj/project.pbxproj:
1386         * bindings/js/JSDOMWindowCustom.cpp:
1387         (WebCore::JSDOMWindow::customGetOwnPropertySlot):
1388         * bindings/js/JSEventTargetBase.cpp:
1389         (WebCore::jsEventTargetAddEventListener):
1390         (WebCore::jsEventTargetRemoveEventListener):
1391         (WebCore::jsEventTargetDispatchEvent):
1392         (WebCore::retrieveEventTargetAndCorrespondingNode):
1393         * bindings/js/JSEventTargetBase.h:
1394         * bindings/js/JSHTMLInputElementBase.cpp:
1395         (WebCore::jsHTMLInputElementBaseFunctionSetSelectionRange):
1396         (WebCore::JSHTMLInputElementBase::getOwnPropertySlot):
1397         * bindings/js/JSHTMLInputElementBase.h:
1398         * bindings/js/JSLocation.cpp:
1399         (WebCore::JSLocation::getOwnPropertySlot):
1400         (WebCore::jsLocationProtoFuncReplace):
1401         (WebCore::jsLocationProtoFuncReload):
1402         (WebCore::jsLocationProtoFuncAssign):
1403         (WebCore::jsLocationProtoFuncToString):
1404         * bindings/js/JSLocation.h:
1405         * bindings/js/JSXMLHttpRequest.cpp:
1406         (KJS::jsXMLHttpRequestPrototypeFunctionAbort):
1407         (KJS::jsXMLHttpRequestPrototypeFunctionGetAllResponseHeaders):
1408         (KJS::jsXMLHttpRequestPrototypeFunctionGetResponseHeader):
1409         (KJS::jsXMLHttpRequestPrototypeFunctionOpen):
1410         (KJS::jsXMLHttpRequestPrototypeFunctionSend):
1411         (KJS::jsXMLHttpRequestPrototypeFunctionSetRequestHeader):
1412         (KJS::jsXMLHttpRequestPrototypeFunctionOverrideMIMEType):
1413         (KJS::jsXMLHttpRequestPrototypeFunctionAddEventListener):
1414         (KJS::jsXMLHttpRequestPrototypeFunctionRemoveEventListener):
1415         (KJS::jsXMLHttpRequestPrototypeFunctionDispatchEvent):
1416         * bindings/js/JSXMLHttpRequest.h:
1417         * bindings/js/JSXSLTProcessor.cpp:
1418         (KJS::jsXSLTProcessorPrototypeFunctionImportStylesheet):
1419         (KJS::jsXSLTProcessorPrototypeFunctionTransformToFragment):
1420         (KJS::jsXSLTProcessorPrototypeFunctionTransformToDocument):
1421         (KJS::jsXSLTProcessorPrototypeFunctionSetParameter):
1422         (KJS::jsXSLTProcessorPrototypeFunctionGetParameter):
1423         (KJS::jsXSLTProcessorPrototypeFunctionRemoveParameter):
1424         (KJS::jsXSLTProcessorPrototypeFunctionClearParameters):
1425         (KJS::jsXSLTProcessorPrototypeFunctionReset):
1426         * bindings/js/JSXSLTProcessor.h:
1427         * bindings/js/kjs_events.cpp:
1428         (WebCore::jsClipboardPrototypeFunctionClearData):
1429         (WebCore::jsClipboardPrototypeFunctionGetData):
1430         (WebCore::jsClipboardPrototypeFunctionSetData):
1431         (WebCore::jsClipboardPrototypeFunctionSetDragImage):
1432         * bindings/js/kjs_events.h:
1433         * bindings/js/kjs_navigator.cpp:
1434         (KJS::pluginsFunctionRefresh):
1435         (KJS::navigatorProtoFuncJavaEnabled):
1436         * bindings/js/kjs_navigator.h:
1437         * bindings/js/kjs_window.cpp:
1438         (KJS::Window::getOwnPropertySlot):
1439         (KJS::windowProtoFuncAToB):
1440         (KJS::windowProtoFuncBToA):
1441         (KJS::windowProtoFuncOpen):
1442         (KJS::windowProtoFuncSetTimeout):
1443         (KJS::windowProtoFuncClearTimeout):
1444         (KJS::windowProtoFuncSetInterval):
1445         (KJS::windowProtoFuncAddEventListener):
1446         (KJS::windowProtoFuncRemoveEventListener):
1447         (KJS::windowProtoFuncShowModalDialog):
1448         (KJS::windowProtoFuncNotImplemented):
1449         * bindings/js/kjs_window.h:
1450         * bindings/scripts/CodeGenerator.pm:
1451         * bindings/scripts/CodeGeneratorJS.pm:
1452
1453 2008-01-15  Adele Peterson  <adele@apple.com>
1454
1455         Reviewed by Dan.
1456
1457         Fix for <rdar://problem/5682492> With the <video> element, the audio is heard when forwarding or rewinding a movie while it's playing
1458
1459         * rendering/MediaControlElements.cpp: (WebCore::MediaControlSeekButtonElement::defaultEventHandler):
1460           Instead of pausing the media when you stop seeking on mouse up, pause the video when you first start seeking on mouse down. 
1461
1462 2008-01-15  Alp Toker  <alp@atoker.com>
1463
1464         Rubber-stamped by Anders.
1465
1466         Make the HTTP backend configurable in the GTK+ port. curl is currently
1467         the only option.
1468
1469         * GNUmakefile.am:
1470
1471 2008-01-15  Adele Peterson  <adele@apple.com>
1472
1473         Build fix.
1474
1475         * rendering/RenderThemeSafari.cpp: Removing MediaBackgroundAppearance.
1476
1477 2008-01-14  Samuel Weinig  <sam@webkit.org>
1478
1479         Reviewed by Darin.
1480
1481         Fix for <rdar://problem/5671040>
1482         REGRESSION: 6% HTML iBench regression from r28722 (getElementsByClassName)
1483
1484         On my most consistent tests, this brings the HTML iBench from 1.46 -> 1.41,
1485         which does not completely make up reported regression, but I was not able to
1486         reproduce those findings either.
1487
1488         * css/CSSStyleSelector.cpp:
1489         (WebCore::CSSStyleSelector::matchRules):
1490         (WebCore::CSSStyleSelector::checkOneSelector):
1491         * dom/ClassNames.cpp:
1492         (WebCore::ClassNames::parseClassAttribute):
1493         * dom/ClassNames.h:
1494         (WebCore::ClassNames::contains):
1495         (WebCore::ClassNames::operator[]):
1496
1497 2008-01-15  Adele Peterson  <adele@apple.com>
1498
1499         Build fix.  This time for real.
1500
1501         * rendering/RenderThemeSafari.cpp:
1502
1503 2008-01-15  Adele Peterson  <adele@apple.com>
1504
1505         Build fix.
1506
1507         * rendering/RenderThemeSafari.cpp:
1508
1509 2008-01-15  Dan Bernstein  <mitz@apple.com>
1510
1511         Reviewed by Darin Adler.
1512
1513         - fix <rdar://problem/5666926> svg/custom/use-css-no-effect-on-shadow-tree.svg is failing
1514
1515         * svg/SVGPreserveAspectRatio.cpp:
1516         (WebCore::SVGPreserveAspectRatio::getCTM): Changed the arguments' type
1517         from float to double in order to make the values passed to scale() and
1518         translate() on Mac OS X and on Windows the same.
1519         * svg/SVGPreserveAspectRatio.h:
1520
1521 2008-01-15  Alexey Proskuryakov  <ap@webkit.org>
1522
1523         Reviewed by Darin.
1524
1525         <rdar://problem/5342813> REGRESSION: Safari encodes mailto URLs incorrectly
1526
1527         Test: fast/encoding/mailto-always-utf-8.html
1528
1529         * platform/KURL.cpp: (WebCore::encodeRelativeString): Always use UTF-8 for mailto URLs.
1530
1531 2008-01-15  Adele Peterson  <adele@apple.com>
1532
1533         Reviewed by Adam and Antti.
1534
1535         WebCore part of fix for <rdar://problem/5619062> Add load progress indicator to video controls
1536
1537         * WebCore.base.exp: Removed symbol for wkGetMediaControlBackgroundImageData.  Added symbol for wkDrawMediaSliderTrack.
1538         * css/CSSPrimitiveValueMappings.h: (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): Removed case for MediaBackgroundAppearance.
1539         * css/html4.css: Removed -webkit-appearance: media-background rule for the media panel element.  Removed unnecessary margin for slider.
1540         * rendering/RenderStyle.h: (WebCore::): Removed MediaBackgroundAppearance.
1541
1542         * html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::initAndDispatchProgressEvent):
1543           Call updateMediaPlayer more frequently so the load progress control gets updated appropriately.
1544         * platform/mac/WebCoreSystemInterface.h: Removed wkGetMediaControlBackgroundImageData.  Added wkDrawMediaSliderTrack.
1545         * platform/mac/WebCoreSystemInterface.mm: ditto.
1546
1547         * rendering/RenderTheme.h: Removed paintMediaBackground. Added paintMediaSliderTrack.
1548         * rendering/RenderTheme.cpp: (WebCore::RenderTheme::paint): Call paintMediaSliderTrack for elements with MediaSliderAppearance.
1549         * rendering/RenderThemeMac.h: Removed paintMediaBackground. Added paintMediaSliderTrack.
1550         * rendering/RenderThemeMac.mm:
1551         (WebCore::RenderThemeMac::adjustSliderThumbSize): Added different sizes for the media slider thumb.
1552         (WebCore::RenderThemeMac::paintMediaSliderTrack): Added.  Calls wkDrawMediaSliderTrack with the percentage the media has loaded.
1553         * rendering/RenderThemeSafari.cpp: ditto.
1554         (WebCore::RenderThemeSafari::adjustSliderThumbSize):
1555         (WebCore::RenderThemeSafari::paintMediaSliderTrack):
1556         * rendering/RenderThemeSafari.h:
1557
1558 2008-01-15  Alexey Proskuryakov  <ap@webkit.org>
1559
1560         Reviewed by Mark Rowe.
1561
1562         Some logging channels weren't initialized from user defaults.
1563
1564         * platform/mac/LoggingMac.mm: (WebCore::InitializeLoggingChannelsIfNecessary):
1565         Initialize LogPlatformLeaks, LogStorageAPI, LogMedia, LogPlugin.
1566
1567 2008-01-14  Steve Falkenburg  <sfalken@apple.com>
1568
1569         Use shared vsprops for most vcproj properties.
1570         
1571         Reviewed by Darin.
1572
1573         * WebCore.vcproj/QTMovieWin.vcproj:
1574         * WebCore.vcproj/WebCore.vcproj:
1575         * platform/graphics/win/QTMovieWin.cpp:
1576         (QTMovieWin::initializeQuickTime): Fix compiler warning.
1577
1578 2008-01-14  Eric Seidel  <eric@webkit.org>
1579
1580         Reviewed by mjs.
1581
1582         Remove a couple more uses of DeprecatedString
1583
1584         No functional changes, thus no test case.
1585
1586         * dom/Document.cpp:
1587         (WebCore::Document::write):
1588         (WebCore::Document::writeln):
1589         (WebCore::Document::recalcStyleSelector):
1590         * dom/Document.h:
1591
1592 2008-01-14  Pierre-Luc Beaudoin  <pierre-luc.beaudoin@collabora.co.uk>
1593
1594         Reviewed by Alp Toker.
1595
1596         Build fix: missing symbols when compiling WebKit/Gtk+ with --enable-svg-filters
1597         http://bugs.webkit.org/show_bug.cgi?id=16874
1598
1599         * GNUmakefile.am:
1600         * svg/graphics/cairo/SVGResourceFilterCairo.cpp: Added.
1601         (WebCore::SVGResourceFilter::createPlatformData):
1602         (WebCore::SVGResourceFilter::prepareFilter):
1603         (WebCore::SVGResourceFilter::applyFilter):
1604
1605 2008-01-14  Finnur Thorarinsson  <finnur.webkit@gmail.com>
1606
1607         Reviewed by hyatt & eseidel.
1608
1609         - fix http://bugs.webkit.org/show_bug.cgi?id=16844
1610         RenderText::addLineBoxRects erroneously includes last char for boundingBox
1611
1612         This patch fixes an issue with addLineBoxRects not correctly calculating the 
1613         rects due to an off-by-one error in using box->end(). We were assuming that 
1614         end() gives the index past the last character, when in fact it gives the 
1615         index _of_ the last character. 
1616
1617         Eric Seidel and I could not find a way to test this via DRT. This method is 
1618         only used by WebKit or Safari for displaying selection rects AFAICT.
1619
1620         * rendering/RenderText.cpp:
1621         (WebCore::RenderText::addLineBoxRects):
1622
1623 2008-01-14  Darin Adler  <darin@apple.com>
1624
1625         Reviewed by Geoff.
1626
1627         - fix crash seen in layout tests
1628
1629         * html/HTMLFrameSetElement.cpp:
1630         (WebCore::HTMLFrameSetElement::attach):
1631         Remove incorrect cast to HTMLElement* for parentNode(). The parent is either an
1632         HTMLElement or a Document, not necessarily an HTMLElement.
1633
1634 2008-01-14  Darin Adler  <darin@apple.com>
1635
1636         Reviewed by Sam.
1637
1638         - fix mistakes Sam noticed in my re-speed-up patch
1639
1640         * dom/Element.cpp:
1641         (WebCore::Element::virtualHasTagName): Moved out of header file. No reason to make
1642         this inline.
1643         * dom/Element.h: Moved virtualHasTagName out of header file.
1644
1645         * dom/Node.cpp:
1646         (WebCore::Node::virtualHasTagName): Moved out of header file. No reason to make
1647         this inline.
1648         * dom/Node.h: Removed incorrect "virtual" on hasTagName and moved virtualHasTagName
1649         out of header file.
1650
1651         * platform/text/StringBuffer.h: Added. Has just the new StringBuffer class.
1652
1653         * platform/text/StringImpl.h: Removed StringBuffer class.
1654
1655         * loader/DocumentLoader.cpp: Added StringBuffer.h include.
1656         * platform/text/String.cpp: Ditto.
1657         * platform/text/StringImpl.cpp: Ditto.
1658         * platform/text/TextCodecLatin1.cpp: Ditto.
1659         * platform/text/TextCodecUTF16.cpp: Ditto.
1660         * platform/text/TextCodecUserDefined.cpp: Ditto.
1661
1662         * WebCore.vcproj/WebCore.vcproj: Added StringBuffer.h.
1663         * WebCore.xcodeproj/project.pbxproj: Ditto.
1664
1665 2008-01-14  Dave Hyatt  <hyatt@apple.com>
1666
1667         Clean up all the misplaced graphics files after the recent file moves.  Clean up the project to
1668         accurately reflect the location of all the graphics files.
1669         
1670         Reviewed by Adam
1671
1672         * WebCore.vcproj/WebCore.vcproj:
1673         * platform/graphics/win/GraphicsContextWin.cpp: Copied from platform/win/GraphicsContextWin.cpp.
1674         * platform/graphics/win/UniscribeController.cpp: Copied from platform/win/UniscribeController.cpp.
1675         * platform/graphics/win/UniscribeController.h: Copied from platform/win/UniscribeController.h.
1676         * platform/win/GraphicsContextWin.cpp: Removed.
1677         * platform/win/UniscribeController.cpp: Removed.
1678         * platform/win/UniscribeController.h: Removed.
1679
1680 2008-01-14  Geoffrey Garen  <ggaren@apple.com>
1681
1682         Reviewed by Sam Weinig.
1683         
1684         Some cleanup to my last patch.
1685
1686         Removed one unused setter declaration and one unused setter definition.
1687         
1688         Renamed DoNotCheckDomainSecurityOnRead to DoNotCheckDomainSecurityOnGet
1689         because "get" is all over the IDL files, and "read" is not.
1690
1691         * bindings/scripts/CodeGeneratorJS.pm:
1692         * page/DOMWindow.h:
1693         (WebCore::DOMWindow::defaultstatus):
1694         * page/DOMWindow.idl:
1695
1696 2008-01-14  Dan Bernstein  <mitz@apple.com>
1697
1698         Rubber-stamped by Alice Liu.
1699
1700         - remove reference to nonexistent file
1701
1702         * WebCore.vcproj/WebCore.vcproj: Removed reference to SVGFont.h.
1703
1704 2008-01-14  Darin Adler  <darin@apple.com>
1705
1706         Reviewed by Adam.
1707
1708         - re-speed-up the page load test (my StringImpl change slowed it down)
1709           <rdar://problem/5677241> 1.5% PLT regression from r29098
1710
1711         To reverse the slowdown I caused by changing StringImpl, I tightened it up,
1712         and also did a little optimization in the HTML tokenizer and in other clients
1713         of Vector.
1714
1715         * WebCore.base.exp: Removed export of a now-inline function.
1716
1717         * css/CSSParser.cpp:
1718         (WebCore::CSSParser::parseTransitionProperty): Removed use of DeprecatedString
1719         to get property ID. This could be sped up even more by writing a fast path
1720         to use a local Vector<char> rather than allocating a string.
1721         (WebCore::convertASCIIToFloat): Added. Allows numeric conversion without
1722         allocating a string object to hold the number.
1723         (WebCore::CSSParser::lex): Changed to call convertASCIIToFloat instead of
1724         DeprecatedString::toFloat.
1725
1726         * dom/Element.h:
1727         (WebCore::Element::hasTagName): Made this non-virtual and inline if you have
1728         an Element*. It's still virtual if you have a Node*.
1729         (WebCore::Element::virtualHasTagName): Virtual version that makes the Node*
1730         case work.
1731
1732         * dom/Node.h:
1733         (WebCore::Node::hasTagName): Made this non-virtual and inline so that Element
1734         can override it with an inline. This is the same technique we use for
1735         firstChild and lastChild.
1736         (WebCore::Node::virtualHasTagName): This is the private virtual that Element
1737         overrides.
1738
1739         * dom/Text.cpp:
1740         (WebCore::Text::splitText): Clean up by using a RefPtr here instead of a
1741         PassRefPtr.
1742
1743         * html/HTMLTokenizer.cpp:
1744         (WebCore::HTMLTokenizer::parseSpecial): Use the new advancePastNonNewline(),
1745         which is more efficient in cases where we know the character is not a newline
1746         and hence we don't have to update the line number.
1747         (WebCore::HTMLTokenizer::parseComment): Ditto.
1748         (WebCore::HTMLTokenizer::parseServer): Ditto.
1749         (WebCore::HTMLTokenizer::parseProcessingInstruction): Ditto.
1750         (WebCore::HTMLTokenizer::parseText): Ditto.
1751         (WebCore::HTMLTokenizer::parseEntity): Ditto.
1752         (WebCore::HTMLTokenizer::parseTag): Ditto. Also streamline the QuotedValue case
1753         so there's one less branch taken for non-punctuation characters since this
1754         code path is *so* hot.
1755         (WebCore::HTMLTokenizer::write): More of the same.
1756
1757         * loader/Cache.cpp:
1758         (WebCore::Cache::lruListFor): Use Vector::grow instead of resize.
1759
1760         * loader/DocumentLoader.cpp:
1761         (WebCore::canonicalizedTitle): Use StringBuffer instead of Vector<UChar>.
1762
1763         * loader/TextResourceDecoder.cpp:
1764         (WebCore::TextResourceDecoder::checkForCSSCharset): Use Vector::grow instead of resize.
1765         (WebCore::TextResourceDecoder::checkForHeadCharset): Ditto.
1766         (WebCore::TextResourceDecoder::decode): Use Vector::grow and shrink instead of resize.
1767         (WebCore::TextResourceDecoder::flush): Use Vector::shrink instead of resize.
1768
1769         * platform/KURL.cpp:
1770         (WebCore::KURL::decode_string): Use Vector::grow instead of resize.
1771
1772         * platform/SharedBuffer.cpp:
1773         (WebCore::SharedBuffer::clear): Use Vector::shrink instead of resize.
1774
1775         * platform/graphics/BitmapImage.cpp:
1776         (WebCore::BitmapImage::cacheFrame): Use Vector::grow instead of resize.
1777
1778         * platform/network/FormData.cpp:
1779         (WebCore::FormData::appendData): Use Vector::grow instead of resize.
1780         (WebCore::FormData::flatten): Ditto.
1781
1782         * platform/text/AtomicString.cpp:
1783         (WebCore::CStringTranslator::translate): Use a new StringImpl constructor made just
1784         for use by AtomicString. Avoids setting fields twice, and also preserves reference
1785         count behavior (which I changed for the other constructors, since they're entirely
1786         private and used only inside the class).
1787         (WebCore::UCharBufferTranslator::translate): Ditto.
1788
1789         * platform/text/Base64.cpp:
1790         (WebCore::base64Encode): Use Vector::grow instead of resize.
1791         (WebCore::base64Decode): Use Vector::grow and shrink instead of resize.
1792
1793         * platform/text/PlatformString.h:
1794         (WebCore::String::adopt): Added an overload for the new StringBuffer class. Also
1795         made both versions inline.
1796
1797         * platform/text/SegmentedString.h:
1798         (WebCore::SegmentedString::advancePastNewline): Added. One less branch for case
1799         where the character is known to be a newline.
1800         (WebCore::SegmentedString::advancePastNonNewline): Added. Less code for case where
1801         the character is known not to be a newline.
1802
1803         * platform/text/String.cpp:
1804         (WebCore::String::append): Use StringBuffer instead of Vector<UChar>.
1805         (WebCore::String::insert): Ditto.
1806         (WebCore::String::truncate): Ditto.
1807         (WebCore::String::remove): Ditto.
1808         (WebCore::String::format): Use Vector::grow instead of resize.
1809
1810         * platform/text/StringImpl.cpp:
1811         (WebCore::StringImpl::StringImpl): Changed constructors to start with a refCount
1812         of 1 instead of 0, and made them all inline. Eliminates the WithOneRef constructor
1813         since they all behave this way now. The only exceptions are the constructors for
1814         AtomicString, which retain the old behavior.
1815         (WebCore::StringImpl::empty): Simplified, since we no longer need to use the
1816         special WithOneRef constructor.
1817         (WebCore::StringImpl::toCoordsArray): Use StringBuffer instead of Vector<UChar>.
1818         (WebCore::StringImpl::lower): Ditto.
1819         (WebCore::StringImpl::upper): Ditto.
1820         (WebCore::StringImpl::secure): Ditto.
1821         (WebCore::StringImpl::foldCase): Ditto.
1822         (WebCore::StringImpl::simplifyWhiteSpace): Ditto. Also change to use Vector::shrink
1823         instead of resize (since half of the function uses Vector<UChar>).
1824         (WebCore::StringImpl::capitalize): Use StringBuffer instead of Vector<UChar>.
1825         (WebCore::StringImpl::replace): Ditto.
1826         (WebCore::StringImpl::ascii): Streamlined a bit.
1827         (WebCore::StringImpl::createStrippingNullCharacters): Use StringBuffer insetad of
1828         Vector<UChar>. Took out checks for null characters and 0 length that aren't needed.
1829         Coded the check for null characters in a slightly more efficient way. Since this
1830         is so hot, didn't call adopt at all, putting the code right in here, including
1831         the call to the StringImpl constructor and adoptRef (for the fast case).
1832         (WebCore::StringImpl::adopt): Added a version for the new StringBuffer class.
1833         Removed the attempt to resize the buffer at the time we adopt based on measuring
1834         actual use and realizing that it's just a character here or there and not worth
1835         a call to fastRealloc. Changed to use adoptRef since the constructor now starts
1836         with a refCount of 1.
1837         (WebCore::StringImpl::create): Changed to use adoptRef since the constructor now
1838         starts with a refCount of 1.
1839         (WebCore::StringImpl::createWithTerminatingNullCharacter): Ditto.
1840         (WebCore::StringImpl::copy): Ditto. Also made non-inline since the constructor
1841         itself is now inline.
1842
1843         * platform/text/StringImpl.h: Added a StringBuffer class that's useful for
1844         putting characters into a buffer before creating an immutable string. Not good
1845         at resizing the way Vector<UChar> is, so only useful for things that rarely need
1846         to be resized. Added a new AdoptBuffer constructor and empty constructor, but
1847         made all constructors private so they can be inlined and only used inside the
1848         StringImpl class. Added two new constructors for AtomicString. Made copy()
1849         no longer inline. Changed the type of the [] operator to unsigned instead of
1850         int and added an assertion. Made the hash functions inline.
1851
1852         * platform/text/TextCodecICU.cpp:
1853         (WebCore::TextCodecICU::encode): Use Vector::grow instead of resize.
1854
1855         * platform/text/TextCodecLatin1.cpp:
1856         (WebCore::TextCodecLatin1::decode): Use StringBuffer instead of Vector<UChar>.
1857         (WebCore::encodeComplexWindowsLatin1): Use Vector::grow instead of resize.
1858
1859         * platform/text/TextCodecUTF16.cpp:
1860         (WebCore::TextCodecUTF16::decode): Use StringBuffer instead of Vector<UChar>.
1861
1862         * platform/text/TextCodecUserDefined.cpp:
1863         (WebCore::TextCodecUserDefined::decode): Use StringBuffer instead of Vector<UChar>.
1864         (WebCore::encodeComplexUserDefined): Use Vector::grow instead of resize.
1865
1866         * platform/text/TextEncoding.cpp:
1867         (WebCore::TextEncoding::encode): Use Vector::grow instead of resize.
1868
1869         * platform/text/TextStream.cpp:
1870         (WebCore::TextStream::operator<<): Use Vector::grow instead of resize.
1871
1872         * platform/text/mac/TextCodecMac.cpp:
1873         (WebCore::TextCodecMac::encode): Use Vector::grow instead of resize.
1874
1875         * rendering/AutoTableLayout.cpp:
1876         (WebCore::AutoTableLayout::insertSpanCell): Use Vector::grow instead of resize.
1877
1878         * rendering/RenderFrameSet.h:
1879         (WebCore::FrameEdgeInfo::FrameEdgeInfo): Allocate vectors with the correct initial
1880         size instead of calling resize on them after allocating empty.
1881
1882         * rendering/RenderListMarker.cpp:
1883         (WebCore::RenderListMarker::paint): Use Vector::grow instead of resize.
1884
1885         * rendering/RenderStyle.cpp: Removed CursorList::operator==.
1886         * rendering/RenderStyle.h:
1887         (WebCore::CursorList::operator==): Implemented using the Vector ==.
1888         (WebCore::CursorList::operator!=): Ditto.
1889
1890         * rendering/RenderTable.cpp:
1891         (WebCore::RenderTable::splitColumn): Use Vector::grow instead of resize.
1892         (WebCore::RenderTable::appendColumn): Ditto.
1893
1894         * rendering/RenderTableSection.cpp:
1895         (WebCore::RenderTableSection::ensureRows): Use Vector::grow instead of resize.
1896
1897         * rendering/bidi.cpp:
1898         (WebCore::addMidpoint): Use Vector::grow instead of resize.
1899
1900         * xml/XPathNodeSet.h:
1901         (WebCore::XPath::NodeSet::clear): Use Vector::shrink instead of resize.
1902
1903 2008-01-13  Steve Falkenburg  <sfalken@apple.com>
1904
1905         Share common files across projects.
1906         
1907         Unify vsprops files
1908         Debug:          common.vsprops, debug.vsprops
1909         Debug_Internal: common.vsprops, debug.vsprops, debug_internal.vsprops
1910         Release:        common.vsprops, release.vsprops
1911         
1912         Shared properties can go into common.vsprops, shared debug settings can go into debug.vsprops.
1913         debug_internal.vsprops will be mostly empty except for file path prefix modifiers.
1914
1915         Pull auto-version.sh, VERSION, and PRODUCTVERSION from tools.
1916
1917         Reviewed by Adam Roben.
1918
1919         * WebCore.vcproj/PRODUCTVERSION: Removed.
1920         * WebCore.vcproj/QTMovieWin.vcproj:
1921         * WebCore.vcproj/VERSION: Removed.
1922         * WebCore.vcproj/WebCore.vcproj:
1923         * WebCore.vcproj/auto-version.sh: Removed.
1924         * WebCore.vcproj/debug.vsprops: Removed.
1925         * WebCore.vcproj/debug_internal.vsprops: Removed.
1926         * WebCore.vcproj/release.vsprops: Removed.
1927
1928 2008-01-13  Dan Bernstein  <mitz@apple.com>
1929
1930         Reviewed by Darin Adler.
1931
1932         - fix http://bugs.webkit.org/show_bug.cgi?id=16865
1933           fast/layers/resize-layer-deletion-crash.html crashes under GuardMalloc
1934
1935         * rendering/RenderBox.cpp:
1936         (WebCore::RenderBox::destroy): Removed the call to
1937         RenderLayer::destroy() from here, because ~RenderLayer() calls
1938         RenderObject() methods.
1939         * rendering/RenderObject.cpp:
1940         (WebCore::RenderObject::destroy): Added the call to
1941         RenderLayer::destroy() here.
1942
1943 2008-01-13  Eric Seidel  <eric@webkit.org>
1944
1945         Reviewed by darin.
1946
1947         Range.insertNode does not update endContainer endIndex correctly
1948         in the case where it had to split a text node.
1949         http://bugs.webkit.org/show_bug.cgi?id=16765
1950         
1951         Darin pointed out during review that we still don't handle the dynamic
1952         range case (where the dom tree changes not using range methods)
1953         Thus this code will get ripped out when we add that.  The test cases
1954         are still valid and useful however, so I'm landing this as-is.
1955
1956         Tests: fast/dom/Range/range-insertNode-separate-endContainer.html
1957                fast/dom/Range/range-insertNode-splittext.html
1958
1959         * dom/Range.cpp:
1960         (WebCore::Range::insertNode): handle the splitText case correctly.
1961
1962 2008-01-13  Darin Adler  <darin@apple.com>
1963
1964         Reviewed by Eric.
1965
1966         - http://bugs.webkit.org/show_bug.cgi?id=16861
1967           get rid of unnecessary string copying
1968
1969         * dom/Document.cpp:
1970         (WebCore::Document::setDomain): Removed unneeded call to copy.
1971         (WebCore::Document::parseQualifiedName): Removed unneeded call to copy, and
1972         unneeded length argument to substring, which stops at the end of the string
1973         if you don't specify a length.
1974         (WebCore::Document::createAttributeNS): Replaced code that was calling copy
1975         with more-efficient code using the substring function.
1976         * dom/StyledElement.cpp:
1977         (WebCore::StyledElement::addCSSColor): Removed unneeded call to copy.
1978         * editing/InsertIntoTextNodeCommand.cpp:
1979         (WebCore::InsertIntoTextNodeCommand::InsertIntoTextNodeCommand): Removed
1980         unneeded copy and also initialized text instead of assigning to it.
1981         (WebCore::InsertIntoTextNodeCommand::doApply): Removed redundant assertions.
1982         (WebCore::InsertIntoTextNodeCommand::doUnapply): Ditto.
1983
1984         * editing/htmlediting.cpp:
1985         (WebCore::stringWithRebalancedWhitespace): Removed unneeded call to copy.
1986         This one was particularly bad since we just turned around and copied it again!
1987
1988         * editing/markup.cpp:
1989         (WebCore::stringValueForRange): Removed unneeded call to copy.
1990
1991         * loader/icon/IconDatabase.cpp:
1992         (WebCore::IconDatabase::performOpenInitialization): Changed logging code to not
1993         get the path from the database object. This was the only reason the database
1994         had to keep its path around.
1995
1996         * platform/sql/SQLiteDatabase.cpp:
1997         (WebCore::SQLiteDatabase::open): Use a local variable instead of a data member to
1998         convert the string to a null-terminated one.
1999         (WebCore::SQLiteDatabase::close): Removed the code to clear out m_path.
2000         * platform/sql/SQLiteDatabase.h: Removed the m_path data member and the path
2001         functio member. Also tweaked formatting and comments a bit. Removed the unused
2002         escapeSQLString function.
2003
2004         * platform/text/String.cpp: (WebCore::operator+): Removed uneeded calls to copy.
2005
2006 2008-01-13  Oliver Hunt  <oliver@apple.com>
2007
2008         Attempt to fix QT build
2009
2010         * html/CanvasRenderingContext2D.cpp:
2011         (WebCore::CanvasRenderingContext2D::willDraw):
2012
2013 2008-01-13  Oliver Hunt  <oliver@apple.com>
2014
2015         Reviewed by Mark Rowe.
2016
2017         Avoid repainting the entire canvas element when possible.
2018
2019         http://bugs.webkit.org/show_bug.cgi?id=16859
2020
2021         We now only register the dirty regions of a canvas for repainting, rather
2022         than the entire element (though repaint coalescing may choose to combine
2023         these regions).  This doesn't cause a measurable regression in the worst
2024         case (clearing the canvas repeatedly), but is a moderate-large win if only
2025         a minor update has occurred.  If there is any CSS scaling applied to the
2026         canvas almost any update short of clearing the entire element is substantially
2027         faster.
2028
2029         * html/CanvasRenderingContext2D.cpp:
2030         (WebCore::CanvasRenderingContext2D::willDraw):
2031         * html/HTMLCanvasElement.cpp:
2032         (WebCore::HTMLCanvasElement::willDraw):
2033
2034 2008-01-13  Michael Goddard  <michael.goddard@trolltech.com>
2035
2036         Reviewed by Anders Carlsson.
2037
2038         Move RuntimeObjectImp creations into Instance.
2039         Make the ctor protected, and Instance a friend class, so
2040         that all creation of RuntimeObjectImps goes through
2041         one place.
2042
2043         * bindings/js/kjs_dom.cpp:
2044         (WebCore::getRuntimeObject):
2045
2046 2008-01-12  Rodney Dawes  <dobey@wayofthemonkey.com>
2047
2048         Gtk debug build fix.  Reviewed by Mark Rowe.
2049
2050         Add plugin logging channel, and use it rather than Win32-specific debugging methods _RPTF1 _RPTF2 and _CRT_WARN.
2051
2052         * WebCore.pro: Add plugins directory to DEPENDPATH so dependencies are correctly tracked.
2053         * platform/Logging.cpp:
2054         * platform/Logging.h:
2055         * plugins/PluginDebug.h:
2056
2057 2008-01-12  Adam Barth  <hk9565@gmail.com>
2058
2059         Reviewed by Maciej (and also tweaked a little bit).
2060
2061         - more thorough fix for some crashing tests
2062           http://bugs.webkit.org/show_bug.cgi?id=16782
2063
2064         * loader/FrameLoader.cpp:
2065         (WebCore::FrameLoader::urlSelected):
2066         (WebCore::FrameLoader::submitForm):
2067         (WebCore::FrameLoader::executeIfJavaScriptURL):
2068         * loader/FrameLoader.h:
2069
2070 2008-01-12  Maciej Stachowiak  <mjs@apple.com>
2071
2072         Reviewed by Sam.
2073
2074         - fixed <rdar://problem/5556374> REGRESSION: cross-domain error when one URL uses an explicit port number and another doesn't
2075         
2076         * platform/SecurityOrigin.cpp:
2077         (WebCore::isDefaultPortForProtocol):
2078         (WebCore::SecurityOrigin::SecurityOrigin):
2079
2080 2008-01-11  Geoffrey Garen  <ggaren@apple.com>
2081
2082         Reviewed by Oliver Hunt.
2083         
2084         Fixed <rdar://problem/5665251> REGRESSION (r28880-r28886): Global
2085         variable access (16644)
2086         
2087         Removed the ReadOnly bit from some properties, to match Firefox. Also
2088         removed status-related setters, to allow using their names as variable
2089         names.
2090         
2091         * bindings/scripts/CodeGeneratorJS.pm: Added support for properties that
2092         are one-way across domain boundaries, to match Firefox.
2093
2094         * bindings/js/kjs_window.cpp: Changed ReadOnly declarations to match FF.
2095
2096         * bindings/scripts/CodeGeneratorJS.pm: Don't use JSObject:: because
2097         we don't know that JSObject is our base class.
2098
2099         * page/DOMWindow.idl: Replaced lots of readonly declarations with
2100         [Replaceable] declarations.
2101
2102         * page/DOMWindow.h: Removed interfaces for setting status text via the
2103         DOM. (They were getting in the way of, e.g., "var status"
2104         declarations.) By default, IE 7 and FF disable these interfaces in order
2105         to defend against phishing attacks that try to spoof domain names in the
2106         statusbar.
2107         * page/DOMWindow.cpp:
2108
2109 2008-01-11  Anyang Ren  <anyang.ren@gmail.com>
2110
2111         Reviewed by Darin Adler.
2112
2113         http://bugs.webkit.org/show_bug.cgi?id=15960
2114         The view source mode should skip an empty attribute value only if
2115         the attribute name is not followed by an equal sign (=).
2116
2117         Test: fast/frames/viewsource-empty-attribute-value.html
2118
2119         * html/HTMLViewSourceDocument.cpp:
2120         (WebCore::HTMLViewSourceDocument::addViewSourceToken):
2121
2122 2008-01-11  Sylvain Pasche  <sylvain.pasche@gmail.com>
2123
2124         Reviewed by Alp Toker.
2125
2126         [Gtk] Uneven glyph spacing with subpixel antialiasing
2127         http://bugs.webkit.org/show_bug.cgi?id=16715
2128
2129         Use cairo font options from the default GDK screen when creating a
2130         scaled font.
2131
2132         * platform/graphics/gtk/FontPlatformDataGtk.cpp:
2133         (WebCore::FontPlatformData::FontPlatformData):
2134
2135 2008-01-11  Cameron Zwarich  <cwzwarich@uwaterloo.ca>
2136
2137         Reviewed by Maciej.
2138
2139         Added a new forwarding header, because Activation.h has been separated
2140         from function.h
2141
2142         * ForwardingHeaders/kjs/Activation.h: Added.
2143
2144 2008-01-11  Luca Bruno  <lethalman88@gmail.com>
2145
2146         Reviewed by Alp Toker.
2147
2148         http://bugs.webkit.org/show_bug.cgi?id=16729
2149         [cURL] Allow multiple files for upload
2150
2151         * platform/network/ResourceHandleInternal.h:
2152         (WebCore::ResourceHandleInternal::ResourceHandleInternal):
2153         * platform/network/curl/ResourceHandleCurl.cpp:
2154         (WebCore::ResourceHandleInternal::~ResourceHandleInternal):
2155         * platform/network/curl/ResourceHandleManager.cpp:
2156         (WebCore::readCallback): added
2157         (WebCore::ResourceHandleManager::setupPOST): setup for streaming the POST
2158         (WebCore::ResourceHandleManager::startJob):
2159         (WebCore::ResourceHandleManager::cancel): revert the previous patch for regression
2160         * platform/network/curl/ResourceHandleManager.h:
2161
2162 2008-01-11  Christian Dywan  <christian@imendio.com>
2163
2164         Reviewed by Alp Toker.
2165
2166         [Gtk] Menu items need underscores
2167         http://bugs.webkit.org/show_bug.cgi?id=16817
2168
2169         Add underscores to appropriate menu labels.
2170         Also adjust strings slightly.
2171
2172         * platform/gtk/ContextMenuItemGtk.cpp:
2173         (WebCore::ContextMenuItem::createNativeMenuItem):
2174         * platform/gtk/LocalizedStringsGtk.cpp:
2175         (WebCore::searchableIndexIntroduction):
2176         (WebCore::fileButtonChooseFileLabel):
2177         (WebCore::fileButtonNoFileSelectedLabel):
2178         (WebCore::contextMenuItemTagOpenLinkInNewWindow):
2179         (WebCore::contextMenuItemTagDownloadLinkToDisk):
2180         (WebCore::contextMenuItemTagCopyLinkToClipboard):
2181         (WebCore::contextMenuItemTagOpenImageInNewWindow):
2182         (WebCore::contextMenuItemTagDownloadImageToDisk):
2183         (WebCore::contextMenuItemTagCopyImageToClipboard):
2184         (WebCore::contextMenuItemTagOpenFrameInNewWindow):
2185         (WebCore::contextMenuItemTagCopy):
2186         (WebCore::contextMenuItemTagGoBack):
2187         (WebCore::contextMenuItemTagGoForward):
2188         (WebCore::contextMenuItemTagStop):
2189         (WebCore::contextMenuItemTagReload):
2190         (WebCore::contextMenuItemTagCut):
2191         (WebCore::contextMenuItemTagPaste):
2192         (WebCore::contextMenuItemTagIgnoreSpelling):
2193         (WebCore::contextMenuItemTagLearnSpelling):
2194         (WebCore::contextMenuItemTagSearchWeb):
2195         (WebCore::contextMenuItemTagLookUpInDictionary):
2196         (WebCore::contextMenuItemTagOpenLink):
2197         (WebCore::contextMenuItemTagIgnoreGrammar):
2198         (WebCore::contextMenuItemTagSpellingMenu):
2199         (WebCore::contextMenuItemTagShowSpellingPanel):
2200         (WebCore::contextMenuItemTagCheckSpelling):
2201         (WebCore::contextMenuItemTagCheckSpellingWhileTyping):
2202         (WebCore::contextMenuItemTagCheckGrammarWithSpelling):
2203         (WebCore::contextMenuItemTagFontMenu):
2204         (WebCore::contextMenuItemTagBold):
2205         (WebCore::contextMenuItemTagItalic):
2206         (WebCore::contextMenuItemTagUnderline):
2207         (WebCore::contextMenuItemTagOutline):
2208         (WebCore::contextMenuItemTagWritingDirectionMenu):
2209         (WebCore::contextMenuItemTagDefaultDirection):
2210         (WebCore::contextMenuItemTagLeftToRight):
2211         (WebCore::contextMenuItemTagRightToLeft):
2212         (WebCore::contextMenuItemTagInspectElement):
2213         (WebCore::searchMenuClearRecentSearchesText):
2214
2215 2008-01-11  Ada Chan  <adachan@apple.com>
2216
2217         <rdar://problem/5681557> On Windows Safari, mouse events are ignored after clicking on link that triggers download
2218         Moved the call to cache page from provisionalLoadStarted() to commitProvisionalLoad(), since 
2219         provisionalLoadStarted() can be called for cases that do not result in a page navigation, for example,
2220         when a link to download a file has been clicked.
2221
2222         Reviewed by John and Anders.
2223
2224         * loader/FrameLoader.cpp:
2225         (WebCore::FrameLoader::provisionalLoadStarted):
2226         (WebCore::FrameLoader::commitProvisionalLoad):
2227
2228 2008-01-11  Jon Honeycutt  <jhoneycutt@apple.com>
2229
2230         Reviewed by Anders.
2231
2232         <rdar://problem/5683529> plugins/embed-inside-object.html is timing
2233         out/failing
2234
2235         Revert to using FrameTree::find() so that frame aliases like "_self" and
2236         "_current" are interpreted properly
2237
2238         * plugins/win/PluginViewWin.cpp:
2239         (WebCore::PluginViewWin::performRequest):
2240         (WebCore::PluginViewWin::load):
2241
2242 2008-01-11  Alp Toker  <alp@atoker.com>
2243
2244         Reviewed by Dave Hyatt and Mark Rowe.
2245
2246         http://bugs.webkit.org/show_bug.cgi?id=16089
2247         [GTK] Support custom fonts, CachedFont::platformDataFromCustomData()
2248
2249         Add support for CSS2 @font-face custom/downloadable fonts to the GTK+
2250         port.
2251
2252         * GNUmakefile.am:
2253         * WebCore.pro:
2254         * loader/CachedFont.cpp:
2255         (WebCore::CachedFont::~CachedFont):
2256         (WebCore::CachedFont::ensureCustomFontData):
2257         (WebCore::CachedFont::platformDataFromCustomData):
2258         (WebCore::CachedFont::allReferencesRemoved):
2259         * platform/graphics/gtk/FontCustomPlatformData.cpp: Added.
2260         (WebCore::FontCustomPlatformData::~FontCustomPlatformData):
2261         (WebCore::FontCustomPlatformData::fontPlatformData):
2262         (WebCore::releaseData):
2263         (WebCore::createFontCustomPlatformData):
2264         * platform/graphics/gtk/FontCustomPlatformData.h: Added.
2265         (WebCore::FontCustomPlatformData::FontCustomPlatformData):
2266         * platform/graphics/gtk/FontPlatformData.h:
2267         * platform/graphics/gtk/FontPlatformDataGtk.cpp:
2268         (WebCore::FontPlatformData::FontPlatformData):
2269         (WebCore::FontPlatformData::init):
2270         (WebCore::FontPlatformData::isFixedPitch):
2271         * platform/graphics/gtk/SimpleFontDataGtk.cpp:
2272         (WebCore::SimpleFontData::platformDestroy):
2273
2274 2008-01-11  Adam Roben  <aroben@apple.com>
2275
2276         Remove FrameLoader::committedFirstRealDocumentLoad
2277         
2278         This method no longer has any callers.
2279
2280         Reviewed by Hyatt.
2281
2282         * loader/FrameLoader.h:
2283
2284 2008-01-11  Antti Koivisto  <antti@apple.com>
2285
2286         Add a standalone version of the blog post video player as a manual test.
2287
2288         * manual-tests/resources/touch-poster.png: Added.
2289         * manual-tests/video-player.html: Added.
2290
2291 2008-01-10  Antti Koivisto  <antti@apple.com>
2292
2293         Reviewed by Adam.
2294
2295         Fix <rdar://problem/5682767>
2296         Video does not show up in http://webkit.org/blog/140/html5-media-support/ on Windows
2297         
2298         Take care that GWorld is created and deletes when needed as size or visibility changes.
2299
2300         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
2301         (WebCore::MediaPlayerPrivate::load):
2302         * platform/graphics/win/QTMovieWin.cpp:
2303         (QTMovieWinPrivate::QTMovieWinPrivate):
2304         (QTMovieWinPrivate::updateGWorld):
2305         (QTMovieWinPrivate::setSize):
2306         (QTMovieWin::setVisible):
2307         (QTMovieWin::initializeQuickTime):
2308
2309 2008-01-11  David Hyatt  <hyatt@apple.com>
2310
2311         Fix for bug 11188, setting hspace on a table overrides align=center.  Fix align=center to be done using
2312         mapped attributes so that it does not get overridden by hspace all the time.
2313
2314         Reviewed by mitz
2315
2316         Added fast/table/table-hspace-align-center.html
2317
2318         * css/html4.css:
2319         * html/HTMLTableElement.cpp:
2320         (WebCore::HTMLTableElement::parseMappedAttribute):
2321
2322 2008-01-11  Mark Rowe  <mrowe@apple.com>
2323
2324         Qt build fix.
2325
2326         * platform/qt/TemporaryLinkStubs.cpp: Include CString.h.
2327
2328 2008-01-11  Mark Rowe  <mrowe@apple.com>
2329
2330         Qt build fix.  Add link stubs for the new FileSystem.h functions introduced
2331         in r29399.
2332
2333         * platform/qt/TemporaryLinkStubs.cpp:
2334         (WebCore::openTemporaryFile):
2335
2336 2008-01-11  Rodney Dawes  <dobey@wayofthemonkey.com>
2337
2338         Reviewed by Anders Carlsson.
2339
2340         Bug 16779: Make the PluginStream implementation be shared across platforms
2341         http://bugs.webkit.org/show_bug.cgi?id=16779
2342
2343         Add the new shared PluginStream files to the GTK+ and Win32 builds.
2344         Add PluginStreamClient class for the streamDidFinishLoading method.
2345         Add open/close/write methods to FileSystem for temporary file handling.
2346         Add PluginDebug.h and npfunctions.h for shared PluginStream.
2347         Add shared PluginStream.
2348         Remove PluginStreamWin.
2349         Update PluginViewWin to use shared PluginStream and PluginStreamClass.
2350
2351         * GNUmakefile.am:
2352         * WebCore.pro:
2353         * WebCore.vcproj/WebCore.vcproj:
2354         * platform/FileSystem.h:
2355         * platform/gtk/FileSystemGtk.cpp:
2356         * platform/win/FileSystemWin.cpp:
2357         * plugins/PluginDebug.h:
2358         * plugins/PluginStream.cpp:
2359         * plugins/PluginStream.h:
2360         * plugins/npfunctions.h:
2361         * plugins/win/PluginDebug: Moved to PluginDebug.h.
2362         * plugins/win/PluginStreamWin.cpp: Moved to PluginStream.cpp.
2363         * plugins/win/PluginStreamWin.h: Moved to PluginStream.h
2364         * plugins/win/PluginViewWin.cpp:
2365         * plugins/win/PluginViewWin.h:
2366         * plugins/win/npfunctions.h: Moved to npfunctions.h
2367
2368 2008-01-11  Geoffrey Garen  <ggaren@apple.com>
2369
2370         Try to fix Mac build: Edit the right .exp file.
2371
2372         * WebCore.base.exp:
2373
2374 2008-01-11  Geoffrey Garen  <ggaren@apple.com>
2375
2376         Try to fix Qt build: don't use pthreads if they're not available.
2377
2378         * bindings/js/GCController.cpp:
2379
2380 2008-01-10  Geoffrey Garen  <ggaren@apple.com>
2381
2382         Reviewed by John Sullivan.
2383
2384         Fixed some world leak reports:
2385         * <rdar://problem/5669436> PLT complains about world leak of 1 JavaScript
2386         Interpreter after running cvs-base suite
2387
2388         * <rdar://problem/5669423> PLT complains about world leak if browser
2389         window is open when PLT starts
2390         
2391         These were both bugs in the reporting mechanism, so I took the
2392         opportunity to do some house cleaning there.
2393
2394         Stupid class, I kill you:
2395         * bridge/JavaScriptStatistics.cpp: Removed.
2396         * bridge/JavaScriptStatistics.h: Removed.
2397
2398         * bindings/js/GCController.h: Adopted the only useful features of
2399         JavaScriptStatistics, since they were GC-related.
2400         * bindings/js/GCController.cpp:
2401
2402 2008-01-10  Eric Seidel  <eric@webkit.org>
2403
2404         Reviewed by Adele.
2405
2406         No functional changes, only code cleanup.
2407
2408         * css/MediaQueryEvaluator.cpp:
2409         (WebCore::compareValue): renamed from cmpvalue
2410         (WebCore::colorMediaFeatureEval):
2411         (WebCore::device_aspect_ratioMediaFeatureEval):
2412         (WebCore::device_pixel_ratioMediaFeatureEval):
2413         (WebCore::gridMediaFeatureEval):
2414         (WebCore::device_heightMediaFeatureEval):
2415         (WebCore::device_widthMediaFeatureEval):
2416         (WebCore::heightMediaFeatureEval):
2417         (WebCore::widthMediaFeatureEval):
2418
2419 2008-01-10  Dan Bernstein  <mitz@apple.com>
2420
2421         Reviewed by Anders Carlsson.
2422
2423         - fix a crash when calling alert() from a repeating timer
2424
2425         On non-Mac platforms, the PageGroupLoadDeferrer pauses DOM timers during
2426         alert() and other similar functions, which deletes the actual
2427         DOMWindowTimer objects and replaces them with new objects when resuming.
2428
2429         * bindings/js/kjs_window.cpp:
2430         (KJS::Window::timerFired): Re-fetch the timer object from the map in
2431         case it has been deleted or replaced.
2432
2433 2008-01-10  Maciej Stachowiak  <mjs@apple.com>
2434
2435         Reviewed by Sam.
2436
2437         - remove SecurityOriginData and fold its functionality into SecurityOrigin
2438
2439         * GNUmakefile.am:
2440         * WebCore.base.exp:
2441         * WebCore.pro:
2442         * WebCore.vcproj/WebCore.vcproj:
2443         * WebCore.xcodeproj/project.pbxproj:
2444         * WebCoreSources.bkl:
2445         * bindings/js/JSDOMWindowCustom.cpp:
2446         (WebCore::JSDOMWindow::postMessage):
2447         * dom/Document.cpp:
2448         (WebCore::Document::domain):
2449         * page/Chrome.cpp:
2450         (WebCore::Chrome::requestQuotaIncreaseForNewDatabase):
2451         (WebCore::Chrome::requestQuotaIncreaseForDatabaseOperation):
2452         * page/Chrome.h:
2453         * page/ChromeClient.h:
2454         * platform/SecurityOrigin.cpp:
2455         (WebCore::SecurityOrigin::copy):
2456         (WebCore::SecurityOrigin::createFromIdentifier):
2457         (WebCore::SecurityOrigin::stringIdentifier):
2458         * platform/SecurityOrigin.h:
2459         (WebCore::SecurityOrigin::host):
2460         (WebCore::SecurityOrigin::protocol):
2461         (WebCore::SecurityOrigin::port):
2462         (WebCore::SecurityOrigin::equal):
2463         * platform/SecurityOriginData.cpp: Removed.
2464         * platform/SecurityOriginData.h: Removed.
2465         * storage/Database.cpp:
2466         (WebCore::Database::openDatabase):
2467         (WebCore::Database::Database):
2468         (WebCore::Database::securityOriginCopy):
2469         * storage/Database.h:
2470         * storage/DatabaseTracker.cpp:
2471         (WebCore::SecurityOriginHash::hash):
2472         (WebCore::SecurityOriginHash::equal):
2473         (WebCore::SecurityOriginTraits::deletedValue):
2474         (WebCore::SecurityOriginTraits::emptyValue):
2475         (WebCore::DatabaseTracker::canEstablishDatabase):
2476         (WebCore::DatabaseTracker::hasEntryForOrigin):
2477         (WebCore::DatabaseTracker::hasEntryForDatabase):
2478         (WebCore::DatabaseTracker::establishEntryForOrigin):
2479         (WebCore::DatabaseTracker::fullPathForDatabase):
2480         (WebCore::DatabaseTracker::populateOrigins):
2481         (WebCore::DatabaseTracker::origins):
2482         (WebCore::DatabaseTracker::databaseNamesForOrigin):
2483         (WebCore::DatabaseTracker::detailsForNameAndOrigin):
2484         (WebCore::DatabaseTracker::setDatabaseDetails):
2485         (WebCore::DatabaseTracker::usageForDatabase):
2486         (WebCore::DatabaseTracker::usageForOrigin):
2487         (WebCore::DatabaseTracker::quotaForOrigin):
2488         (WebCore::DatabaseTracker::setQuota):
2489         (WebCore::DatabaseTracker::addDatabase):
2490         (WebCore::DatabaseTracker::deleteAllDatabases):
2491         (WebCore::DatabaseTracker::deleteDatabasesWithOrigin):
2492         (WebCore::DatabaseTracker::deleteDatabase):
2493         (WebCore::DatabaseTracker::deleteDatabaseFile):
2494         (WebCore::notificationQueue):
2495         (WebCore::DatabaseTracker::scheduleNotifyDatabaseChanged):
2496         (WebCore::DatabaseTracker::notifyDatabasesChanged):
2497         * storage/DatabaseTracker.h:
2498         * storage/DatabaseTrackerClient.h:
2499         * storage/SQLTransaction.cpp:
2500         (WebCore::SQLTransaction::openTransactionAndPreflight):
2501         (WebCore::SQLTransaction::runStatements):
2502         (WebCore::SQLTransaction::deliverQuotaIncreaseCallback):
2503         (WebCore::SQLTransaction::postflightAndCommit):
2504         (WebCore::SQLTransaction::cleanupAfterTransactionErrorCallback):
2505         * svg/graphics/SVGImageEmptyClients.h:
2506         (WebCore::SVGEmptyChromeClient::requestQuotaIncreaseForNewDatabase):
2507         (WebCore::SVGEmptyChromeClient::requestQuotaIncreaseForDatabaseOperation):
2508
2509 2008-01-10  Anders Carlsson  <andersca@apple.com>
2510
2511         Reviewed by Sam.
2512
2513         Use the correct frame loader load method. Using the old method would not cause a 
2514         new window to be open if the frame navigation was not allowed.
2515         
2516         * plugins/win/PluginViewWin.cpp:
2517         (WebCore::PluginViewWin::performRequest):
2518
2519 2008-01-10  Alp Toker  <alp@atoker.com>
2520
2521         SVG font build fix for GTK+/autotools.
2522
2523         * GNUmakefile.am:
2524
2525 2008-01-10  Adam Barth  <hk9565@gmail.com>
2526
2527         Reviewed by Sam Weinig and Anders Carlsson.
2528
2529         Fixes: http://bugs.webkit.org/show_bug.cgi?id=16522
2530         <rdar://problem/5657355>
2531
2532         This patch makes two changes:
2533
2534         1) Java calls FrameLoader::load in a slightly different way than
2535            JavaScript, which previously let a malicious web site bypass the
2536            shouldAllowNavigation check.  This patch adds that check to that
2537            code path.
2538
2539         2) FrameLoader now wraps calls to m_frame->tree()->find(name) with
2540            findFrameForNavigation, which calls shouldAllowNavigation.  This
2541            treats disallowed frame navigations as if the named frame did not
2542            exist, resulting in a popup window when appropriate.
2543
2544         Tests: http/tests/security/frameNavigation/xss-DENIED-plugin-navigation.html
2545                http/tests/security/frameNavigation/xss-DENIED-targeted-link-navigation.html
2546
2547         * WebCore.base.exp:
2548         * bindings/js/kjs_window.cpp:
2549         (KJS::WindowProtoFuncOpen::callAsFunction):
2550         * loader/FrameLoader.cpp:
2551         (WebCore::FrameLoader::createWindow):
2552         (WebCore::FrameLoader::load):
2553         (WebCore::FrameLoader::post):
2554         (WebCore::FrameLoader::findFrameForNavigation):
2555         * loader/FrameLoader.h:
2556
2557 2008-01-10  John Sullivan  <sullivan@apple.com>
2558
2559         Written by Hyatt, reviewed by me
2560         
2561         - fixed <rdar://problem/5654297> Mail crashes occurs at WebCore::FontFallbackList::fontDataAt() when attempting to display 
2562           a <video> element that uses controls attribute
2563
2564         * rendering/MediaControlElements.cpp:
2565         (WebCore::MediaControlShadowRootElement::MediaControlShadowRootElement):
2566         force the render style to inherit from the media element's style; Hyatt filed 5682383 to cover cleaning
2567         up this architecture, but this one-line fix will prevent the crash in the meantime
2568
2569 2008-01-10  Ada Chan  <adachan@apple.com>
2570
2571         Fix fast/forms/input-radio-checked-tab.html
2572         Meta key is not the same as Alt key on windows.
2573
2574         Reviewed by Darin.
2575
2576         * platform/win/KeyEventWin.cpp:
2577         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
2578
2579 2008-01-10  Anders Carlsson  <andersca@apple.com>
2580
2581         Reviewed by Jon.
2582
2583         Fix an assert that would happen when a plug-in tries to load a URL while a provisional load is going.
2584         
2585         * plugins/win/PluginViewWin.cpp:
2586         (WebCore::PluginViewWin::performRequest):
2587         Move document loader check here since we don't start loading until here and a new document load could have started in the meantime.
2588         
2589         (WebCore::PluginViewWin::requestTimerFired):
2590         Don't leak the plugin requests.
2591         
2592         (WebCore::PluginViewWin::load):
2593
2594 2008-01-10  Anders Carlsson  <andersca@apple.com>
2595
2596         Reviewed by John Sullivan.
2597
2598         <rdar://problem/5455889>
2599         REGRESSION: BumperCar crashes when attempting to load a long invalid URL
2600         
2601         Make sure to call FrameLoader::receivedMainResourceError before calling
2602         FrameLoader::didFailToLoad. The call to receivedMainResourceError takes care of
2603         clearing out the provisional document loader so that we won't call the didFail
2604         ResourceLoadDelegate method twice. This also makes us call the FrameLoadDelegate method
2605         didFailPrivisionalLoad before calling the ResourceLoadDelegate method, which Safari 2.0 does.
2606         
2607         * loader/MainResourceLoader.cpp:
2608         (WebCore::MainResourceLoader::receivedError):
2609
2610 2008-01-10  Antti Koivisto  <antti@apple.com>
2611
2612         Reviewed by Adele.
2613
2614         Fix <rdar://problem/5658048>
2615         After <video> has finished playing, dragging the scroller on different location of controller starts to play movie
2616         
2617         - Move to paused state if the playback had ended and the controller is used to seek to earlier time
2618         - Pause video playback during drag so the knob does not constantly try to escape from the mouse pointer
2619
2620         * html/HTMLMediaElement.cpp:
2621         (WebCore::HTMLMediaElement::HTMLMediaElement):
2622         (WebCore::HTMLMediaElement::updateMediaPlayer):
2623         (WebCore::HTMLMediaElement::setPausedInternal):
2624         * html/HTMLMediaElement.h:
2625         * rendering/MediaControlElements.cpp:
2626         (WebCore::MediaControlTimelineElement::defaultEventHandler):
2627
2628 2008-01-10  Alexey Proskuryakov  <ap@webkit.org>
2629
2630         Reviewed by Adam Roben.
2631
2632         <rdar://problem/5667003> fast/dom/xmlhttprequest-html-response-encoding.html is failing
2633
2634         * xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::send): Do not disable sniffing for file://
2635         requests, as CFNetwork doesn't perform extension to MIME type mapping then.
2636
2637 2008-01-10  Adam Roben  <aroben@apple.com>
2638
2639         Fixes to allow multiple FrameViews on Windows
2640
2641         Reviewed by Hyatt.
2642
2643         * page/FrameView.cpp:
2644         (WebCore::FrameView::FrameView): Added a new constructor that takes an
2645         IntSize to specify the FrameView's initial size.
2646         (WebCore::FrameView::scheduleRelayout): Added an assertion that our
2647         Document is not in the page cache.
2648         * page/FrameView.h:
2649         * platform/gtk/WidgetGtk.cpp:
2650         (WebCore::Widget::~Widget): Add a warm, fuzzy ASSERT.
2651         * platform/qt/WidgetQt.cpp:
2652         (WebCore::Widget::~Widget): Ditto.
2653         * rendering/RenderWidget.cpp:
2654         (WebCore::RenderWidget::setWidget): Make sure to remove any existing
2655         Widget from the Widget hierarchy before deleting it. One instance
2656         where this is needed is when setWidget is called during FrameView
2657         creation on Windows.
2658
2659 2008-01-10  Alp Toker  <alp@atoker.com>
2660
2661         Include math.h to get ceilf(). Part of the SVG font GTK+ build fix.
2662
2663         * svg/SVGFontFaceElement.cpp:
2664
2665 2008-01-10  Justin Garcia  <justin.garcia@apple.com>
2666
2667         Reviewed by Alice Liu.
2668
2669         <rdar://problem/5658603> Crash in InsertNodeBefore::doUnapply() on Undo in Yahoo Mail
2670         <rdar://problem/5658709> Crash in RenderView::setSelection on Undo in Yahoo Mail
2671         
2672         Make sure we have an updated layout before we perform any editing work.
2673
2674         * editing/EditCommand.cpp:
2675         (WebCore::EditCommand::apply):
2676         (WebCore::EditCommand::unapply):
2677         (WebCore::EditCommand::reapply):
2678
2679 2008-01-10  Luca Bruno  <lethalman88@gmail.com>
2680
2681         Reviewed by Alp Toker.
2682
2683         Back out r29206 which was causing regressions in curl http job
2684         cancellation.
2685
2686         * platform/network/curl/ResourceHandleManager.cpp
2687         (ResourceHandleManager::cancel): 
2688
2689 2008-01-10  Kevin McCullough  <kmccullough@apple.com>
2690
2691         Reviewed by Darin, Sam, and Adam.
2692
2693         - <rdar://problem/5654486> REGRESSION (Safari 3.0.4-TOT): clicking on
2694         - link in gmail message displays JavaScript alert falsely complaining
2695         about pop-up blocking
2696         - When trying to open a new window, we now see if the user gesture 
2697         occurred in the global dynamic object instead of the frame since that is
2698         the only place an event can occur. 
2699
2700         * bindings/js/kjs_window.cpp: - Check the dynamic global object instead
2701         of the frame.
2702         (KJS::allowPopUp):
2703         (KJS::showModalDialog):
2704         (KJS::WindowProtoFuncOpen::callAsFunction):
2705
2706 2008-01-10  David Hyatt  <hyatt@apple.com>
2707
2708         Fix for bug 16247, visibility:hidden not honored when hit testing inline replaced elements.
2709
2710         Reviewed by adele
2711
2712         Added fast/css/visibility-hit-test.html test case.
2713
2714         * rendering/RenderBox.cpp:
2715         (WebCore::RenderBox::nodeAtPoint):
2716
2717 2008-01-10  Lars Knoll  <lars@trolltech.com>
2718
2719         Reviewed by Simon.
2720
2721         rename QWebPageHistory to QWebHistory.
2722
2723         * WebCore.pro:
2724
2725 2008-01-10  Lars Knoll  <lars@trolltech.com>
2726
2727         Reviewed by Simon.
2728
2729         fix the drawing errors that where introduced due to refactoring.
2730
2731         Correctly clip to the rectangle we want to draw in ScrollView::paint().
2732
2733         * platform/qt/ScrollViewQt.cpp:
2734         (WebCore::ScrollView::paint):
2735
2736 2008-01-10  Simon Hausmann  <hausmann@webkit.org>
2737
2738         Reviewed by Lars.
2739
2740         Temporarily disable gzip decompression in qhttp due to a bug.
2741
2742         * platform/network/qt/QNetworkReplyHandler.cpp:
2743         (WebCore::QNetworkReplyHandler::QNetworkReplyHandler):
2744
2745 2008-01-10  Simon Hausmann  <hausmann@webkit.org>
2746
2747         Reviewed by Lars.
2748
2749         http://bugs.webkit.org/show_bug.cgi?id=16588
2750
2751         Added a (last) Frame argument to ResourceHandle::loadResourceSynchronously.
2752         This allows implementing the synchronous loading correctly for the Qt port where the networking
2753         backend is bound to the page.
2754
2755         * loader/FrameLoader.cpp:
2756         (WebCore::FrameLoader::loadResourceSynchronously):
2757         * platform/network/ResourceHandle.h:
2758         * platform/network/cf/ResourceHandleCFNet.cpp:
2759         * platform/network/curl/ResourceHandleCurl.cpp:
2760         * platform/network/mac/ResourceHandleMac.mm:
2761         * platform/network/qt/ResourceHandleQt.cpp:
2762         (WebCore::ResourceHandle::loadResourceSynchronously):
2763
2764 2008-01-10  Kevin Ollivier  <kevino@theolliviers.com>
2765
2766         wx build fix for changes in r29328
2767
2768         * WebCoreSources.bkl:
2769
2770 2008-01-09  Maciej Stachowiak  <mjs@apple.com>
2771
2772         Reviewed by Sam.
2773
2774         - refactor SecurityOrigin in preparation for merging with SecurityOriginData
2775
2776         * platform/SecurityOrigin.cpp:
2777         (WebCore::SecurityOrigin::SecurityOrigin):
2778         (WebCore::SecurityOrigin::create):
2779         (WebCore::SecurityOrigin::createForFrame):
2780         * platform/SecurityOrigin.h:
2781
2782 2008-01-09  Ada Chan  <adachan@apple.com>
2783
2784         Tabs with ctrl, meta, or altgraph modifier key down should not advance focus.
2785
2786         Reviewed by Darin.
2787
2788         Test: fast/forms/tabs-with-modifiers.html
2789
2790         * page/EventHandler.cpp:
2791         (WebCore::EventHandler::defaultKeyboardEventHandler):
2792         (WebCore::EventHandler::defaultTabEventHandler): bail if ctrl, meta, or altgraph key is down.  
2793         Clean up the code a bit.
2794         * page/EventHandler.h:
2795         * page/FocusController.cpp: Remove the advanceFocus() that takes in a KeyboardEvent.  It was
2796         only called in EventHandler::defaultTabEventHandler() but we have cleaned up the code there and
2797         no longer needs it.
2798         * page/FocusController.h:
2799
2800 2008-01-09  Antti Koivisto  <antti@apple.com>
2801
2802         Reviewed by Mitz.
2803
2804         Fix http://bugs.webkit.org/show_bug.cgi?id=16376
2805         <rdar://problem/5665206>
2806         <video> element fails to play frames when navigating back to page (16376)
2807         
2808         Don't make MediaPlayer visible when it is actually in page cache.
2809
2810         * rendering/RenderVideo.cpp:
2811         (WebCore::RenderVideo::updatePlayer):
2812
2813 2008-01-09  Anders Carlsson  <andersca@apple.com>
2814
2815         Reviewed by Darin.
2816
2817         <rdar://problem/5532361> 
2818         CrashTracer: 9840 crashes in Safari at com.apple.JavaScriptCore: KJS::Bindings::CInstance::~CInstance [in-charge deleting] + 35
2819         
2820         Clear the frame's plugin root objects so that they don't outlive the plugin bundle.
2821         
2822         * page/Frame.cpp:
2823         (WebCore::Frame::pageDestroyed):
2824
2825 2008-01-09  John Sullivan  <sullivan@apple.com>
2826
2827         Reviewed by Adam Roben and Anders Carlsson
2828         
2829         - fixed <rdar://problem/5469398> Repro assertion failure in context menu code due to 
2830           missing-but-expected Reload item
2831
2832         * platform/ContextMenu.cpp:
2833         (WebCore::ContextMenu::populate):
2834         use isLoadingInAPISense when deciding whether to include Stop or Reload in context
2835         menu, to match the WebKit API
2836
2837 2008-01-09  Mark Rowe  <mrowe@apple.com>
2838
2839         Fix Windows debug build for opensource developers.
2840
2841         * WebCore.vcproj/QTMovieWin.vcproj: Use the correct library suffix.
2842
2843 2007-10-01  Allan Sandfeld Jensen  <sandfeld@kde.org>
2844
2845         Reworked by Eric, Reviewed by Hyatt.
2846
2847         - fix http://bugs.webkit.org/show_bug.cgi?id=9454
2848         Add support for :lang inheritance and xml:lang support.
2849
2850         Tests: fast/selectors/lang-inheritance.html
2851                fast/selectors/lang-inheritance2.html
2852                fast/selectors/lang-vs-xml-lang.html
2853                fast/selectors/lang-vs-xml-lang-xhtml.xhtml
2854
2855         * css/CSSStyleSelector.cpp:
2856         (WebCore::CSSStyleSelector::canShareStyleWithElement): Do not share style between elements with
2857         different LANG-attribute.
2858         (WebCore::CSSStyleSelector::checkOneSelector): Change :lang() to recursively check the LANG attribute
2859         for all the elements parents and the content-language of the document.
2860         * dom/Document.cpp:
2861         (WebCore::Document::processHttpEquiv): Parse MIME Content-Language
2862         * dom/Document.h:
2863         (WebCore::Document::contentLanguage):
2864         (WebCore::Document::setContentLanguage):
2865
2866 2008-01-08  Timothy Hatcher  <timothy@apple.com>
2867
2868         Reviewed by Brady.
2869
2870         Bug 16678: Unreproducible crash in KJS::JSObject::inherits() after using Web Inspector
2871         http://bugs.webkit.org/show_bug.cgi?id=16678
2872
2873         Add a NULL check for controller before calling JSObjectSetPrivate.
2874
2875         * page/InspectorController.cpp:
2876         (WebCore::InspectorController::~InspectorController):
2877
2878 2008-01-08  Xan Lopez  <xan@gnome.org>
2879
2880         Reviewed by Alp Toker.
2881
2882         http://bugs.webkit.org/show_bug.cgi?id=15610
2883         [GTK] Text rendering using Pango
2884
2885         Use Pango to render Complex path text.
2886
2887         * platform/graphics/gtk/FontGtk.cpp:
2888         (WebCore::utf16_to_utf8):
2889         (WebCore::convertUniCharToUTF8):
2890         (WebCore::setPangoAttributes):
2891         (WebCore::Font::drawGlyphs):
2892         (WebCore::Font::drawComplexText):
2893         (WebCore::Font::floatWidthForComplexText):
2894         (WebCore::Font::offsetForPositionForComplexText):
2895
2896 2008-01-08  Timothy Hatcher  <timothy@apple.com>
2897
2898         Reviewed by Darin Adler.
2899
2900         <rdar://problem/5665860> With the web inspector displayed, a crash occurs
2901         at WebCore::Frame::document() when navigating back to previous page
2902
2903         This fixes the crash, but the inspector was totally broken with back/forward.
2904         So this also fixes back/forward navigation so the right main resource shows
2905         up in the inspector.
2906
2907         * page/InspectorController.cpp:
2908         (WebCore::addSourceToFrame): Add some null checks for the frame when
2909         getting the textEncoding. This was the crash.
2910         (WebCore::InspectorController::addScriptResource): Create a script object
2911         only if needed, and always add it by calling addResource.
2912         (WebCore::InspectorController::didCommitLoad): Check if the loader is 
2913         loading from the page cache, and clear m_mainResource. If the load is
2914         normal, then call addAndUpdateScriptResource with the main resource. 
2915         (WebCore::InspectorController::identifierForInitialRequest): If the load
2916         is from the page cache and the resource is the main resource call
2917         addAndUpdateScriptResource since didCommitLoad did not do it.
2918
2919 2008-01-08  Alp Toker  <alp@atoker.com>
2920
2921         Back out VIDEO by default in the GTK+ qmake build. The build bot
2922         doesn't have the necessary libraries installed.
2923
2924         * WebCore.pro:
2925
2926 2008-01-08  Alp Toker  <alp@atoker.com>
2927
2928         Win build fix for breakage introduced in r29328.
2929
2930         * WebCore.vcproj/WebCore.vcproj:
2931
2932 2008-01-08  Alp Toker  <alp@atoker.com>
2933
2934         Rubber-stamped by Mark Rowe.
2935
2936         Enable VIDEO by default in the GTK+ qmake build.
2937
2938         * WebCore.pro:
2939
2940 2008-01-08  Alp Toker  <alp@atoker.com>
2941
2942         GTK+ VIDEO build fix for breakage introduced in r29328.
2943
2944         Issue noticed by Ori_B.
2945
2946         * GNUmakefile.am:
2947         * WebCore.pro:
2948
2949 2008-01-08  Antti Koivisto  <antti@apple.com>
2950
2951         Reviewed by Darin.
2952         
2953         HTMLAudioElement needs generated constructor. Otherwise video instanceof HTMLAudioElement is true which is 
2954         bit strange.
2955         
2956         Renamed custom constructor JSHTMLAudioElementConstructor to JSAudioConstructor to avoid name clashes.
2957
2958         Test: media/constructors.html
2959
2960         * WebCore.xcodeproj/project.pbxproj:
2961         * bindings/js/JSAudioConstructor.cpp: Copied from WebCore/bindings/js/JSHTMLAudioElementConstructor.cpp.
2962         (WebCore::JSAudioConstructor::JSAudioConstructor):
2963         (WebCore::JSAudioConstructor::implementsConstruct):
2964         (WebCore::JSAudioConstructor::construct):
2965         * bindings/js/JSAudioConstructor.h: Copied from WebCore/bindings/js/JSHTMLAudioElementConstructor.h.
2966         * bindings/js/JSHTMLAudioElementConstructor.cpp: Removed.
2967         * bindings/js/JSHTMLAudioElementConstructor.h: Removed.
2968         * bindings/js/kjs_window.cpp:
2969         (KJS::Window::getValueProperty):
2970         * html/HTMLAudioElement.idl:
2971
2972 2008-01-08  Anders Carlsson  <andersca@apple.com>
2973
2974         Reviewed by Mitz.
2975
2976         Don't add the applet widget to the view, that's done later by RenderApplet.
2977             
2978         * loader/FrameLoader.cpp:
2979         (WebCore::FrameLoader::createJavaAppletWidget):
2980
2981 2008-01-08  Antti Koivisto  <antti@apple.com>
2982
2983         Reviewed by Weinig.
2984         
2985         Add security check for Audio constructor.
2986
2987         * bindings/js/kjs_window.cpp:
2988         (KJS::Window::getValueProperty):
2989
2990 2008-01-08  Timothy Hatcher  <timothy@apple.com>
2991
2992         Reviewed by Adam Roben.
2993
2994         <rdar://problem/5676515> List of scripts and images missing when opening Web Inspector from new window (16567)
2995
2996         InspectorController::didLoadResourceFromMemoryCache was not being called for
2997         resources that loaded from the memory cache that the FrameLoader's client
2998         has already been notified about. This fix always calls the InspectorController
2999         when loading a memory cached resource. No test possible for the Web Inspector.
3000
3001         * loader/DocLoader.cpp:
3002         (WebCore::DocLoader::checkCacheObjectStatus): Moved most of the logic to
3003         FrameLoader::loadedResourceFromMemoryCache so the InspectorController can always be notified.
3004         * loader/FrameLoader.cpp:
3005         (WebCore::FrameLoader::didTellClientAboutLoad): Renamed from didTellBridgeAboutLoad.
3006         (WebCore::FrameLoader::haveToldClientAboutLoad): Renamed from haveToldBridgeAboutLoad.
3007         (WebCore::FrameLoader::loadResourceSynchronously): Call the renamed didTellClientAboutLoad.
3008         (WebCore::FrameLoader::loadedResourceFromMemoryCache): Only takes a CachedResource now.
3009         Always call InspectorController. If the resource's sendResourceLoadCallbacks is false or
3010         didTellClientAboutLoad is true, do an early return. Otherwise call the client and call
3011         didTellClientAboutLoad.
3012         (WebCore::FrameLoader::dispatchDidLoadResourceFromMemoryCache): Removed, work now done
3013         in FrameLoader::loadedResourceFromMemoryCache.
3014         * loader/FrameLoader.h: Renamed {didTell,haveTold}BridgeAboutLoad to {didTell,haveTold}ClientAboutLoad.
3015         Made loadedResourceFromMemoryCache only take a CachedResource. Renamed m_urlsBridgeKnowsAbout to 
3016         m_urlsClientKnowsAbout.
3017         * loader/SubresourceLoader.cpp:
3018         (WebCore::SubresourceLoader::load): Call the renamed didTellClientAboutLoad.
3019
3020 2008-01-08  Dan Bernstein  <mitz@apple.com>
3021
3022         Rubber-stamped by Sam Weinig.
3023
3024         - prefix all member variables in CSSStyleSelector with m_
3025
3026         * css/CSSStyleSelector.cpp:
3027         (WebCore::CSSStyleSelector::CSSStyleSelector):
3028         (WebCore::CSSStyleSelector::init):
3029         (WebCore::CSSStyleSelector::setEncodedURL):
3030         (WebCore::CSSStyleSelector::loadDefaultStyle):
3031         (WebCore::CSSStyleSelector::matchRules):
3032         (WebCore::CSSStyleSelector::matchRulesForList):
3033         (WebCore::CSSStyleSelector::initElementAndPseudoState):
3034         (WebCore::CSSStyleSelector::initForStyleResolve):
3035         (WebCore::CSSStyleSelector::canShareStyleWithElement):
3036         (WebCore::CSSStyleSelector::locateSharedStyle):
3037         (WebCore::CSSStyleSelector::matchUARules):
3038         (WebCore::CSSStyleSelector::styleForElement):
3039         (WebCore::CSSStyleSelector::pseudoStyleForElement):
3040         (WebCore::CSSStyleSelector::updateFont):
3041         (WebCore::CSSStyleSelector::cacheBorderAndBackground):
3042         (WebCore::CSSStyleSelector::checkSelector):
3043         (WebCore::CSSStyleSelector::checkOneSelector):
3044         (WebCore::CSSStyleSelector::applyProperty):
3045         (WebCore::CSSStyleSelector::mapBackgroundImage):
3046         (WebCore::CSSStyleSelector::mapBackgroundSize):
3047         (WebCore::CSSStyleSelector::mapBackgroundXPosition):
3048         (WebCore::CSSStyleSelector::mapBackgroundYPosition):
3049         (WebCore::CSSStyleSelector::checkForTextSizeAdjust):
3050         (WebCore::CSSStyleSelector::getColorFromPrimitiveValue):
3051         * css/CSSStyleSelector.h:
3052         (WebCore::CSSStyleSelector::):
3053         (WebCore::CSSRuleData::CSSRuleData):
3054         (WebCore::CSSRuleDataList::CSSRuleDataList):
3055         (WebCore::CSSRuleDataList::append):
3056         * css/SVGCSSStyleSelector.cpp:
3057         (WebCore::CSSStyleSelector::applySVGProperty):
3058         * rendering/RenderStyle.cpp:
3059         (WebCore::RenderStyle::isStyleAvailable):
3060
3061 2008-01-08  David D. Kilzer  <ddkilzer@apple.com>
3062
3063         Removed unnecessary files from Copy Bundle Resources build phase.
3064
3065         Reviewed by Sam.
3066
3067         * WebCore.xcodeproj/project.pbxproj: Files removed from build phase:
3068         DOMCoreException.idl
3069         EventException.idl
3070         MessageEvent.idl
3071         SVGAElement.idl
3072         SVGAngle.idl
3073         SVGAnimateColorElement.idl
3074         SVGAnimateElement.idl
3075         SVGAnimateTransformElement.idl
3076         SVGAnimatedAngle.idl
3077         SVGAnimatedBoolean.idl
3078         SVGAnimatedEnumeration.idl
3079         SVGAnimatedInteger.idl
3080         SVGAnimatedLength.idl
3081         SVGAnimatedLengthList.idl
3082         SVGAnimatedNumber.idl
3083         SVGAnimatedNumberList.idl
3084         SVGAnimatedPathData.idl
3085         SVGAnimatedPoints.idl
3086         SVGAnimatedPreserveAspectRatio.idl
3087         SVGAnimatedRect.idl
3088         SVGAnimatedString.idl
3089         SVGAnimatedTransformList.idl
3090         SVGAnimationElement.idl
3091         SVGCSSPropertyNames.in
3092         SVGCSSValueKeywords.in
3093         SVGCircleElement.idl
3094         SVGClipPathElement.idl
3095         SVGColor.idl
3096         SVGComponentTransferFunctionElement.idl
3097         SVGCursorElement.idl
3098         SVGDefinitionSrcElement.idl
3099         SVGDefsElement.idl
3100         SVGDescElement.idl
3101         SVGDocument.idl
3102         SVGElement.idl
3103         SVGElementInstance.idl
3104         SVGElementInstanceList.idl
3105         SVGEllipseElement.idl
3106         SVGException.idl
3107         SVGExternalResourcesRequired.idl
3108         SVGFEBlendElement.idl
3109         SVGFEColorMatrixElement.idl
3110         SVGFEComponentTransferElement.idl
3111         SVGFECompositeElement.idl
3112         SVGFEDiffuseLightingElement.idl
3113         SVGFEDisplacementMapElement.idl
3114         SVGFEDistantLightElement.idl
3115         SVGFEFloodElement.idl
3116         SVGFEFuncAElement.idl
3117         SVGFEFuncBElement.idl
3118         SVGFEFuncGElement.idl
3119         SVGFEFuncRElement.idl
3120         SVGFEGaussianBlurElement.idl
3121         SVGFEImageElement.idl
3122         SVGFEMergeElement.idl
3123         SVGFEMergeNodeElement.idl
3124         SVGFEOffsetElement.idl
3125         SVGFEPointLightElement.idl
3126         SVGFESpecularLightingElement.idl
3127         SVGFESpotLightElement.idl
3128         SVGFETileElement.idl
3129         SVGFETurbulenceElement.idl
3130         SVGFilterElement.idl
3131         SVGFilterPrimitiveStandardAttributes.idl
3132         SVGFitToViewBox.idl
3133         SVGFontElement.idl
3134         SVGFontFaceElement.idl
3135         SVGFontFaceFormatElement.idl
3136         SVGFontFaceNameElement.idl
3137         SVGFontFaceSrcElement.idl
3138         SVGFontFaceUriElement.idl
3139         SVGForeignObjectElement.idl
3140         SVGGElement.idl
3141         SVGGlyphElement.idl
3142         SVGGradientElement.idl
3143         SVGImageElement.idl
3144         SVGLangSpace.idl
3145         SVGLength.idl
3146         SVGLengthList.idl
3147         SVGLineElement.idl
3148         SVGLinearGradientElement.idl
3149         SVGLocatable.idl
3150         SVGMarkerElement.idl
3151         SVGMaskElement.idl
3152         SVGMatrix.idl
3153         SVGMetadataElement.idl
3154         SVGMissingGlyphElement.idl
3155         SVGNumber.idl
3156         SVGNumberList.idl
3157         SVGPaint.idl
3158         SVGPathElement.idl
3159         SVGPathSeg.idl
3160         SVGPathSegArcAbs.idl
3161         SVGPathSegArcRel.idl
3162         SVGPathSegClosePath.idl
3163         SVGPathSegCurvetoCubicAbs.idl
3164         SVGPathSegCurvetoCubicRel.idl
3165         SVGPathSegCurvetoCubicSmoothAbs.idl
3166         SVGPathSegCurvetoCubicSmoothRel.idl
3167         SVGPathSegCurvetoQuadraticAbs.idl
3168         SVGPathSegCurvetoQuadraticRel.idl
3169         SVGPathSegCurvetoQuadraticSmoothAbs.idl
3170         SVGPathSegCurvetoQuadraticSmoothRel.idl
3171         SVGPathSegLinetoAbs.idl
3172         SVGPathSegLinetoHorizontalAbs.idl
3173         SVGPathSegLinetoHorizontalRel.idl
3174         SVGPathSegLinetoRel.idl
3175         SVGPathSegLinetoVerticalAbs.idl
3176         SVGPathSegLinetoVerticalRel.idl
3177         SVGPathSegList.idl
3178         SVGPathSegMovetoAbs.idl
3179         SVGPathSegMovetoRel.idl
3180         SVGPatternElement.idl
3181         SVGPoint.idl
3182         SVGPointList.idl
3183         SVGPolygonElement.idl
3184         SVGPolylineElement.idl
3185         SVGPreserveAspectRatio.idl
3186         SVGRadialGradientElement.idl
3187         SVGRect.idl
3188         SVGRectElement.idl
3189         SVGRenderingIntent.idl
3190         SVGSVGElement.idl
3191         SVGScriptElement.idl
3192         SVGSetElement.idl
3193         SVGStopElement.idl
3194         SVGStringList.idl
3195         SVGStylable.idl
3196         SVGStyleElement.idl
3197         SVGSwitchElement.idl
3198         SVGSymbolElement.idl
3199         SVGTRefElement.idl
3200         SVGTSpanElement.idl
3201         SVGTests.idl
3202         SVGTextContentElement.idl
3203         SVGTextElement.idl
3204         SVGTextPathElement.idl
3205         SVGTextPositioningElement.idl
3206         SVGTitleElement.idl
3207         SVGTransform.idl
3208         SVGTransformList.idl
3209         SVGTransformable.idl
3210         SVGURIReference.idl
3211         SVGUnitTypes.idl
3212         SVGUseElement.idl
3213         SVGViewElement.idl
3214         SVGViewSpec.idl
3215         SVGZoomAndPan.idl
3216         SVGZoomEvent.idl
3217         XMLHttpRequestException.idl
3218         XPathException.idl
3219         character-sets.txt
3220         mac-encodings.txt
3221         make-charset-table.pl
3222         svgattrs.in
3223         svgtags.in
3224         xlinkattrs.in
3225
3226 2008-01-08  Luca Bruno  <lethalman88@gmail.com>
3227
3228         Reviewed by Alp Toker.
3229
3230         Support copying the selected URL to the clipboard.
3231
3232         * platform/gtk/PasteboardGtk.cpp:
3233         (WebCore::Pasteboard::writeURL): implemented
3234
3235 2008-01-08  David D. Kilzer  <ddkilzer@webkit.org>
3236
3237         Renamed CharacterData::m_str to m_data
3238
3239         Rubber-stamped by Adam again.
3240
3241         No test cases added since there is no change in behavior.
3242
3243         * dom/CDATASection.cpp:
3244         * dom/CharacterData.cpp:
3245         (WebCore::CharacterData::CharacterData):
3246         (WebCore::CharacterData::setData):
3247         (WebCore::CharacterData::substringData):
3248         (WebCore::CharacterData::appendData):
3249         (WebCore::CharacterData::insertData):
3250         (WebCore::CharacterData::deleteData):
3251         (WebCore::CharacterData::replaceData):
3252         (WebCore::CharacterData::nodeValue):
3253         (WebCore::CharacterData::containsOnlyWhitespace):
3254         (WebCore::CharacterData::dispatchModifiedEvent):
3255         (WebCore::CharacterData::checkCharDataOperation):
3256         (WebCore::CharacterData::dump):
3257         * dom/CharacterData.h:
3258         * dom/Comment.cpp:
3259         * dom/Text.cpp:
3260         (WebCore::Text::splitText):
3261         (WebCore::Text::createRenderer):
3262         (WebCore::Text::recalcStyle):
3263
3264 2008-01-08  Steve Falkenburg  <sfalken@apple.com>
3265
3266         Fix a couple of compiler warnings.
3267         
3268         Reviewed by Mitz.
3269
3270         * platform/win/ThreadingWin.cpp:
3271         * platform/win/UniscribeController.cpp: Remove unused function.
3272         (WebCore::UniscribeController::advance): Fix bogus warning about un-initialized variable.
3273
3274 2008-01-08  Adele Peterson  <adele@apple.com>
3275
3276         Reviewed by Darin.
3277
3278         Fix for <rdar://problem/5674667> fast/forms/slider-mouse-events.html is broken by media control checkin 29257
3279
3280         * rendering/RenderSlider.cpp: (WebCore::HTMLSliderThumbElement::defaultEventHandler):
3281           After fixing a bug in EventHandler to make sure events always go to the capturing node, this bug was exposed.
3282           MouseMove and MouseUp events were going to the thumb element, but not to the slider input element.  
3283           This change makes the input element the capturing node, and then the input element forwards the mouse events to the thumb element.
3284           I also added a missing call to setDefaultHandled for the mousemove event.
3285
3286 2008-01-08  Adele Peterson  <adele@apple.com>
3287
3288         Reviewed by Adam. 
3289
3290         * rendering/RenderThemeSafari.cpp: Use the SafariTheme version number to decide whether or not to
3291         paint the media controls in RenderThemeSafari.
3292
3293 2008-01-08  Oliver Hunt  <oliver@apple.com>
3294
3295         Reviewed by Adele and John.
3296
3297         Fix <rdar://problem/5652740> Crash occurs at WebCore::Widget::getView() after
3298         dragging file into window that contains web page ( http://www.econocraft.com/flood_arch.htm )
3299
3300         We hit this crash if the page reloads between DragController::dragUpdated
3301         and DragController::performDrag, meaning that m_document starts pointing to
3302         a now viewless document.  This is picked up by an assertion in performDrag
3303         which I have now replaced with an assignment given that the assertion is 
3304         invalid -- it is possible for m_document to be changed between dragUpdated
3305         performDrag
3306
3307         * page/DragController.cpp:
3308         (WebCore::DragController::performDrag):
3309
3310 2008-01-08  Alexey Proskuryakov  <ap@webkit.org>
3311
3312         Reviewed by Darin.
3313
3314         <rdar://problem/5659812> CrashTracer: 462 crashes in Safari at com.apple.WebCore:
3315         WebCore::Node::setChanged + 96
3316
3317         Test: fast/dom/cssTarget-crash.html
3318
3319         * dom/Node.cpp: (WebCore::Node::removedFromDocument):
3320         Check to see if the node being removed is currently set as the Document's cssTarget.
3321         If it is, clear the cssTarget to prevent a hanging reference to it.
3322
3323 2008-01-08  Adam Roben  <aroben@apple.com>
3324
3325         * bindings/scripts/CodeGeneratorJS.pm: Touch this so the bindings will
3326         rebuild on Windows now that the media elements are enabled.
3327
3328 2008-01-08  Adam Roben  <aroben@apple.com>
3329
3330         * svg/svgtags.in: Touch this again for the sake of the Windows bots.
3331
3332 2008-01-08  Timothy Hatcher  <timothy@apple.com>
3333
3334         Reviewed by Adam Roben.
3335
3336         Use JSRetainPtr in the Web Inspector everywhere we own a JSStringRef.
3337         Also added some #pragma marks to help find places in the file.
3338
3339         * page/InspectorController.cpp:
3340         (WebCore::callSimpleFunction): Use JSRetainPtr<JSStringRef>.
3341         And return the result of JSObjectCallAsFunction.
3342         (WebCore::search): Use JSRetainPtr<JSStringRef>.
3343         (WebCore::databaseTableNames): Ditto.
3344         (WebCore::localizedStrings): Ditto.
3345         (WebCore::InspectorController::~InspectorController): Ditto.
3346         (WebCore::InspectorController::focusNode): Ditto.
3347         (WebCore::InspectorController::windowScriptObjectAvailable): Ditto.
3348         (WebCore::InspectorController::scriptObjectReady): Ditto.
3349         (WebCore::addHeaders): Ditto.
3350         (WebCore::InspectorController::addScriptResource): Ditto.
3351         (WebCore::InspectorController::removeScriptResource): Ditto.
3352         (WebCore::InspectorController::updateScriptResourceRequest): Ditto.
3353         (WebCore::InspectorController::updateScriptResourceResponse): Ditto.
3354         (WebCore::InspectorController::updateScriptResource): Ditto.
3355         (WebCore::InspectorController::addDatabaseScriptResource): Ditto.
3356         (WebCore::InspectorController::removeDatabaseScriptResource): Ditto.
3357         (WebCore::InspectorController::addScriptConsoleMessage): Ditto.
3358
3359 2008-01-08  Dan Bernstein  <mitz@apple.com>
3360
3361         Rubber-stamped by Sam Weinig.
3362
3363         - rename FontDataBaseClass.{cpp,h} back to FontData.{cpp,h}
3364
3365         * GNUmakefile.am:
3366         * WebCore.pro:
3367         * WebCore.vcproj/WebCore.vcproj:
3368         * WebCore.xcodeproj/project.pbxproj:
3369         * WebCoreSources.bkl:
3370         * editing/Editor.cpp:
3371         * platform/graphics/FontData.cpp: Copied from WebCore/platform/graphics/FontDataBaseClass.cpp.
3372         * platform/graphics/FontData.h: Copied from WebCore/platform/graphics/FontDataBaseClass.h.
3373         * platform/graphics/FontDataBaseClass.cpp: Removed.
3374         * platform/graphics/FontDataBaseClass.h: Removed.
3375         * platform/graphics/SegmentedFontData.h:
3376         * platform/graphics/SimpleFontData.h:
3377
3378 2008-01-08  Dan Bernstein  <mitz@apple.com>
3379
3380         Fix a Wx build error.
3381
3382         * platform/graphics/wx/GlyphMapWx.cpp:
3383         (WebCore::GlyphPage::fill):
3384
3385 2008-01-08  Dan Bernstein  <mitz@apple.com>
3386
3387         Fix a Qt build error.
3388
3389         * platform/graphics/qt/SimpleFontDataQt.cpp:
3390         (WebCore::SimpleFontData::containsCharacters):
3391         (WebCore::SimpleFontData::fontDataForCharacter):
3392         (WebCore::SimpleFontData::isSegmented):
3393
3394 2008-01-08  Adam Roben  <aroben@apple.com>
3395
3396         Windows build fix.
3397
3398         Touch config.h to force a rebuild (apparently changing preprocessor
3399         definitions in the .vcproj doesn't force a rebuild).
3400
3401         * config.h:
3402
3403 2008-01-08  Dan Bernstein  <mitz@apple.com>
3404
3405         Fix a Wx build failure.
3406
3407         * webcore-wx.bkl:
3408
3409 2008-01-08  Dan Bernstein  <mitz@apple.com>
3410
3411         Fix a Qt build failure.
3412
3413         * WebCore.pro:
3414
3415 2008-01-08  John Sullivan  <sullivan@apple.com>
3416
3417         Reviewed by Adam Roben
3418         
3419         - fixed <rdar://problem/5671668> REGRESSION (r28711-r28730): With caret in an empty form field, 
3420           Delete menu item is enabled but shouldn't be
3421
3422         The enabled logic was incorrect for the Delete menu item. To fix this, I added an EditorCommandSource
3423         parameter to the enabled functions so that they can have parallel logic to the execute functions.
3424
3425         * editing/EditorCommand.cpp:
3426         added EditorCommandSource parameter to isEnabled function prototype
3427         (WebCore::enabled):
3428         added unused EditorCommandSource parameter to these isEnabled functions:
3429         (WebCore::enabledAnySelection):
3430         (WebCore::enabledAnySelectionAndMark):
3431         (WebCore::enableCaretInEditableText):
3432         (WebCore::enabledCopy):
3433         (WebCore::enabledCut):
3434
3435         (WebCore::enabledDelete):
3436         new function, uses logic previously used by Delete command for DOM sources; uses logic in enabledCut
3437         for menu source
3438
3439         added unused EditorCommandSource parameter to these isEnabled functions:
3440         (WebCore::enabledInEditableText):
3441         (WebCore::enabledInRichlyEditableText):
3442         (WebCore::enabledPaste):
3443         (WebCore::enabledRangeInEditableText):
3444         (WebCore::enabledRangeInRichlyEditableText):
3445         (WebCore::enabledRedo):
3446         (WebCore::enabledUndo):
3447         
3448         (WebCore::CommandEntry::):
3449         wire up new enabledDelete function as delete function for Delete command
3450         
3451         (WebCore::Editor::Command::isEnabled):
3452         pass EditorCommandSource parameter to isEnabled function
3453
3454 2008-01-08  Adam Roben  <aroben@apple.com>
3455
3456         Visual C++ Express build fix
3457
3458         * WebCore.vcproj/QTMovieWin.vcproj: Explicitly link against user32.lib
3459         and advapi32.lib. VS implicitly links against these, VC++ Express
3460         doesn't.
3461
3462 2008-01-08  Dan Bernstein  <mitz@apple.com>
3463
3464         - add bug number
3465
3466         * platform/graphics/mac/FontCustomPlatformData.cpp:
3467         (WebCore::createFontCustomPlatformData):
3468
3469 2008-01-08  Dan Bernstein  <mitz@apple.com>
3470
3471         Try to fix the Qt build.
3472
3473         * WebCore.pro:
3474
3475 2008-01-08  Nikolas Zimmermann  <zimmermann@kde.org>
3476
3477         Not reviewed. Try to fix Qt builds after Timothy's inspector changes.
3478
3479         * page/inspector/WebKit.qrc:
3480
3481 2008-01-08  Maciej Stachowiak  <mjs@apple.com>
3482
3483         Reviewed by Mark.
3484
3485         - remove duplicate definition of getElementById from HTMLDocument IDL (and ObjC bindings)
3486
3487         * bindings/objc/PublicDOMInterfaces.h:
3488         * html/HTMLDocument.idl:
3489
3490 2008-01-08  David D. Kilzer  <ddkilzer@webkit.org>
3491
3492         Renamed CharacterData::str to m_str to match coding style
3493
3494         Rubber-stamped by Adam.
3495
3496         No test cases added since there is no change in behavior.
3497
3498         * dom/CDATASection.cpp:
3499         * dom/CharacterData.cpp:
3500         (WebCore::CharacterData::CharacterData):
3501         (WebCore::CharacterData::setData):
3502         (WebCore::CharacterData::substringData):
3503         (WebCore::CharacterData::appendData):
3504         (WebCore::CharacterData::insertData):
3505         (WebCore::CharacterData::deleteData):
3506         (WebCore::CharacterData::replaceData):
3507         (WebCore::CharacterData::nodeValue):
3508         (WebCore::CharacterData::containsOnlyWhitespace):
3509         (WebCore::CharacterData::dispatchModifiedEvent):
3510         (WebCore::CharacterData::checkCharDataOperation):
3511         (WebCore::CharacterData::dump):
3512         * dom/CharacterData.h:
3513         * dom/Comment.cpp:
3514         * dom/Text.cpp:
3515         (WebCore::Text::splitText):
3516         (WebCore::Text::createRenderer):
3517         (WebCore::Text::recalcStyle):
3518
3519 2008-01-08  Oliver Hunt  <oliver@apple.com>
3520
3521         Set the ENABLE_SVG_FONTS flag in Windows build, now builds, 
3522         I'm not sure if it just caused the right files to regenerate,
3523         or if there's some configuration weirdness in the non-SVG-fonts
3524         build. 
3525
3526         * WebCore.vcproj/WebCore.vcproj:
3527
3528 2008-01-07  Maciej Stachowiak  <mjs@apple.com>
3529
3530         Reviewed by Brady.
3531
3532         - fixed <rdar://problem/5644300> Back/Forward Cache should not include pages with databases
3533         
3534         Track whether a document has ever opened a database; if so, exclude it from b/f caching (for now)
3535         
3536         * dom/Document.cpp:
3537         (WebCore::Document::Document):
3538         * dom/Document.h:
3539         (WebCore::Document::setHasOpenDatabases):
3540         (WebCore::Document::hasOpenDatabases):
3541         * loader/FrameLoader.cpp:
3542         (WebCore::FrameLoader::canCachePage):
3543         * storage/Database.cpp:
3544         (WebCore::Database::openDatabase):
3545
3546 2008-01-07  Dan Bernstein  <mitz@apple.com>
3547
3548         Reviewed by Oliver Hunt.
3549
3550         - fix leaks seen on the build bot
3551
3552         * css/CSSFontSelector.cpp:
3553         (WebCore::CSSFontSelector::addFontFaceRule): Avoid creating a
3554         CSSFontFaceSource for SVG font-face elements going into an
3555         SVGCSSFontFace because it just leaks them. Avoid adding SVG font-
3556         face elements to a CSSFontFace because it will not work as expected.
3557
3558 2008-01-07  Mark Rowe  <mrowe@apple.com>
3559
3560         Tiger build fix.
3561
3562         * platform/graphics/mac/FontCustomPlatformData.cpp:
3563         (WebCore::createFontCustomPlatformData): Only include this code on Leopard.
3564         It's not needed on Tiger, and breaks the build.
3565
3566 2008-01-07  Antti Koivisto  <antti@apple.com>
3567
3568         Reviewed by Steve.
3569
3570         Re-enable media support in Windows build.
3571
3572         * WebCore.vcproj/QTMovieWin.vcproj:
3573         * WebCore.vcproj/WebCore.vcproj:
3574         * WebCore.vcproj/build-generated-files.sh:
3575
3576 2008-01-07  Steve Falkenburg  <sfalken@apple.com>
3577
3578         Add version resource to QTMovieWin.dll
3579         
3580         Reviewed by Adam.
3581
3582         * WebCore.vcproj/PRODUCTVERSION: Copied from ../WebKit/win/WebKit.vcproj/PRODUCTVERSION.
3583         * WebCore.vcproj/QTMovieWin.rc: Added.
3584         * WebCore.vcproj/QTMovieWin.vcproj:
3585         * WebCore.vcproj/VERSION: Copied from ../WebKit/win/WebKit.vcproj/VERSION.
3586         * WebCore.vcproj/auto-version.sh: Copied from ../WebKit/win/WebKit.vcproj/auto-version.sh.
3587
3588 2008-01-07  Dan Bernstein  <mitz@apple.com>
3589
3590         Build fix.
3591
3592         * platform/graphics/qt/FontCustomPlatformData.cpp:
3593         (WebCore::FontCustomPlatformData::~FontCustomPlatformData): Added.
3594         Calls QFontDatabase::removeApplicationFont().
3595         * platform/graphics/qt/FontCustomPlatformData.h:
3596         * platform/graphics/qt/GlyphPageTreeNodeQt.cpp:
3597         (WebCore::GlyphPageTreeNode::pruneTreeCustomFontData): Removed the
3598         implementation because Qt does not use the WebCore glyph cache.
3599
3600 2008-01-07  Dan Bernstein  <mitz@apple.com>
3601
3602         Reviewed by Oliver Hunt.
3603
3604         - fix an assertion failure in svg/W3C-SVG-1.1/fonts-elem-03-b.svg on
3605           Tiger and multiple SVG layout test failures on Leopard.
3606
3607         * css/CSSSegmentedFontFace.cpp:
3608         (WebCore::CSSSegmentedFontFace::getFontData): Avoid returning an
3609         empty SegmentedFontData.
3610         * platform/graphics/mac/FontCustomPlatformData.cpp:
3611         (WebCore::createFontCustomPlatformData): Avoid creating a font that
3612         contains no glyphs. On Leopard, ATS might create such a font given
3613         data in an unsupported format (such as SVG).
3614
3615 2008-01-07  Steve Falkenburg  <sfalken@apple.com>
3616
3617         Build fix.
3618
3619         * WebCore.vcproj/WebCore.sln:
3620         * WebCore.vcproj/WebCore.submit.sln:
3621
3622 2008-01-07  Oliver Hunt  <oliver@apple.com>
3623
3624       &n