2009-11-19 Laszlo Gombos <laszlo.1.gombos@nokia.com>
[WebKit-https.git] / WebCore / ChangeLog
1 2009-11-19  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
2
3         Reviewed by Darin Adler.
4
5         Remove HAVE(FLOAT_H) guard
6         https://bugs.webkit.org/show_bug.cgi?id=31661
7
8         WebCore has a dependency on float.h, there is
9         no need to guard float.h.
10
11         No new tests as there is no functional change.
12
13         * html/HTMLInputElement.cpp: Remove include directive
14         for float.h as it is included in MathExtras.h already.
15
16 2009-11-19  Simon Fraser  <simon.fraser@apple.com>
17
18         Reviewed by Pavel Feldman.
19
20         Instrumentation should account for painting in compositing layers
21         https://bugs.webkit.org/show_bug.cgi?id=31674
22
23         Add calls to InspectorTimelineAgent for painting into compositing layers,
24         which is not accounted for in FrameView::paintContents().
25
26         * rendering/RenderLayerBacking.cpp:
27         (WebCore::RenderLayerBacking::paintIntoLayer):
28         Avoid fetching the FrameView multiple times.
29         
30         (WebCore::inspectorTimelineAgent):
31         (WebCore::RenderLayerBacking::paintContents):
32
33 2009-11-19  Eric Carlson  <eric.carlson@apple.com>
34
35         Reviewed by Dan Bernstein.
36
37         <rdar://problem/7035231>
38         Support closed caption in <video> element
39
40         Test: media/media-captions.html
41
42         * WebCore.base.exp:
43         * accessibility/AccessibilityMediaControls.cpp:
44         (WebCore::AccessibilityMediaControl::controlTypeName):
45             Define ShowClosedCaptionsButton and HideClosedCaptionsButton.
46
47         * css/CSSPrimitiveValueMappings.h:
48         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
49             Add MediaToggleClosedCaptionsButtonPart.
50
51         * css/CSSSelector.cpp:
52         (WebCore::CSSSelector::extractPseudoType):
53             Define and match mediaControlsToggleClosedCaptionsButton.
54
55         * css/CSSSelector.h:
56         (WebCore::CSSSelector::):
57         * css/CSSStyleSelector.cpp:
58         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
59             Define and match PseudoMediaControlsToggleClosedCaptions.
60
61         * css/CSSValueKeywords.in:
62             Define and use media-toggle-closed-captions-button.
63
64         * css/mediaControls.css:
65         * css/mediaControlsQuickTime.css:
66             Add webkit-media-controls-toggle-closed-captions-button.
67
68         * html/HTMLMediaElement.cpp:
69         (WebCore::HTMLMediaElement::HTMLMediaElement): 
70             Initialize m_closedCaptionsVisible.
71         (WebCore::HTMLMediaElement::loadInternal): 
72             Set m_closedCaptionsVisible to false.
73         (WebCore::HTMLMediaElement::hasClosedCaptions): 
74         (WebCore::HTMLMediaElement::closedCaptionsVisible): 
75         (WebCore::HTMLMediaElement::setClosedCaptionsVisible): 
76             New, captions internal methods.
77         (WebCore::HTMLMediaElement::setWebkitClosedCaptionsVisible): 
78         (WebCore::HTMLMediaElement::webkitClosedCaptionsVisible): 
79         (WebCore::HTMLMediaElement::webkitHasClosedCaptions): 
80             New, captions DOM API.
81
82         * html/HTMLMediaElement.h:
83         * html/HTMLMediaElement.idl:
84             Declare methods needed for captions API.
85
86         * platform/ThemeTypes.h:
87             Add MediaToggleClosedCaptionsButtonPart.
88
89         * platform/android/LocalizedStringsAndroid.cpp:
90         (WebCore::localizedMediaControlElementString):
91         (WebCore::localizedMediaControlElementHelpText):
92         (WebCore::localizedMediaTimeDescription):
93             Add empty implmentations.
94
95         * platform/graphics/MediaPlayer.cpp:
96         (WebCore::NullMediaPlayerPrivate::hasClosedCaptions):
97         (WebCore::NullMediaPlayerPrivate::setClosedCaptionsVisible):
98             New, empty implementations of media engine closed caption functions.
99         (WebCore::MediaPlayer::hasClosedCaptions):
100         (WebCore::MediaPlayer::setClosedCaptionsVisible):
101             New, call media engine closed caption functions.
102
103         * platform/graphics/MediaPlayer.h:
104         * platform/graphics/MediaPlayerPrivate.h:
105         (WebCore::MediaPlayerPrivateInterface::hasClosedCaptions):
106         (WebCore::MediaPlayerPrivateInterface::setClosedCaptionsVisible):
107             Declare new media engine methods.
108
109         * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
110         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
111         (WebCore::MediaPlayerPrivate::hasClosedCaptions):
112         (WebCore::MediaPlayerPrivate::setClosedCaptionsVisible):
113             New, QTKit implementation of closed caption methods.
114
115         * platform/gtk/LocalizedStringsGtk.cpp:
116         (WebCore::localizedMediaControlElementString):
117         (WebCore::localizedMediaControlElementHelpText):
118             Add help text for ShowClosedCaptionsButton and HideClosedCaptionsButton.
119
120         * platform/mac/WebCoreSystemInterface.h:
121         * platform/mac/WebCoreSystemInterface.mm:
122             Declare and initialize wkQTMovieHasClosedCaptions and wkQTMovieSetShowClosedCaptions.
123
124         * rendering/MediaControlElements.cpp:
125         (WebCore::MediaControlInputElement::MediaControlInputElement):
126             Deal with MEDIA_CONTROLS_TOGGLE_CLOSED_CAPTIONS_BUTTON.
127         (WebCore::MediaControlToggleClosedCaptionsButtonElement::MediaControlToggleClosedCaptionsButtonElement):
128         (WebCore::MediaControlToggleClosedCaptionsButtonElement::defaultEventHandler):
129         (WebCore::MediaControlToggleClosedCaptionsButtonElement::updateDisplayType):
130             New, implement the closed caption toggle button,
131
132         * rendering/MediaControlElements.h:
133             Define MediaShowClosedCaptionsButton and MediaHideClosedCaptionsButton,
134             declare MediaControlToggleClosedCaptionsButtonElement.
135
136         * rendering/RenderMedia.cpp:
137         (WebCore::RenderMedia::styleDidChange):
138         (WebCore::RenderMedia::createToggleClosedCaptionsButton):
139         (WebCore::RenderMedia::createStatusDisplay):
140         (WebCore::RenderMedia::updateControls):
141         (WebCore::RenderMedia::forwardEvent):
142         * rendering/RenderMedia.h:
143             Deal with m_toggleClosedCaptionsButton.
144
145         * rendering/RenderTheme.cpp:
146         (WebCore::RenderTheme::paint):
147             Deal with MediaToggleClosedCaptionsButtonPart.
148
149         * rendering/RenderTheme.h:
150         * rendering/RenderThemeMac.h:
151             Declare paintMediaToggleClosedCaptionsButton.
152
153         * rendering/RenderThemeMac.mm:
154         (WebCore::RenderThemeMac::paintMediaToggleClosedCaptionsButton):
155             New.
156         (WebCore::RenderThemeMac::shouldRenderMediaControlPart):
157             Don't render captions toggle button unless we are using the new theme, the
158             movie has captions, and the movie is in a <video> element since we currently
159             rely on QTKit to render the captions.
160
161         * rendering/style/RenderStyleConstants.h:
162             Define MEDIA_CONTROLS_TOGGLE_CLOSED_CAPTIONS_BUTTON.
163
164 2009-11-19  Kevin Ollivier  <kevino@theolliviers.com>
165
166         wx build fix. Add missing header.
167
168         * platform/wx/LocalizedStringsWx.cpp:
169
170 2009-11-19  Alexey Proskuryakov  <ap@apple.com>
171
172         Reviewed by Darin Adler.
173
174         https://bugs.webkit.org/show_bug.cgi?id=31634
175         Ignore realm for proxy protection spaces
176
177         Only affects WebSocket proxy authentication, cannot be tested in DRT.
178
179         * platform/network/ProtectionSpace.cpp:
180         (WebCore::operator==):
181         * platform/network/ProtectionSpaceHash.h:
182         (WebCore::ProtectionSpaceHash::hash):
183
184 2009-11-19  Olivier Goffart  <ogoffart@trolltech.com>
185
186         Reviewed by Simon Hausmann.
187
188         [Qt] Normalize signal and slot signatures.
189
190         * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
191         (WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
192
193 2009-11-19  Alexander Pavlov  <apavlov@chromium.org>
194
195         Reviewed by Pavel Feldman.
196
197         Store cookie domains in the WebInspector object
198
199         The cookie domains have been moved from StoragePanel into WebInspector.
200         Also, the document URLs are now passed inside the WebInspector.addResource()
201         payload rather than pushed directly from InspectorController.
202         https://bugs.webkit.org/show_bug.cgi?id=31627
203
204         * inspector/InspectorController.cpp:
205         (WebCore::InspectorController::populateScriptObjects):
206         (WebCore::InspectorController::didFinishLoading):
207         * inspector/InspectorFrontend.cpp:
208         * inspector/InspectorFrontend.h:
209         * inspector/InspectorResource.cpp:
210         (WebCore::InspectorResource::createScriptObject):
211         (WebCore::InspectorResource::updateScriptObject):
212         * inspector/front-end/StoragePanel.js:
213         (WebInspector.StoragePanel.prototype.reset):
214         (WebInspector.StoragePanel.prototype.addCookieDomain):
215         * inspector/front-end/inspector.js:
216         (WebInspector.addResource):
217         (WebInspector.addCookieDomain):
218         (WebInspector.reset):
219
220 2009-11-19  Zoltan Horvath  <zoltan@webkit.org>
221
222         Reviewed by Darin Adler.
223
224         Allow custom memory allocation control for the other part of platform directory in WebCore
225         https://bugs.webkit.org/show_bug.cgi?id=31585
226
227         Inherits the following classes from FastAllocBase because these are
228         instantiated by 'new':
229
230         class RegularExpression    - instantiated at: WebCore/page/Frame.cpp:415
231         class TransformationMatrix - instantiated at: WebCore/rendering/TransformState.cpp:62
232         class Path                 - instantiated at: WebCore/html/HTMLAreaElement.cpp:73
233         class FontPlatformData     - instantiated at: WebCore/platform/graphics/qt/FontCacheQt.cpp:188
234
235         Inherits the following classes from Noncopyable because these are
236         instantiated by 'new' and no need to be copyable:
237
238         class Cursors                         - instantiated at: WebCore/platform/qt/CursorQt.cpp:146
239         class NetworkStateNotifier            - instantiated at: WebCore/platform/network/NetworkStateNotifier.cpp:37
240         struct CrossThreadResourceRequestData - instantiated at: WebCore/platform/network/ResourceRequestBase.cpp:71
241
242         class ImageDecoder - its child class is instantiated at: WebCore/platform/graphics/qt/ImageDecoderQt.cpp:46
243         class MediaPlayerPrivateInterface - its child class is instantiated at: WebCore/platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:119
244
245         * platform/graphics/MediaPlayerPrivate.h:
246         * platform/graphics/Path.h:
247         * platform/graphics/qt/FontPlatformData.h:
248         * platform/graphics/transforms/TransformationMatrix.h:
249         * platform/image-decoders/ImageDecoder.h:
250         * platform/network/NetworkStateNotifier.h:
251         * platform/network/ResourceRequestBase.h:
252         * platform/qt/CursorQt.cpp:
253         * platform/text/RegularExpression.h:
254
255 2009-11-18  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
256
257         Unreviewed.
258
259         [Qt] Build fix for QtWebKit after r51172.
260
261         * platform/qt/Localizations.cpp:
262         (WebCore::validationMessageValueMissingText):
263         (WebCore::validationMessageTypeMismatchText):
264         (WebCore::validationMessagePatternMismatchText):
265         (WebCore::validationMessageTooLongText):
266         (WebCore::validationMessageRangeUnderflowText):
267         (WebCore::validationMessageRangeOverflowText):
268         (WebCore::validationMessageStepMismatchText):
269
270 2009-11-18  Dan Bernstein  <mitz@apple.com>
271
272         Reviewed by Simon Fraser.
273
274         Fixed <rdar://problem/7398987> Assertion failure in
275         RenderLayer::updateClipRects when a plug-in’s enclosing layer is
276         enclosed by a transformed layer
277
278         Tests: fast/layers/clip-rects-transformed-2.html
279                fast/layers/clip-rects-transformed.html
280
281         * rendering/RenderLayer.cpp:
282         (WebCore::RenderLayer::clippingRoot): Added. Finds the nearest ancestor
283         that is either transformed or composited. During painting and hit
284         testing, when a transformed or composited layer is hit, it becomes the
285         new root layer, which ultimately gets passed to calculateRects().
286         (WebCore::RenderLayer::childrenClipRect): Pass the clipping root as the
287         root layer to calculateRects(), and return the bounding box of the
288         transformed rectangle.
289         (WebCore::RenderLayer::selfClipRect): Ditto.
290         * rendering/RenderLayer.h:
291
292 2009-11-18  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
293
294         Reviewed by Kenneth Rohde Christiansen.
295
296         [Qt] Remove support for Qt v4.3 or older versions
297         https://bugs.webkit.org/show_bug.cgi?id=29469
298
299         No new tests as there is no change if compiled with 
300         Qt v4.4 or later version.
301
302         * WebCore.pro:
303         * dom/XMLTokenizerQt.cpp:
304         (WebCore::EntityResolver::resolveUndeclaredEntity):
305         (WebCore::XMLTokenizer::XMLTokenizer):
306         (WebCore::XMLTokenizer::~XMLTokenizer):
307         (WebCore::XMLTokenizer::doWrite):
308         (WebCore::XMLTokenizer::startDocument):
309         (WebCore::XMLTokenizer::parseDtd):
310         * platform/graphics/qt/FontQt.cpp:
311         * platform/graphics/qt/FontQt43.cpp: Removed.
312         * platform/graphics/qt/ImageQt.cpp:
313         * platform/network/ResourceHandleInternal.h:
314         * platform/network/qt/QNetworkReplyHandler.cpp:
315         * platform/network/qt/QNetworkReplyHandler.h:
316         * platform/network/qt/ResourceHandleQt.cpp:
317         (WebCore::ResourceHandle::start):
318         (WebCore::ResourceHandle::cancel):
319         (WebCore::ResourceHandle::loadResourceSynchronously):
320         (WebCore::ResourceHandle::setDefersLoading):
321         * platform/network/qt/ResourceRequest.h:
322         * platform/network/qt/ResourceRequestQt.cpp:
323         * platform/qt/ClipboardQt.cpp:
324         (WebCore::ClipboardQt::clearData):
325         * platform/qt/CookieJarQt.cpp:
326         (WebCore::cookieJar):
327         (WebCore::setCookies):
328         (WebCore::cookies):
329         (WebCore::cookiesEnabled):
330         * platform/qt/PlatformKeyboardEventQt.cpp:
331         (WebCore::keyIdentifierForQtKeyCode):
332         (WebCore::windowsKeyCodeForKeyEvent):
333         * platform/text/qt/TextBoundaries.cpp:
334         * platform/text/qt/TextBreakIteratorQt.cpp:
335         * plugins/qt/PluginDataQt.cpp:
336         (WebCore::PluginData::initPlugins):
337
338 2009-11-18  Michelangelo De Simone  <micdesim@gmail.com>
339
340         Reviewed by Darin Adler.
341
342         Fix for <https://bugs.webkit.org/show_bug.cgi?id=27959>.
343         Support for validationMessage attribute, as per HTML5 specs.
344
345         Test: fast/forms/validationMessage.html
346
347         * html/HTMLButtonElement.idl: validationMessage attribute
348         * html/HTMLFieldSetElement.idl: validationMessage attribute
349         * html/HTMLFormControlElement.cpp:
350         * html/HTMLFormControlElement.h:
351         * html/HTMLInputElement.idl: validationMessage attribute
352         * html/HTMLSelectElement.idl: validationMessage attribute
353         * html/HTMLTextAreaElement.idl: validationMessage attribute
354         * html/ValidityState.cpp: new method to retrieve pertinent localized text
355         * html/ValidityState.h:
356         * page/mac/WebCoreViewFactory.h:
357         * platform/LocalizedStrings.h:
358         * platform/android/LocalizedStringsAndroid.cpp:
359         * platform/gtk/LocalizedStringsGtk.cpp:
360         * platform/haiku/LocalizedStringsHaiku.cpp:
361         * platform/mac/LocalizedStringsMac.mm:
362         * platform/wx/LocalizedStringsWx.cpp:
363
364 2009-11-18  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
365
366         Unreviewed.
367
368         Fix a typo. Remove the trailing semicolon
369         from an include directive after r51137.
370
371         No new tests as there is no functional change.
372
373         * platform/qt/QWebPageClient.h:
374
375 2009-11-18  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
376
377         Unreviewed.
378
379         [Qt] Build fix for QtWebKit after r51159.
380
381         Include float.h for DBL_MANT_DIG. Not sure why this
382         is not a problem for other ports.
383
384         * html/HTMLInputElement.cpp:
385
386 2009-11-19  Roland Steiner  <rolandsteiner@chromium.org>
387
388         Reviewed by Darin Adler.
389
390         Bug 31574 -  Crashing bug when removing <ruby> element
391         (https://bugs.webkit.org/show_bug.cgi?id=31574)
392
393         Cause of the bug:
394         1.) RenderBlock::destroy() of the RenderRubyRun called destroyLeftoverChildren()
395         2.) that called destroy() of the RenderRubyBase(), which in RenderObject::destroy() calls remove()
396         3.) remove() is being redirected as parent()->removeChild() in RenderObject.h
397         4.) this triggers the special handling of child removal in RenderRubyRun that
398             causes it to destroy itself
399         5.) On returning from all this the renderer crashes when accessing a member
400             or virtual function on this now illegal object.
401
402         I therefore added a flag that tracks if the ruby run is being destroyed.
403         If so, avoid doing the special handling in removeChild that caused this.
404         It's not the most elegant solution, but the easiest to implement without
405         touching unrelated code. Also, it's self-documenting.
406
407         Test: fast/ruby/ruby-remove.html
408
409         * rendering/RenderRubyRun.cpp:
410         (WebCore::RenderRubyRun::RenderRubyRun):
411         (WebCore::RenderRubyRun::destroy):
412         (WebCore::RenderRubyRun::removeChild):
413         * rendering/RenderRubyRun.h:
414
415 2009-11-18  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
416
417         Reviewed by Kenneth Rohde Christiansen.
418
419         [Qt] Remove WTF_USE_JAVASCRIPTCORE_BINDINGS as it is no longer used
420         https://bugs.webkit.org/show_bug.cgi?id=31643
421
422         No new tests as there is no functional change.
423
424         * WebCore.pro:
425
426 2009-11-18  Yong Li  <yong.li@torchmobile.com>
427
428         Reviewed by Eric Seidel.
429
430         Implement TextBoundaries for WINCE port.
431         https://bugs.webkit.org/show_bug.cgi?id=27371
432
433         * platform/text/wince/TextBoundariesWince.cpp: Added.
434
435 2009-11-18  Yong Li  <yong.li@torchmobile.com>
436
437         Reviewed by Eric Seidel.
438
439         Implement TextBreakIterator for WINCE port.
440         https://bugs.webkit.org/show_bug.cgi?id=27371
441
442         * platform/text/wince/TextBreakIteratorWince.cpp: Added.
443
444 2009-11-18  Kent Tamura  <tkent@chromium.org>
445
446         Reviewed by Darin Adler.
447
448         Add support for ValidityState.typeMismatch for the following INPUT types:
449           date datetime datetime-local month time week
450         https://bugs.webkit.org/show_bug.cgi?id=31342
451
452         Tests: fast/forms/ValidityState-typeMismatch-date.html
453                fast/forms/ValidityState-typeMismatch-datetime.html
454                fast/forms/ValidityState-typeMismatch-datetimelocal.html
455                fast/forms/ValidityState-typeMismatch-month.html
456                fast/forms/ValidityState-typeMismatch-time.html
457                fast/forms/ValidityState-typeMismatch-week.html
458
459         * html/HTMLInputElement.cpp:
460         (WebCore::HTMLInputElement::formStringToISODateTime): Check the type
461           validity of the specified type and string using the ISODateTime class.
462         * html/HTMLInputElement.h:
463         * html/ValidityState.cpp:
464         (WebCore::ValidityState::typeMismatch): Check the type validity
465           for date, datetime, datetime-local, month, time and week with
466           HTMLInputElemtn::formStringToISODateTime()
467
468 2009-11-18  Maciej Stachowiak  <mjs@apple.com>
469
470         Reviewed by Oliver Hunt.
471
472         Fix REGRESSION (r47022): Performance of DocumentFragment.appendChild is 1000x slower sometimes
473         https://bugs.webkit.org/show_bug.cgi?id=31237
474         
475         Also speeds up Dromaeo DOM Core tests by 1.31x.
476
477         * bindings/js/JSNodeCustom.cpp:
478         (WebCore::JSNode::markChildren): Change marking algorithm to avoid O(N^2) behavior. The subtree
479         mark bit was no longer effective; instead I changed things so only a node that has no ancestors
480         with wrappers would do marking; there should be only one in the typical case (the root of the
481         detached subtree).
482         * dom/Node.cpp:
483         (WebCore::Node::Node): Remove now useless m_inSubtreeMark bit and related functions.
484         * dom/Node.h: ditto
485
486 2009-11-18  Darin Adler  <darin@apple.com>
487
488         Reviewed by Sam Weinig.
489
490         Get rid of the redundant strokeType and fillType data members on
491         a GraphicsContext as well as the FillOrStrokeType enum. Use
492         null pointers instead.
493
494         * platform/graphics/GraphicsContext.cpp:
495         (WebCore::GraphicsContext::setStrokeColor): Null out the pattern
496         and gradient.
497         (WebCore::GraphicsContext::setFillColor): Ditto.
498         (WebCore::GraphicsContext::setStrokePattern): Null out the graident.
499         (WebCore::GraphicsContext::setFillPattern): Ditto.
500         (WebCore::GraphicsContext::setStrokeGradient): Null out the pattern.
501         (WebCore::GraphicsContext::setFillGradient): Ditto.
502
503         * platform/graphics/GraphicsContextPrivate.h: Remove all that stuff.
504
505         * platform/graphics/cairo/GraphicsContextCairo.cpp:
506         (WebCore::setPlatformFill): Use null checks on fillPattern and
507         fillGraident instead of a switch statement.
508         (WebCore::setPlatformStroke): Ditto.
509
510         * platform/graphics/cg/GraphicsContextCG.cpp:
511         (WebCore::GraphicsContext::applyStrokePattern): Removed unneeded get.
512         (WebCore::GraphicsContext::applyFillPattern): Ditto.
513         (WebCore::calculateDrawingMode): Use fillPattern and strokePattern
514         to see if there is a pattern instead of fillType and strokeType.
515         (WebCore::GraphicsContext::drawPath): Use fillGradient, strokeGradient,
516         fillPattern, and strokePattern instead of fillType and strokeType.
517         (WebCore::GraphicsContext::fillPath): Added FIXME about color space that
518         is used in the pattern and gradient case probably erroneously. Moved
519         gradient code inside an if statement. Streamlined pattern code and
520         use an if statement. No switch any more.
521         (WebCore::GraphicsContext::strokePath): Ditto.
522         (WebCore::GraphicsContext::fillRect): Ditto.
523         (WebCore::GraphicsContext::strokeRect): Ditto.
524
525         * platform/graphics/qt/GraphicsContextQt.cpp:
526         (WebCore::GraphicsContext::fillPath): Use null checks on fillPattern and
527         fillGraident instead of a switch statement.
528         (WebCore::GraphicsContext::strokePath): Ditto.
529         (WebCore::GraphicsContext::fillRect): Ditto.
530
531         * platform/graphics/wince/GraphicsContextWince.cpp:
532         (WebCore::GraphicsContext::fillPath): Removed unneeded check of fillType.
533         (WebCore::GraphicsContext::fillRect): Ditto.
534
535 2009-11-18  Kent Tamura  <tkent@chromium.org>
536
537         Reviewed by Darin Adler.
538
539         Support for step attribute and ValidityStae.stepMismatch for
540         type=number and range.  stepMismatch will be false if the
541         difference between the current value and a multiple of the step
542         value is very small.
543
544         Change the behavior of RenderSlider so that it always has a value
545         rounded to the step attribute value.
546
547         https://bugs.webkit.org/show_bug.cgi?id=31331
548
549         Tests: fast/forms/ValidityState-stepMismatch-number.html
550                fast/forms/ValidityState-stepMismatch-range.html
551                fast/forms/ValidityState-stepMismatch-unsupported.html
552                fast/forms/input-step.html
553
554         * html/HTMLAttributeNames.in: Add "step".
555         * html/HTMLInputElement.cpp:
556         (WebCore::HTMLInputElement::stepMismatch):
557         (WebCore::HTMLInputElement::getStepParameters):
558         (WebCore::HTMLInputElement::getAllowedValueStep):
559         * html/HTMLInputElement.h:
560         * html/HTMLInputElement.idl: Add "step".
561         * html/ValidityState.cpp:
562         (WebCore::ValidityState::stepMismatch): Forward to HTMLInputElement::stepMismatch().
563         * html/ValidityState.h:
564         * rendering/RenderSlider.cpp:
565         (WebCore::SliderRange::SliderRange):
566         (WebCore::SliderRange::clampValue):
567
568 2009-11-18  Dmitry Titov  <dimich@chromium.org>
569
570         Reviewed by Darin Adler.
571
572         Need to ASSERT(isMainThread()) in ThreadShared methods.
573         https://bugs.webkit.org/show_bug.cgi?id=31637
574
575         Added ASSERT(IsMainThread()) to all following methods:
576         * platform/TreeShared.h:
577         (WebCore::TreeShared::TreeShared):
578         (WebCore::TreeShared::~TreeShared):
579         (WebCore::TreeShared::ref):
580         (WebCore::TreeShared::deref):
581         (WebCore::TreeShared::setParent):
582         (WebCore::TreeShared::parent):
583
584 2009-11-18  Girish Ramakrishnan  <girish@forwardbias.in>
585
586         Reviewed by Eric Seidel.
587
588         Add plugin visibility manual test
589
590         https://bugs.webkit.org/show_bug.cgi?id=31542
591
592         * manual-tests/plugins/windowed.html:
593         * manual-tests/plugins/windowless.html:
594
595 2009-11-18  Patrick Mueller  <Patrick_Mueller@us.ibm.com>
596
597         Reviewed by Pavel Feldman.
598
599         Web Inspector - remember last script displayed in Scripts panel
600         https://bugs.webkit.org/show_bug.cgi?id=27552
601
602         Manual test added
603         
604         * inspector/front-end/ScriptsPanel.js:
605         (WebInspector.ScriptsPanel.prototype.showScript):
606         (WebInspector.ScriptsPanel.prototype.showResource):
607         (WebInspector.ScriptsPanel.prototype._showScriptOrResource):
608         (WebInspector.ScriptsPanel.prototype._addScriptToFilesMenu):
609         (WebInspector.ScriptsPanel.prototype._callFrameSelected):
610         (WebInspector.ScriptsPanel.prototype._goBack):
611         (WebInspector.ScriptsPanel.prototype._goForward):
612         * manual-tests/inspector/remember-last-script.html: Added.
613
614 2009-11-18  Shinichiro Hamaji  <hamaji@chromium.org>
615
616         Reviewed by Dimitri Glazkov.
617
618         Win chromium is slow to draw transparent texts
619         https://bugs.webkit.org/show_bug.cgi?id=31258
620
621         Create bounded transparency layers instead of just clipping.
622
623         No new tests because this is just a performance improvement.
624
625         * platform/graphics/chromium/FontChromiumWin.cpp:
626         (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::initializeForGDI):
627
628 2009-11-18  Shu Chang  <Chang.Shu@nokia.com>
629
630         Reviewed by Eric Seidel.
631
632         [Qt] Add support for displaying deleteButton.
633         https://bugs.webkit.org/show_bug.cgi?id=31560
634
635         Test: LayoutTests/editing/deleting/5408255.html
636
637         * WebCore.qrc:
638         * platform/graphics/qt/ImageQt.cpp:
639         (loadResourcePixmap):
640
641 2009-11-18  Mikhail Naganov  <mnaganov@chromium.org>
642
643         Reviewed by Eric Seidel.
644
645         Fix Qt build without JavaScript debugger.
646
647         https://bugs.webkit.org/show_bug.cgi?id=31575
648
649         * page/Console.idl:
650
651 2009-11-18  Daniel Bates  <dbates@webkit.org>
652
653         Reviewed by Dave Hyatt.
654
655         https://bugs.webkit.org/show_bug.cgi?id=24971
656         And
657         <rdar://problem/7138265>
658
659         Fixes an issue where setting the height of a table row programmatically
660         (via JavaScript) causes the table to be improperly rendered because the
661         height of each row in the table is not recalculated with respect to the
662         CSS height property.
663
664         In particular, programmatically setting the height of some table row causes
665         the rows of that table to be rendered with a height equal to the minimum
666         height required by the cells in that row, regardless of any specified cell
667         heights. Instead, when RenderTableSection::recalcCells is called, the height
668         of each row should be set to the CSS height property just as we do in
669         RenderTableSection::addChild.
670
671         Test: fast/table/row-height-recalc2.html
672
673         * rendering/RenderTableSection.cpp:
674         (WebCore::setRowHeightToRowStyleHeightIfNotRelative): Added.
675         (WebCore::RenderTableSection::addChild): Moved code that set row height into
676         method WebCore::setRowHeightToRowStyleHeightIfNotRelative.
677         (WebCore::RenderTableSection::recalcCells): Modified to call
678         WebCore::setRowHeightToRowStyleHeightIfNotRelative.
679
680 2009-11-18  Zoltan Horvath  <zoltan@webkit.org>
681
682         Reviewed by Darin Adler.
683
684         Allow custom memory allocation control for the part of platform directory in WebCore
685         https://bugs.webkit.org/show_bug.cgi?id=31473
686
687         Inherits the following classes from FastAllocBase because these are
688         instantiated by 'new':
689
690         class  AnimationList         - instantiated at WebCore/rendering/style/StyleRareNonInheritedData.cpp:85
691         class  Color                 - instantiated at WebCore/rendering/RenderTheme.cpp:48
692         struct Length                - instantiated at WebCore/platform/Length.cpp:103
693         class  PlatformKeyboardEvent - instantiated at WebCore/dom/KeyboardEvent.cpp:63
694         class  ContextMenuItem       - instantiated at WebCore/platform/ContextMenu.cpp:70
695         class  DeprecatedPtrList     - instantiated at WebCore/rendering/RenderBlock.cpp:2284
696
697         Inherits the following classes from Noncopyable because these are
698         instantiated by 'new' and no need to be copyable:
699
700         class  GraphicsContextPrivate - instantiated at WebCore/platform/graphics/GraphicsContext.cpp:78
701         class  FontCache              - instantiated at WebCore/platform/graphics/qt/FontCacheQt.cpp:43
702         struct MediaPlayerFactory     - instantiated at WebCore/platform/graphics/MediaPlayer.cpp:163
703         class  DeprecatedPtrListNode  - instantiated at WebCore/platform/DeprecatedPtrListImpl.cpp:53
704
705         * platform/ContextMenuItem.h:
706         * platform/DeprecatedPtrList.h:
707         * platform/DeprecatedPtrListImpl.cpp:
708         * platform/Length.h:
709         * platform/PlatformKeyboardEvent.h:
710         * platform/animation/AnimationList.h:
711         * platform/graphics/Color.h:
712         * platform/graphics/FontCache.h:
713         * platform/graphics/GraphicsContextPrivate.h:
714         * platform/graphics/MediaPlayer.cpp:
715
716 2009-11-18  Daniel Bates  <dbates@webkit.org>
717
718         Reviewed by Darin Adler.
719
720         https://bugs.webkit.org/show_bug.cgi?id=31186
721
722         Renames RenderTextControl::m_edited and RenderTextControl::m_userEdited to
723         m_wasChangedSinceLastChangeEvent and m_lastChangeWasUserEdit, respectively.
724         These are more descriptive names so as to clear an ambiguity surrounding
725         their usage. Also, renames associated setters and getters so that they
726         coincide with the renamed fields.
727
728         No functionality was changed. So, no tests were included.
729
730         * bindings/objc/DOMHTML.mm:
731         (-[DOMHTMLInputElement _isEdited]):
732         (-[DOMHTMLTextAreaElement _isEdited]):
733         * dom/Document.cpp:
734         (WebCore::Document::setFocusedNode):
735         * html/HTMLInputElement.cpp:
736         (WebCore::HTMLInputElement::defaultEventHandler):
737         * rendering/RenderTextControl.cpp:
738         (WebCore::RenderTextControl::RenderTextControl):
739         (WebCore::RenderTextControl::setInnerTextValue):
740         (WebCore::RenderTextControl::setLastChangeWasUserEdit): Formerly named setUserEdited.
741         (WebCore::RenderTextControl::subtreeHasChanged):
742         * rendering/RenderTextControl.h:
743         (WebCore::RenderTextControl::wasChangedSinceLastChangeEvent): Formerly named isEdited.
744         (WebCore::RenderTextControl::setChangedSinceLastChangeEvent): Formerly named setEdited.
745         (WebCore::RenderTextControl::lastChangeWasUserEdit): Formerly named setUserEdited.
746         * rendering/RenderTextControlSingleLine.cpp:
747         (WebCore::RenderTextControlSingleLine::subtreeHasChanged):
748         * wml/WMLInputElement.cpp:
749         (WebCore::WMLInputElement::defaultEventHandler):
750
751 2009-11-18  Tony Chang  <tony@chromium.org>
752
753         Reviewed by Adam Barth.
754
755         Remove V8CanvasPixelArrayCustom.cpp because it is no longer used by V8.
756         https://bugs.webkit.org/show_bug.cgi?id=31499
757
758         No new tests, just a build cleanup.
759
760         * WebCore.gypi:
761         * bindings/v8/custom/V8CanvasPixelArrayCustom.cpp: Removed.
762         * bindings/v8/custom/V8CustomBinding.h:
763
764 2009-11-18  Kevin Watters  <kevinwatters@gmail.com>
765
766         Reviewed by Kevin Ollivier.
767
768         Enable wx plugin support using the Windows implementation as a base.
769         
770         https://bugs.webkit.org/show_bug.cgi?id=31636
771
772         * platform/graphics/GraphicsContext.h:
773         (WebCore::GraphicsContext::inTransparencyLayer):
774         * platform/graphics/wx/GraphicsContextWx.cpp:
775         (WebCore::GraphicsContext::getWindowsContext):
776         (WebCore::GraphicsContext::releaseWindowsContext):
777         * platform/wx/FileSystemWx.cpp:
778         (WebCore::unloadModule):
779         (WebCore::listDirectory):
780         * plugins/PluginDatabase.cpp:
781         * plugins/PluginView.cpp:
782         (WebCore::PluginView::stop):
783         (WebCore::PluginView::PluginView):
784         * plugins/PluginView.h:
785         * plugins/win/PluginViewWin.cpp:
786         (windowHandleForPageClient):
787         (WebCore::PluginView::handleMouseEvent):
788         (WebCore::PluginView::platformStart):
789         (WebCore::PluginView::snapshot):
790         * wscript:
791
792 2009-11-18  Andrei Popescu  <andreip@google.com>
793
794         Reviewed by Dimitri Glazkov.
795
796         [Android] Add shared timer and sound utilities to platform/android
797         https://bugs.webkit.org/show_bug.cgi?id=31584
798
799         No new tests required, this is platform specific code.
800
801         * platform/android/SharedTimerAndroid.cpp: Added.
802         (WebCore::setSharedTimerFiredFunction):
803         (WebCore::setSharedTimerFireTime):
804         (WebCore::stopSharedTimer):
805         * platform/android/SoundAndroid.cpp: Added.
806         (WebCore::systemBeep):
807
808 2009-11-18  Mikhail Naganov  <mnaganov@chromium.org>
809
810         Reviewed by Timothy Hatcher.
811
812         Fix profile tree nodes loss after focus / restore actions.
813
814         Focusing on a node is currently implemented via nodes reattaching
815         with some caching involved. It seems that not all code was updated
816         to handle this scenario correctly.
817
818         https://bugs.webkit.org/show_bug.cgi?id=31553
819
820         * inspector/front-end/BottomUpProfileDataGridTree.js:
821         (WebInspector.BottomUpProfileDataGridNode):
822         (WebInspector.BottomUpProfileDataGridNode.prototype._restore):
823         (WebInspector.BottomUpProfileDataGridNode.prototype._sharedPopulate):
824         (WebInspector.BottomUpProfileDataGridNode.prototype._willHaveChildren):
825         * inspector/front-end/DataGrid.js:
826         (WebInspector.DataGrid.prototype.insertChild):
827         (WebInspector.DataGridNode.prototype._detach):
828         (WebInspector.DataGridNode.prototype.savePosition):
829         (WebInspector.DataGridNode.prototype.restorePosition):
830         * inspector/front-end/TopDownProfileDataGridTree.js:
831         (WebInspector.TopDownProfileDataGridTree.prototype.focus):
832         (WebInspector.TopDownProfileDataGridTree.prototype.restore):
833
834 2009-11-18  Carol Szabo  <carol.szabo@nokia.com>
835
836         Reviewed by Kenneth Rohde Christiansen.
837
838         [Qt] QWebPageClient.h needs in some cases QCursor, but it does not
839         include it 
840         https://bugs.webkit.org/show_bug.cgi?id=31527
841
842         No new tests as this is just a coding style fix that affects the 
843         build of some not yet submitted patches (i.e. for bug 30173).
844
845         * platform/qt/QWebPageClient.h:
846
847 2009-11-18  Nicolas Roard   <nicolas@roard.com>
848
849         Reviewed by Dimitri Glazkov.
850
851         InspectorTimelineAgent.h should be guarded by ENABLE(INSPECTOR)
852         https://bugs.webkit.org/show_bug.cgi?id=31504
853
854         * inspector/InspectorTimelineAgent.h:Added the guard.
855
856 2009-11-18  Jens Alfke  <snej@chromium.org>
857
858         Build fix to my previous checkin, for Windows Chromium
859
860         * svg/SVGAnimatedProperty.h:
861         (WebCore::PropertySynchronizer::synchronize): Fix implicit-conversion error on AtomicString.
862
863 2009-11-18  Joseph Pecoraro  <joepeck@webkit.org>
864
865         Reviewed by Pavel Feldman.
866
867         Web Inspector: Directly Access <head> Instead of Searching for It
868         https://bugs.webkit.org/show_bug.cgi?id=31641
869         
870         Changed old access of the head element (document.getElementsByTagName)
871         to just use the document.head accessor.
872
873         * inspector/front-end/FontView.js:
874         (WebInspector.FontView):
875         * inspector/front-end/InjectedScript.js:
876         (InjectedScript.addStyleSelector):
877         * inspector/front-end/SourceFrame.js:
878         (WebInspector.SourceFrame.prototype._loaded):
879         * inspector/front-end/inspector.js:
880         (windowLoaded):
881
882 2009-11-18  Sam Weinig  <sam@webkit.org>
883
884         Reviewed by Anders Carlsson.
885
886         Fix two Geolocation assertions.
887
888         * page/Chrome.cpp:
889         (WebCore::Chrome::requestGeolocationPermissionForFrame): No need to use PageGroupLoadDeferrer since this
890         is not called from JS. 
891         * page/Geolocation.cpp:
892         (WebCore::Geolocation::Watchers::set): The PassRefPtr was getting nulled out, so we need to put it in
893         a RefPtr first.
894
895 2009-11-18  Alexey Proskuryakov  <ap@apple.com>
896
897         Case sensitive file system build fix.
898
899         * platform/network/Credential.h: It's not WTF, just wtf.
900
901 2009-11-18  Aaron Golden  <agolden@apple.com>
902
903         Reviewed by Alexey Proskuryakov.
904
905         Add support for certificates to WebCore::Credential so we can convert between NSURLCredential
906         objects and WebCore::Credential objects without losing certificate information.
907
908         * platform/network/Credential.cpp:
909         (WebCore::Credential::Credential):  Adding a constructor that takes an identity argument and a certificate chain argument
910         (WebCore::Credential::isEmpty):  Modifying isEmpty to support certificate based credentials (which don't have a username or password)
911         (WebCore::Credential::identity): Accessor for the m_identity property
912         (WebCore::Credential::certificates): Accessor for the m_certificates property
913         (WebCore::Credential::type):  Accessor for the m_type property
914         (WebCore::operator==):  Modifying == to compare the identity and certificate chains of certificate based credentials.
915         * platform/network/Credential.h:  Adding new fields to WebCore::Credential to support certificate based credentials.
916         * platform/network/mac/AuthenticationMac.mm:
917         (WebCore::mac):  Modifying the mac() conversion method to correctly convert certificate based WebCore::Credential objects.
918         (WebCore::core):  Modifying the core() conversion method to correctly convert certificate based NSURLCredential objects.
919
920 2009-11-18  Dmitry Titov  <dimich@chromium.org>
921
922         Reviewed by Eric Seidel.
923
924         Reverting r50919 that has introduced a non-thread-safe refcounting in ScriptExecutionContext::postTaskToMainThread.
925         https://bugs.webkit.org/show_bug.cgi?id=31615
926
927         * dom/Document.cpp:
928         (WebCore::ScriptExecutionContextTaskTimer::ScriptExecutionContextTaskTimer):
929         (WebCore::ScriptExecutionContextTaskTimer::fired):
930         (WebCore::PerformTaskContext::PerformTaskContext):
931         (WebCore::performTask):
932         (WebCore::Document::postTask):
933         * dom/ScriptExecutionContext.cpp:
934         * dom/ScriptExecutionContext.h:
935
936 2009-11-18  Jens Alfke  <snej@chromium.org>
937
938         Reviewed by Darin Adler.
939
940         Eliminate unnecessary String-->AtomicString conversions from generated V8 bindings,
941         by causing the right v8-to-WebCore conversion function to be called for every parameter.
942         This no longer requires any IDL metadata, so I've removed the [HintAtomic] annotations.
943         To enforce correctness, I added a mode that disables implicit
944         String-->AtomicString conversions while compiling the generated bindings.
945         https://bugs.webkit.org/show_bug.cgi?id=31168
946
947         * bindings/scripts/CodeGeneratorV8.pm:  Generate usage of V8Parameter class.
948         * bindings/v8/DerivedSourcesAllInOne.cpp:  Enable NO_IMPLICIT_ATOMICSTRING.
949         * bindings/v8/V8Binding.h:  Add V8Parameter class.
950         * css/WebKitCSSKeyframesRule.h:  Make AtomicString conversions explicit.
951         * dom/Document.idl:  Remove obsolete [HintAtomic] annotation.
952         * platform/text/AtomicString.h:  Added NO_IMPLICIT_ATOMICSTRING option.
953         * svg/SVGAnimatedTemplate.h:  Change some return types to String to avoid implicit conversion.
954         * svg/SVGAnimatedProperty.h: Adapt to changed return types in SVGAnimatedTemplate.
955
956 2009-11-18  Darin Adler  <darin@apple.com>
957
958         Reviewed by Dan Bernstein.
959
960         Move FillOrStrokeType out of public header.
961
962         * platform/graphics/GraphicsContext.h: Updated copyright date to cover
963         some years we published Apple changes, sorted forward declarations,
964         removed FillOrStrokeType enum.
965         * platform/graphics/GraphicsContextPrivate.h: Updated copyright date
966         to cover some years we published Apple changes, sorted includes,
967         moved FillOrStrokeType enum here.
968
969 2009-11-18  Chris Marrin  <cmarrin@apple.com>
970
971         Reviewed by Simon Fraser.
972
973         Add Settings for WebKitShowDebugBorders and WebKitShowRepaintCounter
974         https://bugs.webkit.org/show_bug.cgi?id=31601
975
976         These are used to debug accelerated compositing layers. I removed
977         the platform specific code from GraphicsLayerCA.mm and added calls
978         to GraphicsLayerClient to get it from the higher levels. The values 
979         now get cached in RenderLayerCompositing and are queried from there
980         by RenderLayerBacking (which implements the GraphicsLayerClient interface).
981
982         * WebCore.base.exp:
983         * page/FrameView.cpp:
984         (WebCore::FrameView::updateCompositingLayers):
985         * page/Settings.cpp:
986         (WebCore::Settings::Settings):
987         (WebCore::Settings::setShowDebugBorders):
988         (WebCore::Settings::setShowRepaintCounter):
989         * page/Settings.h:
990         (WebCore::Settings::showDebugBorders):
991         (WebCore::Settings::showRepaintCounter):
992         * platform/graphics/GraphicsLayer.h:
993         (WebCore::GraphicsLayer::showDebugBorders):
994         (WebCore::GraphicsLayer::showRepaintCounter):
995         * platform/graphics/GraphicsLayerClient.h:
996         * platform/graphics/mac/GraphicsLayerCA.mm:
997         * rendering/RenderLayerBacking.cpp:
998         (WebCore::RenderLayerBacking::showDebugBorders):
999         (WebCore::RenderLayerBacking::showRepaintCounter):
1000         * rendering/RenderLayerBacking.h:
1001         * rendering/RenderLayerCompositor.cpp:
1002         (WebCore::RenderLayerCompositor::RenderLayerCompositor):
1003         (WebCore::RenderLayerCompositor::cacheAcceleratedCompositingFlags):
1004         * rendering/RenderLayerCompositor.h:
1005         (WebCore::RenderLayerCompositor::showDebugBorders):
1006         (WebCore::RenderLayerCompositor::showRepaintCounter):
1007
1008 2009-11-18  Pavel Feldman  <pfeldman@chromium.org>
1009
1010         Reviewed by Timothy Hatcher.
1011
1012         Web Inspector: Get rid of metrics and properties sidebars'
1013         flickering.
1014
1015         https://bugs.webkit.org/show_bug.cgi?id=31629
1016
1017         * inspector/front-end/MetricsSidebarPane.js:
1018         * inspector/front-end/PropertiesSidebarPane.js:
1019
1020 2009-11-17  Brian Weinstein  <bweinstein@apple.com>
1021
1022         Reviewed by Pavel Feldman.
1023
1024         Fixes <http://webkit.org/b/31606>.
1025         Web Inspector: Enter/Return key should enter edit mode for Editable Fields.
1026         
1027         This implements Enter starting editing mode in an editable DataGrid. If the
1028         DataGrid is editable and the user hits return, startEditing the first child
1029         of the selected node. Also refactored some editing functions to take an 
1030         event target instead of the event itself, because the functions only needed
1031         the target. Lastly, added had return in editing mode stop propogation, because
1032         when enter was hit to confirm text, it would propagate back to the datagrid
1033         and try to start editing again.
1034
1035         * inspector/front-end/DataGrid.js:
1036         (WebInspector.DataGrid.prototype._ondblclick):
1037         (WebInspector.DataGrid.prototype._startEditing):
1038         (WebInspector.DataGrid.prototype.handleKeyEvent):
1039         (WebInspector.DataGrid.prototype.dataGridNodeFromEvent):
1040         (WebInspector.DataGrid.prototype._mouseDownInDataTable):
1041         (WebInspector.DataGrid.prototype._clickInDataTable):
1042         * inspector/front-end/inspector.js:
1043         (WebInspector.startEditing.element.handleKeyEvent):
1044         (WebInspector.startEditing):
1045
1046 2009-11-18  Ben Murdoch  <benm@google.com>
1047
1048         Reviewed by Darin Adler.
1049
1050         HTMLAnchorElement is inconsistent with its internal handling of the value returned for the href attribute.
1051         https://bugs.webkit.org/show_bug.cgi?id=31593
1052
1053         Test: fast/dom/HTMLAnchorElement/set-href-attribute-whitespace.html
1054
1055         * html/HTMLAnchorElement.cpp:
1056         (WebCore::HTMLAnchorElement::href): Add call to deprecatedParseURL.
1057
1058 2009-11-18  Pavel Feldman  <pfeldman@chromium.org>
1059
1060         Not reviewed. Touch InspectorController so that frontend
1061         JS files are deployed on Windows.
1062
1063         * inspector/InspectorController.cpp:
1064
1065 2009-11-18  Pavel Feldman  <pfeldman@chromium.org>
1066
1067         Reviewed by Timothy Hatcher.
1068
1069         Web Inspector: clone timeline records array instead of
1070         copying reference on invalidate all.
1071
1072         https://bugs.webkit.org/show_bug.cgi?id=31596
1073
1074         * inspector/front-end/AbstractTimelinePanel.js:
1075         (WebInspector.AbstractTimelinePanel.prototype.invalidateAllItems):
1076
1077 2009-11-18  Simon Fraser  <simon.fraser@apple.com>
1078
1079         Reviewed by Dan Bernstein.
1080
1081         Elements don't drop out of compositing layers when animation ends
1082         https://bugs.webkit.org/show_bug.cgi?id=31613
1083         <rdar://problem/7402913>
1084
1085         Avoid setting the mustOverlapCompositedLayers flag on RenderLayers which
1086         are compositing anyway for other reasons. Doing so can cause those layers
1087         to stay in compositing mode even after animations finish, because needsToBeComposited()
1088         continues to return true.
1089         
1090         No new tests because it's not possible to determine which elements are in
1091         compositing layers from DRT output.
1092
1093         * rendering/RenderLayerCompositor.cpp:
1094         (WebCore::RenderLayerCompositor::computeCompositingRequirements):
1095
1096 2009-11-18  Girish Ramakrishnan  <girish@forwardbias.in>
1097
1098         Reviewed by Tor Arne Vestbø.
1099
1100         [Qt] Mac Plugins: Remove null timer
1101         
1102         A null timer was used to send mouse move events. Instead, we now use
1103         move events to send nullEvent. This brings down CPU usage by 20-30%.
1104         
1105         https://bugs.webkit.org/show_bug.cgi?id=31624
1106
1107         * plugins/PluginView.h:
1108         * plugins/mac/PluginViewMac.cpp:
1109         (WebCore::PluginView::platformStart):
1110         (WebCore::PluginView::handleMouseEvent):
1111
1112 2009-11-18  Benjamin Poulain  <benjamin.poulain@nokia.com>
1113
1114         Reviewed by Simon Hausmann.
1115
1116         [Qt] WebKit crashes when loading certain SVG images
1117
1118         Check if the familly exist before creating the PlatformData from it.
1119
1120         https://bugs.webkit.org/show_bug.cgi?id=29443
1121
1122         Test: svg/text/text-font-invalid.html
1123
1124         * platform/graphics/qt/FontFallbackListQt.cpp:
1125         (WebCore::FontFallbackList::fontDataAt):
1126
1127 2009-11-17  Nicolas Weber  <thakis@chromium.org>
1128
1129         Reviewed by Darin Fisher.
1130
1131         Fix crash in Chromium/Mac where dropdowns weren't dismissed correctly
1132         after navigation.
1133         https://bugs.webkit.org/show_bug.cgi?id=31609
1134
1135         * platform/chromium/PopupMenuChromium.cpp:
1136         (WebCore::PopupContainer::showExternal): Set parent for external
1137         dropdowns, so that |PopupListBox::hidePopup()| can successfully notify
1138         its parent's client.
1139
1140 2009-11-17  Hayato Ito  <hayato@google.com>
1141
1142         Reviewed by Darin Adler.
1143
1144         Avoid infinite mutual recursion when deeply nested tags are loaded
1145         https://bugs.webkit.org/show_bug.cgi?id=30651
1146
1147         Test: fast/parser/block-nesting-cap-table.html
1148
1149         * html/HTMLParser.cpp:
1150         (WebCore::HTMLParser::parseToken):
1151         (WebCore::tagPriorityOfNode):
1152         (WebCore::HTMLParser::limitBlockDepth):
1153         (WebCore::HTMLParser::insertNodeAfterLimitBlockDepth):
1154         (WebCore::HTMLParser::insertNode):
1155         * html/HTMLParser.h:
1156
1157 2009-11-17  Brent Fulgham  <bfulgham@webkit.org>
1158
1159         Rubber-stamped by Alexey Proskuryakov.
1160
1161         Final clean-ups for minor coding standard violations.
1162         https://bugs.webkit.org/show_bug.cgi?id=26102.
1163
1164         * platform/graphics/cairo/GraphicsContextCairo.cpp:
1165
1166 2009-11-17  Johnny Ding  <jnd@chromium.org>
1167
1168         Reviewed by Darin Adler.
1169
1170         In all valid script tags for JavaScript, the event handler in <script...for> should not get executed.
1171         https://bugs.webkit.org/show_bug.cgi?id=31567
1172
1173         * dom/ScriptElement.cpp:
1174         (WebCore::ScriptElementData::shouldExecuteAsJavaScript):
1175
1176 2009-11-17  Pavel Feldman  <pfeldman@chromium.org>
1177
1178         Reviewed by Timothy Hatcher.
1179
1180         Web Inspector: Make DRT show web inspector for tests in inspector/ folder.
1181         - Updated DRT to show/close inspector for all tests under /inspector
1182         - Introduced LayoutTestController::setTimelineProfilingEnabled and
1183           WebInspector::setTimelineProfilingEnabled beside setJavaScriptProfilingEnabled
1184         - Removed reload on each inspector test
1185         - Renamed fast/inspector to fast/inspector-support in order not to trigger
1186         inspector for those.
1187         - Reimplemented timeline tests in order to get rid of reload there.
1188         - Moved tests that don't require harness into the fast group.
1189
1190         https://bugs.webkit.org/show_bug.cgi?id=31472
1191
1192         * WebCore.Inspector.exp:
1193         * inspector/front-end/TimelinePanel.js:
1194         (WebInspector.TimelinePanel.prototype._formatRecord):
1195
1196 2009-11-17  Andrei Popescu  <andreip@google.com>
1197
1198         Reviewed by Dimitri Glazkov.
1199
1200         [Android] Android is missing the implementation of the GeolocationService iface.
1201         https://bugs.webkit.org/show_bug.cgi?id=31554
1202
1203         No new tests required as this is platform specific code.
1204
1205         * platform/android/GeolocationServiceAndroid.cpp: Added.
1206         (WebCore::GeolocationServiceAndroid::create):
1207         (WebCore::GeolocationServiceAndroid::GeolocationServiceAndroid):
1208         (WebCore::GeolocationServiceAndroid::startUpdating):
1209         (WebCore::GeolocationServiceAndroid::stopUpdating):
1210         (WebCore::GeolocationServiceAndroid::suspend):
1211         (WebCore::GeolocationServiceAndroid::resume):
1212         (WebCore::GeolocationServiceAndroid::newPositionAvailable):
1213         (WebCore::GeolocationServiceAndroid::newErrorAvailable):
1214         (WebCore::GeolocationServiceAndroid::timerFired):
1215         (WebCore::GeolocationServiceAndroid::isPositionMovement):
1216         (WebCore::GeolocationServiceAndroid::isPositionMoreAccurate):
1217         (WebCore::GeolocationServiceAndroid::isPositionMoreTimely):
1218         * platform/android/GeolocationServiceAndroid.h: Added.
1219         (WebCore::GeolocationServiceAndroid::~GeolocationServiceAndroid):
1220         (WebCore::GeolocationServiceAndroid::lastPosition):
1221         (WebCore::GeolocationServiceAndroid::lastError):
1222         * platform/android/GeolocationServiceBridge.cpp: Added.
1223         (WebCore::):
1224         (WebCore::GeolocationServiceBridge::GeolocationServiceBridge):
1225         (WebCore::GeolocationServiceBridge::~GeolocationServiceBridge):
1226         (WebCore::GeolocationServiceBridge::start):
1227         (WebCore::GeolocationServiceBridge::stop):
1228         (WebCore::GeolocationServiceBridge::setEnableGps):
1229         (WebCore::GeolocationServiceBridge::newLocationAvailable):
1230         (WebCore::GeolocationServiceBridge::newErrorAvailable):
1231         (WebCore::GeolocationServiceBridge::toGeoposition):
1232         (WebCore::GeolocationServiceBridge::startJavaImplementation):
1233         (WebCore::GeolocationServiceBridge::stopJavaImplementation):
1234         * platform/android/GeolocationServiceBridge.h: Added.
1235
1236 2009-11-16  Kent Tamura  <tkent@chromium.org>
1237
1238         Unreviewd build fix.
1239
1240         - Fix typo in WebCore.vcproj.
1241         - Intlude limits.h for INT_MAX.
1242         - Enclose with parenthesis to suspress warning.
1243
1244         * WebCore.vcproj/WebCore.vcproj:
1245         * html/ISODateTime.cpp:
1246         (WebCore::ISODateTime::addDay):
1247
1248 2009-11-16  Robin Dunn  <robin@alldunn.com>
1249
1250         Reviewed by Kevin Ollivier.
1251
1252         Make sure wx scrollbar drawing code factors in transforms when switching backends,
1253         fix calcs for scrollbar length, and tweak the Mac scrollbar tracking rects.
1254         
1255         https://bugs.webkit.org/show_bug.cgi?id=31570
1256
1257         * platform/wx/ScrollbarThemeWx.cpp:
1258         (WebCore::ScrollbarThemeWx::minimumThumbLength):
1259         (WebCore::ScrollbarThemeWx::splitTrack):
1260         (WebCore::ScrollbarThemeWx::forwardButtonRect):
1261         * platform/wx/ScrollbarThemeWx.h:
1262         * platform/wx/wxcode/gtk/scrollbar_render.cpp:
1263         (wxRenderer_DrawScrollbar):
1264         * platform/wx/wxcode/scrollbar_render.h:
1265         (calcThumbStartAndLength):
1266         * platform/wx/wxcode/win/scrollbar_render.cpp:
1267         (wxRenderer_DrawScrollbar):
1268
1269 2009-11-16  Kent Tamura  <tkent@chromium.org>
1270
1271         Reviewed by David Levin.
1272
1273         Introduce WebCore::ISODateTime class.
1274         https://bugs.webkit.org/show_bug.cgi?id=31340
1275
1276         This class represents a value of date/time types of the HTML5 INPUT
1277         element, and has some parsing methods for ISO 8601.
1278
1279         This change has no tests because the class is not used yet.
1280
1281         * GNUmakefile.am: Add ISODateTime.cpp and ISODateTime.h.
1282         * WebCore.gypi: ditto.
1283         * WebCore.pro: ditto.
1284         * WebCore.vcproj/WebCore.vcproj: ditto.
1285         * WebCore.xcodeproj/project.pbxproj: ditto.
1286         * WebCoreSources.bkl: ditto.
1287         * html/ISODateTime.cpp: Added. Implementation of WebCore::ISODateTime class.
1288         (WebCore::isLeapYear):
1289         (WebCore::maxDayOfMonth):
1290         (WebCore::dayOfWeek):
1291         (WebCore::ISODateTime::maxWeekNumberInYear):
1292         (WebCore::countDigits):
1293         (WebCore::toInt):
1294         (WebCore::ISODateTime::parseYear): Private helper for parseDate() and parseWeek().
1295         (WebCore::ISODateTime::addDay): Private helper for parseTimeZone().
1296         (WebCore::ISODateTime::addMinute): ditto.
1297         (WebCore::ISODateTime::parseTimeZone): Private helper for parseDateTime().
1298         (WebCore::ISODateTime::parseMonth): Parser for <input type=month>.
1299         (WebCore::ISODateTime::parseDate): Parser for <input type=date>.
1300         (WebCore::ISODateTime::parseWeek): Parser for <input type=week>.
1301         (WebCore::ISODateTime::parseTime): Parser for <input type=time>.
1302         (WebCore::ISODateTime::parseDateTimeLocal): Parser for <input type=datetime-local>.
1303         (WebCore::ISODateTime::parseDateTime): Parser for <input type=datetime>.
1304         * html/ISODateTime.h: Added.  Declare WebCore::ISODateTime class.
1305         (WebCore::ISODateTime::ISODateTime):
1306         (WebCore::ISODateTime::millisecond):
1307         (WebCore::ISODateTime::second):
1308         (WebCore::ISODateTime::minute):
1309         (WebCore::ISODateTime::hour):
1310         (WebCore::ISODateTime::monthDay):
1311         (WebCore::ISODateTime::month):
1312         (WebCore::ISODateTime::fullYear):
1313         (WebCore::ISODateTime::week):
1314
1315 2009-11-16  Alexey Proskuryakov  <ap@apple.com>
1316
1317         Fix a typo in previous commit.
1318
1319         * platform/network/cf/SocketStreamHandleCFNet.cpp: #ifdef, not #if.
1320
1321 2009-11-16  Alexey Proskuryakov  <ap@apple.com>
1322
1323         Fix a typo in previous commit.
1324
1325         * platform/network/cf/SocketStreamHandleCFNet.cpp:
1326
1327 2009-11-16  Alexey Proskuryakov  <ap@apple.com>
1328
1329         Tiger build fix.
1330
1331         * platform/network/cf/SocketStreamHandleCFNet.cpp: Define CFN_EXPORT, as this macro was named
1332         differently in Tiger CFNetwork.
1333
1334 2009-11-16  Dimitri Glazkov  <dglazkov@chromium.org>
1335
1336         Reviewed by Darin Fisher.
1337
1338         [KURLGoogle] setHostAndPort doesn't handle arguments without port correctly.
1339
1340         Fix a bug in the code that was dormant until http://trac.webkit.org/changeset/50784.
1341
1342         Covered by existing test: LayoutTests/fast/dom/HTMLAnchorElement/set-href-attribute-host.html
1343
1344         * platform/KURLGoogle.cpp:
1345         (WebCore::KURL::setHostAndPort): Added handling of arguments without port specified.
1346
1347 2009-11-16  Alexey Proskuryakov  <ap@apple.com>
1348
1349         Rubber-stamped by Jon Honeycutt.
1350
1351         A better Windows build fix
1352
1353         * platform/network/cf/SocketStreamHandleCFNet.cpp: (WebCore::SocketStreamHandle::createStreams):
1354         Use a macro that inserts __declspec(dllimport) when appropriate for CFNetwork imports.
1355
1356 2009-11-16  Yael Aharon  <yael.aharon@nokia.com>
1357
1358         Reviewed by Darin Adler.
1359
1360         Rename protocolIsValid to isValidProtocol.
1361         https://bugs.webkit.org/show_bug.cgi?id=31503
1362
1363         This name change was suggested in https://bugs.webkit.org/show_bug.cgi?id=29972#c19.
1364
1365         No new tests since no new functionality was introduced.
1366
1367         * html/HTMLAnchorElement.cpp:
1368         (WebCore::HTMLAnchorElement::setProtocol):
1369         * platform/KURL.cpp:
1370         (WebCore::isValidProtocol):
1371         * platform/KURL.h:
1372         * platform/KURLGoogle.cpp:
1373         (WebCore::isValidProtocol):
1374
1375 2009-11-16  Chris Fleizach  <cfleizach@apple.com>
1376
1377         Reviewed by Beth Dakin.
1378
1379         AX: aria-labelledby duplicates some of its WAI-ARIA label
1380         https://bugs.webkit.org/show_bug.cgi?id=31565
1381
1382         Test: accessibility/aria-labelledby-overrides-label.html
1383
1384         * accessibility/AccessibilityRenderObject.cpp:
1385         (WebCore::AccessibilityRenderObject::hasTextAlternative):
1386         (WebCore::AccessibilityRenderObject::exposesTitleUIElement):
1387         (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
1388         * accessibility/AccessibilityRenderObject.h:
1389
1390 2009-11-16  Nate Chapin  <japhet@chromium.org>
1391
1392         Reviewed by Darin Fisher.
1393
1394         Handle the case of a null NPObject* in NPN_SetException in
1395         the V8 bindings.  This allow out of process plugins calling
1396         NPN_SetException to just send null instead of sending an
1397         NPObject* that would be an address in a different 
1398         process's memory space.
1399
1400         https://bugs.webkit.org/show_bug.cgi?id=31561
1401
1402         * bindings/v8/NPV8Object.cpp:
1403         (_NPN_SetException): Allow null NPObject* and just throw a general error.
1404
1405 2009-11-16  Alexey Proskuryakov  <ap@apple.com>
1406
1407         Windows build fix.
1408
1409         * platform/network/cf/SocketStreamHandleCFNet.cpp: (WebCore::SocketStreamHandle::createStreams):
1410         Disable CONNECT proxies on Windows until WebKitSupportLibrary includes support for those.
1411
1412 2009-11-14  Yael Aharon  <yael.aharon@nokia.com>
1413
1414         Reviewed by Kenneth Rohde Christiansen.
1415
1416         [Qt] ASSERT failure while running DRT
1417         https://bugs.webkit.org/show_bug.cgi?id=30978
1418
1419         Add needed Structure typeInfo flags to QtRuntimeObjectImpl and QtRuntimeMethod.
1420         These flags are needed after r49649, where HasDefaultmark was changed to OverrideMarkChildren.
1421
1422         * bridge/qt/qt_instance.cpp:
1423         (JSC::Bindings::QtRuntimeObjectImp::createStructure):
1424         * bridge/qt/qt_runtime.h:
1425         (JSC::Bindings::QtRuntimeMethod::createStructure):
1426
1427 2009-11-16  Mark Rowe  <mrowe@apple.com>
1428
1429         Attempt to fix the build.  Land a file that was missing from r51049.
1430
1431         * bindings/js/JSWebGLArrayHelper.h: Copied from WebCore/html/canvas/WebGLByteArray.idl.
1432         (WebCore::setWebGLArrayFromArray):
1433
1434 2009-11-16  Kenneth Russell  <kbr@google.com>
1435
1436         Reviewed by Oliver Hunt.
1437
1438         Update API of WebGLArray and friends
1439         https://bugs.webkit.org/show_bug.cgi?id=31175
1440
1441         * bindings/js/JSWebGLArrayCustom.cpp:
1442         (WebCore::toJS):
1443         * bindings/js/JSWebGLArrayHelper.h: Added.
1444         (WebCore::setWebGLArrayFromArray):
1445         * bindings/js/JSWebGLByteArrayCustom.cpp:
1446         (WebCore::JSWebGLByteArray::set):
1447         * bindings/js/JSWebGLFloatArrayCustom.cpp:
1448         (WebCore::JSWebGLFloatArray::set):
1449         * bindings/js/JSWebGLIntArrayCustom.cpp:
1450         (WebCore::JSWebGLIntArray::set):
1451         * bindings/js/JSWebGLShortArrayCustom.cpp:
1452         (WebCore::JSWebGLShortArray::set):
1453         * bindings/js/JSWebGLUnsignedByteArrayCustom.cpp:
1454         (WebCore::JSWebGLUnsignedByteArray::set):
1455         * bindings/js/JSWebGLUnsignedIntArrayCustom.cpp:
1456         (WebCore::JSWebGLUnsignedIntArray::set):
1457         * bindings/js/JSWebGLUnsignedShortArrayCustom.cpp:
1458         (WebCore::JSWebGLUnsignedShortArray::set):
1459         * bindings/scripts/CodeGeneratorV8.pm:
1460         * bindings/v8/V8DOMWrapper.cpp:
1461         (WebCore::V8DOMWrapper::convertToV8Object):
1462         * bindings/v8/custom/V8CustomBinding.h:
1463         * bindings/v8/custom/V8WebGLArrayBufferCustom.cpp:
1464         (WebCore::CALLBACK_FUNC_DECL):
1465         * bindings/v8/custom/V8WebGLArrayCustom.h:
1466         (WebCore::constructWebGLArray):
1467         (WebCore::getWebGLArrayElement):
1468         (WebCore::setWebGLArrayFromArray):
1469         (WebCore::setWebGLArray):
1470         * bindings/v8/custom/V8WebGLByteArrayCustom.cpp:
1471         (WebCore::CALLBACK_FUNC_DECL):
1472         * bindings/v8/custom/V8WebGLFloatArrayCustom.cpp:
1473         (WebCore::CALLBACK_FUNC_DECL):
1474         * bindings/v8/custom/V8WebGLIntArrayCustom.cpp:
1475         (WebCore::CALLBACK_FUNC_DECL):
1476         * bindings/v8/custom/V8WebGLShortArrayCustom.cpp:
1477         (WebCore::CALLBACK_FUNC_DECL):
1478         * bindings/v8/custom/V8WebGLUnsignedByteArrayCustom.cpp:
1479         (WebCore::CALLBACK_FUNC_DECL):
1480         * bindings/v8/custom/V8WebGLUnsignedIntArrayCustom.cpp:
1481         (WebCore::CALLBACK_FUNC_DECL):
1482         * bindings/v8/custom/V8WebGLUnsignedShortArrayCustom.cpp:
1483         (WebCore::CALLBACK_FUNC_DECL):
1484         * html/canvas/WebGLArray.cpp:
1485         (WebCore::WebGLArray::WebGLArray):
1486         (WebCore::WebGLArray::~WebGLArray):
1487         (WebCore::WebGLArray::setImpl):
1488         * html/canvas/WebGLArray.h:
1489         (WebCore::WebGLArray::isByteArray):
1490         (WebCore::WebGLArray::isUnsignedByteArray):
1491         (WebCore::WebGLArray::isShortArray):
1492         (WebCore::WebGLArray::isUnsignedShortArray):
1493         (WebCore::WebGLArray::isIntArray):
1494         (WebCore::WebGLArray::isUnsignedIntArray):
1495         (WebCore::WebGLArray::isFloatArray):
1496         (WebCore::WebGLArray::buffer):
1497         (WebCore::WebGLArray::baseAddress):
1498         (WebCore::WebGLArray::byteOffset):
1499         * html/canvas/WebGLArray.idl:
1500         * html/canvas/WebGLArrayBuffer.cpp:
1501         (WebCore::WebGLArrayBuffer::create):
1502         (WebCore::WebGLArrayBuffer::WebGLArrayBuffer):
1503         (WebCore::WebGLArrayBuffer::data):
1504         (WebCore::WebGLArrayBuffer::byteLength):
1505         (WebCore::WebGLArrayBuffer::~WebGLArrayBuffer):
1506         * html/canvas/WebGLArrayBuffer.h:
1507         * html/canvas/WebGLByteArray.cpp:
1508         (WebCore::WebGLByteArray::create):
1509         (WebCore::WebGLByteArray::byteLength):
1510         (WebCore::WebGLByteArray::slice):
1511         (WebCore::WebGLByteArray::set):
1512         * html/canvas/WebGLByteArray.h:
1513         (WebCore::WebGLByteArray::isByteArray):
1514         (WebCore::WebGLByteArray::data):
1515         (WebCore::WebGLByteArray::set):
1516         (WebCore::WebGLByteArray::get):
1517         (WebCore::WebGLByteArray::item):
1518         * html/canvas/WebGLByteArray.idl:
1519         * html/canvas/WebGLFloatArray.cpp:
1520         (WebCore::WebGLFloatArray::create):
1521         (WebCore::WebGLFloatArray::WebGLFloatArray):
1522         (WebCore::WebGLFloatArray::length):
1523         (WebCore::WebGLFloatArray::byteLength):
1524         (WebCore::WebGLFloatArray::slice):
1525         (WebCore::WebGLFloatArray::set):
1526         * html/canvas/WebGLFloatArray.h:
1527         (WebCore::WebGLFloatArray::isFloatArray):
1528         (WebCore::WebGLFloatArray::data):
1529         (WebCore::WebGLFloatArray::set):
1530         (WebCore::WebGLFloatArray::get):
1531         (WebCore::WebGLFloatArray::item):
1532         * html/canvas/WebGLFloatArray.idl:
1533         * html/canvas/WebGLIntArray.cpp:
1534         (WebCore::WebGLIntArray::create):
1535         (WebCore::WebGLIntArray::WebGLIntArray):
1536         (WebCore::WebGLIntArray::length):
1537         (WebCore::WebGLIntArray::byteLength):
1538         (WebCore::WebGLIntArray::slice):
1539         (WebCore::WebGLIntArray::set):
1540         * html/canvas/WebGLIntArray.h:
1541         (WebCore::WebGLIntArray::isIntArray):
1542         (WebCore::WebGLIntArray::data):
1543         (WebCore::WebGLIntArray::set):
1544         (WebCore::WebGLIntArray::get):
1545         (WebCore::WebGLIntArray::item):
1546         * html/canvas/WebGLIntArray.idl:
1547         * html/canvas/WebGLShortArray.cpp:
1548         (WebCore::WebGLShortArray::create):
1549         (WebCore::WebGLShortArray::WebGLShortArray):
1550         (WebCore::WebGLShortArray::length):
1551         (WebCore::WebGLShortArray::byteLength):
1552         (WebCore::WebGLShortArray::slice):
1553         (WebCore::WebGLShortArray::set):
1554         * html/canvas/WebGLShortArray.h:
1555         (WebCore::WebGLShortArray::isShortArray):
1556         (WebCore::WebGLShortArray::data):
1557         (WebCore::WebGLShortArray::set):
1558         (WebCore::WebGLShortArray::get):
1559         (WebCore::WebGLShortArray::item):
1560         * html/canvas/WebGLShortArray.idl:
1561         * html/canvas/WebGLUnsignedByteArray.cpp:
1562         (WebCore::WebGLUnsignedByteArray::create):
1563         (WebCore::WebGLUnsignedByteArray::WebGLUnsignedByteArray):
1564         (WebCore::WebGLUnsignedByteArray::length):
1565         (WebCore::WebGLUnsignedByteArray::byteLength):
1566         (WebCore::WebGLUnsignedByteArray::slice):
1567         (WebCore::WebGLUnsignedByteArray::set):
1568         * html/canvas/WebGLUnsignedByteArray.h:
1569         (WebCore::WebGLUnsignedByteArray::isUnsignedByteArray):
1570         (WebCore::WebGLUnsignedByteArray::data):
1571         (WebCore::WebGLUnsignedByteArray::set):
1572         (WebCore::WebGLUnsignedByteArray::get):
1573         (WebCore::WebGLUnsignedByteArray::item):
1574         * html/canvas/WebGLUnsignedByteArray.idl:
1575         * html/canvas/WebGLUnsignedIntArray.cpp:
1576         (WebCore::WebGLUnsignedIntArray::create):
1577         (WebCore::WebGLUnsignedIntArray::WebGLUnsignedIntArray):
1578         (WebCore::WebGLUnsignedIntArray::length):
1579         (WebCore::WebGLUnsignedIntArray::byteLength):
1580         (WebCore::WebGLUnsignedIntArray::slice):
1581         (WebCore::WebGLUnsignedIntArray::set):
1582         * html/canvas/WebGLUnsignedIntArray.h:
1583         (WebCore::WebGLUnsignedIntArray::isUnsignedIntArray):
1584         (WebCore::WebGLUnsignedIntArray::data):
1585         (WebCore::WebGLUnsignedIntArray::set):
1586         (WebCore::WebGLUnsignedIntArray::get):
1587         (WebCore::WebGLUnsignedIntArray::item):
1588         * html/canvas/WebGLUnsignedIntArray.idl:
1589         * html/canvas/WebGLUnsignedShortArray.cpp:
1590         (WebCore::WebGLUnsignedShortArray::create):
1591         (WebCore::WebGLUnsignedShortArray::WebGLUnsignedShortArray):
1592         (WebCore::WebGLUnsignedShortArray::length):
1593         (WebCore::WebGLUnsignedShortArray::byteLength):
1594         (WebCore::WebGLUnsignedShortArray::slice):
1595         (WebCore::WebGLUnsignedShortArray::set):
1596         * html/canvas/WebGLUnsignedShortArray.h:
1597         (WebCore::WebGLUnsignedShortArray::isUnsignedShortArray):
1598         (WebCore::WebGLUnsignedShortArray::data):
1599         (WebCore::WebGLUnsignedShortArray::set):
1600         (WebCore::WebGLUnsignedShortArray::get):
1601         (WebCore::WebGLUnsignedShortArray::item):
1602         * html/canvas/WebGLUnsignedShortArray.idl:
1603         * platform/graphics/mac/GraphicsContext3DMac.cpp:
1604         (WebCore::GraphicsContext3D::bufferData):
1605         (WebCore::GraphicsContext3D::bufferSubData):
1606
1607 2009-11-16  Alexey Proskuryakov  <ap@apple.com>
1608
1609         Windows build fix.
1610
1611         * platform/network/cf/SocketStreamHandleCFNet.cpp: Declare constants as extern "C".
1612
1613 2009-11-15  Brent Fulgham  <bfulgham@webkit.org>
1614
1615         Reviewed by Oliver Hunt.
1616
1617         Enable support for webkit-box-shadow in Cairo builds.
1618         https://bugs.webkit.org/show_bug.cgi?id=26102.
1619
1620         Covered by existing fast/box-shadow tests.
1621
1622         * platform/graphics/cairo/GraphicsContextCairo.cpp:  Add
1623           support for fillRect shadows.
1624
1625 2009-11-16  Alexey Proskuryakov  <ap@apple.com>
1626
1627         Windows build fix.
1628
1629         * platform/network/cf/SocketStreamHandleCFNet.cpp: Don't try to include a file that's not
1630         in WebKitSupportLibrary.
1631
1632 2009-11-16  Alexey Proskuryakov  <ap@apple.com>
1633
1634         Reviewed by Darin Adler.
1635
1636         https://bugs.webkit.org/show_bug.cgi?id=31494
1637         Add unauthenticated proxy support to SocketStreamHandleCFNet
1638
1639         Cannot be tested in DRT.
1640
1641         * platform/network/cf/SocketStreamHandleCFNet.cpp:
1642         (WebCore::SocketStreamHandle::chooseProxy): Fetch proxy information from OS.
1643         (WebCore::SocketStreamHandle::createStreams): Apply it to the newly created streams.
1644
1645 2009-11-14  Antonio Gomes  <tonikitoo@webkit.org>
1646
1647         Reviewed by Antti Koivisto.
1648
1649         [Qt] Broken back/forward after using ErrorPageExtension to set error page
1650         https://bugs.webkit.org/show_bug.cgi?id=30573
1651
1652         Make FrameLoader::checkLoadCompleteForThisFrame method
1653         to check for any working DocumentLoader instance (through
1654         activeDocumentLoader()) instead of only checking for
1655         'm_provisionalDocumentLoader' in order to decide to if
1656         it is going to reset of not the back and forward history.
1657         after an error page has been loaded.
1658
1659         Test: LayoutTests/fast/history/back-forward-reset-after-error-handling.html
1660
1661         * loader/FrameLoader.cpp:
1662         (WebCore::FrameLoader::checkLoadCompleteForThisFrame):
1663
1664 2009-11-14  Chris Fleizach  <cfleizach@apple.com>
1665
1666         Reviewed by Darin Adler.
1667
1668         Need to implement ARIA role="directory"
1669         https://bugs.webkit.org/show_bug.cgi?id=31516
1670
1671         Test: platform/mac/accessibility/aria-directory.html
1672
1673         * accessibility/AXObjectCache.cpp:
1674         (WebCore::AXObjectCache::getOrCreate):
1675         * accessibility/AccessibilityList.cpp:
1676         (WebCore::AccessibilityList::isOrderedList):
1677         * accessibility/AccessibilityRenderObject.cpp:
1678         (WebCore::createARIARoleMap):
1679
1680 2009-11-15  Dave Tapuska  <dtapuska@rim.com>
1681
1682         Reviewed by George Staikos.
1683         
1684         Compare UChars single unit at a time as opposed to the uint32_t
1685         approach as casting to unaligned addresses may cause a bus failure
1686         on ARMv5 and below. This change replicates the same defines that
1687         exists in AtomicString.cpp
1688
1689         https://bugs.webkit.org/show_bug.cgi?id=31475
1690         
1691         * platform/text/StringHash.h:
1692         (WebCore::StringHash::equal):
1693
1694 2009-11-15  Evan Martin  <evan@chromium.org>
1695
1696         Reviewed by Adam Barth.
1697
1698         Wrap some SVG code in V8DOMWrapper with an ENABLE(SVG) test.
1699
1700         https://bugs.webkit.org/show_bug.cgi?id=31490
1701
1702         * bindings/v8/V8DOMWrapper.cpp:
1703
1704 2009-11-15  Maxime Simon  <simon.maxime@gmail.com>
1705
1706         Reviewed by Adam Barth.
1707
1708         [Haiku] Build fix. The FileChooser constructor doesn't need to be redefined.
1709
1710         * platform/haiku/FileChooserHaiku.cpp:
1711
1712 2009-11-15  Maxime Simon  <simon.maxime@gmail.com>
1713
1714         Reviewed by Adam Barth.
1715
1716         [Haiku] Build fix. ColorSpace name had a wrong CamelCase.
1717
1718         * platform/graphics/haiku/GraphicsContextHaiku.cpp:
1719         (WebCore::GraphicsContext::setPlatformStrokeColor):
1720
1721 2009-11-15  Daniel Bates  <dbates@webkit.org>
1722
1723         No review, rolling out r50999.
1724         http://trac.webkit.org/changeset/50999
1725
1726         Need to fix some issues in the Windows build. Missed some places where
1727         RenderTextControl::isEdited is called.
1728
1729         * bindings/objc/DOMHTML.mm:
1730         (-[DOMHTMLInputElement _isEdited]):
1731         (-[DOMHTMLTextAreaElement _isEdited]):
1732         * dom/Document.cpp:
1733         (WebCore::Document::setFocusedNode):
1734         * html/HTMLInputElement.cpp:
1735         (WebCore::HTMLInputElement::defaultEventHandler):
1736         * rendering/RenderTextControl.cpp:
1737         (WebCore::RenderTextControl::RenderTextControl):
1738         (WebCore::RenderTextControl::setInnerTextValue):
1739         (WebCore::RenderTextControl::setUserEdited):
1740         (WebCore::RenderTextControl::subtreeHasChanged):
1741         * rendering/RenderTextControl.h:
1742         (WebCore::RenderTextControl::isEdited):
1743         (WebCore::RenderTextControl::setEdited):
1744         (WebCore::RenderTextControl::isUserEdited):
1745         * rendering/RenderTextControlSingleLine.cpp:
1746         (WebCore::RenderTextControlSingleLine::subtreeHasChanged):
1747         * wml/WMLInputElement.cpp:
1748         (WebCore::WMLInputElement::defaultEventHandler):
1749
1750 2009-11-15  Daniel Bates  <dbates@webkit.org>
1751
1752         Reviewed by Darin Adler.
1753
1754         https://bugs.webkit.org/show_bug.cgi?id=31186
1755
1756         Renames RenderTextControl::m_edited and RenderTextControl::m_userEdited to
1757         m_wasChangedSinceLastChangeEvent and m_lastChangeWasUserEdit, respectively.
1758         These are more descriptive names so as to clear an ambiguity surrounding
1759         their usage. Also, renames associated setters and getters so that they
1760         coincide with the renamed fields.
1761
1762         No functionality was changed. So, no tests were included.
1763
1764         * bindings/objc/DOMHTML.mm:
1765         (-[DOMHTMLInputElement _isEdited]):
1766         (-[DOMHTMLTextAreaElement _isEdited]):
1767         * dom/Document.cpp:
1768         (WebCore::Document::setFocusedNode):
1769         * html/HTMLInputElement.cpp:
1770         (WebCore::HTMLInputElement::defaultEventHandler):
1771         * rendering/RenderTextControl.cpp:
1772         (WebCore::RenderTextControl::RenderTextControl):
1773         (WebCore::RenderTextControl::setInnerTextValue):
1774         (WebCore::RenderTextControl::setLastChangeWasUserEdit): Formerly named setUserEdited.
1775         (WebCore::RenderTextControl::subtreeHasChanged):
1776         * rendering/RenderTextControl.h:
1777         (WebCore::RenderTextControl::wasChangedSinceLastChangeEvent): Formerly named isEdited.
1778         (WebCore::RenderTextControl::setChangedSinceLastChangeEvent): Formerly named setEdited.
1779         (WebCore::RenderTextControl::lastChangeWasUserEdit): Formerly named setUserEdited.
1780         * rendering/RenderTextControlSingleLine.cpp:
1781         (WebCore::RenderTextControlSingleLine::subtreeHasChanged):
1782         * wml/WMLInputElement.cpp:
1783         (WebCore::WMLInputElement::defaultEventHandler):
1784
1785 2009-11-14  Adele Peterson  <adele@apple.com>
1786
1787         Reviewed by Dan Bernstein.
1788
1789         Fix for <rdar://problem/6946165> Would like to be able to specify the number of visible lines when using -webkit-line-clamp
1790
1791         Test: fast/overflow/line-clamp.html
1792
1793         * css/CSSComputedStyleDeclaration.cpp: (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Updated to handle different types of values.
1794         * css/CSSParser.cpp: (WebCore::CSSParser::parseValue): ditto.
1795         * css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::applyProperty): ditto.
1796
1797         * rendering/RenderFlexibleBox.cpp: (WebCore::RenderFlexibleBox::layoutVerticalBox):
1798         Use the line count value if available.  Otherwise, convert the percentage to the line count, as we did before.  Also,
1799         if there is anchor as the last child box, still allow adding the ellipsis.
1800
1801         * rendering/RenderLayer.cpp:
1802         (WebCore::RenderLayer::scrollByRecursively): Call isNone on the LineClampValue to see if the line-clamp property has been set.
1803         (WebCore::RenderLayer::scrollRectToVisible): ditto.
1804
1805         * WebCore.xcodeproj/project.pbxproj: Added LineClampValue.h
1806         * rendering/style/LineClampValue.h: Added.
1807         (WebCore::LineClampValue::LineClampValue):
1808         (WebCore::LineClampValue::value):
1809         (WebCore::LineClampValue::isPercentage):
1810         (WebCore::LineClampValue::isNone):
1811         (WebCore::LineClampValue::operator==):
1812         (WebCore::LineClampValue::operator!=):
1813         * rendering/style/RenderStyleConstants.h: (WebCore::): Define ELineClampType enum for percentage or line count.
1814
1815         * rendering/style/RenderStyle.h: Use LineClampValue.
1816         (WebCore::InheritedFlags::lineClamp):
1817         (WebCore::InheritedFlags::setLineClamp):
1818         (WebCore::InheritedFlags::initialLineClamp):
1819         * rendering/style/StyleRareNonInheritedData.h:
1820
1821 2009-11-14  Eric Carlson  <eric.carlson@apple.com>
1822
1823         Reviewed by Oliver Hunt.
1824
1825         <rdar://problem/7287487> 
1826         Do not use QuickTime version to detect media controller theme
1827
1828         * WebCore.base.exp: Export wkMediaControllerThemeAvailable
1829         * platform/mac/WebCoreSystemInterface.h: Ditto.
1830         * platform/mac/WebCoreSystemInterface.mm: Ditto.
1831
1832         * rendering/RenderThemeMac.mm:
1833         (WebCore::mediaControllerTheme): Use wkMediaControllerThemeAvailable instead of the
1834         QuickTime version to see if it is possible to use MediaControllerThemeQuickTime.
1835
1836 2009-11-14  Kent Tamura  <tkent@chromium.org>
1837
1838         Reviewed by Darin Adler.
1839
1840         - Recognizes date/datetime/datetime-local/month/time/week types of INPUT element.
1841           They have no dedicated UI and no type validation for now.
1842         - Clean up setInputType() and formControlType() of HTMLInputElement.
1843         https://bugs.webkit.org/show_bug.cgi?id=29004
1844
1845         Test: fast/forms/input-type-change3.html
1846
1847         * html/HTMLInputElement.cpp:
1848         (WebCore::HTMLInputElement::valueMissing):
1849         (WebCore::HTMLInputElement::patternMismatch):
1850         (WebCore::HTMLInputElement::tooLong):
1851         (WebCore::createTypeMap):
1852         (WebCore::HTMLInputElement::setInputType):
1853         (WebCore::createFormControlTypes):
1854         (WebCore::HTMLInputElement::formControlType):
1855         (WebCore::HTMLInputElement::saveFormControlState):
1856         (WebCore::HTMLInputElement::restoreFormControlState):
1857         (WebCore::HTMLInputElement::accessKeyAction):
1858         (WebCore::HTMLInputElement::rendererIsNeeded):
1859         (WebCore::HTMLInputElement::createRenderer):
1860         (WebCore::HTMLInputElement::appendFormData):
1861         (WebCore::HTMLInputElement::isTextField):
1862         (WebCore::HTMLInputElement::valueWithDefault):
1863         (WebCore::HTMLInputElement::storesValueSeparateFromAttribute):
1864         (WebCore::HTMLInputElement::defaultEventHandler):
1865         (WebCore::HTMLInputElement::isRequiredFormControl):
1866         (WebCore::HTMLInputElement::dataList):
1867         * html/HTMLInputElement.h:
1868         (WebCore::HTMLInputElement::):
1869
1870 2009-11-13  Chris Fleizach  <cfleizach@apple.com>
1871
1872         Reviewed by Darin Adler.
1873
1874         WAI-ARIA: checkbox does not determine its label from text content
1875         https://bugs.webkit.org/show_bug.cgi?id=31456
1876
1877         Test: accessibility/aria-checkbox-text.html
1878
1879         * accessibility/AccessibilityRenderObject.cpp:
1880         (WebCore::AccessibilityRenderObject::title):
1881
1882 2009-11-13  Dimitri Glazkov  <dglazkov@chromium.org>
1883
1884         Unreviewed, build fix.
1885
1886         [Chromium] Fix build to catch up with http://trac.webkit.org/changeset/50973.
1887         This is just enough changes to unbreak the port.
1888
1889         * bindings/v8/ScriptController.cpp:
1890         (WebCore::mainThreadNormalWorld):
1891         * bindings/v8/V8Proxy.cpp:
1892         (WebCore::V8Proxy::initContextIfNeeded):
1893         * loader/FrameLoaderClient.h:
1894
1895 2009-11-13  Aaron Boodman  <aa@chromium.org>
1896
1897         Unreviewed fix for Chromium build.
1898
1899         * loader/FrameLoaderClient.h:
1900         (WebCore::FrameLoaderClient::dispatchDidClearWindowObjectInWorld):
1901         Provide an empty implementation of this method because I don't know
1902         what it is supposed to do on Chromium.
1903
1904 2009-11-13  Aaron Boodman  <aa@chromium.org>
1905
1906         Unreviewed fix for Chromium build.
1907
1908         * loader/FrameLoader.h: Make dispatchDidClearWindowObjectsInAllWorlds()
1909         public, as Chromium's V8Proxy calls it.
1910
1911 2009-11-13  Aaron Boodman  <aa@chromium.org>
1912
1913         Unreviewed fix to Chromium build.
1914
1915         * bindings/v8/ScriptController.cpp:
1916         (WebCore::ScriptController::getAllWorlds): 
1917
1918 2009-11-13  Aaron Boodman  <aa@chromium.org>
1919
1920         Unreviewed fix for Chromium build.
1921
1922         * platform/text/TextBoundaries.cpp: Use longer path to refer to Unicode.h.
1923
1924 2009-11-13  Adam Barth  <abarth@webkit.org>
1925
1926         Unreviewed partial build fix for Chromium.  Should fix failure #4.
1927
1928         * bindings/v8/ScriptController.cpp:
1929         (WebCore::ScriptController::getAllWorlds):
1930         * bindings/v8/ScriptController.h:
1931         * bindings/v8/V8Proxy.cpp:
1932         (WebCore::V8Proxy::initContextIfNeeded):
1933
1934 2009-11-13  Adam Barth  <abarth@webkit.org>
1935
1936         Unreviewed partial build fix for Chromium.
1937
1938         * bindings/v8/ScriptController.h:
1939         (WebCore::ScriptController::getAllWorlds):
1940
1941 2009-11-13  Eric Seidel  <eric@webkit.org>
1942
1943         No review, build fix only.
1944
1945         Fix Windows and Chromium builds after http://trac.webkit.org/changeset/50977.
1946
1947         Unify TextBoundaries implementations by only relying on WTF Unicode abstractions
1948         https://bugs.webkit.org/show_bug.cgi?id=31468
1949
1950         * WebCore.gypi: Rename TextBoundariesICU -> TextBoundaries
1951         * WebCore.vcproj/WebCore.vcproj: Rename TextBoundariesICU -> TextBoundaries
1952
1953 2009-11-12  Jeremy Orlow  <jorlow@chromium.org>
1954
1955         Reviewed by Dmitry Titov.
1956
1957         LocalStorage quota should include key sizes in its count
1958         https://bugs.webkit.org/show_bug.cgi?id=31451
1959
1960         * storage/StorageMap.cpp:
1961         (WebCore::StorageMap::setItem):
1962             Count keys in the quota when adding a new item.
1963         (WebCore::StorageMap::removeItem):
1964             Remove the key's length from the quota if we're removing the item.
1965         (WebCore::StorageMap::importItem):
1966             Assume that we're adding things for the first time.
1967             Count keys in the quota.
1968
1969 2009-11-13  Dominik Röttsches  <dominik.roettsches@access-company.com>
1970
1971         Reviewed by Eric Seidel.
1972
1973         Unify TextBoundaries implementations by only relying on WTF Unicode abstractions
1974         https://bugs.webkit.org/show_bug.cgi?id=31468
1975
1976         Moving TextBoundariesICU.cpp to TextBoundaries.cpp
1977         by removing the direct ICU dependency and replacing it
1978         with WTF functions and WebCore's own TextBreakIterator
1979         abstractions.
1980
1981         * GNUmakefile.am:
1982         * platform/graphics/gtk/SimpleFontDataGtk.cpp:
1983         * platform/text/TextBoundaries.cpp: Added.
1984         (WebCore::findNextWordFromIndex):
1985         (WebCore::findWordBoundary):
1986         * platform/text/TextBoundariesICU.cpp: Removed.
1987         * platform/text/TextBreakIterator.h:
1988         * platform/text/TextBreakIteratorICU.cpp:
1989         (WebCore::textBreakLast):
1990         (WebCore::textBreakPrevious):
1991
1992 2009-11-13  Shinichiro Hamaji  <hamaji@chromium.org>
1993
1994         Reviewed by Darin Adler.
1995
1996         WebCore::externalRepresentation should update layout before getting render object
1997         https://bugs.webkit.org/show_bug.cgi?id=31459
1998
1999         * rendering/RenderTreeAsText.cpp:
2000         (WebCore::externalRepresentation):
2001
2002 2009-11-13  Adam Roben  <aroben@apple.com>
2003
2004         Tell FrameLoaderClient when window objects in isolated worlds are
2005         cleared
2006
2007         Fixes <http://webkit.org/b/31124> Tell the WebFrameLoadDelegate when
2008         window objects in isolated worlds are cleared
2009
2010         Test: http/tests/security/isolatedWorld/didClearWindowObject.html
2011
2012         Reviewed by Dave Hyatt.
2013
2014         * bindings/js/JSDOMBinding.h:
2015         (WebCore::WebCoreJSClientData::getAllWorlds): Added. Copies all the
2016         worlds in m_worldSet to the passed-in Vector.
2017
2018         * bindings/js/ScriptController.cpp:
2019         (WebCore::ScriptController::getAllWorlds): Added. Calls through to
2020         WebCoreJSClientData.
2021         (WebCore::ScriptController::initScript): Changed to call
2022         FrameLoader::dispatchDidClearWindowObjectInWorld.
2023
2024         * bindings/js/ScriptController.h: Added getAllWorlds.
2025
2026         * loader/EmptyClients.h:
2027         (WebCore::EmptyFrameLoaderClient::dispatchDidClearWindowObjectInWorld):
2028         Updated for FrameLoaderClient change.
2029
2030         * loader/FrameLoader.cpp:
2031         (WebCore::FrameLoader::receivedFirstData):
2032         (WebCore::FrameLoader::begin):
2033         Changed to call dispatchDidClearWindowObjectsInAllWorlds.
2034
2035         (WebCore::FrameLoader::dispatchDidClearWindowObjectsInAllWorlds):
2036         Added. Retrieves all the worlds, then calls through to
2037         dispatchDidClearWindowObjectInWorld for each one.
2038         (WebCore::FrameLoader::dispatchDidClearWindowObjectInWorld): Replaces
2039         dispatchWindowObjectAvailable. Calls up to the client, then, if the
2040         world is the mainThreadNormalWorld(), tells the Inspector about it,
2041         too.
2042
2043         * loader/FrameLoader.h: Replaced dispatchWindowObjectAvailable with
2044         dispatchDidClearWindowObjectInWorld. Added
2045         dispatchDidClearWindowObjectsInAllWorlds.
2046
2047         * loader/FrameLoaderClient.h: Replaced windowObjectCleared with
2048         dispatchDidClearWindowObjectForWorld.
2049
2050 2009-11-13  Vitaly Repeshko  <vitalyr@chromium.org>
2051
2052         Reviewed by Dimitri Glazkov.
2053
2054         [V8] Fix SVG context assignment for pod types.
2055         https://bugs.webkit.org/show_bug.cgi?id=31497
2056
2057         I broke this in r50958.
2058
2059         Tested by svg/custom/viewport-update2.svg.
2060
2061         * bindings/scripts/CodeGeneratorV8.pm:
2062
2063 2009-11-13  Andrei Popescu  <andreip@google.com>
2064
2065         Reviewed by Dmitry Titov.
2066
2067         Bring the platform/android files inline with Android 2.0
2068         https://bugs.webkit.org/show_bug.cgi?id=31423
2069
2070         No new tests required: these are all Android-specific files.
2071
2072         * platform/android/ClipboardAndroid.cpp:
2073         (WebCore::ClipboardAndroid::files):
2074         * platform/android/ClipboardAndroid.h:
2075         * platform/android/FileChooserAndroid.cpp:
2076         (WebCore::FileChooser::basenameForWidth):
2077         (WebCore::fileButtonChooseFileLabel):
2078         * platform/android/KeyEventAndroid.cpp:
2079         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
2080         * platform/android/LocalizedStringsAndroid.cpp:
2081         (WebCore::contextMenuItemTagOpenLinkInNewWindow):
2082         (WebCore::contextMenuItemTagDownloadLinkToDisk):
2083         (WebCore::contextMenuItemTagCopyLinkToClipboard):
2084         (WebCore::contextMenuItemTagOpenImageInNewWindow):
2085         (WebCore::contextMenuItemTagDownloadImageToDisk):
2086         (WebCore::contextMenuItemTagCopyImageToClipboard):
2087         (WebCore::contextMenuItemTagOpenFrameInNewWindow):
2088         (WebCore::contextMenuItemTagCopy):
2089         (WebCore::contextMenuItemTagGoBack):
2090         (WebCore::contextMenuItemTagGoForward):
2091         (WebCore::contextMenuItemTagStop):
2092         (WebCore::contextMenuItemTagReload):
2093         (WebCore::contextMenuItemTagCut):
2094         (WebCore::contextMenuItemTagPaste):
2095         (WebCore::contextMenuItemTagNoGuessesFound):
2096         (WebCore::contextMenuItemTagIgnoreSpelling):
2097         (WebCore::contextMenuItemTagLearnSpelling):
2098         (WebCore::contextMenuItemTagSearchWeb):
2099         (WebCore::contextMenuItemTagLookUpInDictionary):
2100         (WebCore::contextMenuItemTagOpenLink):
2101         (WebCore::contextMenuItemTagIgnoreGrammar):
2102         (WebCore::contextMenuItemTagSpellingMenu):
2103         (WebCore::contextMenuItemTagShowSpellingPanel):
2104         (WebCore::contextMenuItemTagCheckSpelling):
2105         (WebCore::contextMenuItemTagCheckSpellingWhileTyping):
2106         (WebCore::contextMenuItemTagCheckGrammarWithSpelling):
2107         (WebCore::contextMenuItemTagFontMenu):
2108         (WebCore::contextMenuItemTagBold):
2109         (WebCore::contextMenuItemTagItalic):
2110         (WebCore::contextMenuItemTagUnderline):
2111         (WebCore::contextMenuItemTagOutline):
2112         (WebCore::contextMenuItemTagWritingDirectionMenu):
2113         (WebCore::contextMenuItemTagTextDirectionMenu):
2114         (WebCore::contextMenuItemTagDefaultDirection):
2115         (WebCore::contextMenuItemTagLeftToRight):
2116         (WebCore::contextMenuItemTagRightToLeft):
2117         (WebCore::mediaElementLoadingStateText):
2118         (WebCore::mediaElementLiveBroadcastStateText):
2119         (WebCore::searchableIndexIntroduction):
2120         (WebCore::resetButtonDefaultLabel):
2121         (WebCore::submitButtonDefaultLabel):
2122         (WebCore::inputElementAltText):
2123         * platform/android/RenderThemeAndroid.cpp:
2124         (WebCore::RenderTheme::themeForPage):
2125         (WebCore::RenderThemeAndroid::baselinePosition):
2126         (WebCore::RenderThemeAndroid::paintButton):
2127         (WebCore::adjustMenuListStyleCommon):
2128         (WebCore::RenderThemeAndroid::paintCombo):
2129         * platform/android/ScreenAndroid.cpp:
2130         * platform/android/ScrollViewAndroid.cpp:
2131         (WebCore::ScrollView::platformOffscreenContentRectangle):
2132         * platform/android/TemporaryLinkStubs.cpp:
2133         (JSC::Bindings::dispatchJNICall):
2134         * platform/android/WidgetAndroid.cpp:
2135         (WebCore::Widget::setFrameRect):
2136
2137 2009-11-13  Norbert Leser  <norbert.leser&nokia.com>
2138
2139         Reviewed by Eric Seidel.
2140
2141         Added macros for USERINCLUDE paths within symbian blocks
2142         to guarantee inclusion of respective header files from local path
2143         first (to avoid clashes with same names of header files in system include path).
2144
2145         * WebCore.pro:
2146
2147 2009-11-13  Hironori Bono  <hbono@chromium.org>
2148
2149         Reviewed by Oliver Hunt.
2150
2151         Implement composition events introduced in DOM Level 3.
2152         This change adds a new IDL which defines the composition events, adds a class which
2153         implements the composition events, and sends the composition events according to
2154         the specification.
2155         https://bugs.webkit.org/show_bug.cgi?id=26310
2156
2157         Test: fast/events/ime-composition-events-001.html
2158
2159         * DerivedSources.make: Added CompositionEvent so we can compile "CompositionEvent.idl".
2160         * GNUmakefile.am: Added "CompositionEvent.{cpp,h,idl}".
2161         * WebCore.gypi: ditto.
2162         * WebCore.pro: ditto
2163         * WebCore.vcproj/WebCore.vcproj: ditto.
2164         * WebCore.xcodeproj/project.pbxproj: Added "CompositionEvent.{cpp,h,idl}" and "JSCompositionEvent.{cpp,h}".
2165         * WebCoreSources.bkl: Added "JSCompositionEvent.{cpp,h}".
2166         * bindings/js/JSEventCustom.cpp:
2167         (WebCore::toJS): Call isCompositionEvent() to create the CompositionEvent wrapper.
2168         * bindings/v8/DOMObjectsInclude.h: Added "JSCompositionEvent.h".
2169         * bindings/v8/DerivedSourcesAllInOne.cpp: Added "JSCompositionEvent.cpp".
2170         * bindings/v8/V8DOMWrapper.cpp: Call isCompositionEvent() to identify an event as a CompositionEvent.
2171         (WebCore::V8DOMWrapper::convertEventToV8Object):
2172         * bindings/v8/V8Index.cpp: Added "V8CompositionEvent.h".
2173         * bindings/v8/V8Index.h: Added V8Index::COMPOSITIONEVENT.
2174         * dom/CompositionEvent.cpp: Implements the CompositionEvent class.
2175         (WebCore::CompositionEvent::CompositionEvent):
2176         (WebCore::CompositionEvent::~CompositionEvent):
2177         (WebCore::CompositionEvent::initCompositionEvent):
2178         (WebCore::CompositionEvent::isCompositionEvent):
2179         * dom/CompositionEvent.h: Declares the CompositionEvent class.
2180         (WebCore::CompositionEvent::create):
2181         (WebCore::CompositionEvent::data):
2182         * dom/CompositionEvent.idl: Added the IDL of DOM CompositionEvent.
2183         * dom/Event.cpp:
2184         (WebCore::Event::isCompositionEvent): Added a method to identify an event is a CompositionEvent.
2185         * dom/Event.h:
2186         * dom/EventNames.h: Added composition{start,update,end} to eventNames.
2187         * editing/Editor.cpp:
2188         (WebCore::Editor::confirmComposition): Sent a CompositionEnd event.
2189         (WebCore::Editor::setComposition): Sent a Composition{Start,Update,End} event.
2190
2191 2009-11-13  Jens Alfke  <snej@chromium.org>
2192
2193         Reviewed by Dimitri Glazkov.
2194
2195         Fix a link error in unofficial GCC 4.4 builds on Linux.
2196         https://bugs.webkit.org/show_bug.cgi?id=31477
2197
2198         * bindings/v8/V8Binding.cpp:  Add explicit instantiations of v8StringToWebCoreString template.
2199
2200 2009-11-13  Eric Seidel  <eric@webkit.org>
2201
2202         No review, build fix only.
2203
2204         Fix Debug build after http://trac.webkit.org/changeset/50960.
2205
2206         The CounterNode class does not support all methods necessary to efficiently update the counter tree as needed per CSS2.1
2207         https://bugs.webkit.org/show_bug.cgi?id=31213
2208
2209         * rendering/CounterNode.cpp:
2210         (WebCore::showTreeAndMark):
2211         * rendering/RenderCounter.cpp:
2212         (WebCore::destroyCounterNodeChildren):
2213
2214 2009-11-13  Dirk Schulze  <krit@webkit.org>
2215
2216         Reviewed by Gustavo Noronha.
2217
2218         [CAIRO] shadow support for Canvas and SVG
2219         [https://bugs.webkit.org/show_bug.cgi?id=30960]
2220
2221         We currently fill a path with solid color instead of filling
2222         a clipping path. This causes problems on some composite operators,
2223         since Cairo modifies the area outside the path.
2224         This fixes the behavior of WebKitGtk on fast/canvas/canvas-composite-alpha.html
2225
2226         Thanks to Benjamin Otte for tracking the bug down.
2227
2228         * platform/graphics/cairo/GraphicsContextCairo.cpp:
2229         (WebCore::setPlatformFill):
2230
2231 2009-11-12  Dumitru Daniliuc  <dumi@chromium.org>
2232
2233         Reviewed by Dimitri Glazkov.
2234
2235         Adding Chromium's DatabaseTracker implementation.
2236
2237         https://bugs.webkit.org/show_bug.cgi?id=31440
2238
2239         * WebCore.gyp/WebCore.gyp:
2240         * WebCore.gypi:
2241         * storage/DatabaseTracker.h:
2242         * storage/chromium/DatabaseTrackerChromium.cpp:
2243         (WebCore::DatabaseTracker::fullPathForDatabase):
2244         (WebCore::DatabaseTracker::getMaxSizeForDatabase):
2245         * storage/chromium/QuotaTracker.cpp:
2246         (WebCore::QuotaTracker::updateDatabaseSize):
2247         * storage/chromium/QuotaTracker.h:
2248
2249 2009-11-13  Carol Szabo  <carol.szabo@nokia.com>
2250
2251         Reviewed by Darin Adler.
2252
2253         The CounterNode class is missing some basic tree navigation methods common in other WebKit trees such as the rendering tree
2254         https://bugs.webkit.org/show_bug.cgi?id=31213
2255         Added tree navigation methods that permit full implementation of CSS2.1
2256         counter feature without using recursion proportional to the counter
2257         tree depth.
2258         No new tests because I did not find any bug that is fixed by this
2259         commit yet, this just reduces the size of the patch for 11031 and
2260         helps respond to some concerns regarding that patch.
2261
2262         * rendering/CounterNode.cpp:
2263         (WebCore::CounterNode::CounterNode):
2264
2265         (WebCore::CounterNode::nextInPreOrderAfterChildren):
2266         (WebCore::CounterNode::nextInPreOrder):
2267         Added to support non-recursive tree traversal necessary for
2268         efficient full implementation of CSS2.1 counters.
2269
2270         (WebCore::CounterNode::lastDescendant):
2271         (WebCore::CounterNode::previousInPreOrder):
2272         Moved this methods such that they occupy a place similar to that of
2273         identically named methods on the render tree. This allows for their
2274         broader use needed in full implementation of CSS2.1 counters.
2275
2276         (WebCore::CounterNode::resetRenderer):
2277         (WebCore::CounterNode::resetRenderers):
2278         (WebCore::CounterNode::recount):
2279         (WebCore::CounterNode::insertAfter):
2280         (WebCore::CounterNode::removeChild):
2281         Changed such that insertion/removal of a counter, triggers not only
2282         recalculation of PrefixWidths, but also reassesment of values in
2283         counter nodes. This is the basis full implementation of CSS2.1
2284         counters. It does not change current behavior by much because of
2285         changes needed to the recalculation algorithm, but those are comming
2286         in the patch for 11031.
2287         (WebCore::showTreeAndMark):
2288         * rendering/CounterNode.h:
2289         * rendering/RenderCounter.cpp:
2290         (WebCore::counter):
2291         Only changed argument type to prepare for implementation of Darin
2292         Adler's recommendation for the patch to 11031.
2293
2294         (WebCore::RenderCounter::invalidate):
2295         (WebCore::destroyCounterNodeChildren):
2296         (WebCore::RenderCounter::destroyCounterNodes):
2297         * rendering/RenderCounter.h:
2298         * rendering/RenderObjectChildList.cpp:
2299         (WebCore::invalidateCountersInContainer):
2300         (WebCore::RenderObjectChildList::invalidateCounters):
2301         * rendering/RenderObjectChildList.h:
2302         Added the ability to restrict invalidation to counters with a given
2303         identifier.
2304         Also invalidated counters that are on the child container itself
2305         which were missed by the previous algorithm, but were a valid case.
2306
2307 2009-11-13  Vitaly Repeshko  <vitalyr@chromium.org>
2308
2309         Reviewed by Dimitri Glazkov.
2310
2311         [V8] Protect SVG animated properties from destruction in bindings.
2312         https://bugs.webkit.org/show_bug.cgi?id=31474
2313
2314         See http://crbug.com/26719.
2315
2316         Tested by LayoutTests/svg/custom/js-update-transform-addition.svg
2317         under Valgrind.
2318
2319         Made sure we keep a reference to SVG properties while setting a
2320         context:
2321         * bindings/scripts/CodeGeneratorV8.pm:
2322         * bindings/v8/V8Proxy.h:
2323         (WebCore::V8Proxy::withSVGContext):
2324
2325 2009-11-13  Brent Fulgham  <bfulgham@webkit.org>
2326
2327         Reviewed by Alexey Proskuryakov.
2328
2329         [CAIRO] shadow support for Canvas and SVG.
2330         [https://bugs.webkit.org/show_bug.cgi?id=30960]
2331
2332         Incorporate Benjamin Otte's recommendations to avoid
2333         a buffer overrun, and small performance improvement.
2334
2335         * platform/graphics/cairo/GraphicsContextCairo.cpp:
2336         (WebCore::copyContextProperties): Correctly size output
2337          storage for cairo_get_dash to avoid buffer overrun.
2338         (WebCore::drawPathShadow): Prefer cairo_fill_extents
2339          to slower cairo_stroke_extents when not drawing shadows.
2340
2341 2009-11-13  Dumitru Daniliuc  <dumi@chromium.org>
2342
2343         Reviewed by Dimitri Glazkov.
2344
2345         Do not register Chromium's HTML5 DB VFS as the default
2346         VFS. Otherwise, other sqlite DB users in the same process will
2347         stop working.
2348
2349         https://bugs.webkit.org/show_bug.cgi?id=31462
2350
2351         * platform/sql/chromium/SQLiteFileSystemChromium.cpp:
2352         (WebCore::SQLiteFileSystem::openDatabase):
2353         * platform/sql/chromium/SQLiteFileSystemChromiumPosix.cpp:
2354         (WebCore::SQLiteFileSystem::registerSQLiteVFS):
2355         * platform/sql/chromium/SQLiteFileSystemChromiumWin.cpp:
2356         (WebCore::SQLiteFileSystem::registerSQLiteVFS):
2357
2358 2009-11-13  Alexey Proskuryakov  <ap@apple.com>
2359
2360         Windows build fix
2361
2362         * platform/network/cf/SocketStreamHandleCFNet.cpp:
2363         (WebCore::SocketStreamHandle::SocketStreamHandle): Explicitly cast "-1" to CFOptionFlags,
2364         avoiding a sign mismatch warning.
2365
2366 2009-11-13  Alexey Proskuryakov  <ap@apple.com>
2367
2368         Release build fix.
2369
2370         * platform/network/cf/SocketStreamHandleCFNet.cpp:
2371         (WebCore::SocketStreamHandle::readStreamCallback):
2372         (WebCore::SocketStreamHandle::writeStreamCallback):
2373         Use ASSERT_UNUSED for unused stream parameter.
2374
2375 2009-11-12  Alexey Proskuryakov  <ap@apple.com>
2376
2377         Reviewed by Darin Adler.
2378
2379         https://bugs.webkit.org/show_bug.cgi?id=31441
2380         Implement SocketStreamHandleCFNet
2381
2382         Existing WebSocket tests now pass on Mac. No proxy support yet.
2383
2384         * platform/network/SocketStreamHandleClient.h:
2385         * platform/network/cf/SocketStreamHandle.h:
2386         (WebCore::SocketStreamHandle::shouldUseSSL):
2387         (WebCore::SocketStreamHandle::refAuthenticationClient):
2388         (WebCore::SocketStreamHandle::derefAuthenticationClient):
2389         (WebCore::SocketStreamHandle::):
2390         * platform/network/cf/SocketStreamHandleCFNet.cpp:
2391         (WebCore::SocketStreamHandle::SocketStreamHandle):
2392         (WebCore::SocketStreamHandle::chooseProxy):
2393         (WebCore::SocketStreamHandle::createStreams):
2394         (WebCore::SocketStreamHandle::copyCFStreamDescription):
2395         (WebCore::SocketStreamHandle::readStreamCallback):
2396         (WebCore::SocketStreamHandle::writeStreamCallback):
2397         (WebCore::SocketStreamHandle::~SocketStreamHandle):
2398         (WebCore::SocketStreamHandle::platformSend):
2399         (WebCore::SocketStreamHandle::platformClose):
2400         (WebCore::SocketStreamHandle::receivedCredential):
2401         (WebCore::SocketStreamHandle::receivedRequestToContinueWithoutCredential):
2402         (WebCore::SocketStreamHandle::receivedCancellation):
2403
2404 2009-11-12  Pavel Feldman  <pfeldman@chromium.org>
2405
2406         Reviewed by Timothy Hatcher.
2407
2408         Web Inspector: preload status bar button glyphs
2409         in order to prevent them from flickering (take 2).
2410
2411         https://bugs.webkit.org/show_bug.cgi?id=31439
2412
2413         * inspector/front-end/inspector.js:
2414         (preloadImages):
2415
2416 2009-11-13  Pavel Feldman  <pfeldman@chromium.org>
2417
2418         Reviewed by Adam Barth.
2419
2420         Chromium: [REGRESSION] Crash while stopping on a breakpoint.
2421         Rolling back r50890.
2422
2423         https://bugs.webkit.org/show_bug.cgi?id=31467
2424
2425         * bindings/v8/V8Proxy.cpp:
2426         (WebCore::V8Proxy::canAccessPrivate):
2427
2428 2009-11-13  Dirk Schulze  <krit@webkit.org>
2429
2430         Reviewed by Gustavo Noronha.
2431
2432         [CAIRO] shadow support for Canvas and SVG
2433         [https://bugs.webkit.org/show_bug.cgi?id=30960]
2434         
2435         This is the fix of a regression, caused by the shadow patch
2436         from the bug above. Reinserted the save and restore calls
2437         that were accidently removed by the previous patch.
2438
2439         * platform/graphics/cairo/GraphicsContextCairo.cpp:
2440         (WebCore::setPlatformFill):
2441         (WebCore::setPlatformStroke):
2442
2443 2009-11-13  Pavel Feldman  <pfeldman@chromium.org>
2444
2445         Not reviewed. Reverting r50908 since it makes inspector tests
2446         time out.
2447
2448         https://bugs.webkit.org/show_bug.cgi?id=31439
2449
2450         * inspector/front-end/inspector.js:
2451
2452 2009-11-13  Mikhail Naganov  <mnaganov@chromium.org>
2453
2454         Reviewed by Timothy Hatcher.
2455
2456         Enable 'console.profile()' and 'console.profileEnd()'
2457         regardless of JAVASCRIPT_DEBUGGER.
2458
2459         https://bugs.webkit.org/show_bug.cgi?id=31293
2460
2461         * WebCore.gypi:
2462         * bindings/js/JSConsoleCustom.cpp:
2463         (WebCore::JSConsole::profile):
2464         (WebCore::JSConsole::profileEnd):
2465         * bindings/v8/custom/V8ConsoleCustom.cpp: Added.
2466         (WebCore::CALLBACK_FUNC_DECL):
2467         * bindings/v8/custom/V8CustomBinding.h:
2468         * page/Console.idl:
2469
2470 2009-11-12  David Levin  <levin@chromium.org>
2471
2472         Reviewed by NOBODY.
2473
2474         Chromium build fix.
2475
2476         * bindings/v8/ScriptController.h:
2477         (WebCore::ScriptController::evaluateInWorld): Add a dummy
2478          method which isn't called in chromium to make things compile.
2479
2480 2009-11-12  Anantanarayanan G Iyengar  <ananta@chromium.org>
2481
2482         Reviewed by Adam Barth.
2483         
2484         The document-open.html test was flaky at times. The test invokes the layout test plugin
2485         which in its destroy stream handler opens a new document. This basically tears down the
2486         stream and the associated plugin instance, which causes a crash when the plugin stream
2487         dereferences an invalid m_client pointer which points to the PluginView instance which
2488         is invalid at this time. Fix is to set the m_client pointer to NULL in the stop function
2489         and check for the same.
2490        
2491         https://bugs.webkit.org/show_bug.cgi?id=31067
2492
2493         * plugins/PluginStream.cpp:
2494         (WebCore::PluginStream::stop):
2495         (WebCore::PluginStream::destroyStream):
2496
2497 2009-11-12  Dumitru Daniliuc  <dumi@chromium.org>
2498
2499         Reviewed by Dimitri Glazkov.
2500
2501         Renaming some parameters passed to DB-related methods to better
2502         indicate their purpose.
2503
2504         https://bugs.webkit.org/show_bug.cgi?id=31449
2505
2506         * platform/chromium/ChromiumBridge.h:
2507
2508 2009-11-12  Simon Fraser  <simon.fraser@apple.com>
2509
2510         Reviewed by Dan Bernstein.
2511
2512         Transformed reflected elements are clipped inside element with opacity
2513         https://bugs.webkit.org/show_bug.cgi?id=30957
2514         
2515         transparencyClipBox() attemped to minimize the size of the transparency layer by mapping
2516         each clip rect into painting space before taking the unions. This, however, did not work
2517         correctly with combinations of reflections and transforms. Fixed by unioning the
2518         clipRect and mapping through transforms along the way.
2519         
2520         Also leave some #ifdeffed code in beginTransparencyLayers() that makes it easy to see
2521         where the transparency layers are.
2522
2523         Test: fast/reflections/opacity-reflection-transform.html
2524
2525         * rendering/RenderLayer.cpp:
2526         (WebCore::expandClipRectForDescendantsAndReflection):
2527         (WebCore::transparencyClipBox):
2528         (WebCore::RenderLayer::beginTransparencyLayers):
2529
2530 2009-11-12  Adam Barth  <abarth@webkit.org>
2531
2532         Reviewed by Darin Fisher.
2533
2534         Improve SecurityOrigin::toString comment
2535         https://bugs.webkit.org/show_bug.cgi?id=31041
2536
2537         * page/SecurityOrigin.h:
2538
2539 2009-11-12  Shinichiro Hamaji  <hamaji@chromium.org>
2540
2541         Reviewed by Darin Adler.
2542
2543         externalRepresentation should take Frame as the argument
2544         https://bugs.webkit.org/show_bug.cgi?id=31393
2545
2546         No new tests as this is just a refactoring.
2547
2548         * WebCore.base.exp:
2549         * rendering/RenderTreeAsText.cpp:
2550         (WebCore::externalRepresentation):
2551         * rendering/RenderTreeAsText.h:
2552
2553 2009-11-12  Ben Murdoch  <benm@google.com>
2554
2555         Reviewed by Dimitri Glazkov.
2556
2557         [Android] The Android specific files in page/Android are out of date.
2558         https://bugs.webkit.org/show_bug.cgi?id=31437
2559
2560         No tests required.
2561
2562         * page/android/DragControllerAndroid.cpp:
2563         (WebCore::DragController::dragOperation): Added.
2564         (WebCore::DragController::cleanupAfterSystemDrag):
2565         * page/android/EventHandlerAndroid.cpp:
2566         (WebCore::EventHandler::accessKeyModifiers): Added.
2567         * page/android/InspectorControllerAndroid.cpp: Removed.
2568
2569 2009-11-12  Brent Fulgham  <bfulgham@webkit.org>
2570
2571         Reviewed by Simon Fraser.
2572
2573         [CAIRO] shadow support for Canvas and SVG.
2574         [https://bugs.webkit.org/show_bug.cgi?id=30960]
2575
2576         Implement Canvas/SVG shadow support for Cairo.  This patch
2577         uses the filter code from SVG Filters.  That means that it is
2578         necessary to activate filters to see the shadows.
2579
2580         Test: fast/canvas/canvas-shadow.html
2581
2582         * GNUmakefile.am:
2583         * WebCore.vcproj/WebCore.vcproj: Add new ImageBufferFilter files.
2584         * platform/graphics/GraphicsContext.h:
2585         * platform/graphics/cairo/GraphicsContextCairo.cpp:
2586         (GraphicsContext::calculateShadowBufferDimensions): New helper routine.
2587         (WebCore::setPlatformFill):
2588         (WebCore::setPlatformStroke):
2589         (WebCore::copyContextProperties):
2590         (WebCore::drawPathShadow):
2591         (WebCore::GraphicsContext::fillPath):
2592         (WebCore::GraphicsContext::strokePath):
2593         (WebCore::GraphicsContext::drawPath):
2594         (WebCore::GraphicsContext::setPlatformShadow):
2595         (WebCore::GraphicsContext::createPlatformShadow):
2596         * platform/graphics/cairo/ImageCairo.cpp:
2597         (WebCore::BitmapImage::draw): Add filter effect.
2598         * platform/graphics/filters/Filter.h: Correct 'const' signatures.
2599         * platform/graphics/filters/ImageBufferFilter.cpp: Added.
2600         * platform/graphics/filters/ImageBufferFilter.h: Added.
2601         * svg/graphics/filters/SVGFilter.cpp: Correct 'const' signatures.
2602         * svg/graphics/filters/SVGFilter.h: Correct 'const' signatures.
2603
2604 2009-11-12  Dmitry Titov  <dimich@chromium.org>
2605
2606         Reviewed by Alexey Proskuryakov.
2607
2608         Add postTaskToMainThread to ScriptExecutionContext.
2609         Move the code to post task to the main thread into a new method on ScriptExecutionContext,
2610         to use as a helper implementation of the virtual ScriptExecutionContext::postTask(Task) in
2611         contexts that live on the main thread.
2612         https://bugs.webkit.org/show_bug.cgi?id=31427
2613
2614         No new tests - simply moving the code.
2615
2616         * dom/Document.cpp:
2617         (WebCore::Document::postTask):
2618         * dom/ScriptExecutionContext.cpp:
2619         (WebCore::ScriptExecutionContextTaskTimer::ScriptExecutionContextTaskTimer):
2620         (WebCore::ScriptExecutionContextTaskTimer::fired):
2621         (WebCore::PerformTaskData::PerformTaskData):
2622         (WebCore::PerformTaskData::performTask):
2623         (WebCore::ScriptExecutionContext::postTaskToMainThread):
2624         * dom/ScriptExecutionContext.h:
2625
2626 2009-11-12  Simon Fraser  <simon.fraser@apple.com>
2627
2628         Reviewed by Darin Adler.
2629
2630         Fix crash when removing compositing layers when GC is enabled
2631         https://bugs.webkit.org/show_bug.cgi?id=31429
2632
2633         Workaround <rdar://problem/7390716> by special-casing the removal
2634         of all sublayers when GC is enabled.
2635
2636         * platform/graphics/mac/GraphicsLayerCA.mm:
2637         (WebCore::safeSetSublayers):
2638         (WebCore::GraphicsLayerCA::updateSublayerList):
2639         (WebCore::GraphicsLayerCA::swapFromOrToTiledLayer):
2640
2641 2009-11-12  Jens Alfke  <snej@chromium.org>
2642
2643         Reviewed by Dimitri Glazkov.
2644
2645         The last of the V8 binding optimizations.
2646         - Replace string-valued element accessors with a shared getter/setter function.
2647         - Change error handling flow of control to avoid extra branches and function calls.
2648         https://bugs.webkit.org/show_bug.cgi?id=31443
2649         
2650         * bindings/scripts/CodeGeneratorV8.pm:
2651         * bindings/v8/V8Binding.cpp:
2652         (WebCore::getElementStringAttr):  Body of string-valued Element getter function.
2653         (WebCore::setElementStringAttr):  Body of string-valued Element setter function.
2654         * bindings/v8/V8Binding.h:
2655
2656 2009-11-12  Sam Weinig  <sam@webkit.org>
2657
2658         Reviewed by Oliver Hunt.
2659
2660         Fix for <rdar://problem/7267951>
2661         Canvas methods should reject uses of NaN and Infinity.
2662
2663         Test: fast/canvas/canvas-with-illegal-args.html
2664
2665         * html/canvas/CanvasRenderingContext2D.cpp:
2666         (WebCore::CanvasRenderingContext2D::scale):
2667         (WebCore::CanvasRenderingContext2D::rotate):
2668         (WebCore::CanvasRenderingContext2D::translate):
2669         (WebCore::CanvasRenderingContext2D::transform):
2670         (WebCore::CanvasRenderingContext2D::setTransform):
2671
2672 2009-11-12  Pavel Feldman  <pfeldman@chromium.org>
2673
2674         Reviewed by Timothy Hatcher.
2675
2676         Web Inspector: profile timeline panel, fix obvious problems.
2677
2678         https://bugs.webkit.org/show_bug.cgi?id=31432
2679
2680         * inspector/front-end/AbstractTimelinePanel.js:
2681         (WebInspector.AbstractTimelinePanel.prototype.updateGraphDividersIfNeeded):
2682         * inspector/front-end/TimelinePanel.js:
2683         (WebInspector.TimelinePanel.prototype._setWindowPosition):
2684         (WebInspector.TimelineCalculator):
2685         (WebInspector.TimelineCalculator.prototype.get minimumBoundary):
2686         (WebInspector.TimelineCalculator.prototype.get maximumBoundary):
2687         (WebInspector.TimelineCalculator.prototype.reset):
2688         (WebInspector.TimelineCalculator.prototype.updateBoundaries):
2689         (WebInspector.TimelineCalculator.prototype.formatValue):
2690         (WebInspector.TimelineGraph):
2691         (WebInspector.TimelineGraph.prototype.refresh):
2692         * inspector/front-end/utilities.js:
2693         (Element.prototype.hasStyleClass):
2694
2695 2009-11-12  Pavel Feldman  <pfeldman@chromium.org>
2696
2697         Reviewed by Timothy Hatcher.
2698
2699         Web Inspector: preload status bar button glyphs
2700         in order to prevent them from flickering.
2701
2702         https://bugs.webkit.org/show_bug.cgi?id=31439
2703
2704         * inspector/front-end/inspector.js:
2705         (preloadImages):
2706
2707 2009-11-12  Adam Roben  <aroben@apple.com>
2708
2709         Replace worldIDs with world objects
2710
2711         Part of <http://webkit.org/b/31414> Implement new SPI for dealing with
2712         user scripts/stylesheets and isolated worlds
2713
2714         Reviewed by Sam Weinig.
2715
2716         Covered by existing tests.
2717
2718         * WebCore.base.exp: Update exported symbols to match what now exists
2719         and is needed by WebKit.
2720
2721         * bindings/js/ScheduledAction.cpp:
2722         (WebCore::ScheduledAction::execute): Updated for function rename.
2723
2724         * bindings/js/ScriptController.cpp: Removed code that dealt with
2725         worldIDs.
2726         (WebCore::ScriptController::createWorld): Added. Returns a new world
2727         suitable for use on the main thread.
2728         (WebCore::ScriptController::executeScriptInWorld): Renamed from
2729         executeScriptInIsolatedWorld, since this works just fine with a
2730         "normal" world.
2731
2732         * bindings/js/ScriptController.h: Added createWorld, removed functions
2733         that took worldIDs, renamed executeScriptInIsolatedWorld to
2734         executeScriptInWorld.
2735
2736         * page/Frame.cpp:
2737         (WebCore::Frame::injectUserScripts):
2738         (WebCore::Frame::injectUserScriptsForWorld):
2739         Updated for changes to UserScriptMap and ScriptController.
2740
2741         * page/Frame.h: Changed injectUserScriptsForWorld to take a
2742         DOMWrapperWorld* instead of a worldID.
2743
2744         * page/PageGroup.cpp:
2745         (WebCore::PageGroup::addUserScriptToWorld):
2746         (WebCore::PageGroup::addUserStyleSheetToWorld):
2747         (WebCore::PageGroup::removeUserScriptFromWorld):
2748         (WebCore::PageGroup::removeUserStyleSheetFromWorld):
2749         (WebCore::PageGroup::removeUserScriptsFromWorld):
2750         (WebCore::PageGroup::removeUserStyleSheetsFromWorld):
2751         * page/PageGroup.h:
2752         Changed these functions to take a DOMWrapperWorld* instead of a
2753         worldID. Also updated for changes to UserScript and UserStyleSheet.
2754
2755         * page/UserScript.h:
2756         * page/UserStyleSheet.h: Changed not to hold a worldID, since it was
2757         never used.
2758
2759         * page/UserScriptTypes.h:
2760         * page/UserStyleSheetTypes.h: Changed UserScriptMap and
2761         UserStyleSheetMap to use a RefPtr<DOMWrapperWorld> instead of a
2762         worldID as their key type.
2763
2764
2765 2009-11-12  Brian Weinstein  <bweinstein@apple.com>
2766
2767         Reviewed by Tim Hatcher.
2768
2769         Fixes <http://webkit.org/b/31260>.
2770         Web Inspector: Main Resources Other than HTML are mis-detected.
2771         
2772         Even if the resource is a main resource, look at its CachedResource type, 
2773         because it might be an image, stylesheet, or JavaScript file, and we
2774         want to show them all correctly.
2775
2776         * inspector/InspectorResource.cpp:
2777         (WebCore::InspectorResource::cachedResourceType): Move this method out so it can be called in multiple places.
2778         (WebCore::InspectorResource::type): 
2779         * inspector/InspectorResource.h:
2780
2781 2009-11-12  Jens Alfke  <snej@chromium.org>
2782
2783         Reviewed by Dimitri Glazkov.
2784
2785         Table-driven setup for V8 binding template callback functions. 100k in code savings.
2786         https://bugs.webkit.org/show_bug.cgi?id=31420
2787
2788         * bindings/scripts/CodeGeneratorV8.pm:  Change generated ConfigureXXXTemplate fn
2789             to call configureTemplate().
2790         * bindings/v8/V8Binding.cpp:
2791         (WebCore::configureTemplate):  New function; does all the standard configuration work.
2792         (WebCore::createCallback):  De-inlined wrapper for FunctionTemplate creation.
2793         * bindings/v8/V8Binding.h:
2794         * bindings/v8/V8Proxy.cpp:
2795         (WebCore::batchConfigureAttributes):  Just wrapped the very long fn parameter list.
2796         (WebCore::batchConfigureCallbacks):  New function, used by configureTemplate.
2797         (WebCore::batchConfigureConstants):  Just wrapped the very long fn parameter list.
2798         * bindings/v8/V8Proxy.h:
2799
2800 2009-11-12  Dumitru Daniliuc  <dumi@chromium.org>
2801
2802         Unreviewed, fix Chromium build after http://trac.webkit.org/changeset/50876.
2803
2804         * platform/sql/chromium/SQLiteFileSystemChromiumPosix.cpp:
2805
2806 2009-11-12  Eric Carlson  <eric.carlson@apple.com>
2807
2808         Reviewed by Dan Bernstein.
2809
2810         <rdar://problem/7388969> Add DOM API for fullscreen video
2811         
2812         DOM API for fullscreen <video>.
2813
2814         Tests: media/media-fullscreen-inline.html
2815                media/media-fullscreen-not-in-document.html
2816
2817         * dom/EventNames.h:
2818             Add webkitbeginfullscreen and webkitendfullscreen.
2819
2820         * html/HTMLAttributeNames.in:
2821             Add onwebkitbeginfullscreen and onwebkitendfullscreen.
2822
2823         * html/HTMLMediaElement.cpp:
2824         (WebCore::HTMLMediaElement::parseMappedAttribute):
2825             Deal with onwebkitbeginfullscreen and onwebkitendfullscreen.
2826         (WebCore::HTMLMediaElement::enterFullscreen):
2827             Schedule webkitbeginfullscreenEvent event, don't set m_isFullscreen unless we
2828             actually do enter fullscreen.
2829         (WebCore::HTMLMediaElement::exitFullscreen):
2830             Schedule webkitendfullscreenEvent event.
2831         (WebCore::HTMLMediaElement::webkitEnterFullScreen):
2832         (WebCore::HTMLMediaElement::webkitExitFullScreen):
2833         (WebCore::HTMLMediaElement::webkitSupportsFullscreen):
2834         (WebCore::HTMLMediaElement::webkitDisplayingFullscreen):
2835             New, access to fullscreen properties and methods.
2836
2837         * html/HTMLMediaElement.h:
2838         * html/HTMLMediaElement.idl:
2839             Declare methods needed for fullscreen API.
2840
2841         * html/HTMLVideoElement.cpp:
2842         (WebCore::HTMLVideoElement::supportsFullscreen):
2843             Return false if a movie does not have video.
2844
2845         * page/DOMWindow.h:
2846             Add webkitbeginfullscreen and webkitendfullscreen.
2847
2848 2009-11-12  Adam Barth  <abarth@webkit.org>
2849
2850         Reviewed by Dimitri Glazkov.
2851
2852         [Chromium] Sify compose button alerts error
2853         https://bugs.webkit.org/show_bug.cgi?id=31394
2854
2855         Test: http/tests/security/calling-versus-current.html
2856
2857         We're supposed to use the calling context for security checks.  In JSC
2858         land, this is the lexicalGlobalObject.
2859
2860         * bindings/v8/V8Proxy.cpp:
2861         (WebCore::V8Proxy::canAccessPrivate):
2862
2863 2009-11-12  Daniel Bates  <dbates@webkit.org>
2864
2865         Reviewed by Darin Adler.
2866
2867         https://bugs.webkit.org/show_bug.cgi?id=30291
2868
2869         Fixes an issue where the returned drop effect is incorrect when
2870         effectAllowed == "uninitialized".
2871
2872         According to section 7.9.2 of the HTML 5 spec.
2873         <http://dev.w3.org/html5/spec/Overview.html#the-dragevent-and-datatransfer-interfaces>
2874         when effectAllowed = "uninitialized" the resulting dropEffect should be the
2875         user-specified dropEffect (i.e. "copy", "move", "link") and "none" for any
2876         other case.
2877         
2878         No test cases are included because we have an existing test case from
2879         bug #24731.
2880
2881         * dom/Clipboard.cpp:
2882         (WebCore::dragOpFromIEOp): Added case for op == "uninitialized".
2883
2884 2009-11-12  Pavel Feldman  <pfeldman@chromium.org>
2885
2886         Reviewed by Timothy Hatcher.
2887
2888         Web Inspector: Do not highlight node on refresh.
2889
2890         https://bugs.webkit.org/show_bug.cgi?id=31419
2891
2892         * inspector/front-end/ElementsPanel.js:
2893         (WebInspector.ElementsPanel.prototype.reset):
2894
2895 2009-11-12  Pavel Feldman  <pfeldman@chromium.org>
2896
2897         Reviewed by Timothy Hatcher.
2898
2899         Web Inspector: Minor timeline fixes.
2900
2901         https://bugs.webkit.org/show_bug.cgi?id=31417
2902
2903         * inspector/front-end/TimelinePanel.js:
2904         (WebInspector.TimelinePanel.prototype._getRecordDetails):
2905         (WebInspector.TimelineRecordTreeElement.prototype.onattach):
2906         (WebInspector.TimelineRecordTreeElement.prototype._updateDetails):
2907         (WebInspector.TimelineRecordTreeElement.prototype.refresh):
2908
2909 2009-11-12  Alexey Proskuryakov  <ap@apple.com>
2910
2911         SnowLeopard build fix.
2912
2913         Renamed initWithClient to initWithAuthenticationClient.
2914
2915         * platform/network/mac/AuthenticationMac.mm:
2916         (-[WebCoreAuthenticationClientAsChallengeSender initWithAuthenticationClient:]):
2917         (WebCore::AuthenticationChallenge::setAuthenticationClient):
2918
2919 2009-11-12  Chris Fleizach  <cfleizach@apple.com>
2920
2921         Reviewed by Darin Adler.
2922
2923         ARIA: add alert type roles
2924         https://bugs.webkit.org/show_bug.cgi?id=31392
2925
2926         Test: platform/mac/accessibility/aria-alerts.html
2927
2928         * accessibility/AccessibilityObject.h:
2929         * accessibility/AccessibilityRenderObject.cpp:
2930         * accessibility/mac/AccessibilityObjectWrapper.mm:
2931
2932 2009-11-11  Alexey Proskuryakov  <ap@apple.com>
2933
2934         Reviewed by Darin Adler.
2935
2936         https://bugs.webkit.org/show_bug.cgi?id=31386
2937         Make Mac AuthenticationChallenge usable from cross-platform code
2938
2939         No change in behavior, so no tests.
2940
2941         * platform/network/ResourceHandle.cpp:
2942         (WebCore::ResourceHandle::clearAuthentication):
2943         * platform/network/ResourceHandleInternal.h:
2944         (WebCore::ResourceHandleInternal::ResourceHandleInternal):
2945         Don't store m_currentCFChallenge, which was only used for a single assertion. Unlike the
2946         NSURLConnection case, CF challenge doesn't carry a sender with it, so the copy in web challenge
2947         is identical.
2948
2949         * platform/network/cf/AuthenticationChallenge.h:
2950         (WebCore::AuthenticationChallenge::setAuthenticationClient): Added a setter to match the new
2951         Mac interface. Previously, one had to create a new AuthenticationChallenge to replace client.
2952
2953         * platform/network/cf/ResourceHandleCFNet.cpp:
2954         (WebCore::ResourceHandle::didReceiveAuthenticationChallenge): Fixed assertions after removal
2955         of m_currentCFChallenge. Also, there is no need to set client now, as it's guaranteed to
2956         be already set.
2957
2958         * platform/network/mac/AuthenticationChallenge.h:
2959         (WebCore::AuthenticationChallenge::m_sender): Explained the existence of this member to the
2960         best of my understanding.
2961         (WebCore::AuthenticationChallenge::m_nsChallenge): Renamed from m_macChallenge to prevent
2962         confusion with "mac" and "web" challenges in ResourceHandleInternal.
2963
2964         * platform/network/mac/AuthenticationMac.mm:
2965         (WebCoreAuthenticationClientAsChallengeSender): Added a Obj-C wrapper for AuthenticationClient,
2966         making it possible to use the latter with NSURLAuthenticationChallenge.
2967         (WebCore::AuthenticationChallenge::AuthenticationChallenge): Updated for m_macChallenge ->
2968         m_nsChallenge renaming.
2969         (WebCore::AuthenticationChallenge::setAuthenticationClient): Wrap the client in Obj-C and
2970         set it as sender (or unset, if client is null).
2971
2972         * platform/network/mac/ResourceHandleMac.mm:
2973         (WebCoreResourceHandleAsDelegate) WebCoreResourceHandleAsDelegate no longer doubles as
2974         authentication challenge sender.
2975         (WebCore::ResourceHandle::~ResourceHandle): A navigation can happen underneath an
2976         authentication sheet.
2977         (WebCore::ResourceHandle::didReceiveAuthenticationChallenge): Form m_currentWebChallenge
2978         using the new setAuthenticationClient() method.
2979         (WebCore::ResourceHandle::didCancelAuthenticationChallenge): Fixed an incorrect assertion.
2980         Since didCancelAuthenticationChallenge is called by connection, the passed challenge is
2981         the original Mac one, not the one we created for use with authentication sheet. I don't
2982         know when a connection would cancel authentication in practice, so I haven't tested this.
2983
2984 2009-11-12  Patrick Mueller  <Patrick_Mueller@us.ibm.com>
2985
2986         Reviewed by Timothy Hatcher.
2987
2988         Web Inspector: breakpoint sidebar entries should allow click over entire list item
2989         https://bugs.webkit.org/show_bug.cgi?id=31411
2990
2991         No new tests; no new functionality, small usability change. 
2992
2993         * inspector/front-end/BreakpointsSidebarPane.js:
2994         (WebInspector.BreakpointsSidebarPane.prototype._appendBreakpointElement):
2995         (WebInspector.BreakpointsSidebarPane.prototype._appendBreakpointElement.breakpointClicked):
2996
2997 2009-11-12  Patrick Mueller  <Patrick_Mueller@us.ibm.com>
2998
2999         Reviewed by Timothy Hatcher.
3000
3001         Web Inspector: breakpoints in named evals are not restored after a reload
3002         https://bugs.webkit.org/show_bug.cgi?id=31375
3003
3004         Manual test added
3005
3006         * inspector/front-end/ScriptsPanel.js:
3007         (WebInspector.ScriptsPanel.prototype.addScript):
3008         * manual-tests/inspector/bp-in-named-eval-after-reload.html: Added.
3009
3010 2009-11-12  Benjamin Poulain  <benjamin.poulain@nokia.com>
3011
3012         Reviewed by Kenneth Rohde Christiansen.
3013
3014         Custom printing shrink factors
3015         https://bugs.webkit.org/show_bug.cgi?id=29042
3016
3017         This reverts commit r49769. The public API for this needs to be reviewed
3018         before its inclusion in Qt.
3019
3020         * page/PrintContext.cpp:
3021         (WebCore::PrintContext::begin):
3022         * page/Settings.cpp:
3023         (WebCore::Settings::Settings):
3024         * page/Settings.h:
3025
3026 2009-11-12  Alexander Pavlov  <apavlov@chromium.org>
3027
3028         Reviewed by Pavel Feldman.
3029
3030         Web Inspector: Resource errors/warnings not shown in the Resource tree.
3031
3032         Error/Warning bubbles are not displayed next to the resource in the 
3033         Resources panel if those occur before the resource is attached to the tree.
3034         https://bugs.webkit.org/show_bug.cgi?id=31404
3035
3036         Test: manual-tests/inspector/styled-error-bubbles-in-scripts.html
3037
3038         * inspector/front-end/AbstractTimelinePanel.js:
3039         (WebInspector.AbstractTimelinePanel.prototype.removeItem):
3040         * inspector/front-end/ResourcesPanel.js:
3041         (WebInspector.ResourceSidebarTreeElement.prototype.onattach):
3042
3043 2009-11-12  Philippe Normand  <pnormand@igalia.com>
3044
3045         Reviewed by Jan Alonzo.
3046
3047         https://bugs.webkit.org/show_bug.cgi?id=31047
3048         [GTK] Failing test media/video-played-ranges-1.html
3049
3050         Follow-up of r50726, don't block the UI thread when calling
3051         gst_element_get_state(). Also fixed a compilation warning and some
3052         static casts.
3053
3054         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
3055         (WebCore::playbackPosition):
3056         (WebCore::MediaPlayerPrivate::seek):
3057         (WebCore::MediaPlayerPrivate::setRate):
3058
3059 2009-11-12  Philippe Normand  <pnormand@igalia.com>
3060
3061         Reviewed by Jan Alonzo.
3062
3063         https://bugs.webkit.org/show_bug.cgi?id=31047
3064         [GTK] Failing test media/video-played-ranges-1.html
3065
3066         don't pause pipeline if already paused, same for play()
3067
3068         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
3069         (WebCore::MediaPlayerPrivate::play):
3070         (WebCore::MediaPlayerPrivate::pause):
3071
3072 2009-11-12  Kinuko Yasuda  <kinuko@google.com>
3073
3074         Reviewed by David Levin.
3075
3076         Support Gtk scrollwheel behavior for horizontal scrollbars on Linux
3077         Chromium too.
3078         https://bugs.webkit.org/show_bug.cgi?id=31292
3079
3080         No new tests. (Corresponding test for Gtk+ is
3081         platform/gtk/scrollbars/overflow-scrollbar-horizontal-wheel-scroll.html)
3082
3083         * page/EventHandler.cpp:
3084         * page/chromium/EventHandlerChromium.cpp:
3085
3086 2009-11-12  Yuta Kitamura  <yutak@chromium.org>
3087
3088         Reviewed by Eric Seidel.
3089
3090         Prevent text inside a multi-column block from being split into columns.
3091         
3092         If the tentative height of a multi-column block was too small, we need to
3093         expand the block height and try to layout again, in order to prevent text
3094         from being split into different columns.
3095
3096         CSS Multicolumn text is split awkwardly
3097         https://bugs.webkit.org/show_bug.cgi?id=22249
3098
3099         Test: fast/multicol/single-line.html
3100
3101         * rendering/RenderBlock.cpp:
3102         (WebCore::RenderBlock::layoutColumns):
3103         * rendering/RenderBlock.h:
3104         * rendering/RenderLineBoxList.cpp:
3105         (WebCore::RenderLineBoxList::paint):
3106         * rendering/RenderView.h:
3107         (WebCore::RenderView::setTruncatedAt):
3108         (WebCore::RenderView::setMinimumColumnHeight):
3109         (WebCore::RenderView::minimumColumnHeight):
3110
3111 2009-11-11  Kent Tamura  <tkent@chromium.org>
3112
3113         Reviewed by Darin Adler.
3114
3115         Fix a bug that RenderFileUploadControl isn't initialized with multiple files.
3116         https://bugs.webkit.org/show_bug.cgi?id=31195
3117
3118         Test: fast/forms/input-file-re-render.html
3119
3120         * rendering/RenderFileUploadControl.cpp:
3121         (WebCore::RenderFileUploadControl::RenderFileUploadControl):
3122
3123 2009-11-09  Dumitru Daniliuc  <dumi@chromium.org>
3124
3125         Reviewed by Dimitri Glazkov.
3126
3127         Fixing Chromium's POSIX VFS implementation, by adding the required
3128         "used file descriptors" logic.
3129
3130         https://bugs.webkit.org/show_bug.cgi?id=31275
3131
3132         * platform/sql/chromium/SQLiteFileSystemChromiumPosix.cpp:
3133
3134 2009-11-11  Chris Fleizach  <cfleizach@apple.com>
3135
3136         Reviewed by Oliver Hunt.
3137
3138         need to implement aria tree roles
3139         https://bugs.webkit.org/show_bug.cgi?id=31284
3140
3141         Tests: platform/mac/accessibility/aria-multiselectable.html
3142                platform/mac/accessibility/aria-tree.html
3143
3144         * accessibility/AccessibilityList.cpp:
3145         (WebCore::AccessibilityList::accessibilityIsIgnored):
3146         * accessibility/AccessibilityObject.cpp:
3147         (WebCore::AccessibilityObject::ariaTreeRows):
3148         (WebCore::AccessibilityObject::ariaTreeItemContent):
3149         (WebCore::AccessibilityObject::ariaTreeItemDisclosedRows):
3150         * accessibility/AccessibilityObject.h:
3151         (WebCore::):
3152         (WebCore::AccessibilityObject::isTree):
3153         (WebCore::AccessibilityObject::isTreeItem):
3154         (WebCore::AccessibilityObject::setIsExpanded):
3155         (WebCore::AccessibilityObject::canSetExpandedAttribute):
3156         (WebCore::AccessibilityObject::hierarchicalLevel):
3157         (WebCore::AccessibilityObject::setSelectedRows):
3158         (WebCore::AccessibilityObject::performDefaultAction):
3159         * accessibility/AccessibilityRenderObject.cpp:
3160         (WebCore::AccessibilityRenderObject::hierarchicalLevel):
3161         (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
3162         (WebCore::AccessibilityRenderObject::isExpanded):
3163         (WebCore::AccessibilityRenderObject::setElementAttributeValue):
3164         (WebCore::AccessibilityRenderObject::elementAttributeValue):
3165         (WebCore::AccessibilityRenderObject::setIsExpanded):
3166         (WebCore::AccessibilityRenderObject::isSelected):
3167         (WebCore::AccessibilityRenderObject::setSelected):
3168         (WebCore::AccessibilityRenderObject::setSelectedRows):
3169         (WebCore::createARIARoleMap):
3170         (WebCore::AccessibilityRenderObject::canSetExpandedAttribute):
3171         (WebCore::AccessibilityRenderObject::ariaTreeSelectedRows):
3172         (WebCore::AccessibilityRenderObject::ariaListboxSelectedChildren):
3173         (WebCore::AccessibilityRenderObject::selectedChildren):
3174         * accessibility/AccessibilityRenderObject.h:
3175         * accessibility/mac/AccessibilityObjectMac.mm:
3176         (WebCore::AccessibilityObject::accessibilityPlatformIncludesObject):
3177         * accessibility/mac/AccessibilityObjectWrapper.mm:
3178         (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
3179         (RoleEntry::):
3180         (-[AccessibilityObjectWrapper subrole]):
3181         (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
3182         (-[AccessibilityObjectWrapper accessibilityIsAttributeSettable:]):
3183         (-[AccessibilityObjectWrapper accessibilityPerformShowMenuAction]):
3184         (-[AccessibilityObjectWrapper accessibilitySetValue:forAttribute:]):
3185         (-[AccessibilityObjectWrapper accessibilityArrayAttributeCount:]):
3186         * html/HTMLAttributeNames.in:
3187
3188 2009-11-11  Brent Fulgham  <bfulgham@webkit.org>
3189
3190         Build fix after @r50760 with ENABLE_FILTERS.
3191
3192         * platform/graphics/filters/SourceAlpha.cpp:
3193         (WebCore::SourceAlpha::apply): Supply ColorSpace to fillRect.
3194         * svg/graphics/filters/SVGFEFlood.cpp: Supply ColorSpace argument
3195           to fillRect.
3196
3197 2009-11-11  Fumitoshi Ukai  <ukai@chromium.org>
3198
3199         Reviewed by Alexey Proskuryakov.
3200
3201         Fix WebSocket frame parser of frame_type with high-order bit set.
3202         https://bugs.webkit.org/show_bug.cgi?id=30668
3203
3204         If buffer is smaller than frame's length, it should break the loop
3205         instead of reading next byte.
3206
3207         Tests: websocket/tests/frame-length-longer-than-buffer.html
3208                websocket/tests/frame-length-skip.html
3209
3210         * websockets/WebSocketChannel.cpp:
3211         (WebCore::WebSocketChannel::didReceiveData):
3212
3213 2009-11-11  Yusuke Sato  <yusukes@chromium.org>
3214
3215         Reviewed by Adam Barth.
3216
3217         [chromium] Remove t2embed.dll functions from FontCustomPlatformData.cpp for Chromium
3218         https://bugs.webkit.org/show_bug.cgi?id=31345
3219
3220         Remove dependency on t2embed.dll so that Chromium for Windows can start even if t2embed.dll cannot be accessed.
3221
3222         * platform/graphics/chromium/FontCustomPlatformData.cpp:
3223         (WebCore::FontCustomPlatformData::~FontCustomPlatformData): Remove TTDeleteEmbeddedFont() call. Always use RemoveFontMemResourceEx().
3224         (WebCore::FontCustomPlatformData::fontPlatformData): Remove TTGetNewFontName() call.
3225         (WebCore::createFontCustomPlatformData): Remove TTLoadEmbeddedFont() call. Always use AddFontMemResourceEx() via renameAndActivateFont() in opentype/OpenTypeUtility.h. Remove EOTStream class as well.
3226
3227 2009-11-11  Beth Dakin  <bdakin@apple.com>
3228
3229         Build fix. No review needed.
3230
3231         * platform/graphics/gtk/FontGtk.cpp:
3232         (WebCore::Font::drawComplexText):
3233
3234 2009-11-11  Beth Dakin  <bdakin@apple.com>
3235
3236         Build fix. No review needed.
3237
3238         * platform/graphics/cairo/FontCairo.cpp:
3239         (WebCore::Font::drawGlyphs):
3240
3241 2009-11-11  Beth Dakin  <bdakin@apple.com>
3242
3243         Windows build fix. No review needed. 
3244
3245         * platform/graphics/win/FontCGWin.cpp:
3246         (WebCore::Font::drawGlyphs):
3247
3248 2009-11-11  Beth Dakin  <bdakin@apple.com>
3249
3250         Reviewed by Simon Fraser.
3251
3252         Fix for https://bugs.webkit.org/show_bug.cgi?id=31382
3253         Make -webkit-color-correction work with shadows
3254
3255         From canvas, just send DeviceColorSpace to setShadow() for now. 
3256         Will fix soon when I address https://bugs.webkit.org/show_bug.cgi?id=31319
3257         * html/canvas/CanvasRenderingContext2D.cpp:
3258         (WebCore::CanvasRenderingContext2D::setShadow):
3259         (WebCore::CanvasRenderingContext2D::applyShadow):
3260
3261         setShadow() and setPlatformShadow() now take a ColorSpace.
3262         * platform/graphics/GraphicsContext.cpp:
3263         (WebCore::GraphicsContext::setShadow):
3264         * platform/graphics/GraphicsContext.h:
3265         * platform/graphics/cg/GraphicsContextCG.cpp:
3266         (WebCore::createCGColorWithColorSpace): New helper to create a 
3267         color in a ColorSpace.
3268         (WebCore::setCGFillColor): Call new helper.
3269         (WebCore::setCGStrokeColor): Call new helper.
3270         (WebCore::GraphicsContext::setPlatformShadow): Call new helper.
3271         * platform/graphics/haiku/GraphicsContextHaiku.cpp:
3272         (WebCore::GraphicsContext::setPlatformShadow):
3273
3274         Send appropriate ColorSpace to setShadow().
3275         * platform/graphics/mac/FontMac.mm:
3276         (WebCore::Font::drawGlyphs):
3277         * rendering/EllipsisBox.cpp:
3278         (WebCore::EllipsisBox::paint):
3279         * rendering/InlineFlowBox.cpp:
3280         (WebCore::InlineFlowBox::paintTextDecorations):
3281         * rendering/InlineTextBox.cpp:
3282         (WebCore::paintTextWithShadows):
3283         (WebCore::InlineTextBox::paintDecoration):
3284         * rendering/RenderBoxModelObject.cpp:
3285         (WebCore::RenderBoxModelObject::paintBoxShadow):
3286         * rendering/SVGInlineTextBox.cpp:
3287         (WebCore::SVGInlineTextBox::paintCharacters):
3288         * rendering/SVGRenderSupport.cpp:
3289         (WebCore::SVGRenderBase::prepareToRenderSVGContent):
3290
3291         Attempt to keep ports building.
3292         * platform/graphics/cairo/GraphicsContextCairo.cpp:
3293         (WebCore::GraphicsContext::setPlatformShadow):
3294         * platform/graphics/qt/GraphicsContextQt.cpp:
3295         (WebCore::GraphicsContext::setPlatformShadow):
3296         * platform/graphics/skia/GraphicsContextSkia.cpp:
3297         (WebCore::GraphicsContext::setPlatformShadow):
3298         * platform/graphics/wince/GraphicsContextWince.cpp:
3299         (WebCore::GraphicsContext::setPlatformShadow):
3300         * platform/graphics/wx/GraphicsContextWx.cpp:
3301         (WebCore::GraphicsContext::setPlatformShadow):
3302
3303 2009-11-11  Kent Tamura  <tkent@chromium.org>
3304
3305         Reviewed by Darin Adler.
3306
3307         Print the file text of a file upload control in DumpRenderTree for ease of tests.
3308         https://bugs.webkit.org/show_bug.cgi?id=31195
3309
3310         * rendering/RenderFileUploadControl.cpp:
3311         (WebCore::RenderFileUploadControl::paintObject):
3312         (WebCore::RenderFileUploadControl::fileTextValue):
3313         * rendering/RenderFileUploadControl.h:
3314         (WebCore::RenderFileUploadControl::isFileUploadControl):
3315         (WebCore::toRenderFileUploadControl):
3316         * rendering/RenderObject.h:
3317         (WebCore::RenderObject::isFileUploadControl):
3318         * rendering/RenderTreeAsText.cpp:
3319         (WebCore::operator<<):
3320
3321 2009-11-11  Gavin Barraclough  <barraclough@apple.com>
3322
3323         Reviewed by Sam Weinig.
3324
3325         DOM Wrappers for some nodes may not be marked.
3326         https://bugs.webkit.org/show_bug.cgi?id=31380
3327
3328         Some markChildren methods are calling getCachedDOMNodeWrapper, which will find
3329         the wrapper for the current world only.  This means that wrappers may be GC'ed
3330         prematurely, and properties lost.
3331
3332         Move to a model more like markDOMObjectWrapper, mark wrappers for all worlds.
3333
3334         * bindings/js/JSAttrCustom.cpp:
3335         (WebCore::JSAttr::markChildren):
3336         * bindings/js/JSDOMBinding.cpp:
3337         (WebCore::markDOMNodeWrapper):
3338         * bindings/js/JSDOMBinding.h:
3339         * bindings/js/JSNamedNodeMapCustom.cpp:
3340         (WebCore::JSNamedNodeMap::markChildren):
3341         * bindings/js/JSNodeCustom.cpp:
3342         (WebCore::JSNode::markChildren):
3343         * bindings/js/JSSVGElementInstanceCustom.cpp:
3344         (WebCore::JSSVGElementInstance::markChildren):
3345         * bindings/js/JSStyleSheetCustom.cpp:
3346         (WebCore::JSStyleSheet::markChildren):
3347
3348 2009-11-11  Ben Murdoch  <benm@google.com>
3349
3350         Reviewed by Darin Adler.
3351
3352         bindings/js/ScriptObject.cpp is missing and ENABLE(INSPECTOR) guard.
3353         https://bugs.webkit.org/show_bug.cgi?id=31384
3354
3355         No functionality change so no tests required.
3356
3357         * bindings/js/ScriptObject.cpp: Add ENABLE(INSPECTOR) guard around the JSInspectorBackend.h include.
3358
3359 2009-11-11  Jens Alfke  <snej@chromium.org>
3360
3361         Reviewed by Dimitri Glazkov.
3362
3363         The Big De-Inlining. 450k code size reduction (32-bit x86.)
3364         - Various inline functions in V8Binding.h made non-inline.
3365         - Some renaming for consistency.
3366         - New function createRawTemplate().
3367         https://bugs.webkit.org/show_bug.cgi?id=31383
3368
3369         * bindings/scripts/CodeGeneratorV8.pm:
3370         * bindings/v8/V8Binding.cpp:
3371         (WebCore::v8DOMWrapperToNative):
3372         (WebCore::v8ValueToWebCoreString):
3373         (WebCore::v8ValueToAtomicWebCoreString):
3374         (WebCore::toInt32):
3375         (WebCore::toWebCoreString):
3376         (WebCore::toWebCoreStringWithNullCheck):
3377         (WebCore::toAtomicWebCoreStringWithNullCheck):
3378         (WebCore::toWebCoreStringWithNullOrUndefinedCheck):
3379         (WebCore::isUndefinedOrNull):
3380         (WebCore::v8Boolean):
3381         (WebCore::v8UndetectableString):
3382         (WebCore::v8StringOrNull):
3383         (WebCore::v8StringOrUndefined):
3384         (WebCore::v8StringOrFalse):
3385         (WebCore::v8StringToWebCoreString):
3386         (WebCore::v8ExternalString):
3387         (WebCore::createRawTemplate):  New function.
3388         * bindings/v8/V8Binding.h:
3389         (WebCore::v8DOMWrapperTo):
3390         (WebCore::v8DOMWrapperToNode):
3391         (WebCore::v8StringToWebCoreString):
3392         (WebCore::v8StringToAtomicWebCoreString):
3393
3394 2009-11-11  Jens Alfke  <snej@chromium.org>
3395
3396         Reviewed by Dimitri Glazkov.
3397
3398         More V8 de-inlining (outlining?) Abstracted a chunk of boilerplate code from every
3399         event-listener setter into a new subroutine transferHiddenDependency().
3400         https://bugs.webkit.org/show_bug.cgi?id=31377
3401
3402         * bindings/scripts/CodeGeneratorV8.pm:  Replace boilerplate with call to transferHiddenDependency().
3403         * bindings/v8/V8Utilities.cpp:
3404         (WebCore::transferHiddenDependency):  New.
3405         * bindings/v8/V8Utilities.h:  Declaration of transferHiddenDependency.
3406
3407 2009-11-11  Brian Weinstein  <bweinstein@apple.com>
3408
3409         Reviewed by Beth Dakin.
3410
3411         If we are on Windows, don't try and get the kCGColorSpaceSRGB ColorSpace,
3412         because there is a CG bug preventing this from working.
3413
3414         * platform/graphics/cg/GraphicsContextCG.cpp:
3415         (WebCore::sRGBColorSpaceRef):
3416
3417 2009-11-11  Pavel Feldman  <pfeldman@chromium.org>
3418
3419         Reviewed by Timothy Hatcher.
3420
3421         Check that if Storage panel exists before calling its methods
3422
3423         https://bugs.webkit.org/show_bug.cgi?id=31343
3424
3425         * inspector/front-end/inspector.js:
3426         (WebInspector.addDatabase):
3427         (WebInspector.addCookieDomain):
3428         (WebInspector.addDOMStorage):
3429         (WebInspector.updateDOMStorage):
3430
3431 2009-11-11  Jens Alfke  <snej@chromium.org>
3432
3433         Reviewed by Dimitri Glazkov.
3434
3435         De-inline convertNodeToV8Object(), which expands to a lot of asm code and is inlined 136
3436         times in the generated V8 bindings.
3437         https://bugs.webkit.org/show_bug.cgi?id=31368
3438
3439         * bindings/v8/V8DOMWrapper.cpp:
3440         (WebCore::V8DOMWrapper::convertNodeToV8Object):  Moved body here from .h file
3441         * bindings/v8/V8DOMWrapper.h:  Removed inline method body.
3442
3443 2009-11-11  Jessie Berlin  <jberlin@webkit.org>
3444
3445         Reviewed by Timothy Hatcher.
3446
3447         Display the correct summary in the web inspector for the shorthands
3448         border-color, border-width, border-style, margin, and padding.
3449         https://bugs.webkit.org/show_bug.cgi?id=7987
3450
3451         Test: fast/css/shorthands-four-values.html
3452
3453         * css/CSSMutableStyleDeclaration.cpp:
3454         (WebCore::CSSMutableStyleDeclaration::get4Values):
3455         Display the summary information in the same way the shorthand would be
3456         specified in a css rule.
3457
3458 2009-11-11  Jens Alfke  <snej@chromium.org>
3459
3460         Reviewed by Dimitri Glazkov.
3461
3462         Make V8 bindings return NULL handles instead of calling v8::Undefined(). This has equivalent
3463         meaning to the caller, saves code, and appears to save a few cycles at runtime too.
3464         https://bugs.webkit.org/show_bug.cgi?id=31367
3465
3466         * bindings/scripts/CodeGeneratorV8.pm: Change "v8::Undefined()" to "v8::Handle<v8::Value>()"
3467
3468 2009-11-11  Jens Alfke  <snej@chromium.org>
3469
3470         Reviewed by Dimitri Glazkov.
3471
3472         Optimize V8 getDOMNodeMap(), a hot function in Dromaeo DOM tests, by increasing inlining.
3473
3474         * bindings/v8/DOMData.cpp:
3475         (WebCore::DOMData::getCurrent):  Moved getCurrentMainThread to MainThreadDOMData::getCurrent
3476             so it can be inlined by its caller.
3477         * bindings/v8/DOMData.h:
3478         * bindings/v8/MainThreadDOMData.cpp:
3479         (WebCore::MainThreadDOMData::getCurrent):  Moved here from DOMData.cpp.
3480         (WebCore::MainThreadDOMData::getMainThreadStore):  Added UNLIKELY macro to improve codegen.
3481         (WebCore::MainThreadDOMData::getCurrentMainThreadStore):  Combination of getCurrentMainThread
3482             and getStore, which inline both calls together.
3483         * bindings/v8/MainThreadDOMData.h:
3484         (WebCore::MainThreadDOMData::getStore):  Broke out nonvirtual getMainThreadStore for inlineability.
3485         * bindings/v8/V8DOMMap.cpp:
3486         (WebCore::getDOMNodeMap):  Call new getCurrentMainThreadStore, which is faster.
3487
3488 2009-11-11  Nate Chapin  <japhet@chromium.org>
3489
3490         Reviewed by Dimitri Glazkov.
3491
3492         Add methods to KURLGoogle.cpp declared in http://trac.webkit.org/changeset/50784 but not defined when using KURLGoogle.
3493
3494         https://bugs.webkit.org/show_bug.cgi?id=31357
3495
3496         * platform/KURLGoogle.cpp:
3497         (WebCore::isSchemeFirstChar):
3498         (WebCore::isSchemeChar):
3499         (WebCore::KURL::hasPort):
3500         (WebCore::KURL::removePort):
3501         (WebCore::protocolIsValid):
3502
3503 2009-11-11  Brent Fulgham  <bfulgham@webkit.org>
3504
3505         Build fix, no reviewed.
3506
3507         Correct setPlatformFillColor and setPlatformStrokeColor calls
3508         to match new ColorSpace-supporting signatures.
3509
3510         * platform/graphics/win/GraphicsContextCairoWin.cpp:  Add the
3511           color space to the set[...]Color calls.
3512
3513 2009-11-10  Alexey Proskuryakov  <ap@apple.com>
3514
3515         Reviewed by Sam Weinig.
3516
3517         https://bugs.webkit.org/show_bug.cgi?id=31327
3518         Clean up SocketStreamHandleClient interface
3519
3520         No change in behavior.
3521
3522         * platform/network/SocketStreamHandleClient.h: Removed willOpenStream and willSendData.
3523         (WebCore::SocketStreamHandleClient::willOpenStream): Removed. This is currently not used by
3524         the only client (WebSocketChannel), and it's not clear what this callback's semantics
3525         should be.
3526         (WebCore::SocketStreamHandleClient::willSendData): Ditto.
3527         (WebCore::SocketStreamHandleClient::receivedCancellation): Removed, because it was misplaced.
3528         For ResourceHandle, this method is called when the user cancels authentication sheet,
3529         not when something happens with the stream.
3530
3531         * websockets/WebSocketChannel.h: Some WebSocketChannel methods were virtual without any
3532         reason. Also, added didReceiveAuthenticationChallenge/didCancelAuthenticationChallenge.
3533
3534         * websockets/WebSocketChannel.cpp: Adjusted for the above change. Authentication-related
3535         callbacks have no real implementation yet.
3536
3537 2009-11-11  Zoltan Horvath  <zoltan@webkit.org>
3538
3539         Reviewed by Eric Seidel.
3540
3541         Allow custom memory allocation control for the part of page directory in WebCore
3542         https://bugs.webkit.org/show_bug.cgi?id=31350
3543
3544         Inherits the following classes from Noncopyable because these are instantiated
3545         by 'new' and these are no need to be copyable:
3546
3547         class DragController         - instantiated at: WebCore/page/Page.cpp:107
3548         class FocusController        - instantiated at: WebCore/page/Page.cpp:109
3549         class Settings               - instantiated at: WebCore/page/Page.cpp:116
3550         class PluginHalter           - instantiated at: WebCore/page/Page.cpp:160
3551         struct ScheduledEvent        - instantiated at: WebCore/page/FrameView.cpp:1275
3552         class UserScript             - instantiated at: WebCore/page/PageGroup.cpp:208
3553         struct EventHandlerDragState - instantiated at: WebCore/page/EventHandler.cpp:182
3554         class XSSAuditor             - instantiated at: WebCore/bindings/js/ScriptController.cpp:70
3555         class UserStyleSheet         - instantiated at: WebCore/page/PageGroup.cpp:222
3556
3557         Inherits PropertyWrapperBase class from Noncopyable because (its child class) 
3558         PropertyWrapper is instantiated by 'new' in 
3559         WebCore/page/animation/AnimationBase.cpp:564 it is no need to be copyable.
3560
3561         * page/DragController.h:
3562         * page/EventHandler.h:
3563         * page/FocusController.h:
3564         * page/FrameView.cpp:
3565         * page/PluginHalter.h:
3566         * page/Settings.h:
3567         * page/UserScript.h:
3568         * page/UserStyleSheet.h:
3569         * page/XSSAuditor.h:
3570         * page/animation/AnimationBase.cpp:
3571
3572 2009-11-11  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
3573
3574         Reviewed by Kenneth Rohde Christiansen.
3575
3576         https://bugs.webkit.org/show_bug.cgi?id=31323
3577         Fix a few compiler warnings
3578
3579         No new tests as there is no new functionality.
3580
3581         * editing/htmlediting.cpp:
3582         (WebCore::isRenderedAsNonInlineTableImageOrHR): Use explicit
3583         parentheses to silence gcc 4.4 -Wparentheses warnings
3584
3585 2009-11-11  Kenneth Rohde Christiansen  <kenneth@webkit.org>
3586
3587         Reviewed by Mark Rowe.
3588
3589         Set m_hasPendingGeometryChange to true by default, so that
3590         at least one call to NPP_SetWindow is executed, which is
3591         needed by the DRT plugin testing framework.
3592
3593         * plugins/PluginView.cpp:
3594         (WebCore::PluginView::PluginView):
3595
3596 2009-11-11  Csaba Osztrogonác  <ossy@webkit.org>
3597
3598         Rubber-stamped by Kenneth Rohde Christiansen.
3599
3600         https://bugs.webkit.org/show_bug.cgi?id=31348
3601         [Qt] Remove unnecessary LUT creator from WebCore.pro
3602
3603         * WebCore.pro:
3604
3605 2009-11-11  Simon Hausmann  <simon.hausmann@nokia.com>
3606
3607         Reviewed by Tor Arne Vestbø.
3608
3609         Introduce a function for querying the input method status
3610         in QWebPageClient.
3611
3612         * platform/qt/QWebPageClient.h:
3613
3614 2009-11-11  Benjamin Otte  <otte@gnome.org>
3615
3616         Reviewed by Jan Alonzo.
3617
3618         [GTK] Black artifacts in youtube.co