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