f720bbade4bb04df232274091ae8b7e3d267f42f
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2011-12-07  Alexey Proskuryakov  <ap@apple.com>
2
3         Handling of !important in inline style sets is broken
4         https://bugs.webkit.org/show_bug.cgi?id=73941
5
6         Reviewed by Dave Hyatt.
7
8         This behavior was introduced in bug 8223 to match IE and Firefox. But it doesn't appear that we're matching
9         any browser today, and CSSOM spec agrees with them.
10
11         * WebCore.exp.in: Don't export CSSStyleDeclaration::setProperty(), no one is using it.
12
13         * bindings/js/JSCSSStyleDeclarationCustom.cpp: (WebCore::JSCSSStyleDeclaration::putDelegate): Use regular
14         setProperty(), not the incorrect version that's being removed. Properties set via IDL attributes are never
15         important.
16
17         * bindings/v8/custom/V8CSSStyleDeclarationCustom.cpp: (WebCore::V8CSSStyleDeclaration::namedPropertySetter):
18         Made the same fix for v8. Why did v8 bindings authors copy/paste the code?!
19
20         * css/CSSStyleDeclaration.cpp:
21         * css/CSSStyleDeclaration.h:
22         Removed a version of setProperty() that attempted to parse the value and extract !important from it.
23
24         * html/ImageDocument.cpp:
25         (WebCore::ImageDocument::resizeImageToFit):
26         (WebCore::ImageDocument::restoreImageSize):
27         (WebCore::ImageDocument::windowSizeChanged):
28         * page/DragController.cpp:
29         (WebCore::DragController::concludeEditDrag):
30         We never needed to use this version of setProperty() here, it was just unnecessarily slower.
31
32 2011-12-07  Xianzhu Wang  <wangxianzhu@chromium.org>
33
34         In FontCacheAndroid.cpp should keep the pointer valid returned from CString::data()
35         https://bugs.webkit.org/show_bug.cgi?id=73849
36
37         The changed code has been covered by many existing layout tests.
38
39         Reviewed by Adam Barth.
40
41         * platform/graphics/chromium/FontCacheAndroid.cpp:
42         (WebCore::FontCache::createFontPlatformData):
43
44 2011-12-07  Xiaomei Ji  <xji@chromium.org>
45
46         Turn on move caret by word visually for Windows platform.
47         https://bugs.webkit.org/show_bug.cgi?id=59652
48
49         Reviewed by Ryosuke Niwa.
50
51         We already support (arrow key) moving cursor by character in visual order.
52         This patch implements (ctrl/alt-arrow) moving cursor by word in visual order (in Windows).
53         It matches Firefox's default behavior.
54
55         Without this patch, ctrl(alt for mac)-arrow key or
56         selection.modify("move", "left"/"right", "word") moves cursor by word in logical order. 
57
58         IE implements moving cursor by logical order for both arrow key and ctrl-arrow key.
59         Firefox implements moving cursor by visual order for both operations.
60         From Chromium bug report, native speakers would like moving cursor by visual order since it
61         is more intuitive.
62
63         The patch is only enabled for Windows (by EditingBehavior) because current implementation
64         matches Windows' native behavior.
65         For exmaple, if the logical text is "abc def hij", the cursor positions are
66         "|abc |def |hij|" no matter pressing ctrl-left-arrow or ctrl-right-arrow.
67
68         Mac and Linux's native behavior is slightly different. In which, when pressing
69         ctrl-left-arrow, the cursor positions are "|abc |def |hij|". When pressing ctrl-right-arrow,
70         the cursor positions are "|abc| def| hij|". We will implement it next.
71
72         Test: editing/selection/move-left-right-by-word-mac.html
73
74         * editing/EditingBehavior.h:
75         (WebCore::EditingBehavior::shouldMoveLeftRightByWordInVisualOrder):
76         * editing/FrameSelection.cpp: Remove experimental enum WebKitVisualWordGranularity.
77         (WebCore::FrameSelection::modifyExtendingRight):
78         (WebCore::FrameSelection::modifyExtendingForward):
79         (WebCore::FrameSelection::modifyMovingRight):
80         (WebCore::FrameSelection::modifyMovingForward):
81         (WebCore::FrameSelection::modifyExtendingLeft):
82         (WebCore::FrameSelection::modifyExtendingBackward):
83         (WebCore::FrameSelection::modifyMovingLeft):
84         (WebCore::FrameSelection::modifyMovingBackward):
85         * editing/TextGranularity.h: Remove experimental enum WebKitVisualWordGranularity.
86         * editing/VisibleSelection.cpp: Remove experimental enum WebKitVisualWordGranularity.
87         (WebCore::VisibleSelection::setStartAndEndFromBaseAndExtentRespectingGranularity):
88         * page/DOMSelection.cpp: Remove experimental experimental flag -webkit-visual-word.
89         (WebCore::DOMSelection::modify):
90
91 2011-12-07  Jonathan Backer  <backer@chromium.org>
92
93         [chromium] Plumb damage from WebExternalTextureLayer and WebPluginContainer to CCDamageTracker
94         https://bugs.webkit.org/show_bug.cgi?id=73485
95
96         Reviewed by Darin Fisher.
97
98         * platform/graphics/chromium/PluginLayerChromium.cpp:
99         (WebCore::PluginLayerChromium::updateCompositorResources):
100         (WebCore::PluginLayerChromium::invalidateRect):
101         * platform/graphics/chromium/PluginLayerChromium.h:
102
103 2011-12-07  Mary Wu  <mary.wu@torchmobile.com.cn>
104
105         Upstream 5 files into WebCore/platform/blackberry
106         https://bugs.webkit.org/show_bug.cgi?id=73632
107
108         Reviewed by Rob Buis.
109
110         Initial upstream, no new tests.
111
112         * PlatformBlackBerry.cmake: Remove two empty files from build list.
113         * platform/blackberry/PopupMenuBlackBerry.cpp: Added.
114         (WebCore::PopupMenuBlackBerry::PopupMenuBlackBerry):
115         (WebCore::PopupMenuBlackBerry::~PopupMenuBlackBerry):
116         (WebCore::PopupMenuBlackBerry::show):
117         (WebCore::PopupMenuBlackBerry::hide):
118         (WebCore::PopupMenuBlackBerry::updateFromElement):
119         (WebCore::PopupMenuBlackBerry::disconnectClient):
120         * platform/blackberry/PopupMenuBlackBerry.h: Added.
121         (WebCore::PopupMenuBlackBerry::client):
122         * platform/blackberry/ScrollbarThemeBlackBerry.cpp: Added.
123         (WebCore::ScrollbarTheme::nativeTheme):
124         * platform/blackberry/SearchPopupMenuBlackBerry.cpp: Added.
125         (WebCore::SearchPopupMenuBlackBerry::SearchPopupMenuBlackBerry):
126         (WebCore::SearchPopupMenuBlackBerry::popupMenu):
127         (WebCore::SearchPopupMenuBlackBerry::enabled):
128         (WebCore::SearchPopupMenuBlackBerry::saveRecentSearches):
129         (WebCore::SearchPopupMenuBlackBerry::loadRecentSearches):
130         * platform/blackberry/SearchPopupMenuBlackBerry.h: Added.
131
132 2011-12-07  Dan Bernstein  <mitz@apple.com>
133
134         Fixed the definition of BUTTON_CELL_DRAW_WITH_FRAME_DRAWS_FOCUS_RING from r102246.
135
136         * platform/mac/ThemeMac.mm: Added parentheses.
137
138 2011-12-07  Dan Bernstein  <mitz@apple.com>
139
140         <rdar://problem/10542095> Focus rings are not drawn around push buttons, radio buttons and checkboxes
141
142         Reviewed by Darin Adler.
143
144         Instead of relying on -setShowsFirstResponder: to make -drawWithFrame:inView: draw the focus
145         ring, use -drawFocusRingMaskWithFrame:inView:.
146
147         * platform/mac/ThemeMac.mm:
148         (-[NSCell _web_drawFocusRingWithFrame:inView:]): Added. Sets up the focus ring style and a
149         transparency layer, then uses -drawFocusRingMaskWithFrame:inView: to draw the focus ring.
150         (WebCore::updateStates): Eliminated calls to get and set showsFirstResponder.
151         (WebCore::paintCheckbox): Changed to use -_web_drawFocusRingWithFrame:inView:.
152         (WebCore::paintRadio): Ditto.
153         (WebCore::paintButton): Ditto.
154
155 2011-12-07  Brian Salomon  <bsalomon@google.com>
156
157         [CHROMIUM/SKIA] Handle put[Un/Pre]multipliedImageData conversions in Skia rather than ImageBuffer
158         https://bugs.webkit.org/show_bug.cgi?id=73953
159
160         Reviewed by Stephen White.
161
162         Tested by existing canvas2d layout tests.
163
164         * platform/graphics/skia/ImageBufferSkia.cpp:
165         (WebCore::putImageData):
166         (WebCore::ImageBuffer::putUnmultipliedImageData):
167         (WebCore::ImageBuffer::putPremultipliedImageData):
168
169 2011-12-07  Andreas Kling  <kling@webkit.org>
170
171         Micro-optimize ScrollView::visibleContentRect().
172         <http://webkit.org/b/74001>
173
174         Reviewed by Anders Carlsson.
175
176         Reorder the scrollbar exclusion code to minimize the number of virtual calls
177         to ScrollableArea::verticalScrollbar(), ScrollableArea::horizontalScrollbar()
178         and Scrollbar::isOverlayScrollbar().
179
180         * platform/ScrollView.cpp:
181         (WebCore::ScrollView::visibleContentRect):
182
183 2011-12-07  Andreas Kling  <kling@webkit.org>
184
185         ApplyPropertyBorderImage: Remove unneeded template argument for mapNinePieceImage().
186         <http://webkit.org/b/73998>
187
188         Reviewed by Antti Koivisto.
189
190         Have ApplyPropertyBorderImage call mapNinePieceImage() directly now that it's
191         public (instead of passing it as a template argument.)
192
193         * css/CSSStyleApplyProperty.cpp:
194         (WebCore::ApplyPropertyBorderImage::applyValue):
195         (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
196
197 2011-12-07  Jessie Berlin  <jberlin@apple.com>
198
199         Mac build fix after r102235.
200
201         * WebCore.exp.in:
202
203 2011-11-30  Simon Hausmann  <simon.hausmann@nokia.com>
204
205         [Qt] V8 debug build fixes.
206
207         Reviewed by Tor Arne Vestbø.
208
209         * Target.pri: Add missing files to the build.
210         * loader/SubresourceLoader.cpp: Add missing CString.h header file inclusion,
211         that is implicitly included with Chromium builds and only needed in ASSERTS
212         in debug builds.
213         * loader/cache/CachedResource.cpp: Ditto.
214         * page/FrameTree.cpp: Ditto.
215         * platform/graphics/MediaPlayer.cpp: Ditto.
216
217 2011-11-30  Simon Hausmann  <simon.hausmann@nokia.com>
218
219         [Qt] V8 build fixes.
220
221         Reviewed by Tor Arne Vestbø.
222
223         * Target.pri: Don't load(javascriptcore) if we're building with v8.
224
225 2011-12-07  Mary Wu  <mary.wu@torchmobile.com.cn>
226
227         Change function name InitializeLoggingChannelsIfNecessary to follow coding style guideline
228         https://bugs.webkit.org/show_bug.cgi?id=73986
229
230         Reviewed by Kenneth Rohde Christiansen.
231
232         Just function name change, no new tests.
233
234         * platform/Logging.h:
235         * platform/efl/LoggingEfl.cpp:
236         (WebCore::initializeLoggingChannelsIfNecessary):
237         * platform/gtk/LoggingGtk.cpp:
238         (WebCore::initializeLoggingChannelsIfNecessary):
239         * platform/mac/LoggingMac.mm:
240         (WebCore::initializeLoggingChannelsIfNecessary):
241         * platform/qt/LoggingQt.cpp:
242         (WebCore::initializeLoggingChannelsIfNecessary):
243         * platform/win/LoggingWin.cpp:
244         (WebCore::initializeLoggingChannelsIfNecessary):
245         * platform/wx/LoggingWx.cpp:
246         (WebCore::initializeLoggingChannelsIfNecessary):
247
248 2011-12-07  Mihnea Ovidenie  <mihnea@adobe.com>
249
250         [CSSRegions]Add support for background-color in region styling
251         https://bugs.webkit.org/show_bug.cgi?id=71488
252
253         Reviewed by David Hyatt.
254
255         Tests: fast/regions/region-style-block-background-color.html
256                fast/regions/region-style-block-background-color2.html
257                fast/regions/region-style-image-background-color.html
258                fast/regions/region-style-inline-background-color.html
259
260         * WebCore.exp.in:
261         * css/CSSStyleSelector.cpp:
262         (WebCore::RuleData::regionStyleRule):
263         (WebCore::CSSStyleSelector::CSSStyleSelector):
264         (WebCore::CSSStyleSelector::addMatchedDeclaration):
265         (WebCore::CSSStyleSelector::matchRules):
266         (WebCore::CSSStyleSelector::matchAllRules):
267         (WebCore::CSSStyleSelector::initForRegionStyling):
268         (WebCore::CSSStyleSelector::styleForElement):
269         (WebCore::CSSStyleSelector::pseudoStyleForElement):
270         (WebCore::RuleData::RuleData):
271         (WebCore::RuleSet::RuleSet):
272         (WebCore::RuleSet::addToRuleSet):
273         (WebCore::CSSStyleSelector::applyDeclarations):
274         (WebCore::isValidRegionStyleProperty):
275         (WebCore::CSSStyleSelector::applyProperty):
276         * css/CSSStyleSelector.h:
277         (WebCore::CSSStyleSelector::setRegionForStyling):
278         (WebCore::CSSStyleSelector::regionForStyling):
279         (WebCore::CSSStyleSelector::applyPropertyToRegionStyle):
280         * rendering/RenderFlowThread.cpp:
281         (WebCore::RenderFlowThread::clearRenderRegionRangeMap):
282         (WebCore::RenderFlowThread::~RenderFlowThread):
283         (WebCore::RenderFlowThread::layout):
284         (WebCore::RenderFlowThread::clearRenderObjectCustomStyle):
285         (WebCore::RenderFlowThread::setRegionRangeForBox):
286         * rendering/RenderFlowThread.h:
287         * rendering/RenderLayer.cpp:
288         (WebCore::CurrentRenderRegionMaintainer::CurrentRenderRegionMaintainer):
289         (WebCore::CurrentRenderRegionMaintainer::~CurrentRenderRegionMaintainer):
290         (WebCore::RenderLayer::paint):
291         (WebCore::RenderLayer::hitTest):
292         * rendering/RenderObject.cpp:
293         (WebCore::RenderObject::style):
294         * rendering/RenderObject.h:
295         (WebCore::RenderObject::canHaveRegionStyle):
296         * rendering/RenderObjectChildList.cpp:
297         (WebCore::RenderObjectChildList::removeChildNode):
298         * rendering/RenderRegion.cpp:
299         (WebCore::RenderRegion::layout):
300         (WebCore::RenderRegion::renderObjectRegionStyle):
301         (WebCore::RenderRegion::computeStyleInRegion):
302         (WebCore::RenderRegion::clearObjectStyleInRegion):
303         * rendering/RenderRegion.h:
304         * rendering/RenderView.cpp:
305         (WebCore::RenderView::RenderView):
306         * rendering/RenderView.h:
307         (WebCore::RenderView::currentRenderRegion):
308         (WebCore::RenderView::setCurrentRenderRegion):
309
310 2011-12-01  Vsevolod Vlasov  <vsevik@chromium.org>
311
312         Web Inspector: Extract default call stack creation and check for front-end from console.
313         https://bugs.webkit.org/show_bug.cgi?id=73566
314
315         Reviewed by Yury Semikhatsky.
316
317         * bindings/js/ScriptCallStackFactory.cpp:
318         (WebCore::createScriptCallStack):
319         * bindings/js/ScriptCallStackFactory.h:
320         * bindings/scripts/CodeGeneratorJS.pm:
321         (GenerateParametersCheck):
322         * bindings/scripts/CodeGeneratorV8.pm:
323         (GenerateFunctionCallback):
324         * bindings/scripts/test/JS/JSTestObj.cpp:
325         (WebCore::jsTestObjPrototypeFunctionCustomArgsAndException):
326         * bindings/scripts/test/V8/V8TestObj.cpp:
327         (WebCore::TestObjInternal::customArgsAndExceptionCallback):
328         * bindings/v8/ScriptCallStackFactory.cpp:
329         (WebCore::createScriptCallStack):
330         * bindings/v8/ScriptCallStackFactory.h:
331         * inspector/InspectorInstrumentation.cpp:
332         (WebCore::InspectorInstrumentation::hasFrontendForScriptContext):
333         * inspector/InspectorInstrumentation.h:
334         (WebCore::InspectorInstrumentation::hasFrontendForScriptContext):
335         * inspector/WorkerInspectorController.h:
336         (WebCore::WorkerInspectorController::hasFrontend):
337         * page/Console.cpp:
338         * page/Console.h:
339
340 2011-12-07  Shinya Kawanaka  <shinyak@google.com>
341
342         Internals should have a method to reutrn the max sequence number of spellcheck reqeust.
343         https://bugs.webkit.org/show_bug.cgi?id=73511
344
345         Reviewed by Hajime Morita.
346
347         Internal state of SpellChecker should be able to be exposed for testing SpellChecker.
348         This patch will enable us to know asynchronous spellcheck has finished or not.
349
350         Test: editing/spelling/spellcheck-sequencenum.html
351
352         * editing/SpellChecker.cpp:
353         (WebCore::SpellChecker::SpellChecker):
354         (WebCore::SpellChecker::createRequest):
355         (WebCore::SpellChecker::didCheck):
356         * editing/SpellChecker.h:
357         (WebCore::SpellChecker::lastRequestSequence):
358           Interface to take SpellCheck sequence numbers.
359         (WebCore::SpellChecker::lastProcessedSequence): ditto.
360         * testing/Internals.cpp:
361         (WebCore::spellchecker):
362         (WebCore::Internals::lastSpellCheckRequestSequence):
363         (WebCore::Internals::lastSpellCheckProcessedSequence):
364         * testing/Internals.h:
365         * testing/Internals.idl:
366
367 2011-12-07  Ryosuke Niwa  <rniwa@webkit.org>
368
369         TypingCommand duplicates code to obtain the last typing command
370         https://bugs.webkit.org/show_bug.cgi?id=73984
371
372         Reviewed by Kent Tamura.
373
374         Extracted lastTypingCommandIfStillOpenForTyping out of isOpenForMoreTypingCommand
375         and a bunch of TypingCommand static member functions.
376
377         Also made more member functions of TypingCommand private.
378
379         * editing/Editor.cpp:
380         (WebCore::Editor::setComposition):
381         * editing/FrameSelection.cpp:
382         (WebCore::FrameSelection::setSelection):
383         * editing/TypingCommand.cpp:
384         (WebCore::TypingCommand::deleteSelection):
385         (WebCore::TypingCommand::deleteKeyPressed):
386         (WebCore::TypingCommand::forwardDeleteKeyPressed):
387         (WebCore::TypingCommand::insertText):
388         (WebCore::TypingCommand::insertLineBreak):
389         (WebCore::TypingCommand::insertParagraphSeparatorInQuotedContent):
390         (WebCore::TypingCommand::insertParagraphSeparator):
391         (WebCore::TypingCommand::lastTypingCommandIfStillOpenForTyping):
392         (WebCore::TypingCommand::closeTyping):
393         * editing/TypingCommand.h:
394         (WebCore::TypingCommand::isOpenForMoreTyping):
395         (WebCore::TypingCommand::closeTyping):
396
397 2011-12-06  Mary Wu  <mary.wu@torchmobile.com.cn>
398
399         upstream BlackBerry porting of KURL/Logging
400         https://bugs.webkit.org/show_bug.cgi?id=73524
401
402         Reviewed by Antonio Gomes.
403
404         * platform/blackberry/KURLBlackBerry.cpp: Added.
405         (WebCore::KURL::fileSystemPath):
406         * platform/blackberry/LoggingBlackBerry.cpp: Added.
407         (WebCore::initializeWithUserDefault):
408         (WebCore::InitializeLoggingChannelsIfNecessary):
409
410 2011-12-06  Leo Yang  <leo.yang@torchmobile.com.cn>
411
412         [BlackBerry] Remove redundant files in PlatformBlackBerry.cmake
413         https://bugs.webkit.org/show_bug.cgi?id=73976
414
415         Reviewed by Antonio Gomes.
416
417         The listing of the following files in PlatformBlackBerry.cmake are redundant. They should be removed.
418         platform/network/blackberry/MultipartResponseDelegate.cpp
419         platform/network/blackberry/NetworkManager.cpp
420         platform/network/blackberry/NetworkStateNotifierBlackBerry.cpp
421         platform/network/blackberry/ResourceErrorBlackBerry.cpp
422         platform/network/blackberry/ResourceRequestBlackBerry.cpp
423
424         * PlatformBlackBerry.cmake:
425
426 2011-12-06  Shinya Kawanaka  <shinyak@google.com>
427
428         Refactoring: Editor::markAllMisspellingsAndBadGrammarInRanges should be refactored.
429         https://bugs.webkit.org/show_bug.cgi?id=73628
430
431         Reviewed by Hajime Morita.
432
433         Extracted a code for adding markers and replacing misspelled words from WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges.
434
435         No new tests. covered by existing tests.
436
437         * editing/Editor.cpp:
438         (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges):
439           Extracted a code for adding markers and replacing missplled words, and moved to markAndReplaceFor.
440         (WebCore::Editor::markAndReplaceFor):
441         * editing/Editor.h:
442
443 2011-12-06  Julien Chaffraix  <jchaffraix@webkit.org>
444
445         Avoid calling calculateRects in RenderLayer::paintLayer when the rectangles are not needed
446         https://bugs.webkit.org/show_bug.cgi?id=73754
447
448         Reviewed by Simon Fraser.
449
450         Performance change, no change in behavior.
451
452         RenderLayer::paintLayer can easily be called a million time when scrolling on a big table with
453         td { overflow: hidden; }. We would spend a lot of time recomputing the rectangles that we never
454         unused for painting as our layer was not self-painting (clipping layer only) and we did not paint
455         some overlay scrollbars.
456
457         * rendering/RenderLayer.cpp:
458         (WebCore::RenderLayer::paintLayer):
459         Simplified and moved the shouldPaint logic earlier in the function. Now the branches
460         are checking the same boolean which makes the logic more obvious. A consequence of
461         filling shouldPaint earlier is that we call |calculateRects| only if there is a chance
462         the rectangles will used. Also cached the result of isSelfPaintingLayer() in a local
463         variable (isSelfPaintingLayer() is fairly expensive due to several virtual calls).
464
465         * rendering/RenderLayerBacking.cpp:
466         (WebCore::RenderLayerBacking::paintIntoLayer):
467         For coherency, applied the same optimizations here too: added an early return instead
468         of conditionaly call |calculateRects| as we don't have to restore any clip.
469
470 2011-12-06  Benjamin Poulain  <benjamin@webkit.org>
471
472         Simplify KURL's checkEncodedString()
473         https://bugs.webkit.org/show_bug.cgi?id=73890
474
475         Reviewed by Andreas Kling.
476
477         The Macro UNUSED_PARAM is not supposed to be used for this case,
478         use ASSERT_UNUSED instead.
479
480         * platform/KURL.cpp:
481         (WebCore::checkEncodedString):
482
483 2011-12-06  Ryosuke Niwa  <rniwa@webkit.org>
484
485         The code to create a NodeListsNodeData is duplicated everywhere
486         https://bugs.webkit.org/show_bug.cgi?id=73961
487
488         Reviewed by Darin Adler.
489
490         Extracted the logic to create NodeListsNodeData as NodeRareData::ensureNodeLists.
491
492         * dom/Document.cpp:
493         (WebCore::Document::getItems):
494         * dom/Node.cpp:
495         (WebCore::Node::childNodes):
496         (WebCore::Node::registerDynamicNodeList):
497         (WebCore::Node::getElementsByTagName):
498         (WebCore::Node::getElementsByTagNameNS):
499         (WebCore::Node::getElementsByName):
500         (WebCore::Node::getElementsByClassName):
501         * dom/NodeRareData.h:
502         (WebCore::NodeRareData::ensureNodeLists):
503         * html/HTMLFormControlElement.cpp:
504         (WebCore::HTMLFormControlElement::labels):
505
506 2011-12-06  Leo Yang  <leo.yang@torchmobile.com.cn>
507
508         Upstream about: feature in WebKit/blackberry/WebCoreSupport/
509         https://bugs.webkit.org/show_bug.cgi?id=73612
510
511         Reviewed by Antonio Gomes.
512
513         * PlatformBlackBerry.cmake: Move platform/network/blackberry/AboutData.{h, cpp}
514                                     to WebKit/blackberry/WebCoreSupport
515
516 2011-12-06  Benjamin Poulain  <bpoulain@apple.com>
517
518         WebKit Mac does not build without CONTEXT MENU
519         https://bugs.webkit.org/show_bug.cgi?id=73962
520
521         Reviewed by Pavel Feldman.
522
523         In the patch r100903, the symbols were exported under ENABLE(CONTEXT_MENUS)
524         because the feature is triggered from the menus.
525
526         The implementation has no dependency on the context menu but is necessary to build
527         when the inspector is enabled.
528         This patch moves the exported symbols from ENABLE(CONTEXT_MENUS) to ENABLE(INSPECTOR).
529
530         * WebCore.exp.in:
531
532 2011-12-06  Adrienne Walker  <enne@google.com>
533
534         [chromium] setNeedsCommit on non-composited host layers should trigger commit
535         https://bugs.webkit.org/show_bug.cgi?id=73711
536
537         Reviewed by James Robinson.
538
539         Pipe non-composited content host syncs to setNeedsCommit.
540
541         Since now the NonCompositedContentHost generates setNeedsCommit, don't
542         call it unnecessarily, e.g. calling setBackgroundColor to the same
543         color each frame should not retrigger more commits.
544
545         * platform/graphics/chromium/GraphicsLayerChromium.cpp:
546         (WebCore::GraphicsLayerChromium::setAnchorPoint):
547         (WebCore::GraphicsLayerChromium::setTransform):
548         (WebCore::GraphicsLayerChromium::setChildrenTransform):
549         (WebCore::GraphicsLayerChromium::setMasksToBounds):
550         (WebCore::GraphicsLayerChromium::setBackgroundColor):
551         (WebCore::GraphicsLayerChromium::clearBackgroundColor):
552         (WebCore::GraphicsLayerChromium::setContentsOpaque):
553         (WebCore::GraphicsLayerChromium::setBackfaceVisibility):
554         (WebCore::GraphicsLayerChromium::setOpacity):
555         * platform/graphics/chromium/LayerChromium.cpp:
556         (WebCore::LayerChromium::setNeedsCommit):
557         (WebCore::LayerChromium::setAnchorPoint):
558         (WebCore::LayerChromium::setAnchorPointZ):
559         (WebCore::LayerChromium::setBackgroundColor):
560         (WebCore::LayerChromium::setMasksToBounds):
561         (WebCore::LayerChromium::setMaskLayer):
562         (WebCore::LayerChromium::setOpacity):
563         (WebCore::LayerChromium::setOpaque):
564         (WebCore::LayerChromium::setPosition):
565         (WebCore::LayerChromium::setSublayerTransform):
566         (WebCore::LayerChromium::setTransform):
567         (WebCore::LayerChromium::setScrollPosition):
568         (WebCore::LayerChromium::setScrollable):
569         (WebCore::LayerChromium::setDoubleSided):
570         * platform/graphics/chromium/LayerChromium.h:
571         (WebCore::LayerChromium::setReplicaLayer):
572         * platform/graphics/chromium/NonCompositedContentHost.cpp:
573         (WebCore::NonCompositedContentHost::notifySyncRequired):
574         * platform/graphics/chromium/NonCompositedContentHost.h:
575
576 2011-12-06  Kenichi Ishibashi  <bashi@chromium.org>
577
578         [Chromium] unknown characters symbol on \n in complex script text (RTL and LTR)
579         https://bugs.webkit.org/show_bug.cgi?id=73806
580
581         Reviewed by Tony Chang.
582
583         Sets fMergeNeutralItems to 1 instead of merging script items based on their tags.
584
585         Tests: platform/chromium/fast/text/international/chromium-complex-text-non-printable-expected.html
586                platform/chromium/fast/text/international/chromium-complex-text-non-printable.html
587
588         * platform/graphics/chromium/UniscribeHelper.cpp:
589         (WebCore::UniscribeHelper::fillRuns): Removed a block which merges script items.
590
591 2011-12-06  Luke Macpherson   <macpherson@chromium.org>
592
593         Implement remaining border-image and webkit-maskbox-image properties in CSSStyleApplyProperty.
594         https://bugs.webkit.org/show_bug.cgi?id=73391
595
596         Reviewed by Hajime Morita.
597
598         No new tests / refacoring only.
599
600         * css/CSSStyleApplyProperty.cpp:
601         (WebCore::ApplyPropertyBorderImageModifier::getValue):
602         (WebCore::ApplyPropertyBorderImageModifier::setValue):
603         (WebCore::ApplyPropertyBorderImageModifier::applyInheritValue):
604         (WebCore::ApplyPropertyBorderImageModifier::applyInitialValue):
605         (WebCore::ApplyPropertyBorderImageModifier::applyValue):
606         (WebCore::ApplyPropertyBorderImageModifier::createHandler):
607         (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
608         * css/CSSStyleSelector.cpp:
609         (WebCore::CSSStyleSelector::applyProperty):
610         * css/CSSStyleSelector.h:
611
612 2011-12-06  Pavel Feldman  <pfeldman@google.com>
613
614         Web Inspector: introduce a memory agent stub.
615         https://bugs.webkit.org/show_bug.cgi?id=73930
616
617         Reviewed by Timothy Hatcher.
618
619         We'd like to experiment with the memory stats and hence need a
620         nice home for that. Adding this undocumented agent / domain for now.
621
622         * CMakeLists.txt:
623         * GNUmakefile.list.am:
624         * Target.pri:
625         * WebCore.gypi:
626         * WebCore.vcproj/WebCore.vcproj:
627         * WebCore.xcodeproj/project.pbxproj:
628         * bindings/js/ScriptProfiler.h:
629         (WebCore::ScriptProfiler::nodeCount):
630         * bindings/v8/ScriptProfiler.cpp:
631         (WebCore::ScriptProfiler::nodeCount):
632         * bindings/v8/ScriptProfiler.h:
633         * inspector/Inspector.json:
634         * inspector/InspectorController.cpp:
635         (WebCore::InspectorController::InspectorController):
636         * inspector/InspectorMemoryAgent.cpp: Added.
637         (WebCore::InspectorMemoryAgent::~InspectorMemoryAgent):
638         (WebCore::InspectorMemoryAgent::getNodeCounter):
639         (WebCore::InspectorMemoryAgent::InspectorMemoryAgent):
640         * inspector/InspectorMemoryAgent.h: Added.
641         (WebCore::InspectorMemoryAgent::create):
642
643 2011-12-06  Julien Chaffraix  <jchaffraix@webkit.org>
644
645         Unreviewed build fix after 102183.
646
647         * rendering/style/RenderStyle.h:
648         (WebCore::InheritedFlags::initialGridTrackValue):
649         Use DEFINE_STATIC_LOCAL to avoid having an exit-time destructor.
650
651 2011-12-06  Julien Chaffraix  <jchaffraix@webkit.org>
652
653         Inline RenderObject::view()
654         https://bugs.webkit.org/show_bug.cgi?id=73733
655
656         Reviewed by Darin Adler.
657
658         Micro-performance optimization, no change in behavior.
659
660         RenderObject::view() is super hot and is taking ~4-5% of the time in some
661         benchmarks as it is called several hundred thousands times. For some reason,
662         the compiler did not inline it even though it is very simple in release builds.
663
664         * WebCore.exp.in: Removed RenderObject::view() as it is inlined now.
665
666         * rendering/RenderObject.cpp: Moved the implementation from here ...
667         * rendering/RenderView.h:
668         (WebCore::RenderObject::view): ... to here to avoid a cyclic
669         dependency between RenderObject and RenderView. Also marked the
670         function as ALWAYS_INLINE.
671
672         * rendering/RenderObject.h:
673         * rendering/svg/RenderSVGResourceContainer.cpp:
674         Added #include "RenderView.h" as the code checks for view() during repaint.
675
676 2011-12-06  Julien Chaffraix  <jchaffraix@webkit.org>
677
678         CSS Grid Layout: Add support for parsing multiple grid-columns or grid-rows
679         https://bugs.webkit.org/show_bug.cgi?id=73272
680
681         Reviewed by Tony Chang.
682
683         Test: fast/css-grid-layout/grid-columns-rows-get-set-multiple.html
684
685         Updated our supported syntax to match the following:
686         <track-list> := [ <track-breadth> ]+ | 'none'
687         <track-breadth> := <length> | <percentage> | 'auto'
688         (the naming loosely matches the specification)
689
690         * css/CSSComputedStyleDeclaration.cpp:
691         (WebCore::valueForGridTrackBreadth): Added function to handle a breadth
692         (extended with 'auto' that the spec puts in <track-minmax>).
693
694         (WebCore::valueForGridTrackList): Create a space seperated list of
695         track breadth or none.
696
697         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Updated
698         to use the new functions.
699
700         * css/CSSParser.cpp:
701         (WebCore::CSSParser::parseGridTrackList): Extended the function to
702         match the new syntax.
703
704         * css/CSSStyleApplyProperty.cpp:
705         (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty): Removed our
706         simple implementation. Replaced by the CSSStyleSelector functions.
707
708         * css/CSSStyleSelector.cpp:
709         (WebCore::createGridTrackBreadth):
710         (WebCore::createGridTrackList):
711         Added those 2 functions to convert the CSSPrimitiveValue to a Vector
712         as expected by RenderStyle.
713
714         (WebCore::CSSStyleSelector::applyProperty): Added our 2 properties
715         now that it is not handled by CSSStyleApplyProperty.
716
717         * rendering/style/RenderStyle.h:
718         (WebCore::InheritedFlags::gridColumns):
719         (WebCore::InheritedFlags::gridRows):
720         (WebCore::InheritedFlags::setGridColumns):
721         (WebCore::InheritedFlags::setGridRows):
722         (WebCore::InheritedFlags::initialGridColumns):
723         (WebCore::InheritedFlags::initialGridRows):
724         Updated the previous methods to take a Vector of Length.
725
726         (WebCore::InheritedFlags::initialGridTrackValue):
727         Needed function to return a Vector with one 'none' Length (the initial
728         value per the specification).
729
730         * rendering/style/StyleGridData.h: Updated to use a Vector.
731
732 2011-12-06  David Reveman  <reveman@chromium.org>
733
734         [Chromium] Implement tile-sized painting using SkPicture.
735         https://bugs.webkit.org/show_bug.cgi?id=71869
736
737         Reviewed by James Robinson.
738
739         Add texture uploader that paints tile-sized chunks using SkPicture
740         recording and playback. Expose setting which allows this texture
741         updater to be enabled.
742
743         No new tests. Covered by existing tests.
744
745         * WebCore.gypi:
746         * platform/graphics/chromium/BitmapSkPictureCanvasLayerTextureUpdater.cpp: Added.
747         (WebCore::BitmapSkPictureCanvasLayerTextureUpdater::Texture::Texture):
748         (WebCore::BitmapSkPictureCanvasLayerTextureUpdater::Texture::prepareRect):
749         (WebCore::BitmapSkPictureCanvasLayerTextureUpdater::Texture::updateRect):
750         (WebCore::BitmapSkPictureCanvasLayerTextureUpdater::create):
751         (WebCore::BitmapSkPictureCanvasLayerTextureUpdater::BitmapSkPictureCanvasLayerTextureUpdater):
752         (WebCore::BitmapSkPictureCanvasLayerTextureUpdater::~BitmapSkPictureCanvasLayerTextureUpdater):
753         (WebCore::BitmapSkPictureCanvasLayerTextureUpdater::createTexture):
754         (WebCore::BitmapSkPictureCanvasLayerTextureUpdater::sampledTexelFormat):
755         (WebCore::BitmapSkPictureCanvasLayerTextureUpdater::prepareToUpdate):
756         (WebCore::BitmapSkPictureCanvasLayerTextureUpdater::paintContentsRect):
757         (WebCore::BitmapSkPictureCanvasLayerTextureUpdater::updateTextureRect):
758         * platform/graphics/chromium/BitmapSkPictureCanvasLayerTextureUpdater.h: Added.
759         (WebCore::BitmapSkPictureCanvasLayerTextureUpdater::Texture::textureUpdater):
760         (WebCore::BitmapSkPictureCanvasLayerTextureUpdater::orientation):
761         * platform/graphics/chromium/ContentLayerChromium.cpp:
762         (WebCore::ContentLayerChromium::createTextureUpdater):
763         * platform/graphics/chromium/cc/CCLayerTreeHost.h:
764         (WebCore::CCSettings::CCSettings):
765
766 2011-12-06  Adrienne Walker  <enne@google.com>
767
768         [chromium] Don't crash if tile upload happens without painting first
769         https://bugs.webkit.org/show_bug.cgi?id=73939
770
771         Reviewed by James Robinson.
772
773         Remove at least one place (in ImageLayerChromium) where this could
774         happen.
775
776         Although this shouldn't happen, we should be robust to it in the
777         chance that other code causes it to.
778
779         * platform/graphics/chromium/ImageLayerChromium.cpp:
780         (WebCore::ImageLayerChromium::paintContentsIfDirty):
781         * platform/graphics/chromium/TiledLayerChromium.cpp:
782         (WebCore::TiledLayerChromium::updateCompositorResources):
783
784 2011-12-06  Ruben  <chromium@hybridsource.org>
785
786         Enable web audio by default on non-Mac POSIX platforms
787         https://bugs.webkit.org/show_bug.cgi?id=73491
788
789         Reviewed by Tony Chang.
790
791         No new tests, just changing gyp includes.
792
793         * WebCore.gyp/WebCore.gyp:
794
795 2011-12-06  Benjamin Poulain  <benjamin@webkit.org>
796
797         Put length in its own variable in KURL copyASCII
798         https://bugs.webkit.org/show_bug.cgi?id=73928
799
800         Reviewed by Darin Adler.
801
802         * platform/KURL.cpp:
803         (WebCore::copyASCII):
804
805 2011-12-06  Dana Jansens  <danakj@chromium.org>
806
807         [chromium] Set opaque flag for ImageLayerChromium
808         https://bugs.webkit.org/show_bug.cgi?id=72964
809
810         Reviewed by James Robinson.
811
812         Unit test in tests/ImageLayerChromiumTest.cpp.
813
814         * platform/graphics/chromium/GraphicsLayerChromium.cpp:
815         (WebCore::GraphicsLayerChromium::setContentsToImage):
816         * platform/graphics/chromium/GraphicsLayerChromium.h:
817         (WebCore::GraphicsLayerChromium::contentsLayer):
818         * platform/graphics/chromium/ImageLayerChromium.cpp:
819         (WebCore::ImageLayerChromium::setContents):
820
821 2011-12-06  Alexandre Elias  <aelias@google.com>
822
823         [chromium] Apply sent deltas on finishCommit
824         https://bugs.webkit.org/show_bug.cgi?id=73884
825
826         Reviewed by James Robinson.
827
828         This moves scroll and pageScale "sent" deltas to be applied to
829         the layer at the end of the commit, instead of the beginning.
830
831         This has several advantages, especially for page scale:
832         - When pageScale changes, no longer any need to change the scroll's
833         coordinate space at beginning of commit, which is complex and prone to
834         bugs (this fixes a problem where we were forgetting to modify the
835         scrollPosition before).
836         - No need for non-commit-related code to consider the "sent" values.
837         m_pageScale is now always the content scale factor, and
838         m_pageScaleDelta is the scale to be on the impl-side matrix.
839         - This will make it easy to send arbitrary fake or future delta
840         values for example while pinch zooming out.
841
842         The scroll logic is similarly altered for consistency's sake.  Note that
843         I also moved the tree synchronize to the beginning of finishCommit
844         in order to avoid having to change the pageScale coordinate space of
845         sentScrollDelta in adjustScrollsForPageScaleChange().
846
847         No new tests. (Refactoring of existing code.)
848
849         * platform/graphics/chromium/LayerChromium.cpp:
850         (WebCore::LayerChromium::pushPropertiesTo):
851         * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
852         (WebCore::CCLayerTreeHost::finishCommitOnImplThread):
853         * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
854         (WebCore::CCLayerTreeHostImpl::setPageScaleFactorAndLimits):
855         (WebCore::CCLayerTreeHostImpl::applyPageScaleDeltaToScrollLayer):
856         (WebCore::CCLayerTreeHostImpl::processScrollDeltas):
857
858 2011-12-06  Gavin Barraclough  <barraclough@apple.com>
859
860         https://bugs.webkit.org/show_bug.cgi?id=68328
861         The generator and intrinsic fields in HashTableValue/HashEntry and associated structures and methods are redundant
862
863         Reviewed by Geoff Garen.
864
865         Intrinsic is no longer in the DFG namespace, is always in the
866         hash table. Removed ThunkGenerator.
867
868         * bindings/scripts/CodeGeneratorJS.pm:
869         (GenerateHashTable):
870
871 2011-12-06  Dimitri Glazkov  <dglazkov@chromium.org>
872
873         Unreviewed, rolling out r102091.
874         http://trac.webkit.org/changeset/102091
875         https://bugs.webkit.org/show_bug.cgi?id=73711
876
877         Caused Clang Linux compile failure.
878
879         * platform/graphics/chromium/GraphicsLayerChromium.cpp:
880         (WebCore::GraphicsLayerChromium::setAnchorPoint):
881         (WebCore::GraphicsLayerChromium::setTransform):
882         (WebCore::GraphicsLayerChromium::setChildrenTransform):
883         (WebCore::GraphicsLayerChromium::setMasksToBounds):
884         (WebCore::GraphicsLayerChromium::setBackgroundColor):
885         (WebCore::GraphicsLayerChromium::clearBackgroundColor):
886         (WebCore::GraphicsLayerChromium::setContentsOpaque):
887         (WebCore::GraphicsLayerChromium::setBackfaceVisibility):
888         (WebCore::GraphicsLayerChromium::setOpacity):
889         * platform/graphics/chromium/LayerChromium.cpp:
890         (WebCore::LayerChromium::setNeedsCommit):
891         * platform/graphics/chromium/LayerChromium.h:
892         (WebCore::LayerChromium::setAnchorPoint):
893         (WebCore::LayerChromium::setAnchorPointZ):
894         (WebCore::LayerChromium::setBackgroundColor):
895         (WebCore::LayerChromium::setMasksToBounds):
896         (WebCore::LayerChromium::setMaskLayer):
897         (WebCore::LayerChromium::setOpacity):
898         (WebCore::LayerChromium::setOpaque):
899         (WebCore::LayerChromium::setPosition):
900         (WebCore::LayerChromium::setSublayerTransform):
901         (WebCore::LayerChromium::setTransform):
902         (WebCore::LayerChromium::setScrollPosition):
903         (WebCore::LayerChromium::setScrollable):
904         (WebCore::LayerChromium::setDoubleSided):
905         (WebCore::LayerChromium::setReplicaLayer):
906         * platform/graphics/chromium/NonCompositedContentHost.cpp:
907         (WebCore::NonCompositedContentHost::notifySyncRequired):
908         * platform/graphics/chromium/NonCompositedContentHost.h:
909
910 2011-12-06  Dana Jansens  <danakj@chromium.org>
911
912         [Chromium] Make root layer always opaque
913         https://bugs.webkit.org/show_bug.cgi?id=70564
914
915         Reviewed by James Robinson.
916
917         * platform/graphics/chromium/NonCompositedContentHost.cpp:
918         (WebCore::NonCompositedContentHost::NonCompositedContentHost):
919         * platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:
920         (WebCore::CCTiledLayerImpl::draw):
921
922 2011-12-06  Noel Gordon  <noel.gordon@gmail.com>
923
924         WebPImageDecoder computes image width and height multiple times
925         https://bugs.webkit.org/show_bug.cgi?id=73796
926
927         Reviewed by Adam Barth.
928
929         Once sufficient image data arrives, we can compute the decoded image height
930         and width from the WEBP image header data.
931
932         From then on, the decoded image size is known so there's no need to re-read
933         it from the WEBP image header again.
934
935         No change in behavior, so no new tests.
936
937         * platform/image-decoders/webp/WEBPImageDecoder.cpp:
938         (WebCore::WEBPImageDecoder::decode):
939
940 2011-12-06  Mike Reed  <reed@google.com>
941
942         optimize TransformationMatrix::scale by not calling through to generic multiply
943         https://bugs.webkit.org/show_bug.cgi?id=73830
944
945         Reviewed by Kenneth Russell.
946
947         No new tests. Optimization only, existing tests exercise the code
948
949         * platform/graphics/transforms/TransformationMatrix.cpp:
950         (WebCore::TransformationMatrix::scaleNonUniform):
951         (WebCore::TransformationMatrix::scale3d):
952
953 2011-12-06  Eric Carlson  <eric.carlson@apple.com>
954
955         Revert WebCore track Settings changes made in r101977
956         https://bugs.webkit.org/show_bug.cgi?id=73879
957
958         Reviewed by Sam Weinig.
959
960         No new tests yet, still nothing to test.
961
962         * page/Settings.cpp: Move the preference setters back into the .h file.
963         * page/Settings.h:
964         (WebCore::Settings::setShouldDisplaySubtitles):
965         (WebCore::Settings::setShouldDisplayCaptions):
966         (WebCore::Settings::setShouldDisplayTextDescriptions):
967
968 2011-12-06  Andreas Kling  <kling@webkit.org>
969
970         MediaList: Remove constructor that takes a CSSImportRule*.
971         <http://webkit.org/b/73833>
972
973         Reviewed by Antti Koivisto.
974
975         * css/MediaList.h:
976         * css/MediaList.cpp:
977
978             Remove MediaList(CSSImportRule*, ...) constructor.
979
980         * css/CSSImportRule.cpp:
981         (WebCore::CSSImportRule::CSSImportRule):
982
983             Have CSSImportRule construct its MediaList by passing the parent
984             style sheet, which is exactly what the old constructor accomplished.
985             Also assert that we're always created with a non-null parent sheet.
986
987 2011-12-06  Jarred Nicholls  <jarred@sencha.com>
988
989         getComputedStyle returns wrong value for margin-*
990         https://bugs.webkit.org/show_bug.cgi?id=73334
991
992         margin-* getComputedStyle values should return the "used" absolute value when there is a renderer
993         and the specified value is relative (percentage, auto, etc.).
994         When there is no renderer, the specified value should be returned.
995         See http://dev.w3.org/csswg/cssom/#resolved-values.
996
997         Reviewed by Darin Adler.
998
999         Test: fast/css/getComputedStyle/getComputedStyle-resolved-values.html
1000
1001         * css/CSSComputedStyleDeclaration.cpp:
1002         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
1003
1004 2011-12-06  Alexey Proskuryakov  <ap@apple.com>
1005
1006         REGRESSION (WebKit2): Kill ring is not cleared when selection changes
1007         https://bugs.webkit.org/show_bug.cgi?id=73888
1008         <rdar://problem/10532310>
1009
1010         Reviewed by Mark Rowe.
1011
1012         Test: editing/pasteboard/emacs-ctrl-k-with-move.html
1013
1014         * editing/Editor.cpp: (WebCore::Editor::respondToChangedSelection): Moved the code to clear
1015         kill ring from Mac WebKit, as it's needed in all Mac ports at least.
1016
1017 2011-12-06  Darin Adler  <darin@apple.com>
1018
1019         Use HashMap<OwnPtr> in CollectionCache
1020         https://bugs.webkit.org/show_bug.cgi?id=73784
1021
1022         Reviewed by Andreas Kling.
1023
1024         * html/CollectionCache.cpp:
1025         (WebCore::CollectionCache::copyCacheMap): Use adoptPtr.
1026         (WebCore::CollectionCache::reset): Removed now-unneeded calls to deleteAllValues.
1027         (WebCore::append): Added. Helper function for appending elements to the maps from
1028         the collection cache.
1029
1030         * html/CollectionCache.h: Changed mapped type in NodeCacheMap to OwnPtr.
1031         Added append function.
1032
1033         * html/HTMLCollection.cpp:
1034         (WebCore::nameShouldBeVisibleInDocumentAll): Added, to factor out common code in
1035         two functions below.
1036         (WebCore::HTMLCollection::checkForNameMatch): Changed to call nameShouldBeVisibleInDocumentAll.
1037         (WebCore::HTMLCollection::updateNameCache): Ditto. Also updated cache code to use the append
1038         function, so it will work with OwnPtr. Also eliminated an unneeded get call before
1039         each hash table add; we do both at once in the new append function.
1040         * html/HTMLFormCollection.cpp:
1041         (WebCore::HTMLFormCollection::updateNameCache): More of the same.
1042
1043 2011-12-06  Yury Semikhatsky  <yurys@chromium.org>
1044
1045         [Chromium] Web Inspector: getFunctionLocation should return scriptId as String not as int
1046         https://bugs.webkit.org/show_bug.cgi?id=73892
1047
1048         Reviewed by Pavel Feldman.
1049
1050         * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
1051         (WebCore::V8InjectedScriptHost::functionLocationCallback): scriptId should be a string not a number
1052         * inspector/Inspector.json: removed unused parameter
1053
1054 2011-11-21  Balazs Kelemen  <kbalazs@webkit.org>
1055
1056         Enable ParallelJobs by default
1057         https://bugs.webkit.org/show_bug.cgi?id=70032
1058
1059         Reviewed by Zoltan Herczeg.
1060
1061         Covered by existing tests.
1062
1063         According to measurements on Mac and Linux it is a
1064         considerable speedup for SVG on multicore.
1065
1066         Remove the ENABLE(PARALLEL_JOBS) guard. Fix the Windows build
1067         by qualifying ParallelJobs with the WTF namespace (otherwise
1068         MSVC believes it belongs to WebCore which is likely a compiler bug).
1069
1070         * platform/graphics/filters/FEConvolveMatrix.cpp:
1071         (WebCore::FEConvolveMatrix::setInteriorPixelsWorker):
1072         (WebCore::FEConvolveMatrix::platformApplySoftware):
1073         * platform/graphics/filters/FEConvolveMatrix.h:
1074         * platform/graphics/filters/FEGaussianBlur.cpp:
1075         (WebCore::FEGaussianBlur::platformApplyWorker):
1076         (WebCore::FEGaussianBlur::platformApply):
1077         * platform/graphics/filters/FEGaussianBlur.h:
1078         * platform/graphics/filters/FELighting.cpp:
1079         (WebCore::FELighting::platformApplyGenericWorker):
1080         (WebCore::FELighting::platformApplyGeneric):
1081         * platform/graphics/filters/FELighting.h:
1082         * platform/graphics/filters/FEMorphology.cpp:
1083         (WebCore::FEMorphology::platformApplyWorker):
1084         (WebCore::FEMorphology::platformApply):
1085         * platform/graphics/filters/FEMorphology.h:
1086         * platform/graphics/filters/FETurbulence.cpp:
1087         (WebCore::FETurbulence::fillRegionWorker):
1088         (WebCore::FETurbulence::platformApplySoftware):
1089         * platform/graphics/filters/FETurbulence.h:
1090         * platform/graphics/filters/arm/FELightingNEON.cpp:
1091         (WebCore::FELighting::platformApplyNeonWorker):
1092         * platform/graphics/filters/arm/FELightingNEON.h:
1093         (WebCore::FELighting::platformApplyNeon):
1094
1095 2011-12-06  Andreas Kling  <kling@webkit.org>
1096
1097         Unreviewed assertion fix for r102123.
1098
1099         * platform/KURL.cpp:
1100         (WebCore::checkEncodedString):
1101
1102 2011-12-06  Benjamin Poulain  <benjamin@webkit.org>
1103
1104         Simplify KURL's checkEncodedString()
1105         https://bugs.webkit.org/show_bug.cgi?id=73890
1106
1107         Reviewed by Andreas Kling.
1108
1109         The method was reimplementing String::containsOnlyASCII().
1110         Use the method from String and we can remove the #if NDEBUG.
1111
1112         * platform/KURL.cpp:
1113         (WebCore::checkEncodedString):
1114
1115 2011-12-06  Sheriff Bot  <webkit.review.bot@gmail.com>
1116
1117         Unreviewed, rolling out r102111.
1118         http://trac.webkit.org/changeset/102111
1119         https://bugs.webkit.org/show_bug.cgi?id=73902
1120
1121         Breaks compilation (Requested by vsevik on #webkit).
1122
1123         * editing/Editor.cpp:
1124         (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges):
1125         * editing/Editor.h:
1126
1127 2011-12-06  Hajime Morrita  <morrita@chromium.org>
1128
1129         [Refactoring] Accessing Node::m_document should be minimized.
1130         https://bugs.webkit.org/show_bug.cgi?id=73800
1131
1132         Reviewed by Kent Tamura.
1133
1134         No new tests. No behavioral change.
1135
1136         Replaced m_document reference with the document() accessor
1137         or temporaril variables. This is a preparation for using
1138         m_document space to point a shadow root pointer.
1139
1140         * dom/Document.h:
1141         (WebCore::Node::Node):
1142         * dom/Node.cpp:
1143         (WebCore::Node::~Node):
1144
1145 2011-12-06  Shinya Kawanaka  <shinyak@google.com>
1146
1147         https://bugs.webkit.org/show_bug.cgi?id=73889
1148         TextCheckingParagraph::offsetTo should not have a side effect.
1149
1150         Reviewed by Hajime Morita.
1151
1152         Since TextCheckingParagraph::offsetTo had a side effect, its cache often became inconsistent.
1153         This is likely to cause a bug when changing SpellChecker and Editor.
1154
1155         No new tests. Covered by existing tests.
1156
1157         * editing/TextCheckingHelper.cpp:
1158         (WebCore::TextCheckingParagraph::offsetTo):
1159
1160 2011-12-06  Eric Penner  <epenner@google.com>
1161
1162         [chromium] Set texture limits as multiples of viewport size instead of hardcoded values
1163         https://bugs.webkit.org/show_bug.cgi?id=72202
1164
1165         Reviewed by James Robinson.
1166
1167         * platform/graphics/chromium/LayerRendererChromium.cpp: 
1168         (WebCore::LayerRendererChromium::drawLayers): added viewport param
1169         (WebCore::LayerRendererChromium::initializeSharedObjects): ditto 
1170         * platform/graphics/chromium/TextureManager.cpp: 
1171         (WebCore::TextureManager::highLimitBytes): calculated based on viewport
1172         (WebCore::TextureManager::reclaimLimitBytes): ditto
1173         (WebCore::TextureManager::lowLimitBytes): ditto
1174         (WebCore::TextureManager::TextureManager): added viewport param
1175         (WebCore::TextureManager::setMaxMemoryLimitBytes): changed name
1176         (WebCore::TextureManager::setPreferredMemoryLimitBytes): added function
1177         (WebCore::TextureManager::requestTexture): added viewport param
1178         * platform/graphics/chromium/TextureManager.h: ditto
1179         (WebCore::TextureManager::create): ditto
1180         * platform/graphics/chromium/cc/CCLayerTreeHost.cpp: ditto
1181         (WebCore::CCLayerTreeHost::initialize): ditto
1182         (WebCore::CCLayerTreeHost::beginCommitOnImplThread): ditto
1183         (WebCore::CCLayerTreeHost::setViewport): ditto
1184         (WebCore::CCLayerTreeHost::setVisible): ditto
1185         (WebCore::CCLayerTreeHost::didBecomeInvisibleOnImplThread): ditto
1186
1187 2011-12-06  Huang Dongsung  <luxtella@company100.net>
1188
1189         [TexMap][QT] Draw the borders of media and webgl elements in TexMap.
1190         https://bugs.webkit.org/show_bug.cgi?id=73817
1191
1192         GraphicsContext3D only draws the content of the WebGL canvas, not the additional
1193         CSS such as the borders. TextureMapper should render the content of a
1194         media/webgl layer before drawing the actual canvas.
1195         This makes LayoutTests/compositing/webgl/webgl-reflection.html work.
1196
1197         Reviewed by Noam Rosenthal.
1198
1199         * platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:
1200         (WebCore::GraphicsLayerTextureMapper::setContentsNeedsDisplay):
1201         * platform/graphics/texmap/GraphicsLayerTextureMapper.h:
1202         * platform/graphics/texmap/TextureMapperNode.cpp:
1203         (WebCore::TextureMapperNode::renderContent):
1204         (WebCore::TextureMapperNode::paintSelf):
1205
1206 2011-12-06  Sheriff Bot  <webkit.review.bot@gmail.com>
1207
1208         Unreviewed, rolling out r102043.
1209         http://trac.webkit.org/changeset/102043
1210         https://bugs.webkit.org/show_bug.cgi?id=73898
1211
1212         Breaks chromium mac-cg compilation. (Requested by vsevik on
1213         #webkit).
1214
1215         * platform/graphics/chromium/GraphicsLayerChromium.cpp:
1216         (WebCore::GraphicsLayerChromium::setContentsToImage):
1217         * platform/graphics/chromium/GraphicsLayerChromium.h:
1218         (WebCore::GraphicsLayerChromium::contentsLayer):
1219         * platform/graphics/chromium/ImageLayerChromium.cpp:
1220         (WebCore::ImageLayerChromium::setContents):
1221
1222 2011-12-06  Shinya Kawanaka  <shinyak@google.com>
1223
1224         Refactoring: Editor::markAllMisspellingsAndBadGrammarInRanges should be refactored.
1225         https://bugs.webkit.org/show_bug.cgi?id=73628
1226
1227         Reviewed by Hajime Morita.
1228
1229         Extracted a code for adding markers and replacing misspelled words from WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges.
1230
1231         No new tests. covered by existing tests.
1232
1233         * editing/Editor.cpp:
1234         (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges):
1235           Extracted a code for adding markers and replacing missplled words, and moved to markAndReplaceFor.
1236         (WebCore::Editor::markAndReplaceFor):
1237         * editing/Editor.h:
1238
1239 2011-12-05  Alexander Pavlov  <apavlov@chromium.org>
1240
1241         Web Inspector: [Audits] Implement "Stop" button and progress bar instead of spinner.
1242         https://bugs.webkit.org/show_bug.cgi?id=73626
1243
1244         Reviewed by Yury Semikhatsky.
1245
1246         * English.lproj/localizedStrings.js:
1247         * inspector/front-end/AuditLauncherView.js:
1248         (WebInspector.AuditLauncherView):
1249         (WebInspector.AuditLauncherView.prototype._setAuditRunning):
1250         (WebInspector.AuditLauncherView.prototype._launchButtonClicked):
1251         (WebInspector.AuditLauncherView.prototype._createLauncherUI):
1252         (WebInspector.AuditLauncherView.prototype._updateResourceProgress):
1253         (WebInspector.AuditLauncherView.prototype._updateButton):
1254         * inspector/front-end/AuditRules.js:
1255         (WebInspector.AuditRules.GzipRule.prototype.doRun):
1256         (WebInspector.AuditRules.CombineExternalResourcesRule.prototype.doRun):
1257         (WebInspector.AuditRules.MinimizeDnsLookupsRule.prototype.doRun):
1258         (WebInspector.AuditRules.UnusedCssRule.prototype.doRun.evalCallback.selectorsCallback):
1259         (WebInspector.AuditRules.UnusedCssRule.prototype.doRun.evalCallback.documentLoaded):
1260         (WebInspector.AuditRules.UnusedCssRule.prototype.doRun.evalCallback):
1261         (WebInspector.AuditRules.UnusedCssRule.prototype.doRun.styleSheetCallback):
1262         (WebInspector.AuditRules.UnusedCssRule.prototype.doRun.allStylesCallback):
1263         (WebInspector.AuditRules.UnusedCssRule.prototype.doRun):
1264         (WebInspector.AuditRules.CacheControlRule.prototype.doRun):
1265         (WebInspector.AuditRules.ImageDimensionsRule.prototype.doRun):
1266         (WebInspector.AuditRules.CssInHeadRule.prototype.doRun):
1267         (WebInspector.AuditRules.CssInHeadRule.prototype.doRun.externalStylesheetsReceived):
1268         (WebInspector.AuditRules.CssInHeadRule.prototype.doRun.inlineStylesReceived):
1269         (WebInspector.AuditRules.CssInHeadRule.prototype.doRun.onDocumentAvailable):
1270         (WebInspector.AuditRules.StylesScriptsOrderRule.prototype.doRun):
1271         (WebInspector.AuditRules.StylesScriptsOrderRule.prototype.doRun.cssBeforeInlineReceived):
1272         (WebInspector.AuditRules.StylesScriptsOrderRule.prototype.doRun.lateStylesReceived):
1273         (WebInspector.AuditRules.StylesScriptsOrderRule.prototype.doRun.onDocumentAvailable):
1274         (WebInspector.AuditRules.CookieRuleBase.prototype.doRun.resultCallback):
1275         (WebInspector.AuditRules.CookieRuleBase.prototype.doRun):
1276         * inspector/front-end/AuditsPanel.js:
1277         (WebInspector.AuditsPanel):
1278         (WebInspector.AuditsPanel.prototype._executeAudit.ruleResultReadyCallback):
1279         (WebInspector.AuditsPanel.prototype._executeAudit):
1280         (WebInspector.AuditsPanel.prototype._auditFinishedCallback):
1281         (WebInspector.AuditsPanel.prototype.terminateAudit):
1282         (WebInspector.AuditCategory.prototype.run):
1283         (WebInspector.AuditRule.prototype.run):
1284         (WebInspector.AuditRule.prototype.doRun):
1285         (WebInspector.AuditProgressMonitor):
1286         (WebInspector.AuditProgressMonitor.prototype.setTotalWork):
1287         (WebInspector.AuditProgressMonitor.prototype.worked):
1288         (WebInspector.AuditProgressMonitor.prototype.get indeterminate):
1289         (WebInspector.AuditProgressMonitor.prototype.done):
1290         (WebInspector.AuditProgressMonitor.prototype.get canceled):
1291         (WebInspector.AuditProgressMonitor.prototype.set canceled):
1292
1293 2011-12-06  Viatcheslav Ostapenko  <ostapenko.viatcheslav@nokia.com>
1294
1295         [Qt] [WK2] MiniBrowser assert on startup in debug build after r101713
1296         https://bugs.webkit.org/show_bug.cgi?id=73874
1297
1298         This change partially reverts r101713 restoring original behaviour for
1299         KUrl creation from empty string and fixes asserts in debug build.
1300
1301         Reviewed by Alexey Proskuryakov.
1302
1303         No new tests. Tests from r101713 pass.
1304
1305         * platform/KURL.cpp:
1306         (WebCore::KURL::init):
1307         (WebCore::KURL::parse):
1308         * platform/KURL.h:
1309
1310 2011-12-06  Andreas Kling  <kling@webkit.org>
1311
1312         Use HashMap<OwnPtr> for EventListenerMap's internal map.
1313         <http://webkit.org/b/73761>
1314
1315         Reviewed by Benjamin Poulain.
1316
1317         Changed the value type of EventListenerMap::m_hashMap to OwnPtr<EventListenerVector>.
1318         This means we no longer need to manually delete the vectors when taking them out of
1319         the map, which makes the code a little prettier.
1320
1321         A few tweaks were necessary; release() instead of leakPtr() when switching modes
1322         and adoptPtr()/get() sprinkled as needed.
1323
1324         * dom/EventListenerMap.h:
1325         * dom/EventListenerMap.cpp:
1326         (WebCore::EventListenerMap::clear):
1327         (WebCore::EventListenerMap::add):
1328         (WebCore::EventListenerMap::remove):
1329         (WebCore::EventListenerMap::find):
1330         (WebCore::EventListenerMap::removeFirstEventListenerCreatedFromMarkup):
1331         (WebCore::EventListenerMap::copyEventListenersNotCreatedFromMarkupToTarget):
1332
1333 2011-12-05  Rafael Weinstein  <rafaelw@chromium.org>
1334
1335         [MutationObservers] Support 'attributes' mutation records for element.removeAttribute
1336         https://bugs.webkit.org/show_bug.cgi?id=73880
1337
1338         Reviewed by Ojan Vafai.
1339
1340         * dom/Element.cpp:
1341         (WebCore::enqueueAttributesMutationRecord):
1342         (WebCore::Element::removeAttribute):
1343
1344 2011-12-05  Dana Jansens  <danakj@chromium.org>
1345
1346         Set opaque flag for WebGLLayerChromium
1347         https://bugs.webkit.org/show_bug.cgi?id=73876
1348
1349         Reviewed by James Robinson.
1350
1351         New unit test in tests/WebGLLayerChromiumTest.cpp
1352
1353         * platform/graphics/chromium/DrawingBufferChromium.cpp:
1354         (WebCore::DrawingBuffer::platformLayer):
1355
1356 2011-12-05  Benjamin Poulain  <bpoulain@apple.com>
1357
1358         Upstream the Cursor implementation of iOS
1359         https://bugs.webkit.org/show_bug.cgi?id=73724
1360
1361         Reviewed by David Kilzer.
1362
1363         iOS does not need to support the Cursor of WebKit. For compatibility, Cursor
1364         is implemented as an empty class on the platform.
1365
1366         * Configurations/WebCore.xcconfig:
1367         * WebCore.xcodeproj/project.pbxproj:
1368         * platform/Cursor.h:
1369         (WebCore::Cursor::Cursor):
1370         * platform/ios/CursorIOS.cpp: Added.
1371         (WebCore::cursor):
1372         (WebCore::pointerCursor):
1373         (WebCore::crossCursor):
1374         (WebCore::handCursor):
1375         (WebCore::moveCursor):
1376         (WebCore::iBeamCursor):
1377         (WebCore::waitCursor):
1378         (WebCore::helpCursor):
1379         (WebCore::eastResizeCursor):
1380         (WebCore::northResizeCursor):
1381         (WebCore::northEastResizeCursor):
1382         (WebCore::northWestResizeCursor):
1383         (WebCore::southResizeCursor):
1384         (WebCore::southEastResizeCursor):
1385         (WebCore::southWestResizeCursor):
1386         (WebCore::westResizeCursor):
1387         (WebCore::northSouthResizeCursor):
1388         (WebCore::eastWestResizeCursor):
1389         (WebCore::northEastSouthWestResizeCursor):
1390         (WebCore::northWestSouthEastResizeCursor):
1391         (WebCore::columnResizeCursor):
1392         (WebCore::rowResizeCursor):
1393         (WebCore::middlePanningCursor):
1394         (WebCore::eastPanningCursor):
1395         (WebCore::northPanningCursor):
1396         (WebCore::northEastPanningCursor):
1397         (WebCore::northWestPanningCursor):
1398         (WebCore::southPanningCursor):
1399         (WebCore::southEastPanningCursor):
1400         (WebCore::southWestPanningCursor):
1401         (WebCore::westPanningCursor):
1402         (WebCore::verticalTextCursor):
1403         (WebCore::cellCursor):
1404         (WebCore::contextMenuCursor):
1405         (WebCore::noDropCursor):
1406         (WebCore::notAllowedCursor):
1407         (WebCore::progressCursor):
1408         (WebCore::aliasCursor):
1409         (WebCore::zoomInCursor):
1410         (WebCore::zoomOutCursor):
1411         (WebCore::copyCursor):
1412         (WebCore::noneCursor):
1413         (WebCore::grabCursor):
1414         (WebCore::grabbingCursor):
1415         (WebCore::determineHotSpot):
1416
1417 2011-12-05  Noel Gordon  <noel.gordon@gmail.com>
1418
1419         [GTK] GIF image test crashes on 32- and 64-bit Release
1420         https://bugs.webkit.org/show_bug.cgi?id=73812
1421
1422         Reviewed by Adam Barth.
1423
1424         Call resize() on the image pixel backing store after allocation to see if
1425         that stops the GIF image decoder animation tests crashes on GTK.
1426
1427         No new tests, covered by exiting tests ...
1428           fast/backgrounds/animated-gif-as-background.html
1429           fast/images/dont-crash-with-null-gif-frames.html
1430           fast/images/gif-loop-count.html
1431
1432         * platform/image-decoders/ImageDecoder.cpp:
1433         (WebCore::ImageFrame::setSize):
1434
1435 2011-12-05  Erik Arvidsson  <arv@chromium.org>
1436
1437         Could save a lot of memory in CharacterData by not always storing a String
1438         https://bugs.webkit.org/show_bug.cgi?id=72404
1439
1440         Reviewed by Ojan Vafai.
1441
1442         When a Text node is created by the parser we check if the string is all whitespace
1443         and if so we put it in the AtomicString table so that all future identical whitespace
1444         strings can share the StringImpl.
1445
1446         No new tests. Covered by existing tests.
1447
1448         * html/parser/HTMLConstructionSite.cpp:
1449         (WebCore::HTMLNames::isAllWhitespace):
1450         (WebCore::HTMLConstructionSite::insertTextNode):
1451
1452             If we do not know whether the string is all whitespace this now checks the string
1453             If the string is all whitespace we create an AtomicString for it.
1454
1455         * html/parser/HTMLConstructionSite.h:
1456         * html/parser/HTMLTreeBuilder.cpp:
1457         (WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::skipLeadingNonWhitespace): We never cared about the return value here.
1458         (WebCore::HTMLTreeBuilder::processCharacterBuffer): Pass WhitespaceMode in the case we know whether the string is all whitespace or not.
1459         (WebCore::HTMLTreeBuilder::defaultForInTableText): Ditto.
1460
1461 2011-12-05  Benjamin Poulain  <benjamin@webkit.org>
1462
1463         Update KURL's copy copyASCII to avoid String::characters()
1464         https://bugs.webkit.org/show_bug.cgi?id=73794
1465
1466         Reviewed by Andreas Kling.
1467
1468         When the String is already on 8 bits, we can simply copy the
1469         data. In the 16 bits case, everything remains the same.
1470
1471         * platform/KURL.cpp:
1472         (WebCore::copyASCII):
1473         (WebCore::appendASCII):
1474         (WebCore::KURL::init):
1475         (WebCore::KURL::parse):
1476         (WebCore::KURL::copyToBuffer):
1477
1478 2011-12-05  Yong Li  <yoli@rim.com>
1479
1480         https://bugs.webkit.org/show_bug.cgi?id=73683
1481         Implement KeyframeValueList::operator=() and KeyframeValueList::swap().
1482
1483         Reviewed by Darin Adler.
1484
1485         No new tests as no functional change.
1486
1487         * platform/graphics/GraphicsLayer.h: 
1488         (WebCore::KeyframeValueList::operator=): Added
1489         (WebCore::KeyframeValueList::swap): Added
1490
1491 2011-12-05  Adrienne Walker  <enne@google.com>
1492
1493         [chromium] setNeedsCommit on non-composited host layers should trigger commit
1494         https://bugs.webkit.org/show_bug.cgi?id=73711
1495
1496         Reviewed by James Robinson.
1497
1498         Pipe non-composited content host syncs to setNeedsCommit.
1499
1500         Since now the NonCompositedContentHost generates setNeedsCommit, don't
1501         call it unnecessarily, e.g. calling setBackgroundColor to the same
1502         color each frame should not retrigger more commits.
1503
1504         * platform/graphics/chromium/GraphicsLayerChromium.cpp:
1505         (WebCore::GraphicsLayerChromium::setAnchorPoint):
1506         (WebCore::GraphicsLayerChromium::setTransform):
1507         (WebCore::GraphicsLayerChromium::setChildrenTransform):
1508         (WebCore::GraphicsLayerChromium::setMasksToBounds):
1509         (WebCore::GraphicsLayerChromium::setBackgroundColor):
1510         (WebCore::GraphicsLayerChromium::clearBackgroundColor):
1511         (WebCore::GraphicsLayerChromium::setContentsOpaque):
1512         (WebCore::GraphicsLayerChromium::setBackfaceVisibility):
1513         (WebCore::GraphicsLayerChromium::setOpacity):
1514         * platform/graphics/chromium/LayerChromium.cpp:
1515         (WebCore::LayerChromium::setNeedsCommit):
1516         (WebCore::LayerChromium::setAnchorPoint):
1517         (WebCore::LayerChromium::setAnchorPointZ):
1518         (WebCore::LayerChromium::setBackgroundColor):
1519         (WebCore::LayerChromium::setMasksToBounds):
1520         (WebCore::LayerChromium::setMaskLayer):
1521         (WebCore::LayerChromium::setOpacity):
1522         (WebCore::LayerChromium::setOpaque):
1523         (WebCore::LayerChromium::setPosition):
1524         (WebCore::LayerChromium::setSublayerTransform):
1525         (WebCore::LayerChromium::setTransform):
1526         (WebCore::LayerChromium::setScrollPosition):
1527         (WebCore::LayerChromium::setScrollable):
1528         (WebCore::LayerChromium::setDoubleSided):
1529         * platform/graphics/chromium/LayerChromium.h:
1530         (WebCore::LayerChromium::setReplicaLayer):
1531         * platform/graphics/chromium/NonCompositedContentHost.cpp:
1532         (WebCore::NonCompositedContentHost::notifySyncRequired):
1533         * platform/graphics/chromium/NonCompositedContentHost.h:
1534
1535 2011-12-05  Tony Chang  <tony@chromium.org>
1536
1537         small refactor of RenderFlexibleBox
1538         https://bugs.webkit.org/show_bug.cgi?id=73854
1539
1540         Reviewed by Darin Adler.
1541
1542         No new tests, just a refactor.
1543
1544         * rendering/RenderFlexibleBox.cpp:
1545         (WebCore::RenderFlexibleBox::isLeftToRightFlow): Inline isReverseFlow since it's only used in one place.
1546         (WebCore::RenderFlexibleBox::layoutAndPlaceChildren): Rename startEdge
1547         to mainAxisOffset.  Rename logicalTop to crossAxisOffset.  Get rid of
1548         logicalLeft local variable since it's confusing.  Move shouldFlipMainAxis
1549         out of the for loop to avoid computing it each iteration.
1550         * rendering/RenderFlexibleBox.h:
1551
1552 2011-12-05  Florin Malita  <fmalita@google.com>
1553
1554         Heap-buffer-overflow in WebCore::HTMLTreeBuilder::processEndTag
1555         https://bugs.webkit.org/show_bug.cgi?id=73765
1556
1557         Reviewed by Adam Barth.
1558
1559         Test: fast/parser/foreign-content-crash.html
1560
1561         Use m_tree.currentNode() instead of m_tree.currentElement() as the top node is not always an Element.
1562
1563         * html/parser/HTMLTreeBuilder.cpp:
1564         (WebCore::HTMLTreeBuilder::processEndTag):
1565
1566 2011-12-05  Stephen White  <senorblanco@chromium.org>
1567
1568         Allow the ImageBuffers used by SVG filters to be accelerated
1569         https://bugs.webkit.org/show_bug.cgi?id=73842
1570
1571         Reviewed by Kenneth Russell.
1572
1573         Regressions covered by existing SVG tests; new functionality to be
1574         tested by the API exposed on Internals.
1575
1576         * page/Settings.cpp:
1577         (WebCore::Settings::Settings):
1578         * page/Settings.h:
1579         (WebCore::Settings::setAcceleratedFiltersEnabled):
1580         (WebCore::Settings::acceleratedFiltersEnabled):
1581         * platform/graphics/filters/FETile.cpp:
1582         (WebCore::FETile::platformApplySoftware):
1583         * platform/graphics/filters/Filter.h:
1584         (WebCore::Filter::Filter):
1585         (WebCore::Filter::renderingMode):
1586         (WebCore::Filter::setRenderingMode):
1587         * platform/graphics/filters/FilterEffect.cpp:
1588         (WebCore::FilterEffect::asImageBuffer):
1589         (WebCore::FilterEffect::createImageBufferResult):
1590         * platform/graphics/skia/ImageBufferSkia.cpp:
1591         (WebCore::ImageBuffer::platformTransformColorSpace):
1592         * rendering/svg/RenderSVGResourceClipper.cpp:
1593         (WebCore::RenderSVGResourceClipper::applyClippingToContext):
1594         * rendering/svg/RenderSVGResourceFilter.cpp:
1595         (WebCore::RenderSVGResourceFilter::applyResource):
1596         * rendering/svg/RenderSVGResourceMasker.cpp:
1597         (WebCore::RenderSVGResourceMasker::applyResource):
1598         * rendering/svg/RenderSVGResourcePattern.cpp:
1599         (WebCore::RenderSVGResourcePattern::createTileImage):
1600         * rendering/svg/SVGImageBufferTools.cpp:
1601         (WebCore::SVGImageBufferTools::createImageBuffer):
1602         * rendering/svg/SVGImageBufferTools.h:
1603         * testing/Internals.cpp:
1604         (WebCore::Internals::setAcceleratedFiltersEnabled):
1605         * testing/Internals.h:
1606         * testing/Internals.idl:
1607
1608 2011-12-05  Benjamin Poulain  <bpoulain@apple.com>
1609
1610         Upstream htmlSelectMultipleItems needed for <select multiple> by iOS
1611         https://bugs.webkit.org/show_bug.cgi?id=73734
1612
1613         Reviewed by David Kilzer.
1614
1615         * platform/DefaultLocalizationStrategy.cpp:
1616         (WebCore::DefaultLocalizationStrategy::htmlSelectMultipleItems):
1617         * platform/DefaultLocalizationStrategy.h:
1618
1619 2011-12-05  Darin Adler  <darin@apple.com>
1620
1621         Use HashMap<OwnPtr> in CrossOriginPreflightResultCache
1622         https://bugs.webkit.org/show_bug.cgi?id=73785
1623
1624         Reviewed by Andreas Kling.
1625
1626         * loader/CrossOriginPreflightResultCache.cpp:
1627         (WebCore::CrossOriginPreflightResultCache::appendEntry): Changed code to use set
1628         instead of add, since it wants to replace existing entries. Also removed leakPtr
1629         and removed the FIXME that documented the memory leak now fixed here.
1630         (WebCore::CrossOriginPreflightResultCache::canSkipPreflight): Removed unneeded
1631         std:: prefix here and also unneeded explicit delete call.
1632         (WebCore::CrossOriginPreflightResultCache::empty): Removed unneeded deleteAllValues
1633         call here.
1634
1635         * loader/CrossOriginPreflightResultCache.h: Make mapped value of the
1636         CrossOriginPreflightResultHashMap be OwnPtr instead of raw pointer.
1637
1638 2011-12-05  Darin Adler  <darin@apple.com>
1639
1640         Some small improvements to ContainerNode.h
1641         https://bugs.webkit.org/show_bug.cgi?id=73786
1642
1643         Reviewed by Alexey Proskuryakov.
1644
1645         * dom/ContainerNode.cpp:
1646         (WebCore::ContainerNode::suspendPostAttachCallbacks): Added a FIXME comment about the
1647         peculiar behavior of this function. Somehow the post-attach suspend state is both
1648         global and specific to a certain Page object. That can't be right. If it was truly
1649         global then this would be a static member function. If it was truly per-page, then
1650         the related functions could not be static.
1651
1652         * dom/ContainerNode.h: Removed some unneeded argument names. Moved the hasChildNodes
1653         function up with the other basic getters. Put the other getters, childNodeCount and
1654         childNode, right after the basic getters. Used ASSERT_NO_EXCEPTION in all the basic
1655         mutation functions so they can be used in a cleaner fashion in C++ code where we have
1656         some reason to know an exception won't occur. Grouped all the overrides of functions
1657         from Node into a single paragraph and used the OVERRIDE macro on all of them. Made the
1658         queuePostAttachCallback and postAttachCallbacksAreSuspended functions protected.
1659
1660         * dom/Element.h: Moved the include of ExceptionCodePlaceholder.h into ContainerNode.h.
1661
1662         * dom/Node.cpp:
1663         (WebCore::Node::lazyAttach): Use hasChildNodes instead of firstChild for clarity.
1664         (WebCore::Node::isDescendantOf): Ditto.
1665
1666 2011-12-05  Benjamin Poulain  <benjamin@webkit.org>
1667
1668         Get rid of KURL::KURL(ParsedURLStringTag, const char*);
1669         https://bugs.webkit.org/show_bug.cgi?id=73792
1670
1671         Reviewed by Andreas Kling.
1672
1673         In all cases where the constructor is used, the constructor
1674         taking a String is as effective because the string is valid and converted
1675         to String for m_string.
1676
1677         This patch remove the constructor KURL::KURL(ParsedURLStringTag, const char*)
1678         and change the call sites that were using that constructor to build
1679         empty URLs.
1680
1681         * dom/Document.cpp:
1682         (WebCore::Document::initSecurityContext):
1683         * loader/FrameLoader.cpp:
1684         (WebCore::FrameLoader::init):
1685         * loader/archive/cf/LegacyWebArchive.cpp:
1686         (WebCore::LegacyWebArchive::create):
1687         * page/DOMWindow.cpp:
1688         (WebCore::DOMWindow::createWindow):
1689         * platform/KURL.cpp:
1690         * platform/KURL.h:
1691         * platform/KURLGoogle.cpp:
1692
1693 2011-12-05  Benjamin Poulain  <benjamin@webkit.org>
1694
1695         Remove methods declared but never implemented with GOOGLEURL
1696         https://bugs.webkit.org/show_bug.cgi?id=73795
1697
1698         Reviewed by Adam Barth.
1699
1700         * platform/KURL.h:
1701
1702 2011-12-05  Darin Adler  <darin@apple.com>
1703
1704         Change CSSFontSelector to use HashMap<OwnPtr>
1705         https://bugs.webkit.org/show_bug.cgi?id=73781
1706
1707         Reviewed by Dan Bernstein.
1708
1709         * css/CSSFontSelector.cpp:
1710         (WebCore::CSSFontSelector::~CSSFontSelector): Removed calls to deleteAllValues.
1711         (WebCore::CSSFontSelector::addFontFaceRule): Updated to use OwnPtr instead of raw
1712         pointer for the entry in m_fontFaces and m_locallyInstalledFontFaces.
1713         (WebCore::CSSFontSelector::getFontData): Updated to use OwnPtr instead of raw
1714         pointer for the entry in m_fonts. Also removed an unneeded std:: prefix.
1715
1716         * css/CSSFontSelector.h: Made m_fontFaces, m_locallyInstalledFontFaces, and m_fonts
1717         be HashMap<OwnPtr>.
1718
1719 2011-12-05  Adam Klein  <adamk@chromium.org>
1720
1721         V8RecursionScope should call didLeaveScriptContext when recursionLevel reaches zero
1722         https://bugs.webkit.org/show_bug.cgi?id=73867
1723
1724         Reviewed by Adam Barth.
1725
1726         Moved V8RecursionScope into its own file, and moved
1727         V8Proxy::didLeaveScriptContext into that file, along with a static
1728         recursionLevel accessor, hiding the V8BindingPerIsolateData methods
1729         from V8Proxy.
1730
1731         This will make it easy and less error-prone to use V8RecursionScope
1732         properly. I plan to make use of it in V8LazyEventListener to fix
1733         https://bugs.webkit.org/show_bug.cgi?id=73492.
1734
1735         No new tests, refactoring only.
1736
1737         * Target.pri:
1738         * UseV8.cmake:
1739         * WebCore.gypi:
1740         * bindings/v8/V8Binding.h:
1741         (WebCore::V8BindingPerIsolateData::incrementRecursionLevel): return the new recursion level.
1742         (WebCore::V8BindingPerIsolateData::decrementRecursionLevel): return the new recursion level.
1743         * bindings/v8/V8Proxy.cpp: remove didLeaveScriptContext.
1744         (WebCore::V8Proxy::runScript): remove explicit call to didLeaveScriptContext.
1745         (WebCore::V8Proxy::instrumentedCallFunction): remove explicit call to didLeaveScriptContext.
1746         * bindings/v8/V8Proxy.h: remove didLeaveScriptContext.
1747         * bindings/v8/V8RecursionScope.cpp: Added.
1748         (WebCore::V8RecursionScope::didLeaveScriptContext): copied from V8Proxy.cpp.
1749         * bindings/v8/V8RecursionScope.h: Added.
1750         (WebCore::V8RecursionScope::V8RecursionScope):
1751         (WebCore::V8RecursionScope::~V8RecursionScope):
1752         (WebCore::V8RecursionScope::recursionLevel):
1753
1754 2011-12-05  Benjamin Poulain  <bpoulain@apple.com>
1755
1756         Build fix for SecurityOrigin.cpp when neither BLOB nor FILE_SYSTEM are defined
1757
1758         Reviewed by David Kilzer.
1759
1760         When neither BLOB nor FILE_SYSTEM are defined, the parameter is unused.
1761
1762         * page/SecurityOrigin.cpp:
1763         (WebCore::shouldUseInnerURL):
1764
1765 2011-12-05  Darin Adler  <darin@apple.com>
1766
1767         Change RuleSet to use HashMap<OwnPtr>
1768         https://bugs.webkit.org/show_bug.cgi?id=73783
1769
1770         Reviewed by Andreas Kling.
1771
1772         * css/CSSStyleSelector.cpp: Make RuleSet::AtomRuleMap use OwnPtr for the mapped values.
1773         (WebCore::RuleSet::addToRuleSet): Use add instead of get/set to set up a new entry in the
1774         map or find the old entry in the map.
1775
1776 2011-12-05  Mario Sanchez Prada  <msanchez@igalia.com>
1777
1778         [GTK] Move emissions of AtkDocument signals down to WebCore
1779         https://bugs.webkit.org/show_bug.cgi?id=73750
1780
1781         Reviewed by Chris Fleizach.
1782
1783         Implement the needed infrastructure to allow notifying
1784         accessibility, in a cross-platform way, when a event related to
1785         the load of a document happens. Added a generic method, which will
1786         be called from the FrameLoader, and platform specific versions of
1787         it so every port has a chance to decide what to do with those
1788         notifications.
1789
1790         This patch doesn't include a new test because the one testing this
1791         functionality is the GTK-specific unit test added along with patch
1792         for bug 73746: testWebkitAtkDocumentLoadingEvents.
1793
1794         * accessibility/AXObjectCache.h:
1795         (WebCore::AXObjectCache::frameLoadingEventNotification): New, called
1796         from the FrameLoader to notify accessibility when an event happens.
1797         (WebCore::AXObjectCache::frameLoadingEventPlatformNotification): New,
1798         platform specific function to let ports decide what to do.
1799         * accessibility/AXObjectCache.cpp:
1800         (WebCore::AXObjectCache::frameLoadingEventNotification): New.
1801         * accessibility/chromium/AXObjectCacheChromium.cpp:
1802         (WebCore::AXObjectCache::frameLoadingEventPlatformNotification): Dummy
1803         implementation of the platform specific function for chromium.
1804         * accessibility/gtk/AXObjectCacheAtk.cpp:
1805         (WebCore::AXObjectCache::frameLoadingEventPlatformNotification):
1806         * accessibility/mac/AXObjectCacheMac.mm:
1807         (WebCore::AXObjectCache::frameLoadingEventPlatformNotification): Dummy
1808         implementation of the platform specific function for the Mac.
1809         * accessibility/win/AXObjectCacheWin.cpp:
1810         (WebCore::AXObjectCache::frameLoadingEventPlatformNotification): Dummy
1811         implementation of the platform specific function for Windows.
1812
1813         * loader/FrameLoader.cpp:
1814         (WebCore::FrameLoader::prepareForLoadStart): Notify accessibility
1815         by calling the new frameLoadingEventNotification() function.
1816         (WebCore::FrameLoader::checkLoadCompleteForThisFrame): Ditto.
1817
1818 2011-12-05  Benjamin Poulain  <benjamin@webkit.org>
1819
1820         Update String::containsOnlyASCII() to handle 8 bits strings
1821         https://bugs.webkit.org/show_bug.cgi?id=73799
1822
1823         Reviewed by Darin Adler.
1824
1825         When possible, change the call sites from charactersAreAllASCII()
1826         to the optimized version String::containsOnlyASCII().
1827
1828         * platform/KURL.cpp:
1829         (WebCore::KURL::init):
1830         * platform/cf/BinaryPropertyList.cpp:
1831         (WebCore::BinaryPropertyListPlan::writeStringObject):
1832         * platform/graphics/chromium/FontCacheChromiumWin.cpp:
1833         (WebCore::FontCodepage::if):
1834
1835 2011-12-01  Vangelis Kokkevis  <vangelis@chromium.org>
1836
1837         [chromium] Use ANGLE's texture_usage and texture_storage extensions when allocating compositor textures
1838         https://bugs.webkit.org/show_bug.cgi?id=73621
1839
1840         When the extensions are available, compositor textures are allocated via
1841         glTexStorage2DEXT instead of glTexImage2D to eliminate creation of unnecessary
1842         mip levels on the service side. In addition, the GL_FRAMEBUFFER_ATTACHMENT_ANGLE
1843         is specified for all textures used by RenderSurfaces to eliminate the need for
1844         a system memory bitmap allocation.
1845
1846         Reviewed by Kenneth Russell.
1847
1848         * platform/graphics/chromium/Extensions3DChromium.h:
1849         * platform/graphics/chromium/LayerRendererChromium.cpp:
1850         (WebCore::LayerRendererChromium::initialize):
1851         (WebCore::LayerRendererChromium::initializeSharedObjects):
1852         * platform/graphics/chromium/TrackingTextureAllocator.cpp:
1853         (WebCore::TrackingTextureAllocator::TrackingTextureAllocator):
1854         (WebCore::textureToStorageFormat):
1855         (WebCore::isTextureFormatSupportedForStorage):
1856         (WebCore::TrackingTextureAllocator::createTexture):
1857         * platform/graphics/chromium/TrackingTextureAllocator.h:
1858         (WebCore::TrackingTextureAllocator::setTextureUsageHint):
1859         (WebCore::TrackingTextureAllocator::setUseTextureStorageExt):
1860         * platform/graphics/chromium/cc/CCLayerTreeHost.h:
1861         (WebCore::LayerRendererCapabilities::LayerRendererCapabilities):
1862
1863 2011-12-05  Chris Fleizach  <cfleizach@apple.com>
1864
1865         AX: aria-hidden doesn't work on iframe elements
1866         https://bugs.webkit.org/show_bug.cgi?id=73857
1867
1868         Reviewed by Darin Adler.
1869
1870         Test: platform/mac/accessibility/iframe-aria-hidden.html
1871
1872         * accessibility/AccessibilityRenderObject.cpp:
1873         (WebCore::AccessibilityRenderObject::addAttachmentChildren):
1874         (WebCore::AccessibilityRenderObject::addChildren):
1875         * accessibility/AccessibilityRenderObject.h:
1876         * accessibility/AccessibilityScrollView.cpp:
1877         (WebCore::AccessibilityScrollView::accessibilityIsIgnored):
1878         (WebCore::AccessibilityScrollView::addChildren):
1879         * accessibility/AccessibilityScrollView.h:
1880
1881 2011-12-05  Chris Fleizach  <cfleizach@apple.com>
1882
1883         AX: web search mechanism does not work with frames
1884         https://bugs.webkit.org/show_bug.cgi?id=73836
1885
1886         Reviewed by Beth Dakin.
1887
1888         This allows searching for, and within, frames for elements using the accessibility
1889         search mechanism.
1890
1891         Test: platform/mac/accessibility/search-with-frames.html
1892
1893         * accessibility/AccessibilityObject.cpp:
1894         (WebCore::AccessibilityObject::isAccessibilityObjectSearchMatch):
1895         (WebCore::appendAccessibilityObject):
1896         (WebCore::appendChildrenToArray):
1897
1898 2011-12-05  Anders Carlsson  <andersca@apple.com>
1899
1900         Make LayerFlushSchedulerClient::flushLayers indicate whether the flush was successful or not
1901         https://bugs.webkit.org/show_bug.cgi?id=73862
1902
1903         Reviewed by Andy Estes.
1904
1905         Change LayerFlushSchedulerClient::flushLayers to return a boolean. If it returns true, the flush was
1906         successful and the run loop observer will be invalidated.
1907
1908         * platform/graphics/ca/LayerFlushScheduler.h:
1909         * platform/graphics/ca/LayerFlushSchedulerClient.h:
1910         * platform/graphics/ca/mac/LayerFlushSchedulerMac.cpp:
1911         (WebCore::LayerFlushScheduler::runLoopObserverCallback):
1912
1913 2011-12-05  Dana Jansens  <danakj@chromium.org>
1914
1915         [chromium] Set opaque flag for ImageLayerChromium
1916         https://bugs.webkit.org/show_bug.cgi?id=72964
1917
1918         Reviewed by James Robinson.
1919
1920         New unit test in tests/ImageLayerChromiumTest.cpp.
1921
1922         * platform/graphics/chromium/GraphicsLayerChromium.cpp:
1923         (WebCore::GraphicsLayerChromium::setContentsToImage):
1924         * platform/graphics/chromium/GraphicsLayerChromium.h:
1925         (WebCore::GraphicsLayerChromium::contentsLayer):
1926         * platform/graphics/chromium/ImageLayerChromium.cpp:
1927         (WebCore::ImageLayerChromium::setContents):
1928
1929 2011-12-05  Julien Chaffraix  <jchaffraix@webkit.org>
1930
1931         TD width in precentage doesn't work.
1932         https://bugs.webkit.org/show_bug.cgi?id=34758
1933
1934         Reviewed by David Hyatt.
1935
1936         Test: fast/table/colspan-with-all-percent-cells.html
1937
1938         * rendering/AutoTableLayout.cpp:
1939         (WebCore::AutoTableLayout::calcEffectiveLogicalWidth):
1940         In the case where all our columns have percent lengths, split the colspan
1941         logical width using the percentages from the lengths. This should be properly
1942         handled by the massive 'else' case but it is not and I did not feel like refactor
1943         that due to massive compatibility issues that would arise.
1944
1945 2011-12-05  Chris Fleizach  <cfleizach@apple.com>
1946
1947         platform/mac/accessibility/search-when-element-starts-in-table.html is failing
1948         https://bugs.webkit.org/show_bug.cgi?id=73751
1949
1950         When encountering a table, the rows() and not the cells() should be queried (otherwise
1951         we can end up finding the element we started with).
1952
1953         When searching in reverse, we also need to account for searching elements within the
1954         parent hierarchy. because technically it is "behind" the start element.
1955
1956         Reviewed by Darin Adler.
1957
1958         * accessibility/AccessibilityObject.cpp:
1959         (WebCore::appendChildrenToArray):
1960         (WebCore::AccessibilityObject::objectMatchesSearchCriteriaWithResultLimit):
1961         (WebCore::AccessibilityObject::findMatchingObjects):
1962         * accessibility/AccessibilityObject.h:
1963
1964 2011-12-02  Jer Noble  <jer.noble@apple.com>
1965
1966         <video> elements should disable the system and display sleep when playing on OS X.
1967         https://bugs.webkit.org/show_bug.cgi?id=73730
1968         <rdar://problem/9502155>
1969
1970         Reviewed by Alexey Proskuryakov.
1971
1972         No new tests; platform specific system behavior only.
1973
1974         Create a new DisplaySleepDisabler object when the playback rate becomes non-zero, and destroy
1975         that object when the playback rate drops back to zero.
1976
1977         * html/HTMLMediaElement.cpp:
1978         (WebCore::HTMLMediaElement::mediaPlayerRateChanged):
1979         * html/HTMLMediaElement.h:
1980
1981 2011-12-05  Peter Beverloo  <peter@chromium.org>
1982
1983         [Chromium] Add Android keycodes and build Linux clipboard/filesystem files.
1984         https://bugs.webkit.org/show_bug.cgi?id=73672
1985
1986         Add the KeyCodeConversionAndroid.cpp file, which is a partial re-land
1987         of an older file from the Android port:
1988         http://trac.webkit.org/browser/trunk/WebCore/platform/android/KeyEventAndroid.cpp?rev=56704
1989
1990         Add IconChromiumAndroid.cpp which nullifies the rendering of icons in
1991         file upload boxes, which is not something we want to support now. Also
1992         include ClipboardChromiumLinux.cpp and FileSystemChromiumLinux.cpp
1993         as their functionality can be re-used for Android.
1994
1995         Reviewed by Adam Barth.
1996
1997         * WebCore.gyp/WebCore.gyp:
1998         * WebCore.gypi:
1999         * platform/chromium/KeyCodeConversionAndroid.cpp: Added.
2000         (WebCore::windowsKeyCodeForKeyEvent):
2001         * platform/graphics/chromium/IconChromiumAndroid.cpp: Added.
2002         (WebCore::Icon::Icon):
2003         (WebCore::Icon::~Icon):
2004         (WebCore::Icon::paint):
2005
2006 2011-12-05  Steve Falkenburg  <sfalken@apple.com>
2007
2008         Reviewed by Sam Weinig.
2009
2010         On Windows, filenames not properly preserved when copied into a file list exposed by Event.dataTransfer
2011         https://bugs.webkit.org/show_bug.cgi?id=73841
2012         <rdar://problem/10521879>
2013
2014         No test since repro case involves dropping a file onto the WebView.
2015         
2016         Calling characters() explicitly causes a non-terminated string buffer to get passed back
2017         to the String() constructor that expects a terminated buffer. The characters() call isn't
2018         necessary at all, since we have a String and the method we're calling expects a String.
2019
2020         * platform/win/ClipboardWin.cpp:
2021         (WebCore::ClipboardWin::files): Remove characters() since it doesn't null terminate.
2022
2023 2011-12-05  Timothy Hatcher  <timothy@apple.com>
2024
2025         Keep both InspectorBackend.js and InspectorBackendStub.js in Release builds after
2026         they have been combined into inspector.js.
2027
2028         The InspectorBackend.js file split out of the generated InspectorBackendStub.js
2029         in r101670, and both files are needed to be useful.
2030
2031         https://webkit.org/b/73839
2032
2033         Reviewed by Joseph Pecoraro and Brian Weinstein.
2034
2035         * WebCore.xcodeproj/project.pbxproj: Pass -not -name "InspectorBackend*.js" to find
2036         instead of -not -name InspectorBackendStub.js.
2037
2038 2011-12-05  Mikhail Naganov  <mnaganov@chromium.org>
2039
2040         Web Inspector: [Chromium] Heap profiler should designate weak references.
2041         https://bugs.webkit.org/show_bug.cgi?id=69948
2042
2043         Weak references are now ignored when tracing paths to GC roots.
2044
2045         Reviewed by Yury Semikhatsky.
2046
2047         * inspector/front-end/HeapSnapshot.js:
2048         (WebInspector.HeapSnapshotEdge.prototype.get isWeak):
2049         (WebInspector.HeapSnapshotEdge.prototype.toString):
2050         (WebInspector.HeapSnapshotEdge.prototype.get _hasStringName):
2051         (WebInspector.HeapSnapshotRetainerEdge.prototype.get isWeak):
2052         (WebInspector.HeapSnapshot.prototype._init):
2053         (WebInspector.HeapSnapshotPathFinder.prototype._fillRootChildren):
2054         (WebInspector.HeapSnapshotPathFinder.prototype._skipEdge):
2055
2056 2011-12-05  Sheriff Bot  <webkit.review.bot@gmail.com>
2057
2058         Unreviewed, rolling out r102004.
2059         http://trac.webkit.org/changeset/102004
2060         https://bugs.webkit.org/show_bug.cgi?id=73835
2061
2062         Breaks qt minimal release compilation (Requested by vsevik on
2063         #webkit).
2064
2065         * inspector/CodeGeneratorInspector.py:
2066         (Capitalizer.upper_camel_case_to_lower):
2067         (RawTypes.get):
2068         (RawTypes.String.get_c_param_type):
2069         (RawTypes.Object.get_c_param_type):
2070         (RawTypes.Object):
2071         (ParamType):
2072         (TypeData.__init__):
2073         (TypeData.get_raw_type):
2074         (TypeMap.__init__):
2075         (InspectorFrontend_h):
2076         (InspectorArray):
2077         (InspectorObject):
2078         (String):
2079         (InspectorBackendDispatcher_h):
2080         (Generator.process_command):
2081         * inspector/InspectorValues.h:
2082
2083 2011-12-05  Peter Rybin  <peter.rybin@gmail.com>
2084
2085         Web Inspector: [protocol] generate C++ classes for protocol JSON named types
2086         https://bugs.webkit.org/show_bug.cgi?id=72835
2087
2088         Reviewed by Yury Semikhatsky.
2089
2090         Extends python generator functionality.
2091         Makes constructor in InspectorObject public.
2092
2093         * inspector/CodeGeneratorInspector.py:
2094         * inspector/InspectorValues.h:
2095
2096 2011-12-05  Pavel Podivilov  <podivilov@chromium.org>
2097
2098         Web Inspector: fix fronted compilation.
2099         https://bugs.webkit.org/show_bug.cgi?id=73831
2100
2101         Reviewed by Yury Semikhatsky.
2102
2103         * inspector/front-end/CompilerSourceMapping.js:
2104         (WebInspector.ClosureCompilerSourceMappingPayload):
2105
2106 2011-12-05  Eric Carlson  <eric.carlson@apple.com>
2107
2108         Out-of-band text tracks may only load from same origin as the media element's Document's origin
2109         https://bugs.webkit.org/show_bug.cgi?id=73184
2110
2111         Reviewed by Sam Weinig.
2112
2113         Test: http/tests/security/text-track-crossorigin.html
2114
2115         * html/HTMLTrackElement.cpp:
2116         (WebCore::urlForLogging): Debug-only function for logging urls.
2117         (WebCore::HTMLTrackElement::scheduleLoad): Call canLoadUrl() before passing control off to
2118             the Track.
2119         (WebCore::HTMLTrackElement::canLoadUrl): Don't ask HTMLMediaElement to validate the url, the
2120             requirements for <track> are different from <video>.
2121         (WebCore::HTMLTrackElement::didCompleteLoad): Change bool param to enum.
2122         (WebCore::HTMLTrackElement::mediaElementCrossOriginAttribute): New, return parent 'crossorigin' 
2123             attribute value.
2124         * html/HTMLTrackElement.h:
2125
2126         * html/LoadableTextTrack.cpp:
2127         (WebCore::LoadableTextTrack::scheduleLoad): Add comments from the spec.
2128         (WebCore::LoadableTextTrack::loadTimerFired): Always cancel pending loads. Let the caller know 
2129             if the loader refuses the url immediately.
2130         (WebCore::LoadableTextTrack::cueLoadingStarted): The <track> deals with readyState.
2131         (WebCore::LoadableTextTrack::cueLoadingCompleted): HTMLTrackElement::didCompleteLoad takes
2132             an enum, not a bool.
2133
2134         * loader/TextTrackLoader.cpp:
2135         (WebCore::TextTrackLoader::corsPolicyPreventedLoad): New, log the error and set m_state.
2136         (WebCore::TextTrackLoader::notifyFinished): Check for CORS failure.
2137         (WebCore::TextTrackLoader::load): Take media element cross-origin attribute as a param so we
2138             can make the correct checks.
2139         * loader/TextTrackLoader.h:
2140
2141 2011-12-05  Roland Steiner  <rolandsteiner@chromium.org>
2142
2143         "Raw" pseudo selectors don't match if immediately after a child or descendant combinator
2144         https://bugs.webkit.org/show_bug.cgi?id=72933
2145
2146         Remove shortcut that prevents universal selectors from being created before shadow pseudo-elements.
2147
2148         Reviewed by Antti Koivisto.
2149
2150         * css/CSSParser.cpp:
2151         (WebCore::CSSParser::updateSpecifiersWithElementName):
2152
2153 2011-12-05  Sheriff Bot  <webkit.review.bot@gmail.com>
2154
2155         Unreviewed, rolling out r101983.
2156         http://trac.webkit.org/changeset/101983
2157         https://bugs.webkit.org/show_bug.cgi?id=73827
2158
2159         It broke all tests on GTK and on Qt in debug mode (Requested
2160         by Ossy on #webkit).
2161
2162         * dom/Document.h:
2163         (WebCore::Node::Node):
2164         * dom/Node.cpp:
2165         (WebCore::Node::~Node):
2166         * dom/Node.h:
2167         (WebCore::Node::inDocument):
2168
2169 2011-12-05  Roland Steiner  <rolandsteiner@chromium.org>
2170
2171         <style scoped>: Add 'scoped' attribute
2172         https://bugs.webkit.org/show_bug.cgi?id=67718
2173
2174         Add 'scoped' attribute to IDL and attribute list,
2175         implement and test setting/resetting of the attribute.
2176
2177         Reviewed by Antti Koivisto.
2178
2179         Test: fast/css/style-scoped/basic-attribute.html
2180
2181         * html/HTMLAttributeNames.in:
2182         * html/HTMLStyleElement.cpp:
2183         (WebCore::HTMLStyleElement::scoped):
2184         (WebCore::HTMLStyleElement::setScoped):
2185         (WebCore::HTMLStyleElement::scopingElement):
2186         * html/HTMLStyleElement.h:
2187         * html/HTMLStyleElement.idl:
2188
2189 2011-12-05  Hajime Morrita  <morrita@chromium.org>
2190
2191         [Refactoring] Accessing Node::m_document should be minimized.
2192         https://bugs.webkit.org/show_bug.cgi?id=73800
2193
2194         Reviewed by Kent Tamura.
2195
2196         No new tests. No behavioral change.
2197
2198         Replaced m_document reference with the document() accessor
2199         or temporaril variables. This is a preparation for using
2200         m_document space to point a shadow root pointer.
2201
2202         * dom/Document.h:
2203         (WebCore::Node::Node):
2204         * dom/Node.cpp:
2205         (WebCore::Node::~Node):
2206         * dom/Node.h:
2207         (WebCore::Node::inDocument):
2208
2209 2011-12-05  Shinya Kawanaka  <shinyak@google.com>
2210
2211         Asynchronous SpellChecker should consider multiple requests.
2212         https://bugs.webkit.org/show_bug.cgi?id=72939
2213
2214         Reviewed by Hajime Morita.
2215
2216         Now SpellChecker saves a request when it is processing the previous spellcheck request.
2217         If there is a request having the same root editable element, the older request is replaced by newer request
2218
2219         Test: editing/spelling/spellcheck-queue.html
2220
2221         * editing/SpellChecker.cpp:
2222         (WebCore::SpellChecker::SpellCheckRequest::SpellCheckRequest):
2223           A structure to have spell check request.
2224         (WebCore::SpellChecker::SpellCheckRequest::sequence):
2225         (WebCore::SpellChecker::SpellCheckRequest::range):
2226         (WebCore::SpellChecker::SpellCheckRequest::text):
2227         (WebCore::SpellChecker::SpellCheckRequest::mask):
2228         (WebCore::SpellChecker::SpellCheckRequest::rootEditableElement):
2229         (WebCore::SpellChecker::SpellChecker):
2230         (WebCore::SpellChecker::createRequest):
2231         (WebCore::SpellChecker::timerFiredToProcessQueuedRequest):
2232           When timer is fired, queued request is processed if any.
2233         (WebCore::SpellChecker::canCheckAsynchronously):
2234         (WebCore::SpellChecker::requestCheckingFor):
2235           When the spellchecker is processing another request, the latest request is queued.
2236         (WebCore::SpellChecker::invokeRequest):
2237         (WebCore::SpellChecker::enqueueRequest):
2238           Enqueues a request. If there is an older request whose root editable element is the same as the request,
2239           it will be replaced.
2240         (WebCore::SpellChecker::didCheck):
2241         * editing/SpellChecker.h:
2242
2243 2011-12-05  Eric Carlson  <eric.carlson@apple.com>
2244
2245         WebCore part of: Add WebKit preferences for text track settings
2246         https://bugs.webkit.org/show_bug.cgi?id=73721
2247
2248         Reviewed by John Sullivan.
2249
2250         No new tests yet, still nothing to test.
2251
2252         * page/Settings.cpp:
2253         (WebCore::Settings::setShouldDisplaySubtitles): Move the setters to the .cpp file so they
2254             aren't inlined.
2255         (WebCore::Settings::setShouldDisplayCaptions): Ditto.
2256         (WebCore::Settings::setShouldDisplayTextDescriptions): Ditto.
2257         * page/Settings.h:
2258
2259 2011-12-05  Noel Gordon  <noel.gordon@gmail.com>
2260
2261         ImageDecoder setSize() should check for backing store allocation failure
2262         https://bugs.webkit.org/show_bug.cgi?id=72864
2263
2264         Reviewed by Adam Barth.
2265
2266         The backing store of a decoded image is a Vector<PixelData> on the affected
2267         ports. And Vector<> provides a resize capacity member that returns false if
2268         memory allocation fails.
2269
2270         setSize() should be called once only during an image decode - add an ASSERT
2271         for that. Resize the backing store capacity to the requested image size and
2272         return false if memory allocation fails.
2273
2274         ImageDecoder::isOverSize(width, height) is called to check that the decoded
2275         width and height won't overflow 'width x height x sizeof(PixelData)' before
2276         calls to setSize(). Refer to http://webkit.org/b/48634
2277
2278         No new tests. Covered by fast/images/size-failure.html
2279
2280         * platform/image-decoders/ImageDecoder.cpp:
2281         (WebCore::ImageFrame::setSize):
2282
2283 2011-12-04  Andreas Kling  <kling@webkit.org>
2284
2285         CSSStyleSheet can't be reparented, enforce this at compile time.
2286         <http://webkit.org/b/73793>
2287
2288         Reviewed by Benjamin Poulain.
2289
2290         * css/StyleSheet.h:
2291         (WebCore::StyleSheet::clearOwnerRule):
2292
2293             Changed setParentRule(CSSImportRule*) to clearOwnerRule() to document and
2294             enforce the fact that style sheets should never be reparented after creation.
2295
2296         (WebCore::StyleSheet::ownerRule):
2297
2298             Renamed parentRule() to ownerRule() to match the CSSOM name.
2299
2300         (WebCore::StyleSheet::ownerNode):
2301         (WebCore::StyleSheet::clearOwnerNode):
2302
2303             Also renamed StyleSheet::m_parentNode to m_ownerNode to match its accessors.
2304
2305         * css/CSSStyleSheet.h:
2306
2307             Removed ownerRule() as we now inherit it from StyleSheet.
2308
2309         * bindings/js/JSDOMBinding.h:
2310         (WebCore::root):
2311         * css/CSSImportRule.cpp:
2312         (WebCore::CSSImportRule::~CSSImportRule):
2313         (WebCore::CSSImportRule::setCSSStyleSheet):
2314         * css/StyleSheet.cpp:
2315         (WebCore::StyleSheet::StyleSheet):
2316         (WebCore::StyleSheet::parentStyleSheet):
2317         (WebCore::StyleSheet::baseURL):
2318         * inspector/InspectorStyleSheet.cpp:
2319         (WebCore::fillMediaListChain):
2320
2321             Update call sites to use the new names.
2322
2323 2011-12-04  Andreas Kling  <kling@webkit.org>
2324
2325         border-width: initial and border-color: initial cannot be removed via CSSOM.
2326         <http://webkit.org/b/68551>
2327
2328         Reviewed by Darin Adler.
2329
2330         Test: fast/css/cssom-remove-shorthand-property.html
2331
2332         When asked to remove a shorthand property, we should toss out both the
2333         sub-properties of that shorthand as well as the shorthand itself, should the
2334         declaration contain it. The latter part was missing in our implementation.
2335
2336         * css/CSSMutableStyleDeclaration.h:
2337         * css/CSSMutableStyleDeclaration.cpp:
2338         (WebCore::CSSMutableStyleDeclaration::removePropertiesInSet):
2339         (WebCore::CSSMutableStyleDeclaration::removeShorthandProperty):
2340
2341             Changed to return true only if something was actually removed.
2342
2343 2011-12-04  Ryosuke Niwa  <rniwa@webkit.org>
2344
2345         HIERARCHY_REQUEST_ERR check in checkAcceptChild should be optimized for newChild without children
2346         https://bugs.webkit.org/show_bug.cgi?id=73737
2347
2348         Reviewed by Darin Adler.
2349
2350         It turned out that 50-70% of nodes inserted by DOM APIs such as insertBefore and appendChild
2351         don't have any descendent nodes. Optimize isDescendantOf which is used by checkAcceptChild for this case.
2352         On a test case attached on the bug, we see a 40% improvement.
2353
2354         Also optimize for cases where either new child or new parent but not both are in document as suggested
2355         by Erik Arvidsson. This appears to happen about 40-70% of the time, and the symmetric difference between
2356         the two cases is about 50% so it's worth implementing both optimizations.
2357
2358         Unfortunately no tests because we still have a O(n) algorithm somewhere.
2359
2360         * dom/Node.cpp:
2361         (WebCore::Node::isDescendantOf):
2362         (WebCore::Node::contains):
2363
2364 2011-12-04  Andreas Kling  <kling@webkit.org>
2365
2366         CSSValuePool: Inline trivial getters.
2367         <http://webkit.org/b/73763>
2368
2369         Reviewed by Anders Carlsson.
2370
2371         * css/CSSValuePool.cpp:
2372         * css/CSSValuePool.h:
2373         (WebCore::CSSValuePool::createInheritedValue): Inlined.
2374         (WebCore::CSSValuePool::createImplicitInitialValue): Ditto.
2375         (WebCore::CSSValuePool::createExplicitInitialValue): Ditto.
2376
2377 2011-12-03  Noel Gordon  <noel.gordon@gmail.com>
2378
2379         Fix WebPImageDecoder decoder leak.
2380         https://bugs.webkit.org/show_bug.cgi?id=73756
2381
2382         Reviewed by Andreas Kling.
2383
2384         Delete the m_decoder member in the destructor if needed with WebPIDelete.
2385
2386         No new tests, it's valgrind territory.
2387
2388         * platform/image-decoders/webp/WEBPImageDecoder.cpp:
2389         (WebCore::WEBPImageDecoder::~WEBPImageDecoder):
2390
2391 2011-12-03  Andreas Kling  <kling@webkit.org>
2392
2393         CSSStyleSheet: Parent rule can only ever be @import, enforce this at compile time.
2394         <http://webkit.org/b/73725>
2395
2396         Reviewed by Darin Adler.
2397
2398         Made StyleSheet::m_parentRule a CSSImportRule* rather than a CSSRule*
2399         and updated getters, setters and constructors accordingly.
2400
2401         There is no change in behavior, this simply enforces the status quo.
2402
2403         * WebCore.xcodeproj/project.pbxproj:
2404         * bindings/js/JSDOMBinding.h:
2405         * bindings/scripts/CodeGeneratorV8.pm:
2406         (AddIncludesForType):
2407         * css/CSSStyleSheet.cpp:
2408         (WebCore::CSSStyleSheet::CSSStyleSheet):
2409         * css/CSSStyleSheet.h:
2410         (WebCore::CSSStyleSheet::create):
2411         (WebCore::CSSStyleSheet::ownerRule):
2412         * css/StyleSheet.cpp:
2413         (WebCore::StyleSheet::StyleSheet):
2414         * css/StyleSheet.h:
2415         (WebCore::StyleSheet::parentRule):
2416         (WebCore::StyleSheet::setParentRule):
2417
2418 2011-12-03  Andreas Kling  <kling@webkit.org>
2419
2420         Unreviewed, revert accidental change from r101932.
2421
2422         * bindings/scripts/CodeGeneratorV8.pm:
2423         (AddIncludesForType):
2424
2425 2011-12-03  Mary Wu  <mary.wu@torchmobile.com.cn>
2426
2427         Upstream 4 files into WebCore/platform/blackberry
2428         https://bugs.webkit.org/show_bug.cgi?id=73614
2429
2430         Reviewed by Eric Seidel.
2431
2432         * platform/blackberry/CursorBlackBerry.cpp: Added.
2433         (WebCore::AllCursors::AllCursors):
2434         (WebCore::getCursor):
2435         (WebCore::Cursor::Cursor):
2436         (WebCore::Cursor::~Cursor):
2437         (WebCore::Cursor::operator=):
2438         (WebCore::aliasCursor):
2439         (WebCore::cellCursor):
2440         (WebCore::columnResizeCursor):
2441         (WebCore::contextMenuCursor):
2442         (WebCore::copyCursor):
2443         (WebCore::crossCursor):
2444         (WebCore::eastResizeCursor):
2445         (WebCore::eastWestResizeCursor):
2446         (WebCore::grabbingCursor):
2447         (WebCore::grabCursor):
2448         (WebCore::handCursor):
2449         (WebCore::helpCursor):
2450         (WebCore::iBeamCursor):
2451         (WebCore::moveCursor):
2452         (WebCore::noDropCursor):
2453         (WebCore::noneCursor):
2454         (WebCore::northEastResizeCursor):
2455         (WebCore::northEastSouthWestResizeCursor):
2456         (WebCore::northResizeCursor):
2457         (WebCore::northSouthResizeCursor):
2458         (WebCore::northWestResizeCursor):
2459         (WebCore::northWestSouthEastResizeCursor):
2460         (WebCore::notAllowedCursor):
2461         (WebCore::pointerCursor):
2462         (WebCore::progressCursor):
2463         (WebCore::rowResizeCursor):
2464         (WebCore::southEastResizeCursor):
2465         (WebCore::southResizeCursor):
2466         (WebCore::southWestResizeCursor):
2467         (WebCore::verticalTextCursor):
2468         (WebCore::waitCursor):
2469         (WebCore::westResizeCursor):
2470         (WebCore::zoomInCursor):
2471         (WebCore::zoomOutCursor):
2472         (WebCore::middlePanningCursor):
2473         (WebCore::eastPanningCursor):
2474         (WebCore::northPanningCursor):
2475         (WebCore::northEastPanningCursor):
2476         (WebCore::northWestPanningCursor):
2477         (WebCore::southPanningCursor):
2478         (WebCore::southEastPanningCursor):
2479         (WebCore::southWestPanningCursor):
2480         (WebCore::westPanningCursor):
2481         * platform/blackberry/DragDataBlackBerry.cpp: Added.
2482         (WebCore::DragData::canSmartReplace):
2483         (WebCore::DragData::containsColor):
2484         (WebCore::DragData::containsCompatibleContent):
2485         (WebCore::DragData::containsFiles):
2486         (WebCore::DragData::containsPlainText):
2487         (WebCore::DragData::containsURL):
2488         (WebCore::DragData::asFilenames):
2489         (WebCore::DragData::asColor):
2490         (WebCore::DragData::asPlainText):
2491         (WebCore::DragData::asURL):
2492         (WebCore::DragData::asFragment):
2493         * platform/blackberry/DragImageBlackBerry.cpp: Added.
2494         (WebCore::createDragImageFromImage):
2495         (WebCore::createDragImageIconForCachedImage):
2496         (WebCore::deleteDragImage):
2497         (WebCore::dissolveDragImageToFraction):
2498         (WebCore::scaleDragImage):
2499         (WebCore::dragImageSize):
2500         * platform/blackberry/EventLoopBlackBerry.cpp: Added.
2501         (WebCore::EventLoop::platformInit):
2502         (WebCore::EventLoop::cycle):
2503
2504 2011-12-03  Andreas Kling  <kling@webkit.org>
2505
2506         Cache CSSInitialValue instances per-document.
2507         <http://webkit.org/b/73745>
2508
2509         Reviewed by Oliver Hunt.
2510
2511         Test: http/tests/security/cross-origin-css-primitive.html
2512
2513         Have CSSValuePool manage the caching of CSSInitialValue objects.
2514
2515         * css/CSSInitialValue.h:
2516         (WebCore::CSSInitialValue::createExplicit):
2517         (WebCore::CSSInitialValue::createImplicit):
2518         (WebCore::CSSInitialValue::CSSInitialValue):
2519         * css/CSSParser.cpp:
2520         (WebCore::CSSParser::parseValue):
2521         (WebCore::CSSParser::parseFillShorthand):
2522         (WebCore::CSSParser::parseAnimationShorthand):
2523         (WebCore::CSSParser::parseTransitionShorthand):
2524         (WebCore::CSSParser::parseShorthand):
2525         * css/CSSValuePool.cpp:
2526         (WebCore::CSSValuePool::CSSValuePool):
2527         (WebCore::CSSValuePool::createImplicitInitialValue):
2528         (WebCore::CSSValuePool::createExplicitInitialValue):
2529         * css/CSSValuePool.h:
2530
2531 2011-12-03  Andreas Kling  <kling@webkit.org>
2532
2533         Keep CSSInheritedValue in the CSS value pool.
2534         <http://webkit.org/b/73747>
2535
2536         Reviewed by Antti Koivisto.
2537
2538         We only need one CSSInheritedValue instance per document, so cache it
2539         in CSSValuePool and have the parser create it through there.
2540
2541         * css/CSSParser.cpp:
2542         (WebCore::CSSParser::parseValue):
2543         * css/CSSValuePool.cpp:
2544         (WebCore::CSSValuePool::CSSValuePool):
2545         (WebCore::CSSValuePool::createInheritedValue):
2546         * css/CSSValuePool.h:
2547
2548 2011-12-03  Andreas Kling  <kling@webkit.org>
2549
2550         Rename CSSPrimitiveValueCache to CSSValuePool.
2551         <http://webkit.org/b/73742>
2552
2553         Reviewed by Antti Koivisto.
2554
2555         CSSPrimitiveValueCache -> CSSValuePool
2556         Document::primitiveValueCache() -> Document::cssValuePool()
2557
2558         This is in preparation for sharing more than just primitive values.
2559
2560         * CMakeLists.txt:
2561         * GNUmakefile.list.am:
2562         * Target.pri:
2563         * WebCore.gypi:
2564         * WebCore.vcproj/WebCore.vcproj:
2565         * WebCore.xcodeproj/project.pbxproj:
2566         * bindings/scripts/CodeGeneratorV8.pm:
2567         (AddIncludesForType):
2568         * css/CSSComputedStyleDeclaration.cpp:
2569         (WebCore::valueForNinePieceImageSlice):
2570         (WebCore::valueForNinePieceImageQuad):
2571         (WebCore::valueForNinePieceImageRepeat):
2572         (WebCore::valueForNinePieceImage):
2573         (WebCore::zoomAdjustedPixelValue):
2574         (WebCore::zoomAdjustedNumberValue):
2575         (WebCore::zoomAdjustedPixelValueForLength):
2576         (WebCore::valueForReflection):
2577         (WebCore::getPositionOffsetValue):
2578         (WebCore::CSSComputedStyleDeclaration::currentColorOrValidColor):
2579         (WebCore::getBorderRadiusCornerValue):
2580         (WebCore::computedTransform):
2581         (WebCore::CSSComputedStyleDeclaration::valueForFilter):
2582         (WebCore::valueForGridTrackList):
2583         (WebCore::getDelayValue):
2584         (WebCore::getDurationValue):
2585         (WebCore::createLineBoxContainValue):
2586         (WebCore::CSSComputedStyleDeclaration::getFontSizeCSSValuePreferringKeyword):
2587         (WebCore::CSSComputedStyleDeclaration::valueForShadow):
2588         (WebCore::valueForFamily):
2589         (WebCore::renderTextDecorationFlagsToCSSValue):
2590         (WebCore::fillRepeatToCSSValue):
2591         (WebCore::fillSizeToCSSValue):
2592         (WebCore::contentToCSSValue):
2593         (WebCore::counterToCSSValue):
2594         (WebCore::fontFamilyFromStyle):
2595         (WebCore::lineHeightFromStyle):
2596         (WebCore::fontSizeFromStyle):
2597         (WebCore::fontStyleFromStyle):
2598         (WebCore::fontVariantFromStyle):
2599         (WebCore::fontWeightFromStyle):
2600         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
2601         * css/CSSParser.cpp:
2602         (WebCore::parseColorValue):
2603         (WebCore::parseSimpleLengthValue):
2604         (WebCore::CSSParser::setStyleSheet):
2605         (WebCore::CSSParser::createPrimitiveNumericValue):
2606         (WebCore::CSSParser::createPrimitiveStringValue):
2607         (WebCore::CSSParser::parseValidPrimitive):
2608         (WebCore::CSSParser::parseValue):
2609         (WebCore::parseBackgroundClip):
2610         (WebCore::CSSParser::parseFillShorthand):
2611         (WebCore::CSSParser::parsePage):
2612         (WebCore::CSSParser::parseSizeParameter):
2613         (WebCore::CSSParser::parseContent):
2614         (WebCore::CSSParser::parseAttr):
2615         (WebCore::CSSParser::parseBackgroundColor):
2616         (WebCore::CSSParser::parseFillPositionX):
2617         (WebCore::CSSParser::parseFillPositionY):
2618         (WebCore::CSSParser::parseFillPositionComponent):
2619         (WebCore::CSSParser::parseFillPosition):
2620         (WebCore::CSSParser::parseFillRepeat):
2621         (WebCore::CSSParser::parseFillSize):
2622         (WebCore::CSSParser::parseFillProperty):
2623         (WebCore::CSSParser::parseAnimationDirection):
2624         (WebCore::CSSParser::parseAnimationFillMode):
2625         (WebCore::CSSParser::parseAnimationIterationCount):
2626         (WebCore::CSSParser::parseAnimationName):
2627         (WebCore::CSSParser::parseAnimationPlayState):
2628         (WebCore::CSSParser::parseAnimationProperty):
2629         (WebCore::CSSParser::parseAnimationTimingFunction):
2630         (WebCore::CSSParser::parseGridTrackList):
2631         (WebCore::CSSParser::parseDashboardRegions):
2632         (WebCore::CSSParser::parseCounterContent):
2633         (WebCore::CSSParser::parseShape):
2634         (WebCore::CSSParser::parseWrapShape):
2635         (WebCore::CSSParser::parseFont):
2636         (WebCore::CSSParser::parseFontFamily):
2637         (WebCore::CSSParser::parseFontStyle):
2638         (WebCore::CSSParser::parseFontVariant):
2639         (WebCore::CSSParser::parseFontWeight):
2640         (WebCore::CSSParser::parseColor):
2641         (WebCore::ShadowParseContext::ShadowParseContext):
2642         (WebCore::ShadowParseContext::commitLength):
2643         (WebCore::ShadowParseContext::commitStyle):
2644         (WebCore::CSSParser::parseShadow):
2645         (WebCore::CSSParser::parseReflect):
2646         (WebCore::CSSParser::parseFlex):
2647         (WebCore::BorderImageParseContext::BorderImageParseContext):
2648         (WebCore::CSSParser::parseBorderImage):
2649         (WebCore::CSSParser::parseBorderImageRepeat):
2650         (WebCore::BorderImageSliceParseContext::BorderImageSliceParseContext):
2651         (WebCore::BorderImageSliceParseContext::commitNumber):
2652         (WebCore::BorderImageSliceParseContext::commitBorderImageSlice):
2653         (WebCore::CSSParser::parseBorderImageSlice):
2654         (WebCore::BorderImageQuadParseContext::BorderImageQuadParseContext):
2655         (WebCore::BorderImageQuadParseContext::commitNumber):
2656         (WebCore::BorderImageQuadParseContext::commitBorderImageQuad):
2657         (WebCore::CSSParser::parseBorderImageQuad):
2658         (WebCore::CSSParser::parseBorderRadius):
2659         (WebCore::CSSParser::parseAspectRatio):
2660         (WebCore::CSSParser::parseCounter):
2661         (WebCore::parseDeprecatedGradientPoint):
2662         (WebCore::parseDeprecatedGradientColorStop):
2663         (WebCore::CSSParser::parseDeprecatedGradient):
2664         (WebCore::valueFromSideKeyword):
2665         (WebCore::parseGradientColorOrKeyword):
2666         (WebCore::CSSParser::parseLinearGradient):
2667         (WebCore::CSSParser::parseRadialGradient):
2668         (WebCore::CSSParser::parseCrossfade):
2669         (WebCore::CSSParser::parseCustomFilter):
2670         (WebCore::CSSParser::parseFilter):
2671         (WebCore::CSSParser::parseFlowThread):
2672         (WebCore::CSSParser::parseRegionThread):
2673         (WebCore::CSSParser::parseTextEmphasisStyle):
2674         (WebCore::CSSParser::parseFontFeatureSettings):
2675         * css/CSSParser.h:
2676         (WebCore::CSSParser::cssValuePool):
2677         * css/CSSValuePool.cpp: Renamed from Source/WebCore/css/CSSPrimitiveValueCache.cpp.
2678         (WebCore::CSSValuePool::CSSValuePool):
2679         (WebCore::CSSValuePool::~CSSValuePool):
2680         (WebCore::CSSValuePool::createIdentifierValue):
2681         (WebCore::CSSValuePool::createColorValue):
2682         (WebCore::CSSValuePool::createValue):
2683         * css/CSSValuePool.h: Renamed from Source/WebCore/css/CSSPrimitiveValueCache.h.
2684         (WebCore::CSSValuePool::create):
2685         (WebCore::CSSValuePool::createValue):
2686         * css/mediaControlsGtk.css:
2687         (audio::-webkit-media-controls-volume-slider, video::-webkit-media-controls-volume-slider):
2688         * dom/Document.cpp:
2689         (WebCore::Document::cssValuePool):
2690         * dom/Document.h:
2691
2692 2011-12-03  Andreas Kling  <kling@webkit.org>
2693
2694         Shrink CSSValueList.
2695         <http://webkit.org/b/73732>
2696
2697         Reviewed by Antti Koivisto.
2698
2699         Packed CSSValueList::m_isSpaceSeparated into the CSSValue bit field
2700         and renamed it to m_isSpaceSeparatedValue, shrinking CSSValueList
2701         by one CPU word.
2702
2703         Also renamed CSSValue::m_isImplicit to m_isImplicitInitialValue
2704         for good measure.
2705
2706         * css/CSSInitialValue.h:
2707         (WebCore::CSSInitialValue::CSSInitialValue):
2708         * css/CSSValue.h:
2709         (WebCore::CSSValue::isImplicitInitialValue):
2710         (WebCore::CSSValue::CSSValue):
2711         * css/CSSValueList.cpp:
2712         (WebCore::CSSValueList::CSSValueList):
2713         (WebCore::CSSValueList::copy):
2714         (WebCore::CSSValueList::customCssText):
2715         * css/CSSValueList.h:
2716         (WebCore::CSSValueList::isSpaceSeparated):
2717
2718 2011-12-02  Philippe Normand  <pnormand@igalia.com>
2719
2720         [GStreamer] Fullscreen controller support for the new WebKit Fullscreen API
2721         https://bugs.webkit.org/show_bug.cgi?id=66968
2722
2723         Reviewed by Martin Robinson.
2724
2725         * GNUmakefile.am: Don't use the Quicktime fullscreen CSS anymore,
2726         it wasn't suited for GTK in the first place anyway.
2727         * platform/gtk/RenderThemeGtk.cpp:
2728         (WebCore::RenderThemeGtk::extraFullScreenStyleSheet): Simply reuse
2729         GTK CSS.
2730
2731 2011-12-03  Alejandro G. Castro  <alex@igalia.com>
2732
2733         [GTK] TextureMapperNode should not use Qt types and functions
2734         https://bugs.webkit.org/show_bug.cgi?id=73713
2735
2736         Replace qreal with double and qMin with std::min.
2737
2738         Reviewed by Noam Rosenthal.
2739
2740         * platform/graphics/texmap/TextureMapperNode.cpp:
2741         (WebCore::solveCubicBezierFunction):
2742         (WebCore::solveStepsFunction):
2743
2744 2011-12-03  Dan Winship  <danw@gnome.org>
2745
2746         [GTK] Remove lots of code that is now unnecessary after
2747         SoupRequestHTTP API changes.
2748         https://bugs.webkit.org/show_bug.cgi?id=71611
2749
2750         Reviewed by Martin Robinson.
2751
2752         No new tests; behavior is unchanged
2753
2754         * platform/network/ResourceHandleInternal.h:
2755         (WebCore::ResourceHandleInternal::ResourceHandleInternal): remove
2756         no-longer-needed fields.
2757         * platform/network/soup/ResourceHandleSoup.cpp:
2758         (WebCore::finishedCallback): remove this, and m_finished, which
2759         we no longer need to explicitly track
2760         (WebCore::statusWillBeHandledBySoup):
2761         (WebCore::soupErrorShouldCauseLoadFailure): No longer needed;
2762         SoupRequestHTTP's logic is now aligned with WebKit's.
2763         (WebCore::gotChunkCallback): remove gotChunkCallback, which
2764         is no longer needed
2765         (WebCore::startHTTPRequest):
2766         (WebCore::sendRequestCallback):
2767         (WebCore::gotHeadersCallback):
2768         (WebCore::contentSniffedCallback): merge the code from
2769         gotHeadersCallback and contentSniffedCallback into
2770         sendRequestCallback
2771         * platform/network/soup/ResourceResponseSoup.cpp:
2772         (WebCore::ResourceResponse::updateFromSoupMessage): move the
2773         sniffing override logic here
2774
2775 2011-12-03  Sheriff Bot  <webkit.review.bot@gmail.com>
2776
2777         Unreviewed, rolling out r101904.
2778         http://trac.webkit.org/changeset/101904
2779         https://bugs.webkit.org/show_bug.cgi?id=73739
2780
2781         It broke zillions of tests on all bot (Requested by
2782         Ossy_weekend on #webkit).
2783
2784         * bindings/js/JSDOMWindowCustom.cpp:
2785         (WebCore::handlePostMessage):
2786
2787 2011-12-02  Kentaro Hara  <haraken@chromium.org>
2788
2789         [Refactoring] Use join(", ", @arguments) to build a method argument string in CodeGenerator*.pm
2790         https://bugs.webkit.org/show_bug.cgi?id=73651
2791
2792         Reviewed by Darin Adler.
2793
2794         The code in CodeGenerator*.pm to build a method argument string is really dirty
2795         and error-prone. It is building an argument string incrementally judging whether
2796         ", " is necessary or not, like this:
2797
2798             my $method = ... ? "func(" : "func(a";
2799             if (...) {
2800                 $method .= $method =~ /\($/ ? "b" : ", b";
2801             }
2802             $method .= ")";
2803
2804         Alternatively, we can refactor the code as follows:
2805
2806             my $funcName = "func";
2807             my @arguments;
2808             push(@arguments, "a") if (...);
2809             push(@arguments, "b") if (...);
2810             my $method = $funcName . "(" . join(", ", @arguments) . ")";
2811
2812         This patch just refactors the code, and generated .h and .cpp files should be
2813         exactly the same as the current .h and .cpp files.
2814
2815         Tests: bindings/scripts/test/*
2816
2817         * bindings/scripts/CodeGenerator.pm:
2818         (GetterExpression):
2819         (SetterExpression):
2820         * bindings/scripts/CodeGeneratorCPP.pm:
2821         (GenerateImplementation):
2822         * bindings/scripts/CodeGeneratorGObject.pm:
2823         ():
2824         * bindings/scripts/CodeGeneratorJS.pm:
2825         (GenerateImplementation):
2826         * bindings/scripts/CodeGeneratorObjC.pm:
2827         (GenerateImplementation):
2828         * bindings/scripts/CodeGeneratorV8.pm:
2829         (GenerateNormalAttrGetter):
2830         (GenerateNormalAttrSetter):
2831
2832 2011-12-02  David Levin  <levin@chromium.org>
2833
2834         Rename WTF class from TemporarilyChange to TemporaryChange.
2835         https://bugs.webkit.org/show_bug.cgi?id=73479
2836
2837         Reviewed by Eric Seidel.
2838
2839         * ForwardingHeaders/wtf/TemporarilyChange.h: Removed.
2840         * ForwardingHeaders/wtf/TemporaryChange.h: Added.
2841         * page/FrameView.cpp:
2842         (WebCore::FrameView::forceLayoutParentViewIfNeeded):
2843         (WebCore::FrameView::layout):
2844         (WebCore::FrameView::setScrollPosition):
2845         (WebCore::FrameView::autoSizeIfEnabled):
2846
2847 2011-12-02  Armand Navabi  <armand.navabi@gmail.com>
2848
2849         ASSERT fails in updateState ACTION_DRAW case
2850         https://bugs.webkit.org/show_bug.cgi?id=73351
2851
2852         Reviewed by James Robinson.
2853
2854         Changed ASSERT in CCSchedulerStateMachine to include ( || !m_visible) as discussed in bug 
2855         report. m_commitState is set to COMMIT_STATE_WAITING_FOR_FIRST_DRAW if m_needsCommit or
2856         !m_visible, so in ACTION_DRAW the assert should have both conditions.
2857
2858         * platform/graphics/chromium/cc/CCSchedulerStateMachine.cpp:
2859         (WebCore::CCSchedulerStateMachine::updateState):
2860
2861 2011-12-02  Shawn Singh  <shawnsingh@chromium.org>
2862
2863         [chromium] Scissor rect optimization for chromium compositor
2864         https://bugs.webkit.org/show_bug.cgi?id=67341
2865
2866         Reviewed by James Robinson.
2867
2868         Mostly covered by damage tracker tests. Currently this relies on
2869         manually running layout tests, because this patch requires partial
2870         swaps that are not supported by DumpRenderTree. The feature
2871         automatically disables if partial swap is not supported.
2872
2873         * platform/graphics/chromium/LayerRendererChromium.cpp:
2874         (WebCore::LayerRendererChromium::initialize):
2875         (WebCore::LayerRendererChromium::trackDamageForAllSurfaces):
2876         (WebCore::LayerRendererChromium::drawLayersOntoRenderSurfaces):
2877         (WebCore::LayerRendererChromium::drawLayersInternal):
2878         (WebCore::LayerRendererChromium::swapBuffers):
2879         (WebCore::LayerRendererChromium::drawLayer):
2880         * platform/graphics/chromium/LayerRendererChromium.h:
2881         * platform/graphics/chromium/cc/CCLayerTreeHost.h:
2882         (WebCore::CCSettings::CCSettings):
2883         (WebCore::LayerRendererCapabilities::LayerRendererCapabilities):
2884         * platform/graphics/chromium/cc/CCRenderSurface.cpp:
2885         (WebCore::CCRenderSurface::draw):
2886         * platform/graphics/chromium/cc/CCRenderSurface.h:
2887
2888 2011-12-02  Dmitry Lomov  <dslomov@google.com>
2889
2890         https://bugs.webkit.org/show_bug.cgi?id=73691
2891         [JSC] Implement correct order of window.postMessage arguments.
2892
2893         Reviewed by Geoffrey Garen.
2894
2895         * bindings/js/JSDOMWindowCustom.cpp:
2896         (WebCore::handlePostMessage):
2897
2898 2011-12-02  Stephen Chenney  <schenney@chromium.org>
2899
2900         REGRESSION (r91125): Polyline tool in google docs is broken
2901         https://bugs.webkit.org/show_bug.cgi?id=65796
2902
2903         Reviewed by Darin Adler.
2904
2905         Work around a bug in CoreGraphics, that caused incorrect bounds for paths
2906         consisting only of move-to elements. This causes problems in SVG, when the enormous
2907         bounds prevented the drawing of things behind.
2908
2909         Tests: svg/custom/path-moveto-only-rendering.svg
2910                svg/custom/subpaths-moveto-only-rendering.svg
2911
2912         * platform/graphics/cg/PathCG.cpp:
2913         (WebCore::PathIsEmptyOrSingleMoveTester::PathIsEmptyOrSingleMoveTester): Class to
2914         test for isEmpty accoridng ot the same rules as other platforms.
2915         (WebCore::PathIsEmptyOrSingleMoveTester::isEmpty): Query the result
2916         (WebCore::PathIsEmptyOrSingleMoveTester::testPathElement): Path iterator method
2917         (WebCore::PathHasOnlyMoveToTester::PathHasOnlyMoveToTester): Class to test whether a
2918         path contains only move-to elements, and hence should have null bounds.
2919         (WebCore::PathHasOnlyMoveToTester::hasOnlyMoveTo): Query the result
2920         (WebCore::PathHasOnlyMoveToTester::testPathElement): Path iterator method.
2921         (WebCore::Path::boundingRect): Modified to check for move-to only paths
2922         (WebCore::Path::fastBoundingRect): Modified to check for move-to only paths
2923         (WebCore::Path::isEmpty): Now uses the method that matches other platforms.
2924         (WebCore::Path::hasCurrentPoint): Now uses CGPathIsEmpty directly
2925         (WebCore::Path::transform) : Now uses CGPathIsEmpty directly
2926
2927 2011-12-02  Mihnea Ovidenie  <mihnea@adobe.com>
2928
2929         [CSSRegions]More renaming for region style rules.
2930         https://bugs.webkit.org/show_bug.cgi?id=73526
2931
2932         Reviewed by Eric Seidel.
2933
2934         Rename isRegionStyleRule() -> isRegionRule()
2935         WEBKIT_REGION_STYLE_RULE -> WEBKIT_REGION_RULE.
2936
2937         * bindings/objc/DOMCSS.mm:
2938         (kitClass):
2939         * bindings/v8/custom/V8CSSRuleCustom.cpp:
2940         (WebCore::toV8):
2941         * css/CSSGrammar.y:
2942         * css/CSSParser.cpp:
2943         (WebCore::CSSParser::createRegionRule):
2944         * css/CSSParser.h:
2945         * css/CSSRule.cpp:
2946         (WebCore::CSSRule::cssText):
2947         (WebCore::CSSRule::destroy):
2948         * css/CSSRule.h:
2949         (WebCore::CSSRule::isRegionRule):
2950         * css/CSSRule.idl:
2951         * css/CSSStyleSelector.cpp:
2952         (WebCore::CSSStyleSelector::addRegionRule):
2953         (WebCore::RuleSet::addRulesFromSheet):
2954         * css/CSSStyleSelector.h:
2955         * css/WebKitCSSRegionRule.cpp:
2956         (WebCore::WebKitCSSRegionRule::WebKitCSSRegionRule):
2957         * css/tokenizer.flex:
2958
2959 2011-12-02  Tom Sepez  <tsepez@chromium.org>
2960
2961         XSSAuditor includes more terminating characters when truncating
2962         attribute values.
2963         https://bugs.webkit.org/show_bug.cgi?id=73684
2964
2965         Reviewed by Daniel Bates.
2966
2967         * html/parser/XSSAuditor.cpp:
2968         (WebCore::isTerminatingCharacter):
2969         (WebCore::XSSAuditor::eraseDangerousAttributesIfInjected):
2970
2971 2011-12-02  Tony Chang  <tony@chromium.org>
2972
2973         Need to implement flex-flow: column-reverse
2974         https://bugs.webkit.org/show_bug.cgi?id=73504
2975
2976         Reviewed by David Hyatt.
2977
2978         We can't just change the direction of the FlexOrderIterator because we want the overflow to be
2979         on the top. We can't just position them in the reverse location since we don't know where the
2980         bottom edge is until we've layed out the flex items. So we do an extra pass, but it should be
2981         fast since we're not laying out, just moving.
2982
2983         * rendering/RenderFlexibleBox.cpp:
2984         (WebCore::RenderFlexibleBox::flowAwareBorderEnd):
2985         (WebCore::RenderFlexibleBox::flowAwarePaddingEnd):
2986         (WebCore::RenderFlexibleBox::layoutAndPlaceChildren):
2987         (WebCore::RenderFlexibleBox::layoutColumnReverse): Do an extra pass to reposition flexitems in the reverse order.
2988         * rendering/RenderFlexibleBox.h:
2989
2990 2011-12-02  Stephen Chenney  <schenney@chromium.org>
2991
2992         Divide by zero for zero-length arcs
2993         https://bugs.webkit.org/show_bug.cgi?id=73021
2994
2995         Reviewed by Nikolas Zimmermann.
2996
2997         A zero-length path produces divide by zero, resulting in nothing being
2998         drawn. This change modifies the behavior to produce a zero-length line
2999         which will generate correct linecaps.
3000
3001         Test: svg/stroke/zero-length-arc-linecaps-rendering.svg
3002
3003         * svg/SVGPathParser.cpp:
3004         (WebCore::SVGPathParser::parseArcToSegment): Catch the case of
3005         zero-length arcs and convert them to lines (the same as would happen
3006         for zero arc radii).
3007
3008 2011-12-02  James Wei <james.wei@intel.com> & Xingnan Wang <xingnan.wang@intel.com>
3009
3010         -Implement the SSE optimization for vsmul and vadd.
3011         https://bugs.webkit.org/show_bug.cgi?id=73182
3012
3013         Reviewed by Kenneth Russell.
3014
3015         * platform/audio/VectorMath.cpp:
3016         (WebCore:VectorMath):
3017
3018 2011-12-02  David Grogan  <dgrogan@chromium.org>
3019
3020         Grant workers experimental access to IndexedDB.
3021         https://bugs.webkit.org/show_bug.cgi?id=73609
3022
3023         Reviewed by Nate Chapin.
3024
3025         No new tests - there will be chromium ui tests that depend on
3026         webkit.org/b/73297.
3027
3028         * storage/IDBFactory.cpp:
3029         (WebCore::IDBFactory::open): Call new function,
3030         IDBFactoryBackendInterface::openFromWorker.
3031         * storage/IDBFactoryBackendImpl.cpp:
3032         (WebCore::IDBFactoryBackendImpl::open):
3033         (WebCore::IDBFactoryBackendImpl::openFromWorker):
3034         (WebCore::IDBFactoryBackendImpl::openInternal):
3035         * storage/IDBFactoryBackendImpl.h:
3036         * storage/IDBFactoryBackendInterface.h:
3037         * workers/WorkerContext.cpp:
3038         (WebCore::WorkerContext::webkitIndexedDB): Stores
3039         IDBFactoryBackendInterface, implemented by IDBFactoryBackendProxy in
3040         chromium, in the WorkerContext.  For the Document case it is stored in
3041         the PageGroup.  Storing it in the WorkerContext causes more memory
3042         churn, but that should be trivial.  I don't know of any better
3043         alternatives.
3044         * workers/WorkerContext.h:
3045         * workers/WorkerContext.idl:
3046
3047 2011-12-02  Aaron Colwell  <acolwell@chromium.org>
3048
3049         Fix mixed content handling for video in Chromium by having
3050         CachedResourceLoader & SubresourceLoader use the 
3051         ResourceRequest::TargetType when determining if a RawResource can
3052         be requested.
3053         https://bugs.webkit.org/show_bug.cgi?id=72178
3054
3055         Reviewed by Adam Barth.
3056
3057         Tests: http/tests/security/mixedContent/insecure-video-in-iframe.html
3058                http/tests/security/mixedContent/insecure-video-in-main-frame.html
3059                http/tests/security/mixedContent/redirect-http-to-https-video-in-main-frame.html
3060                http/tests/security/mixedContent/redirect-https-to-http-video-in-main-frame.html
3061
3062         * loader/SubresourceLoader.cpp:
3063         (WebCore::SubresourceLoader::willSendRequest):
3064         * loader/cache/CachedRawResource.cpp:
3065         (WebCore::CachedRawResource::CachedRawResource):
3066         * loader/cache/CachedRawResource.h:
3067         * loader/cache/CachedResource.cpp:
3068         (WebCore::defaultPriorityForResourceType):
3069         (WebCore::cachedResourceTypeToTargetType):
3070         (WebCore::CachedResource::targetTypeToCachedResourceType):
3071         * loader/cache/CachedResource.h:
3072         * loader/cache/CachedResourceLoader.cpp:
3073         (WebCore::createResource):
3074         (WebCore::CachedResourceLoader::checkInsecureContent):
3075         (WebCore::CachedResourceLoader::canRequest):
3076         (WebCore::CachedResourceLoader::requestResource):
3077
3078 2011-12-02  Sheriff Bot  <webkit.review.bot@gmail.com>
3079
3080         Unreviewed, rolling out r101731.
3081         http://trac.webkit.org/changeset/101731
3082         https://bugs.webkit.org/show_bug.cgi?id=73706
3083
3084         Broke copy and paste in chromium. (Requested by dcheng on #webkit).
3085
3086         * editing/SpellChecker.cpp:
3087         (WebCore::SpellChecker::SpellChecker):
3088         (WebCore::SpellChecker::initRequest):
3089         (WebCore::SpellChecker::clearRequest):
3090         (WebCore::SpellChecker::canCheckAsynchronously):
3091         (WebCore::SpellChecker::isBusy):
3092         (WebCore::SpellChecker::isValid):
3093         (WebCore::SpellChecker::requestCheckingFor):
3094         (WebCore::SpellChecker::doRequestCheckingFor):
3095         (WebCore::SpellChecker::didCheck):
3096         * editing/SpellChecker.h:
3097
3098 2011-12-02  Fady Samuel  <fsamuel@chromium.org>
3099
3100         When page scaling is in use position:fixed has incorrect results
3101         https://bugs.webkit.org/show_bug.cgi?id=68617
3102
3103         Reviewed by Simon Fraser.
3104
3105         Add the option for position:fixed elements to be fixed to the frame
3106         instead of the layout rectangle of the document.
3107
3108         Tests: fast/repaint/fixed-in-page-scale.html
3109                fast/repaint/fixed-right-bottom-in-page-scale.html
3110                fast/repaint/fixed-right-in-page-scale.html
3111
3112         * WebCore.exp.in:
3113         * page/FrameView.cpp:
3114         (WebCore::FrameView::reset):
3115         (WebCore::FrameView::scrollXForFixedPosition):
3116         (WebCore::FrameView::scrollYForFixedPosition):
3117           If position:fixed elements are relative to the frame, disregard the
3118           drag factor.
3119         (WebCore::FrameView::setShouldLayoutFixedElementsRelativeToFrame):
3120         * page/FrameView.h:
3121         (WebCore::FrameView::shouldLayoutFixedElementsRelativeToFrame):
3122         * rendering/RenderBox.cpp:
3123         (WebCore::RenderBox::shouldLayoutFixedElementRelativeToFrame):
3124         (WebCore::RenderBox::containingBlockLogicalWidthForPositioned):
3125         (WebCore::RenderBox::containingBlockLogicalHeightForPositioned):
3126           If position:fixed elements are relative to the frame, their container
3127           is the frame instead of the layout rect of the document. 
3128           This allows proper positioning of these elements to the right and
3129           bottom.
3130         * rendering/RenderBox.h:
3131         * testing/Internals.cpp:
3132         (WebCore::Internals::setShouldLayoutFixedElementsRelativeToFrame):
3133         * testing/Internals.h:
3134         * testing/Internals.idl:
3135           Allow enabling and disabling the new behavior in layout tests.
3136
3137 2011-12-02  Benjamin Poulain  <bpoulain@apple.com>
3138
3139         Build fix for SubresourceLoader when building with Core Foundation
3140         https://bugs.webkit.org/show_bug.cgi?id=73709
3141
3142         Reviewed by David Kilzer.
3143
3144         The patch r100311 removed SubresourceClient and merged it in SubresourceLoader.
3145         Consequently, m_client does not exist anymore and there is no need to do the check
3146         before invoking didReceiveData().
3147
3148         * loader/cf/SubresourceLoaderCF.cpp:
3149         (WebCore::SubresourceLoader::didReceiveDataArray):
3150
3151 2011-12-02  Andreas Kling  <kling@webkit.org>
3152
3153         StyledElement: Simplify addCSSColor().
3154         <http://webkit.org/b/73703>
3155
3156         Reviewed by Darin Adler.
3157
3158         The Color(const String&) constructor handles both named and 3/6-digit
3159         hex colors, so there's no need to handle those separately here.
3160         Also tweaked some comments and minor things.
3161
3162         * dom/StyledElement.cpp:
3163         (WebCore::StyledElement::addCSSColor):
3164
3165 2011-12-02  Benjamin Poulain  <bpoulain@apple.com>
3166
3167         Update platform/iphone to platform/ios
3168         https://bugs.webkit.org/show_bug.cgi?id=73708
3169
3170         Reviewed by Darin Adler.
3171
3172         The platform is now best known as iOS, update the platform layer accordingly.
3173
3174         * Configurations/WebCore.xcconfig:
3175         * WebCore.gypi:
3176         * WebCore.xcodeproj/project.pbxproj:
3177         * platform/cocoa/KeyEventCocoa.mm:
3178         * platform/ios/KeyEventCodesIOS.h: Renamed from Source/WebCore/platform/iphone/KeyEventCodesIPhone.h.
3179         * platform/ios/KeyEventIOS.mm: Renamed from Source/WebCore/platform/iphone/KeyEventIPhone.mm.
3180         (WebCore::keyIdentifierForKeyEvent):
3181         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
3182         (WebCore::PlatformKeyboardEvent::disambiguateKeyDownEvent):
3183         (WebCore::PlatformKeyboardEvent::currentCapsLockState):
3184         (WebCore::PlatformKeyboardEvent::getCurrentModifierState):
3185
3186 2011-12-02  Jonathan Backer  <backer@chromium.org>
3187
3188         [chromium] Eliminate unnecessary state on previous CL
3189         https://bugs.webkit.org/show_bug.cgi?id=73661
3190
3191         Reviewed by Kenneth Russell.
3192
3193         * platform/graphics/chromium/LayerRendererChromium.cpp:
3194         (WebCore::LayerRendererChromium::initialize):
3195         * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
3196         (WebCore::CCLayerTreeHost::initialize):
3197         (WebCore::CCLayerTreeHost::didBecomeInvisibleOnImplThread):
3198         * platform/graphics/chromium/cc/CCLayerTreeHost.h:
3199         (WebCore::CCSettings::CCSettings):
3200         (WebCore::LayerRendererCapabilities::LayerRendererCapabilities):
3201
3202 2011-12-02  Dan Bernstein  <mitz@apple.com>
3203
3204         <rdar://problem/10520670> REGRESSION (r91738): didFinishLoad is called before custom fonts have finished loading
3205         https://bugs.webkit.org/show_bug.cgi?id=73688
3206
3207         Reviewed by Darin Adler.
3208
3209         The problem was that after CSSFontFaceSource::getFontData() had scheduled a 0-delay timer to
3210         begin loading the font, but before that timer fired, the subresource loader appeared to have
3211         had no resources waiting to be loaded, and therefore didFinishLoad could be called. This change
3212         reworks the fix for <http://webkit.org/b/65123> so that while the load is still started on a
3213         0-delay timer, the subresource loader’s request count is incremented immediately, preventing
3214         it from hitting 0 while the font load is scheduled to begin. The delayed load mechanism is
3215         moved from CSSFontFaceSource into CSSFontSelector in order to safely handle the possibility of
3216         the latter being decommissioned while waiting for font loading to begin.
3217
3218         * css/CSSFontFaceSource.cpp:
3219         (WebCore::CSSFontFaceSource::CSSFontFaceSource): Removed initializer for m_loadStartTimer.
3220         (WebCore::CSSFontFaceSource::~CSSFontFaceSource): Removed stopping of m_loadStartTimer.
3221         (WebCore::CSSFontFaceSource::getFontData): Replaced code to schedule loading on a timer with
3222         a call to CSSFontSelector::beginLoadingFontSoon.
3223         * css/CSSFontFaceSource.h: Removed m_loadStartTimer and m_fontSelector member variables.
3224         * css/CSSFontSelector.cpp:
3225         (WebCore::CSSFontSelector::CSSFontSelector): Added initialized for m_beginLoadingTimer.
3226         (WebCore::CSSFontSelector::~CSSFontSelector): Added call to clearDocument(), to deal with
3227         anything remaining in m_fontsToBeginLoading at this time.
3228         (WebCore::CSSFontSelector::clearDocument): Now stops m_beginLoadingTimer and balances
3229         incrementRequestCount() calls for anything remaining in m_fontsToBeginLoading.
3230         (WebCore::CSSFontSelector::beginLoadingFontSoon): Added. Schedules the actual call to
3231         CachedFont::beginLoadingIfNeeded on a 0-delay timer, and meanwhile increments the request count
3232         on the CachedResourceLoader, which ensures that didFinishLoad will not be called while waiting
3233         for the timer to fire.
3234         (WebCore::CSSFontSelector::beginLoadTimerFired): Added. Actually calls
3235         CachedFont::beginLoadIfNeeded and balances the incrementRequestCount() made when the timer was
3236         scheduled.
3237         * css/CSSFontSelector.h:
3238
3239 2011-12-02  David Tseng  <dtseng@google.com>
3240
3241         Send an AXCheckedStateChanged notification when the aria-checked attribute changes.
3242         https://bugs.webkit.org/show_bug.cgi?id=72754
3243
3244         Reviewed by Chris Fleizach.
3245
3246         Test: accessibility/aria-checkbox-sends-notification.html
3247
3248         * accessibility/AXObjectCache.cpp:
3249         (WebCore::AXObjectCache::checkedStateChanged):
3250         * accessibility/AXObjectCache.h:
3251         * dom/Element.cpp:
3252         (WebCore::Element::updateAfterAttributeChanged):
3253         * html/HTMLInputElement.cpp:
3254         (WebCore::HTMLInputElement::setChecked):
3255
3256 2011-12-02  Grace Kloba  <klobag@chromium.org>
3257
3258         [chromium] Recycle tile-sized textures during commit to prevent reallocations
3259         https://bugs.webkit.org/show_bug.cgi?id=70645
3260
3261         Reviewed by James Robinson.
3262
3263         Currently texture request is capped by the high limit while we reclaim the
3264         textures in each commit. This triggers new tiles always allocated when scrolling.
3265         The proposal is to recycle the texture during request if the total used memory
3266         is about to exceed the reclaim limit.
3267
3268         * platform/graphics/chromium/ManagedTexture.cpp:
3269         (WebCore::ManagedTexture::reserve):
3270         * platform/graphics/chromium/TextureManager.cpp:
3271         (WebCore::TextureManager::setMemoryLimitBytes):
3272         (WebCore::TextureManager::replaceTexture):
3273         (WebCore::TextureManager::requestTexture):
3274         * platform/graphics/chromium/TextureManager.h:
3275
3276 2011-12-02  Kent Tamura  <tkent@chromium.org>
3277
3278         [Chromium] Show placeholder even if the element is focused
3279         https://bugs.webkit.org/show_bug.cgi?id=73629
3280
3281         Reviewed by Hajime Morita.
3282
3283         No new tests. Need to update some existing placeholder tests.
3284
3285         * rendering/RenderThemeChromiumMac.h: Add shouldShowPlaceholderWhenFocused().
3286         * rendering/RenderThemeChromiumMac.mm:
3287         (WebCore::RenderThemeChromiumMac::shouldShowPlaceholderWhenFocused):
3288         Returns true.
3289         * rendering/RenderThemeChromiumSkia.cpp:
3290         (WebCore::RenderThemeChromiumSkia::shouldShowPlaceholderWhenFocused): ditto.
3291         * rendering/RenderThemeChromiumSkia.h: Add shouldShowPlaceholderWhenFocused().
3292
3293 2011-12-02  Kent Tamura  <tkent@chromium.org>
3294
3295         [Lion][Windows] Both of placeholder and input text are shown in <input type=number>
3296         https://bugs.webkit.org/show_bug.cgi?id=73615
3297
3298         Reviewed by Joseph Pecoraro.
3299
3300         Placeholder visibility was checked by HTMLInputElement::value
3301         emptiness. It should be innerTextValue emptiness because it is
3302         possible that a number field has empty HTMLInputElement::value and
3303         non-empty innerTextValue.
3304
3305         Tests: fast/forms/number/number-placeholder-with-unacceptable-value.html
3306
3307         * html/HTMLInputElement.cpp:
3308         (WebCore::HTMLInputElement::updateInnerTextValue):
3309         We should update placeholder visiblity when the innerTextValue is updated.
3310         (WebCore::HTMLInputElement::subtreeHasChanged): ditto.
3311         (WebCore::HTMLInputElement::setSuggestedValue):
3312         We don't need to call updatePlaceholderVisibility() because updateInnerTextValue() calls it.
3313         (WebCore::HTMLInputElement::setValueFromRenderer):
3314         We don't need to call updatePlaceholderVisibility() because subtreeHasChanged() calls it.
3315         * html/HTMLInputElement.h: Checks innerTextValue emptiness.
3316         * html/TextFieldInputType.cpp:
3317         (WebCore::TextFieldInputType::setValue):
3318         We don't need to call updatePlaceholderVisibility() because updateInnerTextValue() calls it.
3319
3320 2011-12-01  Alok Priyadarshi  <alokp@chromium.org>
3321
3322         [chromium] CCLayerQuad does not return FloatQuad in correct order
3323         https://bugs.webkit.org/show_bug.cgi?id=73247
3324
3325         Reviewed by James Robinson.
3326
3327         Returned the FloatQuad coordinates in correct order.
3328         
3329         Covered by new unit tests in CCLayerQuadTest.cpp.
3330
3331         * platform/graphics/chromium/cc/CCLayerQuad.cpp:
3332         (WebCore::CCLayerQuad::floatQuad):
3333
3334 2011-12-02  Sheriff Bot  <webkit.review.bot@gmail.com>
3335
3336         Unreviewed, rolling out r101833.
3337         http://trac.webkit.org/changeset/101833
3338         https://bugs.webkit.org/show_bug.cgi?id=73678
3339
3340         test_expectations file invalid: run Tools/Scripts/new-run-
3341         webkit-tests --lint-test-files (Requested by scheib on
3342         #webkit).
3343
3344         * platform/graphics/chromium/cc/CCLayerQuad.cpp:
3345         (WebCore::CCLayerQuad::floatQuad):
3346
3347 2011-12-02  Alok Priyadarshi  <alokp@chromium.org>
3348
3349         [chromium] CCLayerQuad does not return FloatQuad in correct orientation
3350         https://bugs.webkit.org/show_bug.cgi?id=73247
3351
3352         Reviewed by James Robinson.
3353
3354         Returned the FloatQuad coordinates in correct order.
3355         
3356         Covered by new unit tests in CCLayerQuadTest.cpp.
3357
3358         * platform/graphics/chromium/cc/CCLayerQuad.cpp:
3359         (WebCore::CCLayerQuad::floatQuad):
3360
3361 2011-12-01  Dmitry Lomov  <dslomov@google.com>
3362
3363         https://bugs.webkit.org/show_bug.cgi?id=73589
3364         [V8][Chromium] Adjust postMessage to the latest "implementation-ready" spec.
3365         - postMessage should support transfer of MessagePorts
3366         - the order of arguments to Window::postMessage and Window::webkitPostMessage should be (msg, targetOrigin [, transfer])
3367
3368         Reviewed by David Levin.
3369
3370         * bindings/v8/custom/V8DOMWindowCustom.cpp:
3371         (WebCore::handlePostMessageCallback):
3372         * bindings/v8/custom/V8DedicatedWorkerContextCustom.cpp:
3373         (WebCore::handlePostMessageCallback):
3374         * bindings/v8/custom/V8MessagePortCustom.cpp:
3375         (WebCore::handlePostMessageCallback):
3376         * bindings/v8/custom/V8WorkerCustom.cpp:
3377         (WebCore::handlePostMessageCallback):
3378
3379 2011-12-02  Enrica Casucci  <enrica@apple.com>
3380
3381         https://bugs.webkit.org/show_bug.cgi?id=73497
3382         This is a followup to the patch submitted for the bug above.
3383         Tha patch was landed in r101575 and I missed to make one of the changes
3384         suggested by the reviewer that had pointed out that the code was still
3385         making use of the deprecatedNode method.
3386
3387         Unreviewed.
3388
3389         * editing/DeleteSelectionCommand.cpp:
3390         (WebCore::DeleteSelectionCommand::removeRedundantBlocks): Changed deprecatedNode to containerNode.
3391
3392 2011-12-02  Tom Sepez  <tsepez@chromium.org>
3393
3394         Content-security-policy script-src not enforced on workers.
3395         https://bugs.webkit.org/show_bug.cgi?id=73240
3396
3397         Reviewed by Adam Barth.
3398
3399         Add a CSP check in AbstractWorker.cpp as part of resolving URL.
3400         
3401         Test: http/tests/security/contentSecurityPolicy/worker-script-src.html
3402
3403         * workers/AbstractWorker.cpp:
3404         (WebCore::AbstractWorker::resolveURL):
3405
3406 2011-12-02  Daniel Cheng  <dcheng@chromium.org>
3407
3408         [chromium] Add plumbing for supporting custom MIME types in DataTransfer.
3409         https://bugs.webkit.org/show_bug.cgi?id=73594
3410
3411         Reviewed by David Levin.
3412
3413         Tests: editing/pasteboard/clipboard-customData.html
3414                fast/events/drag-customData.html
3415
3416         * platform/chromium/ChromiumDataObject.cpp:
3417         (WebCore::ChromiumDataObject::types):
3418         (WebCore::ChromiumDataObject::getData):
3419         (WebCore::ChromiumDataObject::setData):
3420         * platform/chromium/ChromiumDataObject.h:
3421         (WebCore::ChromiumDataObject::customData):
3422         * platform/chromium/PlatformSupport.h:
3423
3424 2011-12-02  Darin Adler  <darin@apple.com>
3425
3426         [Mac] Form stream data structures still not threadsafe
3427         https://bugs.webkit.org/show_bug.cgi?id=73674
3428
3429         Reviewed by Anders Carlsson.
3430
3431         * platform/network/mac/FormDataStreamMac.mm:
3432         (WebCore::streamFieldsMapMutex): Added. 
3433         (WebCore::associateStreamWithResourceHandle): Use streamFieldsMapMutex.
3434         (WebCore::formCreate): Ditto.
3435         (WebCore::formFinalize): Ditto.
3436         (WebCore::httpBodyFromStream): Ditto.
3437
3438 2011-12-02  Joshua Bell  <jsbell@chromium.org>
3439
3440         IndexedDB: Rename "multientry" to "multiEntry" per spec change
3441         https://bugs.webkit.org/show_bug.cgi?id=73578
3442
3443         Reviewed by Darin Fisher.
3444
3445         * storage/IDBIndex.h:
3446         (WebCore::IDBIndex::multiEntry):
3447         * storage/IDBIndex.idl:
3448         * storage/IDBIndexBackendImpl.cpp:
3449         (WebCore::IDBIndexBackendImpl::IDBIndexBackendImpl):
3450         * storage/IDBIndexBackendImpl.h:
3451         (WebCore::IDBIndexBackendImpl::create):
3452         (WebCore::IDBIndexBackendImpl::multiEntry):
3453         * storage/IDBIndexBackendInterface.h:
3454         * storage/IDBLevelDBBackingStore.cpp:
3455         (WebCore::IDBLevelDBBackingStore::getIndexes):
3456         (WebCore::IDBLevelDBBackingStore::createIndex):
3457         * storage/IDBLevelDBCoding.cpp:
3458         * storage/IDBObjectStore.cpp:
3459         (WebCore::IDBObjectStore::createIndex):
3460         * storage/IDBObjectStoreBackendImpl.cpp:
3461         (WebCore::IDBObjectStoreBackendImpl::putInternal):
3462         (WebCore::IDBObjectStoreBackendImpl::createIndex):
3463         (WebCore::IDBObjectStoreBackendImpl::createIndexInternal):
3464         (WebCore::IDBObjectStoreBackendImpl::loadIndexes):
3465         * storage/IDBObjectStoreBackendImpl.h:
3466         * storage/IDBObjectStoreBackendInterface.h:
3467
3468 2011-12-02  Sheriff Bot  <webkit.review.bot@gmail.com>
3469
3470         Unreviewed, rolling out r101805.
3471         http://trac.webkit.org/changeset/101805
3472         https://bugs.webkit.org/show_bug.cgi?id=73670
3473
3474         Many canvas tests started failing due to the isEmpty change
3475         (Requested by darin on #webkit).
3476
3477         * platform/graphics/cg/PathCG.cpp:
3478         (WebCore::Path::boundingRect):
3479         (WebCore::Path::fastBoundingRect):
3480         (WebCore::Path::isEmpty):
3481
3482 2011-12-01  Darin Adler  <darin@apple.com>
3483
3484         [Mac] Reference count threading violation in FormDataStreamMac.mm
3485         https://bugs.webkit.org/show_bug.cgi?id=73627
3486
3487         Reviewed by Sam Weinig.
3488
3489         Shows up as a crash during existing layout test runs so no new tests are required.
3490
3491         * platform/network/mac/FormDataStreamMac.mm:
3492         (WebCore::streamFieldsMap): Replaced getStreamFormDataMap with this.
3493         Use an NSMapTable instead of a HashMap because we need to remove items from this
3494         on a non-main thread.
3495         (WebCore::associateStreamWithResourceHandle): Use NSMapGet instead of
3496         HashMap::contains here.
3497         (WebCore::formCreate): FormStreamFields now stores a RefPtr to the form data.
3498         Added the code to fill that in. Did it in a more modern way to avoid the leakRef
3499         and adoptRef that were used before. Replaced the code that set up the stream
3500         form data map entry with code that sets an entry in the streamFieldsMap.
3501         (WebCore::formFinishFinalizationOnMainThread): Added. Contains the work of
3502         finalization that must be done on the main thread, specifically, destroying the
3503         fields structure that contains objects with RefPtr in them. We can't touch these
3504         reference counts on non-main threads.
3505         (WebCore::formFinalize): Changed this to use NSMapRemove on the streamFieldsMap.
3506         Added a callOnMainThread to finish the finalization.
3507         (WebCore::setHTTPBody): Removed the leakRef, no longer needed, that used to be
3508         balanced by an adoptRef in formCreate.
3509         (WebCore::httpBodyFromStream): Changed to use NSMapGet.
3510
3511 2011-12-02  Antti Koivisto  <antti@apple.com>
3512
3513         https://bugs.webkit.org/show_bug.cgi?id=73520
3514         REGRESSION(r101524): Article titles invisible until hover on blaze.com
3515
3516         Reviewed by Darin Adler.
3517         
3518         We need to invalidate the matched declaration cache when new web fonts are loaded.
3519         Fonts in the cached RenderStyles may not be valid anymore.
3520         
3521         Also renamed m_matchStyleDeclarationCache -> m_matchedStyleDeclarationCache.
3522         
3523         Test reduction by the Reduction Fairy (aka kling).
3524
3525         Test: fast/css/font-face-cache-bug.html
3526
3527         * css/CSSFontSelector.cpp:
3528         (WebCore::CSSFontSelector::dispatchInvalidationCallbacks):
3529         * css/CSSStyleSelector.cpp:
3530         (WebCore::CSSStyleSelector::findFromMatchedDeclarationCache):
3531         (WebCore::CSSStyleSelector::addToMatchedDeclarationCache):
3532         (WebCore::CSSStyleSelector::invalidateMatchedDeclarationCache):
3533         * css/CSSStyleSelector.h:
3534
3535 2011-11-02  Jer Noble  <jer.noble@apple.com>
3536
3537         MediaControls should use MediaController if present.
3538         https://bugs.webkit.org/show_bug.cgi?id=71410
3539
3540         Reviewed by Eric Carlson.
3541
3542         No new tests; covered by existing tests.
3543
3544         Add support for individual media controls to control the MediaController of their associated
3545         HTMLMediaElement, if present.
3546
3547         The video spec requires that UA provided media controls be implemented in terms of their 
3548         HTMLMediaElement's MediaController, if present.  So for each of the media controls, modify 
3549         their constructor to take a Document* instead of an HTMLMediaElement, and add an setter
3550         taking a MediaControllerInterface.
3551
3552         Now that MediaControls have an abstract interface instead of an HTMLMediaElement, use toParentMediaElement
3553         to find the controllingVideoElement.
3554         * accessibility/AccessibilityMediaControls.cpp:
3555         (WebCore::AccessibilityMediaControlsContainer::controllingVideoElement):
3556
3557         Pass the MediaController or the HTMLMediaElement when setting up the elements controls.
3558         * html/HTMLMediaElement.cpp:
3559         (WebCore::HTMLMediaElement::createMediaControls):
3560         (WebCore::HTMLMediaElement::setMediaController):
3561
3562         The following functions have only constructor changes:
3563         * html/shadow/MediaControlElements.cpp:
3564         (WebCore::MediaControlElement::MediaControlElement):
3565         (WebCore::MediaControlPanelElement::MediaControlPanelElement):
3566         (WebCore::MediaControlPanelElement::create):
3567         (WebCore::MediaControlTimelineContainerElement::MediaControlTimelineContainerElement):
3568         (WebCore::MediaControlTimelineContainerElement::create):
3569         (WebCore::MediaControlVolumeSliderContainerElement::MediaControlVolumeSliderContainerElement):
3570         (WebCore::MediaControlVolumeSliderContainerElement::create):
3571         (WebCore::MediaControlStatusDisplayElement::MediaControlStatusDisplayElement):
3572         (WebCore::MediaControlStatusDisplayElement::create):
3573         (WebCore::MediaControlInputElement::MediaControlInputElement):
3574         (WebCore::MediaControlMuteButtonElement::MediaControlMuteButtonElement):
3575         (WebCore::MediaControlMuteButtonElement::defaultEventHandler):
3576         (WebCore::MediaControlPanelMuteButtonElement::MediaControlPanelMuteButtonElement):
3577         (WebCore::MediaControlPanelMuteButtonElement::create):
3578         (WebCore::MediaControlVolumeSliderMuteButtonElement::MediaControlVolumeSliderMuteButtonElement):
3579         (WebCore::MediaControlVolumeSliderMuteButtonElement::create):
3580         (WebCore::MediaControlPlayButtonElement::MediaControlPlayButtonElement):
3581         (WebCore::MediaControlPlayButtonElement::create):
3582         (WebCore::MediaControlSeekButtonElement::MediaControlSeekButtonElement):
3583         (WebCore::MediaControlSeekForwardButtonElement::MediaControlSeekForwardButtonElement):
3584         (WebCore::MediaControlSeekForwardButtonElement::create):
3585         (WebCore::MediaControlSeekBackButtonElement::MediaControlSeekBackButtonElement):
3586         (WebCore::MediaControlSeekBackButtonElement::create):
3587         (WebCore::MediaControlRewindButtonElement::MediaControlRewindButtonElement):
3588         (WebCore::MediaControlRewindButtonElement::create):
3589         (WebCore::MediaControlReturnToRealtimeButtonElement::MediaControlReturnToRealtimeButtonElement):
3590         (WebCore::MediaControlReturnToRealtimeButtonElement::create):
3591         (WebCore::MediaControlToggleClosedCaptionsButtonElement::MediaControlToggleClosedCaptionsButtonElement):
3592         (WebCore::MediaControlToggleClosedCaptionsButtonElement::create):
3593         (WebCore::MediaControlTimelineElement::MediaControlTimelineElement):
3594         (WebCore::MediaControlTimelineElement::create):
3595         (WebCore::MediaControlVolumeSliderElement::MediaControlVolumeSliderElement):
3596         (WebCore::MediaControlVolumeSliderElement::create):
3597         (WebCore::MediaControlVolumeSliderElement::defaultEventHandler):
3598         (WebCore::MediaControlFullscreenVolumeSliderElement::MediaControlFullscreenVolumeSliderElement):
3599         (WebCore::MediaControlFullscreenVolumeSliderElement::create):
3600         (WebCore::MediaControlFullscreenButtonElement::MediaControlFullscreenButtonElement):
3601         (WebCore::MediaControlFullscreenButtonElement::create):
3602         (WebCore::MediaControlFullscreenVolumeMinButtonElement::MediaControlFullscreenVolumeMinButtonElement):
3603         (WebCore::MediaControlFullscreenVolumeMinButtonElement::create):
3604         (WebCore::MediaControlFullscreenVolumeMaxButtonElement::MediaControlFullscreenVolumeMaxButtonElement):
3605         (WebCore::MediaControlFullscreenVolumeMaxButtonElement::create):
3606         (WebCore::MediaControlTimeDisplayElement::MediaControlTimeDisplayElement):
3607         (WebCore::MediaControlTimeRemainingDisplayElement::create):
3608         (WebCore::MediaControlTimeRemainingDisplayElement::MediaControlTimeRemainingDisplayElement):
3609         (WebCore::MediaControlCurrentTimeDisplayElement::create):
3610         (WebCore::MediaControlCurrentTimeDisplayElement::MediaControlCurrentTimeDisplayElement):
3611         * html/shadow/MediaControlRootElement.cpp:
3612         (WebCore::MediaControlRootElement::MediaControlRootElement):
3613         (WebCore::MediaControls::create):
3614         (WebCore::MediaControlRootElement::create):
3615         * html/shadow/MediaControlRootElement.h:
3616         * html/shadow/MediaControls.cpp:
3617         (WebCore::MediaControls::MediaControls):
3618         * html/shadow/MediaControls.h:
3619
3620         The following functions now call MediaControllerInterface instead of HTMLMediaElement directly:
3621         * html/shadow/MediaControlElements.h:
3622         (WebCore::MediaControlStatusDisplayElement::update):
3623         (WebCore::MediaControlMuteButtonElement::updateDisplayType):
3624         (WebCore::MediaControlPlayButtonElement::defaultEventHandler):
3625         (WebCore::MediaControlPlayButtonElement::updateDisplayType):
3626         (WebCore::MediaControlSeekButtonElement::startTimer):
3627         (WebCore::MediaControlSeekButtonElement::stopTimer):
3628         (WebCore::MediaControlSeekButtonElement::nextRate):
3629         (WebCore::MediaControlSeekButtonElement::seekTimerFired):
3630         (WebCore::MediaControlRewindButtonElement::defaultEventHandler):
3631         (WebCore::MediaControlReturnToRealtimeButtonElement::defaultEventHandler):
3632         (WebCore::MediaControlToggleClosedCaptionsButtonElement::defaultEventHandler):
3633         (WebCore::MediaControlToggleClosedCaptionsButtonElement::updateDisplayType):
3634         (WebCore::MediaControlTimelineElement::defaultEventHandler):
3635         (WebCore::MediaControlFullscreenButtonElement::defaultEventHandler):
3636         (WebCore::MediaControlFullscreenVolumeMinButtonElement::defaultEventHandler):
3637         (WebCore::MediaControlFullscreenVolumeMaxButtonElement::defaultEventHandler):
3638         * html/shadow/MediaControlRootElement.cpp:
3639         (WebCore::MediaControlRootElement::reset):
3640         (WebCore::MediaControlRootElement::playbackStarted):
3641         (WebCore::MediaControlRootElement::playbackProgressed):
3642         (WebCore::MediaControlRootElement::playbackStopped):
3643         (WebCore::MediaControlRootElement::updateTimeDisplay):
3644         (WebCore::MediaControlRootElement::loadedMetadata):
3645         (WebCore::MediaControlRootElement::changedVolume):
3646         (WebCore::MediaControlRootElement::enteredFullscreen):
3647         (WebCore::MediaControlRootElement::showVolumeSlider):
3648         (WebCore::MediaControlRootElement::defaultEventHandler):
3649         (WebCore::MediaControlRootElement::startHideFullscreenControlsTimer):
3650         (WebCore::MediaControlRootElement::hideFullscreenControlsTimerFired):
3651         * html/shadow/MediaControlRootElementChromium.cpp:
3652         (WebCore::MediaControlRootElementChromium::MediaControlRootElementChromium):
3653         (WebCore::MediaControls::create):
3654         (WebCore::MediaControlRootElementChromium::create):
3655         (WebCore::MediaControlRootElementChromium::reset):
3656         (WebCore::MediaControlRootElementChromium::playbackStarted):
3657         (WebCore::MediaControlRootElementChromium::playbackProgressed):
3658         (WebCore::MediaControlRootElementChromium::playbackStopped):
3659         (WebCore::MediaControlRootElementChromium::updateTimeDisplay):
3660         (WebCore::MediaControlRootElementChromium::defaultEventHandler):
3661         (WebCore::MediaControlRootElementChromium::changedVolume):
3662         (WebCore::MediaControlRootElementChromium::showVolumeSlider):
3663         * html/shadow/MediaControlRootElementChromium.h:
3664
3665         The following functions set the current MediaControllerInterface.
3666         * html/shadow/MediaControlRootElement.cpp:
3667         (WebCore::MediaControlRootElement::setMediaController):
3668         * html/shadow/MediaControlElements.h:
3669         (WebCore::MediaControlElement::setMediaController):
3670         (WebCore::MediaControlElement::mediaController):
3671         (WebCore::MediaControlInputElement::setMediaController):
3672         (WebCore::MediaControlInputElement::mediaController):
3673         * html/shadow/MediaControlRootElementChromium.cpp:
3674         (WebCore::MediaControlRootElementChromium::setMediaController):
3675
3676 2011-12-02  Stephen Chenney  <schenney@chromium.org>
3677
3678         REGRESSION (r91125): Polyline tool in google docs is broken
3679         https://bugs.webkit.org/show_bug.cgi?id=65796
3680
3681         Reviewed by Darin Adler.
3682
3683         Work around a bug in CoreGraphics, that caused incorrect bounds for paths
3684         consisting only of move-to elements. This causes problems in SVG, when the enormous
3685         bounds prevented the drawing of things behind.
3686
3687         Tests: svg/custom/path-moveto-only-rendering.svg
3688                svg/custom/subpaths-moveto-only-rendering.svg
3689
3690         * platform/graphics/cg/PathCG.cpp:
3691         (WebCore::PathIsEmptyOrSingleMoveTester::PathIsEmptyOrSingleMoveTester): Class to
3692         test for isEmpty accoridng ot the same rules as other platforms.
3693         (WebCore::PathIsEmptyOrSingleMoveTester::isEmpty): Query the result
3694         (WebCore::PathIsEmptyOrSingleMoveTester::testPathElement): Path iterator method
3695         (WebCore::PathHasOnlyMoveToTester::PathHasOnlyMoveToTester): Class to test whether a
3696         path contains only move-to elements, and hence should have null bounds.
3697         (WebCore::PathHasOnlyMoveToTester::hasOnlyMoveTo): Query the result
3698         (WebCore::PathHasOnlyMoveToTester::testPathElement): Path iterator method.
3699         (WebCore::Path::boundingRect): Modified to check for move-to only paths
3700         (WebCore::Path::fastBoundingRect): Modified to check for move-to only paths
3701         (WebCore::Path::isEmpty): Now uses the method that matches other platforms.
3702
3703 2011-12-02  Sheriff Bot  <webkit.review.bot@gmail.com>
3704
3705         Unreviewed, rolling out r101794.
3706         http://trac.webkit.org/changeset/101794
3707         https://bugs.webkit.org/show_bug.cgi?id=73656
3708
3709         Broke win build (Requested by vsevik on #webkit).
3710
3711         * bindings/js/ScriptCallStackFactory.cpp:
3712         * bindings/js/ScriptCallStackFactory.h:
3713         * bindings/scripts/CodeGeneratorJS.pm:
3714         (GenerateParametersCheck):
3715         * bindings/scripts/CodeGeneratorV8.pm:
3716         (GenerateFunctionCallback):
3717         * bindings/scripts/test/JS/JSTestObj.cpp:
3718         (WebCore::jsTestObjPrototypeFunctionCustomArgsAndException):
3719         * bindings/scripts/test/V8/V8TestObj.cpp:
3720         (WebCore::TestObjInternal::customArgsAndExceptionCallback):
3721         * bindings/v8/ScriptCallStackFactory.cpp:
3722         * bindings/v8/ScriptCallStackFactory.h:
3723         * inspector/InspectorInstrumentation.cpp:
3724         * inspector/InspectorInstrumentation.h:
3725         * inspector/WorkerInspectorController.h:
3726         * page/Console.cpp:
3727         (WebCore::Console::shouldCaptureFullStackTrace):
3728         * page/Console.h:
3729
3730 2011-12-02  Raphael Kubo da Costa  <kubo@profusion.mobi>
3731
3732         Unreviewed, revert r101347.
3733         https://bugs.webkit.org/show_bug.cgi?id=73580
3734
3735         It breaks the linking of Tools/ targets due to missing functions.
3736
3737         * PlatformEfl.cmake:
3738         * platform/graphics/GraphicsLayer.cpp:
3739         * platform/graphics/GraphicsLayer.h:
3740         * platform/graphics/efl/GraphicsLayerEfl.cpp: Added.
3741         (WebCore::GraphicsLayer::create):
3742         (WebCore::GraphicsLayerEfl::GraphicsLayerEfl):
3743         (WebCore::GraphicsLayerEfl::~GraphicsLayerEfl):
3744         (WebCore::GraphicsLayerEfl::setNeedsDisplay):
3745         (WebCore::GraphicsLayerEfl::setNeedsDisplayInRect):
3746         * platform/graphics/efl/GraphicsLayerEfl.h: Added.
3747         * platform/graphics/texmap/TextureMapperNode.cpp:
3748         (WebCore::solveCubicBezierFunction):
3749         (WebCore::solveStepsFunction):
3750
3751 2011-12-01  Vsevolod Vlasov  <vsevik@chromium.org>
3752
3753         Web Inspector: Extract default call stack creation and check for front-end from console.
3754         https://bugs.webkit.org/show_bug.cgi?id=73566
3755
3756         Reviewed by Yury Semikhatsky.
3757
3758         * bindings/js/ScriptCallStackFactory.cpp:
3759         (WebCore::createScriptCallStack):
3760         * bindings/js/ScriptCallStackFactory.h:
3761         * bindings/scripts/CodeGeneratorJS.pm:
3762         (GenerateParametersCheck):
3763         * bindings/scripts/CodeGeneratorV8.pm:
3764         (GenerateFunctionCallback):
3765         * bindings/scripts/test/JS/JSTestObj.cpp:
3766         (WebCore::jsTestObjPrototypeFunctionCustomArgsAndException):
3767         * bindings/scripts/test/V8/V8TestObj.cpp:
3768         (WebCore::TestObjInternal::customArgsAndExceptionCallback):
3769         * bindings/v8/ScriptCallStackFactory.cpp:
3770         (WebCore::createScriptCallStack):
3771         * bindings/v8/ScriptCallStackFactory.h:
3772         * inspector/InspectorInstrumentation.cpp:
3773         (WebCore::InspectorInstrumentation::hasFrontendForScriptContext):
3774         * inspector/InspectorInstrumentation.h:
3775         (WebCore::InspectorInstrumentation::hasFrontendForScriptContext):
3776         * inspector/WorkerInspectorController.h:
3777         (WebCore::WorkerInspectorController::hasFrontend):
3778         * page/Console.cpp:
3779         * page/Console.h:
3780
3781 2011-12-02  Gavin Peters  <gavinp@chromium.org>
3782
3783         Remove instrumentation tracking a fixed bug
3784         https://bugs.webkit.org/show_bug.cgi?id=73471
3785
3786         The underlying bug is fixed (bug 72068), and this instrumentation was intrusive and using
3787         memory, plus the conditional compilation made me sad.
3788
3789         Reviewed by Nate Chapin.
3790
3791         No new tests.
3792
3793         * dom/ScriptElement.cpp:
3794         (WebCore::ScriptElement::ScriptElement):
3795         (WebCore::ScriptElement::requestScript):
3796         (WebCore::ScriptElement::stopLoadRequest):
3797         (WebCore::ScriptElement::notifyFinished):
3798         * dom/ScriptElement.h:
3799         * dom/ScriptRunner.cpp:
3800         (WebCore::ScriptRunner::queueScriptForExecution):
3801
3802 2011-12-02  Vsevolod Vlasov  <vsevik@chromium.org>
3803
3804         Web Inspector: Split view works weirdly in network panel when resizing, showing/hiding main element.
3805         https://bugs.webkit.org/show_bug.cgi?id=73650
3806
3807         Reviewed by Pavel Feldman.
3808
3809         * inspector/front-end/SplitView.js:
3810         (WebInspector.SplitView.prototype._updateResizer):
3811         (WebInspector.SplitView.prototype.hideMainElement):
3812         (WebInspector.SplitView.prototype.showMainElement):
3813         (WebInspector.SplitView.prototype.onResize):
3814         (WebInspector.SplitView.prototype._restoreSidebarWidth):
3815
3816 2011-12-02  Sheriff Bot  <webkit.review.bot@gmail.com>
3817
3818         Unreviewed, rolling out r101783.
3819         http://trac.webkit.org/changeset/101783
3820         https://bugs.webkit.org/show_bug.cgi?id=73652
3821
3822         Broke chromium win build. (Requested by vsevik on #webkit).
3823
3824         * WebCore.gyp/WebCore.gyp:
3825         * WebCore.gyp/scripts/action_derivedsourcesallinone.py:
3826         (main):
3827         * WebCore.gypi:
3828         * bindings/scripts/generate-bindings.pl:
3829         * page/DOMWindow.idl:
3830         * webaudio/DOMWindowWebAudio.idl: Removed.
3831
3832 2011-11-28  Alexander Pavlov  <apavlov@chromium.org>
3833
3834         Inline non-replaced elements are reported to have zero width and height
3835         https://bugs.webkit.org/show_bug.cgi?id=61117
3836
3837         Reviewed by Antti Koivisto.
3838
3839         According to http://www.w3.org/TR/CSS21/visudet.html, the "width" and "height" properties
3840         do not apply for inline non-replaced elements and should have their initial value of "auto"
3841         as their computed values.
3842
3843         * css/CSSComputedStyleDeclaration.cpp:
3844         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
3845
3846 2011-12-02  Sami Kyostila  <skyostil@chromium.org>
3847
3848         [chromium] Make CCInputHandler scrolling stateful
3849         https://bugs.webkit.org/show_bug.cgi?id=73345
3850
3851         This change makes the scrolling part of CCInputHandler stateful by
3852         replacing scrollRootLayer() with scrollBegin(), scrollBy() and
3853         scrollEnd(). This is done in preparation for scrollable sublayers.
3854         Specifically, scrollBegin() will allow CCLayerTreeHostImpl to perform
3855         input event hit testing to find the layer to be scrolled.
3856
3857         Reviewed by Steve Block.
3858
3859         Tested in CCLayerTreeHostImplTest.
3860
3861         * platform/graphics/chromium/cc/CCInputHandler.h:
3862         * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
3863         (WebCore::CCLayerTreeHostImpl::CCLayerTreeHostImpl):
3864         (WebCore::CCLayerTreeHostImpl::currentTimeMs):
3865         (WebCore::CCLayerTreeHostImpl::setNeedsRedraw):
3866         (WebCore::findInnermostScrollableLayerAtPoint):
3867         (WebCore::CCLayerTreeHostImpl::scrollBegin):
3868         (WebCore::CCLayerTreeHostImpl::scrollBy):
3869         * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
3870
3871 2011-12-02  Kentaro Hara  <haraken@chromium.org>
3872
3873         Use the [Supplemental] IDL for webaudio attributes in Chromium
3874         https://bugs.webkit.org/show_bug.cgi?id=73394
3875
3876         Reviewed by Adam Barth.
3877
3878         - Overview: Using the [Supplemental] IDL, this patch moves the attribute
3879         declarations of webaudio from DOMWindow.idl into a new IDL file
3880         webaudio/DOMWindowWebAudio.idl, which helps make webaudio a self-contained
3881         feature (aka a module).
3882
3883         - This patch changes the build flow of WebCore.gyp as follows:
3884
3885             Previous build flow:
3886                 foreach $idl (all IDL files) {
3887                     generate-bindings.pl depends on $idl;
3888                     generate-bindings.pl reads $idl;
3889                     generate-bindings.pl generates .h and .cpp files for $idl;
3890                 }
3891
3892             New build flow (See the discussions in bug 72138 for more details):
3893                 resolve-supplemental.pl depends on all IDL files;
3894                 resolve-supplemental.pl reads all IDL files;
3895                 resolve-supplemental.pl resolves the dependency of [Supplemental=XXXX];
3896                 resolve-supplemental.pl outputs supplemental_dependency.tmp;
3897                 foreach $idl (all IDL files) {
3898                     generate-bindings.pl depends on $idl and supplemental_dependency.tmp;
3899                     generate-bindings.pl reads $idl;
3900                     generate-bindings.pl reads supplemental_dependency.tmp;
3901                     generate-bindings.pl generates .h and .cpp files for $idl, including all attributes in IDL files whilementing $idl;
3902                 }
3903
3904         - This patch introduces a temporary IDL, [Supplemented]. The [Supplemented] IDL
3905         will be removed after build scripts for all platforms support the [Supplemental] IDL.
3906         The motivation for the [Supplemented] IDL is as follows:
3907
3908         In order to support the [Supplemental] IDL, we need to
3909         (1) run resolve-supplemental.pl and generate supplemental_dependency.tmp
3910         (2) and run generate-bindings.pl with the supplemental_dependency.tmp.
3911
3912         This build flow requires a change on the following build scripts,
3913         but changing all the build scripts all at once without any regression is too difficult:
3914
3915             - DerivedSources.make
3916             - DerivedSources.pri
3917             - GNUmakefile.am
3918             - PlatformBlackBerry.cmake
3919             - UseJSC.cmake
3920             - UseV8.cmake
3921             - WebCore.vcproj/MigrateScripts
3922             - WebCore.vcproj/WebCore.vcproj
3923             - bindings/gobject/GNUmakefile.am
3924             - WebCore.gyp/WebCore.gyp
3925
3926         Thus, we are planning to change the build scripts one by one, which implies that
3927         we need to allow the temporary state in which some build scripts support [Supplemental] IDL
3928         but others do not. To accomplish this, we introduce a temporary IDL, [Supplemented].
3929         The [Supplemented] IDL on an attribute means that the attribute is marked with [Supplemental]
3930         in another IDL file somewhere, like this:
3931
3932             DOMWindowWebAudio.idl:
3933                 interface [
3934                     Supplemental=DOMWindow
3935                 ] DOMWindowWebAudio {
3936                     attribute attr1;
3937                     attribute attr2;
3938                 };
3939
3940             DOMWindow.idl:
3941                 interface [
3942                 ] DOMWindow {
3943                     attribute [Supplemented] attr1; // This line will be removed after all build scripts support the [Su IDL
3944                     attribute [Supplemented] attr2; // This line will be removed after all build scripts support the [Su IDL.
3945                     attribute attr3;
3946                     attribute attr4;
3947                 };
3948
3949         Assuming these IDL files, this patch implements the following logic in generate-bindings.pl:
3950
3951             - If a given build script supports the [Supplemental] IDL,
3952             generate-bindings.pl ignores all attributes with the [Supplemented] IDL.
3953             - Otherwise, generate-bindings.pl treats all attributes with the [Supplemented] IDL
3954             as normal attributes and instead ignores all attributes with the [Supplemental] IDL
3955             (i.e. generate-bindings.pl generates nothing from the IDL file with the [Supplemental] IDL).
3956
3957         Tests: webaudio/*
3958
3959         * WebCore.gyp/WebCore.gyp: Describes the build flow that I described above.
3960         * WebCore.gyp/scripts/action_derivedsourcesallinone.py:
3961         (main): Reads the IDL file names from the input file (i.e. supplemental_dependency.tmp), which are described at the first column of each line in the input file.
3962         * WebCore.gypi: Added DOMWindowWebAudio.idl.
3963         * bindings/scripts/generate-bindings.pl: As a temporary solution, if the platform does not support the [Supplemental] IDL, the perl script ignores the [Supplemental] IDL and instead uses the [Supplemented] IDL. Otherwise, the perl script ignores the [Supplemented] IDL and instead uses the [Supplemental] IDL.
3964         * page/DOMWindow.idl: Added the [Supplemented] IDL to webaudio-related attributes. As I described above, the [Supplemented] IDL will be removed after all platforms support the [Supplemental] IDL.
3965         * webaudio/DOMWindowWebAudio.idl: Added. Describes the [Supplemental=DOMWindow] IDL. The attributes in this IDL file should be treated as if they are written in DOMWindow.idl.
3966
3967 2011-12-02  Vsevolod Vlasov  <vsevik@chromium.org>
3968
3969         Web Inspector: Network panel row highlighting does not work.
3970         https://bugs.webkit.org/show_bug.cgi?id=73644
3971
3972         Reviewed by Pavel Feldman.
3973
3974         * inspector/front-end/networkLogView.css:
3975         (.network-log-grid tr.highlighted-row):
3976         (from):
3977         (to):
3978
3979 2011-12-02  Pavel Feldman  <pfeldman@google.com>
3980
3981         Not reviewed: remove console.timeStamp from the inspector backend dispatcher.
3982
3983         * inspector/front-end/InspectorBackend.js:
3984         (InspectorBackendClass.prototype.sendMessageObjectToBackend):
3985
3986 2011-12-02  Hajime Morrita  <morrita@chromium.org>
3987
3988         Unreviewed, rolling out r101751 and r101775.
3989         http://trac.webkit.org/changeset/101751
3990         http://trac.webkit.org/changeset/101775
3991         https://bugs.webkit.org/show_bug.cgi?id=73191
3992
3993         breaks Windows build
3994
3995         * ForwardingHeaders/runtime/JSExportMacros.h: Removed.
3996         * ForwardingHeaders/wtf/ExportMacros.h: Removed.
3997         * WebCore.vcproj/QTMovieWinCommon.vsprops:
3998         * WebCore.xcodeproj/project.pbxproj:
3999         * config.h:
4000         * platform/PlatformExportMacros.h: Removed.
4001
4002 2011-12-02  Pavel Feldman  <pfeldman@google.com>
4003
4004         Web Inspector: introduce backend stub generation from JSON for the standalone development / remote front-ends.
4005         https://bugs.webkit.org/show_bug.cgi?id=73636
4006
4007         Reviewed by Yury Semikhatsky.
4008
4009         * inspector/front-end/DOMStorage.js:
4010         * inspector/front-end/Database.js:
4011         * inspector/front-end/InspectorBackend.js:
4012         (InspectorBackendClass):
4013         (InspectorBackendClass.prototype.registerCommand):
4014         (InspectorBackendClass.prototype.registerEvent):
4015         (InspectorBackendClass.prototype.runAfterPendingDispatches):
4016         (InspectorBackendClass.prototype.loadFromJSONIfNeeded):
4017         * inspector/front-end/TimelineManager.js:
4018         * inspector/front-end/inspector.js:
4019
4020 2011-12-02  MORITA Hajime  <morrita@google.com>
4021
4022         Unreviewed, another attempt to build fix for r101751:
4023         Adding an include path to make PlatformExportMacros.h visibile from QTMovieWin.
4024
4025         * WebCore.vcproj/QTMovieWinCommon.vsprops:
4026
4027 2011-12-02  Hajime Morrita  <morrita@chromium.org>
4028
4029         Unreviewed, rolling out r101772.
4030         http://trac.webkit.org/changeset/101772
4031
4032         It didn't fix the build failure
4033
4034         * WebCore.vcproj/QTMovieWinCommon.vsprops:
4035
4036 2011-12-02  MORITA Hajime  <morrita@google.com>
4037
4038         Unreviewed attempt to build fix for r101751:
4039         Adding an include path to make PlatformExportMacros.h visibile from QTMovieWin.
4040
4041         * WebCore.vcproj/QTMovieWinCommon.vsprops:
4042
4043 2011-12-01  Andrey Kosyakov  <caseq@chromium.org>
4044
4045         Web Inspector: [Extensions API] pass preferred resource line number to extension's open resource handler
4046         https://bugs.webkit.org/show_bug.cgi?id=73084
4047
4048         Reviewed by Pavel Feldman.
4049
4050         * inspector/front-end/ExtensionAPI.js:
4051         (injectedExtensionAPI.Panels.prototype.setOpenResourceHandler.else.callbackWrapper):
4052         (injectedExtensionAPI.Panels.prototype.setOpenResourceHandler):
4053         * inspector/front-end/ExtensionServer.js:
4054         (WebInspector.ExtensionServer.prototype._handleOpenURL):
4055         * inspector/front-end/HandlerRegistry.js:
4056         (get WebInspector.HandlerRegistry.prototype.set dispatch):
4057         * inspector/front-end/JavaScriptSourceFrame.js:
4058         (WebInspector.JavaScriptSourceFrame.prototype.populateTextAreaContextMenu):
4059         * inspector/front-end/ResourcesPanel.js:
4060         (WebInspector.FrameResourceTreeElement.prototype._handleContextMenuEvent):
4061         * inspector/front-end/SourceFrame.js:
4062         (WebInspector.SourceFrame.prototype.populateLineGutterContextMenu):
4063         (WebInspector.SourceFrame.prototype.populateTextAreaContextMenu):
4064         (WebInspector.TextViewerDelegateForSourceFrame.prototype.populateLineGutterContextMenu):
4065         (WebInspector.TextViewerDelegateForSourceFrame.prototype.populateTextAreaContextMenu):
4066         * inspector/front-end/TextViewer.js:
4067         (WebInspector.TextViewer.prototype._contextMenu):
4068         (WebInspector.TextViewerDelegate.prototype.populateLineGutterContextMenu):
4069         (WebInspector.TextViewerDelegate.prototype.populateTextAreaContextMenu):
4070         * inspector/front-end/externs.js:
4071         (WebInspector.populateResourceContextMenu):
4072         * inspector/front-end/inspector.js:
4073         (WebInspector.populateResourceContextMenu):
4074         (WebInspector._showAnchorLocation):
4075
4076 2011-12-01  Nayan Kumar K  <nayankk@motorola.com>
4077
4078         [GTK] Add compilation options to enable/disable Accelerated Compositing and to choose texture mapper implementation.
4079         https://bugs.webkit.org/show_bug.cgi?id=73458
4080
4081         Reviewed by Martin Robinson.
4082
4083         No new tests added as this patch doesn't affect any functionality.
4084
4085         * GNUmakefile.am: Guard the include files.
4086         * GNUmakefile.list.am: Guard the compilation of few files.