76992e7e4e9d908746d26885bc7109841e09c658
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2011-02-14  Kenichi Ishibashi  <bashi@chromium.org>
2
3         Reviewed by Andreas Kling.
4
5         css style="max-width:none" works wrong
6         https://bugs.webkit.org/show_bug.cgi?id=53743
7
8         Fix a bug that "max-width:none" works wrong.
9         See also: http://trac.webkit.org/changeset/13462
10
11         Test: fast/css/max-width-none.html
12
13         * css/CSSStyleSelector.cpp:
14         (WebCore::CSSStyleSelector::applyProperty): For max-width of none,
15         set it to Length(undefinedLength, Fixed), which is the correct
16         value.
17
18 2011-02-14  Antti Koivisto  <antti@apple.com>
19
20         Reviewed by Andreas Kling.
21
22         REGRESSION (r77834): Assertion failing in svg/custom/use-multiple-on-nested-disallowed-font.svg
23         https://bugs.webkit.org/show_bug.cgi?id=54344
24         
25         Intead of recomputing, just mark style selector dirty if it is invalidated in the middle of a style recalc.
26
27         * dom/Document.cpp:
28         (WebCore::Document::Document):
29         (WebCore::Document::recalcStyle):
30         (WebCore::Document::recalcStyleSelector):
31         * dom/Document.h:
32
33 2011-02-14  Naoki Takano  <takano.naoki@gmail.com>
34
35         Reviewed by Kent Tamura.
36
37         [Chromium] Fix wrong popup position for RTL(again)
38         https://bugs.webkit.org/show_bug.cgi?id=54375
39
40         Fix right position bug introduce by https://bugs.webkit.org/show_bug.cgi?id=53567, because the previous fix was correct for the current behaviour, but not good for http://crbug.com/60427. To calculate the correct right offset value and apply to the position, change WebCore::PopupContainer::layout() to return right offset value and use the returned value to calculate position.
41
42         No new tests. However we can check manually with select_dropdown_box_alignment.html, autofill_alignment.html, select_alignment.html, select_dropdown_box_alignment.html, autofill-popup-width-and-item-direction.html
43
44         * platform/chromium/PopupMenuChromium.cpp:
45         (WebCore::PopupContainer::layoutAndCalculateWidgetRect): Change the input parameter to take popupInitialCoordinate again. And calculate correct right position with returned right offset from layoutAndGetRightOffset().
46         (WebCore::PopupContainer::showPopup): Change the passing parameter to layoutAndCalculateWidgetRect().
47         (WebCore::PopupContainer::layoutAndGetRightOffset): Change the name from layout() and to return rightOffset value.
48         (WebCore::PopupContainer::refresh): Change the passing parameter to layoutAndCalculateWidgetRect().
49         * platform/chromium/PopupMenuChromium.h: Change the function name and parameters.
50
51 2011-02-14  Alejandro G. Castro  <alex@igalia.com>
52
53         Unreviewed, rolling out r78451.
54         http://trac.webkit.org/changeset/78451
55         https://bugs.webkit.org/show_bug.cgi?id=53898
56
57         It is causing crashes in some bots
58
59         * platform/text/TextCodecICU.cpp:
60         (WebCore::newTextCodecICU):
61         (WebCore::TextCodecICU::registerBaseEncodingNames):
62         (WebCore::TextCodecICU::registerBaseCodecs):
63         (WebCore::TextCodecICU::registerExtendedEncodingNames):
64         (WebCore::TextCodecICU::registerExtendedCodecs):
65         (WebCore::ErrorCallbackSetter::~ErrorCallbackSetter):
66         (WebCore::getGbkEscape):
67         (WebCore::urlEscapedEntityCallback):
68         (WebCore::gbkCallbackEscape):
69         (WebCore::gbkUrlEscapedEntityCallack):
70         (WebCore::gbkCallbackSubstitute):
71         * platform/text/TextCodecICU.h:
72         (WebCore::ICUConverterWrapper::ICUConverterWrapper):
73         * platform/text/TextCodecUTF8.cpp:
74         (WebCore::TextCodecUTF8::registerEncodingNames):
75         (WebCore::nonASCIISequenceLength):
76         (WebCore::decodeNonASCIISequence):
77         (WebCore::TextCodecUTF8::decode):
78         * platform/text/TextCodecUTF8.h:
79         * platform/text/TextEncodingRegistry.cpp:
80         (WebCore::buildBaseTextCodecMaps):
81         (WebCore::extendTextCodecMaps):
82
83 2011-02-13  Antti Koivisto  <antti@apple.com>
84
85         Reviewed by Dan Bernstein.
86
87         https://bugs.webkit.org/show_bug.cgi?id=54376
88         Make sorting of matched rules faster
89         
90         - use std::sort
91         - cache specificity, it is slow to compute
92         - inline compare function
93
94         * css/CSSStyleSelector.cpp:
95         (WebCore::RuleData::specificity):
96         (WebCore::CSSStyleSelector::matchRules):
97         (WebCore::compareRules):
98         (WebCore::CSSStyleSelector::sortMatchedRules):
99         (WebCore::RuleData::RuleData):
100         (WebCore::CSSStyleSelector::matchPageRules):
101         * css/CSSStyleSelector.h:
102
103 2011-02-12  Darin Adler  <darin@apple.com>
104
105         Reviewed by Alexey Proskuryakov.
106
107         Add built-in decoder for UTF-8 for improved performance
108         https://bugs.webkit.org/show_bug.cgi?id=53898
109
110         Covered by existing tests; not adding new tests at this time.
111
112         This patch now handles errors in the same way the existing codecs do,
113         and so passes our tests. The previous version failed some tests because
114         of incorrect error handling.
115
116         * platform/text/TextCodecICU.cpp:
117         (WebCore::create): Renamed from newTextCodecICU, made a static member
118         function, and added a call to adoptPtr.
119         (WebCore::TextCodecICU::registerEncodingNames): Renamed from
120         registerExtendedEncodingNames since this class is no longer used for
121         base codecs. Removed aliases for UTF-8; now handled by TextCodecUTF8.
122         (WebCore::TextCodecICU::registerCodecs): Renamed.
123         (WebCore::fallbackForGBK): Renamed to conform to our current style.
124
125         * platform/text/TextCodecICU.h: Updated for above changes. Changed
126         indentation. Made most functions private, including virtual function
127         overrides. Marked ICUConverterWrapper noncopyable.
128
129         * platform/text/TextCodecUTF8.cpp:
130         (WebCore::TextCodecUTF8::registerEncodingNames): Added the UTF-8 aliases
131         that were formerly added by TextCodecICU.
132         (WebCore::nonASCIISequenceLength): Fixed bug where this would return 4 for
133         bytes F5-FF instead of failing.
134         (WebCore::decodeNonASCIISequence): Tweaked coding style.
135         (WebCore::appendCharacter): Added. Makes it easier to share code between
136         the partial-character handling and main loop.
137         (WebCore::TextCodecUTF8::decode): Fixed buffer size computation for case
138         where there is a partial sequence. Fixed partial sequence handling so that
139         goto is no longer needed, since compilers sometimes make poor code when
140         goto is involved. Added a loop for partial sequences since we consume only
141         one byte when a partial sequence is invalid. Fixed logic in main decoding
142         loop so goto is not needed. Used early-exit style in both loops so the main
143         flow is not nested inside if statements. Added correct error handling for
144         flush when a partial sequence remains, which involved wrapping the function
145         in yet another loop.
146
147         * platform/text/TextCodecUTF8.h: Made virtual function overrides private.
148
149         * platform/text/TextEncodingRegistry.cpp:
150         (WebCore::buildBaseTextCodecMaps): Added calls to TextCodecUTF8. Removed
151         calls to TextCodecICU. Added FIXMEs for other codecs that no longer need
152         to be included here.
153         (WebCore::extendTextCodecMaps): Updated for the name change of the
154         TextCodecICU functions.
155
156 2011-02-13  Mark Rowe  <mrowe@apple.com>
157
158         Reviewed by Maciej Stachowiak.
159
160         <rdar://problem/8995490> WebCoreAuthenticationClientAsChallengeSender doesn't implement some necessary methods.
161
162         * platform/network/mac/AuthenticationMac.mm:
163         (-[WebCoreAuthenticationClientAsChallengeSender performDefaultHandlingForAuthenticationChallenge:]):
164         (-[WebCoreAuthenticationClientAsChallengeSender rejectProtectionSpaceAndContinueWithChallenge:]):
165
166 2011-02-13  Simon Fraser  <simon.fraser@apple.com>
167
168         Reviewed by Andreas Kling.
169
170         Repeating gradients drawn incorrectly
171         https://bugs.webkit.org/show_bug.cgi?id=53502
172         
173         The 'forward-fill' logic for repeating gradients used the wrong
174         starting stop index (0 rather than the original first index), which
175         resulted in incorrect gradients if backwards-fill had already been
176         applied.
177
178         Test: fast/gradients/css3-repeating-end-fill.html
179
180         * css/CSSGradientValue.cpp:
181         (WebCore::CSSGradientValue::addStops):
182
183 2011-02-13  Benjamin Poulain  <benjamin.poulain@nokia.com>
184
185         Reviewed by Andreas Kling.
186
187         Unused variable result in RenderBlock::addOverflowFromFloats()
188         https://bugs.webkit.org/show_bug.cgi?id=54363
189
190         Remove the unused variable.
191
192         * rendering/RenderBlock.cpp:
193         (WebCore::RenderBlock::addOverflowFromFloats):
194
195 2011-02-13  Cameron Zwarich  <zwarich@apple.com>
196
197         Reviewed by Anders Carlsson.
198
199         WebCore fails to build with Clang's -Woverloaded-virtual
200         https://bugs.webkit.org/show_bug.cgi?id=54367
201
202         * loader/PingLoader.h:
203         (WebCore::PingLoader::didReceiveData): Change the method signature to match the signature
204         in the base class.
205
206 2011-02-13  Nico Weber  <thakis@chromium.org>
207
208         Reviewed by Anders Carlsson.
209
210         RenderBR::width() tries but fails to override RenderText::width()
211         https://bugs.webkit.org/show_bug.cgi?id=54301
212
213         The superclass method's signature changed, e.g. in
214         http://trac.webkit.org/changeset/57215, but the subclass was not
215         updated.
216
217         * rendering/RenderBR.h:
218         (WebCore::RenderBR::width):
219
220 2011-02-13  Andreas Kling  <kling@webkit.org>
221
222         Reviewed by Dirk Schulze.
223
224         Canvas: 2d.fillStyle.parse.system.html fails
225         https://bugs.webkit.org/show_bug.cgi?id=39168
226
227         Based on previous work by Julien Chaffraix <jchaffraix@codeaurora.org>
228         and Jan Erik Hanssen <jhanssen@sencha.com>
229
230         * css/CSSParser.cpp:
231         (WebCore::CSSParser::parseColor): Changed the function to better match our
232         early return policy. Also we now return false when we don't parse the color.
233         This is needed for createFromString to fallback to using parseSystemColor.
234
235         (WebCore::CSSParser::parseSystemColor): Made use of the RenderTheme to get
236         the system colors.
237
238         * css/CSSParser.h: Added the new parseSystemColor method.
239
240         * html/canvas/CanvasRenderingContext2D.cpp:
241         (WebCore::CanvasRenderingContext2D::setStrokeColor): Pass the document to createFromString.
242         (WebCore::CanvasRenderingContext2D::setFillColor): Ditto.
243
244         * html/canvas/CanvasStyle.cpp:
245         (WebCore::parseColor):
246         (WebCore::parseColorOrCurrentColor):
247         (WebCore::CanvasStyle::createFromString): Try to parse the color using CSSParser::parseColor
248         and fall back to parseSystemColor if it did not work.
249
250         * html/canvas/CanvasStyle.h: Added the new Document* parameter to createFromString.
251
252 2011-02-13  Jeremy Moskovich  <jeremy@chromium.org>
253
254         Reviewed by Adam Barth.
255
256         Add a compile-time option to completely disable WebArchive support.
257         https://bugs.webkit.org/show_bug.cgi?id=52712
258
259         Add an ENABLE(WEB_ARCHIVE) compile-time setting and use it for all WebArchive code.
260
261         ArchiveResource and ArchiveResourceCollection are notably still compiled in. They are used
262         in Safari for functionality such as "Save Image As" and Image copy & paste independent of
263         WebArchive support.
264
265         Ports Affected:
266             WebArchive support is currently enabled for all ports that define PLATFORM(CF) apart from Qt.
267             This patch preserves this behavior except that it also disables support in the Chromium port.
268
269         No behavior changes so no new tests.
270
271         * WebCore.gyp/WebCore.gyp: Don't compile LegacyWebArchive.cpp and friends.
272         * WebCore.pro: Don't compile ArchiveFactory.cpp in Qt port.
273         * loader/DocumentLoader.cpp: Surround WebArchive code with #ifdef.
274         (WebCore::DocumentLoader::commitLoad):
275         (WebCore::DocumentLoader::setupForReplaceByMIMEType):
276         (WebCore::DocumentLoader::archiveResourceForURL):
277         * loader/DocumentLoader.h:
278         * loader/FrameLoader.cpp:
279         (WebCore::FrameLoader::loadURLIntoChildFrame):
280         (WebCore::FrameLoader::stopAllLoaders):
281         (WebCore::FrameLoader::finishedLoadingDocument):
282         * loader/FrameLoader.h:
283         * loader/ResourceLoader.cpp:
284         (WebCore::ResourceLoader::start):
285         * loader/archive/ArchiveFactory.cpp: Remove #ifdef since feature is now enabled/disabled wholesale.
286         (WebCore::archiveMIMETypes):
287         * page/Settings.cpp:
288         * page/Settings.h:
289         * platform/MIMETypeRegistry.cpp:
290         (WebCore::initializeSupportedNonImageMimeTypes):
291
292 2011-02-13  Aparna Nandyal  <aparna.nand@wipro.com>
293
294         Reviewed by Andreas Kling.
295
296         [Qt] QtWebKit does not properly handle D&D of a percent-encoded URL.
297         https://bugs.webkit.org/show_bug.cgi?id=53320
298
299         The encoding that was done is corrected in the fix.  
300         Replaced the KURL encoding function with QUrl API.
301
302         * platform/qt/DragDataQt.cpp:
303         (WebCore::DragData::asURL):
304
305 2011-02-13  Leo Yang  <leo.yang.c@gmail.com>
306
307         Reviewed by Andreas Kling.
308
309         Unnecessary call of containingBlock() in RenderBoxModelObject::relativePositionOffsetX()
310         https://bugs.webkit.org/show_bug.cgi?id=54351
311
312         We were calling containingBlock() twice if the left is not auto. We only need to call it
313         once because we can use 'cb' variable in the following line.
314
315         No functionality change, no new tests.
316
317         * rendering/RenderBoxModelObject.cpp:
318         (WebCore::RenderBoxModelObject::relativePositionOffsetX):
319
320 2011-02-13  Jarred Nicholls  <jarred@sencha.com>
321
322         Reviewed by Simon Fraser.
323
324         getComputedStyle returns wrong value for margin-right
325         https://bugs.webkit.org/show_bug.cgi?id=13343
326         
327         Matching IE, Firefox, and Opera behavior by returning the computed margin
328         values as specified, rather than the used/auto values (calculated via RenderBox).
329         Also CSS 2.1+ compliant by returning margin percentage as specified, if applicable.
330         Note: Firefox and Opera return calculated fixed lengths for percentage margins, IE
331         returns the specified percentage.
332
333         Tests: fast/css/getComputedStyle/getComputedStyle-margin-auto.html
334                fast/css/getComputedStyle/getComputedStyle-margin-length.html
335                fast/css/getComputedStyle/getComputedStyle-margin-percentage.html
336
337         * css/CSSComputedStyleDeclaration.cpp:
338         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
339
340 2011-02-13  Adam Barth  <abarth@webkit.org>
341
342         Reviewed by Sam Weinig.
343
344         crypto.getRandomValues should throw TYPE_MISMATCH_ERR
345         https://bugs.webkit.org/show_bug.cgi?id=54346
346
347         As requested by Sam.
348
349         * page/Crypto.cpp:
350         (WebCore::Crypto::getRandomValues):
351
352 2011-02-13  Alexey Proskuryakov  <ap@apple.com>
353
354         Reviewed by Dan Bernstein.
355
356         https://bugs.webkit.org/show_bug.cgi?id=54349
357         Inline some accessors in PrintContext
358
359         No change in behavior, so no tests.
360
361         * WebCore.exp.in:
362         * page/PrintContext.cpp:
363         * page/PrintContext.h:
364         (WebCore::PrintContext::pageCount):
365         (WebCore::PrintContext::pageRect):
366         Inline pageCount() and pageRect() to match pageRects().
367
368 2011-02-13  Sam Weinig  <sam@webkit.org>
369
370         Roll r78424 [Extra scrolling required when scrolling with a scroll wheel (Mighty Mouse)] back
371         in with fixes to make it work with render layers.
372
373         * platform/mac/ScrollAnimatorMac.h:
374         * platform/mac/ScrollAnimatorMac.mm:
375         (WebCore::ScrollAnimatorMac::scrollToOffsetWithoutAnimation):
376         (WebCore::ScrollAnimatorMac::adjustScrollXPositionIfNecessary):
377         (WebCore::ScrollAnimatorMac::adjustScrollYPositionIfNecessary):
378         (WebCore::ScrollAnimatorMac::adjustScrollPositionIfNecessary):
379         (WebCore::ScrollAnimatorMac::immediateScrollToPoint):
380         (WebCore::ScrollAnimatorMac::immediateScrollByDeltaX):
381         (WebCore::ScrollAnimatorMac::immediateScrollByDeltaY):
382         * rendering/RenderLayer.cpp:
383         (WebCore::RenderLayer::RenderLayer):
384         (WebCore::RenderLayer::contentsSize):
385         (WebCore::RenderLayer::visibleHeight):
386         (WebCore::RenderLayer::visibleWidth):
387         (WebCore::RenderLayer::updateScrollInfoAfterLayout):
388         * rendering/RenderLayer.h:
389         * rendering/RenderListBox.cpp:
390         (WebCore::RenderListBox::visibleHeight):
391         (WebCore::RenderListBox::visibleWidth):
392         * rendering/RenderListBox.h:
393
394 2011-02-13  Sam Weinig  <sam@webkit.org>
395
396         Reviewed by Dan Bernstein.
397
398         Some Scrollbar functions assume an attached ScrollableArea but can be called without one
399         https://bugs.webkit.org/show_bug.cgi?id=54262
400
401         Make sure that all calls to the scrollable area are null checked.
402
403         * platform/Scrollbar.cpp:
404         (WebCore::Scrollbar::autoscrollPressedPart):
405         (WebCore::Scrollbar::moveThumb):
406         (WebCore::Scrollbar::mouseMoved):
407
408 2011-02-13  Sam Weinig  <sam@webkit.org>
409
410         Roll out r78424. It broke a bunch of tests.
411
412         * platform/mac/ScrollAnimatorMac.h:
413         * platform/mac/ScrollAnimatorMac.mm:
414         (WebCore::ScrollAnimatorMac::scrollToOffsetWithoutAnimation):
415         (WebCore::ScrollAnimatorMac::immediateScrollToPoint):
416         (WebCore::ScrollAnimatorMac::immediateScrollByDeltaX):
417         (WebCore::ScrollAnimatorMac::immediateScrollByDeltaY):
418         * rendering/RenderLayer.cpp:
419         * rendering/RenderLayer.h:
420         (WebCore::RenderLayer::contentsSize):
421         * rendering/RenderListBox.cpp:
422         * rendering/RenderListBox.h:
423
424 2011-02-12  Sam Weinig  <sam@webkit.org>
425
426         Reviewed by Dan Bernstein.
427
428         WK2: Extra scrolling required when scrolling with a scroll wheel (Mighty Mouse)
429         <rdar://problem/8984760> 
430
431         When going down the smooth scroll path, constrained scrolls (such as those from a
432         Mighty Mouse) were being correctly constrained at the ScrollView level, but the 
433         duplicate values being stored by the animator were not being constrained correctly.
434
435         In order to implement the constraint at this level, more of the ScrollableArea's API
436         needed to be filled in for RenderLayer and RenderListBox.
437
438         * platform/mac/ScrollAnimatorMac.h:
439         * platform/mac/ScrollAnimatorMac.mm:
440         (WebCore::ScrollAnimatorMac::scrollToOffsetWithoutAnimation): Call immediateScrollToPoint to stay
441         consistent and get the desired behavior.
442
443         (WebCore::ScrollAnimatorMac::adjustScrollXPositionIfNecessary):
444         (WebCore::ScrollAnimatorMac::adjustScrollYPositionIfNecessary):
445         (WebCore::ScrollAnimatorMac::adjustScrollPositionIfNecessary):
446         (WebCore::ScrollAnimatorMac::immediateScrollToPoint):
447         (WebCore::ScrollAnimatorMac::immediateScrollByDeltaX):
448         (WebCore::ScrollAnimatorMac::immediateScrollByDeltaY):
449         Ensure that the scroll animators view of the current scroll position is the
450         same as the scrollable areas by correctly clamping the value.
451
452         * rendering/RenderLayer.cpp:
453         (WebCore::RenderLayer::contentsSize): Correct implementation
454         to use the scroll size, not the visible size.
455         (WebCore::RenderLayer::visibleHeight):
456         (WebCore::RenderLayer::visibleWidth):
457         * rendering/RenderLayer.h:
458         * rendering/RenderListBox.cpp:
459         (WebCore::RenderListBox::visibleHeight):
460         (WebCore::RenderListBox::visibleWidth):
461         * rendering/RenderListBox.h:
462         Add implementations for visibleHeight/visibleWidth.
463
464 2011-02-12  Adam Barth  <abarth@webkit.org>
465
466         Reviewed by Sam Weinig.
467
468         crypto.getRandomValues should support all integer array types
469         https://bugs.webkit.org/show_bug.cgi?id=54342
470
471         As discussed on whatwg, we should support all the integer array types.
472
473         Test: security/crypto-random-values-types.html
474
475         * page/Crypto.cpp:
476         (WebCore::Crypto::getRandomValues):
477
478 2011-02-12  Adam Barth  <abarth@webkit.org>
479
480         Reviewed by Mark Rowe.
481
482         Use /dev/urandom as the OSRandomSource on OS(DARWIN)
483         https://bugs.webkit.org/show_bug.cgi?id=54279
484
485         Update the ifdef.  OS(UNIX) includes OS(DARWIN), so this change is
486         should be a NOP.
487
488         * config.h:
489
490 2011-02-11  Zhenyao Mo  <zmo@google.com>
491
492         Reviewed by Kenneth Russell.
493
494         [chromium] Allow turning off multisampling through web preference settings
495         https://bugs.webkit.org/show_bug.cgi?id=54321
496
497         * html/canvas/WebGLRenderingContext.cpp:
498         (WebCore::WebGLRenderingContext::create): Disable multisampling in WebGL if web reference says so.
499         * page/Settings.cpp: Add a flag for multisampling preference.
500         (WebCore::Settings::Settings):
501         (WebCore::Settings::setOpenGLMultisamplingEnabled):
502         * page/Settings.h: Ditto.
503         (WebCore::Settings::openGLMultisamplingEnabled):
504
505 2011-02-12  Ryosuke Niwa  <rniwa@webkit.org>
506
507         Reviewed by Tony Chang.
508
509         Deploy EditingStyle in applyBlockStyle and applyInlineStyle
510         https://bugs.webkit.org/show_bug.cgi?id=53911
511
512         Deployed EditingStyle in ApplyStyleCommand::applyBlockStyle and ApplyStyleCommand::applyInlineStyle.
513         Extracted EditingStyle::extractAndRemoveTextDirection from applyInlineStyle.
514         Also added propertiesToInclude to the argument list of EditingStyle's constructor that takes Node*
515         so that splitAncestorsWithUnicodeBidi can call EditingStyle::textDirection to obtain the text direction.
516
517         No new tests are added since this is a refactoring.
518
519         * editing/ApplyStyleCommand.cpp:
520         (WebCore::ApplyStyleCommand::doApply): Passes EditingStyle* to applyBlockStyle and applyInlineStyle.
521         (WebCore::ApplyStyleCommand::applyBlockStyle): Takes EditingStyle*.
522         (WebCore::ApplyStyleCommand::splitAncestorsWithUnicodeBidi): Changed the type of allowedDirection
523         from int to WritingDirection. Uses EditingStyle's textDirection to obtain the writing direction.
524         (WebCore::ApplyStyleCommand::applyInlineStyle): Takes EditingStyle*.
525         (WebCore::ApplyStyleCommand::removeInlineStyleFromElement): Allows style to be null; exit early instead.
526         (WebCore::ApplyStyleCommand::removeImplicitlyStyledElement): Asserts that style is not null.
527         (WebCore::ApplyStyleCommand::removeInlineStyle): Allows style to be null.
528         * editing/ApplyStyleCommand.h: Includes WritingDirection.h; prototype changes.
529         * editing/EditingStyle.cpp:
530         (WebCore::EditingStyle::EditingStyle): Added PropertiesToInclude to the argument.
531         (WebCore::EditingStyle::init): Supports PropertiesToInclude.
532         (WebCore::EditingStyle::extractAndRemoveTextDirection): Extracted from applyInlineStyle.
533         * editing/EditingStyle.h:
534         (WebCore::EditingStyle::create): Supports PropertiesToInclude.
535
536 2011-02-12  Jochen Eisinger  <jochen@chromium.org>
537
538         Reviewed by Jeremy Orlow.
539
540         Implement IDBObjectStore::clear
541         https://bugs.webkit.org/show_bug.cgi?id=54193
542
543         Test: storage/indexeddb/objectstore-clear.html
544
545         * storage/IDBObjectStore.cpp:
546         (WebCore::IDBObjectStore::clear):
547         * storage/IDBObjectStore.h:
548         * storage/IDBObjectStore.idl:
549         * storage/IDBObjectStoreBackendImpl.cpp:
550         (WebCore::IDBObjectStoreBackendImpl::clear):
551         (WebCore::doDelete):
552         (WebCore::IDBObjectStoreBackendImpl::clearInternal):
553         * storage/IDBObjectStoreBackendImpl.h:
554         * storage/IDBObjectStoreBackendInterface.h:
555
556 2011-02-12  Adam Barth  <abarth@webkit.org>
557
558         Another attempt to fix the EFL build.  Looks like we're missing one
559         more file.
560
561         * CMakeLists.txt:
562
563 2011-02-12  Adam Barth  <abarth@webkit.org>
564
565         Attempt to fix the EFL build.  Apparently the CMake build had no
566         concept of ArrayBuffers.
567
568         * CMakeLists.txt:
569
570 2011-02-12  Ryosuke Niwa  <rniwa@webkit.org>
571
572         Unreviewed build fix.
573
574         * dom/Range.cpp:
575         (WebCore::lengthOfContentsInNode): Replaced static const unsigned LengthOfContentsInNode.
576         (WebCore::Range::processContents):
577         (WebCore::Range::processContentsBetweenOffsets):
578
579 2011-02-12  Adam Barth  <abarth@webkit.org>
580
581         CPP files belong in SOURCES not in HEADERS.  There are more errors like
582         this for other disabled features, but I'm not fixing them in this
583         patch.
584
585         * WebCore.pro:
586
587 2011-02-12  Adam Barth  <abarth@webkit.org>
588
589         Apparently lines in .pro files need to be \-terminated.
590
591         * WebCore.pro:
592
593 2011-02-11  Ryosuke Niwa  <rniwa@webkit.org>
594
595         Reviewed by Darin Adler.
596
597         Extract a function to process contents for one node from Range::processContents
598         https://bugs.webkit.org/show_bug.cgi?id=54282
599
600         Extracted Range::processContentsBetweenOffsets, which process contents of a node
601         between two offsets. This function is used for the simple case where the start
602         and the end containers are of the same node, and to process start and end containers
603         in the complex case.
604
605         When the function takes a non-null fragment (simple case), it appends the processed
606         contents to the fragment; character data and processing instruction's contents are copied
607         between the offsets, and descendants are copied for node of other types (not node itself).
608
609         When the fragment is null (complex case), the function copies contents of character data,
610         processing instruction, and node of other types (including node itself).
611
612         No new tests are added since this is a refactoring.
613
614         * dom/Range.cpp:
615         (WebCore::highestAncestorUnderCommonRoot): Added.
616         (WebCore::Range::processContents): Calls highestAncestorUnderCommonRoot and
617         processContentsBetweenOffsets.
618         (WebCore::Range::processContentsBetweenOffsets): Added.
619         * dom/Range.h:
620
621 2011-02-12  Adam Barth  <abarth@webkit.org>
622
623         Attempt to fix the Qt Windows build.
624
625         * WebCore.pro:
626
627 2011-02-12  Adam Barth  <abarth@webkit.org>
628
629         Reviewed by Kenneth Russell.
630
631         Enable ArrayBuffers by default
632         https://bugs.webkit.org/show_bug.cgi?id=54310
633
634         As discussed on webkit-dev, ArrayBuffers are used by a bunch of
635         different APIs, implemented by Firefox, and appear to be stable.
636         Keeping them conditional is a large mantainance burden than it's worth.
637
638         * DerivedSources.cpp:
639         * WebCore.vcproj/WebCore.vcproj:
640         * bindings/generic/RuntimeEnabledFeatures.h:
641         (WebCore::RuntimeEnabledFeatures::setWebGLEnabled):
642         * bindings/js/JSArrayBufferCustom.cpp:
643         * bindings/js/JSBindingsAllInOne.cpp:
644         * bindings/js/JSDOMWindowCustom.cpp:
645         * bindings/js/JSDataViewCustom.cpp:
646         * bindings/js/JSFloat32ArrayCustom.cpp:
647         * bindings/js/JSInt16ArrayCustom.cpp:
648         * bindings/js/JSInt32ArrayCustom.cpp:
649         * bindings/js/JSInt8ArrayCustom.cpp:
650         * bindings/js/JSUint16ArrayCustom.cpp:
651         * bindings/js/JSUint32ArrayCustom.cpp:
652         * bindings/js/JSUint8ArrayCustom.cpp:
653         * bindings/v8/custom/V8ArrayBufferCustom.cpp:
654         * bindings/v8/custom/V8ArrayBufferViewCustom.h:
655         * bindings/v8/custom/V8DataViewCustom.cpp:
656         * bindings/v8/custom/V8Float32ArrayCustom.cpp:
657         * bindings/v8/custom/V8Int16ArrayCustom.cpp:
658         * bindings/v8/custom/V8Int32ArrayCustom.cpp:
659         * bindings/v8/custom/V8Int8ArrayCustom.cpp:
660         * bindings/v8/custom/V8Uint16ArrayCustom.cpp:
661         * bindings/v8/custom/V8Uint32ArrayCustom.cpp:
662         * bindings/v8/custom/V8Uint8ArrayCustom.cpp:
663         * html/canvas/ArrayBuffer.cpp:
664         * html/canvas/ArrayBuffer.idl:
665         * html/canvas/ArrayBufferView.cpp:
666         * html/canvas/ArrayBufferView.idl:
667         * html/canvas/DataView.cpp:
668         * html/canvas/DataView.idl:
669         * html/canvas/Float32Array.cpp:
670         * html/canvas/Float32Array.idl:
671         * html/canvas/Int16Array.cpp:
672         * html/canvas/Int16Array.idl:
673         * html/canvas/Int32Array.cpp:
674         * html/canvas/Int32Array.idl:
675         * html/canvas/Int8Array.cpp:
676         * html/canvas/Int8Array.idl:
677         * html/canvas/Uint16Array.cpp:
678         * html/canvas/Uint16Array.idl:
679         * html/canvas/Uint32Array.cpp:
680         * html/canvas/Uint32Array.idl:
681         * html/canvas/Uint8Array.cpp:
682         * html/canvas/Uint8Array.idl:
683         * page/Crypto.cpp:
684         (WebCore::Crypto::getRandomValues):
685         * page/Crypto.h:
686         * page/Crypto.idl:
687         * page/DOMWindow.idl:
688         * workers/WorkerContext.idl:
689
690 2011-02-11  Yael Aharon  <yael.aharon@nokia.com>
691
692         Reviewed by Darin Adler.
693
694         Background image positioning on RTL text
695         https://bugs.webkit.org/show_bug.cgi?id=32862
696
697         When the style of InlineFlowBox is right-to-left, the strips should be rearranged in reverse order.
698
699         Tests: fast/inline/inline-box-background-long-image.html
700                fast/inline/inline-box-background-repeat-x.html
701                fast/inline/inline-box-background-repeat-y.html
702                fast/inline/inline-box-background.html
703
704         * rendering/InlineFlowBox.cpp:
705         (WebCore::InlineFlowBox::paintFillLayer):
706
707 2011-02-11  Sheriff Bot  <webkit.review.bot@gmail.com>
708
709         Unreviewed, rolling out r78044.
710         http://trac.webkit.org/changeset/78044
711         https://bugs.webkit.org/show_bug.cgi?id=54318
712
713         Broke Safari extensions (Requested by eseidel on #webkit).
714
715         * platform/KURL.cpp:
716         (WebCore::KURL::parse):
717
718 2011-02-11  Beth Dakin  <bdakin@apple.com>
719
720         Reviewed by Sam Weinig.
721
722         Fix for <rdar://problem/8976456> Scrollbars for overflow
723         areas never appear for WKScrollbarPainter scrollers
724
725         Call ScrollableArea::didAddVerticalScrollbar() and 
726         ScrollableArea::willRemoveVerticalScrollbar() when
727         appropriate for RenderLayers.
728         * rendering/RenderLayer.cpp:
729         (WebCore::RenderLayer::setHasHorizontalScrollbar):
730         (WebCore::RenderLayer::setHasVerticalScrollbar):
731
732 2011-02-11  Eric Seidel  <eric@webkit.org>
733
734         Reviewed by Adam Barth.
735
736         KURL should remove default port numbers when cannonicalizing urls (to match every other browser)
737         https://bugs.webkit.org/show_bug.cgi?id=54090
738
739         * platform/KURL.cpp:
740         (WebCore::isDefaultPortForScheme):
741         (WebCore::KURL::parse):
742
743 2011-02-11  Mike Reed  <reed@google.com>
744
745         Reviewed by James Robinson.
746
747         Need makeContextCurrent() called in prepareForSoftwareDraw(), in the case that skia's backend
748         is the gpu. This matches the pattern in GraphicsContext3DOpenGL.cpp
749
750         No new tests. All existing canvas layouttests exercise this code path
751
752         * platform/graphics/skia/PlatformContextSkia.cpp:
753         (WebCore::PlatformContextSkia::prepareForSoftwareDraw):
754
755 2011-02-11  Adam Klein  <adamk@chromium.org>
756
757         Reviewed by Darin Adler.
758
759         Check for empty scheme before accessing URLSchemeMaps in SchemeRegistry
760         https://bugs.webkit.org/show_bug.cgi?id=54304
761
762         This avoids potential crashes in HashMap, as WTF's StringHash doesn't
763         accept empty Strings.
764
765         * platform/SchemeRegistry.cpp:
766         (WebCore::SchemeRegistry::shouldTreatURLSchemeAsNoAccess):
767         (WebCore::SchemeRegistry::shouldTreatURLSchemeAsSecure):
768         (WebCore::SchemeRegistry::shouldLoadURLSchemeAsEmptyDocument):
769
770 2011-02-11  Adam Klein  <adamk@chromium.org>
771
772         Reviewed by Darin Fisher.
773
774         [fileapi] Add support for filesystem: URI handling
775         https://bugs.webkit.org/show_bug.cgi?id=53529
776
777         There are two major parts to this patch: one is to add an
778         implementation of Entry.toURI to the FileSystem API.
779         The other is to implement security origin checking for this
780         new scheme.
781
782         All changes are guarded by the FILE_SYSTEM feature. An accompanying
783         Chromium change, to support loading of filesystem: URIs, has recently
784         been submitted as Chromium r74082.
785
786         Spec:
787           http://dev.w3.org/2009/dap/file-system/file-dir-sys.html#methods-2
788         Proposed URI format, and discussion of security origin issues:
789           http://lists.w3.org/Archives/Public/public-webapps/2011JanMar/0218.html
790
791         Tests: fast/filesystem/directory-entry-to-uri.html
792                fast/filesystem/file-entry-to-uri.html
793                fast/filesystem/filesystem-uri-origin.html
794                http/tests/security/filesystem-iframe-from-remote.html
795
796         * fileapi/Entry.cpp:
797         (WebCore::Entry::toURI):
798         * fileapi/Entry.h:
799         * fileapi/Entry.idl:
800         - Added toURI method to the IDL, omitting the MIME type argument
801           specified in the spec as it will soon be removed.
802         * page/SecurityOrigin.cpp:
803         (WebCore::SecurityOrigin::SecurityOrigin):
804         - crack the filesystem: URI to get at the origin of the site
805         (WebCore::SecurityOrigin::canDisplay):
806         - canDisplay for filesystem: URIs is equivalent to canRequest
807         * platform/AsyncFileSystem.cpp:
808         (WebCore::AsyncFileSystem::create):
809         (WebCore::AsyncFileSystem::openFileSystem):
810         * platform/AsyncFileSystem.h:
811         (WebCore::AsyncFileSystem::type):
812         - Exposed filesystem type to allow toURI to use it as part of the
813           path.
814         (WebCore::AsyncFileSystem::AsyncFileSystem):
815         * platform/SchemeRegistry.cpp:
816         (WebCore::canDisplayOnlyIfCanRequestSchemes):
817         (WebCore::SchemeRegistry::canDisplayOnlyIfCanRequest):
818         (WebCore::SchemeRegistry::registerAsCanDisplayOnlyIfCanRequest):
819         - Generalized canDisplayOnlyIfCanRequest as it applies to both
820           filesystem: and blob: URIs.
821         * platform/SchemeRegistry.h:
822
823 2011-02-11  Beth Dakin  <bdakin@apple.com>
824
825         Reviewed by Darin Adler.
826
827         Fix for <rdar://problem/8961061> CrashTracer: [USER] 
828         1 crash at com.apple.WebCore: 
829         -[ScrollbarPainterControllerDelegate scrollerImpPair:updateScrollerStyleForNewRecommendedScrollerStyle:] + 62
830
831         Must check for null _animator.
832         * platform/mac/ScrollAnimatorMac.mm:
833         (-[ScrollbarPainterControllerDelegate scrollAnimatorDestroyed]):
834         (-[ScrollbarPainterControllerDelegate contentAreaRectForScrollerImpPair:]):
835         (-[ScrollbarPainterControllerDelegate inLiveResizeForScrollerImpPair:]):
836         (-[ScrollbarPainterControllerDelegate mouseLocationInContentAreaForScrollerImpPair:]):
837         (-[ScrollbarPainterControllerDelegate scrollerImpPair:convertContentPoint:toScrollerImp:]):
838         (-[ScrollbarPainterControllerDelegate scrollerImpPair:updateScrollerStyleForNewRecommendedScrollerStyle:]):
839         (WebCore::ScrollAnimatorMac::~ScrollAnimatorMac):
840
841 2011-02-11  Chris Rogers  <crogers@google.com>
842
843         Reviewed by Kenneth Russell.
844
845         Throw exception when AudioContext's createBuffer() fails to properly decode audio file data
846         https://bugs.webkit.org/show_bug.cgi?id=54158
847
848         No new tests since audio API is not yet implemented.
849
850         * bindings/js/JSAudioContextCustom.cpp:
851         (WebCore::JSAudioContextConstructor::constructJSAudioContext):
852         (WebCore::JSAudioContext::createBuffer):
853         * bindings/v8/custom/V8AudioContextCustom.cpp:
854         (WebCore::V8AudioContext::createBufferCallback):
855         * platform/audio/chromium/AudioBusChromium.cpp:
856         (WebCore::createBusFromInMemoryAudioFile):
857         * webaudio/AudioContext.idl:
858
859 2011-02-11  Mike Reed  <reed@google.com>
860
861         Reviewed by James Robinson.
862
863         Fix toDataURL() to use device->readPixels() if need be, rather than always dereferencing
864         the address returned by getPixels() (as the device may not be backed by a CPU bitmap)
865         https://bugs.webkit.org/show_bug.cgi?id=54224
866
867         No new tests. Existing canvas tests exercise this...
868         fast/canvas/script-tests/canvas-createPattern-fillRect-shadow.html
869
870         * platform/graphics/skia/ImageBufferSkia.cpp:
871         (WebCore::ImageBuffer::toDataURL):
872
873 2011-02-11  Andrew Wason  <rectalogic@rectalogic.com>
874
875         Reviewed by David Levin.
876
877         Files missing ENABLE_VIDEO #ifdef
878         https://bugs.webkit.org/show_bug.cgi?id=53390
879
880         No new tests.
881
882         * html/canvas/WebGLRenderingContext.cpp:
883         * html/canvas/WebGLRenderingContext.h:
884         * html/canvas/WebGLRenderingContext.idl:
885           Wrap methods and declarations that use HTMLVideoElement
886           with #if ENABLE(VIDEO).
887
888 2011-02-11  Sheriff Bot  <webkit.review.bot@gmail.com>
889
890         Unreviewed, rolling out r78331.
891         http://trac.webkit.org/changeset/78331
892         https://bugs.webkit.org/show_bug.cgi?id=54295
893
894         This patch broke 11 tests in GTK bots (Requested by svillar on
895         #webkit).
896
897         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
898         (webkit_accessible_get_name):
899         (webkit_accessible_detach):
900
901 2011-02-11  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>
902
903         Reviewed by Xan Lopez.
904
905         [GDOM] Video element needs proper wrapping
906         https://bugs.webkit.org/show_bug.cgi?id=54231
907
908         Use the same strategy as the one used for the audio tag to wrap
909         video as well. No layout tests because this only adds API.
910
911         * bindings/gobject/GNUmakefile.am:
912         * bindings/gobject/WebKitHTMLElementWrapperFactory.cpp:
913         (WebKit::createVideoWrapper):
914         (WebKit::createHTMLElementWrapper):
915
916 2011-02-11  Dirk Schulze  <krit@webkit.org>
917
918         Reviewed by Andreas Kling.
919
920         SVGStyledElement::fillAttributeToPropertyTypeMap triggers a clang warning (-Woverloaded-virtual)
921         https://bugs.webkit.org/show_bug.cgi?id=54259
922
923         Renamed fillAttributeToPropertyTypeMap with passed map to fillPassedAttributeToPropertyTypeMap to
924         avoid overloading a virtual function.
925
926         No change of functionality. Just fixing a build warning, so no new tests.
927
928         * svg/SVGAElement.cpp:
929         (WebCore::SVGAElement::fillAttributeToPropertyTypeMap):
930         * svg/SVGAltGlyphElement.cpp:
931         (WebCore::SVGAltGlyphElement::fillAttributeToPropertyTypeMap):
932         * svg/SVGCircleElement.cpp:
933         (WebCore::SVGCircleElement::fillAttributeToPropertyTypeMap):
934         * svg/SVGClipPathElement.cpp:
935         (WebCore::SVGClipPathElement::fillAttributeToPropertyTypeMap):
936         * svg/SVGEllipseElement.cpp:
937         (WebCore::SVGEllipseElement::fillAttributeToPropertyTypeMap):
938         * svg/SVGFEBlendElement.cpp:
939         (WebCore::SVGFEBlendElement::fillAttributeToPropertyTypeMap):
940         * svg/SVGFEColorMatrixElement.cpp:
941         (WebCore::SVGFEColorMatrixElement::fillAttributeToPropertyTypeMap):
942         * svg/SVGFEComponentTransferElement.cpp:
943         (WebCore::SVGFEComponentTransferElement::fillAttributeToPropertyTypeMap):
944         * svg/SVGFECompositeElement.cpp:
945         (WebCore::SVGFECompositeElement::fillAttributeToPropertyTypeMap):
946         * svg/SVGFEConvolveMatrixElement.cpp:
947         (WebCore::SVGFEConvolveMatrixElement::fillAttributeToPropertyTypeMap):
948         * svg/SVGFEDiffuseLightingElement.cpp:
949         (WebCore::SVGFEDiffuseLightingElement::fillAttributeToPropertyTypeMap):
950         * svg/SVGFEDisplacementMapElement.cpp:
951         (WebCore::SVGFEDisplacementMapElement::fillAttributeToPropertyTypeMap):
952         * svg/SVGFEFloodElement.cpp:
953         (WebCore::SVGFEFloodElement::fillAttributeToPropertyTypeMap):
954         * svg/SVGFEGaussianBlurElement.cpp:
955         (WebCore::SVGFEGaussianBlurElement::fillAttributeToPropertyTypeMap):
956         * svg/SVGFEImageElement.cpp:
957         (WebCore::SVGFEImageElement::fillAttributeToPropertyTypeMap):
958         * svg/SVGFEMergeElement.cpp:
959         (WebCore::SVGFEMergeElement::fillAttributeToPropertyTypeMap):
960         * svg/SVGFEMorphologyElement.cpp:
961         (WebCore::SVGFEMorphologyElement::fillAttributeToPropertyTypeMap):
962         * svg/SVGFEOffsetElement.cpp:
963         (WebCore::SVGFEOffsetElement::fillAttributeToPropertyTypeMap):
964         * svg/SVGFESpecularLightingElement.cpp:
965         (WebCore::SVGFESpecularLightingElement::fillAttributeToPropertyTypeMap):
966         * svg/SVGFETileElement.cpp:
967         (WebCore::SVGFETileElement::fillAttributeToPropertyTypeMap):
968         * svg/SVGFETurbulenceElement.cpp:
969         (WebCore::SVGFETurbulenceElement::fillAttributeToPropertyTypeMap):
970         * svg/SVGFilterElement.cpp:
971         (WebCore::SVGFilterElement::fillAttributeToPropertyTypeMap):
972         * svg/SVGFilterPrimitiveStandardAttributes.cpp:
973         (WebCore::SVGFilterPrimitiveStandardAttributes::fillPassedAttributeToPropertyTypeMap):
974         * svg/SVGFilterPrimitiveStandardAttributes.h:
975         * svg/SVGFontElement.cpp:
976         (WebCore::SVGFontElement::fillAttributeToPropertyTypeMap):
977         * svg/SVGForeignObjectElement.cpp:
978         (WebCore::SVGForeignObjectElement::fillAttributeToPropertyTypeMap):
979         * svg/SVGGlyphElement.cpp:
980         (WebCore::SVGGlyphElement::fillAttributeToPropertyTypeMap):
981         * svg/SVGGradientElement.cpp:
982         (WebCore::SVGGradientElement::fillPassedAttributeToPropertyTypeMap):
983         * svg/SVGGradientElement.h:
984         * svg/SVGImageElement.cpp:
985         (WebCore::SVGImageElement::fillAttributeToPropertyTypeMap):
986         * svg/SVGLineElement.cpp:
987         (WebCore::SVGLineElement::fillAttributeToPropertyTypeMap):
988         * svg/SVGLinearGradientElement.cpp:
989         (WebCore::SVGLinearGradientElement::fillAttributeToPropertyTypeMap):
990         * svg/SVGMarkerElement.cpp:
991         (WebCore::SVGMarkerElement::fillAttributeToPropertyTypeMap):
992         * svg/SVGMaskElement.cpp:
993         (WebCore::SVGMaskElement::fillAttributeToPropertyTypeMap):
994         * svg/SVGMissingGlyphElement.cpp:
995         (WebCore::SVGMissingGlyphElement::fillAttributeToPropertyTypeMap):
996         * svg/SVGPathElement.cpp:
997         (WebCore::SVGPathElement::fillAttributeToPropertyTypeMap):
998         * svg/SVGPatternElement.cpp:
999         (WebCore::SVGPatternElement::fillAttributeToPropertyTypeMap):
1000         * svg/SVGPolyElement.cpp:
1001         (WebCore::SVGPolyElement::fillAttributeToPropertyTypeMap):
1002         * svg/SVGRadialGradientElement.cpp:
1003         (WebCore::SVGRadialGradientElement::fillAttributeToPropertyTypeMap):
1004         * svg/SVGRectElement.cpp:
1005         (WebCore::SVGRectElement::fillAttributeToPropertyTypeMap):
1006         * svg/SVGStopElement.cpp:
1007         (WebCore::SVGStopElement::fillAttributeToPropertyTypeMap):
1008         * svg/SVGStyledElement.cpp:
1009         (WebCore::SVGStyledElement::fillPassedAttributeToPropertyTypeMap):
1010         * svg/SVGStyledElement.h:
1011         * svg/SVGStyledTransformableElement.cpp:
1012         (WebCore::SVGStyledTransformableElement::fillPassedAttributeToPropertyTypeMap):
1013         * svg/SVGStyledTransformableElement.h:
1014         * svg/SVGSwitchElement.cpp:
1015         (WebCore::SVGSwitchElement::fillAttributeToPropertyTypeMap):
1016         * svg/SVGSymbolElement.cpp:
1017         (WebCore::SVGSymbolElement::fillAttributeToPropertyTypeMap):
1018         * svg/SVGTRefElement.cpp:
1019         (WebCore::SVGTRefElement::fillAttributeToPropertyTypeMap):
1020         * svg/SVGTSpanElement.cpp:
1021         (WebCore::SVGTSpanElement::fillAttributeToPropertyTypeMap):
1022         * svg/SVGTextContentElement.cpp:
1023         (WebCore::SVGTextContentElement::fillPassedAttributeToPropertyTypeMap):
1024         * svg/SVGTextContentElement.h:
1025         * svg/SVGTextElement.cpp:
1026         (WebCore::SVGTextElement::fillAttributeToPropertyTypeMap):
1027         * svg/SVGTextPathElement.cpp:
1028         (WebCore::SVGTextPathElement::fillAttributeToPropertyTypeMap):
1029         * svg/SVGTextPositioningElement.cpp:
1030         (WebCore::SVGTextPositioningElement::fillPassedAttributeToPropertyTypeMap):
1031         * svg/SVGTextPositioningElement.h:
1032         * svg/SVGTitleElement.cpp:
1033         (WebCore::SVGTitleElement::fillAttributeToPropertyTypeMap):
1034         * svg/SVGUseElement.cpp:
1035         (WebCore::SVGUseElement::fillAttributeToPropertyTypeMap):
1036         * svg/SVGViewElement.cpp:
1037         (WebCore::SVGViewElement::fillAttributeToPropertyTypeMap):
1038
1039 2011-02-11  Andrey Adaikin  <aandrey@google.com>
1040
1041         Reviewed by Pavel Feldman.
1042
1043         Web Inspector: [REGRESSION] click on error message in console doesn't scroll into view
1044         https://bugs.webkit.org/show_bug.cgi?id=54089
1045
1046         * inspector/front-end/Drawer.js:
1047         (WebInspector.Drawer.prototype.show.animationFinished):
1048         (WebInspector.Drawer.prototype.show):
1049         (WebInspector.Drawer.prototype.hide):
1050         (WebInspector.Drawer.prototype.resize):
1051         (WebInspector.Drawer.prototype.immediatelyFinishAnimation):
1052         (WebInspector.Drawer.prototype._cancelAnimationIfNeeded):
1053         (WebInspector.Drawer.prototype._animateDrawerHeight.animationFinished):
1054         (WebInspector.Drawer.prototype._animateDrawerHeight):
1055         (WebInspector.Drawer.prototype._statusBarDragging):
1056         * inspector/front-end/inspector.js:
1057         (WebInspector.animateStyle):
1058         (WebInspector.animateStyle.forceComplete):
1059         (WebInspector.animateStyle.cancel):
1060         (WebInspector.showSourceLine):
1061
1062 2011-02-10  Nate Chapin  <japhet@chromium.org>
1063
1064         Reviewed by Adam Barth.
1065
1066         Make DocumentWriter a member of DocumentLoader
1067         instead of FrameLoader.
1068         https://bugs.webkit.org/show_bug.cgi?id=50489
1069
1070         Refactor, no new tests.
1071
1072         * bindings/ScriptControllerBase.cpp:
1073         (WebCore::ScriptController::executeIfJavaScriptURL):
1074         * dom/Document.cpp:
1075         (WebCore::Document::Document):
1076         (WebCore::Document::explicitClose):
1077         (WebCore::Document::lastModified):
1078         (WebCore::Document::initSecurityContext):
1079         (WebCore::Document::updateURLForPushOrReplaceState):
1080         * dom/Document.h:
1081         (WebCore::Document::setDocumentLoader):
1082         (WebCore::Document::loader):
1083         * html/MediaDocument.cpp:
1084         (WebCore::MediaDocument::replaceMediaElementTimerFired):
1085         * html/PluginDocument.cpp:
1086         (WebCore::PluginDocumentParser::createDocumentStructure):
1087         * loader/DocumentLoader.cpp:
1088         (WebCore::DocumentLoader::DocumentLoader):
1089         (WebCore::DocumentLoader::finishedLoading):
1090         (WebCore::DocumentLoader::commitData):
1091         (WebCore::DocumentLoader::setupForReplaceByMIMEType):
1092         (WebCore::DocumentLoader::setFrame):
1093         * loader/DocumentLoader.h:
1094         (WebCore::DocumentLoader::writer):
1095         * loader/DocumentWriter.cpp:
1096         (WebCore::DocumentWriter::begin):
1097         * loader/DocumentWriter.h:
1098         (WebCore::DocumentWriter::setFrame):
1099         * loader/FrameLoader.cpp:
1100         (WebCore::FrameLoader::FrameLoader):
1101         (WebCore::FrameLoader::init):
1102         (WebCore::FrameLoader::clear):
1103         (WebCore::FrameLoader::receivedFirstData):
1104         (WebCore::FrameLoader::transitionToCommitted):
1105         (WebCore::FrameLoader::open):
1106         (WebCore::FrameLoader::finishedLoadingDocument):
1107         (WebCore::FrameLoader::addExtraFieldsToRequest):
1108         * loader/FrameLoader.h:
1109         (WebCore::FrameLoader::notifier):
1110         * svg/graphics/SVGImage.cpp:
1111         (WebCore::SVGImage::dataChanged):
1112
1113 2011-02-10  Pavel Feldman  <pfeldman@chromium.org>
1114
1115         Reviewed by Yury Semikhatsky.
1116
1117         Web Inspector: make InspectorAgent own sub-agents, align agent creation/deletion routines.
1118         https://bugs.webkit.org/show_bug.cgi?id=54227
1119
1120         * dom/Document.cpp:
1121         (WebCore::Document::finishedParsing):
1122         * inspector/InspectorAgent.cpp:
1123         (WebCore::InspectorAgent::restoreInspectorStateFromCookie):
1124         (WebCore::InspectorAgent::setFrontend):
1125         (WebCore::InspectorAgent::disconnectFrontend):
1126         (WebCore::InspectorAgent::releaseFrontendLifetimeAgents):
1127         (WebCore::InspectorAgent::didCommitLoad):
1128         (WebCore::InspectorAgent::domContentLoadedEventFired):
1129         (WebCore::InspectorAgent::loadEventFired):
1130         (WebCore::InspectorAgent::startTimelineProfiler):
1131         (WebCore::InspectorAgent::stopTimelineProfiler):
1132         * inspector/InspectorAgent.h:
1133         * inspector/InspectorCSSAgent.cpp:
1134         * inspector/InspectorDOMAgent.cpp:
1135         (WebCore::InspectorDOMAgent::InspectorDOMAgent):
1136         (WebCore::InspectorDOMAgent::startListening):
1137         (WebCore::InspectorDOMAgent::stopListening):
1138         (WebCore::InspectorDOMAgent::mainDOMContentLoaded):
1139         (WebCore::InspectorDOMAgent::loadEventFired):
1140         * inspector/InspectorDOMAgent.h:
1141         (WebCore::InspectorDOMAgent::create):
1142         * inspector/InspectorDOMStorageAgent.cpp:
1143         (WebCore::InspectorDOMStorageAgent::~InspectorDOMStorageAgent):
1144         * inspector/InspectorDOMStorageAgent.h:
1145         (WebCore::InspectorDOMStorageAgent::create):
1146         * inspector/InspectorDOMStorageResource.h:
1147         * inspector/InspectorDatabaseAgent.cpp:
1148         (WebCore::InspectorDatabaseAgent::~InspectorDatabaseAgent):
1149         (WebCore::InspectorDatabaseAgent::executeSQL):
1150         (WebCore::InspectorDatabaseAgent::selectDatabase):
1151         (WebCore::InspectorDatabaseAgent::InspectorDatabaseAgent):
1152         * inspector/InspectorDatabaseAgent.h:
1153         (WebCore::InspectorDatabaseAgent::FrontendProvider::create):
1154         (WebCore::InspectorDatabaseAgent::FrontendProvider::~FrontendProvider):
1155         (WebCore::InspectorDatabaseAgent::FrontendProvider::frontend):
1156         (WebCore::InspectorDatabaseAgent::FrontendProvider::clearFrontend):
1157         (WebCore::InspectorDatabaseAgent::FrontendProvider::FrontendProvider):
1158         (WebCore::InspectorDatabaseAgent::create):
1159         * inspector/InspectorDatabaseResource.cpp:
1160         (WebCore::InspectorDatabaseResource::InspectorDatabaseResource):
1161         (WebCore::InspectorDatabaseResource::bind):
1162         * inspector/InspectorDatabaseResource.h:
1163         * inspector/InspectorInstrumentation.cpp:
1164         (WebCore::InspectorInstrumentation::domContentLoadedEventFiredImpl):
1165         (WebCore::InspectorInstrumentation::loadEventFiredImpl):
1166         * inspector/InspectorInstrumentation.h:
1167         (WebCore::InspectorInstrumentation::domContentLoadedEventFired):
1168         (WebCore::InspectorInstrumentation::loadEventFired):
1169         * inspector/InspectorState.cpp:
1170         (WebCore::InspectorState::InspectorState):
1171         (WebCore::InspectorState::mute):
1172         (WebCore::InspectorState::updateCookie):
1173         * inspector/InspectorState.h:
1174         (WebCore::InspectorState::~InspectorState):
1175         * inspector/InspectorTimelineAgent.cpp:
1176         (WebCore::InspectorTimelineAgent::restore):
1177         (WebCore::InspectorTimelineAgent::~InspectorTimelineAgent):
1178         (WebCore::InspectorTimelineAgent::didCommitLoad):
1179         (WebCore::InspectorTimelineAgent::setFrontend):
1180         (WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
1181         * inspector/InspectorTimelineAgent.h:
1182         (WebCore::InspectorTimelineAgent::create):
1183         * page/DOMWindow.cpp:
1184         (WebCore::DOMWindow::dispatchLoadEvent):
1185
1186 2011-02-11  Pavel Feldman  <pfeldman@chromium.org>
1187
1188         Reviewed by Yury Semikhatsky.
1189
1190         Web Inspector: command line API $0 regressed.
1191         https://bugs.webkit.org/show_bug.cgi?id=54283
1192
1193         * inspector/InjectedScriptSource.js:
1194
1195 2011-02-11  Janne Koskinen  <janne.p.koskinen@digia.com>
1196
1197         Reviewed by Andreas Kling.
1198
1199         [Qt][S60] Vertical borders of buttons and frames are misaligned
1200         https://bugs.webkit.org/show_bug.cgi?id=51169
1201
1202         Force anti-aliasing for lines and rects when using OpenVG backend on Symbian.
1203         OpenVG cannot guarantee rendering to be on pixel in floating point co-ordinates
1204         without anti-aliasing. Patch idea by Laszlo Agocs.
1205
1206         * platform/graphics/qt/GraphicsContextQt.cpp:
1207         (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
1208
1209 2011-02-11  Mario Sanchez Prada  <msanchez@igalia.com>
1210
1211         Reviewed by Xan Lopez.
1212
1213         [GTK] events missing when a document is (re)loaded
1214         https://bugs.webkit.org/show_bug.cgi?id=25831
1215
1216         Make sure webArea returns a proper name and that a signal
1217         'state-change::defunct' is emitted when detaching the wrapper.
1218
1219         Test: platform/gtk/accessibility/document-reload-events.html
1220
1221         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
1222         (webkit_accessible_get_name): Returns the current document's title
1223         as fallback mechanism for webArea objects.
1224         (webkit_accessible_detach): Emit 'state-change::defunct' function
1225         as soon as the wrapper is detached from the related core object.
1226
1227 2011-02-11  Pavel Feldman  <pfeldman@chromium.org>
1228
1229         Reviewed by Yury Semikhatsky.
1230
1231         Web Inspector: command line's API inspect() is broken.
1232         https://bugs.webkit.org/show_bug.cgi?id=54275
1233
1234         Test: inspector/command-line-api.html
1235
1236         * inspector/InjectedScriptSource.js:
1237
1238 2011-02-11  Adam Barth  <abarth@webkit.org>
1239
1240         Turns out window.crypto is supposed to be readonly.
1241
1242         * page/DOMWindow.idl:
1243
1244 2011-02-11  Adam Barth  <abarth@webkit.org>
1245
1246         Actually add Crypto.cpp to the Windows build.  I'm terrible.
1247
1248         * WebCore.vcproj/WebCore.vcproj:
1249
1250 2011-02-11  Adam Barth  <abarth@webkit.org>
1251
1252         Attempt to fix the Windows build.  Apparently we don't support
1253         conditional attributes on functions.  This patch makes the whole Crypto
1254         interface conditional on ArrayBuffer support.
1255
1256         * page/DOMWindow.idl:
1257         * page/Crypto.cpp:
1258         * page/Crypto.h:
1259         * page/Crypto.idl:
1260
1261 2011-02-10  Antti Koivisto  <antti@apple.com>
1262
1263         Reviewed by Dave Hyatt.
1264
1265         Enable ancestor identifier filtering for tree building
1266         https://bugs.webkit.org/show_bug.cgi?id=54241
1267         
1268         Call CSSStyleSelector::push/popParent() during tree building too, fix up the parent
1269         element stack as needed.
1270         
1271         This roughly halves the remaining time in style matching over a typical page load.
1272
1273         * css/CSSStyleSelector.cpp:
1274         (WebCore::CSSStyleSelector::pushParentStackFrame):
1275         (WebCore::CSSStyleSelector::popParentStackFrame):
1276         (WebCore::CSSStyleSelector::pushParent):
1277         (WebCore::CSSStyleSelector::popParent):
1278         * css/CSSStyleSelector.h:
1279         (WebCore::CSSStyleSelector::ParentStackFrame::ParentStackFrame):
1280         * dom/Document.h:
1281         (WebCore::Document::styleSelectorIfExists):
1282         * dom/Element.cpp:
1283         (WebCore::Element::beginParsingChildren):
1284         (WebCore::Element::finishParsingChildren):
1285         * dom/Element.h:
1286
1287 2011-02-10  Adam Barth  <abarth@webkit.org>
1288
1289         Reviewed by Eric Seidel.
1290
1291         WebKit should have a cryptographic RNG
1292         https://bugs.webkit.org/show_bug.cgi?id=22049
1293
1294         Add crypto.getRandomValues.  Yes, all these diffs are required to
1295         expose a single function to the DOM.
1296
1297         Test: security/crypto-random-values.html
1298
1299         * Android.mk:
1300         * CMakeLists.txt:
1301         * DerivedSources.cpp:
1302         * DerivedSources.make:
1303         * ForwardingHeaders/wtf/CryptographicallyRandomNumber.h: Added.
1304         * GNUmakefile.am:
1305         * WebCore.gypi:
1306         * WebCore.pri:
1307         * WebCore.pro:
1308         * WebCore.vcproj/WebCore.vcproj:
1309         * WebCore.xcodeproj/project.pbxproj:
1310         * bindings/js/JSDOMWindowCustom.cpp:
1311         * bindings/v8/custom/V8DOMWindowCustom.cpp:
1312         * config.h:
1313         * page/Crypto.cpp: Added.
1314         (WebCore::Crypto::Crypto):
1315         (WebCore::Crypto::getRandomValues):
1316         * page/Crypto.h: Added.
1317         (WebCore::Crypto::create):
1318         * page/Crypto.idl: Added.
1319         * page/DOMWindow.cpp:
1320         (WebCore::DOMWindow::clear):
1321         (WebCore::DOMWindow::crypto):
1322         * page/DOMWindow.h:
1323         (WebCore::DOMWindow::optionalCrypto):
1324         * page/DOMWindow.idl:
1325
1326 2011-02-11  Ryuan Choi  <ryuan.choi@samsung.com>
1327
1328         Unreviewed build fix.
1329
1330         [GTK] Build break with 2.18.3
1331         https://bugs.webkit.org/show_bug.cgi?id=54057
1332
1333         * platform/gtk/ScrollbarThemeGtk2.cpp: Include GtkVersioning.h
1334
1335 2011-02-11  Cosmin Truta  <ctruta@chromium.org>
1336
1337         Reviewed by Adam Barth.
1338
1339         Templatize KURLGooglePrivate::init
1340         https://bugs.webkit.org/show_bug.cgi?id=53749
1341
1342         No new tests. Refactoring.
1343
1344         * platform/KURLGoogle.cpp:
1345         (WebCore::KURLGooglePrivate::init):
1346         * platform/KURLGooglePrivate.h:
1347
1348 2011-02-10  Andy Estes  <aestes@apple.com>
1349
1350         Reviewed by Eric Seidel.
1351
1352         Convert ContainerNode::firstElementChild() to a free function.
1353         https://bugs.webkit.org/show_bug.cgi?id=54269
1354
1355         No new tests. No change in behavior.
1356         
1357         It seemed incorrect to have a method on ContainerNode that had the
1358         concept of an Element but couldn't return an Element*, but a method on
1359         Element could not be called by holders of ContainerNodes or other
1360         non-Element ContainerNode subclasses. A free function can both return
1361         an Element* and be called by anyone with a ContainerNode*.
1362
1363         * dom/ContainerNode.h:
1364         (WebCore::ContainerNode::lastChild):
1365         (WebCore::Node::lastChild):
1366         * dom/Document.cpp:
1367         (WebCore::Document::cacheDocumentElement):
1368         * dom/Element.cpp:
1369         (WebCore::Element::firstElementChild):
1370         * dom/Element.h:
1371         (WebCore::firstElementChild):
1372         * html/parser/HTMLTreeBuilder.cpp:
1373         (WebCore::HTMLTreeBuilder::FragmentParsingContext::finished):
1374
1375 2011-02-10  Mads Ager  <ager@chromium.org>
1376
1377         Reviewed by Nate Chapin.
1378
1379         [V8] Don't crash on exception getting event handler function
1380         https://bugs.webkit.org/show_bug.cgi?id=54216
1381
1382         Check for exceptions when attempting to get the handleEvent property
1383         of an event-handler object.
1384
1385         Test: fast/dom/exception-getting-event-handler.html
1386
1387         * bindings/v8/V8EventListener.cpp:
1388         (WebCore::V8EventListener::getListenerFunction):
1389
1390 2011-02-10  Naoki Takano  <takano.naoki@gmail.com>
1391
1392         Reviewed by James Robinson.
1393
1394         [Chromium] Layout Test canvas/philip/tests/2d.composite.globalAlpha.fill.html with --accelerated-2d-canvas.
1395         https://bugs.webkit.org/show_bug.cgi?id=53857
1396
1397         globalAlpha is not applied to fillPath() and fillRect().
1398
1399         Test: fast/canvas/2d.composite.globalAlpha.fillPath.html and canvas/philip/tests/2d.composite.globalAlpha.fill.html with --accelerated-2d-canvas.
1400
1401         * platform/graphics/chromium/GLES2Canvas.cpp:
1402         (WebCore::GLES2Canvas::State::applyAlpha): Append a new function to apply global alpha when fillRect() and fillPath() are called.
1403         (WebCore::GLES2Canvas::fillRect): Global alpha is applied to m_fillColor.
1404         (WebCore::GLES2Canvas::fillPath): Global alpha is applied to m_fillColor.
1405
1406 2011-02-10  Andy Estes  <aestes@apple.com>
1407
1408         Reviewed by Adam Barth.
1409
1410         Remove an unneeded argument from HTMLDocument::create().
1411         https://bugs.webkit.org/show_bug.cgi?id=54268
1412         
1413         Now that HTMLTreeBuilder no longer uses a dummy HTMLDocument for
1414         fragment parsing, there isn't a need to explicitly specify a baseURL
1415         when constructing an HTMLDocument. We can remove the unneeded argument.
1416         
1417         Also fix some style issues in Document.h and HTMLDocument.h caught by
1418         check-webkit-style.
1419
1420         No new tests. No change in behavior.
1421
1422         * dom/Document.cpp:
1423         (WebCore::Document::Document):
1424         * dom/Document.h:
1425         * html/HTMLDocument.cpp:
1426         (WebCore::HTMLDocument::HTMLDocument):
1427         * html/HTMLDocument.h:
1428         (WebCore::HTMLDocument::create):
1429
1430 2011-02-10  Michael Saboff  <msaboff@apple.com>
1431
1432         Reviewed by Geoffrey Garen.
1433
1434         Cached JavaScript Parser Data Being Left in Memory Cache
1435         https://bugs.webkit.org/show_bug.cgi?id=54245
1436
1437         Added logic in CachedScript to clear SourceProviderCache data in
1438         destroyDecodedData().  Added and changed CachedScript timeout to
1439         act similar to CachedImage.  Changed didAddClient to call super
1440         class method instead of duplicating the logic in the derived
1441         classes.
1442
1443         * loader/cache/CachedImage.cpp:
1444         (WebCore::CachedImage::didAddClient):
1445         * loader/cache/CachedScript.cpp:
1446         (WebCore::CachedScript::didAddClient):
1447         (WebCore::CachedScript::allClientsRemoved):
1448         (WebCore::CachedScript::script):
1449         (WebCore::CachedScript::destroyDecodedData):
1450         * loader/cache/CachedScript.h:
1451
1452 2011-02-10  Cosmin Truta  <ctruta@chromium.org>
1453
1454         Reviewed by David Levin.
1455
1456         Fix style in KURLGooglePrivate
1457         https://bugs.webkit.org/show_bug.cgi?id=54228
1458
1459         Replace occurrences of NULL with 0, '\0' or null (as applicable),
1460         to appease check-webkit-style.
1461
1462         No new tests. This is a style fix.
1463
1464         * platform/KURLGoogle.cpp:
1465         * platform/KURLGooglePrivate.h:
1466
1467 2011-02-10  Andy Estes  <aestes@apple.com>
1468
1469         Reviewed by Darin Adler.
1470
1471         HTML5 TreeBuilder regressed a Peacekeeper DOM test by 40%
1472         https://bugs.webkit.org/show_bug.cgi?id=48719
1473         
1474         The HTML5 fragment parsing algorithm specifies that a new Document
1475         should be created to serve as the temporary parent of fragment nodes
1476         during parsing. Document creation is expensive and accounts for ~38% of
1477         the Peacekeeper DOM performance regression. Avoid the cost of creating
1478         a dummy document by using the already-created DocumentFragment as the
1479         root node during fragment parsing.
1480         
1481         With this patch, the regression in Peacekeeper from Safari 5.0.3 to ToT
1482         is ~24%.
1483
1484         Test: fast/parser/fragment-parser-doctype.html
1485
1486         * dom/ContainerNode.h:
1487         (WebCore::ContainerNode::firstElementChild): Add a method that returns
1488         the first element-typed child from a ContainerNode.
1489         * dom/Document.cpp:
1490         (WebCore::Document::cacheDocumentElement): Call
1491         ContainerNode::firstElementChild() to retrieve and cache the document
1492         element.
1493         * html/parser/HTMLConstructionSite.cpp:
1494         (WebCore::HTMLConstructionSite::HTMLConstructionSite): Initialize the
1495         root ContainerNode.
1496         (WebCore::HTMLConstructionSite::detach): Clear the reference to the
1497         root ContainerNode.
1498         (WebCore::HTMLConstructionSite::insertHTMLHtmlStartTagBeforeHTML):
1499         Attach the new element to the root ContainerNode.
1500         (WebCore::HTMLConstructionSite::insertDoctype): Ditto.
1501         (WebCore::HTMLConstructionSite::insertCommentOnDocument): Ditto.
1502         * html/parser/HTMLConstructionSite.h: Store a pointer to a
1503         ContainerNode that will be used as the root node for document parsing.
1504         This node might or might not be the same as m_document.
1505         * html/parser/HTMLTreeBuilder.cpp:
1506         (WebCore::HTMLTreeBuilder::HTMLTreeBuilder): Initialize the
1507         HTMLConstructionSite with the correct root ContainerNode based on
1508         whether or not we're parsing a fragment.
1509         (WebCore::HTMLTreeBuilder::FragmentParsingContext::FragmentParsingContext):
1510         Remove m_dummyDocumentForFragmentParsing.
1511         (WebCore::HTMLTreeBuilder::FragmentParsingContext::finished): If the
1512         fragment has a context element, store only the children of the root
1513         element (HTML5 Section 10.4, Step 7).
1514         * html/parser/HTMLTreeBuilder.h:
1515
1516 2011-02-10  Beth Dakin  <bdakin@apple.com>
1517
1518         Reviewed by Oliver Hunt.
1519
1520         Speculative fix for <rdar://problem/8971107> CrashTracer: 6 crashes
1521         in WebProcess at com.apple.AppKit: 
1522         -[NSAnimation(NSInternal) _advanceTimeWithTimer:] + 154
1523
1524         * platform/mac/ScrollAnimatorMac.mm:
1525         (-[ScrollbarPartAnimation scrollAnimatorDestroyed]):
1526
1527 2011-02-09  Jeremy Orlow  <jorlow@chromium.org>
1528
1529         Reviewed by Nate Chapin.
1530
1531         IndexedDB event targets need to ensure their wrappers aren't garbage collected
1532         https://bugs.webkit.org/show_bug.cgi?id=54144
1533
1534         hasActivityPending should return true as long as it's possible that we'll
1535         fire more event listeners on our event targets. It is still possible for
1536         user generated events to run into problems, but I'm not sure how to address
1537         that yet (or how big of a deal it is).
1538
1539         There's really no way to test this deterministically. Testing by hand makes
1540         it seem like this patch works as expected though.
1541
1542         * storage/IDBCursorBackendImpl.cpp:
1543         * storage/IDBDatabase.cpp:
1544         (WebCore::IDBDatabase::IDBDatabase):
1545         (WebCore::IDBDatabase::~IDBDatabase):
1546         (WebCore::IDBDatabase::hasPendingActivity):
1547         (WebCore::IDBDatabase::stop):
1548         * storage/IDBDatabase.h:
1549         * storage/IDBRequest.cpp:
1550         (WebCore::IDBRequest::IDBRequest):
1551         (WebCore::IDBRequest::hasPendingActivity):
1552         (WebCore::IDBRequest::dispatchEvent):
1553         (WebCore::IDBRequest::enqueueEvent):
1554         * storage/IDBRequest.h:
1555         * storage/IDBTransaction.cpp:
1556         (WebCore::IDBTransaction::finished):
1557         (WebCore::IDBTransaction::hasPendingActivity):
1558         (WebCore::IDBTransaction::dispatchEvent):
1559         (WebCore::IDBTransaction::canSuspend):
1560         (WebCore::IDBTransaction::contextDestroyed):
1561         (WebCore::IDBTransaction::enqueueEvent):
1562         * storage/IDBTransaction.h:
1563
1564 2011-02-10  Ademar de Souza Reis Jr  <ademar.reis@openbossa.org>
1565
1566         Reviewed by Andreas Kling.
1567
1568         [Qt] create pkg-config files for mingw
1569         https://bugs.webkit.org/show_bug.cgi?id=54238
1570
1571         (mingw is mostly the same as unix)
1572
1573         This change was applied in the Qt repository (qt/src/3rdparty/webkit),
1574         so we should do the same here in QtWebKit.
1575
1576         Patch by Mark Brand <mabrand@mabrand.nl>, reviewed (there) by
1577         Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
1578         45fe2dddc3a0677b9ec9fce09f07cd4129e37afa
1579
1580         * WebCore.pro:
1581
1582 2011-02-10  Andreas Kling  <kling@webkit.org>
1583
1584         Reviewed by Antti Koivisto.
1585
1586         RenderStyle: Remove duplicate comparison of InheritedFlags::_text_transform
1587         https://bugs.webkit.org/show_bug.cgi?id=54246
1588
1589         * rendering/style/RenderStyle.h:
1590
1591 2011-02-10  Dirk Schulze  <krit@webkit.org>
1592
1593         Reviewed by Andreas Kling.
1594
1595         SVG animation avoid unnecessary adjust for currentColor
1596         https://bugs.webkit.org/show_bug.cgi?id=54243
1597
1598         At the moment we try to adjust every animation value for currentColor - independent of the animation type.
1599         Since the value is a string and the target element may needs to get called by getElementById, this could
1600         be an expensive and unnecessary operation. Also after we adjust for currentColor, we save the result back
1601         as a string and parse it to Color afterwards again.
1602         With the patch we just adjust an animation value, if we use color animation. The color won't get saved and
1603         parsed as a string again.
1604
1605         No change of functionality, no new tests.
1606
1607         * svg/SVGAnimateElement.cpp:
1608         (WebCore::adjustForCurrentColor):
1609         (WebCore::SVGAnimateElement::calculateFromAndToValues):
1610         (WebCore::SVGAnimateElement::calculateFromAndByValues):
1611         * svg/SVGAnimationElement.cpp:
1612         (WebCore::SVGAnimationElement::currentValuesForValuesAnimation):
1613         (WebCore::SVGAnimationElement::startedActiveInterval):
1614
1615 2011-02-10  Ademar de Souza Reis Jr  <ademar.reis@openbossa.org>
1616
1617         Reviewed by Andreas Kling.
1618
1619         [Qt] Remove the use of deprecated qFindChildren()
1620         https://bugs.webkit.org/show_bug.cgi?id=54232
1621
1622         This was applied on the Qt repository and affects QtWebKit there.
1623         (13833beb641289c45faed337848d37280195aadc)
1624
1625         The side effect of this change is that we won't be able to build
1626         QtWebKit with MSVC 6, as it doesn't support member template functions
1627         (not sure if that's possible today anyway).
1628
1629         Original patch from Olivier Goffart <olivier.goffart@nokia.com>, with
1630         review reported as being from the mailing list.
1631
1632         The changes are result of the following commands:
1633
1634             git grep -O"sed -i 's/qF\(indChildr*e*n*<[^>]*>\)(this,* */f\\1(/'" qFindChild
1635             git grep -O"sed -i 's/qF\(indChildr*e*n*<[^>]*>\)(&\([^\(),]*\),* */\\2.f\\1(/'" qFindChild
1636             git grep -O"sed -i 's/qF\(indChildr*e*n*<[^>]*>\)(\([^\(),]*()\),* */\\2->f\\1(/'" qFindChild
1637             git grep -O"sed -i 's/qF\(indChildr*e*n*<[^>]*>\)(\([^\(),]*\):\([^\(),]*\),* */(\\2:\\3)->f\\1(/'" qFindChild
1638             git grep -O"sed -i 's/qF\(indChildr*e*n*<[^>]*>\)(\([^\(),]*\),* */\\2->f\\1(/'" qFindChild
1639
1640         * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
1641         (WebCore::MediaPlayerPrivatePhonon::MediaPlayerPrivatePhonon):
1642
1643 2011-02-10  Ademar de Souza Reis Jr  <ademar.reis@openbossa.org>
1644
1645         Reviewed by Andreas Kling.
1646
1647         [Qt] Rename build target from "embedded" to "qpa"
1648         https://bugs.webkit.org/show_bug.cgi?id=54233
1649
1650         This flag is used by Qt's configure script to enable a QPA build
1651         ("QPA is a window system agnostic implementation of Qt" --
1652         previously known as lighthouse).
1653
1654         On the Qt repository, this was changed by two commits:
1655
1656         13a0b4935900093607f2b3b7688e1452d22770fd
1657         (from embedded to embedded_lite)
1658
1659         9716e12e0f5590ebc23ad9fb7ba75c6a3c5aadab
1660         (from embedded_lite to qpa)
1661
1662         * WebCore.pro:
1663
1664 2011-02-10  Kenneth Russell  <kbr@google.com>
1665
1666         Reviewed by James Robinson.
1667
1668         Incorporate algorithm for processing paths into GPU-renderable triangle meshes
1669         https://bugs.webkit.org/show_bug.cgi?id=45521
1670
1671         Adding an implementation of Loop and Blinn's GPU accelerated path
1672         rendering algorithm from GPU Gems 3. This implementation pays
1673         particular attention to the efficiency of the curve subdivision
1674         phase needed for correct rendering. It utilizes the OpenGL utility
1675         library tessellator for triangulation of the interior of the
1676         shape. The regions handled by Loop and Blinn's algorithm are
1677         handled by the local triangulator previously incorporated.
1678
1679         No tests yet; pixel tests will eventually be used to verify this
1680         algorithm and prevent regressions.
1681
1682         * platform/graphics/gpu/LoopBlinnPathProcessor.cpp: Added.
1683         (WebCore::LoopBlinnPathProcessorImplementation::Segment::Segment):
1684         (WebCore::LoopBlinnPathProcessorImplementation::Segment::setup):
1685         (WebCore::LoopBlinnPathProcessorImplementation::Segment::kind):
1686         (WebCore::LoopBlinnPathProcessorImplementation::Segment::getPoint):
1687         (WebCore::LoopBlinnPathProcessorImplementation::Segment::next):
1688         (WebCore::LoopBlinnPathProcessorImplementation::Segment::prev):
1689         (WebCore::LoopBlinnPathProcessorImplementation::Segment::setNext):
1690         (WebCore::LoopBlinnPathProcessorImplementation::Segment::setPrev):
1691         (WebCore::LoopBlinnPathProcessorImplementation::Segment::contour):
1692         (WebCore::LoopBlinnPathProcessorImplementation::Segment::subdivide):
1693         (WebCore::LoopBlinnPathProcessorImplementation::Segment::boundingBox):
1694         (WebCore::LoopBlinnPathProcessorImplementation::Segment::numCrossingsForXRay):
1695         (WebCore::LoopBlinnPathProcessorImplementation::Segment::numberOfTriangles):
1696         (WebCore::LoopBlinnPathProcessorImplementation::Segment::getTriangle):
1697         (WebCore::LoopBlinnPathProcessorImplementation::Segment::numberOfInteriorVertices):
1698         (WebCore::LoopBlinnPathProcessorImplementation::Segment::getInteriorVertex):
1699         (WebCore::LoopBlinnPathProcessorImplementation::Segment::markedForSubdivision):
1700         (WebCore::LoopBlinnPathProcessorImplementation::Segment::setMarkedForSubdivision):
1701         (WebCore::LoopBlinnPathProcessorImplementation::Segment::toString):
1702         (WebCore::LoopBlinnPathProcessorImplementation::Segment::computeBoundingBox):
1703         (WebCore::LoopBlinnPathProcessorImplementation::Contour::Contour):
1704         (WebCore::LoopBlinnPathProcessorImplementation::Contour::add):
1705         (WebCore::LoopBlinnPathProcessorImplementation::Contour::subdivide):
1706         (WebCore::LoopBlinnPathProcessorImplementation::Contour::begin):
1707         (WebCore::LoopBlinnPathProcessorImplementation::Contour::end):
1708         (WebCore::LoopBlinnPathProcessorImplementation::Contour::isOrientedCounterClockwise):
1709         (WebCore::LoopBlinnPathProcessorImplementation::Contour::setIsOrientedCounterClockwise):
1710         (WebCore::LoopBlinnPathProcessorImplementation::Contour::boundingBox):
1711         (WebCore::LoopBlinnPathProcessorImplementation::Contour::fillSide):
1712         (WebCore::LoopBlinnPathProcessorImplementation::Contour::setFillSide):
1713         (WebCore::LoopBlinnPathProcessorImplementation::Segment::triangulate):
1714         (WebCore::LoopBlinnPathProcessor::LoopBlinnPathProcessor):
1715         (WebCore::LoopBlinnPathProcessor::~LoopBlinnPathProcessor):
1716         (WebCore::LoopBlinnPathProcessor::process):
1717         (WebCore::LoopBlinnPathProcessor::buildContours):
1718         (WebCore::LoopBlinnPathProcessor::allSegmentsOverlappingY):
1719         (WebCore::LoopBlinnPathProcessor::determineSidesToFill):
1720         (WebCore::LoopBlinnPathProcessor::determineOrientation):
1721         (WebCore::SweepData::SweepEvent::SweepEvent):
1722         (WebCore::SweepData::SweepEvent::setup):
1723         (WebCore::SweepData::SweepEvent::x):
1724         (WebCore::SweepData::SweepEvent::entry):
1725         (WebCore::SweepData::SweepEvent::interval):
1726         (WebCore::SweepData::SweepEvent::operator<):
1727         (WebCore::SweepData::trianglesOverlap):
1728         (WebCore::LoopBlinnPathProcessor::subdivideCurves):
1729         (WebCore::LoopBlinnPathProcessor::conditionallySubdivide):
1730         (WebCore::LoopBlinnPathProcessor::subdivideCurvesSlow):
1731         (WebCore::TessellationState::vertexCallback):
1732         (WebCore::TessellationState::combineCallback):
1733         (WebCore::TessellationState::edgeFlagCallback):
1734         (WebCore::LoopBlinnPathProcessor::tessellateInterior):
1735         * platform/graphics/gpu/LoopBlinnPathProcessor.h: Added.
1736
1737 2011-02-10  Ademar de Souza Reis Jr  <ademar.reis@openbossa.org>
1738
1739         Reviewed by Andreas Kling.
1740
1741         [Qt] Remove the use of deprecated qVariant*
1742         https://bugs.webkit.org/show_bug.cgi?id=54229
1743
1744         This was applied on the Qt repository and affects QtWebKit there.
1745         (633f3f45e5420663cf4ceadea79e62fea44cd2eb)
1746
1747         The side effect of this change is that we won't be able to build
1748         QtWebKit with MSVC 6, as it doesn't support member template functions
1749         (not sure if it's possible today anyway).
1750
1751         Original patch from Olivier Goffart <olivier.goffart@nokia.com>, with
1752         review reported as being from the mailing list.
1753
1754         The changes are result of the following commands:
1755
1756             git grep -O"sed -i 's/qVariantValue</qvariant_cast</'" qVariantValue
1757             git grep -O"sed -i 's/qVariantSetValue(\([^&*\(),]*\), */\\1.setValue(/'" qVariantSetValue
1758             git grep -O"sed -i 's/qVariantSetValue *<\([^>]*\)> *(\([^&*\(),]*\), */\\2.setValue<\\1>(/'" qVariantSetValue
1759             git grep -O"sed -i 's/qVariantCanConvert *<\([^>]*\)> *(\([^&*\(),]*\))/\\2.canConvert<\\1>()/g'" qVariantCanConvert
1760             git grep -O"sed -i 's/qVariantCanConvert *<\([^>]*\)> *(\([^&*\(),]*([^&*\(),]*)\))/\\2.canConvert<\\1>()/g'" qVariantCanConvert
1761             git grep -O"sed -i 's/qVariantFromValue\( *[(<]\)/QVariant::fromValue\\1/'" qVariantFromValue
1762
1763         * bridge/qt/qt_runtime.cpp:
1764         (JSC::Bindings::convertValueToQVariant):
1765         * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
1766         (WebCore::MediaPlayerPrivateQt::commitLoad):
1767
1768 2011-02-10  Nico Weber  <thakis@chromium.org>
1769
1770         Reviewed by Darin Adler.
1771
1772         Fix clang warning "WebCore::HTMLAreaElement::getRect' hides overloaded virtual function [-Woverloaded-virtual]"
1773         https://bugs.webkit.org/show_bug.cgi?id=54221
1774
1775         The method name conflicts with ContainerNode::getRect() so rename it to
1776         computeRect(). Rename getPath() to computePath() for consistency as
1777         well.
1778
1779         No intended functionality change, covered by existing tests.
1780
1781         * accessibility/AccessibilityImageMapLink.cpp:
1782         (WebCore::AccessibilityImageMapLink::elementRect):
1783         * html/HTMLAreaElement.cpp:
1784         (WebCore::HTMLAreaElement::computePath):
1785         (WebCore::HTMLAreaElement::computeRect):
1786         * html/HTMLAreaElement.h:
1787         * page/SpatialNavigation.cpp:
1788         (WebCore::virtualRectForAreaElementAndDirection):
1789         * rendering/RenderImage.cpp:
1790         (WebCore::RenderImage::paintFocusRing):
1791
1792 2011-02-10  Alexis Menard  <alexis.menard@nokia.com>
1793
1794         Reviewed by Andreas Kling.
1795
1796         [Qt] Default focus ring is too wide
1797         https://bugs.webkit.org/show_bug.cgi?id=51854
1798
1799         We now respect the outline property and html.css defines the outline of the focus
1800         ring to be 5px. This is propagated until GraphicsContext::drawFocusRing which uses
1801         it as the pen size. We should ignore the size and keep a default one. I also
1802         reverted the SolidLine to DotLine so that the selection looks nicer. Chromium Skia,
1803         CG Win, Haiku, WinCE ports also ignore the width.
1804
1805         * platform/graphics/qt/GraphicsContextQt.cpp:
1806         (WebCore::drawFocusRingForPath):
1807         (WebCore::GraphicsContext::drawFocusRing):
1808
1809 2011-02-10  Martin Robinson  <mrobinson@igalia.com>
1810
1811         Reviewed by Gustavo Noronha Silva.
1812
1813         [Soup] ResourceHandleSoup does not ever call didSendData for file uploads
1814         https://bugs.webkit.org/show_bug.cgi?id=52090
1815
1816         Call didSendData as body data is uploaded to the server. This is necessary
1817         for XHR upload events to function properly.
1818
1819         * platform/network/ResourceHandleInternal.h:
1820         (WebCore::ResourceHandleInternal::ResourceHandleInternal): Add two new members.
1821         One to track the total amount of body data and one to track the total amount of
1822         body data sent so far.
1823         * platform/network/soup/ResourceHandleSoup.cpp:
1824         (WebCore::wroteBodyDataCallback): Added.
1825         (WebCore::addFormElementsToSoupMessage): Split this out into a helper function.
1826         Will now now sum the total amount of body data.
1827         (WebCore::startHttp): Attach a wrote-body-data signal handler.
1828
1829 2011-02-10  Bill Budge  <bbudge@chromium.org>
1830
1831         Reviewed by David Levin.
1832
1833         Add fields to ResourceRequest and ResourceResponse in preparation for adding CORS support to AssociatedURLLoader.
1834         https://bugs.webkit.org/show_bug.cgi?id=53925
1835
1836         * platform/network/chromium/ResourceRequest.cpp:
1837         (WebCore::ResourceRequest::doPlatformCopyData):
1838         (WebCore::ResourceRequest::doPlatformAdopt):
1839         * platform/network/chromium/ResourceRequest.h:
1840         (WebCore::ResourceRequest::ResourceRequest):
1841         (WebCore::ResourceRequest::downloadToFile):
1842         (WebCore::ResourceRequest::setDownloadToFile):
1843         * platform/network/chromium/ResourceResponse.cpp:
1844         (WebCore::ResourceResponse::doPlatformCopyData):
1845         (WebCore::ResourceResponse::doPlatformAdopt):
1846         * platform/network/chromium/ResourceResponse.h:
1847         (WebCore::ResourceResponse::downloadFilePath):
1848         (WebCore::ResourceResponse::setDownloadFilePath):
1849
1850 2011-02-10  Dirk Schulze  <krit@webkit.org>
1851
1852         Reviewed by Nikolas Zimmermann.
1853
1854         SVGAnimateElement needs information about the animated attribute type
1855         https://bugs.webkit.org/show_bug.cgi?id=53442
1856
1857         For animations, we need to know the SVG property type for a XML attribute. A global static mapping between
1858         attribute name and a type is not possible, since one attribute name can be bound to different property types:
1859         x can be a SVGNumberList, a SVGNumber or a SVGLength. So we have to ask every target element, if it supports
1860         the animated attribute and of which type it is. Just for CSS properties we can share an explicit mapping between
1861         the name and the type. This is done in a static map in SVGStyledElement. All other mappings are stored in local static
1862         HashMaps for all SVG elements with animated properties. These maps get filled once with the fillAttributeToPropertyTypeMap function
1863         that needs to be included in every SVG element. The function is not virtual in base classes for performance reasons.
1864
1865         No change of functionality, so no new test cases.
1866
1867         * svg/SVGAElement.cpp:
1868         (WebCore::SVGAElement::attributeToPropertyTypeMap):
1869         (WebCore::SVGAElement::fillAttributeToPropertyTypeMap):
1870         * svg/SVGAElement.h:
1871         * svg/SVGAltGlyphElement.cpp:
1872         (WebCore::SVGAltGlyphElement::attributeToPropertyTypeMap):
1873         (WebCore::SVGAltGlyphElement::fillAttributeToPropertyTypeMap):
1874         * svg/SVGAltGlyphElement.h:
1875         * svg/SVGAnimateElement.cpp:
1876         (WebCore::SVGAnimateElement::determinePropertyType):
1877         * svg/SVGCircleElement.cpp:
1878         (WebCore::SVGCircleElement::attributeToPropertyTypeMap):
1879         (WebCore::SVGCircleElement::fillAttributeToPropertyTypeMap):
1880         * svg/SVGCircleElement.h:
1881         * svg/SVGClipPathElement.cpp:
1882         (WebCore::SVGClipPathElement::attributeToPropertyTypeMap):
1883         (WebCore::SVGClipPathElement::fillAttributeToPropertyTypeMap):
1884         * svg/SVGClipPathElement.h:
1885         * svg/SVGComponentTransferFunctionElement.cpp:
1886         (WebCore::SVGComponentTransferFunctionElement::attributeToPropertyTypeMap):
1887         (WebCore::SVGComponentTransferFunctionElement::fillAttributeToPropertyTypeMap):
1888         * svg/SVGComponentTransferFunctionElement.h:
1889         * svg/SVGCursorElement.cpp:
1890         (WebCore::SVGCursorElement::attributeToPropertyTypeMap):
1891         (WebCore::SVGCursorElement::fillAttributeToPropertyTypeMap):
1892         * svg/SVGCursorElement.h:
1893         * svg/SVGElement.cpp:
1894         (WebCore::SVGElement::attributeToPropertyTypeMap):
1895         (WebCore::SVGElement::animatedPropertyTypeForAttribute):
1896         * svg/SVGElement.h:
1897         (WebCore::SVGElement::fillAttributeToPropertyTypeMap):
1898         * svg/SVGEllipseElement.cpp:
1899         (WebCore::SVGEllipseElement::attributeToPropertyTypeMap):
1900         (WebCore::SVGEllipseElement::fillAttributeToPropertyTypeMap):
1901         * svg/SVGEllipseElement.h:
1902         * svg/SVGFEBlendElement.cpp:
1903         (WebCore::SVGFEBlendElement::attributeToPropertyTypeMap):
1904         (WebCore::SVGFEBlendElement::fillAttributeToPropertyTypeMap):
1905         * svg/SVGFEBlendElement.h:
1906         * svg/SVGFEColorMatrixElement.cpp:
1907         (WebCore::SVGFEColorMatrixElement::attributeToPropertyTypeMap):
1908         (WebCore::SVGFEColorMatrixElement::fillAttributeToPropertyTypeMap):
1909         * svg/SVGFEColorMatrixElement.h:
1910         * svg/SVGFEComponentTransferElement.cpp:
1911         (WebCore::SVGFEComponentTransferElement::attributeToPropertyTypeMap):
1912         (WebCore::SVGFEComponentTransferElement::fillAttributeToPropertyTypeMap):
1913         * svg/SVGFEComponentTransferElement.h:
1914         * svg/SVGFECompositeElement.cpp:
1915         (WebCore::SVGFECompositeElement::attributeToPropertyTypeMap):
1916         (WebCore::SVGFECompositeElement::fillAttributeToPropertyTypeMap):
1917         * svg/SVGFECompositeElement.h:
1918         * svg/SVGFEConvolveMatrixElement.cpp:
1919         (WebCore::SVGFEConvolveMatrixElement::attributeToPropertyTypeMap):
1920         (WebCore::SVGFEConvolveMatrixElement::fillAttributeToPropertyTypeMap):
1921         * svg/SVGFEConvolveMatrixElement.h:
1922         * svg/SVGFEDiffuseLightingElement.cpp:
1923         (WebCore::SVGFEDiffuseLightingElement::attributeToPropertyTypeMap):
1924         (WebCore::SVGFEDiffuseLightingElement::fillAttributeToPropertyTypeMap):
1925         * svg/SVGFEDiffuseLightingElement.h:
1926         * svg/SVGFEDisplacementMapElement.cpp:
1927         (WebCore::SVGFEDisplacementMapElement::attributeToPropertyTypeMap):
1928         (WebCore::SVGFEDisplacementMapElement::fillAttributeToPropertyTypeMap):
1929         * svg/SVGFEDisplacementMapElement.h:
1930         * svg/SVGFEFloodElement.cpp:
1931         (WebCore::SVGFEFloodElement::attributeToPropertyTypeMap):
1932         (WebCore::SVGFEFloodElement::fillAttributeToPropertyTypeMap):
1933         * svg/SVGFEFloodElement.h:
1934         * svg/SVGFEGaussianBlurElement.cpp:
1935         (WebCore::SVGFEGaussianBlurElement::attributeToPropertyTypeMap):
1936         (WebCore::SVGFEGaussianBlurElement::fillAttributeToPropertyTypeMap):
1937         * svg/SVGFEGaussianBlurElement.h:
1938         * svg/SVGFEImageElement.cpp:
1939         (WebCore::SVGFEImageElement::attributeToPropertyTypeMap):
1940         (WebCore::SVGFEImageElement::fillAttributeToPropertyTypeMap):
1941         * svg/SVGFEImageElement.h:
1942         * svg/SVGFELightElement.cpp:
1943         (WebCore::SVGFELightElement::attributeToPropertyTypeMap):
1944         (WebCore::SVGFELightElement::fillAttributeToPropertyTypeMap):
1945         * svg/SVGFELightElement.h:
1946         * svg/SVGFEMergeElement.cpp:
1947         (WebCore::SVGFEMergeElement::attributeToPropertyTypeMap):
1948         (WebCore::SVGFEMergeElement::fillAttributeToPropertyTypeMap):
1949         * svg/SVGFEMergeElement.h:
1950         * svg/SVGFEMergeNodeElement.cpp:
1951         (WebCore::SVGFEMergeNodeElement::attributeToPropertyTypeMap):
1952         (WebCore::SVGFEMergeNodeElement::fillAttributeToPropertyTypeMap):
1953         * svg/SVGFEMergeNodeElement.h:
1954         * svg/SVGFEMorphologyElement.cpp:
1955         (WebCore::SVGFEMorphologyElement::attributeToPropertyTypeMap):
1956         (WebCore::SVGFEMorphologyElement::fillAttributeToPropertyTypeMap):
1957         * svg/SVGFEMorphologyElement.h:
1958         * svg/SVGFEOffsetElement.cpp:
1959         (WebCore::SVGFEOffsetElement::attributeToPropertyTypeMap):
1960         (WebCore::SVGFEOffsetElement::fillAttributeToPropertyTypeMap):
1961         * svg/SVGFEOffsetElement.h:
1962         * svg/SVGFESpecularLightingElement.cpp:
1963         (WebCore::SVGFESpecularLightingElement::attributeToPropertyTypeMap):
1964         (WebCore::SVGFESpecularLightingElement::fillAttributeToPropertyTypeMap):
1965         * svg/SVGFESpecularLightingElement.h:
1966         * svg/SVGFETileElement.cpp:
1967         (WebCore::SVGFETileElement::attributeToPropertyTypeMap):
1968         (WebCore::SVGFETileElement::fillAttributeToPropertyTypeMap):
1969         * svg/SVGFETileElement.h:
1970         * svg/SVGFETurbulenceElement.cpp:
1971         (WebCore::SVGFETurbulenceElement::attributeToPropertyTypeMap):
1972         (WebCore::SVGFETurbulenceElement::fillAttributeToPropertyTypeMap):
1973         * svg/SVGFETurbulenceElement.h:
1974         * svg/SVGFilterElement.cpp:
1975         (WebCore::SVGFilterElement::attributeToPropertyTypeMap):
1976         (WebCore::SVGFilterElement::fillAttributeToPropertyTypeMap):
1977         * svg/SVGFilterElement.h:
1978         * svg/SVGFilterPrimitiveStandardAttributes.cpp:
1979         (WebCore::SVGFilterPrimitiveStandardAttributes::fillAttributeToPropertyTypeMap):
1980         * svg/SVGFilterPrimitiveStandardAttributes.h:
1981         * svg/SVGFontElement.cpp:
1982         (WebCore::SVGFontElement::attributeToPropertyTypeMap):
1983         (WebCore::SVGFontElement::fillAttributeToPropertyTypeMap):
1984         * svg/SVGFontElement.h:
1985         (WebCore::SVGFontElement::rendererIsNeeded):
1986         * svg/SVGForeignObjectElement.cpp:
1987         (WebCore::SVGForeignObjectElement::attributeToPropertyTypeMap):
1988         (WebCore::SVGForeignObjectElement::fillAttributeToPropertyTypeMap):
1989         * svg/SVGForeignObjectElement.h:
1990         * svg/SVGGlyphElement.cpp:
1991         (WebCore::SVGGlyphElement::attributeToPropertyTypeMap):
1992         (WebCore::SVGGlyphElement::fillAttributeToPropertyTypeMap):
1993         * svg/SVGGlyphElement.h:
1994         * svg/SVGGradientElement.cpp:
1995         (WebCore::SVGGradientElement::fillAttributeToPropertyTypeMap):
1996         * svg/SVGGradientElement.h:
1997         * svg/SVGImageElement.cpp:
1998         (WebCore::SVGImageElement::attributeToPropertyTypeMap):
1999         (WebCore::SVGImageElement::fillAttributeToPropertyTypeMap):
2000         * svg/SVGImageElement.h:
2001         * svg/SVGLineElement.cpp:
2002         (WebCore::SVGLineElement::attributeToPropertyTypeMap):
2003         (WebCore::SVGLineElement::fillAttributeToPropertyTypeMap):
2004         * svg/SVGLineElement.h:
2005         * svg/SVGLinearGradientElement.cpp:
2006         (WebCore::SVGLinearGradientElement::attributeToPropertyTypeMap):
2007         (WebCore::SVGLinearGradientElement::fillAttributeToPropertyTypeMap):
2008         * svg/SVGLinearGradientElement.h:
2009         * svg/SVGMPathElement.cpp:
2010         (WebCore::SVGMPathElement::attributeToPropertyTypeMap):
2011         (WebCore::SVGMPathElement::fillAttributeToPropertyTypeMap):
2012         * svg/SVGMPathElement.h:
2013         * svg/SVGMarkerElement.cpp:
2014         (WebCore::SVGMarkerElement::attributeToPropertyTypeMap):
2015         (WebCore::SVGMarkerElement::fillAttributeToPropertyTypeMap):
2016         * svg/SVGMarkerElement.h:
2017         * svg/SVGMaskElement.cpp:
2018         (WebCore::SVGMaskElement::attributeToPropertyTypeMap):
2019         (WebCore::SVGMaskElement::fillAttributeToPropertyTypeMap):
2020         * svg/SVGMaskElement.h:
2021         * svg/SVGMissingGlyphElement.cpp:
2022         (WebCore::SVGMissingGlyphElement::attributeToPropertyTypeMap):
2023         (WebCore::SVGMissingGlyphElement::fillAttributeToPropertyTypeMap):
2024         * svg/SVGMissingGlyphElement.h:
2025         * svg/SVGPathElement.cpp:
2026         (WebCore::SVGPathElement::attributeToPropertyTypeMap):
2027         (WebCore::SVGPathElement::fillAttributeToPropertyTypeMap):
2028         * svg/SVGPathElement.h:
2029         * svg/SVGPatternElement.cpp:
2030         (WebCore::SVGPatternElement::attributeToPropertyTypeMap):
2031         (WebCore::SVGPatternElement::fillAttributeToPropertyTypeMap):
2032         * svg/SVGPatternElement.h:
2033         * svg/SVGPolyElement.cpp:
2034         (WebCore::SVGPolyElement::attributeToPropertyTypeMap):
2035         (WebCore::SVGPolyElement::fillAttributeToPropertyTypeMap):
2036         * svg/SVGPolyElement.h:
2037         * svg/SVGRadialGradientElement.cpp:
2038         (WebCore::SVGRadialGradientElement::attributeToPropertyTypeMap):
2039         (WebCore::SVGRadialGradientElement::fillAttributeToPropertyTypeMap):
2040         * svg/SVGRadialGradientElement.h:
2041         * svg/SVGRectElement.cpp:
2042         (WebCore::SVGRectElement::attributeToPropertyTypeMap):
2043         (WebCore::SVGRectElement::fillAttributeToPropertyTypeMap):
2044         * svg/SVGRectElement.h:
2045         * svg/SVGSVGElement.cpp:
2046         (WebCore::SVGSVGElement::attributeToPropertyTypeMap):
2047         (WebCore::SVGSVGElement::fillAttributeToPropertyTypeMap):
2048         * svg/SVGSVGElement.h:
2049         * svg/SVGScriptElement.cpp:
2050         (WebCore::SVGScriptElement::attributeToPropertyTypeMap):
2051         (WebCore::SVGScriptElement::fillAttributeToPropertyTypeMap):
2052         * svg/SVGScriptElement.h:
2053         * svg/SVGStopElement.cpp:
2054         (WebCore::SVGStopElement::attributeToPropertyTypeMap):
2055         (WebCore::SVGStopElement::fillAttributeToPropertyTypeMap):
2056         * svg/SVGStopElement.h:
2057         * svg/SVGStyledElement.cpp:
2058         (WebCore::cssPropertyToTypeMap):
2059         (WebCore::SVGStyledElement::animatedPropertyTypeForCSSProperty):
2060         (WebCore::SVGStyledElement::fillAttributeToPropertyTypeMap):
2061         * svg/SVGStyledElement.h:
2062         * svg/SVGStyledTransformableElement.cpp:
2063         (WebCore::SVGStyledTransformableElement::fillAttributeToPropertyTypeMap):
2064         * svg/SVGStyledTransformableElement.h:
2065         * svg/SVGSwitchElement.cpp:
2066         (WebCore::SVGSwitchElement::attributeToPropertyTypeMap):
2067         (WebCore::SVGSwitchElement::fillAttributeToPropertyTypeMap):
2068         * svg/SVGSwitchElement.h:
2069         * svg/SVGSymbolElement.cpp:
2070         (WebCore::SVGSymbolElement::attributeToPropertyTypeMap):
2071         (WebCore::SVGSymbolElement::fillAttributeToPropertyTypeMap):
2072         * svg/SVGSymbolElement.h:
2073         * svg/SVGTRefElement.cpp:
2074         (WebCore::SVGTRefElement::attributeToPropertyTypeMap):
2075         (WebCore::SVGTRefElement::fillAttributeToPropertyTypeMap):
2076         * svg/SVGTRefElement.h:
2077         * svg/SVGTSpanElement.cpp:
2078         (WebCore::SVGTSpanElement::attributeToPropertyTypeMap):
2079         (WebCore::SVGTSpanElement::fillAttributeToPropertyTypeMap):
2080         * svg/SVGTSpanElement.h:
2081         * svg/SVGTextContentElement.cpp:
2082         (WebCore::SVGTextContentElement::fillAttributeToPropertyTypeMap):
2083         * svg/SVGTextContentElement.h:
2084         * svg/SVGTextElement.cpp:
2085         (WebCore::SVGTextElement::attributeToPropertyTypeMap):
2086         (WebCore::SVGTextElement::fillAttributeToPropertyTypeMap):
2087         * svg/SVGTextElement.h:
2088         * svg/SVGTextPathElement.cpp:
2089         (WebCore::SVGTextPathElement::attributeToPropertyTypeMap):
2090         (WebCore::SVGTextPathElement::fillAttributeToPropertyTypeMap):
2091         * svg/SVGTextPathElement.h:
2092         * svg/SVGTextPositioningElement.cpp:
2093         (WebCore::SVGTextPositioningElement::fillAttributeToPropertyTypeMap):
2094         * svg/SVGTextPositioningElement.h:
2095         * svg/SVGTitleElement.cpp:
2096         (WebCore::SVGTitleElement::attributeToPropertyTypeMap):
2097         (WebCore::SVGTitleElement::fillAttributeToPropertyTypeMap):
2098         * svg/SVGTitleElement.h:
2099         * svg/SVGUseElement.cpp:
2100         (WebCore::SVGUseElement::attributeToPropertyTypeMap):
2101         (WebCore::SVGUseElement::fillAttributeToPropertyTypeMap):
2102         * svg/SVGUseElement.h:
2103         * svg/SVGViewElement.cpp:
2104         (WebCore::SVGViewElement::attributeToPropertyTypeMap):
2105         (WebCore::SVGViewElement::fillAttributeToPropertyTypeMap):
2106         * svg/SVGViewElement.h:
2107
2108 2011-02-10  Alexis Menard  <alexis.menard@nokia.com>
2109
2110         Reviewed by Andreas Kling.
2111
2112         Fix a Warning after removing FileSystem support for the inspector.
2113
2114         * WebCore.pro:
2115
2116 2011-02-10  Chris Fleizach  <cfleizach@apple.com>
2117
2118         Reviewed by Anders Carlsson.
2119
2120         AX: AX needs to stop using WebCoreViewFactory
2121         https://bugs.webkit.org/show_bug.cgi?id=54153
2122
2123         WebKit2 no longer uses WebCoreViewFactory, which means that accessibility code needs
2124         to get off of it and use WebCoreSystemInterface, like other clients.
2125
2126         * WebCore.exp.in:
2127         * accessibility/AXObjectCache.h:
2128         * accessibility/mac/AXObjectCacheMac.mm:
2129         (WebCore::AXObjectCache::handleFocusedUIElementChanged):
2130         * accessibility/mac/AccessibilityObjectWrapper.h:
2131         * accessibility/mac/AccessibilityObjectWrapper.mm:
2132         (-[AccessibilityObjectWrapper unregisterUniqueIdForUIElement]):
2133         (CFAutoreleaseHelper):
2134         (AXObjectIsTextMarker):
2135         (AXObjectIsTextMarkerRange):
2136         (AXTextMarkerRange):
2137         (AXTextMarkerRangeStart):
2138         (AXTextMarkerRangeEnd):
2139         (textMarkerForVisiblePosition):
2140         (-[AccessibilityObjectWrapper textMarkerForVisiblePosition:]):
2141         (visiblePositionForTextMarker):
2142         (-[AccessibilityObjectWrapper visiblePositionForTextMarker:]):
2143         (visiblePositionForStartOfTextMarkerRange):
2144         (visiblePositionForEndOfTextMarkerRange):
2145         (textMarkerRangeFromMarkers):
2146         (AXAttributeStringSetElement):
2147         (-[AccessibilityObjectWrapper doAXAttributedStringForTextMarkerRange:]):
2148         (textMarkerRangeFromVisiblePositions):
2149         (-[AccessibilityObjectWrapper textMarkerRangeFromVisiblePositions:endPosition:]):
2150         (-[AccessibilityObjectWrapper visiblePositionRangeForTextMarkerRange:]):
2151         (-[AccessibilityObjectWrapper textMarkerRangeForSelection]):
2152         (-[AccessibilityObjectWrapper accessibilitySetValue:forAttribute:]):
2153         (-[AccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):
2154         * editing/mac/SelectionControllerMac.mm:
2155         (WebCore::accessibilityConvertScreenRect):
2156         (WebCore::SelectionController::notifyAccessibilityForSelectionChange):
2157         * platform/mac/WebCoreSystemInterface.h:
2158         * platform/mac/WebCoreSystemInterface.mm:
2159
2160 2011-02-10  Alexis Menard  <alexis.menard@nokia.com>
2161
2162         Reviewed by Andreas Kling.
2163
2164         [Qt] In trunk with Qt Multimedia the full screen mode doesn't work.
2165         https://bugs.webkit.org/show_bug.cgi?id=54201
2166
2167         Add files for the fullscreen video playback handling. It also fix
2168         a missing header.
2169
2170         * WebCore.pro:
2171
2172 2011-02-09  Pavel Feldman  <pfeldman@chromium.org>
2173
2174         Reviewed by Yury Semikhatsky.
2175
2176         Web Inspector: Remove FileSystem support from the inspector.
2177         https://bugs.webkit.org/show_bug.cgi?id=50695
2178
2179         * CMakeLists.txt:
2180         * GNUmakefile.am:
2181         * WebCore.gypi:
2182         * WebCore.pro:
2183         * WebCore.vcproj/WebCore.vcproj:
2184         * WebCore.xcodeproj/project.pbxproj:
2185         * inspector/Inspector.idl:
2186         * inspector/InspectorApplicationCacheAgent.cpp:
2187         (WebCore::InspectorApplicationCacheAgent::InspectorApplicationCacheAgent):
2188         (WebCore::InspectorApplicationCacheAgent::getApplicationCaches):
2189         * inspector/InspectorApplicationCacheAgent.h:
2190         * inspector/InspectorFileSystemAgent.cpp: Removed.
2191         * inspector/InspectorFileSystemAgent.h: Removed.
2192         * inspector/InspectorInstrumentation.cpp:
2193         (WebCore::InspectorInstrumentation::identifierForInitialRequestImpl):
2194         (WebCore::InspectorInstrumentation::willSendRequestImpl):
2195         (WebCore::InspectorInstrumentation::markResourceAsCachedImpl):
2196         (WebCore::InspectorInstrumentation::didLoadResourceFromMemoryCacheImpl):
2197         (WebCore::InspectorInstrumentation::didReceiveResourceResponseImpl):
2198         (WebCore::InspectorInstrumentation::didReceiveContentLengthImpl):
2199         (WebCore::InspectorInstrumentation::didFinishLoadingImpl):
2200         (WebCore::InspectorInstrumentation::didFailLoadingImpl):
2201         (WebCore::InspectorInstrumentation::resourceRetrievedByXMLHttpRequestImpl):
2202         (WebCore::InspectorInstrumentation::scriptImportedImpl):
2203         (WebCore::InspectorInstrumentation::networkStateChangedImpl):
2204         (WebCore::InspectorInstrumentation::updateApplicationCacheStatusImpl):
2205         (WebCore::InspectorInstrumentation::retrieveResourceAgent):
2206         * inspector/front-end/FileSystemView.js: Removed.
2207         * inspector/front-end/WebKit.qrc:
2208         * inspector/front-end/inspector.html:
2209
2210 2011-02-10  Sheriff Bot  <webkit.review.bot@gmail.com>
2211
2212         Unreviewed, rolling out r78219.
2213         http://trac.webkit.org/changeset/78219
2214         https://bugs.webkit.org/show_bug.cgi?id=54215
2215
2216         breaks editing/style/iframe-onload-crash.html on GTK 64-bit
2217         Debug (Requested by philn-tp on #webkit).
2218
2219         * dom/Document.h:
2220         * dom/DocumentFragment.h:
2221         * dom/Element.h:
2222         * dom/Node.h:
2223         * dom/Text.h:
2224         * editing/htmlediting.cpp:
2225         (WebCore::editingIgnoresContent):
2226         (WebCore::canHaveChildrenForEditing):
2227         * editing/htmlediting.h:
2228         * html/HTMLBRElement.h:
2229         * html/HTMLButtonElement.h:
2230         * html/HTMLDataGridElement.h:
2231         * html/HTMLFormControlElement.h:
2232         * html/HTMLFrameElementBase.h:
2233         * html/HTMLHRElement.h:
2234         * html/HTMLImageElement.h:
2235         * html/HTMLMeterElement.h:
2236         * html/HTMLOutputElement.h:
2237         * html/HTMLPlugInElement.h:
2238         * html/HTMLProgressElement.h:
2239         * wml/WMLBRElement.h:
2240         * wml/WMLDoElement.h:
2241         * wml/WMLImageElement.h:
2242         * wml/WMLInputElement.h:
2243         * wml/WMLSelectElement.h:
2244
2245 2011-02-10  Andras Becsi  <abecsi@webkit.org>
2246
2247         Rubber-stamped by Csaba Osztrogonác.
2248
2249         [Qt][V8] Fix the build.
2250
2251         No new tests needed.
2252
2253         * bindings/v8/WorkerContextExecutionProxy.cpp: add missing CString header.
2254         * loader/cache/CachedScript.h: do not use extra qualification for base class enum.
2255
2256 2011-02-10  Alexander Pavlov  <apavlov@chromium.org>
2257
2258         Reviewed by Yury Semikhatsky.
2259
2260         Web Inspector: [STYLES] Suggest CSS property values once Up/Down is pressed with an empty input
2261         https://bugs.webkit.org/show_bug.cgi?id=54205
2262
2263         * inspector/front-end/CSSCompletions.js:
2264         (WebInspector.CSSCompletions):
2265         (WebInspector.CSSCompletions.prototype._firstIndexOfPrefix):
2266         * inspector/front-end/CSSKeywordCompletions.js:
2267         (WebInspector.CSSKeywordCompletions.forProperty):
2268         * inspector/front-end/StylesSidebarPane.js:
2269         ():
2270         * inspector/front-end/TextPrompt.js:
2271         (WebInspector.TextPrompt.prototype.complete):
2272
2273 2011-02-10  Renata Hodovan  <reni@webkit.org>
2274
2275         Reviewed by Dirk Schulze.
2276
2277         SVGFESpecularLightingElement doesn't support dynamic invalidation, when attributes change.
2278         https://bugs.webkit.org/show_bug.cgi?id=54186
2279
2280         The dynamic changes are captured by the svgAttributeChange function, and invalidate the filter primitive if necessary.
2281
2282         Tests: svg/dynamic-updates/SVGFESpecularLightingElement-dom-in-attr.html
2283                svg/dynamic-updates/SVGFESpecularLightingElement-dom-specularConstant-attr.html
2284                svg/dynamic-updates/SVGFESpecularLightingElement-dom-specularExponent-attr.html
2285                svg/dynamic-updates/SVGFESpecularLightingElement-dom-suraceScale-attr.html
2286                svg/dynamic-updates/SVGFESpecularLightingElement-svgdom-in-prop.html
2287                svg/dynamic-updates/SVGFESpecularLightingElement-svgdom-specularConstant-prop.html
2288                svg/dynamic-updates/SVGFESpecularLightingElement-svgdom-specularExponent-prop.html
2289                svg/dynamic-updates/SVGFESpecularLightingElement-svgdom-suraceScale-prop.html
2290
2291         * svg/SVGFESpecularLightingElement.cpp:
2292         (WebCore::SVGFESpecularLightingElement::svgAttributeChanged):
2293         * svg/SVGFESpecularLightingElement.h:
2294
2295 2011-02-10  Andrey Adaikin  <aandrey@google.com>
2296
2297         Reviewed by Pavel Feldman.
2298
2299         Web Inspector: Error messages are not displayed for the last line in a script
2300         https://bugs.webkit.org/show_bug.cgi?id=54204
2301
2302         * inspector/front-end/SourceFrame.js:
2303         (WebInspector.SourceFrame.prototype.addMessage):
2304         (WebInspector.SourceFrame.prototype._addMessageToSource):
2305         (WebInspector.SourceFrame.prototype._createConditionElement):
2306
2307 2011-02-10  Ryosuke Niwa  <rniwa@webkit.org>
2308
2309         Reviewed by Eric Seidel.
2310
2311         Make canHaveChildrenForEditing more efficient
2312         https://bugs.webkit.org/show_bug.cgi?id=53564
2313
2314         Improved the performance (1-2% in release and 20% in debug) by adding virtual member function
2315         canContainRangeEndPoint to Node. It returns true whenever the associated node can have be a container
2316         node for a position.
2317
2318         As of this revision, canContainRangeEndPoint returns true on Document, DocumentFragment, Text nodes
2319         and any elements except:
2320
2321         HTML: applet, br, button, datagrid, embed, frame, frameset, hr, img, input,
2322               meter, object, output, progress, and select.
2323
2324         WML: br, do, img, input, and select.
2325
2326         No new tests are added since this change cannot be tested directly.
2327
2328         * dom/Document.h:
2329         (WebCore::Document::canContainRangeEndPoint): Added; returns false.
2330         * dom/DocumentFragment.h:
2331         (WebCore::DocumentFragment::canContainRangeEndPoint): Added; returns true.
2332         * dom/Element.h:
2333         (WebCore::Element::canContainRangeEndPoint): Ditto.
2334         * dom/Node.h:
2335         (WebCore::Node::canContainRangeEndPoint): Added; returns false.
2336         * dom/Text.h:
2337         (WebCore::Text::canContainRangeEndPoint): Added; returns true.
2338         * editing/htmlediting.cpp: Removed editingIgnoresContent and canHaveChildrenForEditing.
2339         * editing/htmlediting.h:
2340         (WebCore::editingIgnoresContent): Moved from htmlediting.cpp; made it inline.
2341         (WebCore::canHaveChildrenForEditing): Ditto.
2342         * html/HTMLBRElement.h:
2343         (WebCore::HTMLBRElement::canContainRangeEndPoint): Added; returns false.
2344         * html/HTMLButtonElement.h:
2345         (WebCore::HTMLButtonElement::canContainRangeEndPoint): Ditto.
2346         * html/HTMLDataGridElement.h:
2347         (WebCore::HTMLDataGridElement::canContainRangeEndPoint): Ditto.
2348         * html/HTMLFormControlElement.h:
2349         (WebCore::HTMLFormControlElementWithState::canContainRangeEndPoint): Ditto.
2350         * html/HTMLFrameElementBase.h:
2351         (WebCore::HTMLFrameElementBase::canContainRangeEndPoint): Ditto.
2352         * html/HTMLHRElement.h:
2353         (WebCore::HTMLHRElement::canContainRangeEndPoint): Ditto.
2354         * html/HTMLImageElement.h:
2355         (WebCore::HTMLImageElement::canContainRangeEndPoint): Ditto.
2356         * html/HTMLMeterElement.h:
2357         (WebCore::HTMLMeterElement::canContainRangeEndPoint): Ditto.
2358         * html/HTMLOutputElement.h:
2359         (WebCore::HTMLOutputElement::canContainRangeEndPoint): Ditto.
2360         * html/HTMLPlugInElement.h:
2361         (WebCore::HTMLPlugInElement::canContainRangeEndPoint): Ditto.
2362         * html/HTMLProgressElement.h:
2363         (WebCore::HTMLProgressElement::canContainRangeEndPoint): Ditto.
2364         * wml/WMLBRElement.h:
2365         (WebCore::WMLBRElement::canContainRangeEndPoint): Ditto.
2366         * wml/WMLDoElement.h:
2367         (WebCore::WMLDoElement::canContainRangeEndPoint): Ditto.
2368         * wml/WMLImageElement.h:
2369         (WebCore::WMLImageElement::canContainRangeEndPoint): Ditto.
2370         * wml/WMLInputElement.h:
2371         (WebCore::WMLInputElement::canContainRangeEndPoint): Ditto.
2372         * wml/WMLSelectElement.h:
2373         (WebCore::WMLSelectElement::canContainRangeEndPoint): Ditto.
2374
2375 2011-02-10  Pavel Feldman  <pfeldman@chromium.org>
2376
2377         Reviewed by Yury Semikhatsky.
2378
2379         Web Inspector: define interface per domain in Inspector.idl.
2380         https://bugs.webkit.org/show_bug.cgi?id=54135
2381
2382         * inspector/CodeGeneratorInspector.pm:
2383         * inspector/Inspector.idl:
2384
2385 2011-02-10  Andrey Adaikin  <aandrey@google.com>
2386
2387         Reviewed by Pavel Feldman.
2388
2389         Web Inspector: [regression] Fix syncing heights of the gutter and main panel lines, and add 2px padding-left
2390         https://bugs.webkit.org/show_bug.cgi?id=54098
2391
2392         * inspector/front-end/TextViewer.js:
2393         (WebInspector.TextViewer):
2394         (WebInspector.TextViewer.prototype._updatePanelOffsets):
2395         (WebInspector.TextViewer.prototype._syncScroll):
2396         (WebInspector.TextViewer.prototype._syncDecorationsForLine):
2397         (WebInspector.TextEditorChunkedPanel.prototype._totalHeight):
2398         (WebInspector.TextEditorChunkedPanel.prototype.resize):
2399         (WebInspector.TextEditorGutterPanel):
2400         (WebInspector.TextEditorGutterChunk.prototype.set expanded):
2401         (WebInspector.TextEditorGutterChunk.prototype.get height):
2402         (WebInspector.TextEditorMainChunk.prototype.get height):
2403         * inspector/front-end/textViewer.css:
2404         (.webkit-line-content):
2405
2406 2011-02-10  takano takumi  <takano@apple.com>
2407
2408         Reviewed by Dan Bernstein.
2409
2410         A full-width character rotated leftward 90 degrees in text-combine
2411         https://bugs.webkit.org/show_bug.cgi?id=54169
2412
2413         * rendering/RenderCombineText.cpp:
2414         (WebCore::RenderCombineText::combineText):
2415         - Fixed by resetting font's orientation to horizontal when we decided to make combined text.
2416         Otherwise the text will be unexpectedly rotated in showGlyphsWithAdvances() in FontMac.mm.
2417
2418 2011-02-10  Alexey Proskuryakov  <ap@apple.com>
2419
2420         Reviewed by Darin Adler.
2421
2422         https://bugs.webkit.org/show_bug.cgi?id=50306
2423         <rdar://problem/8976152> REGRESSION: WebChromeClient::shouldReplaceWithGeneratedFileForUpload()
2424         uses an initialized result value (breaks form submission with clang-built WebKit)
2425
2426         No new test, because I can't reproduce the observable effect with my gcc build.
2427
2428         * platform/network/FormData.cpp: (WebCore::FormData::appendKeyValuePairItems): Restore an
2429         empty path check - an empty path was causing an exception in Foundation.
2430
2431 2011-02-09  Andrey Kosyakov  <caseq@chromium.org>
2432
2433         Reviewed by Pavel Feldman.
2434
2435         Web Inspector: Network & Resource panels make multiple requests for images with no content
2436         https://bugs.webkit.org/show_bug.cgi?id=54085
2437
2438         - Added success parameter to resourceContent
2439         - NetworkManager.requestContent() now returns empty for zero-length resources, null for errors
2440
2441         * inspector/Inspector.idl:
2442         * inspector/InspectorResourceAgent.cpp:
2443         (WebCore::InspectorResourceAgent::resourceData):
2444         (WebCore::InspectorResourceAgent::resourceContent):
2445         * inspector/InspectorResourceAgent.h:
2446         * inspector/front-end/NetworkManager.js:
2447         (WebInspector.NetworkManager.prototype.requestContent):
2448         * inspector/front-end/Resource.js:
2449         (WebInspector.Resource.prototype.requestContent):
2450         (WebInspector.Resource.prototype._contentURL):
2451
2452 2011-02-10  Renata Hodovan  <reni@webkit.org>
2453
2454         Reviewed by Dirk Schulze.
2455
2456         Move the light source implementations into their own files.
2457         https://bugs.webkit.org/show_bug.cgi?id=53996
2458
2459         Splitting LightSource.cpp into 3 files.
2460
2461         No new tests are added since this is a refactoring.
2462
2463         * Android.mk:
2464         * CMakeLists.txt:
2465         * GNUmakefile.am:
2466         * WebCore.gypi:
2467         * WebCore.pro:
2468         * WebCore.vcproj/WebCore.vcproj:
2469         * WebCore.xcodeproj/project.pbxproj:
2470         * platform/graphics/filters/DistantLightSource.cpp: Added.
2471         (WebCore::DistantLightSource::initPaintingData):
2472         (WebCore::DistantLightSource::updatePaintingData):
2473         (WebCore::DistantLightSource::setAzimuth):
2474         (WebCore::DistantLightSource::setElevation):
2475         (WebCore::DistantLightSource::externalRepresentation):
2476         * platform/graphics/filters/LightSource.cpp:
2477         * platform/graphics/filters/PointLightSource.cpp: Added.
2478         (WebCore::PointLightSource::initPaintingData):
2479         (WebCore::PointLightSource::updatePaintingData):
2480         (WebCore::PointLightSource::setX):
2481         (WebCore::PointLightSource::setY):
2482         (WebCore::PointLightSource::setZ):
2483         (WebCore::operator<<):
2484         (WebCore::PointLightSource::externalRepresentation):
2485         * platform/graphics/filters/SpotLightSource.cpp: Added.
2486         (WebCore::SpotLightSource::initPaintingData):
2487         (WebCore::SpotLightSource::updatePaintingData):
2488         (WebCore::SpotLightSource::setX):
2489         (WebCore::SpotLightSource::setY):
2490         (WebCore::SpotLightSource::setZ):
2491         (WebCore::SpotLightSource::setPointsAtX):
2492         (WebCore::SpotLightSource::setPointsAtY):
2493         (WebCore::SpotLightSource::setPointsAtZ):
2494         (WebCore::SpotLightSource::setSpecularExponent):
2495         (WebCore::SpotLightSource::setLimitingConeAngle):
2496         (WebCore::operator<<):
2497         (WebCore::SpotLightSource::externalRepresentation):
2498
2499 2011-02-10  Avi Drissman  <avi@google.com>
2500
2501         Reviewed by Darin Fisher.
2502
2503         <option> should implement the dir attribute. Mac Chromium version, followup to r76983, r77654.
2504         https://bugs.webkit.org/show_bug.cgi?id=50969
2505
2506         Use manual test Source/WebCore/manual-tests/pop-up-alignment-and-direction.html added in r76983.
2507
2508         * platform/chromium/PopupMenuChromium.cpp:
2509         (WebCore::PopupListBox::updateFromElement):
2510         * platform/chromium/PopupMenuChromium.h:
2511
2512 2011-02-10  Hans Wennborg  <hans@chromium.org>
2513
2514         Reviewed by Jeremy Orlow.
2515
2516         IndexedDB: Update the semantics of put()
2517         https://bugs.webkit.org/show_bug.cgi?id=54102
2518
2519         Update the semantics of put: For object stores with auto increment,
2520         it should be allowed to provide an explicit key, or an in-line key,
2521         overriding the key generator mechanism.
2522
2523         This reflects the spec changes suggested here:
2524         http://www.w3.org/Bugs/Public/show_bug.cgi?id=11976
2525
2526         Extracting key-selection logic into its own function
2527         to make it a bit easier on the eyes.
2528
2529         * storage/IDBObjectStoreBackendImpl.cpp:
2530         (WebCore::IDBObjectStoreBackendImpl::selectKeyForPut):
2531         (WebCore::IDBObjectStoreBackendImpl::putInternal):
2532         * storage/IDBObjectStoreBackendImpl.h:
2533         (WebCore::IDBObjectStoreBackendImpl::resetAutoIncrementKeyCache):
2534
2535 2011-02-09  Antti Koivisto  <antti@apple.com>
2536
2537         Reviewed by Darin Adler.
2538
2539         https://bugs.webkit.org/show_bug.cgi?id=54103
2540         Implement fast path for matching simple selectors
2541         
2542         Implement a fast path for single and descendant selectors consisting
2543         of id, class and tag selectors only.
2544         
2545         Selectors like this are marked on style selector initialization. When 
2546         encountered during style matching they are resolved using a fast path.
2547         
2548         Since selectors like this are very common this speeds up style matching
2549         quite a bit (up to 50% on some sites according to Shark).
2550
2551         * css/CSSStyleSelector.cpp:
2552         (WebCore::RuleData::hasFastCheckableSelector):
2553         (WebCore::RuleData::hasMultipartSelector):
2554         (WebCore::RuleData::hasTopSelectorMatchingHTMLBasedOnRuleHash):
2555         (WebCore::CSSStyleSelector::matchRulesForList):
2556         (WebCore::CSSStyleSelector::checkSelector):
2557         (WebCore::selectorTagMatches):
2558         (WebCore::isFastCheckableSelector):
2559         (WebCore::CSSStyleSelector::SelectorChecker::fastCheckSelector):
2560         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
2561         (WebCore::isSelectorMatchingHTMLBasedOnRuleHash):
2562         (WebCore::RuleData::RuleData):
2563         * css/CSSStyleSelector.h:
2564
2565 2011-02-09  Simon Fraser  <simon.fraser@apple.com>
2566
2567         Reviewed by Dan Bernstein.
2568
2569         REGRESSION (r77101) box-shadow sometimes renders incorrectly
2570         https://bugs.webkit.org/show_bug.cgi?id=54160
2571         
2572         Fix an issue when ShadowBlur had a cached image buffer
2573         that was larger than that of the current shadow being drawn,
2574         and the current shadow was partially clipped out.
2575         
2576         In that situation endShadowLayer() would clip to the image
2577         buffer, using the size of the buffer (as it must), but failed
2578         to take into account the fact that we'd only cleared and painted
2579         into a smaller section of the buffer. So we need to additionally
2580         constrain the clip to cover only the valid part of the buffer.
2581
2582         Test: fast/box-shadow/shadow-buffer-partial.html
2583
2584         * platform/graphics/ShadowBlur.cpp:
2585         (WebCore::ShadowBlur::endShadowLayer):
2586
2587 2011-02-09  Beth Dakin  <bdakin@apple.com>
2588
2589         Reviewed by Maciej Stachowiak.
2590
2591         Fix for <rdar://problem/8977051> CrashTracer: 8 crashes 
2592         in WebProcess at com.apple.WebCore: 
2593         -[ScrollbarPartAnimation setCurrentProgress:] + 364
2594
2595         The ScrollbarPartAnimation must be sent by reference!
2596         * platform/mac/ScrollAnimatorMac.mm:
2597         (-[ScrollbarPainterDelegate setUpAnimation:scrollerPainter:part:WebCore::animateAlphaTo:duration:]):
2598
2599 2011-02-09  Ryosuke Niwa  <rniwa@webkit.org>
2600
2601         Reviewed by Darin Adler.
2602
2603         REGRESSION(r76107): Crash in VisibleSelection::toNormalizedRange
2604         https://bugs.webkit.org/show_bug.cgi?id=54053
2605
2606         The bug was caused by RenderBlock::positionForPoint's improperly returning a shadow node inside
2607         RenderFileUploadControl for hit testing and VisibleSelection::toNormalizedRange's always assuming
2608         the position variable "s" is not null.
2609
2610         Fixed the bug by always returning a null position from RenderFileUploadControl::positionForPoint,
2611         and also exiting early when either "s" or "e" is null in VisibleSelection::toNormalizedRange.
2612
2613         Test: fast/forms/file-input-hit-test.html
2614
2615         * editing/VisibleSelection.cpp:
2616         (WebCore::VisibleSelection::toNormalizedRange):
2617         * rendering/RenderFileUploadControl.cpp:
2618         (WebCore::RenderFileUploadControl::positionForPoint):
2619         * rendering/RenderFileUploadControl.h:
2620
2621 2011-02-09  Sam Weinig  <sam@webkit.org>
2622
2623         Reviewed by Beth Dakin.
2624
2625         Overlay scrollbars crash used with a RenderListBox.
2626
2627         * rendering/RenderListBox.cpp:
2628         (WebCore::RenderListBox::layout):
2629         (WebCore::RenderListBox::contentsSize):
2630         (WebCore::RenderListBox::currentMousePosition):
2631         (WebCore::RenderListBox::setHasVerticalScrollbar):
2632         * rendering/RenderListBox.h:
2633         Implement enough of the ScrollableArea interface to get things generally
2634         working.
2635
2636 2011-02-09  Beth Dakin  <bdakin@apple.com>
2637
2638         Reviewed by Simon Fraser.
2639
2640         Fix for <rdar://problem/8966868> ScrollbarPainterDelegate 
2641         must return a layer if layer-backed to avoid crashing
2642
2643         New virtual function scrollbarWillRenderIntoCompositingLayer()
2644         on ScrollableArea.
2645         * page/FrameView.h:
2646         * platform/ScrollableArea.h:
2647         (WebCore::ScrollableArea::scrollbarWillRenderIntoCompositingLayer):
2648         * rendering/RenderLayer.h:
2649         (WebCore::RenderLayer::scrollbarWillRenderIntoCompositingLayer):
2650         * rendering/RenderListBox.cpp:
2651         (WebCore::RenderListBox::scrollbarWillRenderIntoCompositingLayer):
2652         * rendering/RenderListBox.h:
2653
2654         Clean up unnecessary method declarations and call 
2655         scrollbarWillRenderIntoCompositingLayer() to deterine if 
2656         we need to return a layer.
2657         * platform/mac/ScrollAnimatorMac.mm:
2658         (-[ScrollbarPainterDelegate layer]):
2659
2660 2011-02-09  Yael Aharon  <yael.aharon@nokia.com>
2661
2662         Reviewed by Darin Adler.
2663
2664         Replace static_cast<HTMLElement*> with toHTMLElement
2665         https://bugs.webkit.org/show_bug.cgi?id=54117
2666
2667         No new tests since no new functionality was introduced.
2668
2669         * accessibility/AccessibilityListBox.cpp:
2670         (WebCore::AccessibilityListBox::addChildren):
2671         * accessibility/AccessibilityMenuListPopup.cpp:
2672         (WebCore::AccessibilityMenuListPopup::addChildren):
2673         * accessibility/AccessibilityRenderObject.cpp:
2674         (WebCore::accessibleNameForNode):
2675         (WebCore::AccessibilityRenderObject::accessibilityDescription):
2676         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
2677         (webkit_accessible_get_name):
2678         (webkit_accessible_get_description):
2679         * bindings/gobject/WebKitDOMBinding.cpp:
2680         (WebKit::createWrapper):
2681         (WebKit::kit):
2682         * bindings/js/JSElementCustom.cpp:
2683         (WebCore::toJSNewlyCreated):
2684         * bindings/js/JSHTMLFrameSetElementCustom.cpp:
2685         (WebCore::JSHTMLFrameSetElement::nameGetter):
2686         * bindings/js/JSNodeCustom.cpp:
2687         (WebCore::createWrapperInline):
2688         * bindings/v8/custom/V8ElementCustom.cpp:
2689         (WebCore::toV8):
2690         * dom/Document.cpp:
2691         (WebCore::Document::body):
2692         * dom/Element.cpp:
2693         (WebCore::Element::deprecatedCreateContextualFragment):
2694         * dom/Range.cpp:
2695         (WebCore::Range::createContextualFragment):
2696         * editing/ApplyStyleCommand.cpp:
2697         (WebCore::ApplyStyleCommand::applyBlockStyle):
2698         (WebCore::ApplyStyleCommand::applyRelativeFontStyleChange):
2699         (WebCore::ApplyStyleCommand::splitAncestorsWithUnicodeBidi):
2700         (WebCore::ApplyStyleCommand::applyInlineStyleToNodeRange):
2701         (WebCore::ApplyStyleCommand::removeStyleFromRunBeforeApplyingStyle):
2702         (WebCore::ApplyStyleCommand::highestAncestorWithConflictingInlineStyle):
2703         (WebCore::ApplyStyleCommand::applyInlineStyleToPushDown):
2704         (WebCore::ApplyStyleCommand::pushDownInlineStyleAroundNode):
2705         (WebCore::ApplyStyleCommand::removeInlineStyle):
2706         (WebCore::ApplyStyleCommand::shouldSplitTextElement):
2707         (WebCore::ApplyStyleCommand::addInlineStyleIfNeeded):
2708         * editing/DeleteButtonController.cpp:
2709         (WebCore::enclosingDeletableElement):
2710         (WebCore::DeleteButtonController::show):
2711         * editing/Editor.cpp:
2712         (WebCore::Editor::setBaseWritingDirection):
2713         * editing/InsertListCommand.cpp:
2714         (WebCore::InsertListCommand::mergeWithNeighboringLists):
2715         * editing/ReplaceSelectionCommand.cpp:
2716         (WebCore::ReplaceSelectionCommand::negateStyleRulesThatAffectAppearance):
2717         (WebCore::ReplaceSelectionCommand::handleStyleSpans):
2718         (WebCore::ReplaceSelectionCommand::copyStyleToChildren):
2719         * editing/SelectionController.cpp:
2720         (WebCore::scanForForm):
2721         (WebCore::SelectionController::currentForm):
2722         * editing/htmlediting.cpp:
2723         (WebCore::enclosingList):
2724         (WebCore::enclosingListChild):
2725         (WebCore::embeddedSublist):
2726         (WebCore::appendedSublist):
2727         * editing/markup.cpp:
2728         (WebCore::StyledMarkupAccumulator::appendElement):
2729         * html/HTMLCollection.cpp:
2730         (WebCore::HTMLCollection::checkForNameMatch):
2731         (WebCore::HTMLCollection::updateNameCache):
2732         * html/HTMLElement.cpp:
2733         (WebCore::HTMLElement::setOuterHTML):
2734         (WebCore::HTMLElement::shadowAncestorOwnerForm):
2735         * html/HTMLFormElement.cpp:
2736         (WebCore::HTMLFormElement::formElementIndex):
2737         * html/HTMLSelectElement.cpp:
2738         (WebCore::HTMLSelectElement::setOption):
2739         (WebCore::HTMLSelectElement::setLength):
2740         * inspector/InspectorDOMAgent.cpp:
2741         (WebCore::InspectorDOMAgent::getOuterHTML):
2742         (WebCore::InspectorDOMAgent::setOuterHTML):
2743         * page/EventHandler.cpp:
2744         (WebCore::EventHandler::handleMouseMoveEvent):
2745         * rendering/RenderMeter.cpp:
2746         (WebCore::RenderMeter::createPart):
2747         * rendering/RenderTextControl.cpp:
2748         (WebCore::RenderTextControl::createSubtreeIfNeeded):
2749         * rendering/RenderTextControlSingleLine.cpp:
2750         (WebCore::RenderTextControlSingleLine::createSubtreeIfNeeded):
2751
2752 2011-02-09  Mike Reed  <reed@google.com>
2753
2754         Reviewed by Kenneth Russell.
2755
2756         Use Skia's device->readPixels() when its bitmap claims to have no pixels, as this
2757         handles the case when the device is backed by the GPU.
2758         Patch developed by bsalomon@google.com
2759
2760         No new tests. Existing canvas tests suffice
2761         e.g. LayoutTests/canvas/philip/... 
2762
2763         * platform/graphics/skia/ImageBufferSkia.cpp:
2764         (WebCore::getImageData):
2765         (WebCore::ImageBuffer::getUnmultipliedImageData):
2766         (WebCore::ImageBuffer::getPremultipliedImageData):
2767         (WebCore::putImageData):
2768         (WebCore::ImageBuffer::putUnmultipliedImageData):
2769         (WebCore::ImageBuffer::putPremultipliedImageData):
2770
2771 2011-02-09  Adam Barth  <abarth@webkit.org>
2772
2773         Reviewed by Eric Seidel.
2774
2775         document.close shouldn't affect non-script-created parsers
2776         https://bugs.webkit.org/show_bug.cgi?id=53689
2777
2778         Tests: fast/frames/document-write-in-iframe-onload-3.html
2779                fast/parser/iframe-onload-document-close-with-external-script-2.html
2780                fast/parser/iframe-onload-document-close-with-external-script-3.html
2781                fast/parser/iframe-onload-document-close-with-external-script.html
2782                fast/parser/setTimeout-open.html
2783
2784         Move our implementation of document.close closer to the spec by
2785         introducing the notion of a script-created parser.  This area of our
2786         code is somewhat hairy.  It might take a few more iterations before we
2787         fully come up to spec.
2788
2789         * dom/Document.cpp:
2790         (WebCore::Document::setContent):
2791         (WebCore::Document::open):
2792         (WebCore::Document::cancelParsing):
2793         (WebCore::Document::close):
2794             - Over time, this method should converge to the spec.
2795         (WebCore::Document::explicitClose):
2796             - I'm not in love with this name.  Somehow we want to differentiate
2797               between Document closing itself and the document.close DOM
2798               method.
2799         (WebCore::Document::removePendingSheet):
2800         * dom/Document.h:
2801         * dom/ScriptableDocumentParser.cpp:
2802         (WebCore::ScriptableDocumentParser::ScriptableDocumentParser):
2803         * dom/ScriptableDocumentParser.h:
2804         (WebCore::ScriptableDocumentParser::setWasCreatedByScript):
2805         (WebCore::ScriptableDocumentParser::wasCreatedByScript):
2806             - General nonsense to keep track of whether the parser was created
2807               by script.
2808         * html/parser/HTMLDocumentParser.cpp:
2809         (WebCore::HTMLDocumentParser::hasInsertionPoint):
2810             - I'm not sure whether this part of the change is 100% correct.  I
2811               think our notion of the EOF character might be subtly different
2812               from the notion in the spec.
2813         * html/parser/HTMLInputStream.h:
2814         (WebCore::HTMLInputStream::hasInsertionPoint):
2815             - Remove FIXME because we're fixing that!
2816
2817 2011-02-09  Abhishek Arya  <inferno@chromium.org>
2818
2819         Reviewed by James Robinson.
2820
2821         [Chromium] Issue 72387: Integer bounds crash in LayerTilerChromium::resizeLayer
2822         https://bugs.webkit.org/show_bug.cgi?id=54132
2823  
2824         * platform/graphics/chromium/LayerTilerChromium.cpp:
2825         (WebCore::LayerTilerChromium::resizeLayer):
2826
2827 2011-02-09  Xiyuan Xia  <xiyuan@chromium.org>
2828
2829         Reviewed by Tony Chang.
2830
2831         [Chromium] Use #f7f7f7 for select popup background on chromium/linux
2832         https://bugs.webkit.org/show_bug.cgi?id=54115
2833
2834         No new tests since no behavior change.
2835
2836         * css/themeChromiumLinux.css:
2837         (select[size="1"] option):
2838
2839 2011-02-09  Adam Barth  <abarth@webkit.org>
2840
2841         Reviewed by Eric Seidel.
2842
2843         REGRESSION(HTML 5): HTMLDocumentParser does not report html parse errors to the console
2844         https://bugs.webkit.org/show_bug.cgi?id=41187
2845
2846         Wire up a basic HTML parse error message.  There's a lot of room for
2847         improvement in this area, but this is a start.
2848
2849         No tests!  See https://bugs.webkit.org/show_bug.cgi?id=54134
2850
2851         * html/parser/HTMLDocumentParser.h:
2852         * html/parser/HTMLTreeBuilder.cpp:
2853         (WebCore::HTMLTreeBuilder::parseError):
2854         * html/parser/HTMLTreeBuilder.h:
2855
2856 2011-02-09  Naoki Takano  <takano.naoki@gmail.com>
2857
2858         Reviewed by Kenneth Russell.
2859
2860         [Chromium] Issue 58536: Fix Layout Test canvas/philip/tests/2d.imageData.put.alpha.html with --accelerated-2d-canvas.
2861         https://bugs.webkit.org/show_bug.cgi?id=53757
2862
2863           This fix is for 2d.imageData.put.alpha.html with --accelerated-2d-canvas. No new tests.
2864
2865         * platform/graphics/skia/ImageBufferSkia.cpp:
2866         (WebCore::ImageBuffer::putUnmultipliedImageData): needs to call syncSoftwareCanvas() to sync between hardware and software.
2867         (WebCore::ImageBuffer::putPremultipliedImageData): needs to call syncSoftwareCanvas() to sync between hardware and software.
2868
2869
2870 2011-02-09  Chris Rogers  <crogers@google.com>
2871
2872         Reviewed by Kenneth Russell.
2873
2874         Fix scaling and thread safety of FFTFrameFFTW
2875         https://bugs.webkit.org/show_bug.cgi?id=54045
2876
2877         No new tests since audio API is not yet implemented.
2878
2879         * platform/audio/FFTFrame.h:
2880         * platform/audio/fftw/FFTFrameFFTW.cpp:
2881         (WebCore::FFTFrame::FFTFrame):
2882         (WebCore::FFTFrame::doFFT):
2883         (WebCore::FFTFrame::doInverseFFT):
2884         (WebCore::FFTFrame::initialize):
2885         (WebCore::FFTFrame::cleanup):
2886         (WebCore::FFTFrame::realData):
2887         (WebCore::FFTFrame::imagData):
2888         (WebCore::FFTFrame::fftwPlanForSize):
2889         * platform/audio/mac/FFTFrameMac.cpp:
2890         (WebCore::FFTFrame::initialize):
2891         * platform/audio/mkl/FFTFrameMKL.cpp:
2892         (WebCore::FFTFrame::initialize):
2893         * webaudio/AudioContext.cpp:
2894         (WebCore::AudioContext::AudioContext):
2895
2896 2011-02-09  Chris Fleizach  <cfleizach@apple.com>
2897
2898         Reviewed by Darin Adler.
2899
2900         AX: accessibilityShouldUseUniqueId doesn't need to be in the core AX object
2901         https://bugs.webkit.org/show_bug.cgi?id=54126
2902
2903         This is a Mac-only accessibility API concept and doesn't belong in the core AX object.
2904
2905         * accessibility/AccessibilityObject.h:
2906         (WebCore::AccessibilityObject::node):
2907         * accessibility/mac/AccessibilityObjectWrapper.mm:
2908         (-[AccessibilityObjectWrapper accessibilityShouldUseUniqueId]):
2909
2910 2011-02-09  Nebojsa Ciric  <cira@chromium.org>
2911
2912         Reviewed by Darin Fisher.
2913
2914         Implements Locale object of JavaScript internationalization API proposal, as an
2915         v8 extension. Extension code is hosted in v8 project (src/extensions/experimental/i18n-extension.{cc,h})
2916         and in this patch we just provide flags, tests and build rules for chromium port.
2917         https://bugs.webkit.org/show_bug.cgi?id=49414
2918
2919         Test: fast/js/i18n-bindings-locale.html
2920
2921         * WebCore.gyp/WebCore.gyp:
2922         * bindings/generic/RuntimeEnabledFeatures.cpp:
2923         (WebCore::RuntimeEnabledFeatures::experimentalI18NAPIEnabled):
2924         * bindings/generic/RuntimeEnabledFeatures.h:
2925         (WebCore::RuntimeEnabledFeatures::setExperimentalI18NAPIEnabled):
2926         * bindings/v8/V8DOMWindowShell.cpp:
2927         (WebCore::V8DOMWindowShell::createNewContext):
2928
2929 2011-02-08  Dimitri Glazkov  <dglazkov@chromium.org>
2930
2931         Reviewed by Darin Adler.
2932
2933         REGRESSION(r71934): Shadow DOM nodes leak via relatedTarget
2934         https://bugs.webkit.org/show_bug.cgi?id=52065
2935
2936         * dom/Node.cpp:
2937         (WebCore::pullOutOfShadow): Added a helper to move a node to the outermost
2938             boundary of shadow DOM.
2939         (WebCore::Node::dispatchMouseEvent): Changed to use pullOutOfShadow.
2940
2941 2011-02-09  Yael Aharon  <yael.aharon@nokia.com>
2942
2943         Reviewed by Darin Adler.
2944
2945         Add convenience method toHTMLElement(Node*)
2946         https://bugs.webkit.org/show_bug.cgi?id=54105
2947
2948         No new tests since no new functionality introduced.
2949
2950         * html/HTMLElement.h:
2951         (WebCore::toHTMLElement):
2952
2953 2011-02-09  Sam Weinig  <sam@webkit.org>
2954
2955         Reviewed by Dan Bernstein.
2956
2957         Fixed positioned elements at very top or bottom of page remain fixed but clip during rubber-banding
2958         <rdar://problem/7615997>
2959         https://bugs.webkit.org/show_bug.cgi?id=54054
2960
2961         Take the overhang into account when calculating position for elements with position: fixed.
2962
2963         * platform/ScrollView.cpp:
2964         (WebCore::ScrollView::scrollXForFixedPosition):
2965         (WebCore::ScrollView::scrollYForFixedPosition):
2966         (WebCore::ScrollView::scrollOffsetForFixedPosition):
2967         * platform/ScrollView.h:
2968         * rendering/RenderView.cpp:
2969         (WebCore::RenderView::mapLocalToContainer):
2970         (WebCore::RenderView::mapAbsoluteToLocalPoint):
2971         (WebCore::RenderView::computeRectForRepaint):
2972
2973 2011-02-09  Simon Fraser  <simon.fraser@apple.com>
2974
2975         Reviewed by Dirk Schulze.
2976
2977         Enhance ShadowBlur to tile inset box shadows
2978         https://bugs.webkit.org/show_bug.cgi?id=51567
2979         
2980         Add a tiling code path to ShadowBlur for rendering inset
2981         box-shadows.
2982
2983         Test: fast/box-shadow/inset-box-shadows.html
2984         
2985         * platform/graphics/ShadowBlur.cpp:
2986         (WebCore::computeSliceSizesFromRadii): Compute the slice sizes
2987         for the eight-piece shadow template.
2988         (WebCore::ShadowBlur::templateSize): Compute the size of the template,
2989         given the slice sizes.
2990         (WebCore::ShadowBlur::drawRectShadow): Bail early if layerRect is empty
2991         (which probably means we're clipped out). Call templateSize() and use
2992         the result to decide whether to tile.
2993         (WebCore::ShadowBlur::drawInsetShadow): New method for inset shadows.
2994         (WebCore::ShadowBlur::drawRectShadowWithoutTiling): Code moved.
2995         (WebCore::ShadowBlur::drawInsetShadowWithoutTiling): The non-tiling code
2996         path for inset shadows.
2997         (WebCore::ShadowBlur::drawInsetShadowWithTiling): Fill the shadow template
2998         buffer, paint the non-blurred area of the destination, and then call drawLayerPieces()
2999         to paint the eight-piece template image.
3000         (WebCore::ShadowBlur::drawRectShadowWithTiling): Refactored code, now
3001         shares the blurring code via blurAndColorShadowBuffer(), and the tiled template
3002         drawing via drawLayerPieces().
3003         (WebCore::ShadowBlur::drawLayerPieces): Draw an eight-piece image from the
3004         shadow template to the destination.
3005         (WebCore::ShadowBlur::blurAndColorShadowBuffer): Blur the pixels in the image
3006         buffer, and colorize them using the CompositeSourceIn operation.
3007         * platform/graphics/ShadowBlur.h:
3008
3009 2011-02-09  Jochen Eisinger  <jochen@chromium.org>
3010
3011         Reviewed by Adam Barth.
3012
3013         Disable script elements when a CSP header is present
3014         https://bugs.webkit.org/show_bug.cgi?id=53867
3015
3016         Tests: http/tests/security/contentSecurityPolicy/no-policy.html
3017                http/tests/security/contentSecurityPolicy/script-src-in-iframe.html
3018                http/tests/security/contentSecurityPolicy/script-src-none.html
3019                http/tests/security/contentSecurityPolicy/script-src-redirect.html
3020
3021         * html/parser/HTMLDocumentParser.cpp:
3022         (WebCore::HTMLDocumentParser::shouldLoadExternalScriptFromSrc):
3023         * html/parser/HTMLScriptRunner.cpp:
3024         (WebCore::HTMLScriptRunner::requestPendingScript):
3025         * loader/FrameLoader.cpp:
3026         (WebCore::FrameLoader::didBeginDocument):
3027         * loader/MainResourceLoader.cpp:
3028         (WebCore::MainResourceLoader::didReceiveResponse):
3029         * page/ContentSecurityPolicy.cpp:
3030         (WebCore::ContentSecurityPolicy::ContentSecurityPolicy):
3031         (WebCore::ContentSecurityPolicy::didReceiveHeader):
3032         (WebCore::ContentSecurityPolicy::canLoadExternalScriptFromSrc):
3033         * page/ContentSecurityPolicy.h:
3034
3035 2011-02-09  Patrick Gansterer  <paroga@webkit.org>
3036
3037         Unreviewed WinCE build fix for r78047.
3038
3039         ContextMenu.cpp and ContextMenuItem.cpp have a USE(CROSS_PLATFORM_CONTEXT_MENUS),
3040         so they shouldn't cause problems with correct preprocessor defines.
3041
3042         * CMakeLists.txt:
3043
3044 2011-02-09  Ilya Tikhonovsky  <loislo@chromium.org>
3045
3046         Reviewed by Pavel Feldman.
3047
3048         Web Inspector: InspectorAgent should know nothing about InspectorController instance.
3049
3050         https://bugs.webkit.org/show_bug.cgi?id=54100
3051
3052         * inspector/InspectorAgent.cpp:
3053         (WebCore::InspectorAgent::InspectorAgent):
3054         (WebCore::InspectorAgent::restoreInspectorStateFromCookie):
3055         (WebCore::InspectorAgent::disconnectFrontend):
3056         * inspector/InspectorAgent.h:
3057         * inspector/InspectorController.cpp:
3058         (WebCore::InspectorController::InspectorController):
3059         (WebCore::InspectorController::disconnectFrontend):
3060         (WebCore::InspectorController::restoreInspectorStateFromCookie):
3061
3062 2011-02-09  Pavel Podivilov  <podivilov@chromium.org>
3063
3064         Reviewed by Pavel Feldman.
3065
3066         Web Inspector: source frame scroll position is not restored.
3067         https://bugs.webkit.org/show_bug.cgi?id=54101
3068
3069         * inspector/front-end/ScriptsPanel.js:
3070         (WebInspector.ScriptsPanel.prototype._scriptSourceChanged):
3071         * inspector/front-end/SourceFrame.js:
3072         (WebInspector.SourceFrame.prototype.show):
3073         (WebInspector.SourceFrame.prototype.hide):
3074         (WebInspector.SourceFrame.prototype.get scrollTop):
3075         (WebInspector.SourceFrame.prototype.set scrollTop):
3076         * inspector/front-end/TextViewer.js:
3077         (WebInspector.TextViewer.prototype.get scrollTop):
3078         (WebInspector.TextViewer.prototype.set scrollTop):
3079         (WebInspector.TextViewer.prototype.get scrollLeft):
3080         (WebInspector.TextViewer.prototype.set scrollLeft):
3081
3082 2011-02-09  Pavel Feldman  <pfeldman@chromium.org>
3083
3084         Reviewed by Yury Semikhatsky.
3085
3086         Web Inspector: follow up on InspectorAgent split -
3087         removing unnecessary methods from InspectorController.
3088         https://bugs.webkit.org/show_bug.cgi?id=54093
3089
3090         * WebCore.exp.in:
3091         * inspector/InspectorAgent.cpp:
3092         (WebCore::InspectorAgent::stopUserInitiatedProfiling):
3093         (WebCore::InspectorAgent::showAndEnableDebugger):
3094         (WebCore::InspectorAgent::enabled):
3095         (WebCore::InspectorAgent::showConsole):
3096         * inspector/InspectorAgent.h:
3097         * inspector/InspectorController.cpp:
3098         (WebCore::InspectorController::InspectorController):
3099         (WebCore::InspectorController::didClearWindowObjectInWorld):
3100         (WebCore::InspectorController::showConsole):
3101         (WebCore::InspectorController::enabled):
3102         (WebCore::InspectorController::inspectedPage):
3103         * inspector/InspectorController.h:
3104         * inspector/InspectorFrontendClientLocal.cpp:
3105
3106 2011-02-07  Chris Marrin  <cmarrin@apple.com>
3107
3108         Reviewed by Simon Fraser.
3109
3110         LayoutTests/animations/play-state.html has wrong behavior with accelerated compositing
3111         https://bugs.webkit.org/show_bug.cgi?id=53513
3112
3113         The PlatformCAAnimation::create() function which took a pointer to another
3114         PlatformCAAnimation was supposed to make a copy of that passed object.
3115         But it was doing completely the wrong thing on Mac and was leaking an object
3116         to boot. And the notion of copying an object using a static creation function
3117         is wrong in the first place. So I changed it to a member copy() function
3118         which would create a new PlatformCAAnimation which was a copy of 'this' and
3119         return it. I changed the implementation on both Mac and Win to match.
3120
3121         This problem was not caught by DRT, even there is a specific test for it.
3122         That test just verifies that the higher level logic is working 
3123         properly, which it is. There's no practical way to find out if the
3124         layer is currently animating. There is no logic which probes that
3125         deeply into the layer mechanics.
3126         
3127         * platform/graphics/ca/GraphicsLayerCA.cpp:
3128         * platform/graphics/ca/PlatformCAAnimation.h:
3129         * platform/graphics/ca/mac/PlatformCAAnimationMac.mm:
3130         * platform/graphics/ca/win/PlatformCAAnimationWin.cpp:
3131
3132 2011-02-09  Lucas De Marchi  <lucas.demarchi@profusion.mobi>
3133
3134         Unreviewed build fix.
3135
3136         [EFL] Remove double definition of ContextMenu.
3137         https://bugs.webkit.org/show_bug.cgi?id=50762
3138
3139         When building with SHARED_CORE enabled, the symbols of ContextMenu
3140         were both in webkit and webcore. This removes them from webcore and
3141         shall be put back once the CROSS_PLATFORM_CONTEXT_MENUS is implemented
3142         in EFL port.
3143
3144         No new tests because no new functionality.
3145
3146         * CMakeLists.txt:
3147
3148 2011-02-09  Adam Roben  <aroben@apple.com>
3149
3150         Windows Production build fix
3151
3152         * WebCore.vcproj/QTMovieWinCommon.vsprops: Link against
3153         WebKitSystemInterface$(WebKitConfigSuffix).lib, not just WebKitSystemInterface.lib, so we
3154         pick up the _debug variant when appropriate.
3155
3156 2011-02-09  Eric Seidel  <eric@webkit.org>
3157
3158         Reviewed by Adam Barth.
3159
3160         Hostnames should cannonicalize to lowercase (to match every other browser)
3161         https://bugs.webkit.org/show_bug.cgi?id=54084
3162
3163         * platform/KURL.cpp:
3164         (WebCore::KURL::parse):
3165
3166 2011-02-09  Peter Varga  <pvarga@webkit.org>
3167
3168
3169         Reviewed by Gavin Barraclough.
3170
3171         Replace PCRE with Yarr in WebCore
3172         https://bugs.webkit.org/show_bug.cgi?id=53496
3173
3174         No new tests needed.
3175
3176         * Android.jscbindings.mk:
3177         * CMakeLists.txt:
3178         * ForwardingHeaders/pcre/pcre.h: Removed.
3179         * ForwardingHeaders/yarr/Yarr.h: Added.
3180         * ForwardingHeaders/yarr/YarrInterpreter.h: Added.
3181         * ForwardingHeaders/yarr/YarrPattern.h: Added.
3182         * WebCore.gyp/WebCore.gyp:
3183         * WebCore.pro:
3184         * WebCore.vcproj/WebCore.vcproj:
3185         * WebCore.vcproj/copyForwardingHeaders.cmd:
3186         * platform/text/RegularExpression.cpp:
3187         (WebCore::RegularExpression::Private::create):
3188         (WebCore::RegularExpression::Private::Private):
3189         (WebCore::RegularExpression::Private::compile):
3190         (WebCore::RegularExpression::match):
3191
3192 2011-02-09  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
3193
3194         Reviewed by Eric Seidel.
3195
3196         [EFL] Add dummy functions for HTML5 Video's control UI
3197         https://bugs.webkit.org/show_bug.cgi?id=53906
3198
3199         In WebKit EFL, there are no implementations for HTML5 control UI.
3200         First, dummy functions are added.
3201
3202         * platform/efl/RenderThemeEfl.cpp:
3203         (WebCore::RenderThemeEfl::extraMediaControlsStyleSheet):
3204         (WebCore::RenderThemeEfl::formatMediaControlsCurrentTime):
3205         (WebCore::RenderThemeEfl::paintMediaFullscreenButton):
3206         (WebCore::RenderThemeEfl::paintMediaMuteButton):
3207         (WebCore::RenderThemeEfl::paintMediaPlayButton):
3208         (WebCore::RenderThemeEfl::paintMediaSeekBackButton):
3209         (WebCore::RenderThemeEfl::paintMediaSeekForwardButton):
3210         (WebCore::RenderThemeEfl::paintMediaSliderTrack):
3211         (WebCore::RenderThemeEfl::paintMediaSliderThumb):
3212         (WebCore::RenderThemeEfl::paintMediaVolumeSliderContainer):
3213         (WebCore::RenderThemeEfl::paintMediaVolumeSliderTrack):
3214         (WebCore::RenderThemeEfl::paintMediaVolumeSliderThumb):
3215         (WebCore::RenderThemeEfl::paintMediaCurrentTime):
3216         * platform/efl/RenderThemeEfl.h:
3217
3218 2011-02-09  Eric Seidel  <eric@webkit.org>
3219
3220         Reviewed by Adam Barth.
3221
3222         Make WebKit's fragment cannonicalization match other browsers
3223         https://bugs.webkit.org/show_bug.cgi?id=53850
3224
3225         This doesn't make us match perfectly, but it brings us closer.
3226
3227         * platform/KURL.cpp:
3228         (WebCore::appendEscapingBadChars):
3229         (WebCore::escapeAndAppendFragment):
3230         (WebCore::KURL::parse):
3231
3232 2011-02-09  Hans Wennborg  <hans@chromium.org>
3233
3234         Reviewed by Jeremy Orlow.
3235
3236         IndexedDB: Cursors should skip deleted entries
3237         https://bugs.webkit.org/show_bug.cgi?id=53690
3238
3239         Add test to check that the cursor skips deleted entries.
3240
3241         Test: storage/indexeddb/cursor-skip-deleted.html
3242
3243         * storage/IDBCursorBackendImpl.cpp:
3244         (WebCore::IDBCursorBackendImpl::currentRowExists):
3245         (WebCore::IDBCursorBackendImpl::continueFunctionInternal):
3246         * storage/IDBCursorBackendImpl.h:
3247
3248 2011-02-08  Pavel Podivilov  <podivilov@chromium.org>
3249
3250         Reviewed by Yury Semikhatsky.
3251
3252         Web Inspector: script formatter should not create a worker for each script.
3253         https://bugs.webkit.org/show_bug.cgi?id=54010
3254
3255         * inspector/front-end/ScriptFormatter.js:
3256         (WebInspector.ScriptFormatter):
3257         (WebInspector.ScriptFormatter.prototype._formatScript):
3258         (WebInspector.ScriptFormatter.prototype._handleMessage):
3259         (WebInspector.ScriptFormatter.prototype._handleError):
3260
3261 2011-02-08  Pavel Podivilov  <podivilov@chromium.org>
3262
3263         Reviewed by Pavel Feldman.
3264
3265         Web Inspector: sync uglifyjs parser files.
3266         https://bugs.webkit.org/show_bug.cgi?id=54003
3267
3268         * inspector/front-end/UglifyJS/parse-js.js:
3269         * inspector/front-end/UglifyJS/process.js:
3270
3271 2011-02-08  Ryosuke Niwa  <rniwa@webkit.org>
3272
3273         Reviewed by Darin Adler.
3274
3275         REGRESSION(71556,68059): queryCommandValue screws up background color at collapsed cursor
3276         https://bugs.webkit.org/show_bug.cgi?id=53196
3277
3278         The bug was caused by Editor::selectionComputedStyle's modifying typing style without making a copy,
3279         and its removing non-inheritable properties from the typing style. Fixed the bug by making a copy
3280         before making the modification and not removing non-inheritable properties.
3281
3282         Also fixed a bug in selectionStartCSSPropertyValue that it doesn't handle xx-small to -webkit-xxx-large
3283         by extracting a function from StyleChange::extractTextStyles and calling it in both extractTextStyles
3284         and selectionStartCSSPropertyValue.
3285
3286         Test: editing/style/query-typing-style.html
3287
3288         * editing/ApplyStyleCommand.cpp:
3289         (WebCore::legacyFontSizeFromCSSValue): Extracted from StyleChange::extractTextStyles.
3290         (WebCore::StyleChange::extractTextStyles): Calls legacyFontSizeFromCSSValue; this fixes the bug that
3291         CSS values from xx-small through -webkit-xxx-large are not accounted.
3292         * editing/ApplyStyleCommand.h:
3293         * editing/Editor.cpp:
3294         (WebCore::Editor::selectionStartCSSPropertyValue): Calls legacyFontSizeFromCSSValue.
3295         (WebCore::Editor::selectionComputedStyle): Makes a copy before modifying typing style.
3296         No longer calls removeNonEditingProperties on the copied typing style so that background-color property
3297         is included when merged into the style.
3298
3299 2011-02-08  Sam Weinig  <sam@webkit.org>
3300
3301         Reviewed by Maciej Stachowiak.
3302
3303         REGRESSION (r76831): Subframes are printed blank
3304         <rdar://problem/8945867>
3305
3306         * page/FrameView.cpp:
3307         (WebCore::FrameView::paintOverhangAreas):
3308         Don't paint overhangs when printing.
3309
3310 2011-02-07  Jeremy Orlow  <jorlow@chromium.org>
3311
3312         Reviewed by Nate Chapin.
3313
3314         Events should propagate through IDBDatabase (for IDBRequest and IDBTransaction)
3315         https://bugs.webkit.org/show_bug.cgi?id=53975
3316
3317         The third change in the series of overhauling IndexedDB's event model to match
3318         the spec (at least the version in our heads and bugs).
3319
3320         Test: storage/indexeddb/transaction-event-propagation.html
3321
3322         * bindings/v8/V8DOMWrapper.cpp:
3323         (WebCore::V8DOMWrapper::convertEventTargetToV8Object):
3324         * dom/Event.cpp:
3325         (WebCore::Event::isIDBAbortEvent):
3326         (WebCore::Event::isIDBCompleteEvent):
3327         * dom/Event.h:
3328         * dom/EventTarget.cpp:
3329         (WebCore::EventTarget::toIDBDatabase):
3330         * dom/EventTarget.h:
3331         * storage/IDBDatabase.cpp:
3332         (WebCore::IDBDatabase::create):
3333         (WebCore::IDBDatabase::IDBDatabase):
3334         (WebCore::IDBDatabase::scriptExecutionContext):
3335         (WebCore::IDBDatabase::eventTargetData):
3336         (WebCore::IDBDatabase::ensureEventTargetData):
3337         * storage/IDBDatabase.h:
3338         (WebCore::IDBDatabase::toIDBDatabase):
3339         (WebCore::IDBDatabase::refEventTarget):
3340         (WebCore::IDBDatabase::derefEventTarget):
3341         * storage/IDBDatabase.idl:
3342         * storage/IDBRequest.cpp:
3343         (WebCore::IDBRequest::onSuccess):
3344         (WebCore::IDBRequest::dispatchEvent):
3345         * storage/IDBTransaction.cpp:
3346         (WebCore::IDBTransaction::backend):
3347         (WebCore::IDBTransaction::db):
3348         (WebCore::IDBTransaction::objectStore):
3349         (WebCore::IDBTransaction::scriptExecutionContext):
3350         (WebCore::IDBTransaction::dispatchEvent):
3351         (WebCore::IDBTransaction::enqueueEvent):
3352         * storage/IDBTransaction.h:
3353         (WebCore::IDBTransaction::dispatchEvent):
3354
3355 2011-02-08  Kenneth Russell  <kbr@google.com>
3356
3357         Reviewed by James Robinson.
3358
3359         Add cache for GPU-accelerated path processing results
3360         https://bugs.webkit.org/show_bug.cgi?id=45519
3361
3362         Adding a cache which holds the results of processing a path into
3363         interior and exterior triangle meshes, according to the path
3364         rendering algorithm from GPU Gems 3. No tests yet; will be tested
3365         in conjunction with later code.
3366
3367         * platform/graphics/gpu/LoopBlinnPathCache.cpp: Added.
3368         (WebCore::LoopBlinnPathCache::LoopBlinnPathCache):
3369         (WebCore::LoopBlinnPathCache::~LoopBlinnPathCache):
3370         (WebCore::LoopBlinnPathCache::addVertex):
3371         (WebCore::LoopBlinnPathCache::clear):
3372         (WebCore::LoopBlinnPathCache::addInteriorVertex):
3373         (WebCore::LoopBlinnPathCache::numberOfInteriorEdgeVertices):
3374         (WebCore::LoopBlinnPathCache::interiorEdgeVertices):
3375         (WebCore::LoopBlinnPathCache::addInteriorEdgeVertex):
3376         * platform/graphics/gpu/LoopBlinnPathCache.h: Added.
3377         (WebCore::LoopBlinnPathCache::numberOfVertices):
3378         (WebCore::LoopBlinnPathCache::vertices):
3379         (WebCore::LoopBlinnPathCache::texcoords):
3380         (WebCore::LoopBlinnPathCache::numberOfInteriorVertices):
3381         (WebCore::LoopBlinnPathCache::interiorVertices):
3382
3383 2011-02-08  Zhenyao Mo  <zmo@google.com>
3384
3385         Reviewed by Kenneth Russell.
3386
3387         Rename GraphicsContext3D::WebGLEnumType
3388         https://bugs.webkit.org/show_bug.cgi?id=45708
3389
3390         * html/canvas/WebGLProgram.cpp:
3391         (WebCore::WebGLProgram::getAttachedShader):
3392         * html/canvas/WebGLProgram.h:
3393         * platform/graphics/GraphicsContext3D.h:
3394
3395 2011-02-08  Sheriff Bot  <webkit.review.bot@gmail.com>
3396
3397         Unreviewed, rolling out r77980.
3398         http://trac.webkit.org/changeset/77980
3399         https://bugs.webkit.org/show_bug.cgi?id=54043
3400
3401         "Crashes on Windows and Linux..." (Requested by leviw on
3402         #webkit).
3403
3404         * WebCore.exp.in:
3405         * accessibility/AXObjectCache.cpp:
3406         (WebCore::AXObjectCache::visiblePositionForTextMarkerData):
3407         * accessibility/AccessibilityObject.cpp:
3408         (WebCore::startOfStyleRange):
3409         (WebCore::endOfStyleRange):
3410         * accessibility/AccessibilityRenderObject.cpp:
3411         (WebCore::AccessibilityRenderObject::visiblePositionForIndex):
3412         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
3413         (objectAndOffsetUnignored):
3414         * dom/Position.cpp:
3415         (WebCore::Position::upstream):
3416         (WebCore::Position::downstream):
3417         * dom/Range.cpp:
3418         (WebCore::Range::editingStartPosition):
3419         * editing/Editor.cpp:
3420         (WebCore::Editor::canDeleteRange):
3421         * editing/ReplaceSelectionCommand.cpp:
3422         (WebCore::ReplaceSelectionCommand::doApply):
3423         * editing/SelectionController.cpp:
3424         (WebCore::SelectionController::selectFrameElementInParentIfFullySelected):
3425         (WebCore::SelectionController::setSelectedRange):
3426         * editing/TextIterator.cpp:
3427         (WebCore::TextIterator::shouldRepresentNodeOffsetZero):
3428         * editing/TypingCommand.cpp:
3429         (WebCore::TypingCommand::deleteKeyPressed):
3430         * editing/VisiblePosition.cpp:
3431         (WebCore::VisiblePosition::VisiblePosition):
3432         (WebCore::VisiblePosition::leftVisuallyDistinctCandidate):
3433         (WebCore::VisiblePosition::rightVisuallyDistinctCandidate):
3434         (WebCore::VisiblePosition::canonicalPosition):
3435         (WebCore::VisiblePosition::characterAfter):
3436         (WebCore::VisiblePosition::localCaretRect):
3437         (WebCore::makeRange):
3438         (WebCore::startVisiblePosition):
3439         (WebCore::endVisiblePosition):
3440         (WebCore::setStart):
3441         (WebCore::setEnd):
3442         (WebCore::isFirstVisiblePositionInNode):
3443         (WebCore::isLastVisiblePositionInNode):
3444         * editing/VisiblePosition.h:
3445         * editing/htmlediting.cpp:
3446         (WebCore::firstInSpecialElement):
3447         (WebCore::lastInSpecialElement):
3448         (WebCore::visiblePositionBeforeNode):
3449         (WebCore::visiblePositionAfterNode):
3450         * editing/visible_units.cpp:
3451         (WebCore::startPositionForLine):
3452         (WebCore::endPositionForLine):
3453         (WebCore::previousLinePosition):
3454         (WebCore::nextLinePosition):
3455         (WebCore::startOfParagraph):
3456         (WebCore::endOfParagraph):
3457         (WebCore::endOfBlock):
3458         (WebCore::startOfDocument):
3459         (WebCore::endOfDocument):
3460         (WebCore::logicalStartPositionForLine):
3461         (WebCore::logicalEndPositionForLine):
3462         * page/DOMSelection.cpp:
3463         (WebCore::DOMSelection::collapse):
3464         (WebCore::DOMSelection::setBaseAndExtent):
3465         (WebCore::DOMSelection::setPosition):
3466         (WebCore::DOMSelection::extend):
3467         * page/EventHandler.cpp:
3468         (WebCore::EventHandler::handleMousePressEventSingleClick):
3469         * rendering/RenderObject.cpp:
3470         (WebCore::RenderObject::createVisiblePosition):
3471         * rendering/RenderTextControl.cpp:
3472         (WebCore::RenderTextControl::visiblePositionForIndex):
3473         * svg/SVGTextContentElement.cpp:
3474         (WebCore::SVGTextContentElement::selectSubString):
3475
3476 2011-02-08  Jia Pu  <jpu@apple.com>
3477
3478         Reviewed by Darin Adler.
3479
3480         VisibleSelection::setWithoutValidation() should allow caret selection.
3481         https://bugs.webkit.org/show_bug.cgi?id=53943
3482
3483         Test: editing/undo/undo-paste-when-caret-is-not-in-range.html
3484
3485         * editing/VisibleSelection.cpp:
3486         (WebCore::VisibleSelection::setWithoutValidation):
3487
3488 2011-02-08  Martin Robinson  <mrobinson@igalia.com>
3489
3490         Reviewed by Xan Lopez.
3491
3492         [GTK] Remove the last remnants of the Mozilla theme drawing code
3493         https://bugs.webkit.org/show_bug.cgi?id=54035
3494
3495         Remove all Mozilla theme drawing code.
3496
3497         No new tests. This change only removes dead code.
3498
3499         * GNUmakefile.am: Remove Mozilla files from the source list.
3500         * platform/gtk/RenderThemeGtk.h: Remove Mozilla-theme-drawing-related methods
3501         and add m_colormap to hold the current colormap of the widgets.
3502         * platform/gtk/RenderThemeGtk2.cpp: Remove Mozilla code.
3503         (WebCore::RenderThemeGtk::platformInit): Ditto.
3504         (WebCore::RenderThemeGtk::~RenderThemeGtk): Ditto.
3505         (WebCore::RenderThemeGtk::gtkContainer): Ditto.
3506         * platform/gtk/ScrollbarThemeGtk2.cpp: Ditto.
3507         * platform/gtk/WidgetRenderingContext.cpp: Ditto.
3508         (WebCore::WidgetRenderingContext::WidgetRenderingContext): Ditto.
3509         * platform/gtk/WidgetRenderingContext.h: Ditto.
3510         * platform/gtk/gtk2drawing.c: Removed.
3511         * platform/gtk/gtkdrawing.h: Removed.
3512
3513 2011-02-08  Yael Aharon  <yael.aharon@nokia.com>
3514
3515         Reviewed by Antti Koivisto.
3516
3517         Crash when logging into gmail.com with frame flattening turned on.
3518         https://bugs.webkit.org/show_bug.cgi?id=52449
3519
3520         Frame flattening algorithm requires that layout always starts from the main frame, since layout of
3521         subframes impacts the layout of their parents. 
3522         There are places in the code that call view->layout() not on the main frame.
3523         Instead of changing all the callsites, I changed FrameView::layout()
3524         to force layout from the main frame if frame flattening is enabled.
3525         In addition, postLayoutTasks can trigger relayout, so make it use the timer even more.
3526         Move the call to SelectionController::updateAppearance() to performPostLayoutTasks(), 
3527         because calling the from layout() leads to a crash in pages that have a selection in an iframe.
3528
3529         Tests: fast/frames/flattening/iframe-flattening-crash.html
3530                fast/frames/flattening/iframe-flattening-selection-crash.html
3531
3532         * page/FrameView.cpp:
3533         (WebCore::FrameView::layout):
3534         (WebCore::FrameView::performPostLayoutTasks):
3535
3536 2011-02-08  Andy Estes  <aestes@apple.com>
3537
3538         Reviewed by Darin Adler.
3539
3540         <rdar://problem/8913952> REGRESSION (r76301): 'plaintext-only' must be
3541         a supported contentEditable mode.
3542         https://bugs.webkit.org/show_bug.cgi?id=54041
3543
3544         * html/HTMLElement.cpp:
3545         (WebCore::HTMLElement::setContentEditable): Setting the contentEditable
3546         attribute to 'plaintext-only' should not throw an exception.
3547
3548 2011-02-08  Dan Bernstein  <mitz@apple.com>
3549
3550         Reviewed by Simon Fraser.
3551
3552         RenderRubyRun::m_beingDestroyed is redundant
3553         https://bugs.webkit.org/show_bug.cgi?id=54042
3554
3555         * rendering/RenderRubyRun.cpp:
3556         (WebCore::RenderRubyRun::RenderRubyRun): Removed intialization of m_beingDestroyed.
3557         (WebCore::RenderRubyRun::removeChild): Use the base class beingDestroyed(). 
3558         * rendering/RenderRubyRun.h:
3559
3560 2011-02-08  Levi Weintraub  <leviw@chromium.org>
3561
3562         Reviewed by Ryosuke Niwa.
3563
3564         Stop instantiating legacy editing Positions in VisiblePosition
3565         https://bugs.webkit.org/show_bug.cgi?id=52919
3566
3567         Changing VisiblePosition completely away from legacy positions.
3568
3569         No new tests since this is functionaly equivalent.
3570
3571         * WebCore.exp.in: Removing the legacy VisiblePosition constructor and
3572         adding the PositionIsOffsetInAnchor symbol. If we must create VisiblePositions
3573         outside of WebCore, they should be parent anchored.
3574         * accessibility/AXObjectCache.cpp:
3575         (WebCore::AXObjectCache::visiblePositionForTextMarkerData):
3576         * accessibility/AccessibilityObject.cpp:
3577         (WebCore::startOfStyleRange):
3578         (WebCore::endOfStyleRange):
3579         * accessibility/AccessibilityRenderObject.cpp:
3580         (WebCore::AccessibilityRenderObject::visiblePositionForIndex):
3581         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
3582         (objectAndOffsetUnignored):
3583         * dom/Position.cpp:
3584         (WebCore::Position::upstream): Fixed to correctly respect PositionIsAfterAnchor
3585         (WebCore::Position::downstream): ditto
3586         * dom/Range.cpp:
3587         (WebCore::Range::editingStartPosition):
3588         * editing/Editor.cpp:
3589         (WebCore::Editor::canDeleteRange):
3590         * editing/ReplaceSelectionCommand.cpp:
3591         (WebCore::ReplaceSelectionCommand::doApply):
3592         * editing/SelectionController.cpp:
3593         (WebCore::SelectionController::selectFrameElementInParentIfFullySelected):
3594         (WebCore::SelectionController::setSelectedRange):
3595         * editing/TextIterator.cpp:
3596         (WebCore::TextIterator::shouldRepresentNodeOffsetZero):
3597         * editing/TypingCommand.cpp:
3598         (WebCore::TypingCommand::deleteKeyPressed):
3599         * editing/VisiblePosition.cpp:
3600         (WebCore::VisiblePosition::leftVisuallyDistinctCandidate):
3601         (WebCore::VisiblePosition::rightVisuallyDistinctCandidate):
3602         (WebCore::VisiblePosition::canonicalPosition):
3603         (WebCore::VisiblePosition::characterAfter):
3604         (WebCore::VisiblePosition::localCaretRect):
3605         (WebCore::makeRange):
3606         (WebCore::startVisiblePosition):
3607         (WebCore::endVisiblePosition):
3608         (WebCore::setStart):
3609         (WebCore::setEnd):
3610         (WebCore::isFirstVisiblePositionInNode):
3611         (WebCore::isLastVisiblePositionInNode):
3612         * editing/VisiblePosition.h:
3613         (WebCore::VisiblePosition::VisiblePosition):
3614         * editing/htmlediting.cpp:
3615         (WebCore::firstInSpecialElement):
3616         (WebCore::lastInSpecialElement):
3617         (WebCore::visiblePositionBeforeNode):
3618         (WebCore::visiblePositionAfterNode):
3619         * editing/visible_units.cpp:
3620         (WebCore::startPositionForLine):
3621         (WebCore::endPositionForLine):
3622         (WebCore::previousLinePosition):
3623         (WebCore::nextLinePosition):
3624         (WebCore::startOfParagraph):
3625         (WebCore::endOfParagraph):
3626         (WebCore::endOfBlock):
3627         (WebCore::startOfDocument):
3628         (WebCore::endOfDocument):
3629         (WebCore::logicalStartPositionForLine):
3630         (WebCore::logicalEndPositionForLine):
3631         * page/DOMSelection.cpp:
3632         (WebCore::DOMSelection::collapse):
3633         (WebCore::DOMSelection::setBaseAndExtent):
3634         (WebCore::DOMSelection::setPosition):
3635         (WebCore::DOMSelection::extend):
3636         * page/EventHandler.cpp:
3637         (WebCore::EventHandler::handleMousePressEventSingleClick):
3638         * rendering/RenderObject.cpp:
3639         (WebCore::RenderObject::createVisiblePosition):
3640         * rendering/RenderTextControl.cpp:
3641         (WebCore::RenderTextControl::visiblePositionForIndex):
3642         * svg/SVGTextContentElement.cpp:
3643         (WebCore::SVGTextContentElement::selectSubString):
3644
3645 2011-02-08  Michael Saboff  <msaboff@apple.com>
3646
3647         JSC::Bindings m_rootObject->isValid() assert fails when running layout tests
3648         https://bugs.webkit.org/show_bug.cgi?id=53716
3649
3650         Changed ASSERT to be an if for the case where the RuntimeObject was
3651         GC'ed before RootObject::invalidate is called.  In that case there is 
3652         no need to remove the RuntimeObject from the RootObject.  The isValid()
3653         call will be false in this case, but the RuntimeObject has already
3654         been removed from the RootObject.  Added similar defensive code
3655         in RootObject::removeRuntimeObject().
3656
3657         * bridge/jsc/BridgeJSC.cpp:
3658         (JSC::Bindings::Instance::willDestroyRuntimeObject):
3659         * bridge/runtime_root.cpp:
3660         (JSC::Bindings::RootObject::removeRuntimeObject):
3661
3662 2011-02-08  Beth Dakin  <bdakin@apple.com>
3663
3664         Reviewed by Darin Adler.
3665
3666         Fix for <rdar://problem/8953365> CrashTracer: 14 
3667         crashes in WebProcess at com.apple.WebCore: 
3668         -[ScrollKnobAnimation setCurrentProgress:] + 258
3669
3670         This crash seems to happen when the animation is running
3671         and a window is closed. If the ScrollAnimator is destroyed,
3672         delegate calls for the animation can still run, so we have 
3673         to make sure we inform the delegates when the ScrollAnimator 
3674         is gone, and then we have to null-check it before we do 
3675         anything with it.
3676
3677         Remove scrollbarPainterDelegate() since it's not used anymore.
3678         * platform/mac/ScrollAnimatorMac.h:
3679         * platform/mac/ScrollAnimatorMac.mm:
3680         
3681         Add null-checks for _animator
3682         (-[ScrollbarPartAnimation setCurrentProgress:]):
3683         (-[ScrollbarPartAnimation scrollAnimatorDestroyed]):
3684         (-[ScrollbarPainterDelegate scrollerImp:animateKnobAlphaTo:duration:]):
3685         (-[ScrollbarPainterDelegate scrollerImp:animateTrackAlphaTo:duration:]):
3686         (-[ScrollbarPainterDelegate scrollerImp:overlayScrollerStateChangedTo:]):
3687         
3688         New function to inform the delegates that the ScrollAnimator
3689         is being destroyed.
3690         (-[ScrollbarPainterDelegate scrollAnimatorDestroyed]):
3691         (WebCore::ScrollAnimatorMac::~ScrollAnimatorMac):
3692
3693 2011-02-08  Adam Barth  <abarth@webkit.org>
3694
3695         Reviewed by Eric Seidel.
3696
3697         Remove orphan code from old parser
3698         https://bugs.webkit.org/show_bug.cgi?id=53984
3699
3700         This code appears to be unused.
3701
3702         * html/HTMLParserErrorCodes.cpp:
3703         * html/HTMLParserErrorCodes.h:
3704         * html/HTMLParserQuirks.h:
3705         * loader/EmptyClients.h:
3706         * page/ChromeClient.h:
3707
3708 2011-02-08  Martin Robinson  <mrobinson@igalia.com>
3709
3710         Reviewed by Gustavo Noronha Silva.
3711
3712         [GTK] Move scrollbar rendering out of gtk2drawing.c
3713         https://bugs.webkit.org/show_bug.cgi?id=52836
3714
3715         Replace gtk2drawing.c scrollbar rendering with our own version. This
3716         is the last use of the Mozilla theme drawing code.
3717
3718         No new tests. This should not change the rendering of the default
3719         theme.
3720
3721         * platform/gtk/GtkVersioning.h: Add some more backported allocation setters.
3722         * platform/gtk/RenderThemeGtk.h: Add a getter for the scrollbar widgets.
3723         * platform/gtk/RenderThemeGtk2.cpp:  Initialize and add getters for scrollbar widgets.
3724         (WebCore::RenderThemeGtk::platformInit): Ditto.
3725         (WebCore::RenderThemeGtk::gtkHScrollbar): Ditto.
3726         (WebCore::RenderThemeGtk::gtkVScrollbar): Ditto.
3727         * platform/gtk/ScrollbarThemeGtk.cpp: 
3728         (WebCore::ScrollbarThemeGtk::paint): We only repaint the scrolled
3729         window background if we are repainting a button or the thumb. In that
3730         case also repaint the track rect.
3731         * platform/gtk/ScrollbarThemeGtk2.cpp: Port to WidgetRenderingContext.
3732         (WebCore::ScrollbarThemeGtk::ScrollbarThemeGtk): Ditto.
3733         (WebCore::ScrollbarThemeGtk::updateThemeProperties): Ditto.
3734         (WebCore::getWidgetForScrollbar): Ditto.
3735         (WebCore::ScrollbarThemeGtk::paintTrackBackground): Ditto.
3736         (WebCore::ScrollbarThemeGtk::paintScrollbarBackground): Ditto.
3737         (WebCore::ScrollbarThemeGtk::paintThumb): Ditto.
3738         (WebCore::ScrollbarThemeGtk::paintButton): Ditto.
3739         * platform/gtk/WidgetRenderingContext.cpp: Ditto.
3740         (WebCore::WidgetRenderingContext::gtkPaintBox): Added an option which
3741         also adjusts a widget allocation according to the paint rect. This is
3742         necessary to properly draw scrollbar buttons.
3743         * platform/gtk/WidgetRenderingContext.h: Ditto.
3744
3745 2011-02-08  Simon Fraser  <simon.fraser@apple.com>
3746
3747         Reviewed by Dan Bernstein.
3748
3749         Inset shadow with large offset renders incorrectly
3750         https://bugs.webkit.org/show_bug.cgi?id=53882
3751         
3752         Fix an issue with inset shadows, when the shadow offset
3753         was larger than the box size. In this case we'd fail to
3754         fill the box with the shadow color.
3755
3756         Test: fast/box-shadow/inset-shadow-large-offset.html
3757
3758         * rendering/RenderBoxModelObject.cpp:
3759         (WebCore::areaCastingShadowInHole): Return a rect that covers the area
3760         which contributes to the inset shadow.
3761         
3762         (WebCore::RenderBoxModelObject::paintBoxShadow): Use areaCastingShadowInHole()
3763         to compute the outerRect.
3764
3765 2011-02-08  Zhenyao Mo  <zmo@google.com>
3766
3767         Reviewed by Kenneth Russell.
3768
3769         drawElements should check if a buffer is bound to ELEMENT_ARRAY_BUFFER
3770         https://bugs.webkit.org/show_bug.cgi?id=54017
3771
3772         * html/canvas/WebGLRenderingContext.cpp:
3773         (WebCore::WebGLRenderingContext::drawElements):
3774
3775 2011-01-28  Dimitri Glazkov  <dglazkov@chromium.org>
3776
3777         Reviewed by Darin Adler.
3778
3779         Change the rest of HTMLMediaElement shadow DOM parts to use shadowPseudoId.
3780         https://bugs.webkit.org/show_bug.cgi?id=53190
3781
3782         This is the second part of refactoring the HTMLMediaElement to use new
3783         shadow DOM. The changes are mainly mechanical, except for needing to
3784         add a new method to RenderTheme, which indicates whether or not status
3785         display is being used by it. Previously, we relied on existence of a cached
3786         pseudo style.
3787
3788         Refactoring, covered by existing tests.
3789
3790         * css/CSSSelector.cpp:
3791         (WebCore::CSSSelector::pseudoId): Removed now-unused enum values.
3792         (WebCore::nameToPseudoTypeMap): Ditto.
3793         (WebCore::CSSSelector::extractPseudoType): Ditto.
3794         * css/CSSSelector.h: Ditto.
3795         * html/shadow/MediaControls.cpp:
3796         (WebCore::MediaControls::createPanel): Changed to use the newly-added MediaControlPanelElement.
3797         (WebCore::MediaControls::createCurrentTimeDisplay): Changed to use the newly-added
3798             MediaControlCurrentTimeDisplayElement.
3799         (WebCore::MediaControls::createTimeRemainingDisplay): Changed to use the newly-added
3800                 MediaControlTimeRemainingDisplayElement.
3801         * rendering/MediaControlElements.cpp:
3802         (WebCore::MediaControlShadowRootElement::updateStyle): Changed to use the
3803             standard style resolution.
3804         (WebCore::MediaControlShadowRootElement::shadowPseudoId): Added.
3805         (WebCore::MediaControlElement::MediaControlElement): Removed the switch statement
3806             that is no longer necessary.
3807         (WebCore::MediaControlElement::styleForElement): Changed to use the standard
3808             style resolution.
3809         (WebCore::MediaControlPanelElement::MediaControlPanelElement): Added.
3810         (WebCore::MediaControlPanelElement::create): Added.
3811         (WebCore::MediaControlPanelElement::displayType): Added.
3812         (WebCore::MediaControlPanelElement::shadowPseudoId): Added.
3813         (WebCore::MediaControlTimelineContainerElement::MediaControlTimelineContainerElement):
3814             Removed PseudoId constructor arg.
3815         (WebCore::MediaControlTimelineContainerElement::rendererIsNeeded):
3816             Changed to use the newly-plumbed usesMediaControlStatusDisplay helper.
3817         (WebCore::MediaControlTimelineContainerElement::displayType): Added.
3818         (WebCore::MediaControlTimelineContainerElement::shadowPseudoId): Added.
3819         (WebCore::MediaControlVolumeSliderContainerElement::MediaControlVolumeSliderContainerElement):
3820             Removed PseudoId constructor arg.
3821         (WebCore::MediaControlVolumeSliderContainerElement::displayType): Added.
3822         (WebCore::MediaControlVolumeSliderContainerElement::shadowPseudoId): Added.
3823         (WebCore::MediaControlStatusDisplayElement::MediaControlStatusDisplayElement):
3824             Removed PseudoId constructor arg.
3825         (WebCore::MediaControlStatusDisplayElement::rendererIsNeeded): Changed to
3826             use the newly-plumbed usesMediaControlStatusDisplay helper.
3827         (WebCore::MediaControlStatusDisplayElement::displayType): Added.
3828         (WebCore::MediaControlStatusDisplayElement::shadowPseudoId): Added.
3829         (WebCore::MediaControlTimeDisplayElement::MediaControlTimeDisplayElement):
3830             Removed PseudoId constructor arg.
3831         (WebCore::MediaControlTimeRemainingDisplayElement::create): Added.
3832         (WebCore::MediaControlTimeRemainingDisplayElement::MediaControlTimeRemainingDisplayElement): Added.
3833         (WebCore::MediaControlTimeRemainingDisplayElement::displayType): Added.
3834         (WebCore::MediaControlTimeRemainingDisplayElement::shadowPseudoId): Added.
3835         (WebCore::MediaControlCurrentTimeDisplayElement::create): Added.
3836         (WebCore::MediaControlCurrentTimeDisplayElement::MediaControlCurrentTimeDisplayElement): Added.
3837         (WebCore::MediaControlCurrentTimeDisplayElement::displayType): Added.
3838         (WebCore::MediaControlCurrentTimeDisplayElement::shadowPseudoId): Added.
3839         * rendering/MediaControlElements.h: Added/changed defs accordingly.
3840         * rendering/RenderTheme.h:
3841         (WebCore::RenderTheme::usesMediaControlStatusDisplay): Added.
3842         * rendering/RenderThemeMac.h: Added def.
3843         * rendering/RenderThemeMac.mm:
3844         (WebCore::RenderThemeMac::usesMediaControlStatusDisplay): Added.
3845         * rendering/style/RenderStyleConstants.h: Removed now-unused enum values.
3846
3847 2011-02-08  Xiaomei Ji  <xji@chromium.org>
3848
3849         Reviewed by Dan Bernstein.
3850
3851         Fix pop-up button text not rendered correctly according to its direction
3852         in <option>.
3853         https://bugs.webkit.org/show_bug.cgi?id=53642
3854  
3855         In adjustInnerStyle(), if m_innerBlock's direction or unicode-bidi 
3856         changes, set it needs layout.
3857
3858         Test: fast/text/international/pop-up-button-text-alignment-and-direction.html
3859
3860         * rendering/RenderMenuList.cpp:
3861         (WebCore::RenderMenuList::adjustInnerStyle):
3862
3863 2011-02-08  Ilya Tikhonovsky  <loislo@chromium.org>
3864
3865         Unreviewed build fix for Qt-minimal.
3866
3867         * inspector/InspectorInstrumentation.h:
3868         (WebCore::InspectorInstrumentation::hasFrontend):
3869
3870 2011-02-02  Ilya Tikhonovsky  <loislo@chromium.org>
3871
3872         Reviewed by Yury Semikhatsky.
3873
3874         Web Inspector: move InspectorController's methods from InspectorAgent to InspectorController.
3875
3876         https://bugs.webkit.org/show_bug.cgi?id=53169
3877
3878         All the Inspector API for WebCore has two parts.
3879         The first one is InspectorInstrumentation for WebCore.
3880         The second is InspectorController for WebKit.
3881         InspectorAgent was produced by renaming original InspectorController.
3882         This patch extracts WebKit related methods from InspectorAgent to InspectorController.
3883
3884         * WebCore.exp.in:
3885         * bindings/v8/custom/V8InspectorFrontendHostCustom.cpp:
3886         * html/HTMLDocument.cpp:
3887         (WebCore::HTMLDocument::createParser):
3888         * inspector/InspectorAgent.cpp:
3889         (WebCore::InspectorAgent::InspectorAgent):
3890         (WebCore::InspectorAgent::~InspectorAgent):
3891         (WebCore::InspectorAgent::restoreInspectorStateFromCookie):
3892         (WebCore::InspectorAgent::inspect):
3893         (WebCore::InspectorAgent::handleMousePress):
3894         (WebCore::InspectorAgent::didClearWindowObjectInWorld):
3895         (WebCore::InspectorAgent::setFrontend):
3896         (WebCore::InspectorAgent::disconnectFrontend):
3897         (WebCore::InspectorAgent::resourceAgent):
3898         (WebCore::InspectorAgent::createFrontendLifetimeAgents):
3899         (WebCore::InspectorAgent::releaseFrontendLifetimeAgents):
3900         (WebCore::InspectorAgent::populateScriptObjects):
3901         (WebCore::InspectorAgent::pushDataCollectedOffline):
3902         (WebCore::InspectorAgent::restoreProfiler):
3903         (WebCore::InspectorAgent::startTimelineProfiler):
3904         (WebCore::PostWorkerNotificationToFrontendTask::performTask):
3905         (WebCore::InspectorAgent::didOpenDatabase):
3906         (WebCore::InspectorAgent::didUseDOMStorage):
3907         (WebCore::InspectorAgent::showAndEnableDebugger):
3908         (WebCore::InspectorAgent::enableDebugger):
3909         (WebCore::InspectorAgent::enabled):
3910         * inspector/InspectorAgent.h:
3911         (WebCore::InspectorAgent::frontend):
3912         * inspector/InspectorController.cpp:
3913         (WebCore::InspectorController::InspectorController):
3914         (WebCore::InspectorController::~InspectorController):
3915         (WebCore::InspectorController::setInspectorFrontendClient):
3916         (WebCore::InspectorController::hasInspectorFrontendClient):
3917         (WebCore::InspectorController::didClearWindowObjectInWorld):
3918         (WebCore::InspectorController::startTimelineProfiler):
3919         (WebCore::InspectorController::stopTimelineProfiler):
3920         (WebCore::InspectorController::connectFrontend):
3921         (WebCore::InspectorController::disconnectFrontend):
3922         (WebCore::InspectorController::disconnectFrontendImpl):
3923         (WebCore::InspectorController::show):
3924         (WebCore::InspectorController::close):
3925         (WebCore::InspectorController::restoreInspectorStateFromCookie):
3926         (WebCore::InspectorController::evaluateForTestInFrontend):
3927         (WebCore::InspectorController::drawNodeHighlight):
3928         (WebCore::InspectorController::inspect):
3929         (WebCore::InspectorController::enabled):
3930         (WebCore::InspectorController::showPanel):
3931         (WebCore::InspectorController::frontendLoaded):
3932         (WebCore::InspectorController::timelineProfilerEnabled):
3933         (WebCore::InspectorController::enableProfiler):
3934         (WebCore::InspectorController::disableProfiler):
3935         (WebCore::InspectorController::profilerEnabled):
3936         (WebCore::InspectorController::debuggerEnabled):
3937         (WebCore::InspectorController::showAndEnableDebugger):
3938         (WebCore::InspectorController::disableDebugger):
3939         (WebCore::InspectorController::startUserInitiatedProfiling):
3940         (WebCore::InspectorController::stopUserInitiatedProfiling):
3941         (WebCore::InspectorController::isRecordingUserInitiatedProfile):
3942         (WebCore::InspectorController::setInspectorExtensionAPI):
3943         (WebCore::InspectorController::resume):
3944         (WebCore::InspectorController::hideHighlight):
3945         (WebCore::InspectorController::dispatchMessageFromFrontend):
3946         * inspector/InspectorController.h:
3947         (WebCore::InspectorController::inspectorClient):
3948         (WebCore::InspectorController::inspectedPage):
3949         (WebCore::InspectorController::hasFrontend):
3950         * inspector/InspectorFrontendClientLocal.cpp:
3951         (WebCore::InspectorFrontendClientLocal::sendMessageToBackend):
3952         * inspector/InspectorFrontendHost.cpp:
3953         (WebCore::InspectorFrontendHost::setExtensionAPI):
3954         * inspector/InspectorInstrumentation.cpp:
3955         (WebCore::InspectorInstrumentation::didClearWindowObjectInWorldImpl):
3956         (WebCore::InspectorInstrumentation::profilerEnabledImpl):
3957         * inspector/InspectorInstrumentation.h:
3958         (WebCore::InspectorInstrumentation::hasFrontend):
3959         * loader/FrameLoader.cpp:
3960         (WebCore::FrameLoader::continueLoadAfterNavigationPolicy):
3961
3962 2011-02-08  George Wright  <gwright@rim.com>
3963
3964         Reviewed by Adam Barth.
3965
3966         https://bugs.webkit.org/show_bug.cgi?id=53949
3967
3968         Ensure that we pack the colour byte order correctly for Skia using
3969         Skia's SkPackARGB32 function.
3970
3971         * platform/image-decoders/ImageDecoder.h:
3972         (WebCore::ImageFrame::setRGBA):
3973
3974 2011-02-08  George Wright  <gwright@rim.com>
3975
3976         Reviewed by Darin Adler.
3977
3978         https://bugs.webkit.org/show_bug.cgi?id=53951
3979
3980         Ensure we do not pass (-1, -1) sized rects to ImageBuffer but instead
3981         pass the full image dimensions.
3982
3983         * platform/graphics/GraphicsContext.cpp:
3984         (WebCore::GraphicsContext::drawImageBuffer):
3985
3986 2011-02-08  Patrick Gansterer  <paroga@webkit.org>
3987
3988         Reviewed by Adam Roben.
3989
3990         [WIN] Add missing includes and forward declarations for DownloadBundle
3991         https://bugs.webkit.org/show_bug.cgi?id=53881
3992
3993         * platform/network/cf/DownloadBundle.h:
3994         * platform/network/win/DownloadBundleWin.cpp:
3995         (WebCore::DownloadBundle::appendResumeData):
3996
3997 2011-02-08  Patrick Gansterer  <paroga@webkit.org>
3998
3999         Reviewed by Adam Roben.
4000
4001         [WIN] Add missing include in WKCAImageQueue
4002         https://bugs.webkit.org/show_bug.cgi?id=53890
4003
4004         * platform/graphics/win/WKCAImageQueue.cpp:
4005
4006 2011-02-08  Patrick Gansterer  <paroga@webkit.org>
4007
4008         Reviewed by Adam Roben.
4009
4010         [WIN] Add missing includes and forward declarations for CFNetwork
4011         https://bugs.webkit.org/show_bug.cgi?id=53883
4012
4013         * platform/network/cf/DNSCFNet.cpp:
4014         * platform/network/cf/LoaderRunLoopCF.cpp:
4015         * platform/network/cf/LoaderRunLoopCF.h:
4016         * platform/network/cf/ProxyServerCFNet.cpp:
4017         * platform/network/cf/SocketStreamHandle.h:
4018         * platform/network/cf/SocketStreamHandleCFNet.cpp:
4019
4020 2011-02-08  Patrick Gansterer  <paroga@webkit.org>
4021
4022         Unreviewed WinCE build fix for r77870.
4023
4024         * platform/DragImage.cpp: Enable createDragImageForLink for WinCE.
4025
4026 2011-02-08  Pavel Feldman  <pfeldman@chromium.org>
4027
4028         Reviewed by Yury Semikhatsky.
4029
4030         Web Inspector: open network resource url in new tab upon double click.
4031         https://bugs.webkit.org/show_bug.cgi?id=53930
4032
4033         * inspector/front-end/NetworkPanel.js:
4034         (WebInspector.NetworkDataGridNode.prototype.createCells):
4035         (WebInspector.NetworkDataGridNode.prototype._openInNewTab):
4036
4037 2011-02-08  Yonathan Randolph  <yonathan@gmail.com>
4038
4039         Reviewed by Pavel Feldman.
4040
4041         Web Inspector: $x: any node should work in optional context parameter.
4042         https://bugs.webkit.org/show_bug.cgi?id=50138
4043
4044         * inspector/InjectedScriptSource.js:
4045
4046 2011-02-08  Patrick Gansterer  <paroga@webkit.org>
4047
4048         Unreviewed WinCE build fix for r77870.
4049
4050         Remove the global namespace prefix from GlobalLock/GlobalUnlock.
4051
4052         * platform/win/ClipboardUtilitiesWin.cpp:
4053
4054 2011-02-08  Pavel Feldman  <pfeldman@chromium.org>
4055
4056         Not reviewed: re-apply r77924.
4057
4058         Test: inspector/console-api-on-call-frame.html
4059
4060         * inspector/InjectedScriptSource.js:
4061         * inspector/front-end/ExtensionServer.js:
4062         (WebInspector.ExtensionServer.prototype._onEvaluateOnInspectedPage):
4063
4064 2011-02-08  Andreas Kling  <kling@webkit.org>
4065
4066         Reviewed by Tor Arne Vestbø.
4067
4068         REGRESSION(r77312): Unbreak TiledBackingStore.
4069
4070         Due to an off-by-one error, we were no longer rendering the
4071         rightmost column and bottom row of tiles.
4072
4073         Covered by tst_QGraphicsWebView::widgetsRenderingThroughCache().
4074
4075         * platform/graphics/TiledBackingStore.cpp:
4076         (WebCore::TiledBackingStore::invalidate):
4077         (WebCore::TiledBackingStore::updateTileBuffers):
4078         (WebCore::TiledBackingStore::paint):
4079         (WebCore::TiledBackingStore::createTiles):
4080
4081 2011-02-08  Sheriff Bot  <webkit.review.bot@gmail.com>
4082