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