Make IconDatabaseNone.cpp compile with -Wunused and pass check-for-exit-time...
[WebKit-https.git] / WebCore / ChangeLog
1 2009-02-20  David Kilzer  <ddkilzer@apple.com>
2
3         Make IconDatabaseNone.cpp compile with -Wunused and pass check-for-exit-time-destructors
4
5         Reviewed by Sam Weinig.
6
7         * loader/icon/IconDatabaseNone.cpp:
8         (WebCore::IconDatabase::defaultDatabaseFilename): Use DEFINE_STATIC_LOCAL().
9         (WebCore::IconDatabase::open): Commented out unused parameter.
10         (WebCore::IconDatabase::setPrivateBrowsingEnabled): Ditto.
11         (WebCore::IconDatabase::iconForPageURL): Ditto.
12         (WebCore::IconDatabase::iconURLForPageURL): Ditto.
13         (WebCore::IconDatabase::defaultIcon): Ditto.
14         (WebCore::IconDatabase::retainIconForPageURL): Ditto.
15         (WebCore::IconDatabase::releaseIconForPageURL): Ditto.
16         (WebCore::IconDatabase::setIconDataForIconURL): Ditto.
17         (WebCore::IconDatabase::setIconURLForPageURL): Ditto.
18         (WebCore::IconDatabase::setEnabled): Ditto.
19         (WebCore::IconDatabase::pageURLMappingCount): Added stub.
20         (WebCore::IconDatabase::retainedPageURLCount): Ditto.
21         (WebCore::IconDatabase::iconRecordCount): Ditto.
22         (WebCore::IconDatabase::iconRecordCountWithData): Ditto.
23
24 2009-02-20  David Kilzer  <ddkilzer@apple.com>
25
26         Add comment to generated code when shadowing a built-in object
27
28         Reviewed by Sam Weinig.
29
30         * bindings/scripts/CodeGeneratorJS.pm: Added comment to
31         generated code output.
32
33 2009-02-20  Avi Drissman  <avi@chromium.org>
34
35         Reviewed by Eric Seidel.
36
37         https://bugs.webkit.org/show_bug.cgi?id=24036
38         Keyboard events need disambiguation on the Linux platform too.
39
40         * platform/chromium/PlatformKeyboardEventChromium.cpp:
41         (WebCore::PlatformKeyboardEvent::disambiguateKeyDownEvent):
42
43 2009-02-19  Darin Fisher  <darin@chromium.org>
44
45         Reviewed by Eric Seidel.
46
47         https://bugs.webkit.org/show_bug.cgi?id=24046
48
49         Several improvements to CString:
50         1- Make it possible to initialize a CString from a CStringBuffer
51         2- Make it possible to get a CStringBuffer from a CString
52         3- Change CStringBuffer::data() to return a const pointer to ward off mutation
53         4- Remove unused releaseBuffer() methods.
54         5- Make CStringBuffer::create() private to force consumers to get a CStringBuffer from a CString.
55
56         * platform/text/CString.cpp:
57         (WebCore::CString::init):
58         (WebCore::CString::mutableData):
59         (WebCore::CString::newUninitialized):
60         (WebCore::CString::copyBufferIfNeeded):
61         * platform/text/CString.h:
62         (WebCore::CStringBuffer::data):
63         (WebCore::CStringBuffer::length):
64         (WebCore::CStringBuffer::create):
65         (WebCore::CStringBuffer::mutableData):
66         (WebCore::CString::CString):
67         (WebCore::CString::buffer):
68
69 2009-02-19  Dmitry Titov  <dimich@chromium.org>
70
71         Reviewed by Alexey Proskuryakov.
72
73         https://bugs.webkit.org/show_bug.cgi?id=24017
74         Remove some usage of Document in Worker.
75
76         * dom/WorkerContext.h:
77         (WebCore::WorkerContext::userAgent):
78         * dom/Document.cpp:
79         (WebCore::Document::userAgent):
80         * dom/Document.h:
81         * dom/ScriptExecutionContext.h:
82         Added virtual ScriptExecutionContext::userAgent(const KURL&).
83         Document implementation uses FrameLoader::userAgent and
84         WorkerContext receives the string on creation and stores it in a member.
85
86         * dom/Worker.cpp:
87         (WebCore::Worker::Worker):
88         (WebCore::Worker::notifyFinished):
89         * dom/Worker.h:
90         (WebCore::Worker::create):
91         Instead of Document the Worker constructor now gets a ScriptExecutionContext.
92         Start using some methods on SEC (like completeURL() and userAgent()).
93         For others, explicitly case to Document and add a FIXME.
94         Remove Worker::document() too.
95
96 2009-02-20  Gustavo Noronha Silva  <gns@gnome.org>
97
98         Rubber-stamped by Holger Freyther.
99
100         Do not set httpStatus to SOUP_STATUS_OK when serving local files
101         to match other ports' behavior, fixing xmlhttprequest test
102         regressions.
103
104         * platform/network/soup/ResourceHandleSoup.cpp:
105         (WebCore::queryInfoCallback):
106
107 2009-02-19  Dan Bernstein  <mitz@apple.com>
108
109         Reviewed by Sam Weinig.
110
111         - WebCore part of fixing https://bugs.webkit.org/show_bug.cgi?id=24027
112           Do not send loader callbacks during CSS styling
113
114         Undo the iChat-specific quirk added in
115         <http://trac.webkit.org/changeset/41071>. Instead, always suspend memory
116         cache client callbacks during attach() and recalcStyle().
117
118         * WebCore.base.exp: Removed
119         Settings::setNeedsIChatMemoryCacheCallsQuirk().
120         * dom/ContainerNode.cpp:
121         (WebCore::ContainerNode::suspendPostAttachCallbacks): Disable memory
122         cache client callbacks and remember to enable them afterwards if needed.
123         (WebCore::ContainerNode::resumePostAttachCallbacks): Re-enable memory
124         cache client callbacks if they were disabled in
125         suspendPostAttachCallbacks().
126         (WebCore::ContainerNode::attach): Use suspendPostAttachCallbacks() and
127         resumePostAttachCallbacks().
128         * dom/ContainerNode.h: Made suspendPostAttachCallbacks()
129         and resumePostAttachCallbacks() non-static.
130         * dom/Document.cpp:
131         (WebCore::Document::dispatchImageLoadEventsNow): Reverted iChat-specific
132         workaround.
133         * page/Settings.cpp: Removed m_needsIChatMemoryCacheCallsQuirk and
134         related code.
135         (WebCore::Settings::Settings):
136         * page/Settings.h:
137
138 2009-02-19  Holger Hans Peter Freyther  <zecke@selfish.org>
139
140         Unreviewed build fix.
141
142         Build fix after r41092. Make the memoryUsage method
143         public. It will be shadowed by cf/mac and for curl/soup/qt
144         the implementation from ResourceResponseBase will be used.
145
146         * platform/network/ResourceResponseBase.h:
147         (WebCore::ResourceResponseBase::memoryUsage):
148
149 2009-02-19  Beth Dakin  <bdakin@apple.com>
150
151         Reviewed by Dave Hyatt.
152
153         Fix for <rdar://problem/6077775> Should be able to specify 
154         inactive ::selection color
155
156         This patch makes the ::selction pseudo-element work with 
157         the :window-inactive pseudo type. This was, a user can specify a 
158         different ::selection style when a window is inactive.
159
160         * css/CSSStyleSelector.cpp:
161         (WebCore::CSSStyleSelector::SelectorChecker::checkSelector):
162         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
163         * rendering/RenderObject.cpp:
164         (WebCore::RenderObject::selectionBackgroundColor):
165         (WebCore::RenderObject::selectionForegroundColor):
166
167 2009-02-19  Sam Weinig  <sam@webkit.org>
168
169         Reviewed by Beth Dakin.
170
171         Patch for https://bugs.webkit.org/show_bug.cgi?id=24044
172         Update querySelector/querySelectorAll to match the latest spec
173
174         Update querySelector and querySelectorAll to match the latest version
175         of the Selectors API spec.  We now stringify null and undefined to "null"
176         and "undefined" respectively instead of to "".
177
178         Test: fast/dom/SelectorAPI/undefined-null-stringify.html
179
180         * dom/Document.idl:
181         * dom/DocumentFragment.idl:
182         * dom/Element.idl:
183
184 2009-02-19  Dimitri Glazkov  <dglazkov@chromium.org>
185
186         Reviewed by Geoffrey Garen.
187
188         https://bugs.webkit.org/show_bug.cgi?id=23732
189         Rework CachedResource overhead accounting to allow platforms to diverge
190         in numbers.
191
192         * loader/CachedResource.cpp:
193         (WebCore::CachedResource::overheadSize): Changed to ask ResourceResponse
194         for its size and to use actual URL size.
195         * platform/network/ResourceResponseBase.h:
196         (WebCore::ResourceResponseBase::size): Added default size method.
197         * platform/network/cf/ResourceResponse.h:
198         (WebCore::ResourceResponse::size): Added Win/CF size method
199         * platform/network/mac/ResourceResponse.h:
200         (WebCore::ResourceResponse::size): Added Mac size method.
201
202 2009-02-19  Anders Carlsson  <andersca@apple.com>
203
204         Reviewed by Kevin Decker.
205
206         - Fix for <rdar://problem/6604968>
207
208         On Tiger, create an autorelease pool before creating the NSGraphicsContext and drain it immediately
209         after the call to -[NSView displayRectIgnoringOpacity:inContext:].
210
211         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
212         (WebCore::MediaPlayerPrivate::paint):
213
214 2009-02-19  David Hyatt  <hyatt@apple.com>
215
216         Fix a bug where reflections didn't work properly if opacity was < 1.  Make sure that replaced elements
217         also consider reflections to be part of their visual overflow.  This had already been done for blocks
218         and lines, but it wasn't being done yet for replaced elements.
219
220         Also make sure that when the object being reflected has opacity < 1 that we don't end up popping the outer
221         transparency layer early.  Since the reflected object paints twice, we don't want to end the transparency
222         layer it pushed until we're done painting the real object (rather than the reflection).
223
224         Reviewed by Dan Bernstein
225
226         Added fast/reflections/reflection-masks-opacity.html
227
228         * rendering/RenderLayer.cpp:
229         (WebCore::RenderLayer::paintLayer):
230         * rendering/RenderPartObject.cpp:
231         (WebCore::RenderPartObject::layout):
232         * rendering/RenderReplaced.cpp:
233         (WebCore::RenderReplaced::layout):
234         (WebCore::RenderReplaced::adjustOverflowForBoxShadowAndReflect):
235         * rendering/RenderReplaced.h:
236
237 2009-02-19  David Levin  <levin@chromium.org>
238
239         Reviewed by Alexey Proskuryakov.
240
241         Bug 23980: WorkerRunLoop needs a way to run in a given mode similar to CFRunLoopInMode.
242         <https://bugs.webkit.org/show_bug.cgi?id=23980>
243
244         WorkerRunLoop has the ability to run in a mode which filters the tasks to be run.
245         * When WorkerRunLoop::runInMode is called, only task for that mode will run.
246         * When WorkerRunLoop::run is called (or the default mode is used), then all tasks
247           will run regardless of their posted mode.
248
249         Here's a demonstration of the api:
250
251             RefPtr<NameResolution> nameResolution = NameResolution::create(workerRunLoop);
252
253             //  Internally nameResolution will do workerRunLoop.postTaskForMode(task, "MyCoolMode")
254             //  for any tasks that need to be run during this loop.
255             nameResolution->setTaskMode("MyCoolMode");
256
257             nameResolution->start();
258             while (!nameResolution->done()) {
259                 // Only tasks which are posted for "MyCoolMode" will run.
260                 workerRunLoop.runInMode(context, "MyCoolMode");
261             }
262
263         No observable change in behavior, so no test.
264
265         * dom/WorkerRunLoop.cpp:
266         (WebCore::ModePredicate::ModePredicate):
267         (WebCore::ModePredicate::operator()):
268         (WebCore::WorkerRunLoop::WorkerRunLoop):
269         (WebCore::WorkerRunLoop::~WorkerRunLoop):
270         (WebCore::WorkerRunLoop::setSharedTimer):
271         (WebCore::WorkerRunLoop::resetSharedTimer):
272         (WebCore::WorkerRunLoop::run):
273         (WebCore::WorkerRunLoop::runInMode):
274         (WebCore::WorkerRunLoop::postTask):
275         (WebCore::WorkerRunLoop::postTaskForMode):
276         * dom/WorkerRunLoop.h:
277         (WebCore::WorkerRunLoop::Task::create):
278         (WebCore::WorkerRunLoop::Task::mode):
279         (WebCore::WorkerRunLoop::Task::performTask):
280         (WebCore::WorkerRunLoop::Task::Task):
281
282 2009-02-19  Dimitri Glazkov  <dglazkov@chromium.org>
283
284         Reviewed by Eric Seidel.
285
286         https://bugs.webkit.org/show_bug.cgi?id=24034
287         Fix up Selection->VisibleSelection change.
288
289         * page/chromium/EventHandlerChromium.cpp:
290         (WebCore::EventHandler::passMousePressEventToSubframe): Renamed Selection
291         to VisibleSelection.
292
293 2009-02-19  Dimitri Glazkov  <dglazkov@chromium.org>
294
295         Reviewed by Eric Seidel.
296
297         https://bugs.webkit.org/show_bug.cgi?id=24041
298         Correct Skia type conversion issues, fix Chromium Linux build.
299
300         * platform/graphics/chromium/FontLinux.cpp:
301         (WebCore::Font::drawGlyphs): changed parameters to RGBA32, not WebCore::Color.
302
303 2009-02-19  Jungshik Shin <jshin@chromium.org>
304
305         Reviewed by Eric Seidel.
306
307         https://bugs.webkit.org/show_bug.cgi?id=20531
308         Chromium-part follow-up to the patch landed in r40636
309         for bug 20531.
310         Remove a static member function alternateFamilyName
311         from Chromium's Win/Linux ports of FontCache. In r40636,
312         alternateFamilyName was customized using #ifdef PLATFORM(WIN_OS).
313         So, there's no more need for the static member function per
314         platform.
315
316         * platform/graphics/chromium/FontCacheChromiumWin.cpp:
317         * platform/graphics/chromium/FontCacheLinux.cpp:
318
319 2009-02-19  Simon Fraser  <simon.fraser@apple.com>
320
321         Reviewed by Adele Peterson.
322         
323         Call documentWillBecomeInactive() from Document::detach to ensure that
324         media elements are shut down, because they may be kept alive by references
325         from JS past document teardown.
326         
327         documentWillBecomeInactive() calls  renderView()->willMoveOffscreen(), so no
328         need to do that in detach() as well.
329         
330         We no longer need to call documentWillBecomeInactive() from ~Page() (which
331         was added for <https://bugs.webkit.org/show_bug.cgi?id=21116>), since this
332         supersedes that change.
333
334         * dom/Document.cpp:
335         (WebCore::Document::detach):
336         * page/Page.cpp:
337         (WebCore::Page::~Page):
338
339 2009-02-19  Dimitri Glazkov  <dglazkov@chromium.org>
340
341         Reviewed by Eric Seidel.
342
343         https://bugs.webkit.org/show_bug.cgi?id=24028
344         Fix up Skia path changes.
345
346         * platform/graphics/skia/GraphicsContextSkia.cpp:
347         (WebCore::GraphicsContext::strokePath): Removed illegal indirection.
348         * platform/graphics/skia/PathSkia.cpp:
349         (WebCore::boundingBoxForCurrentStroke): Changed call name.
350
351 2009-02-19  Gustavo Noronha Silva  <gns@gnome.org>
352
353         Reviewed by Alexey Proskuryakov.
354
355         Ignore ports on local URLs. This fixes a regression in
356         fast/loader/file-URL-with-port-number.html
357
358         * platform/network/soup/ResourceHandleSoup.cpp:
359         (WebCore::ResourceHandle::startGio):
360
361 2009-02-19  Gustavo Noronha Silva  <gns@gnome.org>
362
363         Reviewed by Alexey Proskuryakov.
364
365         Make setPort remove port if 0 is given to it, as promised by the
366         comment in KURL's header.
367
368         * platform/KURL.cpp:
369         (WebCore::KURL::setPort):
370
371 2009-02-18  Dan Bernstein  <mitz@apple.com>
372
373         Reviewed by Brady Eidson.
374
375         - WebCore part of fixing <rdar://problem/6507512> Crash in iChat at CSSStyleSelector::adjustRenderStyle
376
377         The crash results from re-entry into
378         CSSMutableStyleDeclaration::setCssText, which in turn is caused by
379         the first style change causing a cached image to load from the memory
380         cache, causing load delegate dispatch, and iChat's delegate method
381         calling back into WebKit.
382
383         The workaround is to use defer delegate callbacks for memory cache. In
384         this case, deferring callbacks during image load event dispatch was
385         found to be sufficient.
386
387         The crash is a regression. See also the discussion in
388         <https://bugs.webkit.org/show_bug.cgi?id=22521>.
389
390         * WebCore.base.exp: Added
391         Settings::setNeedsIChatMemoryCacheCallsQuirk().
392         * dom/Document.cpp:
393         (WebCore::Document::dispatchImageLoadEventsNow): If the quirk is
394         enabled, defer memory cache callbacks during image load event dispatch.
395         * page/Settings.cpp:
396         (WebCore::Settings::Settings): Initialize
397         m_needsIChatMemoryCacheCallsQuirk.
398         (WebCore::Settings::setNeedsIChatMemoryCacheCallsQuirk): Added this
399         setter.
400         * page/Settings.h:
401         (WebCore::Settings::needsIChatMemoryCacheCallsQuirk): Added this getter.
402
403 2009-02-18  Adam Roben  <aroben@apple.com>
404
405         Export WebCore::handCursor and Cursor.h
406
407         Reviewed by John Sullivan.
408
409         * WebCore.base.exp: Added WebCore::handCursor.
410         * WebCore.xcodeproj/project.pbxproj: Made Cursor.h private.
411
412 2009-02-18  Ojan Vafai  <ojan@chromium.org>
413
414         Reviewed by Alexey Proskuryakov.
415
416         https://bugs.webkit.org/show_bug.cgi?id=23992
417         REGRESSION: crash on windows loading http://www.stickam.com/liveStreams.do
418
419         Unable to reduce to a layout test.
420
421         * page/Frame.cpp:
422         (WebCore::Frame::contentRenderer):
423
424 2009-02-18  Evan Stade  <estade@chromium.org>
425
426         Reviewed by Eric Seidel.
427
428         https://bugs.webkit.org/show_bug.cgi?id=23861
429         Stroke font outlines on chromium linux
430
431         TEST=LayoutTests/svg/custom/pointer-events-text.svg
432
433         * platform/graphics/chromium/FontLinux.cpp:
434         (WebCore::Font::drawGlyphs):
435
436 2009-02-18  Evan Stade  <estade@chromium.org>
437
438         Reviewed by Eric Seidel.
439
440         https://bugs.webkit.org/show_bug.cgi?id=23860
441         Resync some graphics/skia files with their chromium counterparts
442
443         This comes from chromium patches <http://codereview.chromium.org/17633>
444         and <http://codereview.chromium.org/17454>
445
446         * platform/graphics/skia/GraphicsContextSkia.cpp:
447         (WebCore::GraphicsContext::clipPath):
448         (WebCore::GraphicsContext::fillPath):
449         * platform/graphics/skia/PlatformContextSkia.cpp:
450         (PlatformContextSkia::addPath):
451         (PlatformContextSkia::currentPath):
452         * platform/graphics/skia/PlatformContextSkia.h:
453
454 2009-02-18  Gustavo Noronha Silva  <gns@gnome.org>
455
456         Unreviewed.
457
458         Build fix after r41060.
459
460         * GNUmakefile.am:
461
462 2009-02-18  Dimitri Glazkov  <dglazkov@chromium.org>
463
464         Reviewed by Eric Seidel.
465
466         https://bugs.webkit.org/show_bug.cgi?id=24005
467         Add an include to fix Chromium build.
468
469         * page/animation/AnimationController.cpp: Add UnusedParam.h include.
470
471 2009-02-18  Gustavo Noronha Silva  <gns@gnome.org>
472
473         Reviewed by Holger Freyther.
474
475         Fix symbols.filter location, and add other missing files to the
476         autotools build, so that make dist works.
477
478         * GNUmakefile.am:
479
480 2009-02-18  Zan Dobersek  <zandobersek@gmail.com>
481
482         Rubber-stamped by Holger Hans Peter Freyther.
483
484         Allow POST method for local requests.
485
486         * platform/network/soup/ResourceHandleSoup.cpp:
487         (WebCore::ResourceHandle::startGio):
488
489 2009-02-18  Gustavo Noronha Silva  <gns@gnome.org>
490
491         Reviewed by Holger Hans Peter Freyther.
492
493         Use KURL in startGio instead of passing a string with the URL, so
494         that we can handle removing refs and queries more elegantly. This
495         is fixing more regressions that came from the curl->soup switch.
496
497         Original work by Zan Dobersek.
498
499         * platform/network/ResourceHandle.h:
500         * platform/network/soup/ResourceHandleSoup.cpp:
501         (WebCore::ResourceHandle::start):
502         (WebCore::ResourceHandle::startGio):
503
504 2009-02-18  Holger Hans Peter Freyther  <zecke@selfish.org>
505
506         Reviewed by Alexey Proskuryakov.
507
508         Implement ResourceHandle::loadResourceSynchronously in ResourceHandleSoup.cpp
509
510         The implementation is needed to have synchronous loading, e.g. for
511         JavaScript interaction. This is fixing various regressions that
512         came from the curl->soup switch.
513
514         * platform/network/soup/ResourceHandleSoup.cpp:
515         (WebCore::WebCoreSynchronousLoader::WebCoreSynchronousLoader):
516         (WebCore::WebCoreSynchronousLoader::~WebCoreSynchronousLoader):
517         (WebCore::WebCoreSynchronousLoader::didReceiveResponse):
518         (WebCore::WebCoreSynchronousLoader::didReceiveData):
519         (WebCore::WebCoreSynchronousLoader::didFinishLoading):
520         (WebCore::WebCoreSynchronousLoader::didFail):
521         (WebCore::WebCoreSynchronousLoader::run):
522         (WebCore::ResourceHandle::loadResourceSynchronously):
523
524 2009-02-18  Xan Lopez  <xan@gnome.org>
525
526         Reviewed by Mark Rowe.
527
528         https://bugs.webkit.org/show_bug.cgi?id=23989
529
530         Based on a patch by Bo Yang  <techrazy.yang@gmail.com>
531
532         Make the cursor cache global, that's all we really need and
533         otherwise we can miss cursor transitions in some situations (see
534         the bug for one testcase). Also remove some now useless code.
535
536         * platform/Widget.h:
537         * platform/gtk/WidgetGtk.cpp:
538         (WebCore::Widget::Widget):
539         (WebCore::Widget::~Widget):
540         (WebCore::Widget::setCursor):
541
542 2009-02-17  Adam Roben  <aroben@apple.com>
543
544         Windows build fix
545
546         * loader/FrameLoader.cpp:
547         (WebCore::toPlugInElement): Don't rely on #if being processed before
548         ASSERT.
549
550 2009-02-17  David Levin  <levin@chromium.org>
551
552         Reviewed by Alexey Proskuryakov.
553
554         Bug 23977: Unnecessary timer related headers in files.
555         <https://bugs.webkit.org/show_bug.cgi?id=23977>
556
557         No observable change in behavior, so no test.
558
559         * dom/Document.cpp:
560         * dom/WorkerRunLoop.cpp:
561         * dom/WorkerRunLoop.h:
562
563 2009-02-17  Peter Abrahamsen  <rainhead@gmail.com>
564
565         Reviewed by Sam Weinig.
566
567         https://bugs.webkit.org/show_bug.cgi?id=23958
568         <rdar://problem/6587815>
569
570         Updated XMLHttpRequest with new header names from the latest Access
571         Control draft: http://www.w3.org/TR/access-control/
572         - Access-Control-Origin becomes Access-Control-Allow-Origin
573         - Access-Control-Credentials becomes Access-Control-Allow-Credentials
574
575         * xml/XMLHttpRequest.cpp:
576         (WebCore::XMLHttpRequest::accessControlCheck):
577
578 2009-02-17  Kevin Ollivier  <kevino@theolliviers.com>
579
580         wx build fix. Add missing constructor used for empty values.
581
582         * platform/graphics/wx/FontPlatformData.h:
583         (WebCore::FontPlatformData::FontPlatformData):
584
585 2009-02-17  Antti Koivisto  <antti@apple.com>
586
587         Reviewed by Dave Kilzer.
588
589         <rdar://problem/6592446> dynamically updating page doesn't seem to draw when updated
590         
591         Need update after callback.
592
593         * bindings/js/JSCustomPositionCallback.cpp:
594         (WebCore::JSCustomPositionCallback::handleEvent):
595         * bindings/js/JSCustomPositionErrorCallback.cpp:
596         (WebCore::JSCustomPositionErrorCallback::handleEvent):
597
598 2009-02-17  Eric Carlson  <eric.carlson@apple.com>
599
600         Reviewed by Antti Koivisto.
601
602         https://bugs.webkit.org/show_bug.cgi?id=23917
603         Allow a WebKit plug-in to act as a proxy for the <audio> and <video>
604         element.
605
606         * DerivedSources.make: add media element proxy exports to .exp file when feature is defined.
607
608         * WebCore.VideoProxy.exp: New, define the informal protocol exported by a media element proxy.
609
610         * WebCore.xcodeproj/project.pbxproj: Add MediaPlayerProxy.h.
611
612         * html/HTMLMediaElement.cpp:
613         (WebCore::HTMLMediaElement::HTMLMediaElement): Initialize m_needWidgetUpdate.
614         (WebCore::HTMLMediaElement::attributeChanged): Don't detach+attach when PLUGIN_PROXY_FOR_VIDEO, the
615         proxy plug-in handles the poster frame.
616         (WebCore::HTMLMediaElement::rendererIsNeeded): New logic for PLUGIN_PROXY_FOR_VIDEO.
617         (WebCore::HTMLMediaElement::createRenderer): Create RenderPartObject when PLUGIN_PROXY_FOR_VIDEO.
618         (WebCore::HTMLMediaElement::attach): Set m_needWidgetUpdate when PLUGIN_PROXY_FOR_VIDEO
619         (WebCore::HTMLMediaElement::load): Don't reallocate MediaPlayer when PLUGIN_PROXY_FOR_VIDEO, we keep the
620         same plug-in for the life of the element.
621         (WebCore::HTMLMediaElement::mediaPlayerNetworkStateChanged): update m_networkState when media player
622         network state changes to EMPTY, otherwise we can get out of sync with engine.
623         (WebCore::HTMLMediaElement::defaultEventHandler): pass event to widget when PLUGIN_PROXY_FOR_VIDEO
624         (WebCore::HTMLMediaElement::deliverNotification): New, deliver notification from proxy plug-in to
625         media player.
626         (WebCore::HTMLMediaElement::setMediaPlayerProxy): New, pass proxy object to media player.
627         (WebCore::HTMLMediaElement::initialURL): New, return the url from the "src" attr or the appropriate
628         <source> element to be used as the initial url for the proxy.
629         (WebCore::HTMLMediaElement::finishParsingChildren): New, allocate MediaPlayer and update widget.
630         * html/HTMLMediaElement.h: Declare new methods for proxy, add m_needWidgetUpdate.
631         (WebCore::HTMLMediaElement::setNeedWidgetUpdate): 
632
633         * html/HTMLVideoElement.cpp:
634         (WebCore::HTMLVideoElement::attach): Poster image is handled by proxy when PLUGIN_PROXY_FOR_VIDEO.
635         (WebCore::HTMLVideoElement::parseMappedAttribute): Ditto.
636         * html/HTMLVideoElement.h:
637
638         * loader/FrameLoader.cpp:
639         (WebCore::toPlugInElement): Allow cast if element is <video> or <audio>
640
641         * platform/graphics/MediaPlayer.cpp:
642         (WebCore::MediaPlayer::MediaPlayer): Remove white space.
643         (WebCore::MediaPlayer::setPoster): New, forward call to private player.
644         (WebCore::MediaPlayer::deliverNotification): Ditto.
645         (WebCore::MediaPlayer::setMediaPlayerProxy): Ditto.
646         * platform/graphics/MediaPlayer.h:
647         (WebCore::MediaPlayer::mediaPlayerClient):
648
649         * platform/graphics/mac/MediaPlayerProxy.h: New, defines media player proxy interface.
650
651         * rendering/RenderPart.cpp:
652         (WebCore::RenderPart::RenderPart): Change constructor to take Element* instead of Node* as a
653         non-element node doesn't need a renderer
654         * rendering/RenderPart.h: Ditto.
655
656         * rendering/RenderPartObject.cpp:
657         (WebCore::RenderPartObject::RenderPartObject): Ditto.
658         (WebCore::RenderPartObject::updateWidget): Package params for proxy plug-in when element is 
659         <video> or <audio>.
660         * rendering/RenderPartObject.h:
661
662 2009-02-17  David Hyatt  <hyatt@apple.com>
663
664         Reviewed by Eric Seidel
665
666         Fix for https://bugs.webkit.org/show_bug.cgi?id=23985
667
668         Don't allow legends to be anything but display:block.
669
670         Added fast/forms/inline-ignored-on-legend.html
671
672         * GNUmakefile.am:
673         * WebCore.pro:
674         * WebCore.vcproj/WebCore.vcproj:
675         * WebCore.xcodeproj/project.pbxproj:
676         * WebCoreSources.bkl:
677         * css/html4.css:
678         * html/HTMLLegendElement.cpp:
679         * html/HTMLLegendElement.h:
680         * rendering/RenderLegend.cpp: Removed.
681         * rendering/RenderLegend.h: Removed.
682         * wml/WMLInsertedLegendElement.cpp:
683         * wml/WMLInsertedLegendElement.h:
684
685 2009-02-13  Brett Wilson  <brettw@dhcp-172-22-71-167.mtv.corp.google.com>
686
687         Reviewed by Simon Fraser.
688
689         https://bugs.webkit.org/attachment.cgi?id=27666 
690         Fix Chromium build build: forgotten include in RenderObject, sync
691         RenderTheme to the recent changes in RenderObject.
692
693         * rendering/RenderObject.cpp:
694         * rendering/RenderThemeChromiumMac.mm:
695         (WebCore::RenderThemeChromiumMac::updatePressedState):
696
697 2009-02-17  Gustavo Noronha Silva  <gns@gnome.org>
698
699         Reviewed by Darin Adler.
700
701         https://bugs.webkit.org/show_bug.cgi?id=22966
702         crash when destroying a webview that opened a page containing <script>
703         tags
704
705         Fix m_group being set to 0 instead of to m_singlePageGroup when
706         GroupName is set to empty
707
708         * page/Page.cpp:
709         (WebCore::Page::setGroupName):
710
711 2009-02-16  Beth Dakin  <bdakin@apple.com>
712
713         Reviewed by Sam Weinig.
714
715         Fix for <rdar://problem/6386623>
716
717         I made m_numParsedProperties and m_maxParsedProperties unsigned 
718         instead of int, and then added an early return from addPropery() if 
719         m_maxParsedProperties exceeds the max value.
720
721         * css/CSSParser.cpp:
722         (WebCore::CSSParser::addProperty):
723         (WebCore::CSSParser::rollbackLastProperties):
724         (WebCore::CSSParser::clearProperties):
725         (WebCore::CSSParser::createFontFaceRule):
726         (WebCore::CSSParser::deleteFontFaceOnlyValues):
727         * css/CSSParser.h:
728
729 2009-02-16  Justin Garcia  <justin.garcia@apple.com>
730
731         Reviewed by Mark Rowe.
732
733         https://bugs.webkit.org/show_bug.cgi?id=16309
734         HTML5: The third execCommand argument for insert{un}orderedlist should be ignored
735         
736         When we originally implemented this command, MSDN documentation said that IE set the
737         id attribute of inserted lists to the third argument to execCommand, but IE doesn't
738         do this nor do any other browsers.
739
740         * editing/EditorCommand.cpp:
741         (WebCore::executeInsertOrderedList):
742         (WebCore::executeInsertUnorderedList):
743         * editing/IndentOutdentCommand.cpp:
744         (WebCore::IndentOutdentCommand::outdentParagraph):
745         * editing/InsertListCommand.cpp:
746         (WebCore::InsertListCommand::insertList):
747         (WebCore::InsertListCommand::InsertListCommand):
748         (WebCore::InsertListCommand::doApply):
749         * editing/InsertListCommand.h:
750         (WebCore::InsertListCommand::create):
751
752 2009-02-16  Dan Bernstein  <mitz@apple.com>
753
754         Reviewed by Geoffrey Garen.
755
756         - fix <rdar://problem/6561077> REGRESSION (r39634): Unable to select an item in stocks widget with the mouse
757
758         Test: platform/mac/fast/events/pointer-events-dashboard.html
759
760         * css/CSSStyleSelector.cpp:
761         (WebCore::CSSStyleSelector::applyProperty): Do not apply the
762         pointer-events property in Dashboard backwards compatibility mode,
763         in order to work around misuse of that property by the Stocks widget.
764
765 2009-02-16  Justin Garcia  <justin.garcia@apple.com>
766
767         Reviewed by Eric Seidel.
768
769         https://bugs.webkit.org/show_bug.cgi?id=15381
770         execCommand justify modifies the contentEditable node
771
772         * editing/CompositeEditCommand.cpp:
773         (WebCore::CompositeEditCommand::moveParagraphContentsToNewBlockIfNecessary): Avoid modifying not just
774         the body element, but any root editable element.
775         
776 2009-02-16  Chris Fleizach  <cfleizach@apple.com>
777
778         Reviewed by Adele Peterson.
779  
780         Bug 23979: AX: alt tag not returned for <input type="image">
781         https://bugs.webkit.org/show_bug.cgi?id=23979
782
783         Test: accessibility/input-image-alt.html
784
785         * page/AccessibilityRenderObject.cpp:
786         (WebCore::AccessibilityRenderObject::accessibilityDescription):
787
788 2009-02-16  Kevin Watters  <kevinwatters@gmail.com>
789
790         Reviewed by Kevin Ollivier.
791
792         The ref data is not properly set unless we use the CreateMatrix function.
793         
794         https://bugs.webkit.org/show_bug.cgi?id=23978
795
796         * platform/graphics/wx/TransformationMatrixWx.cpp:
797         (WebCore::TransformationMatrix::operator wxGraphicsMatrix):
798
799 2009-02-16  Dan Bernstein  <mitz@apple.com>
800
801         Reviewed by John Sullivan.
802
803         - fix <rdar://problem/6516829> FontPlatformData constructor passes NULL to CTFontCopyGraphicsFont and CTFontGetPlatformFont
804
805         * platform/graphics/FontCache.cpp:
806         (WebCore::FontDataCacheKeyTraits::emptyValue): Changed to use the
807         FontPlatformData(float, bool, bool) constructor.
808         * platform/graphics/mac/FontCacheMac.mm:
809         (WebCore::FontCache::createFontPlatformData): Changed to pass a valid
810         NSFont to the FontPlatformData constructor, instead of implicitly
811         passing 0 and then calling setFont().
812         * platform/graphics/mac/FontPlatformData.h: Made the NSFont parameter
813         of the constructor mandatory.
814
815 2009-02-15  David Kilzer  <ddkilzer@apple.com>
816
817         Move duplicate caretWidth constants to RenderObject.h
818
819         Reviewed by Dan Bernstein.
820
821         No test since no change in behavior.
822
823         * rendering/RenderBlock.cpp:
824         (WebCore::RenderBlock::localCaretRect): Removed caretWidth.
825         * rendering/RenderBox.cpp:
826         (WebCore::RenderBox::localCaretRect): Ditto.
827         * rendering/RenderObject.h: Added caretWidth definition.
828         * rendering/RenderText.cpp:
829         (WebCore::RenderText::localCaretRect): Removed caretWidth.
830
831 2009-02-13  Dimitri Glazkov  <dglazkov@chromium.org>
832
833         Reviewed by Eric Seidel.
834
835         https://bugs.webkit.org/show_bug.cgi?id=23955
836         V8HTMLPlugInCustom returns undefined, which fools interceptors.
837
838         * bindings/v8/custom/V8HTMLPlugInElementCustom.cpp:
839         (WebCore::NAMED_PROPERTY_GETTER): Use deferToInterceptor() return value.
840         (WebCore::NAMED_PROPERTY_SETTER): Ditto.
841         (WebCore::INDEXED_PROPERTY_GETTER): Ditto.
842         (WebCore::INDEXED_PROPERTY_SETTER): Ditto.
843
844 2009-02-13  Dimitri Glazkov  <dglazkov@chromium.org>
845
846         Reviewed by Eric Seidel.
847
848         https://bugs.webkit.org/show_bug.cgi?id=23954
849         Add V8 custom bindings for CanvasRenderingContext2D.
850
851         * bindings/v8/custom/V8CanvasRenderingContext2DCustom.cpp: Added.
852         (WebCore::toV8):
853         (WebCore::toCanvasStyle):
854         (WebCore::ACCESSOR_GETTER):
855         (WebCore::ACCESSOR_SETTER):
856
857 2009-02-13  Anders Carlsson  <andersca@apple.com>
858
859         Reviewed by Darin Adler and Dan Bernstein.
860
861         <rdar://problem/6583187>
862         
863         * page/NavigatorBase.cpp:
864         Handle PPC64 and X86_64 as well.
865
866 2009-02-13  Darin Adler  <darin@apple.com>
867
868         Reviewed by Mark Rowe.
869
870         Fix broken tokenizer regression test that reflected a lifetime bug
871         in the document.write optimization. The test failure was trivial to
872         reproduce in COLLECT_ON_EVERY_ALLOCATION mode.
873
874         * bindings/js/JSHTMLDocumentCustom.cpp:
875         (WebCore::documentWrite): Convert strings to String rather than passing
876         the pointer and length to SegmentedString. The optimization is thus
877         mostly gone. However, there are two ways to bring it back: 1) Apply
878         the patch that makes UString and String share the same buffers.
879         2) Add a UString feature to SegmentedString; simple to do but might
880         risk slowing down normal document parsing.
881
882 2009-02-13  Adam Treat  <adam.treat@torchmobile.com>
883
884         Caught by Darin Adler.
885
886         No reason to check m_tokenizer twice for 0 in a row.
887
888         * dom/Document.cpp:
889         (WebCore::Document::write):
890
891 2009-02-13  Lyon Chen  <lyon.chen@torchmobile.com>
892
893         Reviewed by Dave Hyatt.
894
895         Take into account y() + height() when calculating getLowerRightCorner.
896
897         * dom/ContainerNode.cpp:
898         (WebCore::ContainerNode::getLowerRightCorner):
899
900 2009-02-13  Antti Koivisto  <antti@apple.com>
901
902         Reviewed by Dave Hyatt.
903
904         Most of this code was in RenderBox, restore the copyright lines.
905
906         * rendering/RenderBoxModelObject.cpp:
907         * rendering/RenderBoxModelObject.h:
908
909 2009-02-13  David Hyatt  <hyatt@apple.com>
910
911         Get rid of printBoxDecorations, since it is dead code.
912
913         Reviewed by Dan Bernstein
914
915         * rendering/RenderObject.h:
916
917 2009-02-13  Adam Treat  <adam.treat@torchmobile.com>
918
919         Reviewed by Darin Adler.
920
921         https://bugs.webkit.org/show_bug.cgi?id=23952
922         Add Document::write overload which takes a SegmentedString since this
923         is what the tokenizer expects anyway.  Modified JSHTMLDocument so it once
924         again calls Document::write instead of injecting the string directly into
925         the tokenizer.  This ensures that all document.write's are funneled through
926         one method again, but should still be just as fast for JSHTMLDocumentCustom.
927
928         * bindings/js/JSHTMLDocumentCustom.cpp:
929         (WebCore::documentWrite):
930         * dom/Document.cpp:
931         (WebCore::Document::write):
932         * dom/Document.h:
933
934 2009-02-13  David Hyatt  <hyatt@apple.com>
935
936         Reviewed by Simon Fraser
937
938         Remove updateWidgetPosition on RenderObject.  Change RenderView's set of widgets
939         to have a tighter type: RenderWidget instead of RenderObject.  Devirtualize
940         updateWidgetPosition, since all RenderWidgets (except for applets) are now
941         RenderParts also.
942         
943         * rendering/RenderObject.cpp:
944         * rendering/RenderObject.h:
945         * rendering/RenderPart.cpp:
946         * rendering/RenderPart.h:
947         * rendering/RenderView.cpp:
948         (WebCore::RenderView::updateWidgetPositions):
949         (WebCore::RenderView::addWidget):
950         (WebCore::RenderView::removeWidget):
951         * rendering/RenderView.h:
952         * rendering/RenderWidget.cpp:
953         (WebCore::RenderWidget::updateWidgetPosition):
954         * rendering/RenderWidget.h:
955
956 2009-02-13  David Hyatt  <hyatt@apple.com>
957
958         Reviewed by Eric Seidel
959
960         Remove isEditable() on RenderObject.  It is dead code.
961
962         * rendering/RenderObject.cpp:
963         * rendering/RenderObject.h:
964
965 2009-02-13  David Hyatt  <hyatt@apple.com>
966
967         Reviewed by Eric Seidel
968
969         Add isTextControl() to RenderObject.  Patch call sites thats asked isTextField() || isTextArea() to just use
970         isTextControl() instead.
971         
972         Add a toRenderTextControl converter for doing checked casting to RenderTextControls.
973
974         * dom/Document.cpp:
975         (WebCore::Document::setFocusedNode):
976         * dom/InputElement.cpp:
977         (WebCore::InputElement::updateSelectionRange):
978         * editing/ReplaceSelectionCommand.cpp:
979         (WebCore::ReplacementFragment::ReplacementFragment):
980         * editing/TextIterator.cpp:
981         (WebCore::TextIterator::handleReplacedElement):
982         * html/HTMLInputElement.cpp:
983         (WebCore::HTMLInputElement::selectionStart):
984         (WebCore::HTMLInputElement::selectionEnd):
985         (WebCore::HTMLInputElement::setSelectionStart):
986         (WebCore::HTMLInputElement::setSelectionEnd):
987         (WebCore::HTMLInputElement::select):
988         (WebCore::HTMLInputElement::defaultEventHandler):
989         (WebCore::HTMLInputElement::selection):
990         * html/HTMLTextAreaElement.cpp:
991         (WebCore::HTMLTextAreaElement::selectionStart):
992         (WebCore::HTMLTextAreaElement::selectionEnd):
993         (WebCore::HTMLTextAreaElement::setSelectionStart):
994         (WebCore::HTMLTextAreaElement::setSelectionEnd):
995         (WebCore::HTMLTextAreaElement::select):
996         (WebCore::HTMLTextAreaElement::setSelectionRange):
997         (WebCore::HTMLTextAreaElement::appendFormData):
998         (WebCore::HTMLTextAreaElement::updateValue):
999         (WebCore::HTMLTextAreaElement::selection):
1000         * page/AccessibilityRenderObject.cpp:
1001         (WebCore::AccessibilityRenderObject::isNativeTextControl):
1002         (WebCore::AccessibilityRenderObject::text):
1003         (WebCore::AccessibilityRenderObject::selectedText):
1004         (WebCore::AccessibilityRenderObject::selectedTextRange):
1005         (WebCore::AccessibilityRenderObject::setSelectedTextRange):
1006         (WebCore::AccessibilityRenderObject::visiblePositionForIndex):
1007         (WebCore::AccessibilityRenderObject::indexForVisiblePosition):
1008         (WebCore::AccessibilityRenderObject::observableObject):
1009         * page/Frame.cpp:
1010         (WebCore::Frame::notifyRendererOfSelectionChange):
1011         * rendering/RenderObject.h:
1012         (WebCore::RenderObject::isTextControl):
1013         (WebCore::objectIsRelayoutBoundary):
1014         * rendering/RenderTextControl.h:
1015         (WebCore::RenderTextControl::isTextControl):
1016         (WebCore::toRenderTextControl):
1017         * rendering/TextControlInnerElements.cpp:
1018         (WebCore::TextControlInnerTextElement::defaultEventHandler):
1019         * wml/WMLInputElement.cpp:
1020         (WebCore::WMLInputElement::select):
1021         (WebCore::WMLInputElement::defaultEventHandler):
1022         (WebCore::WMLInputElement::isConformedToInputMask):
1023
1024 2009-02-13  David Hyatt  <hyatt@apple.com>
1025
1026         Get rid of isEdited/setEdited on RenderObject.  Devirtualize isEdited/setEdited on RenderTextControl.
1027         Callers were already asking if the renderer was a text field (or a text area), so it was especially
1028         pointless to waste a second virtual function call after making one just to determine the object type.
1029     
1030         Reviewed by Simon Fraser
1031
1032         * dom/Document.cpp:
1033         (WebCore::Document::setFocusedNode):
1034         * html/HTMLInputElement.cpp:
1035         (WebCore::HTMLInputElement::defaultEventHandler):
1036         * rendering/RenderObject.h:
1037         * rendering/RenderTextControl.h:
1038         (WebCore::RenderTextControl::isEdited):
1039         (WebCore::RenderTextControl::setEdited):
1040
1041 2009-02-13  Scott Violet  <sky@google.com>
1042
1043         Reviewed by Eric Seidel.
1044
1045         https://bugs.webkit.org/show_bug.cgi?id=23934
1046         Skia platform doesn't render text decoration shadows.
1047
1048         Makes Skia render text decoration shadows correctly. We weren't
1049         preparing the SkPaint correctly and didn't have a couple of checks
1050         CG has. Additionally makes the fillColor/strokeColor methods
1051         consistent.
1052
1053         This behavior is covered by existing layout tests (see bug for list).
1054
1055         * platform/graphics/chromium/FontChromiumWin.cpp:
1056         (WebCore::Font::drawGlyphs):
1057         (WebCore::Font::drawComplexText):
1058         * platform/graphics/skia/GraphicsContextSkia.cpp:
1059         (WebCore::GraphicsContext::drawLineForText):
1060         * platform/graphics/skia/PlatformContextSkia.cpp:
1061         (PlatformContextSkia::effectiveFillColor):
1062         (PlatformContextSkia::effectiveStrokeColor):
1063         * platform/graphics/skia/PlatformContextSkia.h:
1064
1065 2009-02-12  Darin Fisher  <darin@chromium.org>
1066
1067         Reviewed by Eric Seidel.
1068
1069         https://bugs.webkit.org/show_bug.cgi?id=23944
1070         KURLGoogle's pre-parsed canonicalSpec constructor should take a CString
1071
1072         * platform/KURL.h:
1073         * platform/KURLGoogle.cpp:
1074         (WebCore::KURLGooglePrivate::setUtf8):
1075         (WebCore::KURLGooglePrivate::setAscii):
1076         (WebCore::KURLGooglePrivate::init):
1077         (WebCore::KURLGooglePrivate::replaceComponents):
1078         (WebCore::KURL::KURL):
1079         * platform/KURLGooglePrivate.h:
1080
1081 2009-02-13  David Hyatt  <hyatt@apple.com>
1082
1083         Remove leftmost/rightmost/lowestPosition from RenderObject.  They only need to be called on boxes.
1084
1085         Reviewed by Dan Bernstein
1086
1087         * rendering/RenderBlock.cpp:
1088         (WebCore::RenderBlock::lowestPosition):
1089         (WebCore::RenderBlock::rightmostPosition):
1090         (WebCore::RenderBlock::leftmostPosition):
1091         * rendering/RenderLayer.cpp:
1092         (WebCore::RenderLayer::computeScrollDimensions):
1093         * rendering/RenderMedia.cpp:
1094         (WebCore::RenderMedia::lowestPosition):
1095         (WebCore::RenderMedia::rightmostPosition):
1096         (WebCore::RenderMedia::leftmostPosition):
1097         * rendering/RenderObject.h:
1098         * rendering/RenderTableSection.cpp:
1099         (WebCore::RenderTableSection::lowestPosition):
1100         (WebCore::RenderTableSection::rightmostPosition):
1101         (WebCore::RenderTableSection::leftmostPosition):
1102
1103 2009-02-12  Simon Fraser  <simon.fraser@apple.com>
1104
1105         Fix build with ACCELERATED_COMPOSITING turned on.
1106
1107         toRenderBox()->x() asserts for a layer on an inline; use
1108         m_owningLayer->renderBoxX() instead.
1109         
1110         * rendering/RenderLayerBacking.cpp:
1111         (WebCore::RenderLayerBacking::paintIntoLayer):
1112
1113 2009-02-12  Darin Adler  <darin@apple.com>
1114
1115         Reviewed by Oliver Hunt.
1116
1117         Speed up document.write a bit.
1118
1119         * bindings/js/JSHTMLDocumentCustom.cpp:
1120         (WebCore::documentWrite): Added. Uses SegmentedString to avoid conversion from
1121         UString to String and to avoid appending strings. Also added code to handle
1122         newlines efficiently.
1123         (WebCore::JSHTMLDocument::write): Changed to use documentWrite.
1124         (WebCore::JSHTMLDocument::writeln): Ditto.
1125
1126         * dom/Document.cpp:
1127         (WebCore::Document::prepareToWrite): Added. Refactored the initialization part
1128         of write into a separate function for use in the JavaScript binding.
1129         (WebCore::Document::write): Changed to call prepareToWrite.
1130
1131         * dom/Document.h: Added declaration for prepareToWrite.
1132
1133 2009-02-13  Prasanth Ullattil  <pullatti@trolltech.com>
1134
1135         Reviewed by Simon Hausmann.
1136
1137         Fixes crash in the Qt port on Windows with comboboxes
1138
1139         The focusWidget in the input context is not reset properly.
1140         The QApplication::setFocusWidget() wont reset the IC if the reason is
1141         PopupFocusReason, this is not ideal. For the time being we are going
1142         to do this from webkit itself.
1143
1144         * platform/qt/QWebPopup.cpp:
1145         (WebCore::QWebPopup::hidePopup):
1146
1147 2009-02-12  Kevin Ollivier  <kevino@theolliviers.com>
1148
1149         wx build fix, typo while tweaking last patch for commit.
1150
1151         * platform/wx/wxcode/gtk/fontprops.cpp:
1152         (GetTextExtent):
1153
1154 2009-02-12  miggilin  <mr.diggilin@gmail.com>
1155
1156         Reviewed by Kevin Ollivier.
1157
1158         Use Cairo/PANGO to fix text measurements and implement proper
1159         non-kerned text drawing on wxGTK.
1160
1161         https://bugs.webkit.org/show_bug.cgi?id=17727
1162
1163         * platform/graphics/GlyphBuffer.h:
1164         * platform/graphics/wx/FontPlatformDataWx.cpp:
1165         (WebCore::fontWeightToWxFontWeight):
1166         * platform/graphics/wx/SimpleFontDataWx.cpp:
1167         (WebCore::SimpleFontData::platformWidthForGlyph):
1168         * platform/wx/wxcode/fontprops.h:
1169         * platform/wx/wxcode/gtk/fontprops.cpp:
1170         (wxFontProperties::wxFontProperties):
1171         (GetTextExtent):
1172         * platform/wx/wxcode/gtk/non-kerned-drawing.cpp:
1173         (WebCore::pangoFontMap):
1174         (WebCore::createPangoFontForFont):
1175         (WebCore::createScaledFontForFont):
1176         (WebCore::pango_font_get_glyph):
1177         (WebCore::drawTextWithSpacing):
1178         * platform/wx/wxcode/non-kerned-drawing.h:
1179
1180 2009-02-12  Chris Marrin  <cmarrin@apple.com>
1181
1182         Reviewed by Simon Fraser
1183
1184         https://bugs.webkit.org/show_bug.cgi?id=23942
1185
1186         Hook up 3D CSS transforms to the accelerated compositor backend.
1187         Not enabled by default.
1188
1189         * page/animation/AnimationBase.cpp:
1190         (WebCore::blendFunc):
1191         (WebCore::ensurePropertyMap):
1192         * page/animation/CompositeAnimation.cpp:
1193         (WebCore::CompositeAnimationPrivate::updateTransitions):
1194         * page/animation/ImplicitAnimation.cpp:
1195         (WebCore::ImplicitAnimation::willNeedService):
1196         * page/animation/KeyframeAnimation.cpp:
1197         (WebCore::KeyframeAnimation::willNeedService):
1198         * platform/graphics/GraphicsLayer.cpp:
1199         (WebCore::GraphicsLayer::TransformValueList::makeFunctionList):
1200         (WebCore::GraphicsLayer::dumpProperties):
1201         * platform/graphics/mac/GraphicsLayerCA.mm:
1202         (WebCore::copyTransform):
1203         (WebCore::getValueFunctionNameForTransformOperation):
1204         (WebCore::GraphicsLayerCA::animateTransform):
1205         * rendering/RenderBox.cpp:
1206         (WebCore::RenderBox::updateBoxModelInfoFromStyle):
1207         * rendering/RenderLayer.cpp:
1208         (WebCore::RenderLayer::updateTransform):
1209         (WebCore::RenderLayer::hasTransformStyle3D):
1210         (WebCore::RenderLayer::hasPerspective):
1211         (WebCore::RenderLayer::perspectiveTransform):
1212         * rendering/RenderLayer.h:
1213         * rendering/RenderLayerBacking.cpp:
1214         (WebCore::RenderLayerBacking::updateGraphicsLayers):
1215         (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
1216         (WebCore::RenderLayerBacking::computeTransformOrigin):
1217         (WebCore::RenderLayerBacking::computePerspectiveOrigin):
1218         * rendering/RenderLayerBacking.h:
1219         * rendering/RenderLayerCompositor.cpp:
1220         (WebCore::RenderLayerCompositor::has3DContent):
1221         (WebCore::requiresCompositingLayerForTransform):
1222         (WebCore::RenderLayerCompositor::requiresCompositingLayer):
1223         (WebCore::RenderLayerCompositor::layerHas3DContent):
1224         * rendering/RenderLayerCompositor.h:
1225
1226 2009-02-12  David Hyatt  <hyatt@apple.com>
1227
1228         Reviewed by Eric Seidel
1229
1230         Get rid of containingBlockHeight(), since it had only one implementation (despite being virtual) and just returned
1231         containingBlock()->availableHeight().  The latter reads better anyway.  Rename containingBlockWidth() to
1232         containingBlockWidthForContent() and move it to RenderBoxModelObject.
1233
1234         * rendering/RenderBlock.cpp:
1235         (WebCore::RenderBlock::localCaretRect):
1236         * rendering/RenderBox.cpp:
1237         (WebCore::RenderBox::containingBlockWidthForContent):
1238         (WebCore::RenderBox::calcWidth):
1239         (WebCore::RenderBox::calcReplacedWidthUsing):
1240         * rendering/RenderBox.h:
1241         * rendering/RenderBoxModelObject.cpp:
1242         (WebCore::RenderBoxModelObject::relativePositionOffsetX):
1243         (WebCore::RenderBoxModelObject::relativePositionOffsetY):
1244         (WebCore::RenderBoxModelObject::containingBlockWidthForContent):
1245         * rendering/RenderBoxModelObject.h:
1246         * rendering/RenderInline.cpp:
1247         (WebCore::RenderInline::marginLeft):
1248         (WebCore::RenderInline::marginRight):
1249         * rendering/RenderObject.cpp:
1250         * rendering/RenderObject.h:
1251         * rendering/RenderSVGContainer.cpp:
1252         (WebCore::RenderSVGContainer::calcReplacedWidth):
1253
1254 2009-02-12  Simon Fraser  <simon.fraser@apple.com>
1255
1256         Fix non-Mac builds by adding Matrix3DTransformOperation.* and
1257         PerspectiveTransformOperation.*. Cleaned out some cruft in 
1258         the WebCore.vcproj fle.
1259
1260         * GNUmakefile.am:
1261         * WebCore.pro:
1262         * WebCore.scons:
1263         * WebCore.vcproj/WebCore.vcproj:
1264
1265 2009-02-12  David Smith  <catfish.man@gmail.com>
1266
1267         Reviewed by Dave Hyatt.
1268         
1269         Fix https://bugs.webkit.org/show_bug.cgi?id=23935
1270         Nested :not() and non-simple selectors in :not() should be invalid
1271
1272         * css/CSSGrammar.y: Reject nested :not()
1273         * css/CSSStyleSelector.cpp:
1274         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector): ASSERT() rather than checking, since the parser enforces it now
1275
1276 2009-02-12  Kevin Ollivier  <kevino@theolliviers.com>
1277
1278         wx build fixes.
1279
1280         * WebCoreSources.bkl:
1281
1282 2009-02-12  Simon Fraser  <simon.fraser@apple.com>
1283
1284         Fix build with ACCELERATED_COMPOSITING turned on.
1285         
1286         Need to cast toRenderBox() in order to call overflowClipRect().
1287
1288         * rendering/RenderLayerBacking.cpp:
1289         (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
1290
1291 2009-02-12  Oliver Hunt  <oliver@apple.com>
1292
1293         Reviewed by NOBODY (Build fix).
1294
1295         Fix windows build.
1296
1297         * css/CSSParser.h:
1298
1299 2009-02-12  David Hyatt  <hyatt@apple.com>
1300
1301         Rename getOverflowClipRect and getClipRect to overflowClipRect and clipRect.  Move them to RenderBox, since these methods
1302         only apply to boxes.  Devirtualize clipRect, since it was not subclassed.  Move controlClip stuff to RenderBox also.
1303
1304         Reviewed by Simon Fraser
1305
1306         * editing/Editor.cpp:
1307         (WebCore::Editor::insideVisibleArea):
1308         * rendering/RenderBox.cpp:
1309         (WebCore::RenderBox::overflowClipRect):
1310         (WebCore::RenderBox::clipRect):
1311         * rendering/RenderBox.h:
1312         (WebCore::RenderBox::hasControlClip):
1313         (WebCore::RenderBox::controlClipRect):
1314         * rendering/RenderForeignObject.cpp:
1315         (WebCore::RenderForeignObject::paint):
1316         * rendering/RenderLayer.cpp:
1317         (WebCore::RenderLayer::calculateClipRects):
1318         (WebCore::RenderLayer::calculateRects):
1319         * rendering/RenderLayerBacking.cpp:
1320         (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
1321         * rendering/RenderObject.h:
1322         (WebCore::RenderObject::hasClip):
1323         (WebCore::RenderObject::hasOverflowClip):
1324         * rendering/RenderTable.cpp:
1325         (WebCore::RenderTable::overflowClipRect):
1326         * rendering/RenderTable.h:
1327
1328 2009-02-12  Simon Fraser  <simon.fraser@apple.com>
1329
1330         Fix build with ACCELERATED_COMPOSITING turned on (simple copy/paste error)
1331
1332         * platform/graphics/mac/GraphicsLayerCA.mm:
1333         (WebCore::GraphicsLayerCA::setBasicAnimation):
1334
1335 2009-02-12  Julien Chaffraix  <jchaffraix@webkit.org>
1336
1337         Not reviewed.
1338
1339         Release build fix when VIDEO is disabled (it should also
1340         help the builds with WORKERS or XSLT disabled).
1341
1342         * bindings/js/JSDOMWindowBase.cpp:
1343         (jsDOMWindowBaseAudio): Added an UNUSED_PARAM for exec and slot when
1344         VIDEO is disabled.
1345         (jsDOMWindowBaseWorker): Ditto for WORKERS.
1346         (jsDOMWindowBaseXSLTProcessor): Ditto for XSLT.
1347
1348 2009-02-12  Eric Carlson  <eric.carlson@apple.com>
1349
1350         Reviewed by Simon Fraser.
1351
1352         https://bugs.webkit.org/show_bug.cgi?id=23923
1353         Implement mediaPlayerVolumeChanged so a media engine can report autonomous volume changes.
1354         Supporting this requires that we know when we are processing a media engine callback so
1355         we don't turn around and tell the media player to change the volume when it is reporting
1356         a volume change.
1357         
1358         * html/HTMLMediaElement.cpp:
1359         (WebCore::HTMLMediaElement::HTMLMediaElement): initialize m_processingMediaPlayerCallback
1360         (WebCore::HTMLMediaElement::mediaPlayerNetworkStateChanged): call begin/endProcessingMediaPlayerCallback
1361         (WebCore::HTMLMediaElement::setNetworkState): logic split out of mediaPlayerNetworkStateChanged 
1362         to make it easier to maintain m_processingMediaPlayerCallback.
1363         (WebCore::HTMLMediaElement::mediaPlayerReadyStateChanged): call begin/endProcessingMediaPlayerCallback
1364         (WebCore::HTMLMediaElement::mediaPlayerTimeChanged): Ditto.
1365         (WebCore::HTMLMediaElement::mediaPlayerRepaint): Ditto.
1366         (WebCore::HTMLMediaElement::mediaPlayerVolumeChanged): New
1367         (WebCore::HTMLMediaElement::updateVolume): Don't change media engine volume if we are processing
1368         a callback from the engine.
1369         * html/HTMLMediaElement.h:
1370         (WebCore::HTMLMediaElement::processingMediaPlayerCallback): New, return true if (m_processingMediaPlayerCallback>0)
1371         (WebCore::HTMLMediaElement::beginProcessingMediaPlayerCallback): New, increment m_processingMediaPlayerCallback
1372         (WebCore::HTMLMediaElement::endProcessingMediaPlayerCallback): New, decrement m_processingMediaPlayerCallback
1373
1374 2009-02-12  Eric Carlson  <eric.carlson@apple.com>
1375
1376         Reviewed by Simon Fraser.
1377
1378         Support MPEG content on Mac and Windows.
1379         <rdar://problem/5917509>
1380         https://bugs.webkit.org/show_bug.cgi?id=23495
1381
1382         Test: media/audio-mpeg-supported.html
1383
1384         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
1385         (WebCore::MediaPlayerPrivate::disableUnsupportedTracks):
1386
1387         * platform/graphics/win/QTMovieWin.cpp:
1388         (QTMovieWin::disableUnsupportedTracks):
1389
1390         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.h: fix typo added in r40925 
1391
1392 2009-02-12  David Hyatt  <hyatt@apple.com>
1393
1394         Reviewed by Sam Weinig
1395
1396         Move containsFloats, hasOverhangingFloats, shrinkToAvoidFloats and avoidsFloats down to
1397         RenderBox, since these methods only apply to boxes.
1398
1399         * rendering/RenderBlock.cpp:
1400         (WebCore::RenderBlock::collapseMargins):
1401         (WebCore::RenderBlock::clearFloatsIfNeeded):
1402         (WebCore::RenderBlock::layoutBlockChildren):
1403         (WebCore::RenderBlock::clearFloats):
1404         (WebCore::RenderBlock::markAllDescendantsWithFloatsForLayout):
1405         (WebCore::RenderBlock::calcBlockPrefWidths):
1406         * rendering/RenderBlock.h:
1407         (WebCore::RenderBlock::containsFloats):
1408         (WebCore::RenderBlock::hasOverhangingFloats):
1409         * rendering/RenderBox.cpp:
1410         (WebCore::RenderBox::shrinkToAvoidFloats):
1411         (WebCore::RenderBox::avoidsFloats):
1412         * rendering/RenderBox.h:
1413         * rendering/RenderObject.cpp:
1414         * rendering/RenderObject.h:
1415         (WebCore::RenderObject::isFloatingOrPositioned):
1416         * rendering/RenderView.h:
1417
1418 2009-02-12  Chris Marrin  <cmarrin@apple.com>        
1419
1420         Reviewed by Dave Hyatt
1421         
1422         https://bugs.webkit.org/show_bug.cgi?id=23908
1423         
1424         Added parsing of 3d transform functions and properties
1425         (perspective, perspective-origin, transform-style-3d, 
1426         and backface-visibility).   
1427         
1428         Test: transforms/3d/cssmatrix-3d-interface.xhtml
1429         
1430         * css/CSSComputedStyleDeclaration.cpp:
1431         (WebCore::):
1432         (WebCore::computedTransform):
1433         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
1434         * css/CSSMutableStyleDeclaration.cpp:
1435         (WebCore::CSSMutableStyleDeclaration::getPropertyValue):
1436         * css/CSSParser.cpp:
1437         (WebCore::CSSParser::parseValue):
1438         (WebCore::CSSParser::parseFillProperty):
1439         (WebCore::CSSParser::parseTransformOriginShorthand):
1440         (WebCore::TransformOperationInfo::TransformOperationInfo):
1441         (WebCore::CSSParser::parseTransform):
1442         (WebCore::CSSParser::parseTransformOrigin):
1443         (WebCore::CSSParser::parsePerspectiveOrigin):
1444         * css/CSSParser.h:
1445         * css/CSSPrimitiveValue.h:
1446         (WebCore::CSSPrimitiveValue::isUnitTypeLength):
1447         * css/CSSPropertyNames.in:
1448         * css/CSSStyleSelector.cpp:
1449         (WebCore::CSSStyleSelector::adjustRenderStyle):
1450         (WebCore::convertToLength):
1451         (WebCore::CSSStyleSelector::applyProperty):
1452         (WebCore::CSSStyleSelector::mapFillSize):
1453         (WebCore::CSSStyleSelector::mapFillXPosition):
1454         (WebCore::CSSStyleSelector::mapFillYPosition):
1455         (WebCore::getTransformOperationType):
1456         (WebCore::CSSStyleSelector::createTransformOperations):
1457         * css/CSSValueKeywords.in:
1458         * css/WebKitCSSTransformValue.cpp:
1459         (WebCore::WebKitCSSTransformValue::cssText):
1460         * css/WebKitCSSTransformValue.h:
1461         (WebCore::WebKitCSSTransformValue::):
1462         * css/WebKitCSSTransformValue.idl:
1463         * platform/graphics/transforms/Matrix3DTransformOperation.cpp:
1464         * platform/graphics/transforms/Matrix3DTransformOperation.h:
1465         * platform/graphics/transforms/PerspectiveTransformOperation.cpp:
1466         * platform/graphics/transforms/PerspectiveTransformOperation.h:
1467         * platform/graphics/transforms/RotateTransformOperation.cpp:
1468         (WebCore::RotateTransformOperation::blend):
1469         * platform/graphics/transforms/RotateTransformOperation.h:
1470         (WebCore::RotateTransformOperation::RotateTransformOperation):
1471         * platform/graphics/transforms/ScaleTransformOperation.h:
1472         (WebCore::ScaleTransformOperation::ScaleTransformOperation):
1473         * platform/graphics/transforms/TransformOperation.h:
1474         (WebCore::TransformOperation::is3DOperation):
1475         * platform/graphics/transforms/TransformOperations.h:
1476         (WebCore::TransformOperations::has3DOperation):
1477         * platform/graphics/transforms/TranslateTransformOperation.h:
1478         (WebCore::TranslateTransformOperation::TranslateTransformOperation):
1479         
1480 2009-02-12  Kevin Ollivier  <kevino@theolliviers.com>
1481
1482         wx build fix.
1483
1484         * webcore-base.bkl:
1485
1486 2009-02-12  Brady Eidson  <beidson@apple.com>
1487
1488         Reviewed by Darin Adler
1489
1490         Fix potential ref-count or null-deref problems with C++ objects as Obj-C members.
1491
1492         * platform/mac/SharedBufferMac.mm: Change to use RefPtr<> instead of ref()/deref().
1493         (-[WebCoreSharedBufferData dealloc]):
1494         (-[WebCoreSharedBufferData finalize]):
1495         (-[WebCoreSharedBufferData initWithSharedBuffer:]):
1496
1497 2009-02-12  David Hyatt  <hyatt@apple.com>
1498
1499         Remove calcWidth from RenderObject.  Nobody ever called it on RenderObjects.
1500
1501         Reviewed by Sam Weinig
1502
1503         * rendering/RenderObject.h:
1504
1505 2009-02-12  David Hyatt  <hyatt@apple.com>
1506
1507         Reviewed by Mark Rowe
1508
1509         Fix for regression where form controls would paint yellow highlights.  The containsComposition check needs to
1510         null check node() now.
1511
1512         * rendering/InlineTextBox.cpp:
1513         (WebCore::InlineTextBox::paint):
1514
1515 2009-02-12  Simon Fraser  <simon.fraser@apple.com>
1516
1517         Build fix
1518
1519         Change Animation::setDirection() to take the new enum value, and fix
1520         the single caller.
1521
1522         Fix build error in MediaPlayerPrivateQTKit.h.
1523         
1524         * css/CSSStyleSelector.cpp:
1525         (WebCore::CSSStyleSelector::mapAnimationDirection):
1526         * platform/animation/Animation.h:
1527         (WebCore::Animation::setDirection):
1528         * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
1529
1530 2009-02-12  David Hyatt  <hyatt@apple.com>
1531
1532         Reviewed by Simon Fraser
1533
1534         Remove the overrideSize methods from RenderObject.  Devirtualize all of the accessors on RenderBox.
1535
1536         * rendering/RenderBox.h:
1537         * rendering/RenderObject.h:
1538
1539 2009-02-12  Eric Carlson  <eric.carlson@apple.com>
1540
1541         Darin Adler, Antti Koivisto, Holger Hans Peter Freyther
1542         
1543         Bug 23797: A platform should be able to use more than one media engine for <video> and <audio>
1544         https://bugs.webkit.org/show_bug.cgi?id=23797
1545
1546         * WebCore.xcodeproj/project.pbxproj: add MediaPlayerPrivate.h
1547
1548         * html/HTMLMediaElement.cpp:
1549         (WebCore::HTMLMediaElement::load): selectMediaURL now also returns a MIME type, pass it to
1550         MediaPlayer::load so it can choose the right media engine
1551         (WebCore::HTMLMediaElement::selectMediaURL): renamed from pickMedia. use MIMETypeRegistry
1552         functions to strip params from the url and extract the codecs parameter. call 
1553         MediaPlayer::supportsType to see if we can open the file since only a media engine can
1554         answer questions about supported type+codecs.
1555         * html/HTMLMediaElement.h:
1556
1557         * platform/MIMETypeRegistry.cpp:
1558         (WebCore::MIMETypeRegistry::getParameterFromMIMEType): New, find and return a MIME type parameter
1559         (WebCore::MIMETypeRegistry::stripParametersFromMIMEType): New, strip all parameters from a MIME type
1560         * platform/MIMETypeRegistry.h:
1561
1562         * platform/graphics/MediaPlayer.cpp:
1563         (WebCore::NullMediaPlayerPrivate::NullMediaPlayerPrivate):
1564         (WebCore::NullMediaPlayerPrivate::load):
1565         (WebCore::NullMediaPlayerPrivate::cancelLoad):
1566         (WebCore::NullMediaPlayerPrivate::play):
1567         (WebCore::NullMediaPlayerPrivate::pause):
1568         (WebCore::NullMediaPlayerPrivate::naturalSize):
1569         (WebCore::NullMediaPlayerPrivate::hasVideo):
1570         (WebCore::NullMediaPlayerPrivate::setVisible):
1571         (WebCore::NullMediaPlayerPrivate::duration):
1572         (WebCore::NullMediaPlayerPrivate::currentTime):
1573         (WebCore::NullMediaPlayerPrivate::seek):
1574         (WebCore::NullMediaPlayerPrivate::seeking):
1575         (WebCore::NullMediaPlayerPrivate::setEndTime):
1576         (WebCore::NullMediaPlayerPrivate::setRate):
1577         (WebCore::NullMediaPlayerPrivate::paused):
1578         (WebCore::NullMediaPlayerPrivate::setVolume):
1579         (WebCore::NullMediaPlayerPrivate::networkState):
1580         (WebCore::NullMediaPlayerPrivate::readyState):
1581         (WebCore::NullMediaPlayerPrivate::maxTimeSeekable):
1582         (WebCore::NullMediaPlayerPrivate::maxTimeBuffered):
1583         (WebCore::NullMediaPlayerPrivate::dataRate):
1584         (WebCore::NullMediaPlayerPrivate::totalBytesKnown):
1585         (WebCore::NullMediaPlayerPrivate::totalBytes):
1586         (WebCore::NullMediaPlayerPrivate::bytesLoaded):
1587         (WebCore::NullMediaPlayerPrivate::setRect):
1588         (WebCore::NullMediaPlayerPrivate::paint):
1589         (WebCore::createNullMediaPlayer):
1590         Do nothing media player so MediaPlayer doesn't have to NULL check before calling current engine.
1591
1592         (WebCore::MediaPlayerFactory::MediaPlayerFactory): New, factory constructor.
1593         (WebCore::installedMediaEngines): New, returns vector of all installed engines.
1594         (WebCore::addMediaEngine): New, add a media engine to the cache.
1595         (WebCore::chooseBestEngineForTypeAndCodecs): New, return an engine that might support a MIME type.
1596         (WebCore::MediaPlayer::MediaPlayer): create NULL media player so we have a default. Initialize m_currentMediaEngine.
1597         (WebCore::MediaPlayer::~MediaPlayer): don't need to delete m_private, it is now an OwnPtr.
1598         (WebCore::MediaPlayer::load): Take MIME type as well as url, since we need it to find the right
1599           media engine. If no MIME type is provided, try to devine one from the url. Choose a media engine
1600           based on the MIME type and codecs parameter.
1601         (WebCore::MediaPlayer::currentTime): Remove excess white space.
1602         (WebCore::MediaPlayer::supportsType): Take codecs param as well as MIME type. Return enum so we can
1603         indicate "maybe" condition.
1604         (WebCore::MediaPlayer::getSupportedTypes): Build up list of MIME types by consulting all engines.
1605         (WebCore::MediaPlayer::isAvailable): return true if any media engine is installed.
1606
1607         * platform/graphics/MediaPlayer.h:
1608         (WebCore::MediaPlayer::):
1609         (WebCore::MediaPlayer::frameView): accessor function.
1610
1611         * platform/graphics/MediaPlayerPrivate.h: New, declares abstract interface for media engines.
1612         (WebCore::MediaPlayerPrivateInterface::~MediaPlayerPrivateInterface):
1613         (WebCore::MediaPlayerPrivateInterface::totalBytesKnown):
1614
1615         * platform/graphics/chromium/MediaPlayerPrivateChromium.h: Add support for engine factory 
1616
1617         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
1618         (WebCore::MediaPlayerPrivate::create): New, media engine factory function
1619         (WebCore::MediaPlayerPrivate::registerMediaEngine): Register engine with MediaPlayer factory
1620         (WebCore::MediaPlayerPrivate::load): URL is a const String.
1621         (WebCore::MediaPlayerPrivate::duration): Declare const.
1622         (WebCore::MediaPlayerPrivate::naturalSize): Ditto.
1623         (WebCore::MediaPlayerPrivate::hasVideo): Ditto.
1624         (WebCore::MediaPlayerPrivate::networkState): Ditto.
1625         (WebCore::MediaPlayerPrivate::readyState): Ditto.
1626         (WebCore::MediaPlayerPrivate::maxTimeBuffered): Ditto.
1627         (WebCore::MediaPlayerPrivate::maxTimeSeekable): Ditto.
1628         (WebCore::MediaPlayerPrivate::maxTimeLoaded): Ditto.
1629         (WebCore::MediaPlayerPrivate::bytesLoaded): Ditto.
1630         (WebCore::MediaPlayerPrivate::totalBytesKnown): Ditto.
1631         (WebCore::MediaPlayerPrivate::totalBytes): Ditto.
1632         (WebCore::MediaPlayerPrivate::supportsType): Return MediaPlayer::SupportsType enum instead of bool.
1633         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.h:
1634         (WebCore::MediaPlayerPrivate::isAvailable):
1635
1636         * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
1637         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
1638         (WebCore::MediaPlayerPrivateQTKit::create): New, media engine factory function
1639         (WebCore::MediaPlayerPrivateQTKit::registerMediaEngine): Register engine with MediaPlayer factory
1640         (WebCore::MediaPlayerPrivate::createQTMovieView): don't access MediaPlayer->m_frameView directly,
1641         use accessor function.
1642         (WebCore::MediaPlayerPrivate::setUpVideoRendering): Ditto.
1643         (WebCore::MediaPlayerPrivate::paint): Ditto.
1644         (WebCore::mimeTypeCache): New.
1645         (WebCore::MediaPlayerPrivate::getSupportedTypes): New, media engine factory function.
1646         (WebCore::MediaPlayerPrivate::supportsType): return MediaPlayer::SupportsType enum instead of bool
1647         (-[WebCoreMovieObserver initWithCallback:]): fix formatting
1648
1649         * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
1650         (WebCore::MediaPlayerPrivate::create):
1651         (WebCore::MediaPlayerPrivate::registerMediaEngine):
1652         (WebCore::MediaPlayerPrivate::supportsType):
1653         (WebCore::MediaPlayerPrivate::load): URL is a const String.
1654         * platform/graphics/qt/MediaPlayerPrivatePhonon.h:
1655         (WebCore::MediaPlayerPrivate::isAvailable):
1656
1657         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
1658         (WebCore::MediaPlayerPrivate::create): New, media engine factory function
1659         (WebCore::MediaPlayerPrivate::registerMediaEngine): New, register engine with MediaPlayer factory
1660         (WebCore::MediaPlayerPrivate::load): URL is a const String.
1661         (WebCore::MediaPlayerPrivate::paint): don't access MediaPlayer->m_frameView directly,
1662         use accessor function.
1663         (WebCore::mimeTypeCache): New.
1664         (WebCore::MediaPlayerPrivateQTWin::getSupportedTypes): New, media engine factory function.
1665         (WebCore::MediaPlayerPrivateQTWin::supportsType): return MediaPlayer::SupportsType enum instead of bool
1666         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.h:
1667
1668 2009-02-12  Julien Chaffraix  <jchaffraix@webkit.org>
1669
1670         Reviewed by Darin Adler.
1671
1672         Test: fast/dom/prefixed-image-tag.xhtml
1673
1674         Bug 23915: Remove setPrefix work-around in Document::createElement(QualifiedName, bool)
1675
1676         Instead we now directly propage the QualifiedName inside the generated Factory.
1677
1678         Test: fast/dom/prefixed-image-tag.xhtml
1679
1680         * dom/Document.cpp:
1681         (WebCore::Document::createElement): Removed the setPrefix work-around
1682         and replaced it with an ASSERT to catch mistakes inside the Factory code.
1683         Remove the unneeded ExceptionCode argument.
1684
1685         (WebCore::Document::createElementNS): Removed ExceptionCode argument.
1686         * dom/Document.h: Updated the signature.
1687         * dom/XMLTokenizerLibxml2.cpp:
1688         (WebCore::XMLTokenizer::startElementNs): Removed ExceptionCode argument.
1689         * dom/XMLTokenizerQt.cpp: Ditto.
1690         (WebCore::XMLTokenizer::parseStartElement): Ditto.
1691
1692         * dom/make_names.pl: Implemented the QualifiedName propogation logic
1693         in the Factory.
1694
1695 2009-02-12  Simon Fraser  <simon.fraser@apple.com>
1696
1697         Reviewed by Dave Hyatt
1698
1699         https://bugs.webkit.org/show_bug.cgi?id=23188
1700         
1701         Define enum values for Animation::direction(), and one for
1702         IterationCountInfinite to make the code more self-documenting.
1703         
1704         Order the member vars of Animation to optimize packing.
1705         
1706         * css/CSSComputedStyleDeclaration.cpp:
1707         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
1708         * platform/animation/Animation.cpp:
1709         (WebCore::Animation::Animation):
1710         (WebCore::Animation::operator=):
1711         (WebCore::Animation::animationsMatch):
1712         * platform/animation/Animation.h:
1713         (WebCore::Animation::):
1714         (WebCore::Animation::direction):
1715         (WebCore::Animation::initialAnimationDirection):
1716         * platform/graphics/mac/GraphicsLayerCA.mm:
1717         (WebCore::GraphicsLayerCA::setBasicAnimation):
1718         (WebCore::GraphicsLayerCA::setKeyframeAnimation):
1719
1720 2009-02-12  Christian Dywan  <christian@twotoasts.de>
1721
1722         Reviewed by Holger Freyther.
1723
1724         * platform/network/soup/ResourceHandleSoup.cpp:
1725         (WebCore::ResourceHandle::startHttp): Don't use O_CLOEXEC for now.
1726
1727 2009-02-12  Julien Chaffraix  <jchaffraix@webkit.org>
1728
1729         Reviewed by Darin Adler.
1730
1731         Bug 23826: Potential bug with before/after rule while moving element from one document to another
1732
1733         Moved the document before/after toggle from the constructor to insertedIntoDocument.
1734
1735         Test: fast/css-generated-content/beforeAfter-interdocument.html
1736
1737         * html/HTMLQuoteElement.cpp:
1738         (WebCore::HTMLQuoteElement::HTMLQuoteElement):
1739         (WebCore::HTMLQuoteElement::insertedIntoDocument):
1740         * html/HTMLQuoteElement.h:
1741
1742 2009-02-12  David Hyatt  <hyatt@apple.com>
1743
1744         Reviewed by Simon Fraser
1745
1746         Fix for https://bugs.webkit.org/show_bug.cgi?id=23912
1747
1748         I have no idea why this broke.  As far as I can tell the old code never should have worked in
1749         the first place.  Add code to handleWheelEvent that will find an enclosing renderer for a node
1750         in order to attempt a wheel scroll.
1751
1752         * page/EventHandler.cpp:
1753         (WebCore::EventHandler::handleWheelEvent):
1754
1755 2009-02-12  David Hyatt  <hyatt@apple.com>
1756
1757         Move the functions that paint borders, box shadows and border images into RenderBoxModelObject.  drawBorder and drawBorderArc, because they are used
1758         for outlines as well as borders, need to stay in RenderObject.  Rename them to drawLineForBoxSide and drawArcForBoxSide in order to reflect their
1759         more generic use.  Rename the BorderSide struct to BoxSide, since the concept of "side" is just a rectangle concept and not a border concept.
1760
1761         Reviewed by Simon Fraser
1762
1763         * rendering/InlineFlowBox.cpp:
1764         (WebCore::InlineFlowBox::paintFillLayer):
1765         (WebCore::InlineFlowBox::paintBoxShadow):
1766         (WebCore::InlineFlowBox::paintBoxDecorations):
1767         (WebCore::InlineFlowBox::paintMask):
1768         * rendering/RenderBlock.cpp:
1769         (WebCore::RenderBlock::paintColumns):
1770         * rendering/RenderBoxModelObject.cpp:
1771         (WebCore::RenderBoxModelObject::paintNinePieceImage):
1772         (WebCore::RenderBoxModelObject::paintBorder):
1773         (WebCore::RenderBoxModelObject::paintBoxShadow):
1774         * rendering/RenderBoxModelObject.h:
1775         * rendering/RenderFieldset.cpp:
1776         (WebCore::RenderFieldset::paintBorderMinusLegend):
1777         * rendering/RenderInline.cpp:
1778         (WebCore::RenderInline::paintOutlineForLine):
1779         * rendering/RenderObject.cpp:
1780         (WebCore::RenderObject::drawLineForBoxSide):
1781         (WebCore::RenderObject::drawArcForBoxSide):
1782         (WebCore::RenderObject::paintOutline):
1783         * rendering/RenderObject.h:
1784         (WebCore::):
1785         (WebCore::RenderObject::hasBoxDecorations):
1786         * rendering/RenderTableCell.cpp:
1787         (WebCore::CollapsedBorders::addBorder):
1788         (WebCore::RenderTableCell::paintCollapsedBorder):
1789
1790 2009-02-12  Eric Carlson  <eric.carlson@apple.com>
1791
1792         Reviewed by Simon Fraser
1793
1794         Bug 18322: video element should have ui when scripting is disabled
1795         https://bugs.webkit.org/show_bug.cgi?id=18322
1796
1797         * html/HTMLMediaElement.cpp:
1798         (WebCore::HTMLMediaElement::controls): always return 'true' when JavaScript is disabled.
1799         * manual-tests/media-controls-when-javascript-disabled.html: Added.
1800
1801 2009-02-12  Dimitri Glazkov  <dglazkov@chromium.org>
1802
1803         Reviewed by Eric Seidel.
1804
1805         https://bugs.webkit.org/show_bug.cgi?id=23906
1806         Add custom V8 bindings for HTMLPlugInElement.
1807
1808         * bindings/v8/custom/V8HTMLPlugInElementCustom.cpp: Added.
1809         (WebCore::NAMED_PROPERTY_GETTER):
1810         (WebCore::NAMED_PROPERTY_SETTER):
1811         (WebCore::CALLBACK_FUNC_DECL):
1812         (WebCore::INDEXED_PROPERTY_GETTER):
1813         (WebCore::INDEXED_PROPERTY_SETTER):
1814
1815 2009-02-12  Gustavo Noronha Silva  <gns@gnome.org>
1816
1817         Reviewed by Mark Rowe.
1818
1819         [GTK] Soup backend must handle upload of multiple files
1820         https://bugs.webkit.org/show_bug.cgi?id=18343
1821
1822         * platform/network/soup/ResourceHandleSoup.cpp:
1823         (WebCore::):
1824         (WebCore::freeFileMapping):
1825         (WebCore::ResourceHandle::startHttp): Support multipart request bodies
1826         mmap'ing files to be uploaded.
1827
1828 2009-02-12  Adam Treat  <adam.treat@torchmobile.com>
1829
1830         Fix the Qt build following r40871 which changed RenderObject::element()
1831         into RenderObject::node().
1832
1833         * platform/qt/RenderThemeQt.cpp:
1834         (WebCore::RenderThemeQt::getMediaElementFromRenderObject):
1835         (WebCore::RenderThemeQt::getMediaControlForegroundColor):
1836
1837 2009-02-12  Alexey Proskuryakov  <ap@webkit.org>
1838
1839         Build fix.
1840
1841         * platform/graphics/transforms/RotateTransformOperation.cpp: Include <algorithm>.
1842
1843 2009-02-12  Jian Li  <jianli@chromium.org>
1844
1845         Reviewed by Alexey Proskuryakov.
1846
1847         Change worker code to use different proxy class pointers.
1848         https://bugs.webkit.org/show_bug.cgi?id=23859
1849
1850         This is a step towards using separate proxies in multi-process implementation.
1851
1852         * bindings/js/WorkerScriptController.cpp:
1853         (WebCore::WorkerScriptController::evaluate):
1854         * dom/Worker.cpp:
1855         (WebCore::Worker::Worker):
1856         (WebCore::Worker::~Worker):
1857         (WebCore::Worker::postMessage):
1858         (WebCore::Worker::terminate):
1859         (WebCore::Worker::hasPendingActivity):
1860         (WebCore::Worker::notifyFinished):
1861         (WebCore::Worker::dispatchMessage):
1862         * dom/Worker.h:
1863         * dom/WorkerContext.cpp:
1864         (WebCore::WorkerContext::~WorkerContext):
1865         (WebCore::WorkerContext::reportException):
1866         (WebCore::WorkerContext::addMessage):
1867         (WebCore::WorkerContext::postMessage):
1868         (WebCore::WorkerContext::dispatchMessage):
1869         * dom/WorkerContext.h:
1870         * dom/WorkerContextProxy.h:
1871         * dom/WorkerMessagingProxy.cpp:
1872         (WebCore::MessageWorkerContextTask::performTask):
1873         (WebCore::MessageWorkerTask::performTask):
1874         (WebCore::WorkerContextProxy::create):
1875         (WebCore::WorkerMessagingProxy::WorkerMessagingProxy):
1876         (WebCore::WorkerMessagingProxy::~WorkerMessagingProxy):
1877         (WebCore::WorkerMessagingProxy::startWorkerContext):
1878         (WebCore::postConsoleMessageTask):
1879         (WebCore::WorkerMessagingProxy::postConsoleMessageToWorkerObject):
1880         (WebCore::WorkerMessagingProxy::workerThreadCreated):
1881         * dom/WorkerMessagingProxy.h:
1882         * dom/WorkerObjectProxy.h:
1883         * dom/WorkerThread.cpp:
1884         (WebCore::WorkerThread::create):
1885         (WebCore::WorkerThread::WorkerThread):
1886         (WebCore::WorkerThread::workerThread):
1887         * dom/WorkerThread.h:
1888         (WebCore::WorkerThread::workerObjectProxy):
1889         * loader/WorkerThreadableLoader.cpp:
1890         (WebCore::WorkerThreadableLoader::WorkerThreadableLoader):
1891
1892 2009-02-12  David Levin  <levin@chromium.org>
1893
1894         Reviewed by Alexey Proskuryakov.
1895
1896         Bug 23688: ThreadableLoader needs a sync implementation for Workers.
1897         <https://bugs.webkit.org/show_bug.cgi?id=23688>
1898
1899         Add ResourceError to ThreadableLoaderClient.
1900
1901         No observable change in behavior, so no test.
1902
1903         * loader/DocumentThreadableLoader.cpp:
1904         (WebCore::DocumentThreadableLoader::create):
1905         (WebCore::DocumentThreadableLoader::willSendRequest):
1906         (WebCore::DocumentThreadableLoader::didFail):
1907         * loader/ThreadableLoaderClient.h:
1908         (WebCore::ThreadableLoaderClient::didFail):
1909         (WebCore::ThreadableLoaderClient::didFailWillSendRequestCheck):
1910         * loader/ThreadableLoaderClientWrapper.h:
1911         (WebCore::ThreadableLoaderClientWrapper::didFail):
1912         * loader/WorkerThreadableLoader.cpp:
1913         (WebCore::WorkerThreadableLoader::MainThreadBridge::mainThreadCreateLoader):
1914         (WebCore::workerContextDidFail):
1915         (WebCore::WorkerThreadableLoader::MainThreadBridge::didFail):
1916         * loader/WorkerThreadableLoader.h:
1917         * xml/XMLHttpRequest.cpp:
1918         (WebCore::XMLHttpRequest::didFail):
1919         (WebCore::XMLHttpRequest::didFailWillSendRequestCheck):
1920         * xml/XMLHttpRequest.h:
1921
1922 2009-02-11  Simon Fraser  <simon.fraser@apple.com>
1923
1924         Reviewed by Dave Hyatt
1925
1926         Fix the build on Leopard with ACCELERATED_COMPOSITING turned on.
1927
1928         * WebCore.xcodeproj/project.pbxproj:
1929         FloatPoint3D needs to be a private header, since it's included by GraphicsLayer.h
1930         * platform/graphics/mac/GraphicsLayerCA.mm:
1931         (WebCore::getTransformFunctionValue):
1932         (WebCore::caValueFunctionSupported):
1933         (WebCore::GraphicsLayerCA::setAnchorPoint):
1934         (WebCore::GraphicsLayerCA::setPreserves3D):
1935         (WebCore::GraphicsLayerCA::setContentsToImage):
1936         (WebCore::GraphicsLayerCA::setBasicAnimation):
1937         (WebCore::GraphicsLayerCA::setKeyframeAnimation):
1938         * rendering/RenderLayer.h:
1939         (WebCore::RenderLayer::isRootLayer):
1940         Fix isRootLayer to return true for the renderView's layer, not the root
1941         renderer's layer.
1942
1943 2009-02-11  Adele Peterson  <adele@apple.com>
1944
1945         Reviewed by Oliver Hunt.
1946
1947         Fix for https://bugs.webkit.org/show_bug.cgi?id=23910
1948         <rdar://problem/6160546> REGRESSION: In Full page mode, movie controller hides when I drag the knob if movie is playing
1949
1950         * rendering/RenderMedia.cpp: (WebCore::RenderMedia::forwardEvent):
1951         When we get a mouseOut event, consider the mouse as still within the RenderMedia if the relatedTarget is a descendant.
1952
1953 2009-02-11  David Hyatt  <hyatt@apple.com>
1954
1955         Remove all of the inline box wrapper functions from RenderObject, since they only apply to RenderBox.  Devirtualize the functions.
1956         Patch all of the call sites to convert to a RenderBox.
1957
1958         Reviewed by Simon Fraser
1959
1960         * dom/Position.cpp:
1961         (WebCore::nextRenderedEditable):
1962         (WebCore::previousRenderedEditable):
1963         (WebCore::Position::getInlineBoxAndOffset):
1964         * rendering/InlineBox.cpp:
1965         (WebCore::InlineBox::deleteLine):
1966         (WebCore::InlineBox::extractLine):
1967         (WebCore::InlineBox::attachLine):
1968         * rendering/RenderLineBoxList.cpp:
1969         (WebCore::RenderLineBoxList::dirtyLinesFromChangedChild):
1970         * rendering/RenderObject.cpp:
1971         * rendering/RenderObject.h:
1972         * rendering/RenderObjectChildList.cpp:
1973         (WebCore::RenderObjectChildList::removeChildNode):
1974         * rendering/RenderTextControl.cpp:
1975         (WebCore::RenderTextControl::textWithHardLineBreaks):
1976
1977 2009-02-11  David Hyatt  <hyatt@apple.com>
1978
1979         Eliminate createInlineBox and dirtyLineBoxes from RenderObject.  These functions have been devirtualized.
1980         The single call site now calls a helper function that just bit checks and casts before calling the correct
1981         type.  RenderBlock's dirtyLineBoxes function was dead code (caused by the RenderFlow deletion), so it has
1982         just been removed.
1983
1984         Reviewed by Eric Seidel
1985
1986         * rendering/RenderBR.cpp:
1987         * rendering/RenderBR.h:
1988         * rendering/RenderBlock.cpp:
1989         (WebCore::RenderBlock::createRootInlineBox):
1990         * rendering/RenderBlock.h:
1991         * rendering/RenderBox.cpp:
1992         (WebCore::RenderBox::createInlineBox):
1993         * rendering/RenderBox.h:
1994         * rendering/RenderCounter.cpp:
1995         * rendering/RenderCounter.h:
1996         * rendering/RenderInline.cpp:
1997         (WebCore::RenderInline::createInlineFlowBox):
1998         * rendering/RenderInline.h:
1999         * rendering/RenderObject.cpp:
2000         * rendering/RenderObject.h:
2001         * rendering/RenderSVGInlineText.cpp:
2002         (WebCore::RenderSVGInlineText::createTextBox):
2003         * rendering/RenderSVGInlineText.h:
2004         (WebCore::RenderSVGInlineText::isSVGText):
2005         * rendering/RenderText.cpp:
2006         (WebCore::RenderText::createTextBox):
2007         (WebCore::RenderText::createInlineTextBox):
2008         * rendering/RenderText.h:
2009         * rendering/bidi.cpp:
2010         (WebCore::createInlineBoxForRenderer):
2011         (WebCore::RenderBlock::createLineBoxes):
2012         (WebCore::RenderBlock::constructLine):
2013         (WebCore::RenderBlock::layoutInlineChildren):
2014
2015 2009-02-11  Chris Marrin  <cmarrin@apple.com>
2016
2017         Reviewed by Dave Hyatt.
2018
2019         https://bugs.webkit.org/show_bug.cgi?id=23905
2020
2021         Adds support for 3D CSS properties (transform-style-3d, perspective, 
2022         perspective-origin, and backface-visibility) to RenderStyle and friends
2023
2024         * platform/graphics/transforms/TransformOperation.h
2025         * rendering/style/RenderStyle.cpp:
2026         (WebCore::RenderStyle::diff):
2027         (WebCore::RenderStyle::applyTransform):
2028         * rendering/style/RenderStyle.h:
2029         (WebCore::InheritedFlags::transformOriginZ):
2030         (WebCore::InheritedFlags::hasTransformRelatedProperty):
2031         (WebCore::InheritedFlags::transformStyle3D):
2032         (WebCore::InheritedFlags::backfaceVisibility):
2033         (WebCore::InheritedFlags::perspective):
2034         (WebCore::InheritedFlags::perspectiveOriginX):
2035         (WebCore::InheritedFlags::perspectiveOriginY):
2036         (WebCore::InheritedFlags::setTransformOriginZ):
2037         (WebCore::InheritedFlags::setTransformStyle3D):
2038         (WebCore::InheritedFlags::setBackfaceVisibility):
2039         (WebCore::InheritedFlags::setPerspective):
2040         (WebCore::InheritedFlags::setPerspectiveOriginX):
2041         (WebCore::InheritedFlags::setPerspectiveOriginY):
2042         (WebCore::InheritedFlags::initialTransformOriginZ):
2043         (WebCore::InheritedFlags::initialTransformStyle3D):
2044         (WebCore::InheritedFlags::initialBackfaceVisibility):
2045         (WebCore::InheritedFlags::initialPerspective):
2046         (WebCore::InheritedFlags::initialPerspectiveOriginX):
2047         (WebCore::InheritedFlags::initialPerspectiveOriginY):
2048         * rendering/style/RenderStyleConstants.h:
2049         (WebCore::):
2050         * rendering/style/StyleRareNonInheritedData.cpp:
2051         (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
2052         (WebCore::StyleRareNonInheritedData::operator==):
2053         * rendering/style/StyleRareNonInheritedData.h:
2054         * rendering/style/StyleTransformData.cpp:
2055         (WebCore::StyleTransformData::StyleTransformData):
2056         (WebCore::StyleTransformData::operator==):
2057         * rendering/style/StyleTransformData.h:
2058
2059 2009-02-11  Simon Fraser  <simon.fraser@apple.com>
2060
2061         No review.
2062
2063         Fix ACCELERATED_COMPOSITING build.
2064
2065         * rendering/RenderLayerBacking.cpp:
2066         (WebCore::RenderLayerBacking::createGraphicsLayer):
2067         (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
2068         * rendering/RenderLayerCompositor.cpp:
2069         (WebCore::RenderLayerCompositor::updateLayerCompositingState):
2070
2071 2009-02-11  Simon Fraser  <simon.fraser@apple.com>
2072
2073         Reviewed by Dave Hyatt
2074
2075         https://bugs.webkit.org/show_bug.cgi?id=23862
2076         
2077         Add a bit on RenderStyle that gets set when running accelerated
2078         transitions of transform or opacity. These ensure that styles
2079         compare as different during the transition, so that interruption
2080         can be detected reliably.
2081
2082         * page/animation/ImplicitAnimation.cpp:
2083         (WebCore::ImplicitAnimation::animate):
2084         * rendering/style/RenderStyle.h:
2085         (WebCore::InheritedFlags::isRunningAcceleratedAnimation):
2086         (WebCore::InheritedFlags::setIsRunningAcceleratedAnimation):
2087         * rendering/style/StyleRareNonInheritedData.cpp:
2088         (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
2089         (WebCore::StyleRareNonInheritedData::operator==):
2090         * rendering/style/StyleRareNonInheritedData.h:
2091
2092 2009-02-11  David Hyatt  <hyatt@apple.com>
2093
2094         Eliminate the virtual position() function from RenderObject.  Rename the position() overrides
2095         in RenderText and RenderBox to positionLineBox and devirtualize them.
2096         
2097         Patch the one call site to just check for isText() and isBox() and call the methods directly.
2098         
2099         Remove some unnecessary overrides of position() on table sections and rows.
2100     
2101         Reviewed by Simon Fraser
2102
2103         * rendering/RenderBox.cpp:
2104         (WebCore::RenderBox::positionLineBox):
2105         * rendering/RenderBox.h:
2106         * rendering/RenderObject.h:
2107         * rendering/RenderSVGRoot.cpp:
2108         * rendering/RenderSVGRoot.h:
2109         * rendering/RenderTableRow.h:
2110         (WebCore::RenderTableRow::lineHeight):
2111         * rendering/RenderTableSection.h:
2112         (WebCore::RenderTableSection::lineHeight):
2113         * rendering/RenderText.cpp:
2114         (WebCore::RenderText::positionLineBox):
2115         * rendering/RenderText.h:
2116         * rendering/bidi.cpp:
2117         (WebCore::RenderBlock::computeVerticalPositionsForLine):
2118
2119 2009-02-11  Dimitri Glazkov  <dglazkov@chromium.org>
2120
2121         Reviewed by Eric Seidel.
2122
2123         https://bugs.webkit.org/show_bug.cgi?id=23901
2124         Add HTML options/collections V8 custom bindings.
2125
2126         * bindings/v8/custom/V8HTMLCollectionCustom.cpp: Added.
2127         (WebCore::getNamedItems):
2128         (WebCore::getItem):
2129         (WebCore::NAMED_PROPERTY_GETTER):
2130         (WebCore::CALLBACK_FUNC_DECL):
2131         * bindings/v8/custom/V8HTMLFormElementCustom.cpp: Added.
2132         (WebCore::NAMED_PROPERTY_GETTER):
2133         * bindings/v8/custom/V8HTMLInputElementCustom.cpp:
2134         (WebCore::ACCESSOR_GETTER):
2135         (WebCore::ACCESSOR_SETTER):
2136         (WebCore::CALLBACK_FUNC_DECL):
2137         * bindings/v8/custom/V8HTMLOptionsCollectionCustom.cpp:
2138         (WebCore::CALLBACK_FUNC_DECL):
2139         (WebCore::ACCESSOR_SETTER):
2140         * bindings/v8/custom/V8HTMLSelectElementCustom.cpp: Added.
2141         (WebCore::CALLBACK_FUNC_DECL):
2142         (WebCore::removeElement):
2143         * bindings/v8/custom/V8HTMLSelectElementCustom.h: Added.
2144         * bindings/v8/custom/V8NamedNodesCollection.cpp: Added.
2145         (WebCore::V8NamedNodesCollection::item):
2146         (WebCore::V8NamedNodesCollection::itemWithName):
2147         * bindings/v8/custom/V8NamedNodesCollection.h: Added.
2148         (WebCore::V8NamedNodesCollection::V8NamedNodesCollection):
2149         (WebCore::V8NamedNodesCollection::length):
2150
2151 2009-02-11  Dimitri Dupuis-latour  <dupuislatour@apple.com>
2152
2153         Added a preference to disable some Inspector's panels (rdar://6419624, rdar://6419645).
2154         This is controlled via the 'WebKitInspectorHiddenPanels' key; if nothing is specified, all panels are shown.
2155
2156         Reviewed by Timothy Hatcher.
2157
2158         * inspector/InspectorClient.h:
2159         * inspector/InspectorController.cpp:
2160         (WebCore::hiddenPanels):
2161         (WebCore::InspectorController::hiddenPanels):
2162         (WebCore::InspectorController::windowScriptObjectAvailable):
2163         * inspector/InspectorController.h:
2164         * inspector/front-end/inspector.js:
2165         (WebInspector.loaded):
2166         * loader/EmptyClients.h:
2167         (WebCore::EmptyInspectorClient::hiddenPanels):
2168
2169 2009-02-11  David Hyatt  <hyatt@apple.com>
2170
2171         Combine RenderObject::element() and RenderObject::node() into a single function.  
2172         node() now has the "anonymous bit" checking behavior of element() and will
2173         return 0 for anonymous content.  This patch switches all callers of element() 
2174         to node() and patches old callers of node() to deal with situations where they
2175         did not expect node() to be 0.  A bunch of node() calls were calling stuff on 
2176         Document that they clearly didn't intend, so overall this is a nice improvement.
2177     
2178         Reviewed by Sam Weinig
2179
2180         * dom/ContainerNode.cpp:
2181         (WebCore::ContainerNode::getUpperLeftCorner):
2182         * dom/Element.cpp:
2183         (WebCore::Element::offsetParent):
2184         * dom/Position.cpp:
2185         (WebCore::Position::hasRenderedNonAnonymousDescendantsWithHeight):
2186         * editing/ModifySelectionListLevel.cpp:
2187         (WebCore::getStartEndListChildren):
2188         (WebCore::IncreaseSelectionListLevelCommand::doApply):
2189         (WebCore::DecreaseSelectionListLevelCommand::doApply):
2190         * editing/TextIterator.cpp:
2191         (WebCore::TextIterator::advance):
2192         * editing/VisiblePosition.cpp:
2193         (WebCore::VisiblePosition::leftVisuallyDistinctCandidate):
2194         (WebCore::VisiblePosition::rightVisuallyDistinctCandidate):
2195         * editing/visible_units.cpp:
2196         (WebCore::startPositionForLine):
2197         (WebCore::endPositionForLine):
2198         * page/AXObjectCache.cpp:
2199         (WebCore::AXObjectCache::get):
2200         * page/AccessibilityList.cpp:
2201         (WebCore::AccessibilityList::isUnorderedList):
2202         (WebCore::AccessibilityList::isOrderedList):
2203         (WebCore::AccessibilityList::isDefinitionList):
2204         * page/AccessibilityListBox.cpp:
2205         (WebCore::AccessibilityListBox::doAccessibilityHitTest):
2206         * page/AccessibilityRenderObject.cpp:
2207         (WebCore::AccessibilityRenderObject::isPasswordField):
2208         (WebCore::AccessibilityRenderObject::isFileUploadButton):
2209         (WebCore::AccessibilityRenderObject::isInputImage):
2210         (WebCore::AccessibilityRenderObject::isMultiSelect):
2211         (WebCore::AccessibilityRenderObject::isControl):
2212         (WebCore::AccessibilityRenderObject::getAttribute):
2213         (WebCore::AccessibilityRenderObject::anchorElement):
2214         (WebCore::AccessibilityRenderObject::actionElement):
2215         (WebCore::AccessibilityRenderObject::mouseButtonListener):
2216         (WebCore::AccessibilityRenderObject::helpText):
2217         (WebCore::AccessibilityRenderObject::textUnderElement):
2218         (WebCore::AccessibilityRenderObject::hasIntValue):
2219         (WebCore::AccessibilityRenderObject::intValue):
2220         (WebCore::AccessibilityRenderObject::labelElementContainer):
2221         (WebCore::AccessibilityRenderObject::title):
2222         (WebCore::AccessibilityRenderObject::accessibilityDescription):
2223         (WebCore::AccessibilityRenderObject::boundingBoxRect):
2224         (WebCore::AccessibilityRenderObject::checkboxOrRadioRect):
2225         (WebCore::AccessibilityRenderObject::titleUIElement):
2226         (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
2227         (WebCore::AccessibilityRenderObject::text):
2228         (WebCore::AccessibilityRenderObject::ariaSelectedTextDOMRange):
2229         (WebCore::AccessibilityRenderObject::accessKey):
2230         (WebCore::AccessibilityRenderObject::setSelectedTextRange):
2231         (WebCore::AccessibilityRenderObject::url):
2232         (WebCore::AccessibilityRenderObject::isFocused):
2233         (WebCore::AccessibilityRenderObject::setFocused):
2234         (WebCore::AccessibilityRenderObject::setValue):
2235         (WebCore::AccessibilityRenderObject::isEnabled):
2236         (WebCore::AccessibilityRenderObject::visiblePositionRange):
2237         (WebCore::AccessibilityRenderObject::index):
2238         (WebCore::AccessibilityRenderObject::activeDescendant):
2239         (WebCore::AccessibilityRenderObject::handleActiveDescendantChanged):
2240         (WebCore::AccessibilityRenderObject::observableObject):
2241         (WebCore::AccessibilityRenderObject::roleValue):
2242         (WebCore::AccessibilityRenderObject::canSetFocusAttribute):
2243         (WebCore::AccessibilityRenderObject::ariaListboxSelectedChildren):
2244         * page/AccessibilityTable.cpp:
2245         (WebCore::AccessibilityTable::isTableExposableThroughAccessibility):
2246         (WebCore::AccessibilityTable::title):
2247         * page/AccessibilityTableCell.cpp:
2248         (WebCore::AccessibilityTableCell::titleUIElement):
2249         * page/AccessibilityTableColumn.cpp:
2250         (WebCore::AccessibilityTableColumn::headerObjectForSection):
2251         * page/AccessibilityTableRow.cpp:
2252         (WebCore::AccessibilityTableRow::headerObject):
2253         * page/EventHandler.cpp:
2254         (WebCore::EventHandler::dispatchMouseEvent):
2255         (WebCore::EventHandler::canMouseDownStartSelect):
2256         (WebCore::EventHandler::canMouseDragExtendSelect):
2257         (WebCore::EventHandler::shouldDragAutoNode):
2258         * page/Frame.cpp:
2259         (WebCore::Frame::searchForLabelsAboveCell):
2260         (WebCore::Frame::setFocusedNodeIfNeeded):
2261         * page/FrameView.cpp:
2262         (WebCore::FrameView::updateOverflowStatus):
2263         * page/animation/AnimationBase.cpp:
2264         (WebCore::AnimationBase::updateStateMachine):
2265         * page/animation/AnimationController.cpp:
2266         (WebCore::AnimationControllerPrivate::updateAnimationTimer):
2267         (WebCore::AnimationController::cancelAnimations):
2268         (WebCore::AnimationController::updateAnimations):
2269         * page/animation/KeyframeAnimation.cpp:
2270         (WebCore::KeyframeAnimation::KeyframeAnimation):
2271         (WebCore::KeyframeAnimation::endAnimation):
2272         * page/mac/AccessibilityObjectWrapper.mm:
2273         (blockquoteLevel):
2274         (AXAttributeStringSetHeadingLevel):
2275         * page/mac/FrameMac.mm:
2276         (WebCore::Frame::searchForNSLabelsAboveCell):
2277         * rendering/InlineFlowBox.cpp:
2278         (WebCore::InlineFlowBox::verticallyAlignBoxes):
2279         (WebCore::InlineFlowBox::paint):
2280         (WebCore::shouldDrawTextDecoration):
2281         * rendering/InlineTextBox.cpp:
2282         (WebCore::InlineTextBox::paintDocumentMarkers):
2283         * rendering/RenderBR.cpp:
2284         (WebCore::RenderBR::positionForCoordinates):
2285         * rendering/RenderBlock.cpp:
2286         (WebCore::RenderBlock::layoutBlock):
2287         (WebCore::RenderBlock::handleRunInChild):
2288         (WebCore::RenderBlock::paintObject):
2289         (WebCore::RenderBlock::isSelectionRoot):
2290         (WebCore::RenderBlock::rightmostPosition):
2291         (WebCore::RenderBlock::positionForBox):
2292         (WebCore::RenderBlock::positionForRenderer):
2293         (WebCore::RenderBlock::positionForCoordinates):
2294         (WebCore::RenderBlock::hasLineIfEmpty):
2295         (WebCore::RenderBlock::updateFirstLetter):
2296         (WebCore::RenderBlock::updateHitTestResult):
2297         (WebCore::RenderBlock::addFocusRingRects):
2298         * rendering/RenderBox.cpp:
2299         (WebCore::RenderBox::styleWillChange):
2300         (WebCore::RenderBox::updateBoxModelInfoFromStyle):
2301         (WebCore::RenderBox::paintRootBoxDecorations):
2302         (WebCore::RenderBox::positionForCoordinates):
2303         * rendering/RenderButton.cpp:
2304         (WebCore::RenderButton::updateFromElement):
2305         (WebCore::RenderButton::canHaveChildren):
2306         * rendering/RenderCounter.cpp:
2307         (WebCore::planCounter):
2308         * rendering/RenderFieldset.cpp:
2309         (WebCore::RenderFieldset::findLegend):
2310         * rendering/RenderFlexibleBox.cpp:
2311         (WebCore::RenderFlexibleBox::layoutVerticalBox):
2312         * rendering/RenderForeignObject.cpp:
2313         (WebCore::RenderForeignObject::translationForAttributes):
2314         (WebCore::RenderForeignObject::calculateLocalTransform):
2315         * rendering/RenderFrame.h:
2316         (WebCore::RenderFrame::element):
2317         * rendering/RenderImage.cpp:
2318         (WebCore::RenderImage::paintReplaced):
2319         (WebCore::RenderImage::imageMap):
2320         (WebCore::RenderImage::nodeAtPoint):
2321         (WebCore::RenderImage::updateAltText):
2322         * rendering/RenderInline.cpp:
2323         (WebCore::RenderInline::cloneInline):
2324         (WebCore::RenderInline::updateHitTestResult):
2325         * rendering/RenderLayer.cpp:
2326         (WebCore::RenderLayer::isTransparent):
2327         (WebCore::RenderLayer::scrollToOffset):
2328         (WebCore::RenderLayer::resize):
2329         (WebCore::RenderLayer::createScrollbar):
2330         (WebCore::RenderLayer::updateOverflowStatus):
2331         (WebCore::RenderLayer::updateScrollInfoAfterLayout):
2332         (WebCore::RenderLayer::enclosingElement):
2333         (WebCore::RenderLayer::updateHoverActiveState):
2334         (WebCore::RenderLayer::updateScrollCornerStyle):
2335         (WebCore::RenderLayer::updateResizerStyle):
2336         * rendering/RenderLayer.h:
2337         (WebCore::RenderLayer::isRootLayer):
2338         * rendering/RenderListItem.cpp:
2339         (WebCore::getParentOfFirstLineBox):
2340         * rendering/RenderMarquee.cpp:
2341         (WebCore::RenderMarquee::marqueeSpeed):
2342         * rendering/RenderObject.cpp:
2343         (WebCore::RenderObject::RenderObject):
2344         (WebCore::RenderObject::isBody):
2345         (WebCore::RenderObject::isHR):
2346         (WebCore::RenderObject::isHTMLMarquee):
2347         (WebCore::RenderObject::isEditable):
2348         (WebCore::RenderObject::addPDFURLRect):
2349         (WebCore::RenderObject::showTreeForThis):
2350         (WebCore::RenderObject::draggableNode):
2351         (WebCore::RenderObject::hasOutlineAnnotation):
2352         (WebCore::RenderObject::positionForCoordinates):
2353         (WebCore::RenderObject::updateDragState):
2354         (WebCore::RenderObject::updateHitTestResult):
2355         (WebCore::RenderObject::getUncachedPseudoStyle):
2356         (WebCore::RenderObject::getTextDecorationColors):
2357         (WebCore::RenderObject::caretMaxOffset):
2358         (WebCore::RenderObject::offsetParent):
2359         * rendering/RenderObject.h:
2360         (WebCore::RenderObject::isRoot):
2361         (WebCore::RenderObject::isInlineContinuation):
2362         (WebCore::RenderObject::node):
2363         (WebCore::RenderObject::setNode):
2364         * rendering/RenderObjectChildList.cpp:
2365         (WebCore::RenderObjectChildList::destroyLeftoverChildren):
2366         * rendering/RenderPart.cpp:
2367         (WebCore::RenderPart::updateWidgetPosition):
2368         * rendering/RenderPartObject.cpp:
2369         (WebCore::RenderPartObject::updateWidget):
2370         (WebCore::RenderPartObject::viewCleared):
2371         * rendering/RenderPath.cpp:
2372         (WebCore::RenderPath::calculateLocalTransform):
2373         (WebCore::RenderPath::layout):
2374         (WebCore::RenderPath::paint):
2375         (WebCore::RenderPath::drawMarkersIfNeeded):
2376         * rendering/RenderReplaced.cpp:
2377         (WebCore::RenderReplaced::positionForCoordinates):
2378         (WebCore::RenderReplaced::isSelected):
2379         * rendering/RenderSVGGradientStop.cpp:
2380         (WebCore::RenderSVGGradientStop::gradientElement):
2381         * rendering/RenderSVGImage.cpp:
2382         (WebCore::RenderSVGImage::calculateLocalTransform):
2383         * rendering/RenderSVGInlineText.cpp:
2384         (WebCore::RenderSVGInlineText::positionForCoordinates):
2385         * rendering/RenderSVGRoot.cpp:
2386         (WebCore::RenderSVGRoot::layout):
2387         (WebCore::RenderSVGRoot::applyContentTransforms):
2388         (WebCore::RenderSVGRoot::paint):
2389         (WebCore::RenderSVGRoot::calcViewport):
2390         (WebCore::RenderSVGRoot::absoluteTransform):
2391         * rendering/RenderSVGText.cpp:
2392         (WebCore::RenderSVGText::calculateLocalTransform):
2393         (WebCore::RenderSVGText::layout):
2394         * rendering/RenderSVGTextPath.cpp:
2395         (WebCore::RenderSVGTextPath::layoutPath):
2396         (WebCore::RenderSVGTextPath::startOffset):
2397         (WebCore::RenderSVGTextPath::exactAlignment):
2398         (WebCore::RenderSVGTextPath::stretchMethod):
2399         * rendering/RenderSVGTransformableContainer.cpp:
2400         (WebCore::RenderSVGTransformableContainer::calculateLocalTransform):
2401         * rendering/RenderSVGViewportContainer.cpp:
2402         (WebCore::RenderSVGViewportContainer::calcViewport):
2403         (WebCore::RenderSVGViewportContainer::viewportTransform):
2404         (WebCore::RenderSVGViewportContainer::nodeAtPoint):
2405         * rendering/RenderTable.cpp:
2406         (WebCore::RenderTable::addChild):
2407         * rendering/RenderTableCell.cpp:
2408         (WebCore::RenderTableCell::updateFromElement):
2409         (WebCore::RenderTableCell::calcPrefWidths):
2410         * rendering/RenderTableCol.cpp:
2411         (WebCore::RenderTableCol::updateFromElement):
2412         * rendering/RenderTableRow.cpp:
2413         (WebCore::RenderTableRow::addChild):
2414         * rendering/RenderTableSection.cpp:
2415         (WebCore::RenderTableSection::addChild):
2416         * rendering/RenderText.cpp:
2417         (WebCore::RenderText::originalText):
2418         (WebCore::RenderText::positionForCoordinates):
2419         * rendering/RenderTextControlMultiLine.cpp:
2420         (WebCore::RenderTextControlMultiLine::nodeAtPoint):
2421         * rendering/RenderTextControlSingleLine.cpp:
2422         (WebCore::RenderTextControlSingleLine::nodeAtPoint):
2423         * rendering/RenderTextFragment.cpp:
2424         (WebCore::RenderTextFragment::originalText):
2425         (WebCore::RenderTextFragment::previousCharacter):
2426         * rendering/RenderTheme.cpp:
2427         (WebCore::RenderTheme::isActive):
2428         (WebCore::RenderTheme::isChecked):
2429         (WebCore::RenderTheme::isIndeterminate):
2430         (WebCore::RenderTheme::isEnabled):
2431         (WebCore::RenderTheme::isFocused):
2432         (WebCore::RenderTheme::isPressed):
2433         (WebCore::RenderTheme::isReadOnlyControl):
2434         (WebCore::RenderTheme::isHovered):
2435         * rendering/RenderThemeMac.mm:
2436         (WebCore::RenderThemeMac::updatePressedState):
2437         (WebCore::RenderThemeMac::paintMediaFullscreenButton):
2438         (WebCore::RenderThemeMac::paintMediaMuteButton):
2439         (WebCore::RenderThemeMac::paintMediaPlayButton):
2440         (WebCore::RenderThemeMac::paintMediaSeekBackButton):
2441         (WebCore::RenderThemeMac::paintMediaSeekForwardButton):
2442         (WebCore::RenderThemeMac::paintMediaSliderTrack):
2443         (WebCore::RenderThemeMac::paintMediaSliderThumb):
2444         (WebCore::RenderThemeMac::paintMediaTimelineContainer):
2445         (WebCore::RenderThemeMac::paintMediaCurrentTime):
2446         (WebCore::RenderThemeMac::paintMediaTimeRemaining):
2447         * rendering/RenderThemeSafari.cpp:
2448         (WebCore::RenderThemeSafari::paintMediaMuteButton):
2449         (WebCore::RenderThemeSafari::paintMediaPlayButton):
2450         (WebCore::RenderThemeSafari::paintMediaSliderTrack):
2451         * rendering/RenderTreeAsText.cpp:
2452         (WebCore::operator<<):
2453         (WebCore::writeSelection):
2454         * rendering/RenderWidget.cpp:
2455         (WebCore::RenderWidget::setWidgetGeometry):
2456         (WebCore::RenderWidget::updateWidgetPosition):
2457         (WebCore::RenderWidget::nodeAtPoint):
2458         * rendering/RootInlineBox.cpp:
2459         (WebCore::isEditableLeaf):
2460         * rendering/SVGRenderSupport.cpp:
2461         (WebCore::prepareToRenderSVGContent):
2462         * rendering/SVGRenderTreeAsText.cpp:
2463         (WebCore::write):
2464         * rendering/SVGRootInlineBox.cpp:
2465         (WebCore::SVGRootInlineBox::buildLayoutInformation):
2466         (WebCore::SVGRootInlineBox::layoutInlineBoxes):
2467         (WebCore::SVGRootInlineBox::buildLayoutInformationForTextBox):
2468         (WebCore::SVGRootInlineBox::buildTextChunks):
2469         * rendering/style/SVGRenderStyle.cpp:
2470         (WebCore::SVGRenderStyle::cssPrimitiveToLength):
2471         * svg/SVGFont.cpp:
2472         (WebCore::SVGTextRunWalker::walk):
2473         (WebCore::floatWidthOfSubStringUsingSVGFont):
2474         (WebCore::Font::drawTextUsingSVGFont):
2475         * svg/SVGTextContentElement.cpp:
2476         (WebCore::findInlineTextBoxInTextChunks):
2477         * svg/graphics/SVGPaintServer.cpp:
2478         (WebCore::SVGPaintServer::fillPaintServer):
2479         (WebCore::SVGPaintServer::strokePaintServer):
2480
2481 2009-02-11  Brady Eidson  <beidson@apple.com>
2482
2483         Reviewed by Darin Adler
2484
2485         <rdar://problem/3541409> - Further FrameLoader and page cache cleanup
2486
2487         * history/CachedFrame.cpp:
2488         (WebCore::CachedFrame::restore): Moved updatePlatformScriptObjects() here.
2489
2490         * loader/FrameLoader.cpp:
2491         (WebCore::FrameLoader::commitProvisionalLoad): Rolled opened() into this method.  This method was
2492           the only caller and - in the future - will benefit from doing parts of opened()'s work differently.
2493         (WebCore::FrameLoader::open): Split off per-frame logic into open(CachedFrame&) method.
2494         (WebCore::FrameLoader::closeAndRemoveChild): Added.  Do the non-tree related cleanup that
2495           FrameTree::removeChild() used to do.
2496         (WebCore::FrameLoader::detachFromParent): Call ::closeAndRemoveChild() instead.
2497         (WebCore::FrameLoader::cachePageForHistoryItem): Perform the "can cache page" check here.
2498         * loader/FrameLoader.h:
2499
2500         * page/FrameTree.cpp:
2501         (WebCore::FrameTree::removeChild): Just remove the Frame from the tree.  Closing it and other
2502           cleanup is the responsibility of the FrameLoader.
2503         * page/FrameTree.h:
2504         (WebCore::FrameTree::detachFromParent): Added to just clear a Frame's parent pointer
2505
2506 2009-02-11  Scott Violet  <sky@google.com>
2507
2508         Reviewed by Eric Seidel.
2509
2510         https://bugs.webkit.org/show_bug.cgi?id=23882
2511         GraphicsContextSkia draws round rects as solid rects
2512
2513         Fixes two bugs in Skia's GraphicsContext::fillRoundedRect:
2514         . fillRoundedRect had an extra call to fillRect, resulting in always
2515           drawing a solid rectangle.
2516         . if the total radius along a given axis is greater than the size of
2517           the axis to draw, a solid rect should be drawn.
2518
2519         The layout tests LayoutTests/fast/css/shadow-multiple.html and
2520         LayoutTests/fast/box-shadow/basic-shadows.html cover this.
2521
2522         * platform/graphics/skia/GraphicsContextSkia.cpp:
2523         (WebCore::GraphicsContext::fillRoundedRect):
2524
2525 2009-02-11  Julien Chaffraix  <jchaffraix@webkit.org>
2526
2527         Reviewed by Eric Seidel.
2528
2529         Bug 23536: Auto-generate HTMLElementFactory
2530
2531         Remove the HTMLElementFactory files. Farewell.
2532
2533         * html/HTMLElementFactory.cpp: Removed.
2534         * html/HTMLElementFactory.h: Removed.
2535
2536 2009-02-11  Julien Chaffraix  <jchaffraix@webkit.org>
2537
2538         Reviewed by Eric Seidel.
2539
2540         Bug 23536: Auto-generate HTMLElementFactory
2541
2542         Make the platform auto-generate the HTMLElementFactory.
2543
2544         * DerivedSources.make:
2545         * GNUmakefile.am:
2546         * WebCore.pro:
2547         * WebCore.scons:
2548         * WebCore.vcproj/WebCore.vcproj:
2549         * WebCore.xcodeproj/project.pbxproj:
2550         * WebCoreSources.bkl:
2551         * webcore-base.bkl:
2552
2553 2009-02-11  Sam Weinig  <sam@webkit.org>
2554
2555         Reviewed by David Hyatt.
2556
2557         Remove unneeded ASSERTS.
2558
2559         * rendering/RenderBox.h:
2560         (WebCore::RenderBox::width):
2561         (WebCore::RenderBox::height):
2562         (WebCore::RenderBox::size):
2563         (WebCore::RenderBox::frameRect):
2564
2565 2009-02-11  Simon Fraser  <simon.fraser@apple.com>
2566
2567         Reviewed by Dave Hyatt
2568
2569         Add function to RenderStyle to ask whether a background image has been specified.
2570
2571         * rendering/style/RenderStyle.h:
2572         (WebCore::InheritedFlags::hasBackgroundImage):
2573
2574 2009-02-11  Simon Fraser  <simon.fraser@apple.com>
2575
2576         Reviewed by Dave Hyatt
2577
2578         https://bugs.webkit.org/show_bug.cgi?id=23548
2579
2580         When opacity or transform change on an object which has a compositing layer,
2581         avoid repainting the layer.
2582         
2583         Added a new StyleDifference value, StyleDifferenceRecompositeLayer, which indicates
2584         that the only thing styleChanged() has to do is to update composited properties of
2585         the layer. RenderStyle::diff() now has an out param for a bitmask of "context sensitive"
2586         properties, currently for opacity and transform. When one of these changes, we need
2587         to see if we have a compositing layer before we decide whether to layout/repaint,
2588         or just update the composited layer, via adjustStyleDifference().
2589         
2590         * rendering/RenderObject.cpp:
2591         (WebCore::RenderObject::adjustStyleDifference):
2592         (WebCore::RenderObject::setStyle):
2593         (WebCore::RenderObject::styleDidChange):
2594         * rendering/RenderObject.h:
2595         * rendering/style/RenderStyle.cpp:
2596         (WebCore::RenderStyle::diff):
2597         * rendering/style/RenderStyle.h:
2598         * rendering/style/RenderStyleConstants.h:
2599         (WebCore::):
2600
2601 2009-02-11  Alexey Proskuryakov  <ap@webkit.org>
2602
2603         Reviewed by Darin Adler.
2604
2605         <rdar://problem/6562920> Pasted text should be normalized to NFC
2606
2607         Testing requires putting non-HTML content in pasteboard, so it cannot be done with WebKit alone.
2608
2609         * platform/mac/PasteboardMac.mm: (WebCore::Pasteboard::plainText): Route the text through
2610         -[NSString precomposedStringWithCanonicalMapping].
2611
2612 2009-02-10  Chris Marrin  <cmarrin@apple.com>
2613
2614         Reviewed by Simon Fraser.
2615
2616         https://bugs.webkit.org/show_bug.cgi?id=23883
2617
2618         Added new TransformOperation subclasses and methods to existing ones
2619         to support 3D.
2620
2621         * WebCore.xcodeproj/project.pbxproj:
2622         * platform/graphics/transforms/IdentityTransformOperation.h:
2623         (WebCore::IdentityTransformOperation::isAffine):
2624         * platform/graphics/transforms/Matrix3DTransformOperation.cpp: Added.
2625         (WebCore::Matrix3DTransformOperation::blend):
2626         * platform/graphics/transforms/Matrix3DTransformOperation.h: Added.
2627         (WebCore::Matrix3DTransformOperation::create):
2628         (WebCore::Matrix3DTransformOperation::isIdentity):
2629         (WebCore::Matrix3DTransformOperation::isAffine):
2630         (WebCore::Matrix3DTransformOperation::getOperationType):
2631         (WebCore::Matrix3DTransformOperation::isSameType):
2632         (WebCore::Matrix3DTransformOperation::operator==):
2633         (WebCore::Matrix3DTransformOperation::apply):
2634         (WebCore::Matrix3DTransformOperation::Matrix3DTransformOperation):
2635         * platform/graphics/transforms/MatrixTransformOperation.h:
2636         (WebCore::MatrixTransformOperation::isAffine):
2637         (WebCore::MatrixTransformOperation::apply):
2638         * platform/graphics/transforms/PerspectiveTransformOperation.cpp: Added.
2639         (WebCore::PerspectiveTransformOperation::blend):
2640         * platform/graphics/transforms/PerspectiveTransformOperation.h: Added.
2641         (WebCore::PerspectiveTransformOperation::create):
2642         (WebCore::PerspectiveTransformOperation::isIdentity):
2643         (WebCore::PerspectiveTransformOperation::isAffine):
2644         (WebCore::PerspectiveTransformOperation::getOperationType):
2645         (WebCore::PerspectiveTransformOperation::isSameType):
2646         (WebCore::PerspectiveTransformOperation::operator==):
2647         (WebCore::PerspectiveTransformOperation::apply):
2648         (WebCore::PerspectiveTransformOperation::PerspectiveTransformOperation):
2649         * platform/graphics/transforms/RotateTransformOperation.cpp:
2650         (WebCore::RotateTransformOperation::blend):
2651         * platform/graphics/transforms/RotateTransformOperation.h:
2652         (WebCore::RotateTransformOperation::create):
2653         (WebCore::RotateTransformOperation::angle):
2654         (WebCore::RotateTransformOperation::isAffine):
2655         (WebCore::RotateTransformOperation::operator==):
2656         (WebCore::RotateTransformOperation::apply):
2657         (WebCore::RotateTransformOperation::RotateTransformOperation):
2658         * platform/graphics/transforms/ScaleTransformOperation.cpp:
2659         (WebCore::ScaleTransformOperation::blend):
2660         * platform/graphics/transforms/ScaleTransformOperation.h:
2661         (WebCore::ScaleTransformOperation::create):
2662         (WebCore::ScaleTransformOperation::z):
2663         (WebCore::ScaleTransformOperation::isIdentity):
2664         (WebCore::ScaleTransformOperation::isAffine):
2665         (WebCore::ScaleTransformOperation::operator==):
2666         (WebCore::ScaleTransformOperation::apply):
2667         (WebCore::ScaleTransformOperation::ScaleTransformOperation):
2668         * platform/graphics/transforms/SkewTransformOperation.h:
2669         (WebCore::SkewTransformOperation::isAffine):
2670         * platform/graphics/transforms/TransformOperation.h:
2671         (WebCore::TransformOperation::):
2672         (WebCore::TransformOperation::is3DOperation):
2673         * platform/graphics/transforms/TransformOperations.h:
2674         (WebCore::TransformOperations::isAffine):
2675         (WebCore::TransformOperations::has3DOperation):
2676         * platform/graphics/transforms/TranslateTransformOperation.cpp:
2677         (WebCore::TranslateTransformOperation::blend):
2678         * platform/graphics/transforms/TranslateTransformOperation.h:
2679         (WebCore::TranslateTransformOperation::create):
2680         (WebCore::TranslateTransformOperation::z):
2681         (WebCore::TranslateTransformOperation::isIdentity):
2682         (WebCore::TranslateTransformOperation::isAffine):
2683         (WebCore::TranslateTransformOperation::operator==):
2684         (WebCore::TranslateTransformOperation::apply):
2685         (WebCore::TranslateTransformOperation::TranslateTransformOperation):
2686
2687 2009-02-11  David Hyatt  <hyatt@apple.com>
2688
2689         Move createAnonymousBlock() to RenderBlock.  Since anonymous blocks are always parented to some other block,
2690         we can move this function to RenderBlock.  Fix a couple of call sites as a result of this restriction.
2691
2692         Reviewed by Simon Fraser
2693
2694         * rendering/RenderBlock.cpp:
2695         (WebCore::RenderBlock::createAnonymousBlock):
2696         * rendering/RenderBlock.h:
2697         * rendering/RenderInline.cpp:
2698         (WebCore::RenderInline::childBecameNonInline):
2699         * rendering/RenderObject.cpp:
2700         (WebCore::RenderObject::handleDynamicFloatPositionChange):
2701         * rendering/RenderObject.h:
2702
2703 2009-02-11  David Hyatt  <hyatt@apple.com>
2704
2705         https://bugs.webkit.org/show_bug.cgi?id=23895
2706
2707         Remove two complete nonsense lines that I accidentally added from a cut and paste error.  This
2708         restores the original logic.
2709
2710         Reviewed by Simon Fraser
2711
2712         * rendering/RenderBox.cpp:
2713         (WebCore::RenderBox::calcAbsoluteHorizontalReplaced):
2714
2715 2009-02-11  David Hyatt  <hyatt@apple.com>
2716
2717         Rename getBaselineOfFirstLineBox to firstLineBoxBaseline.  Rename getBaselineOfLastLineBox to
2718         lastLineBoxBaseline.  Remove the functions from RenderObject and add them to RenderBox instead.
2719
2720         Reviewed by Eric Seidel
2721
2722         * rendering/RenderBlock.cpp:
2723         (WebCore::RenderBlock::baselinePosition):
2724         (WebCore::RenderBlock::firstLineBoxBaseline):
2725         (WebCore::RenderBlock::lastLineBoxBaseline):
2726         * rendering/RenderBlock.h:
2727         * rendering/RenderBox.h:
2728         (WebCore::RenderBox::firstLineBoxBaseline):
2729         (WebCore::RenderBox::lastLineBoxBaseline):
2730         * rendering/RenderFlexibleBox.cpp:
2731         (WebCore::RenderFlexibleBox::layoutHorizontalBox):
2732         * rendering/RenderObject.h:
2733         * rendering/RenderTable.cpp:
2734         (WebCore::RenderTable::firstLineBoxBaseline):
2735         * rendering/RenderTable.h:
2736         * rendering/RenderTableCell.cpp:
2737         (WebCore::RenderTableCell::baselinePosition):
2738         * rendering/RenderTableSection.cpp:
2739         (WebCore::RenderTableSection::firstLineBoxBaseline):
2740         * rendering/RenderTableSection.h:
2741
2742 2009-02-11  Eric Carlson  <eric.carlson@apple.com>
2743
2744         Reviewed by Simon Fraser
2745
2746         https://bugs.webkit.org/show_bug.cgi?id=23877
2747         Allow port to disable progress events from <video> and <audio> elements
2748
2749         * html/HTMLMediaElement.cpp: Initialize m_sendProgressEvents.
2750         (WebCore::HTMLMediaElement::HTMLMediaElement): Don't post progress events if m_sendProgressEvents is false.
2751         (WebCore::HTMLMediaElement::initAndDispatchProgressEvent): Ditto.
2752         (WebCore::HTMLMediaElement::load): Ditto.
2753         * html/HTMLMediaElement.h: Add m_sendProgressEvents
2754
2755 2009-02-11  Adam Roben  <aroben@apple.com>
2756
2757         Windows build fix
2758
2759         * DerivedSources.cpp: Removed SVGElementFactory.cpp, since including
2760         it leads to ambiguities for symbols like "aTag", which exist in both
2761         the HTMLNames and SVGNames namespaces.
2762
2763         * WebCore.vcproj/WebCore.vcproj: Added SVGElementFactory.cpp to the
2764         project directly. VS also decided to reformat this file a little bit.
2765
2766 2009-02-10  Julien Chaffraix  <jchaffraix@webkit.org>
2767
2768         Reviewed by Eric Seidel.
2769
2770         Bug 23536: Auto-generate HTMLElementFactory
2771
2772         Those are the last auto-generation bits needed to have a working generated HTMLElementFactory:
2773
2774         - Added a new option mapToTagName that enables a tag to use another's options and tagName (<image>
2775           uses imgTag for example) and wired the code generation to be consistent with the current factory.
2776
2777         - Disabled dashboard compatibility check for HTMLElementFactory as it would make at least one test case fail.
2778
2779         - Pass the QualifiedName down to the Element constructor for shared constructors to make the generated code as
2780           close as possible to the current one. We will pass the QualifiedName for all Element in a forthcoming patch.
2781
2782         * dom/make_names.pl: Did all the above points and tweaked the code generation to match the current HTMLElementFactory
2783           as closely as possible.
2784
2785         * html/HTMLElementFactory.cpp:
2786         (WebCore::quoteConstructor):
2787         * html/HTMLQuoteElement.cpp:
2788         (WebCore::HTMLQuoteElement::HTMLQuoteElement): Moved setUsesBeforeAfterRules to HTMLQuoteElement' constructor because some
2789         part of the code creates elements without using the HTMLElementFactory. Also added a FIXME as it is not the right place.
2790
2791         * html/HTMLTagNames.in: Corrected <image> parameters.
2792
2793 2009-02-10  David Hyatt  <hyatt@apple.com>
2794
2795         Fix for pixel test regression in fast/text.  Make sure not to add in
2796         the borderTop and paddingTop of the block to the baseline when painting
2797         strict mode text decorations.
2798         
2799         Reviewed by Mark Rowe
2800     
2801         * rendering/InlineFlowBox.cpp:
2802         (WebCore::InlineFlowBox::paintTextDecorations):
2803         * rendering/InlineFlowBox.h:
2804
2805 2009-02-10  Jon Honeycutt  <jhoneycutt@apple.com>
2806
2807         Windows build fix after r40837.
2808
2809         Not reviewed.
2810
2811         * DerivedSources.cpp:
2812
2813 2009-02-10  Jon Honeycutt  <jhoneycutt@apple.com>
2814
2815         <rdar://6349412> REGRESSION(r37204): Page is not repainted during and
2816         after pan scrolling
2817
2818         Reviewed by Steve Falkenburg.
2819
2820         * platform/ScrollView.cpp:
2821         (WebCore::ScrollView::scrollContents): Don't repaint the pan scroll
2822         icon rect immediately; we will paint after the view has been scrolled.
2823
2824 2009-02-10  Oliver Hunt  <oliver@apple.com>
2825
2826         Reviewed by Adele Peterson.
2827
2828         <rdar://problem/6156755> onMouseOver events do not fire properly for cross frame drag and drop
2829
2830         This problem was caused by incorrectly ignoring whether or not the
2831         default behaviour of the mousedown event was suppressed.  If a
2832         mousedown handler in a frame prevents default handling then the
2833         subsequent mousemove events fired for the drag should not be
2834         captured by that frame, should the mouse move out of its bounds.
2835
2836         Test: fast/events/mouse-drag-from-frame.html
2837
2838         * page/EventHandler.cpp:
2839         (WebCore::EventHandler::EventHandler):
2840         (WebCore::EventHandler::clear):
2841         (WebCore::EventHandler::handleMouseReleaseEvent):
2842             Reset new m_capturesDragging flag
2843
2844         (WebCore::EventHandler::handleMousePressEvent):
2845             Respect the m_capturesDragging flag when we propagate
2846             a mousedown event to a subframe.
2847
2848         * page/EventHandler.h:
2849         (WebCore::EventHandler::capturesDragging):
2850
2851 2009-02-10  Kevin Ollivier  <kevino@theolliviers.com>
2852
2853         wx build fixes for recent changes to TransformationMatrix and DOMElement.
2854
2855         * WebCoreSources.bkl:
2856         * dom/Element.cpp:
2857         * platform/graphics/transforms/TransformationMatrix.h:
2858         * platform/graphics/wx/TransformationMatrixWx.cpp:
2859         (WebCore::TransformationMatrix::operator wxGraphicsMatrix):
2860
2861 2009-02-10  David Hyatt  <hyatt@apple.com>
2862
2863         Some renames on line boxes.  xPos()/yPos() -> x()/y().  setXPos()/setYPos() -> setX()/setY().  m_object/object() -> m_renderer/renderer().  textObject() -> textRenderer().
2864         
2865         Reviewed by Sam Weinig
2866
2867         * dom/Position.cpp:
2868         (WebCore::Position::upstream):
2869         (WebCore::Position::downstream):
2870         * editing/VisiblePosition.cpp:
2871         (WebCore::VisiblePosition::leftVisuallyDistinctCandidate):
2872         (WebCore::VisiblePosition::rightVisuallyDistinctCandidate):
2873         (WebCore::VisiblePosition::localCaretRect):
2874         * editing/visible_units.cpp:
2875         (WebCore::startPositionForLine):
2876         (WebCore::endPositionForLine):
2877         (WebCore::previousLinePosition):
2878         (WebCore::nextLinePosition):
2879         * rendering/EllipsisBox.cpp:
2880         (WebCore::EllipsisBox::paint):
2881         (WebCore::EllipsisBox::nodeAtPoint):
2882         * rendering/InlineBox.cpp:
2883         (WebCore::InlineBox::showTreeForThis):
2884         (WebCore::InlineBox::height):
2885         (WebCore::InlineBox::caretMinOffset):
2886         (WebCore::InlineBox::caretMaxOffset):
2887         (WebCore::InlineBox::deleteLine):
2888         (WebCore::InlineBox::extractLine):
2889         (WebCore::InlineBox::attachLine):
2890         (WebCore::InlineBox::adjustPosition):
2891         (WebCore::InlineBox::paint):
2892         (WebCore::InlineBox::nodeAtPoint):
2893         (WebCore::InlineBox::selectionState):
2894         (WebCore::InlineBox::canAccommodateEllipsis):
2895         * rendering/InlineBox.h:
2896         (WebCore::InlineBox::InlineBox):
2897         (WebCore::InlineBox::renderer):
2898         (WebCore::InlineBox::setX):
2899         (WebCore::InlineBox::x):
2900         (WebCore::InlineBox::setY):
2901         (WebCore::InlineBox::y):
2902         (WebCore::InlineBox::topOverflow):
2903         (WebCore::InlineBox::bottomOverflow):
2904         (WebCore::InlineBox::leftOverflow):
2905         (WebCore::InlineBox::rightOverflow):
2906         (WebCore::InlineBox::visibleToHitTesting):
2907         (WebCore::InlineBox::boxModelObject):
2908         * rendering/InlineFlowBox.cpp:
2909         (WebCore::InlineFlowBox::height):
2910         (WebCore::InlineFlowBox::addToLine):
2911         (WebCore::InlineFlowBox::removeLineBoxFromRenderObject):
2912         (WebCore::InlineFlowBox::extractLineBoxFromRenderObject):
2913         (WebCore::InlineFlowBox::attachLineBoxToRenderObject):
2914         (WebCore::InlineFlowBox::rendererLineBoxes):
2915         (WebCore::InlineFlowBox::onEndChain):
2916         (WebCore::InlineFlowBox::determineSpacingForFlowBoxes):
2917         (WebCore::InlineFlowBox::placeBoxesHorizontally):
2918         (WebCore::InlineFlowBox::verticallyAlignBoxes):
2919         (WebCore::InlineFlowBox::adjustMaxAscentAndDescent):
2920         (WebCore::verticalPositionForBox):
2921         (WebCore::InlineFlowBox::computeLogicalBoxHeights):
2922         (WebCore::InlineFlowBox::placeBoxesVertically):
2923         (WebCore::InlineFlowBox::nodeAtPoint):
2924         (WebCore::InlineFlowBox::paint):
2925         (WebCore::InlineFlowBox::paintFillLayer):
2926         (WebCore::InlineFlowBox::paintBoxShadow):
2927         (WebCore::InlineFlowBox::paintBoxDecorations):
2928         (WebCore::InlineFlowBox::paintMask):
2929         (WebCore::InlineFlowBox::paintTextDecorations):
2930         * rendering/InlineFlowBox.h:
2931         (WebCore::InlineFlowBox::borderLeft):
2932         (WebCore::InlineFlowBox::borderRight):
2933         (WebCore::InlineFlowBox::borderTop):
2934         (WebCore::InlineFlowBox::borderBottom):
2935         (WebCore::InlineFlowBox::baseline):
2936         * rendering/InlineTextBox.cpp:
2937         (WebCore::InlineTextBox::height):
2938         (WebCore::InlineTextBox::selectionState):
2939         (WebCore::InlineTextBox::selectionRect):
2940         (WebCore::InlineTextBox::deleteLine):
2941         (WebCore::InlineTextBox::extractLine):
2942         (WebCore::InlineTextBox::attachLine):
2943         (WebCore::InlineTextBox::placeEllipsisBox):
2944         (WebCore::InlineTextBox::isLineBreak):
2945         (WebCore::InlineTextBox::nodeAtPoint):
2946         (WebCore::InlineTextBox::paint):
2947         (WebCore::InlineTextBox::selectionStartEnd):
2948         (WebCore::InlineTextBox::paintSelection):
2949         (WebCore::InlineTextBox::paintCompositionBackground):
2950         (WebCore::InlineTextBox::paintCustomHighlight):
2951         (WebCore::InlineTextBox::paintDecoration):
2952         (WebCore::InlineTextBox::paintSpellingOrGrammarMarker):
2953         (WebCore::InlineTextBox::paintTextMatchMarker):
2954         (WebCore::InlineTextBox::paintDocumentMarkers):
2955         (WebCore::InlineTextBox::paintCompositionUnderline):
2956         (WebCore::InlineTextBox::textPos):
2957         (WebCore::InlineTextBox::offsetForPosition):
2958         (WebCore::InlineTextBox::positionForOffset):
2959         * rendering/InlineTextBox.h:
2960         (WebCore::InlineTextBox::textRenderer):
2961         * rendering/ListMarkerBox.cpp:
2962         (WebCore::ListMarkerBox::isText):
2963         * rendering/RenderBlock.cpp:
2964         (WebCore::RenderBlock::paintEllipsisBoxes):
2965         (WebCore::RenderBlock::lowestPosition):
2966         (WebCore::RenderBlock::rightmostPosition):
2967         (WebCore::RenderBlock::leftmostPosition):
2968         (WebCore::RenderBlock::positionForBox):
2969         (WebCore::RenderBlock::positionForCoordinates):
2970         (WebCore::RenderBlock::getBaselineOfFirstLineBox):
2971         (WebCore::RenderBlock::getBaselineOfLastLineBox):
2972         (WebCore::RenderBlock::adjustForBorderFit):
2973         (WebCore::RenderBlock::addFocusRingRects):
2974         * rendering/RenderBox.cpp:
2975         (WebCore::RenderBox::paintCustomHighlight):
2976         (WebCore::RenderBox::position):
2977         (WebCore::RenderBox::containingBlockWidthForPositioned):
2978         (WebCore::RenderBox::calcAbsoluteHorizontalValues):
2979         (WebCore::RenderBox::calcAbsoluteHorizontalReplaced):
2980         * rendering/RenderBoxModelObject.cpp:
2981         (WebCore::RenderBoxModelObject::paintFillLayerExtended):
2982         * rendering/RenderFlexibleBox.cpp:
2983         (WebCore::RenderFlexibleBox::layoutVerticalBox):
2984         * rendering/RenderInline.cpp:
2985         (WebCore::RenderInline::absoluteRects):
2986         (WebCore::RenderInline::absoluteQuads):
2987         (WebCore::RenderInline::offsetLeft):
2988         (WebCore::RenderInline::offsetTop):
2989         (WebCore::RenderInline::linesBoundingBox):
2990         (WebCore::RenderInline::relativePositionedInlineOffset):
2991         (WebCore::RenderInline::addFocusRingRects):
2992         (WebCore::RenderInline::paintOutline):
2993         * rendering/RenderLayer.cpp:
2994         (WebCore::RenderLayer::localBoundingBox):
2995         * rendering/RenderSVGTSpan.cpp:
2996         (WebCore::RenderSVGTSpan::absoluteRects):
2997         (WebCore::RenderSVGTSpan::absoluteQuads):
2998         * rendering/RenderSVGText.cpp:
2999         (WebCore::RenderSVGText::absoluteRects):
3000         (WebCore::RenderSVGText::absoluteQuads):
3001         (WebCore::RenderSVGText::relativeBBox):
3002         * rendering/RenderSVGTextPath.cpp:
3003         (WebCore::RenderSVGTextPath::absoluteRects):
3004         (WebCore::RenderSVGTextPath::absoluteQuads):
3005         * rendering/RenderText.cpp:
3006         (WebCore::RenderText::absoluteRects):
3007         (WebCore::RenderText::absoluteRectsForRange):
3008         (WebCore::RenderText::absoluteQuads):
3009         (WebCore::RenderText::absoluteQuadsForRange):
3010         (WebCore::RenderText::localCaretRect):
3011         (WebCore::RenderText::linesBoundingBox):
3012         * rendering/RootInlineBox.cpp:
3013         (WebCore::RootInlineBox::height):
3014         (WebCore::RootInlineBox::clearTruncation):
3015         (WebCore::RootInlineBox::placeEllipsis):
3016         (WebCore::RootInlineBox::paintEllipsisBox):
3017         (WebCore::RootInlineBox::addHighlightOverflow):
3018         (WebCore::RootInlineBox::paintCustomHighlight):
3019         (WebCore::RootInlineBox::paint):
3020         (WebCore::RootInlineBox::nodeAtPoint):
3021         (WebCore::RootInlineBox::childRemoved):
3022         (WebCore::RootInlineBox::fillLineSelectionGap):
3023         (WebCore::RootInlineBox::block):
3024         (WebCore::isEditableLeaf):
3025         (WebCore::RootInlineBox::closestLeafChildForXPos):
3026         (WebCore::RootInlineBox::setVerticalOverflowPositions):
3027         * rendering/RootInlineBox.h:
3028         (WebCore::RootInlineBox::bottomOverflow):
3029         (WebCore::RootInlineBox::floats):
3030         (WebCore::RootInlineBox::setHorizontalOverflowPositions):
3031         (WebCore::RootInlineBox::setVerticalSelectionPositions):
3032         * rendering/SVGCharacterLayoutInfo.cpp:
3033         (WebCore::SVGCharacterLayoutInfo::addLayoutInformation):
3034         * rendering/SVGInlineTextBox.cpp:
3035         (WebCore::SVGInlineTextBox::calculateGlyphWidth):
3036         (WebCore::SVGInlineTextBoxClosestCharacterToPositionWalker::chunkPortionCallback):
3037         (WebCore::SVGInlineTextBoxSelectionRectWalker::chunkPortionCallback):
3038         (WebCore::SVGInlineTextBox::svgCharacterHitsPosition):
3039         (WebCore::SVGInlineTextBox::nodeAtPoint):
3040         (WebCore::SVGInlineTextBox::paintCharacters):
3041         (WebCore::SVGInlineTextBox::paintSelection):
3042         (WebCore::SVGInlineTextBox::paintDecoration):
3043         * rendering/SVGRenderTreeAsText.cpp:
3044         (WebCore::writeSVGInlineTextBox):
3045         * rendering/SVGRootInlineBox.cpp:
3046         (WebCore::SVGRootInlineBoxPaintWalker::SVGRootInlineBoxPaintWalker):
3047         (WebCore::SVGRootInlineBoxPaintWalker::chunkStartCallback):
3048         (WebCore::SVGRootInlineBoxPaintWalker::chunkEndCallback):
3049         (WebCore::SVGRootInlineBoxPaintWalker::chunkSetupFillCallback):
3050         (WebCore::SVGRootInlineBoxPaintWalker::chunkSetupStrokeCallback):
3051         (WebCore::SVGRootInlineBoxPaintWalker::chunkPortionCallback):
3052         (WebCore::SVGRootInlineBox::paint):
3053         (WebCore::cummulatedWidthOfInlineBoxCharacterRange):
3054         (WebCore::cummulatedHeightOfInlineBoxCharacterRange):
3055         (WebCore::svgTextRunForInlineTextBox):
3056         (WebCore::cummulatedWidthOrHeightOfTextChunk):
3057         (WebCore::applyTextAnchorToTextChunk):
3058         (WebCore::SVGRootInlineBox::buildLayoutInformation):
3059         (WebCore::SVGRootInlineBox::layoutInlineBoxes):
3060         (WebCore::SVGRootInlineBox::buildLayoutInformationForTextBox):
3061         (WebCore::SVGRootInlineBox::buildTextChunks):
3062         * rendering/bidi.cpp:
3063         (WebCore::RenderBlock::constructLine):
3064         (WebCore::RenderBlock::computeVerticalPositionsForLine):
3065         (WebCore::RenderBlock::layoutInlineChildren):
3066         (WebCore::RenderBlock::checkLinesForTextOverflow):
3067         * svg/SVGTextContentElement.cpp:
3068         (WebCore::cumulativeCharacterRangeLength):
3069         (WebCore::SVGInlineTextBoxQueryWalker::chunkPortionCallback):
3070         (WebCore::findInlineTextBoxInTextChunks):
3071
3072 2009-02-10  Simon Fraser  <simon.fraser@apple.com>
3073
3074         Reviewed by Dave Hyatt
3075
3076         Clean up "fallbackAnimating" logic in AnimationBase. This flag indicates
3077         that animation of an accelerated property must run in software for some reason.
3078         
3079         Also remove use of private headers in GraphicsLayerCA related to a case
3080         where we may have to fall back on software animation of transform.
3081
3082         * page/animation/AnimationBase.cpp:
3083         (WebCore::AnimationBase::blendProperties):
3084         * page/animation/AnimationBase.h:
3085         * page/animation/ImplicitAnimation.cpp:
3086         (WebCore::ImplicitAnimation::animate):
3087         * page/animation/KeyframeAnimation.cpp:
3088         (WebCore::KeyframeAnimation::animate):
3089         * platform/graphics/mac/GraphicsLayerCA.h:
3090         * platform/graphics/mac/GraphicsLayerCA.mm:
3091         (WebCore::getValueFunctionNameForTransformOperation):
3092         (WebCore::caValueFunctionSupported):
3093         (WebCore::GraphicsLayerCA::setBackgroundColor):
3094         (WebCore::GraphicsLayerCA::setOpacity):
3095         (WebCore::GraphicsLayerCA::animateTransform):
3096         (WebCore::GraphicsLayerCA::animateFloat):
3097         (WebCore::GraphicsLayerCA::setBasicAnimation):
3098         (WebCore::GraphicsLayerCA::setKeyframeAnimation):
3099
3100 2009-02-10  Simon Fraser  <simon.fraser@apple.com>
3101
3102         Reviewed by Dave Hyatt
3103
3104         Move enclosingCompositingLayer() from RenderObject to RenderLayer, since it
3105         relates to the RenderLayer z-order/overflow structure, rather than the render tree
3106         parent chain. Add a convenience method, ancestorCompositingLayer(), which finds
3107         the enclosing layer excluding self.
3108         
3109         Fix enclosingCompositingLayer() to correctly look at stacking context and overflow
3110         lists.
3111         
3112         Check for documentBeingDestroyed() in a few places to avoid work on document
3113         teardown.
3114         
3115         * rendering/RenderLayer.cpp:
3116         (WebCore::RenderLayer::enclosingCompositingLayer):
3117         (WebCore::RenderLayer::setParent):
3118         (WebCore::RenderLayer::dirtyZOrderLists):
3119         (WebCore::RenderLayer::dirtyOverflowList):
3120         * rendering/RenderLayer.h:
3121         (WebCore::RenderLayer::ancestorCompositingLayer):
3122         * rendering/RenderLayerBacking.cpp:
3123         (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
3124         * rendering/RenderLayerCompositor.cpp:
3125         (WebCore::RenderLayerCompositor::updateLayerCompositingState):
3126         (WebCore::RenderLayerCompositor::calculateCompositedBounds):
3127         (WebCore::RenderLayerCompositor::layerWillBeRemoved):
3128         (WebCore::RenderLayerCompositor::clippedByAncestor):
3129         * rendering/RenderLayerCompositor.h:
3130         * rendering/RenderObject.cpp:
3131         (WebCore::RenderObject::containerForRepaint):
3132         * rendering/RenderObject.h:
3133
3134 2009-02-10  David Hyatt  <hyatt@apple.com>
3135
3136         Rename xPos() and yPos() on RenderLayer to x() and y() to match RenderBox.  Rename setPos to setLocation.
3137
3138         Reviewed by Simon Fraser
3139
3140         * dom/MouseRelatedEvent.cpp:
3141         (WebCore::MouseRelatedEvent::receivedTarget):
3142         * rendering/RenderLayer.cpp:
3143         (WebCore::RenderLayer::updateLayerPosition):
3144         (WebCore::RenderLayer::convertToLayerCoords):
3145         * rendering/RenderLayer.h:
3146         (WebCore::RenderLayer::x):
3147         (WebCore::RenderLayer::y):
3148         (WebCore::RenderLayer::setLocation):
3149         * rendering/RenderTreeAsText.cpp:
3150         (WebCore::write):
3151         (WebCore::externalRepresentation):
3152
3153 2009-02-10  Darin Fisher  <darin@chromium.org>
3154
3155         Reviewed by Eric Seidel.
3156
3157         https://bugs.webkit.org/show_bug.cgi?id=23879
3158         Add missing PLATFORM(SKIA) changes to TransformationMatrix.h
3159
3160         * platform/graphics/transforms/TransformationMatrix.h:
3161
3162 2009-02-10  Sam Weinig  <sam@webkit.org>
3163
3164         Reviewed by David Hyatt.
3165
3166         Fix for https://bugs.webkit.org/show_bug.cgi?id=15897
3167         Please implement getBoundingClientRect and getClientRects
3168         <rdar://problem/6139669>
3169
3170         Cursory implementation of Element.getBoundingClientRect and
3171         Element.getClientRects. Adds necessary infrastructure classes
3172         ClientRect and ClientRectList.
3173
3174         Tests: fast/dom/getBoundingClientRect.html
3175                fast/dom/getClientRects.html
3176
3177         * DerivedSources.make:
3178         * GNUmakefile.am:
3179         * WebCore.pro:
3180         * WebCore.vcproj/WebCore.vcproj:
3181         * WebCore.xcodeproj/project.pbxproj:
3182         * WebCoreSources.bkl:
3183         * dom/ClientRect.cpp: Added.
3184         (WebCore::ClientRect::ClientRect):
3185         * dom/ClientRect.h: Added.
3186         (WebCore::ClientRect::create):
3187         (WebCore::ClientRect::top):
3188         (WebCore::ClientRect::right):
3189         (WebCore::ClientRect::bottom):
3190         (WebCore::ClientRect::left):
3191         (WebCore::ClientRect::width):
3192         (WebCore::ClientRect::height):
3193         * dom/ClientRect.idl: Added.
3194         * dom/ClientRectList.cpp: Added.
3195         (WebCore::ClientRectList::ClientRectList):
3196         (WebCore::ClientRectList::~ClientRectList):
3197         (WebCore::ClientRectList::length):
3198         (WebCore::ClientRectList::item):
3199         * dom/ClientRectList.h: Added.
3200         (WebCore::ClientRectList::create):
3201         * dom/ClientRectList.idl: Added.
3202         * dom/Element.cpp:
3203         (WebCore::Element::getClientRects):
3204         (WebCore::Element::getBoundingClientRect):
3205         * dom/Element.h:
3206         * dom/Element.idl:
3207         * page/DOMWindow.idl:
3208         * rendering/RenderInline.cpp:
3209         (WebCore::RenderInline::absoluteRects):
3210         (WebCore::RenderInline::absoluteQuads):
3211
3212 2009-02-10  David Hyatt  <hyatt@apple.com>
3213
3214         Get rid of capsLockStateMayHaveChanged on RenderObject.  It is only implemented by one class (text fields),
3215         so devirtualize and just query at the single call site.
3216
3217         Reviewed by Eric Seidel
3218
3219         * page/EventHandler.cpp:
3220         (WebCore::EventHandler::capsLockStateMayHaveChanged):
3221         * rendering/RenderObject.h:
3222         * rendering/RenderTextControlSingleLine.h:
3223
3224 2009-02-10  David Hyatt  <hyatt@apple.com>
3225
3226         Shrink the size of all RenderObjects (except for RenderInlines) by 4 bytes.  This patch moves the cached vertical position member to RenderInlines,
3227         since they were the only objects being queried across multiple lines.
3228         
3229         Reviewed by Sam Weinig
3230
3231         * rendering/InlineFlowBox.cpp:
3232         (WebCore::verticalPositionForBox):
3233         (WebCore::InlineFlowBox::computeLogicalBoxHeights):
3234         * rendering/RenderBoxModelObject.cpp:
3235         (WebCore::RenderBoxModelObject::verticalPosition):
3236         * rendering/RenderBoxModelObject.h:
3237         * rendering/RenderInline.cpp:
3238         (WebCore::RenderInline::RenderInline):
3239         (WebCore::RenderInline::verticalPositionFromCache):
3240         * rendering/RenderInline.h:
3241         (WebCore::RenderInline::invalidateVerticalPosition):
3242         * rendering/RenderObject.cpp:
3243         (WebCore::RenderObject::RenderObject):
3244         * rendering/RenderObject.h:
3245         * rendering/RenderText.cpp:
3246         * rendering/RenderText.h:
3247         * rendering/bidi.cpp:
3248         (WebCore::RenderBlock::layoutInlineChildren):
3249
3250 2009-02-10  Dimitri Glazkov  <dglazkov@chromium.org>
3251
3252         Reviewed by Mark Rowe.
3253
3254         https://bugs.webkit.org/show_bug.cgi?id=23868
3255         Fix code style issues: removed 80-col wrapping, incorrect include style, if statement body on same line.
3256
3257         * bindings/v8/custom/V8HTMLInputElementCustom.cpp:
3258         * bindings/v8/custom/V8HTMLOptionsCollectionCustom.cpp:
3259
3260 2009-02-10  Dimitri Glazkov  <dglazkov@chromium.org>
3261
3262         Reviewed by Eric Seidel.
3263
3264         https://bugs.webkit.org/show_bug.cgi?id=23868
3265         Add HTMLInputElement and HTMLOptionsCollection V8 custom bindings.
3266
3267         * bindings/v8/custom/V8HTMLInputElementCustom.cpp: Added.
3268         (WebCore::ACCESSOR_GETTER):
3269         (WebCore::ACCESSOR_SETTER):
3270         (WebCore::CALLBACK_FUNC_DECL):
3271         * bindings/v8/custom/V8HTMLOptionsCollectionCustom.cpp: Added.
3272         (WebCore::ACCESSOR_GETTER):
3273         (WebCore::ACCESSOR_SETTER):
3274
3275 2009-02-10  Adam Roben  <aroben@apple.com>
3276
3277         Fix Bug 23871: Assertion failure beneath WebCore::openFunc when
3278         running http/tests/security/xss-DENIED-xsl-document-redirect.xml
3279
3280         <https://bugs.webkit.org/show_bug.cgi?id=23871>
3281
3282         Reviewed by Alexey Proskuryakov.
3283
3284         Covered by existing tests.
3285
3286         * dom/XMLTokenizerLibxml2.cpp:
3287         (WebCore::openFunc): Use the two-parameter KURL constructor so that
3288         the string will be parsed. libxml2 gives us a UTF-8-encoded string
3289         that needs to be parsed.
3290
3291 2009-02-10  David Hyatt  <hyatt@apple.com>
3292
3293         Shrink the size of all replaced elements (images, form controls, plugins) by 4 bytes by packing the
3294         overflow boolean into the RenderObject base class.
3295
3296         Reviewed by Sam Weinig
3297
3298         * rendering/RenderObject.cpp:
3299         (WebCore::RenderObject::RenderObject):
3300         * rendering/RenderObject.h:
3301         (WebCore::RenderObject::replacedHasOverflow):
3302         (WebCore::RenderObject::setReplacedHasOverflow):
3303         * rendering/RenderReplaced.cpp:
3304         (WebCore::RenderReplaced::RenderReplaced):
3305         (WebCore::RenderReplaced::~RenderReplaced):
3306         (WebCore::RenderReplaced::adjustOverflowForBoxShadow):
3307         (WebCore::RenderReplaced::overflowHeight):
3308         (WebCore::RenderReplaced::overflowWidth):
3309         (WebCore::RenderReplaced::overflowLeft):
3310         (WebCore::RenderReplaced::overflowTop):
3311         (WebCore::RenderReplaced::overflowRect):
3312         * rendering/RenderReplaced.h:
3313
3314 2009-02-10  Eric Carlson  <eric.carlson@apple.com>
3315
3316         Reviewed by Simon Fraser.
3317
3318         https://bugs.webkit.org/show_bug.cgi?id=23870
3319         Make it possible for a port to require a user gesture for an <audio> or <video> element
3320         to load a url.
3321
3322         * html/HTMLMediaElement.cpp:
3323         (WebCore::HTMLMediaElement::HTMLMediaElement): Initialize m_loadRestrictions.
3324         (WebCore::HTMLMediaElement::attributeChanged): Only one attribute can change so put an "else" between tests.
3325         (WebCore::HTMLMediaElement::load): Return INVALID_STATE_ERR if RequireUserGestureLoadRestriction is set 
3326         and we are not preocessing a user gesture.
3327         (WebCore::HTMLMediaElement::mediaPlayerNetworkStateChanged): Remove unnecessary white space.
3328         (WebCore::HTMLMediaElement::play): Ditto.
3329         (WebCore::HTMLMediaElement::endScrubbing): Remove unnecessary braces added in r40789.
3330         (WebCore::HTMLMediaElement::mediaPlayerTimeChanged): Cache currentTime() in a local instead of calling it
3331         multiple times.
3332         (WebCore::HTMLMediaElement::processingUserGesture): New.
3333         * html/HTMLMediaElement.h:
3334         (WebCore::HTMLMediaElement::): Define LoadRestrictions, add m_loadRestrictions.
3335
3336 2009-02-10  Holger Hans Peter Freyther  <zecke@selfish.org>
3337
3338         Reviewed by Sam Weinig.
3339
3340         Remove the SVG checks from FloatPoint3D as it is used
3341         by TransformationMatrix.
3342
3343         * platform/graphics/FloatPoint3D.cpp:
3344         * platform/graphics/FloatPoint3D.h:
3345
3346 2009-02-10  David Hyatt  <hyatt@apple.com>
3347
3348         Remove the m_baseline member variable from all line boxes, since it can easily be computed when needed and did not need to be cached.
3349
3350         Reviewed by Sam Weinig
3351
3352         * rendering/EllipsisBox.cpp:
3353         (WebCore::EllipsisBox::paint):
3354         (WebCore::EllipsisBox::nodeAtPoint):
3355         * rendering/EllipsisBox.h:
3356         (WebCore::EllipsisBox::EllipsisBox):
3357         * rendering/InlineBox.h:
3358         (WebCore::InlineBox::InlineBox):
3359         * rendering/InlineFlowBox.cpp:
3360         (WebCore::InlineFlowBox::verticallyAlignBoxes):
3361         (WebCore::InlineFlowBox::computeLogicalBoxHeights):
3362         (WebCore::InlineFlowBox::placeBoxesVertically):
3363         (WebCore::InlineFlowBox::paintTextDecorations):
3364         * rendering/InlineFlowBox.h:
3365         (WebCore::InlineFlowBox::marginBorderPaddingLeft):
3366         (WebCore::InlineFlowBox::marginBorderPaddingRight):
3367         (WebCore::InlineFlowBox::marginLeft):
3368         (WebCore::InlineFlowBox::marginRight):
3369         (WebCore::InlineFlowBox::borderLeft):
3370         (WebCore::InlineFlowBox::borderRight):
3371         (WebCore::InlineFlowBox::borderTop):
3372         (WebCore::InlineFlowBox::borderBottom):
3373         (WebCore::InlineFlowBox::paddingLeft):
3374         (WebCore::InlineFlowBox::paddingRight):
3375         (WebCore::InlineFlowBox::paddingTop):
3376         (WebCore::InlineFlowBox::paddingBottom):
3377         (WebCore::InlineFlowBox::includeLeftEdge):
3378         (WebCore::InlineFlowBox::includeRightEdge):
3379         (WebCore::InlineFlowBox::baseline):
3380         * rendering/InlineTextBox.cpp:
3381         (WebCore::InlineTextBox::paint):
3382         (WebCore::InlineTextBox::paintDecoration):
3383         (WebCore::InlineTextBox::paintSpellingOrGrammarMarker):
3384         (WebCore::InlineTextBox::paintCompositionUnderline):
3385         * rendering/RenderBlock.cpp:
3386         (WebCore::RenderBlock::getBaselineOfFirstLineBox):
3387         (WebCore::RenderBlock::getBaselineOfLastLineBox):
3388         * rendering/RenderTableCell.cpp:
3389         (WebCore::RenderTableCell::baselinePosition):
3390         * rendering/RootInlineBox.cpp:
3391         (WebCore::RootInlineBox::placeEllipsis):
3392         * rendering/SVGInlineTextBox.cpp:
3393         (WebCore::SVGInlineTextBox::paintDecoration):
3394         * rendering/SVGRootInlineBox.cpp:
3395         (WebCore::applyTextAnchorToTextChunk):
3396         (WebCore::SVGRootInlineBox::layoutInlineBoxes):
3397
3398 2009-02-10  Alexey Proskuryakov  <ap@webkit.org>
3399
3400         Reviewed by Darin Adler.
3401
3402         https://bugs.webkit.org/show_bug.cgi?id=23867
3403         Eliminate obsolete frame->document() checks
3404
3405         * page/FrameView.cpp: (WebCore::FrameView::paintContents): Apparently due to a typo
3406         (document vs. !document), fillWithRed was always set to false, and other branches were
3407         never taken. Removing the check for document restores debug-only red color filling.
3408
3409         * loader/FrameLoader.cpp: (WebCore::FrameLoader::begin): Only call dispatchWindowObjectAvailable()
3410         after a document is created. A client can do anything in its delegate method, so we'd need
3411         to have frame->document() checks otherwise. DumpRenderTree uses this delegate to add its
3412         custom property, and it was crashing due to null document in JSDOMWindowBase::getOwnPropertySlot().
3413
3414         * bindings/js/JSDOMWindowBase.cpp:
3415         (WebCore::JSDOMWindowBase::getOwnPropertySlot):
3416         * bindings/js/JSDOMWindowCustom.cpp:
3417         (WebCore::JSDOMWindow::addEventListener):
3418         (WebCore::JSDOMWindow::removeEventListener):
3419         * bindings/js/JSNavigatorCustom.cpp:
3420         (WebCore::needsYouTubeQuirk):
3421         * bindings/js/ScheduledAction.cpp:
3422         (WebCore::ScheduledAction::execute):
3423         * bindings/js/ScriptControllerMac.mm:
3424         (WebCore::updateRenderingForBindings):
3425         * dom/Document.cpp:
3426         (WebCore::Document::initSecurityContext):
3427         * editing/Editor.cpp:
3428         (WebCore::Editor::deleteWithDirection):
3429         (WebCore::Editor::dispatchCPPEvent):
3430         (WebCore::Editor::applyStyle):
3431         (WebCore::Editor::applyParagraphStyle):
3432         * editing/EditorCommand.cpp:
3433         (WebCore::Editor::Command::execute):
3434         (WebCore::Editor::Command::isEnabled):
3435         (WebCore::Editor::Command::state):
3436         (WebCore::Editor::Command::value):
3437         * editing/SelectionController.cpp:
3438         (WebCore::SelectionController::recomputeCaretRect):
3439         (WebCore::SelectionController::selectFrameElementInParentIfFullySelected):
3440         (WebCore::SelectionController::selectAll):
3441         (WebCore::SelectionController::setFocused):
3442         * inspector/InspectorController.cpp:
3443         (WebCore::getResourceDocumentNode):
3444         * inspector/JavaScriptDebugServer.cpp:
3445         (WebCore::JavaScriptDebugServer::setJavaScriptPaused):
3446         * loader/DocumentLoader.cpp:
3447         (WebCore::canonicalizedTitle):
3448         (WebCore::DocumentLoader::stopLoading):
3449         (WebCore::DocumentLoader::isLoadingInAPISense):
3450         (WebCore::DocumentLoader::subresource):
3451         (WebCore::DocumentLoader::getSubresources):
3452         * loader/FrameLoader.cpp:
3453         (WebCore::FrameLoader::urlSelected):
3454         (WebCore::FrameLoader::stop):
3455         (WebCore::FrameLoader::iconURL):
3456         (WebCore::FrameLoader::executeIfJavaScriptURL):
3457         (WebCore::FrameLoader::clear):
3458         (WebCore::FrameLoader::endIfNotLoadingMainResource):
3459         (WebCore::FrameLoader::restoreDocumentState):
3460         (WebCore::FrameLoader::gotoAnchor):
3461         (WebCore::FrameLoader::loadDone):
3462         (WebCore::FrameLoader::checkCompleted):
3463         (WebCore::FrameLoader::checkCallImplicitClose):
3464         (WebCore::FrameLoader::scheduleRefresh):
3465         (WebCore::FrameLoader::outgoingOrigin):
3466         (WebCore::FrameLoader::canCachePageContainingThisFrame):
3467         (WebCore::FrameLoader::logCanCacheFrameDecision):
3468         (WebCore::FrameLoader::updatePolicyBaseURL):
3469         (WebCore::FrameLoader::setPolicyBaseURL):
3470         (WebCore::FrameLoader::frameDetached):
3471         (WebCore::FrameLoader::shouldScrollToAnchor):
3472         (WebCore::FrameLoader::saveDocumentState):
3473         * loader/archive/cf/LegacyWebArchive.cpp:
3474         (WebCore::LegacyWebArchive::create):
3475         * loader/icon/IconFetcher.cpp:
3476         (WebCore::IconFetcher::create):
3477         * loader/icon/IconLoader.cpp:
3478         (WebCore::IconLoader::startLoading):
3479         * page/AccessibilityRenderObject.cpp:
3480         (WebCore::AccessibilityRenderObject::visiblePositionForPoint):
3481         * page/Chrome.cpp:
3482         (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
3483         (WebCore::PageGroupLoadDeferrer::~PageGroupLoadDeferrer):
3484         * page/DOMWindow.cpp:
3485         (WebCore::DOMWindow::sessionStorage):
3486         (WebCore::DOMWindow::alert):
3487         (WebCore::DOMWindow::confirm):
3488         (WebCore::DOMWindow::prompt):
3489         (WebCore::DOMWindow::scrollX):
3490         (WebCore::DOMWindow::scrollY):
3491         (WebCore::DOMWindow::getMatchedCSSRules):
3492         (WebCore::DOMWindow::openDatabase):
3493         (WebCore::DOMWindow::scrollBy):
3494         (WebCore::DOMWindow::scrollTo):
3495         * page/EventHandler.cpp:
3496         (WebCore::EventHandler::allowDHTMLDrag):
3497         (WebCore::EventHandler::scrollOverflow):
3498         (WebCore::EventHandler::handleMousePressEvent):
3499         (WebCore::EventHandler::handleMouseDoubleClickEvent):
3500         (WebCore::EventHandler::handleMouseMoveEvent):
3501         (WebCore::EventHandler::handleMouseReleaseEvent):
3502         (WebCore::EventHandler::updateDragAndDrop):
3503         (WebCore::EventHandler::handleWheelEvent):
3504         (WebCore::EventHandler::sendContextMenuEvent):
3505         (WebCore::EventHandler::capsLockStateMayHaveChanged):
3506         (WebCore::EventHandler::sendResizeEvent):
3507         (WebCore::EventHandler::sendScrollEvent):
3508         * page/FocusController.cpp:
3509         (WebCore::deepFocusableNode):
3510         (WebCore::FocusController::advanceFocus):
3511         * page/Frame.cpp:
3512         (WebCore::Frame::setFocusedNodeIfNeeded):
3513         (WebCore::Frame::shouldApplyTextZoom):
3514         (WebCore::Frame::shouldApplyPageZoom):
3515         (WebCore::Frame::setZoomFactor):
3516         (WebCore::Frame::setPrinting):
3517         (WebCore::Frame::reapplyStyles):
3518         (WebCore::Frame::isContentEditable):
3519         (WebCore::Frame::computeAndSetTypingStyle):
3520         (WebCore::Frame::selectionComputedStyle):
3521         (WebCore::Frame::applyEditingStyleToBodyElement):
3522         (WebCore::Frame::removeEditingStyleFromBodyElement):
3523         (WebCore::Frame::contentRenderer):
3524         (WebCore::Frame::styleForSelectionStart):
3525         (WebCore::Frame::setSelectionFromNone):
3526         (WebCore::Frame::findString):
3527         (WebCore::Frame::markAllMatchesForText):
3528         (WebCore::Frame::setMarkedTextMatchesAreHighlighted):
3529         (WebCore::Frame::documentTypeString):
3530         (WebCore::Frame::shouldClose):
3531         (WebCore::Frame::respondToChangedSelection):
3532         * page/FrameView.cpp:
3533         (WebCore::FrameView::~FrameView):
3534         (WebCore::FrameView::createScrollbar):
3535         (WebCore::FrameView::layout):
3536         (WebCore::FrameView::layoutTimerFired):
3537         (WebCore::FrameView::scheduleRelayout):
3538         (WebCore::FrameView::needsLayout):
3539         (WebCore::FrameView::unscheduleRelayout):
3540         (WebCore::FrameView::windowClipRect):
3541         * page/Geolocation.cpp:
3542         (WebCore::Geolocation::disconnectFrame):
3543         * page/Page.cpp:
3544         (WebCore::networkStateChanged):
3545         (WebCore::Page::~Page):
3546         (WebCore::Page::unmarkAllTextMatches):
3547         (WebCore::Page::setMediaVolume):
3548         * page/animation/AnimationController.cpp:
3549         (WebCore::AnimationControllerPrivate::updateRenderingDispatcherFired):
3550         * page/mac/EventHandlerMac.mm:
3551         (WebCore::EventHandler::currentKeyboardEvent):
3552         (WebCore::EventHandler::needsKeyboardEventDisambiguationQuirks):
3553         * page/mac/FrameMac.mm:
3554         (WebCore::Frame::dashboardRegionsDictionary):
3555         (WebCore::Frame::setUserStyleSheetLocation):
3556         (WebCore::Frame::setUserStyleSheet):
3557         * storage/LocalStorageArea.cpp:
3558         (WebCore::LocalStorageArea::dispatchStorageEvent):
3559         * storage/SessionStorageArea.cpp:
3560         (WebCore::SessionStorageArea::dispatchStorageEvent):
3561         * svg/graphics/SVGImage.cpp:
3562         (WebCore::SVGImage::setContainerSize):
3563         (WebCore::SVGImage::usesContainerSize):
3564         (WebCore::SVGImage::size):
3565         (WebCore::SVGImage::hasRelativeWidth):
3566         (WebCore::SVGImage::hasRelativeHeight):
3567         Removed frame->document() checks.
3568
3569 2009-02-10  Adam Treat  <adam.treat@torchmobile.com>
3570
3571         Reviewed by George Staikos.
3572
3573         Attempt to fix the Qt build after r40791.
3574
3575         * rendering/RenderSVGRoot.cpp:
3576
3577 2009-02-10  Adam Treat  <adam.treat@torchmobile.com>
3578
3579         Reviewed by George Staikos.
3580
3581         Minor code cleanup.
3582
3583         * dom/ContainerNode.cpp:
3584         (WebCore::ContainerNode::replaceChild):