0dca724fa50725fd280e7795b8d1189d4ec40198
[WebKit-https.git] / WebCore / ChangeLog
1 2007-12-04  Anders Carlsson  <andersca@apple.com>
2
3         Reviewed by Sam.
4
5         Add isSafeScript(const JSGlobalObject*) so we won't get the JSGlobalObject
6         implementation, which always returns true(!).
7         
8         * bindings/js/kjs_window.cpp:
9         (KJS::Window::isSafeScript):
10         Make the static isSafeScript method take two JSGlobalObjects.
11         
12         * bindings/js/kjs_window.h:
13         (KJS::Window::isSafeScript):
14         Implement isSafeScript and have it call the static method.
15
16 2007-11-27  Adam Roben  <aroben@apple.com>
17
18         Make the implementation of Frame::setNeedsReapplyStyles cross-platform
19
20         Reviewed by Hyatt.
21
22         No change in functionality.
23
24         * page/Frame.cpp:
25         (WebCore::Frame::setNeedsReapplyStyles): Added. Invalidates the
26         FrameView so that FrameView::layout will be called, which ends up
27         calling reapplyStyles.
28         (WebCore::Frame::needsReapplyStyles): Added.
29         (WebCore::Frame::reapplyStyles): Renamed from reparseConfiguration.
30         (WebCore::FramePrivate::FramePrivate):
31         * page/Frame.h:
32         * page/FramePrivate.h: Added new boolean member.
33         * page/FrameView.cpp:
34         (WebCore::FrameView::layout): Call Frame::reapplyStyles if needed.
35         (WebCore::FrameView::needsLayout): Say that we need layout if the
36         Frame needs styles reapplied.
37         * page/mac/WebCoreFrameBridge.h: Removed setNeedsReapplyStyles.
38         * page/mac/WebCoreFrameBridge.mm:
39         (-[WebCoreFrameBridge reapplyStylesForDeviceType:]): Updated for
40         rename.
41
42         * bridge/win/FrameWin.cpp: Removed Frame::setNeedsReapplyStyles.
43         * page/gtk/FrameGtk.cpp: Ditto.
44         * page/mac/FrameMac.mm: Ditto.
45         * page/qt/FrameQt.cpp: Ditto.
46         * platform/wx/TemporaryLinkStubs.cpp: Ditto.
47
48 2007-12-04  Antti Koivisto  <antti@apple.com>
49
50         Reviewed by Adele.
51
52         Pass intrinsic size to the base class.
53
54         * rendering/RenderMedia.cpp:
55         (WebCore::RenderMedia::RenderMedia):
56
57 2007-12-04  Adele Peterson  <adele@apple.com>
58
59         Reviewed by Darin.
60
61         Fix for <rdar://problem/5578209> REGRESSION: Crash in WebCore::DeprecatedValueListImpl::Private::copyList when going back on zoomerang.com/survey
62
63         * loader/FrameLoader.cpp: (WebCore::FrameLoader::scheduleHistoryNavigation):
64           When the new url is exactly the same as the old url, don't treat it like a fragment navigation, since its going to cause a reload.
65
66 2007-12-04  Darin Adler  <darin@apple.com>
67
68         Reviewed by Kevin Decker.
69
70         - added an assertion for a situation that leads to a Safari assertion:
71           a commit that is not followed by a load completion
72
73         - removed some unneeded FrameLoader stuff -- maybe some day we'll get this
74           class cut down to size
75
76         * loader/FrameLoader.cpp:
77         (WebCore::FrameLoader::FrameLoader): Added boolean for assertion.
78         (WebCore::FrameLoader::checkLoadCompleteForThisFrame): Added code to assert
79         that we already sent a commit before sending a complete.
80         (WebCore::FrameLoader::continueFragmentScrollAfterNavigationPolicy): Call
81         client directly instead of indirecting through a function.
82         (WebCore::FrameLoader::loadItem): Ditto.
83         (WebCore::FrameLoader::goToItem): Ditto.
84         (WebCore::FrameLoader::addHistoryForCurrentLocation): Get the private browsing
85         state from Settings instead of FrameLoaderClient. Also call client directly
86         instead of indirecting through a function.
87         (WebCore::FrameLoader::updateHistoryForReload): Call client directly instead
88         of indirecting through a function.
89         (WebCore::FrameLoader::dispatchDidCommitLoad): Added code to assert
90         that we did not yet send a commit and set the flag that will be used to check
91         that we don't do this twice in a row without an intervening completion call.
92
93         * loader/FrameLoader.h: Added a boolean for the assertion. Removed six
94         now-unneeded functions.
95
96         * loader/FrameLoaderClient.h: Removed now-unneeded privateBrowsingEnabled function.
97
98         * loader/ResourceLoader.cpp: (WebCore::ResourceLoader::willCacheResponse): Get
99         the private browsing state from Settings instead of FrameLoaderClient.
100
101         * svg/graphics/SVGImageEmptyClients.h: Removed obsolete privateBrowsingEnabled.
102
103 2007-12-03  Antti Koivisto  <antti@apple.com>
104
105         Reviewed by Adele.
106         
107         Fix <rdar://problem/5624802> 
108         Controller displays outside of <video> element when width and height aren't specified 
109
110         - Explicitly adjust size of the controls tree root.
111         - Switch RenderMedia base class back to RenderReplaced. It is easier to manage the shadow tree
112           by hand. This also allows better code sharing with other replaced element classes.
113         - Move duplicated layout and painting code from subclasses up to RenderReplaced.
114
115         Test: media/video-controls-rendering.html
116
117         * rendering/RenderHTMLCanvas.cpp:
118         (WebCore::RenderHTMLCanvas::paintReplaced):
119         * rendering/RenderHTMLCanvas.h:
120             Share code.
121         * rendering/RenderImage.cpp:
122         (WebCore::RenderImage::paintReplaced):
123         (WebCore::RenderImage::minimumReplacedHeight):
124         * rendering/RenderImage.h:
125             Share code.
126         * rendering/RenderMedia.cpp:
127         (WebCore::RenderMediaControlShadowRoot::RenderMediaControlShadowRoot):
128         (WebCore::RenderMediaControlShadowRoot::setParent):
129             Add a subclass just to get through encapsulation to use setParent().
130         (WebCore::MediaControlShadowRootElement::MediaControlShadowRootElement):
131             Move initialization to the constructor.
132         (WebCore::RenderMedia::RenderMedia):
133         (WebCore::RenderMedia::~RenderMedia):
134         (WebCore::RenderMedia::layout):
135             Resize and layout the controller root by hand.
136         (WebCore::RenderMedia::firstChild):
137         (WebCore::RenderMedia::lastChild):
138         (WebCore::RenderMedia::removeChild):
139             Support one child renderer for controls.
140         (WebCore::RenderMedia::createControlsShadowRoot):
141         * rendering/RenderMedia.h:
142         (WebCore::RenderMedia::isMedia):
143             Switch base class to RenderReplaced, delete the now unnecessary stuff.
144         * rendering/RenderReplaced.cpp:
145         (WebCore::RenderReplaced::layout):
146         (WebCore::RenderReplaced::paint):
147         * rendering/RenderReplaced.h:
148         (WebCore::RenderReplaced::minimumReplacedHeight):
149         (WebCore::RenderReplaced::paintReplaced):
150             Share code.
151         * rendering/RenderVideo.cpp:
152         (WebCore::RenderVideo::videoSizeChanged):
153             Simplify, just request relayout.
154         (WebCore::RenderVideo::paintReplaced):
155         (WebCore::RenderVideo::layout):
156         * rendering/RenderVideo.h:
157             Share code.
158
159 2007-12-04  Michael Natterer  <mitch@imendio.com>
160
161         Reviewed by Alp Toker.
162
163         * WebCore.pro: fix build of webkit-marshal by building the
164         functions into a separate .cpp file instead of including them in
165         the header. This way we can use the marshallers from more than one
166         file without using bad hacks.
167
168         Add the generated sources directory to DEPENDPATH.
169
170 2007-12-04  Pierre-Luc Beaudoin  <pierre-luc.beaudoin@collabora.co.uk>
171
172         Reviewed by Alp Toker.
173
174         http://bugs.webkit.org/show_bug.cgi?id=16145
175         [gtk] Implement media support in GTK backend
176
177         This implements the media tags of HTML5 on the GTK+ port based on the 
178         Mac port. Media tests pass although some tests required a small modifications: 
179         As per the HTML5 spec, the loading of the clip should start only after 
180         all script are done.  But in the case of the tests, the loading starts 
181         before some callbacks get registered.  This has been discussed with 
182         Antti Koivisto, and the tests should be updated.
183
184         There is only one known issue: one time in 10 tries, loading a buffered 
185         clip will never end buffering.  The buffering will stall at 97% for no 
186         apparent reasons.  Reloading the page usually works around the problem.
187         On the GStreamer side, some codecs don't return correct values, therefore
188         they make the tests fail.  For instance H.264 will make the video-end 
189         test fail.  This should be fixed in GStreamer 0.10.15.
190
191         This version displays video in a pop up window.  A place holder is drawn
192         on the page where the video should appear.
193
194         By default, it is turned off in WebCore.pro until GStreamer/X
195         detection issues are sorted out.
196
197         * WebCore.pro:
198         Disable video for now
199         * platform/Logging.cpp:
200         (WebCore::):
201         * platform/Logging.h:
202         Added a logging level for Media stuff
203         * platform/graphics/Movie.cpp:
204         * platform/graphics/gtk/MoviePrivateGStreamer.cpp: Added.
205         (WebCore::moviePrivateErrorCallback):
206         (WebCore::moviePrivateEOSCallback):
207         (WebCore::moviePrivateStateCallback):
208         (WebCore::moviePrivateBufferingCallback):
209         (WebCore::moviePrivateWindowIDCallback):
210         (WebCore::MoviePrivate::MoviePrivate):
211         (WebCore::MoviePrivate::~MoviePrivate):
212         (WebCore::MoviePrivate::load):
213         (WebCore::MoviePrivate::play):
214         (WebCore::MoviePrivate::pause):
215         (WebCore::MoviePrivate::duration):
216         (WebCore::MoviePrivate::currentTime):
217         (WebCore::MoviePrivate::seek):
218         (WebCore::MoviePrivate::setEndTime):
219         (WebCore::MoviePrivate::addCuePoint):
220         (WebCore::MoviePrivate::removeCuePoint):
221         (WebCore::MoviePrivate::clearCuePoints):
222         (WebCore::MoviePrivate::startCuePointTimerIfNeeded):
223         (WebCore::MoviePrivate::cancelSeek):
224         (WebCore::MoviePrivate::cuePointTimerFired):
225         (WebCore::MoviePrivate::paused):
226         (WebCore::MoviePrivate::seeking):
227         (WebCore::MoviePrivate::naturalSize):
228         (WebCore::MoviePrivate::hasVideo):
229         (WebCore::MoviePrivate::setVolume):
230         (WebCore::MoviePrivate::setMuted):
231         (WebCore::MoviePrivate::setRate):
232         (WebCore::MoviePrivate::dataRate):
233         (WebCore::MoviePrivate::networkState):
234         (WebCore::MoviePrivate::readyState):
235         (WebCore::MoviePrivate::maxTimeBuffered):
236         (WebCore::MoviePrivate::maxTimeSeekable):
237         (WebCore::MoviePrivate::maxTimeLoaded):
238         (WebCore::MoviePrivate::bytesLoaded):
239         (WebCore::MoviePrivate::totalBytesKnown):
240         (WebCore::MoviePrivate::totalBytes):
241         (WebCore::MoviePrivate::cancelLoad):
242         (WebCore::MoviePrivate::updateStates):
243         (WebCore::MoviePrivate::loadStateChanged):
244         (WebCore::MoviePrivate::rateChanged):
245         (WebCore::MoviePrivate::sizeChanged):
246         (WebCore::MoviePrivate::timeChanged):
247         (WebCore::MoviePrivate::volumeChanged):
248         (WebCore::MoviePrivate::didEnd):
249         (WebCore::MoviePrivate::loadingFailed):
250         (WebCore::MoviePrivate::setRect):
251         (WebCore::MoviePrivate::setVisible):
252         (WebCore::MoviePrivate::paint):
253         (WebCore::MoviePrivate::getSupportedTypes):
254         (WebCore::MoviePrivate::createGSTPlayBin):
255         * platform/graphics/gtk/MoviePrivateGStreamer.h: Added.
256
257 2007-12-04  Holger Hans Peter Freyther <holger.freyther@trolltech.com>
258
259         Reviewed by Simon.
260
261         * Implement the InspectorClient for the Qt port
262         * It does not support highlighting of nodes yet
263         * Use QRC to open the internal page. The important thing is the
264         '/' in the URL to make WebCore::Document::completeURL behave the
265         way we want.
266         * To make the InspectorClient work we will have to mark qrc as secure.
267
268         * WebCore.pro:
269         * loader/FrameLoader.cpp:
270         (WebCore::localSchemes):
271         * page/inspector/WebKit.qrc: Added.
272
273 2007-12-04  Alp Toker  <alp@atoker.com>
274
275         Rubber stamped by Mark Rowe.
276
277         Remove two unused variables to silence warnings.
278
279         * html/CanvasRenderingContext2D.cpp:
280         (WebCore::CanvasRenderingContext2D::fill):
281         (WebCore::CanvasRenderingContext2D::stroke):
282
283 2007-12-03  Dan Bernstein  <mitz@apple.com>
284
285         Reviewed by Darin Adler.
286
287         - fix <rdar://problem/5134044> fast/frames/frame-src-attribute.html fails on Windows
288
289         * platform/win/ScrollViewWin.cpp:
290         (WebCore::ScrollView::visibleWidth): Do not return negative values.
291         (WebCore::ScrollView::visibleHeight): Ditto.
292
293 2007-12-03  Dan Bernstein  <mitz@apple.com>
294
295         Reviewed by Dave Hyatt.
296
297         - fix <rdar://problem/5346452> Resize event doesn't fire on body element inside a frame
298
299         Test: fast/events/resize-subframe.html
300
301         * page/FrameView.cpp:
302         (WebCore::FrameViewPrivate::FrameViewPrivate): Added a timer used when
303         deferring tasks that need to be done after layout.
304         (WebCore::FrameViewPrivate::reset):
305         (WebCore::FrameView::~FrameView):
306         (WebCore::FrameView::layout): Moved the updating of widget positions,
307         loading plug-ins and sending events queued up during layout into
308         performPostLayoutTasks(). performPostLayoutTasks() is called after
309         layout unless the layout was triggered by a previous layout's post-
310         layout tasks. In the latter case, performPostLayoutTasks() is scheduled
311         to run later.
312         (WebCore::FrameView::performPostLayoutTasks): Performs work that needs
313         to be done after layout but which can result in arbitrary code
314         execution and therefore may re-invalidate the layout. This includes
315         updating widget positions, loading plug-ins, and dispatching layout-
316         related DOM events (scroll, overflow and resize).
317         (WebCore::FrameView::postLayoutTimerFired):
318         (WebCore::FrameView::dispatchScheduledEvents):
319         * page/FrameView.h:
320         * page/mac/WebCoreFrameBridge.h:
321         * page/mac/WebCoreFrameBridge.mm: Removed -sendResizeEvent since this
322         is handled by FrameView now.
323
324 2007-12-03  Rob Buis  <buis@kde.org>
325
326         Reviewed by Darin.
327
328         http://bugs.webkit.org/show_bug.cgi?id=15767
329         Text decorations do not respect "visibility" property
330
331         Only paint decorations if visibility is "visible".
332
333         * rendering/SVGInlineTextBox.cpp:
334         (WebCore::SVGInlineTextBox::paintDecoration):
335
336 2007-12-03  Steve Falkenburg  <sfalken@apple.com>
337
338         Fix build.
339
340         * WebCore.vcproj/WebCore.vcproj:
341
342 2007-12-03  Nikolas Zimmermann  <zimmermann@kde.org>
343
344         Reviewed by David.
345
346         Fixes: http://bugs.webkit.org/show_bug.cgi?id=15645
347         Don't allow selectors to interfere with the SVG shadow tree (<use> internal non-exposed tree).
348
349         * css/CSSStyleSelector.cpp:
350         (WebCore::CSSStyleSelector::checkSelector):
351
352 2007-12-03  Dan Bernstein  <mitz@apple.com>
353
354         Reviewed by Adam Roben.
355
356         - fix <rdar://problem/5538651> REGRESSSION: domfuzz: null deref in WebCore::Document::canReplaceChild
357
358         Test: fast/dom/Document/replaceChild-null-oldChild.html
359
360         * dom/Document.cpp:
361         (WebCore::Document::canReplaceChild):
362
363 2007-12-03  Holger Hans Peter Freyther  <holger.freyther@trolltech.com>
364
365         Reviewed by Simon.
366
367         * Avoid crashes by making sure everything is layouted before
368         we start painting. This avoids a crash in Widget::invalidateRect
369         because QPainter::begin would fail
370         * The QWebFrame::layout() methods and calls are left untouched because
371         this would be an API decision.
372         
373
374         WARNING: NO TEST CASES ADDED OR CHANGED
375
376         * page/FrameView.cpp:
377         (WebCore::FrameView::updateControlTints):
378         * page/FrameView.h:
379         * platform/ScrollView.h:
380         * platform/qt/ScrollViewQt.cpp:
381         (WebCore::ScrollView::children):
382
383 2007-12-03  Holger Hans Peter Freyther  <holger.freyther@trolltech.com>
384
385         Reviewed by Simon.
386
387         * Implement GraphicsContext::fillRoundedRect similiar to the
388         CoreGraphics implementation only addPath is not called this
389         seems to be only needed for CoreGraphics.
390         
391
392         WARNING: NO TEST CASES ADDED OR CHANGED
393
394         * platform/graphics/qt/GraphicsContextQt.cpp:
395         (WebCore::GraphicsContext::fillRoundedRect):
396
397 2007-12-03  Holger Hans Peter Freyther  <holger.freyther@trolltech.com>
398
399         Reviewed by Simon.
400
401         * Coding Style fixes
402         
403
404         WARNING: NO TEST CASES ADDED OR CHANGED
405
406         * platform/qt/ScrollViewQt.cpp:
407         (WebCore::ScrollView::addChild):
408         (WebCore::ScrollView::removeChild):
409
410 2007-12-03  Alp Toker  <alp@atoker.com>
411
412         Reviewed by Mark Rowe.
413
414         Don't delete the decoder if it's already been created. The one we have
415         is fine.
416
417         Cairo image cleanups. Nothing substantial.
418
419         Notify ImageObservers where appropriate.
420
421         * platform/graphics/cairo/ImageCairo.cpp:
422         (WebCore::BitmapImage::draw):
423         (WebCore::Image::drawPattern):
424         * platform/graphics/cairo/ImageSourceCairo.cpp:
425         (WebCore::ImageSource::setData):
426         * platform/graphics/gtk/ImageGtk.cpp:
427
428 2007-12-03  Simon Hausmann  <hausmann@webkit.org>
429
430         Reviewed by Lars.
431
432         Fixed crash when rendering form elements with Qt 4.4
433
434         QPainter::device() is not guaranteed to return a QWidget, so do the safe "cast" with the
435         help of QPaintDevice::devType().
436         Also fall back to the QApplication::style() if we don't have a widget.
437
438         * platform/qt/RenderThemeQt.cpp:
439         (WebCore::RenderThemeQt::paintButton):
440         (WebCore::RenderThemeQt::paintTextField):
441         (WebCore::RenderThemeQt::paintMenuList):
442         (WebCore::RenderThemeQt::getStylePainterAndWidgetFromPaintInfo):
443
444 2007-12-02  Holger Hans Peter Freyther  <holger.freyther@trolltech.com>
445
446         Reviewed by Sam Weinig.
447
448         * Add FrameLoader::shouldTreatSchemeAsLocal which is similar to
449         shouldTreatURLAsLocal.
450         * Make use of FrameLoader::shouldTreatSchemeAsLocal in SecurityOrigin
451         and do not hardcode "file". This is needed for the WebKit/qt port to make
452         the Web Inspector work as it using the qrc protocol instead of file.
453
454
455         * loader/FrameLoader.cpp:
456         (WebCore::FrameLoader::shouldTreatSchemeAsLocal):
457         * loader/FrameLoader.h:
458         * platform/SecurityOrigin.cpp:
459         (WebCore::SecurityOrigin::isSecureTransitionTo):
460
461 2007-12-02  Holger Hans Peter Freyther  <holger.freyther@trolltech.com>
462
463         Rubber stamped by Sam Weinig.
464
465         Only add applewebdata to the localSchemes when building for the
466         mac. This is in preparation of adding qrc for the Qt port there
467         as well and http://bugs.webkit.org/show_bug.cgi?id=15938.
468
469         According to Anders applewebdata is not used on the win port.
470
471         * loader/FrameLoader.cpp:
472         (WebCore::localSchemes):
473
474 2007-12-02  Holger Hans Peter Freyther  <holger.freyther@trolltech.com>
475
476         Rubber stamped by Sam Weinig.
477
478         Fix a typo. It is contains and not containts
479
480         * loader/FrameLoader.cpp:
481
482 2007-12-03  Alp Toker  <alp@atoker.com>
483
484         Add another missing DEPENDPATH.
485
486         Noticed when fixing the build.
487
488         * WebCore.pro:
489
490 2007-12-03  Adam Roben  <aroben@apple.com>
491
492         Speculative Windows build fix
493
494         * plugins/win/PluginViewWin.cpp:
495         (WebCore::getString):
496
497 2007-12-03  Geoffrey Garen  <ggaren@apple.com>
498
499         Build fix: added symbols to the right .exp file.
500
501         * WebCore.base.exp:
502
503 2007-12-02  Geoffrey Garen  <ggaren@apple.com>
504
505         Reviewed by Eric Seidel.
506
507         Updated to match the JavaScriptCore change to move virtual methods from
508         Interpreter to JSGlobalObject.
509         
510         Moved virtual ScriptInterpreter functions to Window.
511
512 2007-12-02  Darin Adler  <darin@apple.com>
513
514         Reviewed by Mitz.
515
516         - fix <rdar://problem/5601995> Hang/crash on http://ebay-uk.custhelp.com/
517
518         There were two problems here:
519
520             1) Incorrect HTMLCollection behavior led to us trying to insert a
521                new row inside an existing row instead of next to it. The fix for
522                this is to make HTMLCollection work better for table-related
523                collections.
524
525             2) HTMLTableRowElement::insertCell would return a bad pointer if
526                the insertion failed. The code should have failed, but not crashed,
527                so it's worth fixing that too.
528
529         While fixing the HTMLCollection issues, I did some clean-up of that
530         class and its derived classes.
531
532         Test: fast/dom/HTMLTableElement/rows.html
533         Test: fast/dom/HTMLTableElement/tBodies.html
534         Test: fast/dom/HTMLTableRowElement/cells.html
535         Test: fast/dom/HTMLTableRowElement/insertCell.html
536         Test: fast/dom/HTMLTableSectionElement/rows.html
537
538         * bindings/js/JSHTMLCollectionCustom.cpp:
539         (WebCore::toJS): Updated because collectionType() was renamed to type().
540
541         * html/HTMLCollection.cpp:
542         (WebCore::HTMLCollection::HTMLCollection): Updated for data member name
543         changes. Also added a protected constructor for use by derived classes
544         that pass in a CollectionInfo.
545         (WebCore::HTMLCollection::CollectionInfo::copyCacheMap): Moved out of
546         the header.
547         (WebCore::isTableSection): Added.
548         (WebCore::HTMLCollection::itemAfter): Renamed from traverseNextItem,
549         because the old name was grammatically incorrect and thus a bit confusing.
550         Changed to operate on Element* instead of Node*, and use 0 to start
551         rather than passing in the base node (required since the base node can be
552         a document, which is not an element). Generalized the code that made
553         NodeChildren not descend into deeper descendants so it can be used for
554         TRCells, TSectionRows, TableTBodies, and TableRows. Reformatted the
555         switch statement and got rid of the "found" boolean since we can just
556         return when we find something. Got rid of the default case, and instead
557         listed all the enum values. Also changed to use a for loop for clarity.
558         (WebCore::HTMLCollection::calcLength): Updated for itemAfter changes.
559         (WebCore::HTMLCollection::item): Ditto.
560         (WebCore::HTMLCollection::nextItem): Ditto.
561         (WebCore::HTMLCollection::checkForNameMatch): Updated to take an Element
562         instead of a Node pointer.
563         (WebCore::HTMLCollection::namedItem): More of the same.
564         (WebCore::HTMLCollection::updateNameCache): Ditto.
565         (WebCore::HTMLCollection::namedItems): Ditto.
566         (WebCore::HTMLCollection::nextNamedItem): Ditto.
567         (WebCore::HTMLCollection::tags): Ditto.
568
569         * html/HTMLCollection.h: Added a type FormElements, so that the
570         HTMLFormCollection would not have a type of DocImages, which is what
571         it previously did. Changed the base parameter to be a PassRefPtr to
572         make it clear we take ownership of it. Added a comment explaining
573         why we should change the name CollectionInfo. Made a lot more members
574         private instead of protected. Renamed traverseNextItem to itemAfter.
575         Changed most functions to take Element* instead of Node*.
576
577         * html/HTMLFormCollection.cpp:
578         (WebCore::HTMLFormCollection::formCollectionInfo): Added.
579         (WebCore::HTMLFormCollection::HTMLFormCollection): Updated to pass
580         collection info into the base class.
581         (WebCore::HTMLFormCollection::calcLength): Updated to use base() so we
582         don't need to get at m_base directly.
583         (WebCore::HTMLFormCollection::item): Same, but for info().
584         (WebCore::HTMLFormCollection::getNamedItem): Removed unused first
585         argument.
586         (WebCore::HTMLFormCollection::getNamedFormItem): Got rid of unneeded
587         checks that the base is still an element and still a form, since that's
588         guaranteed.
589         (WebCore::HTMLFormCollection::nextItem): Use info().
590         (WebCore::HTMLFormCollection::nextNamedItemInternal): Node instead of
591         Element, some name changes.
592         (WebCore::HTMLFormCollection::namedItem): Update for changes elsewhere.
593         (WebCore::HTMLFormCollection::nextNamedItem): Ditto, also rewrote loop
594         to be much simpler.
595         (WebCore::HTMLFormCollection::updateNameCache): More of the same.
596
597         * html/HTMLFormCollection.h: Changed constructor to take an
598         HTMLFormElement, using a PassRefPtr to communicate transfer of
599         ownership. Made everything private instead of protected. Removed
600         unneeded override of firstItem. Made getNamedItem and
601         nextNamedItemInternal non-virtual. Removed unused first argument of
602         getNamedItem. Added declaration of formCollectionInfo.
603
604         * html/HTMLNameCollection.cpp:
605         (WebCore::HTMLNameCollection::HTMLNameCollection): Updated to pass
606         collection info into the base class.
607         (WebCore::HTMLNameCollection::itemAfter): Reformatted a bit and
608         changed into a for loop.
609
610         * html/HTMLNameCollection.h: Updated for name changes. Made function
611         private instead of public. Used PassRefPtr in constructor.
612
613         * html/HTMLOptionsCollection.cpp:
614         (WebCore::HTMLOptionsCollection::HTMLOptionsCollection): Updated to
615         pass collection info into the base class.
616         (WebCore::HTMLOptionsCollection::add): Updated for public/private
617         changes in the base class.
618         (WebCore::HTMLOptionsCollection::selectedIndex): Ditto.
619         (WebCore::HTMLOptionsCollection::setSelectedIndex): Ditto.
620         (WebCore::HTMLOptionsCollection::setLength): Ditto.
621
622         * html/HTMLOptionsCollection.h: Changed constructor parameter to be a
623         PassRefPtr.
624
625         * html/HTMLTableRowElement.cpp:
626         (WebCore::HTMLTableRowElement::insertCell): Changed code to use RefPtr
627         and PassRefPtr since this creates a new object. This alone fixed the
628         crash. Also cleaned up logic a bit to be more readable.
629
630         * html/HTMLTableRowElement.h: Changed insertCell to return a PassRefPtr.
631         Also reordered functions a bit to make things a little more logical and
632         removed the unused ncols data member.
633
634         * html/HTMLTableSectionElement.cpp:
635         (WebCore::HTMLTableSectionElement::rows): Pass TSectionRows, not
636         TableRows. This mistake was harmless before because TableRows and
637         TSectionRows were handled identically inside HTMLCollection, but that is
638         no longer the case with this fix.
639
640         * bindings/scripts/CodeGeneratorJS.pm: Add an include to cope with the
641         fact that HTMLOptionsCollection no longer includes HTMLOptionElement.
642         I don't think this really should be a special case -- might be worth
643         returning later to see if this can be optimized.
644
645 2007-12-02  Nikolas Zimmermann  <zimmermann@kde.org>
646
647         Reviewed by Adam.
648
649         RenderSVGViewportContainer sets wrong width/height.
650         Share code with RenderSVGContainer in a central calcBounds() function.
651
652         Fixes:
653         - svg/custom/use-css-events.svg (http://bugs.webkit.org/show_bug.cgi?id=15403)
654         - svg/custom/deep-dynamic-updates.svg
655         - svg/custom/use-clipped-hit.svg
656         - svg/custom/image-clipped-hit.svg
657
658         * rendering/RenderSVGContainer.cpp:
659         (WebCore::RenderSVGContainer::layout):
660         (WebCore::RenderSVGContainer::calcBounds):
661         * rendering/RenderSVGContainer.h:
662         * rendering/RenderSVGViewportContainer.cpp:
663         (WebCore::RenderSVGViewportContainer::layout):
664
665 2007-12-02  Brady Eidson <beidson@apple.com>
666
667         Reviewed by Darin
668
669         databaseChanged notifications were being sent out on the database thread - they need to be on the main thread
670         like all other notifications we send out!
671
672         * platform/SecurityOriginData.cpp:
673         (WebCore::SecurityOriginData::copy): Add a deep copy method, for when an object thread hops
674         * platform/SecurityOriginData.h:
675
676         * storage/DatabaseTracker.cpp:
677         (WebCore::notificationMutex):
678         (WebCore::notificationQueue):
679         (WebCore::DatabaseTracker::scheduleNotifyDatabaseChanged): Add the origin/name pair to a queue
680         (WebCore::DatabaseTracker::scheduleForNotification): Schedule to deliver this queue of notifications
681           on the main thread
682         (WebCore::DatabaseTracker::notifyDatabasesChanged): Deliver all notifications in the queue
683         * storage/DatabaseTracker.h:
684
685         * storage/SQLTransaction.cpp:
686         (WebCore::SQLTransaction::postflightAndCommit): scheduleNotifyDatabaseChanged() instead of "notify now!"
687         (WebCore::SQLTransaction::cleanupAfterTransactionErrorCallback): Ditto
688
689 2007-12-02  Rob Buis  <buis@kde.org>
690
691         Reviewed by Darin.
692
693         http://bugs.webkit.org/show_bug.cgi?id=16002
694         Load SVG (and other) UA StyleSheets dynamically when needed
695
696         Load svg sheet when needed.
697
698         * css/CSSStyleSelector.cpp:
699         (WebCore::screenEval):
700         (WebCore::printEval):
701         (WebCore::CSSStyleSelector::CSSStyleSelector):
702         (WebCore::CSSStyleSelector::loadDefaultStyle):
703         (WebCore::CSSStyleSelector::styleForElement):
704         (WebCore::CSSRuleSet::addRulesFromSheet):
705
706 2007-12-02  Mark Rowe  <mrowe@apple.com>
707
708         Try and fix the Windows build.
709
710         * plugins/win/PluginViewWin.cpp:
711         (WebCore::PluginViewWin::bindingInstance):
712
713 2007-12-02  Nikolas Zimmermann  <zimmermann@kde.org>
714
715         Rubber stamped by Eric.
716
717         Move platform/graphics/svg to graphics/svg as discussed on webkit-dev.
718         Updated all project files.
719
720         * WebCore.pro:
721         * WebCore.vcproj/WebCore.vcproj:
722         * WebCore.xcodeproj/project.pbxproj:
723         * platform/graphics/svg: Removed.
724         * platform/graphics/svg/SVGImage.cpp: Removed.
725         * platform/graphics/svg/SVGImage.h: Removed.
726         * platform/graphics/svg/SVGImageEmptyClients.h: Removed.
727         * platform/graphics/svg/SVGPaintServer.cpp: Removed.
728         * platform/graphics/svg/SVGPaintServer.h: Removed.
729         * platform/graphics/svg/SVGPaintServerGradient.cpp: Removed.
730         * platform/graphics/svg/SVGPaintServerGradient.h: Removed.
731         * platform/graphics/svg/SVGPaintServerLinearGradient.cpp: Removed.
732         * platform/graphics/svg/SVGPaintServerLinearGradient.h: Removed.
733         * platform/graphics/svg/SVGPaintServerPattern.cpp: Removed.
734         * platform/graphics/svg/SVGPaintServerPattern.h: Removed.
735         * platform/graphics/svg/SVGPaintServerRadialGradient.cpp: Removed.
736         * platform/graphics/svg/SVGPaintServerRadialGradient.h: Removed.
737         * platform/graphics/svg/SVGPaintServerSolid.cpp: Removed.
738         * platform/graphics/svg/SVGPaintServerSolid.h: Removed.
739         * platform/graphics/svg/SVGResource.cpp: Removed.
740         * platform/graphics/svg/SVGResource.h: Removed.
741         * platform/graphics/svg/SVGResourceClipper.cpp: Removed.
742         * platform/graphics/svg/SVGResourceClipper.h: Removed.
743         * platform/graphics/svg/SVGResourceFilter.cpp: Removed.
744         * platform/graphics/svg/SVGResourceFilter.h: Removed.
745         * platform/graphics/svg/SVGResourceListener.h: Removed.
746         * platform/graphics/svg/SVGResourceMarker.cpp: Removed.
747         * platform/graphics/svg/SVGResourceMarker.h: Removed.
748         * platform/graphics/svg/SVGResourceMasker.cpp: Removed.
749         * platform/graphics/svg/SVGResourceMasker.h: Removed.
750         * platform/graphics/svg/cairo: Removed.
751         * platform/graphics/svg/cairo/RenderPathCairo.cpp: Removed.
752         * platform/graphics/svg/cairo/SVGPaintServerCairo.cpp: Removed.
753         * platform/graphics/svg/cairo/SVGPaintServerGradientCairo.cpp: Removed.
754         * platform/graphics/svg/cairo/SVGPaintServerPatternCairo.cpp: Removed.
755         * platform/graphics/svg/cairo/SVGPaintServerSolidCairo.cpp: Removed.
756         * platform/graphics/svg/cairo/SVGResourceClipperCairo.cpp: Removed.
757         * platform/graphics/svg/cairo/SVGResourceMaskerCairo.cpp: Removed.
758         * platform/graphics/svg/cg: Removed.
759         * platform/graphics/svg/cg/CgSupport.cpp: Removed.
760         * platform/graphics/svg/cg/CgSupport.h: Removed.
761         * platform/graphics/svg/cg/RenderPathCg.cpp: Removed.
762         * platform/graphics/svg/cg/SVGPaintServerCg.cpp: Removed.
763         * platform/graphics/svg/cg/SVGPaintServerGradientCg.cpp: Removed.
764         * platform/graphics/svg/cg/SVGPaintServerPatternCg.cpp: Removed.
765         * platform/graphics/svg/cg/SVGPaintServerSolidCg.cpp: Removed.
766         * platform/graphics/svg/cg/SVGResourceClipperCg.cpp: Removed.
767         * platform/graphics/svg/cg/SVGResourceFilterCg.cpp: Removed.
768         * platform/graphics/svg/cg/SVGResourceFilterCg.mm: Removed.
769         * platform/graphics/svg/cg/SVGResourceMaskerCg.cpp: Removed.
770         * platform/graphics/svg/cg/SVGResourceMaskerCg.mm: Removed.
771         * platform/graphics/svg/filters: Removed.
772         * platform/graphics/svg/filters/SVGDistantLightSource.h: Removed.
773         * platform/graphics/svg/filters/SVGFEBlend.cpp: Removed.
774         * platform/graphics/svg/filters/SVGFEBlend.h: Removed.
775         * platform/graphics/svg/filters/SVGFEColorMatrix.cpp: Removed.
776         * platform/graphics/svg/filters/SVGFEColorMatrix.h: Removed.
777         * platform/graphics/svg/filters/SVGFEComponentTransfer.cpp: Removed.
778         * platform/graphics/svg/filters/SVGFEComponentTransfer.h: Removed.
779         * platform/graphics/svg/filters/SVGFEComposite.cpp: Removed.
780         * platform/graphics/svg/filters/SVGFEComposite.h: Removed.
781         * platform/graphics/svg/filters/SVGFEConvolveMatrix.cpp: Removed.
782         * platform/graphics/svg/filters/SVGFEConvolveMatrix.h: Removed.
783         * platform/graphics/svg/filters/SVGFEDiffuseLighting.cpp: Removed.
784         * platform/graphics/svg/filters/SVGFEDiffuseLighting.h: Removed.
785         * platform/graphics/svg/filters/SVGFEDisplacementMap.cpp: Removed.
786         * platform/graphics/svg/filters/SVGFEDisplacementMap.h: Removed.
787         * platform/graphics/svg/filters/SVGFEFlood.cpp: Removed.
788         * platform/graphics/svg/filters/SVGFEFlood.h: Removed.
789         * platform/graphics/svg/filters/SVGFEGaussianBlur.cpp: Removed.
790         * platform/graphics/svg/filters/SVGFEGaussianBlur.h: Removed.
791         * platform/graphics/svg/filters/SVGFEImage.cpp: Removed.
792         * platform/graphics/svg/filters/SVGFEImage.h: Removed.
793         * platform/graphics/svg/filters/SVGFEMerge.cpp: Removed.
794         * platform/graphics/svg/filters/SVGFEMerge.h: Removed.
795         * platform/graphics/svg/filters/SVGFEMorphology.cpp: Removed.
796         * platform/graphics/svg/filters/SVGFEMorphology.h: Removed.
797         * platform/graphics/svg/filters/SVGFEOffset.cpp: Removed.
798         * platform/graphics/svg/filters/SVGFEOffset.h: Removed.
799         * platform/graphics/svg/filters/SVGFESpecularLighting.cpp: Removed.
800         * platform/graphics/svg/filters/SVGFESpecularLighting.h: Removed.
801         * platform/graphics/svg/filters/SVGFETile.h: Removed.
802         * platform/graphics/svg/filters/SVGFETurbulence.cpp: Removed.
803         * platform/graphics/svg/filters/SVGFETurbulence.h: Removed.
804         * platform/graphics/svg/filters/SVGFilterEffect.cpp: Removed.
805         * platform/graphics/svg/filters/SVGFilterEffect.h: Removed.
806         * platform/graphics/svg/filters/SVGLightSource.cpp: Removed.
807         * platform/graphics/svg/filters/SVGLightSource.h: Removed.
808         * platform/graphics/svg/filters/SVGPointLightSource.h: Removed.
809         * platform/graphics/svg/filters/SVGSpotLightSource.h: Removed.
810         * platform/graphics/svg/filters/cg: Removed.
811         * platform/graphics/svg/filters/cg/SVGFEBlendCg.mm: Removed.
812         * platform/graphics/svg/filters/cg/SVGFEColorMatrixCg.mm: Removed.
813         * platform/graphics/svg/filters/cg/SVGFEComponentTransferCg.mm: Removed.
814         * platform/graphics/svg/filters/cg/SVGFECompositeCg.mm: Removed.
815         * platform/graphics/svg/filters/cg/SVGFEDiffuseLightingCg.mm: Removed.
816         * platform/graphics/svg/filters/cg/SVGFEDisplacementMapCg.mm: Removed.
817         * platform/graphics/svg/filters/cg/SVGFEFloodCg.mm: Removed.
818         * platform/graphics/svg/filters/cg/SVGFEGaussianBlurCg.mm: Removed.
819         * platform/graphics/svg/filters/cg/SVGFEHelpersCg.h: Removed.
820         * platform/graphics/svg/filters/cg/SVGFEHelpersCg.mm: Removed.
821         * platform/graphics/svg/filters/cg/SVGFEImageCg.mm: Removed.
822         * platform/graphics/svg/filters/cg/SVGFEMergeCg.mm: Removed.
823         * platform/graphics/svg/filters/cg/SVGFEOffsetCg.mm: Removed.
824         * platform/graphics/svg/filters/cg/SVGFESpecularLightingCg.mm: Removed.
825         * platform/graphics/svg/filters/cg/SVGFETileCg.mm: Removed.
826         * platform/graphics/svg/filters/cg/SVGFilterEffectCg.mm: Removed.
827         * platform/graphics/svg/filters/cg/WKArithmeticFilter.cikernel: Removed.
828         * platform/graphics/svg/filters/cg/WKArithmeticFilter.h: Removed.
829         * platform/graphics/svg/filters/cg/WKArithmeticFilter.m: Removed.
830         * platform/graphics/svg/filters/cg/WKComponentMergeFilter.cikernel: Removed.
831         * platform/graphics/svg/filters/cg/WKComponentMergeFilter.h: Removed.
832         * platform/graphics/svg/filters/cg/WKComponentMergeFilter.m: Removed.
833         * platform/graphics/svg/filters/cg/WKDiffuseLightingFilter.cikernel: Removed.
834         * platform/graphics/svg/filters/cg/WKDiffuseLightingFilter.h: Removed.
835         * platform/graphics/svg/filters/cg/WKDiffuseLightingFilter.m: Removed.
836         * platform/graphics/svg/filters/cg/WKDiscreteTransferFilter.cikernel: Removed.
837         * platform/graphics/svg/filters/cg/WKDiscreteTransferFilter.h: Removed.
838         * platform/graphics/svg/filters/cg/WKDiscreteTransferFilter.m: Removed.
839         * platform/graphics/svg/filters/cg/WKDisplacementMapFilter.cikernel: Removed.
840         * platform/graphics/svg/filters/cg/WKDisplacementMapFilter.h: Removed.
841         * platform/graphics/svg/filters/cg/WKDisplacementMapFilter.m: Removed.
842         * platform/graphics/svg/filters/cg/WKDistantLightFilter.cikernel: Removed.
843         * platform/graphics/svg/filters/cg/WKDistantLightFilter.h: Removed.
844         * platform/graphics/svg/filters/cg/WKDistantLightFilter.m: Removed.
845         * platform/graphics/svg/filters/cg/WKGammaTransferFilter.cikernel: Removed.
846         * platform/graphics/svg/filters/cg/WKGammaTransferFilter.h: Removed.
847         * platform/graphics/svg/filters/cg/WKGammaTransferFilter.m: Removed.
848         * platform/graphics/svg/filters/cg/WKIdentityTransferFilter.h: Removed.
849         * platform/graphics/svg/filters/cg/WKIdentityTransferFilter.m: Removed.
850         * platform/graphics/svg/filters/cg/WKLinearTransferFilter.cikernel: Removed.
851         * platform/graphics/svg/filters/cg/WKLinearTransferFilter.h: Removed.
852         * platform/graphics/svg/filters/cg/WKLinearTransferFilter.m: Removed.
853         * platform/graphics/svg/filters/cg/WKNormalMapFilter.cikernel: Removed.
854         * platform/graphics/svg/filters/cg/WKNormalMapFilter.h: Removed.
855         * platform/graphics/svg/filters/cg/WKNormalMapFilter.m: Removed.
856         * platform/graphics/svg/filters/cg/WKPointLightFilter.cikernel: Removed.
857         * platform/graphics/svg/filters/cg/WKPointLightFilter.h: Removed.
858         * platform/graphics/svg/filters/cg/WKPointLightFilter.m: Removed.
859         * platform/graphics/svg/filters/cg/WKSpecularLightingFilter.cikernel: Removed.
860         * platform/graphics/svg/filters/cg/WKSpecularLightingFilter.h: Removed.
861         * platform/graphics/svg/filters/cg/WKSpecularLightingFilter.m: Removed.
862         * platform/graphics/svg/filters/cg/WKSpotLightFilter.cikernel: Removed.
863         * platform/graphics/svg/filters/cg/WKSpotLightFilter.h: Removed.
864         * platform/graphics/svg/filters/cg/WKSpotLightFilter.m: Removed.
865         * platform/graphics/svg/filters/cg/WKTableTransferFilter.cikernel: Removed.
866         * platform/graphics/svg/filters/cg/WKTableTransferFilter.h: Removed.
867         * platform/graphics/svg/filters/cg/WKTableTransferFilter.m: Removed.
868         * platform/graphics/svg/mac: Removed.
869         * platform/graphics/svg/mac/SVGResourceFilterPlatformDataMac.h: Removed.
870         * platform/graphics/svg/mac/SVGResourceFilterPlatformDataMac.mm: Removed.
871         * platform/graphics/svg/qt: Removed.
872         * platform/graphics/svg/qt/RenderPathQt.cpp: Removed.
873         * platform/graphics/svg/qt/SVGPaintServerGradientQt.cpp: Removed.
874         * platform/graphics/svg/qt/SVGPaintServerLinearGradientQt.cpp: Removed.
875         * platform/graphics/svg/qt/SVGPaintServerPatternQt.cpp: Removed.
876         * platform/graphics/svg/qt/SVGPaintServerQt.cpp: Removed.
877         * platform/graphics/svg/qt/SVGPaintServerRadialGradientQt.cpp: Removed.
878         * platform/graphics/svg/qt/SVGPaintServerSolidQt.cpp: Removed.
879         * platform/graphics/svg/qt/SVGResourceClipperQt.cpp: Removed.
880         * platform/graphics/svg/qt/SVGResourceFilterQt.cpp: Removed.
881         * platform/graphics/svg/qt/SVGResourceMaskerQt.cpp: Removed.
882         * svg/graphics: Copied from platform/graphics/svg.
883
884 2007-12-02  Nikolas Zimmermann  <zimmermann@kde.org>
885
886         Reviewed by Maciej.
887
888         Fix IDL lookup in subdirectories. Missing 'my' prefix for the 'thisDir' variable.
889         When entering subdirectories the 'thisDir' variable got altered - see snippet:
890
891         THISDIR: WebCore/page FOUND FILE: FrameView.h (endCondition: 0)
892         ..
893         -> ENTER: WebCore/page/gtk (THIS DIR: WebCore/page)
894         ...
895         <- LEAVE: WebCore/page/gtk (THIS DIR: WebCore/page/gtk)
896         THISDIR: WebCore/page/gtk FOUND FILE: History.cpp (endCondition: 0)
897
898         'History.cpp' is located in WebCore/page not WebCore/page/gtk.
899
900         * bindings/scripts/CodeGenerator.pm:
901
902 2007-12-01  Alp Toker  <alp@atoker.com>
903
904         Reviewed by Adam Roben.
905
906         Add the newly introduced webkit.h convenience header.
907
908         * WebCore.pro:
909
910 2007-12-01  Antti Koivisto  <antti@apple.com>
911
912         Reviewed by Adam.
913         
914         - Fix crash when removing a loading media element from the tree.
915         - Follow the spec by invoking pause() when element is removed from the tree instead of unloading.
916
917         Tests: http/tests/media/remove-while-loading.html
918                media/remove-from-document.html
919
920         * html/HTMLMediaElement.cpp:
921         (WebCore::HTMLMediaElement::removedFromDocument):
922
923 2007-12-01  Geoffrey Garen  <ggaren@apple.com>
924
925         Reviewed by Beth Dakin.
926
927         Restored the test string in this test.
928
929         * manual-tests/window-open-features-parsing.html:
930
931 2007-11-30  Geoffrey Garen  <ggaren@apple.com>
932
933         Reviewed by Beth Dakin.
934         
935         Modified WebCore to follow the new JSGlobalObject/Interpreter ownership
936         rules in JavaScriptCore.
937
938         * bindings/js/kjs_binding.cpp:
939         * bindings/js/kjs_binding.h: Removed stale, unused 
940         interpreterForGlobalObject().
941
942         * bindings/js/kjs_proxy.cpp: Changed to store a global object, rather
943         than an interpreter.
944         (WebCore::KJSProxy::finishedWithEvent): Need to NULL check 
945         m_globalObject here because we no longer unnecessarily instantiate it.
946
947         * bindings/js/kjs_window.cpp:
948         (KJS::ScheduledAction::execute):
949         * bindings/js/kjs_window.h: Removed redundant and less efficient 
950         interpreter() function -- global objects have direct access to their
951         interpreters now.
952
953         Changed these functions to pass around JSGlobalObjects instead of 
954         Interpreters:
955
956         * page/Frame.cpp:
957         (WebCore::Frame::bindingRootObject):
958         (WebCore::Frame::createRootObject):
959         * page/Frame.h:
960         * page/mac/WebCoreFrameBridge.mm:
961         (createRootObject):
962
963 2007-12-01  Darin Adler  <darin@apple.com>
964
965         Reviewed by Mitz.
966
967         - fix problem tracked by these bugs:
968           http://bugs.webkit.org/show_bug.cgi?id=16097
969           <rdar://problem/5619305> Safari crashes during load of LexisNexis search results
970           <rdar://problem/5510779> CrashTracer: [USER] 25 crashes in Safari at
971           WebCore::DocumentLoader::isLoadingMultipartContent const
972
973         * loader/ImageDocument.cpp:
974         (WebCore::ImageDocument::createDocumentStructure): Create an ImageDocumentElement
975         instead of an HTMLImageElement.
976         (WebCore::ImageDocument::scale): Added a null check for m_imageElement.
977         (WebCore::ImageDocument::resizeImageToFit): Ditto.
978         (WebCore::ImageDocument::restoreImageSize): Ditto.
979         (WebCore::ImageDocument::imageFitsInWindow): Ditto.
980         (WebCore::ImageDocument::windowSizeChanged): Ditto.
981         (WebCore::ImageDocumentElement::~ImageDocumentElement): Call
982         disconnectImageElement so m_imageElement will be set to 0
983          if we're still connected to the document.
984         (WebCore::ImageDocumentElement::willMoveToNewOwnerDocument): Ditto.
985
986         * loader/ImageDocument.h: Changed image element type to be
987         ImageDocumentElement instead of HTMLImageElement. Also added
988         a disconnectImageElement function that sets m_imageElement to 0.
989
990 2007-12-01  Darin Adler  <darin@apple.com>
991
992         - remove the empty directories
993
994         * ksvg2: Removed.
995         * ksvg2/css: Removed.
996         * ksvg2/events: Removed.
997         * ksvg2/misc: Removed.
998         * ksvg2/scripts: Removed.
999
1000 2007-12-01  Julien Chaffraix  <julien.chaffraix@gmail.com>
1001
1002         Bug 16189: XMLHttpRequest::setRequestHeader() should not set certain headers
1003
1004         Reviewed by Darin Adler.
1005
1006         * xml/XMLHttpRequest.cpp:
1007         (WebCore::canSetRequestHeader):
1008
1009         Test: http/tests/xmlhttprequest/set-dangerous-headers.html
1010
1011 2007-12-01  Rahul Abrol  <ra5ul@comcast.net>
1012
1013         Reviewed by Adam Roben.
1014
1015         http://bugs.webkit.org/show_bug.cgi?id=16128
1016         Ignore resizable=no for window.open().
1017
1018         * bindings/js/kjs_window.cpp:
1019         (KJS::setWindowFeature):
1020         (KJS::parseWindowFeatures):
1021         * manual-tests/window-open-features-parsing.html:
1022
1023 2007-12-01  Dan Bernstein  <mitz@apple.com>
1024
1025         Reviewed by Darin Adler.
1026
1027         - fix <rdar://problem/5619240> REGRESSION (Leopard-r28069): Reproducible crash with a Mootools-based calendar picker (jump to null in FrameView::layout)
1028
1029         Test: fast/dynamic/subtree-common-root.html
1030
1031         * page/FrameView.cpp:
1032         (WebCore::FrameView::layoutRoot): Added a parameter to let this method
1033         return the layout root for a pending layout as well.
1034         (WebCore::FrameView::scheduleRelayoutOfSubtree): Pass the new root
1035         to markContainingBlocksForLayout(). Otherwise,
1036         markContainingBlocksForLayout() could mark past the new root, if it had
1037         previously been marked as having a normal child needing layout and then
1038         was reached via a positioned child.
1039         * page/FrameView.h:
1040         * rendering/RenderBox.cpp:
1041         (WebCore::RenderBox::calcWidth):
1042         * rendering/RenderObject.cpp:
1043         (WebCore::RenderObject::~RenderObject): Fixed the ASSERT so that
1044         it would really catch deletion of the layout root.
1045         (WebCore::RenderObject::markContainingBlocksForLayout): Added the
1046         newRoot parameter, which tells this method where to stop marking.
1047         * rendering/RenderObject.h:
1048
1049 2007-12-01  Dan Bernstein  <mitz@apple.com>
1050
1051         Reviewed by Darin Adler.
1052
1053         - fold FontStyle into TextRun
1054
1055         * WebCore.xcodeproj/project.pbxproj:
1056         * platform/graphics/Font.cpp:
1057         (WebCore::WidthIterator::WidthIterator):
1058         (WebCore::WidthIterator::advance):
1059         (WebCore::Font::width):
1060         (WebCore::Font::drawSimpleText):
1061         (WebCore::Font::drawGlyphBuffer):
1062         (WebCore::Font::drawText):
1063         (WebCore::Font::floatWidth):
1064         (WebCore::Font::floatWidthForSimpleText):
1065         (WebCore::Font::selectionRectForText):
1066         (WebCore::Font::selectionRectForSimpleText):
1067         (WebCore::Font::offsetForPosition):
1068         (WebCore::Font::offsetForPositionForSimpleText):
1069         * platform/graphics/Font.h:
1070         (WebCore::TextRun::TextRun):
1071         (WebCore::TextRun::setText):
1072         (WebCore::TextRun::allowTabs):
1073         (WebCore::TextRun::xPos):
1074         (WebCore::TextRun::padding):
1075         (WebCore::TextRun::rtl):
1076         (WebCore::TextRun::ltr):
1077         (WebCore::TextRun::directionalOverride):
1078         (WebCore::TextRun::applyRunRounding):
1079         (WebCore::TextRun::applyWordRounding):
1080         (WebCore::TextRun::spacingDisabled):
1081         (WebCore::TextRun::disableSpacing):
1082         (WebCore::TextRun::disableRoundingHacks):
1083         (WebCore::TextRun::setRTL):
1084         (WebCore::TextRun::setDirectionalOverride):
1085         * platform/graphics/FontStyle.h: Removed.
1086         * platform/graphics/GraphicsContext.cpp:
1087         (WebCore::GraphicsContext::drawText):
1088         (WebCore::GraphicsContext::drawBidiText):
1089         (WebCore::GraphicsContext::drawHighlightForText):
1090         * platform/graphics/GraphicsContext.h:
1091         * platform/graphics/StringTruncator.cpp:
1092         (WebCore::stringWidth):
1093         * platform/graphics/gtk/FontGtk.cpp:
1094         (WebCore::Font::drawComplexText):
1095         (WebCore::Font::floatWidthForComplexText):
1096         (WebCore::Font::offsetForPositionForComplexText):
1097         (WebCore::Font::selectionRectForComplexText):
1098         * platform/graphics/mac/FontMac.mm:
1099         (WebCore::ATSULayoutParameters::ATSULayoutParameters):
1100         (WebCore::addDirectionalOverride):
1101         (WebCore::overrideLayoutOperation):
1102         (WebCore::ATSULayoutParameters::initialize):
1103         (WebCore::Font::selectionRectForComplexText):
1104         (WebCore::Font::drawComplexText):
1105         (WebCore::Font::floatWidthForComplexText):
1106         (WebCore::Font::offsetForPositionForComplexText):
1107         * platform/graphics/qt/FontQt.cpp:
1108         (WebCore::generateComponents):
1109         (WebCore::Font::drawText):
1110         (WebCore::Font::width):
1111         (WebCore::Font::offsetForPosition):
1112         (WebCore::cursorToX):
1113         (WebCore::Font::selectionRectForText):
1114         * platform/graphics/win/FontWin.cpp:
1115         (WebCore::Font::selectionRectForComplexText):
1116         (WebCore::Font::drawComplexText):
1117         (WebCore::Font::floatWidthForComplexText):
1118         (WebCore::Font::offsetForPositionForComplexText):
1119         * platform/graphics/wx/FontWx.cpp:
1120         (WebCore::Font::selectionRectForComplexText):
1121         (WebCore::Font::drawComplexText):
1122         (WebCore::Font::floatWidthForComplexText):
1123         (WebCore::Font::offsetForPositionForComplexText):
1124         * platform/mac/WebCoreTextRenderer.mm:
1125         (WebCoreDrawTextAtPoint):
1126         (WebCoreTextFloatWidth):
1127         * platform/win/PopupMenuWin.cpp:
1128         (WebCore::PopupMenu::paint):
1129         * platform/win/UniscribeController.cpp:
1130         (WebCore::UniscribeController::UniscribeController):
1131         (WebCore::UniscribeController::offsetForPosition):
1132         (WebCore::UniscribeController::advance):
1133         (WebCore::UniscribeController::itemizeShapeAndPlace):
1134         (WebCore::UniscribeController::resetControlAndState):
1135         (WebCore::UniscribeController::shapeAndPlaceItem):
1136         * platform/win/UniscribeController.h:
1137         * platform/win/WebCoreTextRenderer.cpp:
1138         (WebCore::doDrawTextAtPoint):
1139         * rendering/EllipsisBox.cpp:
1140         (WebCore::EllipsisBox::paint):
1141         * rendering/InlineTextBox.cpp:
1142         (WebCore::InlineTextBox::selectionRect):
1143         (WebCore::InlineTextBox::paint):
1144         (WebCore::InlineTextBox::paintSelection):
1145         (WebCore::InlineTextBox::paintCompositionBackground):
1146         (WebCore::InlineTextBox::paintSpellingOrGrammarMarker):
1147         (WebCore::InlineTextBox::paintTextMatchMarker):
1148         (WebCore::InlineTextBox::offsetForPosition):
1149         (WebCore::InlineTextBox::positionForOffset):
1150         * rendering/RenderFileUploadControl.cpp:
1151         (WebCore::RenderFileUploadControl::paintObject):
1152         (WebCore::RenderFileUploadControl::calcPrefWidths):
1153         * rendering/RenderImage.cpp:
1154         * rendering/RenderListBox.cpp:
1155         (WebCore::RenderListBox::updateFromElement):
1156         (WebCore::RenderListBox::paintItemForeground):
1157         * rendering/RenderMenuList.cpp:
1158         (WebCore::RenderMenuList::updateOptionsWidth):
1159         * rendering/RenderText.cpp:
1160         (WebCore::RenderText::widthFromCache):
1161         (WebCore::RenderText::calcPrefWidths):
1162         (WebCore::RenderText::width):
1163         * rendering/RenderText.h:
1164         (WebCore::RenderText::allowTabs):
1165         * rendering/RenderTextControl.cpp:
1166         (WebCore::RenderTextControl::calcPrefWidths):
1167         * rendering/SVGInlineTextBox.cpp:
1168         (WebCore::SVGInlineTextBox::calculateGlyphWidth):
1169         (WebCore::SVGInlineTextBox::paintCharacters):
1170         (WebCore::SVGInlineTextBox::paintSelection):
1171         * rendering/SVGRootInlineBox.cpp:
1172         (WebCore::SVGRootInlineBoxPaintWalker::chunkPortionCallback):
1173         (WebCore::cummulatedWidthOfInlineBoxCharacterRange):
1174         (WebCore::svgTextRunForInlineTextBox):
1175         * rendering/SVGRootInlineBox.h:
1176
1177 2007-12-01  Adam Treat  <treat@kde.org>
1178
1179         Reviewed by Simon.
1180
1181         * Don't hide symbols when in Debug mode
1182         * On Linux (glibc) provide a backtrace in the test output for debugging purposes
1183
1184         * WebCore.pro:
1185
1186 2007-11-30  Alp Toker  <alp@atoker.com>
1187
1188         Reviewed by Adam Roben.
1189
1190         http://bugs.webkit.org/show_bug.cgi?id=15691
1191         [GTK] Public API does not follow GTK+ conventions
1192
1193         Refactor the WebKit/GTK+ public API. Changes:
1194           WebKitPage -> WebKitWebView
1195           WebKitFrame -> WebKitWebFrame
1196
1197         Public API source and header names have been updated to mirror the API
1198         changes.
1199
1200         The API is now kept in WebKit/gtk/WebView to match other ports in the
1201         same class such as Mac and Win.
1202
1203         * WebCore.pro:
1204
1205 2007-11-30   Anders Carlsson  <andersca@apple.com>
1206
1207         Add platform/text project group.
1208         
1209         * WebCore.vcproj/WebCore.vcproj:
1210
1211 2007-11-30   Anders Carlsson  <andersca@apple.com>
1212
1213         Remove extra </Filter> tag which prevented the vcproj from being parsed correctly.
1214         
1215         * WebCore.vcproj/WebCore.vcproj:
1216
1217 2007-11-30  Nikolas Zimmermann  <zimmermann@kde.org>
1218
1219         Not reviewed. Try to fix qt/gtk build.
1220
1221         * WebCore.pro:
1222
1223 2007-11-30  Nikolas Zimmermann  <zimmermann@kde.org>
1224
1225         Rubber stamped by Eric.
1226
1227         Final integration of ksvg2 in WebKit. Moving ksvg2/ to svg/ and killing all it's subdirectories,
1228         by moving the files into approriate locations (css, rendering, ...) - as dicsussed on the
1229         mailing list and on IRC with David/Darin & Eric.
1230
1231         Updated all build files - though I can't guarantee it builds on non-mac. Need buildbot to verify.
1232
1233         * DerivedSources.make:
1234         * WebCore.pro:
1235         * WebCore.vcproj/WebCore.vcproj:
1236         * WebCore.xcodeproj/project.pbxproj:
1237         * bindings/js/JSSVGLazyEventListener.cpp: Copied from ksvg2/events/JSSVGLazyEventListener.cpp.
1238         * bindings/js/JSSVGLazyEventListener.h: Copied from ksvg2/events/JSSVGLazyEventListener.h.
1239         * css/SVGCSSComputedStyleDeclaration.cpp: Copied from ksvg2/css/SVGCSSComputedStyleDeclaration.cpp.
1240         * css/SVGCSSParser.cpp: Copied from ksvg2/css/SVGCSSParser.cpp.
1241         * css/SVGCSSPropertyNames.in: Copied from ksvg2/css/SVGCSSPropertyNames.in.
1242         * css/SVGCSSStyleSelector.cpp: Copied from ksvg2/css/SVGCSSStyleSelector.cpp.
1243         * css/SVGCSSValueKeywords.in: Copied from ksvg2/css/SVGCSSValueKeywords.in.
1244         * dom/make_names.pl: Copied from ksvg2/scripts/make_names.pl.
1245         * ksvg2/css/SVGCSSComputedStyleDeclaration.cpp: Removed.
1246         * ksvg2/css/SVGCSSParser.cpp: Removed.
1247         * ksvg2/css/SVGCSSPropertyNames.in: Removed.
1248         * ksvg2/css/SVGCSSStyleSelector.cpp: Removed.
1249         * ksvg2/css/SVGCSSValueKeywords.in: Removed.
1250         * ksvg2/css/SVGRenderStyle.cpp: Removed.
1251         * ksvg2/css/SVGRenderStyle.h: Removed.
1252         * ksvg2/css/SVGRenderStyleDefs.cpp: Removed.
1253         * ksvg2/css/SVGRenderStyleDefs.h: Removed.
1254         * ksvg2/events/JSSVGLazyEventListener.cpp: Removed.
1255         * ksvg2/events/JSSVGLazyEventListener.h: Removed.
1256         * ksvg2/events/SVGZoomEvent.cpp: Removed.
1257         * ksvg2/events/SVGZoomEvent.h: Removed.
1258         * ksvg2/events/SVGZoomEvent.idl: Removed.
1259         * ksvg2/misc/PointerEventsHitRules.cpp: Removed.
1260         * ksvg2/misc/PointerEventsHitRules.h: Removed.
1261         * ksvg2/misc/SVGDocumentExtensions.cpp: Removed.
1262         * ksvg2/misc/SVGDocumentExtensions.h: Removed.
1263         * ksvg2/misc/SVGImageLoader.cpp: Removed.
1264         * ksvg2/misc/SVGImageLoader.h: Removed.
1265         * ksvg2/misc/SVGTimer.cpp: Removed.
1266         * ksvg2/misc/SVGTimer.h: Removed.
1267         * ksvg2/misc/TimeScheduler.cpp: Removed.
1268         * ksvg2/misc/TimeScheduler.h: Removed.
1269         * ksvg2/misc/xlinkattrs.in: Removed.
1270         * ksvg2/scripts/make_names.pl: Removed.
1271         * ksvg2/svg: Removed.
1272         * ksvg2/svg/ColorDistance.cpp: Removed.
1273         * ksvg2/svg/ColorDistance.h: Removed.
1274         * ksvg2/svg/GradientAttributes.h: Removed.
1275         * ksvg2/svg/LinearGradientAttributes.h: Removed.
1276         * ksvg2/svg/PatternAttributes.h: Removed.
1277         * ksvg2/svg/RadialGradientAttributes.h: Removed.
1278         * ksvg2/svg/SVGAElement.cpp: Removed.
1279         * ksvg2/svg/SVGAElement.h: Removed.
1280         * ksvg2/svg/SVGAElement.idl: Removed.
1281         * ksvg2/svg/SVGAngle.cpp: Removed.
1282         * ksvg2/svg/SVGAngle.h: Removed.
1283         * ksvg2/svg/SVGAngle.idl: Removed.
1284         * ksvg2/svg/SVGAnimateColorElement.cpp: Removed.
1285         * ksvg2/svg/SVGAnimateColorElement.h: Removed.
1286         * ksvg2/svg/SVGAnimateColorElement.idl: Removed.
1287         * ksvg2/svg/SVGAnimateElement.cpp: Removed.
1288         * ksvg2/svg/SVGAnimateElement.h: Removed.
1289         * ksvg2/svg/SVGAnimateElement.idl: Removed.
1290         * ksvg2/svg/SVGAnimateMotionElement.cpp: Removed.
1291         * ksvg2/svg/SVGAnimateMotionElement.h: Removed.
1292         * ksvg2/svg/SVGAnimateTransformElement.cpp: Removed.
1293         * ksvg2/svg/SVGAnimateTransformElement.h: Removed.
1294         * ksvg2/svg/SVGAnimateTransformElement.idl: Removed.
1295         * ksvg2/svg/SVGAnimatedAngle.idl: Removed.
1296         * ksvg2/svg/SVGAnimatedBoolean.idl: Removed.
1297         * ksvg2/svg/SVGAnimatedEnumeration.idl: Removed.
1298         * ksvg2/svg/SVGAnimatedInteger.idl: Removed.
1299         * ksvg2/svg/SVGAnimatedLength.idl: Removed.
1300         * ksvg2/svg/SVGAnimatedLengthList.idl: Removed.
1301         * ksvg2/svg/SVGAnimatedNumber.idl: Removed.
1302         * ksvg2/svg/SVGAnimatedNumberList.idl: Removed.
1303         * ksvg2/svg/SVGAnimatedPathData.cpp: Removed.
1304         * ksvg2/svg/SVGAnimatedPathData.h: Removed.
1305         * ksvg2/svg/SVGAnimatedPathData.idl: Removed.
1306         * ksvg2/svg/SVGAnimatedPoints.cpp: Removed.
1307         * ksvg2/svg/SVGAnimatedPoints.h: Removed.
1308         * ksvg2/svg/SVGAnimatedPoints.idl: Removed.
1309         * ksvg2/svg/SVGAnimatedPreserveAspectRatio.idl: Removed.
1310         * ksvg2/svg/SVGAnimatedRect.idl: Removed.
1311         * ksvg2/svg/SVGAnimatedString.idl: Removed.
1312         * ksvg2/svg/SVGAnimatedTemplate.h: Removed.
1313         * ksvg2/svg/SVGAnimatedTransformList.idl: Removed.
1314         * ksvg2/svg/SVGAnimationElement.cpp: Removed.
1315         * ksvg2/svg/SVGAnimationElement.h: Removed.
1316         * ksvg2/svg/SVGAnimationElement.idl: Removed.
1317         * ksvg2/svg/SVGCircleElement.cpp: Removed.
1318         * ksvg2/svg/SVGCircleElement.h: Removed.
1319         * ksvg2/svg/SVGCircleElement.idl: Removed.
1320         * ksvg2/svg/SVGClipPathElement.cpp: Removed.
1321         * ksvg2/svg/SVGClipPathElement.h: Removed.
1322         * ksvg2/svg/SVGClipPathElement.idl: Removed.
1323         * ksvg2/svg/SVGColor.cpp: Removed.
1324         * ksvg2/svg/SVGColor.h: Removed.
1325         * ksvg2/svg/SVGColor.idl: Removed.
1326         * ksvg2/svg/SVGComponentTransferFunctionElement.cpp: Removed.
1327         * ksvg2/svg/SVGComponentTransferFunctionElement.h: Removed.
1328         * ksvg2/svg/SVGComponentTransferFunctionElement.idl: Removed.
1329         * ksvg2/svg/SVGCursorElement.cpp: Removed.
1330         * ksvg2/svg/SVGCursorElement.h: Removed.
1331         * ksvg2/svg/SVGCursorElement.idl: Removed.
1332         * ksvg2/svg/SVGDefinitionSrcElement.cpp: Removed.
1333         * ksvg2/svg/SVGDefinitionSrcElement.h: Removed.
1334         * ksvg2/svg/SVGDefinitionSrcElement.idl: Removed.
1335         * ksvg2/svg/SVGDefsElement.cpp: Removed.
1336         * ksvg2/svg/SVGDefsElement.h: Removed.
1337         * ksvg2/svg/SVGDefsElement.idl: Removed.
1338         * ksvg2/svg/SVGDescElement.cpp: Removed.
1339         * ksvg2/svg/SVGDescElement.h: Removed.
1340         * ksvg2/svg/SVGDescElement.idl: Removed.
1341         * ksvg2/svg/SVGDocument.cpp: Removed.
1342         * ksvg2/svg/SVGDocument.h: Removed.
1343         * ksvg2/svg/SVGDocument.idl: Removed.
1344         * ksvg2/svg/SVGElement.cpp: Removed.
1345         * ksvg2/svg/SVGElement.h: Removed.
1346         * ksvg2/svg/SVGElement.idl: Removed.
1347         * ksvg2/svg/SVGElementInstance.cpp: Removed.
1348         * ksvg2/svg/SVGElementInstance.h: Removed.
1349         * ksvg2/svg/SVGElementInstance.idl: Removed.
1350         * ksvg2/svg/SVGElementInstanceList.cpp: Removed.
1351         * ksvg2/svg/SVGElementInstanceList.h: Removed.
1352         * ksvg2/svg/SVGElementInstanceList.idl: Removed.
1353         * ksvg2/svg/SVGEllipseElement.cpp: Removed.
1354         * ksvg2/svg/SVGEllipseElement.h: Removed.
1355         * ksvg2/svg/SVGEllipseElement.idl: Removed.
1356         * ksvg2/svg/SVGException.h: Removed.
1357         * ksvg2/svg/SVGException.idl: Removed.
1358         * ksvg2/svg/SVGExternalResourcesRequired.cpp: Removed.
1359         * ksvg2/svg/SVGExternalResourcesRequired.h: Removed.
1360         * ksvg2/svg/SVGExternalResourcesRequired.idl: Removed.
1361         * ksvg2/svg/SVGFEBlendElement.cpp: Removed.
1362         * ksvg2/svg/SVGFEBlendElement.h: Removed.
1363         * ksvg2/svg/SVGFEBlendElement.idl: Removed.
1364         * ksvg2/svg/SVGFEColorMatrixElement.cpp: Removed.
1365         * ksvg2/svg/SVGFEColorMatrixElement.h: Removed.
1366         * ksvg2/svg/SVGFEColorMatrixElement.idl: Removed.
1367         * ksvg2/svg/SVGFEComponentTransferElement.cpp: Removed.
1368         * ksvg2/svg/SVGFEComponentTransferElement.h: Removed.
1369         * ksvg2/svg/SVGFEComponentTransferElement.idl: Removed.
1370         * ksvg2/svg/SVGFECompositeElement.cpp: Removed.
1371         * ksvg2/svg/SVGFECompositeElement.h: Removed.
1372         * ksvg2/svg/SVGFECompositeElement.idl: Removed.
1373         * ksvg2/svg/SVGFEDiffuseLightingElement.cpp: Removed.
1374         * ksvg2/svg/SVGFEDiffuseLightingElement.h: Removed.
1375         * ksvg2/svg/SVGFEDiffuseLightingElement.idl: Removed.
1376         * ksvg2/svg/SVGFEDisplacementMapElement.cpp: Removed.
1377         * ksvg2/svg/SVGFEDisplacementMapElement.h: Removed.
1378         * ksvg2/svg/SVGFEDisplacementMapElement.idl: Removed.
1379         * ksvg2/svg/SVGFEDistantLightElement.cpp: Removed.
1380         * ksvg2/svg/SVGFEDistantLightElement.h: Removed.
1381         * ksvg2/svg/SVGFEDistantLightElement.idl: Removed.
1382         * ksvg2/svg/SVGFEFloodElement.cpp: Removed.
1383         * ksvg2/svg/SVGFEFloodElement.h: Removed.
1384         * ksvg2/svg/SVGFEFloodElement.idl: Removed.
1385         * ksvg2/svg/SVGFEFuncAElement.cpp: Removed.
1386         * ksvg2/svg/SVGFEFuncAElement.h: Removed.
1387         * ksvg2/svg/SVGFEFuncAElement.idl: Removed.
1388         * ksvg2/svg/SVGFEFuncBElement.cpp: Removed.
1389         * ksvg2/svg/SVGFEFuncBElement.h: Removed.
1390         * ksvg2/svg/SVGFEFuncBElement.idl: Removed.
1391         * ksvg2/svg/SVGFEFuncGElement.cpp: Removed.
1392         * ksvg2/svg/SVGFEFuncGElement.h: Removed.
1393         * ksvg2/svg/SVGFEFuncGElement.idl: Removed.
1394         * ksvg2/svg/SVGFEFuncRElement.cpp: Removed.
1395         * ksvg2/svg/SVGFEFuncRElement.h: Removed.
1396         * ksvg2/svg/SVGFEFuncRElement.idl: Removed.
1397         * ksvg2/svg/SVGFEGaussianBlurElement.cpp: Removed.
1398         * ksvg2/svg/SVGFEGaussianBlurElement.h: Removed.
1399         * ksvg2/svg/SVGFEGaussianBlurElement.idl: Removed.
1400         * ksvg2/svg/SVGFEImageElement.cpp: Removed.
1401         * ksvg2/svg/SVGFEImageElement.h: Removed.
1402         * ksvg2/svg/SVGFEImageElement.idl: Removed.
1403         * ksvg2/svg/SVGFELightElement.cpp: Removed.
1404         * ksvg2/svg/SVGFELightElement.h: Removed.
1405         * ksvg2/svg/SVGFEMergeElement.cpp: Removed.
1406         * ksvg2/svg/SVGFEMergeElement.h: Removed.
1407         * ksvg2/svg/SVGFEMergeElement.idl: Removed.
1408         * ksvg2/svg/SVGFEMergeNodeElement.cpp: Removed.
1409         * ksvg2/svg/SVGFEMergeNodeElement.h: Removed.
1410         * ksvg2/svg/SVGFEMergeNodeElement.idl: Removed.
1411         * ksvg2/svg/SVGFEOffsetElement.cpp: Removed.
1412         * ksvg2/svg/SVGFEOffsetElement.h: Removed.
1413         * ksvg2/svg/SVGFEOffsetElement.idl: Removed.
1414         * ksvg2/svg/SVGFEPointLightElement.cpp: Removed.
1415         * ksvg2/svg/SVGFEPointLightElement.h: Removed.
1416         * ksvg2/svg/SVGFEPointLightElement.idl: Removed.
1417         * ksvg2/svg/SVGFESpecularLightingElement.cpp: Removed.
1418         * ksvg2/svg/SVGFESpecularLightingElement.h: Removed.
1419         * ksvg2/svg/SVGFESpecularLightingElement.idl: Removed.
1420         * ksvg2/svg/SVGFESpotLightElement.cpp: Removed.
1421         * ksvg2/svg/SVGFESpotLightElement.h: Removed.
1422         * ksvg2/svg/SVGFESpotLightElement.idl: Removed.
1423         * ksvg2/svg/SVGFETileElement.cpp: Removed.
1424         * ksvg2/svg/SVGFETileElement.h: Removed.
1425         * ksvg2/svg/SVGFETileElement.idl: Removed.
1426         * ksvg2/svg/SVGFETurbulenceElement.cpp: Removed.
1427         * ksvg2/svg/SVGFETurbulenceElement.h: Removed.
1428         * ksvg2/svg/SVGFETurbulenceElement.idl: Removed.
1429         * ksvg2/svg/SVGFilterElement.cpp: Removed.
1430         * ksvg2/svg/SVGFilterElement.h: Removed.
1431         * ksvg2/svg/SVGFilterElement.idl: Removed.
1432         * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.cpp: Removed.
1433         * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.h: Removed.
1434         * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.idl: Removed.
1435         * ksvg2/svg/SVGFitToViewBox.cpp: Removed.
1436         * ksvg2/svg/SVGFitToViewBox.h: Removed.
1437         * ksvg2/svg/SVGFitToViewBox.idl: Removed.
1438         * ksvg2/svg/SVGFontFaceElement.cpp: Removed.
1439         * ksvg2/svg/SVGFontFaceElement.h: Removed.
1440         * ksvg2/svg/SVGFontFaceElement.idl: Removed.
1441         * ksvg2/svg/SVGFontFaceFormatElement.cpp: Removed.
1442         * ksvg2/svg/SVGFontFaceFormatElement.h: Removed.
1443         * ksvg2/svg/SVGFontFaceFormatElement.idl: Removed.
1444         * ksvg2/svg/SVGFontFaceNameElement.cpp: Removed.
1445         * ksvg2/svg/SVGFontFaceNameElement.h: Removed.
1446         * ksvg2/svg/SVGFontFaceNameElement.idl: Removed.
1447         * ksvg2/svg/SVGFontFaceSrcElement.cpp: Removed.
1448         * ksvg2/svg/SVGFontFaceSrcElement.h: Removed.
1449         * ksvg2/svg/SVGFontFaceSrcElement.idl: Removed.
1450         * ksvg2/svg/SVGFontFaceUriElement.cpp: Removed.
1451         * ksvg2/svg/SVGFontFaceUriElement.h: Removed.
1452         * ksvg2/svg/SVGFontFaceUriElement.idl: Removed.
1453         * ksvg2/svg/SVGForeignObjectElement.cpp: Removed.
1454         * ksvg2/svg/SVGForeignObjectElement.h: Removed.
1455         * ksvg2/svg/SVGForeignObjectElement.idl: Removed.
1456         * ksvg2/svg/SVGGElement.cpp: Removed.
1457         * ksvg2/svg/SVGGElement.h: Removed.
1458         * ksvg2/svg/SVGGElement.idl: Removed.
1459         * ksvg2/svg/SVGGradientElement.cpp: Removed.
1460         * ksvg2/svg/SVGGradientElement.h: Removed.
1461         * ksvg2/svg/SVGGradientElement.idl: Removed.
1462         * ksvg2/svg/SVGImageElement.cpp: Removed.
1463         * ksvg2/svg/SVGImageElement.h: Removed.
1464         * ksvg2/svg/SVGImageElement.idl: Removed.
1465         * ksvg2/svg/SVGLangSpace.cpp: Removed.
1466         * ksvg2/svg/SVGLangSpace.h: Removed.
1467         * ksvg2/svg/SVGLangSpace.idl: Removed.
1468         * ksvg2/svg/SVGLength.cpp: Removed.
1469         * ksvg2/svg/SVGLength.h: Removed.
1470         * ksvg2/svg/SVGLength.idl: Removed.
1471         * ksvg2/svg/SVGLengthList.cpp: Removed.
1472         * ksvg2/svg/SVGLengthList.h: Removed.
1473         * ksvg2/svg/SVGLengthList.idl: Removed.
1474         * ksvg2/svg/SVGLineElement.cpp: Removed.
1475         * ksvg2/svg/SVGLineElement.h: Removed.
1476         * ksvg2/svg/SVGLineElement.idl: Removed.
1477         * ksvg2/svg/SVGLinearGradientElement.cpp: Removed.
1478         * ksvg2/svg/SVGLinearGradientElement.h: Removed.
1479         * ksvg2/svg/SVGLinearGradientElement.idl: Removed.
1480         * ksvg2/svg/SVGList.h: Removed.
1481         * ksvg2/svg/SVGListTraits.h: Removed.
1482         * ksvg2/svg/SVGLocatable.cpp: Removed.
1483         * ksvg2/svg/SVGLocatable.h: Removed.
1484         * ksvg2/svg/SVGLocatable.idl: Removed.
1485         * ksvg2/svg/SVGMPathElement.cpp: Removed.
1486         * ksvg2/svg/SVGMPathElement.h: Removed.
1487         * ksvg2/svg/SVGMarkerElement.cpp: Removed.
1488         * ksvg2/svg/SVGMarkerElement.h: Removed.
1489         * ksvg2/svg/SVGMarkerElement.idl: Removed.
1490         * ksvg2/svg/SVGMaskElement.cpp: Removed.
1491         * ksvg2/svg/SVGMaskElement.h: Removed.
1492         * ksvg2/svg/SVGMaskElement.idl: Removed.
1493         * ksvg2/svg/SVGMatrix.idl: Removed.
1494         * ksvg2/svg/SVGMetadataElement.cpp: Removed.
1495         * ksvg2/svg/SVGMetadataElement.h: Removed.
1496         * ksvg2/svg/SVGMetadataElement.idl: Removed.
1497         * ksvg2/svg/SVGNumber.idl: Removed.
1498         * ksvg2/svg/SVGNumberList.cpp: Removed.
1499         * ksvg2/svg/SVGNumberList.h: Removed.
1500         * ksvg2/svg/SVGNumberList.idl: Removed.
1501         * ksvg2/svg/SVGPaint.cpp: Removed.
1502         * ksvg2/svg/SVGPaint.h: Removed.
1503         * ksvg2/svg/SVGPaint.idl: Removed.
1504         * ksvg2/svg/SVGParserUtilities.cpp: Removed.
1505         * ksvg2/svg/SVGParserUtilities.h: Removed.
1506         * ksvg2/svg/SVGPathElement.cpp: Removed.
1507         * ksvg2/svg/SVGPathElement.h: Removed.
1508         * ksvg2/svg/SVGPathElement.idl: Removed.
1509         * ksvg2/svg/SVGPathSeg.h: Removed.
1510         * ksvg2/svg/SVGPathSeg.idl: Removed.
1511         * ksvg2/svg/SVGPathSegArc.cpp: Removed.
1512         * ksvg2/svg/SVGPathSegArc.h: Removed.
1513         * ksvg2/svg/SVGPathSegArcAbs.idl: Removed.
1514         * ksvg2/svg/SVGPathSegArcRel.idl: Removed.
1515         * ksvg2/svg/SVGPathSegClosePath.cpp: Removed.
1516         * ksvg2/svg/SVGPathSegClosePath.h: Removed.
1517         * ksvg2/svg/SVGPathSegClosePath.idl: Removed.
1518         * ksvg2/svg/SVGPathSegCurvetoCubic.cpp: Removed.
1519         * ksvg2/svg/SVGPathSegCurvetoCubic.h: Removed.
1520         * ksvg2/svg/SVGPathSegCurvetoCubicAbs.idl: Removed.
1521         * ksvg2/svg/SVGPathSegCurvetoCubicRel.idl: Removed.
1522         * ksvg2/svg/SVGPathSegCurvetoCubicSmooth.cpp: Removed.
1523         * ksvg2/svg/SVGPathSegCurvetoCubicSmooth.h: Removed.
1524         * ksvg2/svg/SVGPathSegCurvetoCubicSmoothAbs.idl: Removed.
1525         * ksvg2/svg/SVGPathSegCurvetoCubicSmoothRel.idl: Removed.
1526         * ksvg2/svg/SVGPathSegCurvetoQuadratic.cpp: Removed.
1527         * ksvg2/svg/SVGPathSegCurvetoQuadratic.h: Removed.
1528         * ksvg2/svg/SVGPathSegCurvetoQuadraticAbs.idl: Removed.
1529         * ksvg2/svg/SVGPathSegCurvetoQuadraticRel.idl: Removed.
1530         * ksvg2/svg/SVGPathSegCurvetoQuadraticSmooth.cpp: Removed.
1531         * ksvg2/svg/SVGPathSegCurvetoQuadraticSmooth.h: Removed.
1532         * ksvg2/svg/SVGPathSegCurvetoQuadraticSmoothAbs.idl: Removed.
1533         * ksvg2/svg/SVGPathSegCurvetoQuadraticSmoothRel.idl: Removed.
1534         * ksvg2/svg/SVGPathSegLineto.cpp: Removed.
1535         * ksvg2/svg/SVGPathSegLineto.h: Removed.
1536         * ksvg2/svg/SVGPathSegLinetoAbs.idl: Removed.
1537         * ksvg2/svg/SVGPathSegLinetoHorizontal.cpp: Removed.
1538         * ksvg2/svg/SVGPathSegLinetoHorizontal.h: Removed.
1539         * ksvg2/svg/SVGPathSegLinetoHorizontalAbs.idl: Removed.
1540         * ksvg2/svg/SVGPathSegLinetoHorizontalRel.idl: Removed.
1541         * ksvg2/svg/SVGPathSegLinetoRel.idl: Removed.
1542         * ksvg2/svg/SVGPathSegLinetoVertical.cpp: Removed.
1543         * ksvg2/svg/SVGPathSegLinetoVertical.h: Removed.
1544         * ksvg2/svg/SVGPathSegLinetoVerticalAbs.idl: Removed.
1545         * ksvg2/svg/SVGPathSegLinetoVerticalRel.idl: Removed.
1546         * ksvg2/svg/SVGPathSegList.cpp: Removed.
1547         * ksvg2/svg/SVGPathSegList.h: Removed.
1548         * ksvg2/svg/SVGPathSegList.idl: Removed.
1549         * ksvg2/svg/SVGPathSegMoveto.cpp: Removed.
1550         * ksvg2/svg/SVGPathSegMoveto.h: Removed.
1551         * ksvg2/svg/SVGPathSegMovetoAbs.idl: Removed.
1552         * ksvg2/svg/SVGPathSegMovetoRel.idl: Removed.
1553         * ksvg2/svg/SVGPatternElement.cpp: Removed.
1554         * ksvg2/svg/SVGPatternElement.h: Removed.
1555         * ksvg2/svg/SVGPatternElement.idl: Removed.
1556         * ksvg2/svg/SVGPoint.idl: Removed.
1557         * ksvg2/svg/SVGPointList.cpp: Removed.
1558         * ksvg2/svg/SVGPointList.h: Removed.
1559         * ksvg2/svg/SVGPointList.idl: Removed.
1560         * ksvg2/svg/SVGPolyElement.cpp: Removed.
1561         * ksvg2/svg/SVGPolyElement.h: Removed.
1562         * ksvg2/svg/SVGPolygonElement.cpp: Removed.
1563         * ksvg2/svg/SVGPolygonElement.h: Removed.
1564         * ksvg2/svg/SVGPolygonElement.idl: Removed.
1565         * ksvg2/svg/SVGPolylineElement.cpp: Removed.
1566         * ksvg2/svg/SVGPolylineElement.h: Removed.
1567         * ksvg2/svg/SVGPolylineElement.idl: Removed.
1568         * ksvg2/svg/SVGPreserveAspectRatio.cpp: Removed.
1569         * ksvg2/svg/SVGPreserveAspectRatio.h: Removed.
1570         * ksvg2/svg/SVGPreserveAspectRatio.idl: Removed.
1571         * ksvg2/svg/SVGRadialGradientElement.cpp: Removed.
1572         * ksvg2/svg/SVGRadialGradientElement.h: Removed.
1573         * ksvg2/svg/SVGRadialGradientElement.idl: Removed.
1574         * ksvg2/svg/SVGRect.idl: Removed.
1575         * ksvg2/svg/SVGRectElement.cpp: Removed.
1576         * ksvg2/svg/SVGRectElement.h: Removed.
1577         * ksvg2/svg/SVGRectElement.idl: Removed.
1578         * ksvg2/svg/SVGRenderingIntent.h: Removed.
1579         * ksvg2/svg/SVGRenderingIntent.idl: Removed.
1580         * ksvg2/svg/SVGSVGElement.cpp: Removed.
1581         * ksvg2/svg/SVGSVGElement.h: Removed.
1582         * ksvg2/svg/SVGSVGElement.idl: Removed.
1583         * ksvg2/svg/SVGScriptElement.cpp: Removed.
1584         * ksvg2/svg/SVGScriptElement.h: Removed.
1585         * ksvg2/svg/SVGScriptElement.idl: Removed.
1586         * ksvg2/svg/SVGSetElement.cpp: Removed.
1587         * ksvg2/svg/SVGSetElement.h: Removed.
1588         * ksvg2/svg/SVGSetElement.idl: Removed.
1589         * ksvg2/svg/SVGStopElement.cpp: Removed.
1590         * ksvg2/svg/SVGStopElement.h: Removed.
1591         * ksvg2/svg/SVGStopElement.idl: Removed.
1592         * ksvg2/svg/SVGStringList.cpp: Removed.
1593         * ksvg2/svg/SVGStringList.h: Removed.
1594         * ksvg2/svg/SVGStringList.idl: Removed.
1595         * ksvg2/svg/SVGStylable.cpp: Removed.
1596         * ksvg2/svg/SVGStylable.h: Removed.
1597         * ksvg2/svg/SVGStylable.idl: Removed.
1598         * ksvg2/svg/SVGStyleElement.cpp: Removed.
1599         * ksvg2/svg/SVGStyleElement.h: Removed.
1600         * ksvg2/svg/SVGStyleElement.idl: Removed.
1601         * ksvg2/svg/SVGStyledElement.cpp: Removed.
1602         * ksvg2/svg/SVGStyledElement.h: Removed.
1603         * ksvg2/svg/SVGStyledLocatableElement.cpp: Removed.
1604         * ksvg2/svg/SVGStyledLocatableElement.h: Removed.
1605         * ksvg2/svg/SVGStyledTransformableElement.cpp: Removed.
1606         * ksvg2/svg/SVGStyledTransformableElement.h: Removed.
1607         * ksvg2/svg/SVGSwitchElement.cpp: Removed.
1608         * ksvg2/svg/SVGSwitchElement.h: Removed.
1609         * ksvg2/svg/SVGSwitchElement.idl: Removed.
1610         * ksvg2/svg/SVGSymbolElement.cpp: Removed.
1611         * ksvg2/svg/SVGSymbolElement.h: Removed.
1612         * ksvg2/svg/SVGSymbolElement.idl: Removed.
1613         * ksvg2/svg/SVGTRefElement.cpp: Removed.
1614         * ksvg2/svg/SVGTRefElement.h: Removed.
1615         * ksvg2/svg/SVGTRefElement.idl: Removed.
1616         * ksvg2/svg/SVGTSpanElement.cpp: Removed.
1617         * ksvg2/svg/SVGTSpanElement.h: Removed.
1618         * ksvg2/svg/SVGTSpanElement.idl: Removed.
1619         * ksvg2/svg/SVGTests.cpp: Removed.
1620         * ksvg2/svg/SVGTests.h: Removed.
1621         * ksvg2/svg/SVGTests.idl: Removed.
1622         * ksvg2/svg/SVGTextContentElement.cpp: Removed.
1623         * ksvg2/svg/SVGTextContentElement.h: Removed.
1624         * ksvg2/svg/SVGTextContentElement.idl: Removed.
1625         * ksvg2/svg/SVGTextElement.cpp: Removed.
1626         * ksvg2/svg/SVGTextElement.h: Removed.
1627         * ksvg2/svg/SVGTextElement.idl: Removed.
1628         * ksvg2/svg/SVGTextPathElement.cpp: Removed.
1629         * ksvg2/svg/SVGTextPathElement.h: Removed.
1630         * ksvg2/svg/SVGTextPathElement.idl: Removed.
1631         * ksvg2/svg/SVGTextPositioningElement.cpp: Removed.
1632         * ksvg2/svg/SVGTextPositioningElement.h: Removed.
1633         * ksvg2/svg/SVGTextPositioningElement.idl: Removed.
1634         * ksvg2/svg/SVGTitleElement.cpp: Removed.
1635         * ksvg2/svg/SVGTitleElement.h: Removed.
1636         * ksvg2/svg/SVGTitleElement.idl: Removed.
1637         * ksvg2/svg/SVGTransform.cpp: Removed.
1638         * ksvg2/svg/SVGTransform.h: Removed.
1639         * ksvg2/svg/SVGTransform.idl: Removed.
1640         * ksvg2/svg/SVGTransformDistance.cpp: Removed.
1641         * ksvg2/svg/SVGTransformDistance.h: Removed.
1642         * ksvg2/svg/SVGTransformList.cpp: Removed.
1643         * ksvg2/svg/SVGTransformList.h: Removed.
1644         * ksvg2/svg/SVGTransformList.idl: Removed.
1645         * ksvg2/svg/SVGTransformable.cpp: Removed.
1646         * ksvg2/svg/SVGTransformable.h: Removed.
1647         * ksvg2/svg/SVGTransformable.idl: Removed.
1648         * ksvg2/svg/SVGURIReference.cpp: Removed.
1649         * ksvg2/svg/SVGURIReference.h: Removed.
1650         * ksvg2/svg/SVGURIReference.idl: Removed.
1651         * ksvg2/svg/SVGUnitTypes.h: Removed.
1652         * ksvg2/svg/SVGUnitTypes.idl: Removed.
1653         * ksvg2/svg/SVGUseElement.cpp: Removed.
1654         * ksvg2/svg/SVGUseElement.h: Removed.
1655         * ksvg2/svg/SVGUseElement.idl: Removed.
1656         * ksvg2/svg/SVGViewElement.cpp: Removed.
1657         * ksvg2/svg/SVGViewElement.h: Removed.
1658         * ksvg2/svg/SVGViewElement.idl: Removed.
1659         * ksvg2/svg/SVGViewSpec.cpp: Removed.
1660         * ksvg2/svg/SVGViewSpec.h: Removed.
1661         * ksvg2/svg/SVGViewSpec.idl: Removed.
1662         * ksvg2/svg/SVGZoomAndPan.cpp: Removed.
1663         * ksvg2/svg/SVGZoomAndPan.h: Removed.
1664         * ksvg2/svg/SVGZoomAndPan.idl: Removed.
1665         * ksvg2/svg/svgattrs.in: Removed.
1666         * ksvg2/svg/svgtags.in: Removed.
1667         * rendering/PointerEventsHitRules.cpp: Copied from ksvg2/misc/PointerEventsHitRules.cpp.
1668         * rendering/PointerEventsHitRules.h: Copied from ksvg2/misc/PointerEventsHitRules.h.
1669         * rendering/SVGRenderStyle.cpp: Copied from ksvg2/css/SVGRenderStyle.cpp.
1670         * rendering/SVGRenderStyle.h: Copied from ksvg2/css/SVGRenderStyle.h.
1671         * rendering/SVGRenderStyleDefs.cpp: Copied from ksvg2/css/SVGRenderStyleDefs.cpp.
1672         * rendering/SVGRenderStyleDefs.h: Copied from ksvg2/css/SVGRenderStyleDefs.h.
1673         * svg: Copied from ksvg2/svg.
1674         * svg/SVGDocumentExtensions.cpp: Copied from ksvg2/misc/SVGDocumentExtensions.cpp.
1675         * svg/SVGDocumentExtensions.h: Copied from ksvg2/misc/SVGDocumentExtensions.h.
1676         * svg/SVGImageLoader.cpp: Copied from ksvg2/misc/SVGImageLoader.cpp.
1677         * svg/SVGImageLoader.h: Copied from ksvg2/misc/SVGImageLoader.h.
1678         * svg/SVGTimer.cpp: Copied from ksvg2/misc/SVGTimer.cpp.
1679         * svg/SVGTimer.h: Copied from ksvg2/misc/SVGTimer.h.
1680         * svg/SVGZoomEvent.cpp: Copied from ksvg2/events/SVGZoomEvent.cpp.
1681         * svg/SVGZoomEvent.h: Copied from ksvg2/events/SVGZoomEvent.h.
1682         * svg/SVGZoomEvent.idl: Copied from ksvg2/events/SVGZoomEvent.idl.
1683         * svg/TimeScheduler.cpp: Copied from ksvg2/misc/TimeScheduler.cpp.
1684         * svg/TimeScheduler.h: Copied from ksvg2/misc/TimeScheduler.h.
1685         * svg/xlinkattrs.in: Copied from ksvg2/misc/xlinkattrs.in.
1686
1687 2007-11-30  Kevin Ollivier  <kevino@theolliviers.com>
1688
1689         wx build fix. Add WebCore/platform/graphics/wx to includes.
1690
1691         * webcore-wx.bkl:
1692
1693 2007-11-30  Brady Eidson  <beidson@apple.com>
1694
1695         Reviewed by Geoff
1696
1697         Further hookup of Database API
1698         With this change, any database operation that writes to the database (UPDATE, INSERT, CREATE, etc) will
1699         result in a didModifyDatabase notification when the transaction is successfully committed
1700
1701         * storage/DatabaseAuthorizer.cpp: Global rename of "m_lastActionIncreasedSize" to "m_lastActionChangedDatabase"
1702         (WebCore::DatabaseAuthorizer::reset):
1703         (WebCore::DatabaseAuthorizer::createTable):
1704         (WebCore::DatabaseAuthorizer::allowAlterTable):
1705         (WebCore::DatabaseAuthorizer::createIndex):
1706         (WebCore::DatabaseAuthorizer::createTrigger):
1707         (WebCore::DatabaseAuthorizer::createVTable):
1708         (WebCore::DatabaseAuthorizer::allowInsert):
1709         (WebCore::DatabaseAuthorizer::allowUpdate):
1710         * storage/DatabaseAuthorizer.h:
1711         (WebCore::DatabaseAuthorizer::lastActionChangedDatabase):
1712
1713         * storage/DatabaseTracker.cpp:
1714         (WebCore::DatabaseTracker::notifyDatabaseChanged): Added.  Allow external entities (SQLTransaction) to be able
1715           to request a didModifyDatabase notification to the delegate
1716         * storage/DatabaseTracker.h:
1717
1718         * storage/SQLTransaction.cpp: Added m_modifiedDatabase flag which tracks if any statement over the course of 
1719           a transaction resulted in a change to the database.
1720         (WebCore::SQLTransaction::SQLTransaction):
1721         (WebCore::SQLTransaction::runCurrentStatement): Set m_modifiedDatabase to true if the authorizer reports a mutation
1722           statement occurred
1723         (WebCore::SQLTransaction::postflightAndCommit): If the transaction successfully commits, call DatabaseTracker::notifyDatabaseChanged
1724         (WebCore::SQLTransaction::cleanupAfterTransactionErrorCallback): Ditto
1725         * storage/SQLTransaction.h:
1726
1727 2007-11-30  Nikolas Zimmermann  <zimmermann@kde.org>
1728
1729         Rubber stamped by David.
1730
1731         Next round of moves - platform reorganization.
1732         Move text/font/glyph related files from the individual port directories
1733         into platform/text/<port> or platform/graphics/<port>.
1734
1735         * DerivedSources.make:
1736         * WebCore.pro:
1737         * WebCore.vcproj/WebCore.vcproj:
1738         * WebCore.xcodeproj/project.pbxproj:
1739         * platform/cf/StringCF.cpp: Removed.
1740         * platform/cf/StringImplCF.cpp: Removed.
1741         * platform/graphics/gtk/FontCacheGtk.cpp: Copied from platform/gtk/FontCacheGtk.cpp.
1742         * platform/graphics/gtk/FontDataGtk.cpp: Copied from platform/gtk/FontDataGtk.cpp.
1743         * platform/graphics/gtk/FontGtk.cpp: Copied from platform/gtk/FontGtk.cpp.
1744         * platform/graphics/gtk/FontPlatformData.h: Copied from platform/gtk/FontPlatformData.h.
1745         * platform/graphics/gtk/FontPlatformDataGtk.cpp: Copied from platform/gtk/FontPlatformDataGtk.cpp.
1746         * platform/graphics/gtk/GlyphPageTreeNodeGtk.cpp: Copied from platform/gtk/GlyphPageTreeNodeGtk.cpp.
1747         * platform/graphics/mac/FontCacheMac.mm: Copied from platform/mac/FontCacheMac.mm.
1748         * platform/graphics/mac/FontCustomPlatformData.cpp: Copied from platform/mac/FontCustomPlatformData.cpp.
1749         * platform/graphics/mac/FontCustomPlatformData.h: Copied from platform/mac/FontCustomPlatformData.h.
1750         * platform/graphics/mac/FontDataMac.mm: Copied from platform/mac/FontDataMac.mm.
1751         * platform/graphics/mac/FontMac.mm: Copied from platform/mac/FontMac.mm.
1752         * platform/graphics/mac/FontPlatformData.h: Copied from platform/mac/FontPlatformData.h.
1753         * platform/graphics/mac/FontPlatformDataMac.mm: Copied from platform/mac/FontPlatformDataMac.mm.
1754         * platform/graphics/mac/GlyphPageTreeNodeMac.cpp: Copied from platform/mac/GlyphPageTreeNodeMac.cpp.
1755         * platform/graphics/qt/FontCacheQt.cpp: Copied from platform/qt/FontCacheQt.cpp.
1756         * platform/graphics/qt/FontCustomPlatformData.cpp: Copied from platform/qt/FontCustomPlatformData.cpp.
1757         * platform/graphics/qt/FontCustomPlatformData.h: Copied from platform/qt/FontCustomPlatformData.h.
1758         * platform/graphics/qt/FontDataQt.cpp: Copied from platform/qt/FontDataQt.cpp.
1759         * platform/graphics/qt/FontPlatformData.h: Copied from platform/qt/FontPlatformData.h.
1760         * platform/graphics/qt/FontQt.cpp: Copied from platform/qt/FontQt.cpp.
1761         * platform/graphics/qt/GlyphPageTreeNodeQt.cpp: Copied from platform/qt/GlyphPageTreeNodeQt.cpp.
1762         * platform/graphics/win/FontCacheWin.cpp: Copied from platform/win/FontCacheWin.cpp.
1763         * platform/graphics/win/FontCustomPlatformData.cpp: Copied from platform/win/FontCustomPlatformData.cpp.
1764         * platform/graphics/win/FontCustomPlatformData.h: Copied from platform/win/FontCustomPlatformData.h.
1765         * platform/graphics/win/FontDataWin.cpp: Copied from platform/win/FontDataWin.cpp.
1766         * platform/graphics/win/FontDatabase.cpp: Copied from platform/win/FontDatabase.cpp.
1767         * platform/graphics/win/FontDatabase.h: Copied from platform/win/FontDatabase.h.
1768         * platform/graphics/win/FontPlatformData.h: Copied from platform/win/FontPlatformData.h.
1769         * platform/graphics/win/FontPlatformDataWin.cpp: Copied from platform/win/FontPlatformDataWin.cpp.
1770         * platform/graphics/win/FontWin.cpp: Copied from platform/win/FontWin.cpp.
1771         * platform/graphics/win/GlyphPageTreeNodeWin.cpp: Copied from platform/win/GlyphPageTreeNodeWin.cpp.
1772         * platform/graphics/wx/FontCacheWx.cpp: Copied from platform/wx/FontCacheWx.cpp.
1773         * platform/graphics/wx/FontDataWx.cpp: Copied from platform/wx/FontDataWx.cpp.
1774         * platform/graphics/wx/FontPlatformData.h: Copied from platform/wx/FontPlatformData.h.
1775         * platform/graphics/wx/FontPlatformDataWx.cpp: Copied from platform/wx/FontPlatformDataWx.cpp.
1776         * platform/graphics/wx/FontWx.cpp: Copied from platform/wx/FontWx.cpp.
1777         * platform/graphics/wx/GlyphMapWx.cpp: Copied from platform/wx/GlyphMapWx.cpp.
1778         * platform/gtk/FontCacheGtk.cpp: Removed.
1779         * platform/gtk/FontDataGtk.cpp: Removed.
1780         * platform/gtk/FontGtk.cpp: Removed.
1781         * platform/gtk/FontPlatformData.h: Removed.
1782         * platform/gtk/FontPlatformDataGtk.cpp: Removed.
1783         * platform/gtk/GlyphPageTreeNodeGtk.cpp: Removed.
1784         * platform/gtk/TextBreakIteratorInternalICUGtk.cpp: Removed.
1785         * platform/mac/FontCacheMac.mm: Removed.
1786         * platform/mac/FontCustomPlatformData.cpp: Removed.
1787         * platform/mac/FontCustomPlatformData.h: Removed.
1788         * platform/mac/FontDataMac.mm: Removed.
1789         * platform/mac/FontMac.mm: Removed.
1790         * platform/mac/FontPlatformData.h: Removed.
1791         * platform/mac/FontPlatformDataMac.mm: Removed.
1792         * platform/mac/GlyphPageTreeNodeMac.cpp: Removed.
1793         * platform/mac/ShapeArabic.c: Removed.
1794         * platform/mac/ShapeArabic.h: Removed.
1795         * platform/mac/StringImplMac.mm: Removed.
1796         * platform/mac/StringMac.mm: Removed.
1797         * platform/mac/TextBoundaries.mm: Removed.
1798         * platform/mac/TextBreakIteratorInternalICUMac.mm: Removed.
1799         * platform/mac/TextCodecMac.cpp: Removed.
1800         * platform/mac/TextCodecMac.h: Removed.
1801         * platform/mac/character-sets.txt: Removed.
1802         * platform/mac/mac-encodings.txt: Removed.
1803         * platform/mac/make-charset-table.pl: Removed.
1804         * platform/qt/FontCacheQt.cpp: Removed.
1805         * platform/qt/FontCustomPlatformData.cpp: Removed.
1806         * platform/qt/FontCustomPlatformData.h: Removed.
1807         * platform/qt/FontDataQt.cpp: Removed.
1808         * platform/qt/FontPlatformData.h: Removed.
1809         * platform/qt/FontQt.cpp: Removed.
1810         * platform/qt/GlyphPageTreeNodeQt.cpp: Removed.
1811         * platform/qt/StringQt.cpp: Removed.
1812         * platform/qt/TextBoundaries.cpp: Removed.
1813         * platform/qt/TextBreakIteratorQt.cpp: Removed.
1814         * platform/qt/TextCodecQt.cpp: Removed.
1815         * platform/qt/TextCodecQt.h: Removed.
1816         * platform/symbian/StringImplSymbian.cpp: Removed.
1817         * platform/symbian/StringSymbian.cpp: Removed.
1818         * platform/text/cf: Added.
1819         * platform/text/cf/StringCF.cpp: Copied from platform/cf/StringCF.cpp.
1820         * platform/text/cf/StringImplCF.cpp: Copied from platform/cf/StringImplCF.cpp.
1821         * platform/text/gtk: Added.
1822         * platform/text/gtk/TextBreakIteratorInternalICUGtk.cpp: Copied from platform/gtk/TextBreakIteratorInternalICUGtk.cpp.
1823         * platform/text/mac/ShapeArabic.c: Copied from platform/mac/ShapeArabic.c.
1824         * platform/text/mac/ShapeArabic.h: Copied from platform/mac/ShapeArabic.h.
1825         * platform/text/mac/StringImplMac.mm: Copied from platform/mac/StringImplMac.mm.
1826         * platform/text/mac/StringMac.mm: Copied from platform/mac/StringMac.mm.
1827         * platform/text/mac/TextBoundaries.mm: Copied from platform/mac/TextBoundaries.mm.
1828         * platform/text/mac/TextBreakIteratorInternalICUMac.mm: Copied from platform/mac/TextBreakIteratorInternalICUMac.mm.
1829         * platform/text/mac/TextCodecMac.cpp: Copied from platform/mac/TextCodecMac.cpp.
1830         * platform/text/mac/TextCodecMac.h: Copied from platform/mac/TextCodecMac.h.
1831         * platform/text/mac/character-sets.txt: Copied from platform/mac/character-sets.txt.
1832         * platform/text/mac/mac-encodings.txt: Copied from platform/mac/mac-encodings.txt.
1833         * platform/text/mac/make-charset-table.pl: Copied from platform/mac/make-charset-table.pl.
1834         * platform/text/qt: Added.
1835         * platform/text/qt/StringQt.cpp: Copied from platform/qt/StringQt.cpp.
1836         * platform/text/qt/TextBoundaries.cpp: Copied from platform/qt/TextBoundaries.cpp.
1837         * platform/text/qt/TextBreakIteratorQt.cpp: Copied from platform/qt/TextBreakIteratorQt.cpp.
1838         * platform/text/qt/TextCodecQt.cpp: Copied from platform/qt/TextCodecQt.cpp.
1839         * platform/text/qt/TextCodecQt.h: Copied from platform/qt/TextCodecQt.h.
1840         * platform/text/symbian: Added.
1841         * platform/text/symbian/StringImplSymbian.cpp: Copied from platform/symbian/StringImplSymbian.cpp.
1842         * platform/text/symbian/StringSymbian.cpp: Copied from platform/symbian/StringSymbian.cpp.
1843         * platform/text/win: Added.
1844         * platform/text/win/TextBreakIteratorInternalICUWin.cpp: Copied from platform/win/TextBreakIteratorInternalICUWin.cpp.
1845         * platform/text/wx: Added.
1846         * platform/text/wx/StringWx.cpp: Copied from platform/wx/StringWx.cpp.
1847         * platform/win/FontCacheWin.cpp: Removed.
1848         * platform/win/FontCustomPlatformData.cpp: Removed.
1849         * platform/win/FontCustomPlatformData.h: Removed.
1850         * platform/win/FontDataWin.cpp: Removed.
1851         * platform/win/FontDatabase.cpp: Removed.
1852         * platform/win/FontDatabase.h: Removed.
1853         * platform/win/FontPlatformData.h: Removed.
1854         * platform/win/FontPlatformDataWin.cpp: Removed.
1855         * platform/win/FontWin.cpp: Removed.
1856         * platform/win/GlyphPageTreeNodeWin.cpp: Removed.
1857         * platform/win/TextBreakIteratorInternalICUWin.cpp: Removed.
1858         * platform/wx/FontCacheWx.cpp: Removed.
1859         * platform/wx/FontDataWx.cpp: Removed.
1860         * platform/wx/FontPlatformData.h: Removed.
1861         * platform/wx/FontPlatformDataWx.cpp: Removed.
1862         * platform/wx/FontWx.cpp: Removed.
1863         * platform/wx/GlyphMapWx.cpp: Removed.
1864         * platform/wx/StringWx.cpp: Removed.
1865         * webcore-wx.bkl:
1866
1867 2007-11-30  Kevin Ollivier  <kevino@theolliviers.com>
1868
1869         Build fix for wx port. Adding editing/RemoveFormatCommand.cpp
1870
1871         * WebCoreSources.bkl:
1872
1873 2007-11-30  Simon Hausmann  <hausmann@webkit.org>
1874
1875         Reviewed by Adam Roben.
1876
1877         Fix the build with DATABASE=0.
1878
1879         * page/Settings.cpp:
1880         (WebCore::Settings::setDefaultDatabaseOriginQuota):
1881         (WebCore::Settings::defaultDatabaseOriginQuota):
1882
1883 2007-11-30  Nikolas Zimmermann  <zimmermann@kde.org>
1884
1885         Rubber stamped by Darin.
1886
1887         Fix misplaced file. The name "FontStyle" is not correct though - it probably
1888         needs yet another move - but this time inside platform/graphics - as soon
1889         as we agree on a better name.
1890
1891         * WebCore.xcodeproj/project.pbxproj:
1892         * platform/graphics/FontStyle.h: Copied from platform/text/FontStyle.h.
1893         * platform/text/FontStyle.h: Removed.
1894
1895 2007-11-30  Nikolas Zimmermann  <zimmermann@kde.org>
1896
1897         Reviewed by Sam.
1898
1899         Rename "FontStyle FontStyle(...)" to "FontStyle fontStyle(...)".
1900         I scripted a bit too much while doing the TextStyle -> FontStyle change.
1901
1902         * platform/win/PopupMenuWin.cpp:
1903         (WebCore::PopupMenu::paint):
1904         * rendering/EllipsisBox.cpp:
1905         (WebCore::EllipsisBox::paint):
1906         * rendering/RenderFileUploadControl.cpp:
1907         (WebCore::RenderFileUploadControl::paintObject):
1908         * rendering/RenderListBox.cpp:
1909         (WebCore::RenderListBox::updateFromElement):
1910         (WebCore::RenderListBox::paintItemForeground):
1911         * rendering/RenderTextControl.cpp:
1912         (WebCore::RenderTextControl::setStyle):
1913         (WebCore::RenderTextControl::createInnerTextStyle):
1914         (WebCore::RenderTextControl::createSubtreeIfNeeded):
1915         * rendering/RenderTextControl.h:
1916         * rendering/SVGRootInlineBox.cpp:
1917         (WebCore::svgFontStyleForInlineTextBox):
1918
1919 2007-11-30  Alp Toker  <alp@atoker.com>
1920
1921         GTK+ build fix following the recent text reorganization.
1922
1923         * WebCore.pro:
1924
1925 2007-11-29  Jon Honeycutt  <jhoneycutt@apple.com>
1926
1927         Reviewed by Adam.
1928
1929         Part of <rdar://problem/5506522> Seed: cannot type into text box in
1930         Facebook, don't see plugin content (Adobe Flash)
1931
1932         * plugins/win/PluginViewWin.cpp:
1933         (WebCore::PluginViewWin::handleMouseEvent): Focus the plugin's parent
1934         frame  
1935
1936 2007-11-30  Nikolas Zimmermann  <zimmermann@kde.org>
1937
1938         Not reviewed. Trying to fix gtk/qt/wx build. (I expected problems because of the moves)
1939
1940         * WebCore.pro:
1941         * webcore-base.bkl:
1942
1943 2007-11-30  Nikolas Zimmermann  <zimmermann@kde.org>
1944
1945         Rubber stamped by Brady.
1946
1947         Started platform reorganization (platform/text addition).
1948         Moving string/text/font related classes into new places - as discussed on webkit-dev.
1949
1950         In a follow-up commit I'll move classes out of platform/{mac,win,...} into
1951         platform/text/{mac,win,...}, and also do the ksvg2/ -> svg/ move.
1952
1953         * WebCore.order:
1954         * WebCore.pro:
1955         * WebCore.vcproj/WebCore.vcproj:
1956         * WebCore.xcodeproj/project.pbxproj:
1957         * WebCoreSources.bkl:
1958         * editing/ReplaceSelectionCommand.cpp:
1959         (WebCore::ReplacementFragment::insertFragmentForTestRendering):
1960         * platform/AtomicString.cpp: Removed.
1961         * platform/AtomicString.h: Removed.
1962         * platform/AtomicStringImpl.h: Removed.
1963         * platform/Base64.cpp: Removed.
1964         * platform/Base64.h: Removed.
1965         * platform/BidiContext.cpp: Removed.
1966         * platform/BidiContext.h: Removed.
1967         * platform/BidiResolver.h: Removed.
1968         * platform/CString.cpp: Removed.
1969         * platform/CString.h: Removed.
1970         * platform/CharacterNames.h: Removed.
1971         * platform/CharsetData.h: Removed.
1972         * platform/Font.cpp: Removed.
1973         * platform/Font.h: Removed.
1974         * platform/FontCache.cpp: Removed.
1975         * platform/FontCache.h: Removed.
1976         * platform/FontData.cpp: Removed.
1977         * platform/FontData.h: Removed.
1978         * platform/FontDescription.h: Removed.
1979         * platform/FontFallbackList.cpp: Removed.
1980         * platform/FontFallbackList.h: Removed.
1981         * platform/FontFamily.cpp: Removed.
1982         * platform/FontFamily.h: Removed.
1983         * platform/FontSelector.h: Removed.
1984         * platform/GlyphBuffer.h: Removed.
1985         * platform/GlyphPageTreeNode.cpp: Removed.
1986         * platform/GlyphPageTreeNode.h: Removed.
1987         * platform/GlyphWidthMap.cpp: Removed.
1988         * platform/GlyphWidthMap.h: Removed.
1989         * platform/PlatformString.h: Removed.
1990         * platform/RegularExpression.cpp: Removed.
1991         * platform/RegularExpression.h: Removed.
1992         * platform/SegmentedString.cpp: Removed.
1993         * platform/SegmentedString.h: Removed.
1994         * platform/String.cpp: Removed.
1995         * platform/StringHash.h: Removed.
1996         * platform/StringImpl.cpp: Removed.
1997         * platform/StringImpl.h: Removed.
1998         * platform/StringTruncator.cpp: Removed.
1999         * platform/StringTruncator.h: Removed.
2000         * platform/TextBoundaries.h: Removed.
2001         * platform/TextBoundariesICU.cpp: Removed.
2002         * platform/TextBreakIterator.h: Removed.
2003         * platform/TextBreakIteratorICU.cpp: Removed.
2004         * platform/TextBreakIteratorInternalICU.h: Removed.
2005         * platform/TextCodec.cpp: Removed.
2006         * platform/TextCodec.h: Removed.
2007         * platform/TextCodecICU.cpp: Removed.
2008         * platform/TextCodecICU.h: Removed.
2009         * platform/TextCodecLatin1.cpp: Removed.
2010         * platform/TextCodecLatin1.h: Removed.
2011         * platform/TextCodecUTF16.cpp: Removed.
2012         * platform/TextCodecUTF16.h: Removed.
2013         * platform/TextCodecUserDefined.cpp: Removed.
2014         * platform/TextCodecUserDefined.h: Removed.
2015         * platform/TextDecoder.cpp: Removed.
2016         * platform/TextDecoder.h: Removed.
2017         * platform/TextDirection.h: Removed.
2018         * platform/TextEncoding.cpp: Removed.
2019         * platform/TextEncoding.h: Removed.
2020         * platform/TextEncodingRegistry.cpp: Removed.
2021         * platform/TextEncodingRegistry.h: Removed.
2022         * platform/TextStream.cpp: Removed.
2023         * platform/TextStream.h: Removed.
2024         * platform/TextStyle.h: Removed.
2025         * platform/UnicodeRange.cpp: Removed.
2026         * platform/UnicodeRange.h: Removed.
2027         * platform/graphics/Font.cpp: Copied from platform/Font.cpp.
2028         (WebCore::WidthIterator::WidthIterator):
2029         (WebCore::Font::width):
2030         (WebCore::Font::drawSimpleText):
2031         (WebCore::Font::drawGlyphBuffer):
2032         (WebCore::Font::drawText):
2033         (WebCore::Font::floatWidth):
2034         (WebCore::Font::floatWidthForSimpleText):
2035         (WebCore::Font::selectionRectForText):
2036         (WebCore::Font::selectionRectForSimpleText):
2037         (WebCore::Font::offsetForPosition):
2038         (WebCore::Font::offsetForPositionForSimpleText):
2039         * platform/graphics/Font.h: Copied from platform/Font.h.
2040         * platform/graphics/FontCache.cpp: Copied from platform/FontCache.cpp.
2041         * platform/graphics/FontCache.h: Copied from platform/FontCache.h.
2042         * platform/graphics/FontData.cpp: Copied from platform/FontData.cpp.
2043         * platform/graphics/FontData.h: Copied from platform/FontData.h.
2044         * platform/graphics/FontDescription.h: Copied from platform/FontDescription.h.
2045         * platform/graphics/FontFallbackList.cpp: Copied from platform/FontFallbackList.cpp.
2046         * platform/graphics/FontFallbackList.h: Copied from platform/FontFallbackList.h.
2047         * platform/graphics/FontFamily.cpp: Copied from platform/FontFamily.cpp.
2048         * platform/graphics/FontFamily.h: Copied from platform/FontFamily.h.
2049         * platform/graphics/FontSelector.h: Copied from platform/FontSelector.h.
2050         * platform/graphics/GlyphBuffer.h: Copied from platform/GlyphBuffer.h.
2051         * platform/graphics/GlyphPageTreeNode.cpp: Copied from platform/GlyphPageTreeNode.cpp.
2052         * platform/graphics/GlyphPageTreeNode.h: Copied from platform/GlyphPageTreeNode.h.
2053         * platform/graphics/GlyphWidthMap.cpp: Copied from platform/GlyphWidthMap.cpp.
2054         * platform/graphics/GlyphWidthMap.h: Copied from platform/GlyphWidthMap.h.
2055         * platform/graphics/GraphicsContext.cpp:
2056         (WebCore::GraphicsContext::drawText):
2057         (WebCore::GraphicsContext::drawBidiText):
2058         (WebCore::GraphicsContext::drawHighlightForText):
2059         * platform/graphics/GraphicsContext.h:
2060         * platform/graphics/StringTruncator.cpp: Copied from platform/StringTruncator.cpp.
2061         (WebCore::stringWidth):
2062         * platform/graphics/StringTruncator.h: Copied from platform/StringTruncator.h.
2063         * platform/graphics/qt/GraphicsContextQt.cpp:
2064         * platform/gtk/FontGtk.cpp:
2065         (WebCore::Font::drawComplexText):
2066         (WebCore::Font::floatWidthForComplexText):
2067         (WebCore::Font::offsetForPositionForComplexText):
2068         (WebCore::Font::selectionRectForComplexText):
2069         * platform/mac/FontMac.mm:
2070         (WebCore::ATSULayoutParameters::ATSULayoutParameters):
2071         (WebCore::Font::selectionRectForComplexText):
2072         (WebCore::Font::drawComplexText):
2073         (WebCore::Font::floatWidthForComplexText):
2074         (WebCore::Font::offsetForPositionForComplexText):
2075         * platform/mac/WebCoreTextRenderer.mm:
2076         (WebCoreDrawTextAtPoint):
2077         (WebCoreTextFloatWidth):
2078         * platform/qt/FontQt.cpp:
2079         (WebCore::generateComponents):
2080         (WebCore::Font::drawText):
2081         (WebCore::Font::width):
2082         (WebCore::Font::floatWidth):
2083         (WebCore::Font::offsetForPosition):
2084         (WebCore::cursorToX):
2085         (WebCore::Font::selectionRectForText):
2086         * platform/text: Added.
2087         * platform/text/AtomicString.cpp: Copied from platform/AtomicString.cpp.
2088         * platform/text/AtomicString.h: Copied from platform/AtomicString.h.
2089         * platform/text/AtomicStringImpl.h: Copied from platform/AtomicStringImpl.h.
2090         * platform/text/Base64.cpp: Copied from platform/Base64.cpp.
2091         * platform/text/Base64.h: Copied from platform/Base64.h.
2092         * platform/text/BidiContext.cpp: Copied from platform/BidiContext.cpp.
2093         * platform/text/BidiContext.h: Copied from platform/BidiContext.h.
2094         * platform/text/BidiResolver.h: Copied from platform/BidiResolver.h.
2095         * platform/text/CString.cpp: Copied from platform/CString.cpp.
2096         * platform/text/CString.h: Copied from platform/CString.h.
2097         * platform/text/CharacterNames.h: Copied from platform/CharacterNames.h.
2098         * platform/text/FontStyle.h: Copied from platform/TextStyle.h.
2099         (WebCore::FontStyle::FontStyle):
2100         * platform/text/PlatformString.h: Copied from platform/PlatformString.h.
2101         * platform/text/RegularExpression.cpp: Copied from platform/RegularExpression.cpp.
2102         * platform/text/RegularExpression.h: Copied from platform/RegularExpression.h.
2103         * platform/text/SegmentedString.cpp: Copied from platform/SegmentedString.cpp.
2104         * platform/text/SegmentedString.h: Copied from platform/SegmentedString.h.
2105         * platform/text/String.cpp: Copied from platform/String.cpp.
2106         * platform/text/StringHash.h: Copied from platform/StringHash.h.
2107         * platform/text/StringImpl.cpp: Copied from platform/StringImpl.cpp.
2108         * platform/text/StringImpl.h: Copied from platform/StringImpl.h.
2109         * platform/text/TextBoundaries.h: Copied from platform/TextBoundaries.h.
2110         * platform/text/TextBoundariesICU.cpp: Copied from platform/TextBoundariesICU.cpp.
2111         (WebCore::findNextWordFromIndex):
2112         * platform/text/TextBreakIterator.h: Copied from platform/TextBreakIterator.h.
2113         * platform/text/TextBreakIteratorICU.cpp: Copied from platform/TextBreakIteratorICU.cpp.
2114         * platform/text/TextBreakIteratorInternalICU.h: Copied from platform/TextBreakIteratorInternalICU.h.
2115         * platform/text/TextCodec.cpp: Copied from platform/TextCodec.cpp.
2116         * platform/text/TextCodec.h: Copied from platform/TextCodec.h.
2117         * platform/text/TextCodecICU.cpp: Copied from platform/TextCodecICU.cpp.
2118         * platform/text/TextCodecICU.h: Copied from platform/TextCodecICU.h.
2119         * platform/text/TextCodecLatin1.cpp: Copied from platform/TextCodecLatin1.cpp.
2120         * platform/text/TextCodecLatin1.h: Copied from platform/TextCodecLatin1.h.
2121         * platform/text/TextCodecUTF16.cpp: Copied from platform/TextCodecUTF16.cpp.
2122         * platform/text/TextCodecUTF16.h: Copied from platform/TextCodecUTF16.h.
2123         * platform/text/TextCodecUserDefined.cpp: Copied from platform/TextCodecUserDefined.cpp.
2124         * platform/text/TextCodecUserDefined.h: Copied from platform/TextCodecUserDefined.h.
2125         * platform/text/TextDecoder.cpp: Copied from platform/TextDecoder.cpp.
2126         * platform/text/TextDecoder.h: Copied from platform/TextDecoder.h.
2127         * platform/text/TextDirection.h: Copied from platform/TextDirection.h.
2128         * platform/text/TextEncoding.cpp: Copied from platform/TextEncoding.cpp.
2129         * platform/text/TextEncoding.h: Copied from platform/TextEncoding.h.
2130         * platform/text/TextEncodingRegistry.cpp: Copied from platform/TextEncodingRegistry.cpp.
2131         * platform/text/TextEncodingRegistry.h: Copied from platform/TextEncodingRegistry.h.
2132         * platform/text/TextStream.cpp: Copied from platform/TextStream.cpp.
2133         * platform/text/TextStream.h: Copied from platform/TextStream.h.
2134         * platform/text/UnicodeRange.cpp: Copied from platform/UnicodeRange.cpp.
2135         * platform/text/UnicodeRange.h: Copied from platform/UnicodeRange.h.
2136         * platform/text/mac: Added.
2137         * platform/text/mac/CharsetData.h: Copied from platform/CharsetData.h.
2138         * platform/win/FontWin.cpp:
2139         (WebCore::Font::selectionRectForComplexText):
2140         (WebCore::Font::drawComplexText):
2141         (WebCore::Font::floatWidthForComplexText):
2142         (WebCore::Font::offsetForPositionForComplexText):
2143         * platform/win/PopupMenuWin.cpp:
2144         (WebCore::PopupMenu::paint):
2145         * platform/win/UniscribeController.cpp:
2146         (WebCore::UniscribeController::UniscribeController):
2147         * platform/win/UniscribeController.h:
2148         * platform/win/WebCoreTextRenderer.cpp:
2149         (WebCore::doDrawTextAtPoint):
2150         * platform/wx/FontWx.cpp:
2151         (WebCore::Font::selectionRectForComplexText):
2152         (WebCore::Font::drawComplexText):
2153         (WebCore::Font::floatWidthForComplexText):
2154         (WebCore::Font::offsetForPositionForComplexText):
2155         * rendering/EllipsisBox.cpp:
2156         (WebCore::EllipsisBox::paint):
2157         * rendering/InlineTextBox.cpp:
2158         (WebCore::InlineTextBox::selectionRect):
2159         (WebCore::InlineTextBox::paint):
2160         (WebCore::InlineTextBox::paintSelection):
2161         (WebCore::InlineTextBox::paintCompositionBackground):
2162         (WebCore::InlineTextBox::paintSpellingOrGrammarMarker):
2163         (WebCore::InlineTextBox::paintTextMatchMarker):
2164         (WebCore::InlineTextBox::offsetForPosition):
2165         (WebCore::InlineTextBox::positionForOffset):
2166         * rendering/RenderFileUploadControl.cpp:
2167         (WebCore::RenderFileUploadControl::paintObject):
2168         (WebCore::RenderFileUploadControl::calcPrefWidths):
2169         * rendering/RenderImage.cpp:
2170         * rendering/RenderListBox.cpp:
2171         (WebCore::RenderListBox::updateFromElement):
2172         (WebCore::RenderListBox::paintItemForeground):
2173         * rendering/RenderMenuList.cpp:
2174         (WebCore::RenderMenuList::updateOptionsWidth):
2175         * rendering/RenderText.cpp:
2176         (WebCore::RenderText::widthFromCache):
2177         (WebCore::RenderText::calcPrefWidths):
2178         (WebCore::RenderText::width):
2179         * rendering/RenderTextControl.cpp:
2180         (WebCore::RenderTextControl::setStyle):
2181         (WebCore::RenderTextControl::createInnerFontStyle):
2182         (WebCore::RenderTextControl::createSubtreeIfNeeded):
2183         (WebCore::RenderTextControl::calcPrefWidths):
2184         * rendering/RenderTextControl.h:
2185         * rendering/SVGInlineTextBox.cpp:
2186         (WebCore::SVGInlineTextBox::calculateGlyphWidth):
2187         (WebCore::SVGInlineTextBox::paintCharacters):
2188         (WebCore::SVGInlineTextBox::paintSelection):
2189         * rendering/SVGRootInlineBox.cpp:
2190         (WebCore::cummulatedWidthOfInlineBoxCharacterRange):
2191         (WebCore::svgFontStyleForInlineTextBox):
2192         * rendering/SVGRootInlineBox.h:
2193
2194 2007-11-30  Adele Peterson  <adele@apple.com>
2195
2196         Reviewed by Darin.
2197
2198         Fix for http://bugs.webkit.org/show_bug.cgi?id=16072
2199         <rdar://problem/5463821> REGRESSION: Mousemove event isn't fired when mouse moves over scrollbar with pressed button (16072)
2200
2201         Test: fast/events/mousemove-after-drag-over-scrollbar.html
2202
2203         * page/EventHandler.cpp:
2204         (WebCore::EventHandler::handleMouseMoveEvent): If the mouse is pressed, and we've moved over a new scrollbar, then we can clear m_lastScrollbarUnderMouse.
2205          We should only need to show the hover effect when the mouse isn't pressed.
2206
2207 2007-11-29  Brady Eidson <beidson@apple.com>
2208
2209         Reviewed by Tim
2210
2211         Part of <rdar://problem/5556377> - Need to accurately track and enforce database quota
2212
2213         SQLite has the ability to enforce the page usage for databases.  This gives us bulletproof
2214         enforcement of the database size limit with reasonable granularity (within 1023 bytes by 
2215         default on OS X with SQLite 3.4.0)
2216
2217         This also involved enhancing the ability to install/remove the authorizer to run the PRAGMA
2218         statements involved
2219
2220         Note this patch does not actually use the new maximumSize() functionality of the 
2221         SQLiteDatabase class - that can be reviewed/landed seperately
2222         
2223         * platform/sql/SQLiteDatabase.cpp:
2224         (WebCore::SQLiteDatabase::SQLiteDatabase): 
2225         (WebCore::SQLiteDatabase::maximumSize): Return the current maximum size in bytes
2226         (WebCore::SQLiteDatabase::setMaximumSize): Based on m_pageSize, set the maximum page count
2227           to enforce the maximum size in bytes
2228         (WebCore::SQLiteDatabase::pageSize): Fetch m_pageSize if it hasn't been fetched, or return
2229           the cached value
2230         (WebCore::SQLiteDatabase::setAuthorizer): Use enableAuthorizer for the sqlite_* level 
2231           authorizer setup
2232         (WebCore::SQLiteDatabase::enableAuthorizer): Install or remove the sqlite authorizer handler
2233         * platform/sql/SQLiteDatabase.h: Add the m_pageSize member so we only have to fetch it once
2234
2235 2007-11-29  Holger Hans Peter Freyther  <holger.freyther@trolltech.com>
2236
2237         Reviewed by Maciej.
2238
2239         * Fix fast/events/mousedown_in_scrollbar.html
2240         * This test used to crash in PlatformScrollbarQt::mouse*Event due parent() returning 0.
2241         * Extend the current check that the scrollbar in the mev can be go away.
2242         This happens if we destroy a RenderLayer as the result of a click. In the
2243         case of Qt we can have this scrollbar in m_lastScrollbarUnderMouse. The RenderLayer
2244         is the ScrollbarClient, m_lastScrollbarUnderMouse is a RefPtr and keeps the
2245         last reference. When calling into this scrollbar the m_client pointer is a dangling pointer.
2246         We extend the check to set m_lastScrollbarUnderMouse back to zero when it was the
2247         scrollbar in the old mev and is gone in the new one.
2248         * This happens only on the Qt port because we send more/different move events.
2249
2250         * page/EventHandler.cpp:
2251         (WebCore::EventHandler::handleMousePressEvent):
2252
2253 2007-11-29  Antti Koivisto  <antti@apple.com>
2254
2255         Reviewed by Mitz.
2256
2257         Fix aspect ratio calculation of video.
2258         
2259         Video should always be treated as a replaced element in size calculation.
2260         
2261         Test: media/video-aspect-ratio.html
2262
2263         * rendering/RenderBox.cpp:
2264         (WebCore::RenderBox::calcWidth):
2265         (WebCore::RenderBox::calcHeight):
2266         * rendering/RenderBox.h:
2267         (WebCore::RenderBox::shouldCalculateSizeAsReplaced):
2268         * rendering/RenderMedia.h:
2269         (WebCore::RenderMedia::shouldCalculateSizeAsReplaced):
2270
2271 2007-11-29  Sam Weinig  <sam@webkit.org>
2272
2273         Reviewed by Oliver.
2274
2275         Additional fix for <rdar://problem/5592988> / http://bugs.webkit.org/show_bug.cgi?id=15936
2276         - More closely match IE's policy for frame navigation.
2277
2278         * bindings/js/kjs_window.cpp:
2279         (KJS::WindowProtoFuncOpen::callAsFunction):
2280         * loader/FrameLoader.cpp:
2281         (WebCore::FrameLoader::shouldAllowNavigation):
2282         * page/FrameTree.cpp:
2283         (WebCore::FrameTree::top):
2284         * page/FrameTree.h:
2285
2286 2007-11-29  Dan Bernstein  <mitz@apple.com>
2287
2288         Reviewed by Adam Roben and John Sullivan.
2289
2290         - make the recent searches popup extend only along the straight part of
2291           the search field (unless it needs to be wider).
2292
2293         * platform/PopupMenuClient.h:
2294           Added clientInsetLeft() and clientInsetRight() for clients to
2295           specify desired horizontal insets for the menu.
2296         * platform/win/PopupMenuWin.cpp:
2297         (WebCore::PopupMenu::calculatePositionAndSize):
2298         (WebCore::PopupMenu::paint):
2299         * rendering/RenderMenuList.cpp:
2300         (WebCore::RenderMenuList::clientInsetLeft): Added. Returns 0.
2301         (WebCore::RenderMenuList::clientInsetRight): Ditto.
2302         * rendering/RenderMenuList.h:
2303         * rendering/RenderTextControl.cpp:
2304         (WebCore::RenderTextControl::clientInsetLeft): Added. Returns half the
2305         control's height, which is the radius of the cap on the left.
2306         (WebCore::RenderTextControl::clientInsetRight): Added.
2307         * rendering/RenderTextControl.h:
2308
2309 2007-11-30  Alp Toker  <alp@atoker.com>
2310
2311         Reviewed by Maciej.
2312
2313         http://bugs.webkit.org/show_bug.cgi?id=16173
2314         Licensing change
2315
2316         Change license from BSD to LGPL.
2317
2318         This is being done to encourage vendors to contribute their fixes back
2319         upstream.
2320
2321         * platform/graphics/gtk/ColorGtk.cpp:
2322         * platform/graphics/gtk/IntPointGtk.cpp:
2323         * platform/graphics/gtk/IntRectGtk.cpp:
2324         * platform/graphics/svg/cairo/RenderPathCairo.cpp:
2325         * platform/graphics/svg/cairo/SVGPaintServerCairo.cpp:
2326         * platform/graphics/svg/cairo/SVGPaintServerGradientCairo.cpp:
2327         * platform/graphics/svg/cairo/SVGPaintServerPatternCairo.cpp:
2328         * platform/graphics/svg/cairo/SVGPaintServerSolidCairo.cpp:
2329         * platform/graphics/svg/cairo/SVGResourceClipperCairo.cpp:
2330         * platform/graphics/svg/cairo/SVGResourceMaskerCairo.cpp:
2331         * platform/gtk/Language.cpp:
2332         * platform/gtk/LoggingGtk.cpp:
2333         * platform/gtk/SoundGtk.cpp:
2334         * platform/gtk/SystemTimeGtk.cpp:
2335         * platform/gtk/TextBreakIteratorInternalICUGtk.cpp:
2336
2337 2007-11-29  Darin Adler  <darin@apple.com>
2338
2339         Reviewed by Adele.
2340
2341         - fix http://bugs.webkit.org/show_bug.cgi?id=16191
2342           REGRESSION: cannot tab to radio input after setting checked to false
2343
2344         Test: fast/forms/input-radio-checked-tab.html
2345
2346         * html/HTMLFormElement.cpp:
2347         (WebCore::HTMLFormElement::CheckedRadioButtons::addButton): Fix this code
2348         so that it doesn't call setChecked(false) until after the map has been updated.
2349         Otherwise, we can end up deallocating the map before manipulating it. As long
2350         as I was changing the function, I decided to make it do only a single hash
2351         table lookup.
2352
2353         * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::setChecked):
2354         Remove the button from the radio buttons set before changing the checked
2355         state. This matches the idiom used elsewhere and fixes the problem where
2356         setting checked to false would not remove it from the set.
2357
2358 2007-11-29  Justin Garcia  <justin.garcia@apple.com>
2359
2360         Reviewed by Darin Adler.
2361
2362         <rdar://problem/5620093> Brief hang when Safari caches page text of XML document
2363
2364         * editing/TextIterator.cpp:
2365         (WebCore::TextIterator::representNodeOffsetZero): When we haven't been emitting any 
2366         characters, shouldRepresentNodeOffsetZero() can create VisiblePositions, which is
2367         expensive.  So, we perform the inexpensive checks on m_node to see if it necessitates 
2368         emitting a character first and will early return before encountering 
2369         shouldRepresentNodeOffsetZero()s worse case behavior.
2370
2371 2007-11-29  Anders Carlsson  <andersca@apple.com>
2372
2373         Reviewed by Sam.
2374
2375         Don't install event handlers or set the zoom cursor if auto-shrink has been disabled.
2376
2377         * loader/ImageDocument.cpp:
2378         (WebCore::ImageDocument::createDocumentStructure):
2379         (WebCore::ImageDocument::imageChanged):
2380
2381 2007-11-29  Beth Dakin  <bdakin@apple.com>
2382
2383         Reviewed by Geoff.
2384
2385         Fix for <rdar://problem/5620151> Disable JavaScript for SVG as 
2386         image for <img> and CSS images
2387
2388         * platform/graphics/svg/SVGImage.cpp:
2389         (WebCore::SVGImage::dataChanged): When we create the empty clients, 
2390         explicitly disable JavaScript in the settings.
2391
2392 2007-11-29  Brady Eidson  <beidson@apple.com>
2393
2394         Reviewed by Anders
2395
2396         Support for <rdar://problem/5556381> and <rdar://problem/5556379>
2397
2398         The Database feature in the engine needs to support delegate calls for policy decisions and
2399         also provide notifications when origins and databases change their state.
2400
2401         This patch also polishes off the missing features of the management API
2402
2403         * page/Chrome.cpp: Implement the two UIDelegate methods
2404         (WebCore::Chrome::requestQuotaIncreaseForNewDatabase): Ask for more space to create a new database if it won't fit
2405         (WebCore::Chrome::requestQuotaIncreaseForDatabaseOperation): Ask for more space to complete an in-progress operation
2406         * page/Chrome.h:
2407         * page/ChromeClient.h:
2408         * platform/graphics/svg/SVGImageEmptyClients.h:
2409         (WebCore::SVGEmptyChromeClient::requestQuotaIncreaseForNewDatabase):
2410         (WebCore::SVGEmptyChromeClient::requestQuotaIncreaseForDatabaseOperation):
2411
2412         * storage/Database.cpp:
2413         (WebCore::Database::openDatabase): Check to see if this database can be opened - the quota must be high 
2414           enough and if it isn't, the UIDelegate should have a change to bump the quota.
2415           Also update the UI-relevant details (display name and estimated size) upon successful opening of the database
2416
2417         * storage/DatabaseDetails.h: Remove the version parameter as it is a programatic detail of a
2418           site database and is not important to API clients
2419         (WebCore::DatabaseDetails::DatabaseDetails):
2420         (WebCore::DatabaseDetails::isValid):
2421         (WebCore::DatabaseDetails::name):
2422
2423         * storage/DatabaseTracker.cpp:
2424         (WebCore::DatabaseTracker::openTrackerDatabase): Tweaked the schema here - there was a horrible bug with the old schema that would
2425           prevent you from having two databases of the same name from two different origins.  Also simplify the origin-management schema
2426         (WebCore::DatabaseTracker::canEstablishDatabase): Added.  Does some estimated size vs quota checks, and asks the UI delegate for 
2427           more space if necessary
2428         (WebCore::DatabaseTracker::hasEntryForOrigin):
2429         (WebCore::DatabaseTracker::establishEntryForOrigin): Establishes a tracker entry for the given origin with the current default quota
2430           Also notifies the client of the new origin
2431         (WebCore::DatabaseTracker::setDatabaseDetails): Update the display name and estimated size for the given database
2432         (WebCore::DatabaseTracker::fullPathForDatabase): Tweak to add the ability to get the path without creating it - for management purposes
2433         (WebCore::DatabaseTracker::populateOrigins): Populate origins from the Origins table instead of the Databases table
2434         (WebCore::DatabaseTracker::origins):
2435         (WebCore::DatabaseTracker::detailsForNameAndOrigin): For API management
2436         (WebCore::DatabaseTracker::usageForDatabase):
2437         (WebCore::DatabaseTracker::usageForOrigin):
2438         (WebCore::DatabaseTracker::quotaForOrigin):
2439         (WebCore::DatabaseTracker::setQuota): Notify the client
2440         (WebCore::DatabaseTracker::addDatabase): Notify the client 
2441         (WebCore::DatabaseTracker::deleteAllDatabases):
2442         (WebCore::DatabaseTracker::deleteDatabasesWithOrigin):
2443         (WebCore::DatabaseTracker::deleteDatabase):
2444         (WebCore::DatabaseTracker::deleteDatabaseFile):
2445         * storage/DatabaseTracker.h:
2446
2447 2007-11-29  Dan Bernstein  <mitz@apple.com>
2448
2449         Reviewed by Beth Dakin and Darin Adler.
2450
2451         - manual test for <rdar://problem/5346394> Contextmenu event doesn't fire on body element inside frame
2452
2453         * manual-tests/context-click-unfocused-frame.html: Added.
2454
2455 2007-11-28  Antti Koivisto  <antti@apple.com>
2456
2457         Reviewed by Geoff.
2458         
2459         Fallback content inside media elements should not be rendered.
2460
2461         Test: media/fallback.html
2462
2463         * rendering/RenderMedia.h:
2464         (WebCore::RenderMedia::canHaveChildren):
2465
2466 2007-11-28  Mark Rowe  <mrowe@apple.com>
2467
2468         Windows build fix.
2469
2470         * WebCore.vcproj/WebCore.vcproj:
2471
2472 2007-11-28  Mark Rowe  <mrowe@apple.com>
2473
2474         Gtk build fix.
2475
2476         * WebCore.pro:
2477
2478 2007-11-28  Antti Koivisto  <antti@apple.com>
2479
2480         Reviewed by Oliver.
2481
2482         Make QTMovieView fill color transparent. This behavior matches the specification
2483         (and allows nice alpha blended video).
2484
2485         * platform/graphics/mac/MoviePrivateQTKit.mm:
2486         (WebCore::MoviePrivate::createQTMovieView):
2487
2488 2007-11-28  Antti Koivisto  <antti@apple.com>
2489
2490         Reviewed by Darin.
2491
2492         Test: media/video-controls.html
2493         
2494         <rdar://problem/5605668>
2495         Implement controls attribute for video element
2496         
2497         - Add RenderMedia and make RenderVideo its subclass. Controls code goes to RenderMedia while
2498           video specific (painting etc) code stays in RenderVideo. For example audio controls can be implemented
2499           later by just instantiating RenderMedia as renderer.
2500         - Make media renderer hierarchy inherit from RenderBlock instead of RenderReplaced so it can 
2501           have child nodes (for controls).
2502         - Controls are implemented as a shadow DOM.
2503         - Current look is a placeholder. It is defined purely in CSS.
2504         - Some things like volume controls are not yet implemented.
2505         - Fade-in/out is done manually, CSS animations don't work well in shadow trees.
2506           
2507         * WebCore.xcodeproj/project.pbxproj:
2508         * css/html4.css:
2509         * html/HTMLMediaElement.cpp:
2510         (WebCore::HTMLMediaElement::attributeChanged):
2511         (WebCore::HTMLMediaElement::updateMovie):
2512         (WebCore::HTMLMediaElement::defaultEventHandler):
2513         * html/HTMLMediaElement.h:
2514         * rendering/RenderMedia.cpp: Added.
2515         (WebCore::MediaControlShadowRootElement::MediaControlShadowRootElement):
2516         (WebCore::MediaControlShadowRootElement::isShadowNode):
2517         (WebCore::MediaControlShadowRootElement::shadowParentNode):
2518         (WebCore::MediaControlInputElement::MediaControlInputElement):
2519         (WebCore::MediaControlInputElement::attachToParent):
2520         (WebCore::MediaControlPlayButtonElement::MediaControlPlayButtonElement):
2521         (WebCore::MediaControlPlayButtonElement::inPausedState):
2522         (WebCore::MediaControlPlayButtonElement::defaultEventHandler):
2523         (WebCore::MediaControlPlayButtonElement::update):
2524         (WebCore::MediaControlTimelineElement::MediaControlTimelineElement):
2525         (WebCore::MediaControlTimelineElement::defaultEventHandler):
2526         (WebCore::MediaControlTimelineElement::update):
2527         (WebCore::RenderMedia::RenderMedia):
2528         (WebCore::RenderMedia::~RenderMedia):
2529         (WebCore::RenderMedia::mediaElement):
2530         (WebCore::RenderMedia::movie):
2531         (WebCore::RenderMedia::setStyle):
2532         (WebCore::RenderMedia::createControlsShadowRoot):
2533         (WebCore::RenderMedia::createPanel):
2534         (WebCore::RenderMedia::createPlayButton):
2535         (WebCore::RenderMedia::createTimeline):
2536         (WebCore::RenderMedia::createTimeDisplay):
2537         (WebCore::RenderMedia::updateFromElement):
2538         (WebCore::RenderMedia::updateControls):
2539         (WebCore::RenderMedia::timeUpdateTimerFired):
2540         (WebCore::RenderMedia::updateTimeDisplay):
2541         (WebCore::RenderMedia::updateControlVisibility):
2542         (WebCore::RenderMedia::changeOpacity):
2543         (WebCore::RenderMedia::opacityAnimationTimerFired):
2544         (WebCore::RenderMedia::forwardEvent):
2545         * rendering/RenderMedia.h: Added.
2546         (WebCore::RenderMedia::renderName):
2547         (WebCore::RenderMedia::isMedia):
2548         (WebCore::RenderMedia::intrinsicSize):
2549         * rendering/RenderObject.h:
2550         (WebCore::RenderObject::isMedia):
2551         * rendering/RenderVideo.cpp:
2552         (WebCore::RenderVideo::RenderVideo):
2553         (WebCore::RenderVideo::videoSizeChanged):
2554         (WebCore::RenderVideo::paintObject):
2555         (WebCore::RenderVideo::layout):
2556         (WebCore::RenderVideo::updateFromElement):
2557         (WebCore::RenderVideo::calcAspectRatioWidth):
2558         (WebCore::RenderVideo::calcAspectRatioHeight):
2559         * rendering/RenderVideo.h:
2560
2561 2007-11-28  Justin Garcia  <justin.garcia@apple.com>
2562
2563         Reviewed by Darin Adler.
2564
2565         <rdar://problem/5573879> GMail Beta: Crash in when undoing Remove Formating
2566         
2567         In the new beta, Google has added some custom code on top of our RemoveFormat
2568         to work around a bug where fully selected lists aren't removed.  This code corrupts
2569         the undo stack and causes crashes.  This change fixes two problems with RemoveFormat
2570         so that Google doesn't have to have any custom code. After checking this in I'll 
2571         work on bulletproofing the undo stack
2572
2573         * WebCore.xcodeproj/project.pbxproj: 
2574         * editing/CompositeEditCommand.cpp:
2575         (WebCore::CompositeEditCommand::insertLineBreak): Added this convenience method.
2576         (WebCore::CompositeEditCommand::inputText): Added code to select all inserted text, not
2577         just the last paragraph.  Added code to support an input string with '\n's.
2578         * editing/CompositeEditCommand.h:
2579         * editing/Editor.cpp:
2580         (WebCore::Editor::removeFormattingAndStyle): Moved code to its own EditCommand.
2581         * editing/RemoveFormatCommand.cpp: Added. Moved code from removeFormattingAndStyle here.
2582         (WebCore::RemoveFormatCommand::RemoveFormatCommand):
2583         (WebCore::RemoveFormatCommand::doApply): Added code to remove fully selected lists.
2584         * editing/RemoveFormatCommand.h: Added.
2585         (WebCore::RemoveFormatCommand::editingAction):
2586
2587 2007-11-28  Dan Bernstein  <mitz@apple.com>
2588
2589         Reviewed by Dave Hyatt.
2590
2591         - fix <rdar://problem/5612459> CrashTracer: [REGRESSION] 61 crashes in Safari at com.apple.WebCore: WebCore::AutoTableLayout::layout + 2046
2592
2593         Test: fast/table/empty-auto-column-zero-divide.html
2594
2595         * rendering/AutoTableLayout.cpp:
2596         (WebCore::AutoTableLayout::recalcColumn):
2597         (WebCore::AutoTableLayout::fullRecalc):
2598         (WebCore::AutoTableLayout::calcEffectiveWidth):
2599         (WebCore::AutoTableLayout::layout): When distributing the remaining
2600         width among columns, skip those whose effective (rather than
2601         specified) width is auto and contain only empty cells.
2602
2603 2007-11-28  Peter Kasting  <zerodpx@gmail.com>
2604
2605         Reviewed by Alp Toker.
2606
2607         http://bugs.webkit.org/show_bug.cgi?id=16169
2608         GIF decoder needs to set hasAlpha() correctly on subsequent frames.
2609         
2610         This also removes the workaround for this problem in
2611         ImageSourceCairo.cpp.
2612
2613         * platform/graphics/cairo/ImageSourceCairo.cpp:
2614         (WebCore::ImageSource::frameHasAlphaAtIndex):
2615         * platform/image-decoders/gif/GIFImageDecoder.cpp:
2616         (WebCore::GIFImageDecoder::initFrameBuffer):
2617
2618 2007-11-28  Dan Bernstein  <mitz@apple.com>
2619
2620         Reviewed by Darin Adler and Adam Roben.
2621
2622         - <rdar://problem/5057218> Reenable "recent searches" search field menu when menu is fully implemented
2623
2624         * platform/win/SearchPopupMenuWin.cpp:
2625         (WebCore::SearchPopupMenu::enabled): Changed to return true.
2626         (WebCore::autosaveKey): Added. Returns a preferences key for the
2627         autosave name by prefixing it with "com.apple.WebKit.searchField:".
2628         (WebCore::SearchPopupMenu::saveRecentSearches): Implemented.
2629         (WebCore::SearchPopupMenu::loadRecentSearches): Implemented.
2630
2631 2007-11-28  Alp Toker  <alp@atoker.com>
2632
2633         Reviewed by Mark Rowe.
2634
2635         http://bugs.webkit.org/show_bug.cgi?id=15689
2636         [GTK] Background of loading images is always black
2637
2638         frameHasAlphaAtIndex() exists only to allow optimization for cases we
2639         are certain the image can be blitted rather than composited.
2640
2641         Thus we need to be conservative, returning false only when we are
2642         absolutely certain there is no need for composited copying, and true
2643         otherwise.
2644
2645         CG doesn't even bother with this optimization at all and always
2646         returns true.
2647
2648         Patch includes a workaround for
2649           http://bugs.webkit.org/show_bug.cgi?id=16169
2650           GIF ImageDecoder hasAlpha() return value incorrect
2651
2652         * platform/graphics/cairo/ImageSourceCairo.cpp:
2653         (WebCore::ImageSource::frameHasAlphaAtIndex):
2654
2655 2007-11-27  Alp Toker  <alp@atoker.com>
2656
2657         Reviewed by Mark Rowe.
2658
2659         Install the JavaScriptCore headers as part of the GTK+ port.
2660
2661         * WebCore.pro:
2662
2663 2007-11-27  Beth Dakin  <bdakin@apple.com>
2664
2665         Reviewed by Oliver.
2666
2667         Fix for <rdar://problem/5616052> SVGs with width or height of 100% 
2668         hang when used as a background-image (16164)
2669
2670         * platform/graphics/svg/SVGImage.cpp:
2671         (WebCore::SVGImage::size): Use valueAsPercentage() for percents 
2672         instead of valueInSpecifiedUnits(). valueInSpecifiedUnits() 
2673         returns, for example, 50 for 50%, so multiplying percentages by the 
2674         default size of 300 x 150 led to ridiculously huge dimensions for 
2675         SVG images, and the subsequent hang. 
2676
2677 2007-11-27  Jon Honeycutt  <jhoneycutt@apple.com>
2678
2679         Reviewed by Adam.
2680
2681         Set haveRegisteredWindowClass when we register the window class.
2682
2683         * plugins/win/PluginViewWin.cpp:
2684         (WebCore::registerPluginView):
2685
2686 2007-11-27  Timothy Hatcher  <timothy@apple.com>
2687
2688         Reviewed by Sam Weinig.
2689
2690         Bug 16165: Dragging the inspector toolbar should move the window
2691         http://bugs.webkit.org/show_bug.cgi?id=16165
2692
2693         * page/inspector/DocumentPanel.js: Call the new drag functions, and cleanup code.
2694         * page/inspector/inspector.css: Only make the toolbar transparent in detached mode.
2695         * page/inspector/inspector.js: Call the new drag functions, and cleanup code. Add
2696           toolbar drag functions that move the window.
2697
2698 2007-11-27  Antti Koivisto  <antti@apple.com>
2699
2700         Reviewed by Mitz.
2701
2702         Small changes to make RenderSlider a bit more generic so it can be used in video controls.
2703
2704         * html/HTMLInputElement.cpp:
2705         (WebCore::HTMLInputElement::defaultEventHandler): Fix coordinates with forwarded events.
2706         * rendering/RenderSlider.cpp:
2707         (WebCore::HTMLSliderThumbElement::defaultEventHandler): Fix coordinates with forwarded events.
2708         (WebCore::RenderSlider::setStyle):
2709         (WebCore::RenderSlider::createThumbStyle): Copy thumb left and top from the orginal style so position does not reset.
2710         (WebCore::RenderSlider::mouseEventIsInThumb): Make this work with forwarded events.
2711         * rendering/RenderSlider.h:
2712
2713 2007-11-27  Antti Koivisto  <antti@apple.com>
2714
2715         Reviewed by Darin.
2716
2717         - Don't use hasPseudoId() optimization for pseudo styles used in shadow trees. These styles
2718           generally exist when asked for so the optimization does not do much. This reverses the continuing
2719           growth of the _pseudoBits bitfield in RenderStyle.
2720         - Add some pseudo elements for media controls
2721
2722         * css/CSSSelector.cpp:
2723         (WebCore::CSSSelector::extractPseudoType):
2724         * css/CSSSelector.h:
2725         (WebCore::CSSSelector::):
2726         * css/CSSStyleSelector.cpp:
2727         (WebCore::CSSStyleSelector::matchRulesForList):
2728         (WebCore::CSSStyleSelector::checkOneSelector):
2729         * rendering/RenderObject.cpp:
2730         (WebCore::RenderObject::getPseudoStyle):
2731         * rendering/RenderStyle.cpp:
2732         (WebCore::pseudoBit):
2733         (WebCore::RenderStyle::hasPseudoStyle):
2734         (WebCore::RenderStyle::setHasPseudoStyle):
2735         * rendering/RenderStyle.h:
2736         (WebCore::RenderStyle::):
2737
2738 2007-11-27  Timothy Hatcher  <timothy@apple.com>
2739
2740         Reviewed by Kevin McCullough.
2741
2742         Bug 16161: window.moveBy(0, 0) moves the window by -22px vertically
2743         http://bugs.webkit.org/show_bug.cgi?id=16161
2744
2745         Removed the "Adjust the window rect to be in the coordinate space of
2746         the screen rect" step which was always adding (0,22) to the window
2747         position (on the main screen). Instead, account for screen X and Y
2748         in the bottom and right constrain step.
2749
2750         Added more test cases to: fast/dom/Window/window-resize.html
2751
2752         * bindings/js/kjs_window.cpp:
2753         (KJS::adjustWindowRect):
2754
2755 2007-11-27  Timothy Hatcher  <timothy@apple.com>
2756
2757         Reviewed by Adam Roben.
2758
2759         * page/inspector/inspector.css: Make the text in the Network
2760         panel legend more readable.
2761
2762 2007-11-27  Timothy Hatcher  <timothy@apple.com>
2763
2764         Reviewed by Adam Roben.
2765
2766         Don't call setNeedsReapplyStylesInAllFrames if the
2767         authorAndUserStylesEnabled setting didn't change.
2768
2769         * page/Settings.cpp:
2770         (WebCore::Settings::setAuthorAndUserStylesEnabled):
2771
2772 2007-11-27  Alp Toker  <alp@atoker.com>
2773
2774         Fix potential broken build due to a missing DEPENDPATH.
2775
2776         * WebCore.pro:
2777
2778 2007-11-26  Timothy Hatcher  <timothy@apple.com>
2779
2780         Reviewed by Dave Hyatt.
2781
2782         <rdar://problem/5569233> Add the ability to disable author and user CSS styles
2783
2784         * WebCore.base.exp: Add the Settings::setAuthorAndUserStylesEnabled symbol.
2785         * css/CSSStyleSelector.cpp:
2786         (WebCore::CSSStyleSelector::CSSStyleSelector): Add a new matchAuthorAndUserStyles parameter.
2787         (WebCore::CSSStyleSelector::styleForElement): Check m_matchAuthorAndUserStyles before
2788         matching user and author rules.
2789         (WebCore::CSSStyleSelector::pseudoStyleForElement): Ditto.
2790         (WebCore::CSSStyleSelector::styleRulesForElement): Ditto.
2791         * css/CSSStyleSelector.h: Add m_matchAuthorAndUserStyles and new constructor parameter.
2792         * dom/Document.cpp:
2793         (WebCore::Document::Document): Pass Settings::authorAndUserStylesEnabled to the CSSStyleSelector.
2794         (WebCore::Document::recalcStyleSelector): Skip collecting the author stylesheets if
2795         Settings::authorAndUserStylesEnabled is false, and pass that to the CSSStyleSelector.
2796         * page/Settings.cpp:
2797         (WebCore::Settings::Settings): Initialize m_authorAndUserStylesEnabled to true.
2798         (WebCore::Settings::setAuthorAndUserStylesEnabled): Recalc style in all the frames
2799         when the setting changes.
2800         * page/Settings.h: Add m_authorAndUserStylesEnabled.
2801         (WebCore::Settings::authorAndUserStylesEnabled): Return m_authorAndUserStylesEnabled.
2802
2803 2007-11-27  Alp Toker  <alp@atoker.com>
2804
2805         Reviewed by Mark Rowe.
2806
2807         Based on changes by Mike Emmel.
2808
2809         CURL HTTP backend local file fixes:
2810
2811         Set a MIME type for local files based on the file extension.
2812
2813         Remove any HTTP query part sent to a local file.
2814
2815         * platform/network/curl/ResourceHandleManager.cpp:
2816         (WebCore::ResourceHandleManager::startJob):
2817
2818 2007-11-26  Brady Eidson  <beidson@apple.com>
2819
2820         Reviewed by Mark Rowe
2821
2822         Allow setting the default storage quota per database origin
2823
2824         * WebCore.base.exp:
2825
2826         * page/Settings.cpp:
2827         (WebCore::Settings::setDefaultDatabaseOriginQuota):
2828         (WebCore::Settings::defaultDatabaseOriginQuota):
2829         * page/Settings.h:
2830
2831         * storage/DatabaseTracker.cpp:
2832         (WebCore::DatabaseTracker::DatabaseTracker):
2833         (WebCore::DatabaseTracker::setDefaultOriginQuota):
2834         (WebCore::DatabaseTracker::defaultOriginQuota):
2835         * storage/DatabaseTracker.h:
2836
2837 2007-11-26  Peter Kasting  <zerodpx@gmail.com>
2838
2839         Reviewed by Alp Toker.
2840
2841         http://bugs.webkit.org/show_bug.cgi?id=15974
2842         GIF decoding should respect frames' specified disposal methods.
2843
2844         * platform/image-decoders/ImageDecoder.h:
2845         (WebCore::RGBA32Buffer::):
2846         (WebCore::RGBA32Buffer::RGBA32Buffer):
2847         (WebCore::RGBA32Buffer::disposalMethod):
2848         (WebCore::RGBA32Buffer::setDisposalMethod):
2849         * platform/image-decoders/gif/GIFImageDecoder.cpp:
2850         (WebCore::GIFImageDecoder::frameBufferAtIndex):
2851         (WebCore::GIFImageDecoder::initFrameBuffer):
2852         (WebCore::GIFImageDecoder::prepEmptyFrameBuffer):
2853         (WebCore::GIFImageDecoder::haveDecodedRow):
2854         (WebCore::GIFImageDecoder::frameComplete):
2855         * platform/image-decoders/gif/GIFImageDecoder.h:
2856         * platform/image-decoders/gif/GIFImageReader.cpp:
2857         (GIFImageReader::read):
2858         * platform/image-decoders/gif/GIFImageReader.h:
2859         (GIFFrameReader::GIFFrameReader):
2860
2861 2007-11-26  Adam Roben  <aroben@apple.com>
2862
2863         Add a Color(CGColorRef) constructor
2864
2865         Reviewed by Darin.
2866
2867         * platform/graphics/Color.h:
2868         * platform/graphics/cg/ColorCG.cpp:
2869         (WebCore::Color::Color): Added.
2870
2871 2007-11-26  Adele Peterson  <adele@apple.com>
2872
2873         Reviewed by Darin.
2874
2875         Update to last change.  Moved addPendingSheet call to within nil check for m_cachedSheet.
2876
2877         * page/Frame.cpp:
2878         (WebCore::UserStyleSheetLoader::UserStyleSheetLoader):
2879
2880 2007-11-26  Adele Peterson  <adele@apple.com>
2881
2882         Reviewed by Darin.
2883
2884         Fix for <rdar://problem/5591583> CrashTracer: [USER] 157 in Mail crashes at -[WebCoreFrameBridge reapplyStylesForDeviceType:]
2885
2886         * page/Frame.cpp: Add nil checks since every other caller of requestCSSStyleSheet checks for nil.
2887         (WebCore::UserStyleSheetLoader::UserStyleSheetLoader):
2888         (WebCore::UserStyleSheetLoader::~UserStyleSheetLoader):
2889
2890 2007-11-26  Mark Rowe  <mrowe@apple.com>
2891
2892         GCC 4.2 build fix.
2893
2894         * xml/XSLTUnicodeSort.cpp: Add another WTF_ATTRIBUTE_PRINTF.
2895
2896 2007-11-26  Feng Qian <ian.eng.webkit@gmail.com>
2897
2898         Reviewed and touched up by Sam Weinig.
2899
2900         Fix for http://bugs.webkit.org/show_bug.cgi?id=16073
2901
2902         Test: http/tests/security/xss-DENIED-invalid-domain-change.html
2903
2904         * dom/Document.cpp:
2905         (WebCore::Document::setDomain): Don't set the securityOrigin policy unless
2906         the set succeeds.  Adds some early returns as well.
2907
2908 2007-11-26  Steve Falkenburg  <sfalken@apple.com>
2909
2910         Build fix.
2911
2912         * WebCore.vcproj/WebCore.make:
2913         * WebCore.vcproj/migrate-idls.sh:
2914
2915 2007-11-26  Sam Weinig  <sam@webkit.org>
2916
2917         Fix potential null-dereference.
2918
2919         Reviewed by Adam Roben.
2920
2921         * page/FrameTree.cpp:
2922         (WebCore::FrameTree::isDescendantOf):
2923
2924 2007-11-26  Sam Weinig  <sam@webkit.org>
2925
2926         Reviewed by Darin.
2927
2928         Fix for <rdar://problem/5592988>
2929         - Enforce tighter restrictions on what frames in other domains
2930           can be navigated.
2931
2932         Tests: http/tests/security/frameNavigation/xss-ALLOWED-parent-navigation-change.html
2933                http/tests/security/frameNavigation/xss-ALLOWED-targeted-subframe-navigation-change.html
2934
2935         * bindings/js/kjs_window.cpp:
2936         (KJS::Window::put):
2937         (KJS::Location::put):
2938         (KJS::LocationProtoFuncReplace::callAsFunction):
2939         (KJS::LocationProtoFuncAssign::callAsFunction):
2940         * loader/FrameLoader.cpp:
2941         (WebCore::FrameLoader::createWindow):
2942         (WebCore::FrameLoader::load):
2943         (WebCore::FrameLoader::shouldAllowNavigation): Move and update logic from canTarget().
2944         * loader/FrameLoader.h:
2945         * page/FrameTree.cpp:
2946         (WebCore::FrameTree::isDescendantOf): Make this O(1) in the case when both frames are not
2947         in the same page.
2948
2949 2007-11-26  Steve Falkenburg  <sfalken@apple.com>
2950
2951         Build fix.
2952
2953         * WebCore.vcproj/migrate-idls.sh:
2954
2955 2007-11-26  Dan Bernstein  <mitz@apple.com>
2956
2957         Reviewed by Dave Hyatt.
2958
2959         - fix <rdar://problem/5609337> Making a float shorter does not remove it from the floating object list of a nested block it intruded into
2960
2961         Test: fast/dynamic/float-withdrawal-2.html
2962
2963         * rendering/RenderBlock.cpp:
2964         (WebCore::RenderBlock::layoutBlockChildren): When a float may have
2965         been withdrawn from a child, mark all descendants if necessary and not
2966         just the child.
2967
2968 2007-11-26  Steve Falkenburg  <sfalken@apple.com>
2969
2970         Build fix.
2971
2972         * WebCore.vcproj/MigrateIDLAndScripts: Copied from WebCore.vcproj/MigrateIDLAndScripts.make.
2973         * WebCore.vcproj/MigrateIDLAndScripts.make: Removed.
2974         * WebCore.vcproj/migrate-idls.sh:
2975
2976 2007-11-26  Brady Eidson  <beidson@apple.com>
2977
2978         Reviewed by Anders (and typo lovingly found by Adam)
2979
2980         Change Databases to be stored in a per-origin directory hierarchy - this will make
2981         storage quotas much easier to enforce
2982
2983         * platform/SecurityOriginData.cpp:
2984         (WebCore::SecurityOriginData::SecurityOriginData): Parse string based on '_' instead of ':'
2985         (WebCore::SecurityOriginData::stringIdentifier): Change to use '_' as a separator instead of ':'.  
2986           '_' still works due to not being allowed in domain names, but also is a valid filename character '
2987           on all filesystems we care about
2988
2989         * storage/DatabaseTracker.cpp:
2990         (WebCore::DatabaseTracker::fullPathForDatabase): Create a per-origin directory hierarchy to categorize
2991           databases by origin
2992
2993 2007-11-26  Timothy Hatcher  <timothy@apple.com>
2994
2995         Reviewed by Adam Roben.
2996
2997         Bug 16137: Web Inspector window on Leopard should have a unified toolbar and window title
2998         http://bugs.webkit.org/show_bug.cgi?id=16137
2999
3000         On Leopard the toolbar background will be transparent, to allow the
3001         window background to show through the transparent WebView. The 
3002         search results divs needed to move inside the "main" div, so they
3003         would be clipped and not show where the toolbar is.
3004
3005         * page/InspectorController.cpp:
3006         (WebCore::platform): Return a string for which platform we are.
3007         (WebCore::InspectorController::windowScriptObjectAvailable):
3008         Define the platform function on the JavaScript class.
3009         * page/inspector/Panel.js: Add panels to the panels div.
3010         * page/inspector/inspector.css: On the Leopard platform make
3011         the toolbar background transparent so the window background shows.
3012         * page/inspector/inspector.html: Add a panels div and move search
3013         result divs inside the main div.
3014         * page/inspector/inspector.js: Tweak the resize code to acount for
3015         the search results divs moving inside the main div.
3016
3017 2007-11-25  Rodney Dawes  <dobey@wayofthemonkey.com>
3018
3019         Reviewed by Maciej Stachowiak.
3020
3021         Remove the unneeded CFNETWORK #ifdefs.
3022
3023         * loader/NetscapePlugInStreamLoader.h:
3024
3025 2007-11-24  Laszlo Gombos  <laszlo.gombos@gmail.com>
3026
3027         Reviewed by Sam Weinig.
3028
3029         Add printf format attribute to several functions. Use the the new WTF_ATTRIBUTE_PRINTF define.
3030
3031         * dom/XMLTokenizer.cpp:
3032         * dom/XMLTokenizer.h:
3033         * platform/DeprecatedString.h:
3034         * platform/PlatformString.h:
3035
3036 2007-11-25  Dan Bernstein  <mitz@apple.com>
3037
3038         Reviewed by Adam Roben.
3039
3040         - fix off-center error images
3041
3042         Covered by many pixel tests with missing images
3043
3044         * rendering/RenderImage.cpp:
3045         (WebCore::RenderImage::paint): Account for the 1 pixel outline when
3046         positioning the error image.
3047
3048 2007-11-25  Kevin Ollivier  <kevino@theolliviers.com>
3049
3050         wx build fix. Fix filename case for case-sensitive filesystems.
3051
3052         * WebCoreSources.bkl:
3053
3054 2007-11-22  Nikolas Zimmermann  <zimmermann@kde.org>
3055
3056         Reviewed by Adam Roben.
3057
3058         Fixes: http://bugs.webkit.org/show_bug.cgi?id=15564
3059
3060         Fix problems with hidden glyphs. They were taken into account for quite
3061         some operations (hit testing, length calulcations etc..) except painting.
3062         Especially fixes boundaries of <textPath> (see using Web Inspector) if
3063         text-anchor isn't equal to 'start'.
3064
3065         Added testcase:
3066         svg/text/textPathBoundsBug.svg
3067
3068         Fixed testcase: (all showed text selection problems on text paths)
3069         svg/batik/text/textGlyphOrientationHorizontal.svg
3070         svg/batik/text/textOnPath.svg
3071         svg/batik/text/textOnPath3.svg
3072         svg/batik/text/verticalTextOnPath.svg
3073         svg/text/text-align-04-b.svg
3074         svg/W3C-SVG-1.1/text-align-04-b.svg
3075
3076         * rendering/SVGCharacterLayoutInfo.cpp:
3077         (WebCore::SVGChar::isHidden):
3078         * rendering/SVGCharacterLayoutInfo.h:
3079         (WebCore::SVGCharOnPath::SVGCharOnPath):
3080         * rendering/SVGInlineTextBox.cpp:
3081         (WebCore::SVGInlineTextBoxClosestCharacterToPositionWalker::chunkPortionCallback):
3082         (WebCore::SVGInlineTextBoxSelectionRectWalker::chunkPortionCallback):
3083         * rendering/SVGRootInlineBox.cpp:
3084         (WebCore::topLeftPositionOfCharacterRange):
3085         (WebCore::SVGRootInlineBoxPaintWalker::chunkPortionCallback):
3086         (WebCore::cummulatedWidthOrHeightOfTextChunk):
3087         (WebCore::applyTextAnchorToTextChunk):
3088         (WebCore::applyTextLengthCorrectionToTextChunk):
3089         (WebCore::SVGRootInlineBox::layoutInlineBoxes):
3090         (WebCore::SVGRootInlineBox::buildLayoutInformationForTextBox):
3091         (WebCore::SVGRootInlineBox::buildTextChunks):
3092
3093 2007-11-25  Alexey Proskuryakov  <ap@webkit.org>
3094
3095         Reviewed by Maciej.
3096
3097         http://bugs.webkit.org/show_bug.cgi?id=15919
3098         XSLTProcessor.transformToFragment creates an extra not defined TEXT_NODE at the end
3099
3100         Test: fast/xsl/extra-lf-at-end.html
3101
3102         * xml/XSLTProcessor.cpp:
3103         (WebCore::writeToVector): Changed to use Vector to avoid slow String::apend().
3104         (WebCore::saveResultToString): Remove trailing line feed if present.
3105
3106 2007-11-24  Mark Rowe  <mrowe@apple.com>
3107
3108         Reviewed by Tim Hatcher.
3109
3110         Fix <rdar://problem/5432686> 333MB RPRVT seems to leak @ www.43folders.com (1hr plug-in stream).
3111         http://bugs.webkit.org/show_bug.cgi?id=13705
3112
3113         Don't buffer the entire stream contents in memory in the ResourceLoader.
3114
3115         * loader/mac/NetscapePlugInStreamLoaderMac.mm:
3116         (WebCore::NetscapePlugInStreamLoader::NetscapePlugInStreamLoader):
3117         (WebCore::NetscapePlugInStreamLoader::didFinishLoading):
3118         * loader/mac/WebPlugInStreamLoaderDelegate.h:
3119
3120 2007-11-23  Adam Roben  <aroben@apple.com>
3121
3122         Get rid of WebCoreSystemInterface on Windows
3123
3124         The one function defined in that file is now in WebKitSystemInterface.
3125
3126         Reviewed by Tim.
3127
3128         * WebCore.vcproj/WebCore.vcproj: Removed
3129         WebCoreSystemInterface.{cpp,h}.
3130         * platform/graphics/cg/ImageCG.cpp: Made #include of
3131         WebCoreSystemInterface.h Mac-only.
3132         * platform/win/GraphicsContextWin.cpp: Ditto.
3133         * platform/win/WebCoreSystemInterface.cpp: Removed.
3134         * platform/win/WebCoreSystemInterface.h: Removed.
3135
3136 2007-11-24  Adam Roben  <aroben@apple.com>
3137
3138         Replace uses of %@ with %s in the inspector
3139
3140         Rubberstamped by Tim.
3141
3142         * English.lproj/InspectorLocalizedStrings.js: Changed %@ to %s.
3143         * page/inspector/DatabasePanel.js: Ditto.
3144         * page/inspector/StylesSidebarPane.js: Ditto.
3145         * page/inspector/inspector.js: Ditto.
3146         * page/inspector/utilities.js:
3147         (String.vsprintf): Removed @ as a format specifier.
3148
3149 2007-11-24  Adam Roben  <aroben@apple.com>
3150
3151         Windows build fix
3152
3153         Turn off the change made in r27984 on Windows for now.
3154
3155         * xml/XSLTProcessor.cpp:
3156         (WebCore::XSLTProcessor::transformToString):
3157         * xml/XSLTUnicodeSort.cpp:
3158
3159 2007-11-24  Timothy Hatcher  <timothy@apple.com>
3160
3161         Reviewed by Adam Roben.
3162
3163         Bug 16121: Web Inspector needs helper functions that pass a 'this' object to
3164         addEventListener and setTimeout
3165         http://bugs.webkit.org/show_bug.cgi?id=16121
3166
3167         Add Function.prototype.bind. This helper will return a wrapper function
3168         that will call the original function with the supplied arguments
3169         and using the supplied 'this' object.
3170
3171         * page/inspector/Database.js: Remove a use of setTimeout by
3172           inheriting some common functions from Resource.
3173         * page/inspector/DatabasePanel.js: Use the new bind function.
3174         * page/inspector/ConsolePanel.js: Ditto.
3175         * page/inspector/DocumentPanel.js: Ditto.
3176         * page/inspector/NetworkPanel.js: Ditto.
3177         * page/inspector/PropertiesSection.js: Ditto.
3178         * page/inspector/Resource.js: Ditto.
3179         * page/inspector/SidebarPane.js: Ditto.
3180         * page/inspector/inspector.html: Moved Database.js after Resource.js,
3181           now that Database.js uses it.
3182         * page/inspector/inspector.js: Use the new bind function. Also
3183           removed a setTimeout used for the localized strings code. There is
3184           now a load event listener added to the localized strings script
3185           element that will call WebInspector.loaded.
3186         * page/inspector/utilities.js: Add Function.prototype.bind.
3187
3188 2007-11-24  Timothy Hatcher  <timothy@apple.com>
3189
3190         Reviewed by Adam Roben.
3191
3192         Bug 16112: Some Web Inspector UI elements use offsetWidth and offsetHeight before the stylesheet loads
3193         http://bugs.webkit.org/show_bug.cgi?id=16112
3194
3195         In the places where we use offsetWidth and offsetHeight before
3196         the stylesheet loads there is now a check. If the body's
3197         offsetWidth is not greater than zero, then set a timeout
3198         to do the updates requiring the stylesheet later.
3199
3200         The three places this happened:
3201         - DOM tree selection highlight would show up at the wrong height
3202           when using Inspect Element to open the inspector.
3203         - DOM tree breadcrumbs would not collapse when using Inspect Element
3204           to open the inspector.
3205         - Network Timeline divider lines would not show when opening directly
3206           into the timeline.
3207
3208         * page/inspector/DocumentPanel.js: Check if the stylesheet loaded.
3209         * page/inspector/NetworkPanel.js: Ditto.
3210         * page/inspector/inspector.html: Include the stylesheet before
3211           any scripts, this will help get it loaded sooner.
3212
3213 2007-11-24  Kevin Ollivier  <kevino@theolliviers.com>
3214
3215         Add wx implementation for pathGetFilename
3216
3217         Reviewed by David D. Kilzer.
3218
3219         * html/HTMLFormElement.cpp:
3220         (WebCore::pathGetFilename):
3221
3222 2007-11-23  Timothy Hatcher  <timothy@apple.com>
3223
3224         Reviewed by Adam Roben.
3225
3226         Bug 16110: Clicking inside the resource headers in the network timeline collapses them
3227         http://bugs.webkit.org/show_bug.cgi?id=16110
3228
3229         Toggle the resource headers only if the click happens on the
3230         resource row, not within the headers area.
3231
3232         * WebCore.xcodeproj/project.pbxproj:
3233         * page/inspector/NetworkPanel.js:
3234
3235 2007-11-23  Kevin Ollivier  <kevino@theolliviers.com>
3236
3237         Win build fixes. CURL needs winsock, so don't disable it, and
3238         include pthreads.h to get the threadsafe *_r functions.
3239
3240         Reviewed by Adam Roben.
3241
3242         * config.h:
3243         * loader/FTPDirectoryDocument.cpp:
3244         * loader/FTPDirectoryParser.cpp:
3245
3246 2007-11-23  Kevin Ollivier  <kevino@theolliviers.com>
3247
3248         wx build fix. Move wx settings to project build settings,
3249         remove some old settings that were masking a build problem,
3250         and fix include ordering to ensure proper config.h and
3251         unicode/utf8.h headers are used. 
3252
3253         * webcore-base.bkl:
3254         * webcore-wx.bkl:
3255
3256 2007-11-23  Simon Hausmann  <hausmann@webkit.org>
3257
3258         Reviewed by George Staikos <staikos@kde.org>.
3259
3260         Another build fix specific to trunk (instead of the stable branch) to fix make clean (which the buildbots call).
3261
3262         * WebCore.pro:
3263
3264 2007-11-23  Alexey Proskuryakov  <ap@webkit.org>
3265
3266         Not reviewed, trivial leak fix.
3267
3268         Fix xsltUnicodeSortFunction() memory leaks.
3269
3270         * xml/XSLTUnicodeSort.cpp:
3271         (WebCore::xsltUnicodeSortFunction):
3272
3273 2007-11-23  Alexey Proskuryakov  <ap@webkit.org>
3274
3275         Reviewed by Maciej.
3276
3277         <rdar://problem/5539306> REGRESSION: redirect fails when subframe's document is opened but
3278         not closed (affects digg.com)
3279
3280         Tests: fast/loader/meta-refresh-vs-open.html
3281                fast/loader/redirect-with-open-subframe-2.html
3282                fast/loader/redirect-with-open-subframe.html
3283                http/tests/loading/onload-vs-immediate-refresh.pl
3284
3285         * loader/FrameLoader.cpp:
3286         (WebCore::FrameLoader::scheduleRedirection): Only check whether the load is complete for
3287         HTTP redirects - JavaScript-initiated ones are effective immediately.
3288
3289 2007-11-23  Dan Bernstein  <mitz@apple.com>
3290
3291         Reviewed by Alexey Proskuryakov.
3292
3293         - apply matrix transforms on the correct side of the transformation
3294           matrix (not on the side where the vector is multiplied).
3295
3296         Test: fast/transforms/matrix-02.html
3297
3298         * rendering/RenderStyle.h:
3299         (WebCore::MatrixTransformOperation::apply):
3300
3301 2007-11-23  Alexey Proskuryakov  <ap@webkit.org>
3302
3303         Reviewed by Maciej.
3304
3305         http://bugs.webkit.org/show_bug.cgi?id=16077
3306         <rdar://problem/5609785> XSLT processor <xsl:sort> algorithm is incompatible with other
3307         browser implementations
3308
3309         Test: fast/xsl/sort-unicode.xml
3310
3311         * xml/XSLTProcessor.cpp:
3312         (WebCore::XSLTProcessor::transformToString): Set a custom sort function.
3313
3314         * xml/XSLTUnicodeSort.cpp: Added.
3315         (init_xsltTransformError):
3316         (xsltTransformError):
3317         (WebCore::xsltUnicodeSortFunction):
3318         * xml/XSLTUnicodeSort.h: Added.
3319         ICU-based implementation of xsl:sort, using an example from libxslt distribution.
3320         Only minimal coding style fixes to ease synchronization with upstream in the future.
3321
3322         * icu/unicode/ucol.h: Added.
3323         * icu/unicode/uset.h: Added.
3324         Taken from ICU 3.2
3325
3326         * WebCore.pro:
3327         * WebCore.vcproj/WebCore.vcproj:
3328         * WebCore.xcodeproj/project.pbxproj:
3329         * WebCoreSources.bkl:
3330         Added XSLTUnicodeSort.cpp.
3331
3332 2007-11-22  Alexey Proskuryakov  <ap@webkit.org>
3333
3334         Reviewed by Maciej.
3335
3336         http://bugs.webkit.org/show_bug.cgi?id=14977
3337         Hixie's DOM Core performance test shows insert >10x slower than append
3338
3339         Each invocation of Element.childNodes[n] was creating and registering a new ChildNodeList,
3340         which persisted and listened to notifications until GC.
3341
3342         A fix is to avoid registering child node lists for notifications - they don't need them, as
3343         they share a common cache in Node.
3344
3345         * dom/Node.cpp:
3346         (WebCore::Node::registerNodeList):
3347         (WebCore::Node::unregisterNodeList):
3348         (WebCore::Node::notifyLocalNodeListsAttributeChanged):
3349         (WebCore::Node::notifyLocalNodeListsChildrenChanged):
3350         * dom/NodeList.h:
3351         (WebCore::NodeList::needsNotifications):
3352
3353 2007-11-22  Dan Bernstein  <mitz@apple.com>
3354
3355         Reviewed by Antti Koivisto.
3356
3357         - fix http://bugs.webkit.org/show_bug.cgi?id=15811
3358           WebKit plug-ins can re-enter WebKit under attach()
3359           <rdar://problem/5577978>
3360
3361         Defer plug-in loading until after attach and recalcStyle using the
3362         post-attach callback mechanism. Netscape plug-ins are still loaded only
3363         after layout.
3364
3365         * dom/ContainerNode.cpp:
3366         Made NodeCallbackQueue elements retain the Node because callbacks might
3367         delete nodes that are in the callback queue.
3368         (WebCore::ContainerNode::suspendPostAttachCallbacks): Added. Needed to
3369         prevent post-attach callbacks from being dispatched under recalcStyle().
3370         (WebCore::ContainerNode::resumePostAttachCallbacks): Ditto.
3371         (WebCore::ContainerNode::dispatchPostAttachCallbacks): Factored out from
3372         attach().
3373         (WebCore::ContainerNode::attach):
3374         * dom/ContainerNode.h:
3375         * dom/Document.cpp:
3376         (WebCore::Document::recalcStyle): Added calls to
3377         suspendPostAttachCallbacks() and resumePostAttachCallbacks().
3378         * html/HTMLEmbedElement.cpp:
3379         (WebCore::HTMLEmbedElement::HTMLEmbedElement):
3380         (WebCore::HTMLEmbedElement::attach): Changed to queue the widget update
3381         for post-attach.
3382         (WebCore::HTMLEmbedElement::updateWidget): Added. Called by the
3383         post-attach callback.
3384         * html/HTMLEmbedElement.h: Added an m_needWidgetUpdate member needed to
3385         prevent a double update if another plug-in's post-attach updateWidget()
3386         triggers a layout which updates the widget before this plug-in's
3387         post-attach callback is invoked.
3388         (WebCore::HTMLEmbedElement::setNeedWidgetUpdate): Added a setter for
3389         m_needWidgetUpdate.
3390         * html/HTMLObjectElement.cpp:
3391         (WebCore::HTMLObjectElement::attach): Changed to queue the widget update
3392         for post-attach.
3393         (WebCore::HTMLObjectElement::updateWidget): Added. Called by the
3394         post-attach callback.
3395         * html/HTMLObjectElement.h:
3396         (WebCore::HTMLObjectElement::setNeedWidgetUpdate): Added a setter for
3397         m_needWidgetUpdate.
3398         * html/HTMLPlugInElement.cpp:
3399         (WebCore::HTMLPlugInElement::updateWidgetCallback): Added.
3400         * html/HTMLPlugInElement.h:
3401         (WebCore::HTMLPlugInElement::updateWidget):
3402         * rendering/RenderPartObject.cpp:
3403         (WebCore::RenderPartObject::updateWidget): Added calls to
3404         setNeedWidgetUpdate(false) so that if this method is called from
3405         FrameView::layout() during post-attach dispatch of another plug-in,
3406         it will not be called again when this plug-in's post-attach callback
3407         is dispatched.
3408         * rendering/RenderPartObject.h:
3409         (WebCore::RenderPartObject::updateWidget) Renamed argument to match
3410         the method definition.
3411
3412 2007-11-22  Timothy Hatcher  <timothy@apple.com>
3413
3414         Reviewed by Dan Bernstein.
3415
3416         Fix the Element.hasStyleClass and Element.removeStyleClass helpers
3417         to not find and replace substrings, but whole class names at the
3418         beginning or end of the string or surrounded by whitespace.
3419
3420         * page/inspector/utilities.js:
3421
3422 2007-11-22  Timothy Hatcher  <timothy@apple.com>
3423
3424         Revert part of my r27935 change that made the Tip balloons
3425         animate with CSS transitions. The balloon was only opacity 0,
3426         so it would cause its row to highlight when hovering over
3427         another row.
3428
3429         * page/inspector/NetworkPanel.js:
3430         * page/inspector/inspector.css:
3431
3432 2007-11-22  Dan Bernstein  <mitz@apple.com>
3433
3434         Reviewed by Maciej Stachowiak.
3435
3436         - fix http://bugs.webkit.org/show_bug.cgi?id=15943
3437           -webkit-transform matrix does not work
3438
3439         Test: fast/transforms/matrix-01.html
3440
3441         Parse all six matrix entries as numbers.
3442
3443         * css/CSSParser.cpp:
3444         (WebCore::TransformOperationInfo::TransformOperationInfo):
3445         (WebCore::CSSParser::parseTransform):
3446         * css/CSSStyleSelector.cpp:
3447         (WebCore::CSSStyleSelector::applyProperty):
3448         * rendering/RenderStyle.cpp:
3449         (WebCore::MatrixTransformOperation::blend):
3450         * rendering/RenderStyle.h:
3451         (WebCore::MatrixTransformOperation::MatrixTransformOperation):
3452         (WebCore::MatrixTransformOperation::apply):
3453
3454 2007-11-22  Laszlo Gombos  <laszlo.gombos@gmail.com>
3455
3456         Reviewed by Alp Toker.
3457
3458         Fix some compilation warnings.  Do not reference undefined (platform) specific type (WebCore::CachedFont::m_fontData)
3459
3460         * loader/CachedFont.cpp:
3461         (WebCore::CachedFont::~CachedFont):
3462         (WebCore::CachedFont::allReferencesRemoved):
3463
3464 2007-11-22  Alp Toker  <alp@atoker.com>
3465
3466         Reviewed by Mark Rowe.
3467
3468         GTK+ drawing fix.
3469
3470         Add a check to avoid crashing when the GraphicsContext is not
3471         associated with a GdkEventExpose. This was noticed when adding
3472         printing support but might be triggered in other situations too.
3473
3474         * platform/gtk/WidgetGtk.cpp:
3475         (WebCore::Widget::paint):
3476
3477 2007-11-22  Julien Chaffraix  <julien.chaffraix@gmail.com>
3478
3479         Reviewed by Alexey.
3480
3481         Bug 15530: XMLHttpRequest should not support certain methods
3482
3483         Test: http/tests/xmlhttprequest/xmlhttprequest-forbidden-methods-exception.html
3484
3485         * xml/XMLHttpRequest.cpp:
3486         (WebCore::XMLHttpRequest::open):
3487
3488 2007-11-22  Simon Hausmann  <hausmann@kde.org>
3489
3490         Reviewed by George.
3491
3492         For the build inside Qt include qbase.pri and don't duplicate what qbase.pri otherwise does (install targets, etc.)
3493
3494         * WebCore.pro:
3495
3496 2007-11-22  Simon Hausmann  <hausmann@kde.org>
3497
3498         Reviewed by George.
3499
3500         Don't set OBJECTS_DIR when building inside Qt
3501
3502         * WebCore.pro:
3503
3504 2007-11-22  Simon Hausmann  <hausmann@kde.org>
3505
3506         Reviewed by George.
3507
3508         Use ../generated as path for the generated sources for builds inside Qt
3509
3510         * WebCore.pro:
3511
3512 2007-11-22  Simon Hausmann  <hausmann@kde.org>
3513
3514         Reviewed by George.
3515
3516         Make the directory of where to put the generated sources configurable through the GENERATED_SOURCE_DIR variable
3517
3518         * WebCore.pro:
3519
3520 2007-11-22  Simon Hausmann  <hausmann@kde.org>
3521
3522         Reviewed by George.
3523
3524         Centralize the setup for all the extra compilers in a addExtraCompiler function.
3525         
3526         This allows adding a "generated_files" target that builds all generated files using "make generated_files".
3527         For the build inside Qt we do not generate actual rules for the extra compilers but instead
3528         do the variable substitution of compiler.output manually and add the generated sources to SOURCES.
3529
3530         * WebCore.pro:
3531
3532 2007-11-21  Timothy Hatcher  <timothy@apple.com>
3533
3534         Reviewed by Eric Seidel.
3535
3536         Show Fonts as Yellow in the network timeline.
3537
3538         * page/inspector/NetworkPanel.js:
3539         * page/inspector/inspector.css:
3540
3541 2007-11-21  Dan Bernstein  <mitz@apple.com>
3542
3543         Reviewed by Eric Seidel.
3544
3545         - fix <rdar://problem/5607037> REGRESSION (r27351): Departure date does not repaint when changed on Google Maps public transit planner (16034)
3546
3547         Test: fast/repaint/subtree-root-skipped.html
3548
3549         * page/FrameView.cpp:
3550         (WebCore::FrameViewPrivate::FrameViewPrivate): Initialize the layout
3551         root to 0.
3552         (WebCore::FrameView::layoutRoot): Changed to return a RenderObject
3553         instead of a Node.
3554         (WebCore::FrameView::layout): Changed for layout root being a renderer
3555         rather than a DOM node. Also replaced clearing the repaint rects
3556         set with asserting that it is empty if this is the top-level call to
3557         layout(). If it is not, the set may contain rects from enclosing
3558         layout() and those should not be removed.
3559         (WebCore::FrameView::scheduleRelayout): Changed for layout root being
3560         a renderer rather than a DOM node.
3561         (WebCore::isObjectAncestorContainerOf): Added this helper function that
3562         tests whether one object will be marked by calling
3563         markContainingBlocksForLayout() on the other.
3564         (WebCore::FrameView::scheduleRelayoutOfSubtree): Changed for layout
3565         root being a renderer rather than a DOM node. Changed the check if new
3566         and current layout roots are on the same path from the root to use
3567         the subgraph of the render tree defined by container()hood instead of
3568         the DOM tree and parenthood.
3569         * page/FrameView.h:
3570         * rendering/RenderBox.cpp: 
3571         (WebCore::RenderBox::calcWidth): Changed for layout root being a
3572         renderer rather than a DOM node.
3573         * rendering/RenderObject.cpp:
3574         (WebCore::RenderObject::~RenderObject): Added an assertion that the
3575         object being deleted is not currently the layout root.
3576         (WebCore::RenderObject::scheduleRelayout): Changed for layout root being
3577         a renderer rather than a DOM node.
3578
3579 2007-11-21  Mark Rowe  <mrowe@apple.com>
3580
3581         Reviewed by Eric.
3582
3583         Fix WebCore to build without warnings under GCC 4.2.
3584
3585         * Configurations/Base.xcconfig:
3586         * css/CSSRuleList.cpp:
3587         (WebCore::CSSRuleList::deleteRule):
3588         * css/CSSStyleSelector.cpp:
3589         (WebCore::CSSStyleSelector::locateSharedStyle):
3590         * html/HTMLParser.cpp:
3591         (WebCore::HTMLParser::allowNestedRedundantTag):
3592         * rendering/RenderBlock.cpp:
3593         (WebCore::RenderBlock::fillInlineSelectionGaps):
3594         (WebCore::RenderBlock::fillBlockSelectionGaps):
3595         * rendering/RenderLayer.cpp:
3596         (WebCore::RenderLayer::stackingContext):
3597         (WebCore::RenderLayer::enclosingPositionedAncestor):
3598         (WebCore::RenderLayer::transparentAncestor):
3599         * rendering/RenderStyle.cpp:
3600         (WebCore::BackgroundLayer::fillUnsetProperties):
3601         (WebCore::Transition::fillUnsetProperties):
3602         * rendering/RenderText.cpp:
3603         (WebCore::RenderText::containsOnlyWhitespace):
3604         * rendering/bidi.cpp:
3605         (WebCore::RenderBlock::determineStartPosition):
3606
3607 2007-11-21  Alp Toker  <alp@atoker.com>
3608
3609         Reviewed by Mark Rowe.
3610
3611         http://bugs.webkit.org/show_bug.cgi?id=16071
3612         Curl backend handles EINTR incorrectly
3613
3614         Defer timers during select() to avoid interruption by timer signals.
3615
3616         * platform/network/curl/ResourceHandleManager.cpp:
3617         (WebCore::ResourceHandleManager::downloadTimerCallback):
3618
3619 2007-11-21  Mark Rowe  <mrowe@apple.com>
3620
3621         Reviewed by Tim Hatcher.
3622
3623         Changes due to <rdar://problem/5602936> Need to resolve new GCC 4.2 warnings
3624
3625         Update format strings to use format specifiers that match the argument types.
3626
3627         * loader/icon/IconDatabase.cpp:
3628         (WebCore::IconDatabase::performURLImport):
3629         (WebCore::IconDatabase::writeToDatabase):
3630         * platform/mac/TextCodecMac.cpp:
3631         (WebCore::TextCodecMac::decode):
3632         * storage/Database.cpp:
3633         (WebCore::Database::deliverAllPendingCallbacks):
3634
3635 2007-11-21  Xan Lopez  <xan@gnome.org>
3636
3637         Reviewed by Alp Toker.
3638
3639         Clarify scroll event processing with a comment.
3640
3641         * platform/gtk/PlatformScrollBarGtk.cpp:
3642         (gtkScrollEventCallback):
3643
3644 2007-11-21  Timothy Hatcher  <timothy@apple.com>
3645
3646         Reviewed by Adam Roben.
3647
3648         Bug 16085: Web Inspector's Network Timeline graph code clean up and misc. fixes
3649         http://bugs.webkit.org/show_bug.cgi?id=16085
3650         
3651         Changes include:
3652         - Refactor the drawing code as nested functions instead of global functions.
3653         - Compute the segment percentages only once per call to drawSummaryGraph.
3654         - Account for percentages that rounded down to total less-than 100%.
3655         - Draw the pill shadow better using the canvas shadow drawing properties.
3656         - Removes a couple canvas context saves and restores.
3657
3658         * page/inspector/NetworkPanel.js:
3659
3660 2007-11-21  Alexey Proskuryakov  <ap@webkit.org>
3661
3662         Reviewed by Adam Roben.
3663
3664         http://bugs.webkit.org/show_bug.cgi?id=16056
3665         Unicode not being interpreted correctly in Web Inspector source view
3666
3667         Cannot be tested automatically.
3668
3669         * loader/CachedCSSStyleSheet.cpp:
3670         (WebCore::CachedCSSStyleSheet::encoding):
3671         * loader/CachedCSSStyleSheet.h:
3672         * loader/CachedResource.h:
3673         (WebCore::CachedResource::encoding):
3674         * loader/CachedScript.cpp:
3675         (WebCore::CachedScript::encoding):
3676         * loader/CachedScript.h:
3677         * loader/CachedXBLDocument.cpp:
3678         (WebCore::CachedXBLDocument::encoding):
3679         * loader/CachedXBLDocument.h:
3680         * loader/CachedXSLStyleSheet.cpp:
3681         (WebCore::CachedXSLStyleSheet::encoding):
3682         * loader/CachedXSLStyleSheet.h:
3683         Teach textual CachedResources to report their encodings.
3684
3685         * page/InspectorController.cpp:
3686         (WebCore::addSourceToFrame):
3687         (WebCore::updateResourceResponse):
3688         Use the actual encoding - the network layer has little idea about it.
3689
3690 2007-11-20  Mark Rowe  <mrowe@apple.com>
3691
3692         Reviewed by Maciej Stachowiak.
3693
3694         Fix <rdar://problem/5609579> (DOMParser().parseFromString() freezes Safari when parsing large nodes with XML entities)
3695         http://bugs.webkit.org/show_bug.cgi?id=16076
3696
3697         XMLTokenizer was calling CharacterData::appendData twice per entity in the fragment of XML being
3698         parsed (once for text before the entity, once for the entity itself).  This triggered O(n^2) copying
3699         of the CharacterData's string due to resizing.  We now prevent this happening by buffering all the
3700         content for a given Text node in the XMLTokenizer before sending it out to the node in a single go.
3701
3702         * dom/XMLTokenizer.cpp:
3703         (WebCore::XMLTokenizer::characters): Append the characters to the buffer.
3704         (WebCore::XMLTokenizer::endDocument): Ensure the buffer is flushed when the document has ended.
3705         (WebCore::endDocumentHandler):
3706         (WebCore::XMLTokenizer::enterText):
3707         (WebCore::XMLTokenizer::exitText): Append the contents of the buffer to the node.
3708         (WebCore::XMLTokenizer::initializeParserContext): Add the endDocument handler.
3709         (WebCore::parseXMLDocumentFragment): Force endDocument to be called when parsing a fragment to ensure
3710         that the buffer gets flushed to the node.
3711         * dom/XMLTokenizer.h:
3712
3713 2007-11-20  Timothy Hatcher  <timothy@apple.com>
3714
3715         Reviewed by Mark Rowe.
3716
3717         Animate the status area and tip balloons in the Web Inspector
3718         with CSS animations.
3719
3720         * page/inspector/NetworkPanel.js:
3721         * page/inspector/inspector.css:
3722         * page/inspector/inspector.js:
3723
3724 2007-11-20  Kevin Ollivier  <kevino@theolliviers.com>
3725
3726         wx build fix for Windows. Don't use WebCore/move-js-headers.sh as
3727         it indiscriminately copies any headers inside JavaScriptCore,
3728         which includes Tiger ICU headers. 
3729
3730         * webcore-base.bkl:
3731         Remove references to the WebCore/include dir generated by
3732         move-js-headers.sh, and also get headers from JavaScriptCore
3733         directly rather than from WebCore/ForwardingHeaders. 
3734
3735 2007-11-20  Alp Toker  <alp@atoker.com>
3736
3737         Reviewed by Mark Rowe.
3738
3739         Avoid pointlessly mallocing and freeing this transform matrix.
3740
3741         * platform/gtk/FontPlatformDataGtk.cpp:
3742         (WebCore::FontPlatformData::FontPlatformData):
3743
3744 2007-11-20  Naiem Shaik  <naiem.shaik@gmail.com>
3745
3746         Reviewed by Alp Toker.
3747
3748         http://bugs.webkit.org/show_bug.cgi?id=15763
3749         [GTK] Enter key does not take to the link highlighted.
3750
3751         Add missing keycode cases.
3752
3753         * platform/gtk/KeyEventGtk.cpp:
3754         (WebCore::keyIdentifierForGdkKeyCode):
3755         (WebCore::windowsKeyCodeForKeyEvent):
3756         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
3757
3758 2007-11-20  Mark Rowe  <mrowe@apple.com>
3759
3760         Reviewed by Sam Weinig.
3761
3762         Fix http://bugs.webkit.org/show_bug.cgi?id=16074
3763         Bug 16074: execCommand("InsertHorizontalRule", false, "") results in id="" being inserted
3764
3765         For consistency with InsertOrderedList and InsertUnorderedList a value parameter of "" should
3766         not result in an id being set.
3767
3768         * editing/JSEditor.cpp: Don't set the id attribute if value is empty.
3769
3770 2007-11-20  Dan Bernstein  <mitz@apple.com>
3771
3772         Reviewed by Adam Roben.
3773
3774         - fix <rdar://problem/5090708> Textareas render broken-looking scrollbars when too short to show full scrollbar
3775
3776         * platform/win/PlatformScrollBar.h:
3777         * platform/win/PlatformScrollBarSafari.cpp:
3778         Added the "hit inset" constants (representing how far the track eats
3779         into the button).
3780         (WebCore::PlatformScrollbar::paint): Changed to paint the buttons and
3781         the thumb only if they should be showing.
3782         (WebCore::PlatformScrollbar::hasButtons): Added. Returns whether the
3783         arrows should be drawn.
3784         (WebCore::PlatformScrollbar::hasThumb): Added. Returns whether the thumb
3785         should be drawn.
3786         (WebCore::PlatformScrollbar::forwardButtonRect):
3787         (WebCore::PlatformScrollbar::trackRect): Changed to return the entire
3788         bounds of the scrollbar if the scrollbar has no buttons.
3789         (WebCore::PlatformScrollbar::paintTrack): Changed to paint a disabled
3790         track along the entire scrollbar if it has not buttons.
3791         (WebCore::PlatformScrollbar::hitTest): Changed to hit test only the
3792         parts that the scrollbar has in its current dimensions.
3793
3794 2007-11-20  Mark Rowe  <mrowe@apple.com>
3795
3796         Reviewed by Alp Toker.
3797
3798         * config.h: Change #if to #ifdef to silence warnings on non-Apple platforms.
3799
3800 2007-11-20  Simon Hausmann  <hausmann@kde.org>
3801
3802         Reviewed by Adam Treat <treat@kde.org>.
3803
3804         Remove static linkage of QtWebKit against the ICO image format plugin.
3805         Instead build the support for the ICO image format as a proper standalone qt image format plugin and install it.
3806
3807         * WebCore.pro:
3808         * platform/graphics/qt/ImageDecoderQt.cpp:
3809
3810 2007-11-20  David D. Kilzer  <ddkilzer@webkit.org>
3811
3812         no-svg build broken after r27278
3813         <http://bugs.webkit.org/show_bug.cgi?id=16061>
3814
3815         Reviewed by Eric.
3816
3817         * bindings/scripts/CodeGeneratorObjC.pm: Always generate DOMHTMLEmbedElementPrivate.h
3818         and DOMHTMLObjectElementPrivate.h for no-svg build.
3819
3820 2007-11-20  Adam Treat  <treat@kde.org>
3821
3822         Reviewed by Simon.
3823
3824         * Don't use so much heap memory.
3825
3826         * platform/graphics/qt/ImageDecoderQt.cpp:
3827         * platform/graphics/qt/ImageDecoderQt.h:
3828         * platform/graphics/qt/ImageSourceQt.cpp:
3829         (WebCore::ImageSource::createFrameAtIndex):
3830
3831 2007-11-20  Lars Knoll  <lars@trolltech.com>
3832
3833         Reviewed by Simon.
3834
3835         Fix text break interators.
3836         
3837         The break iterators where trying to be smart about the input
3838         string and caching their results. Unfortunately a pointer/string length
3839         comparison is not good enough in all cases (since some input is stack based
3840         temp strings). Removed the caching but at the same time started to use a more
3841         efficient constructor of QTextBoundaryFinder that doesn't need to malloc for
3842         most strings.
3843         
3844         Fixes two test cases that test "text-transform: capitalize".
3845
3846         * platform/qt/TextBreakIteratorQt.cpp:
3847         (WebCore::wordBreakIterator):
3848         (WebCore::characterBreakIterator):
3849         (WebCore::lineBreakIterator):
3850         (WebCore::sentenceBreakIterator):
3851
3852 2007-11-20  Adam Treat  <treat@kde.org>
3853
3854         Reviewed by George.
3855
3856         * Make gif animations work for instance.
3857
3858         * platform/graphics/qt/ImageDecoderQt.cpp:
3859         (WebCore::ImageDecoderQt::reset):
3860         (WebCore::ImageDecoderQt::setData):
3861         (WebCore::ImageDecoderQt::frameCount):
3862         (WebCore::ImageDecoderQt::repetitionCount):
3863         * platform/graphics/qt/ImageDecoderQt.h:
3864
3865 2007-11-20  Adam Treat  <treat@kde.org>
3866
3867         * Build in release mode
3868
3869         * platform/NotImplemented.h:
3870
3871 2007-11-20  Adam Treat  <treat@kde.org>
3872
3873         Reviewed by Simon and George.
3874
3875         * Be quiet and allow suppression of NotImplemented calls at runtime.
3876
3877         * platform/NotImplemented.h:
3878
3879 2007-11-19  Doug Turner  <dougt@meer.net>
3880
3881         Reviewed by Alp Toker.
3882
3883         http://bugs.webkit.org/show_bug.cgi?id=16054
3884         Crash when GlyphPage::fill is called with more than 256 bytes of data
3885
3886         http://bugs.webkit.org/show_bug.cgi?id=14446
3887         [GDK] Crash on http://www.wikipedia.org/
3888
3889         setGlyphDataForIndex() uses a fixed array of size 256 which we can't
3890         exceed. We need to return failure if the buffer has Unicode
3891         supplementary characters for now.
3892
3893         This strategy matches the Win port, which also doesn't support this
3894         case yet.
3895
3896         Add an assertion so nobody makes this mistake again.
3897
3898         * platform/GlyphPageTreeNode.h:
3899         (WebCore::GlyphPage::setGlyphDataForIndex):
3900         * platform/gtk/GlyphPageTreeNodeGtk.cpp:
3901         (WebCore::GlyphPage::fill):
3902
3903 2007-11-19  Doug Turner  <dougt@meer.net>
3904
3905         Reviewed by Timothy Hatcher.
3906
3907         http://bugs.webkit.org/show_bug.cgi?id=16050
3908         sqlite3_prepare16_v2 build bustage.
3909
3910         Using the correct SQLITE_VERSION_NUMBER around sqlite_prepare16_v2
3911         to fix build bustage.
3912
3913         * platform/sql/SQLiteStatement.cpp:
3914         (WebCore::SQLiteStatement::prepare):
3915
3916 2007-11-19  Mark Rowe  <mrowe@apple.com>
3917
3918         Build fix.  Don't over-qualify the constructor name.
3919
3920         * storage/DatabaseDetails.h:
3921
3922 2007-11-19  Brady Eidson <beidson@apple.com>
3923
3924         Reviewed by Maciej
3925
3926         Stub out the WebCore parts of the WebKit API
3927
3928         * WebCore.base.exp:
3929         * WebCore.xcodeproj/project.pbxproj:
3930
3931         * storage/DatabaseDetails.h: Added.  Simple container for vitals on a specific database
3932         (WebCore::DatabaseDetails::DatabaseDetails::DatabaseDetails):
3933         (WebCore::DatabaseDetails::DatabaseDetails):
3934         (WebCore::DatabaseDetails::isValid):
3935         (WebCore::DatabaseDetails::name):
3936         (WebCore::DatabaseDetails::version):
3937         (WebCore::DatabaseDetails::displayName):
3938         (WebCore::DatabaseDetails::expectedUsage):
3939         (WebCore::DatabaseDetails::currentUsage):
3940
3941         * storage/DatabaseTracker.cpp:  Added various methods for API usage
3942         (WebCore::DatabaseTracker::detailsForNameAndOrigin):
3943         (WebCore::DatabaseTracker::usageForOrigin):
3944         (WebCore::DatabaseTracker::quotaForOrigin):
3945         (WebCore::DatabaseTracker::setQuota):
3946         * storage/DatabaseTracker.h:
3947
3948 2007-11-19  Kevin Ollivier  <kevino@theolliviers.com>
3949
3950         wx port build fix.
3951
3952         * platform/graphics/wx/AffineTransformWx.cpp:
3953         (WebCore::AffineTransform::operator== ):
3954         m_transform is only available when using wxGraphicsContext.
3955
3956 2007-11-19  Alp Toker  <alp@atoker.com>
3957
3958         Reviewed by Mark Rowe.
3959
3960         GTK+ drawing fixes.
3961
3962         Add a check to avoid crashing when the GraphicsContext is not
3963         associated with a GdkDrawable. This was noticed when adding printing
3964         support but might be triggered in other situations too.
3965
3966         Do not render themes when painting is disabled. This is an
3967         optimisation for cases where GraphicsContext is used to calculate page
3968         dimensions etc. without actually rendering.
3969
3970         * platform/graphics/cairo/GraphicsContextCairo.cpp:
3971         (WebCore::GraphicsContext::gdkDrawable):
3972         * platform/gtk/RenderThemeGtk.cpp:
3973         (WebCore::paintMozWidget):
3974
3975 2007-11-13  Rahul Abrol  <ra5ul@comcast.net>
3976
3977         Reviewed by Tim Hatcher.
3978
3979         http://bugs.webkit.org/show_bug.cgi?id=15977
3980         Resizing images preference now toggles default image state.
3981
3982         * loader/ImageDocument.cpp:
3983         (WebCore::ImageDocument::ImageDocument):
3984         (WebCore::ImageDocument::createDocumentStructure):
3985         (WebCore::ImageDocument::imageChanged):
3986
3987 2007-11-19  Kevin Ollivier  <kevino@theolliviers.com>
3988
3989         Update wx port build sources with recent changes, update
3990         wx FontPlatformData to be a class (MSVC7 gets confused
3991         otherwise...) and implement its hash() method.
3992
3993         Reviewed by Adam.
3994
3995         * WebCoreSources.bkl:
3996         * platform/wx/FontPlatformData.h:
3997         (WebCore::FontPlatformData::hash):
3998
3999 2007-11-19  Julien Chaffraix  <julien.chaffraix@gmail.com>
4000
4001         Reviewed by Darin.
4002
4003         http://bugs.webkit.org/show_bug.cgi?id=12194
4004         Bug 12194: Trying to access XMLHttpRequest.responseText or responseXML when they 
4005         are not available should raise an exception
4006
4007         Tests: http/tests/xmlhttprequest/xmlhttprequest-responseText-exception.html
4008                http/tests/xmlhttprequest/xmlhttprequest-responseXML-exception.html
4009
4010         * bindings/js/JSXMLHttpRequest.cpp:
4011         (KJS::JSXMLHttpRequest::getValueProperty):
4012         * xml/XMLHttpRequest.cpp:
4013         (WebCore::XMLHttpRequest::getResponseText):
4014         (WebCore::XMLHttpRequest::getResponseXML):
4015         * xml/XMLHttpRequest.h:
4016
4017 2007-11-19  Peter Kasting  <zerodpx@gmail.com>
4018
4019         Reviewed by Darin Adler.
4020
4021         http://bugs.webkit.org/show_bug.cgi?id=15971
4022         The GIF decoder should not fail decoding if the caller asks it to
4023         decode again when no new data has arrived since the last call.
4024
4025         * platform/image-decoders/gif/GIFImageReader.cpp:
4026         (GIFImageReader::read):
4027
4028 2007-11-18  Brady Eidson <beidson@apple.com>
4029
4030         Reviewed by Eric
4031
4032         Fix a crash hashing a default SecurityOriginData object 
4033
4034         * storage/DatabaseTracker.cpp:
4035         (WebCore::SecurityOriginDataHash::hash): The default object has some default strings with NULL
4036           StringImpls - don't try to hash those!
4037
4038 2007-11-18  Timothy Hatcher  <timothy@apple.com>
4039
4040         Reviewed by Sam Weinig.
4041
4042         Bug 16043: Remove InspectorController.log now that console.log works
4043         http://bugs.webkit.org/show_bug.cgi?id=16043
4044
4045         Remove the last uses of InspectorController.log. Once use was no longer needed,
4046         checking an erro case that can't happen anymore. The other case now uses console.error.
4047
4048         * page/InspectorController.cpp: Remove the log function.
4049         (WebCore::InspectorController::windowScriptObjectAvailable): Remove the log function from
4050         InspectorController script class.
4051         * page/inspector/DocumentPanel.js: Remove a use of InspectorController.log that isn't needed.
4052         * page/inspector/Panel.js: Change InspectorController.log to console.log and early return.
4053
4054 2007-11-18  Timothy Hatcher  <timothy@apple.com>
4055
4056         Reviewed by Brady.
4057
4058         Bug 16041: REGRESSION: the Database panel in the Inspector stopped showing errors
4059         http://bugs.webkit.org/show_bug.cgi?id=16041
4060
4061         * page/inspector/DatabasePanel.js: Implement error callbacks to pass to executeSql()
4062           and transaction(). Refactored some code for the success and error callbacks to use.
4063
4064 2007-11-18  Alexey Proskuryakov  <ap@webkit.org>
4065
4066         Reviewed by Maciej.
4067
4068         <rdar://problem/5546393> Whitespace handling doesn't match HTML5.
4069
4070         HTML5 definition is the same as MSIE's, with the exception that the latter strips null
4071         characters. Firefox also treats U+0008 as whitespace, but not U+000B or U+000C.
4072
4073         Test: fast/parser/html-whitespace.html
4074
4075         * html/HTMLTokenizer.cpp:
4076         (WebCore::HTMLTokenizer::parseSpecial):
4077         (WebCore::HTMLTokenizer::parseTag):
4078         Use isASCIISpace, which matches HTML5 definition of whitespace, and also what we use to
4079         check for whitespace almost everywhere.
4080
4081 2007-11-17  Mark Rowe  <mrowe@apple.com>
4082
4083         Reviewed by Darin Adler.
4084
4085         Fix: <rdar://problem/5607032> REGRESSION: testapi exits with assertion failure in debug build
4086              <rdar://problem/5440659> JSGlobalContextCreate throws away globalObjectClass's prototype
4087              http://bugs.webkit.org/show_bug.cgi?id=16033
4088
4089         Update for changes in Interpreter method signatures.
4090
4091         * bindings/js/kjs_binding.cpp:
4092         (KJS::ScriptInterpreter::ScriptInterpreter):
4093         * bindings/js/kjs_window.cpp:
4094         (KJS::Window::clear):
4095
4096 2007-11-17  Timothy Hatcher  <timothy@apple.com>
4097
4098         Reviewed by Mark Rowe.
4099
4100         Bug 13470: i18n: The Web Inspector is not localizable
4101         http://bugs.webkit.org/show_bug.cgi?id=13470
4102
4103         Add support for localization to the Web Inspector. Clients need to
4104         implement localizedStringsURL() to return the URL of the
4105         InspectorLocalizedStrings.js that best matches the user's language.
4106
4107         * English.lproj: Added.
4108         * English.lproj/InspectorLocalizedStrings.js: Added.
4109         * WebCore.xcodeproj/project.pbxproj: Add InspectorLocalizedStrings.js.
4110         * page/InspectorClient.h: Add localizedStringsURL.
4111         * page/InspectorController.cpp: Add localizedStringsURL that calls
4112           the client. Also added a version exposed to JavaScript.
4113         * page/InspectorController.h: Add localizedStringsURL.
4114         * page/inspector/ConsolePanel.js: Call WebInspector.UIString
4115           for user visible strings.
4116         * page/inspector/DatabasePanel.js: Ditto.
4117         * page/inspector/DocumentPanel.js: Ditto.
4118         * page/inspector/ImagePanel.js: Ditto.
4119         * page/inspector/MetricsSidebarPane.js: Ditto.
4120         * page/inspector/NetworkPanel.js: Ditto.
4121         * page/inspector/Panel.js: Ditto.
4122         * page/inspector/PropertiesSidebarPane.js: Ditto.
4123         * page/inspector/Resource.js: Ditto.
4124         * page/inspector/ResourceCategory.js: Ditto.
4125         * page/inspector/SourcePanel.js: Ditto.
4126         * page/inspector/StylesSidebarPane.js: Ditto.
4127         * page/inspector/inspector.css: Use pre-wrap so database errors can use \n.
4128         * page/inspector/inspector.html: Remove some user visible strings.
4129         * page/inspector/inspector.js: Added WebInspector.UIString and call
4130           WebInspector.UIString for user visible strings. Some code needed to be 
4131           moved to WebInspector.loaded to use UIString after the localized strings
4132           get loaded.
4133         * platform/graphics/svg/SVGImageEmptyClients.h:
4134         (WebCore::SVGEmptyFrameLoaderClient::redirectDataToPlugin): Remove WebCore:: prefix.
4135         (WebCore::SVGEmptyInspectorClient::createPage): Ditto.
4136         (WebCore::SVGEmptyInspectorCli