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