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