Mac build fix
[WebKit.git] / Source / WebCore / ChangeLog
1 2012-02-21  Adam Roben  <aroben@apple.com>
2
3         Mac build fix
4
5         * WebCore.xcodeproj/project.pbxproj: Mark TextTrack.h and TextTrackCue.h private so that
6         WebKit can include them.
7
8 2012-02-21  Andras Becsi  <andras.becsi@nokia.com>
9
10         [Qt][WK2] Fix the N9 build
11         https://bugs.webkit.org/show_bug.cgi?id=79101
12
13         Reviewed by Noam Rosenthal.
14
15         No new tests needed.
16
17         * platform/graphics/opengl/TextureMapperGL.cpp: Add missing include.
18
19 2012-02-21  Adam Roben  <aroben@apple.com>
20
21         Roll out r108309, r108323, and r108326
22
23         They broke the 32-bit Lion build.
24
25         Original bugs is <http://webkit.org/b/75812> <rdar://problem/10079694>.
26
27         * CMakeLists.txt:
28
29 2012-02-21  Alexander Pavlov  <apavlov@chromium.org>
30
31         Web Inspector: [SuggestBox] textPrompt.css disablement displays garbled suggest box
32         https://bugs.webkit.org/show_bug.cgi?id=79107
33
34         Reviewed by Pavel Feldman.
35
36         * inspector/front-end/TextPrompt.js:
37         (WebInspector.TextPrompt.SuggestBox):
38         (WebInspector.TextPrompt.SuggestBox.prototype.get visible):
39         (WebInspector.TextPrompt.SuggestBox.prototype.hide):
40         (WebInspector.TextPrompt.SuggestBox.prototype.removeFromElement):
41         (WebInspector.TextPrompt.SuggestBox.prototype._completionsReady):
42         * inspector/front-end/textPrompt.css:
43         (.suggest-box):
44
45 2012-02-21  Yury Semikhatsky  <yurys@chromium.org>
46
47         Web Inspector: timeline hangs on a page with deep chain of nested events.
48         https://bugs.webkit.org/show_bug.cgi?id=79106
49
50         Use stack of states instead of recursive calls when traversing records tree to
51         avoid stack overflow.
52
53         Reviewed by Pavel Feldman.
54
55         * inspector/front-end/TimelineOverviewPane.js:
56         (WebInspector.TimelineOverviewPane.prototype._forAllRecords):
57         * inspector/front-end/TimelinePanel.js:
58         (WebInspector.TimelinePanel.prototype._filterRecords):
59
60 2012-02-21  Pavel Feldman  <pfeldman@google.com>
61
62         Web Inspector: [crash] upon style modification after navigation
63         https://bugs.webkit.org/show_bug.cgi?id=79108
64
65         Reviewed by Yury Semikhatsky.
66
67         * inspector/InspectorHistory.cpp:
68         (WebCore::InspectorHistory::undo):
69         (WebCore::InspectorHistory::redo):
70         (WebCore::InspectorHistory::reset):
71
72 2012-02-21  Patrick Gansterer  <paroga@webkit.org>
73
74         Use WTF::cryptographicallyRandomValues in FileSystemWin.cpp
75         https://bugs.webkit.org/show_bug.cgi?id=79089
76
77         Reviewed by Adam Roben.
78
79         Avoid loading and unloading of the crypto library during every
80         call to openTemporaryFile() and make the code easier.
81
82         * platform/win/FileSystemWin.cpp:
83         (WebCore::openTemporaryFile):
84
85 2012-02-21  Alexander Færøy  <alexander.faeroy@nokia.com>
86
87         Remove stylesheet pointer from StylePropertySet
88         https://bugs.webkit.org/show_bug.cgi?id=79092
89
90         Reviewed by Csaba Osztrogonác.
91
92         Qt buildfix after r108345.
93
94         * css/CSSParser.cpp:
95         (WebCore::parseColorValue):
96
97 2012-02-21  Csaba Osztrogonác  <ossy@webkit.org>
98
99         Remove stylesheet pointer from StylePropertySet
100         https://bugs.webkit.org/show_bug.cgi?id=79092
101
102         Reviewed by Antti Koivisto.
103
104         Qt buildfix after r108345. We need this workaround because of buggy gcc (4.4.5), which
105         reported a false warning: 'value$m_ptr' may be used uninitialized in this function
106
107         * css/CSSParser.cpp:
108         (WebCore::parseSimpleLengthValue):
109
110 2012-02-21  Andreas Kling  <awesomekling@apple.com>
111
112         Shrink attribute style property sets after populating them.
113         <http://webkit.org/b/78972>
114
115         Reviewed by Antti Koivisto.
116
117         Add a StylePropertySet::shrinkToFit() and call it at the end of updateStyleAttribute()
118         to minimize the amount of wasted space.
119
120         * css/StylePropertySet.h:
121         (WebCore::StylePropertySet::shrinkToFit):
122         * dom/StyledElement.cpp:
123         (WebCore::StyledElement::updateAttributeStyle):
124
125 2012-02-21  Antti Koivisto  <antti@apple.com>
126
127         Remove stylesheet pointer from StylePropertySet
128         https://bugs.webkit.org/show_bug.cgi?id=79092
129
130         Reviewed by Andreas Kling.
131
132         The context should be passed as an argument for CSS parser invoking setters that actually need it.
133         
134         - Remove the context stylesheet pointer.
135         - Add context stylesheet argument to setters.
136         - Drop an unnecessary StylePropertySet constructor, pass strict parsing flag directly.
137         - Adapt to changes by passing in the context stylesheet where needed.
138         - Add StyledElement::applyPresentationAttributeToStyle helpers for building up the attribute style.
139
140         * css/CSSFontFaceRule.cpp:
141         (WebCore::CSSFontFaceRule::addSubresourceStyleURLs):
142         * css/CSSParser.cpp:
143         (WebCore::parseColorValue):
144         (WebCore::parseSimpleLengthValue):
145         (WebCore::CSSParser::parseValue):
146         (WebCore::CSSParser::parseDeclaration):
147         (WebCore::CSSParser::createStyleRule):
148         (WebCore::CSSParser::createFontFaceRule):
149         (WebCore::CSSParser::createPageRule):
150         (WebCore::CSSParser::createKeyframeRule):
151         * css/CSSParser.h:
152         (CSSParser):
153         * css/CSSStyleRule.cpp:
154         (WebCore::CSSStyleRule::addSubresourceStyleURLs):
155         * css/StylePropertySet.cpp:
156         (WebCore::PropertySetCSSStyleDeclaration::contextStyleSheet):
157         (WebCore::PropertySetCSSStyleDeclaration::setNeedsStyleRecalc):
158         (RuleCSSStyleDeclaration):
159         (InlineCSSStyleDeclaration):
160         (WebCore):
161         (WebCore::StylePropertySet::StylePropertySet):
162         (WebCore::StylePropertySet::setProperty):
163         (WebCore::StylePropertySet::parseDeclaration):
164         (WebCore::StylePropertySet::addSubresourceStyleURLs):
165         (WebCore::StylePropertySet::clearParentRule):
166         (WebCore::StylePropertySet::clearParentElement):
167         (WebCore::PropertySetCSSStyleDeclaration::setCssText):
168         (WebCore::PropertySetCSSStyleDeclaration::setProperty):
169         (WebCore::PropertySetCSSStyleDeclaration::setPropertyInternal):
170         (WebCore::PropertySetCSSStyleDeclaration::parentStyleSheet):
171         (WebCore::RuleCSSStyleDeclaration::setNeedsStyleRecalc):
172         (WebCore::RuleCSSStyleDeclaration::contextStyleSheet):
173         (WebCore::InlineCSSStyleDeclaration::contextStyleSheet):
174         (SameSizeAsStylePropertySet):
175         * css/StylePropertySet.h:
176         (WebCore::StylePropertySet::create):
177         (StylePropertySet):
178         * css/WebKitCSSMatrix.cpp:
179         (WebCore::WebKitCSSMatrix::setMatrixValue):
180         * dom/ElementAttributeData.cpp:
181         (WebCore::ElementAttributeData::ensureInlineStyleDecl):
182         * dom/StyledElement.cpp:
183         (WebCore):
184         (WebCore::StyledElement::parseAttribute):
185         (WebCore::StyledElement::setInlineStyleProperty):
186         (WebCore::StyledElement::addSubresourceAttributeURLs):
187         (WebCore::StyledElement::updateAttributeStyle):
188         * dom/StyledElement.h:
189         (StyledElement):
190         (WebCore::StyledElement::applyPresentationAttributeToStyle):
191         (WebCore):
192         * html/HTMLBRElement.cpp:
193         (WebCore::HTMLBRElement::collectStyleForAttribute):
194         * html/HTMLBodyElement.cpp:
195         (WebCore::HTMLBodyElement::collectStyleForAttribute):
196         * html/HTMLDivElement.cpp:
197         (WebCore::HTMLDivElement::collectStyleForAttribute):
198         * html/HTMLElement.cpp:
199         (WebCore::HTMLElement::applyBorderAttributeToStyle):
200         (WebCore::HTMLElement::mapLanguageAttributeToLocale):
201         (WebCore::HTMLElement::collectStyleForAttribute):
202         (WebCore::HTMLElement::applyAlignmentAttributeToStyle):
203         (WebCore::HTMLElement::addHTMLLengthToStyle):
204         (WebCore::HTMLElement::addHTMLColorToStyle):
205         * html/HTMLElement.h:
206         (HTMLElement):
207         * html/HTMLFontElement.cpp:
208         (WebCore::HTMLFontElement::collectStyleForAttribute):
209         * html/HTMLHRElement.cpp:
210         (WebCore::HTMLHRElement::collectStyleForAttribute):
211         * html/HTMLImageElement.cpp:
212         (WebCore::HTMLImageElement::collectStyleForAttribute):
213         * html/HTMLLIElement.cpp:
214         (WebCore::HTMLLIElement::collectStyleForAttribute):
215         * html/HTMLMarqueeElement.cpp:
216         (WebCore::HTMLMarqueeElement::collectStyleForAttribute):
217         * html/HTMLOListElement.cpp:
218         (WebCore::HTMLOListElement::collectStyleForAttribute):
219         * html/HTMLParagraphElement.cpp:
220         (WebCore::HTMLParagraphElement::collectStyleForAttribute):
221         * html/HTMLTableCaptionElement.cpp:
222         (WebCore::HTMLTableCaptionElement::collectStyleForAttribute):
223         * html/HTMLTableCellElement.cpp:
224         (WebCore::HTMLTableCellElement::collectStyleForAttribute):
225         * html/HTMLTableElement.cpp:
226         (WebCore::HTMLTableElement::collectStyleForAttribute):
227         * html/HTMLTablePartElement.cpp:
228         (WebCore::HTMLTablePartElement::collectStyleForAttribute):
229         * html/HTMLTextAreaElement.cpp:
230         (WebCore::HTMLTextAreaElement::collectStyleForAttribute):
231         * html/HTMLUListElement.cpp:
232         (WebCore::HTMLUListElement::collectStyleForAttribute):
233         * html/canvas/CanvasRenderingContext2D.cpp:
234         (WebCore::CanvasRenderingContext2D::setFont):
235         * mathml/MathMLElement.cpp:
236         (WebCore::MathMLElement::collectStyleForAttribute):
237         * svg/SVGFontFaceElement.cpp:
238         (WebCore::SVGFontFaceElement::insertedIntoDocument):
239         (WebCore::SVGFontFaceElement::removedFromDocument):
240         (WebCore::SVGFontFaceElement::removeFromMappedElementSheet):
241         * svg/SVGImageElement.cpp:
242         (WebCore::SVGImageElement::collectStyleForAttribute):
243         * svg/SVGStyledElement.cpp:
244         (WebCore::SVGStyledElement::collectStyleForAttribute):
245         * svg/SVGTextContentElement.cpp:
246         (WebCore::SVGTextContentElement::collectStyleForAttribute):
247
248 2012-02-21  Yury Semikhatsky  <yurys@chromium.org>
249
250         [V8] Web Inspector: set breakpoint/pause doesn't work when worker is in a tight loop
251         https://bugs.webkit.org/show_bug.cgi?id=79097
252
253         Worker script will be interrupted to dispatch all arriving inspector commands.
254         This way debugger will be operable even if worker is in a tight loop.
255
256         Reviewed by Pavel Feldman.
257
258         * bindings/js/ScriptDebugServer.h:
259         (Task):
260         (WebCore::ScriptDebugServer::Task::~Task):
261         (ScriptDebugServer):
262         * bindings/js/WorkerScriptDebugServer.cpp:
263         (WebCore::WorkerScriptDebugServer::interruptAndRunTask):
264         (WebCore):
265         * bindings/js/WorkerScriptDebugServer.h:
266         (WorkerScriptDebugServer):
267         * bindings/v8/ScriptDebugServer.cpp:
268         (WebCore::ScriptDebugServer::interruptAndRun):
269         * bindings/v8/ScriptDebugServer.h:
270         (ScriptDebugServer):
271         * bindings/v8/WorkerScriptDebugServer.cpp:
272         (WebCore::WorkerScriptDebugServer::WorkerScriptDebugServer):
273         (WebCore::WorkerScriptDebugServer::interruptAndRunTask):
274         (WebCore):
275         * bindings/v8/WorkerScriptDebugServer.h:
276         (v8):
277         (WebCore):
278         (WorkerScriptDebugServer):
279         * inspector/WorkerDebuggerAgent.cpp:
280         (WebCore::WorkerDebuggerAgent::WorkerDebuggerAgent):
281         (WebCore::WorkerDebuggerAgent::~WorkerDebuggerAgent):
282         (WebCore):
283         (WebCore::WorkerDebuggerAgent::interruptAndDispatchInspectorCommands):
284         * inspector/WorkerDebuggerAgent.h:
285         (WebCore):
286         (WorkerDebuggerAgent):
287         * workers/WorkerMessagingProxy.cpp:
288         (WebCore):
289         (WebCore::WorkerMessagingProxy::sendMessageToInspector):
290         * workers/WorkerRunLoop.cpp:
291         (WebCore::WorkerRunLoop::run):
292         (WebCore::WorkerRunLoop::runInMode):
293         * workers/WorkerRunLoop.h:
294         (WorkerRunLoop):
295
296 2012-02-21  'Pavel Feldman'  <pfeldman@google.com>
297
298         Not reviewed: fixing Mac build (take 2).
299
300         * inspector/InspectorPageAgent.cpp:
301         (WebCore::InspectorPageAgent::setShowPaintRects):
302
303 2012-02-21  'Pavel Feldman'  <pfeldman@google.com>
304
305         Not reviewed: fixing Mac build.
306
307         * inspector/DOMNodeHighlighter.cpp:
308         (WebCore::DOMNodeHighlighter::drawOutline):
309         * inspector/DOMNodeHighlighter.h:
310         (DOMNodeHighlighter):
311         * inspector/InspectorInstrumentation.cpp:
312         (WebCore::InspectorInstrumentation::willPaintImpl):
313         * inspector/InspectorInstrumentation.h:
314         (InspectorInstrumentation):
315         (WebCore::InspectorInstrumentation::willPaint):
316         * inspector/InspectorPageAgent.cpp:
317         (WebCore::InspectorPageAgent::InspectorPageAgent):
318         (WebCore::InspectorPageAgent::willPaint):
319         (WebCore::InspectorPageAgent::didPaint):
320         * inspector/InspectorPageAgent.h:
321
322 2012-02-21  Peter Rybin  <peter.rybin@gmail.com>
323
324         Web Inspector: Switch Debugger agent to TypeBuilder
325         https://bugs.webkit.org/show_bug.cgi?id=78390
326
327         Reviewed by Vsevolod Vlasov.
328
329         Client code is switched to TypeBuilder.
330
331         * inspector/CodeGeneratorInspector.py:
332         * inspector/InjectedScript.cpp:
333         (WebCore::InjectedScript::evaluateOnCallFrame):
334         (WebCore::InjectedScript::getFunctionDetails):
335         (WebCore::InjectedScript::getProperties):
336         (WebCore::InjectedScript::wrapCallFrames):
337         * inspector/InjectedScript.h:
338         (InjectedScript):
339         * inspector/InspectorDebuggerAgent.cpp:
340         (WebCore::InspectorDebuggerAgent::setBreakpointByUrl):
341         (WebCore::InspectorDebuggerAgent::resolveBreakpoint):
342         (WebCore::InspectorDebuggerAgent::getFunctionDetails):
343         (WebCore::InspectorDebuggerAgent::evaluateOnCallFrame):
344         (WebCore::InspectorDebuggerAgent::currentCallFrames):
345         (WebCore::InspectorDebuggerAgent::didParseSource):
346         * inspector/InspectorDebuggerAgent.h:
347         (InspectorDebuggerAgent):
348
349 2012-02-21  'Pavel Feldman'  <pfeldman@google.com>
350
351         Not reviewed: fixing poor merge in r108332.
352
353         * inspector/front-end/StylesSidebarPane.js:
354         (WebInspector.StylePropertiesSection.prototype._handleSelectorClick):
355         * inspector/front-end/externs.js:
356
357 2012-02-21  Alexander Pavlov  <apavlov@chromium.org>
358
359         Web Inspector: [Styles] Rule source URL tooltip should show line number
360         https://bugs.webkit.org/show_bug.cgi?id=79087
361
362         Reviewed by Pavel Feldman.
363
364         * inspector/front-end/StylesSidebarPane.js:
365         (WebInspector.StylePropertiesSection):
366         (WebInspector.StylePropertiesSection.prototype._createRuleOriginNode):
367
368 2012-02-21  Pavel Feldman  <pfeldman@chomium.org>
369
370         Web Inspector: clicking empty space should not re-enter edit mode
371         https://bugs.webkit.org/show_bug.cgi?id=79024
372
373         Reviewed by Vsevolod Vlasov.
374
375         * inspector/front-end/StylesSidebarPane.js:
376         (WebInspector.StylePropertiesSection):
377         (WebInspector.StylePropertiesSection.prototype._handleEmptySpaceMouseDown):
378         (WebInspector.StylePropertiesSection.prototype._handleEmptySpaceClick):
379
380 2012-02-21  Pavel Feldman  <pfeldman@chomium.org>
381
382         Web Inspector: evaluate on hover does not work for large files.
383         https://bugs.webkit.org/show_bug.cgi?id=79015
384
385         Reviewed by Yury Semikhatsky.
386
387         * inspector/front-end/JavaScriptSourceFrame.js:
388         (WebInspector.JavaScriptSourceFrame.prototype._getPopoverAnchor):
389         (WebInspector.JavaScriptSourceFrame.prototype._highlightExpression):
390         * inspector/front-end/Popover.js:
391         (WebInspector.PopoverHelper.prototype._handleMouseAction):
392         * inspector/front-end/SourceJavaScriptTokenizer.js:
393         (WebInspector.SourceJavaScriptTokenizer):
394         (WebInspector.SourceJavaScriptTokenizer.prototype.nextToken):
395         * inspector/front-end/SourceJavaScriptTokenizer.re2js:
396
397 2012-02-21  Pavel Feldman  <pfeldman@google.com>
398
399         Web Inspector: add "show paint rectangles" setting.
400         https://bugs.webkit.org/show_bug.cgi?id=79030
401
402         Reviewed by Yury Semikhatsky.
403
404         * English.lproj/localizedStrings.js:
405         * inspector/DOMNodeHighlighter.cpp:
406         (WebCore::DOMNodeHighlighter::drawOutline):
407         (DOMNodeHighlighter):
408         * inspector/DOMNodeHighlighter.h:
409         (WebCore):
410         (DOMNodeHighlighter):
411         * inspector/Inspector.json:
412         * inspector/InspectorController.cpp:
413         (WebCore::InspectorController::InspectorController):
414         * inspector/InspectorInstrumentation.cpp:
415         (WebCore::InspectorInstrumentation::willPaintImpl):
416         (WebCore::InspectorInstrumentation::didPaintImpl):
417         * inspector/InspectorInstrumentation.h:
418         (WebCore):
419         (InspectorInstrumentation):
420         (WebCore::InspectorInstrumentation::willPaint):
421         * inspector/InspectorPageAgent.cpp:
422         (PageAgentState):
423         (WebCore::InspectorPageAgent::create):
424         (WebCore::InspectorPageAgent::InspectorPageAgent):
425         (WebCore::InspectorPageAgent::setShowPaintRects):
426         (WebCore):
427         (WebCore::InspectorPageAgent::didClearWindowObjectInWorld):
428         (WebCore::InspectorPageAgent::willPaint):
429         (WebCore::InspectorPageAgent::didPaint):
430         (WebCore::InspectorPageAgent::buildObjectForFrame):
431         * inspector/InspectorPageAgent.h:
432         (WebCore):
433         * inspector/front-end/Settings.js:
434         (WebInspector.Settings):
435         * inspector/front-end/SettingsScreen.js:
436         (WebInspector.SettingsScreen):
437         (WebInspector.SettingsScreen.prototype._showPaintRectsChanged):
438         * inspector/front-end/inspector.js:
439         * page/FrameView.cpp:
440         (WebCore::FrameView::paintContents):
441         * rendering/RenderLayerBacking.cpp:
442         (WebCore::RenderLayerBacking::paintContents):
443
444 2012-02-21  Andras Becsi  <andras.becsi@nokia.com>
445
446         [Qt] Clean-up project file after r108310
447
448         Reviewed by Csaba Osztrogonác.
449
450         No new tests needed.
451
452         * Target.pri: Fix path for TextTrack headers.
453
454 2012-02-17  Philippe Normand  <pnormand@igalia.com>
455
456         [GStreamer] media/W3C failures
457         https://bugs.webkit.org/show_bug.cgi?id=75078
458
459         Reviewed by Martin Robinson.
460
461         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
462         (WebCore::MediaPlayerPrivateGStreamer::load): Clean out everything
463         after file:// url path to cope with media/W3C tests loading
464         file:///path/to/media.ext?some parameters.
465
466 2012-02-21  Matt Lilek  <mrl@apple.com>
467
468         Not reviewed, build fix for non-client-based Geolocation builds after r107982.
469
470         * page/Geolocation.cpp:
471
472 2012-02-21  Yury Semikhatsky  <yurys@chromium.org>
473
474         [V8] Web Inspector: simplify worker debugger implementation
475         https://bugs.webkit.org/show_bug.cgi?id=79085
476
477         There is one instance of WorkerScriptDebugServer per worker thread. We don't
478         need to resolve WorkerContext from V8::Context anymore.
479
480         Reviewed by Pavel Feldman.
481
482         * bindings/v8/WorkerScriptDebugServer.cpp:
483         (WebCore::WorkerScriptDebugServer::WorkerScriptDebugServer):
484         (WebCore::WorkerScriptDebugServer::addListener):
485         (WebCore::WorkerScriptDebugServer::removeListener):
486         (WebCore::WorkerScriptDebugServer::getDebugListenerForContext):
487         (WebCore::WorkerScriptDebugServer::runMessageLoopOnPause):
488         * bindings/v8/WorkerScriptDebugServer.h:
489         (WorkerScriptDebugServer):
490         * inspector/WorkerDebuggerAgent.cpp:
491         (WebCore::WorkerDebuggerAgent::WorkerDebuggerAgent):
492         (WebCore::WorkerDebuggerAgent::startListeningScriptDebugServer):
493         (WebCore::WorkerDebuggerAgent::stopListeningScriptDebugServer):
494
495 2012-02-21  Kentaro Hara  <haraken@chromium.org>
496
497         Enable the IDL attribute checker in Chromium
498         https://bugs.webkit.org/show_bug.cgi?id=79082
499
500         Reviewed by Adam Barth.
501
502         We have fixed 10~ bugs caused by typos of IDL attributes.
503         This patch adds an IDL attribute checker, which checks if all IDL attributes
504         used in IDL files are implemented by code generators.
505
506             - The IDL attribute checker uses IDLAttributes.txt, which lists all
507               IDL attributes implemented in code generators. If we want to add
508               a new IDL attribute, we need to add it to IDLAttributes.txt manually.
509             - The IDL attribute checker checks if all IDL attributes used in IDL files
510               are listed in IDLAttributes.txt.
511             - If the IDL attribute checker fails, the build fails with a verbose error message.
512
513         No tests. I manually checked that [Custommm], [CallWith=],
514         [CallWith=ScriptExecutionContext|Foo] cause build failures.
515
516         * WebCore.gyp/WebCore.gyp: Modified to enable the IDL attribute checker.
517
518         * bindings/scripts/resolve-supplemental.pl:
519         (loadIDLAttributes): This method loads a list of IDL attributes from IDLAttributes.txt.
520         (checkIDLAttributes): This method implementes the IDL attribute checker as described above.
521         (checkIfIDLAttributesExists):
522
523         * bindings/scripts/IDLParser.pm: "1" is not good to represent that
524         the IDL attribute does not have any value. This patch changed it to "VALUE_IS_MISSING".
525         (parseExtendedAttributes):
526         (ParseInterface):
527         * bindings/scripts/CodeGenerator.pm: Ditto.
528         (ContentAttributeName):
529         * bindings/scripts/CodeGeneratorV8.pm: Ditto.
530         (GenerateNormalAttrGetter):
531         (GenerateNormalAttrSetter):
532         (GenerateSingleBatchedAttribute):
533         (GetRuntimeEnableFunctionName):
534         * bindings/scripts/IDLAttributes.txt: Added. This file lists all IDL attributes implemented
535         in code generators.
536
537 2012-02-21  Patrick Gansterer  <paroga@webkit.org>
538
539         Use Win32 API to get file information
540         https://bugs.webkit.org/show_bug.cgi?id=55336
541
542         Reviewed by Adam Roben.
543
544         Use FindFirstFile() in favour over _wstat64() to share the code with WinCE.
545
546         * platform/win/FileSystemWin.cpp:
547         (WebCore):
548         (WebCore::getFindData):
549         (WebCore::getFileSize):
550         (WebCore::getFileModificationTime):
551         (WebCore::fileExists):
552
553 2012-02-20  Adam Barth  <abarth@webkit.org>
554
555         Invalid cast in WebCore::toElement / WebCore::HTMLElementStack::ElementRecord::element
556         https://bugs.webkit.org/show_bug.cgi?id=78975
557
558         Reviewed by Eric Seidel.
559
560         We're supposed to set the action attribute on the form element we just
561         created.  Previously, we assumed the newly created form element would
562         be on the top of the stack of open elements, but if we're in the table
563         body insertion mode, the form element gets treated as self closing and
564         is therefore popped off the stack of open elements.
565
566         Fortunately, we already cache a pointer to the most recently inserted
567         form element on the HTMLConstructionSite, so we can just grab the
568         element from there.
569
570         Test: html5lib/runner.html
571
572         * html/parser/HTMLTreeBuilder.cpp:
573         (WebCore::HTMLTreeBuilder::processIsindexStartTagForInBody):
574         (WebCore):
575
576 2012-02-20  Adam Barth  <abarth@webkit.org>
577
578         Unite TextTrack-related files with their friends in WebCore/html/track
579         https://bugs.webkit.org/show_bug.cgi?id=78941
580
581         Reviewed by Eric Seidel.
582
583         The code that supports <track> seems to be split between the
584         WebCore/html directory and the WebCore/html/track directory.  This
585         patch unites this code in the WebCore/html/track directory.
586
587         * CMakeLists.txt:
588         * DerivedSources.make:
589         * DerivedSources.pri:
590         * GNUmakefile.list.am:
591         * WebCore.gypi:
592         * WebCore.xcodeproj/project.pbxproj:
593         * html/LoadableTextTrack.cpp: Removed.
594         * html/LoadableTextTrack.h: Removed.
595         * html/TextTrack.cpp: Removed.
596         * html/TextTrack.h: Removed.
597         * html/TextTrack.idl: Removed.
598         * html/TextTrackCue.cpp: Removed.
599         * html/TextTrackCue.h: Removed.
600         * html/TextTrackCue.idl: Removed.
601         * html/TextTrackCueList.cpp: Removed.
602         * html/TextTrackCueList.h: Removed.
603         * html/TextTrackCueList.idl: Removed.
604         * html/track/LoadableTextTrack.cpp: Copied from Source/WebCore/html/LoadableTextTrack.cpp.
605         * html/track/LoadableTextTrack.h: Copied from Source/WebCore/html/LoadableTextTrack.h.
606         * html/track/TextTrack.cpp: Copied from Source/WebCore/html/TextTrack.cpp.
607         * html/track/TextTrack.h: Copied from Source/WebCore/html/TextTrack.h.
608         * html/track/TextTrack.idl: Copied from Source/WebCore/html/TextTrack.idl.
609         * html/track/TextTrackCue.cpp: Copied from Source/WebCore/html/TextTrackCue.cpp.
610         * html/track/TextTrackCue.h: Copied from Source/WebCore/html/TextTrackCue.h.
611         * html/track/TextTrackCue.idl: Copied from Source/WebCore/html/TextTrackCue.idl.
612         * html/track/TextTrackCueList.cpp: Copied from Source/WebCore/html/TextTrackCueList.cpp.
613         * html/track/TextTrackCueList.h: Copied from Source/WebCore/html/TextTrackCueList.h.
614         * html/track/TextTrackCueList.idl: Copied from Source/WebCore/html/TextTrackCueList.idl.
615
616 2012-02-20  Filip Pizlo  <fpizlo@apple.com>
617
618         JSC should be a triple-tier VM
619         https://bugs.webkit.org/show_bug.cgi?id=75812
620         <rdar://problem/10079694>
621
622         Reviewed by Gavin Barraclough.
623         
624         No new tests, because there is no change in behavior.
625
626         * CMakeLists.txt:
627
628 2012-02-20  Benjamin Poulain  <benjamin@webkit.org>
629
630         Get rid of the LocalizationStrategy
631         https://bugs.webkit.org/show_bug.cgi?id=78324
632
633         Reviewed by Sam Weinig.
634
635         Remove LocalizationStrategy and unify the localization behind
636         LocalizedStrings.h and LocalizedStrings.cpp.
637
638         * CMakeLists.txt:
639         * GNUmakefile.list.am:
640         * Target.pri:
641         * WebCore.exp.in:
642         * WebCore.gypi:
643         * WebCore.order:
644         * WebCore.vcproj/WebCore.vcproj:
645         * WebCore.xcodeproj/project.pbxproj:
646         * platform/DefaultLocalizationStrategy.cpp: Removed.
647         * platform/DefaultLocalizationStrategy.h: Removed.
648         * platform/LocalizationStrategy.h: Removed.
649         * platform/LocalizedStrings.cpp:
650         * platform/LocalizedStrings.h:
651         (WebCore):
652         * platform/PlatformStrategies.cpp:
653         * platform/PlatformStrategies.h:
654         (WebCore):
655         (WebCore::PlatformStrategies::PlatformStrategies):
656         (PlatformStrategies):
657         * platform/qt/LocalizedStringsQt.cpp: Copied from Source/WebKit/qt/WebCoreSupport/PlatformStrategiesQt.cpp.
658
659 2012-02-20  Kentaro Hara  <haraken@chromium.org>
660
661         Remove [TreatReturnedNullStringAsNull] from HTMLMediaElement.mediaGroup
662         https://bugs.webkit.org/show_bug.cgi?id=79064
663
664         Reviewed by Hajime Morita.
665
666         [TreatReturnedNullStringAsNull] is a typo of [TreatReturnedNullStringAs=Null].
667         But as far as I read the spec
668         (http://www.whatwg.org/specs/web-apps/current-work/multipage/the-video-element.html#attr-media-mediagroup),
669         there is no statement about what value should be returned when HTMLMediaElement.mediaGroup
670         is not yet initialized. In particular, there is no statement that says "null should
671         be returned when HTMLMediaElement.mediaGroup is not initialized". Thus, instead of
672         fixing the typo, just removing [TreatReturnedNullStringAsNull] would make sense.
673         Removing [TreatReturnedNullStringAsNull] does not change the current behavior.
674
675         Test: media/media-controller.html (No change in the test results.)
676
677         * html/HTMLMediaElement.idl:
678
679 2012-02-20  Hayato Ito  <hayato@chromium.org>
680
681         Use InsertinonPoint instead of HTMLContentElement.
682         https://bugs.webkit.org/show_bug.cgi?id=78778
683
684         Reviewed by Hajime Morita.
685
686         Replace HTMLContentElement with InsertionPoint in NodeRenderingContext and HTMLContentSelection.
687         This is one of followup patches for r108207.
688
689         No new tests, no change in behavior.
690
691         * dom/NodeRenderingContext.cpp:
692         (WebCore::nextRendererOf):
693         (WebCore::previousRendererOf):
694         (WebCore::firstRendererOf):
695         (WebCore::lastRendererOf):
696         * dom/NodeRenderingContext.h:
697         (WebCore):
698         (NodeRenderingContext):
699         (WebCore::NodeRenderingContext::insertionPoint):
700         * dom/ShadowRoot.cpp:
701         (WebCore::ShadowRoot::insertionPointFor):
702         * dom/ShadowRoot.h:
703         (WebCore):
704         * html/shadow/HTMLContentElement.cpp:
705         (WebCore::HTMLContentElement::HTMLContentElement):
706         (WebCore::HTMLContentElement::attach):
707         (WebCore::HTMLContentElement::detach):
708         * html/shadow/HTMLContentElement.h:
709         (HTMLContentElement):
710         * html/shadow/HTMLContentSelector.cpp:
711         (WebCore::HTMLContentSelector::select):
712         * html/shadow/HTMLContentSelector.h:
713         (WebCore):
714         (HTMLContentSelection):
715         (WebCore::HTMLContentSelection::insertionPoint):
716         (WebCore::HTMLContentSelection::HTMLContentSelection):
717         (WebCore::HTMLContentSelection::create):
718         * html/shadow/InsertionPoint.cpp:
719         (WebCore::InsertionPoint::InsertionPoint):
720         * html/shadow/InsertionPoint.h:
721         (WebCore::InsertionPoint::selections):
722         (WebCore::InsertionPoint::hasSelection):
723         (InsertionPoint):
724
725 2012-02-20  David Barton  <dbarton@mathscribe.com>
726
727         MathML internals - code clean-up for RenderMathMLSubSup
728         https://bugs.webkit.org/show_bug.cgi?id=79063
729
730         Reviewed by Eric Seidel.
731
732         In the next patch, I will shrink and revise the <msubsup> formatting code. To make this
733         easier to follow, I am first doing some simple code clean-up.
734
735         No new tests.
736
737         * rendering/mathml/RenderMathMLRow.cpp:
738         (WebCore::RenderMathMLRow::layout):
739         * rendering/mathml/RenderMathMLRow.h:
740         (WebCore::RenderMathMLRow::isRenderMathMLRow):
741         * rendering/mathml/RenderMathMLSubSup.cpp:
742         (WebCore::RenderMathMLSubSup::stretchToHeight):
743         (WebCore::RenderMathMLSubSup::layout):
744             - There is no need to iterate over baseWrapper's children since it should have only
745               one child, the base of the <msubsup>.
746
747 2012-02-20  Kentaro Hara  <haraken@chromium.org>
748
749         Replace [V8Custom=DOMWindowNOP] with [V8Custom]
750         https://bugs.webkit.org/show_bug.cgi?id=79062
751
752         Reviewed by Adam Barth.
753
754         [V8Custom=DOMWindowNOP] is not implemented by CodeGeneratorV8.pm.
755         This patch replaces it with [V8Custom].
756
757         No new tests. No change in behavior.
758
759         * page/DOMWindow.idl:
760
761 2012-02-20  Kentaro Hara  <haraken@chromium.org>
762
763         [JSGenerateIsReachable=ImplRoot] is not implemented, it should be [JSGenerateIsReachable]
764         https://bugs.webkit.org/show_bug.cgi?id=79061
765
766         Reviewed by Adam Barth.
767
768         CSSStyleDeclaration.idl uses [JSGenerateIsReachable=ImplRoot],
769         but "ImplRoot" is not implemented in CodeGeneratorJS.pm.
770         This patch replaces [JSGenerateIsReachable=ImplRoot] with [JSGenerateIsReachable].
771
772         No tests. No change in behavior.
773
774         * css/CSSStyleDeclaration.idl:
775
776 2012-02-20  Kentaro Hara  <haraken@chromium.org>
777
778         [EnabledAtRuntime] in HTMLShadowElement.idl should be [V8EnabledAtRuntime]
779         https://bugs.webkit.org/show_bug.cgi?id=79058
780
781         Reviewed by Adam Barth.
782
783         [EnabledAtRuntime] does not exist any longer. It should be [V8EnabledAtRuntime].
784
785         No tests.
786
787         * html/shadow/HTMLShadowElement.idl:
788
789 2012-02-20  Kentaro Hara  <haraken@chromium.org>
790
791         Replace [Callback=FunctionOnly] with [Callback]
792         https://bugs.webkit.org/show_bug.cgi?id=79060
793
794         Reviewed by Adam Barth.
795
796         [Callback=FunctionOnly] is not implemented by any code generator.
797         This patch replaces it with [Callback].
798
799         No tests. No change in behavior.
800
801         * Modules/intents/IntentResultCallback.idl:
802         * Modules/intents/NavigatorIntents.idl:
803         * dom/RequestAnimationFrameCallback.idl:
804         * mediastream/NavigatorMediaStream.idl:
805         * mediastream/NavigatorUserMediaErrorCallback.idl:
806         * mediastream/NavigatorUserMediaSuccessCallback.idl:
807         * mediastream/PeerConnection.idl:
808         * mediastream/SignalingCallback.idl:
809         * page/PositionCallback.idl:
810         * page/PositionErrorCallback.idl:
811
812 2012-02-20  Andy Chen  <andchen@rim.com>
813
814         2012-02-17  Andy Chen  <andchen@rim.com>
815
816         [BlackBerry] Need to override active/inactive text search highlight color for RenderThemeBlackBerry
817         https://bugs.webkit.org/show_bug.cgi?id=78920
818
819         Override two functions for text search highlight colors so that we can
820         provide platform specified colors.
821
822         Reviewed by Antonio Gomes.
823
824         No function change so no new tests.
825
826         * platform/blackberry/RenderThemeBlackBerry.cpp:
827         (WebCore::RenderThemeBlackBerry::platformActiveTextSearchHighlightColor):
828         (WebCore::RenderThemeBlackBerry::platformInactiveTextSearchHighlightColor):
829         * platform/blackberry/RenderThemeBlackBerry.h:
830
831 2012-02-20  John Knottenbelt  <jknotten@chromium.org>
832
833         Default canvas backing store to be 1:1 with specified dimensions.
834         https://bugs.webkit.org/show_bug.cgi?id=78971
835
836         Reviewed by Adam Barth.
837
838         Although the canvas specification states that the backing image may
839         be larger than the user-specified dimensions, there are a number of
840         philip canvas tests that fail when the backing image data is not
841         1:1 with the specified canvas dimensions. These failures are
842         tracked in https://bugs.webkit.org/show_bug.cgi?id=73645
843
844         This change defaults the canvas backing store to be 1:1 with the
845         user-specified dimensions, while also providing an
846         ENABLE(HIGH_DPI_CANVAS) build option to reinstate the original
847         behaviour, so that the above bug may be more easily fixed.
848
849         * html/HTMLCanvasElement.cpp:
850         (WebCore::HTMLCanvasElement::HTMLCanvasElement):
851
852 2012-02-20  Mary Wu  <mary.wu@torchmobile.com.cn>
853
854         Upstream RenderThemeBlackberry.h/.cpp into WebCore/platform/blackberry
855         https://bugs.webkit.org/show_bug.cgi?id=78785
856
857         Main Contributors:
858         Daniel Bates <dbates@rim.com>
859         Bryan Gislason <bgislason@rim.com>
860         Akash Vaswani <akvaswani@rim.com>
861         Dave Battista <dbattista@rim.com>
862         Robin Cao  <robin.cao@torchmobile.com.cn>
863         Genevieve Mak <gmak@rim.com>
864         Mike Fenton  <mifenton@rim.com>
865
866         Reviewed by Antonio Gomes.
867
868         Initial upstream, no new tests.
869
870         * platform/blackberry/RenderThemeBlackBerry.cpp: Added.
871         * platform/blackberry/RenderThemeBlackBerry.h: Added.
872
873 2012-02-20  Martin Robinson  <mrobinson@igalia.com>
874
875         [GTK] [EFL] Collapse duplicate WebGL support code
876         https://bugs.webkit.org/show_bug.cgi?id=78970
877
878         Reviewed by Gustavo Noronha Silva.
879
880         No new tests. This just cleans up duplicated code.
881
882         Centralize duplicated WebGL code for EFL and GTK+ in the Cairo
883         directory. This is in preparation for the changes necessary to
884         connect WebGL to the TextureMapper AC.
885
886         * GNUmakefile.list.am: Update source list.
887         * PlatformEfl.cmake: Update source list.
888         * platform/graphics/cairo/DrawingBufferCairo.cpp: Renamed from Source/WebCore/platform/graphics/gtk/DrawingBufferGtk.cpp.
889         * platform/graphics/cairo/GraphicsContext3DCairo.cpp: Integrated the code From GraphicsContext3DGtk.cpp.
890         * platform/graphics/efl/DrawingBufferEfl.cpp: Removed.
891         * platform/graphics/efl/GraphicsContext3DEfl.cpp: Removed.
892         * platform/graphics/gtk/GraphicsContext3DGtk.cpp: Removed.
893
894 2012-02-20  Martin Robinson  <mrobinson@igalia.com>
895
896         [UNIX] Plugin information fields are not interpreted as UTF-8
897         https://bugs.webkit.org/show_bug.cgi?id=78635
898
899         Reviewed by Gustavo Noronha Silva.
900
901         Interpret plugin metadata as UTF8 aways. This matches the behavior
902         of Chromium and the Totem plugin.
903
904         This is tested by a change to TestNetscapePlugin and expectations updates.
905
906         * plugins/efl/PluginPackageEfl.cpp:
907         (WebCore::PluginPackage::fetchInfo): Use String::fromUTF8.
908         * plugins/gtk/PluginPackageGtk.cpp:
909         (WebCore::PluginPackage::fetchInfo): Use String::fromUTF8.
910         * plugins/qt/PluginPackageQt.cpp:
911         (WebCore::PluginPackage::fetchInfo): Use String::fromUTF8.
912
913 2012-02-20  Martin Robinson  <mrobinson@igalia.com>
914
915         [GTK] Web content oftens steals focus from other widgets
916         https://bugs.webkit.org/show_bug.cgi?id=77791
917
918         Reviewed by Gustavo Noronha Silva.
919
920         * platform/gtk/WidgetGtk.cpp:
921         (WebCore::Widget::setFocus): No longer do anything special to try
922         to grab "real" widget focus. This matches the behavior on Qt.
923         * plugins/gtk/PluginViewGtk.cpp:
924         (WebCore::PluginView::setFocus): Moved the focus handling to here.
925         This ensures that behavior for plugins does not change.
926
927 2012-02-20  Yael Aharon  <yael.aharon@nokia.com>
928
929         Regression (108135) isOpaque() returns uninitialized variable.
930         https://bugs.webkit.org/show_bug.cgi?id=79049
931
932         Reviewed by Noam Rosenthal.
933
934         isOpaque() should use the new m_flags instead of the old m_isOpaque.
935         No new tests. No new functionality.
936
937         * platform/graphics/texmap/TextureMapper.h:
938         (WebCore::BitmapTexture::reset):
939         (WebCore::BitmapTexture::isOpaque):
940         (BitmapTexture):
941
942 2012-02-20  Kentaro Hara  <haraken@chromium.org>
943
944         Unreviewed. Rebaselined run-bindings-tests results.
945
946         * bindings/scripts/test/CPP/WebDOMTestInterface.cpp:
947         * bindings/scripts/test/CPP/WebDOMTestInterface.h:
948         * bindings/scripts/test/CPP/WebDOMTestObj.cpp:
949         * bindings/scripts/test/CPP/WebDOMTestObj.h:
950
951 2012-02-20  No'am Rosenthal  <noam.rosenthal@nokia.com>
952
953         [Qt][WK2] Clipping is broken
954         https://bugs.webkit.org/show_bug.cgi?id=78677
955
956         It's not necessary to add a full-viewport rect to the scissor clip stack.
957         It creates a situation where if there's a clip in the page, we return to
958         the viewport clip instead of applying the WebView's clip we got from the
959         scenegraph.
960
961         Also, it's unnecessary to clip before we paint the layer's content, we should
962         only clip afterwards, before painting the children. 
963
964         Reviewed by Kenneth Rohde Christiansen.
965
966         No new functionality.
967
968         * platform/graphics/opengl/TextureMapperGL.cpp:
969         (WebCore::BitmapTextureGL::size):
970         (WebCore::scissorClip):
971         (WebCore):
972         (WebCore::TextureMapperGL::beginScissorClip):
973         (WebCore::TextureMapperGL::endScissorClip):
974         * platform/graphics/texmap/TextureMapperLayer.cpp:
975         (WebCore::TextureMapperLayer::paintSelfAndChildren):
976
977 2012-02-20  No'am Rosenthal  <noam.rosenthal@nokia.com>
978
979         [Texmap] Layers and tiles appear to have missing pixels in their right/bottom borders
980         https://bugs.webkit.org/show_bug.cgi?id=78961
981
982         The relativeSize member should point to one pixel before the edge, since it's used
983         by glVertexAttribPointer, which takes edge points and not sizes.
984
985         Reviewed by Kenneth Rohde Christiansen.
986
987         No new funcionality.
988
989         * platform/graphics/opengl/TextureMapperGL.cpp:
990         (WebCore::BitmapTextureGL::didReset):
991
992 2012-02-20  Kihong Kwon  <kihong.kwon@samsung.com>
993
994         Add a new API for the Vibration API(W3C).
995         https://bugs.webkit.org/show_bug.cgi?id=72010
996
997         http://dev.w3.org/2009/dap/vibration/
998         This patch implements navigator.webkitvibrate() API.
999         This API operates differently depending upon a given parameter:
1000         1. It cancels vibration when given 0 or [].
1001         2. It gives a vibration duration in milliseconds when given as a single integer value.
1002         3. It gives a vibration pattern when given as an integer array. For instance, [1000 300 1000] generates a vibration of 1000ms followed by 300ms of idle time, and then creates another vibration of 1000ms.
1003
1004         Reviewed by Hajime Morita.
1005
1006         Test: fast/dom/navigator-vibration.html
1007
1008         * CMakeLists.txt:
1009         * Modules/vibration/NavigatorVibration.cpp: Added.
1010         (WebCore):
1011         (WebCore::NavigatorVibration::NavigatorVibration):
1012         (WebCore::NavigatorVibration::~NavigatorVibration):
1013         (WebCore::NavigatorVibration::webkitVibrate):
1014         Add webkitVibrate method to get an array or single integer parameter for vibrating.
1015         They check vibration is activated in the platform, and then call vibrate() in the Vibration class.
1016         * Modules/vibration/NavigatorVibration.h: Added.
1017         (WebCore):
1018         (NavigatorVibration):
1019         * Modules/vibration/NavigatorVibration.idl: Added.
1020         * Modules/vibration/Vibration.cpp: Added.
1021         This class implements the entire vibration logic.
1022         (WebCore):
1023         (WebCore::Vibration::Vibration):
1024         (WebCore::Vibration::~Vibration):
1025         (WebCore::Vibration::create):
1026         (WebCore::Vibration::vibrate):
1027         (WebCore::Vibration::cancelVibration):
1028         (WebCore::Vibration::suspendVibration):
1029         (WebCore::Vibration::resumeVibration):
1030         (WebCore::Vibration::timerStartFired):
1031         (WebCore::Vibration::timerStopFired):
1032         (WebCore::Vibration::supplementName):
1033         (WebCore::Vibration::isActive):
1034         (WebCore::provideVibrationTo):
1035         * Modules/vibration/Vibration.h: Added.
1036         (WebCore):
1037         (Vibration):
1038         (WebCore::Vibration::from):
1039         * Modules/vibration/VibrationClient.h: Added.
1040         vibrate() and cancelVibrate() need to be implemented in the VibrationClient.
1041         (WebCore):
1042         (VibrationClient):
1043         (WebCore::VibrationClient::~VibrationClient):
1044
1045 2012-02-20  Yuta Kitamura  <yutak@chromium.org>
1046
1047         Unreviewed, rolling out r108263.
1048         http://trac.webkit.org/changeset/108263
1049         https://bugs.webkit.org/show_bug.cgi?id=77856
1050
1051         Broke Chromium Windows build.
1052
1053         * platform/audio/DynamicsCompressor.cpp:
1054         (WebCore::DynamicsCompressor::DynamicsCompressor):
1055         (WebCore::DynamicsCompressor::setEmphasisStageParameters):
1056         (WebCore::DynamicsCompressor::process):
1057         (WebCore::DynamicsCompressor::reset):
1058         * platform/audio/DynamicsCompressor.h:
1059         (WebCore::DynamicsCompressor::isStereo):
1060         (DynamicsCompressor):
1061         * platform/audio/DynamicsCompressorKernel.cpp:
1062         (WebCore::DynamicsCompressorKernel::DynamicsCompressorKernel):
1063         (WebCore::DynamicsCompressorKernel::setPreDelayTime):
1064         (WebCore::DynamicsCompressorKernel::process):
1065         (WebCore::DynamicsCompressorKernel::reset):
1066         * platform/audio/DynamicsCompressorKernel.h:
1067         (DynamicsCompressorKernel):
1068         * webaudio/DynamicsCompressorNode.cpp:
1069         (WebCore::DynamicsCompressorNode::DynamicsCompressorNode):
1070         (WebCore::DynamicsCompressorNode::initialize):
1071
1072 2012-02-20  Raymond Liu  <raymond.liu@intel.com>
1073
1074         Have the DynamicsCompressorNode support multi-channel data
1075         https://bugs.webkit.org/show_bug.cgi?id=77856
1076
1077         Reviewed by Chris Rogers.
1078
1079         * platform/audio/DynamicsCompressor.cpp:
1080         (WebCore::DynamicsCompressor::DynamicsCompressor):
1081         (WebCore::DynamicsCompressor::setEmphasisStageParameters):
1082         (WebCore::DynamicsCompressor::process):
1083         (WebCore::DynamicsCompressor::reset):
1084         (WebCore::DynamicsCompressor::setNumberOfChannels):
1085         (WebCore):
1086         * platform/audio/DynamicsCompressor.h:
1087         (DynamicsCompressor):
1088         * platform/audio/DynamicsCompressorKernel.cpp:
1089         (WebCore::DynamicsCompressorKernel::DynamicsCompressorKernel):
1090         (WebCore::DynamicsCompressorKernel::setNumberOfChannels):
1091         (WebCore):
1092         (WebCore::DynamicsCompressorKernel::setPreDelayTime):
1093         (WebCore::DynamicsCompressorKernel::process):
1094         (WebCore::DynamicsCompressorKernel::reset):
1095         * platform/audio/DynamicsCompressorKernel.h:
1096         (DynamicsCompressorKernel):
1097         * webaudio/DynamicsCompressorNode.cpp:
1098         (WebCore::DynamicsCompressorNode::DynamicsCompressorNode):
1099         (WebCore::DynamicsCompressorNode::initialize):
1100
1101 2012-02-20  David Barton  <dbarton@mathscribe.com>
1102
1103         RenderMathMLRow::baselinePosition() only if linePositionMode == PositionOnContainingLine
1104         https://bugs.webkit.org/show_bug.cgi?id=79039
1105
1106         Reviewed by Eric Seidel.
1107
1108         RenderMathMLRow::baselinePosition() is actually unnecessary, but I am deleting it in two
1109         steps. First we add a guard to restrict it to the intended PositionOnContainingLine
1110         case, leaving PositionOfInteriorLineBoxes to a superclass, RenderBlock. This removes
1111         some randomness, and tightens up the results of four existing test files.
1112
1113         Test: mathml/presentation/row.xhtml, fenced.xhtml, mo.xhtml, and mo-stretch.html
1114
1115         * rendering/mathml/RenderMathMLRow.cpp:
1116         (WebCore::RenderMathMLRow::baselinePosition):
1117
1118 2012-02-18  Jon Lee  <jonlee@apple.com>
1119
1120         HTML input file control "No File Selected" needs more room in some languages
1121         https://bugs.webkit.org/show_bug.cgi?id=32366
1122         <rdar://problem/4481028>
1123
1124         Reviewed by David Hyatt.
1125
1126         The patch exposes a function to return the "no file(s) selected" label text.
1127
1128         * rendering/RenderTheme.cpp:
1129         (WebCore::RenderTheme::fileListDefaultLabel): Added to expose the text for the label in
1130         file upload controls when nothing has been selected.
1131         (WebCore::RenderTheme::fileListNameForWidth): Refactor to use fileListDefaultLabel().
1132         * rendering/RenderTheme.h: Change fileListNameForWidth() to be a const function.
1133
1134         * rendering/RenderThemeMac.h: Update fileListNameForWidth() to be a const function for
1135         platform implementations.
1136         * rendering/RenderThemeMac.mm:
1137         (WebCore::RenderThemeMac::fileListNameForWidth): Refactor to use fileListDefaultLabel().
1138
1139         Update fileListNameForWidth() to be a const function for platform implementations.
1140         * platform/gtk/RenderThemeGtk.h:
1141         * platform/gtk/RenderThemeGtk.cpp:
1142         * platform/qt/RenderThemeQt.h:
1143         * platform/qt/RenderThemeQt.cpp:
1144
1145         * rendering/RenderFileUploadControl.cpp:
1146         (WebCore::RenderFileUploadControl::computePreferredLogicalWidths): Change the calculation
1147         of the max preferred logical width. Calculate the length of the "no file(s) selected" text,
1148         and include the button and after-button margin. Take the max of that and the original
1149         default width, which was a string of 34 (defaultWidthNumChars) "0"'s, in the case that the
1150         label text is too short.
1151
1152 2012-02-20  Gavin Barraclough  <barraclough@apple.com>
1153
1154         Rubber stamped by Sam Weinig.
1155
1156         * bindings/js/JSDOMWindowBase.cpp:
1157         (WebCore::JSDOMWindowBase::allowsAccessFrom):
1158             - Errk, remove dead code from end of function.
1159
1160 2012-02-16  Gavin Barraclough  <barraclough@apple.com>
1161
1162         Move special __proto__ property to Object.prototype
1163         https://bugs.webkit.org/show_bug.cgi?id=78409
1164
1165         Reviewed by Oliver Hunt.
1166
1167         Re-implement this as a regular accessor property.  This has three key benefits:
1168         1) It makes it possible for objects to be given properties named __proto__.
1169         2) Object.prototype.__proto__ can be deleted, preventing object prototypes from being changed.
1170         3) This largely removes the magic used the implement __proto__, it can just be made a regular accessor property.
1171
1172         * bindings/js/JSDOMWindowBase.cpp:
1173         (WebCore::JSDOMWindowBase::allowsAccessFrom):
1174         (WebCore):
1175             - expose allowsAccessFrom check to JSC.
1176         * bindings/js/JSDOMWindowBase.h:
1177         (JSDOMWindowBase):
1178             - expose allowsAccessFrom check to JSC.
1179
1180 2012-02-20  Benjamin Poulain  <benjamin@webkit.org>
1181
1182         Make JSCSSStyleDeclaration work directly with CSS Property ID
1183         https://bugs.webkit.org/show_bug.cgi?id=79014
1184
1185         Reviewed by Geoffrey Garen.
1186
1187         Previously, accessing the CSS property was done by converting from
1188         the JavaScript name to the CSS name, then converting that name to a lowercase
1189         character array, and finally getting the CSS property ID.
1190
1191         This patch cut the indirection and make the code go directly from the
1192         JavaScript name conversion to the CSS property ID.
1193
1194         This improves the performance mainly due to the following:
1195         -avoid dynamic memory allocation
1196         -cut the conversion early when possible
1197         -do not parse the string twice
1198         The previous fast-path optimization was removed because it is no longer
1199         necessary with this change.
1200
1201         The improvement are the following:
1202         -previous fast-path: no change
1203         -previous slow-path: ~3 times faster
1204
1205         Test: fast/dom/CSSStyleDeclaration/access-longest-css-property.html
1206         This just test the edge case of CSSPropertyName.
1207
1208         * bindings/js/JSCSSStyleDeclarationCustom.cpp:
1209         (WebCore::writeWebKitPrefix):
1210         (WebCore::writeEpubPrefix):
1211         (WebCore::cssPropertyIDForJSCSSPropertyName):
1212         (WebCore::isCSSPropertyName):
1213         (WebCore::JSCSSStyleDeclaration::nameGetter):
1214         (WebCore::JSCSSStyleDeclaration::putDelegate):
1215         * css/CSSParser.cpp:
1216         (WebCore::cssPropertyID):
1217         (WebCore):
1218         (WebCore::cssPropertyNameIOSAliasing):
1219         * css/CSSParser.h:
1220         (WebCore):
1221
1222 2012-02-20  Dan Bernstein  <mitz@apple.com>
1223
1224         Updated Localizable.strings after r107440.
1225
1226         Rubber-stamped by Joseph Pecoraro.
1227
1228         * English.lproj/Localizable.strings:
1229
1230 2012-02-20  David Barton  <dbarton@mathscribe.com>
1231
1232         MathML internals - remove nonOperatorHeight(), hasBase()
1233         https://bugs.webkit.org/show_bug.cgi?id=78977
1234
1235         Reviewed by Eric Seidel.
1236
1237         Stretchy operators, including embellished ones, should stretch to the largest height of
1238         the non-stretchy items in the same explicit or implicit <mrow>.
1239         RenderMathMLRow::layout() used to use hasBase(), isRenderMathMLOperator(), and
1240         nonOperatorHeight() to approximate this height. We now use unembellishedOperator() to
1241         improve this approximation, while also simplifying the code. More plainly, the code used
1242         to skip all operators when estimating this height, instead of just the stretchy ones. We
1243         continue to do that for now, but we more accurately skip all embellished operators
1244         (using our currently implemented approximate definition of this), and use the simple and
1245         true height of the remaining items. In case all items in the row are stretchy,
1246         style()->fontSize() is better than using whatever heights these items currently happen
1247         to be stretched to.
1248
1249         Test: mathml/presentation/mo-stretch.html, and many existing tests
1250
1251         * rendering/mathml/RenderMathMLBlock.cpp:
1252         (WebCore):
1253         * rendering/mathml/RenderMathMLBlock.h:
1254         (WebCore::RenderMathMLBlock::unembellishedOperator):
1255         * rendering/mathml/RenderMathMLRow.cpp:
1256         (WebCore):
1257         (WebCore::RenderMathMLRow::layout):
1258         * rendering/mathml/RenderMathMLRow.h:
1259         (WebCore::RenderMathMLRow::isRenderMathMLRow):
1260         * rendering/mathml/RenderMathMLSubSup.cpp:
1261         (WebCore):
1262         * rendering/mathml/RenderMathMLSubSup.h:
1263         (RenderMathMLSubSup):
1264         * rendering/mathml/RenderMathMLUnderOver.cpp:
1265         (WebCore):
1266         * rendering/mathml/RenderMathMLUnderOver.h:
1267         (RenderMathMLUnderOver):
1268
1269 2012-02-17  Anders Carlsson  <andersca@apple.com>
1270
1271         Stop the committer timer when the page is destroyed
1272         https://bugs.webkit.org/show_bug.cgi?id=78907
1273
1274         Reviewed by Adam Roben.
1275
1276         We don't want the committer timer to fire after the scrolling tree has been invalidated,
1277         so stop the committer timer to prevent it from firing and trying to access the scrolling tree.
1278
1279         * page/scrolling/ScrollingCoordinator.cpp:
1280         (WebCore::ScrollingCoordinator::pageDestroyed):
1281
1282 2012-02-20  Patrick Gansterer  <paroga@webkit.org>
1283
1284         [WIN] Allow compiling FileSystem without CoreFoundation.
1285         https://bugs.webkit.org/show_bug.cgi?id=79032
1286
1287         Reviewed by Adam Roben.
1288
1289         Add #if USE(CF) around code using the CoreFoundation functions.
1290
1291         * platform/FileSystem.h:
1292         * platform/win/FileSystemWin.cpp:
1293
1294 2012-02-20  Robin Cao  <robin.cao@torchmobile.com.cn>
1295
1296         [BlackBerry] Upstream the first few files in platform/graphics/blackberry
1297         https://bugs.webkit.org/show_bug.cgi?id=79023
1298
1299         Reviewed by Antonio Gomes.
1300
1301         Initial upstreaming, no new tests.
1302
1303         * platform/graphics/blackberry/FloatPointBlackBerry.cpp: Added.
1304         (WebCore):
1305         (WebCore::FloatPoint::FloatPoint):
1306         (WebCore::FloatPoint::operator BlackBerry::Platform::FloatPoint):
1307         * platform/graphics/blackberry/FloatRectBlackBerry.cpp: Added.
1308         (WebCore):
1309         (WebCore::FloatRect::FloatRect):
1310         (WebCore::FloatRect::operator BlackBerry::Platform::FloatRect):
1311         * platform/graphics/blackberry/FloatSizeBlackBerry.cpp: Added.
1312         (WebCore):
1313         (WebCore::FloatSize::FloatSize):
1314         (WebCore::FloatSize::operator BlackBerry::Platform::FloatSize):
1315         * platform/graphics/blackberry/IntPointBlackBerry.cpp: Added.
1316         (WebCore):
1317         (WebCore::IntPoint::IntPoint):
1318         (WebCore::IntPoint::operator BlackBerry::Platform::IntPoint):
1319         * platform/graphics/blackberry/IntRectBlackBerry.cpp: Added.
1320         (WebCore):
1321         (WebCore::IntRect::IntRect):
1322         (WebCore::IntRect::operator BlackBerry::Platform::IntRect):
1323         * platform/graphics/blackberry/IntSizeBlackBerry.cpp: Added.
1324         (WebCore):
1325         (WebCore::IntSize::IntSize):
1326         (WebCore::IntSize::operator BlackBerry::Platform::IntSize):
1327
1328 2012-02-20  Patrick Gansterer  <paroga@webkit.org>
1329
1330         [WIN] Share openTemporaryFile with WinCE
1331         https://bugs.webkit.org/show_bug.cgi?id=58750
1332
1333         Reviewed by Adam Roben.
1334
1335         Use pathByAppendingComponent instead of PathCombine to share the
1336         code with WinCE. Also use the wide version of Windows functions.
1337
1338         * platform/win/FileSystemWin.cpp:
1339         (WebCore::openTemporaryFile):
1340
1341 2012-02-20  Victor Carbune  <victor@rosedu.org>
1342
1343         Added code to support dispatching of missed cues in case of normal playback
1344         and event sorting in case of simultaneous event triggering.
1345
1346         <track>-related events cuechange, enter, and exit should be sorted and filtered before dispatching
1347         https://bugs.webkit.org/show_bug.cgi?id=72171
1348
1349         Reviewed by Eric Carlson.
1350
1351         Tests: media/track/track-cues-missed.html
1352                media/track/track-cues-sorted-before-dispatch.html
1353
1354         * html/HTMLMediaElement.cpp:
1355         (WebCore::HTMLMediaElement::HTMLMediaElement): Added initialization code
1356         for newly added state variables.
1357         (WebCore::trackIndexCompare): Static boolean compare function between
1358         the index of two tracks.
1359         (WebCore):
1360         (WebCore::eventTimeCueCompare): Static boolean compare function between
1361         events associated with text track cues.
1362         (WebCore::HTMLMediaElement::updateActiveTextTrackCues): Added code to
1363         sort the events associated with text track cues before dispatching.
1364         Each step from the specification is commented within the code.
1365         (WebCore::HTMLMediaElement::finishSeek): Added a boolean variable that
1366         is needed within the text track update function, to know whether a seek
1367         event has occured before or not.
1368         (WebCore::HTMLMediaElement::mediaPlayerTimeChanged): Moved the update
1369         call for text tracks at the beginning of the function instead of the end.
1370         'ended' events for video should be dispatched after track specific events.
1371         * html/HTMLMediaElement.h: Added variables to keep
1372         state information required by the text track update algorithm (last time
1373         the algorithm was run, and whether a seeking event has occured)
1374         (HTMLMediaElement):
1375
1376         * html/LoadableTextTrack.cpp: Refactored fireCueChangeEvent method
1377         (WebCore::LoadableTextTrack::fireCueChangeEvent): The method dispatches a
1378         synchronous cue change event for the track element.
1379         * html/LoadableTextTrack.h:
1380         (LoadableTextTrack):
1381         * html/TextTrack.cpp: Modified the fireCueChange method, cached track index.
1382         (WebCore::TextTrack::TextTrack):
1383         (WebCore::TextTrack::trackIndex): Cached the track index.
1384         (WebCore):
1385         (WebCore::TextTrack::invalidateTrackIndex): Invalidates the track. Used
1386         when a new track is added in a TextTrackList instance.
1387         * html/TextTrack.h:
1388         (TextTrack):
1389         (WebCore::TextTrack::fireCueChangeEvent): The fireCueChangeEvent has been changed,
1390         as events need to be fired asyncronously.
1391         * html/TextTrackCue.cpp: Added internal variables to keep the current index
1392         position in the track cue order. This is invalidated when an element is
1393         inserted before.
1394         (WebCore::TextTrackCue::TextTrackCue):
1395         (WebCore::TextTrackCue::cueIndex): Getter for the cueIndex.
1396         (WebCore):
1397         (WebCore::TextTrackCue::invalidateCueIndex): Invalidates the currently stored
1398         cue index.
1399         (WebCore::TextTrackCue::dispatchEvent): Event dispatching is done asynchronously
1400         now. This should be the only method used for event dispatching.
1401         (WebCore::TextTrackCue::setIsActive): The setIsActive method no longer dispatches
1402         events, but rather just changes the m_isActive variable.
1403         * html/TextTrackCue.h:
1404         (TextTrackCue):
1405
1406         * html/TextTrackCueList.cpp:
1407         (WebCore::TextTrackCueList::getCueIndex): Retrieves the cue index, in the track cue
1408         order, of a given cue.
1409         (WebCore):
1410         (WebCore::TextTrackCueList::add): Modified the add method such that all the next cue
1411         indexes are invalidated.
1412         (WebCore::TextTrackCueList::invalidateCueIndexes): Invalidates all cue indexes starting
1413         with a specific position.
1414         * html/TextTrackCueList.h:
1415         (TextTrackCueList):
1416         * html/track/TextTrackList.cpp:
1417         (TextTrackList::getTrackIndex): Retrieves the track index position.
1418         (TextTrackList::append): Added method for invalidating the text track index in case of
1419         changing the list contents.
1420         * html/track/TextTrackList.h:
1421         (TextTrackList):
1422
1423 2012-02-20  Kenichi Ishibashi  <bashi@chromium.org>
1424
1425         [WebSocket] Move WebSocketChannel::FrameData into a separate header file
1426         https://bugs.webkit.org/show_bug.cgi?id=78682
1427
1428         Extract WebSocketChannel::FrameData as WebSocketFrame. This brings
1429         flexibility to add classes which want to do something for
1430         incoming/outgoing frames (e.g. compression/decompression).
1431
1432         Reviewed by Kent Tamura.
1433
1434         No new tests. No behavior change.
1435
1436         * GNUmakefile.list.am: AddedWebSocketFrame.h
1437         * Target.pri: Ditto.
1438         * WebCore.gypi: Ditto.
1439         * WebCore.vcproj/WebCore.vcproj: Ditto.
1440         * WebCore.xcodeproj/project.pbxproj: Ditto.
1441         * websockets/WebSocketChannel.cpp: Modified to use WebSocketFrame instead of FrameData
1442         (WebCore):
1443         (WebCore::WebSocketChannel::send):
1444         (WebCore::WebSocketChannel::startClosingHandshake):
1445         (WebCore::WebSocketChannel::parseFrame):
1446         (WebCore::WebSocketChannel::processFrame):
1447         (WebCore::WebSocketChannel::enqueueTextFrame):
1448         (WebCore::WebSocketChannel::enqueueRawFrame):
1449         (WebCore::WebSocketChannel::enqueueBlobFrame):
1450         (WebCore::appendMaskedFramePayload): Added.
1451         (WebCore::makeFrameData): Added.
1452         (WebCore::WebSocketChannel::sendFrame):
1453         * websockets/WebSocketChannel.h: Removed FrameData.
1454         (WebSocketChannel):
1455         (QueuedFrame):
1456         * websockets/WebSocketFrame.h: Added.
1457         (WebCore):
1458         (WebSocketFrame):
1459         (WebCore::WebSocketFrame::isNonControlOpCode):
1460         (WebCore::WebSocketFrame::isControlOpCode):
1461         (WebCore::WebSocketFrame::isReservedOpCode):
1462         (WebCore::WebSocketFrame::WebSocketFrame):
1463
1464 2012-02-20  Adam Roben  <aroben@apple.com>
1465
1466         32-bit build fix
1467
1468         * platform/FractionalLayoutUnit.h:
1469         (WebCore::FractionalLayoutUnit::setRawValue): Explicitly cast long long to int, since they
1470         are different widths in 32-bit.
1471
1472 2012-02-20  Adam Roben  <aroben@apple.com>
1473
1474         Clang build fix
1475
1476         * inspector/InspectorDOMAgent.cpp:
1477         (WebCore::InspectorDOMAgent::willModifyDOMAttr): Removed unused parameter.
1478
1479 2012-02-20  Vsevolod Vlasov  <vsevik@chromium.org>
1480
1481         Unreviewed manual rollout of r107970 which breaks table column widths
1482         updates from javascript (e.g. inspector's network panel).
1483
1484         * rendering/FixedTableLayout.cpp:
1485         (WebCore::FixedTableLayout::calcWidthArray):
1486         * rendering/RenderTableCol.h:
1487         (RenderTableCol):
1488
1489 2012-02-20  Alexander Pavlov  <apavlov@chromium.org>
1490
1491         Web Inspector: [Styles] Inconsistent alignment of non-parsed properties (having an exclamation mark)
1492         https://bugs.webkit.org/show_bug.cgi?id=79028
1493
1494         Reviewed by Yury Semikhatsky.
1495
1496         * inspector/front-end/elementsPanel.css:
1497         (.styles-section .properties li.not-parsed-ok img.exclamation-mark):
1498
1499 2012-02-20  Alexander Pavlov  <apavlov@chromium.org>
1500
1501         Web Inspector: DOMAttrModified should not be fired if the attribute value remains the same
1502         https://bugs.webkit.org/show_bug.cgi?id=79025
1503
1504         Reviewed by Pavel Feldman.
1505
1506         * dom/Element.cpp:
1507         (WebCore::Element::willModifyAttribute):
1508         * inspector/InspectorDOMAgent.cpp:
1509         (WebCore::InspectorDOMAgent::InspectorDOMAgent):
1510         (WebCore::InspectorDOMAgent::willModifyDOMAttr):
1511         (WebCore):
1512         (WebCore::InspectorDOMAgent::didModifyDOMAttr):
1513         * inspector/InspectorDOMAgent.h:
1514         (InspectorDOMAgent):
1515         * inspector/InspectorInstrumentation.cpp:
1516         (WebCore::InspectorInstrumentation::willModifyDOMAttrImpl):
1517         * inspector/InspectorInstrumentation.h:
1518         (InspectorInstrumentation):
1519         (WebCore::InspectorInstrumentation::willModifyDOMAttr):
1520
1521 2012-02-20  Kwonjin Jeong  <gram@company100.net>
1522
1523         Correct a typo error in ScrollingCoordinator.h
1524         https://bugs.webkit.org/show_bug.cgi?id=79012
1525
1526         Reviewed by Andreas Kling.
1527
1528         * page/scrolling/ScrollingCoordinator.h:
1529         (ScrollingCoordinator):
1530
1531 2012-02-20  Alexander Pavlov  <apavlov@chromium.org>
1532
1533         Web Inspector: [Styles] box-shadow and -webkit-box-shadow properties are not considered color-aware
1534         https://bugs.webkit.org/show_bug.cgi?id=78988
1535
1536         Reviewed by Yury Semikhatsky.
1537
1538         * inspector/front-end/CSSKeywordCompletions.js:
1539
1540 2012-02-20  Yosifumi Inoue  <yosin@chromium.org>
1541
1542         [Forms] Spin buttons of number input type should fire both input and change event
1543         https://bugs.webkit.org/show_bug.cgi?id=75067
1544
1545         Reviewed by Kent Tamura.
1546
1547         This patch makes spin button in number input field clicks to fire input and change events as described in WHATWG HTML5 specification.
1548         To implement this behavior, this patch introduces new value DispatchInputAndChangeEvent in TextFieldEventBehavior.
1549
1550         Test: fast/forms/number/spin-button-events.html
1551
1552         * html/HTMLInputElement.cpp:
1553         (WebCore::HTMLInputElement::stepUpFromRenderer): Pass DispatchInputAndChangeEvent instead of DispatchChangeEvent to applyStep, setValue, and setValueAsNumber.
1554         * html/HTMLTextFormControlElement.h: Add new enum value DispatchInputAndChangeEvent to TextFieldEventBehavior.
1555         * html/TextFieldInputType.cpp:
1556         (WebCore::TextFieldInputType::setValue): Handle DispatchInputAndChangeEvent and use RefPtr for element to keep reference.
1557
1558 2012-02-20  Shinya Kawanaka  <shinyak@chromium.org>
1559
1560         Attached/Detached state must be testable
1561         https://bugs.webkit.org/show_bug.cgi?id=79010
1562
1563         Reviewed by Hajime Morita.
1564
1565         Added a method to check an element attached or not.
1566
1567         Test: fast/dom/shadow/shadow-root-attached.html
1568
1569         * testing/Internals.cpp:
1570         (WebCore::Internals::attached):
1571         (WebCore):
1572         * testing/Internals.h:
1573         (Internals):
1574         * testing/Internals.idl:
1575
1576 2012-02-20  Kenichi Ishibashi  <bashi@chromium.org>
1577
1578         [WebSocket] Add deflater/inflater classes
1579         https://bugs.webkit.org/show_bug.cgi?id=78449
1580
1581         Add WebSocketDeflater/WebSocketInflater classes which wrap zlib
1582         functions. These classes are not used yet, but will be used for
1583         supporting WebSocket deflate-frame extension.
1584
1585         This patch is second try. The previous patch broke Chromium Win
1586         build. I added dependency of zlib to WebCore.gyp. I think it's
1587         OK because Chromium already depends on zlib.
1588
1589         Reviewed by Kent Tamura.
1590
1591         No new tests except for chromium port. Behavior is unchanged.
1592
1593         * GNUmakefile.list.am: Added WebSocketDeflater.(cpp|h).
1594         * WebCore.gyp/WebCore.gyp: Added zlib dependency.
1595         * WebCore.gypi: Added WebSocketDeflater.(cpp|h).
1596         * WebCore.vcproj/WebCore.vcproj: Ditto.
1597         * WebCore.xcodeproj/project.pbxproj: Ditto.
1598         * websockets/WebSocketDeflater.cpp: Added.
1599         (WebCore):
1600         (WebCore::WebSocketDeflater::create):
1601         (WebCore::WebSocketDeflater::WebSocketDeflater):
1602         (WebCore::WebSocketDeflater::initialize):
1603         (WebCore::WebSocketDeflater::~WebSocketDeflater):
1604         (WebCore::setStreamParameter):
1605         (WebCore::WebSocketDeflater::addBytes):
1606         (WebCore::WebSocketDeflater::finish):
1607         (WebCore::WebSocketDeflater::reset):
1608         (WebCore::WebSocketInflater::create):
1609         (WebCore::WebSocketInflater::WebSocketInflater):
1610         (WebCore::WebSocketInflater::initialize):
1611         (WebCore::WebSocketInflater::~WebSocketInflater):
1612         (WebCore::WebSocketInflater::addBytes):
1613         (WebCore::WebSocketInflater::finish):
1614         (WebCore::WebSocketInflater::reset):
1615         * websockets/WebSocketDeflater.h: Added.
1616         (WebCore):
1617         (WebSocketDeflater):
1618         (WebCore::WebSocketDeflater::data):
1619         (WebCore::WebSocketDeflater::size):
1620         (WebSocketInflater):
1621         (WebCore::WebSocketInflater::data):
1622         (WebCore::WebSocketInflater::size):
1623
1624 2012-02-20  pfeldman@chomium.org  <pavel.feldman@gmail.com>
1625
1626         Web Inspector: consume undo/redo shortcuts.
1627         https://bugs.webkit.org/show_bug.cgi?id=79016
1628
1629         Reviewed by Vsevolod Vlasov.
1630
1631         * inspector/front-end/ElementsPanel.js:
1632         (WebInspector.ElementsPanel.prototype.handleShortcut):
1633
1634 2012-02-20  Philippe Normand  <pnormand@igalia.com>
1635
1636         MediaPlayer: MediaPlayerPrivate registration cleanup
1637         https://bugs.webkit.org/show_bug.cgi?id=78897
1638
1639         Reviewed by Martin Robinson.
1640
1641         * platform/graphics/MediaPlayer.cpp:
1642         (WebCore::installedMediaEngines): Simplified GStreamer Private
1643         player registration by using the PlatformMediaEngineClassName
1644         macro like other players do.
1645
1646 2012-02-17  Yury Semikhatsky  <yurys@chromium.org>
1647
1648         [Chromium] Web Inspector: terminated workers are not removed from dedicated worker list
1649         https://bugs.webkit.org/show_bug.cgi?id=78899
1650
1651         Notify inspector about starting context from WorkerContextProxy not from Worker.
1652
1653         Reviewed by Pavel Feldman.
1654
1655         * workers/Worker.cpp:
1656         (WebCore::Worker::notifyFinished):
1657         * workers/WorkerMessagingProxy.cpp:
1658         (WebCore::WorkerMessagingProxy::startWorkerContext):
1659
1660 2012-02-19  Keishi Hattori  <keishi@webkit.org>
1661
1662         Use shadowRootList for ColorInputType
1663         https://bugs.webkit.org/show_bug.cgi?id=79007
1664
1665         Reviewed by Kent Tamura.
1666
1667         * html/ColorInputType.cpp:
1668         (WebCore::ColorInputType::createShadowSubtree): Changed shadowRoot to shadowRootList.
1669         (WebCore::ColorInputType::shadowColorSwatch): Changed shadowRoot to shadowRootList.
1670
1671 2012-02-19  Shinya Kawanaka  <shinyak@chromium.org>
1672
1673         Introduce InsertionPoint, which will be a common base class of HTMLShadowElement and HTMLContentElement.
1674         https://bugs.webkit.org/show_bug.cgi?id=78771
1675
1676         Reviewed by Hajime Morita.
1677
1678         This patch introduces InsertionPoint, which will be a common base class of HTMLShadowElement and HTMLContentElement.
1679
1680         This is a step for rendering <shadow> correctly, because <shadow> has almost the same function of <content>.
1681         After this patch, we will change NodeRenderingContext and related classes to accept InsertionPoint instead of
1682         HTMLContentElement only.
1683
1684         No new tests, no change in behavior.
1685
1686         * CMakeLists.txt:
1687         * GNUmakefile.list.am:
1688         * Target.pri:
1689         * WebCore.gypi:
1690         * WebCore.vcproj/WebCore.vcproj:
1691         * WebCore.xcodeproj/project.pbxproj:
1692         * html/shadow/HTMLContentElement.cpp:
1693         (WebCore::HTMLContentElement::HTMLContentElement):
1694         (WebCore::HTMLContentElement::attach):
1695         (WebCore::HTMLContentElement::detach):
1696         (WebCore::HTMLContentElement::parseAttribute):
1697         * html/shadow/HTMLContentElement.h:
1698         * html/shadow/InsertionPoint.cpp: Added.
1699         (WebCore):
1700         (WebCore::InsertionPoint::InsertionPoint):
1701         (WebCore::InsertionPoint::~InsertionPoint):
1702         * html/shadow/InsertionPoint.h: Added.
1703         (WebCore):
1704         (InsertionPoint):
1705
1706 2012-02-19  Paweł Forysiuk  <tuxator@o2.pl>
1707
1708         [GTK] Can't find webinspector and error page redirection on Windows
1709         https://bugs.webkit.org/show_bug.cgi?id=51616
1710
1711         Create and use an abstraction for finding shared resources on Windows.
1712
1713         Reviewed by Martin Robinson.
1714
1715         * platform/FileSystem.h:
1716         (WebCore):
1717         * platform/audio/gtk/AudioBusGtk.cpp:
1718         (WebCore::AudioBus::loadPlatformResource):
1719         * platform/graphics/gtk/ImageGtk.cpp:
1720         (WebCore::getPathToImageResource):
1721         * platform/gtk/FileSystemGtk.cpp:
1722         (WebCore::sharedResourcesPath):
1723         (WebCore):
1724
1725 2012-02-19  James Robinson  <jamesr@chromium.org>
1726
1727         Move stub implementations of ScrollingCoordinator functions into ScrollingCoordinatorNone.cpp
1728         https://bugs.webkit.org/show_bug.cgi?id=78951
1729
1730         Reviewed by Adam Barth.
1731
1732         This move stubs for ScrollingCoordinator functions into ScrollingCoordinatorNone.cpp instead of #ifdefing inside
1733         ScrollingCoordinator.cpp.  The mac port uses ScrollingCoordinator when #if ENABLE(THREADED_SCROLLING) is not set
1734         and implementations in ScrollingCoordinator.cpp / ScrollingCoordinatorMac.mm otherwise.  The chromium port
1735         always uses implementations in ScrollingCoordinatorChromium.cpp.  All other ports use
1736         ScrollingCoordinatorNone.cpp.
1737
1738         * CMakeLists.txt:
1739         * GNUmakefile.list.am:
1740         * Target.pri:
1741         * WebCore.vcproj/WebCore.vcproj:
1742         * WebCore.xcodeproj/project.pbx:
1743         * page/scrolling/ScrollingCoordinator.cpp:
1744         * page/scrolling/ScrollingCoordinatorNone.cpp:
1745         (WebCore):
1746         (WebCore::ScrollingCoordinator::create):
1747         (WebCore::ScrollingCoordinator::frameViewHorizontalScrollbarLayerDidChange):
1748         (WebCore::ScrollingCoordinator::frameViewVerticalScrollbarLayerDidChange):
1749         (WebCore::ScrollingCoordinator::setScrollLayer):
1750         (WebCore::ScrollingCoordinator::setNonFastScrollableRegion):
1751         (WebCore::ScrollingCoordinator::setScrollParameters):
1752         (WebCore::ScrollingCoordinator::setWheelEventHandlerCount):
1753         (WebCore::ScrollingCoordinator::setShouldUpdateScrollLayerPositionOnMainThread):
1754         * page/scrolling/mac/ScrollingCoordinatorMac.mm:
1755         (WebCore::ScrollingCoordinator::create):
1756         (WebCore):
1757
1758 2012-02-19  Kentaro Hara  <haraken@chromium.org>
1759
1760         Rename [CheckDomainSecurity] to [CheckSecurity]
1761         https://bugs.webkit.org/show_bug.cgi?id=78874
1762
1763         Reviewed by Adam Barth.
1764
1765         "Domain security" isn't a term that's used elsewhere.
1766         This patch renames IDL attributes as follows:
1767
1768         - [CheckDomainSecurity] => [CheckSecurity]
1769         - [DoNotCheckDomainSecurity] => [DoNotCheckSecurity]
1770         - [DoNotCheckDomainSecurityOnGetter] => [DoNotCheckSecurityOnGetter]
1771         - [DoNotCheckDomainSecurityOnSetter] => [DoNotCheckSecurityOnSetter]
1772
1773         No tests. No change in behavior.
1774
1775         * bindings/scripts/CodeGeneratorJS.pm:
1776         (GenerateGetOwnPropertyDescriptorBody):
1777         (GenerateImplementation):
1778         * bindings/scripts/CodeGeneratorV8.pm:
1779         (GenerateHeader):
1780         (IsVisibleAcrossOrigins):
1781         (GenerateFunctionCallback):
1782         (GenerateSingleBatchedAttribute):
1783         (GenerateImplementation):
1784         (GenerateToV8Converters):
1785         * bindings/scripts/test/TestDomainSecurity.idl:
1786         * bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:
1787         (WebCore::ConfigureV8TestActiveDOMObjectTemplate):
1788         * page/DOMWindow.idl:
1789         * page/History.idl:
1790         * page/Location.idl:
1791
1792 2012-02-19  James Robinson  <jamesr@chromium.org>
1793
1794         Unreviewed, rolling out r108195.
1795         http://trac.webkit.org/changeset/108195
1796         https://bugs.webkit.org/show_bug.cgi?id=77700
1797
1798         Lots of failing ASSERT()s on v8 bots, requested by kling on
1799         #webkit
1800
1801         * bindings/js/JSCSSValueCustom.cpp:
1802         (WebCore::toJS):
1803         * bindings/scripts/CodeGeneratorV8.pm:
1804         (GenerateHeader):
1805
1806 2012-02-19  Kentaro Hara  <haraken@chromium.org>
1807
1808         Rename [CheckAccessToNode] to [CheckSecurityForNode]
1809         https://bugs.webkit.org/show_bug.cgi?id=78991
1810
1811         Reviewed by Adam Barth.
1812
1813         For naming consistency with [CheckSecurity], this patch renames
1814         [CheckAccessToNode] to [CheckSecurityForNode].
1815
1816         No tests. No change in behavior.
1817
1818         * bindings/scripts/CodeGeneratorJS.pm:
1819         (GenerateImplementation):
1820         * bindings/scripts/CodeGeneratorV8.pm:
1821         (GenerateNormalAttrGetter):
1822         (GenerateFunctionCallback):
1823         * bindings/scripts/test/TestObj.idl:
1824         * bindings/scripts/test/V8/V8TestObj.cpp:
1825         (WebCore):
1826         * html/HTMLEmbedElement.idl:
1827         * html/HTMLFrameElement.idl:
1828         * html/HTMLIFrameElement.idl:
1829         * html/HTMLObjectElement.idl:
1830         * page/DOMWindow.idl:
1831
1832 2012-02-19  James Robinson  <jamesr@chromium.org>
1833
1834         Sort WebCore XCode project files with sort-Xcode-project-files script. Unreviewed.
1835
1836         * WebCore.xcodeproj/project.pbxproj:
1837
1838 2012-02-19  Andreas Kling  <awesomekling@apple.com>
1839
1840         Make CSSValue wrapper getters return unique objects every time.
1841         <http://webkit.org/b/77700>
1842
1843         Reviewed by Antti Koivisto.
1844
1845         Change the behavior of CSSValue getters to return unique JS wrappers every
1846         time they are called. This means we no longer have to deal with the risk
1847         of leaking custom properties between unrelated documents, and are free to
1848         implement global value sharing across WebCore.
1849
1850         This patch will be followed by one making CSSValuePool globally shared,
1851         it's done in two steps to monitor the impact of this change.
1852
1853         * bindings/js/JSCSSValueCustom.cpp:
1854         (WebCore::toJS):
1855         * bindings/scripts/CodeGeneratorV8.pm:
1856         (GenerateHeader):
1857         (IsCSSValueType):
1858
1859 2012-02-19  Abhishek Arya  <inferno@chromium.org>
1860
1861         Crash in RenderBlock::splitAnonymousBlocksAroundChild.
1862         https://bugs.webkit.org/show_bug.cgi?id=78994
1863
1864         Reviewed by Eric Seidel.
1865
1866         Generalize splitTablePartsAroundChild to handle splitting
1867         in nested tables.
1868         Table->Table Section->Table Row->Table Cell->Table->Table Section->Table Row
1869
1870         Test: fast/table/table-split-inside-table.html
1871
1872         * rendering/RenderBlock.cpp:
1873         (WebCore::RenderBlock::splitTablePartsAroundChild):
1874
1875 2012-02-19  Kalev Lember  <kalevlember@gmail.com>
1876
1877         [GTK] Fix build on platforms where UChar is wchar_t
1878         https://bugs.webkit.org/show_bug.cgi?id=78996
1879
1880         Reviewed by Martin Robinson.
1881
1882         The ICU backend defines UChar as wchar_t for platforms where wchar_t is
1883         16 bits wide, e.g. win32.
1884
1885         * platform/graphics/pango/FontPango.cpp:
1886         (WebCore::utf16ToUtf8): Use reinterpret_cast instead of static_cast.
1887         * platform/gtk/GtkPopupMenu.cpp:
1888         (WebCore::GtkPopupMenu::typeAheadFind): Ditto.
1889
1890 2012-02-19  Carlos Garcia Campos  <cgarcia@igalia.com>
1891
1892         Unreviewed. Fix make distcheck issues.
1893
1894         * GNUmakefile.list.am: Add missing header.
1895
1896 2012-02-18  Robert Hogan  <robert@webkit.org>
1897
1898         CSS 2.1 failure: inline-box-002.htm fails
1899         https://bugs.webkit.org/show_bug.cgi?id=69210
1900
1901         Reviewed by David Hyatt.
1902
1903         Tests: css2.1/20110323/dynamic-top-change-005.htm
1904                css2.1/20110323/dynamic-top-change-005a.htm
1905                css2.1/20110323/dynamic-top-change-005b.htm
1906                css2.1/20110323/inline-box-002.htm
1907                fast/css/relative-positioned-block-nested-with-inline-parent-dynamic-removed.html
1908                fast/css/relative-positioned-block-nested-with-inline-parent-dynamic.html
1909                fast/css/relative-positioned-block-nested-with-inline-parent-multiple-descendant-blocks-dynamic.html
1910                fast/css/relative-positioned-block-nested-with-inline-parent.html
1911                fast/css/relative-positioned-block-with-inline-ancestor-and-parent-dynamic.html
1912                fast/css/relative-positioned-block-with-inline-ancestor-dynamic-removed.html
1913                fast/css/relative-positioned-block-with-inline-ancestor-dynamic.html
1914                fast/css/relative-positioned-block-with-inline-ancestor.html
1915                fast/css/relative-positioned-block-with-inline-parent-dynamic-removed.html
1916                fast/css/relative-positioned-block-with-inline-parent-dynamic.html
1917                fast/css/relative-positioned-block-with-inline-parent-keeps-style.html
1918                fast/css/relative-positioned-block-with-inline-parent.html
1919
1920         A block within an inline is affected by relative positioning on the inline box. Give
1921         the anonymous block containing the block a layer and make it relative positioned. Then
1922         calculate the offset of the anonymous block's layer by accumulating the offsets from its
1923         inline continuation and the inline continuation's inline parents.
1924         If the position of an inline changes from or to relative positioned then ensure that any
1925         descendant blocks update their position and layer accordingly.
1926
1927         * rendering/RenderBoxModelObject.cpp:
1928         (): add an enum RelPosAxis
1929         (WebCore::accumulateRelativePositionOffsets): 
1930         Total up the offsets of all relatively positioned inlines that are de-facto parents of the relatively 
1931         positioned anonymous block's child block.
1932
1933         (WebCore):
1934         (WebCore::RenderBoxModelObject::relativePositionOffsetX): 
1935         Use accumulateRelativePositionOffsets when calculating the relative position offset of a relatively positioned anonymous block.
1936
1937         (WebCore::RenderBoxModelObject::relativePositionOffsetY): ditto
1938
1939         * rendering/RenderInline.cpp:
1940         (WebCore::hasRelPositionedInlineAncestor): 
1941         Detects if the anonymous block contains a block that is the de-facto descendant of a relatively positioned inline.
1942
1943         (WebCore::updateStyleOfAnonymousBlockContinuations): 
1944         Update the style's positioning for each anonymous block containing a block that is descendant from the inline whose style has changed.
1945
1946         (WebCore::RenderInline::styleDidChange): 
1947         If an inline changes to or from relative positioning ensure that any descendant blocks change to or from relative positioning
1948         as well, unless they still have a relatively positioned ancestor after the current ancestor loses its relative positioning.
1949
1950         (WebCore::RenderInline::addChildIgnoringContinuation): 
1951         If the anonymous block contains a block that is effectively descended from a relatively positioned inline, make it relatively
1952         positioned so the block will respect its inline ancestor's relative positioning.
1953
1954         * rendering/RenderObject.cpp:
1955         (WebCore::RenderObject::propagateStyleToAnonymousChildren): 
1956         Preserve style position in anonymous block continuations when the parent block propagates a style change. 
1957
1958 2012-02-18  raman Tenneti  <rtenneti@chromium.org>
1959
1960         Track the NPN protocol version negotiated with the server
1961         https://bugs.webkit.org/show_bug.cgi?id=77349
1962
1963         Reviewed by Darin Fisher..
1964
1965         [chromium] Added ExtraData to WebURLResponse.
1966         
1967         No intended functionality change.
1968
1969         * platform/network/chromium/ResourceResponse.h:
1970         (ExtraData):
1971         (WebCore::ResourceResponse::ExtraData::~ExtraData):
1972         (ResourceResponse):
1973         (WebCore::ResourceResponse::extraData):
1974         (WebCore::ResourceResponse::setExtraData):
1975
1976 2012-02-18  Abhishek Arya  <inferno@chromium.org>
1977
1978         Unreviewed, rolling out r107965.
1979         http://trac.webkit.org/changeset/107965
1980         https://bugs.webkit.org/show_bug.cgi?id=78273
1981
1982         crashes
1983
1984         * rendering/RenderBlock.cpp:
1985         (WebCore::RenderBlock::clone):
1986
1987 2012-02-18  Sam Weinig  <sam@webkit.org>
1988
1989         Make WebCore compile with libc++ (Part 2)
1990         https://bugs.webkit.org/show_bug.cgi?id=78974
1991
1992         Reviewed by Anders Carlsson.
1993
1994         * config.h:
1995         Disable the DisallowCType check when using libc++.
1996
1997 2012-02-18  Sam Weinig  <sam@webkit.org>
1998
1999         Fix the build.
2000
2001         * page/DOMWindow.idl:
2002
2003 2012-02-14  Sam Weinig  <sam@webkit.org>
2004
2005         Make WebCore compile with libc++ (Part 1)
2006         https://bugs.webkit.org/show_bug.cgi?id=78974
2007
2008         Reviewed by Anders Carlsson.
2009
2010         Add a workaround for <rdar://problem/10858112>, which cause the standard heap functions
2011         not to work when using an iterator with proxy objects for reference and pointer types.
2012
2013         * WebCorePrefix.h:
2014         (move):
2015         Add an overload of std::move that the heap functions can call successfully.
2016
2017 2012-02-18  Kevin Ollivier  <kevino@theolliviers.com>
2018
2019         [wx] Build fixes for C++ bindings after recent changes.
2020         
2021         * bindings/scripts/CodeGeneratorCPP.pm:
2022         (ShouldSkipType):
2023         (GenerateHeader):
2024         * page/DOMWindow.idl:
2025
2026 2012-02-18  Kevin Ollivier  <kevino@theolliviers.com>
2027
2028         [wx] Build fix, add new platform method wx impl.
2029
2030         * platform/wx/ContextMenuWx.cpp:
2031         (ContextMenu::itemCount):
2032
2033 2012-02-18  Sam Weinig  <sam@webkit.org>
2034
2035         Fix part of the windows build failure.
2036
2037         * WebCore.vcproj/WebCore.vcproj:
2038         Don't build JSWebKitCSSRegionRule.cpp, since it is already being built
2039         as part of DerivedSources.cpp.
2040
2041 2012-02-18  Sam Weinig  <sam@webkit.org>
2042
2043         Fix the ENABLE(THREADED_SCROLLING) build.
2044
2045         * page/scrolling/ScrollingCoordinator.cpp:
2046         (WebCore::ScrollingCoordinator::setNonFastScrollableRegion):
2047         (WebCore::ScrollingCoordinator::setScrollParameters):
2048
2049 2012-02-18  Andreas Kling  <awesomekling@apple.com>
2050
2051         HTML: Remove unnecessary attributeChange() overrides.
2052         <http://webkit.org/b/78890>
2053
2054         Reviewed by Anders Carlsson.
2055
2056         Move logic from attributeChanged() overrides into parseAttribute().
2057         This is a step towards making attributeChanged() non-virtual.
2058
2059         * html/HTMLMediaElement.cpp:
2060         (WebCore::HTMLMediaElement::parseAttribute):
2061         * html/HTMLMediaElement.h:
2062         (HTMLMediaElement):
2063         * html/HTMLScriptElement.cpp:
2064         (WebCore::HTMLScriptElement::parseAttribute):
2065         * html/HTMLScriptElement.h:
2066         (HTMLScriptElement):
2067         * html/HTMLTrackElement.cpp:
2068         (WebCore::HTMLTrackElement::parseAttribute):
2069         * html/HTMLTrackElement.h:
2070         (HTMLTrackElement):
2071
2072 2012-02-18  Andreas Kling  <awesomekling@apple.com>
2073
2074         Remove Element::createAttribute().
2075         <http://webkit.org/b/78965>
2076
2077         Reviewed by Anders Carlsson.
2078
2079         Switch call sites to use Attribute::create() directly, as there is no magic
2080         in calling Element::createAttribute() anymore (it used to be virtual and handled
2081         differently by StyledElement.)
2082
2083         * dom/Element.cpp:
2084         (WebCore::Element::setAttributeInternal):
2085         * dom/Element.h:
2086         * svg/properties/SVGAnimatedPropertySynchronizer.h:
2087
2088 2012-02-18  Andreas Kling  <awesomekling@apple.com>
2089
2090         HTMLBodyElement: Avoid synchronous style recalc when setting link/vlink/alink.
2091         <http://webkit.org/b/78959>
2092
2093         Reviewed by Anders Carlsson.
2094
2095         Mark the body element for deferred style recalc instead of doing it synchronously
2096         when the attributes change.
2097
2098         * html/HTMLBodyElement.cpp:
2099         (WebCore::HTMLBodyElement::parseAttribute):
2100
2101 2012-02-18  Martin Robinson  <mrobinson@igalia.com>
2102
2103         Fix the TextureMapper build for non-Qt ports. Qt debug builds
2104         must use RTTI, but GTK+, at least, does not.
2105
2106         * platform/graphics/texmap/TextureMapperLayer.cpp:
2107         (WebCore::TextureMapperLayer::updateBackingStore): Make the RTTI check
2108         Qt only.
2109
2110 2012-02-16  Andreas Kling  <awesomekling@apple.com>
2111
2112         FontFamilyValue: Utilize inheritance from CSSPrimitiveValue better.
2113         <http://webkit.org/b/78806>
2114
2115         Reviewed by Antti Koivisto.
2116
2117         Now that FontFamilyValue's string doesn't change after creation, we can just
2118         pass the massaged family name up to the CSSPrimitiveValue constructor and get
2119         cached cssText() for free. This also shrinks FontFamilyValue by sizeof(String)
2120         though that's less of an issue now that we cache them in CSSValuePool.
2121
2122         * css/FontFamilyValue.cpp:
2123         (WebCore::stripFontFamilyJunk):
2124         (WebCore::FontFamilyValue::FontFamilyValue):
2125         * css/FontFamilyValue.h:
2126         (WebCore::FontFamilyValue::familyName):
2127         (FontFamilyValue):
2128
2129 2012-02-17  Adam Klein  <adamk@chromium.org>
2130
2131         Avoid inconsistency in Node::inDocument due to DOMSubtreeModified dispatch
2132         https://bugs.webkit.org/show_bug.cgi?id=76087
2133
2134         Reviewed by Ryosuke Niwa.
2135
2136         Move post-removal notifications after call to Node::removeFromDocument
2137         to avoid inconsistent state of Node::inDocument() and thus avoid
2138         inconsistent state in DocumentOrderedMap.
2139
2140         Tests: fast/dom/getElementById-consistency.html
2141                fast/dom/getElementById-consistency2.html
2142
2143         * dom/ContainerNode.cpp:
2144         (WebCore::ContainerNode::removeChild):
2145         * svg/SVGTRefElement.cpp:
2146         (WebCore::SVGTRefElement::updateReferencedText): Fixed to work with new timing of DOMSubtreeModified dispatch.
2147
2148 2012-02-17  Joshua Bell  <jsbell@chromium.org>
2149
2150         IndexedDB: Support overloaded methods that take IDBKey or IDBKeyRange
2151         https://bugs.webkit.org/show_bug.cgi?id=78399
2152
2153         Implements IDBObjectStore.delete(IDBKeyRange) to exercise the functionality.
2154
2155         Reviewed by Tony Chang.
2156
2157         Test: storage/indexeddb/delete-range.html
2158
2159         * bindings/scripts/CodeGeneratorV8.pm:
2160         (GenerateFunctionCallString): Use .get() to disambiguate when passing RefPtr.
2161         * bindings/scripts/test/V8/V8TestObj.cpp: Update test expectations.
2162         * storage/IDBLevelDBBackingStore.cpp:
2163         (WebCore):
2164         * storage/IDBObjectStore.cpp:
2165         (WebCore::IDBObjectStore::deleteFunction):
2166         (WebCore):
2167         * storage/IDBObjectStore.h:
2168         (IDBObjectStore):
2169         * storage/IDBObjectStore.idl:
2170         * storage/IDBObjectStoreBackendImpl.cpp:
2171         (WebCore::IDBObjectStoreBackendImpl::deleteFunction):
2172         (WebCore):
2173         (WebCore::IDBObjectStoreBackendImpl::deleteInternal):
2174         * storage/IDBObjectStoreBackendImpl.h:
2175         (IDBObjectStoreBackendImpl):
2176         * storage/IDBObjectStoreBackendInterface.h:
2177
2178 2012-02-17  Kentaro Hara  <haraken@chromium.org>
2179
2180         Replace [V8OnInstance] with [V8Unforgeable]
2181         https://bugs.webkit.org/show_bug.cgi?id=78894
2182
2183         Reviewed by Adam Barth.
2184
2185         [V8OnInstance] means that the method should be defined
2186         (not on a prototype chain but) on a DOM object. It is the
2187         same meaning as [V8Unforgeable]. This patch replaces [V8OnInstance]
2188         with [V8Unforgeable].
2189
2190         No tests. No change in behavior.
2191
2192         * bindings/scripts/CodeGeneratorV8.pm:
2193         (GenerateImplementation):
2194         * page/Location.idl:
2195
2196 2012-02-17  James Robinson  <jamesr@chromium.org>
2197
2198         [chromium] Unreviewed build fix. MSVS gyp generator can't handle multiple .cpps with the same name in the same
2199         target from different paths.
2200
2201         * WebCore.gypi:
2202         * page/scrolling/chromium/ScrollingCoordinatorChromium.cpp: Renamed from Source/WebCore/page/scrolling/chromium/ScrollingCoordinator.cpp.
2203         (WebCore):
2204         (WebCore::ScrollingCoordinator::frameViewHorizontalScrollbarLayerDidChange):
2205         (WebCore::ScrollingCoordinator::frameViewVerticalScrollbarLayerDidChange):
2206         (WebCore::ScrollingCoordinator::setScrollLayer):
2207         (WebCore::ScrollingCoordinator::setNonFastScrollableRegion):
2208         (WebCore::ScrollingCoordinator::setScrollParameters):
2209         (WebCore::ScrollingCoordinator::setWheelEventHandlerCount):
2210         (WebCore::ScrollingCoordinator::setShouldUpdateScrollLayerPositionOnMainThread):
2211
2212 2012-02-17  James Robinson  <jamesr@chromium.org>
2213
2214         Unreviewed mac compile fix pt 2
2215
2216         * page/scrolling/ScrollingCoordinator.cpp:
2217         (WebCore::ScrollingCoordinator::frameViewHorizontalScrollbarLayerDidChange):
2218         (WebCore::ScrollingCoordinator::frameViewVerticalScrollbarLayerDidChange):
2219         (WebCore::ScrollingCoordinator::setScrollLayer):
2220         (WebCore::ScrollingCoordinator::setNonFastScrollableRegion):
2221         (WebCore::ScrollingCoordinator::setScrollParameters):
2222         (WebCore::ScrollingCoordinator::setWheelEventHandlerCount):
2223         (WebCore::ScrollingCoordinator::setShouldUpdateScrollLayerPositionOnMainThread):
2224
2225 2012-02-17  James Robinson  <jamesr@chromium.org>
2226
2227         Unreviewed mac compile fix (unused parameter warning)
2228
2229         * page/scrolling/ScrollingCoordinator.cpp:
2230         (WebCore::ScrollingCoordinator::frameViewHorizontalScrollbarLayerDidChange):
2231         (WebCore::ScrollingCoordinator::frameViewVerticalScrollbarLayerDidChange):
2232
2233 2012-02-14  James Robinson  <jamesr@chromium.org>
2234
2235         Move ScrollingCoordinator out of ENABLE(THREADED_SCROLLING) ifdef and enable on all platforms
2236         https://bugs.webkit.org/show_bug.cgi?id=78401
2237
2238         Reviewed by Adam Barth.
2239
2240         Separates THREADED_SCROLLING from ScrollingCoordinator and enables ScrollingCoordinator-related code on
2241         chromium. ScrollingCoordinator receives scrolling information to be used with an external scrolling source.
2242         ENABLE(THREADED_SCROLLING) enables a codepath that uses a thread in WebCore to handle scrolling related input
2243         events and interact with composited layers.
2244
2245         * WebCore.gyp/WebCore.gyp:
2246         * WebCore.gypi:
2247         * dom/Document.cpp:
2248         (WebCore::wheelEventHandlerCountChanged):
2249         * page/FrameView.cpp:
2250         (WebCore::FrameView::addSlowRepaintObject):
2251         (WebCore::FrameView::removeSlowRepaintObject):
2252         (WebCore::FrameView::performPostLayoutTasks):
2253         * page/Page.cpp:
2254         (WebCore::Page::~Page):
2255         (WebCore):
2256         * page/Page.h:
2257         (Page):
2258         * page/Settings.cpp:
2259         (WebCore::Settings::Settings):
2260         * page/Settings.h:
2261         (Settings):
2262         * page/scrolling/ScrollingCoordinator.cpp:
2263         (WebCore::ScrollingCoordinator::ScrollingCoordinator):
2264         (WebCore::ScrollingCoordinator::~ScrollingCoordinator):
2265         (WebCore::ScrollingCoordinator::pageDestroyed):
2266         (WebCore):
2267         * page/scrolling/ScrollingCoordinator.h:
2268         (WebCore):
2269         (ScrollingCoordinator):
2270         * page/scrolling/ScrollingThread.cpp:
2271         (WebCore::ScrollingThread::createThreadIfNeeded):
2272         * page/scrolling/ScrollingTreeState.cpp:
2273         * page/scrolling/ScrollingTreeState.h:
2274         * page/scrolling/chromium/ScrollingCoordinator.cpp: Added.
2275         (WebCore):
2276         (WebCore::ScrollingCoordinator::scheduleTreeStateCommit):
2277         (WebCore::ScrollingCoordinator::frameViewScrollLayerDidChange):
2278         (WebCore::ScrollingCoordinator::frameViewHorizontalScrollbarLayerDidChange):
2279         (WebCore::ScrollingCoordinator::frameViewVerticalScrollbarLayerDidChange):
2280         * rendering/RenderLayerBacking.cpp:
2281         (WebCore::RenderLayerBacking::RenderLayerBacking):
2282         * rendering/RenderLayerCompositor.cpp:
2283         (WebCore::RenderLayerCompositor::frameViewDidScroll):
2284         (WebCore::shouldCompositeOverflowControls):
2285         (WebCore::RenderLayerCompositor::requiresOverhangAreasLayer):
2286         (WebCore::RenderLayerCompositor::requiresContentShadowLayer):
2287         (WebCore::RenderLayerCompositor::updateOverflowControlsLayers):
2288         (WebCore::RenderLayerCompositor::ensureRootLayer):
2289         (WebCore):
2290         * rendering/RenderLayerCompositor.h:
2291         (WebCore):
2292         (RenderLayerCompositor):
2293
2294 2012-02-17  Emil A Eklund  <eae@chromium.org>
2295
2296         Add FractionalLayoutPoint for sub-pixel layout
2297         https://bugs.webkit.org/show_bug.cgi?id=78913
2298
2299         Reviewed by Eric Seidel.
2300
2301         Add FractionalLayoutUnit version of Point class and a couple of
2302         conversion methods to the Int and Float versions of same.
2303
2304         No new tests.
2305
2306         * GNUmakefile.list.am:
2307         * WebCore.vcproj/WebCore.vcproj:
2308         * WebCore.xcodeproj/project.pbxproj:
2309         * platform/graphics/FloatPoint.cpp:
2310         (WebCore::FloatPoint::FloatPoint):
2311         (WebCore):
2312         (WebCore::FloatPoint::moveBy):
2313         * platform/graphics/FloatPoint.h:
2314         (WebCore):
2315         (FloatPoint):
2316         * platform/graphics/FractionalLayoutPoint.h: Added.
2317         (WebCore):
2318         (FractionalLayoutPoint):
2319         (WebCore::FractionalLayoutPoint::FractionalLayoutPoint):
2320         (WebCore::FractionalLayoutPoint::zero):
2321         (WebCore::FractionalLayoutPoint::x):
2322         (WebCore::FractionalLayoutPoint::y):
2323         (WebCore::FractionalLayoutPoint::setX):
2324         (WebCore::FractionalLayoutPoint::setY):
2325         (WebCore::FractionalLayoutPoint::move):
2326         (WebCore::FractionalLayoutPoint::moveBy):
2327         (WebCore::FractionalLayoutPoint::scale):
2328         (WebCore::FractionalLayoutPoint::expandedTo):
2329         (WebCore::FractionalLayoutPoint::shrunkTo):
2330         (WebCore::FractionalLayoutPoint::clampNegativeToZero):
2331         (WebCore::FractionalLayoutPoint::transposedPoint):
2332         (WebCore::operator+=):
2333         (WebCore::operator-=):
2334         (WebCore::operator+):
2335         (WebCore::operator-):
2336         (WebCore::operator==):
2337         (WebCore::operator!=):
2338         (WebCore::toPoint):
2339         (WebCore::toSize):
2340         (WebCore::flooredIntPoint):
2341         (WebCore::roundedIntPoint):
2342         (WebCore::ceiledIntPoint):
2343         * platform/graphics/FractionalLayoutSize.cpp:
2344         (WebCore::pixelSnappedIntSize):
2345         * platform/graphics/FractionalLayoutSize.h:
2346         (WebCore):
2347
2348 2012-02-17  Ryosuke Niwa  <rniwa@webkit.org>
2349
2350         Move textDirectionForSelection from Editor to EditingStyle
2351         https://bugs.webkit.org/show_bug.cgi?id=78868
2352
2353         Reviewed by Enrica Casucci.
2354
2355         Move textDirectionForSelection from Editor to EditingStyle to centralize the editing code's
2356         dependency on CSSStyleDeclaration.
2357
2358         * editing/EditingStyle.cpp:
2359         (WebCore::EditingStyle::textDirectionForSelection):
2360         (WebCore):
2361         * editing/EditingStyle.h:
2362         (EditingStyle):
2363         * editing/Editor.cpp:
2364         (WebCore):
2365         * editing/Editor.h:
2366         (Editor):
2367         * editing/EditorCommand.cpp:
2368         (WebCore::stateTextWritingDirection):
2369         * editing/ReplaceSelectionCommand.cpp:
2370         * editing/markup.cpp:
2371
2372 2012-02-17  David Barton  <dbarton@mathscribe.com>
2373
2374         MathML internals - embellished operators, getBase() accessor functions
2375         https://bugs.webkit.org/show_bug.cgi?id=78617
2376
2377         Reviewed by Eric Seidel.
2378
2379         Define functions that return an unembellished "base", by omitting
2380         subscripts/superscripts, underscripts/overscripts, or denominators. This is needed in
2381         subsequent patches both for correct operator stretching and simple code factoring.
2382
2383         No new tests.
2384
2385         * rendering/mathml/RenderMathMLBlock.h:
2386         (WebCore):
2387         (RenderMathMLBlock):
2388         (WebCore::RenderMathMLBlock::unembellishedOperator):
2389         * rendering/mathml/RenderMathMLFraction.cpp:
2390         (WebCore::RenderMathMLFraction::unembellishedOperator):
2391         (WebCore):
2392         * rendering/mathml/RenderMathMLFraction.h:
2393         (RenderMathMLFraction):
2394         * rendering/mathml/RenderMathMLOperator.h:
2395         (WebCore::RenderMathMLOperator::unembellishedOperator):
2396         * rendering/mathml/RenderMathMLSubSup.cpp:
2397         (WebCore::RenderMathMLSubSup::base):
2398         (WebCore):
2399         (WebCore::RenderMathMLSubSup::unembellishedOperator):
2400         (WebCore::RenderMathMLSubSup::stretchToHeight):
2401             - renamed a variable for clarity, especially in later patches
2402         (WebCore::RenderMathMLSubSup::layout):
2403             - renamed a variable for clarity, especially in later patches
2404         * rendering/mathml/RenderMathMLSubSup.h:
2405         (RenderMathMLSubSup):
2406         * rendering/mathml/RenderMathMLUnderOver.cpp:
2407         (WebCore::RenderMathMLUnderOver::base):
2408         (WebCore):
2409         (WebCore::RenderMathMLUnderOver::unembellishedOperator):
2410         (WebCore::RenderMathMLUnderOver::stretchToHeight):
2411         * rendering/mathml/RenderMathMLUnderOver.h:
2412         (RenderMathMLUnderOver):
2413
2414 2012-02-17  No'am Rosenthal  <noam.rosenthal@nokia.com>
2415
2416         [Qt][WK2] Allow opaque tiles
2417         https://bugs.webkit.org/show_bug.cgi?id=78809
2418
2419         Replace the isOpaque boolean in BitmapTexture to a SupportsAlpha flag.
2420         Use reset/didReset instead of a virtual function that has to call the superclass.
2421
2422         Make sure that all calls to BitmapTexture::reset() pass the correct SupportsAlpha flag,
2423         based on the source image.
2424         Since we now disable blending for opaque textures, we also have to make sure that we treat
2425         the depth buffer correctly and bring it back to its previous state.
2426
2427         Reviewed by Kenneth Rohde Christiansen.
2428
2429         No behavior changes.
2430
2431         * platform/graphics/opengl/TextureMapperGL.cpp:
2432         (TextureMapperGLData):
2433         (WebCore::TextureMapperGLData::initStencil):
2434         (WebCore::TextureMapperGLData::TextureMapperGLData):
2435         (BitmapTextureGL):
2436         (WebCore::TextureMapperGL::beginPainting):
2437         (WebCore::TextureMapperGL::endPainting):
2438         (WebCore::TextureMapperGL::drawTexture):
2439         (WebCore::BitmapTextureGL::didReset):
2440         (WebCore::BitmapTextureGL::bind):
2441         (WebCore::TextureMapperGL::beginClip):
2442         * platform/graphics/texmap/TextureMapper.h:
2443         (WebCore::BitmapTexture::BitmapTexture):
2444         (WebCore::BitmapTexture::flags):
2445         (WebCore::BitmapTexture::didReset):
2446         (WebCore::BitmapTexture::reset):
2447         (BitmapTexture):
2448         * platform/graphics/texmap/TextureMapperBackingStore.cpp:
2449         (WebCore::TextureMapperTile::updateContents):
2450         (WebCore::TextureMapperTiledBackingStore::updateContentsFromImageIfNeeded):
2451         (WebCore::TextureMapperTiledBackingStore::createOrDestroyTilesIfNeeded):
2452         (WebCore::TextureMapperTiledBackingStore::updateContents):
2453         * platform/graphics/texmap/TextureMapperBackingStore.h:
2454         (TextureMapperTiledBackingStore):
2455         * platform/graphics/texmap/TextureMapperImageBuffer.cpp:
2456         (WebCore::BitmapTextureImageBuffer::didReset):
2457         (WebCore):
2458         * platform/graphics/texmap/TextureMapperImageBuffer.h:
2459         (BitmapTextureImageBuffer):
2460
2461 2012-02-17  Stephen Chenney  <schenney@chromium.org>
2462
2463         Crash in SVGAnimateElement due to changed target
2464         https://bugs.webkit.org/show_bug.cgi?id=75096
2465
2466         Reviewed by Nikolas Zimmermann.
2467
2468         The SVGAnimateElement object creates various internal objects
2469         depending on the type of property being animated, which depends on the
2470         target. These objects were not being recreated when the target
2471         changed, and crashes ensued. Now the SVGSMILElement provides a virtual
2472         method that is called when the target changes, and SVGAnimateElement
2473         updates its objects as necessary. We also deactivate the animation
2474         when the target changes, forcing recomputation of other derived
2475         objects.
2476
2477         This change also removes various unnecessary calls to semi-expensive
2478         methods.
2479
2480         Not only does this change fix the new test, it also fixes potential
2481         crashes in other tests that apparently never manifested before (but
2482         manifest when this new test is included in DRT).
2483
2484         Test: svg/animations/svglength-animation-retarget-crash.html
2485
2486         * svg/SVGAnimateElement.cpp:
2487         (WebCore::SVGAnimateElement::hasValidAttributeType):
2488         (WebCore::SVGAnimateElement::calculateAnimatedValue):
2489         (WebCore::SVGAnimateElement::calculateFromAndToValues):
2490         (WebCore::SVGAnimateElement::calculateFromAndByValues):
2491         (WebCore::SVGAnimateElement::resetToBaseValue):
2492         (WebCore::SVGAnimateElement::calculateDistance):
2493         (WebCore):
2494         (WebCore::SVGAnimateElement::targetElementDidChange):
2495         * svg/SVGAnimateElement.h:
2496         (SVGAnimateElement):
2497         * svg/SVGAnimatedTypeAnimator.h:
2498         (SVGAnimatedTypeAnimator):
2499         (WebCore::SVGAnimatedTypeAnimator::type):
2500         * svg/animation/SVGSMILElement.cpp:
2501         (WebCore::SVGSMILElement::targetElement):
2502         (WebCore::SVGSMILElement::resetTargetElement):
2503         (WebCore):
2504         * svg/animation/SVGSMILElement.h:
2505         (SVGSMILElement):
2506         (WebCore::SVGSMILElement::targetElementDidChange):
2507
2508 2012-02-17  David Hyatt  <hyatt@apple.com>
2509
2510         https://bugs.webkit.org/show_bug.cgi?id=78934
2511         
2512         Add the -webkit-line-align property to support the alignment of lines in the inline direction
2513         to the line grid.
2514
2515         Reviewed by Dan Bernstein.
2516
2517         Added fast/line-grid/line-align-parsing.html
2518
2519         * css/CSSComputedStyleDeclaration.cpp:
2520         (WebCore):
2521         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
2522         * css/CSSParser.cpp:
2523         (WebCore::CSSParser::parseValue):
2524         * css/CSSPrimitiveValueMappings.h:
2525         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
2526         (WebCore):
2527         (WebCore::CSSPrimitiveValue::operator LineAlign):
2528         * css/CSSProperty.cpp:
2529         (WebCore::CSSProperty::isInheritedProperty):
2530         * css/CSSPropertyNames.in:
2531         * css/CSSStyleApplyProperty.cpp:
2532         (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
2533         * css/CSSStyleSelector.cpp:
2534         (WebCore::CSSStyleSelector::applyProperty):
2535         * css/CSSValueKeywords.in:
2536         * rendering/style/RenderStyle.cpp:
2537         (WebCore::RenderStyle::diff):
2538         * rendering/style/RenderStyle.h:
2539         * rendering/style/RenderStyleConstants.h:
2540         * rendering/style/StyleRareInheritedData.cpp:
2541         (WebCore::StyleRareInheritedData::StyleRareInheritedData):
2542         (WebCore::StyleRareInheritedData::operator==):
2543         * rendering/style/StyleRareInheritedData.h:
2544         (StyleRareInheritedData):
2545
2546 2012-02-17  Emil A Eklund  <eae@chromium.org>
2547
2548         Add FractionalLayoutSize for sub-pixel layout
2549         https://bugs.webkit.org/show_bug.cgi?id=78852
2550
2551         Reviewed by Eric Seidel.
2552
2553         Add FractionalLayoutUnit version of Size class and a couple of
2554         conversion methods to the Int and Float versions of same.
2555
2556         No new tests.
2557
2558         * CMakeLists.txt:
2559         * GNUmakefile.list.am:
2560         * WebCore.gypi:
2561         * WebCore.vcproj/WebCore.vcproj:
2562         * WebCore.xcodeproj/project.pbxproj:
2563         * platform/graphics/FloatPoint.cpp:
2564         (WebCore::FloatPoint::move):
2565         Add FractionalLayoutSize version of move.
2566
2567         * platform/graphics/FloatPoint.h:
2568         * platform/graphics/FloatSize.cpp:
2569         (WebCore::FloatSize::FloatSize):
2570         Add FloatSize(FractionalLayoutSize) constructor.
2571
2572         * platform/graphics/FloatSize.h:
2573         * platform/graphics/FractionalLayoutSize.cpp: Added.
2574         * platform/graphics/FractionalLayoutSize.h: Added.
2575
2576 2012-02-17  Enrica Casucci  <enrica@apple.com>
2577
2578         REGRESSION (r107606): Copy Link writes malformed WebURLsWithTitlesPboardType
2579         data to the pasteboard.
2580         https://bugs.webkit.org/show_bug.cgi?id=78933
2581         <rdar://problem/10874553>
2582         
2583         For this format, the data needs to be placed in the pasteboard as array of arrays
2584         of strings. Currently is it stored as array of strings, which causes the code
2585         that uses this format to break.
2586         
2587         Reviewed by Ryosuke Niwa.
2588
2589         * platform/mac/PlatformPasteboardMac.mm:
2590         (WebCore::PlatformPasteboard::setPathnamesForType):
2591
2592 2012-02-17  Abhishek Arya  <inferno@chromium.org>
2593
2594         Incorrect placement of a new child when beforeChild and its
2595         previous sibling are in the same table.
2596         https://bugs.webkit.org/show_bug.cgi?id=78269
2597
2598         Reviewed by Julien Chaffraix.
2599
2600         Tests: fast/table/table-cell-split.html
2601                fast/table/table-row-split.html
2602                fast/table/table-section-split-with-after-content.html
2603                fast/table/table-section-split.html
2604
2605         * rendering/RenderBlock.cpp:
2606         (WebCore::RenderBlock::splitAnonymousBlocksAroundChild): add
2607         call to splitTablePartsAroundChild to take care of splitting the
2608         table first if the child is part of table.
2609         (WebCore::markTableForSectionAndCellRecalculation): add helper to
2610         mark table for complete relayout by invalidating sections and cells.
2611         (WebCore):
2612         (WebCore::moveAllTableChildrenTo): moves children to another table.
2613         (WebCore::RenderBlock::splitTablePartsAroundChild): split table child
2614         and its next siblings into a new table. This allows adding a new
2615         non-table child between the tables.
2616         (WebCore::RenderBlock::addChildIgnoringAnonymousColumnBlocks): calls
2617         splitTablePartsAroundChild to see if we need to split the table
2618         for adding this new child.
2619         * rendering/RenderBlock.h:
2620         (RenderBlock):
2621         * rendering/RenderObject.cpp:
2622         (WebCore::RenderObject::createAnonymousTable): add helper for
2623         creating anonymous table.
2624         (WebCore):
2625         (WebCore::RenderObject::addChild): use the new helper for creating
2626         anonymous table.
2627         * rendering/RenderObject.h:
2628         (WebCore):
2629         (RenderObject):
2630         (WebCore::RenderObject::isTablePart): add helper to tell if the object
2631         is a table part.
2632
2633 2012-02-17  Andreas Kling  <awesomekling@apple.com>
2634
2635         Element: Inline style selector and AX invalidation in attributeChanged().
2636         <http://webkit.org/b/78888>
2637
2638         Reviewed by Antti Koivisto.
2639
2640         Inline the updateAfterAttributeChanged() and recalcStyleIfNeededAfterAttributeChanged()
2641         methods into Element::attributeChanged(). They were separated when we needed them in
2642         StyledElement::attributeChanged(), but that's no longer the case.
2643
2644         * dom/Element.cpp:
2645         (WebCore::Element::attributeChanged):
2646         * dom/Element.h:
2647
2648 2012-02-17  David Reveman  <reveman@chromium.org>
2649
2650         [Chromium] Texture eviction doesn't show up in traces.
2651         https://bugs.webkit.org/show_bug.cgi?id=78851
2652
2653         Reviewed by James Robinson.
2654
2655         Add TextureManager::evictTexture() function with TRACE statement so
2656         that texture eviction shows up in traces.
2657
2658         No new tests.
2659
2660         * platform/graphics/chromium/TextureManager.cpp:
2661         (WebCore::TextureManager::evictTexture):
2662         (WebCore):
2663         (WebCore::TextureManager::reduceMemoryToLimit):
2664         * platform/graphics/chromium/TextureManager.h:
2665         (TextureManager):
2666
2667 2012-02-17  Kalev Lember  <kalevlember@gmail.com>
2668
2669         Remove unused parameters from WTF threading API
2670         https://bugs.webkit.org/show_bug.cgi?id=78389
2671
2672         Reviewed by Adam Roben.
2673
2674         waitForThreadCompletion() had an out param 'void **result' to get the
2675         'void *' returned by ThreadFunction. However, the implementation in
2676         ThreadingWin.cpp ignored the out param, not filling it in. This had
2677         led to a situation where none of the client code made use of the param
2678         and just ignored it.
2679
2680         To clean this up, the patch changes the signature of ThreadFunction to
2681         return void instead of void* and drops the the unused 'void **result'
2682         parameter from waitForThreadCompletion. Also, all client code is
2683         updated for the API change.
2684
2685         As mentioned in https://bugs.webkit.org/show_bug.cgi?id=78389 , even
2686         though the change only affects internal API, Safari is using it
2687         directly and we'll need to keep the old versions around for ABI
2688         compatibility. For this, the patch adds compatibility wrappers with
2689         the old ABI.
2690
2691         * bindings/js/GCController.cpp:
2692         (WebCore::collect):
2693         (WebCore::GCController::garbageCollectOnAlternateThreadForDebugging):
2694         * fileapi/FileThread.cpp:
2695         (WebCore::FileThread::fileThreadStart):
2696         (WebCore::FileThread::runLoop):
2697         * fileapi/FileThread.h:
2698         (FileThread):
2699         * loader/icon/IconDatabase.cpp:
2700         (WebCore::IconDatabase::close):
2701         (WebCore::IconDatabase::iconDatabaseSyncThreadStart):
2702         (WebCore::IconDatabase::iconDatabaseSyncThread):
2703         (WebCore::IconDatabase::syncThreadMainLoop):
2704         * loader/icon/IconDatabase.h:
2705         (IconDatabase):
2706         * page/scrolling/ScrollingThread.cpp:
2707         (WebCore::ScrollingThread::threadCallback):
2708         * page/scrolling/ScrollingThread.h:
2709         (ScrollingThread):
2710         * platform/audio/HRTFDatabaseLoader.cpp:
2711         (WebCore::databaseLoaderEntry):
2712         (WebCore::HRTFDatabaseLoader::waitForLoaderThreadCompletion):
2713         * platform/audio/ReverbConvolver.cpp:
2714         (WebCore::backgroundThreadEntry):
2715         (WebCore::ReverbConvolver::~ReverbConvolver):
2716         * platform/network/cf/LoaderRunLoopCF.cpp:
2717         (WebCore::runLoaderThread):
2718         * storage/DatabaseThread.cpp:
2719         (WebCore::DatabaseThread::databaseThreadStart):
2720         (WebCore::DatabaseThread::databaseThread):
2721         * storage/DatabaseThread.h:
2722         (DatabaseThread):
2723         * storage/LocalStorageThread.cpp:
2724         (WebCore::LocalStorageThread::threadEntryPointCallback):
2725         (WebCore::LocalStorageThread::threadEntryPoint):
2726         (WebCore::LocalStorageThread::terminate):
2727         * storage/LocalStorageThread.h:
2728         (LocalStorageThread):
2729         * webaudio/AsyncAudioDecoder.cpp:
2730         (WebCore::AsyncAudioDecoder::~AsyncAudioDecoder):
2731         (WebCore::AsyncAudioDecoder::threadEntry):
2732         * webaudio/AsyncAudioDecoder.h:
2733         (AsyncAudioDecoder):
2734         * webaudio/OfflineAudioDestinationNode.cpp:
2735         (WebCore::OfflineAudioDestinationNode::uninitialize):
2736         (WebCore::OfflineAudioDestinationNode::renderEntry):
2737         * webaudio/OfflineAudioDestinationNode.h:
2738         (OfflineAudioDestinationNode):
2739         * workers/WorkerThread.cpp:
2740         (WebCore::WorkerThread::workerThreadStart):
2741         (WebCore::WorkerThread::workerThread):
2742         * workers/WorkerThread.h:
2743         (WorkerThread):
2744
2745 2012-02-17  Robert Hogan  <robert@webkit.org>
2746
2747         AppleMac Build fix for r108111
2748
2749         Remove variable that is now unused.
2750
2751         Unreviewed, build fix.
2752
2753         * rendering/RenderBlockLineLayout.cpp:
2754         (WebCore::alwaysRequiresLineBox): Remove lineInfo
2755         (WebCore::requiresLineBox): 
2756         (WebCore::RenderBlock::LineBreaker::nextLineBreak):
2757
2758 2012-02-17  Michal Mocny  <mmocny@google.com>
2759
2760         [chromium] GL_CHROMIUM_gpu_memory_manager extension
2761         https://bugs.webkit.org/show_bug.cgi?id=77155
2762
2763         Reviewed by James Robinson.
2764
2765         * platform/graphics/chromium/Extensions3DChromium.h:
2766         (GpuMemoryAllocationChangedCallbackCHROMIUM):
2767         (WebCore::Extensions3DChromium::GpuMemoryAllocationChangedCallbackCHROMIUM::~GpuMemoryAllocationChangedCallbackCHROMIUM):
2768         (Extensions3DChromium):
2769
2770 2012-01-23  Robert Hogan  <robert@webkit.org>
2771
2772         REGRESSION: empty span creates renders with non-zero height
2773         https://bugs.webkit.org/show_bug.cgi?id=76465
2774
2775         Reviewed by David Hyatt.
2776
2777         Tests: fast/css/empty-span.html
2778                fast/css/non-empty-span.html
2779
2780         Empty inlines with line-height, vertical-alignment or font metrics should only get a linebox if there is some
2781         other content in the line. So only create line boxes for such elements on lines that are not empty.
2782
2783         This patch fixes a regression where an empty inline with line-height was propagating its height to an empty line.
2784         It also fixes cases where lines with content that had a leading empty inline element weren't respecting the 
2785         vertical alignment or font-height of the empty inline.
2786
2787         * rendering/RenderBlockLineLayout.cpp:
2788         (WebCore::RenderBlock::constructLine): only create line boxes for lines that are not empty.
2789         (WebCore::requiresLineBoxForContent): an inline flow with line-height, vertical-alignment, or font-size
2790          will need a linebox if the rest of the line is not empty.
2791         (WebCore):
2792         (WebCore::alwaysRequiresLineBox): rename from inlineFlowRequiresLineBox.
2793         (WebCore::requiresLineBox):
2794         (WebCore::RenderBlock::LineBreaker::nextLineBreak): if the inline flow definitely requires a line, mark
2795          the line non-empty - otherwise hold off.
2796
2797 2012-02-17  Raymond Toy  <rtoy@google.com>
2798
2799         RealtimeAnalyserNode does not consistently respect .minDecibels
2800         https://bugs.webkit.org/show_bug.cgi?id=78729
2801
2802         Make use of m_minDecibel consistent.  Clean up some style issues
2803         with names of local variables and style issues with float
2804         constants.
2805         
2806         Reviewed by Chris Rogers.
2807
2808         No new tests because the changes are cosmetic for style issues.
2809
2810         * webaudio/RealtimeAnalyser.cpp:
2811         (WebCore):
2812         (WebCore::RealtimeAnalyser::doFFTAnalysis):
2813         (WebCore::RealtimeAnalyser::getFloatFrequencyData):
2814         (WebCore::RealtimeAnalyser::getByteFrequencyData):
2815         (WebCore::RealtimeAnalyser::getByteTimeDomainData):
2816
2817 2012-02-17  Abhishek Arya  <inferno@chromium.org>
2818
2819         :before content incorrectly placed in continuation
2820         when we don't have a first child.
2821         https://bugs.webkit.org/show_bug.cgi?id=78380
2822
2823         Reviewed by David Hyatt.
2824
2825         Test: fast/css-generated-content/before-content-continuation-chain.html
2826
2827         * rendering/RenderObjectChildList.cpp:
2828         (WebCore::RenderObjectChildList::updateBeforeAfterContent):
2829
2830 2012-02-17  Mihnea Ovidenie  <mihnea@adobe.com>
2831
2832         CSS regions enabled by default
2833         https://bugs.webkit.org/show_bug.cgi?id=78525
2834
2835         Reviewed by David Hyatt.
2836
2837         Test: fast/regions/css-regions-disabled.html
2838
2839         Add a runtime preference to enable/disable regions functionality at runtime(WebKitCSSRegionsEnabled).
2840         CSSRegions are still enabled by default.
2841         In DRT, use layoutTestController.overridePreference("WebKitCSSRegionsEnabled", "0") to disable the css regions functionality.
2842
2843         * WebCore.xcodeproj/project.pbxproj:
2844         * css/CSSParser.cpp:
2845         (WebCore::CSSParser::parseValue):
2846         (WebCore::CSSParser::cssRegionsEnabled):
2847         (WebCore):
2848         (WebCore::CSSParser::parseFlowThread):
2849         (WebCore::CSSParser::parseRegionThread):
2850         (WebCore::CSSParser::createRegionRule):
2851         * css/CSSParser.h:
2852         * dom/Document.cpp:
2853         (WebCore::Document::cssRegionsEnabled):
2854         (WebCore):
2855         (WebCore::Document::webkitGetFlowByName):
2856         * dom/Document.h:
2857         (Document):
2858         * dom/Element.cpp:
2859         (WebCore::Element::webkitRegionOverflow):
2860         * dom/NodeRenderingContext.cpp:
2861         (WebCore::NodeRenderingContext::moveToFlowThreadIfNeeded):
2862         * page/Settings.cpp:
2863         (WebCore::Settings::Settings):
2864         * page/Settings.h:
2865         (WebCore::Settings::setCSSRegionsEnabled):
2866         (WebCore::Settings::cssRegionsEnabled):
2867         (Settings):
2868         * rendering/RenderFlowThread.cpp:
2869         (WebCore::RenderFlowThread::RenderFlowThread):
2870         * rendering/RenderObject.cpp:
2871         (WebCore::RenderObject::createObject):
2872         * rendering/RenderRegion.cpp:
2873         (WebCore::RenderRegion::RenderRegion):
2874
2875 2012-02-17  Mihnea Ovidenie  <mihnea@adobe.com>
2876
2877         [CSSRegions]Implement NamedFlow::overflow
2878         https://bugs.webkit.org/show_bug.cgi?id=78880
2879
2880         Reviewed by David Hyatt.
2881
2882         Test: fast/regions/webkit-named-flow-overflow.html
2883
2884         * dom/WebKitNamedFlow.cpp:
2885         (WebCore::WebKitNamedFlow::WebKitNamedFlow):
2886         (WebCore::WebKitNamedFlow::overflow):
2887         (WebCore):
2888         * dom/WebKitNamedFlow.h:
2889         (WebCore):
2890         (WebCore::WebKitNamedFlow::create):
2891         (WebKitNamedFlow):
2892         * dom/WebKitNamedFlow.idl:
2893         * rendering/RenderFlowThread.cpp:
2894         (WebCore::RenderFlowThread::RenderFlowThread):
2895         (WebCore::RenderFlowThread::ensureNamedFlow):
2896         (WebCore::RenderFlowThread::computeOverflowStateForRegions):
2897         * rendering/RenderFlowThread.h:
2898
2899 2012-02-17  Joe Thomas  <joethomas@motorola.com>
2900
2901         flex-wrap:nowrap should be flex-wrap:none
2902         https://bugs.webkit.org/show_bug.cgi?id=78772
2903
2904         As per the spec http://dev.w3.org/csswg/css3-flexbox/#flex-wrap0, flex-wrap:nowrap should be changed to flex-wrap:none.
2905
2906         Reviewed by Ojan Vafai.
2907
2908         * css/CSSParser.cpp:
2909         (WebCore::CSSParser::parseValue):
2910         * css/CSSPrimitiveValueMappings.h:
2911         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
2912         (WebCore::CSSPrimitiveValue::operator EFlexWrap):
2913         * css/CSSValueKeywords.in:
2914         * rendering/style/RenderStyle.h:
2915         * rendering/style/RenderStyleConstants.h:
2916
2917 2012-02-17  Enrica Casucci  <enrica@apple.com>
2918
2919         Refactor DragData class to use PlatformStrategies in the Mac implementation.
2920         https://bugs.webkit.org/show_bug.cgi?id=78768
2921
2922         Reviewed by Darin Adler.
2923
2924         No new tests. No behavior change.
2925
2926         * WebCore.exp.in: Added new exported method of the PlatformPasteboard class.
2927         * platform/DragData.h:
2928         (WebCore::DragData::pasteboardName): Added pasteboardName and removed pasteboard.
2929         * platform/PasteboardStrategy.h: Added color() method.
2930         * platform/PlatformPasteboard.h: Ditto.
2931         * platform/mac/ClipboardMac.mm:
2932         (WebCore::Clipboard::create): Changed to use pasteboardName() method.
2933         * platform/mac/DragDataMac.mm: All the methods below have been changed to use pasteboardName
2934         and the pasteboardStrategy() methods.
2935         (WebCore::DragData::DragData):
2936         (WebCore::DragData::canSmartReplace):
2937         (WebCore::DragData::containsColor):
2938         (WebCore::DragData::containsFiles):
2939         (WebCore::DragData::numberOfFiles):
2940         (WebCore::DragData::asFilenames):
2941         (WebCore::DragData::containsPlainText):
2942         (WebCore::DragData::asPlainText):
2943         (WebCore::DragData::asColor):
2944         (WebCore::DragData::containsCompatibleContent):
2945         (WebCore::DragData::asURL):
2946         (WebCore::DragData::asFragment):
2947         * platform/mac/PlatformPasteboardMac.mm:
2948         (WebCore::PlatformPasteboard::color): Added implementation of the color() method.
2949
2950 2012-02-17  Nate Chapin  <japhet@chromium.org>
2951
2952         [Chromium mac] Cursors and background images disappear.
2953         https://bugs.webkit.org/show_bug.cgi?id=78834
2954
2955         The issue occurs because a CachedImage sees that it has no clients
2956         and decide it is safe to purge its m_data buffer. However,
2957         StyleCachedImage is holding a CachedResourceHandle to the
2958         CachedImage, and it can still add a client later. If it does so,
2959         the CachedImage says everything is loaded but has no data.
2960
2961         Reviewed by Adam Barth.
2962
2963         No new tests, since the known repros have resisted reduction.
2964         Tested manually with chrome.angrybirds.com, redfin.com and a
2965         couple of other sites.
2966
2967         * rendering/style/StyleCachedImage.cpp:
2968         * rendering/style/StyleCachedImage.h: Ensure the underlying
2969             CachedImage has a client for the lifetime of the
2970             StyleCachedImage and doesn't purge its buffer. Call
2971             addClient(this) in the constructor and removeClient(this) in
2972             the destructor, then ignore all cache callbacks.
2973
2974 2012-02-17  Julien Chaffraix  <jchaffraix@webkit.org>
2975
2976         Table cell's anonymous wrappers are left in the tree, impacting our layout
2977         https://bugs.webkit.org/show_bug.cgi?id=7180
2978
2979         Reviewed by David Hyatt.
2980
2981         Tests: fast/table/table-switch-cell-position-bad-layout-expected.html
2982                fast/table/table-switch-cell-position-bad-layout.html
2983
2984         This patch implements cell's anonymous wrapper removal at detach time.
2985
2986         Trimming the render tree when we remove objects from it would be more complex
2987         to generalize as several objects override the behavior to do their own clean-ups.
2988         This would also open more potential for programming errors.
2989
2990         This change is limited to table cells' as a simple step towards fixing bug 52123
2991         and more generally eliminate some anonymous wrappers from the tree at detach time.
2992
2993         * dom/Node.cpp:
2994         (WebCore::Node::detach):
2995         Patched detach to call destroyAndCleanupAnonymousWrappers. The Document does not need
2996         to clean up any anonymous wrappers on detach.
2997
2998         * rendering/RenderObject.cpp:
2999         (WebCore::RenderObject::destroyAndCleanupAnonymousWrappers):
3000         Added this method to wrap destroy() call and trim the render tree. To avoid slowing down
3001         detach in some cases, added a fast path.
3002
3003         * rendering/RenderObject.h: Added destroyAndCleanupAnonymousWrappers.
3004
3005 2012-02-17  Rob Buis  <rbuis@rim.com>
3006
3007         ASSERT (and crash) with dynamically moved <font-face>
3008         https://bugs.webkit.org/show_bug.cgi?id=64839
3009
3010         Reviewed by Antti Koivisto.
3011
3012         Reset the style declaration when rmeoving the font-face element from the document.
3013
3014         Test: svg/custom/font-face-move.svg
3015
3016         * svg/SVGFontFaceElement.cpp:
3017         (WebCore::SVGFontFaceElement::removedFromDocument):
3018
3019 2012-02-17  Martin Robinson  <mrobinson@igalia.com>
3020
3021         Fix some warnings encountered during the GTK+ build
3022         https://bugs.webkit.org/show_bug.cgi?id=78911
3023
3024         Reviewed by Xan Lopez.
3025
3026         No new tests. These are just fixes for warnings.
3027
3028         * page/GestureTapHighlighter.cpp: Avoid using potentially signed operations on
3029         a size_t type. Use size_t for iterating over members of a vector.
3030         * platform/graphics/texmap/TextureMapperBackingStore.cpp: Use size_t where necessary.
3031         (WebCore::TextureMapperTiledBackingStore::createOrDestroyTilesIfNeeded): Ditto.
3032         * platform/graphics/texmap/TextureMapperLayer.cpp: Ditto.
3033         (WebCore::TextureMapperLayer::computeTransformsRecursive): Ditto.
3034         (WebCore::TextureMapperLayer::paintSelfAndChildren): Ditto.
3035         (WebCore::TextureMapperLayer::intermediateSurfaceRect): Ditto.
3036
3037 2012-02-17  Tim Dresser  <tdresser@chromium.org>
3038
3039         [chromium] Refactor video drawing to be more data driven
3040         https://bugs.webkit.org/show_bug.cgi?id=76720
3041
3042         Reviewed by James Robinson.
3043
3044         CCVideoLayerImpl no longer handles drawing itself, but produces a list of CCVideoDrawQuads.
3045         These quads are then drawn by LayerRendererChromium.
3046
3047         CCLayerImpl::willDraw(LayerRendererChromium*) is called directly before appendQuads.
3048         CCLayerImpl::didDraw() is called directly after all drawing has been completed.
3049         CCLayerImpl::draw has been removed.
3050
3051         willDraw and didDraw are used to handle interaction with the VideoFrameProvider
3052         in CCVideoLayerImpl. willDraw gets a frame from the VideoFrameProvider, and
3053         didDraw returns it.
3054
3055         A unit test has been added: CCLayerTreeHostImplTest.didDrawCalledOnAllLayers.
3056         This test ensures that CCLayerImpl::didDraw() is called on all layers,
3057         including layers on different render surfaces.
3058
3059         As this was a refactor, no other tests were added.
3060
3061         * platform/graphics/chromium/LayerRendererChromium.cpp:
3062         (WebCore::LayerRendererChromium::drawYUV):
3063         (WebCore):
3064         (WebCore::LayerRendererChromium::drawSingleTextureVideoQuad):
3065         (WebCore::LayerRendererChromium::drawRGBA):
3066         (WebCore::LayerRendererChromium::drawNativeTexture):
3067         (WebCore::LayerRendererChromium::copyFrameToTextures):
3068         (WebCore::LayerRendererChromium::copyPlaneToTexture):
3069         (WebCore::LayerRendererChromium::drawVideoQuad):
3070         * platform/graphics/chromium/LayerRendererChromium.h:
3071         (LayerRendererChromium):
3072         * platform/graphics/chromium/cc/CCLayerImpl.cpp:
3073         * platform/graphics/chromium/cc/CCLayerImpl.h:
3074         (WebCore::CCLayerImpl::didDraw):
3075         (CCLayerImpl):
3076         * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
3077         (WebCore::CCLayerTreeHostImpl::calculateRenderPasses):
3078         (WebCore::CCLayerTreeHostImpl::drawLayers):
3079         * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
3080         (CCLayerTreeHostImpl):
3081         * platform/graphics/chromium/cc/CCVideoDrawQuad.cpp:
3082         (WebCore::CCVideoDrawQuad::create):
3083         (WebCore::CCVideoDrawQuad::CCVideoDrawQuad):
3084         * platform/graphics/chromium/cc/CCVideoDrawQuad.h:
3085         (CCVideoDrawQuad):
3086         (WebCore::CCVideoDrawQuad::textures):
3087         (WebCore::CCVideoDrawQuad::frame):
3088         (WebCore::CCVideoDrawQuad::format):
3089         * platform/graphics/chromium/cc/CCVideoLayerImpl.cpp:
3090         (WebCore::CCVideoLayerImpl::willDraw):
3091         (WebCore::CCVideoLayerImpl::appendQuads):
3092         (WebCore::CCVideoLayerImpl::didDraw):
3093         (WebCore::CCVideoLayerImpl::computeVisibleSize):
3094         * platform/graphics/chromium/cc/CCVideoLayerImpl.h:
3095         (CCVideoLayerImpl):
3096         (WebCore::CCVideoLayerImpl::providerMutex):
3097         (WebCore::CCVideoLayerImpl::provider):
3098         (Texture):
3099
3100 2012-02-17  Stephen Chenney  <schenney@chromium.org>
3101
3102         Crash at WebCore::SVGUseElement::expandSymbolElementsInShadowTree
3103         https://bugs.webkit.org/show_bug.cgi?id=77639
3104
3105         Reviewed by Nikolas Zimmermann.
3106
3107         Fix a SVG crash in Release builds, although it still crashes in Debug builds.
3108         The crash occurred when an SVG use element attempted to reference a style element while the file
3109         contained an error causing the error banner to display. The fix is to prevent SVGUseElement
3110         from recalculating style during tree building and return immediately when style is recalculated and
3111         the tree is building.
3112
3113         Test: svg/custom/use-referencing-style-crash.svg
3114
3115         * svg/SVGUseElement.cpp:
3116         (WebCore::SVGUseElement::willRecalcStyle): Return false if the tree is being built.
3117         (WebCore::SVGUseElement::didRecalcStyle): Check and return if the tree
3118         is being built and we are not yet ready for style update.
3119
3120 2012-02-17  Ilya Tikhonovsky  <loislo@chromium.org>
3121
3122         Unreviewed, rolling out r108077.
3123         http://trac.webkit.org/changeset/108077
3124         https://bugs.webkit.org/show_bug.cgi?id=78390
3125
3126         it broke compilation.
3127
3128         * inspector/CodeGeneratorInspector.py:
3129         * inspector/InjectedScript.cpp:
3130         (WebCore::InjectedScript::evaluateOnCallFrame):
3131         (WebCore::InjectedScript::getFunctionDetails):
3132         (WebCore::InjectedScript::getProperties):
3133         (WebCore::InjectedScript::wrapCallFrames):
3134         * inspector/InjectedScript.h:
3135         (InjectedScript):
3136         * inspector/InspectorDebuggerAgent.cpp:
3137         (WebCore::InspectorDebuggerAgent::setBreakpointByUrl):
3138         (WebCore::InspectorDebuggerAgent::resolveBreakpoint):
3139         (WebCore::InspectorDebuggerAgent::getFunctionDetails):
3140         (WebCore::InspectorDebuggerAgent::evaluateOnCallFrame):
3141         (WebCore::InspectorDebuggerAgent::currentCallFrames):
3142         (WebCore::InspectorDebuggerAgent::didParseSource):
3143         * inspector/InspectorDebuggerAgent.h:
3144         (InspectorDebuggerAgent):
3145
3146 2012-02-17  Florin Malita  <fmalita@google.com>
3147
3148         chrome.dll!WebCore::SVGTRefElement::updateReferencedText ReadAV@NULL (e85cb8e140071fa7790cad215b0109dc)
3149         https://bugs.webkit.org/show_bug.cgi?id=74858
3150
3151         Reviewed by Nikolas Zimmermann.
3152
3153         Tests: svg/custom/tref-remove-target-crash-expected.svg
3154                svg/custom/tref-remove-target-crash.svg
3155
3156         Add a DOMNodeRemovedFromDocumentEvent listener to detect when the target element is removed. Upon removal,
3157         cleanup all listeners and re-activate the pending resource to attach if the referenced ID is added
3158         at a later time programmatically. Also move the DOMSubtreeModifiedEvent listener from the parent to
3159         the target element to simplify the implementation and reduce the scope.
3160
3161         * svg/SVGTRefElement.cpp:
3162         (WebCore::TargetListener::create):
3163         (WebCore::TargetListener::cast):
3164         (WebCore::TargetListener::clear):
3165         (WebCore::TargetListener::TargetListener):
3166         (WebCore::TargetListener::operator==):
3167         (WebCore::TargetListener::handleEvent):
3168         (WebCore::SVGTRefElement::detachTarget):
3169         (WebCore::SVGTRefElement::buildPendingResource):
3170         * svg/SVGTRefElement.h:
3171
3172 2012-02-17  Simon Fraser  <simon.fraser@apple.com>
3173
3174         Fix the build after r108077.
3175
3176         * inspector/CodeGeneratorInspector.py:
3177         (RawTypes.Any.generate_validate_method):
3178
3179 2012-02-17  Simon Fraser  <simon.fraser@apple.com>
3180
3181         Avoid using a transparency layer for rgba() border drawing when possible
3182         https://bugs.webkit.org/show_bug.cgi?id=63176
3183
3184         Reviewed by Dan Bernstein.
3185         
3186         The non-radiused border drawing code would use a transparency layer
3187         when drawing any one or more borders with alpha colors. However,
3188         we only need to use a transparency layer when there is a corner
3189         join between the borders being rendered with any one color,
3190         so add a utility function includesAdjacentEdges() that can tell us
3191         that, and use it to avoid making extraneous transparency layers.
3192
3193         Optimization only, no new tests.
3194
3195         * rendering/RenderBoxModelObject.cpp:
3196         (WebCore::includesAdjacentEdges):
3197         (WebCore):
3198         (WebCore::RenderBoxModelObject::paintTranslucentBorderSides):
3199
3200 2012-02-17  Pavel Feldman  <pfeldman@google.com>
3201
3202         Not reviewed: Qt minimal build fix.
3203
3204         * inspector/InjectedScript.h:
3205         (WebCore):
3206
3207 2012-02-17  Peter Rybin  <peter.rybin@gmail.com>
3208
3209         Web Inspector: Switch Debugger agent to TypeBuilder
3210         https://bugs.webkit.org/show_bug.cgi?id=78390
3211
3212         Reviewed by Vsevolod Vlasov.
3213
3214         Client code is switched to TypeBuilder.
3215
3216         * inspector/CodeGeneratorInspector.py:
3217         * inspector/InjectedScript.cpp:
3218         (WebCore::InjectedScript::evaluateOnCallFrame):
3219         (WebCore::InjectedScript::getFunctionDetails):
3220         (WebCore::InjectedScript::getProperties):
3221         (WebCore::InjectedScript::wrapCallFrames):
3222         * inspector/InjectedScript.h:
3223         (InjectedScript):
3224         * inspector/InspectorDebuggerAgent.cpp:
3225         (WebCore::InspectorDebuggerAgent::setBreakpointByUrl):
3226         (WebCore::InspectorDebuggerAgent::resolveBreakpoint):
3227         (WebCore::InspectorDebuggerAgent::getFunctionDetails):
3228         (WebCore::InspectorDebuggerAgent::evaluateOnCallFrame):
3229         (WebCore::InspectorDebuggerAgent::currentCallFrames):
3230         (WebCore::InspectorDebuggerAgent::didParseSource):
3231         * inspector/InspectorDebuggerAgent.h:
3232         (InspectorDebuggerAgent):
3233
3234 2012-02-17  Pavel Feldman  <pfeldman@google.com>
3235
3236         Web Inspector: hide color picker on selected node update.
3237         https://bugs.webkit.org/show_bug.cgi?id=78896
3238
3239         Reviewed by Vsevolod Vlasov.
3240
3241         * inspector/front-end/Spectrum.js:
3242         (WebInspector.Spectrum.prototype.get visible):
3243         (WebInspector.Spectrum.prototype.toggle):
3244         (WebInspector.Spectrum.prototype.show):
3245         * inspector/front-end/StylesSidebarPane.js:
3246         (WebInspector.StylesSidebarPane.prototype.update):
3247         (WebInspector.StylePropertyTreeElement.prototype.updateTitle.):
3248
3249 2012-02-17  Pavel Feldman  <pfeldman@google.com>
3250
3251         Web Inspector: check undo-redo boundaries based on current action index, not history size.
3252         https://bugs.webkit.org/show_bug.cgi?id=78895
3253
3254         Reviewed by Vsevolod Vlasov.
3255
3256         Tests: inspector/elements/perform-undo-undo.html
3257                inspector/styles/perform-undo-perform-of-mergable-action.html
3258
3259         * inspector/InspectorHistory.cpp:
3260         (WebCore::InspectorHistory::perform):
3261
3262 2012-02-17  Ilya Tikhonovsky  <loislo@chromium.org>
3263
3264         Unreviewed, rolling out r108071.
3265         http://trac.webkit.org/changeset/108071
3266         https://bugs.webkit.org/show_bug.cgi?id=77155
3267
3268         chromium-mac compilation failed
3269
3270         * platform/graphics/chromium/Extensions3DChromium.h:
3271
3272 2012-02-17  Michal Mocny  <mmocny@google.com>
3273
3274         [chromium] GL_CHROMIUM_gpu_memory_manager extension
3275         https://bugs.webkit.org/show_bug.cgi?id=77155
3276
3277         Reviewed by James Robinson.
3278
3279         * platform/graphics/chromium/Extensions3DChromium.h:
3280         (GpuMemoryAllocationChangedCallbackCHROMIUM):
3281         (WebCore::Extensions3DChromium::GpuMemoryAllocationChangedCallbackCHROMIUM::~GpuMemoryAllocationChangedCallbackCHROMIUM):
3282         (Extensions3DChromium):
3283
3284 2012-02-17  Raphael Kubo da Costa  <kubo@profusion.mobi>
3285
3286         [CMake, EFL] Unreviewed, fix the build when building with
3287         SHARED_CORE=ON after r107820.
3288
3289         RunLoopEfl.cpp has not been upstreamed yet, and building only
3290         RunLoop.cpp created an .so with some missing, unimplemented
3291         symbols. The BlackBerry port seems to be in the same situation.
3292
3293         The best solution for now is to build RunLoop.cpp only on the
3294         WinCE port.
3295
3296         * CMakeLists.txt: Remove RunLoop.cpp from the list of files to build.
3297         * PlatformWinCE.cmake: Add RunLoop.cpp to the list of files to build.
3298
3299 2012-02-17  Pavel Feldman  <pfeldman@google.com>
3300
3301         Web Inspector: a bit of color picker polish
3302         https://bugs.webkit.org/show_bug.cgi?id=78892
3303
3304         - Fixed computed style swatch
3305         - Removed color: caption
3306         - Rendered value as source code, user-selectable
3307         - Removed scroller gap
3308
3309         Reviewed by Yury Semikhatsky.
3310
3311         * English.lproj/localizedStrings.js:
3312         * inspector/front-end/Popover.js:
3313         (WebInspector.Popover.prototype.setCanShrink):
3314         (WebInspector.Popover.prototype._positionElement):
3315         * inspector/front-end/Spectrum.js:
3316         * inspector/front-end/StylesSidebarPane.js:
3317         (WebInspector.StylePropertyTreeElement.prototype._resetMouseDownElement):
3318         (WebInspector.StylePropertyTreeElement.prototype.updateTitle.):
3319         * inspector/front-end/elementsPanel.css:
3320         (.spectrum-container):
3321         (.spectrum-display-value):
3322         (.spectrum-range-container):
3323         * inspector/front-end/popover.css:
3324         (.popover .content.fixed-height):
3325
3326 2012-02-17  Pavel Feldman  <pfeldman@google.com>
3327
3328         Web Inspector: color picker does not allow changing the color.
3329         https://bugs.webkit.org/show_bug.cgi?id=78886
3330
3331         Reviewed by Vsevolod Vlasov.
3332
3333         * inspector/front-end/ElementsPanel.js:
3334         (WebInspector.ElementsPanel.prototype._showPopover.showPopover):
3335         * inspector/front-end/Popover.js:
3336         (WebInspector.Popover.prototype.setCanShrink):
3337         (WebInspector.Popover.prototype._positionElement):
3338         * inspector/front-end/Settings.js:
3339         * inspector/front-end/Spectrum.js:
3340         * inspector/front-end/StylesSidebarPane.js:
3341         (WebInspector.StylesSidebarPane):
3342         (WebInspector.StylePropertyTreeElement.prototype.updateTitle.):
3343
3344 2012-02-17  Pavel Feldman  <pfeldman@google.com>
3345
3346         Web Inspector: new image preview has poorly positioned popover arrow.
3347         https://bugs.webkit.org/show_bug.cgi?id=78884
3348
3349         Reviewed by Vsevolod Vlasov.
3350
3351         * inspector/front-end/Popover.js:
3352         (WebInspector.Popover.prototype._positionElement):
3353         * inspector/front-end/utilities.js:
3354         (Element.prototype.boxInWindow):
3355
3356 2012-02-17  Pavel Feldman  <pfeldman@google.com>
3357
3358         Web Inspector: enable "Single click CSS editing" experiment by default.
3359         https://bugs.webkit.org/show_bug.cgi?id=78881
3360
3361         Reviewed by Vsevolod Vlasov.
3362
3363         * inspector/front-end/elementsPanel.css:
3364         (.styles-section .properties .enabled-button):
3365
3366 2012-02-17  Pavel Feldman  <pfeldman@google.com>
3367
3368         Web Inspector: split innerUpdate into rebuildUpdate and refreshUpdate, make computed styles load lazily.
3369         https://bugs.webkit.org/show_bug.cgi?id=78827
3370
3371         Reviewed by Vsevolod Vlasov.
3372
3373         * inspector/front-end/StylesSidebarPane.js:
3374         (WebInspector.StylesSidebarPane.prototype.update):
3375         (WebInspector.StylesSidebarPane.prototype._refreshUpdate.computedStyleCallback):
3376         (WebInspector.StylesSidebarPane.prototype._refreshUpdate):
3377         (WebInspector.StylesSidebarPane.prototype._rebuildUpdate):
3378         (WebInspector.StylesSidebarPane.prototype._validateNode):
3379         (WebInspector.StylesSidebarPane.prototype._styleSheetOrMediaQueryResultChanged):
3380         (WebInspector.StylesSidebarPane.prototype._attributesModified):
3381         (WebInspector.StylesSidebarPane.prototype._attributesRemoved):
3382         (WebInspector.StylesSidebarPane.prototype._styleInvalidated):
3383         (WebInspector.StylesSidebarPane.prototype._innerRefreshUpdate):
3384         (WebInspector.StylesSidebarPane.prototype._innerRebuildUpdate):
3385         (WebInspector.StylesSidebarPane.prototype._nodeStylesUpdatedForTest):
3386         (WebInspector.StylesSidebarPane.prototype._toggleElementStatePane):
3387         (WebInspector.StylesSidebarPane.prototype._createElementStatePane.clickListener):
3388         (WebInspector.StylesSidebarPane.prototype._showUserAgentStylesSettingChanged):
3389         (WebInspector.ComputedStyleSidebarPane.prototype.expand):
3390         (WebInspector.StylePropertyTreeElement.prototype):
3391
3392 2012-02-17  No'am Rosenthal  <noam.rosenthal@nokia.com>
3393
3394         [Qt][WK2] Allow partial updates
3395         https://bugs.webkit.org/show_bug.cgi?id=78824
3396
3397         BitmapTextureGL should not zero-fill the textures when resetting.
3398         This was needed in the previous buffer management system, where texture were not completely
3399         filled by the backing store.
3400
3401         Reviewed by Simon Hausmann.
3402
3403         No new behavior.
3404
3405         * platform/graphics/opengl/TextureMapperGL.cpp:
3406         (BitmapTextureGL):
3407         (WebCore::texSubImage2DResourceSafe):
3408         (WebCore):
3409         (WebCore::BitmapTextureGL::reset):
3410
3411 2012-02-17  Yosifumi Inoue  <yosin@chromium.org>
3412
3413         [Forms] Integrate InputType::dispatchChangeEventInResponseToSetValue into InputType::setValue
3414         https://bugs.webkit.org/show_bug.cgi?id=78873
3415
3416         Reviewed by Kent Tamura.
3417
3418         This patch moves event dispatch logic to InputType and TextFieldInputType from HTMLInputElement
3419         and merge dispatchChangeEventInResponseToSetValue to setValue.
3420
3421         No new tests. No change in behavior.
3422
3423         * html/HTMLInputElement.cpp:
3424         (WebCore::HTMLInputElement::setValue): Move dispatch logic to InputType and TextFieldInput.
3425         * html/InputType.cpp: Remove dispatchChangeEventInResponseToSetValue implementation.
3426         * html/InputType.h: Remove dispatchChangeEventInResponseToSetValue declaration.
3427         (WebCore::InputType::setValue): Move code from dispatchChangeEventInResponseToSetValue.
3428         * html/TextFieldInputType.cpp: Remove dispatchChangeEventInResponseToSetValue implementation.
3429         * html/TextFieldInputType.h: Remove dispatchChangeEventInResponseToSetValue declaration.
3430         (WebCore::TextFieldInputType::setValue): Move code from dispatchChangeEventInResponseToSetValue. Stop dispatching event in InputType::setValue.
3431         * html/HTMLTextFormControlElement.h: Make setTextAsOfLastFormControlChangeEvent to public from protected for accessing from InputType class.
3432
3433 2012-02-17  Yury Semikhatsky  <yurys@chromium.org>
3434
3435         Unreviewed. Mac build fix after r108047.
3436
3437         * WebCore.xcodeproj/project.pbxproj:
3438
3439 2012-02-16  Andreas Kling  <awesomekling@apple.com>
3440
3441         Removing the last presentation attribute should result in a null attributeStyle().
3442         <http://webkit.org/b/78812>
3443
3444         Reviewed by Antti Koivisto.
3445
3446         If the collectStyleForAttribute() pass in updateAttributeStyle() doesn't encounter any
3447         respected presentation attributes, set a null attributeStyle() instead of an empty one.
3448
3449         * css/CSSStyleSelector.cpp:
3450         (WebCore::CSSStyleSelector::collectMatchingRulesForList):
3451         * dom/StyledElement.cpp:
3452         (WebCore::StyledElement::updateAttributeStyle):
3453
3454 2012-02-16  Yury Semikhatsky  <yurys@chromium.org>
3455
3456         Web Inspector: use static counters for estimation of allocated Documents, Nodes and JS EventListeners
3457         https://bugs.webkit.org/show_bug.cgi?id=78825
3458
3459         Introduced static counters of allocated Documents, Nodes and JS EventListeners.
3460         Their values are displayed on the Timeline panel.
3461
3462         Reviewed by Pavel Feldman.
3463
3464         * CMakeLists.txt:
3465         * English.lproj/localizedStrings.js:
3466         * GNUmakefile.list.am:
3467         * Target.pri:
3468         * WebCore.gypi:
3469         * WebCore.vcproj/WebCore.vcproj:
3470         * WebCore.xcodeproj/project.pbxproj:
3471         * bindings/js/JSEventListener.cpp:
3472         (WebCore::JSEventListener::JSEventListener):
3473         (WebCore::JSEventListener::~JSEventListener):
3474         * bindings/v8/V8AbstractEventListener.cpp:
3475         (WebCore::V8AbstractEventListener::V8AbstractEventListener):
3476         (WebCore::V8AbstractEventListener::~V8AbstractEventListener):
3477         * dom/Document.cpp:
3478         (WebCore::Document::Document):
3479         (WebCore::Document::~Document):
3480         * dom/Document.h:
3481         (WebCore::Node::Node):
3482         * dom/Node.cpp:
3483         (WebCore::Node::~Node):
3484         * inspector/InspectorAllInOne.cpp:
3485         * inspector/InspectorController.cpp:
3486         (WebCore::InspectorController::InspectorController):
3487         * inspector/InspectorCounters.cpp: Added.
3488         (WebCore):
3489         (WebCore::InspectorCounters::counterValue):
3490         * inspector/InspectorCounters.h: Added.
3491         (WebCore):
3492         (InspectorCounters):
3493         (WebCore::InspectorCounters::incrementCounter):
3494         (WebCore::InspectorCounters::decrementCounter):
3495         * inspector/InspectorTimelineAgent.cpp:
3496         (WebCore::InspectorTimelineAgent::didCallFunction):
3497         (WebCore::InspectorTimelineAgent::didDispatchEvent):
3498         (WebCore::InspectorTimelineAgent::didWriteHTML):
3499         (WebCore::InspectorTimelineAgent::didFireTimer):
3500         (WebCore::InspectorTimelineAgent::didEvaluateScript):
3501         (WebCore::InspectorTimelineAgent::setHeapSizeStatistic):
3502         (WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
3503         * inspector/InspectorTimelineAgent.h:
3504         (WebCore):
3505         (WebCore::InspectorTimelineAgent::create):
3506         (InspectorTimelineAgent):
3507         * inspector/front-end/MemoryStatistics.js:
3508         (WebInspector.MemoryStatistics):
3509         (WebInspector.MemoryStatistics.prototype.addTimlineEvent):
3510         (WebInspector.MemoryStatistics.prototype._draw.getDocumentCount):
3511         (WebInspector.MemoryStatistics.prototype._refreshCurrentValues):
3512         * inspector/front-end/TimelinePanel.js:
3513         (WebInspector.TimelinePanel.prototype._onTimelineEventRecorded):
3514
3515 2012-02-16  Cris Neckar  <cdn@chromium.org>
3516
3517         Correct a misleading comment regarding string delimiters in CSS parsing.
3518         https://bugs.webkit.org/show_bug.cgi?id=78521
3519
3520         Reviewed by Zoltan Herczeg.
3521
3522         * css/CSSParser.cpp:
3523         (WebCore::CSSParser::lex):
3524
3525 2012-02-16  Martin Robinson  <mrobinson@igalia.com>
3526
3527         Fix the TextureMapper build for GTK+.
3528
3529         No new tests. This is just a build fix.
3530
3531         * GNUmakefile.list.am: Add missing files to the build and change spaces to tabs.
3532
3533 2012-02-16  Daniel Bates  <dbates@webkit.org>
3534
3535         Add ENABLE(STYLE_SCOPED) around HTMLStyleElement::m_isRegisteredWithScopingNode 
3536
3537         The instance variable HTMLStyleElement::m_isRegisteredWithScopingNode is only
3538         referenced from within ENABLE(STYLE_SCOPED)-guarded code. We should add this
3539         guard around its declaration.
3540
3541         * html/HTMLStyleElement.h:
3542         (HTMLStyleElement):
3543
3544 2012-02-16  Shinya Kawanaka  <shinyak@chromium.org>
3545
3546         [v8] v8 doesn't assume to do 'new WebKitShadowRoot(host)'
3547         https://bugs.webkit.org/show_bug.cgi?id=78875
3548
3549         Reviewed by Kentaro Hara.
3550
3551         Since v8 does not assume that we do 'new WebkitShadowRoot(host)', a wrapper object for new WebKitShadowRoot(host)
3552         was saved in DOMObject storage instead of DOMNode storage.
3553
3554         CodeGenerator should handle with DOMNode correctly to solve the problem.
3555
3556         Test: fast/dom/shadow/shadow-root-new.html
3557
3558         * bindings/scripts/CodeGeneratorV8.pm:
3559         (GenerateConstructorCallback):
3560
3561 2012-02-16  Ilya Tikhonovsky  <loislo@chromium.org>
3562
3563         Unreviewed rollout r107952 because it broke shadow-boundary-events.html and related-target-focusevent.html on mac.
3564         see http://webkit.org/b/78832
3565
3566         * CMakeLists.txt:
3567         * DerivedSources.cpp:
3568         * DerivedSources.make:
3569         * DerivedSources.pri:
3570         * GNUmakefile.list.am:
3571         * Target.pri:
3572         * WebCore.gypi:
3573         * WebCore.xcodeproj/project.pbxproj:
3574         * dom/DOMAllInOne.cpp:
3575         * dom/EventDispatchMediator.cpp:
3576         (WebCore::FocusEventDispatchMediator::create):
3577         (WebCore):
3578         (WebCore::FocusEventDispatchMediator::FocusEventDispatchMediator):
3579         (WebCore::FocusEventDispatchMediator::dispatchEvent):
3580         (WebCore::BlurEventDispatchMediator::create):
3581         (WebCore::BlurEventDispatchMediator::BlurEventDispatchMediator):
3582         (WebCore::BlurEventDispatchMediator::dispatchEvent):
3583         * dom/EventDispatchMediator.h:
3584         (FocusEventDispatchMediator):
3585         (WebCore):
3586         (BlurEventDispatchMediator):
3587         * dom/EventFactory.in:
3588         * dom/FocusEvent.cpp: Removed.
3589         * dom/FocusEvent.h: Removed.
3590         * dom/FocusEvent.idl: Removed.
3591         * dom/Node.cpp: