7b7789cfeed9f0b489f1c4aea8ca8db60fe23b5b
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2012-03-06  Lianghui Chen  <liachen@rim.com>
2
3         [BlackBerry] Set correct ResourceRequest target type.
4         https://bugs.webkit.org/show_bug.cgi?id=80430
5
6         Reviewed by Rob Buis.
7
8         For loads started by AppCache, they are based on the manifest file,
9         it is not definitely sure what target it is for, so we just guess
10         based on its mimetype or file extension.
11
12         * loader/appcache/ApplicationCacheGroup.cpp:
13         (WebCore::ApplicationCacheGroup::createResourceHandle):
14         * loader/cache/CachedResource.cpp:
15         (WebCore):
16         (WebCore::CachedResource::load):
17         * platform/network/blackberry/ResourceRequest.h:
18         (ResourceRequest):
19         * platform/network/blackberry/ResourceRequestBlackBerry.cpp:
20         (WebCore):
21         (WebCore::mimeTypeRequestTypeMap):
22         (WebCore::ResourceRequest::targetTypeFromMimeType):
23         * workers/DefaultSharedWorkerRepository.cpp:
24         (WebCore::SharedWorkerScriptLoader::load):
25         * workers/Worker.cpp:
26         (WebCore::Worker::create):
27         * workers/WorkerContext.cpp:
28         (WebCore::WorkerContext::importScripts):
29         * workers/WorkerScriptLoader.cpp:
30         (WebCore::WorkerScriptLoader::createResourceRequest):
31         * workers/WorkerScriptLoader.h:
32         (WorkerScriptLoader):
33
34 2012-03-06  Dana Jansens  <danakj@chromium.org>
35
36         [chromium] Add clipping to scissor rect to CCOcclusionTracker
37         https://bugs.webkit.org/show_bug.cgi?id=79927
38
39         Reviewed by Adrienne Walker.
40
41         Adds logic to CCOcclusionTracker to occlude anything outside of the
42         current screen and target surface scissor rects. When tracking
43         damage for partial swaps, the scissor rects are bounded by the
44         tracked damage rects.
45
46         Unit tests: CCOcclusionTrackerTest.cpp
47
48         * platform/graphics/chromium/cc/CCOcclusionTracker.cpp:
49         (WebCore::::CCOcclusionTrackerBase):
50         (WebCore):
51         (WebCore::::markOccludedBehindLayer):
52         (WebCore::testContentRectOccluded):
53         (WebCore::::occluded):
54         (WebCore::computeUnoccludedContentRect):
55         (WebCore::::unoccludedContentRect):
56         (WebCore::::layerScissorRect):
57         * platform/graphics/chromium/cc/CCOcclusionTracker.h:
58         (WebCore):
59         (CCOcclusionTrackerDamageClientBase):
60         (CCOcclusionTrackerBase):
61
62 2012-03-06  Kentaro Hara  <haraken@chromium.org>
63
64         Unreviewed, rolling out r110011.
65         http://trac.webkit.org/changeset/110011
66         https://bugs.webkit.org/show_bug.cgi?id=80376
67
68         layout tests crash
69
70         * bindings/v8/V8HiddenPropertyName.cpp:
71         (WebCore):
72         (WebCore::V8HiddenPropertyName::hiddenReferenceName):
73         * bindings/v8/V8HiddenPropertyName.h:
74         (WebCore):
75         (V8HiddenPropertyName):
76         * bindings/v8/custom/V8DOMStringMapCustom.cpp:
77         (WebCore::toV8):
78         * bindings/v8/custom/V8DOMTokenListCustom.cpp:
79         (WebCore::toV8):
80         * bindings/v8/custom/V8NamedNodeMapCustom.cpp:
81         (WebCore::toV8):
82
83 2012-03-06  Kentaro Hara  <haraken@chromium.org>
84
85         Unreviewed, rolling out r110016.
86         http://trac.webkit.org/changeset/110016
87
88         layout tests crash
89
90         * bindings/v8/custom/V8NamedNodeMapCustom.cpp:
91         (WebCore::toV8):
92
93 2012-03-06  Kentaro Hara  <haraken@chromium.org>
94
95         Unreviewed, fixed test crashes.
96
97         * bindings/v8/custom/V8NamedNodeMapCustom.cpp:
98         (WebCore::toV8):
99
100 2012-03-06  Hajime Morrita  <morrita@chromium.org>
101
102         https://bugs.webkit.org/show_bug.cgi?id=79935
103         REGRESSION: <content> element is not HTMLUnknownElement when Shadow DOM API is disabled
104
105         Reviewed by Adam Barth.
106
107         This change introduced "runtimeConditional" keyword to make_name.pl sources,
108         which allows HTMLElementFactory and HTMLElementWrapperFactory to check RuntimeEnabledFeatures
109         and treat any tag name as HTMLUnknownElement if its definition has runtimeConditional and
110         the flag given is turned off.
111
112         Test: fast/dom/shadow/content-shadow-unknown.html
113
114         * WebCore.exp.in:
115         * dom/make_names.pl:
116         (defaultTagPropertyHash):
117         (printConstructorInterior):
118         (printFactoryCppFile):
119         (printWrapperFunctions):
120         (printWrapperFactoryCppFile):
121         * html/HTMLTagNames.in:
122         * html/shadow/HTMLContentElement.cpp:
123         (WebCore::contentTagName):
124         * testing/InternalSettings.cpp:
125         (WebCore::InternalSettings::InternalSettings):
126         (WebCore::InternalSettings::restoreTo):
127         (WebCore::InternalSettings::setShadowDOMEnabled):
128         (WebCore):
129         * testing/InternalSettings.h:
130         (InternalSettings):
131         * testing/InternalSettings.idl:
132
133 2012-03-06  Kenichi Ishibashi  <bashi@chromium.org>
134
135         [WebSocket] Introduce ThreadableWebSocketChannel::SendResult
136         https://bugs.webkit.org/show_bug.cgi?id=80356
137
138         Reviewed by Kent Tamura.
139
140         Introduced ThreadableWebSocketChannel::SendResult type so that
141         WebSocketChannel can pass the validation result.
142
143         No new test. No changes in behavior.
144
145         * Modules/websockets/ThreadableWebSocketChannel.h: Added SendResult.
146         * Modules/websockets/ThreadableWebSocketChannelClientWrapper.cpp:
147         (WebCore::ThreadableWebSocketChannelClientWrapper::ThreadableWebSocketChannelClientWrapper):
148         (WebCore::ThreadableWebSocketChannelClientWrapper::sendRequestResult): Use ThreadableWebSocketChannel::SendResult instead of bool.
149         (WebCore::ThreadableWebSocketChannelClientWrapper::setSendRequestResult): Ditto.
150         * Modules/websockets/ThreadableWebSocketChannelClientWrapper.h:
151         (ThreadableWebSocketChannelClientWrapper):
152         * Modules/websockets/WebSocketChannel.cpp:
153         (WebCore::WebSocketChannel::send): Use ThreadableWebSocketChannel::SendResult instead of bool. Pass Cstring to enqueTextFrame instead of String.
154         (WebCore::WebSocketChannel::enqueueTextFrame): Ditto.
155         (WebCore::WebSocketChannel::processOutgoingFrameQueue): Ditto.
156         * Modules/websockets/WebSocketChannel.h:
157         (WebSocketChannel):
158         (QueuedFrame): Changed the type of stringData from String to CString.
159         * Modules/websockets/WorkerThreadableWebSocketChannel.cpp:
160         (WebCore::WorkerThreadableWebSocketChannel::send): Use ThreadableWebSocketChannel::SendResult instead of bool.
161         (WebCore::workerContextDidSend): Ditto.
162         (WebCore::WorkerThreadableWebSocketChannel::Peer::send): Ditto.
163         (WebCore::WorkerThreadableWebSocketChannel::Bridge::send): Ditto.
164         * Modules/websockets/WorkerThreadableWebSocketChannel.h:
165         (WorkerThreadableWebSocketChannel): ditto.
166         (Bridge): Ditto.
167
168 2012-03-06  Kentaro Hara  <haraken@chromium.org>
169
170         [V8][Performance] Optimize V8 bindings for HTMLElement.classList,
171         Element.dataset and Node.attributes
172         https://bugs.webkit.org/show_bug.cgi?id=80376
173
174         Reviewed by Adam Barth.
175
176         This patch improves the performance of HTMLElement.classList, Element.dataset
177         and Node.attributes by 6.4 times, 7.1 times and 10.9 times, respectively.
178
179         Previously, a 'hiddenReferenceName' string was allocated on v8::Handle and
180         created every time the DOM attribute is accessed, in spite of the fact that
181         the 'hiddenReferenceName' string is static.
182
183         This patch moves the 'hiddenReferenceName' string to v8::Persistent and makes it static.
184         Also, this patch removes 'if (!elementValue.IsEmpty() && elementValue->IsObject())',
185         since if 'element' exists, it is guaranteed that 'elementValue' is not empty
186         and is an Object.
187
188         Performance tests: https://bugs.webkit.org/attachment.cgi?id=130283
189
190         AppleWebKit/JavaScriptCore:
191         div.classList : 382ms
192         div.classList.foo = 123 : 335ms
193         div.dataset : 403ms
194         div.dataset.foo = 123 : 5250ms
195         div.attributes : 183ms
196
197         Chromium/V8 (without this patch):
198         div.classList : 9140ms
199         div.classList.foo = 123 : 9086ms
200         div.dataset : 9930ms
201         div.dataset.foo = 123 : 49698ms
202         div.attributes : 13489ms
203
204         Chromium/V8 (with this patch):
205         div.classList : 1435ms
206         div.classList.foo = 123 : 1470ms
207         div.dataset : 1400ms
208         div.dataset.foo = 123 : 30396ms
209         div.attributes : 1242ms
210
211         No tests. No change in behavior.
212
213         * bindings/v8/custom/V8DOMStringMapCustom.cpp: Modified as described above.
214         (WebCore::toV8):
215         * bindings/v8/custom/V8DOMTokenListCustom.cpp: Ditto.
216         (WebCore::toV8):
217         * bindings/v8/custom/V8NamedNodeMapCustom.cpp: Ditto.
218         (WebCore::toV8):
219
220         * bindings/v8/V8HiddenPropertyName.cpp: Defined a hidden property name string statically
221         to optimize the macro.
222         (WebCore):
223         (WebCore::V8HiddenPropertyName::hiddenReferenceName):
224         * bindings/v8/V8HiddenPropertyName.h: Modified to switch two prefixes "WebCore::HiddenProperty::"
225         and "WebCore::HiddenReference::", depending on whether a given name represents a hidden property
226         or a hidden reference.
227         (WebCore):
228         (V8HiddenPropertyName):
229
230 2012-03-06  Nat Duca  <nduca@chromium.org>
231
232         [chromium] CCThreadProxy context lost support
233         https://bugs.webkit.org/show_bug.cgi?id=80100
234
235         Reviewed by James Robinson.
236
237         * platform/graphics/chromium/cc/CCScheduler.cpp:
238         (WebCore::CCScheduler::didLoseContext):
239         (WebCore):
240         (WebCore::CCScheduler::didRecreateContext):
241         (WebCore::CCScheduler::processScheduledActions):
242         * platform/graphics/chromium/cc/CCScheduler.h:
243         (CCSchedulerClient):
244         (CCScheduler):
245         * platform/graphics/chromium/cc/CCSchedulerStateMachine.cpp:
246         (WebCore::CCSchedulerStateMachine::CCSchedulerStateMachine):
247         (WebCore::CCSchedulerStateMachine::nextAction):
248         (WebCore::CCSchedulerStateMachine::updateState):
249         (WebCore::CCSchedulerStateMachine::vsyncCallbackNeeded):
250         (WebCore::CCSchedulerStateMachine::didLoseContext):
251         (WebCore):
252         (WebCore::CCSchedulerStateMachine::didRecreateContext):
253         * platform/graphics/chromium/cc/CCSchedulerStateMachine.h:
254         (CCSchedulerStateMachine):
255         * platform/graphics/chromium/cc/CCThreadProxy.cpp:
256         (WebCore::CCThreadProxy::recreateContext):
257         (WebCore::CCThreadProxy::loseContext):
258         (WebCore::CCThreadProxy::scheduledActionBeginContextRecreation):
259         (WebCore):
260         (WebCore::CCThreadProxy::scheduledActionDrawAndSwap):
261         (WebCore::CCThreadProxy::setAnimationEvents):
262         (WebCore::CCThreadProxy::beginContextRecreation):
263         (WebCore::CCThreadProxy::recreateContextOnImplThread):
264         (WebCore::CCThreadProxy::loseContextOnImplThread):
265         * platform/graphics/chromium/cc/CCThreadProxy.h:
266         (CCThreadProxy):
267
268 2012-03-06  Tony Chang  <tony@chromium.org>
269
270         refactor method names in RenderFlexibleBox to make them more consistent
271         https://bugs.webkit.org/show_bug.cgi?id=80446
272
273         Reviewed by Ojan Vafai.
274
275         No new tests, just renaming internal methods.
276
277         * rendering/RenderFlexibleBox.cpp:
278         (WebCore::RenderFlexibleBox::flowAwareBorderAfter): New, used by layoutAndPlaceChildren
279         (WebCore::RenderFlexibleBox::flowAwarePaddingAfter): New, used by layoutAndPlaceChildren
280         (WebCore::RenderFlexibleBox::marginBoxAscentForChild): Add ForChild for consistency.
281         (WebCore::RenderFlexibleBox::layoutAndPlaceChildren): We were adding the before padding+border twice (it's in the offset and
282         crossAxisBorderAndPaddingExtent() and subtracting it once.  Instead, just add the after padding+border.
283         (WebCore::RenderFlexibleBox::alignChildren):
284         * rendering/RenderFlexibleBox.h:
285         (RenderFlexibleBox): Reorder methods to match the .cpp file.
286
287 2012-03-06  Kentaro Hara  <haraken@chromium.org>
288
289         Unreviewed, rolling out r109969.
290         http://trac.webkit.org/changeset/109969
291         https://bugs.webkit.org/show_bug.cgi?id=80376
292
293         layout tests crash
294
295         * bindings/v8/V8HiddenPropertyName.cpp:
296         (WebCore):
297         (WebCore::V8HiddenPropertyName::hiddenReferenceName):
298         * bindings/v8/V8HiddenPropertyName.h:
299         (WebCore):
300         (V8HiddenPropertyName):
301         * bindings/v8/custom/V8DOMStringMapCustom.cpp:
302         (WebCore::toV8):
303         * bindings/v8/custom/V8DOMTokenListCustom.cpp:
304         (WebCore::toV8):
305         * bindings/v8/custom/V8NamedNodeMapCustom.cpp:
306         (WebCore::toV8):
307
308 2012-03-06  Kentaro Hara  <haraken@chromium.org>
309
310         Unreviewed, rolling out r109999.
311         http://trac.webkit.org/changeset/109999
312
313         layout tests crash
314
315         * bindings/v8/custom/V8DOMStringMapCustom.cpp:
316         (WebCore::toV8):
317         * bindings/v8/custom/V8DOMTokenListCustom.cpp:
318         (WebCore::toV8):
319
320 2012-03-06  Kentaro Hara  <haraken@chromium.org>
321
322         Unreviewed, fix crashes.
323
324         * bindings/v8/custom/V8DOMStringMapCustom.cpp:
325         (WebCore::toV8):
326         * bindings/v8/custom/V8DOMTokenListCustom.cpp:
327         (WebCore::toV8):
328
329 2012-03-06  James Robinson  <jamesr@chromium.org>
330
331         [chromium] Fix threaded compositing issues in WebGLLayerChromium (except for printing)
332         https://bugs.webkit.org/show_bug.cgi?id=80459
333
334         Reviewed by Kenneth Russell.
335
336         This fixes a few wrong-thread issues in WebGLLayerChromium for threaded compositing.  The key requirements that
337         threaded compositing imposes on LayerChromium subclasses are that the compositor's context can only be used from
338         the compositor thread, meaning inside of updateCompositorResources() and pushPropertiesTo(), and that
339         non-compositor contexts can only be used from the main thread. This means specifically that we can't use the
340         DrawingBuffer's context in either of these two functions.
341
342         Summary of changes:
343         *) Move the publishToPlatformLayer() call and related logic inside of paintContentsIfDirty(), which is called
344         on the main thread.
345         *) Move lost context tracking outside of drawsContent(), since that function is called from both threads, to a
346         separate bool that is updated after each WebGL composite and setDrawingBuffer call.
347
348         Printing still doesn't work in threaded mode with this patch, I'll address that separately. Printing and lost
349         context recovery still work as they did in the single-threaded path.
350
351         * platform/graphics/chromium/WebGLLayerChromium.cpp:
352         (WebCore::WebGLLayerChromium::WebGLLayerChromium):
353         (WebCore::WebGLLayerChromium::drawsContent):
354         (WebCore::WebGLLayerChromium::paintContentsIfDirty):
355         (WebCore::WebGLLayerChromium::updateCompositorResources):
356         (WebCore::WebGLLayerChromium::setDrawingBuffer):
357         * platform/graphics/chromium/WebGLLayerChromium.h:
358         (WebGLLayerChromium):
359
360 2012-03-06  Anders Carlsson  <andersca@apple.com>
361
362         Cracks between tiles when zoomed in
363         https://bugs.webkit.org/show_bug.cgi?id=80460
364         <rdar://problem/10996688>
365
366         Use enclosingIntRect instead of enclosedIntRect when converting from FloatRect to IntRect.
367
368         * platform/graphics/mac/WebLayer.mm:
369         (drawLayerContents):
370
371 2012-03-06  Anders Carlsson  <andersca@apple.com>
372
373         Tile cache layers should always be clipped to the view's bounds
374         https://bugs.webkit.org/show_bug.cgi?id=80456
375         <rdar://problem/10996174>
376
377         Reviewed by Simon Fraser.
378
379         * rendering/RenderLayerBacking.cpp:
380         (WebCore::RenderLayerBacking::shouldClipCompositedBounds):
381         Factor this code out into a separate function for better clarity. Always return true if we have a tile cache layer.
382
383         (WebCore::RenderLayerBacking::updateCompositedBounds):
384         Call shouldClipCompositedBounds directly.
385
386 2012-03-06  James Robinson  <jamesr@chromium.org>
387
388         [chromium] Null-check m_layerRenderer in CCLayerTreeHostImpl::finishAllRendering()
389         https://bugs.webkit.org/show_bug.cgi?id=80445
390
391         Reviewed by Adrienne Walker.
392
393         Null-check CCLayerTreeHostImpl::m_layerRenderer since it won't be set if context initialiation failed for any
394         reason.
395
396         Covered by new unit test in CCLayerTreeHostImplTest.
397
398         * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
399         (WebCore::CCLayerTreeHostImpl::finishAllRendering):
400
401 2012-03-06  Ryosuke Niwa  <rniwa@webkit.org>
402
403         Can't select a line of RTL text on Facebook
404         https://bugs.webkit.org/show_bug.cgi?id=59435
405
406         Reviewed by Eric Seidel.
407
408         Deploy prevLeafChildIgnoringLineBreak and nextLeafChildIgnoringLineBreak
409         in RenderedPosition::leftBoundaryOfBidiRun and RenderedPosition::rightBoundaryOfBidiRun.
410
411         Without this patch, WebKit extends selection from right to left when the user selects
412         <span dir="rtl">ABC<br></span> from left to right by a mouse drag.
413
414         Test: editing/selection/select-bidi-run.html
415
416         * editing/RenderedPosition.cpp:
417         (WebCore::RenderedPosition::leftBoundaryOfBidiRun):
418         (WebCore::RenderedPosition::rightBoundaryOfBidiRun):
419
420 2012-03-06  Raphael Kubo da Costa  <kubo@profusion.mobi>
421
422         undefined reference to JSC::IdentifierTable::~IdentifierTable() on EFL port
423         https://bugs.webkit.org/show_bug.cgi?id=80282
424
425         Reviewed by Antonio Gomes.
426
427         No new tests, this is a buildsystem change.
428
429         Remove transitive library dependencies; they are especially
430         dangerous when one ends up linking against WTF, JSC and then WTF
431         again, since some symbols will not be defined.
432
433         Passing --no-copy-dt-needed-entries and --as-needed to the linker
434         (which some recent Linux distros do by default) makes the issue
435         even more evident.
436
437         * CMakeLists.txt: Explicitly link to WTF as WebCore uses symbols
438         from it.
439         * PlatformEfl.cmake: Explicitly link against libjpeg and libpng.
440
441 2012-03-06  James Robinson  <jamesr@chromium.org>
442
443         [chromium] REGRESSION(109469): WebGL printing busted
444         https://bugs.webkit.org/show_bug.cgi?id=80450
445
446         Reviewed by Kenneth Russell.
447
448         Avoid marking layers as needing display in setContentsTo...() since this breaks WebGL's damage tracking and is
449         unnecessary.
450
451         Tested WebGL printing manually.
452
453         * platform/graphics/chromium/GraphicsLayerChromium.cpp:
454         (WebCore::GraphicsLayerChromium::setContentsToCanvas):
455         (WebCore::GraphicsLayerChromium::setContentsToMedia):
456
457 2012-03-06  Adrienne Walker  <enne@google.com>
458
459         Overlap map for compositing should ignore empty layers
460         https://bugs.webkit.org/show_bug.cgi?id=63499
461
462         Reviewed by Simon Fraser.
463
464         Test: compositing/layer-creation/overlap-empty-layer.html
465
466         * rendering/RenderLayerCompositor.cpp:
467         (WebCore::RenderLayerCompositor::addToOverlapMap):
468         (WebCore::RenderLayerCompositor::computeCompositingRequirements):
469
470 2012-03-06  Vangelis Kokkevis  <vangelis@chromium.org>
471
472         [chromium] Increase the accelerated canvas min size to 256 * 256
473         https://bugs.webkit.org/show_bug.cgi?id=80451
474
475         Reviewed by Stephen White.
476
477         Test: Manually
478
479         * page/Settings.cpp:
480         (WebCore::Settings::Settings):
481
482 2012-03-06  Kentaro Hara  <haraken@chromium.org>
483
484         [V8][Performance] Optimize V8 bindings for HTMLElement.classList,
485         Element.dataset and Node.attributes
486         https://bugs.webkit.org/show_bug.cgi?id=80376
487
488         Reviewed by Adam Barth.
489
490         This patch improves the performance of HTMLElement.classList, Element.dataset
491         and Node.attributes by 6.4 times, 7.1 times and 10.9 times, respectively.
492
493         Previously, a 'hiddenReferenceName' string was allocated on v8::Handle and
494         created every time the DOM attribute is accessed, in spite of the fact that
495         the 'hiddenReferenceName' string is static.
496
497         This patch moves the 'hiddenReferenceName' string to v8::Persistent and makes it static.
498         Also, this patch removes 'if (!elementValue.IsEmpty() && elementValue->IsObject())',
499         since if 'element' exists, it is guaranteed that 'elementValue' is not empty
500         and is an Object.
501
502         Performance tests: https://bugs.webkit.org/attachment.cgi?id=130283
503
504         AppleWebKit/JavaScriptCore:
505         div.classList : 382ms
506         div.classList.foo = 123 : 335ms
507         div.dataset : 403ms
508         div.dataset.foo = 123 : 5250ms
509         div.attributes : 183ms
510
511         Chromium/V8 (without this patch):
512         div.classList : 9140ms
513         div.classList.foo = 123 : 9086ms
514         div.dataset : 9930ms
515         div.dataset.foo = 123 : 49698ms
516         div.attributes : 13489ms
517
518         Chromium/V8 (with this patch):
519         div.classList : 1435ms
520         div.classList.foo = 123 : 1470ms
521         div.dataset : 1400ms
522         div.dataset.foo = 123 : 30396ms
523         div.attributes : 1242ms
524
525         No tests. No change in behavior.
526
527         * bindings/v8/custom/V8DOMStringMapCustom.cpp: Modified as described above.
528         (WebCore::toV8):
529         * bindings/v8/custom/V8DOMTokenListCustom.cpp: Ditto.
530         (WebCore::toV8):
531         * bindings/v8/custom/V8NamedNodeMapCustom.cpp: Ditto.
532         (WebCore::toV8):
533
534         * bindings/v8/V8HiddenPropertyName.cpp: Defined a hidden property name string statically
535         to optimize the macro.
536         (WebCore):
537         (WebCore::V8HiddenPropertyName::hiddenReferenceName):
538         * bindings/v8/V8HiddenPropertyName.h: Modified to switch two prefixes "WebCore::HiddenProperty::"
539         and "WebCore::HiddenReference::", depending on whether a given name represents a hidden property
540         or a hidden reference.
541         (WebCore):
542         (V8HiddenPropertyName):
543
544 2012-03-06  Alexis Menard  <alexis.menard@openbossa.org>
545
546         getComputedStyle returns incorrect values for the width and height of pseudo-elements
547         https://bugs.webkit.org/show_bug.cgi?id=37835
548
549         Reviewed by Tony Chang.
550
551         In case we are querying the computed style of an element with a pseudo-element we can't use
552         the renderer of the element as this one is not the one used to render the pseudo-element. We need
553         to use the one created to render the pseudo-element.
554
555         No new tests : Extend the existing getComputedStyle-with-pseudo-element.
556
557         * css/CSSComputedStyleDeclaration.cpp:
558         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
559
560 2012-03-06  Shawn Singh  <shawnsingh@chromium.org>
561
562         [chromium] Make compositeAndReadback and damage tracking play nicely together
563         https://bugs.webkit.org/show_bug.cgi?id=80199
564
565         Reviewed by James Robinson.
566
567         Requires system-level testing (pixels on front-buffer should be
568         observed for correct behavior) that cannot be done by layout tests
569         or unit tests, have to rely on manual testing.
570
571         * platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:
572         (WebCore::CCSingleThreadProxy::compositeAndReadback):
573
574 2012-03-06  Luke Macpherson   <macpherson@chromium.org>
575
576         Make CSSStyleSelector::convertToLength() behave more like CSSPrimitiveValue::convertToLength().
577         https://bugs.webkit.org/show_bug.cgi?id=80375
578
579         Reviewed by Eric Seidel.
580
581         No new tests / cleanup only.
582
583         This patch removes the bool* ok parameter from CSSStyleSelector's convertToLength,
584         and instead uses the recently added Length(Undefined) value to indicate failure.
585         This paves the way for a future patch that will call primitiveValue->convertToLength directly.
586
587         * css/CSSStyleSelector.cpp:
588         (WebCore::CSSStyleSelector::collectMatchingRulesForList):
589
590 2012-03-06  Raymes Khoury  <raymes@chromium.org>
591
592         Add state variable and ASSERTs to DocumentWriter to help track down
593         https://bugs.webkit.org/show_bug.cgi?id=80427 and prevent illegal usage
594         of DocumentWriter. This also makes endIfNotLoadingMainResource() private
595         as there is no external usage.
596
597         Reviewed by Adam Barth.
598
599         This only adds ASSERT/CRASH and does not change existing behaviour.
600
601         * loader/DocumentWriter.cpp:
602         (WebCore::DocumentWriter::DocumentWriter):
603         (WebCore::DocumentWriter::begin):
604         (WebCore::DocumentWriter::addData):
605         (WebCore::DocumentWriter::endIfNotLoadingMainResource):
606         (WebCore::DocumentWriter::setDocumentWasLoadedAsPartOfNavigation):
607         * loader/DocumentWriter.h:
608         (DocumentWriter):
609
610 2012-03-06  Mihnea Ovidenie  <mihnea@adobe.com>
611
612         [CSSRegions][CSSOM]Restrict parsing of named flow name
613         https://bugs.webkit.org/show_bug.cgi?id=80359
614
615         Reviewed by Andreas Kling.
616
617         The function that does the parsing for flow thread name should restrict the
618         number of parsed properties to 1, otherwise it would allow parsing of
619         "-webkit-flow-into: flow; color: red;" constructions.
620
621         Modified fast/regions/webkit-named-flow-invalid-name.html to include the above case.
622
623         * css/CSSParser.cpp:
624         (WebCore::validFlowName):
625         (WebCore::CSSParser::parseFlowThread):
626
627 2012-03-06  Joseph Pecoraro  <pecoraro@apple.com>
628
629         Unreviewed build fix for minimal build after r109939.
630
631         Guard access to page->inspectorController with ENABLE(INSPECTOR).
632
633         * page/FrameView.cpp:
634         (WebCore::FrameView::performPostLayoutTasks):
635
636 2012-03-05  Dean Jackson  <dino@apple.com>
637
638         Enable compositing when a CSS filter is animating
639         https://bugs.webkit.org/show_bug.cgi?id=79048
640
641         Reviewed by Simon Fraser.
642
643         Now that some systems (e.g. OS X) have both hardware accelerated
644         CSS filters, and the ability to animate them via the hardware
645         compositor, all CSS filters should be composited when animating.
646
647         Tests: css3/filters/composited-during-animation-layertree.html
648                css3/filters/composited-during-animation.html
649                css3/filters/composited-during-transition-layertree.html
650
651         * platform/graphics/ca/GraphicsLayerCA.cpp:
652         (WebCore):
653         (WebCore::supportsAcceleratedFilterAnimations):
654             new method that returns true if the platform supports
655             hardware animations of filters.
656         (WebCore::GraphicsLayerCA::addAnimation):
657         (WebCore::GraphicsLayerCA::createAnimationFromKeyframes):
658             only create layer-animations if the platform supports it.
659         * rendering/RenderLayerCompositor.cpp:
660         (WebCore::RenderLayerCompositor::requiresCompositingForAnimation):
661             create a compositing layer if animating a filter on a
662             supported platform.
663
664 2012-03-06  Stephen White  <senorblanco@chromium.org>
665
666         Unreviewed, rolling out r109825.
667         http://trac.webkit.org/changeset/109825
668         https://bugs.webkit.org/show_bug.cgi?id=79413
669
670         Broke webkit_unit_tests on Chromium Win
671
672         * Modules/indexeddb/IDBLevelDBBackingStore.cpp:
673         (WebCore::IDBLevelDBBackingStore::open):
674         * platform/leveldb/LevelDBDatabase.cpp:
675         (WebCore):
676         * platform/leveldb/LevelDBDatabase.h:
677         (LevelDBDatabase):
678
679 2012-03-06  Beth Dakin  <bdakin@apple.com>
680
681         https://bugs.webkit.org/show_bug.cgi?id=80351
682         InlineTextBox is using the wrong origin when calling 
683         addRelevantRepaintedObject
684         -and corresponding-
685         <rdar://problem/10970221>
686
687         Reviewed by Sam Weinig.
688
689         boxOrigin represents the actual location of the text. The adjustedPaintOffset 
690         (which I was using previously) will only correspond to the first line in a 
691         block of lines.
692         * rendering/InlineTextBox.cpp:
693         (WebCore::InlineTextBox::paint):
694
695 2012-03-06  Filip Spacek  <fspacek@rim.com>
696
697         [BlackBerry] Disable border radius clips (r95239) for BlackBerry
698         https://bugs.webkit.org/show_bug.cgi?id=80416
699
700         Reviewed by Antonio Gomes
701
702         The BlackBerry port suffers from the same performance
703         degradation when border radius clip is enabled as Chromium.
704
705         * rendering/RenderLayer.cpp:
706
707 2012-03-06  Stephen White  <senorblanco@chromium.org>
708
709         Unreviewed, rolling out r109832.
710         http://trac.webkit.org/changeset/109832
711         https://bugs.webkit.org/show_bug.cgi?id=80356
712
713         Broke WebSocket tests on Chrome Mac and Linux
714
715         * Modules/websockets/ThreadableWebSocketChannel.h:
716         (ThreadableWebSocketChannel):
717         * Modules/websockets/ThreadableWebSocketChannelClientWrapper.cpp:
718         (WebCore::ThreadableWebSocketChannelClientWrapper::ThreadableWebSocketChannelClientWrapper):
719         (WebCore::ThreadableWebSocketChannelClientWrapper::sendRequestResult):
720         (WebCore::ThreadableWebSocketChannelClientWrapper::setSendRequestResult):
721         * Modules/websockets/ThreadableWebSocketChannelClientWrapper.h:
722         (ThreadableWebSocketChannelClientWrapper):
723         * Modules/websockets/WebSocket.cpp:
724         (WebCore::WebSocket::send):
725         * Modules/websockets/WebSocketChannel.cpp:
726         (WebCore::WebSocketChannel::send):
727         (WebCore::WebSocketChannel::enqueueTextFrame):
728         (WebCore::WebSocketChannel::processOutgoingFrameQueue):
729         * Modules/websockets/WebSocketChannel.h:
730         (WebSocketChannel):
731         (QueuedFrame):
732         * Modules/websockets/WorkerThreadableWebSocketChannel.cpp:
733         (WebCore::WorkerThreadableWebSocketChannel::send):
734         (WebCore::workerContextDidSend):
735         (WebCore::WorkerThreadableWebSocketChannel::Peer::send):
736         (WebCore::WorkerThreadableWebSocketChannel::Bridge::send):
737         * Modules/websockets/WorkerThreadableWebSocketChannel.h:
738         (WorkerThreadableWebSocketChannel):
739         (Bridge):
740
741 2012-03-06  Stephen White  <senorblanco@chromium.org>
742
743         Unreviewed, rolling out r109840.
744         http://trac.webkit.org/changeset/109840
745         https://bugs.webkit.org/show_bug.cgi?id=80103
746
747         Broke WebSocket tests on Chrome Mac and Linux
748
749         * Modules/websockets/WebSocket.cpp:
750         (WebCore::WebSocket::send):
751         (WebCore::WebSocket::close):
752         * Modules/websockets/WebSocketChannel.cpp:
753         (WebCore::WebSocketChannel::send):
754
755 2012-03-05  Joseph Pecoraro  <pecoraro@apple.com>
756
757         <http://webkit.org/b/78575> Web Inspector: Disable dock button when not allowed to dock
758
759         There are times when an undocked inspector frontend is not allowed to
760         attach to the main window. We can disable the dock button in those cases.
761
762         Reviewed by Pavel Feldman.
763
764         No new tests. This functionality is port specific right now.
765
766         * page/FrameView.cpp:
767         (WebCore::FrameView::performPostLayoutTasks):
768         When the main frame is resized we let the inspector client know,
769         so that it can react to it as needed.
770
771         * WebCore.exp.in:
772         * inspector/InspectorClient.h:
773         (WebCore::InspectorClient::didResizeMainFrame):
774         * inspector/InspectorController.cpp:
775         * inspector/InspectorController.h:
776         (WebCore::InspectorController::inspectorClient):
777         Call up to the port though to the InspectorClient.
778
779         * inspector/InspectorFrontendClientLocal.cpp:
780         (WebCore::InspectorFrontendClientLocal::frontendLoaded):
781         (WebCore::InspectorFrontendClientLocal::setDockingUnavailable):
782         * inspector/InspectorFrontendClientLocal.h:
783         On ports where the inspector frontend client is local, provide a 
784         setDockingUnavailable InspectorFrontendAPI to update the docking state.
785         Automatically update availability when the frontend completes loading.
786
787         * inspector/front-end/InspectorFrontendAPI.js:
788         (InspectorFrontendAPI.setDockingUnavailable):
789         * inspector/front-end/inspector.js:
790         (WebInspector._createGlobalStatusBarItems):
791         (WebInspector.setAttachedWindow):
792         (WebInspector.setDockingUnavailable):
793         (WebInspector.updateDockToggleButton):
794         Update the dock button's enabled/disabled state when its created,
795         when the attached state changes, when get a frontend API notification
796         that we cannot attach.
797
798         * inspector/front-end/InspectorFrontendHostStub.js:
799         Remove unused canAttachWindow method.
800
801 2012-03-06  Hans Wennborg  <hans@chromium.org>
802
803         Speech JavaScript API: add SpeechRecognitionError
804         https://bugs.webkit.org/show_bug.cgi?id=80410
805
806         Reviewed by Adam Barth.
807
808         Add SpeechRecognitionError.
809
810         Test: fast/speech/scripted/speechrecognitionerror-basics.html
811
812         * Modules/speech/DOMWindowSpeech.idl: Added.
813         * Modules/speech/SpeechRecognitionError.cpp: Added.
814         (WebCore):
815         (WebCore::SpeechRecognitionError::create):
816         (WebCore::SpeechRecognitionError::SpeechRecognitionError):
817         * Modules/speech/SpeechRecognitionError.h: Added.
818         (WebCore):
819         (SpeechRecognitionError):
820         (WebCore::SpeechRecognitionError::code):
821         (WebCore::SpeechRecognitionError::message):
822         * Modules/speech/SpeechRecognitionError.idl: Added.
823         * WebCore.gyp/WebCore.gyp:
824         * WebCore.gypi:
825
826 2012-03-06  David Corvoysier  <david.corvoysier@orange.com>
827
828         Unreleased gst_object_reference to audio sink in MediaPlayerPrivateGStreamer
829         https://bugs.webkit.org/show_bug.cgi?id=79795
830
831         Bug fix: Used a GRefPtr to hold the reference to the audio sink instead of a GstElement*.
832         Code cleanup: Used the same pattern for webkit web source and removed explicit gst_unref in destructor.
833
834         Reviewed by Philippe Normand.
835
836         No new tests. No change in behavior.
837
838         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
839         (WebCore::MediaPlayerPrivateGStreamer::~MediaPlayerPrivateGStreamer):
840         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
841         (MediaPlayerPrivateGStreamer):
842
843 2012-03-06  Patrick Gansterer  <paroga@webkit.org>
844
845         [CMake] Build fix for !ENABLE(WORKERS) after r109556 and r109833.
846
847         * CMakeLists.txt:
848
849 2012-03-06  Allan Sandfeld Jensen  <allan.jensen@nokia.com>
850
851         [Qt][WK2] Crash in Frame.cpp when loading index.hu
852         https://bugs.webkit.org/show_bug.cgi?id=80165
853
854         Guard against possible null document, which can happen
855         when unsetting a document in a frame.
856
857         Reviewed by Kenneth Rohde Christiansen.
858
859         * page/Frame.cpp:
860         (WebCore::Frame::setDocument):
861
862 2012-03-06  Lucas Forschler  <lforschler@apple.com>
863
864         WebCore build exceeds address space on 32-bit Windows builds.
865         https://bugs.webkit.org/show_bug.cgi?id=80346
866
867         Reviewed by Jessie Berlin.
868
869         Patch by Lucas Forschler, landed by Jessie Berlin.
870
871         Add AllInOne.cpp files for a few projects.
872         This will only affect Production and Release builds.
873         Let VS rebuild the project file.
874
875         * WebCore.vcproj/WebCore.vcproj:
876         * css/MediaAllInOne.cpp: Added.
877         * loader/appcache/ApplicationCacheAllInOne.cpp: Added.
878         * mathml/MathMLAllInOne.cpp: Added.
879         * platform/text/TextAllInOne.cpp: Added.
880
881 2012-03-06  Pavel Feldman  <pfeldman@chromium.org>
882
883         Web Inspector: add support for inspection of huge (1M elements) arrays.
884         https://bugs.webkit.org/show_bug.cgi?id=80421
885
886         Reviewed by Vsevolod Vlasov.
887
888         * inspector/front-end/ConsoleView.js:
889         (WebInspector.ConsoleView.prototype.completionsForExpression.evaluated):
890         * inspector/front-end/ElementsPanel.js:
891         * inspector/front-end/ObjectPropertiesSection.js:
892         (WebInspector.ObjectPropertiesSection.prototype.update.callback):
893         (WebInspector.ObjectPropertiesSection.prototype.update):
894         (WebInspector.ObjectPropertiesSection.prototype.updateProperties):
895         (WebInspector.ObjectPropertyTreeElement.prototype.onpopulate.callback):
896         (WebInspector.ObjectPropertyTreeElement.prototype.onpopulate):
897         (WebInspector.ArrayGroupingTreeElement):
898         (WebInspector.ArrayGroupingTreeElement._populateArray):
899         (WebInspector.ArrayGroupingTreeElement._populateRanges):
900         (WebInspector.ArrayGroupingTreeElement._populateRanges.callback):
901         (WebInspector.ArrayGroupingTreeElement._populateAsFragment):
902         (WebInspector.ArrayGroupingTreeElement._populateAsFragment.processArrayFragment):
903         (WebInspector.ArrayGroupingTreeElement._populateAsFragment.processProperties):
904         (WebInspector.ArrayGroupingTreeElement._populateNonIndexProperties.buildObjectFragment):
905         (WebInspector.ArrayGroupingTreeElement._populateNonIndexProperties.processObjectFragment):
906         (WebInspector.ArrayGroupingTreeElement._populateNonIndexProperties.processProperties):
907         (WebInspector.ArrayGroupingTreeElement._populateNonIndexProperties):
908         (WebInspector.ArrayGroupingTreeElement.prototype.onpopulate):
909         (WebInspector.ArrayGroupingTreeElement.prototype.onattach):
910         * inspector/front-end/PropertiesSidebarPane.js:
911         (WebInspector.PropertiesSidebarPane.prototype.update.nodeResolved):
912         * inspector/front-end/RemoteObject.js:
913         (WebInspector.RemoteObject.prototype.callFunction):
914         (WebInspector.RemoteObject.prototype.callFunctionJSON):
915
916 2012-03-06  Vsevolod Vlasov  <vsevik@chromium.org>
917
918         Web Inspector: Open link in resources panel only works the second time
919         https://bugs.webkit.org/show_bug.cgi?id=80407
920
921         Reviewed by Pavel Feldman.
922
923         * inspector/front-end/inspector.js:
924         (WebInspector.openResource):
925
926 2012-03-02  Yury Semikhatsky  <yurys@chromium.org>
927
928         Web Inspector: InspectorCounters mechanism should be thread-safe
929         https://bugs.webkit.org/show_bug.cgi?id=80166
930
931         Make InspectorCounters instance thread local so that it can be safely accessed
932         in workers.
933
934         Reviewed by Pavel Feldman.
935
936         * bindings/js/JSEventListener.cpp:
937         (WebCore::JSEventListener::JSEventListener):
938         (WebCore::JSEventListener::~JSEventListener):
939         * bindings/v8/V8AbstractEventListener.cpp:
940         (WebCore::V8AbstractEventListener::V8AbstractEventListener):
941         (WebCore::V8AbstractEventListener::~V8AbstractEventListener):
942         * dom/Document.cpp:
943         (WebCore::Document::Document):
944         (WebCore::Document::~Document):
945         * dom/Document.h:
946         (WebCore::Node::Node):
947         * dom/Node.cpp:
948         (WebCore::Node::~Node):
949         * inspector/InspectorCounters.cpp:
950         (WebCore::InspectorCounters::InspectorCounters):
951         (WebCore::InspectorCounters::counterValue):
952         (WebCore):
953         (WebCore::InspectorCounters::current):
954         * inspector/InspectorCounters.h:
955         (WebCore::InspectorCounters::incrementCounter):
956         (WebCore::InspectorCounters::decrementCounter):
957         (InspectorCounters):
958         * inspector/InspectorTimelineAgent.cpp:
959         (WebCore::InspectorTimelineAgent::setHeapSizeStatistic):
960         * platform/ThreadGlobalData.cpp:
961         (WebCore::ThreadGlobalData::ThreadGlobalData):
962         (WebCore::ThreadGlobalData::destroy):
963         * platform/ThreadGlobalData.h:
964         (WebCore):
965         (ThreadGlobalData):
966         (WebCore::ThreadGlobalData::inspectorCounters):
967
968 2012-03-06  Leo Yang  <leo.yang@torchmobile.com.cn>
969
970         [BlackBerry] Upstream typedef of NativeImageSourcePtr and NativeImagePtr
971         https://bugs.webkit.org/show_bug.cgi?id=80388
972
973         Reviewed by Antonio Gomes.
974
975         These are the BlackBerry typdefs of NativeImageSourcePtr and NativeImagePtr.
976
977         * platform/graphics/ImageSource.h:
978         (WebCore):
979
980 2012-03-06  Hans Muller  <hmuller@adobe.com>
981
982         SVG transform-origin presentation attribute
983         https://bugs.webkit.org/show_bug.cgi?id=79678
984
985         Reviewed by Nikolas Zimmermann.
986
987         Added the SVG transform-origin presentation attribute.  Currently WebCore::mapAttributeToCSSProperty()
988         just maps it to -webkit-transform-origin.  When the transform-origin CSS property is supported, this
989         part of the change can be removed.
990
991         Test: svg/transforms/transform-origin-presentation-attribute.xhtml
992
993         * svg/SVGStyledElement.cpp:
994         (WebCore::mapAttributeToCSSProperty):
995         (WebCore::SVGStyledElement::cssPropertyIdForSVGAttributeName):
996         * svg/svgattrs.in:
997
998 2012-01-26  Philippe Normand  <pnormand@igalia.com>
999
1000         [GStreamer] disable GStreamerGWorld when building against 0.11
1001         https://bugs.webkit.org/show_bug.cgi?id=77088
1002
1003         Reviewed by Martin Robinson.
1004
1005         Don't build GStreamerGWorld and PlatformVideoWindow under
1006         GStreamer 0.11. It's supposed to be removed soon anyway.
1007
1008         * platform/graphics/gstreamer/GStreamerGWorld.cpp:
1009         * platform/graphics/gstreamer/GStreamerGWorld.h:
1010         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
1011         (WebCore::MediaPlayerPrivateGStreamer::totalBytes):
1012         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
1013         (MediaPlayerPrivateGStreamer):
1014         * platform/graphics/gstreamer/PlatformVideoWindow.h:
1015         * platform/graphics/gstreamer/PlatformVideoWindowEfl.cpp:
1016         * platform/graphics/gstreamer/PlatformVideoWindowGtk.cpp:
1017         * platform/graphics/gstreamer/PlatformVideoWindowMac.mm:
1018         * platform/graphics/gstreamer/PlatformVideoWindowQt.cpp:
1019
1020 2012-03-06  Alexander Færøy  <alexander.faeroy@nokia.com>
1021
1022         Rename m_tileCreationTimer in the tiled backing store
1023         https://bugs.webkit.org/show_bug.cgi?id=80414
1024
1025         Patch by Kenneth Rohde Christiansen and Alexander Færøy.
1026
1027         Reviewed by Tor Arne Vestbø.
1028
1029         The m_tileCreationTimer member is currently being used to represent a
1030         timer that is fired when the backing store has been updated which is
1031         confusing with its current name.  This patch fixes this by renaming
1032         the m_tileCreationTimer to m_backingStoreUpdateTimer.
1033
1034         * platform/graphics/TiledBackingStore.cpp:
1035         (WebCore::TiledBackingStore::TiledBackingStore):
1036         (WebCore::TiledBackingStore::setTileSize):
1037         (WebCore::TiledBackingStore::coverWithTilesIfNeeded):
1038         (WebCore::TiledBackingStore::createTiles):
1039         (WebCore::TiledBackingStore::startBackingStoreUpdateTimer):
1040         (WebCore::TiledBackingStore::backingStoreUpdateTimerFired):
1041         (WebCore::TiledBackingStore::setContentsFrozen):
1042         * platform/graphics/TiledBackingStore.h:
1043         (TiledBackingStore):
1044
1045 2012-03-06  Alexander Færøy  <alexander.faeroy@nokia.com>
1046
1047         Remove TileTimer typedef from the tiled backing store
1048         https://bugs.webkit.org/show_bug.cgi?id=80408
1049
1050         Patch by Kenneth Rohde Christiansen and Alexander Færøy.
1051
1052         Reviewed by Tor Arne Vestbø.
1053
1054         * platform/graphics/TiledBackingStore.cpp:
1055         (WebCore::TiledBackingStore::tileBufferUpdateTimerFired):
1056         (WebCore::TiledBackingStore::tileCreationTimerFired):
1057         * platform/graphics/TiledBackingStore.h:
1058         (TiledBackingStore):
1059
1060 2012-03-06  Robin Cao  <robin.cao@torchmobile.com.cn>
1061
1062         [BlackBerry] Upstream LayerRenderer.{h, cpp}
1063         https://bugs.webkit.org/show_bug.cgi?id=79874
1064
1065         Reviewed by Antonio Gomes.
1066
1067         Initial upstream, no new tests.
1068
1069         * platform/graphics/blackberry/LayerRenderer.cpp: Added.
1070         (WebCore):
1071         (WebCore::checkGLError):
1072         (WebCore::loadShader):
1073         (WebCore::loadShaderProgram):
1074         (WebCore::orthoMatrix):
1075         (WebCore::rawPtrVectorFromRefPtrVector):
1076         (WebCore::LayerRenderer::create):
1077         (WebCore::LayerRenderer::LayerRenderer):
1078         (WebCore::LayerRenderer::~LayerRenderer):
1079         (WebCore::LayerRenderer::releaseLayerResources):
1080         (WebCore::compareLayerZ):
1081         (WebCore::LayerRenderer::drawLayers):
1082         (WebCore::LayerRenderer::useSurface):
1083         (WebCore::LayerRenderer::drawLayersOnSurfaces):
1084         (WebCore::LayerRenderer::setRootLayer):
1085         (WebCore::LayerRenderer::addLayer):
1086         (WebCore::LayerRenderer::removeLayer):
1087         (WebCore::LayerRenderer::addLayerToReleaseTextureResourcesList):
1088         (WebCore::LayerRenderer::toOpenGLWindowCoordinates):
1089         (WebCore::LayerRenderer::toWebKitWindowCoordinates):
1090         (WebCore::LayerRenderer::toWebKitDocumentCoordinates):
1091         (WebCore::LayerRenderer::drawDebugBorder):
1092         (WebCore::LayerRenderer::drawHolePunchRect):
1093         (WebCore::LayerRenderer::updateLayersRecursive):
1094         (WebCore::hasRotationalComponent):
1095         (WebCore::LayerRenderer::layerAlreadyOnSurface):
1096         (WebCore::collect3DPreservingLayers):
1097         (WebCore::LayerRenderer::compositeLayersRecursive):
1098         (WebCore::LayerRenderer::updateScissorIfNeeded):
1099         (WebCore::LayerRenderer::makeContextCurrent):
1100         (WebCore::LayerRenderer::bindCommonAttribLocation):
1101         (WebCore::LayerRenderer::initializeSharedGLObjects):
1102         (WebCore::LayerRenderingResults::holePunchRect):
1103         (WebCore::LayerRenderingResults::addHolePunchRect):
1104         (WebCore::LayerRenderingResults::addDirtyRect):
1105         (WebCore::LayerRenderingResults::isEmpty):
1106         * platform/graphics/blackberry/LayerRenderer.h: Added.
1107         (WebCore):
1108         (LayerRenderingResults):
1109         (WebCore::LayerRenderingResults::LayerRenderingResults):
1110         (WebCore::LayerRenderingResults::holePunchRectSize):
1111         (WebCore::LayerRenderingResults::dirtyRect):
1112         (LayerRenderer):
1113         (WebCore::LayerRenderer::rootLayer):
1114         (WebCore::LayerRenderer::hardwareCompositing):
1115         (WebCore::LayerRenderer::setClearSurfaceOnDrawLayers):
1116         (WebCore::LayerRenderer::clearSurfaceOnDrawLayers):
1117         (WebCore::LayerRenderer::context):
1118         (WebCore::LayerRenderer::lastRenderingResults):
1119         (WebCore::LayerRenderer::setNeedsCommit):
1120
1121 2012-03-06  Roland Steiner  <rolandsteiner@chromium.org>
1122
1123         r109563 caused perf regression
1124         https://bugs.webkit.org/show_bug.cgi?id=80404
1125
1126         Add test for Element or ShadowRoot.
1127
1128         Reviewed by Antti Koivisto.
1129
1130         No new tests. (fix)
1131
1132         * css/CSSStyleSelector.cpp:
1133         (WebCore::CSSStyleSelector::pushParentElement):
1134
1135 2012-03-06  Pavel Podivilov  <podivilov@chromium.org>
1136
1137         Web Inspector: prepare for extracting ScriptMapping implementation from DebuggerPresentationModel.
1138         https://bugs.webkit.org/show_bug.cgi?id=80396
1139
1140         Limit RawSourceCode usages to a subset of methods. This subset will be moved to ScriptMapping implementation in a separate change.
1141
1142         Reviewed by Vsevolod Vlasov.
1143
1144         * inspector/front-end/DebuggerPresentationModel.js:
1145         (WebInspector.DebuggerPresentationModel):
1146         (WebInspector.DebuggerPresentationModel.prototype.createPlacard):
1147         (WebInspector.DebuggerPresentationModel.prototype.createLiveLocation):
1148         (WebInspector.DebuggerPresentationModel.prototype._parsedScriptSource):
1149         (WebInspector.DebuggerPresentationModel.prototype._failedToParseScriptSource):
1150         (WebInspector.DebuggerPresentationModel.prototype.setScriptSource.didEditScriptSource):
1151         (WebInspector.DebuggerPresentationModel.prototype.setScriptSource):
1152         (WebInspector.DebuggerPresentationModel.prototype._forceUpdateSourceMapping):
1153         (WebInspector.DebuggerPresentationModel.prototype._addConsoleMessageToScript):
1154         (WebInspector.DebuggerPresentationModel.prototype._debuggerPaused):
1155         (WebInspector.DebuggerPresentationModel.prototype.set selectedCallFrame):
1156         (WebInspector.PresentationCallFrame):
1157         (WebInspector.PresentationCallFrame.prototype.uiLocation):
1158         (WebInspector.DebuggerPresentationModel.CallFramePlacard):
1159         (WebInspector.DebuggerPresentationModelResourceBinding.prototype.canSetContent):
1160         (WebInspector.DebuggerPresentationModelResourceBinding.prototype.setContent):
1161         (WebInspector.DebuggerPresentationModelResourceBinding.prototype._uiSourceCodeForResource):
1162         (WebInspector.DebuggerPresentationModel.Linkifier.prototype.linkifyRawLocation):
1163
1164 2012-03-06  Vsevolod Vlasov  <vsevik@chromium.org>
1165
1166         Web Inspector: [Regression] Execution line is not revealed when debugger is stopped if scripts panel was not yet shown.
1167         https://bugs.webkit.org/show_bug.cgi?id=80306
1168
1169         Reviewed by Pavel Feldman.
1170
1171         Test: inspector/debugger/reveal-execution-line.html
1172
1173         * inspector/front-end/ConsoleView.js:
1174         * inspector/front-end/DebuggerPresentationModel.js:
1175         (WebInspector.DebuggerPresentationModel.prototype._debuggerPaused):
1176         * inspector/front-end/JavaScriptSourceFrame.js:
1177         (WebInspector.JavaScriptSourceFrame.prototype.afterTextChanged):
1178         (WebInspector.JavaScriptSourceFrame.prototype.setExecutionLine):
1179         * inspector/front-end/ScriptsPanel.js:
1180         (WebInspector.ScriptsPanel.prototype._executionLineChanged):
1181         (WebInspector.ScriptsPanel.prototype._revealExecutionLine):
1182         (WebInspector.ScriptsPanel.prototype._callFrameSelected):
1183         * inspector/front-end/SourceFrame.js:
1184         (WebInspector.SourceFrame.prototype.willHide):
1185         (WebInspector.SourceFrame.prototype.highlightLine):
1186         (WebInspector.SourceFrame.prototype.revealLine):
1187         (WebInspector.SourceFrame.prototype._clearLineToReveal):
1188         (WebInspector.SourceFrame.prototype.setContent):
1189
1190 2012-03-06  Pavel Podivilov  <podivilov@chromium.org>
1191
1192         Web Inspector: remove reference to RawSourceCode from UISourceCode.
1193         https://bugs.webkit.org/show_bug.cgi?id=80395
1194
1195         Reviewed by Vsevolod Vlasov.
1196
1197         * inspector/compile-front-end.sh:
1198         * inspector/front-end/DebuggerPresentationModel.js:
1199         (WebInspector.DebuggerPresentationModel):
1200         (WebInspector.DebuggerPresentationModel.prototype._handleUISourceCodeListChanged):
1201         (WebInspector.DebuggerPresentationModel.prototype._uiSourceCodeListChanged):
1202         (WebInspector.DebuggerPresentationModel.prototype._restoreBreakpoints):
1203         (WebInspector.DebuggerPresentationModel.prototype.setScriptSource.didEditScriptSource):
1204         (WebInspector.DebuggerPresentationModel.prototype.setScriptSource):
1205         (WebInspector.DebuggerPresentationModel.prototype.continueToLine):
1206         (WebInspector.DebuggerPresentationModel.prototype._debuggerReset):
1207         * inspector/front-end/RawSourceCode.js:
1208         (WebInspector.RawSourceCode.prototype._createUISourceCode):
1209         * inspector/front-end/UISourceCode.js:
1210         (WebInspector.UISourceCode):
1211
1212 2012-03-06  Andrey Kosyakov  <caseq@chromium.org>
1213
1214         Web Inspector: move timeline panel overview mode toggle buttons to overview sidebar tree
1215         https://bugs.webkit.org/show_bug.cgi?id=80304
1216
1217         Reviewed by Pavel Feldman.
1218
1219         * inspector/front-end/Images/statusbarButtonGlyphs.png:
1220         * inspector/front-end/Settings.js:
1221         (WebInspector.ExperimentsSettings):
1222         * inspector/front-end/TimelineOverviewPane.js:
1223         (WebInspector.TimelineOverviewPane):
1224         (WebInspector.TimelineOverviewPane.prototype._showTimelines):
1225         (WebInspector.TimelineOverviewPane.prototype._showMemoryGraph):
1226         (WebInspector.TimelineOverviewPane.prototype._setVerticalOverview):
1227         (WebInspector.TimelineOverviewPane.prototype._onOverviewModeChanged):
1228         (WebInspector.TimelineOverviewPane.prototype.update):
1229         (WebInspector.TimelineOverviewPane.prototype.reset):
1230         (WebInspector.TimelineOverviewPane.prototype._onWindowChanged):
1231         (WebInspector.TimelineVerticalOverview):
1232         (WebInspector.TimelineOverviewModeSelector):
1233         (WebInspector.TimelineOverviewModeSelector.prototype.addButton):
1234         (WebInspector.TimelineOverviewModeSelector.prototype.get value):
1235         (WebInspector.TimelineOverviewModeSelector.prototype._createButton):
1236         (WebInspector.TimelineOverviewModeSelector.prototype._select):
1237         (WebInspector.TimelineOverviewModeSelector.prototype._onClick):
1238         * inspector/front-end/TimelinePanel.js:
1239         (WebInspector.TimelinePanel):
1240         (WebInspector.TimelinePanel.prototype.get statusBarItems):
1241         (WebInspector.TimelinePanel.prototype._createStatusbarButtons):
1242         (WebInspector.TimelinePanel.prototype._updateEventDividers):
1243         (WebInspector.TimelinePanel.prototype._glueParentButtonClicked):
1244         (WebInspector.TimelinePanel.prototype.revealRecordAt):
1245         * inspector/front-end/inspector.css:
1246         * inspector/front-end/timelinePanel.css:
1247         (.timeline-vertical-overview #timeline-overview-grid):
1248         (.timeline-vertical-overview .timeline-overview-window):
1249         (.timeline-vertical-overview .timeline-overview-dividers-background):
1250         (.timeline-vertical-overview #timeline-overview-memory):
1251         (.timeline-vertical-overview-status-bar-item.toggled-on .glyph):
1252         (.timeline-vertical-overview-bars):
1253         (.timeline-vertical-overview-bars .padding):
1254         (.timeline-vertical-overview-bars .timeline-bar-vertical):
1255         (.timeline.timeline-vertical-overview .resources-divider):
1256         (.sidebar-tree-item .timeline-vertical-overview-status-bar-item):
1257         (.timeline-overview-mode-selector):
1258         (.timeline-overview-mode-selector .glyph):
1259         (.timeline-overview-mode-selector button):
1260         (.timeline-overview-mode-selector button.toggled):
1261         (.timeline-overview-mode-selector button:active):
1262         (.sidebar-tree-item:not(.selected) .timeline-overview-mode-selector button):
1263         (.sidebar-tree-item:not(.selected) .timeline-overview-mode-selector button.toggled):
1264         (.timeline-overview-mode-selector button:first-of-type):
1265         (.timeline-overview-mode-selector button:last-of-type):
1266         (.timeline-mode-vertical-bars .glyph):
1267         (.timeline-mode-horizontal-bars .glyph):
1268
1269 2012-03-05  Alexander Færøy  <alexander.faeroy@nokia.com>
1270
1271         Make it explicit when we are allowing updates to the actual backing store or the tile buffers
1272         https://bugs.webkit.org/show_bug.cgi?id=80288
1273
1274         Patch by Kenneth Rohde Christiansen and Alexander Færøy.
1275
1276         Reviewed by Noam Rosenthal.
1277
1278         * platform/graphics/TiledBackingStore.cpp:
1279         (WebCore::TiledBackingStore::createTiles):
1280         (WebCore::TiledBackingStore::isBackingStoreUpdatesSuspended):
1281         (WebCore):
1282         (WebCore::TiledBackingStore::isTileBufferUpdatesSuspended):
1283         (WebCore::TiledBackingStore::startTileBufferUpdateTimer):
1284         (WebCore::TiledBackingStore::startTileCreationTimer):
1285         * platform/graphics/TiledBackingStore.h:
1286         (TiledBackingStore):
1287
1288 2012-03-06  Mark Rowe  <mrowe@apple.com>
1289
1290         Build fix after r109877.
1291
1292         * WebCore.xcodeproj/project.pbxproj: Ensure that headers are copied in to WebCore.framework so that
1293         WebKit can still find them.
1294
1295 2012-03-06  Andreas Kling  <awesomekling@apple.com>
1296
1297         Remove incorrect WTF::Vector traits for CSSProperty.
1298         <http://webkit.org/b/53285>
1299         <rdar://problem/10161286>
1300
1301         Reviewed by Antti Koivisto.
1302
1303         We shouldn't allow copying Vector<CSSProperty> contents around with memcpy()
1304         as CSSProperty has a RefPtr member and this would muck up the refcount.
1305         This was added to facilitate fast comparison of property vectors, and we no
1306         longer use that, so there shouldn't be any performance concerns here.
1307
1308         * css/CSSProperty.h:
1309
1310 2012-03-06  Adam Barth  <abarth@webkit.org>
1311
1312         Attempt to fix the Qt minimal build.
1313
1314         * Target.pri:
1315
1316 2012-03-06  Roland Steiner  <rolandsteiner@chromium.org>
1317
1318         :scope should behave as :root outside scoped style sheet
1319         https://bugs.webkit.org/show_bug.cgi?id=80389
1320
1321         Fall through to :root implementation if no scope is used.
1322
1323         Reviewed by Antti Koivisto.
1324
1325         Test: fast/css/style-scoped/scope-pseudo.html
1326
1327         * css/SelectorChecker.cpp:
1328         (WebCore::SelectorChecker::checkOneSelector):
1329
1330 2012-03-05  Vsevolod Vlasov  <vsevik@chromium.org>
1331
1332         Web Inspector: [Regression] Message bubbles are not removed from scripts panel source frames after console was cleared.
1333         https://bugs.webkit.org/show_bug.cgi?id=80275
1334
1335         Reviewed by Pavel Feldman.
1336
1337         * inspector/front-end/ScriptsPanel.js:
1338         (WebInspector.ScriptsPanel.prototype._consoleMessagesCleared):
1339         * inspector/front-end/utilities.js:
1340
1341 2012-03-06  Adam Barth  <abarth@webkit.org>
1342
1343         Move SQLDatabase code into Modules/webdatabase
1344         https://bugs.webkit.org/show_bug.cgi?id=80393
1345
1346         Reviewed by Kentaro Hara.
1347
1348         There are still a couple (minor) SQLDatabase references from WebCore
1349         proper, but we've gotten this code to the point where it makes sense to
1350         move it into the Modules directory.  (This patch just moves code---no
1351         behavior change.)
1352
1353         * CMakeLists.txt:
1354         * DerivedSources.make:
1355         * DerivedSources.pri:
1356         * GNUmakefile.am:
1357         * GNUmakefile.list.am:
1358         * Modules/webdatabase: Added.
1359         * Modules/webdatabase/AbstractDatabase.cpp: Copied from Source/WebCore/storage/AbstractDatabase.cpp.
1360         * Modules/webdatabase/AbstractDatabase.h: Copied from Source/WebCore/storage/AbstractDatabase.h.
1361         * Modules/webdatabase/ChangeVersionWrapper.cpp: Copied from Source/WebCore/storage/ChangeVersionWrapper.cpp.
1362         * Modules/webdatabase/ChangeVersionWrapper.h: Copied from Source/WebCore/storage/ChangeVersionWrapper.h.
1363         * Modules/webdatabase/DOMWindowSQLDatabase.cpp: Copied from Source/WebCore/storage/DOMWindowSQLDatabase.cpp.
1364         * Modules/webdatabase/DOMWindowSQLDatabase.h: Copied from Source/WebCore/storage/DOMWindowSQLDatabase.h.
1365         * Modules/webdatabase/DOMWindowSQLDatabase.idl: Copied from Source/WebCore/storage/DOMWindowSQLDatabase.idl.
1366         * Modules/webdatabase/Database.cpp: Copied from Source/WebCore/storage/Database.cpp.
1367         * Modules/webdatabase/Database.h: Copied from Source/WebCore/storage/Database.h.
1368         * Modules/webdatabase/Database.idl: Copied from Source/WebCore/storage/Database.idl.
1369         * Modules/webdatabase/DatabaseAuthorizer.cpp: Copied from Source/WebCore/storage/DatabaseAuthorizer.cpp.
1370         * Modules/webdatabase/DatabaseAuthorizer.h: Copied from Source/WebCore/storage/DatabaseAuthorizer.h.
1371         * Modules/webdatabase/DatabaseCallback.h: Copied from Source/WebCore/storage/DatabaseCallback.h.
1372         * Modules/webdatabase/DatabaseCallback.idl: Copied from Source/WebCore/storage/DatabaseCallback.idl.
1373         * Modules/webdatabase/DatabaseContext.cpp: Copied from Source/WebCore/storage/DatabaseContext.cpp.
1374         * Modules/webdatabase/DatabaseContext.h: Copied from Source/WebCore/storage/DatabaseContext.h.
1375         * Modules/webdatabase/DatabaseDetails.h: Copied from Source/WebCore/storage/DatabaseDetails.h.
1376         * Modules/webdatabase/DatabaseSync.cpp: Copied from Source/WebCore/storage/DatabaseSync.cpp.
1377         * Modules/webdatabase/DatabaseSync.h: Copied from Source/WebCore/storage/DatabaseSync.h.
1378         * Modules/webdatabase/DatabaseSync.idl: Copied from Source/WebCore/storage/DatabaseSync.idl.
1379         * Modules/webdatabase/DatabaseTask.cpp: Copied from Source/WebCore/storage/DatabaseTask.cpp.
1380         * Modules/webdatabase/DatabaseTask.h: Copied from Source/WebCore/storage/DatabaseTask.h.
1381         * Modules/webdatabase/DatabaseThread.cpp: Copied from Source/WebCore/storage/DatabaseThread.cpp.
1382         * Modules/webdatabase/DatabaseThread.h: Copied from Source/WebCore/storage/DatabaseThread.h.
1383         * Modules/webdatabase/DatabaseTracker.cpp: Copied from Source/WebCore/storage/DatabaseTracker.cpp.
1384         * Modules/webdatabase/DatabaseTracker.h: Copied from Source/WebCore/storage/DatabaseTracker.h.
1385         * Modules/webdatabase/DatabaseTrackerClient.h: Copied from Source/WebCore/storage/DatabaseTrackerClient.h.
1386         * Modules/webdatabase/OriginQuotaManager.cpp: Copied from Source/WebCore/storage/OriginQuotaManager.cpp.
1387         * Modules/webdatabase/OriginQuotaManager.h: Copied from Source/WebCore/storage/OriginQuotaManager.h.
1388         * Modules/webdatabase/OriginUsageRecord.cpp: Copied from Source/WebCore/storage/OriginUsageRecord.cpp.
1389         * Modules/webdatabase/OriginUsageRecord.h: Copied from Source/WebCore/storage/OriginUsageRecord.h.
1390         * Modules/webdatabase/SQLCallbackWrapper.h: Copied from Source/WebCore/storage/SQLCallbackWrapper.h.
1391         * Modules/webdatabase/SQLError.h: Copied from Source/WebCore/storage/SQLError.h.
1392         * Modules/webdatabase/SQLError.idl: Copied from Source/WebCore/storage/SQLError.idl.
1393         * Modules/webdatabase/SQLException.cpp: Copied from Source/WebCore/storage/SQLException.cpp.
1394         * Modules/webdatabase/SQLException.h: Copied from Source/WebCore/storage/SQLException.h.
1395         * Modules/webdatabase/SQLException.idl: Copied from Source/WebCore/storage/SQLException.idl.
1396         * Modules/webdatabase/SQLResultSet.cpp: Copied from Source/WebCore/storage/SQLResultSet.cpp.
1397         * Modules/webdatabase/SQLResultSet.h: Copied from Source/WebCore/storage/SQLResultSet.h.
1398         * Modules/webdatabase/SQLResultSet.idl: Copied from Source/WebCore/storage/SQLResultSet.idl.
1399         * Modules/webdatabase/SQLResultSetRowList.cpp: Copied from Source/WebCore/storage/SQLResultSetRowList.cpp.
1400         * Modules/webdatabase/SQLResultSetRowList.h: Copied from Source/WebCore/storage/SQLResultSetRowList.h.
1401         * Modules/webdatabase/SQLResultSetRowList.idl: Copied from Source/WebCore/storage/SQLResultSetRowList.idl.
1402         * Modules/webdatabase/SQLStatement.cpp: Copied from Source/WebCore/storage/SQLStatement.cpp.
1403         * Modules/webdatabase/SQLStatement.h: Copied from Source/WebCore/storage/SQLStatement.h.
1404         * Modules/webdatabase/SQLStatementCallback.h: Copied from Source/WebCore/storage/SQLStatementCallback.h.
1405         * Modules/webdatabase/SQLStatementCallback.idl: Copied from Source/WebCore/storage/SQLStatementCallback.idl.
1406         * Modules/webdatabase/SQLStatementErrorCallback.h: Copied from Source/WebCore/storage/SQLStatementErrorCallback.h.
1407         * Modules/webdatabase/SQLStatementErrorCallback.idl: Copied from Source/WebCore/storage/SQLStatementErrorCallback.idl.
1408         * Modules/webdatabase/SQLStatementSync.cpp: Copied from Source/WebCore/storage/SQLStatementSync.cpp.
1409         * Modules/webdatabase/SQLStatementSync.h: Copied from Source/WebCore/storage/SQLStatementSync.h.
1410         * Modules/webdatabase/SQLTransaction.cpp: Copied from Source/WebCore/storage/SQLTransaction.cpp.
1411         * Modules/webdatabase/SQLTransaction.h: Copied from Source/WebCore/storage/SQLTransaction.h.
1412         * Modules/webdatabase/SQLTransaction.idl: Copied from Source/WebCore/storage/SQLTransaction.idl.
1413         * Modules/webdatabase/SQLTransactionCallback.h: Copied from Source/WebCore/storage/SQLTransactionCallback.h.
1414         * Modules/webdatabase/SQLTransactionCallback.idl: Copied from Source/WebCore/storage/SQLTransactionCallback.idl.
1415         * Modules/webdatabase/SQLTransactionClient.cpp: Copied from Source/WebCore/storage/SQLTransactionClient.cpp.
1416         * Modules/webdatabase/SQLTransactionClient.h: Copied from Source/WebCore/storage/SQLTransactionClient.h.
1417         * Modules/webdatabase/SQLTransactionCoordinator.cpp: Copied from Source/WebCore/storage/SQLTransactionCoordinator.cpp.
1418         * Modules/webdatabase/SQLTransactionCoordinator.h: Copied from Source/WebCore/storage/SQLTransactionCoordinator.h.
1419         * Modules/webdatabase/SQLTransactionErrorCallback.h: Copied from Source/WebCore/storage/SQLTransactionErrorCallback.h.
1420         * Modules/webdatabase/SQLTransactionErrorCallback.idl: Copied from Source/WebCore/storage/SQLTransactionErrorCallback.idl.
1421         * Modules/webdatabase/SQLTransactionSync.cpp: Copied from Source/WebCore/storage/SQLTransactionSync.cpp.
1422         * Modules/webdatabase/SQLTransactionSync.h: Copied from Source/WebCore/storage/SQLTransactionSync.h.
1423         * Modules/webdatabase/SQLTransactionSync.idl: Copied from Source/WebCore/storage/SQLTransactionSync.idl.
1424         * Modules/webdatabase/SQLTransactionSyncCallback.h: Copied from Source/WebCore/storage/SQLTransactionSyncCallback.h.
1425         * Modules/webdatabase/SQLTransactionSyncCallback.idl: Copied from Source/WebCore/storage/SQLTransactionSyncCallback.idl.
1426         * Modules/webdatabase/WorkerContextSQLDatabase.cpp: Copied from Source/WebCore/storage/WorkerContextSQLDatabase.cpp.
1427         * Modules/webdatabase/WorkerContextSQLDatabase.h: Copied from Source/WebCore/storage/WorkerContextSQLDatabase.h.
1428         * Modules/webdatabase/WorkerContextSQLDatabase.idl: Copied from Source/WebCore/storage/WorkerContextSQLDatabase.idl.
1429         * Modules/webdatabase/chromium: Added.
1430         * Modules/webdatabase/chromium/DatabaseObserver.h: Copied from Source/WebCore/storage/chromium/DatabaseObserver.h.
1431         * Modules/webdatabase/chromium/DatabaseTrackerChromium.cpp: Copied from Source/WebCore/storage/chromium/DatabaseTrackerChromium.cpp.
1432         * Modules/webdatabase/chromium/QuotaTracker.cpp: Copied from Source/WebCore/storage/chromium/QuotaTracker.cpp.
1433         * Modules/webdatabase/chromium/QuotaTracker.h: Copied from Source/WebCore/storage/chromium/QuotaTracker.h.
1434         * Modules/webdatabase/chromium/SQLTransactionClientChromium.cpp: Copied from Source/WebCore/storage/chromium/SQLTransactionClientChromium.cpp.
1435         * Target.pri:
1436         * WebCore.gyp/WebCore.gyp:
1437         * WebCore.gypi:
1438         * WebCore.pri:
1439         * WebCore.vcproj/WebCore.vcproj:
1440         * WebCore.vcproj/WebCoreCommon.vsprops:
1441         * WebCore.vcproj/copyForwardingHeaders.cmd:
1442         * WebCore.xcodeproj/project.pbxproj:
1443         * storage/AbstractDatabase.cpp: Removed.
1444         * storage/AbstractDatabase.h: Removed.
1445         * storage/ChangeVersionWrapper.cpp: Removed.
1446         * storage/ChangeVersionWrapper.h: Removed.
1447         * storage/DOMWindowSQLDatabase.cpp: Removed.
1448         * storage/DOMWindowSQLDatabase.h: Removed.
1449         * storage/DOMWindowSQLDatabase.idl: Removed.
1450         * storage/Database.cpp: Removed.
1451         * storage/Database.h: Removed.
1452         * storage/Database.idl: Removed.
1453         * storage/DatabaseAuthorizer.cpp: Removed.
1454         * storage/DatabaseAuthorizer.h: Removed.
1455         * storage/DatabaseCallback.h: Removed.
1456         * storage/DatabaseCallback.idl: Removed.
1457         * storage/DatabaseContext.cpp: Removed.
1458         * storage/DatabaseContext.h: Removed.
1459         * storage/DatabaseDetails.h: Removed.
1460         * storage/DatabaseSync.cpp: Removed.
1461         * storage/DatabaseSync.h: Removed.
1462         * storage/DatabaseSync.idl: Removed.
1463         * storage/DatabaseTask.cpp: Removed.
1464         * storage/DatabaseTask.h: Removed.
1465         * storage/DatabaseThread.cpp: Removed.
1466         * storage/DatabaseThread.h: Removed.
1467         * storage/DatabaseTracker.cpp: Removed.
1468         * storage/DatabaseTracker.h: Removed.
1469         * storage/DatabaseTrackerClient.h: Removed.
1470         * storage/OriginQuotaManager.cpp: Removed.
1471         * storage/OriginQuotaManager.h: Removed.
1472         * storage/OriginUsageRecord.cpp: Removed.
1473         * storage/OriginUsageRecord.h: Removed.
1474         * storage/SQLCallbackWrapper.h: Removed.
1475         * storage/SQLError.h: Removed.
1476         * storage/SQLError.idl: Removed.
1477         * storage/SQLException.cpp: Removed.
1478         * storage/SQLException.h: Removed.
1479         * storage/SQLException.idl: Removed.
1480         * storage/SQLResultSet.cpp: Removed.
1481         * storage/SQLResultSet.h: Removed.
1482         * storage/SQLResultSet.idl: Removed.
1483         * storage/SQLResultSetRowList.cpp: Removed.
1484         * storage/SQLResultSetRowList.h: Removed.
1485         * storage/SQLResultSetRowList.idl: Removed.
1486         * storage/SQLStatement.cpp: Removed.
1487         * storage/SQLStatement.h: Removed.
1488         * storage/SQLStatementCallback.h: Removed.
1489         * storage/SQLStatementCallback.idl: Removed.
1490         * storage/SQLStatementErrorCallback.h: Removed.
1491         * storage/SQLStatementErrorCallback.idl: Removed.
1492         * storage/SQLStatementSync.cpp: Removed.
1493         * storage/SQLStatementSync.h: Removed.
1494         * storage/SQLTransaction.cpp: Removed.
1495         * storage/SQLTransaction.h: Removed.
1496         * storage/SQLTransaction.idl: Removed.
1497         * storage/SQLTransactionCallback.h: Removed.
1498         * storage/SQLTransactionCallback.idl: Removed.
1499         * storage/SQLTransactionClient.cpp: Removed.
1500         * storage/SQLTransactionClient.h: Removed.
1501         * storage/SQLTransactionCoordinator.cpp: Removed.
1502         * storage/SQLTransactionCoordinator.h: Removed.
1503         * storage/SQLTransactionErrorCallback.h: Removed.
1504         * storage/SQLTransactionErrorCallback.idl: Removed.
1505         * storage/SQLTransactionSync.cpp: Removed.
1506         * storage/SQLTransactionSync.h: Removed.
1507         * storage/SQLTransactionSync.idl: Removed.
1508         * storage/SQLTransactionSyncCallback.h: Removed.
1509         * storage/SQLTransactionSyncCallback.idl: Removed.
1510         * storage/WorkerContextSQLDatabase.cpp: Removed.
1511         * storage/WorkerContextSQLDatabase.h: Removed.
1512         * storage/WorkerContextSQLDatabase.idl: Removed.
1513         * storage/chromium/DatabaseObserver.h: Removed.
1514         * storage/chromium/DatabaseTrackerChromium.cpp: Removed.
1515         * storage/chromium/QuotaTracker.cpp: Removed.
1516         * storage/chromium/QuotaTracker.h: Removed.
1517         * storage/chromium/SQLTransactionClientChromium.cpp: Removed.
1518
1519 2012-03-05  Kent Tamura  <tkent@chromium.org>
1520
1521         Do not reformat strings in <input type=number> on platforms using LocalizedNumberICU.
1522         https://bugs.webkit.org/show_bug.cgi?id=78326
1523
1524         Reviewed by Hajime Morita.
1525
1526         We had bugs such as stripping leading zeros, dropping lower digits
1527         of large numbers because we parse a user-input string to a double
1528         value, and generate a string from the double value.
1529
1530         In order to avoid such reformatting, we converts number strings by
1531         replacing standard digits to corresponding localized digits.
1532
1533         * WebCore.gypi: Added LocalizedNumberICU.h
1534         * platform/text/LocalizedNumberICU.cpp:
1535         (WebCore::ICULocale::ICULocale): Added.
1536         (WebCore::ICULocale::create): A testing factory function.
1537         (WebCore::ICULocale::createForCurrentLocale): A practical factory function.
1538         (WebCore::ICULocale::setDecimalSymbol): Initialize a symbol table.
1539         (WebCore::ICULocale::initializeDecimalFormat): Initialize ICU DecimalFormat.
1540         (WebCore::ICULocale::convertToLocalizedNumber):
1541          Replace characters to corresponding localized characters.
1542         (WebCore::matches): A helper function for convertFromLocalizedNumber.
1543         (WebCore::endsWith): ditto.
1544         (WebCore::ICULocale::determineStartPosition): ditto.
1545         (WebCore::ICULocale::matchedDecimalSymbolIndex): ditto.
1546         (WebCore::ICULocale::convertFromLocalizedNumber):
1547          Replace characters to corresponding standard characters.
1548         (WebCore::currentLocale): Added.
1549         (WebCore::convertToLocalizedNumber): Uses ICULocale::convertToLocalizedNumber.
1550         (WebCore::convertFromLocalizedNumber): Uses ICULocale::convertFromLocalizedNumber.
1551         * platform/text/LocalizedNumberICU.h: Added.
1552         (ICULocale): Added. This is exposed to WebKit/chromium/tests/LocalizedNumberICUTest.cpp.
1553
1554 2012-03-06  Adam Barth  <abarth@webkit.org>
1555
1556         Attempt to fix the GTK minimal build
1557         https://bugs.webkit.org/show_bug.cgi?id=80390
1558
1559         Reviewed by Csaba Osztrogonác.
1560
1561         Add some missing ifdefs.
1562
1563         * Modules/geolocation/NavigatorGeolocation.cpp:
1564         * Modules/geolocation/NavigatorGeolocation.h:
1565
1566 2012-03-05  Pavel Podivilov  <podivilov@chromium.org>
1567
1568         Web Inspector: stop using RawSourceCode in BreakpointManager.
1569         https://bugs.webkit.org/show_bug.cgi?id=80286
1570
1571         Reviewed by Vsevolod Vlasov.
1572
1573         * WebCore.gypi:
1574         * WebCore.vcproj/WebCore.vcproj:
1575         * inspector/front-end/BreakpointManager.js:
1576         (WebInspector.BreakpointManager.prototype.uiSourceCodeAdded):
1577         (WebInspector.BreakpointManager.prototype.setBreakpoint):
1578         (WebInspector.BreakpointManager.prototype._materializeBreakpoint):
1579         (WebInspector.BreakpointManager.prototype._breakpointDebuggerLocationChanged):
1580         * inspector/front-end/DebuggerPresentationModel.js:
1581         (WebInspector.DebuggerPresentationModel):
1582         * inspector/front-end/ScriptMapping.js: Added.
1583         (WebInspector.ScriptMapping):
1584         (WebInspector.ScriptMapping.prototype.rawLocationToUILocation):
1585         (WebInspector.ScriptMapping.prototype.uiLocationToRawLocation):
1586         (WebInspector.ScriptMapping.prototype.createLiveLocation):
1587         (WebInspector.ScriptMapping.prototype.uiSourceCodeList):
1588         * inspector/front-end/WebKit.qrc:
1589         * inspector/front-end/inspector.html:
1590
1591 2012-03-05  Philippe Normand  <pnormand@igalia.com>
1592
1593         WebAudio JSC-related fixes
1594         https://bugs.webkit.org/show_bug.cgi?id=80299
1595
1596         Reviewed by Adam Barth.
1597
1598         * bindings/js/JSAudioContextCustom.cpp:
1599         (WebCore::JSAudioContextConstructor::constructJSAudioContext):
1600         Wrap the audio context in a DOM wrapper.
1601         * webaudio/AudioContext.idl: No need to protect EventTarget by V8
1602         guards, I think.
1603         * webaudio/JavaScriptAudioNode.idl: Ditto.
1604
1605 2012-03-05  Kishore Bolisetty  <kbolisetty@innominds.com>
1606
1607         Element not fully repainted after application and removal of transform
1608         https://bugs.webkit.org/show_bug.cgi?id=61338
1609
1610         Reviewed by Simon Fraser.
1611         RenderLayer is created and removed when a transform is applied and removed to element.
1612         To render the element properly after removal of transform on it, preferred widths and dimensions of
1613         the element and its containing block needs to be recalculated.
1614
1615         Test: fast/repaint/transform-rotate-and-remove.html
1616
1617         * rendering/RenderBoxModelObject.cpp:
1618         (WebCore):
1619         (WebCore::RenderBoxModelObject::styleWillChange):
1620         (WebCore::RenderBoxModelObject::styleDidChange):
1621         * rendering/RenderBoxModelObject.h:
1622         (RenderBoxModelObject):
1623
1624 2012-03-05  Gavin Barraclough  <barraclough@apple.com>
1625
1626         putByIndex should throw in strict mode
1627         https://bugs.webkit.org/show_bug.cgi?id=80335
1628
1629         Reviewed by Filip Pizlo.
1630
1631         Make the MethodTable PutByIndex trap take a boolean 'shouldThrow' parameter.
1632
1633         * bindings/js/SerializedScriptValue.cpp:
1634         (WebCore::CloneDeserializer::putProperty):
1635         * bindings/objc/WebScriptObject.mm:
1636         (-[WebScriptObject setWebScriptValueAtIndex:value:]):
1637         * bindings/scripts/CodeGeneratorJS.pm:
1638         (GenerateHeader):
1639         (GenerateImplementation):
1640         * bridge/NP_jsobject.cpp:
1641         (_NPN_SetProperty):
1642         * bridge/jni/jni_jsobject.mm:
1643         (JavaJSObject::setSlot):
1644         * bridge/runtime_array.cpp:
1645         (JSC::RuntimeArray::putByIndex):
1646         * bridge/runtime_array.h:
1647         (RuntimeArray):
1648
1649 2012-03-05  Shinya Kawanaka  <shinyak@chromium.org>
1650
1651         InsertionPoint::attach should be consistent with Element.
1652         https://bugs.webkit.org/show_bug.cgi?id=80373
1653
1654         Reviewed by Hajime Morita.
1655
1656         This patch is preparation for coming <shadow> patches.
1657
1658         InsertionPoint used to attach fallback elements before attaching distributed elements.
1659         To be consistent with Element::attach behavior, attaching distributed elements first is
1660         natural, because Element attaches a shadow tree first.
1661
1662         Also, this patch extracts a few methods form InsretionPoint::attach() and detach()
1663         to keep code clean. They will become messy without this refactoring when adding
1664         <shadow> patch.
1665
1666         No new tests. Should be covered by existing tests.
1667
1668         * html/shadow/InsertionPoint.cpp:
1669         (WebCore::InsertionPoint::attach):
1670         (WebCore::InsertionPoint::detach):
1671         (WebCore::InsertionPoint::distributeHostChildren):
1672         (WebCore):
1673         (WebCore::InsertionPoint::clearDistribution):
1674         (WebCore::InsertionPoint::attachDistributedNode):
1675         * html/shadow/InsertionPoint.h:
1676         (InsertionPoint):
1677
1678 2012-03-05  Adam Barth  <abarth@webkit.org>
1679
1680         Attempt to fix a number of GTK tests.
1681
1682         * GNUmakefile.list.am:
1683
1684 2012-03-05  Joseph Pecoraro  <pecoraro@apple.com>
1685
1686         Unreviewed rollout of r109858 for restructuring.
1687
1688 2012-03-05  Joseph Pecoraro  <pecoraro@apple.com>
1689
1690         <http://webkit.org/b/78575> Web Inspector: Hide dock button when not allowed to dock
1691
1692         There are times when an undocked inspector frontend is not allowed to
1693         attach to the main window. We can remove the dock button in those cases.
1694
1695         Reviewed by Timothy Hatcher.
1696
1697         No new tests. This functionality is port specific right now.
1698
1699         * page/FrameView.cpp:
1700         (WebCore::FrameView::performPostLayoutTasks):
1701         When the main frame is resized we let the inspector frontend client
1702         update its docked availablility.
1703
1704         * WebCore.exp.in:
1705         * inspector/InspectorInstrumentation.h:
1706         * inspector/InspectorInstrumentation.cpp:
1707         (WebCore::InspectorInstrumentation::didResizeMainFrameImpl):
1708         (WebCore::InspectorInstrumentation::didResizeMainFrame):
1709         * inspector/InspectorClient.h:
1710         (WebCore::InspectorClient::updateDockingAvailability):
1711         * inspector/InspectorController.h:
1712         * inspector/InspectorController.cpp:
1713         (WebCore::InspectorController::resume):
1714         (WebCore::InspectorController::updateDockingAvailability):
1715         When the main frame is resized call up to the InspectorClient to let
1716         it update docking availability of the inspector frontend.
1717
1718         * inspector/InspectorFrontendClient.h:
1719         * inspector/InspectorFrontendClientLocal.h:
1720         * inspector/InspectorFrontendClientLocal.cpp:
1721         (WebCore::InspectorFrontendClientLocal::frontendLoaded):
1722         (WebCore::InspectorFrontendClientLocal::setDockingUnavailable):
1723         On ports where the inspector frontend client is local, provide a 
1724         setDockingUnavailable InspectorFrontendAPI to update the docking state.
1725         Automatically update availablity when the frontend completes loading.
1726
1727         * inspector/front-end/InspectorFrontendAPI.js:
1728         (InspectorFrontendAPI.setDockingUnavailable):
1729         * inspector/front-end/inspector.js:
1730         (WebInspector._createGlobalStatusBarItems):
1731         (WebInspector.setAttachedWindow):
1732         (WebInspector.setDockingUnavailable):
1733         (WebInspector.updateDockToggleButtonVisibility):
1734         Update the dock button's visibility when its created, when the attached
1735         state changes, when get a frontend API notification that we cannot attach.
1736
1737 2012-03-05  Adrienne Walker  <enne@google.com>
1738
1739         Compositing overlap testing can throw layers into compositing when they should not be.
1740         https://bugs.webkit.org/show_bug.cgi?id=50192
1741
1742         Reviewed by Simon Fraser.
1743
1744         The previous overlap map behavior was that a non-composited query
1745         layer would become composited due to overlap if and only if the query
1746         layer's absolute bounds overlapped the absolute bounds of some other
1747         layer which:
1748             - draws before the query layer
1749             - is or has a compositing ancestor
1750
1751         This behavior, while correct, was too permissive in throwing layers
1752         into compositing, causing many layers to get their own backing when
1753         they could have just gone into their compositing ancestor's backing.
1754
1755         The correct logic is that non-composited query layer needs to be
1756         composited due to overlap if and only if the query layer's absolute
1757         bounds overlap the absolute bounds of some other layer which:
1758             - draws before the query layer
1759             - has a different compositing ancestor than the query layer
1760             - is or has a compositing ancestor that is a descendent of the
1761               query layer's compositing ancestor
1762
1763         This patch changes the semantics of the overlap map to enable this
1764         behavior.
1765
1766         Rather than having one global overlap map, there is now a stack of
1767         overlap maps. New (empty) overlap maps are pushed onto the stack
1768         whenever a layer becomes a compositing ancestor and popped after all
1769         of the compositing requirements for that layer's children have been
1770         computed.
1771
1772         The compositing ancestor and all of its non-composited children of a
1773         compositing ancestor do not get considered for overlap until their
1774         composited ancestor has been popped off the stack. If a compositing
1775         ancestor has a compositing subtree, then any descendents of that
1776         compositing ancestor that draw after that subtree will consider
1777         everything in the compositing subtree for overlap.
1778
1779         Test: compositing/layer-creation/stacking-context-overlap.html
1780
1781         * platform/graphics/Region.cpp:
1782         (WebCore::Region::intersects):
1783         (WebCore):
1784         * platform/graphics/Region.h:
1785         (Region):
1786         * rendering/RenderLayerCompositor.cpp:
1787         (RenderLayerCompositor::OverlapMap):
1788         (WebCore::RenderLayerCompositor::OverlapMap::OverlapMap):
1789         (WebCore::RenderLayerCompositor::OverlapMap::add):
1790         (WebCore::RenderLayerCompositor::OverlapMap::contains):
1791         (WebCore::RenderLayerCompositor::OverlapMap::overlapsLayers):
1792         (WebCore::RenderLayerCompositor::OverlapMap::isEmpty):
1793         (WebCore::RenderLayerCompositor::OverlapMap::popCompositingContainer):
1794         (WebCore::RenderLayerCompositor::OverlapMap::pushCompositingContainer):
1795         (WebCore::RenderLayerCompositor::addToOverlapMapRecursive):
1796         (WebCore::RenderLayerCompositor::computeCompositingRequirements):
1797         * rendering/RenderLayerCompositor.h:
1798         (RenderLayerCompositor):
1799
1800 2012-03-05  Anders Carlsson  <andersca@apple.com>
1801
1802         Address review comments from https://bugs.webkit.org/show_bug.cgi?id=80368
1803
1804         * platform/graphics/ca/mac/TileCache.mm:
1805         (WebCore::TileCache::setNeedsDisplayInRect):
1806
1807 2012-03-05  Yoshifumi Inoue  <yosin@chromium.org>
1808
1809         [Forms] HTMLFieldSetForms.idl doesn't have type attribute.
1810         https://bugs.webkit.org/show_bug.cgi?id=80109
1811
1812         Reviewed by Hajime Morita.
1813
1814         Test: fast/forms/fieldset/fieldset-type.html
1815
1816         * html/HTMLFieldSetElement.idl: Add attribute "type"
1817
1818 2012-03-05  Anders Carlsson  <andersca@apple.com>
1819
1820         Fix build.
1821
1822         * platform/graphics/ca/mac/TileCache.mm:
1823         (WebCore::TileCache::setScale):
1824
1825 2012-03-05  Anders Carlsson  <andersca@apple.com>
1826
1827         pinch-to-zoom and double-tap flicker when using the new scrolling model
1828         https://bugs.webkit.org/show_bug.cgi?id=80368
1829         <rdar://problem/10866221>
1830
1831         Reviewed by Sam Weinig.
1832
1833         In order to work better with zooming, make the tile cache undo the scale transformation
1834         and handle the scaling manually. This avoids creating huge tile backing stores when zoomed in.
1835
1836         * platform/graphics/ca/mac/TileCache.mm:
1837         (WebCore::TileCache::TileCache):
1838         Initialize m_scale to 1.
1839
1840         (WebCore::TileCache::setNeedsDisplayInRect):
1841         Scale the given rect appropriately.
1842
1843         (WebCore::TileCache::drawLayer):
1844         Apply a scale context transform.
1845
1846         (WebCore::TileCache::setScale):
1847         No longer set the contents scale. Instead, update the scale and revalidate the tiles.
1848
1849         (WebCore::TileCache::revalidateTiles):
1850         Return early if the bounds are empty. This avoids showing a single tile if that happens due to a race condition.
1851
1852         (WebCore::TileCache::getTileIndexRangeForRect):
1853         Apply the scale to the bounds.
1854
1855         (WebCore::TileCache::createTileLayer):
1856         Don't set the contents scale.
1857
1858         * platform/graphics/ca/mac/WebTileCacheLayer.mm:
1859         (-[WebTileCacheLayer setContentsScale:]):
1860         Call TileCache::setScale.
1861
1862         * rendering/RenderLayerBacking.cpp:
1863         (WebCore::RenderLayerBacking::updateCompositedBounds):
1864         Make sure to give the tile cache layer sane composited bounds, even if the page has absolutely positioned
1865         elements that are outside of the page.
1866
1867 2012-03-05  Leo Yang  <leo.yang@torchmobile.com.cn>
1868
1869         GraphicsContext3D.h should include RefCounted.h explicitly
1870         https://bugs.webkit.org/show_bug.cgi?id=80251
1871
1872         Reviewed by Rob Buis.
1873
1874         GraphicsContext3D.h was using RefCounted but including RefCounted.h indirectly
1875         through GraphicsLayer.h through Animation.h. However Animation.h is included
1876         by GraphicsLayer.h only when ACCELERATED_COMPOSITING is on. For some configurations
1877         that don't use ACCELERATED_COMPOSITING but use GraphicsContext3D, like the
1878         BlackBerry x86 configuration, the indirect inclusion will fail.
1879
1880         This patch is adding explicit inclusion of RefCounted.h to avoid that kind of
1881         problem.
1882
1883         * platform/graphics/GraphicsContext3D.h:
1884
1885 2012-03-05  Kenichi Ishibashi  <bashi@chromium.org>
1886
1887         [WebSocket] Should raise SYNTAX_ERR when message contains unpaired surrogates
1888         https://bugs.webkit.org/show_bug.cgi?id=80103
1889
1890         Reviewed by Kent Tamura.
1891
1892         Add UTF8 validation checks for WebSocket message and close reason.
1893
1894         Tests: http/tests/websocket/tests/hybi/unpaired-surrogates-in-close-reason.html
1895                http/tests/websocket/tests/hybi/unpaired-surrogates-in-message.html
1896
1897         * Modules/websockets/WebSocket.cpp:
1898         (WebCore::WebSocket::send): Raise SYNTAX_ERR if the message is invalid.
1899         (WebCore::WebSocket::close):Raise SYNTAX_ERR if the reason is invalid.
1900         * Modules/websockets/WebSocketChannel.cpp:
1901         (WebCore::WebSocketChannel::send): Check whether message is a valid UTF8 string.
1902
1903 2012-03-05  Kenneth Russell  <kbr@google.com>
1904
1905         [chromium] Notify CCLayerImpl tree of context loss and restoration
1906         https://bugs.webkit.org/show_bug.cgi?id=80339
1907
1908         Reviewed by James Robinson.
1909
1910         Tested by manually killing GPU process while playing Flash video.
1911         Video continues to play after compositor restores its context.
1912
1913         * platform/graphics/chromium/cc/CCLayerImpl.cpp:
1914         (WebCore::CCLayerImpl::didLoseAndRecreateGraphicsContext):
1915         (WebCore):
1916         * platform/graphics/chromium/cc/CCLayerImpl.h:
1917         (CCLayerImpl):
1918         * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
1919         (WebCore::CCLayerTreeHostImpl::sendContextLostAndRestoredNotification):
1920         (WebCore):
1921         (WebCore::CCLayerTreeHostImpl::sendContextLostAndRestoredNotificationRecursive):
1922         * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
1923         (CCLayerTreeHostImpl):
1924         * platform/graphics/chromium/cc/CCPluginLayerImpl.cpp:
1925         (WebCore::CCPluginLayerImpl::didLoseAndRecreateGraphicsContext):
1926         (WebCore):
1927         * platform/graphics/chromium/cc/CCPluginLayerImpl.h:
1928         (CCPluginLayerImpl):
1929         * platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:
1930         (WebCore::CCSingleThreadProxy::recreateContext):
1931
1932 2012-03-05  Changhun Kang  <temoochin@company100.net>
1933
1934         Change the argument orders to match OpenGL's in GraphicsContext3D functions
1935         https://bugs.webkit.org/show_bug.cgi?id=80120
1936
1937         Reviewed by Kenneth Russell.
1938
1939         No new tests because this patch just change the order of arguments.
1940
1941         * html/canvas/WebGLRenderingContext.cpp:
1942         (WebCore):
1943         (WebCore::WebGLRenderingContext::uniform1fv):
1944         (WebCore::WebGLRenderingContext::uniform1iv):
1945         (WebCore::WebGLRenderingContext::uniform2fv):
1946         (WebCore::WebGLRenderingContext::uniform2iv):
1947         (WebCore::WebGLRenderingContext::uniform3fv):
1948         (WebCore::WebGLRenderingContext::uniform3iv):
1949         (WebCore::WebGLRenderingContext::uniform4fv):
1950         (WebCore::WebGLRenderingContext::uniform4iv):
1951         (WebCore::WebGLRenderingContext::uniformMatrix2fv):
1952         (WebCore::WebGLRenderingContext::uniformMatrix3fv):
1953         (WebCore::WebGLRenderingContext::uniformMatrix4fv):
1954         * platform/graphics/GraphicsContext3D.h:
1955         * platform/graphics/chromium/LayerRendererChromium.cpp:
1956         (WebCore::LayerRendererChromium::drawDebugBorderQuad):
1957         (WebCore::LayerRendererChromium::drawTileQuad):
1958         (WebCore::LayerRendererChromium::drawYUV):
1959         (WebCore::LayerRendererChromium::drawStreamTexture):
1960         (WebCore::LayerRendererChromium::drawTexturedQuad):
1961         * platform/graphics/chromium/cc/CCRenderSurface.cpp:
1962         (WebCore::CCRenderSurface::drawSurface):
1963         * platform/graphics/efl/GraphicsContext3DEfl.cpp:
1964         (WebCore::GraphicsContext3D::uniform1fv):
1965         (WebCore::GraphicsContext3D::uniform1iv):
1966         (WebCore::GraphicsContext3D::uniform2fv):
1967         (WebCore::GraphicsContext3D::uniform2iv):
1968         (WebCore::GraphicsContext3D::uniform3fv):
1969         (WebCore::GraphicsContext3D::uniform3iv):
1970         (WebCore::GraphicsContext3D::uniform4fv):
1971         (WebCore::GraphicsContext3D::uniform4iv):
1972         (WebCore::GraphicsContext3D::uniformMatrix2fv):
1973         (WebCore::GraphicsContext3D::uniformMatrix3fv):
1974         (WebCore::GraphicsContext3D::uniformMatrix4fv):
1975         * platform/graphics/filters/FECustomFilter.cpp:
1976         (WebCore::FECustomFilter::bindProgramAndBuffers):
1977         * platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:
1978         (WebCore::GraphicsContext3D::uniform1fv):
1979         (WebCore::GraphicsContext3D::uniform2fv):
1980         (WebCore::GraphicsContext3D::uniform3fv):
1981         (WebCore::GraphicsContext3D::uniform4fv):
1982         (WebCore::GraphicsContext3D::uniform1iv):
1983         (WebCore::GraphicsContext3D::uniform2iv):
1984         (WebCore::GraphicsContext3D::uniform3iv):
1985         (WebCore::GraphicsContext3D::uniform4iv):
1986         (WebCore::GraphicsContext3D::uniformMatrix2fv):
1987         (WebCore::GraphicsContext3D::uniformMatrix3fv):
1988         (WebCore::GraphicsContext3D::uniformMatrix4fv):
1989         * platform/graphics/qt/GraphicsContext3DQt.cpp:
1990         (WebCore::GraphicsContext3D::uniform1fv):
1991         (WebCore::GraphicsContext3D::uniform2fv):
1992         (WebCore::GraphicsContext3D::uniform3fv):
1993         (WebCore::GraphicsContext3D::uniform4fv):
1994         (WebCore::GraphicsContext3D::uniform1iv):
1995         (WebCore::GraphicsContext3D::uniform2iv):
1996         (WebCore::GraphicsContext3D::uniform3iv):
1997         (WebCore::GraphicsContext3D::uniform4iv):
1998         (WebCore::GraphicsContext3D::uniformMatrix2fv):
1999         (WebCore::GraphicsContext3D::uniformMatrix3fv):
2000         (WebCore::GraphicsContext3D::uniformMatrix4fv):
2001
2002 2012-03-05  Yoshifumi Inoue  <yosin@chromium.org>
2003
2004         [Forms] HTMLFieldSetForms.idl doesn't have name attribute.
2005         https://bugs.webkit.org/show_bug.cgi?id=80108
2006
2007         Reviewed by Hajime Morita.
2008
2009         Test: fast/forms/fieldset/fieldset-name.html
2010
2011         * html/HTMLFieldSetElement.idl: Add "name" attribute.
2012
2013 2012-03-05  Levi Weintraub  <leviw@chromium.org>
2014
2015         Update usage of LayoutUnits in RenderBox
2016         https://bugs.webkit.org/show_bug.cgi?id=80039
2017
2018         Reviewed by Julien Chaffraix.
2019
2020         Updating the usage of integers versus LayoutUnits in RenderBox to mirror the
2021         subpixellayout branch. This reverts absoluteRects, intrinsicSize, and focusRingRects
2022         methods to use integers, and flipForWritingMode functions to LayoutUnits.
2023
2024         No new tests. No change in behavior.
2025
2026         * platform/graphics/FractionalLayoutRect.h:
2027         (WebCore::FractionalLayoutRect::pixelSnappedX): Convenience methods that only calculate
2028         the needed values. This requires less computation than pixelSnappedIntRect(r).x().
2029         (WebCore::FractionalLayoutRect::pixelSnappedY): Ditto.
2030         (WebCore::FractionalLayoutRect::pixelSnappedWidth): Ditto.
2031         (WebCore::FractionalLayoutRect::pixelSnappedHeight): Ditto.
2032         (WebCore::FractionalLayoutRect::pixelSnappedMaxX): Ditto.
2033         (WebCore::FractionalLayoutRect::pixelSnappedMaxY): Ditto.
2034         (FractionalLayoutRect):
2035         * platform/graphics/IntRect.h:
2036         (IntRect):
2037         (WebCore::IntRect::pixelSnappedX): Stub methods to allow us to use IntRects like we do
2038         FractionalLayoutRects.
2039         (WebCore::IntRect::pixelSnappedY): Ditto.
2040         (WebCore::IntRect::pixelSnappedMaxX): Ditto.
2041         (WebCore::IntRect::pixelSnappedMaxY): Ditto.
2042         (WebCore::IntRect::pixelSnappedWidth): Ditto.
2043         (WebCore::IntRect::pixelSnappedHeight): Ditto.
2044         * rendering/LayoutTypes.h:
2045         (WebCore::pixelSnappedIntRect): Convenience method for building a pixelSnappedIntRect from
2046         a LayoutPoint and LayoutSize without constructing an intermediate LayoutRect.
2047         (WebCore):
2048         (WebCore::snapSizeToPixel): Stub method for snapping a LayoutUnit representing a size to
2049         its pixel value using its location.
2050         * rendering/RenderBox.cpp:
2051         (WebCore::RenderBox::pixelSnappedClientWidth): Changing to actually call snapSizeToPixel.
2052         (WebCore::RenderBox::pixelSnappedClientHeight): Ditto.
2053         (WebCore::RenderBox::absoluteRects): Switching to return IntRects that represent the actual
2054         rendered location on screen.
2055         (WebCore::RenderBox::addFocusRingRects): Ditto.
2056         (WebCore::RenderBox::paintFillLayer): One-liner switching an IntSize() to LayoutSize() to
2057         avoid unnecessary conversion.
2058         (WebCore::RenderBox::shrinkLogicalWidthToAvoidFloats): Preparing for the conversion by
2059         replacing 0 with zeroLayoutUnit.
2060         (WebCore::RenderBox::positionLineBox): Preparing for conversion by replacing lroundf
2061         with roundedLayoutUnit.
2062         (WebCore::RenderBox::flipForWritingMode): Switching to use LayoutUnits.
2063         * rendering/RenderBox.h:
2064         (RenderBox):
2065         (WebCore::RenderBox::pixelSnappedBorderBoxRect): Convenience method.
2066         (WebCore::RenderBox::borderBoundingBox): Converting to a pixelSnappedIntRect.
2067         (WebCore::RenderBox::intrinsicSize): Intrinsic sizes should always be integers.
2068
2069 2012-03-05  Adam Barth  <abarth@webkit.org>
2070
2071         WorkerContext shouldn't need to know about SQLDatabase
2072         https://bugs.webkit.org/show_bug.cgi?id=80352
2073
2074         Reviewed by Eric Seidel.
2075
2076         This patch removes the SQLDatabase functions from WorkerContext in
2077         preparation for moving the SQLDatabase code into a module.  These
2078         functions don't interact with the rest of WorkerContext.
2079
2080         * CMakeLists.txt:
2081         * DerivedSources.make:
2082         * DerivedSources.pri:
2083         * GNUmakefile.list.am:
2084         * Target.pri:
2085         * WebCore.gypi:
2086         * WebCore.vcproj/WebCore.vcproj:
2087         * WebCore.xcodeproj/project.pbxproj:
2088         * storage/DOMWindowSQLDatabase.cpp:
2089         * storage/WorkerContextSQLDatabase.cpp: Added.
2090         (WebCore):
2091         (WebCore::WorkerContextSQLDatabase::openDatabase):
2092         (WebCore::WorkerContextSQLDatabase::openDatabaseSync):
2093         * storage/WorkerContextSQLDatabase.h: Added.
2094         (WebCore):
2095         (WorkerContextSQLDatabase):
2096         (WebCore::WorkerContextSQLDatabase::WorkerContextSQLDatabase):
2097         (WebCore::WorkerContextSQLDatabase::~WorkerContextSQLDatabase):
2098         * storage/WorkerContextSQLDatabase.idl: Added.
2099         * workers/WorkerContext.cpp:
2100         (WebCore):
2101         * workers/WorkerContext.h:
2102         (WebCore):
2103         (WorkerContext):
2104         * workers/WorkerContext.idl:
2105
2106 2012-03-05  Kenichi Ishibashi  <bashi@chromium.org>
2107
2108         [WebSocket] Introduce ThreadableWebSocketChannel::SendResult
2109         https://bugs.webkit.org/show_bug.cgi?id=80356
2110
2111         Reviewed by Kent Tamura.
2112
2113         Introduced ThreadableWebSocketChannel::SendResult type so that
2114         WebSocketChannel can pass the validation result.
2115
2116         No new test. No changes in behavior.
2117
2118         * Modules/websockets/ThreadableWebSocketChannel.h: Added SendResult.
2119         * Modules/websockets/ThreadableWebSocketChannelClientWrapper.cpp:
2120         (WebCore::ThreadableWebSocketChannelClientWrapper::ThreadableWebSocketChannelClientWrapper):
2121         (WebCore::ThreadableWebSocketChannelClientWrapper::sendRequestResult): Use ThreadableWebSocketChannel::SendResult instead of bool.
2122         (WebCore::ThreadableWebSocketChannelClientWrapper::setSendRequestResult): Ditto.
2123         * Modules/websockets/ThreadableWebSocketChannelClientWrapper.h:
2124         (ThreadableWebSocketChannelClientWrapper):
2125         * Modules/websockets/WebSocketChannel.cpp:
2126         (WebCore::WebSocketChannel::send): Use ThreadableWebSocketChannel::SendResult instead of bool. Pass Cstring to enqueTextFrame instead of String.
2127         (WebCore::WebSocketChannel::enqueueTextFrame): Ditto.
2128         (WebCore::WebSocketChannel::processOutgoingFrameQueue): Ditto.
2129         * Modules/websockets/WebSocketChannel.h:
2130         (WebSocketChannel):
2131         (QueuedFrame): Changed the type of stringData from String to CString.
2132         * Modules/websockets/WorkerThreadableWebSocketChannel.cpp:
2133         (WebCore::WorkerThreadableWebSocketChannel::send): Use ThreadableWebSocketChannel::SendResult instead of bool.
2134         (WebCore::workerContextDidSend): Ditto.
2135         (WebCore::WorkerThreadableWebSocketChannel::Peer::send): Ditto.
2136         (WebCore::WorkerThreadableWebSocketChannel::Bridge::send): Ditto.
2137         * Modules/websockets/WorkerThreadableWebSocketChannel.h:
2138         (WorkerThreadableWebSocketChannel): ditto.
2139         (Bridge): Ditto.
2140
2141 2012-03-05  Kentaro Hara  <haraken@chromium.org>
2142
2143         [JSC] Cache the CSSPropertyID in JSCSSStyleDeclaration
2144         https://bugs.webkit.org/show_bug.cgi?id=80250
2145
2146         Reviewed by Benjamin Poulain.
2147
2148         V8CSSStyleDeclaration caches the calculated CSSPropertyID.
2149         Similarly, we can implement the cache in JSCSSStyleDeclaration.
2150
2151         In my local Mac environment, this optimization improves the performance
2152         of CSS property getters by 35%, and the performance of CSS property setters
2153         by 8%.
2154
2155         CSS property getter: for (var i = 0; i < 1000000; i++) span.style.fontWeight;
2156         CSS property setter: for (var i = 0; i < 1000000; i++) span.style.fontWeight = "bold";
2157
2158         Tests: fast/dom/CSSStyleDeclaration/* (No change in test results)
2159
2160         * bindings/js/JSCSSStyleDeclarationCustom.cpp:
2161         (CSSPropertyInfo):
2162         (WebCore):
2163         (WebCore::cssPropertyIDForJSCSSPropertyName):
2164         (WebCore::JSCSSStyleDeclaration::nameGetter):
2165         (WebCore::JSCSSStyleDeclaration::putDelegate):
2166
2167 2012-03-05  Joshua Bell  <jsbell@chromium.org>
2168
2169         IndexedDB: Handle LevelDB database corruption
2170         https://bugs.webkit.org/show_bug.cgi?id=79413
2171
2172         Add LevelDBDatabase::destroy() method so that clients can retry if open() fails.
2173
2174         Reviewed by Tony Chang.
2175
2176         Test: webkit_unit_tests --gtest_filter='LevelDBDatabaseTest.CorruptionTest'
2177
2178         * Modules/indexeddb/IDBLevelDBBackingStore.cpp: Implement open/destroy/open strategy.
2179         (WebCore::IDBLevelDBBackingStore::open):
2180         * platform/leveldb/LevelDBDatabase.cpp:
2181         (WebCore::LevelDBDatabase::destroy):
2182         (WebCore):
2183         * platform/leveldb/LevelDBDatabase.h:
2184         (LevelDBDatabase):
2185
2186 2012-03-05  Stephen Chenney  <schenney@chromium.org>
2187
2188         [Chromium] SVG Composite of Offset crashes
2189         https://bugs.webkit.org/show_bug.cgi?id=77245
2190
2191         Reviewed by Stephen White.
2192
2193         The feComposite arithmetic mode filter could readily be made to
2194         generate invalid pre-multiplied pixel values which would then go on to
2195         pollute other filters and cause invalid final output pixels. This
2196         patch checks for filters that require valid inputs, and checks that a
2197         result is valid, and corrects the result if necessary. This matches
2198         the behavior of FF and Opera while preventing crashes or other
2199         undesirable behavior.
2200
2201         Test: svg/filters/feComposite-arithmetic-invalid-rgba.svg
2202
2203         * platform/graphics/filters/FEComposite.h: Override the default validity checks and image cleanup methods.
2204         * platform/graphics/filters/FEComposite.cpp:
2205         (WebCore::FEComposite::correctFilterResultIfNeeded): Force valid pixels if this is an arithmetic filter
2206         * platform/graphics/filters/FilterEffect.cpp:
2207         (WebCore::FilterEffect::apply): Check for validity status and correct
2208         (WebCore::FilterEffect::forceValidPremultipliedPixels): Make an image valid
2209         (WebCore):
2210         * platform/graphics/filters/FilterEffect.h: New virtual methods for image validity.
2211         (FilterEffect):
2212         (WebCore::FilterEffect::requiresValidPreMulultipliedPixels):
2213         (WebCore::FilterEffect::forceValidPremultipliedPixels):
2214         (WebCore::FilterEffect::correctFilterResultIfNeeded):
2215         * rendering/svg/RenderSVGResourceFilter.cpp:
2216         (WebCore::RenderSVGResourceFilter::postApplyResource): Check that the final filter result is valid
2217
2218 2012-03-05  Alexis Menard  <alexis.menard@openbossa.org>
2219
2220         getComputedStyle gives incorrect information for 'height' property
2221         https://bugs.webkit.org/show_bug.cgi?id=33593
2222
2223         Reviewed by David Hyatt.
2224
2225         Make sure that the contentBoxRect doesn't take into account the
2226         intrinsic padding when querying it. As stated by http://www.w3.org/TR/css3-box/#the-lsquo0
2227         the height is the content area which doesn't include the intrinsic padding, the border, and
2228         the padding.
2229
2230         Test: fast/css/getComputedStyle/getComputedStyle-height.html
2231
2232         * css/CSSComputedStyleDeclaration.cpp:
2233         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
2234         * editing/DeleteSelectionCommand.cpp:
2235         (WebCore::DeleteSelectionCommand::removeNode):
2236         * rendering/RenderBox.h:
2237         (WebCore::RenderBox::contentBoxRect):
2238         (WebCore::RenderBox::contentWidth):
2239         (WebCore::RenderBox::contentHeight):
2240         (WebCore::RenderBox::contentLogicalWidth):
2241         (WebCore::RenderBox::contentLogicalHeight):
2242         * rendering/RenderBoxModelObject.cpp:
2243         (WebCore::RenderBoxModelObject::paddingTop):
2244         (WebCore::RenderBoxModelObject::paddingBottom):
2245         (WebCore::RenderBoxModelObject::paddingLeft):
2246         (WebCore::RenderBoxModelObject::paddingRight):
2247         (WebCore::RenderBoxModelObject::paddingBefore):
2248         (WebCore::RenderBoxModelObject::paddingAfter):
2249         (WebCore::RenderBoxModelObject::paddingStart):
2250         (WebCore::RenderBoxModelObject::paddingEnd):
2251         * rendering/RenderBoxModelObject.h:
2252         (RenderBoxModelObject):
2253         * rendering/RenderTableCell.cpp:
2254         (WebCore::RenderTableCell::paddingTop):
2255         (WebCore::RenderTableCell::paddingBottom):
2256         (WebCore::RenderTableCell::paddingLeft):
2257         (WebCore::RenderTableCell::paddingRight):
2258         (WebCore::RenderTableCell::paddingBefore):
2259         (WebCore::RenderTableCell::paddingAfter):
2260         (WebCore::RenderTableCell::cellBaselinePosition):
2261         * rendering/RenderTableCell.h:
2262         (RenderTableCell):
2263         * rendering/RenderTableSection.cpp:
2264         (WebCore::RenderTableSection::firstLineBoxBaseline):
2265
2266 2012-03-05  MORITA Hajime  <morrita@google.com>
2267
2268         https://bugs.webkit.org/show_bug.cgi?id=80257
2269         Lifecycle of InternalSettings should be simplified.
2270
2271         Reviewed by Ryosuke Niwa.
2272
2273         - Moved settings update code to separate restoreTo() method.
2274         - Eliminated flags which indidate the changed field.
2275           Now these modifiable parameters are backed up at the initialization.
2276
2277         No new tests. Refactoring.
2278
2279         * testing/InternalSettings.cpp:
2280         (WebCore::InternalSettings::create):
2281         (WebCore::InternalSettings::InternalSettings):
2282         (WebCore):
2283         (WebCore::InternalSettings::restoreTo):
2284         * testing/InternalSettings.h:
2285         (InternalSettings):
2286         * testing/Internals.cpp:
2287         (WebCore::Internals::reset):
2288
2289 2012-03-05  Anders Carlsson  <andersca@apple.com>
2290
2291         Be more aggressive about repainting page overlays
2292         https://bugs.webkit.org/show_bug.cgi?id=80336
2293         <rdar://problem/10965943>
2294
2295         Reviewed by Simon Fraser.
2296
2297         Add a way to find out if a given GraphicsLayer is going to be repainted.
2298
2299         * WebCore.exp.in:
2300         * platform/graphics/GraphicsLayer.h:
2301         (WebCore::GraphicsLayer::needsDisplay):
2302         (GraphicsLayer):
2303         * platform/graphics/ca/GraphicsLayerCA.h:
2304
2305 2012-03-05  Robin Cao  <robin.cao@torchmobile.com.cn>
2306
2307         [BlackBerry] Upstream LayerRendererSurface.{cpp, h}
2308         https://bugs.webkit.org/show_bug.cgi?id=80122
2309
2310         Reviewed by Rob Buis.
2311
2312         Initial upstream, no new tests.
2313
2314         * PlatformBlackBerry.cmake:
2315         * platform/graphics/blackberry/LayerRendererSurface.cpp: Added.
2316         (WebCore):
2317         (WebCore::LayerRendererSurface::LayerRendererSurface):
2318         (WebCore::LayerRendererSurface::~LayerRendererSurface):
2319         (WebCore::LayerRendererSurface::setContentRect):
2320         (WebCore::LayerRendererSurface::drawRect):
2321         (WebCore::LayerRendererSurface::ensureTexture):
2322         (WebCore::LayerRendererSurface::releaseTexture):
2323         * platform/graphics/blackberry/LayerRendererSurface.h: Added.
2324         (WebCore):
2325         (LayerRendererSurface):
2326         (WebCore::LayerRendererSurface::size):
2327         (WebCore::LayerRendererSurface::contentRect):
2328         (WebCore::LayerRendererSurface::clipRect):
2329         (WebCore::LayerRendererSurface::setClipRect):
2330         (WebCore::LayerRendererSurface::setDrawTransform):
2331         (WebCore::LayerRendererSurface::drawTransform):
2332         (WebCore::LayerRendererSurface::setReplicaDrawTransform):
2333         (WebCore::LayerRendererSurface::replicaDrawTransform):
2334         (WebCore::LayerRendererSurface::texture):
2335         (WebCore::LayerRendererSurface::drawOpacity):
2336         (WebCore::LayerRendererSurface::setDrawOpacity):
2337
2338 2012-03-05  Mihnea Ovidenie  <mihnea@adobe.com>
2339
2340         [CSSRegions][CSSOM]Prevent creation of NamedFlow object for invalid flow name
2341         https://bugs.webkit.org/show_bug.cgi?id=79685
2342
2343         Reviewed by David Hyatt.
2344
2345         Asking for a named flow with an invalid flow name should return a null object.
2346
2347         Test: fast/regions/webkit-named-flow-invalid-name.html
2348
2349         * css/CSSParser.cpp:
2350         (WebCore::CSSParser::parseFlowThread):
2351         (WebCore):
2352         * css/CSSParser.h:
2353         * dom/Document.cpp:
2354         (WebCore::validFlowName):
2355         (WebCore):
2356         (WebCore::Document::webkitGetFlowByName):
2357
2358 2012-03-05  Ryosuke Niwa  <rniwa@webkit.org>
2359
2360         unicode-bidi should support isolate override and override isolate
2361         https://bugs.webkit.org/show_bug.cgi?id=73164
2362
2363         Reviewed by Eric Seidel.
2364
2365         Updated CSS parser and CSS style selector to support the union of bidi-override and isolate in
2366         unicode-bidi property. Added OverrideIsolate to EUnicodeBidi instead of turning Override and Isolate
2367         into bit flags to avoid increasing the number of bits required to store the unicodeBidi flag.
2368
2369         Also fixed a bug in RenderBlock::constructTextRun to actually check whether an isolated run's direction
2370         is overridden or not when constructing one.
2371
2372         Tests: fast/css/unicode-bidi-computed-value.html
2373                fast/text/bidi-override-isolate.html
2374
2375         * css/CSSComputedStyleDeclaration.cpp:
2376         (WebCore::renderUnicodeBidiFlagsToCSSValue): Added; Create a CSSValueList when unicode-bidi has both
2377         isolate and bidi-override specified.
2378         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):  Calls renderUnicodeBidiFlagsToCSSValue.
2379         * css/CSSParser.cpp:
2380         (WebCore::CSSParser::parseValue): Support parsing combinations of -webkit-isolate and bidi-override;
2381         Create a CSSValueList in such cases.
2382         * css/CSSPrimitiveValueMappings.h:
2383         (WebCore):
2384         * css/CSSStyleApplyProperty.cpp:
2385         (ApplyPropertyUnicodeBidi):
2386         (WebCore::ApplyPropertyUnicodeBidi::applyValue): Support combinations of -webkit-isolate and
2387         bidi-override. Set the unicodeBidi flag to OverrideIsolate in such cases.
2388         (WebCore::ApplyPropertyUnicodeBidi::createHandler):
2389         (WebCore):
2390         (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
2391         * html/canvas/CanvasRenderingContext2D.cpp:
2392         (WebCore::CanvasRenderingContext2D::drawTextInternal):
2393         * platform/text/UnicodeBidi.h: Added OverrideIsolate. We don't use bit flags to avoid increasing the
2394         number of bits required to store flags especially because isolate and bidi-override are only values
2395         that can be combined.
2396         (WebCore::isIsolated):
2397         (WebCore):
2398         (WebCore::isOverride):
2399         * rendering/RenderBlock.cpp:
2400         (WebCore::RenderBlock::constructTextRun):
2401         * rendering/RenderBlockLineLayout.cpp:
2402         (WebCore::statusWithDirection): Takes isOverride; we used to assume it's always false.
2403         (WebCore::constructBidiRuns): Instantiate isolatedResolver with a proper value of isOverride.
2404         (WebCore::RenderBlock::layoutRunsAndFloatsInRange):
2405         (WebCore::RenderBlock::determineStartPosition):
2406         * rendering/RenderListBox.cpp:
2407         (WebCore::RenderListBox::paintItemForeground):
2408         * rendering/RenderMenuList.cpp:
2409         (WebCore::RenderMenuList::itemStyle):
2410         (WebCore::RenderMenuList::menuStyle):
2411         * rendering/RenderTextControlSingleLine.cpp:
2412         (WebCore::RenderTextControlSingleLine::menuStyle):
2413         * rendering/svg/SVGTextMetrics.cpp:
2414         (WebCore::SVGTextMetrics::constructTextRun):
2415
2416 2012-03-05  Emil A Eklund  <eae@chromium.org>
2417
2418         Replace uses of x(), y() and width(), height() pairs with locationOffset and size()
2419         https://bugs.webkit.org/show_bug.cgi?id=80196
2420
2421         Reviewed by Julien Chaffraix.
2422
2423         Replace IntSize(x(), y()) with locationOffset()
2424         Replace IntSize(width(), height()) with size()
2425         Replace IntRect(0, 0, width(), height()) with IntRect(IntPoint(), size())
2426         Replace IntRect::move(x(), y()) with IntRect::move(locationOffset())
2427
2428         No new tests.
2429
2430         * html/HTMLCanvasElement.cpp:
2431         (WebCore::HTMLCanvasElement::createImageBuffer):
2432         (WebCore::HTMLCanvasElement::baseTransform):
2433         * rendering/RenderBlock.cpp:
2434         (WebCore::RenderBlock::simplifiedLayout):
2435         * rendering/RenderBox.cpp:
2436         (WebCore::RenderBox::mapLocalToContainer):
2437         (WebCore::RenderBox::computeRectForRepaint):
2438         * rendering/RenderBox.h:
2439         (WebCore::RenderBox::borderBoxRect):
2440         * rendering/RenderDeprecatedFlexibleBox.cpp:
2441         (WebCore::RenderDeprecatedFlexibleBox::layoutBlock):
2442         * rendering/RenderFlexibleBox.cpp:
2443         (WebCore::RenderFlexibleBox::layoutBlock):
2444         * rendering/RenderListMarker.cpp:
2445         (WebCore::RenderListMarker::localSelectionRect):
2446         * rendering/RenderReplaced.cpp:
2447         (WebCore::RenderReplaced::localSelectionRect):
2448         * rendering/RenderScrollbar.cpp:
2449         (WebCore::RenderScrollbar::updateScrollbarParts):
2450         (WebCore::RenderScrollbar::buttonRect):
2451         * rendering/RenderTableSection.cpp:
2452         (WebCore::RenderTableSection::setCellLogicalWidths):
2453         (WebCore::RenderTableSection::layoutRows):
2454         * rendering/RenderView.cpp:
2455         (WebCore::RenderView::viewRect):
2456         * rendering/svg/RenderSVGRoot.cpp:
2457         (WebCore::RenderSVGRoot::layout):
2458
2459 2012-03-05  Anders Carlsson  <andersca@apple.com>
2460
2461         Always update the scroll layer position on the main thread when we have an overlay
2462         https://bugs.webkit.org/show_bug.cgi?id=80324
2463
2464         Reviewed by Sam Weinig.
2465
2466         Add a way to ensure that scroll layer position updates happen on the main thread.
2467
2468         * WebCore.exp.in:
2469         * page/scrolling/ScrollingCoordinator.cpp:
2470         (WebCore::ScrollingCoordinator::ScrollingCoordinator):
2471         (WebCore::ScrollingCoordinator::updateShouldUpdateScrollLayerPositionOnMainThread):
2472         (WebCore):
2473         (WebCore::ScrollingCoordinator::setForceMainThreadScrollLayerPositionUpdates):
2474         * page/scrolling/ScrollingCoordinator.h:
2475         (ScrollingCoordinator):
2476
2477 2012-03-05  Tony Chang  <tony@chromium.org>
2478
2479         Implement flex-wrap: wrap
2480         https://bugs.webkit.org/show_bug.cgi?id=79930
2481
2482         Reviewed by David Hyatt.
2483
2484         Tests: css3/flexbox/multiline-align.html
2485                css3/flexbox/multiline.html
2486
2487         * rendering/RenderBox.cpp:
2488         (WebCore::RenderBox::sizesToIntrinsicLogicalWidth): Don't apply column+stretch optimization to multiline.
2489         * rendering/RenderFlexibleBox.cpp:
2490         (WebCore::RenderFlexibleBox::FlexOrderIterator::FlexOrderIterator):
2491         (WebCore::RenderFlexibleBox::FlexOrderIterator::currentChild): Expose the current child so we can pause
2492         in the middle of iteration and resume later.
2493         (RenderFlexibleBox::FlexOrderIterator):
2494         (WebCore::RenderFlexibleBox::isMultiline):
2495         (WebCore):
2496         (WebCore::RenderFlexibleBox::layoutFlexItems): Loop per line.
2497         (WebCore::RenderFlexibleBox::availableAlignmentSpaceForChild): Use the line space, not the whole container space.
2498         (WebCore::RenderFlexibleBox::computeFlexOrder): Return true for each line.
2499         (WebCore::RenderFlexibleBox::layoutAndPlaceChildren): Use the line offset. Also compute the line height as we go.
2500         (WebCore::RenderFlexibleBox::layoutColumnReverse): Use the line offset.
2501         (WebCore::RenderFlexibleBox::alignChildren): Align based on the line height. For multiline + column, we have to relayout
2502         since the width may change (same as the row case above). We'll have to do something smarter when we implement flex-line-pack.
2503         * rendering/RenderFlexibleBox.h:
2504         (RenderFlexibleBox):
2505
2506 2012-03-05  Ben Vanik  <benvanik@google.com>
2507
2508         Implement WebGL extension EXT_texture_filter_anisotropic
2509         https://bugs.webkit.org/show_bug.cgi?id=79541
2510
2511         This exports the EXT_texture_filter_anisotropic extension with the WEBKIT_ prefix as defined at
2512         https://cvs.khronos.org/svn/repos/registry/trunk/public/webgl/extensions/proposals/EXT_texture_filter_anisotropic/index.html
2513
2514         Reviewed by Kenneth Russell.
2515
2516         Tested with the Khronos conformance test for the extension, available at https://cvs.khronos.org/svn/repos/registry/trunk/public/webgl/sdk/tests/conformance/extensions/ext-texture-filter-anisotropic.html
2517
2518         * CMakeLists.txt:
2519         * DerivedSources.make:
2520         * DerivedSources.pri:
2521         * GNUmakefile.list.am:
2522         * Target.pri:
2523         * WebCore.gypi:
2524         * WebCore.xcodeproj/project.pbxproj:
2525         * bindings/js/JSWebGLRenderingContextCustom.cpp:
2526         (WebCore::toJS):
2527         * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
2528         (WebCore::toV8Object):
2529         * html/canvas/EXTTextureFilterAnisotropic.cpp: Copied from Source/WebCore/html/canvas/WebGLExtension.h.
2530         (WebCore):
2531         (WebCore::EXTTextureFilterAnisotropic::EXTTextureFilterAnisotropic):
2532         (WebCore::EXTTextureFilterAnisotropic::~EXTTextureFilterAnisotropic):
2533         (WebCore::EXTTextureFilterAnisotropic::getName):
2534         (WebCore::EXTTextureFilterAnisotropic::create):
2535         * html/canvas/EXTTextureFilterAnisotropic.h: Copied from Source/WebCore/html/canvas/WebGLExtension.h.
2536         (WebCore):
2537         (EXTTextureFilterAnisotropic):
2538         * html/canvas/EXTTextureFilterAnisotropic.idl: Copied from Source/WebCore/html/canvas/WebGLExtension.h.
2539         * html/canvas/WebGLExtension.h:
2540         * html/canvas/WebGLObject.cpp:
2541         * html/canvas/WebGLRenderingContext.cpp:
2542         (WebCore):
2543         (WebCore::WebGLRenderingContext::getExtension):
2544         (WebCore::WebGLRenderingContext::getParameter):
2545         (WebCore::WebGLRenderingContext::getSupportedExtensions):
2546         (WebCore::WebGLRenderingContext::getTexParameter):
2547         (WebCore::WebGLRenderingContext::texParameter):
2548         * html/canvas/WebGLRenderingContext.h:
2549         (WebCore):
2550         (WebGLRenderingContext):
2551         * platform/graphics/Extensions3D.h:
2552         (Extensions3D):
2553         * platform/graphics/opengl/Extensions3DOpenGL.cpp:
2554         (WebCore::Extensions3DOpenGL::supports):
2555
2556 2012-03-05  Sheriff Bot  <webkit.review.bot@gmail.com>
2557
2558         Unreviewed, rolling out r109760.
2559         http://trac.webkit.org/changeset/109760
2560         https://bugs.webkit.org/show_bug.cgi?id=80320
2561
2562         Caused many GTK+ tests to crash (Requested by mrobinson on
2563         #webkit).
2564
2565         * platform/network/ResourceHandleClient.h:
2566         * platform/network/soup/ResourceHandleSoup.cpp:
2567         (WebCoreSynchronousLoader):
2568         (WebCore::WebCoreSynchronousLoader::WebCoreSynchronousLoader):
2569         (WebCore):
2570         (WebCore::WebCoreSynchronousLoader::~WebCoreSynchronousLoader):
2571         (WebCore::WebCoreSynchronousLoader::didReceiveResponse):
2572         (WebCore::WebCoreSynchronousLoader::didReceiveData):
2573         (WebCore::WebCoreSynchronousLoader::didFinishLoading):
2574         (WebCore::WebCoreSynchronousLoader::didFail):
2575         (WebCore::WebCoreSynchronousLoader::run):
2576         (WebCore::closeCallback):
2577         (WebCore::readCallback):
2578         (WebCore::ResourceHandle::defaultSession):
2579
2580 2012-03-05  Adam Klein  <adamk@chromium.org>
2581
2582         Never dispatch mutation events in shadow DOM
2583         https://bugs.webkit.org/show_bug.cgi?id=79278
2584
2585         Reviewed by Ryosuke Niwa.
2586
2587         Test: fast/dom/shadow/suppress-mutation-events-in-shadow.html
2588
2589         * dom/ContainerNode.cpp:
2590         (WebCore::ContainerNode::removeChildren): Move allowEventDispatch() call later,
2591         now that childrenChanged won't trigger mutation events in shadow dom.
2592         (WebCore::dispatchChildInsertionEvents): Bail out if in shadow tree.
2593         (WebCore::dispatchChildRemovalEvents): ditto.
2594         * dom/Node.cpp:
2595         (WebCore::Node::dispatchSubtreeModifiedEvent): ditto.
2596
2597 2012-03-05  Alexey Proskuryakov  <ap@apple.com>
2598
2599         BlobResourceHandle should keep a reference to itself when calling client code.
2600         https://bugs.webkit.org/show_bug.cgi?id=80318
2601
2602         Reviewed by Brady Eidson.
2603
2604         * platform/network/BlobResourceHandle.cpp:
2605         (WebCore::BlobResourceHandle::doStart):
2606         (WebCore::BlobResourceHandle::getSizeForNext):
2607         (WebCore::BlobResourceHandle::readSync):
2608         (WebCore::BlobResourceHandle::readDataAsync):
2609         (WebCore::BlobResourceHandle::consumeData):
2610         (WebCore::BlobResourceHandle::failed):
2611         Added RefPtrs in functions that can result in calling client code, and use "this" object afterwards.
2612
2613 2012-03-05  Anders Carlsson  <andersca@apple.com>
2614
2615         Let RenderLayerCompositor set the tile cache visible rect
2616         https://bugs.webkit.org/show_bug.cgi?id=80317
2617
2618         Reviewed by Simon Fraser.
2619
2620         We can't compute the visible rect from CALayers, because that breaks when we're updating
2621         the scroll layer position on the main thread (since by the time visibleRectChanged() is called,
2622         the CALayers won't yet have been updated).
2623
2624         * platform/graphics/GraphicsLayer.h:
2625         (WebCore::GraphicsLayer::visibleRectChanged):
2626         * platform/graphics/ca/GraphicsLayerCA.cpp:
2627         (WebCore::GraphicsLayerCA::visibleRectChanged):
2628         * platform/graphics/ca/GraphicsLayerCA.h:
2629         (GraphicsLayerCA):
2630         * platform/graphics/ca/PlatformCALayer.h:
2631         (PlatformCALayer):
2632         * platform/graphics/ca/mac/PlatformCALayerMac.mm:
2633         (PlatformCALayer::visibleRectChanged):
2634         * platform/graphics/ca/mac/TileCache.h:
2635         (TileCache):
2636         * platform/graphics/ca/mac/TileCache.mm:
2637         (WebCore::TileCache::visibleRectChanged):
2638         (WebCore::TileCache::revalidateTiles):
2639         * platform/graphics/ca/mac/WebTileCacheLayer.h:
2640         (WebCore):
2641         * platform/graphics/ca/mac/WebTileCacheLayer.mm:
2642         (-[WebTileCacheLayer visibleRectChanged:]):
2643         * platform/graphics/ca/win/PlatformCALayerWin.cpp:
2644         (PlatformCALayer::visibleRectChanged):
2645         * rendering/RenderLayerCompositor.cpp:
2646         (WebCore::RenderLayerCompositor::frameViewDidScroll):
2647
2648 2012-03-05  Kangil Han  <kangil.han@samsung.com>
2649
2650         [CMake][DRT] Add WebCoreTestSupport.
2651         https://bugs.webkit.org/show_bug.cgi?id=79896
2652
2653         Reviewed by Daniel Bates.
2654
2655         Add WebCoreTestSupport library for DRT in CMake.
2656         We will use internals object by linking this library on DRT.
2657
2658         * CMakeLists.txt:
2659         * UseJSC.cmake:
2660         * UseV8.cmake:
2661
2662 2012-03-05  Sheriff Bot  <webkit.review.bot@gmail.com>
2663
2664         Unreviewed, rolling out r109656.
2665         http://trac.webkit.org/changeset/109656
2666         https://bugs.webkit.org/show_bug.cgi?id=80316
2667
2668         This seems to have regressed Parser/html5-full-render by about
2669         10% (Requested by anttik on #webkit).
2670
2671         * css/CSSComputedStyleDeclaration.cpp:
2672         (WebCore::getPositionOffsetValue):
2673         (WebCore::getBorderRadiusCornerValues):
2674         (WebCore::getBorderRadiusCornerValue):
2675         (WebCore::getBorderRadiusShorthandValue):
2676         (WebCore::lineHeightFromStyle):
2677         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
2678         * css/CSSGrammar.y:
2679         * css/CSSParser.cpp:
2680         (WebCore::CSSParser::validUnit):
2681         (WebCore::CSSParser::createPrimitiveNumericValue):
2682         (WebCore::unitFromString):
2683         (WebCore::CSSParser::parseValidPrimitive):
2684         (WebCore::CSSParser::detectNumberToken):
2685         * css/CSSPrimitiveValue.cpp:
2686         (WebCore::isValidCSSUnitTypeForDoubleConversion):
2687         (WebCore::unitCategory):
2688         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
2689         (WebCore::CSSPrimitiveValue::canonicalUnitTypeForCategory):
2690         (WebCore::CSSPrimitiveValue::customCssText):
2691         * css/CSSPrimitiveValue.h:
2692         (CSSPrimitiveValue):
2693         * css/CSSPrimitiveValue.idl:
2694         * css/CSSStyleApplyProperty.cpp:
2695         (WebCore::ApplyPropertyLength::applyValue):
2696         (WebCore::ApplyPropertyBorderRadius::applyValue):
2697         (WebCore::ApplyPropertyFontSize::applyValue):
2698         (WebCore::ApplyPropertyLineHeight::applyValue):
2699         (WebCore::ApplyPropertyVerticalAlign::applyValue):
2700         * css/CSSStyleSelector.cpp:
2701         (WebCore::CSSStyleSelector::collectMatchingRulesForList):
2702         * dom/Document.cpp:
2703         (WebCore::Document::pageSizeAndMarginsInPixels):
2704         (WebCore):
2705         * dom/Document.h:
2706         (Document):
2707         * html/HTMLAreaElement.cpp:
2708         (WebCore::HTMLAreaElement::getRegion):
2709         * platform/Length.h:
2710         (WebCore::Length::calcValue):
2711         (WebCore::Length::calcMinValue):
2712         (WebCore::Length::calcFloatValue):
2713         (WebCore::Length::blend):
2714         * rendering/RenderBR.cpp:
2715         (WebCore::RenderBR::lineHeight):
2716         * rendering/RenderBlock.cpp:
2717         (WebCore::RenderBlock::lineHeight):
2718         * rendering/RenderBox.cpp:
2719         (WebCore::RenderBox::reflectionOffset):
2720         (WebCore::RenderBox::paintBoxDecorations):
2721         (WebCore::RenderBox::clipRect):
2722         (WebCore::RenderBox::computeLogicalWidthInRegion):
2723         (WebCore::RenderBox::computeLogicalWidthInRegionUsing):
2724         (WebCore::RenderBox::computeInlineDirectionMargins):
2725         (WebCore::RenderBox::computeLogicalHeightUsing):
2726         (WebCore::RenderBox::computePercentageLogicalHeight):
2727         (WebCore::RenderBox::computeReplacedLogicalHeightUsing):
2728         (WebCore::RenderBox::computeBlockDirectionMargins):
2729         (WebCore::RenderBox::computePositionedLogicalWidthUsing):
2730         (WebCore::RenderBox::computePositionedLogicalHeightUsing):
2731         (WebCore::RenderBox::computePositionedLogicalWidthReplaced):
2732         (WebCore::RenderBox::computePositionedLogicalHeightReplaced):
2733         * rendering/RenderBoxModelObject.cpp:
2734         (WebCore::RenderBoxModelObject::relativePositionOffsetX):
2735         (WebCore::RenderBoxModelObject::relativePositionOffsetY):
2736         (WebCore::RenderBoxModelObject::paddingTop):
2737         (WebCore::RenderBoxModelObject::paddingBottom):
2738         (WebCore::RenderBoxModelObject::paddingLeft):
2739         (WebCore::RenderBoxModelObject::paddingRight):
2740         (WebCore::RenderBoxModelObject::paddingBefore):
2741         (WebCore::RenderBoxModelObject::paddingAfter):
2742         (WebCore::RenderBoxModelObject::paddingStart):
2743         (WebCore::RenderBoxModelObject::paddingEnd):
2744         (WebCore::RenderBoxModelObject::getBackgroundRoundedRect):
2745         (WebCore::RenderBoxModelObject::calculateFillTileSize):
2746         (WebCore::RenderBoxModelObject::calculateBackgroundImageGeometry):
2747         (WebCore::computeBorderImageSide):
2748         (WebCore::RenderBoxModelObject::paintNinePieceImage):
2749         (WebCore::RenderBoxModelObject::paintBorder):
2750         (WebCore::RenderBoxModelObject::paintBoxShadow):
2751         * rendering/RenderFlexibleBox.cpp:
2752         (WebCore::RenderFlexibleBox::preferredMainAxisContentExtentForChild):
2753         (WebCore::RenderFlexibleBox::computeMainAxisPreferredSizes):
2754         (WebCore::RenderFlexibleBox::runFreeSpaceAllocationAlgorithm):
2755         * rendering/RenderInline.cpp:
2756         (WebCore::computeMargin):
2757         (WebCore::RenderInline::lineHeight):
2758         * rendering/RenderMenuList.cpp:
2759         (WebCore::RenderMenuList::updateOptionsWidth):
2760         * rendering/RenderObject.cpp:
2761         (WebCore::RenderObject::repaintAfterLayoutIfNeeded):
2762         * rendering/RenderObject.h:
2763         (RenderObject):
2764         * rendering/RenderReplaced.cpp:
2765         (WebCore::RenderReplaced::paint):
2766         * rendering/RenderScrollbarPart.cpp:
2767         (WebCore::calcScrollbarThicknessUsing):
2768         (WebCore::RenderScrollbarPart::computeScrollbarWidth):
2769         (WebCore::RenderScrollbarPart::computeScrollbarHeight):
2770         * rendering/RenderTable.cpp:
2771         (WebCore::RenderTable::computeLogicalWidth):
2772         (WebCore::RenderTable::convertStyleLogicalWidthToComputedWidth):
2773         * rendering/RenderTableCell.cpp:
2774         (WebCore::RenderTableCell::logicalHeightForRowSizing):
2775         * rendering/RenderTableSection.cpp:
2776         (WebCore::RenderTableSection::calcRowLogicalHeight):
2777         * rendering/RenderText.h:
2778         (WebCore::RenderText::marginLeft):
2779         (WebCore::RenderText::marginRight):
2780         * rendering/RenderThemeMac.mm:
2781         (WebCore::RenderThemeMac::paintMenuListButtonGradients):
2782         * rendering/RenderWidget.cpp:
2783         (WebCore::RenderWidget::paint):
2784         * rendering/RootInlineBox.cpp:
2785         (WebCore::RootInlineBox::verticalPositionForBox):
2786         * rendering/style/RenderStyle.cpp:
2787         (WebCore::calcRadiiFor):
2788         (WebCore::RenderStyle::getRoundedBorderFor):
2789         * rendering/style/RenderStyle.h:
2790         * rendering/svg/RenderSVGRoot.cpp:
2791         (WebCore::resolveLengthAttributeForSVG):
2792         (WebCore::RenderSVGRoot::computeReplacedLogicalWidth):
2793         (WebCore::RenderSVGRoot::computeReplacedLogicalHeight):
2794
2795 2012-03-05  Rob Buis  <rbuis@rim.com>
2796
2797         [BlackBerry] Add missing method to PasteboardBlackBerry.cpp
2798         https://bugs.webkit.org/show_bug.cgi?id=80326
2799
2800         Reviewed by Antonio Gomes.
2801
2802         Add missing method.
2803
2804         * platform/blackberry/PasteboardBlackBerry.cpp:
2805         (WebCore::Pasteboard::writeClipboard):
2806         (WebCore):
2807
2808 2012-03-05  Rob Buis  <rbuis@rim.com>
2809
2810         [BlackBerry] UTF chars printed back from cookie through php shows as ???
2811         https://bugs.webkit.org/show_bug.cgi?id=80307
2812
2813         Reviewed by Antonio Gomes.
2814
2815         PR: 130055
2816
2817         we need to check the cookies encoding first and encode the cookie header data
2818         to pass to the request.
2819
2820         * platform/network/blackberry/NetworkManager.cpp:
2821         (WebCore::NetworkManager::startJob):
2822
2823 2012-03-05  Dana Jansens  <danakj@chromium.org>
2824
2825         [chromium] Remove old cleanupResources() code
2826         https://bugs.webkit.org/show_bug.cgi?id=80290
2827
2828         Reviewed by Adrienne Walker.
2829
2830         cleanupResources() is only called by destructors, and adds no
2831         value, any more, beyond the destructors themselves, but complicates
2832         the code path.
2833
2834         Covered by existing tests.
2835
2836         * platform/graphics/chromium/cc/CCLayerImpl.cpp:
2837         * platform/graphics/chromium/cc/CCLayerImpl.h:
2838         (CCLayerImpl):
2839         * platform/graphics/chromium/cc/CCPluginLayerImpl.cpp:
2840         (WebCore::CCPluginLayerImpl::~CCPluginLayerImpl):
2841         * platform/graphics/chromium/cc/CCPluginLayerImpl.h:
2842         * platform/graphics/chromium/cc/CCRenderSurface.cpp:
2843         (WebCore::CCRenderSurface::~CCRenderSurface):
2844         * platform/graphics/chromium/cc/CCRenderSurface.h:
2845         (CCRenderSurface):
2846         * platform/graphics/chromium/cc/CCVideoLayerImpl.cpp:
2847         (WebCore::CCVideoLayerImpl::~CCVideoLayerImpl):
2848
2849 2012-03-05  Sami Kyostila  <skyostil@chromium.org>
2850
2851         Partially loaded JPEGs should have alpha channel
2852         https://bugs.webkit.org/show_bug.cgi?id=78239
2853
2854         Reviewed by Kenneth Russell.
2855
2856         While a JPEG image is loading, the area outside the decoded region
2857         should be fully transparent. Since currently all JPEG frames are marked
2858         as opaque, a renderer respecting this flag will draw the partially
2859         loaded image with garbage outside the valid image region.
2860
2861         Hence, a partially loaded JPEG image should be marked as having an alpha
2862         channel while decoding is in progress. For performance reasons we mark
2863         the image opaque after decoding has finished.
2864
2865         Graphics corruption caused by this bug was recently observed on
2866         Chromium (http://code.google.com/p/chromium/issues/detail?id=113171). A
2867         recent Skia change (r3036) changed SkBitmap::extractSubset() to produce
2868         a bitmap with the same opaqueness flag as the parent. This meant that
2869         the renderer was now seeing an opaque image from the JPEG decoder, and
2870         drawing it appropriately resulted in garbage outside the decoded region.
2871
2872         Test: http/tests/incremental/partial-jpeg.html
2873
2874         * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
2875         (WebCore::JPEGImageDecoder::outputScanlines):
2876         (WebCore::JPEGImageDecoder::jpegComplete):
2877
2878 2012-03-05  James Robinson  <jamesr@chromium.org>
2879
2880         [chromium] Initialize CCOverdrawCounts struct to zero
2881         https://bugs.webkit.org/show_bug.cgi?id=80204
2882
2883         Reviewed by Adrienne Walker.
2884
2885         CCOverdrawCounts is stack allocated but not explicitly initialized, so the values are garbage. This adds a c'tor
2886         to zero out the fields, which is the desired behavior.  Bug was initially caught by valgrind, see
2887         http://crbug.com/116475
2888
2889         * platform/graphics/chromium/cc/CCRenderPass.h:
2890         (WebCore::CCOverdrawCounts::CCOverdrawCounts):
2891
2892 2012-03-05  Min Qin  <qinmin@google.com>
2893
2894         Add media control css for chromium on android
2895         https://bugs.webkit.org/show_bug.cgi?id=79550
2896
2897         Reviewed by Adam Barth.
2898
2899         This should not change the any test results as it does not affect the any current bots. New test expectations will be added if we have a android bot on webkit.
2900
2901         * WebCore.gyp/WebCore.gyp:
2902         * css/mediaControlsChromiumAndroid.css: Added.
2903         (body:-webkit-full-page-media):
2904         (audio):
2905         (audio:-webkit-full-page-media, video:-webkit-full-page-media):
2906         (audio::-webkit-media-controls-panel, video::-webkit-media-controls-panel):
2907         (video:-webkit-full-page-media::-webkit-media-controls-panel):
2908         (audio::-webkit-media-controls-mute-button, video::-webkit-media-controls-mute-button):
2909         (audio::-webkit-media-controls-play-button, video::-webkit-media-controls-play-button):
2910         (audio::-webkit-media-controls-timeline-container):
2911         (video::-webkit-media-controls-timeline-container):
2912         (audio::-webkit-media-controls-current-time-display, video::-webkit-media-controls-current-time-display):
2913         (audio::-webkit-media-controls-timeline, video::-webkit-media-controls-timeline):
2914         (video::-webkit-media-controls-fullscreen-button):
2915         (audio::-webkit-media-controls-fullscreen-button):
2916         (audio::-webkit-media-controls-volume-slider-container, video::-webkit-media-controls-volume-slider-container):
2917         (audio::-webkit-media-controls-volume-slider, video::-webkit-media-controls-volume-slider):
2918         * rendering/RenderMediaControlsChromium.cpp:
2919         (WebCore::paintMediaFullscreenButton):
2920         (WebCore):
2921         (WebCore::RenderMediaControlsChromium::paintMediaControlsPart):
2922         * rendering/RenderThemeChromiumAndroid.cpp:
2923         (WebCore::RenderThemeChromiumAndroid::extraMediaControlsStyleSheet):
2924         (WebCore):
2925         (WebCore::RenderThemeChromiumAndroid::paintMediaFullscreenButton):
2926         * rendering/RenderThemeChromiumAndroid.h:
2927
2928 2012-03-05  Anders Carlsson  <andersca@apple.com>
2929
2930         Fix crash in ScrollingCoordinator::updateMainFrameScrollPositionAndScrollLayerPosition
2931         https://bugs.webkit.org/show_bug.cgi?id=80303
2932         <rdar://problem/10953682>
2933
2934         Reviewed by Beth Dakin.
2935
2936         Add the same null checks that already exist in updateMainFrameScrollPosition.
2937
2938         * page/scrolling/ScrollingCoordinator.cpp:
2939         (WebCore::ScrollingCoordinator::updateMainFrameScrollPositionAndScrollLayerPosition):
2940
2941 2012-03-05  Alexander Pavlov  <apavlov@chromium.org>
2942
2943         Web Inspector: CSS inactive property check should account for vendor prefixes
2944         https://bugs.webkit.org/show_bug.cgi?id=80225
2945
2946         Reviewed by Pavel Feldman.
2947
2948         Test: inspector/styles/vendor-prefixes.html
2949
2950         * inspector/InspectorStyleSheet.cpp:
2951         (WebCore::InspectorStyle::populateObjectWithStyleProperties):
2952         * inspector/front-end/StylesSidebarPane.js:
2953         (WebInspector.StylesSidebarPane.alteredHexNumber):
2954         (WebInspector.StylesSidebarPane.canonicalPropertyName):
2955         (WebInspector.StylesSidebarPane.prototype._markUsedProperties):
2956         (WebInspector.StylePropertiesSection.prototype.isPropertyOverloaded):
2957
2958 2012-03-05  Adam Barth  <abarth@webkit.org>
2959
2960         Geolocation should use a ScriptExecutionContext as its context object
2961         https://bugs.webkit.org/show_bug.cgi?id=80248
2962
2963         Reviewed by Kentaro Hara.
2964
2965         This patch updates Geolocation to use some more modern WebCore
2966         mechanisms.  Previously, Geolocation used a Frame as a context object,
2967         which required a bunch of manual integration with the PageCache as well
2968         as custom signaling for Geolocation::reset().  After this patch,
2969         Geolocation subclasses ActiveDOMObject, which does all this work
2970         automatically.
2971
2972         * Modules/geolocation/Geolocation.cpp:
2973         (WebCore::Geolocation::create):
2974         (WebCore):
2975         (WebCore::Geolocation::Geolocation):
2976         (WebCore::Geolocation::~Geolocation):
2977         (WebCore::Geolocation::document):
2978         (WebCore::Geolocation::frame):
2979         (WebCore::Geolocation::page):
2980         (WebCore::Geolocation::stop):
2981         (WebCore::Geolocation::getCurrentPosition):
2982         (WebCore::Geolocation::watchPosition):
2983         (WebCore::Geolocation::requestPermission):
2984         (WebCore::Geolocation::clearWatch):
2985         (WebCore::Geolocation::setIsAllowed):
2986         * Modules/geolocation/Geolocation.h:
2987         (WebCore):
2988         (Geolocation):
2989         * Modules/geolocation/NavigatorGeolocation.cpp:
2990         (WebCore):
2991         (WebCore::NavigatorGeolocation::geolocation):
2992         * Modules/geolocation/NavigatorGeolocation.h:
2993         (NavigatorGeolocation):
2994         * dom/Document.cpp:
2995         (WebCore::Document::Document):
2996         * dom/Document.h:
2997         (Document):
2998         * history/PageCache.cpp:
2999         (WebCore::logCanCacheFrameDecision):
3000         (WebCore::PageCache::canCachePageContainingThisFrame):
3001
3002 2012-03-05  Martin Robinson  <mrobinson@igalia.com>
3003
3004         [soup] Crash while loading http://www.jusco.cn
3005         https://bugs.webkit.org/show_bug.cgi?id=68238
3006
3007         Reviewed by Philippe Normand.
3008
3009         Test: http/tests/xmlhttprequest/xmlhttprequest-sync-no-timers.html
3010
3011         When running synchronous XMLHttpRequests, push a new inner thread default
3012         context, so that other sources from timers and network activity do not run.
3013         This will make synchronous requests truly synchronous with the rest of
3014         WebCore.
3015
3016         * platform/network/soup/ResourceHandleSoup.cpp:
3017         (WebCoreSynchronousLoader): Clean up the method definitions a bit by writing them inline.
3018         (WebCore::WebCoreSynchronousLoader::WebCoreSynchronousLoader): Push a new thread default
3019         context to prevent other sources from running.
3020         (WebCore::WebCoreSynchronousLoader::~WebCoreSynchronousLoader): Pop the inner thread default context.
3021         (WebCore::closeCallback): If the client is synchronous call didFinishLoading now.
3022         (WebCore::readCallback): Only call didFinishLoading if the client isn't synchronous.
3023         (WebCore::ResourceHandle::defaultSession): Activate use-thread-context so that the soup session
3024         respects the inner thread context.
3025         (ResourceHandleClient):
3026         (WebCore::ResourceHandleClient::isSynchronousClient): Added this virtual method.
3027
3028 2012-03-05  Alexander Færøy  <alexander.faeroy@nokia.com>
3029
3030         Remove pointer to timer and use the timers directly in the tiled backing store
3031         https://bugs.webkit.org/show_bug.cgi?id=80283
3032
3033         Patch by Kenneth Rohde Christiansen and Alexander Færøy.
3034
3035         Reviewed by Simon Hausmann.
3036
3037         * platform/graphics/TiledBackingStore.cpp:
3038         (WebCore::TiledBackingStore::TiledBackingStore):
3039         (WebCore::TiledBackingStore::~TiledBackingStore):
3040         (WebCore::TiledBackingStore::createTiles):
3041         (WebCore::TiledBackingStore::startTileBufferUpdateTimer):
3042         (WebCore::TiledBackingStore::startTileCreationTimer):
3043         * platform/graphics/TiledBackingStore.h:
3044         (TiledBackingStore):
3045
3046 2012-03-05  Alexander Pavlov  <apavlov@chromium.org>
3047
3048         Web Inspector: [Styles] Tabbing an empty new property in the middle of style moves the editor to the next section
3049         https://bugs.webkit.org/show_bug.cgi?id=80264
3050
3051         Reviewed by Pavel Feldman.
3052
3053         * inspector/front-end/StylesSidebarPane.js:
3054         (WebInspector.StylePropertyTreeElement.prototype.element.userInput.previousContent.context.moveDirection.alreadyNew):
3055         (WebInspector.StylePropertyTreeElement.prototype):
3056
3057 2012-03-05  Rob Buis  <rbuis@rim.com>
3058
3059         [BlackBerry] Update LocalizedStringsBlackBerry.cpp
3060         https://bugs.webkit.org/show_bug.cgi?id=80278
3061
3062         Reviewed by Antonio Gomes.
3063
3064         Update LocalizedStringsBlackBerry.cpp to current HEAD.
3065
3066         * platform/blackberry/LocalizedStringsBlackBerry.cpp:
3067         (WebCore::inputElementAltText): fall back to "Submit".
3068         (WebCore::imageTitle): choose the format "filename(widthxheight)" like Chrome does.
3069         (WebCore::fileButtonNoFilesSelectedLabel): fall back to "No File Chosen" translation like Chrome does.
3070         (WebCore):
3071
3072 2012-03-05  Ilya Tikhonovsky  <loislo@chromium.org>
3073
3074         Web Inspector: [chromium] introduce HeapSnapshot performance test.
3075         https://bugs.webkit.org/show_bug.cgi?id=80280
3076
3077         Reviewed by Pavel Feldman.
3078
3079         * inspector/front-end/HeapSnapshotProxy.js:
3080         (WebInspector.HeapSnapshotLoaderProxy.prototype.finishLoading.updateStaticData):
3081         (WebInspector.HeapSnapshotLoaderProxy.prototype.finishLoading):
3082         (WebInspector.HeapSnapshotLoaderProxy.prototype._callLoadCallbacks):
3083
3084 2012-03-05  Pavel Feldman  <pfeldman@chromium.org>
3085
3086         Web Inspector: cannot be launched when localStorage is disabled
3087         https://bugs.webkit.org/show_bug.cgi?id=80252
3088
3089         Reviewed by Vsevolod Vlasov.
3090
3091         * inspector/front-end/Settings.js:
3092
3093 2012-03-05  Pavel Feldman  <pfeldman@chromium.org>
3094
3095         Web Inspector: check for the number of parsed css properties.
3096         https://bugs.webkit.org/show_bug.cgi?id=80268
3097
3098         Reviewed by Vsevolod Vlasov.
3099
3100         Test: inspector/styles/set-property-boundaries.html
3101
3102         * inspector/InspectorCSSAgent.cpp:
3103         (WebCore::InspectorCSSAgent::didRemoveDOMNode):
3104         * inspector/InspectorStyleSheet.cpp:
3105         (WebCore::InspectorStyle::setPropertyText):
3106
3107 2012-03-05  Vsevolod Vlasov  <vsevik@chromium.org>
3108
3109         Web Inspector: Tabbed pane should redraw tab elements when tab is closed.
3110         https://bugs.webkit.org/show_bug.cgi?id=80273
3111
3112         Reviewed by Pavel Feldman.
3113
3114         * inspector/front-end/TabbedPane.js:
3115         (WebInspector.TabbedPane.prototype.closeTab):
3116
3117 2012-03-05  Alexander Færøy  <alexander.faeroy@nokia.com>
3118
3119         Improve comments in the tiled backing store
3120         https://bugs.webkit.org/show_bug.cgi?id=80279
3121
3122         Patch by Kenneth Rohde Christiansen and Alexander Færøy.
3123
3124         Reviewed by Simon Hausmann.
3125
3126         * platform/graphics/TiledBackingStore.cpp:
3127         (WebCore::TiledBackingStore::createTiles):
3128
3129 2012-03-05  Alexander Færøy  <alexander.faeroy@nokia.com>
3130
3131         TiledBackingStore.{h,cpp} contains unclear variable names
3132         https://bugs.webkit.org/show_bug.cgi?id=80276
3133
3134         Patch by Kenneth Rohde Christiansen and Alexander Færøy.
3135
3136         Reviewed by Simon Hausmann.
3137
3138         This patch renames some of the variables in TiledBackingStore.cpp to
3139         enhance the clearity and for consistence.
3140
3141         The visibleContentsRect is renamed to visibleRect as it is not in
3142         contents coordinates.
3143
3144         The panningTrajectoryVector and m_visibleRectTrajectoryVector are
3145         renamed to just *[m_]trajectoryVector, as that is descriptive enough.
3146
3147         The previous prefix has also been removed, as it is being used as the
3148         current one in the code. This avoids confusion.
3149
3150         * platform/graphics/TiledBackingStore.cpp:
3151         (WebCore::TiledBackingStore::coverWithTilesIfNeeded):
3152         (WebCore::TiledBackingStore::visibleRect):
3153         (WebCore::TiledBackingStore::visibleAreaIsCovered):
3154         (WebCore::TiledBackingStore::createTiles):
3155         (WebCore::TiledBackingStore::computeCoverAndKeepRect):
3156         (WebCore::TiledBackingStore::removeAllNonVisibleTiles):
3157         * platform/graphics/TiledBackingStore.h:
3158         (TiledBackingStore):
3159
3160 2012-03-05  Simon Hausmann  <simon.hausmann@nokia.com>
3161
3162         [Qt] Fix build with Qt 5 and OpenGL ES 2.0
3163
3164         Reviewed by Noam Rosenthal.
3165
3166         * platform/graphics/texmap/TextureMapper.h: Since we don't do QT += opengl with Qt 5 anymore
3167         here in WebCore, we cannot check for QT_OPENGL_LIB. But since this is Qt5, we know that the
3168         GLES setting comes qconfig.h and we can rely on it.
3169
3170 2012-03-05  Alexander Færøy  <alexander.faeroy@nokia.com>
3171
3172         Whitespace clean-up of TiledBackingStore.cpp.
3173
3174         Rubber-stamped by Kenneth Rohde Christiansen.
3175
3176         Already covered by existing tests.
3177
3178         * platform/graphics/TiledBackingStore.cpp:
3179         (WebCore):
3180         (WebCore::TiledBackingStore::updateTileBuffers):
3181         (WebCore::TiledBackingStore::paint):
3182
3183 2012-03-05  Carlos Garcia Campos  <cgarcia@igalia.com>
3184
3185         Unreviewed. Fix make distcheck.
3186
3187         * GNUmakefile.list.am: Add missing header file.
3188
3189 2012-03-05  Alexander Pavlov  <apavlov@chromium.org>
3190
3191         Web Inspector: Incorrect appropriateSelectorFor() suggestion for when a DOMNode has more than 2 CSS classes
3192         https://bugs.webkit.org/show_bug.cgi?id=80258
3193
3194         Reviewed by Pavel Feldman.
3195
3196         * inspector/front-end/DOMAgent.js:
3197         (WebInspector.DOMNode.prototype.appropriateSelectorFor):
3198
3199 2012-03-02  Alexander Pavlov  <apavlov@chromium.org>
3200
3201         Web Inspector: [Styles] [CRASH] Handle rule addition and inline style editing failure due to Content-Security-Policy in the page
3202         https://bugs.webkit.org/show_bug.cgi?id=80024
3203
3204         Reviewed by Pavel Feldman.
3205
3206         Test: inspector/styles/add-new-rule-inline-style-csp.html
3207
3208         * inspector/InspectorCSSAgent.cpp:
3209         (WebCore::InspectorCSSAgent::viaInspectorStyleSheet):
3210         * inspector/InspectorCSSAgent.h:
3211         (InlineStyleOverrideScope):
3212         (WebCore::InspectorCSSAgent::InlineStyleOverrideScope::InlineStyleOverrideScope):
3213         (WebCore::InspectorCSSAgent::InlineStyleOverrideScope::~InlineStyleOverrideScope):
3214         (InspectorCSSAgent):
3215         * inspector/InspectorStyleSheet.cpp:
3216         (WebCore::InspectorStyleSheetForInlineStyle::setStyleText):
3217         * page/ContentSecurityPolicy.cpp:
3218         (WebCore::ContentSecurityPolicy::ContentSecurityPolicy):
3219         (WebCore::ContentSecurityPolicy::allowInlineStyle):
3220         (WebCore::ContentSecurityPolicy::setOverrideAllowInlineStyle):
3221         (WebCore):
3222         * page/ContentSecurityPolicy.h:
3223         (ContentSecurityPolicy):
3224
3225 2012-03-05  Yoshifumi Inoue  <yosin@chromium.org>
3226
3227         [Forms] The "optgroup" element should not be a form-associated element
3228         https://bugs.webkit.org/show_bug.cgi?id=80234
3229
3230         Reviewed by Kent Tamura.
3231
3232         This patch changes base class of HTMLOptGroup to HTMLElement from
3233         HTMLFormControlElement to avoid the "optgroup" element in form-associate
3234         elements collection.
3235
3236         This patch doesn't affect HTMLOptionElement::disabled's static_cast. However,
3237         it doesn't good at coding style. This patch also fix it.
3238
3239
3240         No new tests. No behavior changes.
3241
3242         * html/HTMLOptGroupElement.cpp:
3243         (WebCore::HTMLOptGroupElement::HTMLOptGroupElement): Remove "form" parameter.
3244         (WebCore::HTMLOptGroupElement::create): Remove "form" parameter.
3245         (WebCore::HTMLOptGroupElement::childrenChanged): Replace base method call.
3246         (WebCore::HTMLOptGroupElement::parseAttribute): Replace base method call.
3247         (WebCore::HTMLOptGroupElement::attach): Replace base method call.
3248         (WebCore::HTMLOptGroupElement::detach): Replace base method call.
3249         * html/HTMLOptGroupElement.h:
3250         (HTMLOptGroupElement): Change base class to HTMLElement.
3251         * html/HTMLOptionElement.cpp:
3252         (WebCore::HTMLOptionElement::disabled): Replace static_cast<HTMLFormControlElement*> to static_cast<HTMLElement*> with checking isHTMLElement.
3253         * html/HTMLTagNames.in: Remove "constructorNeedsFormElement" for not passing "form" parameter in HTMLElementFactory.
3254
3255 2012-03-05  Pavel Podivilov  <podivilov@chromium.org>
3256
3257         Web Inspector: fix extensions-resource.html test.
3258         https://bugs.webkit.org/show_bug.cgi?id=80183
3259
3260         Reviewed by Vsevolod Vlasov.
3261
3262         * inspector/front-end/DebuggerPresentationModel.js:
3263         (WebInspector.DebuggerPresentationModel.Linkifier.prototype._updateAnchor):
3264
3265 2012-03-02  Andrey Kosyakov  <caseq@chromium.org>
3266
3267         Add instrumentation for frame start/end on timeline.
3268
3269         Web Inspector: add timeline instrumentation for frame events
3270         https://bugs.webkit.org/show_bug.cgi?id=80127
3271
3272         Reviewed by Pavel Feldman.
3273
3274         - display frame boundaries when vertical overview mode is on
3275         - aggregate by frame in vertical overview mode
3276         - switched event filtering criteria from index to time in vertical overview mode
3277
3278         * inspector/InspectorInstrumentation.cpp:
3279         (WebCore::InspectorInstrumentation::didBeginFrameImpl):
3280         (WebCore):
3281         * inspector/InspectorInstrumentation.h:
3282         (InspectorInstrumentation):
3283         (WebCore::InspectorInstrumentation::didBeginFrame):
3284         (WebCore):
3285         * inspector/InspectorTimelineAgent.cpp:
3286         (TimelineRecordType):
3287         (WebCore::InspectorTimelineAgent::didBeginFrame):
3288         (WebCore):
3289         * inspector/InspectorTimelineAgent.h:
3290         (InspectorTimelineAgent):
3291         * inspector/front-end/TimelineModel.js:
3292         * inspector/front-end/TimelineOverviewPane.js:
3293         (WebInspector.TimelineOverviewPane):
3294         (WebInspector.TimelineOverviewPane.prototype._showMemoryGraph):
3295         (WebInspector.TimelineOverviewPane.prototype.setStartAtZero):
3296         (WebInspector.TimelineOverviewPane.prototype.updateEventDividers):
3297         (WebInspector.TimelineOverviewPane.prototype.sidebarResized):
3298         (WebInspector.TimelineOverviewPane.prototype.reset):
3299         (WebInspector.TimelineOverviewPane.prototype.accept):
3300         (WebInspector.TimelineOverviewPane.prototype.windowStartTime):
3301         (WebInspector.TimelineOverviewPane.prototype.windowEndTime):
3302         (WebInspector.TimelineOverviewPane.prototype._onWindowChanged):
3303         (WebInspector.TimelineStartAtZeroOverview):
3304         (WebInspector.TimelineStartAtZeroOverview.prototype.reset):
3305         (WebInspector.TimelineStartAtZeroOverview.prototype.update):
3306         (WebInspector.TimelineStartAtZeroOverview.prototype._aggregateFrames):
3307         (WebInspector.TimelineStartAtZeroOverview.prototype._aggregateFrameStatistics):
3308         (WebInspector.TimelineStartAtZeroOverview.prototype._aggregateRecords):
3309         (WebInspector.TimelineStartAtZeroOverview.prototype._buildBar):
3310         (WebInspector.TimelineStartAtZeroOverview.prototype.getWindowTimes):
3311         * inspector/front-end/TimelinePanel.js:
3312         (WebInspector.TimelinePanel.prototype._updateEventDividers):
3313         (WebInspector.TimelinePanel.prototype._createEventDivider):
3314         (WebInspector.TimelinePanel.prototype._toggleStartAtZeroButtonClicked):
3315         (WebInspector.TimelinePanel.prototype._innerAddRecordToTimeline.addTimestampRecords):
3316         (WebInspector.TimelinePanel.prototype._innerAddRecordToTimeline):
3317         (WebInspector.TimelinePanel.prototype._refresh):
3318         (WebInspector.TimelinePanel.prototype._refreshRecords):
3319         (WebInspector.TimelineCategoryFilter.prototype.accept):
3320         * inspector/front-end/TimelinePresentationModel.js:
3321         (WebInspector.TimelinePresentationModel.prototype.get _recordStyles):
3322         * inspector/front-end/inspectorCommon.css:
3323         * inspector/front-end/timelinePanel.css:
3324         (#timeline-container):
3325         (.timeline .resources-event-divider):
3326         (.timeline.timeline-start-at-zero .resources-divider):
3327         (.timeline .resources-event-divider.timeline-frame-divider):
3328
3329 2012-03-05  MORITA Hajime  <morrita@google.com>
3330
3331         Unreviewed build fix for !ENABLE(SHADOW_DOM).
3332
3333         * html/shadow/HTMLContentElement.cpp:
3334         (WebCore::contentTagName):
3335
3336 2012-03-04  MORITA Hajime  <morrita@google.com>
3337
3338         Internally used HTMLContentElement subclasses should have correct wrapper.
3339         https://bugs.webkit.org/show_bug.cgi?id=80237
3340
3341         Reviewed by Kent Tamura.
3342
3343         DetailsContentElement and DetailsSummaryElement used to use
3344         <div> as their tag name. But this means they are wrapped by
3345         wrapper objects for HTMLDivElement, which is wrong. This happened
3346         to work though because HTMLDivElement has no extra state or API.
3347
3348         This change introduces "noConstructor" keyword for make_name.pl
3349         sources.  This keyword allows a tag name to specify its own
3350         wrapper without making the tag name visible from the parser, or
3351         HTMLElementFactory in precise.
3352
3353         Following this addition, this change also adds a new tag name
3354         "webkitShadowContent" for DetailsContentElement and DetailsSummaryElement,
3355         which has no constructor, and whose wrapper type is HTMLElement.
3356
3357         This change isn't visible from the page author and only matters for testing.
3358
3359         Test: fast/dom/shadow/content-element-user-agent-shadow.html
3360
3361         * dom/make_names.pl:
3362         (defaultTagPropertyHash):
3363         (buildConstructorMap):
3364         (printConstructors):
3365         (printFunctionInits):
3366         * html/HTMLDetailsElement.cpp:
3367         (WebCore::DetailsContentElement::DetailsContentElement):
3368         (WebCore::DetailsSummaryElement::DetailsSummaryElement):
3369         * html/HTMLTagNames.in:
3370         * html/shadow/HTMLContentElement.cpp:
3371         (WebCore::contentTagName):
3372
3373 2012-03-05  Shinya Kawanaka  <shinyak@chromium.org>
3374
3375         Refactoring: Move HTMLContentElement::attach to InsertionPoint::attach.
3376         https://bugs.webkit.org/show_bug.cgi?id=80243
3377
3378         Reviewed by Hajime Morita.
3379
3380         Since the current code in HTMLContentElement::attach() will be used for coming <shadow>
3381         elements, it is natural that InsertionPoint::attach() has such code.
3382
3383         No new tests, no change in behavior.
3384
3385         * html/shadow/HTMLContentElement.cpp:
3386         * html/shadow/HTMLContentElement.h:
3387         (HTMLContentElement):
3388         * html/shadow/InsertionPoint.cpp:
3389         (WebCore::InsertionPoint::attach):
3390         (WebCore):
3391         (WebCore::InsertionPoint::detach):
3392         * html/shadow/InsertionPoint.h:
3393         (InsertionPoint):
3394
3395 2012-03-05  Adam Barth  <abarth@webkit.org>
3396
3397         allowDatabaseAccess and databaseExceededQuota should be part of DatabaseContext not ScriptExecutionContext
3398         https://bugs.webkit.org/show_bug.cgi?id=80178
3399
3400         Reviewed by Eric Seidel.
3401
3402         These functions are only used by SQLDatabase, which means we can move
3403         them to DatabaseContext, removing one more tendril of the SQLDatabase
3404         code.
3405
3406         * dom/Document.cpp:
3407         (WebCore):
3408         * dom/Document.h:
3409         (Document):
3410         * dom/ScriptExecutionContext.h:
3411         (ScriptExecutionContext):
3412         * storage/DatabaseContext.cpp:
3413         (WebCore::DatabaseContext::DatabaseContext):
3414         (WebCore::DatabaseContext::from):
3415         (WebCore::DatabaseContext::allowDatabaseAccess):
3416         (WebCore):
3417         (WebCore::DatabaseContext::databaseExceededQuota):
3418         * storage/DatabaseContext.h:
3419         (DatabaseContext):
3420         * storage/DatabaseTracker.cpp:
3421         (WebCore::DatabaseTracker::canEstablishDatabase):
3422         * storage/SQLTransaction.cpp:
3423         (WebCore::SQLTransaction::executeSQL):
3424         * storage/SQLTransactionClient.cpp:
3425         (WebCore::SQLTransactionClient::didExceedQuota):
3426         * storage/SQLTransactionSync.cpp:
3427         (WebCore::SQLTransactionSync::executeSQL):
3428         * workers/WorkerContext.cpp:
3429         (WebCore):
3430         * workers/WorkerContext.h:
3431         (WorkerContext):
3432
3433 2012-03-04  Sheriff Bot  <webkit.review.bot@gmail.com>
3434
3435         Unreviewed, rolling out r107551.
3436         http://trac.webkit.org/changeset/107551
3437         https://bugs.webkit.org/show_bug.cgi?id=80245
3438
3439         caused incorrect style sharing (Requested by kling on
3440         #webkit).
3441
3442         * css/CSSStyleSelector.cpp:
3443         (WebCore::CSSStyleSelector::collectMatchingRulesForList):
3444
3445 2012-03-04  Luke Macpherson   <macpherson@chromium.org>
3446
3447         Remove unused macro HANDLE_INHERIT_AND_INITIAL_AND_PRIMITIVE_WITH_VALUE.
3448         https://bugs.webkit.org/show_bug.cgi?id=80236
3449
3450         Reviewed by Eric Seidel.
3451
3452         No new tests / unused code deletion only.
3453
3454         * css/CSSStyleSelector.cpp:
3455         (WebCore):
3456
3457 2012-03-04  Filip Pizlo  <fpizlo@apple.com>
3458
3459         JIT heuristics should be hyperbolic
3460         https://bugs.webkit.org/show_bug.cgi?id=80055
3461         <rdar://problem/10922260>
3462
3463         Reviewed by Oliver Hunt.
3464
3465         No new tests, since there's no new functionality.
3466
3467         * ForwardingHeaders/wtf/SimpleStats.h: Added.
3468
3469 2012-03-04  Shinya Kawanaka  <shinyak@chromium.org>
3470
3471         Methods like firstRendererOf of NodeRenderingContext should be extracted.
3472         https://bugs.webkit.org/show_bug.cgi?id=79902
3473
3474         Reviewed by Hajime Morita.
3475
3476         firstRendererOfInsertionPoint should return the first renderer of its child, however
3477         it returns next renderer of parent. The same thing happens lastRendererOfInsertionPoint.
3478
3479         Test: content-element-move.html has another test case.
3480
3481         * dom/NodeRenderingContext.cpp:
3482         (WebCore):
3483         (WebCore::nextRendererOfInsertionPoint):
3484         (WebCore::previousRendererOfInsertionPoint):
3485         (WebCore::firstRendererOfInsertionPoint):
3486         (WebCore::lastRendererOfInsertionPoint):
3487         (WebCore::firstRendererOf):
3488         (WebCore::lastRendererOf):
3489         (WebCore::NodeRenderingContext::nextRenderer):
3490         (WebCore::NodeRenderingContext::previousRenderer):
3491
3492 2012-03-04  MORITA Hajime <morrita@google.com>
3493
3494         Unreviewed build fix for ENABLE(MATHML).
3495
3496         * mathml/MathMLElement.h:
3497         (WebCore):
3498
3499 2012-03-04  MORITA Hajime  <morrita@google.com>
3500
3501         WebKit needs toHTMLUnknownElement() and isUnknown() for sanity check.
3502         https://bugs.webkit.org/show_bug.cgi?id=80229
3503
3504         Reviewed by Kent Tamura.
3505
3506         The code generator has naked static_cast<> which could be unsafe.
3507         We can turn it into toHTMLUnknownElement() and the like.
3508
3509         No new tests. Just added a sanity check.
3510
3511         * dom/make_names.pl:
3512         (printWrapperFactoryCppFile):
3513         * html/HTMLElement.h:
3514         (HTMLElement):
3515         (WebCore::HTMLElement::isHTMLUnknownElement):
3516         * html/HTMLUnknownElement.h:
3517         (HTMLUnknownElement):
3518         (WebCore::toHTMLUnknownElement):
3519         (WebCore):
3520         * mathml/MathMLElement.h:
3521         (toMathMLElement):
3522         * svg/SVGElement.h:
3523         (WebCore::toSVGElement):
3524         (WebCore):
3525
3526 2012-03-04  Luke Macpherson   <macpherson@chromium.org>
3527
3528         Handle CSSPropertyWebkitColumnBreakAfter, CSSPropertyWebkitColumnBreakBefore and CSSPropertyWebkitColumnBreakInside in CSSStyleApplyProperty.
3529         https://bugs.webkit.org/show_bug.cgi?id=80226
3530
3531         Reviewed by Eric Seidel.
3532
3533         No new tests / refactoring only.
3534
3535         * css/CSSStyleApplyProperty.cpp:
3536         (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
3537         * css/CSSStyleSelector.cpp:
3538         (WebCore::CSSStyleSelector::collectMatchingRulesForList):
3539
3540 2012-03-04  Jonathan Dong  <jonathan.dong@torchmobile.com.cn>
3541
3542         [BlackBerry] Credential backing store implementation
3543         https://bugs.webkit.org/show_bug.cgi?id=79650
3544
3545         Reviewed by Antonio Gomes.
3546
3547         Opened Credential database in CedentialBackingStore::instance().
3548         Added never_remember table and associated sql statment
3549         members to store the never remember sites.
3550         Removed CredentialStorage initialize codes because that
3551         won't give users a chance to re-enter the new credential
3552         information for an already stored site.
3553         Changed login update and has statement to support
3554         autofill feature of multiple credential forms in the
3555         same page; Also added url as a parameter of hasLogin() function.
3556         Added calling reset() after each statement calls step(),
3557         to make it work correctly next time.
3558         Also fixed a macro typo in HANDLE_SQL_EXEC_FAILURE.
3559
3560         No new tests.
3561
3562         * platform/network/blackberry/CredentialBackingStore.cpp:
3563         (WebCore::CredentialBackingStore::instance):
3564         (WebCore::CredentialBackingStore::CredentialBackingStore):
3565         (WebCore::CredentialBackingStore::open):
3566         (WebCore::CredentialBackingStore::close):
3567         (WebCore::CredentialBackingStore::addLogin):
3568         (WebCore::CredentialBackingStore::updateLogin):
3569         (WebCore::CredentialBackingStore::hasLogin):
3570         (WebCore::CredentialBackingStore::getLogin):
3571         (WebCore):
3572         (WebCore::CredentialBackingStore::removeLogin):
3573         (WebCore::CredentialBackingStore::addNeverRemember):
3574         (WebCore::CredentialBackingStore::hasNeverRemember):
3575         (WebCore::CredentialBackingStore::getNeverRemember):
3576         (WebCore::CredentialBackingStore::removeNeverRemember):
3577         (WebCore::CredentialBackingStore::clearLogins):
3578         (WebCore::CredentialBackingStore::clearNeverRemember):
3579         * platform/network/blackberry/CredentialBackingStore.h:
3580         (CredentialBackingStore):
3581
3582 2012-03-04  Hyowon Kim  <hw1008.kim@samsung.com>
3583
3584         [EFL] Evas_GL initialization and destruction in GraphicsContext3DPrivate
3585         https://bugs.webkit.org/show_bug.cgi?id=80211
3586
3587         Reviewed by Noam Rosenthal.
3588
3589         This patch adds initialization and destruction codes using Evas_GL APIs to GC3DPrivate.
3590
3591         No new tests. No behavior change.
3592
3593         * platform/graphics/efl/GraphicsContext3DPrivate.cpp:
3594         (WebCore::GraphicsContext3DPrivate::create):
3595         (WebCore::GraphicsContext3DPrivate::GraphicsContext3DPrivate):
3596         (WebCore::GraphicsContext3DPrivate::~GraphicsContext3DPrivate):
3597         (WebCore::GraphicsContext3DPrivate::initialize):
3598         (WebCore::GraphicsContext3DPrivate::createSurface):
3599         (WebCore::GraphicsContext3DPrivate::makeContextCurrent):
3600         * platform/graphics/efl/GraphicsContext3DPrivate.h:
3601         (GraphicsContext3DPrivate):
3602
3603 2012-03-04  Raphael Kubo da Costa  <kubo@profusion.mobi>
3604
3605         [CMake] Libraries are installed to /usr/lib and not /usr/lib64 on x86_64
3606         https://bugs.webkit.org/show_bug.cgi?id=71507
3607
3608         Reviewed by Antonio Gomes.
3609
3610         No new tests, buildsystem change.
3611
3612         * CMakeLists.txt: Use ${LIB_INSTALL_DIR} instead of hardcoding "lib".
3613
3614 2012-03-04  Hyowon Kim  <hw1008.kim@samsung.com>
3615
3616         [EFL] Implementation of missing functions in GraphicsContext3DPrivate
3617         https://bugs.webkit.org/show_bug.cgi?id=79759
3618
3619         Reviewed by Noam Rosenthal.
3620
3621         The initial patch (Bug 62961) only contains implementations for simple functions
3622         which call GL functions through Evas_GL_API.
3623         This patch implements a little complicated functions such as getActiveAttrib(),
3624         getShaderSource() and so on.
3625
3626         No new tests. No behavior change.
3627
3628         * platform/graphics/efl/GraphicsContext3DPrivate.cpp:
3629         (WebCore::GraphicsContext3DPrivate::getActiveAttrib):
3630         (WebCore::GraphicsContext3DPrivate::getActiveUniform):
3631         (WebCore::GraphicsContext3DPrivate::getError):
3632         (WebCore::GraphicsContext3DPrivate::getIntegerv):
3633         (WebCore::GraphicsContext3DPrivate::getProgramInfoLog):
3634         (WebCore::GraphicsContext3DPrivate::getShaderInfoLog):
3635         (WebCore::GraphicsContext3DPrivate::getShaderSource):
3636
3637 2012-03-04  Kentaro Hara  <haraken@chromium.org>
3638
3639         Revert SVG-related APIs from DOMWindowSVG.idl back to DOMWindow.idl
3640         https://bugs.webkit.org/show_bug.cgi?id=80139
3641
3642         Reviewed by Adam Barth.
3643
3644         Based on the discussion on webkit-dev@
3645         (http://markmail.org/message/kagvswmah67zmrry#query:+page:1+mid:h34vzbiu5suub3ld+state:results),
3646         this patch reverts SVG-related APIs from DOMWindowSVG.idl back to DOMWindow.idl.
3647
3648         No tests. No change in behavior.
3649
3650         * CMakeLists.txt:
3651         * DerivedSources.make:
3652         * DerivedSources.pri:
3653         * GNUmakefile.list.am:
3654         * WebCore.gypi:
3655         * WebCore.xcodeproj/project.pbxproj:
3656         * page/DOMWindow.idl:
3657         * svg/DOMWindowSVG.idl: Removed.
3658
3659 2012-03-04  Kentaro Hara  <haraken@chromium.org>
3660
3661         Revert WebGL-related APIs from DOMWindowWebGL.idl back to DOMWindow.idl
3662         https://bugs.webkit.org/show_bug.cgi?id=80144
3663
3664         Reviewed by Adam Barth.
3665
3666         Based on the discussion on webkit-dev@
3667         (http://markmail.org/message/kagvswmah67zmrry#query:+page:1+mid:h34vzbiu5suub3ld+state:results),
3668         this patch reverts WebGL-related APIs from DOMWindowWebGL.idl back to DOMWindow.idl.
3669
3670         No tests. No change in behavior.
3671
3672         * DerivedSources.make:
3673         * DerivedSources.pri:
3674         * GNUmakefile.list.am:
3675         * WebCore.gypi:
3676         * WebCore.xcodeproj/project.pbxproj:
3677         * html/canvas/DOMWindowWebGL.idl: Removed.
3678         * page/DOMWindow.idl:
3679
3680 2012-03-04  MORITA Hajime  <morrita@google.com>
3681
3682         Unreviewed build fix.
3683
3684         * rendering/RenderButton.cpp:
3685         (WebCore::RenderButton::canHaveGeneratedChildren):
3686
3687 2012-03-01  MORITA Hajime  <morrita@google.com>
3688
3689         REGRESSION(r108758): Assertion failure in WebCore::RenderMenuList::addChild
3690         https://bugs.webkit.org/show_bug.cgi?id=80096
3691
3692         Reviewed by Dimitri Glazkov.
3693
3694         After r108758 RenderBlock allowed <select> to have generated
3695         contents. But it shouldn't. This change stops allowing it again by
3696         replacing some canHaveChildren() invocations with
3697         less permissive canHaveGeneratedChildren().
3698
3699         This change also pulls back original canHaveChildren() logic to
3700         RenderButton to allow <button> to have generated contents.
3701
3702         Then RenderDeprecatedFlexibleBox::buttonText() is morphed to
3703         more intention revealing canHaveGeneratedChildren().
3704
3705         Test: fast/forms/select-generated-content.html
3706
3707         * rendering/RenderBlock.cpp:
3708         (WebCore):
3709         (WebCore::canHaveGeneratedChildren):
3710         (WebCore::RenderBlock::styleDidChange):
3711         (WebCore::findFirstLetterBlock):
3712         (WebCore::RenderBlock::updateFirstLetter):
3713         * rendering/RenderButton.cpp:
3714         * rendering/RenderButton.h:
3715         (RenderButton):
3716         * rendering/RenderDeprecatedFlexibleBox.h:
3717         (WebCore::RenderDeprecatedFlexibleBox::canHaveGeneratedChildren):
3718         * rendering/RenderMenuList.h:
3719
3720 2012-03-04  Robin Cao  <robin.cao@torchmobile.com.cn>
3721
3722         [BlackBerry] Upstream two helper files from platform/graphics/blackberry
3723         https://bugs.webkit.org/show_bug.cgi?id=80125
3724
3725         Reviewed by Antonio Gomes.
3726
3727         Initial upstream, no new tests.
3728
3729         * platform/graphics/blackberry/InstrumentedPlatformCanvas.h: Added.
3730         (WebCore):
3731         (InstrumentedPlatformCanvas):
3732         (WebCore::InstrumentedPlatformCanvas::InstrumentedPlatformCanvas):
3733         (WebCore::InstrumentedPlatformCanvas::~InstrumentedPlatformCanvas):
3734         (WebCore::InstrumentedPlatformCanvas::isSolidColor):
3735         (WebCore::InstrumentedPlatformCanvas::solidColor):
3736         (WebCore::InstrumentedPlatformCanvas::save):
3737         (WebCore::InstrumentedPlatformCanvas::saveLayer):
3738         (WebCore::InstrumentedPlatformCanvas::restore):
3739         (WebCore::InstrumentedPlatformCanvas::translate):
3740         (WebCore::InstrumentedPlatformCanvas::scale):
3741         (WebCore::InstrumentedPlatformCanvas::rotate):
3742         (WebCore::InstrumentedPlatformCanvas::skew):
3743         (WebCore::InstrumentedPlatformCanvas::concat):
3744         (WebCore::InstrumentedPlatformCanvas::setMatrix):
3745         (WebCore::InstrumentedPlatformCanvas::clipRect):
3746         (WebCore::InstrumentedPlatformCanvas::clipPath):
3747         (WebCore::InstrumentedPlatformCanvas::clipRegion):
3748         (WebCore::InstrumentedPlatformCanvas::clear):
3749         (WebCore::InstrumentedPlatformCanvas::drawPaint):
3750         (WebCore::InstrumentedPlatformCanvas::drawPoints):
3751         (WebCore::InstrumentedPlatformCanvas::drawRect):
3752         (WebCore::InstrumentedPlatformCanvas::drawPath):
3753         (WebCore::InstrumentedPlatformCanvas::drawBitmap):
3754         (WebCore::InstrumentedPlatformCanvas::drawBitmapRect):
3755         (WebCore::InstrumentedPlatformCanvas::drawBitmapMatrix):
3756         (WebCore::InstrumentedPlatformCanvas::drawSprite):
3757         (WebCore::InstrumentedPlatformCanvas::drawText):
3758         (WebCore::InstrumentedPlatformCanvas::drawPosText):
3759         (WebCore::InstrumentedPlatformCanvas::drawPosTextH):
3760         (WebCore::InstrumentedPlatformCanvas::drawTextOnPath):
3761         (WebCore::InstrumentedPlatformCanvas::drawPicture):
3762         (WebCore::InstrumentedPlatformCanvas::drawVertices):
3763         (WebCore::InstrumentedPlatformCanvas::drawData):
3764         * platform/graphics/blackberry/LayerMessage.h: Added.
3765         (WebCore):
3766         (WebCore::isCompositingThread):
3767         (WebCore::compositingThread):
3768         (WebCore::isWebKitThread):
3769         (WebCore::webKitThread):
3770         (WebCore::dispatchCompositingMessage):
3771         (WebCore::dispatchSyncCompositingMessage):
3772         (WebCore::dispatchWebKitMessage):
3773
3774 2012-03-04  Nikolas Zimmermann  <nzimmermann@rim.com>
3775
3776         Introduce SMIL overrideStyle, to make SVG stop mutating CSS styles directly
3777         https://bugs.webkit.org/show_bug.cgi?id=79790
3778
3779         Reviewed by Dirk Schulze.
3780
3781         Restore SMIL animation behavior back to pre-r109342.
3782         1) Always animate presentation attributes as CSS properties, regardless of the
3783         attributeTypes value. Matches Opera/FF, and makes the attribute optional again
3784         as specified in both SMIL & SVG.
3785
3786         Extend existing svg/animations/attributesTypes.html to verify this.
3787
3788         2) Switch setInstancesUpdatesBlocked calls to the right locations again, to
3789         avoid chromium assertions (and/or extra work being done). Fixing that reveals another
3790         problem: in the instance updating code path, we always called setTargetAttributeAnimatedCSSValue
3791         even for XML animations.
3792
3793         * svg/SVGAnimationElement.cpp:
3794         (WebCore::SVGAnimationElement::shouldApplyAnimation): Restore old logic.
3795         (WebCore::SVGAnimationElement::setTargetAttributeAnimatedValue): Fix typo, move setInstancesUpdatesBlocked calls.
3796
3797 2012-03-04  Jonathan Dong  <jonathan.dong@torchmobile.com.cn>
3798
3799         [BlackBerry] upstream MediaPlayerPrivateBlackBerry.[cpp|h]
3800         https://bugs.webkit.org/show_bug.cgi?id=79729
3801
3802         Reviewed by Rob Buis and Antonio Gomes.
3803
3804         Implementation of MediaPlayerPrivate for BlackBerry porting.
3805         Initial upstream, No new tests.
3806
3807         * PlatformBlackBerry.cmake:
3808         * platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.cpp: Added.
3809         (WebCore):
3810         (WebCore::MediaPlayerPrivate::create):
3811         (WebCore::MediaPlayerPrivate::registerMediaEngine):
3812         (WebCore::MediaPlayerPrivate::getSupportedTypes):
3813         (WebCore::MediaPlayerPrivate::supportsType):
3814         (WebCore::MediaPlayerPrivate::notifyAppActivatedEvent):
3815         (WebCore::MediaPlayerPrivate::setCertificatePath):
3816         (WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
3817         (WebCore::MediaPlayerPrivate::~MediaPlayerPrivate):
3818         (WebCore::MediaPlayerPrivate::load):
3819         (WebCore::MediaPlayerPrivate::cancelLoad):
3820         (WebCore::MediaPlayerPrivate::prepareToPlay):
3821         (WebCore::MediaPlayerPrivate::play):
3822         (WebCore::MediaPlayerPrivate::pause):
3823         (WebCore::MediaPlayerPrivate::supportsFullscreen):
3824         (WebCore::MediaPlayerPrivate::naturalSize):
3825         (WebCore::MediaPlayerPrivate::hasVideo):
3826         (WebCore::MediaPlayerPrivate::hasAudio):
3827         (WebCore::MediaPlayerPrivate::setVisible):
3828         (WebCore::MediaPlayerPrivate::duration):
3829         (WebCore::MediaPlayerPrivate::currentTime):
3830         (WebCore::MediaPlayerPrivate::seek):
3831         (WebCore::MediaPlayerPrivate::userDrivenSeekTimerFired):
3832         (WebCore::MediaPlayerPrivate::seeking):
3833         (WebCore::MediaPlayerPrivate::setRate):
3834         (WebCore::MediaPlayerPrivate::paused):
3835         (WebCore::MediaPlayerPrivate::setVolume):
3836         (WebCore::MediaPlayerPrivate::networkState):
3837         (WebCore::MediaPlayerPrivate::readyState):
3838         (WebCore::MediaPlayerPrivate::maxTimeSeekable):
3839         (WebCore::MediaPlayerPrivate::buffered):
3840         (WebCore::MediaPlayerPrivate::bytesLoaded):
3841         (WebCore::MediaPlayerPrivate::setSize):
3842         (WebCore::MediaPlayerPrivate::paint):
3843         (WebCore::MediaPlayerPrivate::hasAvailableVideoFrame):
3844         (WebCore::MediaPlayerPrivate::hasSingleSecurityOrigin):
3845         (WebCore::MediaPlayerPrivate::movieLoadType):
3846         (WebCore::MediaPlayerPrivate::userAgent):
3847         (WebCore::MediaPlayerPrivate::resizeSourceDimensions):
3848         (WebCore::MediaPlayerPrivate::setFullscreenWebPageClient):
3849         (WebCore::MediaPlayerPrivate::getWindow):
3850         (WebCore::MediaPlayerPrivate::getPeerWindow):
3851         (WebCore::MediaPlayerPrivate::getWindowPosition):
3852         (WebCore::MediaPlayerPrivate::mmrContextName):
3853         (WebCore::MediaPlayerPrivate::percentLoaded):
3854         (WebCore::MediaPlayerPrivate::sourceWidth):
3855         (WebCore::MediaPlayerPrivate::sourceHeight):
3856         (WebCore::MediaPlayerPrivate::setAllowPPSVolumeUpdates):
3857         (WebCore::MediaPlayerPrivate::updateStates):
3858         (WebCore::MediaPlayerPrivate::onStateChanged):
3859         (WebCore::MediaPlayerPrivate::onMediaStatusChanged):
3860         (WebCore::MediaPlayerPrivate::onError):
3861         (WebCore::MediaPlayerPrivate::onDurationChanged):
3862         (WebCore::MediaPlayerPrivate::onTimeChanged):
3863         (WebCore::MediaPlayerPrivate::onPauseStateChanged):
3864         (WebCore::MediaPlayerPrivate::onRateChanged):
3865         (WebCore::MediaPlayerPrivate::onVolumeChanged):
3866         (WebCore::MediaPlayerPrivate::onRepaint):
3867         (WebCore::MediaPlayerPrivate::onSizeChanged):
3868         (WebCore::MediaPlayerPrivate::onPlayNotified):
3869         (WebCore::MediaPlayerPrivate::onPauseNotified):
3870         (WebCore::MediaPlayerPrivate::onBuffering):
3871         (WebCore::MediaPlayerPrivate::showErrorDialog):
3872         (WebCore::MediaPlayerPrivate::frameView):
3873         (WebCore::MediaPlayerPrivate::platformWindow):
3874         (WebCore::MediaPlayerPrivate::isFullscreen):
3875         (WebCore::MediaPlayerPrivate::platformMedia):
3876         (WebCore::MediaPlayerPrivate::platformLayer):
3877         (WebCore::loadBufferingImageData):
3878         (WebCore::MediaPlayerPrivate::bufferingTimerFired):
3879         (WebCore::MediaPlayerPrivate::setBuffering):
3880         (WebCore::allocateTextureId):
3881         (WebCore::MediaPlayerPrivate::drawBufferingAnimation):
3882         * platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.h: Added.
3883         (WebKit):
3884         (WebCore):
3885         (MediaPlayerPrivate):
3886         (WebCore::MediaPlayerPrivate::supportsAcceleratedRendering):
3887         (WebCore::MediaPlayerPrivate::acceleratedRenderingStateChanged):
3888
3889 2012-03-03  Benjamin Poulain  <benjamin@webkit.org>
3890
3891         Remove the unused function WebCore::protocolIsInHTTPFamily()
3892         https://bugs.webkit.org/show_bug.cgi?id=80218
3893
3894         Reviewed by Anders Carlsson.
3895
3896         * WebCore.order:
3897         * platform/KURL.cpp:
3898         * platform/KURL.h:
3899         (WebCore):
3900
3901 2012-03-03  Benjamin Poulain  <benjamin@webkit.org>
3902
3903         Implement the basis of KURLWTFURL
3904         https://bugs.webkit.org/show_bug.cgi?id=79600
3905
3906         Reviewed by Adam Barth.
3907
3908         Add a simple, non-optimized, implementation for the main methods of KURL based
3909         on ParsedURL.
3910
3911         * platform/KURLWTFURL.cpp:
3912         (WebCore):
3913         (WebCore::detach):
3914         (WebCore::KURL::KURL):
3915         (WebCore::KURL::copy):
3916         (WebCore::KURL::isEmpty):
3917         (WebCore::KURL::isValid):
3918         (WebCore::KURL::string):
3919         (WebCore::KURL::protocol):
3920         (WebCore::KURL::host):
3921         (WebCore::KURL::hasPort):
3922         (WebCore::KURL::port):
3923         (WebCore::KURL::user):
3924         (WebCore::KURL::pass):
3925         (WebCore::KURL::hasPath):
3926         (WebCore::KURL::path):
3927         (WebCore::KURL::lastPathComponent):
3928         (WebCore::KURL::query):
3929         (WebCore::KURL::hasFragmentIdentifier):
3930         (WebCore::KURL::fragmentIdentifier):
3931         (WebCore::KURL::baseAsString):
3932         (WebCore::KURL::fileSystemPath):
3933         (WebCore::KURL::protocolIs):
3934         (WebCore::KURL::protocolIsInHTTPFamily):
3935         (WebCore::KURL::setProtocol):
3936         (WebCore::KURL::setHost):
3937         (WebCore::KURL::removePort):
3938         (WebCore::KURL::setPort):
3939         (WebCore::KURL::setHostAndPort):
3940         (WebCore::KURL::setUser):
3941         (WebCore::KURL::setPass):
3942         (WebCore::KURL::setPath):
3943         (WebCore::KURL::setQuery):
3944         (WebCore::KURL::setFragmentIdentifier):
3945         (WebCore::KURL::removeFragmentIdentifier):
3946         (WebCore::protocolHostAndPortAreEqual):
3947         * platform/KURLWTFURLImpl.h:
3948         (KURLWTFURLImpl):
3949         (WebCore::KURLWTFURLImpl::copy):
3950         (WebCore):
3951
3952 2012-03-03  Benjamin Poulain  <benjamin@webkit.org>
3953
3954         Remove the redundant method KURL::protocolInHTTPFamily()
3955         https://bugs.webkit.org/show_bug.cgi?id=80216
3956
3957         Reviewed by Anders Carlsson.
3958
3959         * loader/FrameLoader.cpp:
3960         (WebCore::FrameLoader::open):
3961         (WebCore::FrameLoader::addExtraFieldsToRequest):
3962         * loader/ResourceLoadScheduler.cpp:
3963         (WebCore::ResourceLoadScheduler::hostForURL):
3964         (WebCore::ResourceLoadScheduler::scheduleLoad):
3965         * loader/appcache/ApplicationCache.cpp:
3966         (WebCore::ApplicationCache::requestIsHTTPOrHTTPSGet):
3967         * loader/cache/CachedResource.cpp:
3968         (WebCore::CachedResource::freshnessLifetime):
3969         * loader/cache/MemoryCache.cpp:
3970         (WebCore::MemoryCache::removeFragmentIdentifierIfNeeded):
3971         * loader/icon/IconController.cpp:
3972         (WebCore::IconController::defaultURL):
3973         * platform/KURL.h:
3974         (KURL):
3975         * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
3976         * platform/network/CredentialStorage.cpp:
3977         (WebCore::CredentialStorage::set):
3978         (WebCore::findDefaultProtectionSpaceForURL):
3979         * platform/network/ResourceRequestBase.cpp:
3980         (WebCore::ResourceRequestBase::setCachePolicy):
3981         (WebCore::ResourceRequestBase::setTimeoutInterval):
3982         (WebCore::ResourceRequestBase::setHTTPMethod):
3983         (WebCore::ResourceRequestBase::setHTTPHeaderField):
3984         (WebCore::ResourceRequestBase::clearHTTPAuthorization):
3985         (WebCore::ResourceRequestBase::clearHTTPReferrer):
3986         (WebCore::ResourceRequestBase::clearHTTPOrigin):
3987         (WebCore::ResourceRequestBase::setResponseContentDispositionEncodingFallbackArray):
3988         (WebCore::ResourceRequestBase::setHTTPBody):
3989         (WebCore::ResourceRequestBase::setAllowCookies):
3990         (WebCore::ResourceRequestBase::setPriority):
3991         (WebCore::ResourceRequestBase::addHTTPHeaderField):
3992         * platform/network/blackberry/NetworkManager.cpp:
3993         (WebCore::NetworkManager::startJob):
3994         * platform/network/cf/ResourceHandleCFNet.cpp:
3995         (WebCore::ResourceHandle::createCFURLConnection):
3996         * platform/network/mac/ResourceHandleMac.mm:
3997         (WebCore::ResourceHandle::createNSURLConnection):
3998         * platform/network/qt/QNetworkReplyHandler.cpp:
3999         (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
4000         * xml/XMLHttpRequest.cpp:
4001         (WebCore::XMLHttpRequest::send):
4002
4003 2012-03-03  Robin Cao  <robin.cao@torchmobile.com.cn>
4004
4005         [BlackBerry] Upstream LayerWebKitThread and its derived classes
4006         https://bugs.webkit.org/show_bug.cgi?id=79871
4007
4008         Reviewed by Antonio Gomes.
4009
4010         Initial upstream, no new tests.
4011
4012         * platform/graphics/blackberry/CanvasLayerWebKitThread.cpp: Added.
4013         (WebCore):
4014         (WebCore::CanvasLayerWebKitThread::CanvasLayerWebKitThread):
4015         (WebCore::CanvasLayerWebKitThread::~CanvasLayerWebKitThread):
4016         (WebCore::CanvasLayerWebKitThread::setCanvas):
4017         (WebCore::CanvasLayerWebKitThread::setNeedsDisplay):
4018         (WebCore::CanvasLayerWebKitThread::updateTextureContentsIfNeeded):
4019         * platform/graphics/blackberry/CanvasLayerWebKitThread.h: Added.
4020         (WebCore):
4021         (CanvasLayerWebKitThread):
4022         (WebCore::CanvasLayerWebKitThread::create):
4023         * platform/graphics/blackberry/LayerData.h: Added.
4024         (WebCore):
4025         (LayerData):
4026         (WebCore::LayerData::LayerData):
4027         (WebCore::LayerData::~LayerData):
4028         (WebCore::LayerData::anchorPoint):
4029         (WebCore::LayerData::anchorPointZ):
4030         (WebCore::LayerData::backgroundColor):
4031         (WebCore::LayerData::borderColor):
4032         (WebCore::LayerData::borderWidth):
4033         (WebCore::LayerData::bounds):
4034         (WebCore::LayerData::doubleSided):
4035         (WebCore::LayerData::frame):
4036         (WebCore::LayerData::masksToBounds):
4037         (WebCore::LayerData::opacity):
4038         (WebCore::LayerData::opaque):
4039         (WebCore::LayerData::position):
4040         (WebCore::LayerData::sublayerTransform):
4041         (WebCore::LayerData::transform):
4042         (WebCore::LayerData::preserves3D):
4043         (WebCore::LayerData::getTextureID):
4044         (WebCore::LayerData::setTextureID):
4045         (WebCore::LayerData::needsTexture):
4046         (WebCore::LayerData::layerProgramShader):
4047         (WebCore::LayerData::isFixedPosition):
4048         (WebCore::LayerData::hasFixedContainer):
4049         (WebCore::LayerData::hasFixedAncestorInDOMTree):
4050         (WebCore::LayerData::pluginView):
4051         (WebCore::LayerData::holePunchRect):
4052         (WebCore::LayerData::hasHolePunchRect):
4053         (WebCore::LayerData::mediaPlayer):
4054         (WebCore::LayerData::canvas):
4055         (WebCore::LayerData::replicate):
4056         (WebCore::LayerData::layerType):
4057         (WebCore::LayerData::includeVisibility):
4058         * platform/graphics/blackberry/LayerWebKitThread.cpp: Added.
4059         (WebCore):
4060         (WebCore::LayerWebKitThread::create):
4061         (WebCore::LayerWebKitThread::LayerWebKitThread):
4062         (WebCore::LayerWebKitThread::~LayerWebKitThread):
4063         (WebCore::LayerWebKitThread::paintContents):
4064         (WebCore::LayerWebKitThread::contentsVisible):
4065         (WebCore::LayerWebKitThread::createFrontBufferLock):
4066         (WebCore::LayerWebKitThread::updateTextureContentsIfNeeded):
4067         (WebCore::LayerWebKitThread::setContents):
4068         (WebCore::LayerWebKitThread::setDrawable):
4069         (WebCore::LayerWebKitThread::setNeedsCommit):
4070         (WebCore::LayerWebKitThread::notifyAnimationStarted):
4071         (WebCore::LayerWebKitThread::commitOnWebKitThread):
4072         (WebCore::LayerWebKitThread::startAnimations):
4073         (WebCore::LayerWebKitThread::updateTextureContents):
4074         (WebCore::LayerWebKitThread::commitOnCompositingThread):
4075         (WebCore::LayerWebKitThread::addSublayer):
4076         (WebCore::LayerWebKitThread::insertSublayer):
4077         (WebCore::LayerWebKitThread::removeFromSuperlayer):
4078         (WebCore::LayerWebKitThread::removeSublayer):
4079         (WebCore::LayerWebKitThread::replaceSublayer):
4080         (WebCore::LayerWebKitThread::indexOfSublayer):
4081         (WebCore::LayerWebKitThread::setBounds):