[Qt] Unreviewed typo fix after r137446.
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2012-12-12  Csaba Osztrogonác  <ossy@webkit.org>
2
3         [Qt] Unreviewed typo fix after r137446.
4
5         * WebCore.pri:
6
7 2012-12-12  Zan Dobersek  <zandobersek@gmail.com>
8
9         [GTK] Remove the last of unnecessary configuration options in configure.ac
10         https://bugs.webkit.org/show_bug.cgi?id=104793
11
12         Reviewed by Martin Robinson.
13
14         Remove the feature define overriding that's based on the automake variables which are
15         not set anymore due to the corresponding configuration options being removed.
16
17         No new tests - no new functionality.
18
19         * GNUmakefile.am:
20
21 2012-12-12  Simon Hausmann  <simon.hausmann@digia.com>
22
23         [Qt] Fix build on Mac
24
25         Reviewed by Csaba Osztrogonác.
26
27         On Mac OS X we have sqlite as a system library available.
28
29         * WebCore.pri:
30
31 2012-12-12  Simon Hausmann  <simon.hausmann@digia.com>
32
33         [Qt] Fix linkage against SQLite
34         https://bugs.webkit.org/show_bug.cgi?id=104781
35
36         Reviewed by Csaba Osztrogonác.
37
38         Detect SQLite either through pkg-config, from the SQLITE3SRCDIR
39         environment variable or from qtbase via a qt5.git build. Bail out early
40         with an error message if neither option applies.
41
42         This removes the usage of $$QT.core.sources and the dependency on Qt's
43         system-sqlite configure setting. We should always favour a system
44         library over a copy in Qt.
45
46         * Target.pri:
47         * WebCore.pri:
48
49 2012-12-12  Allan Sandfeld Jensen  <allan.jensen@digia.com>
50
51         [TexMap] Uninitialized m_context pointer in TextureMapper
52         https://bugs.webkit.org/show_bug.cgi?id=104785
53
54         Reviewed by Kenneth Rohde Christiansen.
55
56         * platform/graphics/texmap/TextureMapper.cpp:
57         (WebCore::TextureMapper::TextureMapper):
58         * platform/graphics/texmap/TextureMapperGL.cpp:
59         (WebCore::TextureMapperGL::TextureMapperGL):
60
61 2012-12-12  Tommy Widenflycht  <tommyw@google.com>
62
63         MediaStream API: Change the data channel descriptor pattern to a handler pattern
64         https://bugs.webkit.org/show_bug.cgi?id=104543
65
66         Reviewed by Kent Tamura.
67
68         In short the code is refactured to use the Handler/Client pattern (see RTCPeerConnectionHandler)
69         instead of the Descriptor pattern.
70         This will fix lifetime/memory/code structure issues in the chromium port.
71
72         Existing tests cover this patch.
73
74         * CMakeLists.txt:
75         * GNUmakefile.list.am:
76         * Modules/mediastream/RTCDataChannel.cpp:
77         (WebCore::RTCDataChannel::create):
78         (WebCore::RTCDataChannel::RTCDataChannel):
79         (WebCore::RTCDataChannel::~RTCDataChannel):
80         (WebCore::RTCDataChannel::label):
81         (WebCore::RTCDataChannel::reliable):
82         (WebCore::RTCDataChannel::readyState):
83         (WebCore::RTCDataChannel::bufferedAmount):
84         (WebCore::RTCDataChannel::send):
85         (WebCore::RTCDataChannel::close):
86         (WebCore::RTCDataChannel::didChangeReadyState):
87         (WebCore::RTCDataChannel::didReceiveStringData):
88         (WebCore::RTCDataChannel::didReceiveRawData):
89         (WebCore::RTCDataChannel::didDetectError):
90         (WebCore::RTCDataChannel::stop):
91         * Modules/mediastream/RTCDataChannel.h:
92         (WebCore):
93         (RTCDataChannel):
94         * Modules/mediastream/RTCPeerConnection.cpp:
95         (WebCore::RTCPeerConnection::didAddRemoteDataChannel):
96         * Modules/mediastream/RTCPeerConnection.h:
97         (RTCPeerConnection):
98         * WebCore.gypi:
99         * platform/chromium/support/WebRTCDataChannel.cpp: Removed.
100         * platform/mediastream/RTCDataChannelDescriptor.h: Removed.
101         * platform/mediastream/RTCDataChannelHandler.h: Copied from Source/WebCore/platform/mediastream/RTCDataChannelDescriptor.cpp.
102         (WebCore):
103         (RTCDataChannelHandler):
104         (WebCore::RTCDataChannelHandler::~RTCDataChannelHandler):
105         * platform/mediastream/RTCDataChannelHandlerClient.h: Renamed from Source/WebCore/platform/mediastream/RTCDataChannelDescriptor.cpp.
106         (WebCore):
107         (RTCDataChannelHandlerClient):
108         (WebCore::RTCDataChannelHandlerClient::~RTCDataChannelHandlerClient):
109         * platform/mediastream/RTCPeerConnectionHandler.cpp:
110         (WebCore):
111         (WebCore::RTCPeerConnectionHandler::create):
112         * platform/mediastream/RTCPeerConnectionHandler.h:
113         (WebCore):
114         (RTCPeerConnectionHandler):
115         * platform/mediastream/RTCPeerConnectionHandlerClient.h:
116         (WebCore):
117         (RTCPeerConnectionHandlerClient):
118         * platform/mediastream/chromium/RTCDataChannelHandlerChromium.cpp: Added.
119         (WebCore):
120         (WebCore::RTCDataChannelHandlerChromium::create):
121         (WebCore::RTCDataChannelHandlerChromium::RTCDataChannelHandlerChromium):
122         (WebCore::RTCDataChannelHandlerChromium::~RTCDataChannelHandlerChromium):
123         (WebCore::RTCDataChannelHandlerChromium::setClient):
124         (WebCore::RTCDataChannelHandlerChromium::label):
125         (WebCore::RTCDataChannelHandlerChromium::isReliable):
126         (WebCore::RTCDataChannelHandlerChromium::bufferedAmount):
127         (WebCore::RTCDataChannelHandlerChromium::sendStringData):
128         (WebCore::RTCDataChannelHandlerChromium::sendRawData):
129         (WebCore::RTCDataChannelHandlerChromium::close):
130         (WebCore::RTCDataChannelHandlerChromium::didChangeReadyState):
131         (WebCore::RTCDataChannelHandlerChromium::didReceiveStringData):
132         (WebCore::RTCDataChannelHandlerChromium::didReceiveRawData):
133         (WebCore::RTCDataChannelHandlerChromium::didDetectError):
134         * platform/mediastream/chromium/RTCDataChannelHandlerChromium.h: Added.
135         (WebCore):
136         (RTCDataChannelHandlerChromium):
137         * platform/mediastream/chromium/RTCPeerConnectionHandlerChromium.cpp:
138         (WebCore::RTCPeerConnectionHandlerChromium::createDataChannel):
139         (WebCore::RTCPeerConnectionHandlerChromium::didAddRemoteDataChannel):
140         * platform/mediastream/chromium/RTCPeerConnectionHandlerChromium.h:
141         (WebCore):
142         (RTCPeerConnectionHandlerChromium):
143
144 2012-12-12  Huang Dongsung  <luxtella@company100.net>
145
146         Coordinated Graphics: Refactor TiledBackingStore code in CoordinatedGraphicsLayer.
147         https://bugs.webkit.org/show_bug.cgi?id=103959
148
149         Reviewed by Kenneth Rohde Christiansen.
150
151         TiledBackingStore::setCommitTileUpdatesOnIdleEventLoop() is used when class
152         methods cannot be called asynchronously by client. Updates of tiles are
153         committed as soon as all the events in event queue have been processed.
154         After this patch Frame sets m_commitTileUpdatesOnIdleEventLoop to true.
155
156         In addition, remove TiledBackingStoreClient::tiledBackingStoreUpdatesAllowed()
157         which was introduced for Coordinated Graphics.
158
159         Refactoring covered by existing tests.
160
161         * page/Frame.cpp:
162         (WebCore::Frame::setTiledBackingStoreEnabled):
163         * platform/graphics/TiledBackingStore.cpp:
164         (WebCore::TiledBackingStore::TiledBackingStore):
165         (WebCore::TiledBackingStore::setTrajectoryVector):
166           Separate setting a trajectory vector from coverWithTilesIfNeeded().
167         (WebCore::TiledBackingStore::coverWithTilesIfNeeded):
168         (WebCore::TiledBackingStore::updateTileBuffers):
169         (WebCore::TiledBackingStore::createTiles):
170         (WebCore::TiledBackingStore::isTileBufferUpdatesSuspended):
171         (WebCore::TiledBackingStore::startTileBufferUpdateTimer):
172         (WebCore::TiledBackingStore::tileBufferUpdateTimerFired):
173         (WebCore::TiledBackingStore::startBackingStoreUpdateTimer):
174         (WebCore::TiledBackingStore::backingStoreUpdateTimerFired):
175         * platform/graphics/TiledBackingStore.h:
176         (TiledBackingStore):
177         (WebCore::TiledBackingStore::setCommitTileUpdatesOnIdleEventLoop):
178         * platform/graphics/TiledBackingStoreClient.h:
179         (WebCore::TiledBackingStoreClient::tiledBackingStoreHasPendingTileCreation):
180             If TiledBackingStore does not create all tiles, TiledBackingStore
181             notifies a client of needing to create tiles more, when
182             m_commitTileUpdatesOnIdleEventLoop is false.
183
184 2012-12-11  Jocelyn Turcotte  <jocelyn.turcotte@digia.com>
185
186         [Qt] Fix the inspector not showing up on Windows
187         https://bugs.webkit.org/show_bug.cgi?id=104677
188
189         Reviewed by Simon Hausmann.
190
191         * Target.pri:
192
193 2012-11-29  Yury Semikhatsky  <yurys@chromium.org>
194
195         Web Inspector: Heap snapshot crashes on any page in MacOS Canary
196         https://bugs.webkit.org/show_bug.cgi?id=103076
197
198         Reviewed by Adam Barth.
199
200         Provide global object name resolver to the heap profiler. The callback allows
201         to safely retrieve document URL to be used as a label for corresponding global
202         object in the heap snapshot.
203
204         Test: inspector-protocol/take-heap-snapshot.html
205
206         * bindings/v8/ScriptProfiler.cpp:
207         (WebCore):
208         (WebCore::ScriptProfiler::takeHeapSnapshot):
209
210 2012-12-12  Sheriff Bot  <webkit.review.bot@gmail.com>
211
212         Unreviewed, rolling out r137428.
213         http://trac.webkit.org/changeset/137428
214         https://bugs.webkit.org/show_bug.cgi?id=104776
215
216         It broke the build everywhere (Requested by Ossy on #webkit).
217
218         * platform/graphics/surfaces/mac/GraphicsSurfaceMac.cpp:
219         (WebCore::GraphicsSurface::platformPaintToTextureMapper):
220         * platform/graphics/texmap/TextureMapperGL.cpp:
221         (WebCore::TextureMapperGL::drawQuad):
222         (WebCore::TextureMapperGL::drawBorder):
223         (WebCore::TextureMapperGL::drawTexture):
224         (WebCore):
225         (WebCore::TextureMapperGL::drawTextureRectangleARB):
226         (WebCore::TextureMapperGL::drawSolidColor):
227         (WebCore::TextureMapperGL::drawTextureWithAntialiasing):
228         (WebCore::TextureMapperGL::drawTexturedQuadWithProgram):
229         * platform/graphics/texmap/TextureMapperGL.h:
230         (TextureMapperGL):
231         * platform/graphics/texmap/TextureMapperShaderManager.cpp:
232         (WebCore::getShaderSpec):
233         * platform/graphics/texmap/TextureMapperShaderManager.h:
234         (TextureMapperShaderProgram):
235
236 2012-12-12  Martin Robinson  <mrobinson@igalia.com>
237
238         Web inspector prints a warning about "Debug" not being localized
239         https://bugs.webkit.org/show_bug.cgi?id=104679
240
241         Reviewed by Vsevolod Vlasov.
242
243         Add a missing localization entry for the "Debug" string which is used in the web
244         inspector front-end. This prevents warnings about a missing localized version
245         of the word "Debug" and allows it to be properly localized.
246
247         * English.lproj/localizedStrings.js: Add "Debug"
248
249 2012-12-12  Shinya Kawanaka  <shinyak@chromium.org>
250
251         [Shadow DOM] Implement HTMLShadowElement::olderShadowRoot
252         https://bugs.webkit.org/show_bug.cgi?id=104218
253
254         Reviewed by Hajime Morita.
255
256         Implements HTMLShadowElement::olderShadowRoot, which returns the ShadowRoot the HTMLShadowElement is assigned to.
257         When such ShadowRoot does not exist, 0 is returned.
258
259         Test: fast/dom/shadow/olderShadowRoot-in-shadowelement.html
260
261         * dom/ElementShadow.cpp:
262         (WebCore::ElementShadow::ensureDistributionFromDocument): Ensures distribution of this ElementShadow and
263         all of the parent TreeScope distribution. This function will be shared for Bug 104345.
264         (WebCore):
265         * dom/ElementShadow.h:
266         (ElementShadow):
267         * html/shadow/HTMLShadowElement.cpp:
268         (WebCore::HTMLShadowElement::olderShadowRoot):
269         (WebCore):
270         * html/shadow/HTMLShadowElement.h:
271         * html/shadow/HTMLShadowElement.idl:
272
273 2012-12-12  No'am Rosenthal  <noam@webkit.org>
274
275         [Texmap] Consolidate redundant code for ARB_RECT texture
276         https://bugs.webkit.org/show_bug.cgi?id=104705
277
278         Reviewed by Kenneth Rohde Christiansen.
279
280         Instead of having a whole different function for RECT textures,
281         keep the existing functions and pass a flag that tells
282         TextureMapperGL to use the non-normalized coordinates and the
283         RECT shaders.
284
285         No new tests, refactor only. Tested to not break WebGL on
286         Qt-Mac.
287
288         * platform/graphics/surfaces/mac/GraphicsSurfaceMac.cpp:
289         (WebCore::GraphicsSurface::platformPaintToTextureMapper):
290         * platform/graphics/texmap/TextureMapperGL.cpp:
291         (WebCore::TextureMapperGL::drawQuad):
292             Compensate for rect textures in drawQuad.
293
294         (WebCore::TextureMapperGL::drawBorder):
295         (WebCore::TextureMapperGL::drawTexture):
296         (WebCore::TextureMapperGL::drawSolidColor):
297         (WebCore::TextureMapperGL::drawTextureWithAntialiasing):
298         (WebCore::TextureMapperGL::drawTexturedQuadWithProgram):
299             Pass flags to TextureMapperGL::drawQuad instead of a bool.
300
301         * platform/graphics/texmap/TextureMapperGL.h:
302         (TextureMapperGL):
303         * platform/graphics/texmap/TextureMapperShaderManager.cpp:
304         (WebCore::getShaderSpec):
305         * platform/graphics/texmap/TextureMapperShaderManager.h:
306         (TextureMapperShaderProgram):
307             Compensate for the texture-size in the vertex
308             shader instead of in the fragment shader.
309
310 2012-12-11  Hayato Ito  <hayato@chromium.org>
311
312         REGRESSION(r137408): breaks chromium's browser tests which use WebKitShadowRoot (Requested by hayato on #webkit).
313         https://bugs.webkit.org/show_bug.cgi?id=104770
314
315         Unreviewed, build fix.
316
317         * dom/ShadowRoot.idl:
318         * page/DOMWindow.idl:
319
320 2012-12-11  Sheriff Bot  <webkit.review.bot@gmail.com>
321
322         Unreviewed, rolling out r137333, r137344, r137364, and
323         r137377.
324         http://trac.webkit.org/changeset/137333
325         http://trac.webkit.org/changeset/137344
326         http://trac.webkit.org/changeset/137364
327         http://trac.webkit.org/changeset/137377
328         https://bugs.webkit.org/show_bug.cgi?id=104771
329
330         Caused a raft of browser_test failures in Chromium (Requested
331         by aklein on #webkit).
332
333         * loader/DocumentLoader.cpp:
334         (WebCore::DocumentLoader::setRequest):
335         (WebCore::DocumentLoader::subresource):
336         (WebCore::DocumentLoader::addSubresourceLoader):
337         (WebCore::DocumentLoader::removeSubresourceLoader):
338         (WebCore::DocumentLoader::startLoadingMainResource):
339         * loader/MainResourceLoader.cpp:
340         (WebCore::MainResourceLoader::MainResourceLoader):
341         (WebCore::MainResourceLoader::~MainResourceLoader):
342         (WebCore::MainResourceLoader::receivedError):
343         (WebCore::MainResourceLoader::willCancel):
344         (WebCore::MainResourceLoader::didCancel):
345         (WebCore::MainResourceLoader::continueAfterNavigationPolicy):
346         (WebCore::MainResourceLoader::addData):
347         (WebCore::MainResourceLoader::willSendRequest):
348         (WebCore::MainResourceLoader::continueAfterContentPolicy):
349         (WebCore::MainResourceLoader::didReceiveResponse):
350         (WebCore::MainResourceLoader::didReceiveData):
351         (WebCore::MainResourceLoader::didFinishLoading):
352         (WebCore::MainResourceLoader::didFail):
353         (WebCore::MainResourceLoader::reportMemoryUsage):
354         (WebCore::MainResourceLoader::handleSubstituteDataLoadNow):
355         (WebCore::MainResourceLoader::loadNow):
356         (WebCore):
357         (WebCore::MainResourceLoader::load):
358         (WebCore::MainResourceLoader::setDefersLoading):
359         * loader/MainResourceLoader.h:
360         (MainResourceLoader):
361         * loader/ResourceLoader.cpp:
362         (WebCore::ResourceLoader::willSendRequest):
363         * loader/ResourceLoader.h:
364         (ResourceLoader):
365         (WebCore::ResourceLoader::defersLoading):
366         * loader/SubresourceLoader.cpp:
367         (WebCore::SubresourceLoader::willSendRequest):
368         * loader/appcache/ApplicationCacheHost.cpp:
369         (WebCore::ApplicationCacheHost::maybeLoadFallbackForMainResponse):
370         (WebCore::ApplicationCacheHost::maybeLoadFallbackForMainError):
371         * loader/cache/CachedRawResource.cpp:
372         (WebCore::CachedRawResource::willSendRequest):
373         * loader/cache/CachedResourceLoader.cpp:
374         (WebCore::CachedResourceLoader::loadDone):
375         * loader/mac/DocumentLoaderMac.cpp:
376         (WebCore::DocumentLoader::schedule):
377         (WebCore::DocumentLoader::unschedule):
378
379 2012-12-11  Kentaro Hara  <haraken@chromium.org>
380
381         Unreviewed, rolling out r137398.
382         http://trac.webkit.org/changeset/137398
383         https://bugs.webkit.org/show_bug.cgi?id=104188
384
385         A bunch of webaudio tests hit ASSERTs
386
387         * CMakeLists.txt:
388         * DerivedSources.make:
389         * DerivedSources.pri:
390         * GNUmakefile.list.am:
391         * Modules/webaudio/AudioContext.cpp:
392         (WebCore::AudioContext::createOfflineContext):
393         (WebCore):
394         * Modules/webaudio/AudioContext.h:
395         (AudioContext):
396         * Modules/webaudio/DOMWindowWebAudio.idl:
397         * Modules/webaudio/OfflineAudioContext.cpp: Removed.
398         * Modules/webaudio/OfflineAudioContext.h: Removed.
399         * Modules/webaudio/OfflineAudioContext.idl: Removed.
400         * WebCore.gypi:
401         * WebCore.xcodeproj/project.pbxproj:
402         * bindings/generic/RuntimeEnabledFeatures.h:
403         * bindings/js/JSAudioContextCustom.cpp:
404         (WebCore::JSAudioContextConstructor::constructJSAudioContext):
405         * bindings/v8/custom/V8AudioContextCustom.cpp:
406         (WebCore::V8AudioContext::constructorCallbackCustom):
407
408 2012-12-11  Shinya Kawanaka  <shinyak@chromium.org>
409
410         [Shadow DOM] registering InsertionPoints to ShadowRoot should work out of a document.
411         https://bugs.webkit.org/show_bug.cgi?id=104346
412
413         Reviewed by Hajime Morita.
414
415         We need to register InsertionPoints even if ShadowRoot is out of Document, since distribution should work
416         out of Document, too.
417
418         Instead of checking isInDocument(), we have to make sure InsertionPoint and an element which InsertionPoint
419         inserted into have the same treescope.
420
421         Tests: fast/dom/shadow/has-content-elements.html
422                fast/dom/shadow/has-shadow-insertion-point.html
423
424         * html/shadow/InsertionPoint.cpp:
425         (WebCore::InsertionPoint::insertedInto):
426         (WebCore::InsertionPoint::removedFrom):
427
428 2012-12-11  Takashi Sakamoto  <tasak@google.com>
429
430         Text nodes in shadow roots don't inherit style properly
431         https://bugs.webkit.org/show_bug.cgi?id=101116
432
433         Reviewed by Hajime Morita.
434
435         Use NodeRenderingContext to resolve styles of text nodes.
436         If text nodes are direct children of shadow roots, the text nodes
437         should be inherited styles from their shadow hosts.
438         But if reset-style-inheritance flag is true, the text nodes should
439         not be inherited. And if text nodes are distributed nodes,
440         we have to check whether their insertion point's
441         reset-style-inheritance.
442         c.f. shadow dom spec is:
443         http://dvcs.w3.org/hg/webcomponents/raw-file/tip/spec/shadow/index.html#styles
444
445         Test: fast/dom/shadow/text-node-in-shadow.html
446
447         * css/StyleResolver.cpp:
448         (WebCore::StyleResolver::styleForElement):
449         Modified to use defaultStyleForElement if the given element has
450         no parent style.
451         (WebCore::StyleResolver::initForStyleResolve):
452         Removed shouldResetStyleInheritance, because now NodeRenderingContext
453         resetStyleInheritance() takes care of reset-style-inheritance of
454         both shadow roots and insertion points.
455         (WebCore::StyleResolver::defaultStyleForElement):
456         Added to create a default style for elements.
457         (WebCore):
458         (WebCore::StyleResolver::styleForText):
459         Use NodeRenderingContext to find the parent node for style from the
460         given text node. If no parent node is found or reset-style-inheritance
461         is true, returns a default style (i.e. empty render style).
462         Otherwise, just returns the found node's style.
463         * css/StyleResolver.h:
464         (StyleResolver):
465         * dom/ComposedShadowTreeWalker.cpp:
466         (WebCore::ComposedShadowTreeWalker::ParentTraversalDetails::didTraverseInsertionPoint):
467         Modify to consider insertion point's resetStyleInheritance.
468         * dom/NodeRenderingContext.cpp:
469         (WebCore::NodeRenderingContext::createRendererForTextIfNeeded):
470         Since NodeRenderingContext has already found a parent node for
471         rendering and style and a parentRenderer is just the found node's
472         renderer, we have to only check reset-style-inheritance.
473         If reset, use default style. Otherwise, the parentRenderer's style.
474         * dom/Text.cpp:
475         (WebCore::Text::recalcTextStyle):
476         Use styleForText instead of parentRenderer's styles if the given text
477         node is a direct child of a shadow root or a direct child of a shadow
478         host.
479
480 2012-12-11  Takashi Sakamoto  <tasak@google.com>
481
482         Hide HOST_RULE behind SHADOW_DOM flag.
483         https://bugs.webkit.org/show_bug.cgi?id=102321
484
485         Reviewed by Dimitri Glazkov.
486
487         @host @-rules are only available when the rules are declared in styles
488         in shadow dom trees. So if SHADOW_DOM is disabled, we don't need
489         @host @-rules.
490
491         No new tests. Just hide HOST_RULE behind SHADOW_DOM flag.
492
493         * css/StyleResolver.h:
494         Hide "class ShadowRuleHost".
495         * css/StyleRule.cpp:
496         (WebCore::StyleRuleBase::reportMemoryUsage):
497         (WebCore::StyleRuleBase::destroy):
498         (WebCore::StyleRuleBase::copy):
499         (WebCore::StyleRuleBase::createCSSOMWrapper):
500         * css/StyleRule.h:
501         (StyleRuleBase):
502         Hide "Host" type and isHostRule.
503         (StyleRuleHost):
504         Hide "class StyleRuleHost".
505         * css/StyleSheetContents.cpp:
506         (WebCore::childRulesHaveFailedOrCanceledSubresources):
507
508 2012-12-11  Dominic Mazzoni  <dmazzoni@google.com>
509
510         AX: accessibilityIsIgnored should avoid computing textUnderElement
511         https://bugs.webkit.org/show_bug.cgi?id=104688
512
513         Reviewed by Chris Fleizach.
514
515         Simplify the logic in accessibilityIsIgnored without affecting
516         the results of any tests. In particular, avoid expensive calls to
517         textUnderElement.
518
519         Covered by existing tests.
520
521         * accessibility/AccessibilityNodeObject.cpp:
522         (WebCore::AccessibilityNodeObject::isGenericFocusableElement):
523         * accessibility/AccessibilityRenderObject.cpp:
524         (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
525
526 2012-12-11  Kentaro Hara  <haraken@chromium.org>
527
528         [V8] Reachable event listeners on image elements can be collected in a minor DOM GC
529         https://bugs.webkit.org/show_bug.cgi?id=104734
530
531         Reviewed by Kenneth Russell.
532
533         A major DOM GC treats image elements specially. In
534         V8GCController::opaqueRootForGC(), a major DOM GC puts image elements
535         that have pending activities into the same object group of their document.
536         This guarantees that image elements that have pending activities
537         are not garbage collected in the major DOM GC.
538
539         This patch adds the same special handling to a minor DOM GC to guarantee
540         the same thing in the minor DOM GC too.
541
542         In long-term, we might want to remove the special handling by making
543         image elements active DOM nodes.
544
545         Test: Manually confirmed that all characters in
546         http://alteredqualia.com/three/examples/webgl_animation_skinning_tf2.html
547         are rendered correctly.
548
549         * bindings/v8/V8GCController.cpp:
550         (WebCore::V8GCController::opaqueRootForGC):
551         (WebCore::gcTree):
552
553 2012-12-11  Dominic Mazzoni  <dmazzoni@google.com>
554
555         AX: Make isActionSupported cross-platform.
556         https://bugs.webkit.org/show_bug.cgi?id=104681
557
558         Reviewed by Chris Fleizach.
559
560         Add UserGestureIndicator to increment() and decrement()
561         so that all accessibility actions are treated as
562         user actions, not scripted actions.
563
564         * accessibility/AccessibilityNodeObject.cpp:
565         (WebCore::AccessibilityNodeObject::increment):
566         (WebCore::AccessibilityNodeObject::decrement):
567
568 2012-12-11  Viatcheslav Ostapenko  <v.ostapenko@samsung.com>
569
570         Remove conversion to/from float and float division from ImageFrame::setRGBA
571         https://bugs.webkit.org/show_bug.cgi?id=103693
572
573         Reviewed by Brent Fulgham.
574
575         Replace floating point operations used for alpha premultiply with fixed point arithmetic
576         which is basically integer operations. Allows to shave extra couple percent from decoding
577         images with transparency.
578
579         Covered by existing tests.
580
581         * platform/image-decoders/ImageDecoder.h:
582         (ImageFrame):
583         (WebCore::ImageFrame::fixPointUnsignedMultiply):
584         (WebCore::ImageFrame::setRGBA):
585
586 2012-12-11  Kihong Kwon  <kihong.kwon@samsung.com>
587
588         Vibration API: IDL type doesn't match implementation type
589         https://bugs.webkit.org/show_bug.cgi?id=103899
590
591         Reviewed by Kentaro Hara.
592
593         According to WebIDL, "unsigned long" corresponds to "unsigned" in the platform.
594         Therefore unsigned long need to be changed to unsigned for the Vibration API.
595         - Change a parameter type of vibrate function from unsigned long to unsigned.
596
597         No new tests, it is covered by exist test.
598
599         * Modules/vibration/NavigatorVibration.cpp:
600         (WebCore::NavigatorVibration::vibrate):
601         * Modules/vibration/NavigatorVibration.h:
602         (NavigatorVibration):
603         * Modules/vibration/Vibration.cpp:
604         (WebCore::Vibration::vibrate):
605         * Modules/vibration/Vibration.h:
606         (Vibration):
607         * Modules/vibration/VibrationClient.h:
608         (VibrationClient):
609         * bindings/js/JSDOMBinding.h:
610         * bindings/scripts/CodeGeneratorJS.pm:
611         Remove workaround codes for the Vibration API which is mapped from unsigned long to unsigned long.
612         It should be mapped from unsigned long to unsigned by WebIDL spec.
613         (GetNativeVectorInnerType):
614         * bindings/scripts/test/JS/JSTestObj.cpp:
615         (WebCore::jsTestObjPrototypeFunctionOverloadedMethod10):
616         (WebCore::jsTestObjPrototypeFunctionMethodWithUnsignedLongSequence):
617
618 2012-12-11  Xinazhu Wang  <wangxianzhu@chromium.org>
619
620         ScrollingCoordinator::hasVisibleSlowRepaintFixedObject() should exclude out-of-view fixed position elements
621         https://bugs.webkit.org/show_bug.cgi?id=102543
622
623         Let RenderLayerCompositor manage the reasons that fixed position elements are not composited.
624         Check the reason in ScrollingCoordinator::hasVisibleSlowRepaintFixedObjects(), don't let fixed position layer not composited with explicit reasons cause slow scrolling.
625
626         Reviewed by James Robinson.
627
628         Test: compositing/layer-creation/fixed-position-out-of-view-scroll-reason.html
629
630         * page/scrolling/ScrollingCoordinator.cpp:
631         (WebCore::ScrollingCoordinator::hasVisibleSlowRepaintFixedObjects): Exclude fixed position elements that are not composited for explicit reasons.
632         * rendering/RenderLayerCompositor.cpp:
633         (WebCore::RenderLayerCompositor::computeCompositingRequirements): Manages m_fixedPositionLayerNotCompositedReasonMap.
634         (WebCore::RenderLayerCompositor::needsToBeComposited):
635         (WebCore::RenderLayerCompositor::requiresCompositingLayer):
636         (WebCore::RenderLayerCompositor::requiresCompositingForPosition):
637         * rendering/RenderLayerCompositor.h:
638         (WebCore::RenderLayerCompositor::fixedPositionLayerNotCompositedReason): Now outputs fixedPositionLayerNotCompositedreason.
639         (RenderLayerCompositor):
640
641 2012-12-11  Hayato Ito  <hayato@chromium.org>
642
643         [Shadow DOM] Kill ShadowRoot constructor
644         https://bugs.webkit.org/show_bug.cgi?id=102913
645
646         Reviewed by Dimitri Glazkov.
647
648         Remove ShadowRoot constructor in favor of Element.webkitCreateShadowRoot().
649
650         No new tests. Update existing tests.
651
652         * dom/ShadowRoot.idl:
653         * page/DOMWindow.idl:
654         * testing/Internals.cpp:
655         (WebCore::Internals::createShadowRoot):
656         (WebCore):
657         * testing/Internals.h:
658         (Internals):
659         * testing/Internals.idl:
660
661 2012-12-11  Antti Koivisto  <antti@apple.com>
662
663         Add Element-specific traversal functions
664         https://bugs.webkit.org/show_bug.cgi?id=104685
665
666         Reviewed by Ryosuke Niwa.
667
668         In many cases where we use NodeTraversal we really only want Elements. By having
669         Element specific iteration functions we can tighten the code and make it faster too.
670
671         This patch adds ElementTraversal namespace, similar to NodeTraversal. It also switches
672         bunch of NodeTraversal call sites that obviously only care about elements to using
673         the new interface.
674         
675         This should be a speedup too as we avoid number of branches by not having to look
676         for children of non-ContainerNodes and by allowing use of ContainerNode specific
677         accessors.
678
679         * accessibility/AccessibilityRenderObject.cpp:
680         (WebCore::AccessibilityRenderObject::addImageMapChildren):
681         * css/SelectorChecker.cpp:
682         (WebCore::linkAttribute):
683         (WebCore::SelectorChecker::allVisitedStateChanged):
684         (WebCore::SelectorChecker::visitedStateChanged):
685         * css/StyleInvalidationAnalysis.cpp:
686         (WebCore::elementMatchesSelectorScopes):
687         (WebCore::StyleInvalidationAnalysis::invalidateStyle):
688         * dom/ContainerNodeAlgorithms.h:
689         (WebCore::ChildFrameDisconnector::collectDescendant):
690         * dom/Document.cpp:
691         (WebCore::Document::buildAccessKeyMap):
692         (WebCore::Document::updateBaseURL):
693         (WebCore::Document::processBaseElement):
694         * dom/DocumentOrderedMap.cpp:
695         (WebCore::DocumentOrderedMap::get):
696         * dom/Element.cpp:
697         (WebCore::Element::firstElementChild):
698         * dom/Element.h:
699         (WebCore):
700         * dom/ElementShadow.cpp:
701         (WebCore::ElementShadow::collectSelectFeatureSetFrom):
702         * dom/NodeTraversal.h:
703         (ElementTraversal):
704         (WebCore):
705         (WebCore::ElementTraversal::traverseNextElementTemplate):
706         (WebCore::ElementTraversal::next):
707         (WebCore::ElementTraversal::firstWithin):
708         (WebCore::ElementTraversal::traverseNextElementSkippingChildrenTemplate):
709         (WebCore::ElementTraversal::nextSkippingChildren):
710         (NodeTraversal):
711         * dom/TreeScope.cpp:
712         (WebCore::TreeScope::labelElementForId):
713         (WebCore::TreeScope::findAnchor):
714         * editing/CompositeEditCommand.cpp:
715         (WebCore::CompositeEditCommand::cloneParagraphUnderNewElement):
716         * editing/DeleteSelectionCommand.cpp:
717         (WebCore::DeleteSelectionCommand::handleGeneralDelete):
718         * editing/FrameSelection.cpp:
719         (WebCore::scanForForm):
720         * editing/markup.cpp:
721         (WebCore::completeURLs):
722         * html/HTMLFieldSetElement.cpp:
723         (WebCore::HTMLFieldSetElement::invalidateDisabledStateUnder):
724         (WebCore::HTMLFieldSetElement::childrenChanged):
725         (WebCore::HTMLFieldSetElement::legend):
726         (WebCore::HTMLFieldSetElement::refreshElementsIfNeeded):
727         * html/HTMLFormElement.cpp:
728         (WebCore::HTMLFormElement::formElementIndex):
729         * html/HTMLLabelElement.cpp:
730         (WebCore::HTMLLabelElement::control):
731         * html/HTMLLegendElement.cpp:
732         (WebCore::HTMLLegendElement::associatedControl):
733         * html/HTMLMapElement.cpp:
734         (WebCore::HTMLMapElement::mapMouseEvent):
735         * html/HTMLNameCollection.cpp:
736         (WebCore::HTMLNameCollection::virtualItemAfter):
737         * html/HTMLObjectElement.cpp:
738         (WebCore::HTMLObjectElement::containsJavaApplet):
739         * html/HTMLSelectElement.cpp:
740         (WebCore::HTMLSelectElement::recalcListItems):
741         * html/shadow/ContentDistributor.cpp:
742         (WebCore::ShadowRootContentDistributionData::ensureInsertionPointList):
743         * page/FocusController.cpp:
744         (WebCore::FocusController::findFocusCandidateInContainer):
745         * rendering/RenderCounter.cpp:
746         (WebCore::nextInPreOrder):
747         * svg/SVGSVGElement.cpp:
748         (WebCore::SVGSVGElement::collectIntersectionOrEnclosureList):
749         * svg/SVGStyledElement.cpp:
750         (WebCore::SVGStyledElement::title):
751         * svg/SVGUseElement.cpp:
752         (WebCore::removeDisallowedElementsFromSubtree):
753         * svg/animation/SMILTimeContainer.cpp:
754         (WebCore::SMILTimeContainer::updateDocumentOrderIndexes):
755
756 2012-12-11  KyungTae Kim  <ktf.kim@samsung.com>
757
758         [soup] Unused parameter in ResourceHandleSoup.cpp
759         https://bugs.webkit.org/show_bug.cgi?id=104728
760
761         Reviewed by Kentaro Hara.
762
763         The soupLogPrinter has unused parameter 'logger', 
764         remove the parameter name to fix 'unused parameter' build warning.
765
766         * platform/network/soup/ResourceHandleSoup.cpp:
767         (WebCore::soupLogPrinter):
768
769 2012-12-11  Xianzhu Wang  <wangxianzhu@chromium.org>
770
771         Fixed position out-of-view check is incorrect when page is scaled
772         https://bugs.webkit.org/show_bug.cgi?id=104303
773
774         Reviewed by Kenneth Rohde Christiansen.
775
776         Test: compositing/layer-creation/fixed-position-out-of-view-scaled.html
777               compositing/layer-creation/fixed-position-out-of-view-scaled-scroll.html
778
779         * rendering/RenderLayerCompositor.cpp:
780         (WebCore::RenderLayerCompositor::requiresCompositingForPosition): Scale the content rect of the fixed position layer before checking out-of-view.
781
782 2012-12-11  Chris Rogers  <crogers@google.com>
783
784         Implement OfflineAudioContext constructor
785         https://bugs.webkit.org/show_bug.cgi?id=104188
786
787         Reviewed by Kentaro Hara.
788
789         The Web Audio layout tests have relied on an undocumented way (in the specification) to render
790         audio faster than realtime using an OfflineAudioContext.  We want to expose a proper OfflineAudioContext
791         object and constructor instead of piggybacking off of the normal AudioContext.
792             
793         * CMakeLists.txt:
794         * DerivedSources.make:
795         * DerivedSources.pri:
796         * GNUmakefile.list.am:
797         * Modules/webaudio/AudioContext.cpp:
798         (WebCore::AudioContext::isSampleRateRangeGood):
799         * Modules/webaudio/AudioContext.h:
800         (AudioContext):
801         * Modules/webaudio/DOMWindowWebAudio.idl:
802         * Modules/webaudio/OfflineAudioContext.cpp: Added.
803         (WebCore):
804         (WebCore::OfflineAudioContext::create):
805         (WebCore::OfflineAudioContext::OfflineAudioContext):
806         (WebCore::OfflineAudioContext::~OfflineAudioContext):
807         * Modules/webaudio/OfflineAudioContext.h: Added.
808         (WebCore):
809         (OfflineAudioContext):
810         * Modules/webaudio/OfflineAudioContext.idl: Added.
811         * WebCore.gypi:
812         * WebCore.xcodeproj/project.pbxproj:
813         * bindings/generic/RuntimeEnabledFeatures.h:
814         (WebCore::RuntimeEnabledFeatures::webkitOfflineAudioContextEnabled):
815         * bindings/js/JSAudioContextCustom.cpp:
816         (WebCore::JSAudioContextConstructor::constructJSAudioContext):
817         * bindings/v8/custom/V8AudioContextCustom.cpp:
818         (WebCore::V8AudioContext::constructorCallbackCustom):
819
820 2012-12-11  Jun Jiang  <jun.a.jiang@intel.com>
821
822         WebGL: Avoid unnecessary memory copy or conversion in texImage2D and texSubImage2D for HTMLVideoElement
823         https://bugs.webkit.org/show_bug.cgi?id=102161
824
825         Reviewed by Kenneth Russell.
826
827         There are several memory copy or conversions in the texImage2D and texSubImage2D for HTMLVideoElement which may be avoided. This patch removes the redundant BackingStore copy if the corresponding Graphics port supports the DontCopyBackingStore behavior. Moreover, it optimizes the AlphaOp if the Image source is from HTMLVideoElement to avoid unnecessary Unmultiply or Premultiply operation in unpack/pack. 
828
829         Already covered by current tests. 
830
831         * html/canvas/WebGLRenderingContext.cpp:
832         (WebCore):
833         (WebCore::WebGLRenderingContext::texImage2DImpl):
834         (WebCore::WebGLRenderingContext::texImage2D):
835         (WebCore::WebGLRenderingContext::videoFrameToImage): add a parameter to choose BackingStore copy behavior.
836         (WebCore::WebGLRenderingContext::texSubImage2DImpl):
837         (WebCore::WebGLRenderingContext::texSubImage2D):
838         * html/canvas/WebGLRenderingContext.h:
839         (WebGLRenderingContext):
840         * platform/graphics/GraphicsContext3D.cpp:
841         (WebCore::GraphicsContext3D::ImageExtractor::ImageExtractor):
842         * platform/graphics/GraphicsContext3D.h:
843         (ImageExtractor):
844         (WebCore::GraphicsContext3D::ImageExtractor::imageSourceUnpackAlignment):
845         (WebCore::GraphicsContext3D::ImageExtractor::imageHtmlDomSource):
846         * platform/graphics/ImageBuffer.h:
847         (ImageBuffer):
848         * platform/graphics/cairo/GraphicsContext3DCairo.cpp:
849         (WebCore::GraphicsContext3D::ImageExtractor::extractImage): optimize the AlphaOp for HTMLVideoElement input.
850         * platform/graphics/cairo/ImageBufferCairo.cpp:
851         (WebCore::ImageBuffer::fastCopyImageMode):
852         (WebCore):
853         * platform/graphics/cg/ImageBufferCG.cpp:
854         (WebCore::ImageBuffer::fastCopyImageMode):
855         (WebCore):
856         * platform/graphics/qt/ImageBufferQt.cpp:
857         (WebCore::ImageBuffer::fastCopyImageMode):
858         (WebCore):
859         * platform/graphics/skia/GraphicsContext3DSkia.cpp:
860         (WebCore::GraphicsContext3D::ImageExtractor::extractImage): optimize the AlphaOp for HTMLVideoElement input.
861         * platform/graphics/skia/ImageBufferSkia.cpp:
862         (WebCore::ImageBuffer::fastCopyImageMode):
863         (WebCore):
864         * platform/graphics/wince/ImageBufferWinCE.cpp:
865         (WebCore::ImageBuffer::fastCopyImageMode):
866         (WebCore):
867         * platform/graphics/wx/ImageBufferWx.cpp:
868         (WebCore::ImageBuffer::fastCopyImageMode):
869         (WebCore):
870
871 2012-12-11  Viatcheslav Ostapenko  <v.ostapenko@samsung.com>
872
873         [EFL] Missing implementation of GraphicsContext3DPrivate::platformLayerSize()
874         https://bugs.webkit.org/show_bug.cgi?id=104726
875
876         Reviewed by Kenneth Rohde Christiansen.
877
878         Add common implementation of GraphicsContext3DPrivate::platformLayerSize() similar
879         to Qt version. There is nothing platform specific in Qt version. 
880
881         Covered by existing tests.
882
883         * platform/graphics/efl/GraphicsContext3DPrivate.cpp:
884         (GraphicsContext3DPrivate::platformLayerSize):
885         * platform/graphics/efl/GraphicsContext3DPrivate.h:
886         (GraphicsContext3DPrivate):
887
888 2012-12-11  No'am Rosenthal  <noam@webkit.org>
889
890         [Texmap] Slightly improve readability of the antialias shader
891         https://bugs.webkit.org/show_bug.cgi?id=104708
892
893         Reviewed by Martin Robinson.
894
895         Modify the antialiasing shader to include separate function that perform
896         discrete operations, rather than one big function that repeats the same
897         operations.
898
899         No new tests, readability fix.
900
901         * platform/graphics/texmap/TextureMapperShaderManager.cpp:
902         (WebCore::getShaderSpec):
903
904 2012-12-11  Tim Horton  <timothy_horton@apple.com>
905
906         -webkit-svg-shadow radius changes don't cause children's boundaries to be recomputed
907         https://bugs.webkit.org/show_bug.cgi?id=104722
908         <rdar://problem/12821080>
909
910         Reviewed by Simon Fraser.
911
912         Changes to -webkit-svg-shadow currently cause a relayout of the directly affected renderer
913         and its parents, but not its children. However, children have the shadow radius
914         baked into their cached boundaries, so these need to be invalidated.
915
916         Test: svg/repaint/repaint-webkit-svg-shadow-container.html
917
918         * rendering/RenderObject.h: Expose needsBoundariesUpdate().
919         * rendering/svg/RenderSVGContainer.h: Expose needsBoundariesUpdate().
920         * rendering/svg/RenderSVGImage.h: Expose needsBoundariesUpdate().
921         * rendering/svg/RenderSVGRoot.h: Expose needsBoundariesUpdate().
922         * rendering/svg/RenderSVGShape.h: Expose needsBoundariesUpdate().
923         * rendering/svg/SVGRenderSupport.cpp:
924         (WebCore::SVGRenderSupport::layoutChildren): If the renderer has a shadow and
925         is in needs of a boundaries update, mark children as needing boundaries updates too.
926
927 2012-12-11  Xianzhu Wang  <wangxianzhu@chromium.org>
928
929         Add window.internals.mainThreadScrollReasonsAsText for testing slow scrolling
930         https://bugs.webkit.org/show_bug.cgi?id=104714
931
932         Reviewed by Eric Seidel.
933
934         No new tests. Adds test api for bug 102543 and other bugs.
935
936         * WebCore.exp.in:
937         * page/Page.cpp:
938         (WebCore::ScrollingCoordinator::mainThreadScrollingReasonsAsText): Extracted from ScrollingStateScrollingNode::dumpProperties for layout tests.
939         (WebCore):
940         * page/Page.h:
941         (Page):
942         * page/scrolling/ScrollingCoordinator.cpp:
943         (WebCore::ScrollingCoordinator::mainThreadScrollingReasonsAsText):
944         (WebCore):
945         * page/scrolling/ScrollingCoordinator.h:
946         (ScrollingCoordinator):
947         * page/scrolling/ScrollingStateScrollingNode.cpp:
948         (WebCore::ScrollingStateScrollingNode::dumpProperties): Moved code for mainThreadScrollingReasons to ScrollingCoordinator.cpp.
949         * testing/Internals.cpp:
950         (WebCore::Internals::mainThreadScrollingReasons):
951         (WebCore):
952         * testing/Internals.h:
953         * testing/Internals.idl:
954
955 2012-12-11  Simon Fraser  <simon.fraser@apple.com>
956
957         Enhance the TileCache to cache more tiles
958         https://bugs.webkit.org/show_bug.cgi?id=104612
959
960         Reviewed by Tim Horton.
961
962         Add smarts to the TileCache so that it keeps some tiles around
963         for longer and can prepopulate tiles in to-be-scrolled-to regions.
964
965         The new tile management is as follows:
966         * As before, we expand the visible rect to create a "tile coverage rect"
967         which is twice the width, and three times the height of the visible rect.
968         * At the edges, this coverage rect is constrained by them, rather than being
969         truncated as before (leading to larger initial tile coverage).
970         * When tiles leave the coverage rect, we keep them around but track
971         them in cohorts (where a cohort is a set of tiles that left the coverage rect
972         at the same time).
973         * If a repaint comes in for a "secondary" tile, we don't paint it, but mark
974         the tile as being stale. It will get repainted (in full) if it moves back inside
975         the coverage rect.
976         * Cohorts are kept around for 2 seconds after they were created. A repeating
977         1-second timer clears tiles in old cohorts.
978         * Secondary tiles are pruned if the visible rect changes, or if zooming happens.
979         * TiledBacking exposes a way to prepopulate a rect with tiles; this is called
980         when scrolling (e.g. via Home/End keys). Tiles created this way (if outside
981         the coverage rect) go into a cohort.
982
983         * page/FrameView.cpp:
984         (WebCore::FrameView::requestScrollPositionUpdate): Tell the TiledBacking
985         to prepopulate some tiles.
986         * platform/graphics/TiledBacking.h:
987         (TiledBacking): Add prepopulateRect().
988         * platform/graphics/ca/mac/TileCache.h:
989         (TileInfo): The TileMap contains TileInfos, which contain a pointer
990         to the layer, their cohort, and a 'stale content' flag.
991         (WebCore::TileCache::TileInfo::TileInfo):
992         (TileCache):
993         (TileCohortInfo):
994         (WebCore::TileCache::TileCohortInfo::TileCohortInfo):
995         * platform/graphics/ca/mac/TileCache.mm:
996         (WebCore::TileCache::TileCache):
997         (WebCore::TileCache::~TileCache):
998         (WebCore::TileCache::setNeedsDisplay):
999         (WebCore::TileCache::setNeedsDisplayInRect):
1000         (WebCore::TileCache::setTileNeedsDisplayInRect):
1001         (WebCore::TileCache::setScale):
1002         (WebCore::TileCache::setAcceleratesDrawing):
1003         (WebCore::TileCache::setTilesOpaque):
1004         (WebCore::TileCache::prepopulateRect):
1005         (WebCore::TileCache::setTileDebugBorderWidth):
1006         (WebCore::TileCache::setTileDebugBorderColor):
1007         (WebCore::TileCache::computeTileCoverageRect):
1008         (WebCore::TileCache::tileSizeForCoverageRect):
1009         (WebCore::TileCache::tileRevalidationTimerFired):
1010         (WebCore::TileCache::blankPixelCount):
1011         (WebCore::queueTileForRemoval):
1012         (WebCore::TileCache::removeAllTiles):
1013         (WebCore::TileCache::removeAllSecondaryTiles):
1014         (WebCore::TileCache::removeTilesInCohort):
1015         (WebCore::TileCache::revalidateTiles):
1016         (WebCore::TileCache::nextTileCohort):
1017         (WebCore::TileCache::startedNewCohort):
1018         (WebCore::TileCache::newestTileCohort):
1019         (WebCore::TileCache::oldestTileCohort):
1020         (WebCore::TileCache::scheduleCohortRemoval):
1021         (WebCore::TileCache::cohortRemovalTimerFired):
1022         (WebCore::TileCache::ensureTilesForRect):
1023         (WebCore::TileCache::tileGridExtent):
1024         (WebCore::TileCache::tileCoverageRect):
1025         (WebCore::TileCache::tileLayerAtIndex):
1026         (WebCore::TileCache::drawTileMapContents):
1027
1028 2012-12-11  Simon Fraser  <simon.fraser@apple.com>
1029
1030         Remove redundant AffineTransform in RenderSVGShape::fillAndStrokeShape()
1031         https://bugs.webkit.org/show_bug.cgi?id=104736
1032
1033         Reviewed by Dean Jackson.
1034
1035         RenderSVGShape::fillAndStrokeShape() allocated a AffineTransform on
1036         the stack which was shadowed by another one in narrower scope. It
1037         can be removed.
1038
1039         * rendering/svg/RenderSVGShape.cpp:
1040         (WebCore::RenderSVGShape::fillAndStrokeShape):
1041
1042 2012-12-11  Seokju Kwon  <seokju.kwon@gmail.com>
1043
1044         [EFL] Remove unused headers
1045         https://bugs.webkit.org/show_bug.cgi?id=104661
1046
1047         Reviewed by Ryosuke Niwa.
1048
1049         Header inclusion cleanup.
1050         Remove "NotImplemented.h".
1051
1052         No new tests, no behavior change.
1053
1054         * platform/efl/CursorEfl.cpp:
1055         * platform/efl/FileSystemEfl.cpp:
1056         * platform/efl/ScrollViewEfl.cpp:
1057         * platform/efl/ScrollbarThemeEfl.cpp:
1058         * platform/efl/SoundEfl.cpp:
1059
1060 2012-12-11  Alec Flett  <alecflett@chromium.org>
1061
1062         IndexedDB: Stub out data operations on IDBDatabaseBackendInterface
1063         https://bugs.webkit.org/show_bug.cgi?id=104592
1064
1065         Reviewed by Dimitri Glazkov.
1066
1067         In preparation for removing objectStore/index backend
1068         interfaces, stub out the basic data operations around
1069         get, put, cursors, etc. on IDBDatabaseBackendInterface.
1070
1071         No new tests, this is just preparation for refactoring.
1072
1073         * Modules/indexeddb/IDBDatabaseBackendImpl.cpp:
1074         (WebCore::IDBDatabaseBackendImpl::get):
1075         (WebCore):
1076         (WebCore::IDBDatabaseBackendImpl::put):
1077         (WebCore::IDBDatabaseBackendImpl::setIndexKeys):
1078         (WebCore::IDBDatabaseBackendImpl::setIndexesReady):
1079         (WebCore::IDBDatabaseBackendImpl::openCursor):
1080         (WebCore::IDBDatabaseBackendImpl::count):
1081         (WebCore::IDBDatabaseBackendImpl::deleteRange):
1082         (WebCore::IDBDatabaseBackendImpl::clear):
1083         * Modules/indexeddb/IDBDatabaseBackendImpl.h:
1084         (IDBDatabaseBackendImpl):
1085         * Modules/indexeddb/IDBDatabaseBackendInterface.h:
1086         (WebCore):
1087         (IDBDatabaseBackendInterface):
1088
1089 2012-12-11  Roger Fong  <roger_fong@apple.com>
1090
1091         Make Video Track compile on Windows in debug mode.
1092         https://bugs.webkit.org/show_bug.cgi?id=104720.
1093
1094         Reviewed by Alexey Proskuryakov.
1095
1096         urlForLogging method was defined in both HTMLMediaElement.cpp and HTMLTrackElement.cpp. 
1097         On Windows all the HTMLElements sources are included in an AllInOne source file, 
1098         so the definitions conflicted. Fixed by renaming the definition in each source file.
1099
1100         * html/HTMLMediaElement.cpp:
1101         (WebCore::urlForLoggingMedia):
1102         (WebCore::HTMLMediaElement::loadResource):
1103         (WebCore::HTMLMediaElement::isSafeToLoadURL):
1104         (WebCore::HTMLMediaElement::didRemoveTrack):
1105         (WebCore::HTMLMediaElement::selectNextSourceChild):
1106         (WebCore::HTMLMediaElement::sourceWasAdded):
1107         (WebCore::HTMLMediaElement::sourceWasRemoved):
1108         * html/HTMLTrackElement.cpp:
1109         (WebCore::urlForLoggingTrack):
1110         (WebCore::HTMLTrackElement::canLoadUrl):
1111
1112 2012-12-11  Ryosuke Niwa  <rniwa@webkit.org>
1113
1114         Mail hangs when resizing the font size of a large RTL text
1115         https://bugs.webkit.org/show_bug.cgi?id=104643
1116
1117         Reviewed by Enrica Casucci.
1118
1119         The bug was caused by ApplyStyleCommand::applyInlineStyleToNodeRange obtaining computed styles while
1120         removing and adding nodes. Fixed the slowness by breaking it into three phases:
1121         1. Split the range into contiguous inline runs, and determine whether styles need to be removed or applied.
1122         2. Remove any conflicting styles, and insert dummy elements at positions where inline styles ought to be
1123         computed as needed.
1124         3. Remove the dummy elements and apply ilnine styles as needed.
1125
1126         No new tests are added since there is no behavior change. This is just a performance improvement. 
1127
1128         * editing/ApplyStyleCommand.cpp:
1129         (WebCore::InlineRunToApplyStyle::InlineRunToApplyStyle):
1130         (WebCore::InlineRunToApplyStyle::startAndEndAreStillInDocument):
1131         (WebCore::ApplyStyleCommand::applyInlineStyleToNodeRange):
1132         (WebCore::ApplyStyleCommand::shouldApplyInlineStyleToRun):
1133         (WebCore::ApplyStyleCommand::removeConflictingInlineStyleFromRun):
1134         (WebCore::ApplyStyleCommand::addInlineStyleIfNeeded):
1135         (WebCore::ApplyStyleCommand::positionToComputeInlineStyleChange):
1136         (WebCore::ApplyStyleCommand::applyInlineStyleChange):
1137         * editing/ApplyStyleCommand.h:
1138         * editing/EditingStyle.h:
1139         (WebCore::StyleChange::StyleChange):
1140
1141 2012-12-11  Xianzhu Wang  <wangxianzhu@chromium.org>
1142
1143         Incorrect position of layers for fixed position elements when page is scaled smaller than viewport
1144         https://bugs.webkit.org/show_bug.cgi?id=104294
1145
1146         Reviewed by James Robinson.
1147
1148         Fixed issue in scrollOffsetForFixedPosition when contentRect is smaller than visibleContentRect.
1149         This happens when a page originally bigger than viewport is scaled down to smaller than the viewport.
1150
1151         Test: compositing/geometry/fixed-position-composited-page-scale-smaller-than-viewport.html
1152
1153         * page/scrolling/ScrollingCoordinator.cpp:
1154         (WebCore::fixedPositionScrollOffset): Moved common code in scrollOffsetForFixedPosition here. Fixed issue when contentsSize < visibleContentSize.
1155         (WebCore::scrollOffsetForFixedPosition):
1156
1157 2012-12-11  Beth Dakin  <bdakin@apple.com>
1158
1159         https://bugs.webkit.org/show_bug.cgi?id=104725
1160         Crash in EventHandler::selectCursor() on Mac bots running 
1161         fast/events/mouse-cursor-image-set.html
1162
1163         Reviewed by Tim Horton.
1164
1165         https://bugs.webkit.org/show_bug.cgi?id=99493 enabled image-set for 
1166         the CSS cursor property. Most of the change is guarded behind #if 
1167         ENABLE(MOUSE_CURSOR_SCALE). However, image-set was still allowed to 
1168         parse for the cursor property as long as image-set is enabled 
1169         (which is the current state on the Mac). This would lead to an 
1170         inconsistent state where style information would reflect a world 
1171         where mouse cursor scaling is enabled even though nothing else on 
1172         the Mac would. 
1173
1174         The parsing should also be guarded by the cursor scaling flag.
1175         * css/CSSParser.cpp:
1176         (WebCore::CSSParser::parseValue):
1177
1178 2012-12-11  Emil A Eklund  <eae@chromium.org>
1179
1180         Clamp out-of-range numbers in CSS
1181         https://bugs.webkit.org/show_bug.cgi?id=102735
1182
1183         Reviewed by Simon Fraser.
1184
1185         Currently when a large number (outside of the supported range)
1186         is applied from a style rule or set from javascript using
1187         Element.style we check if it is within the supported range and
1188         set it to zero if it is not. This is incorrect and confusing.
1189         
1190         Change it to clamp values to the supported range. This matches
1191         the behavior in Gecko.
1192
1193         Test: fast/css/large-numbers.html
1194
1195         * css/CSSPrimitiveValue.cpp:
1196         (WebCore::CSSPrimitiveValue::computeLength):
1197         Change to clamp out-of-range values instead of interpreting them
1198         as zero.
1199
1200 2012-12-11  Nate Chapin  <japhet@chromium.org>
1201
1202         Ensure ResourceRequests for main resources include fragment indentifiers when necessary,
1203         regressed by r137333.
1204         https://bugs.webkit.org/show_bug.cgi?id=104721
1205
1206         Rubber-stamped by Dimitri Glazkov.
1207
1208         No new tests.
1209
1210         * loader/SubresourceLoader.cpp:
1211         (WebCore::SubresourceLoader::willSendRequest):
1212
1213 2012-12-11  Huang Dongsung  <luxtella@company100.net>
1214
1215         [GTK] REGRESSION(r135620): Accelerated Compositing does not draw some pages.
1216         https://bugs.webkit.org/show_bug.cgi?id=104640
1217
1218         Reviewed by Noam Rosenthal.
1219
1220         After r135620, Accelerated Compositing does not draw some pages, because
1221         r135620 changes the tree-traversal behavior.  Before r135620, we
1222         returned early if TextureMapperLayer can not get TextureMapper from the
1223         root layer. However, after r135620, we run the tree-traversal even if
1224         TextureMapperLayer can not get TextureMapper.  This patch makes
1225         TextureMapperLayer return early like code before r135620.
1226
1227         Covered by existing tests.
1228
1229         * platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:
1230         (WebCore::GraphicsLayerTextureMapper::flushCompositingState):
1231
1232 2012-12-11  Dan Bernstein  <mitz@apple.com>
1233
1234         <rdar://problem/12771885> Support ruby-position: {before, after}
1235         https://bugs.webkit.org/show_bug.cgi?id=103569
1236
1237         Reviewed by Anders Carlsson.
1238
1239         Specified in <http://www.w3.org/TR/2011/WD-css3-ruby-20110630/#rubypos>, the ruby-position
1240         property takes four values: before, after, inter-character, and inline. This change adds
1241         support for the values before and after.
1242
1243         Test: fast/ruby/position-after.html
1244
1245         * css/CSSComputedStyleDeclaration.cpp:
1246         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Handle ruby-position.
1247         * css/CSSParser.cpp:
1248         (WebCore::isValidKeywordPropertyAndValue): Accept before and after as valid values for
1249         ruby-position.
1250         (WebCore::isKeywordPropertyID): Added ruby-position to the list of properties with keyword
1251         values.
1252         (WebCore::CSSParser::parseValue): Added ruby-position to the switch statement.
1253         * css/CSSPrimitiveValueMappings.h:
1254         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): Added mapping from RubyPosition.
1255         (WebCore::CSSPrimitiveValue::operator RubyPosition): Added mapping from CSSPrimitiveValue.
1256         * css/CSSProperty.cpp:
1257         (WebCore::CSSProperty::isInheritedProperty): Added ruby-position as an inherited property.
1258         * css/CSSPropertyNames.in: Added -webkit-ruby-position.
1259         * css/CSSValueKeywords.in: Added after and before.
1260         * css/StyleBuilder.cpp:
1261         (WebCore::StyleBuilder::StyleBuilder): Added a handler for ruby-position.
1262         * css/StyleResolver.cpp:
1263         (WebCore::StyleResolver::applyProperty): Added ruby-position.
1264         * rendering/InlineFlowBox.cpp:
1265         (WebCore::InlineFlowBox::placeBoxesInBlockDirection): Changed to choose which of
1266         hasAnnotationsBefore and hasAnnotationsAfter to set based on ruby position.
1267         (WebCore::InlineFlowBox::computeOverAnnotationAdjustment): Changed to adjust only for
1268         ruby positioned before the base.
1269         (WebCore::InlineFlowBox::computeUnderAnnotationAdjustment): Added adjustment for ruby
1270         positioned after the base.
1271         * rendering/RenderRubyRun.cpp:
1272         (WebCore::RenderRubyRun::layout): Account for ruby-position when positioning the ruby text
1273         relative to the base.
1274         * rendering/style/RenderStyle.cpp:
1275         (WebCore::RenderStyle::diff): Made a ruby-position difference a layout difference.
1276         * rendering/style/RenderStyle.h: Added rubyPosition(), setRubyPosition(), and 
1277         initialRubyPosition().
1278         * rendering/style/RenderStyleConstants.h: Added the RubyPosition enum.
1279         * rendering/style/StyleRareInheritedData.cpp:
1280         (WebCore::StyleRareInheritedData::StyleRareInheritedData): Added initialized for
1281         m_rubyPosition. Added copying the value of this member to the copy constructor.
1282         (WebCore::StyleRareInheritedData::operator==): Added comparison of m_rubyPosition.
1283         * rendering/style/StyleRareInheritedData.h:
1284         (StyleRareInheritedData): Added m_rubyPosition member variable.
1285
1286 2012-12-11  Michael Pruett  <michael@68k.org>
1287
1288         [JSC] Add tests for explicit serialization values
1289         https://bugs.webkit.org/show_bug.cgi?id=104423
1290
1291         Reviewed by Oliver Hunt.
1292
1293         Add tests for serialization and deserialization mechanisms of
1294         the JSC implementation of SerializedScriptValue. Similar tests
1295         already exist for the V8 implementation.
1296
1297         Test: platform/jsc/fast/storage/serialized-script-value.html
1298
1299         * WebCore.exp.in:
1300         * testing/Internals.cpp:
1301         (WebCore::Internals::serializeObject):
1302         (WebCore::Internals::deserializeBuffer):
1303
1304 2012-12-11  Alexis Menard  <alexis@webkit.org>
1305
1306         Cleanup: Use consistent naming in CSSParser when dealing with the forward slash operator.
1307         https://bugs.webkit.org/show_bug.cgi?id=104699
1308
1309         Reviewed by Daniel Bates.
1310
1311         http://trac.webkit.org/changeset/136525 added an helper function to
1312         check if a CSSParserValue is a forward slash operator.
1313         BorderImageParseContext is also dealing with the forward slash operator
1314         but its naming is inconsistent with isForwardSlashOperator(). This is
1315         fixed with this patch where BorderImageParseContext::{allowSlash,
1316         commitSlash}() is now replaced by BorderImageParseContext::{allowForwardSlashOperator,
1317         commitForwardSlashOperator}().
1318
1319         No new tests : just a renaming, covered by existing tests..
1320
1321         * css/CSSParser.cpp:
1322         (WebCore::CSSParser::parseFillPosition): A little fixup on the way, use
1323         isForwardSlashOperator() instead of the current code here.
1324         (WebCore::BorderImageParseContext::BorderImageParseContext):
1325         (WebCore::BorderImageParseContext::allowForwardSlashOperator):
1326         (WebCore::BorderImageParseContext::commitImage):
1327         (WebCore::BorderImageParseContext::commitImageSlice):
1328         (WebCore::BorderImageParseContext::commitForwardSlashOperator):
1329         (WebCore::BorderImageParseContext::commitBorderWidth):
1330         (WebCore::BorderImageParseContext::commitBorderOutset):
1331         (WebCore::BorderImageParseContext::commitRepeat):
1332         (BorderImageParseContext):
1333         (WebCore::CSSParser::parseBorderImage):
1334
1335 2012-12-11  Nate Chapin  <japhet@chromium.org>
1336
1337         cr-linux valgrind is showing leaks due to r137333.
1338
1339         Rubber-stamped by Antti Koivisto.
1340
1341         MainResourceLoader's destructor should call m_resource->removeClient(this) is m_resource is still non-null.
1342         The missing removeClient() call will leak the CachedResource.
1343
1344         No new tests, should shut valgrind up.
1345
1346         * loader/MainResourceLoader.cpp:
1347         (WebCore::MainResourceLoader::~MainResourceLoader):
1348
1349 2012-12-11  Andreas Kling  <akling@apple.com>
1350
1351         REGRESSION(r133492): Heap-use-after-free in WebCore::Element::normalizeAttributes
1352         <http://webkit.org/b/104488>
1353
1354         Reviewed by Antti Koivisto.
1355
1356         Don't cache the AttrNodeList* in a local when iterating over an Element's Attr nodes since
1357         that pointer may go stale if JS runs in response to a DOMSubtreeModified event below Node::normalize().
1358
1359         Test: fast/dom/normalize-attributes-mutation-event-crash.html
1360
1361         * dom/Element.cpp:
1362         (WebCore::Element::normalizeAttributes):
1363
1364 2012-12-11  Jonathon Jongsma  <jonathon.jongsma@collabora.co.uk>
1365
1366         [GTK] Soup network logs are frequently interrupted by other logging messages
1367         https://bugs.webkit.org/show_bug.cgi?id=104668
1368
1369         Reviewed by Martin Robinson.
1370
1371         Set an external soup log printer that uses the WebKit logging
1372         infrastructure so that log messages are properly synchronized.
1373
1374         * platform/network/soup/ResourceHandleSoup.cpp:
1375         (WebCore::soupLogPrinter):
1376         (WebCore):
1377         (WebCore::ensureSessionIsInitialized):
1378
1379 2012-12-11  Elliott Sprehn  <esprehn@chromium.org>
1380
1381         Switch to new PseudoElement based :before and :after
1382         https://bugs.webkit.org/show_bug.cgi?id=104462
1383
1384         Reviewed by Antti Koivisto.
1385
1386         Switch to the new PseudoElement based generated content implementation
1387         that moves :before and :after into the DOM. This also switches to using
1388         the ComposedShadowTreeWalker for determining the siblings of PseudoElement's
1389         making the new generated content implementation support adding :before
1390         and :after into <input> elements.
1391
1392         Tests: fast/css-generated-content/block-inside-inline.html
1393                fast/css-generated-content/box-orient.html
1394
1395         * dom/ComposedShadowTreeWalker.cpp:
1396         (WebCore::ComposedShadowTreeWalker::pseudoAwareNextSibling):
1397         (WebCore):
1398         (WebCore::ComposedShadowTreeWalker::pseudoAwarePreviousSibling):
1399         (WebCore::ComposedShadowTreeWalker::traverseParent):
1400         * dom/ComposedShadowTreeWalker.h:
1401         (ComposedShadowTreeWalker):
1402         * dom/Element.cpp:
1403         (WebCore::Element::attach):
1404         (WebCore::Element::recalcStyle):
1405         * dom/Node.cpp:
1406         * dom/Node.h:
1407         (Node):
1408         * dom/NodeRenderingContext.cpp:
1409         (WebCore::NodeRenderingContext::nextRenderer):
1410         (WebCore::NodeRenderingContext::previousRenderer):
1411         (WebCore::NodeRenderingContext::createRendererForElementIfNeeded):
1412         * dom/Position.cpp:
1413         (WebCore::Position::Position):
1414         (WebCore::Position::hasRenderedNonAnonymousDescendantsWithHeight):
1415         * editing/visible_units.cpp:
1416         (WebCore::logicallyPreviousBox):
1417         (WebCore::logicallyNextBox):
1418         (WebCore::startPositionForLine):
1419         (WebCore::endPositionForLine):
1420         * html/HTMLTextFormControlElement.cpp:
1421         (WebCore::HTMLTextFormControlElement::childShouldCreateRenderer):
1422         * page/DragController.cpp:
1423         (WebCore::DragController::draggableNode):
1424         * rendering/RenderBlock.cpp:
1425         (WebCore::RenderBlock::styleDidChange):
1426         (WebCore::RenderBlock::splitBlocks):
1427         (WebCore::RenderBlock::addChildIgnoringAnonymousColumnBlocks):
1428         (WebCore::RenderBlock::createReplacementRunIn):
1429         (WebCore::RenderBlock::isSelectionRoot):
1430         * rendering/RenderBlock.h:
1431         (RenderBlock):
1432         * rendering/RenderButton.cpp:
1433         * rendering/RenderButton.h:
1434         (RenderButton):
1435         * rendering/RenderInline.cpp:
1436         (WebCore::RenderInline::styleDidChange):
1437         (WebCore::RenderInline::addChildIgnoringContinuation):
1438         (WebCore::RenderInline::splitInlines):
1439         * rendering/RenderListItem.cpp:
1440         (WebCore::RenderListItem::updateMarkerLocation):
1441         * rendering/RenderObject.cpp:
1442         (WebCore::RenderObject::createVisiblePosition):
1443         * rendering/RenderObject.h:
1444         (WebCore::RenderObject::nonPseudoNode):
1445         (RenderObject):
1446         (WebCore::RenderObject::clearNode):
1447         (WebCore::RenderObject::generatingNode):
1448         * rendering/RenderObjectChildList.cpp:
1449         * rendering/RenderObjectChildList.h:
1450         (RenderObjectChildList):
1451         * rendering/RenderRubyText.cpp:
1452         * rendering/RenderRubyText.h:
1453         (RenderRubyText):
1454         * rendering/RenderTableRow.cpp:
1455         (WebCore::RenderTableRow::styleDidChange):
1456         * rendering/RenderTableRow.h:
1457         * rendering/RenderTableSection.cpp:
1458         (WebCore::RenderTableSection::addChild):
1459         * rendering/RenderWidget.cpp:
1460         (WebCore::RenderWidget::destroy):
1461
1462 2012-12-11  Jacky Jiang  <zhajiang@rim.com>
1463
1464         [BlackBerry] Clean up unused defaultViewportArguments in RenderThemeBlackBerry.cpp
1465         https://bugs.webkit.org/show_bug.cgi?id=104683
1466
1467         Reviewed by Rob Buis.
1468
1469         * platform/blackberry/RenderThemeBlackBerry.cpp:
1470         (WebCore::determineFullScreenMultiplier):
1471
1472 2012-12-11  Nate Chapin  <japhet@chromium.org>
1473
1474         Route main resource loads through the memory cache.
1475         https://bugs.webkit.org/show_bug.cgi?id=49246
1476
1477         Reviewed by Antti Koivisto.
1478
1479         Note that this patch doesn't actually enable caching of main resources. That will be done in a later patch.
1480         The MainResourceLoader actually has an underlying SubresourceLoader (with the cache layer between them).
1481         In several places, the MainResourceLoader's SubresourceLoader is treated as special.
1482
1483         No new tests, as this is primarily a refactor. A couple of expected results changed slightly.
1484
1485         * loader/DocumentLoader.cpp:
1486         (WebCore::DocumentLoader::setRequest):
1487         (WebCore::DocumentLoader::subresource):
1488         (WebCore::DocumentLoader::addSubresourceLoader): Because the SubresourceLoader underlying the main resource
1489             needs special handling in certain cases, track it separately from the real SubresourceLoaders.
1490         (WebCore::DocumentLoader::removeSubresourceLoader):
1491         (WebCore::DocumentLoader::startLoadingMainResource):
1492         * loader/MainResourceLoader.cpp:
1493         (WebCore::MainResourceLoader::MainResourceLoader):
1494         (WebCore::MainResourceLoader::receivedError):
1495         (WebCore::MainResourceLoader::cancel):
1496         (WebCore::MainResourceLoader::clearResource):
1497         (WebCore):
1498         (WebCore::MainResourceLoader::frameLoader):
1499         (WebCore::MainResourceLoader::request):
1500         (WebCore::MainResourceLoader::continueAfterNavigationPolicy):
1501         (WebCore::MainResourceLoader::resourceData):
1502         (WebCore::MainResourceLoader::redirectReceived):
1503         (WebCore::MainResourceLoader::willSendRequest):
1504         (WebCore::MainResourceLoader::continueAfterContentPolicy):
1505         (WebCore::MainResourceLoader::responseReceived):
1506         (WebCore::MainResourceLoader::dataReceived):
1507         (WebCore::MainResourceLoader::didFinishLoading):
1508         (WebCore::MainResourceLoader::notifyFinished):
1509         (WebCore::MainResourceLoader::reportMemoryUsage):
1510         (WebCore::MainResourceLoader::handleSubstituteDataLoadNow):
1511         (WebCore::MainResourceLoader::load):
1512         (WebCore::MainResourceLoader::setDefersLoading):
1513         (WebCore::MainResourceLoader::defersLoading):
1514         (WebCore::MainResourceLoader::setShouldBufferData):
1515         (WebCore::MainResourceLoader::loader):
1516         (WebCore::MainResourceLoader::identifier):
1517         * loader/MainResourceLoader.h:
1518         (MainResourceLoader):
1519         (WebCore::MainResourceLoader::documentLoader):
1520         * loader/ResourceLoader.cpp:
1521         (WebCore::ResourceLoader::willSendRequest):
1522         * loader/ResourceLoader.h:
1523         (WebCore::ResourceLoader::defersLoading):
1524         (WebCore::ResourceLoader::cancelled):
1525         * loader/appcache/ApplicationCacheHost.cpp:
1526         (WebCore::ApplicationCacheHost::maybeLoadFallbackForMainResponse):
1527         (WebCore::ApplicationCacheHost::maybeLoadFallbackForMainError):
1528         * loader/mac/DocumentLoaderMac.cpp:
1529         (WebCore::DocumentLoader::schedule):
1530         (WebCore::DocumentLoader::unschedule):
1531
1532 2012-12-11  Aaron Colwell  <acolwell@chromium.org>
1533
1534         Update MediaSource to allow append() calls in "ended" state.
1535         https://bugs.webkit.org/show_bug.cgi?id=104581
1536
1537         Reviewed by Eric Carlson.
1538
1539         Updated append and setTimestampOffset to allow appending in the "ended" readyState. An append() call
1540         in the "ended" state now triggers a transition to the "open" state and allows the append to succeed.
1541
1542         Tests: http/tests/media/media-source/video-media-source-append-in-ended-state.html
1543                http/tests/media/media-source/video-media-source-append-with-offset-in-ended-state.html
1544                http/tests/media/media-source/video-media-source-zero-byte-append-in-ended-state.html
1545
1546         * Modules/mediasource/MediaSource.cpp:
1547         (WebCore::MediaSource::append):
1548         (WebCore::MediaSource::setTimestampOffset):
1549
1550 2012-12-11  Robert Hogan  <robert@webkit.org>
1551
1552         REGRESSION(r121789): Text not wrapping in presence of floating objects
1553         https://bugs.webkit.org/show_bug.cgi?id=101803
1554
1555         Reviewed by David Hyatt.
1556
1557         When determining if a line needs to offset to avoid any floats use RenderBlock::lineHeight() 
1558         to estimate the height of the line. If the container has floats stacked up with different widths
1559         that straddle the line, using a height of zero will make the first line think it has
1560         more width available than it actually does and it will end up extruding from its container.
1561         
1562         The logic for finding the offset of inline blocks and images needs to use a similar heuristic.
1563         So nextLineBreak() now updates the available width if it encounters a replaced element (e.g. inline block,
1564         image) at the start of a line, using the height of the element to decide which floats to avoid. 
1565         RenderBlock::computeInlineDirectionPositionsForLine() does the same thing when laying out the line.
1566
1567         Tests: fast/block/float/floats-offset-image-quirk-lineheight.html
1568                fast/block/float/floats-offset-image-quirk.html
1569                fast/block/float/floats-offset-image-strict-lineheight.html
1570                fast/block/float/floats-offset-image-strict.html
1571                fast/block/float/floats-offset-inline-block-quirk-lineheight.html
1572                fast/block/float/floats-offset-inline-block-strict-lineheight.html
1573                fast/block/float/floats-offset-linebox-contain-block.html
1574                fast/block/float/floats-offset-linebox-contain-inline.html
1575                fast/block/float/floats-wrap-inside-inline-006.html
1576                fast/block/float/floats-wrap-inside-inline-007.html
1577
1578         * rendering/RenderBlockLineLayout.cpp:
1579         (LineWidth):
1580         (WebCore::logicalHeightForLine):
1581             This method needs to cope with the quirk where an image alone on a line will get its descent stripped away so
1582             ignore the height of the line and use the height of the image in that case.
1583         (WebCore::LineWidth::updateAvailableWidth):
1584         (WebCore::updateLogicalInlinePositions):
1585         (WebCore):
1586         (WebCore::RenderBlock::computeInlineDirectionPositionsForLine):
1587         (WebCore::RenderBlock::computeInlineDirectionPositionsForSegment):
1588         (WebCore::RenderBlock::LineBreaker::nextSegmentBreak):
1589
1590 2012-12-11  Carlos Garcia Campos  <cgarcia@igalia.com>
1591
1592         [GTK] Install GObject DOM bindings headers in its own directory
1593         https://bugs.webkit.org/show_bug.cgi?id=104663
1594
1595         Reviewed by Gustavo Noronha Silva.
1596
1597         Move the headers from webkit to webkitdom directory.
1598
1599         * bindings/gobject/GNUmakefile.am:
1600         * bindings/gobject/WebKitDOMBinding.h:
1601         * bindings/gobject/WebKitDOMCustom.h:
1602         * bindings/gobject/WebKitDOMEventTarget.h:
1603         * bindings/gobject/WebKitDOMEventTargetPrivate.h:
1604         * bindings/gobject/WebKitDOMObject.h:
1605         * bindings/scripts/CodeGeneratorGObject.pm:
1606         (Generate):
1607         (WriteData):
1608         * bindings/scripts/gobject-generate-headers.pl:
1609         * bindings/scripts/test/GObject/WebKitDOMFloat64Array.h:
1610         * bindings/scripts/test/GObject/WebKitDOMFloat64ArrayPrivate.h:
1611         * bindings/scripts/test/GObject/WebKitDOMTestActiveDOMObject.h:
1612         * bindings/scripts/test/GObject/WebKitDOMTestActiveDOMObjectPrivate.h:
1613         * bindings/scripts/test/GObject/WebKitDOMTestCallback.h:
1614         * bindings/scripts/test/GObject/WebKitDOMTestCallbackPrivate.h:
1615         * bindings/scripts/test/GObject/WebKitDOMTestCustomNamedGetter.h:
1616         * bindings/scripts/test/GObject/WebKitDOMTestCustomNamedGetterPrivate.h:
1617         * bindings/scripts/test/GObject/WebKitDOMTestEventConstructor.h:
1618         * bindings/scripts/test/GObject/WebKitDOMTestEventConstructorPrivate.h:
1619         * bindings/scripts/test/GObject/WebKitDOMTestEventTarget.h:
1620         * bindings/scripts/test/GObject/WebKitDOMTestEventTargetPrivate.h:
1621         * bindings/scripts/test/GObject/WebKitDOMTestException.h:
1622         * bindings/scripts/test/GObject/WebKitDOMTestExceptionPrivate.h:
1623         * bindings/scripts/test/GObject/WebKitDOMTestInterface.h:
1624         * bindings/scripts/test/GObject/WebKitDOMTestInterfacePrivate.h:
1625         * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListener.h:
1626         * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListenerPrivate.h:
1627         * bindings/scripts/test/GObject/WebKitDOMTestNamedConstructor.h:
1628         * bindings/scripts/test/GObject/WebKitDOMTestNamedConstructorPrivate.h:
1629         * bindings/scripts/test/GObject/WebKitDOMTestNode.h:
1630         * bindings/scripts/test/GObject/WebKitDOMTestNodePrivate.h:
1631         * bindings/scripts/test/GObject/WebKitDOMTestObj.h:
1632         * bindings/scripts/test/GObject/WebKitDOMTestObjPrivate.h:
1633         * bindings/scripts/test/GObject/WebKitDOMTestOverloadedConstructors.h:
1634         * bindings/scripts/test/GObject/WebKitDOMTestOverloadedConstructorsPrivate.h:
1635         * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.h:
1636         * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterfacePrivate.h:
1637
1638 2012-12-11  Mark Pilgrim  <pilgrim@chromium.org>
1639
1640         [Chromium] Clean up unused interfaces in PlatformSupport
1641         https://bugs.webkit.org/show_bug.cgi?id=104674
1642
1643         Reviewed by Darin Fisher.
1644
1645         Part of a refactoring series. See tracking bug 82948. Also, there
1646         were some function declarations that were supposed to be removed
1647         as part of bug 102699 but got left out of the final patch.
1648
1649         * platform/chromium/PlatformSupport.h:
1650         (WebCore):
1651         (PlatformSupport):
1652
1653 2012-12-11  Joone Hur  <joone.hur@intel.com>, Gustavo Noronha Silva  <gustavo.noronha@collabora.com>
1654
1655         [GTK] Update GraphicsLayerClutter
1656         https://bugs.webkit.org/show_bug.cgi?id=92045
1657
1658         Reviewed by Gustavo Noronha Silva.
1659
1660         Add more methods to GraphicsLayerClutter in order to run CSS 3D transforms 
1661         by using GraphicsLayerActor.
1662
1663         No new tests. This will be covered by pixel tests for Qt and GTK+ accelerated
1664         compositing and 3D transforms.
1665
1666         * platform/graphics/clutter/GraphicsLayerClutter.cpp:
1667         (WebCore):
1668         (WebCore::GraphicsLayerClutter::GraphicsLayerClutter):
1669         (WebCore::idleDestroy):
1670         (WebCore::GraphicsLayerClutter::~GraphicsLayerClutter):
1671         (WebCore::GraphicsLayerClutter::setName):
1672         (WebCore::GraphicsLayerClutter::platformLayer): Returns the platform layer(ClutterAcotr).
1673         (WebCore::GraphicsLayerClutter::setNeedsDisplay): Update the display.
1674         (WebCore::GraphicsLayerClutter::setNeedsDisplayInRect): Update part of the Display.
1675         (WebCore::GraphicsLayerClutter::setAnchorPoint):
1676         (WebCore::GraphicsLayerClutter::setPosition):
1677         (WebCore::GraphicsLayerClutter::setSize):
1678         (WebCore::GraphicsLayerClutter::setTransform):
1679         (WebCore::GraphicsLayerClutter::setDrawsContent):
1680         (WebCore::GraphicsLayerClutter::setParent):
1681         (WebCore::GraphicsLayerClutter::setChildren):
1682         (WebCore::GraphicsLayerClutter::addChild):
1683         (WebCore::GraphicsLayerClutter::addChildAtIndex):
1684         (WebCore::GraphicsLayerClutter::addChildBelow):
1685         (WebCore::GraphicsLayerClutter::addChildAbove):
1686         (WebCore::GraphicsLayerClutter::replaceChild):
1687         (WebCore::GraphicsLayerClutter::removeFromParent):
1688         (WebCore::GraphicsLayerClutter::platformClutterLayerPaintContents):
1689         (WebCore::GraphicsLayerClutter::platformClutterLayerAnimationStarted):
1690         (WebCore::GraphicsLayerClutter::repaintLayerDirtyRects):
1691         (WebCore::GraphicsLayerClutter::computePositionRelativeToBase):
1692         (WebCore::GraphicsLayerClutter::flushCompositingState): Synchronize the corresponding Actors with the current 
1693         compositing states of this GraphicsLayer and its child layers. 
1694         (WebCore::GraphicsLayerClutter::recursiveCommitChanges):
1695         (WebCore::GraphicsLayerClutter::flushCompositingStateForThisLayerOnly): Commit batched changes non-recursively. 
1696         (WebCore::GraphicsLayerClutter::commitLayerChangesAfterSublayers): Reset layer changes after we recurse on children.
1697         (WebCore::GraphicsLayerClutter::noteSublayersChanged):
1698         (WebCore::GraphicsLayerClutter::noteLayerPropertyChanged):
1699         (WebCore::GraphicsLayerClutter::commitLayerChangesBeforeSublayers): Commit layer changes before we recurse on children.
1700         (WebCore::GraphicsLayerClutter::updateGeometry): Updated the position and size of the Actor.
1701         (WebCore::GraphicsLayerClutter::updateSublayerList): Updated the list of child Actors. 
1702         (WebCore::GraphicsLayerClutter::updateLayerNames):
1703         (WebCore::GraphicsLayerClutter::updateTransform):
1704         (WebCore::GraphicsLayerClutter::updateLayerDrawsContent):
1705         (WebCore::GraphicsLayerClutter::layerForSuperlayer):
1706         * platform/graphics/clutter/GraphicsLayerClutter.h:
1707         (WebCore):
1708         (WebCore::GraphicsLayerClutter::primaryLayer):
1709         (GraphicsLayerClutter):
1710
1711 2012-12-11  Jessie Berlin  <jberlin@apple.com>
1712
1713         Revert incorrect build fix.
1714
1715         * WebCore.exp.in:
1716
1717 2012-12-11  Jessie Berlin  <jberlin@apple.com>
1718
1719         Fix the Mac build after r137261
1720
1721         * WebCore.exp.in:
1722
1723 2012-12-11  Joone Hur  <joone.hur@intel.com>, Gustavo Noronha Silva  <gustavo.noronha@collabora.com>
1724
1725         [GTK] Add GraphicsLayerActor
1726         https://bugs.webkit.org/show_bug.cgi?id=91940
1727
1728         Reviewed by Gustavo Noronha Silva.
1729
1730         GraphicsLayerActor, which is a new ClutterActor, represents a node in the GPU-renderable layer tree
1731         when accelerated compositing is enabled with Clutter as acceleration backend.
1732         This patch allows to support basic features of CSS 3D Transforms.
1733
1734         No new tests. This will be covered by pixel tests for Qt and GTK+ accelerated
1735         compositing and 3D transforms.
1736
1737         * GNUmakefile.list.am:
1738         * platform/graphics/clutter/GraphicsLayerActor.cpp: Added.
1739         (_GraphicsLayerActorPrivate):
1740         (graphics_layer_actor_class_init): GObject configuration of a new Clutter Actor.
1741         (graphics_layer_actor_init): Initialization of the private data of this actor.
1742         (graphicsLayerActorSetProperty): GObject property setter.
1743         (graphicsLayerActorGetProperty): GObject property getter.
1744         (graphicsLayerActorDispose): Called to drop all references to other objects.
1745         (graphicsLayerActorAllocate):  Called to set the coordinates of an actor.
1746         (graphicsLayerActorApplyTransform): Applying the transformation to an actor before painting it.
1747         (graphicsLayerActorPaint): Called to paint the actor.
1748         (graphicsLayerActorDraw): Called each time a ClutterCairoTexture has been invalidated.
1749         (graphicsLayerActorAdded): Called each time an actor has been added to container.
1750         (graphicsLayerActorRemoved): Called each time an actor is removed from container.
1751         (graphicsLayerActorNew): Create a specific layer type of GraphicsLayerActor object.
1752         (graphicsLayerActorNewWithClient): Create a specific layer type of GraphicsLayerActor object with 
1753         its PlatformClutterClientLayer.
1754         (graphicsLayerActorSetClient): Added setter to set the PlatformClutterClientLayer.
1755         (graphicsLayerActorGetClient): Added getter to get the PlatformClutterClientLayer.
1756         (graphicsLayerActorRemoveAll): Remove all child actors.
1757         (graphicsLayerUpdateTexture): Create a ClutterCairoTexture.
1758         (graphicsLayerActorGetSurface): Added setter to set a cairo_surface_t.
1759         (graphicsLayerActorSetSurface): Added getter to get the cairo_surface_t.
1760         (graphicsLayerActorInvalidateRectangle):
1761         (graphicsLayerActorSetTransform): Set a CoglMatrix to apply matrix transform.
1762         (graphicsLayerActorSetAnchorPoint):
1763         (graphicsLayerActorGetAnchorPoint):
1764         (graphicsLayerActorSetScrollPosition):
1765         (graphicsLayerActorGetnChildren):
1766         (graphicsLayerActorReplaceSublayer):
1767         (graphicsLayerActorInsertSublayer):
1768         (graphicsLayerActorSetSublayers):
1769         (graphicsLayerActorGetLayerType):
1770         (graphicsLayerActorSetLayerType):
1771         (graphicsLayerActorSetTranslateX):
1772         (graphicsLayerActorGetTranslateX):
1773         (graphicsLayerActorSetTranslateY):
1774         (graphicsLayerActorGetTranslateY):
1775         (graphicsLayerActorSetDrawsContent): Added setter to paint content inside a layer.
1776         (graphicsLayerActorGetDrawsContent): Added getter to get the value of the drawsContent. 
1777         * platform/graphics/clutter/GraphicsLayerActor.h: Added.
1778         (_GraphicsLayerActor):
1779         (_GraphicsLayerActorClass):
1780         * platform/graphics/clutter/GraphicsLayerClutter.h:
1781         (WebCore):
1782
1783 2012-12-11  Mike West  <mkwst@chromium.org>
1784
1785         Web Inspector: ConsoleTypes should not expose MessageType - it should be private to inspector.
1786         https://bugs.webkit.org/show_bug.cgi?id=66371
1787
1788         Reviewed by Pavel Feldman.
1789
1790         We can simplify console message generation a bit, as nothing outside the
1791         Console object itself will generate messages of any type other than
1792         LogMessageType. This patch refactors the externally-facing API endpoints
1793         on ScriptExecutionContext and Console to drop the MessageType parameter,
1794         moves the MessageType enum into a new InspectorConsoleTypes.h header,
1795         and updates all the call sites (and ChromeClients) to drop the parameter
1796         from their interfaces.
1797
1798         As a temporary bandage for ports using this interface, this patch
1799         includes aliases for the new methods that retain the old interface.
1800         I'll remove them in a future patch.
1801
1802         Here, we only refactor an internal interface. No tests should break.
1803
1804         * GNUmakefile.list.am:
1805         * Target.pri:
1806         * WebCore.gypi:
1807         * WebCore.vcproj/WebCore.vcproj:
1808         * WebCore.xcodeproj/project.pbxproj:
1809             We added a new file! OMG!
1810         * Modules/webaudio/AudioBufferSourceNode.cpp:
1811         (WebCore::AudioBufferSourceNode::looping):
1812         (WebCore::AudioBufferSourceNode::setLooping):
1813         * Modules/webdatabase/AbstractDatabase.cpp:
1814         (WebCore::AbstractDatabase::logErrorMessage):
1815         * Modules/websockets/WebSocket.cpp:
1816         (WebCore::WebSocket::connect):
1817         (WebCore::WebSocket::send):
1818         (WebCore::WebSocket::close):
1819         (WebCore::WebSocket::setBinaryType):
1820         * Modules/websockets/WebSocketChannel.cpp:
1821         (WebCore::WebSocketChannel::fail):
1822         (WebCore::WebSocketChannel::didFailSocketStream):
1823         * bindings/js/JSCustomXPathNSResolver.cpp:
1824         (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
1825         * bindings/v8/custom/V8CustomXPathNSResolver.cpp:
1826         (WebCore::V8CustomXPathNSResolver::lookupNamespaceURI):
1827         * css/MediaList.cpp:
1828         (WebCore::addResolutionWarningMessageToConsole):
1829         * dom/Document.cpp:
1830         (WebCore::Document::logExceptionToConsole):
1831         (WebCore::Document::processHttpEquiv):
1832         (WebCore::Document::addMessage):
1833         * dom/Document.h:
1834         (Document):
1835         * dom/ScriptElement.cpp:
1836         (WebCore::ScriptElement::notifyFinished):
1837         * dom/ScriptExecutionContext.cpp:
1838         (WebCore::ScriptExecutionContext::AddConsoleMessageTask::performTask):
1839         (WebCore::ScriptExecutionContext::addConsoleMessage):
1840         * dom/ScriptExecutionContext.h:
1841         (ScriptExecutionContext):
1842         (WebCore::ScriptExecutionContext::AddConsoleMessageTask::create):
1843         (WebCore::ScriptExecutionContext::AddConsoleMessageTask::AddConsoleMessageTask):
1844         * dom/ViewportArguments.cpp:
1845         (WebCore::reportViewportWarning):
1846         * fileapi/WebKitBlobBuilder.cpp:
1847         (WebCore::BlobBuilder::append):
1848         * html/HTMLFormControlElement.cpp:
1849         (WebCore::shouldAutofocus):
1850         * html/HTMLFormElement.cpp:
1851         (WebCore::HTMLFormElement::validateInteractively):
1852         * html/HTMLIFrameElement.cpp:
1853         (WebCore::HTMLIFrameElement::parseAttribute):
1854         * html/HTMLTrackElement.cpp:
1855         (WebCore::HTMLTrackElement::canLoadUrl):
1856         * html/canvas/CanvasRenderingContext2D.cpp:
1857         (WebCore::CanvasRenderingContext2D::getImageData):
1858         * html/canvas/WebGLRenderingContext.cpp:
1859         (WebCore):
1860         (WebCore::WebGLRenderingContext::printWarningToConsole):
1861         * html/parser/XSSAuditor.cpp:
1862         (WebCore::XSSAuditor::init):
1863         (WebCore::XSSAuditor::filterToken):
1864         * inspector/ConsoleAPITypes.h: Added.
1865         (WebCore):
1866         * inspector/ConsoleMessage.h:
1867         * inspector/InspectorConsoleAgent.h:
1868         * inspector/InspectorDebuggerAgent.h:
1869         * inspector/InspectorInstrumentation.cpp:
1870         (WebCore):
1871         * inspector/InspectorInstrumentation.h:
1872         * inspector/InspectorProfilerAgent.cpp:
1873         * loader/EmptyClients.h:
1874         (WebCore::EmptyChromeClient::addMessageToConsole):
1875         * loader/FrameLoader.cpp:
1876         (WebCore::FrameLoader::reportLocalLoadFailed):
1877         (WebCore::FrameLoader::shouldInterruptLoadForXFrameOptions):
1878         * loader/ImageLoader.cpp:
1879         (WebCore::ImageLoader::notifyFinished):
1880         * loader/MainResourceLoader.cpp:
1881         (WebCore::MainResourceLoader::didReceiveResponse):
1882         * loader/MixedContentChecker.cpp:
1883         (WebCore::MixedContentChecker::logWarning):
1884         * loader/TextTrackLoader.cpp:
1885         (WebCore::TextTrackLoader::corsPolicyPreventedLoad):
1886         * loader/appcache/ApplicationCacheGroup.cpp:
1887         (WebCore::ApplicationCacheGroup::abort):
1888         (WebCore::ApplicationCacheGroup::didReceiveResponse):
1889         (WebCore::ApplicationCacheGroup::didFinishLoading):
1890         (WebCore::ApplicationCacheGroup::didFail):
1891         (WebCore::ApplicationCacheGroup::didReceiveManifestResponse):
1892         (WebCore::ApplicationCacheGroup::didFinishLoadingManifest):
1893         (WebCore::ApplicationCacheGroup::checkIfLoadIsComplete):
1894         * loader/cache/CachedResourceLoader.cpp:
1895         (WebCore::CachedResourceLoader::printAccessDeniedMessage):
1896         * page/ChromeClient.h:
1897         (ChromeClient):
1898             Drop LogMessageType from everywhere.
1899         * page/Console.cpp:
1900         (WebCore::Console::addMessage):
1901         (WebCore::internalAddMessage):
1902         (WebCore::Console::error):
1903         (WebCore::Console::log):
1904         (WebCore::Console::warn):
1905         (WebCore::Console::dir):
1906         (WebCore::Console::dirxml):
1907         (WebCore::Console::clear):
1908         (WebCore::Console::trace):
1909         (WebCore::Console::assertCondition):
1910         * page/Console.h:
1911         (Console):
1912             Create a new internalAddMessage that's used for the various
1913             Console message types. Everything else routes through
1914             ::addMessage.
1915         * page/ConsoleTypes.h:
1916             Drop MessageTypes from this file, add it to ConsoleAPIType.h
1917         * page/ContentSecurityPolicy.cpp:
1918         (WebCore::ContentSecurityPolicy::logToConsole):
1919         * page/DOMWindow.cpp:
1920         (WebCore::DOMWindow::dispatchMessageEventWithOriginCheck):
1921         (WebCore::DOMWindow::printErrorMessage):
1922         * page/EventSource.cpp:
1923         (WebCore::EventSource::didReceiveResponse):
1924         * svg/SVGDocumentExtensions.cpp:
1925         (WebCore::reportMessage):
1926         * workers/DefaultSharedWorkerRepository.cpp:
1927         (SharedWorkerProxy):
1928         (WebCore::postConsoleMessageTask):
1929         (WebCore::SharedWorkerProxy::postConsoleMessageToWorkerObject):
1930         * workers/SharedWorkerContext.cpp:
1931         (WebCore::SharedWorkerContext::logExceptionToConsole):
1932         * workers/WorkerContext.cpp:
1933         (WebCore::WorkerContext::addMessage):
1934         (WebCore::WorkerContext::addMessageToWorkerConsole):
1935         * workers/WorkerContext.h:
1936         (WorkerContext):
1937         * workers/WorkerMessagingProxy.cpp:
1938         (WebCore::postConsoleMessageTask):
1939         (WebCore::WorkerMessagingProxy::postConsoleMessageToWorkerObject):
1940         * workers/WorkerMessagingProxy.h:
1941         (WorkerMessagingProxy):
1942         * workers/WorkerReportingProxy.h:
1943         (WorkerReportingProxy):
1944         * xml/XMLHttpRequest.cpp:
1945         (WebCore::logConsoleError):
1946         (WebCore::XMLHttpRequest::send):
1947         * xml/XSLTProcessorLibxslt.cpp:
1948         (WebCore::XSLTProcessor::parseErrorFunc):
1949         * xml/XSLTProcessorQt.cpp:
1950         (WebCore::XSLTMessageHandler::handleMessage):
1951             Drop LogMessageType from everywhere.
1952
1953 2012-12-11  Simon Hausmann  <simon.hausmann@digia.com>
1954
1955         [Qt] Unreviewed, rolling out r137313 and r137316 because they broke the system-sqlite build.
1956
1957         * WebCore.pri:
1958
1959 2012-12-11  Simon Hausmann  <simon.hausmann@digia.com>
1960
1961         Unreviewed Qt build fix: Don't error out if SQLITE3SRCDIR isn't set but
1962         we have a system sqlite to use.
1963
1964         * WebCore.pri:
1965
1966 2012-12-11  Oswald Buddenhagen  <oswald.buddenhagen@digia.com>
1967
1968         [Qt] make qtbase source requirement explicit
1969
1970         Reviewed by Simon Hausmann.
1971
1972         getting rid of QT.<module>.sources references, as they don't go well
1973         with real modularization.
1974
1975         * WebCore.pri:
1976
1977 2012-12-11  Oswald Buddenhagen  <oswald.buddenhagen@digia.com>
1978
1979         [Qt] move SQLITE3SRCDIR assignment to only use site
1980
1981         Reviewed by Simon Hausmann.
1982
1983         Target.pri includes WebCore.pri the almost first thing, so that is
1984         covered as well.
1985
1986         * WebCore.pri:
1987
1988 2012-12-11  Eugene Klyuchnikov  <eustas@chromium.org>
1989
1990         Web Inspector: Timeline: rename "Parse" to "Parse HTML".
1991         https://bugs.webkit.org/show_bug.cgi?id=104639
1992
1993         Reviewed by Yury Semikhatsky.
1994
1995         "Parse" sounds ambiguous, it could mean JSON.parse() or Date.parse().
1996         "Parse HTML" is a much more clear record description.
1997
1998         * inspector/front-end/TimelinePresentationModel.js: Fix text.
1999
2000 2012-12-11  Oswald Buddenhagen  <oswald.buddenhagen@digia.com>
2001
2002         [Qt] change setup of QMAKE_MOC
2003
2004         Reviewed by Simon Hausmann.
2005
2006         don't load(moc) explicitly - turns out that this breaks
2007         debug_and_release builds (the feature does not like being loaded before
2008         default_post has been loaded).
2009         so instead just do a minimal call to find the moc executable.
2010
2011         as it's in fact only two files which need it, so de-centralize this call
2012         for the sake of saving some cpu cycles spent in qmake.
2013
2014         * DerivedSources.pri:
2015
2016 2012-12-11  Alexander Pavlov  <apavlov@chromium.org>
2017
2018         REGRESSION(r136948): inspector/styles/import-pseudoclass-crash.html hits an assertion
2019         https://bugs.webkit.org/show_bug.cgi?id=104473
2020
2021         Reviewed by Vsevolod Vlasov.
2022
2023         Avoid building full CSSOM wrappers up front during rule matching.
2024         Instead, move this code down to the point where these wrappers are actually needed.
2025
2026         * inspector/InspectorCSSAgent.cpp:
2027         (WebCore::InspectorCSSAgent::willMatchRule):
2028         (WebCore::InspectorCSSAgent::willProcessRule):
2029         * inspector/InspectorCSSAgent.h:
2030         (WebCore):
2031         (InspectorCSSAgent):
2032         * inspector/InspectorInstrumentation.cpp:
2033         (WebCore):
2034         (WebCore::InspectorInstrumentation::willMatchRuleImpl):
2035         (WebCore::InspectorInstrumentation::willProcessRuleImpl):
2036
2037 2012-12-11  Jesus Sanchez-Palencia  <jesus.palencia@openbossa.org>
2038
2039         [GStreamer] Avoid linking to GStreamer video libraries if only using ENABLE_AUDIO
2040         https://bugs.webkit.org/show_bug.cgi?id=104590
2041
2042         Reviewed by Philippe Normand.
2043
2044         Make getVideoSizeAndFormatFromCaps() only available when ENABLE_VIDEO is set.
2045
2046         No new tests, no change in behavior.
2047
2048         * platform/graphics/gstreamer/GStreamerVersioning.cpp:
2049         * platform/graphics/gstreamer/GStreamerVersioning.h:
2050
2051 2012-12-11  Zeno Albisser  <zeno@webkit.org>
2052
2053         [Qt][Mac] Fix transparency for WebGL content.
2054         https://bugs.webkit.org/show_bug.cgi?id=104659
2055
2056         When drawing a texture to the TextureMapper the flag SupportsBlending
2057         must be passed in order to allow for transparent webgl content.
2058         We are doing this for GLX already, but the flag was still missing
2059         in GraphicsSurfaceMac.
2060
2061         Reviewed by Kenneth Rohde Christiansen.
2062
2063         * platform/graphics/surfaces/mac/GraphicsSurfaceMac.cpp:
2064         (WebCore::GraphicsSurface::platformPaintToTextureMapper):
2065
2066 2012-12-11  Alexander Pavlov  <apavlov@chromium.org>
2067
2068         Web Inspector: Duplicate emulated touch events in iframe
2069         https://bugs.webkit.org/show_bug.cgi?id=104653
2070
2071         Reviewed by Vsevolod Vlasov.
2072
2073         Synthetic touch events should be dispatched only on the frame containing its target, not on its ancestor frames,
2074         up to the top frame.
2075
2076         * page/EventHandler.cpp:
2077         (WebCore::EventHandler::dispatchSyntheticTouchEventIfEnabled):
2078           Do not dispatch a synthetic touch event on the current frame if its target is in a subframe.
2079
2080 2012-12-11  Kondapally Kalyan  <kalyan.kondapally@intel.com>
2081
2082         [EFL][WebGL] Regression(r137211) WebGL is broken with NVIDIA Drivers.
2083         https://bugs.webkit.org/show_bug.cgi?id=104652.
2084
2085         Reviewed by Kenneth Rohde Christiansen.
2086
2087         Reverting some of the changes from r137211, as it causes regressions
2088         on NVIDIA drivers.
2089
2090         * platform/graphics/efl/GraphicsContext3DEfl.cpp:
2091         (WebCore::GraphicsContext3D::GraphicsContext3D):
2092         * platform/graphics/efl/GraphicsContext3DPrivate.cpp:
2093         (GraphicsContext3DPrivate::copyToGraphicsSurface):
2094         * platform/graphics/opengl/GLPlatformSurface.cpp:
2095         (WebCore::GLPlatformSurface::updateContents):
2096         * platform/graphics/opengl/GLPlatformSurface.h:
2097         (GLPlatformSurface):
2098
2099 2012-12-11  Pavel Feldman  <pfeldman@chromium.org>
2100
2101         Web Inspector: follow up to r136974: do not process shortcuts while editing
2102         https://bugs.webkit.org/show_bug.cgi?id=104440
2103
2104         Reviewed by Alexander Pavlov.
2105
2106         Currently, typing H while editing node results in corresponding shortcut processing.
2107
2108         * inspector/front-end/ElementsTreeOutline.js:
2109         (WebInspector.ElementsTreeOutline):
2110         (WebInspector.ElementsTreeOutline.prototype.handleShortcut):
2111         (WebInspector.ElementsTreeElement.prototype.onenter):
2112         (WebInspector.ElementsTreeElement.prototype._startEditingAttribute):
2113         (WebInspector.ElementsTreeElement.prototype.dispose):
2114         (WebInspector.ElementsTreeElement.prototype._startEditingAsHTML):
2115         (WebInspector.ElementsTreeElement.prototype._editingCancelled):
2116
2117 2012-12-11  Ken Kania  <kkania@chromium.org>
2118
2119         [Inspector] Add command for dispatching mouse events.
2120         https://bugs.webkit.org/show_bug.cgi?id=104074
2121
2122         Reviewed by Yury Semikhatsky.
2123
2124         Platform mouse event coordinates are relative to the containing window,
2125         but the inspector command assumes they follow standard web coordinates,
2126         where the origin is at the top left of the page and y increases as you
2127         go down. We convert the coordinates to the window before constructing
2128         the event. This also fixes the fact that some platforms have flipped
2129         coordinate systems.
2130         Also, update dispatchKeyEvent test to follow simpler dispatchMouseEvent
2131         test.
2132
2133         Test: inspector-protocol/input/dispatchMouseEvent.html
2134
2135         * inspector/Inspector.json:
2136         * inspector/InspectorInputAgent.cpp:
2137         (WebCore::InspectorInputAgent::dispatchMouseEvent):
2138         (WebCore):
2139         * inspector/InspectorInputAgent.h:
2140         (InspectorInputAgent):
2141
2142 2012-12-11  Pavel Feldman  <pfeldman@chromium.org>
2143
2144         Not reviewed: follow up to r137283: reduce inspector toolbar spacing 1px.
2145
2146         * inspector/front-end/inspector.css:
2147         (body.dock-to-bottom:not(.show-toolbar-icons) .toolbar-item.toggleable):
2148         (body.dock-to-bottom:not(.show-toolbar-icons) .toolbar-item.toggleable.toggled-on):
2149
2150 2012-12-11  Kent Tamura  <tkent@chromium.org>
2151
2152         Refactoring: Rename Element::shouldMatchReadOnlySelector and shouldMatchReadWriteSelector
2153         https://bugs.webkit.org/show_bug.cgi?id=104651
2154
2155         Reviewed by Kentaro Hara.
2156
2157         ':read-only' and ':read-write' are pseudo classes. They are not
2158         selectors in the context of these functions.  This patch rename them so
2159         that they contain 'pseudo class,' and make them match to an existing
2160         function, matchesFocusPseudoClass.
2161
2162         No new tests. This shouldn't make behavior changes.
2163
2164         * css/SelectorChecker.cpp:
2165         (WebCore::SelectorChecker::checkOneSelector):
2166         * dom/Element.cpp:
2167         (WebCore::Element::recalcStyle):
2168         (WebCore::Element::matchesReadOnlyPseudoClass):
2169         (WebCore::Element::matchesReadWritePseudoClass):
2170         * dom/Element.h:
2171         (Element):
2172         * html/HTMLInputElement.cpp:
2173         (WebCore::HTMLInputElement::matchesReadOnlyPseudoClass):
2174         (WebCore::HTMLInputElement::matchesReadWritePseudoClass):
2175         * html/HTMLInputElement.h:
2176         (HTMLInputElement):
2177         * html/HTMLTextAreaElement.cpp:
2178         (WebCore::HTMLTextAreaElement::matchesReadOnlyPseudoClass):
2179         (WebCore::HTMLTextAreaElement::matchesReadWritePseudoClass):
2180         * html/HTMLTextAreaElement.h:
2181         (HTMLTextAreaElement):
2182         * html/shadow/SliderThumbElement.cpp:
2183         (WebCore::SliderThumbElement::matchesReadOnlyPseudoClass):
2184         (WebCore::SliderThumbElement::matchesReadWritePseudoClass):
2185         * html/shadow/SliderThumbElement.h:
2186         (SliderThumbElement):
2187         * html/shadow/SpinButtonElement.cpp:
2188         (WebCore::SpinButtonElement::matchesReadOnlyPseudoClass):
2189         (WebCore::SpinButtonElement::matchesReadWritePseudoClass):
2190         * html/shadow/SpinButtonElement.h:
2191         (SpinButtonElement):
2192         * rendering/RenderTheme.cpp:
2193         (WebCore::RenderTheme::isReadOnlyControl):
2194
2195 2012-12-11  Pavel Feldman  <pfeldman@chromium.org>
2196
2197         Web Inspector: add more horizontal spacing for toolbar items in docked to bottom mode
2198         https://bugs.webkit.org/show_bug.cgi?id=104655
2199
2200         Reviewed by Alexander Pavlov.
2201
2202         Drive-by increase height to 26px.
2203
2204         * inspector/front-end/inspector.css:
2205         (#toolbar):
2206         (body:not(.show-toolbar-icons) .toolbar-item):
2207         (body.dock-to-bottom:not(.show-toolbar-icons) .toolbar-item.toggleable):
2208         (body.dock-to-bottom:not(.show-toolbar-icons) .toolbar-item.toggleable.toggled-on):
2209         (body.show-toolbar-icons.dock-to-bottom .toolbar-item.toggleable):
2210         (#toolbar-dropdown-arrow):
2211         (#main):
2212
2213 2012-12-11  Keishi Hattori  <keishi@webkit.org>
2214
2215         Use histogram enumeration in Calendar Picker so we can get stats on UI usage
2216         https://bugs.webkit.org/show_bug.cgi?id=104646
2217
2218         Reviewed by Kent Tamura.
2219
2220         Use histogram support to get stats on the calendar picker so we can improve the UI.
2221
2222         No new tests.
2223
2224         * Resources/pagepopups/calendarPicker.js:
2225         (CalendarPicker):
2226         (CalendarPicker.prototype.recordAction): Records action to histogram.
2227         (CalendarPicker.prototype.handleToday): Record action.
2228         (CalendarPicker.prototype.handleClear): Ditto.
2229         (YearMonthController.prototype._showPopup): Ditto.
2230         (YearMonthController.prototype._handleYearMonthChange): Ditto.
2231         (YearMonthController.prototype._handleButtonClick): Ditto.
2232         (DaysTable.prototype._handleDayClick): Ditto.
2233         * page/PagePopupController.cpp:
2234         (WebCore::PagePopupController::histogramEnumeration):
2235         (WebCore):
2236         * page/PagePopupController.h:
2237         (PagePopupController):
2238         * page/PagePopupController.idl: Added histogramEnumeration.
2239
2240 2012-12-11  Hajime Morrita  <morrita@google.com>
2241
2242         IsActiveFlag, IsHoverFlag, InActiveChainFlag can be unified.
2243         https://bugs.webkit.org/show_bug.cgi?id=103697
2244
2245         Reviewed by Ryosuke Niwa.
2246
2247         To save two more NodeFlags bits, this patch inroduces
2248         UserActionElementSet to get IsLinkFlag, IsHoverFlag,
2249         InActiveChainFlag together. These three old flags are replaced by
2250         UserActionElementSet::ElementFlags and UserActionElementSet
2251         collection which tracks elements which are flagged with one of
2252         a ElementFlags.
2253
2254         When marking an element as active for example, WebKit sets
2255         UserActionElementSet::IsActiveFlag to the element and store it
2256         into corresponding element set of the document. This set maintains
2257         marked elements and corresponding flags for each elements.
2258
2259         UserActionElementSet can be seen as a yet another rare data for
2260         these flags. However, the following characteristics of these flags
2261         make adding a new data structure on Document an attractive
2262         alternative:
2263
2264         - UserActionElementSet is maintained for each Document instead of a
2265           global collecton. This fits element lifetime better.
2266
2267         - The number of elements which have these flags is generally
2268           small, and a group of elements for each flag is largely overlapped
2269           due to its nature. This property keeps the set small, and lets
2270           flag retrieval efficient. On majority of the elements, all these
2271           flags are false thus the check is done by just checking
2272           IsInUserActionFlag.
2273
2274         As a bonus, isFocused flag, which was on NodeRareData, is also moved to this model.
2275
2276         No new tests, covered by existing test.
2277
2278         * CMakeLists.txt:
2279         * GNUmakefile.list.am:
2280         * Target.pri:
2281         * WebCore.gypi:
2282         * WebCore.xcodeproj/project.pbxproj:
2283         * dom/DOMAllInOne.cpp:
2284         * dom/Document.cpp:
2285         (WebCore::Document::removedLastRef):
2286         (WebCore::Document::updateHoverActiveState):
2287         * dom/Document.h:
2288         (WebCore::Document::userActionElements): Added.
2289         (Document):
2290         * dom/Node.cpp:
2291         (WebCore::Node::detach):
2292         * dom/Node.h:
2293         (WebCore):
2294         (WebCore::Node::isUserActionElement): Added.
2295         (WebCore::Node::setUserActionElement): Added.
2296         (Node):
2297         (WebCore::Node::active): Switched to UserActionElementSet.
2298         (WebCore::Node::inActiveChain): Switched to UserActionElementSet.
2299         (WebCore::Node::hovered): Switched to UserActionElementSet.
2300         (WebCore::Node::focused): Switched to UserActionElementSet.
2301         (WebCore::Node::setFocus): Switched to UserActionElementSet.
2302         (WebCore::Node::setActive): Switched to UserActionElementSet.
2303         (WebCore::Node::setHovered): Switched to UserActionElementSet.
2304         * dom/NodeRareData.h:
2305         (WebCore::NodeRareData::NodeRareData):
2306         (NodeRareData):
2307         * dom/UserActionElementSet.cpp: Added.
2308         (WebCore):
2309         (WebCore::UserActionElementSet::instanceFor):
2310         (WebCore::UserActionElementSet::UserActionElementSet):
2311         (WebCore::UserActionElementSet::~UserActionElementSet):
2312         (WebCore::UserActionElementSet::didDetach):
2313         (WebCore::UserActionElementSet::documentDidRemoveLastRef):
2314         (WebCore::UserActionElementSet::hasFlags):
2315         (WebCore::UserActionElementSet::setFlags):
2316         (WebCore::UserActionElementSet::clearFlags):
2317         * dom/UserActionElementSet.h: Added.
2318         (WebCore):
2319         (UserActionElementSet):
2320         (WebCore::UserActionElementSet::create):
2321         (WebCore::UserActionElementSet::isFocused):
2322         (WebCore::UserActionElementSet::setFocused):
2323         (WebCore::UserActionElementSet::isActive):
2324         (WebCore::UserActionElementSet::setActive):
2325         (WebCore::UserActionElementSet::isInActiveChain):
2326         (WebCore::UserActionElementSet::setInActiveChain):
2327         (WebCore::UserActionElementSet::isHovered):
2328         (WebCore::UserActionElementSet::setHovered):
2329         (WebCore::UserActionElementSet::setFlags):
2330
2331 2012-12-11  Kent Tamura  <tkent@chromium.org>
2332
2333         INPUT_MULTIPLE_FIELDS_UI: Disable focus navigation by right/left keys in RTL locales
2334         https://bugs.webkit.org/show_bug.cgi?id=104644
2335
2336         Reviewed by Hajime Morita.
2337
2338         Pressing the left key should focus on the field at the left of the
2339         current focused field, and pressing the right key should focus on the
2340         field at the right of the current focused field. This works well in LTR
2341         locales.
2342         In RTL locale, the current code doesn't work. We disable this behavior
2343         for RTL locales for now. This issue will be handled in Bug 104650.
2344
2345         No new tests. Update some *-multiple-fields tests for new behavior.
2346
2347         * html/shadow/DateTimeFieldElement.cpp:
2348         (WebCore::DateTimeFieldElement::defaultKeyboardEventHandler):
2349         If this sub-field is in an RTL locale, we don't change focus.
2350         (WebCore::DateTimeFieldElement::localeForOwner):
2351         Moved from DateTimeNumericFieldElement.
2352         * html/shadow/DateTimeFieldElement.h:
2353         (DateTimeFieldElement): Remove isRTL, add localeForOwner.
2354         * html/shadow/DateTimeNumericFieldElement.cpp: Remove localeForOwner.
2355         * html/shadow/DateTimeNumericFieldElement.h:
2356         (DateTimeNumericFieldElement): Ditto.
2357
2358 2012-12-11  Pavel Podivilov  <podivilov@google.com>
2359
2360         Remove pango files deleted at r137263 form WebCore.gypi.
2361
2362         Unreviewed, gardening.
2363
2364         * WebCore.gypi:
2365
2366 2012-12-11  Zan Dobersek  <zandobersek@gmail.com>
2367
2368         [GTK] Feature enabling/disabling should be possible through build-webkit
2369         https://bugs.webkit.org/show_bug.cgi?id=99271
2370
2371         Reviewed by Gustavo Noronha Silva.
2372
2373         Move the contents of GNUmakefile.features.am into GNUmakefile.features.am.in.
2374         The former is then copied from the latter but then appropriately modified if
2375         the build-webkit script overrides any of the default feature defines.
2376
2377         No new tests - no new testable functionality.
2378
2379         * GNUmakefile.features.am.in: Renamed from Source/WebCore/GNUmakefile.features.am.
2380
2381 2012-12-11  Jinwoo Song  <jinwoo7.song@samsung.com>
2382
2383         [QT][EFL][WK2] Move the GraphicsSurfaceGLX.cpp to common place
2384         https://bugs.webkit.org/show_bug.cgi?id=104433
2385
2386         Reviewed by Kenneth Rohde Christiansen.
2387
2388         QT and EFL are commonly using the GraphicsSurfaceGLX.cpp and
2389         it looks better to move this file to /glx directory.
2390
2391         * PlatformEfl.cmake:
2392         * Target.pri:
2393         * platform/graphics/surfaces/glx/GraphicsSurfaceGLX.cpp: Renamed from Source/WebCore/platform/graphics/surfaces/qt/GraphicsSurfaceGLX.cpp.
2394         (WebCore):
2395         (OffScreenRootWindow):
2396         (WebCore::OffScreenRootWindow::OffScreenRootWindow):
2397         (WebCore::OffScreenRootWindow::getXWindow):
2398         (WebCore::OffScreenRootWindow::display):
2399         (WebCore::OffScreenRootWindow::~OffScreenRootWindow):
2400         (WebCore::GraphicsSurfacePrivate::GraphicsSurfacePrivate):
2401         (GraphicsSurfacePrivate):
2402         (WebCore::GraphicsSurfacePrivate::~GraphicsSurfacePrivate):
2403         (WebCore::GraphicsSurfacePrivate::createSurface):
2404         (WebCore::GraphicsSurfacePrivate::createPixmap):
2405         (WebCore::GraphicsSurfacePrivate::textureIsYInverted):
2406         (WebCore::GraphicsSurfacePrivate::makeCurrent):
2407         (WebCore::GraphicsSurfacePrivate::doneCurrent):
2408         (WebCore::GraphicsSurfacePrivate::swapBuffers):
2409         (WebCore::GraphicsSurfacePrivate::copyFromTexture):
2410         (WebCore::GraphicsSurfacePrivate::display):
2411         (WebCore::GraphicsSurfacePrivate::glxPixmap):
2412         (WebCore::GraphicsSurfacePrivate::size):
2413         (WebCore::resolveGLMethods):
2414         (WebCore::GraphicsSurface::platformExport):
2415         (WebCore::GraphicsSurface::platformGetTextureID):
2416         (WebCore::GraphicsSurface::platformCopyToGLTexture):
2417         (WebCore::GraphicsSurface::platformCopyFromTexture):
2418         (WebCore::GraphicsSurface::platformPaintToTextureMapper):
2419         (WebCore::GraphicsSurface::platformFrontBuffer):
2420         (WebCore::GraphicsSurface::platformSwapBuffers):
2421         (WebCore::GraphicsSurface::platformSize):
2422         (WebCore::GraphicsSurface::platformCreate):
2423         (WebCore::GraphicsSurface::platformImport):
2424         (WebCore::GraphicsSurface::platformLock):
2425         (WebCore::GraphicsSurface::platformUnlock):
2426         (WebCore::GraphicsSurface::platformDestroy):
2427         (WebCore::GraphicsSurface::platformBeginPaint):
2428         (WebCore::GraphicsSurface::createReadOnlyImage):
2429
2430 2012-12-11  Mike West  <mkwst@chromium.org>
2431
2432         Web Inspector: Evaluate private browsing mode's effect on console messages.
2433         https://bugs.webkit.org/show_bug.cgi?id=104383
2434
2435         Reviewed by Pavel Feldman.
2436
2437         Two sets of console messages are currently gated on private browsing
2438         mode being inactive. This patch centralizes the private browsing checks
2439         in order to apply them equally to all console messages, and changes the
2440         granularity at which they act.
2441
2442         The current checks block the console messages entirely. This patch
2443         blocks only notifications to ChromeClient and ensures that messages
2444         won't be passed to printf where they might end up in system logs.
2445         Notifications to InspectorInstrumentation seem safe; so far as I can
2446         tell, there's no compelling reason to prevent console-based debugging
2447         in private browsing mode. This patch excludes those calls from the
2448         private browsing check.
2449
2450         Test: inspector/console/clients-ignored-in-privatebrowsing.html
2451
2452         * loader/cache/CachedResourceLoader.cpp:
2453         (WebCore::CachedResourceLoader::printAccessDeniedMessage):
2454             Drop the private browsing check.
2455         * page/Console.cpp:
2456         (WebCore::Console::addMessage):
2457             Add private browsing checks to the two ::addMessage variants that
2458             do real work. Ensure that calls to printf and notifications to
2459             ChromeClients are gated on these checks, but always allow
2460             notifications to InspectorInstrumentation.
2461         * page/DOMWindow.cpp:
2462         (WebCore::DOMWindow::printErrorMessage):
2463             Drop the private browsing check.
2464
2465 2012-12-10  Dan Winship  <danw@gnome.org>
2466
2467         [Soup] Fix spelling of "initiating" in API.
2468
2469         Reviewed by Martin Robinson.
2470
2471         No new tests (just internal renaming).
2472
2473         * platform/network/ResourceHandle.h:
2474         (ResourceHandle):
2475         * platform/network/soup/ResourceHandleSoup.cpp:
2476         (WebCore):
2477         (WebCore::setSoupRequestInitiatingPageIDFromNetworkingContext):
2478         (WebCore::ResourceHandle::start):
2479         (WebCore::ResourceHandle::getSoupRequestInitiatingPageID):
2480
2481 2012-12-10  Martin Robinson  <mrobinson@igalia.com>
2482
2483         [GTK] Remove the Pango backend
2484         https://bugs.webkit.org/show_bug.cgi?id=104569
2485
2486         Reviewed by Daniel Bates.
2487
2488         Remove the Pango backend entirely. The EFL build has no support for it and it's
2489         not really maintained enough for the GTK+ port, now that HarfbuzzNG shapes complex
2490         text when Freetype is the active text rendering backend.
2491
2492         No new tests. This does not change behavior.
2493
2494         * GNUmakefile.am: Remove Pango backend options and move Freetype options to the common list.
2495         * GNUmakefile.list.am: Ditto.
2496         * platform/graphics/FontPlatformData.h:
2497         * platform/graphics/pango/FontCachePango.cpp: Removed.
2498         * platform/graphics/pango/FontCustomPlatformDataPango.cpp: Removed.
2499         * platform/graphics/pango/FontPango.cpp: Removed.
2500         * platform/graphics/pango/FontPlatformData.h: Removed.
2501         * platform/graphics/pango/FontPlatformDataPango.cpp: Removed.
2502         * platform/graphics/pango/GlyphPageTreeNodePango.cpp: Removed.
2503         * platform/graphics/pango/PangoUtilities.cpp: Removed.
2504         * platform/graphics/pango/PangoUtilities.h: Removed.
2505         * platform/graphics/pango/SimpleFontDataPango.cpp: Removed.
2506
2507 2012-12-11  Andrey Adaikin  <aandrey@chromium.org>
2508
2509         Web Inspector: [WebGL] prevent GC from collecting WebGLObject instances currently bound to the context state
2510         https://bugs.webkit.org/show_bug.cgi?id=104119
2511
2512         Reviewed by Pavel Feldman.
2513
2514         This is to prevent GC from collecting resources bound to a context (WebGL or 2D).
2515         Otherwise, for example in WebGL, subsequent calls to gl.getParameter() may return a recently created
2516         instance that is no longer bound to a Resource object (thus, no history to replay it later).
2517
2518         * inspector/InjectedScriptCanvasModuleSource.js:
2519         (.):
2520
2521 2012-12-11  Zan Dobersek  <zandobersek@gmail.com>
2522
2523         Unreviewed build fix after r137243.
2524
2525         * bindings/gobject/GNUmakefile.am:
2526
2527 2012-12-10  No'am Rosenthal  <noam@webkit.org>
2528
2529         REGRESSION (r137006): CSS clip on solid color composited div broken
2530         https://bugs.webkit.org/show_bug.cgi?id=104604
2531
2532         Reviewed by Simon Fraser.
2533
2534         Disable direct compositing of background color for clipping layers.
2535
2536         Test: compositing/geometry/clip-inside.html
2537
2538         * rendering/RenderLayerBacking.cpp:
2539         (WebCore::supportsDirectBoxDecorationsComposition):
2540             Never allow direct background composition if there is a clip.
2541
2542 2012-12-10  Simon Fraser  <simon.fraser@apple.com>
2543
2544         REGRESSION (r137215): WebKit stretches and shrinks a part of screen on scroll
2545         https://bugs.webkit.org/show_bug.cgi?id=104626
2546
2547         Reviewed by Beth Dakin.
2548
2549         r137215 removed a compositing layer repaint on size changes. However, there
2550         are cases where the compositing code constrains layer size by clipping
2551         with the viewport and a clipping ancestor. When that happens, we must
2552         invalidate the layer on a size change to avoid showing stretched or
2553         shrunken content.
2554
2555         Test: compositing/repaint/clipped-layer-size-change.html
2556
2557         * rendering/RenderLayerBacking.cpp:
2558         (WebCore::RenderLayerBacking::RenderLayerBacking):
2559         (WebCore::RenderLayerBacking::updateCompositedBounds):
2560         (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
2561         * rendering/RenderLayerBacking.h:
2562         (RenderLayerBacking):
2563
2564 2012-12-10  Dean Jackson  <dino@apple.com>
2565
2566         Remove old WebKit Animation API code
2567         https://bugs.webkit.org/show_bug.cgi?id=104611
2568
2569         Reviewed by Simon Fraser.
2570
2571         Remove the existing, unused animation API code. We'll look into
2572         implementing the W3C Animation API if/when it is stable.
2573
2574         * CMakeLists.txt: Remove WebKitAnimation and WebKitAnimationList classes.
2575         * DerivedSources.cpp:
2576         * DerivedSources.make:
2577         * DerivedSources.pri:
2578         * GNUmakefile.list.am:
2579         * Target.pri:
2580         * UseJSC.cmake:
2581         * UseV8.cmake:
2582         * WebCore.gypi:
2583         * WebCore.vcproj/WebCore.vcproj:
2584         * WebCore.xcodeproj/project.pbxproj:
2585         * bindings/js/JSBindingsAllInOne.cpp: Remove includes.
2586         * bindings/js/JSWebKitAnimationCustom.cpp: Removed.
2587         * bindings/js/JSWebKitAnimationListCustom.cpp: Removed.
2588         * dom/Element.cpp: Remove API.
2589         * dom/Element.h: Ditto.
2590         * dom/Element.idl: Ditto.
2591         * page/DOMWindow.idl: Ditto.
2592         * page/WebKitAnimation.cpp: Removed.
2593         * page/WebKitAnimation.h: Removed.
2594         * page/WebKitAnimation.idl: Removed.
2595         * page/WebKitAnimationList.cpp: Removed.
2596         * page/WebKitAnimationList.h: Removed.
2597         * page/WebKitAnimationList.idl: Removed.
2598         * page/animation/AnimationController.cpp: Remove API.
2599         * page/animation/AnimationController.h: Ditto.
2600         * page/animation/AnimationControllerPrivate.h: Ditto.
2601         * page/animation/CompositeAnimation.cpp: Ditto.
2602         * page/animation/CompositeAnimation.h: Ditto.
2603
2604 2012-12-10  Jessie Berlin  <jberlin@apple.com>
2605
2606         Fix the Mac build after r137233
2607
2608         * html/shadow/HTMLShadowElement.h:
2609         Remove a declaration of a member variable that was moved to the InsertionPoint superclass.
2610
2611 2012-12-10  KyungTae Kim  <ktf.kim@samsung.com>
2612
2613         Build fix after r137221
2614         https://bugs.webkit.org/show_bug.cgi?id=104617
2615
2616         Unreviewed build fix
2617
2618         * html/HTMLPropertiesCollection.cpp:
2619         (WebCore::nextNodeWithProperty):
2620
2621 2012-12-10  Hajime Morrita  <morrita@google.com>
2622
2623         [Shadow DOM][Refactoring] HTMLContentElement,HTMLShadowElement::m_registeredWithShadowRoot should be moved to InsertionPoint
2624         https://bugs.webkit.org/show_bug.cgi?id=104516
2625
2626         Reviewed by Dimitri Glazkov.
2627
2628         This change pulls duplicated code in removedFrom() and
2629         insertedInto() of both both HTMLShadowElement and
2630         HTMLContentElement to their super class InsertionPoint.
2631
2632         This is a part of effor that encapsulate node distribution algorithm to
2633         ContentDistributor and its family.
2634
2635         No new tests, no behavior change.
2636
2637         * dom/ShadowRoot.cpp:
2638         (WebCore::ShadowRoot::registerInsertionPoint): Added.
2639         (WebCore::ShadowRoot::unregisterInsertionPoint): Added.
2640         * dom/ShadowRoot.h:
2641         (ShadowRoot):
2642         * html/shadow/ContentDistributor.cpp:
2643         (WebCore::ShadowRootContentDistributionData::regiterInsertionPoint): Generalized two methods for <content> and <shadow>.
2644         (WebCore):
2645         (WebCore::ShadowRootContentDistributionData::unregisterInsertionPoint): Ditto.
2646         * html/shadow/ContentDistributor.h:
2647         (ShadowRootContentDistributionData):
2648         * html/shadow/HTMLContentElement.cpp:
2649         (WebCore::HTMLContentElement::HTMLContentElement):
2650         * html/shadow/HTMLContentElement.h:
2651         * html/shadow/HTMLShadowElement.cpp:
2652         (WebCore::HTMLShadowElement::HTMLShadowElement):
2653         * html/shadow/HTMLShadowElement.h:
2654         * html/shadow/InsertionPoint.cpp:
2655         (WebCore::InsertionPoint::InsertionPoint):
2656         (WebCore::InsertionPoint::insertedInto): Pulled up from subclasses
2657         (WebCore::InsertionPoint::removedFrom): Pulled up from subclasses
2658         * html/shadow/InsertionPoint.h:
2659         (InsertionPoint):
2660
2661 2012-12-10  Jon Lee  <jonlee@apple.com>
2662
2663         Keep track of plug-in snapshots clicked by user
2664         https://bugs.webkit.org/show_bug.cgi?id=103206
2665         <rdar://problem/12746483>
2666
2667         Reviewed by Anders Carlsson.
2668
2669         * html/HTMLPlugInImageElement.cpp:
2670         (WebCore::HTMLPlugInImageElement::HTMLPlugInImageElement): Initially the hash is
2671         unknown. Set to 0. Move the check for whether to snapshot the plugin into the
2672         new function subframeLoaderWillLoadPlugIn.
2673         (WebCore::HTMLPlugInImageElement::userDidClickSnapshot): Rename
2674         setPendingClickEvent to userDidClickSnapshot. In addition to holding onto the
2675         click event used to activate the plug-in, the function now also tells the plug-in
2676         client to add the origin hash as an auto-start origin.
2677         (WebCore::HTMLPlugInImageElement::subframeLoaderWillLoadPlugIn): Calculate the
2678         hash based on the provided URL, which is the URL the plug-in will load. Extend
2679         the check that used to be in the constructor to see if the plug-in should not
2680         automatically load, including checking the plug-in size and whether the hash
2681         is an auto-start origin.
2682         * html/HTMLPlugInImageElement.h: Rename setPendingClickEvent to userDidClickSnapshot
2683         and add a variable for the origin hash.
2684
2685         * loader/SubframeLoader.cpp:
2686         (WebCore::SubframeLoader::requestPlugin): When the loader is about to load the
2687         plug-in, pass the URL to the element, so that it can calculate the hash.
2688
2689         * page/Page.cpp:
2690         (WebCore::Page::Page): Take the plugInClient from the page clients.
2691         (WebCore::Page::~Page): If the client exists, tell it that the page is being
2692         destroyed.
2693         (WebCore::Page::PageClients::PageClients): Initialize this optional client to
2694         null.
2695         * page/Page.h: Add PlugInClient to page clients.
2696         (PageClients): Add PlugInClient variable.
2697         (WebCore::Page::plugInClient):
2698         * page/PlugInClient.h: Added.
2699
2700         * rendering/RenderSnapshottedPlugIn.cpp:
2701         (WebCore::RenderSnapshottedPlugIn::handleEvent): Call the renamed function
2702         userDidClickSnapshot().
2703         (WebCore::RenderSnapshottedPlugIn::layout): Move the check of the plug-in size
2704         to subframeLoaderWillLoadPlugIn.
2705
2706         Add PlugInClient.h.
2707         * GNUmakefile.list.am:
2708         * Target.pri:
2709         * WebCore.vcproj/WebCore.vcproj:
2710         * WebCore.xcodeproj/project.pbxproj:
2711
2712 2012-12-10  Antti Koivisto  <antti@apple.com>
2713
2714         Not reviewed.
2715         
2716         Build fix.
2717
2718         * html/HTMLPropertiesCollection.cpp:
2719         (WebCore::nextNodeWithProperty):
2720         * page/TouchDisambiguation.cpp:
2721         (WebCore::boundingBoxForEventNodes):
2722
2723 2012-12-10  Beth Dakin  <bdakin@apple.com>
2724
2725         https://bugs.webkit.org/show_bug.cgi?id=104602
2726         DidHitRelevantRepaintedObjectsAreaThreshold LayoutMilestone fires too 
2727         early on some pages with iframes
2728
2729         Reviewed by Simon Fraser.
2730
2731         This change makes it so that any RenderObjects inside iframes are not 
2732         considered relevant.
2733         * page/Page.cpp:
2734         (WebCore::Page::addRelevantRepaintedObject):
2735
2736 2012-12-10  David Grogan  <dgrogan@chromium.org>
2737
2738         IndexedDB: Propagate more leveldb errors to script
2739         https://bugs.webkit.org/show_bug.cgi?id=104422
2740
2741         Reviewed by Tony Chang.
2742
2743         These are the last places that ignore leveldb errors that can get the
2744         usual ok/found treatment.
2745
2746         Nothing called getBool, so it is deleted.
2747
2748         * Modules/indexeddb/IDBBackingStore.cpp:
2749         (WebCore):
2750         (WebCore::getInt):
2751         (WebCore::isSchemaKnown):
2752         (WebCore::setUpMetadata):
2753         (WebCore::getMaxObjectStoreId):
2754         (WebCore::IDBBackingStore::open):
2755         (WebCore::IDBBackingStore::getIDBDatabaseMetaData):
2756         (WebCore::getNewDatabaseId):
2757         (WebCore::IDBBackingStore::createIDBDatabaseMetaData):
2758         (WebCore::setMaxObjectStoreId):
2759         (WebCore::getNewVersionNumber):
2760         (WebCore::IDBBackingStore::putRecord):
2761         (WebCore::setMaxIndexId):
2762         * Modules/indexeddb/IDBBackingStore.h:
2763         (IDBBackingStore):
2764         * Modules/indexeddb/IDBObjectStoreBackendImpl.cpp:
2765         (WebCore::IDBObjectStoreBackendImpl::setIndexKeys):
2766         (WebCore::IDBObjectStoreBackendImpl::ObjectStoreStorageOperation::perform):
2767
2768 2012-12-09  Antti Koivisto  <antti@apple.com>
2769
2770         Factor node traversal into standalone functions
2771         https://bugs.webkit.org/show_bug.cgi?id=104507
2772
2773         Reviewed by Eric Seidel.
2774
2775         Node traversal functions are currently Node and ContainerNode members. Their implementations
2776         are confusingly scattered over multiple header and source files. These functions have no particular
2777         reason to be members as they don't require non-public access. They should be made freestanding
2778         function instead and gathered together.
2779         
2780         This patch adds NodeTraversal namespace, defined in NodeTraversal.h. It contains freestanding
2781         functions for traversing Nodes. Most popular functions are inlined (as before) and
2782         there are ContainerNode specific specializations (as before).
2783         
2784         In client code
2785         
2786             node = node->traverseNextNode();
2787             node = node->traverseNextSibling();
2788         
2789         becomes
2790         
2791             node = NodeTraversal::next(node);
2792             node = NodeTraversal::nextSkippingChildren(node);
2793             
2794         etc.
2795
2796         * WebCore.exp.in:
2797         * WebCore.xcodeproj/project.pbxproj:
2798         * accessibility/AccessibilityNodeObject.cpp:
2799         (WebCore::AccessibilityNodeObject::accessibilityDescriptionForElements):
2800         * accessibility/AccessibilityObject.cpp:
2801         (WebCore::AccessibilityObject::firstAccessibleObjectFromNode):
2802         * accessibility/AccessibilityRenderObject.cpp:
2803         (WebCore::AccessibilityRenderObject::addImageMapChildren):
2804         * bindings/js/JSDocumentCustom.cpp:
2805         (WebCore::toJS):
2806         * css/SelectorChecker.cpp:
2807         (WebCore::SelectorChecker::allVisitedStateChanged):
2808         (WebCore::SelectorChecker::visitedStateChanged):
2809         * css/StyleInvalidationAnalysis.cpp:
2810         (WebCore::StyleInvalidationAnalysis::invalidateStyle):
2811         * dom/ContainerNode.cpp:
2812         (WebCore::dispatchChildInsertionEvents):
2813         (WebCore::dispatchChildRemovalEvents):
2814         * dom/ContainerNode.h:
2815         (ContainerNode):
2816         (WebCore):
2817         * dom/ContainerNodeAlgorithms.h:
2818         (WebCore::ChildFrameDisconnector::collectDescendant):
2819         * dom/Document.cpp:
2820         (WebCore::Document::buildAccessKeyMap):
2821         (WebCore::Document::removeAllEventListeners):
2822         (WebCore::Document::updateBaseURL):
2823         (WebCore::Document::processBaseElement):
2824         (WebCore::Document::nodeAbsIndex):
2825         (WebCore::Document::nodeWithAbsIndex):
2826         (WebCore::Document::getFocusableNodes):
2827         * dom/DocumentMarkerController.cpp:
2828         (WebCore::DocumentMarkerController::markersInRange):
2829         (WebCore::DocumentMarkerController::setMarkersActive):
2830         (WebCore::DocumentMarkerController::hasMarkers):
2831         (WebCore::DocumentMarkerController::clearDescriptionOnMarkersIntersectingRange):
2832         * dom/DocumentOrderedMap.cpp:
2833         (WebCore::DocumentOrderedMap::get):
2834         * dom/ElementShadow.cpp:
2835         (WebCore::ElementShadow::collectSelectFeatureSetFrom):
2836         * dom/Node.cpp:
2837         (WebCore::Node::normalize):
2838         (WebCore::Node::lazyAttach):
2839         (WebCore):
2840         (WebCore::Node::detach):
2841         (WebCore::traverseTreeAndMark):
2842         * dom/Node.h:
2843         (Node):
2844         * dom/NodeIterator.cpp:
2845         (WebCore::NodeIterator::NodePointer::moveToNext):
2846         (WebCore::NodeIterator::NodePointer::moveToPrevious):
2847         (WebCore::NodeIterator::updateForNodeRemoval):
2848         * dom/NodeTraversal.h: Added.
2849         (WebCore):
2850         (NodeTraversal):
2851         (WebCore::NodeTraversal::traverseNextNodeTemplate):
2852         (WebCore::NodeTraversal::next):
2853         (WebCore::NodeTraversal::traverseNextSiblingTemplate):
2854         (WebCore::NodeTraversal::nextSibling):
2855         * dom/Range.cpp:
2856         (WebCore::Range::toString):
2857         (WebCore::Range::checkDeleteExtract):
2858         (WebCore::Range::firstNode):
2859         (WebCore::Range::pastLastNode):
2860         (WebCore::Range::textRects):
2861         (WebCore::Range::textQuads):
2862         (WebCore::Range::getBorderAndTextQuads):
2863         * dom/TreeScope.cpp:
2864         (WebCore::TreeScope::labelElementForId):
2865         (WebCore::TreeScope::findAnchor):
2866         * dom/TreeScopeAdopter.cpp:
2867         (WebCore::TreeScopeAdopter::moveTreeToNewScope):
2868         (WebCore::TreeScopeAdopter::moveTreeToNewDocument):
2869         * dom/TreeWalker.cpp:
2870         (WebCore::TreeWalker::nextNode):
2871         * editing/ApplyStyleCommand.cpp:
2872         (WebCore::ApplyStyleCommand::applyRelativeFontStyleChange):
2873         (WebCore::ApplyStyleCommand::fixRangeAndApplyInlineStyle):
2874         (WebCore::containsNonEditableRegion):
2875         (WebCore::ApplyStyleCommand::applyInlineStyleToNodeRange):
2876         (WebCore::ApplyStyleCommand::removeStyleFromRunBeforeApplyingStyle):
2877         (WebCore::ApplyStyleCommand::removeInlineStyle):
2878         * editing/BreakBlockquoteCommand.cpp:
2879         (WebCore::BreakBlockquoteCommand::doApply):
2880         * editing/CompositeEditCommand.cpp:
2881         (WebCore::CompositeEditCommand::deleteInsignificantText):
2882         (WebCore::CompositeEditCommand::cloneParagraphUnderNewElement):
2883         * editing/DeleteSelectionCommand.cpp:
2884         (WebCore::firstEditablePositionInNode):
2885         (WebCore::DeleteSelectionCommand::makeStylingElementsDirectChildrenOfEditableRootToPreventStyleLoss):
2886         (WebCore::DeleteSelectionCommand::handleGeneralDelete):
2887         * editing/EditCommand.cpp:
2888         (WebCore::SimpleEditCommand::addNodeAndDescendants):
2889         * editing/EditingStyle.cpp:
2890         (WebCore::EditingStyle::triStateOfStyle):
2891         (WebCore::EditingStyle::textDirectionForSelection):
2892         * editing/Editor.cpp:
2893         (WebCore::Editor::simplifyMarkup):
2894         * editing/FrameSelection.cpp:
2895         (WebCore::scanForForm):
2896         (WebCore::FrameSelection::setSelectionFromNone):
2897         * editing/InsertParagraphSeparatorCommand.cpp:
2898         (WebCore::InsertParagraphSeparatorCommand::doApply):
2899         * editing/ReplaceSelectionCommand.cpp:
2900         (WebCore::ReplacementFragment::removeUnrenderedNodes):
2901         (WebCore::ReplacementFragment::removeInterchangeNodes):
2902         (WebCore::ReplaceSelectionCommand::InsertedNodes::willRemoveNodePreservingChildren):
2903         (WebCore::ReplaceSelectionCommand::InsertedNodes::willRemoveNode):
2904         (WebCore::ReplaceSelectionCommand::removeRedundantStylesAndKeepStyleSpanInline):
2905         (WebCore::removeHeadContents):
2906         (WebCore::ReplaceSelectionCommand::handleStyleSpans):
2907         * editing/ReplaceSelectionCommand.h:
2908         (WebCore::ReplaceSelectionCommand::InsertedNodes::pastLastLeaf):
2909         * editing/SimplifyMarkupCommand.cpp:
2910         (WebCore::SimplifyMarkupCommand::doApply):
2911         * editing/TextIterator.cpp:
2912         (WebCore::TextIterator::advance):
2913         (WebCore::shouldEmitNewlineAfterNode):
2914         * editing/htmlediting.cpp:
2915         (WebCore::hasARenderedDescendant):
2916         * editing/mac/EditorMac.mm:
2917         (WebCore::Editor::fontForSelection):
2918         * editing/markup.cpp:
2919         (WebCore::completeURLs):
2920         (WebCore::StyledMarkupAccumulator::traverseNodesForSerialization):
2921         (WebCore::findNodesSurroundingContext):
2922         (WebCore::trimFragment):
2923         * editing/visible_units.cpp:
2924         (WebCore::startOfParagraph):
2925         (WebCore::endOfParagraph):
2926         * html/HTMLCollection.cpp:
2927         (WebCore::nextNode):
2928         * html/HTMLElement.cpp:
2929         (WebCore::setHasDirAutoFlagRecursively):
2930         (WebCore::HTMLElement::directionality):
2931         (WebCore::HTMLElement::adjustDirectionalityIfNeededAfterChildrenChanged):
2932         (WebCore::HTMLElement::getItemRefElements):
2933         * html/HTMLFieldSetElement.cpp:
2934         (WebCore::HTMLFieldSetElement::invalidateDisabledStateUnder):
2935         (WebCore::HTMLFieldSetElement::refreshElementsIfNeeded):
2936         * html/HTMLFormElement.cpp:
2937         (WebCore::HTMLFormElement::formElementIndex):
2938         * html/HTMLLabelElement.cpp:
2939         (WebCore::HTMLLabelElement::control):
2940         * html/HTMLLegendElement.cpp:
2941         (WebCore::HTMLLegendElement::associatedControl):
2942         * html/HTMLMapElement.cpp:
2943         (WebCore::HTMLMapElement::mapMouseEvent):
2944         * html/HTMLNameCollection.cpp:
2945         (WebCore::HTMLNameCollection::virtualItemAfter):
2946         * html/HTMLOptionElement.cpp:
2947         (WebCore::HTMLOptionElement::collectOptionInnerText):
2948         * html/HTMLPropertiesCollection.cpp:
2949         (WebCore::nextNodeWithProperty):
2950         * html/HTMLSelectElement.cpp:
2951         (WebCore::HTMLSelectElement::recalcListItems):
2952         * html/HTMLTextFormControlElement.cpp:
2953         (WebCore::HTMLTextFormControlElement::selection):
2954         (WebCore::HTMLTextFormControlElement::innerTextValue):
2955         (WebCore::HTMLTextFormControlElement::valueWithHardLineBreaks):
2956         * html/RadioInputType.cpp:
2957         (WebCore::RadioInputType::handleKeydownEvent):
2958         * html/shadow/ContentDistributor.cpp:
2959         (WebCore::ShadowRootContentDistributionData::ensureInsertionPointList):
2960         * inspector/InspectorDOMAgent.cpp:
2961         (WebCore::InspectorDOMAgent::performSearch):
2962         * inspector/InspectorMemoryAgent.cpp:
2963         * page/FocusController.cpp:
2964         (WebCore::FocusController::findFocusCandidateInContainer):
2965         * page/Frame.cpp:
2966         (WebCore::Frame::searchForLabelsAboveCell):
2967         (WebCore::Frame::searchForLabelsBeforeElement):
2968         * rendering/RenderNamedFlowThread.cpp:
2969         (WebCore::RenderNamedFlowThread::getRanges):
2970         * svg/SVGSVGElement.cpp:
2971         (WebCore::SVGSVGElement::collectIntersectionOrEnclosureList):
2972         (WebCore::SVGSVGElement::getElementById):
2973         * svg/SVGUseElement.cpp:
2974         (WebCore::removeDisallowedElementsFromSubtree):
2975         * svg/animation/SMILTimeContainer.cpp:
2976         (WebCore::SMILTimeContainer::updateDocumentOrderIndexes):
2977         * xml/XPathNodeSet.cpp:
2978         (WebCore::XPath::NodeSet::traversalSort):
2979         * xml/XPathStep.cpp:
2980         (WebCore::XPath::Step::nodesInAxis):
2981         * xml/XPathUtil.cpp:
2982         (WebCore::XPath::stringValue):
2983
2984 2012-12-10  Min Qin  <qinmin@chromium.org>
2985
2986         Sending multi-touch events to the same Iframe
2987         https://bugs.webkit.org/show_bug.cgi?id=97973
2988
2989         Reviewed by Dimitri Glazkov.
2990
2991         Multi-Touch in different iframe can give both documents access to each other.
2992         This could cause cross-origin access. To solve this, all the touch events should
2993         be sent to the iframe where the first touchstart happens.
2994
2995         Test: fast/events/touch/multi-touch-inside-iframes.html
2996               fast/events/touch/multi-touch-inside-nested-iframes.html
2997
2998         * page/EventHandler.cpp:
2999         (WebCore::EventHandler::handleTouchEvent):
3000         * page/EventHandler.h:
3001
3002 2012-12-10  KyungTae Kim  <ktf.kim@samsung.com>
3003
3004         [soup] Fix build warning in ResourceHandleSoup.cpp
3005         https://bugs.webkit.org/show_bug.cgi?id=104605
3006
3007         Reviewed by Martin Robinson.
3008
3009         The nextMultipartResponsePartCallback has unused parameter 'source',
3010         comment out it to fix 'unused parameter' build warning.
3011
3012         * platform/network/soup/ResourceHandleSoup.cpp:
3013         (WebCore::nextMultipartResponsePartCallback):
3014
3015 2012-12-10  Simon Fraser  <simon.fraser@apple.com>
3016
3017         Fix frame border painting in tiled drawing mode
3018         https://bugs.webkit.org/show_bug.cgi?id=104453
3019         <rdar://problem/11678611>
3020
3021         Reviewed by Dan Bernstein.
3022
3023         Frame borders were not correctly invalidated when in tiled drawing mode, because
3024         RenderFrameSet::layout() invalidated directly on the view, which skips the tile
3025         cache.
3026         
3027         Fix by invalidating like all other renderers, via the repaint container.
3028         
3029         Also, the layer transform should be updated before the invalidation, and
3030         we make use of RenderObject::updateLayerTransform() which has the same behavior
3031         as the old code.
3032
3033         Attempts to make a layout test failed. Resizing composited framesets repainted
3034         via layer resizing, and an attempt to make a ref test in tiled drawing mode
3035         failed (the test passed without the patch).
3036
3037         * rendering/RenderFrameSet.cpp:
3038         (WebCore::RenderFrameSet::layout):
3039
3040 2012-12-10  Simon Fraser  <simon.fraser@apple.com>
3041
3042         When converting a layer into a tiled layer, ensure that we update the visible rect
3043         https://bugs.webkit.org/show_bug.cgi?id=104467
3044
3045         Reviewed by Darin Adler.
3046
3047         When a GraphicsLayerCA toggles to use a TileCache, we have to ensure that the
3048         layer's visible rect (which is used to ensure tile coverage) is updated in
3049         the same commit. Otherwise we can get blank layers until something else causes
3050         the visible rect to be updated.
3051
3052         Test: compositing/tiling/tiled-layer-resize.html
3053
3054         * platform/graphics/ca/GraphicsLayerCA.cpp:
3055         (WebCore::GraphicsLayerCA::dumpAdditionalProperties): With the debug flag, dump the TiledBacking
3056         address for ease of debugging.
3057         (WebCore::GraphicsLayerCA::swapFromOrToTiledLayer): Set the VisibleRectChanged bit in
3058         m_uncommittedChanges if we've just switched to a tiled layer.
3059
3060 2012-12-10  Simon Fraser  <simon.fraser@apple.com>
3061
3062         Don't unconditionally repaint compositing layers when their size changes
3063         https://bugs.webkit.org/show_bug.cgi?id=104461
3064
3065         Reviewed by Sam Weinig.
3066
3067         RenderLayerBacking always repainted the entire compositing layer when its size
3068         changed. This was done to fix repaint issues when outline widths changes, but
3069         that issue is now solved by repainting in GraphicsLayer::setOffsetFromRenderer(),
3070         add in r134628. I believe this is no longer necessary.
3071         
3072         Always repainting when the size changes is terrible for the tile cache when
3073         loading large documents, as all tiles repaint every time the document gets
3074         longer.
3075
3076         Test: compositing/repaint/resize-repaint.html
3077
3078         * rendering/RenderLayerBacking.cpp:
3079         (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
3080
3081 2012-12-10  Ojan Vafai  <ojan@chromium.org>
3082
3083         Unreviewed, rolling out r134150.
3084         http://trac.webkit.org/changeset/134150
3085         https://bugs.webkit.org/show_bug.cgi?id=99940
3086
3087         Caused JS-based tooltips to remain during scroll on Facebook
3088         and Gmail. Rollout until I have time to experiment with less
3089         aggresive approaches.
3090
3091         * page/EventHandler.cpp:
3092         (WebCore):
3093         (WebCore::MaximumDurationTracker::MaximumDurationTracker):
3094         (WebCore::MaximumDurationTracker::~MaximumDurationTracker):
3095         (MaximumDurationTracker):
3096         (WebCore::EventHandler::EventHandler):
3097         (WebCore::EventHandler::clear):
3098         (WebCore::EventHandler::mouseMoved):
3099         (WebCore::EventHandler::dispatchFakeMouseMoveEventSoon):
3100         (WebCore::EventHandler::fakeMouseMoveEventTimerFired):
3101         * page/EventHandler.h:
3102         (EventHandler):
3103         * platform/Timer.h:
3104
3105 2012-12-10  Yi Shen  <max.hong.shen@gmail.com>
3106
3107         Keyboard caret movement in textarea with RTL Override Character can make tab unresponsive
3108         https://bugs.webkit.org/show_bug.cgi?id=103067
3109
3110         Reviewed by Ryosuke Niwa.
3111
3112         For textarea with RTL override character, the line break could be the previous leaf InlineTextBox of
3113         the InlineTextBox for the RTL override text. When overshots the left/right, make sure the 
3114         leftVisuallyDistinctCandidate and rightVisuallyDistinctCandidate return the visually distinct 
3115         left/right position by ignoring the line break.
3116
3117         Test: editing/selection/move-by-character-crash-test-textarea.html
3118
3119         * editing/VisiblePosition.cpp:
3120         (WebCore::VisiblePosition::leftVisuallyDistinctCandidate):
3121         (WebCore::VisiblePosition::rightVisuallyDistinctCandidate):
3122
3123 2012-12-10  Kondapally Kalyan  <kalyan.kondapally@intel.com>
3124
3125         [EFL][WebGL] Minor Refactoring in GraphicsContext3DEfl.
3126         https://bugs.webkit.org/show_bug.cgi?id=104553.
3127
3128         Reviewed by Kenneth Rohde Christiansen.
3129
3130         We use different FBO for canvas and offscreen surface of our platform layer.
3131         Thus we need to manage any bound buffers while copying contents to the surface. Currently, Surface
3132         always uses double buffering but in future we should be able to configure it to use either
3133         double or single buffer. For these use cases, it would be handy to bind buffers directly to
3134         FBO used by the surface. This patch does the needed changes in GraphicsContext3DEfl and
3135         PlatformSurface. Also, removes some unused code.
3136
3137         Covered by existing tests.
3138
3139         Relevant changes in GraphicsContext3DEfl to obtain FBO id from PlatformSurface.
3140         * platform/graphics/efl/GraphicsContext3DEfl.cpp:
3141         (WebCore::GraphicsContext3D::GraphicsContext3D):
3142         (WebCore::GraphicsContext3D::~GraphicsContext3D):
3143
3144         Renamed createGraphicsSurface to didResizeCanvas.
3145         (WebCore::GraphicsContext3D::createGraphicsSurfaces):
3146         * platform/graphics/efl/GraphicsContext3DPrivate.cpp:
3147         (GraphicsContext3DPrivate::didResizeCanvas):
3148         (GraphicsContext3DPrivate::copyToGraphicsSurface):
3149         * platform/graphics/efl/GraphicsContext3DPrivate.h:
3150         (GraphicsContext3DPrivate):
3151
3152         Header cleanup.
3153         * platform/graphics/opengl/GLDefs.h:
3154         * platform/graphics/opengl/GLPlatformContext.cpp:
3155         (WebCore::GLPlatformContext::createContext):
3156         * platform/graphics/opengl/GLPlatformContext.h:
3157
3158         Added initialize method to expose FBO id of the surface.
3159         Removed unused code.
3160         * platform/graphics/opengl/GLPlatformSurface.cpp:
3161         (WebCore::GLPlatformSurface::initialize):
3162         (WebCore):
3163         (WebCore::GLPlatformSurface::updateContents):
3164         * platform/graphics/opengl/GLPlatformSurface.h:
3165         (GLPlatformSurface):
3166         * platform/graphics/surfaces/glx/GLXSurface.h:
3167
3168 2012-12-07  Simon Fraser  <simon.fraser@apple.com>
3169
3170         Tidy up the tiled scrolling indicator, fix with zooming
3171         https://bugs.webkit.org/show_bug.cgi?id=104386
3172
3173         Reviewed by Tim Horton.
3174
3175         Fix the tiled scrolling indicator to not get tiny when zooming,
3176         to not poke out of the bottom of the window, and to not look
3177         so crappy.
3178
3179         * platform/graphics/ca/mac/TileCache.mm:
3180         (WebCore::TileCache::updateTileCoverageMap):
3181         (WebCore::TileCache::drawTileMapContents):
3182
3183 2012-12-10  Sheriff Bot  <webkit.review.bot@gmail.com>
3184
3185         Unreviewed, rolling out r136817.
3186         http://trac.webkit.org/changeset/136817
3187         https://bugs.webkit.org/show_bug.cgi?id=104596
3188
3189         This patch was an unnecessarily complex solution to handling
3190         conversion of union types. (Requested by mpruett on #webkit).
3191
3192         * bindings/js/JSDictionary.cpp:
3193         (WebCore::JSDictionary::convertValue):
3194         * bindings/js/JSDictionary.h:
3195         (WebCore::JSDictionary::tryGetPropertyAndResult):
3196
3197 2012-12-10  Tab Atkins  <tabatkins@google.com>
3198
3199         Deprecate prefixed linear-gradient and radial-gradient functions
3200         https://bugs.webkit.org/show_bug.cgi?id=104591
3201
3202         Reviewed by Dean Jackson.
3203
3204         Rename the old gradient parsing functions in anticipation of functions that parse the new syntax.
3205
3206         No new tests added - this is a rename and has no functionality change.
3207
3208         * css/CSSParser.cpp:
3209         (WebCore::CSSParser::parseDeprecatedLinearGradient):
3210         (WebCore::CSSParser::parseDeprecatedRadialGradient):
3211         (WebCore::CSSParser::parseGeneratedImage):
3212         * css/CSSParser.h:
3213
3214 2012-12-10  Mark Pilgrim  <pilgrim@chromium.org>
3215
3216         [Chromium][Win] Remove theme-related functions from PlatformSupport
3217         https://bugs.webkit.org/show_bug.cgi?id=102699
3218
3219         Reviewed by Adam Barth.
3220
3221         Call theme engine directly instead of going through
3222         PlatformSupport. Part of a refactoring series. See tracking bug 82948.
3223
3224         * platform/chromium/PlatformSupport.h:
3225         (PlatformSupport):
3226         * platform/chromium/ScrollbarThemeChromiumWin.cpp:
3227         (WebCore::ScrollbarThemeChromiumWin::paintTrackPiece):
3228         (WebCore::ScrollbarThemeChromiumWin::paintButton):
3229         * rendering/RenderThemeChromiumWin.cpp:
3230         (WebCore):
3231         (WebCore::RenderThemeChromiumWin::paintButton):
3232         (WebCore::RenderThemeChromiumWin::paintSliderTrack):
3233         (WebCore::RenderThemeChromiumWin::paintSliderThumb):
3234         (WebCore::RenderThemeChromiumWin::paintMenuList):
3235         (WebCore::RenderThemeChromiumWin::paintTextFieldInternal):
3236         (WebCore::RenderThemeChromiumWin::paintInnerSpinButton):
3237         (WebCore::RenderThemeChromiumWin::paintProgressBar):
3238
3239 2012-12-10  Dean Jackson  <dino@apple.com>
3240
3241         Support for CSS widows and orphans
3242         https://bugs.webkit.org/show_bug.cgi?id=9410
3243
3244         Reviewed by Darin Adler.
3245
3246         The CSS 'widow' and 'orphan' properties were supported by the parser and
3247         style system, but were not actually doing anything in layout. Now they do!
3248
3249         In order to not break existing content, I unfortunately had to go against
3250         the specification and change our default value from 2 to auto. A value of
3251         auto means that widows and orphans will not cause any page/column breaks.
3252
3253         Supporting orphans was a small change. During line layout, if we realise
3254         we need to move to a new page in a situation that would create an orphan,
3255         move the entire block to the new page. There was already code to do this.
3256
3257         Support for widows was trickier. When we finish laying out a block, count
3258         the number of hanging lines. If we've created a widow, and there are enough
3259         available lines on the previous page, then steal some and remember the line
3260         to break at. Trigger a relayout. Then notice the line that was marked for
3261         breaking and avoid the widow. This means some blocks go through layout
3262         twice, but as long as the widow value is small it shouldn't be a huge penalty.
3263
3264         Tests: fast/multicol/widows-and-orphans.html (new test)
3265                printing/page-break-orphans.html
3266                printing/page-break-orphans-and-widows.html
3267                printing/page-break-widows.html
3268
3269         * css/CSSComputedStyleDeclaration.cpp:
3270         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Return CSSValueAuto for widows and orphans if necessary.
3271         * css/CSSParser.cpp:
3272         (WebCore::CSSParser::parseValue): Support "auto" in widow and orphan property parsing.
3273         * css/StyleBuilder.cpp:
3274         (WebCore::StyleBuilder::StyleBuilder): Change property handler to something that supports auto.
3275         * page/animation/CSSPropertyAnimation.cpp:
3276         (WebCore::CSSPropertyAnimation::ensurePropertyMap): Add widows and orphans to the animation map.
3277         * rendering/RenderBlock.cpp:
3278         (WebCore::RenderBlock::layoutBlockChild): Detect if we've caused a widow-fixing break, and request relayout evaluation.
3279         (WebCore::RenderBlock::markForPaginationRelayoutIfNeeded): Test for a widow-fixing line.
3280         (WebCore::RenderBlock::setBreakAtLineToAvoidWidow): New function to remember where we should break on next layout.
3281         (WebCore::RenderBlock::adjustLinePositionForPagination): Move the entire block to a new page if this would create an orphan.
3282         * rendering/RenderBlock.h:
3283         (WebCore::RenderBlock::shouldBreakAtLineToAvoidWidow): New function to indicate if we are remembering a widow.
3284         (WebCore::RenderBlock::clearShouldBreakAtLineToAvoidWidow): Reset the line breaks.
3285         (WebCore::RenderBlock::lineBreakToAvoidWidow):
3286         (WebCore::RenderBlock::RenderBlockRareData::RenderBlockRareData): Add a flag for indicating if we are remembering a line, and the actual line itself.
3287         * rendering/RenderBlockLineLayout.cpp:
3288         (WebCore::RenderBlock::layoutRunsAndFloatsInRange): The code to detect and fix widows. Explained above.
3289         * rendering/style/RenderStyle.h: New methods for indicating if widows and orphans are non-default values.
3290         * rendering/style/StyleRareInheritedData.cpp: Ditto.
3291         * rendering/style/StyleRareInheritedData.h: Ditto.
3292
3293 2012-12-10  Zan Dobersek  <zandobersek@gmail.com>
3294
3295         REGRESSION (r118735): svg/dom/complex-svgView-specification.html, svg/dom/SVGViewSpec.html, svg/dom/viewspec-parser.html failing on GTK Linux 64-bit Release
3296         https://bugs.webkit.org/show_bug.cgi?id=87734
3297
3298         Reviewed by Martin Robinson.
3299
3300         Don't modify ResourceRequest's URL to have the value of the (encoded)
3301         URI of the SoupMessage. The only exception is in the case of cancelled
3302         SoupMessage - the URL of the ResourceRequest should then be null.
3303
3304         No new tests - existing tests should show no regressions.
3305
3306         * platform/network/soup/ResourceRequestSoup.cpp:
3307         (WebCore::ResourceRequest::updateFromSoupMessage):
3308
3309 2012-12-10  Gustavo Noronha Silva  <gns@gnome.org>
3310
3311         Unreviewed distcheck fix.
3312
3313         * GNUmakefile.list.am:
3314
3315 2012-12-10  Eric Seidel  <eric@webkit.org>
3316
3317         Caused crashes in v8.  Rolling out until abarth can fix.  See cr-issue 165136 for more info
3318         https://bugs.webkit.org/show_bug.cgi?id=104575
3319
3320         Unreviewed, just rolling out r136559.
3321
3322         * bindings/v8/V8GCController.cpp:
3323         * bindings/v8/V8NodeFilterCondition.cpp:
3324         (WebCore::V8NodeFilterCondition::V8NodeFilterCondition):
3325         (WebCore::V8NodeFilterCondition::acceptNode):
3326         * bindings/v8/V8NodeFilterCondition.h:
3327         (WebCore::V8NodeFilterCondition::create):
3328         (V8NodeFilterCondition):
3329         * dom/NodeFilter.h:
3330
3331 2012-12-10  Eric Carlson  <eric.carlson@apple.com>
3332
3333         Unreviewed build fix after r137167.
3334
3335         * WebCore.xcodeproj/project.pbxproj: Add InbandTextTrackPrivate.h to framework private 
3336             headers.
3337
3338 2012-12-10  Martin Robinson  <mrobinson@igalia.com>
3339
3340         Fix the GTK+ build after a collision of two patches.
3341
3342         Unreviewed build fix.
3343
3344         * bindings/gobject/GNUmakefile.am: The GObject DOM bindings library needs to
3345         include the harfbuzz cflags when compiling.
3346
3347 2012-12-10  Parth Patel  <parpatel@rim.com>
3348
3349         Make hiddenPageDomTimerInterval a setting
3350         https://bugs.webkit.org/show_bug.cgi?id=104555
3351
3352         Reviewed by Yong Li.
3353
3354         Make hiddenPageDomTimerInterval a setting so client can customize it.
3355
3356         No new tests are needed.
3357
3358         * page/Page.cpp:
3359         (WebCore):
3360         (WebCore::Page::setVisibilityState):
3361         * page/Settings.cpp:
3362         (WebCore):
3363         (WebCore::Settings::setHiddenPageDOMTimerAlignmentInterval):
3364         (WebCore::Settings::hiddenPageDOMTimerAlignmentInterval):
3365         * page/Settings.h:
3366         (Settings):
3367
3368 2012-12-10  peavo@outlook.com  <peavo@outlook.com>
3369
3370         [WinCairo] Compile fix in ImageCairoWin.cpp
3371         https://bugs.webkit.org/show_bug.cgi?id=104554
3372
3373         Reviewed by Brent Fulgham.
3374
3375         * platform/graphics/win/ImageCairoWin.cpp:
3376         (WebCore::BitmapImage::getHBITMAPOfSize): Added parameter.
3377         (WebCore::BitmapImage::drawFrameMatchingSourceSize): Added parameter.
3378
3379 2012-12-10  Mike West  <mkwst@chromium.org>
3380
3381         Log to console when script is blocked by sandbox attributes.
3382         https://bugs.webkit.org/show_bug.cgi?id=104365
3383
3384         Reviewed by Ojan Vafai.
3385
3386         Adds a console message to cover script execution blocked within the
3387         context of a sandboxed frame which lacks the 'allow-scripts' permission.
3388
3389         * bindings/ScriptControllerBase.cpp:
3390         (WebCore::ScriptController::canExecuteScripts):
3391             Log a warning when sandboxing flags block script execution.
3392
3393 2012-12-10  Chris Fleizach  <cfleizach@apple.com>
3394
3395         AX: Crash in NSAccessibilityUnignoredDescendant
3396         https://bugs.webkit.org/show_bug.cgi?id=104468
3397
3398         Reviewed by Anders Carlsson.
3399
3400         This crash occurred because AccessibilityScrollView stopped retaining it's ScrollView pointer.
3401
3402         Unfortunately, there was still a case that didn't correctly clear that variable. 
3403
3404         That case was when a Frame had a new FrameView associated with it. The old FrameView didn't inform the 
3405         accessibility object cache that it should be removed. As a result, when the FrameView deallocated and 
3406         did try to remove, it used the wrong AXObjectCache because it was no longer correctly hooked into the 
3407         document tree.
3408
3409         No new tests. Existing tests will stop crashing.
3410  
3411         * page/Frame.cpp:
3412         (WebCore::Frame::setView): change the name of the method that tells the FrameView to detach
3413         * page/FrameView.cpp:
3414         (WebCore::FrameView::~FrameView):
3415         (WebCore::FrameView::removeFromAXObjectCache): add a method that can be called in multiple places
3416         (WebCore::FrameView::isFrameView):
3417         (WebCore::FrameView::prepareForDetach): detaches scrollbars and accessibility
3418         * page/FrameView.h:
3419         (FrameView):
3420
3421 2012-12-10  Mark Pilgrim  <pilgrim@chromium.org>
3422
3423         [Chromium] Move getPluginsList out of PlatformSupport
3424         https://bugs.webkit.org/show_bug.cgi?id=96507
3425
3426         Reviewed by Darin Fisher.
3427
3428         Part of a refactoring series. See tracking bug 82948.
3429
3430         * WebCore.gypi:
3431         * platform/chromium/PlatformSupport.h:
3432         (PlatformSupport):
3433         * plugins/chromium/PluginDataChromium.cpp:
3434         (WebCore::PluginCache::plugins):
3435         * plugins/chromium/PluginListBuilder.cpp: Added.
3436         (WebKit):
3437         (WebKit::PluginListBuilder::addPlugin):
3438         (WebKit::PluginListBuilder::addMediaTypeToLastPlugin):
3439         (WebKit::PluginListBuilder::addFileExtensionToLastMediaType):
3440         * plugins/chromium/PluginListBuilder.h: Added.
3441         (WebKit):
3442         (PluginListBuilder):
3443         (WebKit::PluginListBuilder::PluginListBuilder):
3444
3445 2012-12-10  Carlos Garcia Campos  <cgarcia@igalia.com>
3446
3447         [GTK] Build GObject DOM bindings as a separate library
3448         https://bugs.webkit.org/show_bug.cgi?id=104527
3449
3450         Reviewed by Xan Lopez.
3451
3452         * bindings/gobject/GNUmakefile.am: Add libWebCoreDOM library.
3453         * bindings/gobject/WebKitDOMBinding.h: Define private macros.
3454         * bindings/gobject/WebKitDOMCustom.h: Don't include webkit/webkitdefines.h.
3455         * bindings/gobject/WebKitDOMEventTarget.h: Ditto.
3456         * bindings/gobject/WebKitDOMObject.h: Ditto.
3457         * bindings/scripts/CodeGeneratorGObject.pm:
3458         (Generate): Don't include webkitglobalsprivate.h.
3459         (WriteData): Don't include webkit/webkitdefines.h.
3460         * bindings/scripts/gobject-generate-headers.pl: Define WEBKIT_API
3461         macro in webkitdomdefines.h.
3462         * bindings/scripts/test/GObject/WebKitDOMFloat64Array.cpp:
3463         * bindings/scripts/test/GObject/WebKitDOMFloat64Array.h:
3464         * bindings/scripts/test/GObject/WebKitDOMTestActiveDOMObject.cpp:
3465         * bindings/scripts/test/GObject/WebKitDOMTestActiveDOMObject.h:
3466         * bindings/scripts/test/GObject/WebKitDOMTestCallback.cpp:
3467         * bindings/scripts/test/GObject/WebKitDOMTestCallback.h:
3468         * bindings/scripts/test/GObject/WebKitDOMTestCustomNamedGetter.cpp:
3469         * bindings/scripts/test/GObject/WebKitDOMTestCustomNamedGetter.h:
3470         * bindings/scripts/test/GObject/WebKitDOMTestEventConstructor.cpp:
3471         * bindings/scripts/test/GObject/WebKitDOMTestEventConstructor.h:
3472         * bindings/scripts/test/GObject/WebKitDOMTestEventTarget.cpp:
3473         * bindings/scripts/test/GObject/WebKitDOMTestEventTarget.h:
3474         * bindings/scripts/test/GObject/WebKitDOMTestException.cpp:
3475         * bindings/scripts/test/GObject/WebKitDOMTestException.h:
3476         * bindings/scripts/test/GObject/WebKitDOMTestInterface.cpp:
3477         * bindings/scripts/test/GObject/WebKitDOMTestInterface.h:
3478         * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListener.cpp:
3479         * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListener.h:
3480         * bindings/scripts/test/GObject/WebKitDOMTestNamedConstructor.cpp:
3481         * bindings/scripts/test/GObject/WebKitDOMTestNamedConstructor.h:
3482         * bindings/scripts/test/GObject/WebKitDOMTestNode.cpp:
3483         * bindings/scripts/test/GObject/WebKitDOMTestNode.h:
3484         * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
3485         * bindings/scripts/test/GObject/WebKitDOMTestObj.h:
3486         * bindings/scripts/test/GObject/WebKitDOMTestOverloadedConstructors.cpp:
3487         * bindings/scripts/test/GObject/WebKitDOMTestOverloadedConstructors.h:
3488         * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.cpp:
3489         * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.h:
3490
3491 2012-12-10  Adam Klein  <adamk@chromium.org>
3492
3493         In InbandTextTrackPrivate, return emptyAtoms instead of emptyString() by default.
3494
3495         Unreviewed build fix.
3496
3497         * platform/graphics/InbandTextTrackPrivate.h:
3498         (WebCore::InbandTextTrackPrivate::label):
3499         (WebCore::InbandTextTrackPrivate::language):
3500
3501 2012-12-10  Ilya Tikhonovsky  <loislo@chromium.org>
3502
3503         Web Inspector: Native Memory Instrumentation: instrument RenderBox descendants.
3504         https://bugs.webkit.org/show_bug.cgi?id=104026
3505
3506         Reviewed by Eric Seidel.
3507
3508         Plain vanilla instrumentation for RenderBox descendants.
3509
3510         * rendering/RenderFrameSet.cpp:
3511         (WebCore::RenderFrameSet::reportMemoryUsage):
3512         (WebCore):
3513         (WebCore::RenderFrameSet::GridAxis::reportMemoryUsage):
3514         * rendering/RenderFrameSet.h:
3515         (RenderFrameSet):
3516         (GridAxis):
3517         * rendering/RenderListMarker.cpp:
3518         (WebCore::RenderListMarker::reportMemoryUsage):
3519         (WebCore):
3520         * rendering/RenderListMarker.h:
3521         (RenderListMarker):
3522         * rendering/RenderReplaced.cpp:
3523         (WebCore::RenderReplaced::reportMemoryUsage):
3524         (WebCore):
3525         * rendering/RenderReplaced.h:
3526         (RenderReplaced):
3527         * rendering/RenderTableCol.cpp:
3528         (WebCore::RenderTableCol::reportMemoryUsage):
3529         (WebCore):
3530         * rendering/RenderTableCol.h:
3531         (RenderTableCol):
3532         * rendering/RenderTableRow.cpp:
3533         (WebCore::RenderTableRow::reportMemoryUsage):
3534         (WebCore):
3535         * rendering/RenderTableRow.h:
3536         (RenderTableRow):
3537         * rendering/RenderTableSection.cpp:
3538         (WebCore::RenderTableSection::reportMemoryUsage):
3539         (WebCore):
3540         (WebCore::RenderTableSection::RowStruct::reportMemoryUsage):
3541         (WebCore::RenderTableSection::CellStruct::reportMemoryUsage):
3542         * rendering/RenderTableSection.h:
3543         (CellStruct):
3544         (RowStruct):
3545
3546 2012-12-10  Alejandro Piñeiro  <apinheiro@igalia.com>
3547
3548         AX: wrong Enabled states on a ListBox
3549         https://bugs.webkit.org/show_bug.cgi?id=104483
3550
3551         Reviewed by Chris Fleizach.
3552
3553         Test: accessibility/listbox-enabled-states.html
3554
3555         * accessibility/AccessibilityListBoxOption.cpp:
3556         (WebCore::AccessibilityListBoxOption::isEnabled): taking into
3557         account the DISABLED attribute and the aria-disabled attribute to
3558         decide if the item is enabled or not.
3559
3560 2012-12-10  Adam Klein  <adamk@chromium.org>
3561
3562         cr-win build fix after r137161.
3563
3564         Unreviewed.
3565
3566         * platform/graphics/MediaPlayer.h: Replace forward-decl of
3567         InbandTextTrackPrivate with #include as the definition is required.
3568
3569 2012-12-10  Alexis Menard  <alexis@webkit.org>
3570
3571         [CSS3 Backgrounds and Borders] Remove CSS3_BACKGROUND feature flag.
3572         https://bugs.webkit.org/show_bug.cgi?id=104539
3573
3574         Reviewed by Antonio Gomes.
3575
3576         As discussed on webkit-dev it is not needed to keep this feature flag 
3577         as support for <position> type is a small feature that is already 
3578         implemented by three other UAs. It was useful while landing this 
3579         feature as partial bits were landed one after one.
3580
3581         No new tests : the feature is covered by various tests and it is already enabled in many ports.
3582
3583         * Configurations/FeatureDefines.xcconfig:
3584         * GNUmakefile.am:
3585         * GNUmakefile.features.am:
3586         * css/CSSParser.cpp:
3587         (WebCore::CSSParser::parseFillPosition):
3588         (WebCore::CSSParser::parseFillProperty):
3589         * css/CSSParser.h:
3590         * css/CSSToStyleMap.cpp:
3591         (WebCore::CSSToStyleMap::mapFillXPosition):
3592         (WebCore::CSSToStyleMap::mapFillYPosition):
3593         * rendering/style/FillLayer.cpp:
3594         (SameSizeAsFillLayer):
3595         (WebCore::FillLayer::FillLayer):
3596         (WebCore::FillLayer::operator=):
3597         (WebCore::FillLayer::operator==):
3598         (WebCore::FillLayer::fillUnsetProperties):
3599         * rendering/style/FillLayer.h:
3600         (WebCore::FillLayer::backgroundXOrigin):
3601         (WebCore::FillLayer::backgroundYOrigin):
3602         (WebCore::FillLayer::isBackgroundOriginSet):
3603         (WebCore::FillLayer::clearXPosition):
3604         (WebCore::FillLayer::clearYPosition):
3605         (FillLayer):
3606
3607 2012-12-10  Eric Carlson  <eric.carlson@apple.com>
3608
3609         Add support for in-band text tracks to Mac port
3610         https://bugs.webkit.org/show_bug.cgi?id=103663
3611
3612         Reviewed by Sam Weinig.
3613
3614         Test: media/track/track-in-band.html
3615
3616         * GNUmakefile.list.am: Move InbandTextTrackPrivate.h to platform/graphics. Add InbandTextTrackPrivateClient.h.
3617         * Target.pri: Ditto.
3618         * WebCore.gypi: Ditto.
3619
3620         * WebCore.xcodeproj/project.pbxproj: Add new files.
3621
3622         * html/HTMLMediaElement.cpp:
3623         (WebCore::HTMLMediaElement::setReadyState): No need to call processInbandTextTracks, in-band tracks
3624             are now registered by the media engine as they are discovered.
3625         (WebCore::HTMLMediaElement::mediaPlayerDidAddTrack): New, called by the media player when a new
3626             in-band track is found.
3627         (WebCore::HTMLMediaElement::mediaPlayerDidRemoveTrack): New, called by the media player when an
3628             in-band track goes away.
3629         * html/HTMLMediaElement.h:
3630
3631         * html/track/InbandTextTrack.cpp:
3632         (WebCore::InbandTextTrack::InbandTextTrack): Use m_private instead of tracksPrivate because
3633             it is zeroed during assignment.
3634
3635         * platform/graphics/MediaPlayer.cpp:
3636         (WebCore::MediaPlayer::addTextTrack): New MediaPlayerClient method to allow MediaPlayerPrivate subclasses
3637             to add a new in-band track.
3638         (WebCore::MediaPlayer::removeTextTrack): New MediaPlayerClient method to allow MediaPlayerPrivate subclasses
3639             to remove a new in-band track.
3640         * platform/graphics/MediaPlayer.h:
3641         * platform/graphics/MediaPlayerPrivate.h:
3642
3643         * platform/graphics/avfoundation/InbandTextTrackPrivateAVF.cpp: Added.
3644         (WebCore::InbandTextTrackPrivateAVF::InbandTextTrackPrivateAVF):
3645         (WebCore::InbandTextTrackPrivateAVF::~InbandTextTrackPrivateAVF):
3646         (WebCore::InbandTextTrackPrivateAVF::processCueAttributes): Convert an attribute string into WebVTT 
3647             cue setting and content strings.
3648         (WebCore::InbandTextTrackPrivateAVF::processCue): Process a new cue.
3649         (WebCore::InbandTextTrackPrivateAVF::disconnect): Clear member variables.
3650         (WebCore::InbandTextTrackPrivateAVF::resetCueValues): Reset cue values to defaults.
3651         (WebCore::InbandTextTrackPrivateAVF::setMode): Set track mode and call player's trackModeChanged.
3652         * platform/graphics/avfoundation/InbandTextTrackPrivateAVF.h: Added.
3653
3654         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp: Initialize 
3655             m_inbandTrackConfigurationPending.
3656         (WebCore::MediaPlayerPrivateAVFoundation::MediaPlayerPrivateAVFoundation):
3657         (WebCore::MediaPlayerPrivateAVFoundation::seekCompleted): Flush the currently accumulating
3658             cue so it doesn't get the wrong duration.
3659         (WebCore::MediaPlayerPrivateAVFoundation::dispatchNotification): Handle InbandTracksNeedConfiguration.
3660         (WebCore::MediaPlayerPrivateAVFoundation::flushCurrentCue): New, pass the current cue up to the client.
3661         (WebCore::MediaPlayerPrivateAVFoundation::configureInbandTracks): Configure in-band tracks.
3662         (WebCore::MediaPlayerPrivateAVFoundation::trackModeChanged): Schedule a call to configureInbandTracks.
3663         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h:
3664
3665         * platform/graphics/avfoundation/objc/InbandTextTrackPrivateAVFObjC.h: Added.
3666         * platform/graphics/avfoundation/objc/InbandTextTrackPrivateAVFObjC.mm: Added.
3667         (WebCore::InbandTextTrackPrivateAVFObjC::InbandTextTrackPrivateAVFObjC):
3668         (WebCore::InbandTextTrackPrivateAVFObjC::disconnect):
3669         (WebCore::InbandTextTrackPrivateAVFObjC::kind): Return track kind.
3670         (WebCore::InbandTextTrackPrivateAVFObjC::label): Return track label.
3671         (WebCore::InbandTextTrackPrivateAVFObjC::language): Return track language.
3672         (WebCore::InbandTextTrackPrivateAVFObjC::isDefault): 
3673         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
3674         (MediaPlayerPrivateAVFoundationObjC):
3675         (WebCore::MediaPlayerPrivateAVFoundationObjC::playerItem):
3676         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
3677         (WebCore::MediaPlayerPrivateAVFoundationObjC::MediaPlayerPrivateAVFoundationObjC): Initialize m_currentTrack.
3678         (WebCore::MediaPlayerPrivateAVFoundationObjC::cancelLoad): Clear m_legibleOutput.
3679         (WebCore::MediaPlayerPrivateAVFoundationObjC::tracksChanged): Create and initialize m_legibleOutput.
3680         (WebCore::MediaPlayerPrivateAVFoundationObjC::processTextTracks): Called when the player item's
3681             "tracks" changes, add and remove in-band text tracks as necessary.
3682         (WebCore::MediaPlayerPrivateAVFoundationObjC::processCue): Pass an attributed string to the current 
3683             track to be processed.
3684         (WebCore::MediaPlayerPrivateAVFoundationObjC::setCurrentTrack): Tell AVFoundation to select an in-band track.
3685         (WebCore::MediaPlayerPrivateAVFoundationObjC::currentTrack): Return the current track.
3686         (-[WebCoreAVFMovieObserver legibleOutput:didOutputAttributedStrings:nativeSampleBuffers:forItemTime:]): Legible
3687             output delegate.
3688
3689 2012-12-10  Pavel Feldman  <pfeldman@chromium.org>
3690
3691         Web Inspector: fix front-end compilation warnings
3692         https://bugs.webkit.org/show_bug.cgi?id=104557
3693
3694         Reviewed by Alexander Pavlov.
3695
3696         Corresponding annotations added.
3697
3698         * inspector/Inspector.json:
3699         * inspector/InspectorDOMAgent.cpp:
3700         (WebCore::InspectorDOMAgent::highlightNode):
3701         * inspector/InspectorDOMAgent.h:
3702         (InspectorDOMAgent):
3703         * inspector/front-end/CSSStyleModel.js:
3704         (WebInspector.CSSStyleDeclaration.prototype.):
3705         (WebInspector.CSSStyleDeclaration.prototype.insertPropertyAt):
3706         * inspector/front-end/ConsoleMessage.js:
3707         (WebInspector.ConsoleMessageImpl.prototype._appendPropertyPreview):
3708         * inspector/front-end/DOMAgent.js:
3709         (WebInspector.DOMAgent.prototype.highlightDOMNode):
3710         * inspector/front-end/DOMPresentationUtils.js:
3711         (WebInspector.DOMPresentationUtils.linkifyNodeReference):
3712         * inspector/front-end/ObjectPropertiesSection.js:
3713         (WebInspector.ObjectPropertyTreeElement.prototype.update):
3714         * inspector/front-end/Toolbar.js:
3715
3716 2012-12-10  Zeno Albisser  <zeno@webkit.org>
3717
3718         [Qt] MediaPlayerQTKit broken after switching QPainter to raster engine.
3719         https://bugs.webkit.org/show_bug.cgi?id=104550
3720
3721         With Qt5 QPainter changed to using the raster engine.
3722         Therefore we no longer have an NSGraphicsContext that we can
3723         use for drawing video frames.
3724         With this patch we are rendering the video frame into an image buffer
3725         and then paint it manually using QPainter.
3726
3727         Reviewed by Simon Hausmann.
3728
3729         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
3730         (WebCore):
3731         (WebCore::swapBgrToRgb):
3732             Swap the color format from BGR to RGB,
3733             since BGR is not supported by QImage.
3734         (WebCore::MediaPlayerPrivateQTKit::paint):
3735
3736 2012-12-10  peavo@outlook.com  <peavo@outlook.com>
3737
3738         [WinCairo] Link fix in InspectorController.cpp
3739         https://bugs.webkit.org/show_bug.cgi?id=104556
3740
3741         Reviewed by Pavel Feldman.
3742
3743         * inspector/InspectorController.cpp:
3744         (WebCore::InspectorController::InspectorController): Added missing #if check.
3745
3746 2012-12-10  Pavel Feldman  <pfeldman@chromium.org>
3747
3748         Web Inspector: remove the Overrides / Settings context menu from gear icon
3749         https://bugs.webkit.org/show_bug.cgi?id=104546
3750
3751         Reviewed by Alexander Pavlov.
3752
3753         It sounds like too many people don't like the way it works. Bringing things back: overrides will be a tab in settings for now.
3754         Moving present behavior to under experiment.
3755
3756         * inspector/front-end/OverridesView.js:
3757         (WebInspector.OverridesView):
3758         * inspector/front-end/Settings.js:
3759         (WebInspector.ExperimentsSettings):
3760         * inspector/front-end/SettingsScreen.js:
3761         (WebInspector.OverridesSettingsTab):
3762         (WebInspector.SettingsController):
3763         (WebInspector.SettingsController.prototype.get statusBarItem):
3764         (WebInspector.SettingsController.prototype._mouseDown.showSettings):
3765         (WebInspector.SettingsController.prototype._mouseDown):
3766         (WebInspector.SettingsController.prototype._mouseUp):
3767         * inspector/front-end/helpScreen.css:
3768         (#settings-screen .tabbed-pane-header):
3769         (#settings-screen .tabbed-pane-header-tabs):
3770         (#settings-screen .tabbed-pane-header-tab):
3771
3772 2012-12-10  Kent Tamura  <tkent@chromium.org>
3773
3774         Visual order of empty value placeholder in INPUT_MULTIPLE_FIELDS_UI is wrong in RTL
3775         https://bugs.webkit.org/show_bug.cgi?id=104438
3776
3777         Reviewed by Hajime Morita.
3778
3779         No new tests. This updates datetimelocal-appearance-l10n.html for he-il
3780         and ar-eg locales.
3781
3782         * html/shadow/DateTimeNumericFieldElement.cpp:
3783         (WebCore::DateTimeNumericFieldElement::DateTimeNumericFieldElement):
3784         We should not append Right-to-left-mark to each of placeholder
3785         strings. It makes numeric field separators such as ':' and '/' RTL, and
3786         makes a wrong visual order. We use unicode-bidi:bidi-override and
3787         direction:ltr instead. It means we force LTR only to this element
3788         * html/shadow/DateTimeNumericFieldElement.h:
3789         Makes m_placeholder const again.
3790         * html/shadow/DateTimeEditElement.cpp:
3791         (WebCore::DateTimeEditBuilder::visitLiteral):
3792         Explicitly set right-to-left-mark before S, WS, ON types according to
3793         Unicod Bidirectional Algorithm Table 4 [1]. This is needed because we
3794         don't have context like "This literal follows European/Arabic numbers"
3795         in a case of showing placeholders.
3796         [1] http://www.unicode.org/reports/tr9/#Bidirectional_Character_Types
3797
3798 2012-12-09  Gustavo Noronha Silva  <gustavo.noronha@collabora.com>
3799
3800         [Soup] utilize multipart/x-mixed-replace support recently added to libsoup
3801         https://bugs.webkit.org/show_bug.cgi?id=94515
3802
3803         Reviewed by Martin Robinson.
3804
3805         The multipart/x-mixed-replace content type is often used for providing
3806         "push" server support, with each part in the multipart response
3807         replacing the previous one in the rendering. Soup recently acquired
3808         support for multipart/x-mixed replace, which this change utilizes.
3809
3810         Covered by existing multipart/x-mixed-replace tests.
3811
3812         * platform/network/ResourceHandleInternal.h:
3813         (ResourceHandleInternal): add new member to this class, the multipart input stream
3814         * platform/network/soup/ResourceHandleSoup.cpp:
3815         (WebCore::cleanupSoupRequestOperation): also clear the multipart input stream on
3816         cleanup
3817         (WebCore::nextPartCallback): callback that handles reporting the new response delivered
3818         with the new part, if any; uses the factored out updateFromSoupMessageHeaders method
3819         (WebCore::sendRequestCallback): handle multipart/x-mixed-replace responses by
3820         requesting the next part
3821         (WebCore::readCallback): when reading has finished, request the next part when
3822         handling a multipart/x-mixed-replace response
3823         * platform/network/soup/ResourceResponse.h:
3824         (ResourceResponse): add declaration for new method
3825         * platform/network/soup/ResourceResponseSoup.cpp:
3826         (WebCore::ResourceResponse::updateFromSoupMessage): call new updateFromSoupMessageHeaders
3827         method, instead of dealing with the message headers directly
3828         (WebCore::ResourceResponse::updateFromSoupMessageHeaders): new method, factored out from
3829         updateFromSoupMessage, so this same code can be reused for updating responses for
3830         multipart/x-mixed-replace responses parts
3831
3832 2012-12-10  Zoltan Nyul  <zoltan.nyul@intel.com>
3833
3834         Implement testRunner.setViewModeMediaFeature() in WebKitTestRunner
3835         https://bugs.webkit.org/show_bug.cgi?id=103886
3836
3837         Reviewed by Kenneth Rohde Christiansen.
3838
3839         Export symbol for WebCore::Page::setViewMode on Mac.
3840
3841         No new tests, no behavior change for layout tests.
3842
3843         * WebCore.exp.in:
3844
3845 2012-12-10  Martin Robinson  <mrobinson@igalia.com>
3846
3847         [GTK] Bring Harfbuzz-ng support to Gtk
3848         https://bugs.webkit.org/show_bug.cgi?id=92098
3849
3850         Reviewed by Gustavo Noronha Silva.
3851
3852         Enable HarfBuzz support by default. With the Freetype backend we no longer
3853         fall back to Pango for rendering complex text.
3854
3855         No new tests. This is covered by existing tests.
3856
3857         * GNUmakefile.am: Add HarfBuzz include directories and define.
3858         * GNUmakefile.list.am: Add HarfBuzz files to source list and remove
3859         Pango ones.
3860         * platform/graphics/freetype/FontPlatformDataFreeType.cpp:
3861         (WebCore::FontPlatformData::operator==): To properly render fallback
3862         fonts via HarfBuzz , it's important that we actually ask Fontconfig
3863         whether or not two patterns are the same. This ensures that when patterns
3864         are just copies of one another they only take up one slot in the font cache
3865         and appear to be the same font to HarfBuzzShaper.
3866
3867 2012-12-10  Alexander Pavlov  <apavlov@chromium.org>
3868
3869         Web Inspector: [Overrides] Unable to change values in Device Metrics override setting
3870         https://bugs.webkit.org/show_bug.cgi?id=104542
3871
3872         Reviewed by Vsevolod Vlasov.
3873
3874         Remove inadvertent object property assignment.
3875
3876         * inspector/front-end/OverridesView.js:
3877
3878 2012-12-10  Michael Brüning  <michael.bruning@digia.com>
3879
3880         [Qt] Builds for Mac are tied to the OS system instead of the SDK version.
3881         https://bugs.webkit.org/show_bug.cgi?id=104529
3882
3883         Reviewed by Simon Hausmann.
3884
3885         Using work by Eike Ziller <eike.ziller@digia.com>.
3886
3887         The build system now first tries to assign the correct system libraries
3888         for the SDK being used for Mac builds. If this does not yield any
3889         result, it falls back to using the Mac OS version to determine the
3890         correct library.
3891
3892         No new tests (not applicable).
3893
3894         * WebCore.pri:
3895
3896 2012-12-10  Ilya Tikhonovsky  <loislo@chromium.org>
3897
3898         Unreviewed: touch RenderingAllInOne.cpp to fix Apple Windows builder.
3899
3900         * rendering/RenderingAllInOne.cpp:
3901
3902 2012-12-10  Eugene Klyuchnikov  <eustas@chromium.org>
3903
3904         Web Inspector: Network: newly added items are not filtered.
3905         https://bugs.webkit.org/show_bug.cgi?id=104021
3906
3907         Reviewed by Vsevolod Vlasov.
3908
3909         Extracted method to higlight/hide record according to filter.
3910         Used this method to process newly created records.
3911
3912         * inspector/front-end/NetworkPanel.js:
3913         (WebInspector.NetworkLogView.prototype._applyFilter): Extracted.
3914         (WebInspector.NetworkLogView.prototype.performFilter): Refactored.
3915
3916 2012-12-09  Ilya Tikhonovsky  <loislo@chromium.org>
3917
3918         Web Inspector: Unreviewed: move reportMemoryUsage to public section.
3919
3920         * rendering/RenderBlock.h:
3921         (RenderBlock):
3922         * rendering/RenderBox.h:
3923         (RenderBox):
3924
3925 2012-12-08  Pavel Feldman  <pfeldman@chromium.org>
3926
3927         Web Inspector: adds an option to remove toolbar icons.
3928         https://bugs.webkit.org/show_bug.cgi?id=95654
3929
3930         Reviewed by Vsevolod Vlasov.
3931
3932         - removes compact mode in favor or dock-to-bottom
3933         - introduces setting for hiding toolbar icons
3934
3935         * inspector/front-end/DockController.js:
3936         (WebInspector.DockController.prototype._toggleDockState):
3937         * inspector/front-end/Settings.js:
3938         (WebInspector.ExperimentsSettings):
3939         * inspector/front-end/Toolbar.js:
3940         (WebInspector.Toolbar.prototype.setDockedToBottom):
3941         (WebInspector.Toolbar.prototype._toolbarDragStart):
3942         (WebInspector.Toolbar.prototype._toolbarDrag):
3943         * inspector/front-end/helpScreen.css:
3944         (body.dock-to-bottom .help-content):
3945         * inspector/front-end/inspector.css:
3946         (body.dock-to-bottom #toolbar):
3947         (body.no-toolbar-icons #toolbar):
3948         (body.dock-to-bottom.port-qt #toolbar):
3949         (body.dock-to-bottom.inactive #toolbar):
3950         (body.no-toolbar-icons .toolbar-item.toggleable):
3951         (body.dock-to-bottom .toolbar-item.toggleable):
3952         (body.dock-to-bottom .toolbar-icon):
3953         (body.no-toolbar-icons .toolbar-icon):
3954         (body.no-toolbar-icons #main):
3955         (body.dock-to-bottom .toolbar-icon.custom-toolbar-icon):
3956         (body.dock-to-bottom .toolbar-item:active .toolbar-icon):
3957         (body.dock-to-bottom .toolbar-label):
3958         (body.dock-to-bottom #search-toolbar-label):
3959         (body.no-toolbar-icons .toolbar-label):
3960         (body.no-toolbar-icons #toolbar-dropdown):
3961         (#toolbar-dropdown .scrollable-content):
3962         (#toolbar-dropdown .toolbar-item.toggleable:hover):
3963         (body.no-toolbar-icons #toolbar-dropdown .toolbar-label):
3964         (body.no-toolbar-icons #toolbar-dropdown .toolbar-item):
3965         (body.dock-to-bottom .toolbar-item.resources .toolbar-icon):
3966         (body.dock-to-bottom .toolbar-item.network .toolbar-icon):
3967         (body.dock-to-bottom .toolbar-item.scripts .toolbar-icon):
3968         (body.dock-to-bottom .toolbar-item.timeline .toolbar-icon):
3969         (body.dock-to-bottom .toolbar-item.profiles .toolbar-icon):
3970         (body.dock-to-bottom .toolbar-item.audits .toolbar-icon):
3971         (body.dock-to-bottom .toolbar-item.console .toolbar-icon):
3972         (body.dock-to-bottom.port-qt .toolbar-item.close-left, body.dock-to-bottom.port-qt .toolbar-item.close-right):
3973         (body.dock-to-bottom #main):
3974
3975 2012-12-10  Kent Tamura  <tkent@chromium.org>
3976
3977         Refactoring: Remove HTMLFormControlElement::autofocus
3978         https://bugs.webkit.org/show_bug.cgi?id=104524
3979
3980         Reviewed by Kentaro Hara.
3981
3982         autofocus function is used only by HTMLFormControlElement itself, no
3983         sub-classes override it, and it is not exposed via an IDL attribute,
3984
3985         No new tests. This doesn't make any behavior changes.
3986
3987         * html/HTMLFormControlElement.cpp:
3988         (WebCore::shouldAutofocus): Use fastHasAttribute instead of autofocus().
3989         * html/HTMLFormControlElement.h: Remove autofocus().
3990
3991 2012-12-10  Jonathan Liu  <net147@gmail.com>
3992
3993         Fix GC3Dintptr and GC3Dsizeiptr typedefs for Win64
3994         https://bugs.webkit.org/show_bug.cgi?id=104426
3995
3996         Reviewed by Simon Hausmann.
3997
3998         The GC3Dintptr and GC3Dsizeiptr typedefs are incorrect for Win64 as
3999         LLP64 is used there. This would result in compile error due to
4000         narrowing conversion of 64-bit pointer to signed long int which is
4001         32-bit.
4002
4003         * platform/graphics/GraphicsTypes3D.h:
4004
4005 2012-12-10  Kent Tamura  <tkent@chromium.org>
4006
4007         Refactoring: Introduce HTMLFormControlElement::isDisabledOrReadOnly
4008         https://bugs.webkit.org/show_bug.cgi?id=104508
4009
4010         Reviewed by Kentaro Hara.
4011
4012         We have a lot of code like element->disabled || element->readOnly().
4013         isDisabledOrReadOnly makes them simpler.
4014
4015         No new tests. This make no behaivor change.
4016
4017         * html/HTMLFormControlElement.h:
4018         (WebCore::HTMLFormCont