getComputedStyle for padding is not implemented.
[WebKit.git] / Source / WebCore / ChangeLog
1 2011-12-29  Alexis Menard  <alexis.menard@openbossa.org>
2
3         getComputedStyle for padding is not implemented.
4         https://bugs.webkit.org/show_bug.cgi?id=75352
5
6         Reviewed by Andreas Kling.
7
8         Implement getComputedStyle for padding shorthand property.
9
10         Test: fast/css/getComputedStyle/getComputedStyle-padding-shorthand.html
11
12         * css/CSSComputedStyleDeclaration.cpp:
13         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
14
15 2011-12-29  Caio Marcelo de Oliveira Filho  <caio.oliveira@openbossa.org>
16
17         Use HashMap<OwnPtr> in OriginAccessMap
18         https://bugs.webkit.org/show_bug.cgi?id=75327
19
20         Reviewed by Andreas Kling.
21
22         * page/SecurityPolicy.cpp:
23         (WebCore::SecurityPolicy::addOriginAccessWhitelistEntry):
24         (WebCore::SecurityPolicy::removeOriginAccessWhitelistEntry):
25         (WebCore::SecurityPolicy::resetOriginAccessWhitelists):
26
27 2011-12-29  Pavel Podivilov  <podivilov@chromium.org>
28
29         Web Inspector: support sourceMappingURL magic comment.
30         https://bugs.webkit.org/show_bug.cgi?id=75356
31
32         Reviewed by Pavel Feldman.
33
34         * inspector/ContentSearchUtils.cpp:
35         (WebCore::ContentSearchUtils::findSourceMapURL):
36         * inspector/ContentSearchUtils.h:
37         * inspector/InspectorDebuggerAgent.cpp:
38         (WebCore::InspectorDebuggerAgent::sourceMapURLForScript):
39
40 2011-12-29  Alexander Pavlov  <apavlov@chromium.org>
41
42         Web Inspector: Suggest pop-over doesn't hide on tab switch
43         https://bugs.webkit.org/show_bug.cgi?id=73611
44
45         Reviewed by Pavel Feldman.
46
47         * inspector/front-end/ConsoleView.js:
48         (WebInspector.ConsoleView.prototype.willHide):
49         * inspector/front-end/TextPrompt.js:
50         (WebInspector.TextPrompt.prototype.complete):
51         (WebInspector.TextPrompt.prototype._completionsReady):
52         (WebInspector.TextPrompt.prototype.acceptSuggestion):
53         (WebInspector.TextPrompt.prototype.hideSuggestBox):
54         (WebInspector.TextPrompt.SuggestBox.prototype._completionsReady):
55
56 2011-12-28  Alexander Pavlov  <apavlov@chromium.org>
57
58         Web Inspector: Implement CSS selector profiler
59         https://bugs.webkit.org/show_bug.cgi?id=74004
60
61         Reviewed by Pavel Feldman.
62
63         This implementation of CSS selector profiler measures the total time required to match a certain selector
64         against DOM nodes and apply the style declaration properties to the particular element,
65         as well as the number of selector  matches (i.e. the number of nodes that matched the selector.)
66         The results are approximate due to internal matching algorithm optimizations (shared styles et al.)
67         Multiple selectors with the same selectorText are coalesced into a single record.
68
69         * English.lproj/localizedStrings.js:
70         * WebCore.gypi:
71         * WebCore.vcproj/WebCore.vcproj:
72         * inspector/compile-front-end.sh:
73         * inspector/front-end/CSSSelectorProfileView.js: Added.
74         (WebInspector.CSSSelectorDataGridNode):
75         (WebInspector.CSSSelectorDataGridNode.prototype.get rawData):
76         (WebInspector.CSSSelectorProfileView):
77         (WebInspector.CSSSelectorProfileView.prototype.get statusBarItems):
78         (WebInspector.CSSSelectorProfileView.prototype.get profile):
79         (WebInspector.CSSSelectorProfileView.prototype.set profile):
80         (WebInspector.CSSSelectorProfileView.prototype._createProfileNodes):
81         (WebInspector.CSSSelectorProfileView.prototype.rebuildGridItems):
82         (WebInspector.CSSSelectorProfileView.prototype.refreshData):
83         (WebInspector.CSSSelectorProfileView.prototype.refreshShowAsPercents):
84         (WebInspector.CSSSelectorProfileView.prototype._sortProfile.get selectorComparator):
85         (WebInspector.CSSSelectorProfileView.prototype._sortProfile.timeComparator):
86         (WebInspector.CSSSelectorProfileView.prototype._sortProfile.matchesComparator):
87         (WebInspector.CSSSelectorProfileView.prototype._sortProfile):
88         (WebInspector.CSSSelectorProfileType):
89         (WebInspector.CSSSelectorProfileType.prototype.get buttonTooltip):
90         (WebInspector.CSSSelectorProfileType.prototype.buttonClicked):
91         (WebInspector.CSSSelectorProfileType.prototype.get treeItemTitle):
92         (WebInspector.CSSSelectorProfileType.prototype.get description):
93         (WebInspector.CSSSelectorProfileType.prototype.reset):
94         (WebInspector.CSSSelectorProfileType.prototype.isRecordingProfile):
95         (WebInspector.CSSSelectorProfileType.prototype.setRecordingProfile):
96         (WebInspector.CSSSelectorProfileType.prototype.startRecordingProfile):
97         (WebInspector.CSSSelectorProfileType.prototype.stopRecordingProfile):
98         (WebInspector.CSSSelectorProfileType.prototype.createSidebarTreeElementForProfile):
99         (WebInspector.CSSSelectorProfileType.prototype.createView):
100         * inspector/front-end/DetailedHeapshotView.js:
101         * inspector/front-end/ProfileView.js:
102         * inspector/front-end/ProfilesPanel.js:
103         (WebInspector.ProfileType.prototype.reset):
104         (WebInspector.ProfilesPanel.prototype._reset):
105         (WebInspector.ProfilesPanel.prototype.addProfileHeader):
106         (WebInspector.ProfilesPanel.prototype._removeTemporaryProfile):
107         (WebInspector.ProfilesPanel.prototype.setRecordingProfile):
108         (WebInspector.ProfilesPanel.prototype.takeHeapSnapshot):
109         (WebInspector.ProfilesPanel.prototype._reportHeapSnapshotProgress):
110         (WebInspector.ProfilerDispatcher.prototype.addProfileHeader):
111         * inspector/front-end/WebKit.qrc:
112         * inspector/front-end/inspector.html:
113         * inspector/front-end/profilesPanel.css:
114
115 2011-12-29  Sheriff Bot  <webkit.review.bot@gmail.com>
116
117         Unreviewed, rolling out r103798.
118         http://trac.webkit.org/changeset/103798
119         https://bugs.webkit.org/show_bug.cgi?id=75353
120
121         some small scrollbar differences are making the tests fail on
122         several platforms (Requested by jchaffraix on #webkit).
123
124         * rendering/RenderLayer.cpp:
125         (WebCore::RenderLayer::updateLayerPositionsAfterScroll):
126
127 2011-12-29  Alexander Pavlov  <apavlov@chromium.org>
128
129         Web Inspector: Focus of the DOM tree is not restored when switching to the Elements panel
130         https://bugs.webkit.org/show_bug.cgi?id=75351
131
132         Reviewed by Yury Semikhatsky.
133
134         * inspector/front-end/ElementsPanel.js:
135         (WebInspector.ElementsPanel.prototype.wasShown):
136
137 2011-12-29  Julien Chaffraix  <jchaffraix@webkit.org>
138
139         REGRESSION (r93614): Safari Reader doesn't repaint correctly when scrolling
140         https://bugs.webkit.org/show_bug.cgi?id=67100
141
142         Reviewed by Dan Bernstein.
143
144         Tests: fast/layers/scroll-with-transform-composited-layer-expected.html
145                fast/layers/scroll-with-transform-composited-layer.html
146                fast/layers/scroll-with-transform-layer-expected.html
147                fast/layers/scroll-with-transform-layer.html
148
149         The regression came from a previous optimization that was wrongly kept after r93614.
150
151         * rendering/RenderLayer.cpp:
152         (WebCore::RenderLayer::updateLayerPositionsAfterScroll):
153         Remove the early return for transformed layer. This change worked as we used
154         to call updateLayerPositions from scrollTo which would call updateLayerPosition on
155         all our descendants. After r93614, this is no longer the case and we explicitely need
156         to call updateLayerPosition on our descendants from updateLayerPositionsAfterScroll.
157
158 2011-12-29  Alexander Pavlov  <apavlov@chromium.org>
159
160         Web Inspector: Tree views can be collapsed/hidden using the keyboard arrows
161         https://bugs.webkit.org/show_bug.cgi?id=46272
162
163         Reviewed by Yury Semikhatsky.
164
165         WebInspector.SidebarSectionTreeElement which is not selectable has also been made non-collapsible
166         and expanded by default.
167
168         * inspector/front-end/AuditsPanel.js:
169         (WebInspector.AuditsPanel):
170         * inspector/front-end/ProfilesPanel.js:
171         (WebInspector.ProfilesPanel.prototype._registerProfileType):
172         * inspector/front-end/SidebarTreeElement.js:
173         (WebInspector.SidebarSectionTreeElement):
174         (WebInspector.SidebarSectionTreeElement.prototype.selectable.false.collapse):
175         * inspector/front-end/TimelinePanel.js:
176         (WebInspector.TimelinePanel):
177
178 2011-12-29  Pavel Feldman  <pfeldman@google.com>
179
180         Web Inspector: [chromium] pass dock to side request to the embedder.
181         https://bugs.webkit.org/show_bug.cgi?id=75344
182
183         Reviewed by Yury Semikhatsky.
184
185         I'd like to enable dock-to-right for the front-end window. This is a background work
186         to pass control flow from the front-end to the front-end host.
187
188         * inspector/InspectorFrontendClient.h:
189         * inspector/InspectorFrontendClientLocal.h:
190         (WebCore::InspectorFrontendClientLocal::requestSetDockSide):
191         * inspector/InspectorFrontendHost.cpp:
192         (WebCore::InspectorFrontendHost::requestSetDockSide):
193         * inspector/InspectorFrontendHost.h:
194         * inspector/InspectorFrontendHost.idl:
195         * inspector/front-end/InspectorFrontendHostStub.js:
196         (.WebInspector.InspectorFrontendHostStub.prototype.requestAttachWindow):
197         (.WebInspector.InspectorFrontendHostStub.prototype.requestDetachWindow):
198         (.WebInspector.InspectorFrontendHostStub.prototype.requestSetDockSide):
199
200 2011-12-28  Pavel Podivilov  <podivilov@chromium.org>
201
202         Web Inspector: add "enable source maps" checkbox setting.
203         https://bugs.webkit.org/show_bug.cgi?id=75311
204
205         Reviewed by Pavel Feldman.
206
207         When "enable source maps" is on, all auto detected source maps are silently applied.
208
209         * English.lproj/localizedStrings.js:
210         * inspector/front-end/DebuggerPresentationModel.js:
211         * inspector/front-end/JavaScriptSourceFrame.js:
212         (WebInspector.JavaScriptSourceFrame.prototype.populateTextAreaContextMenu):
213         * inspector/front-end/RawSourceCode.js:
214         (WebInspector.RawSourceCode):
215         (WebInspector.RawSourceCode.prototype.setFormatted):
216         (WebInspector.RawSourceCode.prototype._updateSourceMapping.didCreateSourceMapping):
217         (WebInspector.RawSourceCode.prototype._updateSourceMapping):
218         (WebInspector.RawSourceCode.prototype._createUISourceCode):
219         * inspector/front-end/Settings.js:
220         (WebInspector.Settings):
221         * inspector/front-end/SettingsScreen.js:
222         (WebInspector.SettingsScreen):
223         * inspector/front-end/UISourceCode.js:
224         (WebInspector.UISourceCode):
225         * inspector/front-end/inspector.js:
226         (WebInspector._toolbarItemClicked):
227
228 2011-12-29  Julien Chaffraix  <jchaffraix@webkit.org>
229
230         Tighten our checks for needsSectionRecalc in RenderTable
231         https://bugs.webkit.org/show_bug.cgi?id=73972
232
233         Reviewed by Adam Barth.
234
235         Refactoring covered under the new tests.
236
237         Now most of the functions use the header, first body and footer's 
238         getters that checks if we need a section recalculation. The only
239         exceptions are addChild and recalcSections as they can be called
240         with the bit set.
241
242         * rendering/RenderTable.cpp:
243         (WebCore::RenderTable::layout):
244         (WebCore::RenderTable::outerBorderAfter):
245         (WebCore::RenderTable::sectionAbove):
246         (WebCore::RenderTable::sectionBelow):
247         Updated the previous functions to use the sections' getters.
248
249         (WebCore::RenderTable::RenderTable):
250         (WebCore::RenderTable::addChild):
251         (WebCore::RenderTable::recalcSections):
252         Update the previous functions after the 2 renames
253         (see below).
254
255         * rendering/RenderTable.h:
256         (WebCore::RenderTable::header):
257         (WebCore::RenderTable::footer):
258         (WebCore::RenderTable::firstBody):
259         Added some ASSERT here. Also renamed m_head to m_header
260         and m_foot to m_footer to match the getter and to avoid
261         unneeded abbreviation.
262
263         (WebCore::RenderTable::hasSections):
264         (WebCore::RenderTable::topSection):
265         Updated the previous functions to use the section getters.
266
267 2011-12-28  Caio Marcelo de Oliveira Filho  <caio.oliveira@openbossa.org>
268
269         Use HashMap<OwnPtr> for UserScriptMap and UserStyleSheetMap
270         https://bugs.webkit.org/show_bug.cgi?id=75323
271
272         Reviewed by Darin Adler.
273
274         * dom/Document.cpp:
275         (WebCore::Document::pageGroupUserSheets):
276         * page/PageGroup.cpp:
277         (WebCore::PageGroup::addUserScriptToWorld):
278         (WebCore::PageGroup::addUserStyleSheetToWorld):
279         (WebCore::PageGroup::removeUserScriptFromWorld):
280         (WebCore::PageGroup::removeUserStyleSheetFromWorld): fix a small mistake in
281         previous code. Now the entry for world is removed (and deleted) only if its
282         stylesheet vector is empty.
283         (WebCore::PageGroup::removeUserScriptsFromWorld):
284         (WebCore::PageGroup::removeUserStyleSheetsFromWorld):
285         (WebCore::PageGroup::removeAllUserContent):
286         * page/UserScriptTypes.h:
287         * page/UserStyleSheetTypes.h:
288
289 2011-12-28  Andreas Kling  <awesomekling@apple.com>
290
291         Reduce memory used by NamedNodeMap.
292         <http://webkit.org/b/75333>
293
294         Reviewed by Sam Weinig.
295
296         Give NamedNodeMap's attribute vector an inline capacity of 4. The vast majority
297         of elements have <= 4 attributes, and if they don't have any we normally don't
298         allocate an attribute map at all.
299
300         This reduces memory consumption by 1.2MB (on 64-bit) when loading the full HTML5
301         spec at <http://whatwg.org/c>.
302
303         * dom/NamedNodeMap.h:
304
305 2011-12-28  Andreas Kling  <awesomekling@apple.com>
306
307         Reduce memory used by SpaceSplitString.
308         <http://webkit.org/b/75315>
309
310         Reviewed by Sam Weinig.
311
312         Split the string upon creation instead of waiting until it's accessed.
313         This allows us to get rid of all data members except the substring vector.
314         Since we're storing AtomicStrings, this is way more memory-efficient than
315         the previous implementation in the majority of cases.
316
317         Also reduced the inline capcity of the vector to 2 (from 8), after testing
318         showed this to cover 90% of the cases on the Alexa top sites.
319
320         All in all this reduces memory consumption by 1.1MB (on 64-bit) when
321         loading the full HTML5 spec at <http://whatwg.org/c>. On that same page,
322         less than 2ms is spent (on my MBP) splitting the ~20000 strings.
323
324         * dom/SpaceSplitString.cpp:
325         (WebCore::SpaceSplitStringData::createVector):
326         (WebCore::SpaceSplitStringData::containsAll):
327         (WebCore::SpaceSplitStringData::remove):
328         * dom/SpaceSplitString.h:
329         (WebCore::SpaceSplitStringData::SpaceSplitStringData):
330         (WebCore::SpaceSplitStringData::contains):
331         (WebCore::SpaceSplitStringData::size):
332         (WebCore::SpaceSplitStringData::operator[]):
333
334 2011-12-28  ChangSeok Oh  <shivamidow@gmail.com>
335
336         [GTK] Fix compilation issue when selecting opengl for Accelerated compositing
337         https://bugs.webkit.org/show_bug.cgi?id=75309
338
339         Reviewed by Martin Robinson.
340
341         Add TextureMapperGL and TextureMapperGLCairo files.
342         They define new classes required to implement TextureMapperGL for GTK port.
343
344         No new tests required.
345
346         * GNUmakefile.list.am:
347         * platform/graphics/cairo/TextureMapperGLCairo.cpp: Added.
348         (WebCore::BGRA32PremultimpliedBufferCairo::BGRA32PremultimpliedBufferCairo):
349         (WebCore::BGRA32PremultimpliedBufferCairo::~BGRA32PremultimpliedBufferCairo):
350         (WebCore::BGRA32PremultimpliedBufferCairo::beginPaint):
351         (WebCore::BGRA32PremultimpliedBufferCairo::data):
352         (WebCore::BGRA32PremultimpliedBufferCairo::endPaint):
353         (WebCore::uidForImage):
354         (WebCore::BGRA32PremultimpliedBuffer::create):
355         * platform/graphics/cairo/TextureMapperGLCairo.h: Added.
356
357 2011-12-28  Sheriff Bot  <webkit.review.bot@gmail.com>
358
359         Unreviewed, rolling out r103782.
360         http://trac.webkit.org/changeset/103782
361         https://bugs.webkit.org/show_bug.cgi?id=75328
362
363         broke origin-whitelisting-removal.html (Requested by kling on
364         #webkit).
365
366         * page/SecurityPolicy.cpp:
367         (WebCore::SecurityPolicy::addOriginAccessWhitelistEntry):
368         (WebCore::SecurityPolicy::removeOriginAccessWhitelistEntry):
369         (WebCore::SecurityPolicy::resetOriginAccessWhitelists):
370
371 2011-12-28  Kentaro Hara  <haraken@chromium.org>
372
373         Enable the [Supplemental] IDL on Qt
374         https://bugs.webkit.org/show_bug.cgi?id=75274
375
376         Reviewed by Adam Barth.
377
378         This patch enables the [Supplemental] IDL on Qt by changing the build
379         flow of Qt as follows.
380
381         - Previous build flow:
382             foreach $idl (all IDL files) {
383                 generate-bindings.pl depends on $idl;
384                 generate-bindings.pl reads $idl;
385                 generate-bindings.pl generates .h and .cpp files for $idl;
386             }
387
388         - New build flow (See the discussions in bug 72138 for more details):
389             resolve-supplemental.pl depends on all IDL files;
390             resolve-supplemental.pl reads all IDL files;
391             resolve-supplemental.pl resolves the dependency of [Supplemental=XXXX];
392             resolve-supplemental.pl outputs supplemental_dependency.tmp;
393             foreach $idl (all IDL files) {
394                 generate-bindings.pl depends on $idl and supplemental_dependency.tmp;
395                 generate-bindings.pl reads $idl;
396                 generate-bindings.pl reads supplemental_dependency.tmp;
397                 generate-bindings.pl generates .h and .cpp files for $idl,
398                     including all attributes in the IDL files that are implementing $idl;
399             }
400
401         Tests: Confirm that build succeeds.
402                http/tests/websocket/tests/*
403
404         * DerivedSources.pri: Described the above build flow.
405
406 2011-12-28  Caio Marcelo de Oliveira Filho  <caio.oliveira@openbossa.org>
407
408         Use HashMap<OwnPtr> in OriginAccessMap
409         https://bugs.webkit.org/show_bug.cgi?id=75327
410
411         Reviewed by Andreas Kling.
412
413         * page/SecurityPolicy.cpp:
414         (WebCore::SecurityPolicy::addOriginAccessWhitelistEntry):
415         (WebCore::SecurityPolicy::removeOriginAccessWhitelistEntry):
416         (WebCore::SecurityPolicy::resetOriginAccessWhitelists):
417
418 2011-12-28  Caio Marcelo de Oliveira Filho  <caio.oliveira@openbossa.org>
419
420         Use HashMap<OwnPtr> for ProgressTracker's items
421         https://bugs.webkit.org/show_bug.cgi?id=75326
422
423         Reviewed by Andreas Kling.
424
425         * loader/ProgressTracker.cpp:
426         (WebCore::ProgressTracker::~ProgressTracker): although is empty, the destructor was
427         kept so in the header file we can forward declare ProgressItem and use in an OwnPtr.
428         (WebCore::ProgressTracker::reset):
429         (WebCore::ProgressTracker::incrementProgress):
430         (WebCore::ProgressTracker::completeProgress): removed a useless assignment to item
431         member just before it is deleted.
432         * loader/ProgressTracker.h:
433
434 2011-12-28  Alexis Menard  <alexis.menard@openbossa.org>
435
436         getComputedStyle for border-color is not implemented.
437         https://bugs.webkit.org/show_bug.cgi?id=75324
438
439         Reviewed by Andreas Kling.
440
441         Implement getComputedStyle for border-color.
442
443         Test: fast/css/getComputedStyle/getComputedStyle-border-color-shorthand.html
444
445         * css/CSSComputedStyleDeclaration.cpp:
446         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
447
448 2011-12-28  Darin Adler  <darin@apple.com>
449
450         Use OwnPtr to handle lifetime and deletion of FontFace objects
451         https://bugs.webkit.org/show_bug.cgi?id=75221
452
453         Reviewed by Daniel Bates.
454
455         * css/CSSFontFaceSource.cpp:
456         (WebCore::CSSFontFaceSource::getFontData): Use add instead of get/set to read and
457         then later fill a cache. Use new version of registerCustomFont that takes PassOwnPtr.
458         * css/CSSSegmentedFontFace.cpp:
459         (WebCore::CSSSegmentedFontFace::getFontData): Ditto.
460
461         * dom/Document.cpp:
462         (WebCore::Document::registerCustomFont): Take a PassOwnPtr instead of raw pointer.
463         * dom/Document.h: Ditto.
464
465 2011-12-28  Adam Barth  <abarth@webkit.org>
466
467         "Fake" insertion mode in HTMLTreeBuilder doesn't do anything
468         https://bugs.webkit.org/show_bug.cgi?id=75322
469
470         Reviewed by Darin Adler.
471
472         This machinery isn't needed anymore now that we're using the new
473         foreign content hotness.
474
475         * html/parser/HTMLTreeBuilder.cpp:
476         * html/parser/HTMLTreeBuilder.h:
477         (WebCore::HTMLTreeBuilder::setInsertionMode):
478
479 2011-12-28  Alexis Menard  <alexis.menard@openbossa.org>
480
481         getComputedStyle for border-style is not implemented.
482         https://bugs.webkit.org/show_bug.cgi?id=75312
483
484         Reviewed by Andreas Kling.
485
486         Implement getComputedStyle for border-style.
487
488         Test: fast/css/getComputedStyle/getComputedStyle-border-style-shorthand.html
489
490         * css/CSSComputedStyleDeclaration.cpp:
491         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
492
493 2011-12-28  Alexis Menard  <alexis.menard@openbossa.org>
494
495         getComputedStyle for border-bottom, border-top, border-left, border-right is not implemented.
496         https://bugs.webkit.org/show_bug.cgi?id=74743
497
498         Reviewed by Tony Chang.
499
500         Implement getComputedStyle for border-top, border-bottom, border-right, border-left.
501
502         Test: fast/css/getComputedStyle/getComputedStyle-border-shorthand.html
503
504         * css/CSSComputedStyleDeclaration.cpp:
505         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
506         (WebCore::CSSComputedStyleDeclaration::getCSSPropertyValuesForShorthandProperties):
507         * css/CSSComputedStyleDeclaration.h:
508
509 2011-12-28  Robert Hogan  <robert@webkit.org>
510
511         Inline flow not learning height of all text descendants
512         https://bugs.webkit.org/show_bug.cgi?id=75305
513
514         Reviewed by Dan Bernstein.
515
516         Tests: fast/inline/nested-text-descendants-expected.html
517                fast/inline/nested-text-descendants.html
518
519         The root inline box would only learn it had text descendants if its first grandchild
520         was text. It wasn't informed of subsequent text grandchildren so could not factor them 
521         into its calculation of the line height.
522         To fix this, propagate the existence of a text descendant to the root inline box
523         by walking up through the text child's ancestors.
524
525         * rendering/InlineFlowBox.cpp:
526         (WebCore::setHasTextDescendantsOnAncestors):
527         (WebCore::InlineFlowBox::addToLine):
528         * rendering/InlineFlowBox.h:
529         (WebCore::InlineFlowBox::setHasTextDescendants):
530
531 2011-12-28  Sheriff Bot  <webkit.review.bot@gmail.com>
532
533         Unreviewed, rolling out r103620.
534         http://trac.webkit.org/changeset/103620
535         https://bugs.webkit.org/show_bug.cgi?id=75316
536
537         Causes many crashes (Requested by abarth on #webkit).
538
539         * loader/FrameLoaderClient.h:
540         * page/DOMWindow.cpp:
541         (WebCore::DOMWindow::postMessageTimerFired):
542
543 2011-12-28  Alexander Pavlov  <apavlov@chromium.org>
544
545         [V8][Chromium] 'randomString' in document.body.style always returns true
546         https://bugs.webkit.org/show_bug.cgi?id=75313
547
548         Reviewed by Adam Barth.
549
550         * bindings/v8/custom/V8CSSStyleDeclarationCustom.cpp:
551         (WebCore::V8CSSStyleDeclaration::namedPropertyQuery):
552
553 2011-12-28  Vsevolod Vlasov  <vsevik@chromium.org>
554
555         Web Inspector: Add domain.png to WebCore.gypi / WebKit.qrc.
556         https://bugs.webkit.org/show_bug.cgi?id=75310
557
558         Reviewed by Pavel Feldman.
559
560         * WebCore.gypi:
561         * inspector/front-end/WebKit.qrc:
562
563 2011-12-28  Vsevolod Vlasov  <vsevik@chromium.org>
564
565         Web Inspector: ExperimentsSettings causes warning on chromium when reading localizedStrings.
566         https://bugs.webkit.org/show_bug.cgi?id=75299
567
568         Reviewed by Pavel Feldman.
569
570         * inspector/front-end/Settings.js:
571         (WebInspector.ExperimentsSettings):
572         * inspector/front-end/SettingsScreen.js:
573         (WebInspector.SettingsScreen.prototype._createExperimentCheckbox):
574
575 2011-12-28  Vsevolod Vlasov  <vsevik@chromium.org>
576
577         Web Inspector: Scripts panel: add debug sidebar resizer to TabbedEditorContainer.
578         https://bugs.webkit.org/show_bug.cgi?id=75300
579
580         Reviewed by Pavel Feldman.
581
582         * inspector/front-end/ScriptsPanel.js:
583         * inspector/front-end/scriptsPanel.css:
584         (#scripts-debug-sidebar-resizer-widget):
585
586 2011-12-28  Alexander Pavlov  <apavlov@chromium.org>
587
588         Web Inspector: Introduce a Profiler launcher view similar to that in the Audits panel
589         https://bugs.webkit.org/show_bug.cgi?id=75228
590
591         Reviewed by Pavel Feldman.
592
593         * English.lproj/localizedStrings.js:
594         * WebCore.gypi:
595         * WebCore.vcproj/WebCore.vcproj:
596         * inspector/front-end/AuditLauncherView.js:
597         (WebInspector.AuditLauncherView):
598         * inspector/front-end/AuditsPanel.js:
599         (WebInspector.AuditsPanel):
600         * inspector/front-end/DetailedHeapshotView.js:
601         (WebInspector.DetailedHeapshotProfileType):
602         (WebInspector.DetailedHeapshotProfileType.prototype.get treeItemTitle):
603         (WebInspector.DetailedHeapshotProfileType.prototype.get description):
604         * inspector/front-end/ProfileLauncherView.js: Added.
605         (WebInspector.ProfileLauncherView):
606         (WebInspector.ProfileLauncherView.prototype.setUpEventListeners):
607         (WebInspector.ProfileLauncherView.prototype.addProfileType):
608         (WebInspector.ProfileLauncherView.prototype._controlButtonClicked):
609         (WebInspector.ProfileLauncherView.prototype._updateControls):
610         (WebInspector.ProfileLauncherView.prototype._profileTypeChanged):
611         (WebInspector.ProfileLauncherView.prototype._onProfileStarted):
612         (WebInspector.ProfileLauncherView.prototype._onProfileFinished):
613         * inspector/front-end/ProfileView.js:
614         (WebInspector.CPUProfileType):
615         (WebInspector.CPUProfileType.prototype.get treeItemTitle):
616         (WebInspector.CPUProfileType.prototype.get description):
617         * inspector/front-end/ProfilesPanel.js:
618         (WebInspector.ProfileType.prototype.get treeItemTitle):
619         (WebInspector.ProfileType.prototype.get description):
620         (WebInspector.ProfilesPanel.prototype.get statusBarItems):
621         (WebInspector.ProfilesPanel.prototype.toggleRecordButton):
622         (WebInspector.ProfilesPanel.prototype._onProfileTypeSelected):
623         (WebInspector.ProfilesPanel.prototype._reset):
624         (WebInspector.ProfilesPanel.prototype._showLauncherView):
625         (WebInspector.ProfilesPanel.prototype._registerProfileType):
626         (WebInspector.ProfilesPanel.prototype._addProfileHeader):
627         (WebInspector.ProfilesPanel.prototype._updateInterface):
628         (WebInspector.ProfileTypeTreeElement):
629         (WebInspector.ProfileTypeTreeElement.prototype.collapse):
630         (WebInspector.ProfilesSidebarTreeElement):
631         (WebInspector.ProfilesSidebarTreeElement.prototype.onattach):
632         (WebInspector.ProfilesSidebarTreeElement.prototype.onselect):
633         (WebInspector.ProfilesSidebarTreeElement.prototype.get selectable):
634         (WebInspector.ProfilesSidebarTreeElement.prototype.refresh):
635         * inspector/front-end/WebKit.qrc:
636         * inspector/front-end/WelcomeView.js: Removed.
637         * inspector/front-end/auditsPanel.css:
638         (.audit-launcher-view .audit-launcher-view-content):
639         (.audit-launcher-view div.button-container):
640         (.panel-enabler-view.audit-launcher-view label):
641         (.panel-enabler-view.audit-launcher-view label.disabled):
642         * inspector/front-end/inspector.html:
643         * inspector/front-end/panelEnablerView.css:
644         (.panel-enabler-view img):
645         (.panel-enabler-view .flexible-space):
646         (.panel-enabler-view button:not(.status-bar-item)):
647         (body.inactive .panel-enabler-view button, .panel-enabler-view button:disabled):
648         (.panel-enabler-view input[type="radio"]):
649         (.panel-enabler-view input[type="radio"]:active:not(:disabled)):
650         (.panel-enabler-view input[type="radio"]:checked):
651         (.panel-enabler-view input[type="radio"]:checked:active):
652         * inspector/front-end/profilesPanel.css:
653         (.profile-launcher-view-tree-item > .icon):
654         (.profile-launcher-view-content):
655         (.profile-launcher-view-content h1):
656         (.panel-enabler-view.profile-launcher-view form):
657         (.panel-enabler-view.profile-launcher-view label):
658         (.profile-launcher-view-content p):
659         (.panel-enabler-view.profile-launcher-view button:not(.status-bar-item)):
660         (.profile-launcher-view-content button.running:not(.status-bar-item)):
661         (body.inactive .profile-launcher-view-content button.running:not(.status-bar-item)):
662
663 2011-12-28  Sheriff Bot  <webkit.review.bot@gmail.com>
664
665         Unreviewed, rolling out r103763.
666         http://trac.webkit.org/changeset/103763
667         https://bugs.webkit.org/show_bug.cgi?id=75307
668
669         "Compilation fails on Snow Leopard" (Requested by yurys on
670         #webkit).
671
672         * inspector/CodeGeneratorInspector.py:
673         (Helper):
674         (create_ad_hoc_type_declaration.Helper):
675         (CodeGenerator.generate_type_builder):
676         (get_in_c_type_text):
677
678 2011-12-28  Peter Rybin  <peter.rybin@gmail.com>
679
680         Web Inspector: CodeGeneratorInspector.py: generate enum types.
681         https://bugs.webkit.org/show_bug.cgi?id=74954
682
683         Reviewed by Yury Semikhatsky.
684
685         Internal map of string contants is created. C enums are created for
686         each JSON enum.
687
688         * inspector/CodeGeneratorInspector.py:
689         (EnumConstants.add_constant):
690         (EnumConstants):
691         (EnumConstants.get_enum_constant_code):
692         (TypeBindings.create_type_declaration_.EnumBinding.get_code_generator.CodeGenerator.generate_type_builder):
693         (TypeBindings.create_type_declaration_.EnumBinding.get_in_c_type_text):
694         (TypeBindings.create_type_declaration_.EnumBinding.get_setter_value_expression_pattern):
695         (TypeBindings.create_type_declaration_.PlainString.reduce_to_raw_type):
696         (TypeBindings.create_type_declaration_.PlainString.get_setter_value_expression_pattern):
697         (get_in_c_type_text):
698         (get_setter_value_expression_pattern):
699         (PlainObjectBinding.get_in_c_type_text):
700         (PlainObjectBinding.get_setter_value_expression_pattern):
701         (RawTypesBinding.get_in_c_type_text):
702         (RawTypesBinding.get_setter_value_expression_pattern):
703         (get_annotated_type_text):
704         (MethodGenerateModes.get_modes):
705         (MethodGenerateModes.StrictParameterMode.get_c_param_type_text):
706         (MethodGenerateModes.StrictParameterMode):
707         (MethodGenerateModes.StrictParameterMode.get_setter_value_expression):
708         (MethodGenerateModes.RawParameterMode.get_c_param_type_text):
709         (MethodGenerateModes.RawParameterMode):
710         (MethodGenerateModes.RawParameterMode.get_setter_value_expression):
711         (MethodGenerateModes.CombinedMode.get_c_param_type_text):
712         (MethodGenerateModes):
713         (MethodGenerateModes.CombinedMode):
714         (MethodGenerateModes.CombinedMode.get_setter_value_expression):
715
716 2011-12-28  Hans Wennborg  <hans@chromium.org>
717
718         IndexedDB: IDBKeyRange constructor should throw when lower > upper
719         https://bugs.webkit.org/show_bug.cgi?id=74705
720
721         Reviewed by Tony Chang.
722
723         Make IDBKeyRange throw an exception when lower > upper,
724         or lower == upper and one or both of the bounds is open.
725
726         Tested in storage/indexeddb/keyrange.html.
727
728         * storage/IDBKeyRange.cpp:
729         (WebCore::IDBKeyRange::bound):
730
731 2011-12-28  Alexander Pavlov  <apavlov@chromium.org>
732
733         Web Inspector: [protocol] empty enum constant should be replaced with identifier
734         https://bugs.webkit.org/show_bug.cgi?id=75273
735
736         Reviewed by Yury Semikhatsky.
737
738         * inspector/Inspector.json:
739         * inspector/InspectorCSSAgent.cpp:
740         (WebCore::InspectorCSSAgent::asInspectorStyleSheet):
741         (WebCore::InspectorCSSAgent::detectOrigin):
742         * inspector/InspectorStyleSheet.cpp:
743         (WebCore::InspectorStyleSheet::buildObjectForRule):
744         * inspector/front-end/CSSStyleModel.js:
745         (WebInspector.CSSRule.prototype.get isRegular):
746
747 2011-12-27  Pavel Feldman  <pfeldman@google.com>
748
749         Web Inspector: complete annotating SDK component.
750         https://bugs.webkit.org/show_bug.cgi?id=75259
751
752         Reviewed by Yury Semikhatsky.
753
754         * inspector/front-end/DebuggerPresentationModel.js:
755         (WebInspector.DebuggerPresentationModel.prototype._addScript):
756         * inspector/front-end/NetworkManager.js:
757         (WebInspector.NetworkManager.prototype._cacheDisabledSettingChanged):
758         (WebInspector.NetworkDispatcher.prototype._isNull):
759         (WebInspector.NetworkDispatcher.prototype.webSocketCreated):
760         * inspector/front-end/Resource.js:
761         (WebInspector.Resource.displayName):
762         * inspector/front-end/ResourceTreeModel.js:
763         (WebInspector.ResourceTreeModel.prototype._onResourceUpdated):
764         (WebInspector.ResourceTreeModel.prototype._consoleMessageAdded):
765         (WebInspector.ResourceTreeFrame.prototype.get name):
766         * inspector/front-end/TabbedEditorContainer.js:
767
768 2011-12-27  Anantanarayanan G Iyengar  <ananta@chromium.org>
769
770         Crash in the WebKit accessibility code while attempting to retrieve the title UI element.
771         https://bugs.webkit.org/show_bug.cgi?id=75279
772
773         Reviewed by Ryosuke Niwa.
774
775         Fix a crash in the the WebKit accessibility code which occurs while retrieving
776         the title UI clement. The fix is to NULL check the RenderObject::node return value.
777
778         No test added as there is no reduction.
779
780         * accessibility/AccessibilityRenderObject.cpp:
781         (WebCore::AccessibilityRenderObject::titleUIElement):
782
783 2011-12-27  Dominic Cooney  <dominicc@chromium.org>
784
785         Remove initWebKitAnimationEvent method
786         https://bugs.webkit.org/show_bug.cgi?id=71698
787
788         Reviewed by Ojan Vafai.
789
790         Now that WebKitAnimationEvent has a constructor, we don't need
791         this
792         method. <https://www.w3.org/Bugs/Public/show_bug.cgi?id=15338> is
793         tracking the change to the CSS Animations spec.
794
795         * dom/WebKitAnimationEvent.cpp:
796         * dom/WebKitAnimationEvent.h:
797         * dom/WebKitAnimationEvent.idl:
798
799 2011-12-27  Dominic Cooney   <dominicc@chromium.org>
800
801         Remove initWebKitTransitionEvent method
802         https://bugs.webkit.org/show_bug.cgi?id=71701
803
804         Reviewed by Ojan Vafai.
805
806         Now that WebKitTransitionEvent has a constructor, we don't need
807         this
808         method. <https://www.w3.org/Bugs/Public/show_bug.cgi?id=15339> is
809         tracking the change to the CSS Transitions spec.
810
811         * dom/WebKitTransitionEvent.cpp:
812         * dom/WebKitTransitionEvent.h:
813         * dom/WebKitTransitionEvent.idl:
814
815 2011-12-27  Tony Chang  <tony@chromium.org>
816
817         Move HarfBuzz files into their own directory
818         https://bugs.webkit.org/show_bug.cgi?id=72780
819
820         Reviewed by Daniel Bates.
821
822         FontCacheLinux.cpp got moved to platform/graphics/skia/FontCacheSkia.cpp since it wasn't HarfBuzz specific.
823
824         I used HarfBuzz in filenames since that seems to be how the name is capitalized on the project home page.
825
826         Fixed some style errors caught by the style checker.
827
828         * PlatformBlackBerry.cmake:
829         * WebCore.gyp/WebCore.gyp:
830         * WebCore.gypi:
831         * platform/graphics/chromium/FontPlatformData.h:
832         * platform/graphics/harfbuzz/ComplexTextControllerHarfBuzz.cpp: Renamed from Source/WebCore/platform/graphics/chromium/ComplexTextControllerLinux.cpp.
833         * platform/graphics/harfbuzz/ComplexTextControllerHarfBuzz.h: Renamed from Source/WebCore/platform/graphics/chromium/ComplexTextControllerLinux.h.
834         * platform/graphics/harfbuzz/FontHarfBuzz.cpp: Renamed from Source/WebCore/platform/graphics/chromium/FontLinux.cpp.
835         * platform/graphics/harfbuzz/FontPlatformDataHarfBuzz.cpp: Renamed from Source/WebCore/platform/graphics/chromium/FontPlatformDataLinux.cpp.
836         * platform/graphics/harfbuzz/FontPlatformDataHarfBuzz.h: Renamed from Source/WebCore/platform/graphics/chromium/FontPlatformDataLinux.h.
837         * platform/graphics/harfbuzz/HarfBuzzSkia.cpp: Renamed from Source/WebCore/platform/graphics/chromium/HarfbuzzSkia.cpp.
838         * platform/graphics/harfbuzz/HarfBuzzSkia.h: Renamed from Source/WebCore/platform/graphics/chromium/HarfbuzzSkia.h.
839         * platform/graphics/harfbuzz/SimpleFontDataSkia.cpp: Renamed from Source/WebCore/platform/graphics/chromium/SimpleFontDataLinux.cpp.
840         * platform/graphics/skia/FontCacheSkia.cpp: Renamed from Source/WebCore/platform/graphics/chromium/FontCacheLinux.cpp.
841         * platform/graphics/skia/GlyphPageTreeNodeSkia.cpp:
842
843 2011-12-27  Huang Dongsung  <luxtella@company100.net>
844
845         [TexMap][QT] The fragment shader in OpenGL ES2 requires the default precision
846         qualifier.
847         https://bugs.webkit.org/show_bug.cgi?id=75168
848
849         Reviewed by Noam Rosenthal.
850
851         No new functionality so no new tests.
852
853         * platform/graphics/opengl/TextureMapperGL.cpp:
854         (WebCore::TextureMapperGL::initializeShaders):
855
856 2011-12-27  Ryosuke Niwa  <rniwa@webkit.org>
857
858         [Chromium] uninitialized variable in fakeMouseMoveEventTimerFired
859         https://bugs.webkit.org/show_bug.cgi?id=75263
860
861         Reviewed by Tony Chang.
862
863         The failure was caused by PlatformKeyboardEvent::getCurrentModifierState in PlatformKeyboardEventChromium.cpp
864         not initializing arguments on Linux. Fixed the failure by always assigning false to the arguments.
865
866         But we should really fix this function for Linux. Not recognizing any modifier isn't great.
867
868         * platform/chromium/PlatformKeyboardEventChromium.cpp:
869         (WebCore::PlatformKeyboardEvent::getCurrentModifierState):
870
871 2011-12-27  Kentaro Hara  <haraken@chromium.org>
872
873         WIP: Enable the [Supplemental] IDL on Gtk
874         https://bugs.webkit.org/show_bug.cgi?id=74972
875
876         Reviewed by Adam Barth.
877
878         This patch enables the [Supplemental] IDL on Gtk by changing the build
879         flow of Gtk as follows.
880
881         - Previous build flow:
882             foreach $idl (all IDL files) {
883                 generate-bindings.pl depends on $idl;
884                 generate-bindings.pl reads $idl;
885                 generate-bindings.pl generates .h and .cpp files for $idl;
886             }
887
888         - New build flow (See the discussions in bug 72138 for more details):
889             resolve-supplemental.pl depends on all IDL files;
890             resolve-supplemental.pl reads all IDL files;
891             resolve-supplemental.pl resolves the dependency of [Supplemental=XXXX];
892             resolve-supplemental.pl outputs supplemental_dependency.tmp;
893             foreach $idl (all IDL files) {
894                 generate-bindings.pl depends on $idl and supplemental_dependency.tmp;
895                 generate-bindings.pl reads $idl;
896                 generate-bindings.pl reads supplemental_dependency.tmp;
897                 generate-bindings.pl generates .h and .cpp files for $idl,
898                     including all attributes in the IDL files that are implementing $idl;
899             }
900
901         Tests: Confirm that build succeeds.
902                http/tests/websocket/tests/*
903
904         * GNUmakefile.am: Described the above build flow.
905         * GNUmakefile.list.am: Added a list of IDL files. Instead, removed a list of JS*.h and JS*.cpp
906         that are generated by the IDL files.
907
908 2011-12-27  Tony Chang  <tony@chromium.org>
909
910         [chromium] When building with clang, enable -Wglobal-constructors
911         https://bugs.webkit.org/show_bug.cgi?id=74365
912
913         Reviewed by Adam Barth.
914
915         * WebCore.gyp/WebCore.gyp:
916
917 2011-12-27  Tony Chang  <tony@chromium.org>
918
919         [chromium] really enable wpo for WebCore libs and for WTF
920         https://bugs.webkit.org/show_bug.cgi?id=75264
921
922         Reviewed by Adam Barth.
923
924         * WebCore.gyp/WebCore.gyp: The variable was getting clobbered by the
925         value set in common.gypi.  Use a target_defaults instead to set the
926         variable.  I tested manually on my Windows machine and
927         WholeProgramOptimization is getting set when buildtype is Official.
928
929 2011-12-27  Tony Chang  <tony@chromium.org>
930
931         [chromium] remove references to files no longer in the tree
932         https://bugs.webkit.org/show_bug.cgi?id=75262
933
934         Reviewed by Adam Barth.
935
936         * WebCore.gypi: platform/mac/PlatformMouseEventMac.mm and platform/mac/WheelEventMac.mm
937         were removed in r103652.
938
939 2011-12-27  Vsevolod Vlasov  <vsevik@chromium.org>
940
941         Unreviewed web inspector localizedStrings.js fix.
942
943         * English.lproj/localizedStrings.js:
944
945 2011-12-27  Vsevolod Vlasov  <vsevik@chromium.org>
946
947         Web Inspector: Introduce support for experimental settings.
948         https://bugs.webkit.org/show_bug.cgi?id=75250
949
950         Reviewed by Pavel Feldman.
951
952         * English.lproj/localizedStrings.js:
953         * inspector/front-end/ScriptsPanel.js:
954         * inspector/front-end/Settings.js:
955         (WebInspector.ExperimentsSettings):
956         (WebInspector.ExperimentsSettings.prototype.get experiments):
957         (WebInspector.ExperimentsSettings.prototype.get experimentsEnabled):
958         (WebInspector.ExperimentsSettings.prototype._createExperiment):
959         (WebInspector.ExperimentsSettings.prototype.set _cleanUpSetting.get var):
960         (WebInspector.ExperimentsSettings.prototype.set _cleanUpSetting):
961         (set WebInspector.Experiment):
962         (WebInspector.Experiment.prototype.get name):
963         (WebInspector.Experiment.prototype.get title):
964         (WebInspector.Experiment.prototype.isEnabled):
965         (WebInspector.Experiment.prototype.setEnabled):
966         (set WebInspector):
967         * inspector/front-end/SettingsScreen.js:
968         (WebInspector.SettingsScreen):
969         (WebInspector.SettingsScreen.prototype._createExperimentsWarningSubsection):
970         (WebInspector.SettingsScreen.prototype._createExperimentCheckbox.listener):
971         (WebInspector.SettingsScreen.prototype._createExperimentCheckbox):
972         * inspector/front-end/helpScreen.css:
973         (.settings-experiments-warning-subsection-warning):
974         (.settings-experiments-warning-subsection-message):
975
976 2011-12-27  Alexander Pavlov  <apavlov@chromium.org>
977
978         Web Inspector: exception when scrolling in JavaScriptOutline dialog with empty query
979         https://bugs.webkit.org/show_bug.cgi?id=75255
980
981         Reviewed by Pavel Feldman.
982
983         * inspector/front-end/JavaScriptOutlineDialog.js:
984         (WebInspector.JavaScriptOutlineDialog.prototype._onScroll):
985
986 2011-12-27  Pavel Feldman  <pfeldman@google.com>
987
988         Web Inspector: add more annotations on SDK classes.
989         https://bugs.webkit.org/show_bug.cgi?id=75247
990
991         Reviewed by Yury Semikhatsky.
992
993         * inspector/Inspector.json:
994         * inspector/compile-front-end.sh:
995         * inspector/front-end/ApplicationCacheModel.js:
996         (WebInspector.ApplicationCacheDispatcher.prototype.networkStateUpdated):
997         * inspector/front-end/BreakpointManager.js:
998         (WebInspector.BreakpointManager.prototype._breakpoint):
999         * inspector/front-end/Color.js:
1000         (WebInspector.Color.prototype.get shorthex):
1001         (WebInspector.Color.prototype.get hex):
1002         (WebInspector.Color.prototype.get rgb):
1003         (WebInspector.Color.prototype.get hsl):
1004         (WebInspector.Color.prototype.get nickname):
1005         (WebInspector.Color.prototype.hasShortHex):
1006         (WebInspector.Color.prototype._individualRGBValueToFloatValue):
1007         (WebInspector.Color.prototype._rgbStringsToHex):
1008         (WebInspector.Color.prototype._parse.this.nickname.set 2):
1009         (WebInspector.Color.prototype._parse.this.hsla.set 1):
1010         (WebInspector.Color.prototype._parse.this.rgba.set 0):
1011         (WebInspector.Color.prototype._parse.set WebInspector):
1012         (WebInspector.Color.prototype._parse):
1013         * inspector/front-end/CompilerSourceMapping.js:
1014         * inspector/front-end/ConsoleModel.js:
1015         * inspector/front-end/ContentProviders.js:
1016         (WebInspector.ScriptContentProvider):
1017         (WebInspector.ConcatenatedScriptsContentProvider):
1018         (WebInspector.CompilerSourceMappingContentProvider):
1019         (WebInspector.StaticContentProvider):
1020         * inspector/front-end/CookieParser.js:
1021         (WebInspector.CookieParser.KeyValue):
1022         (WebInspector.CookieParser.prototype.parseCookie):
1023         (WebInspector.CookieParser.prototype.parseSetCookie):
1024         (WebInspector.CookieParser.prototype._extractKeyValue):
1025         * inspector/front-end/DOMStorage.js:
1026         * inspector/front-end/Database.js:
1027         (WebInspector.DatabaseDispatcher.prototype.sqlTransactionSucceeded):
1028         (WebInspector.DatabaseDispatcher.prototype.sqlTransactionFailed):
1029         * inspector/front-end/DebuggerModel.js:
1030         (WebInspector.DebuggerModel.Location):
1031         (WebInspector.DebuggerModel.prototype._failedToParseScriptSource):
1032         * inspector/front-end/DebuggerPresentationModel.js:
1033         (WebInspector.DebuggerPresentationModelResourceBinding.prototype._setContentWithInitialContent):
1034         * inspector/front-end/ElementsTreeOutline.js:
1035         * inspector/front-end/HAREntry.js:
1036         * inspector/front-end/NetworkLog.js:
1037         (WebInspector.NetworkLog.prototype._mainFrameNavigated):
1038         * inspector/front-end/Placard.js:
1039         * inspector/front-end/RawSourceCode.js:
1040         (WebInspector.RawSourceCode.FormattedSourceMapping.prototype.uiLocationToRawLocation):
1041         (WebInspector.RawSourceCode.CompilerSourceMapping.prototype.uiLocationToRawLocation):
1042         * inspector/front-end/RemoteObject.js:
1043         (WebInspector.RemoteObject.fromPrimitiveValue):
1044         (WebInspector.RemoteObject.prototype.setPropertyValue.propertySetCallback):
1045         (WebInspector.RemoteObject.prototype.setPropertyValue):
1046         (WebInspector.LocalJSONObject.prototype.get hasChildren):
1047         (WebInspector.LocalJSONObject.prototype._children):
1048         * inspector/front-end/Resource.js:
1049         (WebInspector.Resource.restoreRevisions):
1050         (WebInspector.Resource.prototype.get queryParameters):
1051         (WebInspector.Resource.prototype.get formParameters):
1052         (WebInspector.Resource.prototype.isHttpFamily):
1053         * inspector/front-end/ResourceCategory.js:
1054         * inspector/front-end/ResourceUtils.js:
1055         * inspector/front-end/ScopeChainSidebarPane.js:
1056         (WebInspector.ScopeChainSidebarPane.prototype.update):
1057         * inspector/front-end/Script.js:
1058         (WebInspector.Script.prototype.isInlineScript):
1059         * inspector/front-end/ScriptFormatter.js:
1060         (WebInspector.ScriptFormatter.positionToLocation):
1061         * inspector/front-end/WelcomeView.js:
1062         (WebInspector.WelcomeView.prototype.addMessage):
1063         * inspector/front-end/externs.js:
1064         (Array.prototype.upperBound):
1065
1066 2011-12-27  Vsevolod Vlasov  <vsevik@chromium.org>
1067
1068         Web Inspector: Scripts panel tabbed editor does not reopen closed tabs.
1069         https://bugs.webkit.org/show_bug.cgi?id=75245
1070
1071         Reviewed by Pavel Feldman.
1072
1073         * inspector/front-end/NetworkItemView.js:
1074         (WebInspector.NetworkItemView):
1075         * inspector/front-end/TabbedEditorContainer.js:
1076         (WebInspector.TabbedEditorContainer):
1077         (WebInspector.TabbedEditorContainer.prototype._tabClosed):
1078         * inspector/front-end/TabbedPane.js:
1079         (WebInspector.TabbedPane.prototype.closeTab):
1080         (WebInspector.TabbedPane.prototype.selectTab):
1081
1082 2011-12-27  Yury Semikhatsky  <yurys@chromium.org>
1083
1084         Web Inspector: report per document JS event listener count
1085         https://bugs.webkit.org/show_bug.cgi?id=74298
1086
1087         This patch adds JS event listener count to the memory agent
1088         report.
1089
1090         Reviewed by Pavel Feldman.
1091
1092         Test: inspector/dom-statistics.html
1093
1094         * inspector/Inspector.json:
1095         * inspector/InspectorMemoryAgent.cpp:
1096
1097 2011-12-27  Alexander Pavlov  <apavlov@chromium.org>
1098
1099         Web Inspector: [REGRESSION] Go to Function dialog always has a minimal height
1100         https://bugs.webkit.org/show_bug.cgi?id=75254
1101
1102         Reviewed by Yury Semikhatsky.
1103
1104         * inspector/front-end/scriptsPanel.css:
1105         (.script-view):
1106
1107 2011-12-26  Vsevolod Vlasov  <vsevik@chromium.org>
1108
1109         Web Inspector: Create tabbed editor for scripts panel.
1110         https://bugs.webkit.org/show_bug.cgi?id=75230
1111
1112         Reviewed by Pavel Feldman.
1113
1114         * WebCore.gypi:
1115         * WebCore.vcproj/WebCore.vcproj:
1116         * inspector/compile-front-end.sh:
1117         * inspector/front-end/ScriptsNavigator.js:
1118         (WebInspector.ScriptsNavigator.prototype.replaceUISourceCodes.get if):
1119         (WebInspector.ScriptsNavigator.prototype.replaceUISourceCodes):
1120         (WebInspector.NavigatorScriptTreeElement.prototype.ondblclick):
1121         (WebInspector.NavigatorScriptTreeElement.prototype.onenter):
1122         * inspector/front-end/ScriptsPanel.js:
1123         * inspector/front-end/TabbedEditorContainer.js: Added.
1124         * inspector/front-end/TabbedPane.js:
1125         (WebInspector.TabbedPane.prototype.get visibleView):
1126         (WebInspector.TabbedPane.prototype.get selectedTabId):
1127         (WebInspector.TabbedPane.prototype.closeAllTabs):
1128         (WebInspector.TabbedPane.prototype.changeTabTitle):
1129         (WebInspector.TabbedPane.prototype.changeTabView):
1130         (WebInspector.TabbedPaneTab):
1131         (WebInspector.TabbedPaneTab.prototype.get title):
1132         (WebInspector.TabbedPaneTab.prototype.set title):
1133         (WebInspector.TabbedPaneTab.prototype.get view):
1134         (WebInspector.TabbedPaneTab.prototype.set view):
1135         (WebInspector.TabbedPaneTab.prototype._createTabElement):
1136         * inspector/front-end/WebKit.qrc:
1137         * inspector/front-end/inspector.html:
1138         * inspector/front-end/scriptsPanel.css:
1139         (.scripts-views-container):
1140         (.script-view):
1141         (#scripts-editor-container-tabbed-pane .tabbed-pane-header):
1142         (#scripts-editor-container-tabbed-pane .tabbed-pane-header-contents):
1143         (#scripts-editor-container-tabbed-pane .tabbed-pane-content):
1144
1145 2011-12-27  Pavel Feldman  <pfeldman@google.com>
1146
1147         Not reviewed: Rolling out r103703 for breaking Canvas2DLayerChromiumTest.testFullLifecycle.
1148
1149         * platform/graphics/chromium/Canvas2DLayerChromium.cpp:
1150         (WebCore::Canvas2DLayerChromium::Canvas2DLayerChromium):
1151         (WebCore::Canvas2DLayerChromium::~Canvas2DLayerChromium):
1152         (WebCore::Canvas2DLayerChromium::paintContentsIfDirty):
1153         (WebCore::Canvas2DLayerChromium::setTextureManager):
1154         (WebCore::Canvas2DLayerChromium::updateCompositorResources):
1155         (WebCore::Canvas2DLayerChromium::pushPropertiesTo):
1156         (WebCore::Canvas2DLayerChromium::unreserveContentsTexture):
1157         (WebCore::Canvas2DLayerChromium::cleanupResources):
1158         * platform/graphics/chromium/Canvas2DLayerChromium.h:
1159
1160 2011-12-22  Vangelis Kokkevis  <vangelis@chromium.org>
1161
1162         [chromium] Bypass the shadow texture copy for accelerated
1163         canvas when running the compositor in single threaded mode.
1164         https://bugs.webkit.org/show_bug.cgi?id=75146
1165
1166         The texture copy fails on Windows as glCopyTexImage2D() doesn't
1167         support BGRA source textures. 
1168         This change also modified Canvas2DLayerChromium::updateCompositorResources
1169         to call glCopyTexSubImage2D() instead of glCopyTexImage2D() so that
1170         the copy can work with texture allocated via the glTexStorage2D
1171         extension.
1172
1173         Reviewed by James Robinson.
1174
1175
1176         * platform/graphics/chromium/Canvas2DLayerChromium.cpp:
1177         (WebCore::Canvas2DLayerChromium::Canvas2DLayerChromium):
1178         (WebCore::Canvas2DLayerChromium::~Canvas2DLayerChromium):
1179         (WebCore::Canvas2DLayerChromium::paintContentsIfDirty):
1180         (WebCore::Canvas2DLayerChromium::setTextureManager):
1181         (WebCore::Canvas2DLayerChromium::updateCompositorResources):
1182         (WebCore::Canvas2DLayerChromium::pushPropertiesTo):
1183         (WebCore::Canvas2DLayerChromium::unreserveContentsTexture):
1184         (WebCore::Canvas2DLayerChromium::cleanupResources):
1185         * platform/graphics/chromium/Canvas2DLayerChromium.h:
1186
1187 2011-12-26  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
1188
1189         [EFL][WK2] Implement context menu for EFL port.
1190         https://bugs.webkit.org/show_bug.cgi?id=74995
1191
1192         Reviewed by Anders Carlsson.
1193
1194         Implement missing ContextMenuEfl class in order to support WK2's context menu.
1195         Because WK2's context menu still needs WebCore's context menu implementation.
1196         And of course, this patch also can be used for WK1 without CROSS_PLATFORM_CONTEXT_MENU
1197         option.
1198
1199         * platform/ContextMenu.h:
1200         * platform/ContextMenuItem.h:
1201         * platform/PlatformMenuDescription.h:
1202         * platform/efl/ContextMenuEfl.cpp:
1203         (WebCore::ContextMenu::~ContextMenu):
1204         (WebCore::ContextMenu::appendItem):
1205         (WebCore::ContextMenu::insertItem):
1206         (WebCore::ContextMenu::itemCount):
1207         (WebCore::ContextMenu::setPlatformDescription):
1208         (WebCore::ContextMenu::platformDescription):
1209         (WebCore::ContextMenu::releasePlatformDescription):
1210         (WebCore::platformMenuDescription):
1211         (WebCore::contextMenuItemVector):
1212         * platform/efl/ContextMenuItemEfl.cpp:
1213         (WebCore::ContextMenuItem::ContextMenuItem):
1214         (WebCore::ContextMenuItem::~ContextMenuItem):
1215         (WebCore::ContextMenuItem::setType):
1216         (WebCore::ContextMenuItem::type):
1217         (WebCore::ContextMenuItem::setAction):
1218         (WebCore::ContextMenuItem::action):
1219         (WebCore::ContextMenuItem::setTitle):
1220         (WebCore::ContextMenuItem::title):
1221         (WebCore::ContextMenuItem::setChecked):
1222         (WebCore::ContextMenuItem::checked):
1223         (WebCore::ContextMenuItem::setEnabled):
1224         (WebCore::ContextMenuItem::enabled):
1225
1226 2011-12-26  Hajime Morrita  <morrita@chromium.org>
1227
1228         [Refactoring] Node::setTreeScopeRecursively() doesn't need includeRoot parameter
1229         https://bugs.webkit.org/show_bug.cgi?id=75240
1230
1231         Reviewed by Anders Carlsson.
1232
1233         No new tests. No behavior change.
1234
1235         * dom/Node.cpp:
1236         (WebCore::Node::setTreeScopeRecursively):
1237         * dom/Node.h:
1238
1239 2011-12-26  Darin Adler  <darin@apple.com>
1240
1241         Use OwnPtr and OwnArrayPtr in a couple more places
1242         https://bugs.webkit.org/show_bug.cgi?id=75211
1243
1244         Reviewed by Andreas Kling.
1245
1246         I had a patch with some changes from a while back from going through all sorts of
1247         classes and changing code to use adoptPtr. Most were landed long ago, these are the
1248         ones that still apply.
1249
1250         There are six pieces here that could each be landed separately.
1251         The big one is CSSParser.
1252
1253         * css/CSSGrammar.y: Update for members and functions that now
1254         return PassOwnPtr instead of raw pointers.
1255         * css/CSSParser.cpp:
1256         (WebCore::CSSParser::CSSParser): Remove explicit construction
1257         for m_valueList and m_data since OwnPtr and OwnArrayPtr initialize
1258         to zero without it.
1259         (WebCore::CSSParser::~CSSParser): Removed delete m_valueList and
1260         fastFree(m_data) since OwnPtr and OwnArrayPtr handle that.
1261         (WebCore::CSSParser::setupParser): Use adoptArrayPtr and new for
1262         the character array instead of fastFree/fastMalloc. Added get
1263         function calls as needed.
1264         (WebCore::CSSParser::parseValue): Added get function calls as needed.
1265         (WebCore::CSSParser::parseContent): Ditto.
1266         (WebCore::CSSParser::parseFillProperty): Ditto.
1267         (WebCore::CSSParser::parseTransformOriginShorthand): Ditto.
1268         (WebCore::CSSParser::parseBorderImage): Ditto.
1269         (WebCore::CSSParser::parseTransformOrigin): Ditto.
1270         (WebCore::CSSParser::parsePerspectiveOrigin): Ditto.
1271         (WebCore::CSSParser::sinkFloatingValueList): Changed to return PassOwnPtr.
1272         The adoptPtr call is here.
1273         (WebCore::CSSParser::sinkFloatingFunction): Ditto.
1274         (WebCore::CSSParser::markSelectorListStart): Added get function calls as needed.
1275         (WebCore::CSSParser::markSelectorListEnd): Ditto.
1276         (WebCore::CSSParser::markRuleBodyStart): Ditto.
1277         (WebCore::CSSParser::markRuleBodyEnd): Ditto.
1278         (WebCore::CSSParser::markPropertyStart): Ditto.
1279         (WebCore::CSSParser::markPropertyEnd): Ditto.
1280         * css/CSSParser.h: Moved conditional includes to their own paragraph.
1281         Made sinkFloatingValueList and sinkFloatingFunction return PassOwnPtr.
1282         Made m_valueList an OwnPtr and m_data an OwnArrayPtr.
1283         * css/SVGCSSParser.cpp:
1284         (WebCore::CSSParser::parseSVGValue): Added a call to the get function.
1285
1286         * html/PluginDocument.h: Made isPluginDocument private. Also marked all the
1287         functions that are overriding here as OVERRIDE since I was touching the header.
1288
1289         * html/parser/HTMLToken.h:
1290         (WebCore::HTMLTokenTypes::DoctypeData::DoctypeData): Removed an unneeded line
1291         explicitly initializing the base class.
1292
1293         * page/animation/AnimationBase.cpp:
1294         (WebCore::RefCountedPropertyWrapper::RefCountedPropertyWrapper): Fixed indent.
1295
1296         * rendering/style/RenderStyle.h: Moved conditional includes to their own paragraph.
1297
1298         * xml/parser/MarkupTokenBase.h:
1299         (WebCore::MarkupTokenBase::beginDOCTYPE): Removed unneeded parentheses.
1300
1301 2011-12-26  Vsevolod Vlasov  <vsevik@chromium.org>
1302
1303         Web Inspector: Extract FileEditor from ScriptsPanel.
1304         https://bugs.webkit.org/show_bug.cgi?id=75229
1305
1306         Reviewed by Pavel Feldman.
1307
1308         * inspector/front-end/JavaScriptSourceFrame.js:
1309         (WebInspector.JavaScriptSourceFrame.prototype.suggestedFileName):
1310         * inspector/front-end/ScriptsNavigator.js:
1311         * inspector/front-end/ScriptsPanel.js:
1312         (WebInspector.ScriptsPanel.prototype._reset):
1313         (WebInspector.ScriptsPanel.prototype.get visibleView):
1314         (WebInspector.ScriptsPanel.prototype._updateScriptViewStatusBarItems):
1315         (WebInspector.ScriptsPanel.prototype._uiSourceCodeReplaced.get if):
1316         (WebInspector.ScriptsPanel.EditorContainer):
1317         (WebInspector.ScriptsPanel.EditorContainer.prototype.get currentSourceFrame):
1318         (WebInspector.ScriptsPanel.EditorContainer.prototype.show):
1319         (WebInspector.ScriptsPanel.EditorContainer.prototype.showSourceFrame):
1320         (WebInspector.ScriptsPanel.EditorContainer.prototype.isSourceFrameOpen):
1321         (WebInspector.ScriptsPanel.EditorContainer.prototype.replaceSourceFrames):
1322         (WebInspector.ScriptsPanel.EditorContainer.prototype.setSourceFrameIsDirty):
1323         (WebInspector.ScriptsPanel.EditorContainer.prototype.reset):
1324         (WebInspector.ScriptsPanel.SingleFileEditorContainer):
1325         (WebInspector.ScriptsPanel.SingleFileEditorContainer.prototype.get currentSourceFrame):
1326         (WebInspector.ScriptsPanel.SingleFileEditorContainer.prototype.show):
1327         (WebInspector.ScriptsPanel.SingleFileEditorContainer.prototype.showSourceFrame):
1328         (WebInspector.ScriptsPanel.SingleFileEditorContainer.prototype.isSourceFrameOpen):
1329         (WebInspector.ScriptsPanel.SingleFileEditorContainer.prototype.replaceSourceFrames):
1330         (WebInspector.ScriptsPanel.SingleFileEditorContainer.prototype.setSourceFrameIsDirty):
1331         (WebInspector.ScriptsPanel.SingleFileEditorContainer.prototype.reset):
1332         * inspector/front-end/UISourceCode.js:
1333         (WebInspector.UISourceCode.prototype.get domain):
1334         (WebInspector.UISourceCode.prototype.get folderName):
1335         (WebInspector.UISourceCode.prototype.get fileName):
1336         (WebInspector.UISourceCode.prototype.get displayName):
1337         (WebInspector.UISourceCode.prototype._parseURL):
1338
1339 2011-12-26  Darin Adler  <darin@apple.com>
1340
1341         Fix mutation observer build after didMoveToNewDocument change
1342         https://bugs.webkit.org/show_bug.cgi?id=75224
1343
1344         Reviewed by Hajime Morita.
1345
1346         * dom/Node.cpp:
1347         (WebCore::willCallDidMoveToNewDocument): Added.
1348         (WebCore::didMoveToNewDocumentWasCalled): Added.
1349         (WebCore::Node::setDocument): Call new debugging function.
1350         (WebCore::Node::didMoveToNewDocument): Ditto. Also use ASSERT_UNUSED
1351         unconditionally rather than UNUSED_PARAM inside and #if. Also added
1352         a new assertion that checks that hte old document was passed through
1353         properly.
1354
1355 2011-12-26  Alexander Pavlov  <apavlov@chromium.org>
1356
1357         Web Inspector: [Scripts] Implement iterative match highlighting in the "Go to Function" dialog item list
1358         https://bugs.webkit.org/show_bug.cgi?id=75226
1359
1360         Reviewed by Pavel Feldman.
1361
1362         * inspector/front-end/JavaScriptOutlineDialog.js:
1363         (WebInspector.JavaScriptOutlineDialog):
1364         (WebInspector.JavaScriptOutlineDialog.prototype._createSearchRegExp):
1365         (WebInspector.JavaScriptOutlineDialog.prototype._filterFunctions):
1366         (WebInspector.JavaScriptOutlineDialog.prototype._onKeyDown.previousItem):
1367         (WebInspector.JavaScriptOutlineDialog.prototype._onKeyDown.nextItem):
1368         (WebInspector.JavaScriptOutlineDialog.prototype._onKeyDown):
1369         (WebInspector.JavaScriptOutlineDialog.prototype._updateSelection):
1370         (WebInspector.JavaScriptOutlineDialog.prototype._onScroll):
1371         (WebInspector.JavaScriptOutlineDialog.MatchHighlighter):
1372         (WebInspector.JavaScriptOutlineDialog.MatchHighlighter.prototype.highlightViewportItems):
1373         (WebInspector.JavaScriptOutlineDialog.MatchHighlighter.prototype.clearHighlight):
1374         (WebInspector.JavaScriptOutlineDialog.MatchHighlighter.prototype._highlightItem):
1375         (WebInspector.JavaScriptOutlineDialog.MatchHighlighter.prototype._viewportRowRange):
1376         * inspector/front-end/javaScriptOutlineDialog.css:
1377         (.js-outline-dialog > .container > div.item > span.highlight):
1378
1379 2011-12-26  Vsevolod Vlasov  <vsevik@chromium.org>
1380
1381         Web Inspector: Extract FileSelector from ScriptsPanel.
1382         https://bugs.webkit.org/show_bug.cgi?id=75173
1383
1384         Reviewed by Pavel Feldman.
1385
1386         * inspector/front-end/ScriptsNavigator.js:
1387         (WebInspector.ScriptsNavigator):
1388         (WebInspector.ScriptsNavigator.prototype.get defaultFocusedElement):
1389         (WebInspector.ScriptsNavigator.prototype.show):
1390         (WebInspector.ScriptsNavigator.prototype.setScriptSourceIsDirty):
1391         (WebInspector.ScriptsNavigator.prototype.replaceUISourceCodes):
1392         (WebInspector.ScriptsNavigator.prototype.scriptSelected):
1393         * inspector/front-end/ScriptsPanel.js:
1394         (WebInspector.ScriptsPanel.prototype.get defaultFocusedElement):
1395         (WebInspector.ScriptsPanel.prototype._uiSourceCodeAdded.get if):
1396         (WebInspector.ScriptsPanel.prototype.setScriptSourceIsBeingEdited):
1397         (WebInspector.ScriptsPanel.prototype._reset):
1398         (WebInspector.ScriptsPanel.prototype._showSourceLine):
1399         (WebInspector.ScriptsPanel.prototype._showAndRevealInFileSelector):
1400         (WebInspector.ScriptsPanel.prototype._createSourceFrame):
1401         (WebInspector.ScriptsPanel.prototype._updateExecutionLine):
1402         (WebInspector.ScriptsPanel.prototype._scriptSelected):
1403         (WebInspector.ScriptsPanel.FileSelector):
1404         (WebInspector.ScriptsPanel.FileSelector.prototype.get defaultFocusedElement):
1405         (WebInspector.ScriptsPanel.FileSelector.prototype.show):
1406         (WebInspector.ScriptsPanel.FileSelector.prototype.addUISourceCode):
1407         (WebInspector.ScriptsPanel.FileSelector.prototype.isScriptSourceAdded):
1408         (WebInspector.ScriptsPanel.FileSelector.prototype.revealUISourceCode):
1409         (WebInspector.ScriptsPanel.FileSelector.prototype.setScriptSourceIsDirty):
1410         (WebInspector.ScriptsPanel.FileSelector.prototype.replaceUISourceCodes):
1411         (WebInspector.ScriptsPanel.ComboBoxFileSelector):
1412         (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype.get defaultFocusedElement):
1413         (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype.show):
1414         (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype.showDebugSidebarResizeWidget):
1415         (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype.addUISourceCode):
1416         (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype.isScriptSourceAdded):
1417         (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype.revealUISourceCode):
1418         (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._innerRevealUISourceCode):
1419         (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._addToHistory):
1420         (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype.replaceUISourceCodes):
1421         (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._showScriptFoldersSettingChanged):
1422         (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._reset):
1423         (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype.setScriptSourceIsDirty):
1424         (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._createEditorToolbar):
1425         (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._addOptionToFilesSelect.get var):
1426         (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._addOptionToFilesSelect.insertOrdered.optionCompare):
1427         (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._addOptionToFilesSelect.insertOrdered):
1428         (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._addOptionToFilesSelect):
1429         (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._resetFilesSelect):
1430         (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._updateBackAndForwardButtons):
1431         (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._goBack):
1432         (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._goForward):
1433         (WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._filesSelectChanged):
1434         * inspector/front-end/inspector.html:
1435         * inspector/front-end/utilities.js:
1436         ():
1437
1438 2011-12-26  Alexander Pavlov  <apavlov@chromium.org>
1439
1440         Web Inspector: Implement "Go to Function" dialog for JavaScript
1441         https://bugs.webkit.org/show_bug.cgi?id=75092
1442
1443         Reviewed by Pavel Feldman.
1444
1445         * English.lproj/localizedStrings.js:
1446         * WebCore.gypi:
1447         * WebCore.vcproj/WebCore.vcproj:
1448         * inspector/compile-front-end.sh:
1449         * inspector/front-end/JavaScriptOutlineDialog.js: Added.
1450         (WebInspector.JavaScriptOutlineDialog.onMouseDown):
1451         (WebInspector.JavaScriptOutlineDialog):
1452         (WebInspector.JavaScriptOutlineDialog.didAddChunk):
1453         (WebInspector.JavaScriptOutlineDialog.install):
1454         (WebInspector.JavaScriptOutlineDialog._show):
1455         (WebInspector.JavaScriptOutlineDialog.createShortcut):
1456         (WebInspector.JavaScriptOutlineDialog.prototype._resizeWindow):
1457         (WebInspector.JavaScriptOutlineDialog.prototype._appendItemElements):
1458         (WebInspector.JavaScriptOutlineDialog.prototype._createSearchRegExp):
1459         (WebInspector.JavaScriptOutlineDialog.prototype._filterFunctions):
1460         (WebInspector.JavaScriptOutlineDialog.prototype._selectFirstItem):
1461         (WebInspector.JavaScriptOutlineDialog.prototype._hide):
1462         (WebInspector.JavaScriptOutlineDialog.prototype._onBlur):
1463         (WebInspector.JavaScriptOutlineDialog.prototype._onKeyDown.previousItem):
1464         (WebInspector.JavaScriptOutlineDialog.prototype._onKeyDown.nextItem):
1465         (WebInspector.JavaScriptOutlineDialog.prototype._onKeyDown):
1466         (WebInspector.JavaScriptOutlineDialog.prototype._scheduleFilter):
1467         (WebInspector.JavaScriptOutlineDialog.prototype._updateSelection):
1468         (WebInspector.JavaScriptOutlineDialog.prototype._onClick):
1469         (WebInspector.JavaScriptOutlineDialog.prototype._onMouseMove):
1470         (WebInspector.JavaScriptOutlineDialog.prototype._highlightFunctionLine):
1471         * inspector/front-end/JavaScriptSourceFrame.js:
1472         (WebInspector.JavaScriptSourceFrame.prototype.get uiSourceCode):
1473         * inspector/front-end/ScriptsPanel.js:
1474         (WebInspector.ScriptsPanel.prototype._didBuildOutlineChunk):
1475         (WebInspector.ScriptsPanel.prototype._reset):
1476         (WebInspector.ScriptsPanel.prototype.requestVisibleScriptOutline):
1477         (WebInspector.ScriptsPanel.prototype._createEditorToolbar):
1478         * inspector/front-end/WebKit.qrc:
1479         * inspector/front-end/inspector.html:
1480         * inspector/front-end/javaScriptOutlineDialog.css: Added.
1481         (.js-outline-dialog):
1482         (.js-outline-dialog > input):
1483         (.js-outline-dialog > div.progress):
1484         (.js-outline-dialog > div.container):
1485         (.js-outline-dialog > .container > div.item):
1486         (.js-outline-dialog > .container > div.item.selected):
1487
1488 2011-12-26  Pavel Feldman  <pfeldman@google.com>
1489
1490         Web Inspector: make SDK compilation component self-contained.
1491         https://bugs.webkit.org/show_bug.cgi?id=75172
1492
1493         Reviewed by Yury Semikhatsky.
1494
1495         * inspector/compile-front-end.sh:
1496         * inspector/front-end/ConsoleMessage.js:
1497         (WebInspector.ConsoleMessageImpl):
1498         (WebInspector.ConsoleMessageImpl.prototype.get stackTrace):
1499         (WebInspector.ConsoleMessageImpl.prototype.clone):
1500         * inspector/front-end/ConsoleModel.js:
1501         (WebInspector.ConsoleModel.prototype._messageRepeatCountUpdated):
1502         (WebInspector.ConsoleMessage):
1503         (WebInspector.ConsoleMessage.prototype.isErrorOrWarning):
1504         (WebInspector.ConsoleMessage.prototype.updateRepeatCount):
1505         (WebInspector.ConsoleMessage.prototype.clone):
1506         * inspector/front-end/DebuggerPresentationModel.js:
1507         (WebInspector.DebuggerPresentationModel.prototype._consoleMessageAdded):
1508         * inspector/front-end/ResourceUtils.js:
1509         * inspector/front-end/UIUtils.js:
1510         (WebInspector.resetToolbarColors):
1511         (WebInspector.populateHrefContextMenu):
1512
1513 2011-12-26  Hajime Morrita  <morrita@google.com>
1514
1515         Unreviewed bad merge fix.
1516
1517         * svg/SVGSVGElement.cpp:
1518         (WebCore::SVGSVGElement::didMoveToNewDocument):
1519
1520 2011-12-25  Hajime Morrita  <morrita@chromium.org>
1521
1522         https://bugs.webkit.org/show_bug.cgi?id=74067
1523         Refactoring: Unitfy willMoveToNewDocument() and didMoveToNewDocument()
1524
1525         Reviewed by Darin Adler.
1526
1527         No new tests. No behavior change.
1528
1529         This change combines two method Node::willMoveToNewOwnerDocument() and Node::didMoveToNewOwnerDocument()
1530         into Node::didMoveToNewDocument(Document* oldDocument).
1531
1532         The intention of this change is:
1533         - Making upcoming refactoring (Bug 59816) possible. The refactoring will turn Node::m_document into
1534           Node::m_treeScope, and we will no longer have Node::setDocument() where we can invoke both
1535           willMoveToNewDocument() and didMoveToNewDocument() at once.
1536         - Killing one extra virtual method call.
1537         - Making the concept of "move" clearer by keeping such an operation into the single method.
1538
1539         * dom/Node.cpp:
1540         (WebCore::setWillMoveToNewDocumentWasCalled):
1541         (WebCore::setDidMoveToNewDocumentWasCalled):
1542         (WebCore::Node::setDocument):
1543         (WebCore::Node::didMoveToNewDocument):
1544         * dom/Node.h:
1545         * dom/StyledElement.cpp:
1546         (WebCore::StyledElement::attributeChanged):
1547         * html/FormAssociatedElement.cpp:
1548         (WebCore::FormAssociatedElement::didMoveToNewDocument):
1549         * html/FormAssociatedElement.h:
1550         * html/HTMLFormControlElement.cpp:
1551         (WebCore::HTMLFormControlElement::didMoveToNewDocument):
1552         (WebCore::HTMLFormControlElementWithState::didMoveToNewDocument):
1553         * html/HTMLFormControlElement.h:
1554         * html/HTMLFormElement.cpp:
1555         (WebCore::HTMLFormElement::didMoveToNewDocument):
1556         * html/HTMLFormElement.h:
1557         * html/HTMLImageElement.cpp:
1558         (WebCore::HTMLImageElement::didMoveToNewDocument):
1559         * html/HTMLImageElement.h:
1560         * html/HTMLInputElement.cpp:
1561         (WebCore::HTMLInputElement::didMoveToNewDocument):
1562         * html/HTMLInputElement.h:
1563         * html/HTMLMediaElement.cpp:
1564         (WebCore::HTMLMediaElement::didMoveToNewDocument):
1565         * html/HTMLMediaElement.h:
1566         * html/HTMLObjectElement.cpp:
1567         (WebCore::HTMLObjectElement::didMoveToNewDocument):
1568         * html/HTMLObjectElement.h:
1569         * html/HTMLPlugInImageElement.cpp:
1570         (WebCore::HTMLPlugInImageElement::didMoveToNewDocument):
1571         * html/HTMLPlugInImageElement.h:
1572         * html/HTMLVideoElement.cpp:
1573         (WebCore::HTMLVideoElement::didMoveToNewDocument):
1574         * html/HTMLVideoElement.h:
1575         * html/ImageDocument.cpp:
1576         (WebCore::ImageDocumentElement::didMoveToNewDocument):
1577         * html/ImageInputType.cpp:
1578         (WebCore::ImageInputType::willMoveToNewDocument):
1579         * loader/ImageLoader.cpp:
1580         (WebCore::ImageLoader::elementDidMoveToNewDocument):
1581         * loader/ImageLoader.h:
1582         * svg/SVGImageElement.cpp:
1583         (WebCore::SVGImageElement::didMoveToNewDocument):
1584         * svg/SVGImageElement.h:
1585         * svg/SVGSVGElement.cpp:
1586         (WebCore::SVGSVGElement::didMoveToNewDocument):
1587         * svg/SVGSVGElement.h:
1588
1589 2011-12-25  Kentaro Hara  <haraken@chromium.org>
1590
1591         REGRESSION(r102987): Fix the filename prefix of the generated empty .h
1592         and .cpp files for [Supplemental] IDLs
1593         https://bugs.webkit.org/show_bug.cgi?id=75082
1594
1595         Reviewed by Darin Adler.
1596
1597         In bug 74481, we changed generate-bindings.pl so that it generates empty .h
1598         and .cpp files for the [Supplemental] IDLs. However, the filename prefixes of
1599         those .h and .cpp files are wrong. This patch fixes the prefixes as follows:
1600
1601             generator=JS  => JS*.h, JS*.cpp
1602             generator=V8  => V8*.h, V8*.cpp
1603             generator=ObjC  => DOM*.h, DOM*.cpp
1604             generator=GObject  => WebKitDOM*.h, WebKitDOM*.cpp
1605             generator=CPP  => WebDOM*.h, WebDOM*.cpp
1606
1607         No new tests. No change in behavior.
1608         I confirmed that the names of generated .h and .cpp files are correct.
1609
1610         * bindings/scripts/CodeGenerator.pm:
1611         (FileNamePrefix): Returns the prefix of file names.
1612         * bindings/scripts/CodeGeneratorCPP.pm:
1613         (GenerateInterface): Uses CodeGenerator::FileNamePrefix.
1614         * bindings/scripts/CodeGeneratorGObject.pm:
1615         (GenerateInterface): Ditto.
1616         * bindings/scripts/CodeGeneratorJS.pm:
1617         (GenerateInterface): Ditto.
1618         * bindings/scripts/CodeGeneratorObjC.pm:
1619         (GenerateInterface): Ditto.
1620         * bindings/scripts/CodeGeneratorV8.pm:
1621         (GenerateInterface): Ditto.
1622         * bindings/scripts/generate-bindings.pl:
1623         (generateEmptyHeaderAndCpp): Ditto.
1624
1625 2011-12-25  Dan Bernstein  <mitz@apple.com>
1626
1627         WebCore changes for: Find indicators overlap when a match spans multiple text boxes
1628         https://bugs.webkit.org/show_bug.cgi?id=75220
1629
1630         Reviewed by Darin Adler.
1631
1632         * WebCore.exp.in: Exported new unionRect(const Vector<FloatRect>&) and existing
1633         FloatRect::intersects().
1634         * platform/graphics/FloatRect.cpp:
1635         (WebCore::unionRect): Added.
1636         * platform/graphics/FloatRect.h:
1637
1638 2011-12-25  Darin Adler  <darin@apple.com>
1639
1640         Use OwnPtr for CSSFontFace::m_sources
1641         https://bugs.webkit.org/show_bug.cgi?id=75219
1642
1643         Reviewed by Dan Bernstein.
1644
1645         * css/CSSFontFace.cpp:
1646         (WebCore::CSSFontFace::isLoaded): Use the same size_t idiom here as in the rest
1647         of the functions.
1648         (WebCore::CSSFontFace::isValid): Ditto. Also removed unneeded empty special casing.
1649         (WebCore::CSSFontFace::addSource): Changed to take a PassOwnPtr. Reordered so the
1650         PassOwnPtr zeroing does not cause trouble.
1651         (WebCore::CSSFontFace::getFontData): Added call to get.
1652         (WebCore::CSSFontFace::hasSVGFontFaceSource): Use the same size_t idiom here as in
1653         the rest of the functions.
1654
1655         * css/CSSFontFace.h: Use PassOwnPtr for addSource argument, and Vector<OwnPtr> for
1656         the m_sources vector.
1657
1658         * css/CSSFontSelector.cpp:
1659         (WebCore::CSSFontSelector::addFontFaceRule): Use OwnPtr and PassOwnPtr for font face
1660         sources that are passed to addSource.
1661
1662         * css/CSSSegmentedFontFace.cpp: Added a now-needed include.
1663
1664 2011-12-24  Jarred Nicholls  <jarred@sencha.com>
1665
1666         Allow XMLHttpRequest responseType to be set at any state up to and including HEADERS_RECEIVED
1667         https://bugs.webkit.org/show_bug.cgi?id=75190
1668
1669         XMLHttpRequest.responseType should be modifiable at any state up to and including the
1670         HEADERS_RECEIVED state. Therefore, subsequent calls to open() should not reset responseType
1671         to its default value, and calls to open() must follow the same spec mandate set forth in
1672         setResponseType() for synchronous HTTP(S) requests made from the window context.
1673
1674         Reviewed by Alexey Proskuryakov.
1675
1676         Tests: fast/xmlhttprequest/xmlhttprequest-responsetype-before-open-sync-request.html
1677                fast/xmlhttprequest/xmlhttprequest-responsetype-before-open.html
1678                fast/xmlhttprequest/xmlhttprequest-responsetype-set-at-headers-received.html
1679
1680         * xml/XMLHttpRequest.cpp:
1681         (WebCore::XMLHttpRequest::setResponseType):
1682         Prevent setting the value only when in LOADING and DONE states. No longer check if
1683         m_loader is present, which is instantiated on a call to send(), because responseType
1684         can be safely changed after a request is sent.
1685         (WebCore::XMLHttpRequest::open):
1686         Do not reset m_responseTypeCode to the default value, and prevent calls to open()
1687         for synchronous HTTP(S) requests made from the window context when m_responseTypeCode
1688         is not the default value.
1689
1690 2011-12-25  Sam Weinig  <sam@webkit.org>
1691
1692         Fix tests failing as a result of r103643
1693         https://bugs.webkit.org/show_bug.cgi?id=75209
1694
1695         Reviewed by Dan Bernstein.
1696
1697         Switch accidental switch of default scroll granularity from 
1698         ScrollByPageWheelEvent back to ScrollByPixelWheelEvent.
1699
1700         * platform/mac/PlatformEventFactory.mm:
1701         (WebCore::PlatformWheelEventBuilder::PlatformWheelEventBuilder):
1702
1703 2011-12-25  Darin Adler  <darin@apple.com>
1704
1705         Change CSS canvas code that does HashMap get/set to use the more efficient add idiom
1706         https://bugs.webkit.org/show_bug.cgi?id=75204
1707
1708         Reviewed by Dan Bernstein.
1709
1710         * dom/Document.cpp:
1711         (WebCore::Document::getCSSCanvasContext): Change local variable name of element to
1712         element; it's not the function result, so not good to name it result.
1713         (WebCore::Document::getCSSCanvasElement): Use add instead of get/set so we only do
1714         one hash table lookup.
1715
1716 2011-12-24  Andreas Kling  <awesomekling@apple.com>
1717
1718         CSSElementStyleDeclarations should never move between elements.
1719         <http://webkit.org/b/75198>
1720
1721         Reviewed by Anders Carlsson.
1722
1723         Have the CSSElementStyleDeclaration subclasses take a StyledElement* in
1724         the constructor and replace setElement(StyledElement*) by clearElement().
1725
1726         No behavior change, just enforcing the current behavior at compile-time.
1727
1728         * css/CSSElementStyleDeclaration.h:
1729         (WebCore::CSSElementStyleDeclaration::clearElement):
1730         (WebCore::CSSElementStyleDeclaration::CSSElementStyleDeclaration):
1731         * css/CSSInlineStyleDeclaration.h:
1732         (WebCore::CSSInlineStyleDeclaration::create):
1733         (WebCore::CSSInlineStyleDeclaration::CSSInlineStyleDeclaration):
1734         * dom/StyledElement.cpp:
1735         (WebCore::StyledElement::createInlineStyleDecl):
1736         (WebCore::StyledElement::destroyInlineStyleDecl):
1737         * svg/SVGFontFaceElement.cpp:
1738         (WebCore::FontFaceStyleDeclaration::FontFaceStyleDeclaration):
1739
1740 2011-12-23  Andreas Kling  <awesomekling@apple.com>
1741
1742         Decouple CSSMappedAttributeDeclaration from element completely.
1743         <http://webkit.org/b/75187>
1744
1745         Reviewed by Darin Adler.
1746
1747         Let CSSMappedAttributeDeclaration inherit from CSSMutableDeclaration instead
1748         of CSSElementStyleDeclaration. Add methods to CSSMappedAttributeDeclaration
1749         for setting properties that also take a StyledElement* and use that mechanism
1750         instead of temporarily associating an element with the declaration.
1751
1752         This reduces the size of mapped attributes by 4/8 bytes, but more importantly
1753         opens a number of ways to simplify style declarations in future patches.
1754
1755         * css/CSSMutableStyleDeclaration.h:
1756         * dom/CSSMappedAttributeDeclaration.cpp:
1757         (WebCore::CSSMappedAttributeDeclaration::setNeedsStyleRecalc):
1758         (WebCore::CSSMappedAttributeDeclaration::setMappedImageProperty):
1759         (WebCore::CSSMappedAttributeDeclaration::setMappedLengthProperty):
1760         (WebCore::CSSMappedAttributeDeclaration::setMappedProperty):
1761         (WebCore::CSSMappedAttributeDeclaration::removeMappedProperty):
1762         * dom/CSSMappedAttributeDeclaration.h:
1763         (WebCore::CSSMappedAttributeDeclaration::CSSMappedAttributeDeclaration):
1764
1765             Add/move methods to CSSMappedAttributeDeclaration for setting/removing
1766             properties that also take a StyledElement*. That element is used for
1767             scheduling style recalc and passing the right document to CSSParser.
1768
1769         * css/CSSParser.h:
1770         * css/CSSParser.cpp:
1771         (WebCore::parseColorValue):
1772         (WebCore::parseSimpleLengthValue):
1773         (WebCore::CSSParser::parseValue):
1774         (WebCore::CSSParser::parseMappedAttributeValue):
1775
1776             Added a parsedMappedAttributeValue() alternative to parseValue() that
1777             takes a StyledElement*.
1778
1779         * dom/StyledElement.h:
1780         * html/HTMLElement.cpp:
1781         (WebCore::HTMLElement::setContentEditable):
1782
1783             Add (and use) a StyledElement::removeCSSProperty() complement to the
1784             addCSS*() functions.
1785
1786         * dom/StyledElement.cpp:
1787         (WebCore::StyledElement::attributeChanged):
1788         (WebCore::StyledElement::removeCSSProperty):
1789         (WebCore::StyledElement::addCSSProperty):
1790         (WebCore::StyledElement::addCSSImageProperty):
1791         (WebCore::StyledElement::addCSSLength):
1792         (WebCore::StyledElement::addCSSColor):
1793         (WebCore::StyledElement::createMappedDecl):
1794         * html/HTMLTableElement.cpp:
1795         (WebCore::HTMLTableElement::additionalAttributeStyleDecls):
1796         (WebCore::HTMLTableElement::addSharedCellBordersDecl):
1797         (WebCore::HTMLTableElement::addSharedCellPaddingDecl):
1798         (WebCore::HTMLTableElement::addSharedGroupDecls):
1799
1800             Use the setMapped*Property() functions to plumb the element through.
1801
1802         * css/CSSElementStyleDeclaration.h:
1803
1804             Update comment about CSSElementStyleDeclaration's subclasses.
1805
1806 2011-12-24  Jarred Nicholls  <jarred@sencha.com>
1807
1808         Allow XMLHttpRequest withCredentials to be set prior to a call to open()
1809         https://bugs.webkit.org/show_bug.cgi?id=75194
1810
1811         XMLHttpRequest.withCredentials attribute should be modifiable prior to the OPENED state per
1812         the W3C spec. See http://dvcs.w3.org/hg/xhr/raw-file/tip/Overview.html#the-withcredentials-attribute
1813
1814         Reviewed by Alexey Proskuryakov.
1815
1816         Test: fast/xmlhttprequest/xmlhttprequest-withcredentials-before-open.html
1817
1818         * xml/XMLHttpRequest.cpp:
1819         (WebCore::XMLHttpRequest::setWithCredentials):
1820         Prevent setting the value only after the OPENED state.
1821
1822 2011-12-24  Andreas Kling  <awesomekling@apple.com>
1823
1824         Remove empty inline RenderStyle destructor.
1825         <http://webkit.org/b/75188>
1826
1827         Rubber-stamped by Anders "Ordvits" Carlsson.
1828
1829         * rendering/style/RenderStyle.h:
1830
1831 2011-12-24  Andreas Kling  <awesomekling@apple.com>
1832
1833         RenderStyle: Inline the destructor.
1834         <http://webkit.org/b/75188>
1835
1836         Reviewed by Kenneth Rohde Christiansen.
1837
1838         The (empty) RenderStyle destructor gets a little hot sometimes, reaching up
1839         to 0.4% when loading the full HTML5 spec. Inline it to remove the pointless
1840         function call.
1841
1842         * rendering/style/RenderStyle.cpp:
1843         * rendering/style/RenderStyle.h:
1844         (WebCore::RenderStyleBitfields::~RenderStyle):
1845
1846 2011-12-23  Noel Gordon  <noel.gordon@gmail.com>
1847
1848         JPEG decoders should only save color profile markers if color management is enabled
1849         https://bugs.webkit.org/show_bug.cgi?id=75182
1850
1851         Reviewed by Adam Barth.
1852
1853         No new tests. Covered by existing tests.
1854             fast/images/ycbcr-with-cmyk-color-profile.html
1855             fast/images/gray-scale-jpeg-with-color-profile.html
1856             fast/images/cmyk-jpeg-with-color-profile.html
1857             fast/images/color-jpeg-with-color-profile.html
1858
1859         * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
1860         (WebCore::JPEGImageReader::JPEGImageReader):  Store color profile (JPEG_APP0 + 2) markers
1861         using the iccjpeg helper setup_read_icc_profile() if color management is enabled.
1862
1863 2011-12-23  Alice Boxhall  <aboxhall@chromium.org>
1864
1865         Fix crash when adding paragraph in contenteditable with role=textbox.
1866         https://bugs.webkit.org/show_bug.cgi?id=75159
1867
1868         Reviewed by Ryosuke Niwa.
1869
1870         Test: accessibility/textbox-role-on-contenteditable-crash.html
1871
1872         * accessibility/AccessibilityRenderObject.cpp:
1873         (WebCore::AccessibilityRenderObject::childrenChanged): Use rendererIsEditable() rather than isContentEditable()
1874         as this method is called during render layouts, and isContentEditable() triggers a layout update, which crashes.
1875
1876 2011-12-23  Noel Gordon  <noel.gordon@gmail.com>
1877
1878         [chromium] JPEG image with CMYK ICC color profile renders color-inverted and squashed
1879         https://bugs.webkit.org/show_bug.cgi?id=74400
1880
1881         Reviewed by Adam Barth.
1882
1883         Use color profiles for GRAYSCALE, RGB, YCbCr, CMYK and YCCK jpeg images only if their
1884         embedded color profile is from an RGB color space input device.
1885
1886         Test:
1887            fast/images/ycbcr-with-cmyk-color-profile.html
1888                - YCbCr image, with CMYK output device color profile.
1889         Existing Tests:
1890            fast/images/gray-scale-jpeg-with-color-profile.html
1891                - YCbCr image, with GRAY input device color profile.
1892            fast/images/cmyk-jpeg-with-color-profile.html
1893                - YCCK image, with CMYK output device color profile.
1894            fast/images/color-jpeg-with-color-profile.html
1895                - YCbCr image, with RGB input device color profile.
1896
1897         * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
1898         (WebCore::rgbColorProfile): Return true if the profile has an RGB color space.
1899         (WebCore::inputDeviceColorProfile): Return true if the profile is from an input device.
1900         (WebCore::readColorProfile): Ignore the embedded color profile unless if it is from
1901         an RGB color space input device.
1902         (WebCore::JPEGImageReader::decode):
1903
1904 2011-12-23  Dan Bernstein  <mitz@apple.com>
1905
1906         Print dlerror() when dyld functions fail unexpectedly
1907         https://bugs.webkit.org/show_bug.cgi?id=75185
1908
1909         Reviewed by Sam Weinig.
1910
1911         * platform/mac/SoftLinking.h:
1912
1913 2011-12-23  Sam Weinig  <sam@webkit.org>
1914
1915         Start extracting platform specific bits out of PlatformEvents
1916         https://bugs.webkit.org/show_bug.cgi?id=75063
1917
1918         Reviewed by Anders Carlsson.
1919
1920         * WebCore.exp.in:
1921         Update exports.
1922
1923         * WebCore.xcodeproj/project.pbxproj:
1924         Add factory, remove implementation files for mac PlatformWheelEvent
1925         and PlatformMouseEvent.
1926
1927         * page/mac/EventHandlerMac.mm:
1928         (WebCore::EventHandler::wheelEvent):
1929         (WebCore::EventHandler::keyEvent):
1930         (WebCore::EventHandler::currentPlatformMouseEvent):
1931         Switch to use the factory.
1932
1933         * platform/PlatformEvent.h:
1934         (WebCore::PlatformEvent::shiftKey):
1935         (WebCore::PlatformEvent::ctrlKey):
1936         (WebCore::PlatformEvent::altKey):
1937         (WebCore::PlatformEvent::metaKey):
1938         (WebCore::PlatformEvent::modifiers):
1939         (WebCore::PlatformEvent::PlatformEvent):
1940         Switch to storing the modifiers as bits on an unsigned
1941         instead of as individual bools.
1942
1943         * platform/PlatformGestureEvent.h:
1944         Remove unused timestamp member.
1945
1946         * platform/PlatformKeyboardEvent.h:
1947         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
1948         (WebCore::PlatformKeyboardEvent::keyIdentifier):
1949         (WebCore::PlatformKeyboardEvent::macCharCode):
1950         (WebCore::PlatformKeyboardEvent::isSystemKey):
1951         Give this class a more consistent interface across platforms,
1952         and remove constructor that took an NSEvent.
1953
1954         * platform/PlatformMouseEvent.h:
1955         Remove constructor that took an NSEvent (and an unused constructor that took
1956         many arguments) as well as some free functions for point conversion.
1957
1958         * platform/PlatformWheelEvent.h:
1959         Remove constructor that took an NSEvent and an unnecessary override of the timestamp()
1960         function.
1961
1962         * platform/mac/KeyEventMac.mm:
1963         Removed constructor and moved helpers to PlatformEventFactory.
1964
1965         * platform/mac/PlatformEventFactory.h: Added.
1966         * platform/mac/PlatformEventFactory.mm: Added.
1967         (WebCore::globalPoint):
1968         (WebCore::globalPointForEvent):
1969         (WebCore::pointForEvent):
1970         (WebCore::mouseButtonForEvent):
1971         (WebCore::mouseEventTypeForEvent):
1972         (WebCore::clickCountForEvent):
1973         (WebCore::momentumPhaseForEvent):
1974         (WebCore::phaseForEvent):
1975         (WebCore::gestureEventTypeForEvent):
1976         (WebCore::textFromEvent):
1977         (WebCore::unmodifiedTextFromEvent):
1978         (WebCore::keyIdentifierForKeyEvent):
1979         (WebCore::isKeypadEvent):
1980         (WebCore::windowsKeyCodeForKeyEvent):
1981         (WebCore::isKeyUpEvent):
1982         (WebCore::modifiersForEvent):
1983         (WebCore::PlatformMouseEventBuilder::PlatformMouseEventBuilder):
1984         (WebCore::PlatformEventFactory::createPlatformMouseEvent):
1985         (WebCore::PlatformWheelEventBuilder::PlatformWheelEventBuilder):
1986         (WebCore::PlatformEventFactory::createPlatformWheelEvent):
1987         (WebCore::PlatformKeyboardEventBuilder::PlatformKeyboardEventBuilder):
1988         (WebCore::PlatformEventFactory::createPlatformKeyboardEvent):
1989         (WebCore::PlatformGestureEventBuilder::PlatformGestureEventBuilder):
1990         (WebCore::PlatformEventFactory::createPlatformGestureEvent):
1991         Consolidate platform event creation logic and add factory functions.
1992
1993         * platform/mac/PlatformMouseEventMac.mm: Removed.
1994         * platform/mac/WheelEventMac.mm: Removed.
1995
1996         * platform/mac/WebCoreSystemInterface.h:
1997         * platform/mac/WebCoreSystemInterface.mm:
1998         Expose wkGetNSEventKeyChar in WebCore.
1999
2000         * platform/gtk/PlatformKeyboardEventGtk.cpp:
2001         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
2002         * platform/gtk/PlatformMouseEventGtk.cpp:
2003         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
2004         * platform/gtk/PlatformWheelEventGtk.cpp:
2005         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
2006         * platform/qt/PlatformKeyboardEventQt.cpp:
2007         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
2008         * platform/qt/PlatformMouseEventQt.cpp:
2009         (WebCore::mouseEventModifiersFromQtKeyboardModifiers):
2010         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
2011         * platform/qt/PlatformTouchEventQt.cpp:
2012         (WebCore::PlatformTouchEvent::PlatformTouchEvent):
2013         * platform/win/KeyEventWin.cpp:
2014         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
2015         * platform/win/WheelEventWin.cpp:
2016         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
2017         Update for new variables/names.
2018
2019 2011-12-22  Andreas Kling  <kling@webkit.org>
2020
2021         CSSParser: Avoid creating dummy declaration in parseColor() slow path.
2022         <http://webkit.org/b/75104>
2023
2024         Reviewed by Darin Adler.
2025
2026         We only needed the dummy declaration to trigger the instantiation of
2027         a CSSValuePool. Added an ensureCSSValuePool() method and have parseColor()
2028         call that instead.
2029
2030         Also renamed the fast-path parseColor() to fastParseColor() and reordered
2031         the arguments for consistency with the slow-path parseColor().
2032
2033         * css/CSSParser.cpp:
2034         (WebCore::parseColorValue):
2035         (WebCore::CSSParser::parseColor):
2036         (WebCore::CSSParser::ensureCSSValuePool):
2037         (WebCore::CSSParser::fastParseColor):
2038         (WebCore::CSSParser::parseColorFromValue):
2039         * css/CSSParser.h:
2040
2041 2011-12-21  Andreas Kling  <kling@webkit.org>
2042
2043         Automate elements' registration as document namedItem/extraNamedItem.
2044         <http://webkit.org/b/74991>
2045
2046         Reviewed by Antti Koivisto.
2047
2048         Remove caching of the "id" and "name" attributes on applet, embed, form,
2049         image and object elements. We were caching them to keep the document's
2050         map of named and "extra named" (named by id) item counts in sync.
2051
2052         Instead, add a hook to Element::willModifyAttribute() that detects when
2053         the attributes are being changed and handle the registration/unregistration
2054         automatically if the element returns true for shouldRegisterAsNamedItem()
2055         or shouldRegisterAsExtraNamedItem() respectively.
2056
2057         This shrinks the elements by two AtomicStrings (8 or 16 bytes) each.
2058
2059         IFrame elements retain the old mechanism for now, as there are some subtle
2060         differences to how that's handled.
2061
2062         * dom/Node.h:
2063         (WebCore::Node::hasName):
2064         (WebCore::Node::setHasName):
2065
2066             Cache whether we have a "name" attribute or not (1 bit on Node.)
2067             This is done in order to minimize the overhead added to Element's
2068             insertedIntoDocument() and removeFromDocument().
2069
2070         * dom/StyledElement.cpp:
2071         (WebCore::StyledElement::attributeChanged):
2072
2073             Update the Node's has-name flag as appropriate.
2074
2075         * dom/Element.cpp:
2076         (WebCore::Element::updateNamedItemRegistration):
2077         (WebCore::Element::updateExtraNamedItemRegistration):
2078
2079             Added. Called when the "name" and "id" attributes are changed.
2080             Updates the document's named item maps accordingly.
2081
2082         (WebCore::Element::insertedIntoDocument):
2083         (WebCore::Element::removedFromDocument):
2084
2085             Make sure updateName() is called in addition to updateId() when applicable.
2086
2087         * dom/Element.h:
2088         (WebCore::Element::shouldRegisterAsNamedItem):
2089         (WebCore::Element::shouldRegisterAsExtraNamedItem):
2090
2091             Added. If an element returns true for these, it will be automatically
2092             registered with the document when the name/id attribute changes.
2093
2094         (WebCore::Element::updateId):
2095         (WebCore::Element::updateName):
2096
2097             Register/unregister from the document's named item maps as appropriate.
2098
2099         (WebCore::Element::willModifyAttribute):
2100
2101             Add updateName() hook in addition to the existing updateId() hook.
2102
2103         * dom/NamedNodeMap.cpp:
2104         (WebCore::NamedNodeMap::setAttributes):
2105
2106             Make sure updateName() is called when we're cloning the attributes
2107             from another element.
2108
2109         * html/HTMLAppletElement.cpp:
2110         (WebCore::HTMLAppletElement::parseMappedAttribute):
2111         * html/HTMLAppletElement.h:
2112         * html/HTMLEmbedElement.cpp:
2113         (WebCore::HTMLEmbedElement::parseMappedAttribute):
2114         (WebCore::HTMLEmbedElement::insertedIntoDocument):
2115         * html/HTMLEmbedElement.h:
2116         * html/HTMLFormElement.cpp:
2117         (WebCore::HTMLFormElement::insertedIntoDocument):
2118         (WebCore::HTMLFormElement::removedFromDocument):
2119         (WebCore::HTMLFormElement::parseMappedAttribute):
2120         * html/HTMLFormElement.h:
2121         * html/HTMLImageElement.cpp:
2122         (WebCore::HTMLImageElement::parseMappedAttribute):
2123         (WebCore::HTMLImageElement::insertedIntoDocument):
2124         * html/HTMLImageElement.h:
2125         * html/HTMLObjectElement.cpp:
2126         (WebCore::HTMLObjectElement::parseMappedAttribute):
2127         (WebCore::HTMLObjectElement::insertedIntoDocument):
2128         (WebCore::HTMLObjectElement::removedFromDocument):
2129         * html/HTMLObjectElement.h:
2130         * html/HTMLPlugInElement.h:
2131
2132             Remove duplicated code that is now handled by Element.
2133
2134         * html/HTMLObjectElement.cpp:
2135         (WebCore::HTMLObjectElement::updateDocNamedItem):
2136         (WebCore::HTMLObjectElement::formControlName):
2137
2138             Use fastGetAttribute() since we no longer cache the name.
2139
2140 2011-12-23  Anders Carlsson  <andersca@apple.com>
2141
2142         Add two (currently unused) new member functions to ScrollElasticityControllerClient
2143         https://bugs.webkit.org/show_bug.cgi?id=75179
2144
2145         Reviewed by Dan Bernstein.
2146
2147         This is so we'll be able to move more code to ScrollElasticityController.
2148
2149         * platform/mac/ScrollAnimatorMac.h:
2150         * platform/mac/ScrollAnimatorMac.mm:
2151         (WebCore::ScrollAnimatorMac::pinnedInDirection):
2152         (WebCore::ScrollAnimatorMac::immediateScrollByWithoutContentEdgeConstraints):
2153         * platform/mac/ScrollElasticityController.h:
2154
2155 2011-12-23  Simon Fraser  <simon.fraser@apple.com>
2156
2157         Blur filter doesn't invalidate enough
2158         https://bugs.webkit.org/show_bug.cgi?id=74891
2159
2160         Reviewed by Darin Adler.
2161         
2162         Take the effects of filters into account for repainting; we need
2163         to inflate the repaint rect by the outsets provided by the filter.
2164         
2165         Test: css3/filters/filter-repaint.html
2166
2167         * rendering/RenderBox.cpp:
2168         (WebCore::RenderBox::computeRectForRepaint):
2169         * rendering/RenderInline.cpp:
2170         (WebCore::RenderInline::computeRectForRepaint):
2171
2172 2011-12-23  Simon Fraser  <simon.fraser@apple.com>
2173
2174         Filters should apply to inline elements
2175         https://bugs.webkit.org/show_bug.cgi?id=75152
2176
2177         Reviewed by Darin Adler.
2178         
2179         Filters need to cause creation of RenderLayers for inlines, just like
2180         opacity and masks do.
2181
2182         Test: css3/filters/filtered-inline.html
2183
2184         * rendering/RenderInline.h:
2185         (WebCore::RenderInline::requiresLayer):
2186         * rendering/RenderTableRow.h: Remove an obviously incorrect comment.
2187
2188 2011-12-23  Jarred Nicholls  <jarred@sencha.com>
2189
2190         Synchronous XHR in window context should not support new XHR responseTypes for HTTP(S) requests
2191         https://bugs.webkit.org/show_bug.cgi?id=72154
2192
2193         Per the latest W3C editor draft: http://dvcs.w3.org/hg/xhr/raw-file/tip/Overview.html
2194         This is a spec-mandated attempt to thwart and otherwise discourage the use of synchronous XHR
2195         in the window context by deliberately not exposing newer functionality. Here we are disabling
2196         the use of responseType in synchronous HTTP(S) XHR requests from the window context.
2197
2198         When a user attempts this action, an InvalidAccessError exception is thrown and a message is
2199         printed to the console to further explain.
2200
2201         Renamed reportUnsafeUsage to a more generic name, and hoisted it up so it would be defined
2202         earlier and thus referenceable by setResponseType.
2203
2204         Reviewed by Alexey Proskuryakov.
2205
2206         Test: fast/xmlhttprequest/xmlhttprequest-responsetype-sync-request.html
2207
2208         * xml/XMLHttpRequest.cpp:
2209         (WebCore::logConsoleError):
2210         reportUnsafeUsage -> logConsoleError
2211         (WebCore::XMLHttpRequest::setResponseType):
2212         (WebCore::XMLHttpRequest::setRequestHeader):
2213         reportUnsafeUsage -> logConsoleError
2214         (WebCore::XMLHttpRequest::getResponseHeader):
2215         reportUnsafeUsage -> logConsoleError
2216         (WebCore::XMLHttpRequest::didFail):
2217         reportUnsafeUsage -> logConsoleError
2218
2219 2011-12-23  Alexander Pavlov  <apavlov@chromium.org>
2220
2221         Web Inspector: Implement a worker for parsing out JavaScript function data
2222         https://bugs.webkit.org/show_bug.cgi?id=75166
2223
2224         Reviewed by Pavel Feldman.
2225
2226         Test: inspector/debugger/script-extract-outline.html
2227
2228         * inspector/front-end/ScriptFormatter.js:
2229         (WebInspector.ScriptFormatter.prototype.formatContent):
2230         * inspector/front-end/ScriptFormatterWorker.js:
2231         (onmessage):
2232         (format):
2233         (getChunkCount):
2234         ():
2235         (Array.prototype.keySet):
2236
2237 2011-12-23  Ilya Tikhonovsky  <loislo@chromium.org>
2238
2239         Unreviewed, rolling out r103624.
2240         http://trac.webkit.org/changeset/103624
2241         https://bugs.webkit.org/show_bug.cgi?id=68916
2242
2243         Broke Snow Leopard builders
2244
2245         * CMakeLists.txt:
2246         * DerivedSources.cpp:
2247         * DerivedSources.pri:
2248         * GNUmakefile.list.am:
2249         * WebCore.gypi:
2250         * WebCore.xcodeproj/project.pbxproj:
2251         * bindings/js/JSDirectoryEntryCustom.cpp:
2252         (WebCore::JSDirectoryEntry::getFile):
2253         (WebCore::JSDirectoryEntry::getDirectory):
2254         * bindings/js/JSDirectoryEntrySyncCustom.cpp:
2255         (WebCore::getFlags):
2256         * bindings/v8/custom/V8DirectoryEntryCustom.cpp:
2257         (WebCore::V8DirectoryEntry::getDirectoryCallback):
2258         (WebCore::V8DirectoryEntry::getFileCallback):
2259         * bindings/v8/custom/V8DirectoryEntrySyncCustom.cpp:
2260         (WebCore::getFlags):
2261         * fileapi/WebKitFlags.idl: Added.
2262         * page/DOMWindow.idl:
2263         * workers/WorkerContext.idl:
2264
2265 2011-12-23  Eric Uhrhane  <ericu@chromium.org>
2266
2267        [fileapi] WebKitFlags should not be constructable per Directories & System spec
2268        https://bugs.webkit.org/show_bug.cgi?id=68916
2269
2270        Reviewed by Eric Seidel.
2271
2272        Remove IDL for the object and all DOM references to it.
2273        * fileapi/WebKitFlags.idl: Removed.
2274        * page/DOMWindow.idl:
2275        * workers/WorkerContext.idl:
2276        Remove references to the JSC/V8 objects compiled from the IDL.
2277        * bindings/js/JSDirectoryEntryCustom.cpp:
2278        (WebCore::JSDirectoryEntry::getFile):
2279        (WebCore::JSDirectoryEntry::getDirectory):
2280        * bindings/js/JSDirectoryEntrySyncCustom.cpp:
2281        (WebCore::getFlags):
2282        * bindings/v8/custom/V8DirectoryEntryCustom.cpp:
2283        (WebCore::V8DirectoryEntry::getDirectoryCallback):
2284        (WebCore::V8DirectoryEntry::getFileCallback):
2285        * bindings/v8/custom/V8DirectoryEntrySyncCustom.cpp:
2286        (WebCore::getFlags):
2287        Fix up build files.
2288        * WebCore.gypi:
2289        * WebCore.vcproj/WebCore.vcproj:
2290        * WebCore.xcodeproj/project.pbxproj:
2291        * WebCore/CMakeLists.txt:
2292        * WebCore/CodeGenerators.pri:
2293        * WebCore/DerivedSources.cpp:
2294        * WebCore/GNUmakefile.list.am:
2295
2296 2011-12-23  Pavel Feldman  <pfeldman@google.com>
2297
2298         Web Inspector: Migrate to native Function.prototype.bind; fix front-end compilation with the
2299         version of compiler that respects Function.prototype.bind.
2300         https://bugs.webkit.org/show_bug.cgi?id=75170
2301
2302         Reviewed by Yury Semikhatsky.
2303
2304         * inspector/front-end/ApplicationCacheModel.js:
2305         * inspector/front-end/CSSKeywordCompletions.js:
2306         (WebInspector.CSSKeywordCompletions.colors):
2307         * inspector/front-end/CSSStyleModel.js:
2308         * inspector/front-end/CompilerSourceMapping.js:
2309         * inspector/front-end/DOMAgent.js:
2310         (WebInspector.DOMAgent.prototype.pushNodeToFrontend):
2311         (WebInspector.DOMAgent.prototype.pushNodeByPathToFrontend):
2312         (WebInspector.DOMAgent.prototype._dispatchWhenDocumentAvailable.onDocumentAvailable):
2313         (WebInspector.DOMAgent.prototype._dispatchWhenDocumentAvailable):
2314         (WebInspector.DOMAgent.prototype._loadNodeAttributes):
2315         (WebInspector.DOMAgent.prototype.querySelector):
2316         (WebInspector.DOMAgent.prototype.querySelectorAll):
2317         * inspector/front-end/DebuggerModel.js:
2318         * inspector/front-end/DebuggerPresentationModel.js:
2319         * inspector/front-end/ExtensionAPI.js:
2320         (injectedExtensionAPI.InspectorExtensionAPI):
2321         (injectedExtensionAPI):
2322         * inspector/front-end/ExtensionPanel.js:
2323         * inspector/front-end/NetworkManager.js:
2324         (WebInspector.NetworkManager.prototype.enableResourceTracking):
2325         (WebInspector.NetworkManager.prototype.disableResourceTracking):
2326         * inspector/front-end/Script.js:
2327         * inspector/front-end/Settings.js:
2328         * inspector/front-end/TextPrompt.js:
2329         (WebInspector.TextPrompt.prototype.complete):
2330         * inspector/front-end/utilities.js:
2331
2332 2011-12-23  Leo Yang  <leo.yang@torchmobile.com.cn>
2333
2334         [BlackBerry] Add the BlackBerry specific pauseLoad(bool) to ResourceHandle
2335         https://bugs.webkit.org/show_bug.cgi?id=75162
2336
2337         Reviewed by George Staikos.
2338
2339         The porting can be built now, no new tests so far.
2340
2341         * platform/network/ResourceHandle.h:
2342
2343 2011-12-23  Karl Koscher  <supersat@chromium.org>
2344
2345         Give embedders a chance to handle postMessage calls
2346         https://bugs.webkit.org/show_bug.cgi?id=73883
2347
2348         To support cross-process postMessage calls in Chromium (bug 73337), we need to intercept 
2349         postMessage calls to proxy windows. Originally we were just going to add a native event
2350         listener on the Chromium side, but that required more changes to WebKit and was a bit of
2351         a hack. See bug 73359 for a discuss about moving to this approach.
2352
2353         Reviewed by Adam Barth.
2354
2355         Test: platform/chromium/fast/events/intercept-postmessage.html
2356
2357         * loader/FrameLoaderClient.h:
2358         (WebCore::FrameLoaderClient::willCheckAndDispatchPostMessage): new method to allow the
2359             embedder to intercept postMessage calls
2360         * page/DOMWindow.cpp:
2361         (WebCore::DOMWindow::postMessageTimerFired): add a call to
2362             FrameLoaderClient::willCheckAndDispatchPostMessage
2363
2364 2011-12-23  Tom Sepez  <tsepez@chromium.org>
2365
2366         XSLT-created HTML documents do not inherit content-security-policy from originally loaded XML.
2367         https://bugs.webkit.org/show_bug.cgi?id=75043
2368
2369         Reviewed by Adam Barth.
2370
2371         Test: http/tests/security/contentSecurityPolicy/xsl-img-blocked.php
2372
2373         * page/ContentSecurityPolicy.cpp:
2374         (WebCore::ContentSecurityPolicy::copyStateFrom):
2375         (WebCore::ContentSecurityPolicy::didReceiveHeader):
2376         * page/ContentSecurityPolicy.h:
2377         * xml/XSLTProcessor.cpp:
2378         (WebCore::XSLTProcessor::createDocumentFromSource):
2379
2380 2011-12-23  Darin Adler  <darin@apple.com>
2381
2382         REGRESSION (r97533): Optgroup label is not disabled
2383         https://bugs.webkit.org/show_bug.cgi?id=74869
2384
2385         Reviewed by Alexey Proskuryakov.
2386
2387         * rendering/RenderMenuList.cpp:
2388         (WebCore::RenderMenuList::itemIsEnabled): Added back a line of code that was
2389         accidentally deleted as part of the refactoring in r97533. This line of code
2390         ensures that any items that are not option elements are disabled.
2391
2392 2011-12-19  Alexander Pavlov  <apavlov@chromium.org>
2393
2394         Web Inspector: Add CSSStyleSelector instrumentation calls towards implementing a CSS selector profiler
2395         https://bugs.webkit.org/show_bug.cgi?id=74863
2396
2397         Performance checks run on PerformanceTest/Parser/html5-full-render.html did not result in any noticeable
2398         perf regression, as the instrumentation calls are inline and bail out early if there are no
2399         Web Inspector frontends open.
2400
2401         Reviewed by Antti Koivisto.
2402
2403         No new tests, as the functionality is not bound to any user-visible outputs.
2404
2405         * css/CSSStyleSelector.cpp:
2406         (WebCore::CSSStyleSelector::matchRulesForList):
2407         (WebCore::CSSStyleSelector::applyDeclaration):
2408         * inspector/InspectorInstrumentation.cpp:
2409         (WebCore::InspectorInstrumentation::willMatchRuleImpl):
2410         (WebCore::InspectorInstrumentation::didMatchRuleImpl):
2411         (WebCore::InspectorInstrumentation::willProcessRuleImpl):
2412         (WebCore::InspectorInstrumentation::didProcessRuleImpl):
2413         * inspector/InspectorInstrumentation.h:
2414         (WebCore::InspectorInstrumentation::willMatchRule):
2415         (WebCore::InspectorInstrumentation::didMatchRule):
2416         (WebCore::InspectorInstrumentation::willProcessRule):
2417         (WebCore::InspectorInstrumentation::didProcessRule):
2418
2419 2011-12-23  Ivan Briano  <ivan@profusion.mobi>
2420
2421         [EFL] Fix building with Glib support disabled
2422         https://bugs.webkit.org/show_bug.cgi?id=70990
2423
2424         Reviewed by Martin Robinson.
2425
2426         Add forward declaration for cairo_surface_t, missing when building
2427         the EFL port with Glib disabled.
2428
2429         * platform/cairo/WidgetBackingStore.h:
2430
2431 2011-12-23  Adam Klein  <adamk@chromium.org>
2432
2433         Minimize callsites and duplication of before/after advice for attribute mutations
2434         https://bugs.webkit.org/show_bug.cgi?id=75054
2435
2436         Reviewed by Ryosuke Niwa.
2437
2438         r103452 helpfully made before and after advice regarding attribute
2439         changes symmetrical. This change finishes that work, by pulling
2440         together all the before/after work, not just the crumbs previously
2441         covered. This includes incrementing Document::domTreeVersion()
2442         when an attribute is about to be changed, Inspector instrumentation,
2443         and MutationEvent dispatch. This is in addition to the previous code,
2444         which handled enqueueing MutationRecords for MutationObservers and
2445         updating the Document's list of IDs.
2446
2447         The only change in behavior should be in InspectorInstrumentation,
2448         which causes DOM breakpoints to occur for more cases of Attribute
2449         mutation. This seems like more correct behavior, and a test has
2450         been included to exercise it.
2451
2452         Hopefully the last Attribute-related refactor for awhile.
2453
2454         * dom/Attr.cpp:
2455         (WebCore::Attr::setValue): Update to call didModifyAttribute instead
2456         of attributeChanged.
2457         * dom/Element.cpp:
2458         (WebCore::Element::removeAttribute): Got rid of
2459         removeAttributeInternal as most of that logic moved back into
2460         NamedNodeMap::removeAttribute.
2461         (WebCore::Element::setAttributeInternal): Reorganized to read better
2462         now that only some cases result in calls to will/didModifyAttribute.
2463         (WebCore::Element::willModifyAttribute): Un-inlined and added
2464         incDOMTreeVersion and InspectorInstrumentation calls.
2465         (WebCore::Element::didModifyAttribute): New method which encapsulates
2466         calling attributeChanged, InspectorInstrumentation, and MutationEvents.
2467         (WebCore::Element::didRemoveAttribute): New method which encapsulates
2468         calling attributeChanged, InspectorInstrumentation, and MutationEvents.
2469         Separate from didModifyAttribute because it has special handling of
2470         the removed Attribute's value.
2471         * dom/Element.h:
2472         (WebCore::Element::willRemoveAttribute): New method which delegates to
2473         willModifyAttribute as appropriate.
2474         * dom/NamedNodeMap.cpp:
2475         (WebCore::NamedNodeMap::setNamedItem): Simplified.
2476         (WebCore::NamedNodeMap::removeNamedItem): Simplified.
2477         (WebCore::NamedNodeMap::addAttribute): Added calls to will/didModifyAttribute.
2478         (WebCore::NamedNodeMap::removeAttribute): ditto.
2479         (WebCore::NamedNodeMap::replaceAttribute): ditto.
2480         * svg/properties/SVGAnimatedPropertySynchronizer.h: Reverted changes
2481         made in r103452 now that addAttribute/removeAttribute once again
2482         call attributeChanged appropriately.
2483
2484 2011-12-22  Matt Falkenhagen  <falken@chromium.org>
2485
2486         Map 'lang' and xml:lang attributes to '-webkit-locale' CSS property for use with font fallback and text-transform
2487         https://bugs.webkit.org/show_bug.cgi?id=67586
2488
2489         Original patch by Jungshik Shin <jshin@chromium.org>
2490
2491         Reviewed by Darin Adler.
2492
2493         Tests: fast/text/lang-mapped-to-webkit-locale.xhtml
2494                fast/text/xml-lang-ignored-in-html.html
2495
2496         * html/HTMLElement.cpp:
2497         (WebCore::HTMLElement::mapLanguageAttributeToLocale):
2498         (WebCore::HTMLElement::parseMappedAttribute): Map 'lang' and 'xml:lang' to -webkit-locale.
2499         * html/HTMLElement.h:
2500
2501 2011-12-22  Ryosuke Niwa  <rniwa@webkit.org>
2502
2503         WinCE build fix after r103539.
2504
2505         * rendering/svg/RenderSVGResource.cpp:
2506         (WebCore::RenderSVGResource::removeFromFilterCache):
2507
2508 2011-12-22  Chris Marrin  <cmarrin@apple.com>
2509
2510         Crash and incorrect behavior when switching between hardware and software CSS filters
2511         https://bugs.webkit.org/show_bug.cgi?id=75130
2512
2513         Reviewed by Simon Fraser.
2514
2515         Test: css3/filters/crash-hw-sw-switch.html
2516
2517         Backing store on layer gets fixed up (added or removed) after style change is evaluated
2518         so the state of the m_filter variable might not match the current filter state. Added
2519         updateOrRemoveFilterEffect() call to ensureBacking() and clearBacking() to get the
2520         m_filter property in the right state. Also added an ASSERT() where the crash was
2521         occuring.
2522
2523         * rendering/RenderLayer.cpp:
2524         (WebCore::RenderLayer::paintLayer):
2525         (WebCore::RenderLayer::ensureBacking):
2526         (WebCore::RenderLayer::clearBacking):
2527
2528 2011-12-22  Jon Lee  <jonlee@apple.com>
2529
2530         Radio buttons cut in download movie sheet
2531         https://bugs.webkit.org/show_bug.cgi?id=75128
2532         <rdar://problem/9399450>
2533
2534         Reviewed by Dan Bernstein.
2535
2536         Test: compositing/overflow/theme-affects-visual-overflow.html
2537
2538         The clipping comes from the fact the visual overflow rect of the radio button's
2539         RenderBlock is not expanded to accommodate for the size of the button on the Mac
2540         platform. We use the existing RenderTheme::adjustRepaintRect() to make the
2541         appropriate adjustment. This, consequently, makes it unnecessary to have to
2542         recalculate it for repaint.
2543
2544         * rendering/RenderBlock.cpp:
2545         (WebCore::RenderBlock::computeOverflow): As part of the overflow computation, we
2546         make a call to addVisualOverflowFromTheme().
2547         (WebCore::RenderBlock::addVisualOverflowFromTheme): Ask the theme to inflate the
2548         RenderBlock's rect if necessary, and add that to the visual overflow rect.
2549         * rendering/RenderBlock.h: Added addVisualOverflowFromTheme().
2550         * rendering/RenderBox.cpp:
2551         (WebCore::RenderBox::clippedOverflowRectForRepaint): Remove the call to
2552         adjustRepaintRect() since the rectangle r already uses the new visual overflow
2553         rect.
2554         * rendering/RenderReplaced.cpp:
2555         (WebCore::RenderReplaced::clippedOverflowRectForRepaint): Remove the call to
2556         adjustRepaintRect() since the rectangle r already uses the new visual overflow
2557         rect.
2558
2559 2011-12-22  Chris Rogers  <crogers@google.com>
2560
2561         Fix mac build breakage - add SincResampler files to WebCore.xcodeproj
2562         https://bugs.webkit.org/show_bug.cgi?id=75139
2563
2564         Unreviewed build fix.
2565
2566         * WebCore.xcodeproj/project.pbxproj:
2567
2568 2011-12-22  Simon Fraser  <simon.fraser@apple.com>
2569
2570         Animating some CSS filter values is wrong
2571         https://bugs.webkit.org/show_bug.cgi?id=75122
2572
2573         Reviewed by Chris Marrin.
2574         
2575         Fix some reversed filter animation behavior for brightness,
2576         contrast and drop-shadow filters.
2577
2578         Test: css3/filters/filter-animation-from-none.html
2579
2580         * platform/graphics/filters/FilterOperation.cpp:
2581         (WebCore::BasicComponentTransferFilterOperation::blend): Just use the global blend() function.
2582         (WebCore::BasicComponentTransferFilterOperation::passthroughAmount): Add CONTRAST and BRIGHTNESS to the sswitch.
2583         (WebCore::GammaFilterOperation::blend): Fix the ordering.
2584         (WebCore::DropShadowFilterOperation::blend): Fix the ordering.
2585
2586 2011-12-22  Chris Rogers  <crogers@google.com>
2587
2588         Fix mac build caused by improper include of "Locker.h"
2589         https://bugs.webkit.org/show_bug.cgi?id=75134
2590
2591         Unreviewed build fix.
2592
2593         * webaudio/MediaElementAudioSourceNode.cpp:
2594
2595 2011-12-22  Anders Carlsson  <andersca@apple.com>
2596
2597         More ScrollAnimatorMac cleanup
2598         https://bugs.webkit.org/show_bug.cgi?id=75127
2599
2600         Reviewed by Andreas Kling.
2601
2602         Introduce a immediateScrollByWithoutContentEdgeConstraints and use it whenever we want to scroll by an
2603         offset instead of doing the setConstrainsScrollingToContentEdge dance.
2604
2605         * platform/mac/ScrollAnimatorMac.h:
2606         * platform/mac/ScrollAnimatorMac.mm:
2607         (WebCore::ScrollAnimatorMac::immediateScrollByWithoutContentEdgeConstraints):
2608         (WebCore::ScrollAnimatorMac::smoothScrollWithEvent):
2609         (WebCore::ScrollAnimatorMac::snapRubberBandTimerFired):
2610
2611 2011-12-22  Chris Rogers  <crogers@google.com>
2612
2613         Implement MediaElementAudioSourceNode::setFormat() so numberOfChannels and sampleRate are accounted for
2614         https://bugs.webkit.org/show_bug.cgi?id=75057
2615
2616         Reviewed by Eric Carlson.
2617
2618         * GNUmakefile.list.am:
2619         * WebCore.gypi:
2620         * WebCore.xcodeproj/project.pbxproj:
2621         Add MultiChannelResampler source files to makefiles.
2622         * platform/audio/MultiChannelResampler.cpp: Added.
2623         (WebCore::MultiChannelResampler::MultiChannelResampler):
2624         (WebCore::MultiChannelResampler::process):
2625         * platform/audio/MultiChannelResampler.h: Added.
2626         Add MultiChannelResampler implementation which uses one SincResampler per channel.
2627         * webaudio/MediaElementAudioSourceNode.cpp:
2628         (WebCore::MediaElementAudioSourceNode::create):
2629         (WebCore::MediaElementAudioSourceNode::MediaElementAudioSourceNode):
2630         (WebCore::MediaElementAudioSourceNode::setFormat):
2631         (WebCore::MediaElementAudioSourceNode::process):
2632         Implement MediaElementAudioSourceNode::setFormat() so that we can
2633         properly setup a sample-rate converter and set the number of channels
2634         of the MediaElementAudioSourceNode output.
2635         * webaudio/MediaElementAudioSourceNode.h:
2636
2637 2011-12-22  Chris Fleizach  <cfleizach@apple.com>
2638
2639         AX: WebKit should ignore ARIA role=presentation on focusable elements
2640         https://bugs.webkit.org/show_bug.cgi?id=75101
2641
2642         Reviewed by Darin Adler.
2643
2644         If an element is focusable, the presentational role must be ignored, lest the user not be able
2645         to interact with something important.
2646
2647         Test: accessibility/presentational-elements-with-focus.html
2648
2649         * accessibility/AccessibilityRenderObject.cpp:
2650         (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
2651         (WebCore::AccessibilityRenderObject::determineAriaRoleAttribute):
2652         (WebCore::AccessibilityRenderObject::inheritsPresentationalRole):
2653
2654 2011-12-22  Anders Carlsson  <andersca@apple.com>
2655
2656         Use immediateScrollBy instead of immediateScrollTo where possible
2657         https://bugs.webkit.org/show_bug.cgi?id=75124
2658
2659         Reviewed by Sam Weinig.
2660
2661         Instead of computing the position to scroll to, just compute the delta and use scrollBy instead.
2662
2663         * platform/mac/ScrollAnimatorMac.mm:
2664         (WebCore::ScrollAnimatorMac::smoothScrollWithEvent):
2665         (WebCore::ScrollAnimatorMac::snapRubberBandTimerFired):
2666
2667 2011-12-22  Anders Carlsson  <andersca@apple.com>
2668
2669         Remove a private ScrollAnimatorMac getter/setter and just update the member variable directly
2670         https://bugs.webkit.org/show_bug.cgi?id=75121
2671
2672         Reviewed by Sam Weinig.
2673
2674         * platform/mac/ScrollAnimatorMac.h:
2675         * platform/mac/ScrollAnimatorMac.mm:
2676         (WebCore::ScrollAnimatorMac::setIsActive):
2677         (WebCore::ScrollAnimatorMac::updateScrollerStyle):
2678
2679 2011-12-22  Anders Carlsson  <andersca@apple.com>
2680
2681         Simplify ScrollAnimatorMac scrollByDelta functions
2682         https://bugs.webkit.org/show_bug.cgi?id=75120
2683
2684         Reviewed by Sam Weinig.
2685
2686         Merge immediateScrollByDeltaX and immediateScrollByDeltaY to a single function and rename it
2687         to immediateScrollBy. Also, rename immediateScrollToPoint to immediateScrollTo.
2688         
2689         * platform/mac/ScrollAnimatorMac.h:
2690         * platform/mac/ScrollAnimatorMac.mm:
2691         (WebCore::ScrollAnimatorMac::scrollToOffsetWithoutAnimation):
2692         (WebCore::ScrollAnimatorMac::immediateScrollTo):
2693         (WebCore::ScrollAnimatorMac::immediateScrollBy):
2694         (WebCore::ScrollAnimatorMac::immediateScrollToPointForScrollAnimation):
2695         (WebCore::ScrollAnimatorMac::smoothScrollWithEvent):
2696         (WebCore::ScrollAnimatorMac::snapRubberBandTimerFired):
2697
2698 2011-12-22  Anders Carlsson  <andersca@apple.com>
2699
2700         Make some ScrollAnimatorMac member functions private
2701         https://bugs.webkit.org/show_bug.cgi?id=75117
2702
2703         Reviewed by Sam Weinig.
2704
2705         Make virtual member functions and functions that are only called from ScrollAnimatorMac private.
2706
2707         * platform/mac/ScrollAnimatorMac.h:
2708
2709 2011-12-22  Anders Carlsson  <andersca@apple.com>
2710
2711         Move some member variables out of ScrollElasticityController
2712         https://bugs.webkit.org/show_bug.cgi?id=75115
2713
2714         Reviewed by Adam Roben.
2715
2716         Move a couple of member variables that aren't related to rubberbanding out from
2717         ScrollElasticityController and back into ScrollAnimatorMac and remove now unneeded
2718         ScrollElasticityControllerClient member functions as well.
2719
2720         * platform/mac/ScrollAnimatorMac.h:
2721         * platform/mac/ScrollAnimatorMac.mm:
2722         (WebCore::ScrollAnimatorMac::ScrollAnimatorMac):
2723         (WebCore::ScrollAnimatorMac::handleWheelEvent):
2724         (WebCore::ScrollAnimatorMac::beginScrollGesture):
2725         * platform/mac/ScrollElasticityController.h:
2726         * platform/mac/ScrollElasticityController.mm:
2727         (WebCore::ScrollElasticityController::ScrollElasticityController):
2728         (WebCore::ScrollElasticityController::beginScrollGesture):
2729
2730 2011-12-22  Balazs Kelemen  <kbalazs@webkit.org>
2731
2732         Fix debug build with assertions disabled
2733         https://bugs.webkit.org/show_bug.cgi?id=75075
2734
2735         Reviewed by Darin Adler.
2736
2737         Check whether assertions are disabled instead of NDEBUG
2738         where appropriate to avoid "defined but not used" warnings.
2739
2740         No change in behaviour so no new tests.
2741
2742         * loader/cache/MemoryCache.cpp:
2743         (WebCore::MemoryCache::insertInLRUList):
2744         (WebCore::MemoryCache::removeFromLiveDecodedResourcesList):
2745         (WebCore::MemoryCache::insertInLiveDecodedResourcesList):
2746         * rendering/RenderBlock.cpp:
2747         (WebCore::RenderBlock::layoutBlockChild):
2748         * rendering/RenderLayer.cpp:
2749         (WebCore::RenderLayer::updateLayerPositions):
2750
2751 2011-12-22  Anders Carlsson  <andersca@apple.com>
2752
2753         Get rid of didStartAnimatedScroll and didCompleteAnimatedScroll
2754         https://bugs.webkit.org/show_bug.cgi?id=75107
2755
2756         Reviewed by Adam Roben.
2757
2758         This is another step towards removing the display throttling in WebKit2.
2759
2760         * page/ChromeClient.h:
2761         * page/FrameView.cpp:
2762         * page/FrameView.h:
2763         * platform/ScrollableArea.h:
2764         * platform/mac/ScrollAnimatorMac.mm:
2765         (WebCore::ScrollAnimatorMac::scroll):
2766         (WebCore::ScrollAnimatorMac::immediateScrollToPointForScrollAnimation):
2767
2768 2011-12-22  Anders Carlsson  <andersca@apple.com>
2769
2770         Remove didStartRubberBand and didCompleteRubberBand callbacks
2771         https://bugs.webkit.org/show_bug.cgi?id=75102
2772
2773         Reviewed by Adam Roben.
2774
2775         The code to do display throttling in WebKit2 is complex and doesn't really help us except
2776         on an old benchmark that's no longer representative of real-world behavior; let's rip it out instead.
2777
2778         * page/ChromeClient.h:
2779         * page/FrameView.cpp:
2780         * page/FrameView.h:
2781         * platform/ScrollView.cpp:
2782         * platform/ScrollView.h:
2783         * platform/ScrollableArea.h:
2784         * platform/mac/ScrollAnimatorMac.mm:
2785         (WebCore::ScrollAnimatorMac::snapRubberBandTimerFired):
2786         * rendering/RenderLayer.cpp:
2787         * rendering/RenderLayer.h:
2788
2789 2011-12-22  Vsevolod Vlasov  <vsevik@chromium.org>
2790
2791         Web Inspector: [Regression] Network item view is not displayed.
2792         https://bugs.webkit.org/show_bug.cgi?id=75100
2793
2794         Not reviewed, one line css fix.
2795
2796         * inspector/front-end/networkPanel.css:
2797         (.network-item-view.visible):
2798
2799 2011-12-22  Andreas Kling  <kling@webkit.org>
2800
2801         NamedNodeMap: Get rid of declCount().
2802         <http://webkit.org/b/74948>
2803
2804         Reviewed by Darin Adler.
2805
2806         We already have the number of mapped attribute declarations in the map
2807         stored in m_mappedAttributeCount (updated by declAdded()/declRemoved())
2808         so compare that in mappedMapsEquivalent() to skip one loop over the map.
2809
2810         * dom/NamedNodeMap.cpp:
2811         (WebCore::NamedNodeMap::mappedMapsEquivalent):
2812         * dom/NamedNodeMap.h:
2813
2814 2011-12-22  Andreas Kling  <kling@webkit.org>
2815
2816         SnowLeopard crashes due to thread-unsafe EventListenerIterator ASSERTs
2817         <http://webkit.org/b/74260>
2818
2819         Reviewed by Darin Adler.
2820
2821         Guard EventListenerMap::m_activeIteratorCount with a mutex.
2822
2823         * dom/EventListenerMap.cpp:
2824         (WebCore::activeIteratorCountMutex):
2825         (WebCore::EventListenerMap::assertNoActiveIterators):
2826         (WebCore::EventListenerMap::clear):
2827         (WebCore::EventListenerMap::add):
2828         (WebCore::EventListenerMap::remove):
2829         (WebCore::EventListenerMap::find):
2830         (WebCore::EventListenerMap::removeFirstEventListenerCreatedFromMarkup):
2831         (WebCore::EventListenerMap::copyEventListenersNotCreatedFromMarkupToTarget):
2832         (WebCore::EventListenerIterator::EventListenerIterator):
2833         (WebCore::EventListenerIterator::~EventListenerIterator):
2834         * dom/EventListenerMap.h:
2835         (WebCore::EventListenerMap::assertNoActiveIterators):
2836
2837 2011-12-22  Vsevolod Vlasov  <vsevik@chromium.org>
2838
2839         Web Inspector: TabbedPane should support closeable tabs, hiding tabs into drop down menu.
2840         https://bugs.webkit.org/show_bug.cgi?id=75085
2841
2842         Reviewed by Pavel Feldman.
2843
2844         Test: inspector/tabbed-pane-tabs-to-show.html
2845
2846         * WebCore.gypi:
2847         * WebCore.vcproj/WebCore.vcproj:
2848         * inspector/front-end/ScriptsNavigator.js:
2849         (WebInspector.ScriptsNavigator):
2850         * inspector/front-end/TabbedPane.js:
2851         (WebInspector.TabbedPane):
2852         (WebInspector.TabbedPane.prototype.set shrinkableTabs):
2853         (WebInspector.TabbedPane.prototype.set closeableTabs):
2854         (WebInspector.TabbedPane.prototype.appendTab):
2855         (WebInspector.TabbedPane.prototype.closeTab):
2856         (WebInspector.TabbedPane.prototype.selectTab):
2857         (WebInspector.TabbedPane.prototype.onResize):
2858         (WebInspector.TabbedPane.prototype._updateTabElements):
2859         (WebInspector.TabbedPane.prototype._showTabElement):
2860         (WebInspector.TabbedPane.prototype._hideTabElement):
2861         (WebInspector.TabbedPane.prototype._createDropDownButton):
2862         (WebInspector.TabbedPane.prototype._updateTabsDropDown):
2863         (WebInspector.TabbedPane.prototype._populateDropDownFromIndex):
2864         (WebInspector.TabbedPane.prototype._tabsSelectChanged):
2865         (WebInspector.TabbedPane.prototype._measureDropDownButton):
2866         (WebInspector.TabbedPane.prototype._updateWidths):
2867         (WebInspector.TabbedPane.prototype._calculateMaxWidth.var):
2868         (WebInspector.TabbedPane.prototype._calculateMaxWidth):
2869         (WebInspector.TabbedPane.prototype._hideCurrentTab):
2870         (WebInspector.TabbedPaneTab):
2871         (WebInspector.TabbedPaneTab.prototype.get id):
2872         (WebInspector.TabbedPaneTab.prototype.get tabElement):
2873         (WebInspector.TabbedPaneTab.prototype.get measuredWidth):
2874         (WebInspector.TabbedPaneTab.prototype.get width):
2875         (WebInspector.TabbedPaneTab.prototype.set width):
2876         (WebInspector.TabbedPaneTab.prototype._createTabElement):
2877         (WebInspector.TabbedPaneTab.prototype._measure):
2878         (WebInspector.TabbedPaneTab.prototype._tabSelected):
2879         (WebInspector.TabbedPaneTab.prototype._tabClosed):
2880         * inspector/front-end/WebKit.qrc:
2881         * inspector/front-end/inspector.css:
2882         * inspector/front-end/scriptsPanel.css:
2883         (#scripts-navigator-tabbed-pane .tabbed-pane-header-contents):
2884         * inspector/front-end/tabbedPane.css: Added.
2885
2886 2011-12-22  Chris Fleizach  <cfleizach@apple.com>
2887
2888         AX: attributed strings do not include AXHeading information when a link is contained within the heading
2889         https://bugs.webkit.org/show_bug.cgi?id=75059
2890
2891         Reviewed by Darin Adler.
2892
2893         An attributed string should contain the heading level of an ancestor node if it exists.
2894         This change allows the ancestor to be higher up in the hierarchy than just the direct parent.
2895
2896         Test: platform/mac/accessibility/heading-and-link-attributed-string.html
2897
2898         * accessibility/mac/WebAccessibilityObjectWrapper.mm:
2899           (AXAttributeStringSetHeadingLevel):
2900
2901 2011-12-22  Chris Fleizach  <cfleizach@apple.com>
2902
2903         AX: Title attribute should not be used in AXTitle
2904         https://bugs.webkit.org/show_bug.cgi?id=75027
2905
2906         Reviewed by Darin Adler.
2907
2908         Accessibility has been incorrectly exposing the title attribute through AXTitle. The title
2909         attribute better corresponds with a help tag for accessibility clients.
2910
2911         Test: platform/mac/accessibility/title-attribute-not-used-as-axtitle.html
2912
2913         * accessibility/AccessibilityRenderObject.cpp:
2914         (WebCore::AccessibilityRenderObject::title):
2915             Don't use the title attribute.
2916         (WebCore::AccessibilityRenderObject::exposesTitleUIElement):
2917             Change the semantics around when a checkbox or radio button combines it's title ui element. The change
2918             makes it so that we will expose the title ui element when the control already has a label. Otherwise
2919             the title ui element is hidden, and it's text is used as the AXTitle for the control.
2920         (WebCore::AccessibilityRenderObject::titleUIElement):
2921             Change this method so it always returns the title ui element, and then leave it up to exposesTitleUIElement
2922             to determine whether it should be shown.
2923         * accessibility/AccessibilityTableCell.h:
2924         (WebCore::AccessibilityTableCell::exposesTitleUIElement):
2925             There's no special logic for table cells that have title ui elements, and we don't want to use
2926             the logic in AccessibilityRenderObject, hence the override here.
2927         * accessibility/mac/WebAccessibilityObjectWrapper.mm:
2928         (-[WebAccessibilityObjectWrapper accessibilityAttributeValue:]):
2929
2930 2011-12-22  Chris Fleizach  <cfleizach@apple.com>
2931
2932         AX: aria-describedby should not be part of AXDescription (should be a part of AXHelp)
2933         https://bugs.webkit.org/show_bug.cgi?id=75052
2934
2935         Reviewed by Darin Adler.
2936
2937         According to the ARIA spec, aria-describedby is a more detailed description that is akin to help, rather
2938         than a description describing the actual object.
2939
2940         As such, it makes more sense for this attribute to be exposed under help text.
2941
2942         * accessibility/AccessibilityRenderObject.cpp:
2943         (WebCore::AccessibilityRenderObject::helpText):
2944         (WebCore::AccessibilityRenderObject::ariaAccessibilityDescription):
2945
2946 2011-12-22  Mariusz Grzegorczyk  <mariusz.g@samsung.com>
2947
2948         [EFL] Missing plugins support for efl port
2949         https://bugs.webkit.org/show_bug.cgi?id=44505
2950
2951         Reviewed by Anders Carlsson.
2952
2953         Basic functionality of plugins for efl port.
2954
2955         Template version, so no new tests are needed.
2956
2957         * PlatformEfl.cmake:
2958         * plugins/PluginView.h:
2959         * plugins/efl/PluginDataEfl.cpp: Added. Copied from plugins/gtk/PluginDataGtk.cpp.
2960         (WebCore::PluginData::initPlugins): Fill mime/description/extension maps for plugins.
2961         (WebCore::PluginData::refresh): Refresh plugin's database.
2962         * plugins/efl/PluginPackageEfl.cpp: Added. Copied from plugins/gtk/PluginPackageGtk.cpp.
2963         (WebCore::PluginPackage::fetchInfo): Get info from plugin's library about name and mime supported.
2964         (WebCore::PluginPackage::NPVersion):
2965         (WebCore::PluginPackage::load): Load plugin.
2966         * plugins/efl/PluginViewEfl.cpp: Added. Copied from plugins/gtk/PluginViewGtk.cpp.
2967         (WebCore::PluginView::dispatchNPEvent):
2968         (WebCore::PluginView::handleFocusInEvent):
2969         (WebCore::PluginView::handleFocusOutEvent):
2970         (WebCore::PluginView::handleKeyboardEvent):
2971         (WebCore::PluginView::handleMouseEvent):
2972         (WebCore::PluginView::updatePluginWidget):
2973         (WebCore::PluginView::setFocus):
2974         (WebCore::PluginView::show):
2975         (WebCore::PluginView::hide):
2976         (WebCore::PluginView::paint):
2977         (WebCore::PluginView::setParent):
2978         (WebCore::PluginView::setNPWindowRect):
2979         (WebCore::PluginView::setNPWindowIfNeeded):
2980         (WebCore::PluginView::setParentVisible):
2981         (WebCore::PluginView::handlePostReadFile):
2982         (WebCore::PluginView::platformGetValueStatic):
2983         (WebCore::PluginView::platformGetValue):
2984         (WebCore::PluginView::invalidateRect):
2985         (WebCore::PluginView::invalidateRegion):
2986         (WebCore::PluginView::forceRedraw):
2987         (WebCore::PluginView::platformStart):
2988         (WebCore::PluginView::platformDestroy):
2989
2990 2011-12-22  Pavel Podivilov  <podivilov@chromium.org>
2991
2992         Web Inspector: add "install source map" to JS source frame context menu.
2993         https://bugs.webkit.org/show_bug.cgi?id=74181
2994
2995         Reviewed by Pavel Feldman.
2996
2997         Add "install source map" to source frame context menu when source map url is auto detected.
2998
2999         * English.lproj/localizedStrings.js:
3000         * inspector/front-end/CompilerSourceMapping.js:
3001         (WebInspector.ClosureCompilerSourceMapping.prototype.load):
3002         (WebInspector.ClosureCompilerSourceMapping.prototype._parseSections):
3003         * inspector/front-end/DebuggerPresentationModel.js:
3004         (WebInspector.DebuggerPresentationModel.prototype.installCompilerSourceMapping):
3005         * inspector/front-end/JavaScriptSourceFrame.js:
3006         (WebInspector.JavaScriptSourceFrame.prototype.populateTextAreaContextMenu):
3007         (WebInspector.JavaScriptSourceFrame.prototype.cancelEditing):
3008         * inspector/front-end/RawSourceCode.js:
3009         (WebInspector.RawSourceCode.prototype._createSourceMapping.didRequestContent.didFormatContent):
3010         (WebInspector.RawSourceCode.prototype._createSourceMapping.didRequestContent):
3011         (WebInspector.RawSourceCode.prototype._createSourceMapping):
3012         (WebInspector.RawSourceCode.prototype._createUISourceCode):
3013         * inspector/front-end/UISourceCode.js:
3014         (WebInspector.UISourceCode):
3015
3016 2011-12-22  Branimir Lambov  <blambov@google.com>
3017
3018         SVG: "filter" race condition may prevent SVG elements from being re-drawn
3019         https://bugs.webkit.org/show_bug.cgi?id=53088
3020
3021         Reviewed by Nikolas Zimmermann.
3022
3023         Added code to explicitly invalidate data cached by filters applied to
3024         an invalidated object or one of its parents.
3025
3026         Test: svg/filters/filter-refresh.svg
3027
3028         * rendering/svg/RenderSVGResource.cpp:
3029         (WebCore::RenderSVGResource::removeFromFilterCache):
3030         (WebCore::RenderSVGResource::markForLayoutAndParentResourceInvalidation):
3031         Added code to invalidate any filters applied to any of the parents.
3032         * rendering/svg/RenderSVGResource.h:
3033         * rendering/svg/RenderSVGResourceContainer.cpp:
3034         (WebCore::RenderSVGResourceContainer::markAllClientsForInvalidation):
3035         Replaced a duplicate of RenderSVGResource::
3036         markForLayoutAndParentResourceInvalidation with a call to the method.
3037         * rendering/svg/SVGResourcesCache.cpp:
3038         (WebCore::SVGResourcesCache::clientLayoutChanged):
3039         Removed filter invalidation code as this function would not be called if
3040         the filter isn't already invalidated.
3041         (WebCore::SVGResourcesCache::clientStyleChanged):
3042         (WebCore::SVGResourcesCache::clientUpdatedFromElement):
3043         Replaced filter invalidation with a markForLayoutAndParentResourceInvalidation
3044         call as all filters in the ancestor chain need to be invalidated.
3045
3046 2011-12-22  Leo Yang  <leo.yang@torchmobile.com.cn>
3047
3048         [BlackBerry] Upstream the BlackBerry change to ResourceHandle.h
3049         https://bugs.webkit.org/show_bug.cgi?id=75061
3050
3051         Reviewed by George Staikos.
3052
3053         No functionality change to the existing code, no new tests.
3054
3055         * platform/network/ResourceHandle.h:
3056
3057 2011-12-22  Alexandru Chiculita  <achicu@adobe.com>
3058
3059         [CSS Shaders] Follow up bug to fix issues mentioned in comment 23 from bug 73317
3060         https://bugs.webkit.org/show_bug.cgi?id=74840
3061         
3062         Some comments were added on bug 73317 after the patch was reviewed and committed.
3063         This patch is fixing those issues, mostly about coding style and some missing comments.
3064         
3065         The initial patch had no explanation about the feature in the ChangeLog, so I'm including the description
3066         in this patch:
3067         
3068         CSS Shaders allow a designer to use a pair of WebGL vertex and fragment shaders to alter the final
3069         rendering of a specific element. The navigator will render the element inside a texture and map it
3070         to a mesh. The mesh is formed by equal sized quads, that depending on the mesh style, attached or detached,
3071         can be stitched or separated. The number of quads can be changed from CSS.
3072         
3073         Usually the vertex shader is changing the vertices of the mesh, while the fragment shader affects only the color
3074         that is rendered to screen (for example lighting effects).
3075         
3076         More info about CSS Shaders can be found in the specification
3077         https://dvcs.w3.org/hg/FXTF/raw-file/tip/custom/index.html
3078         
3079         Also a good tutorial is published here
3080         http://www.adobe.com/devnet/html5/articles/css-shaders.html
3081         
3082         Initially we are using the software filter effects pipeline. It uploads the image to the GPU, applies
3083         the shaders, reads it back to CPU and continues the rendering. The advantage of using the software pipeline is that
3084         it can be enabled on all the platforms that have WebGL support. The obvious disadvantage is performance: copies from CPU
3085         memory to GPU memory and the CPU will need to wait the GPU to finish before it could continue. In following 
3086         patches the shaders will be integrated in the hardware accelerated pipeline, so that no copies and, most 
3087         important, no waits will be required.
3088         
3089         Also, the new syntax counts total number of the lines and the columns, not just the
3090         additional lines and columns, so the minimum accepted and the default value is now 1 by 1.
3091
3092         Reviewed by Nikolas Zimmermann.
3093
3094         Some tests were updated for the default mesh size change.
3095
3096         * css/CSSParser.cpp:
3097             Only accept non-zero positive int values for mesh sizes.
3098             
3099         (WebCore::CSSParser::parseCustomFilter):
3100         * css/CSSStyleSelector.cpp:
3101             Updated the default mesh size to be 1 column with 1 line.
3102             
3103         (WebCore::CSSStyleSelector::createCustomFilterOperation):
3104         * loader/cache/CachedShader.cpp:
3105         (WebCore::CachedShader::shaderString):
3106             Corrected the CachedShader to use a StringBuilder. Also there was an incorrect 
3107             cast to bool, which resulted from a copy/paste from CachedScript which still has
3108             both same issues.
3109             
3110         (WebCore::CachedShader::data):
3111         * loader/cache/CachedShader.h:
3112         * platform/graphics/filters/CustomFilterMesh.cpp:
3113         (WebCore::MeshGenerator::MeshGenerator):
3114         (WebCore::MeshGenerator::verticesCount):
3115         (WebCore::MeshGenerator::generateAttachedMesh):
3116         (WebCore::MeshGenerator::generateDetachedMesh):
3117         (WebCore::CustomFilterMesh::CustomFilterMesh):
3118         * platform/graphics/filters/CustomFilterMesh.h:
3119         (WebCore::CustomFilterMesh::create):
3120         * platform/graphics/filters/CustomFilterShader.cpp:
3121         (WebCore::CustomFilterShader::CustomFilterShader):
3122             Exploded the body of the constructor into smaller helper functions.
3123             
3124         (WebCore::CustomFilterShader::compileShader):
3125         (WebCore::CustomFilterShader::linkProgram):
3126         (WebCore::CustomFilterShader::initializeParameterLocations):
3127         * platform/graphics/filters/CustomFilterShader.h:
3128         * platform/graphics/filters/FECustomFilter.cpp:
3129         (WebCore::orthogonalProjectionMatrix):
3130             Passing a TransformationMatrix by reference to be filled with the result matrix, instead
3131             of returning it by value. Also changed the name of the method.
3132             
3133         (WebCore::FECustomFilter::FECustomFilter):
3134         (WebCore::FECustomFilter::platformApplySoftware):
3135             Created some helper functions to make this method shorter.
3136             
3137         (WebCore::FECustomFilter::initializeContext):
3138         (WebCore::FECustomFilter::resizeContext):
3139         (WebCore::FECustomFilter::bindVertexAttribute):
3140         (WebCore::FECustomFilter::bindProgramAndBuffers):
3141         * platform/graphics/filters/FECustomFilter.h:
3142
3143 2011-12-12  Pavel Podivilov  <podivilov@chromium.org>
3144
3145         Web Inspector: fix source map url resolving.
3146         https://bugs.webkit.org/show_bug.cgi?id=74305
3147
3148         Reviewed by Pavel Feldman.
3149
3150         Also fix the bug with repeated source urls in mapping sections.
3151
3152         * inspector/front-end/CompilerSourceMapping.js:
3153         (WebInspector.ClosureCompilerSourceMapping):
3154         (WebInspector.ClosureCompilerSourceMapping.prototype.sources):
3155         (WebInspector.ClosureCompilerSourceMapping.prototype._parseMap):
3156         (WebInspector.ClosureCompilerSourceMapping.prototype._resolveSourceMapURL):
3157         * inspector/front-end/DebuggerPresentationModel.js:
3158         (WebInspector.DebuggerPresentationModel.prototype.installCompilerSourceMapping):
3159         * inspector/front-end/utilities.js:
3160         (String.prototype.asParsedURL):
3161
3162 2011-12-09  Pavel Podivilov  <podivilov@chromium.org>
3163
3164         Web Inspector: auto detect source map url.
3165         https://bugs.webkit.org/show_bug.cgi?id=74088
3166
3167         Reviewed by Pavel Feldman.
3168
3169         Check to see if "X-SourceMap" HTTP response header was sent with script resource.
3170         Header value will be used as auto suggestion for source map url in UI.
3171
3172         * inspector/Inspector.json:
3173         * inspector/InspectorDebuggerAgent.cpp:
3174         (WebCore::InspectorDebuggerAgent::sourceMapURLForScript):
3175         (WebCore::InspectorDebuggerAgent::didParseSource):
3176         * inspector/InspectorDebuggerAgent.h:
3177         * inspector/front-end/DebuggerModel.js:
3178         (WebInspector.DebuggerModel.prototype._parsedScriptSource):
3179         (WebInspector.DebuggerDispatcher.prototype.scriptParsed):
3180         * inspector/front-end/RawSourceCode.js:
3181         (WebInspector.RawSourceCode):
3182         * inspector/front-end/Script.js:
3183         (WebInspector.Script):
3184
3185 2011-12-22  Kentaro Hara  <haraken@chromium.org>
3186
3187         Change the build flow of AppleWebKit to use the [Supplemental] IDL
3188         https://bugs.webkit.org/show_bug.cgi?id=74900
3189
3190         Reviewed by Adam Barth.
3191
3192         This is the final step for bug 74599. This patch changes the build flow
3193         of DerivedSources.make as follows, and thus enable the [Supplemental] IDL.
3194
3195         - Previous build flow:
3196             foreach $idl (all IDL files) {
3197                 generate-bindings.pl depends on $idl;
3198                 generate-bindings.pl reads $idl;
3199                 generate-bindings.pl generates .h and .cpp files for $idl;
3200             }
3201
3202         - New build flow (See the discussions in bug 72138 for more details):
3203             resolve-supplemental.pl depends on all IDL files;
3204             resolve-supplemental.pl reads all IDL files;
3205             resolve-supplemental.pl resolves the dependency of [Supplemental=XXXX];
3206             resolve-supplemental.pl outputs supplemental_dependency.tmp;
3207             foreach $idl (all IDL files) {
3208                 generate-bindings.pl depends on $idl and supplemental_dependency.tmp;
3209                 generate-bindings.pl reads $idl;
3210                 generate-bindings.pl reads supplemental_dependency.tmp;
3211                 generate-bindings.pl generates .h and .cpp files for $idl,
3212                     including all attributes in the IDL files that are implementing $idl;
3213             }
3214
3215         Tests: Confirm that build succeeds.
3216                http/tests/websocket/tests/*
3217
3218         * DerivedSources.make: Described the build flow as described above.
3219         Added a list of IDL files. Instead, removed a list of JS*.h and JS*.cpp
3220         which are generated by the IDL files.
3221
3222 2011-12-22  Eric Uhrhane  <ericu@chromium.org>
3223
3224         [filesystem] Remove old filesystem naming restrictions
3225         https://bugs.webkit.org/show_bug.cgi?id=62813
3226
3227         Reviewed by David Levin.
3228
3229         * fileapi/DOMFilePath.cpp:
3230         (WebCore::DOMFilePath::isValidPath): Replace strict restrictions with
3231         minimal safety [no files named "." or "..", no use of '\\' or '\0' in
3232         paths, no use of '/' in file names].
3233
3234 2011-12-22  Greg Billock  <gbillock@google.com>
3235
3236         [Coverity] Address use-after-free report in MemoryCache
3237         https://bugs.webkit.org/show_bug.cgi?id=74970
3238
3239         Reviewed by Eric Seidel.
3240
3241         * loader/cache/MemoryCache.cpp:
3242         (WebCore::MemoryCache::revalidationSucceeded):
3243
3244 2011-12-22  Tom Sepez  <tsepez@chromium.org>
3245
3246         XSLT-created HTML documents do not inherit first party for cookies from originally loaded XML.
3247         https://bugs.webkit.org/show_bug.cgi?id=74757
3248
3249         Reviewed by Alexey Proskuryakov.
3250
3251         Tests: http/tests/security/cookies/first-party-cookie-allow-xslt.xml
3252                http/tests/security/cookies/third-party-cookie-blocking-xslt.xml
3253
3254         * xml/XSLTProcessor.cpp:
3255         (WebCore::XSLTProcessor::createDocumentFromSource):
3256
3257 2011-12-22  Daniel Jalkut  <jalkut@red-sweater.com>
3258
3259         WebKit editing throws exception when monochrome color dragged onto text
3260         https://bugs.webkit.org/show_bug.cgi?id=74775
3261
3262         Reviewed by Ryosuke Niwa.
3263
3264         Handle non-RGB colorspace colors in the Mac platform drag manager. Fixes NSException thrown 
3265         when dragging monochrome colors to contentEditable regions.
3266
3267         Manual test added to trunk/ManualTests/drag-color-to-contenteditable.html
3268
3269         * platform/mac/DragDataMac.mm:
3270         (WebCore::DragData::asColor):
3271
3272 2011-12-22  Peter Rybin  <peter.rybin@gmail.com>
3273
3274         Web Inspector: CodeGeneratorInspector.py: generate anonymous types.
3275         https://bugs.webkit.org/show_bug.cgi?id=74890
3276
3277         Reviewed by Yury Semikhatsky.
3278
3279         Anonymous types are generated. Forward declarations are generated.
3280
3281         In general it now generates C++ types for anonymous object types from
3282         JSON. It takes a name from the type declaration site, usually a
3283         parameter name. This all is explained in comments in generated file. Also
3284         all generated types now refer to other generated types in setter
3285         methods -- but this is commented out in generated code for now. All
3286         necessary forward declarations are also added. Anonymous enums are
3287         generated, but they are in comments too, because we didn't have
3288         solution about form the enums should have in C++ API.
3289
3290         Internally:
3291         The change reorganizes type bindings — a polymorphous "code generator"
3292         object is factored out from binding.
3293         A helper class Writer is added to allow generating code with ajustable
3294         indentations and to support insertion points where additional code can
3295         be inserted retroactively.
3296         ForwardListener class is used for preparing necessary forward
3297         declarations.
3298         AdHocTypeContext conception is a speculative abstract class that is
3299         needed wherever anonymous type can emerge.
3300
3301         * inspector/CodeGeneratorInspector.py:
3302         (fix_type_name.Result.output_comment):
3303         (Writer.__init__):
3304         (Writer.newline):
3305         (Writer.append):
3306         (Writer.newline_multiline):
3307         (Writer.append_multiline):
3308         (Writer.get_indented):
3309         (Writer):
3310         (Writer.insert_writer):
3311         (TypeBindings.create_named_type_declaration.Helper.write_doc):
3312         (TypeBindings.create_named_type_declaration.Helper):
3313         (TypeBindings.create_named_type_declaration.Helper.add_to_forward_listener):
3314         (TypeBindings.create_named_type_declaration):
3315         (TypeBindings.create_ad_hoc_type_declaration.Helper.write_doc):
3316         (TypeBindings.create_ad_hoc_type_declaration.Helper):
3317         (TypeBindings.create_ad_hoc_type_declaration.Helper.add_to_forward_listener):
3318         (TypeBindings.create_ad_hoc_type_declaration):
3319         (TypeBindings.create_type_declaration_.EnumBinding.get_code_generator.CodeGenerator.generate_type_builder):
3320         (TypeBindings.create_type_declaration_.EnumBinding.get_code_generator.CodeGenerator):
3321         (TypeBindings.create_type_declaration_.EnumBinding.get_code_generator.CodeGenerator.register_use):
3322         (TypeBindings.create_type_declaration_.EnumBinding.get_code_generator):
3323         (TypeBindings.create_type_declaration_.PlainString.get_code_generator.CodeGenerator.generate_type_builder.String):
3324         (TypeBindings.create_type_declaration_.PlainString.get_code_generator.CodeGenerator.generate_type_builder):
3325         (TypeBindings.create_type_declaration_.PlainString.get_code_generator.CodeGenerator):
3326         (TypeBindings.create_type_declaration_.PlainString.get_code_generator.CodeGenerator.register_use):
3327         (TypeBindings.create_type_declaration_.PlainString.get_code_generator):
3328         (TypeBindings.create_type_declaration_.PlainString.get_in_c_type_text.name):
3329         (TypeBindings.create_type_declaration_.PlainString):
3330         (TypeBindings.create_type_declaration_):
3331         (TypeBindings.create_type_declaration_.ClassBinding.get_code_generator):
3332         (TypeBindings.create_type_declaration_.ClassBinding.get_code_generator.CodeGenerator):
3333         (TypeBindings.create_type_declaration_.ClassBinding.get_code_generator.CodeGenerator.generate_type_builder):
3334         (AdHocTypeContextImpl.__init__):
3335         (AdHocTypeContextImpl.get_type_name_fix.NameFix):
3336         (AdHocTypeContextImpl.get_type_name_fix.NameFix.output_comment):
3337         (AdHocTypeContextImpl.get_type_name_fix):
3338         (AdHocTypeContextImpl):
3339         (AdHocTypeContextImpl.call_generate_type_builder):
3340         (generate_forward_declaration):
3341         (register_use):
3342         (get_in_c_type_text):
3343         (reduce_to_raw_type):
3344         (PlainObjectBinding.get_code_generator):
3345         (CodeGenerator.generate_type_builder.AdHocTypeContext.get_type_name_fix.NameFix):
3346         (CodeGenerator.generate_type_builder.AdHocTypeContext.get_type_name_fix.NameFix.output_comment):
3347         (CodeGenerator.generate_type_builder.AdHocTypeContext.get_type_name_fix):
3348         (CodeGenerator.generate_type_builder.AdHocTypeContext):
3349         (CodeGenerator.generate_type_builder.AdHocTypeContext.call_generate_type_builder):
3350         (CodeGenerator.generate_type_builder):
3351         (CodeGenerator):
3352         (CodeGenerator.register_use):
3353         (RawTypesBinding.get_code_generator):
3354         (RawTypesBinding.get_in_c_type_text):
3355         (RawTypesBinding):
3356         (RawTypesBinding.reduce_to_raw_type):
3357         (TypeData.__init__):
3358         (TypeData.get_json_type):
3359         (resolve_param_type):
3360         (Generator.go):
3361         (Generator.process_event.NoOpForwardListener):
3362         (Generator.process_event.NoOpForwardListener.add_type_data):
3363         (Generator.process_event.AdHocTypeContext.get_type_name_fix.NameFix):
3364         (Generator.process_event.AdHocTypeContext.get_type_name_fix.NameFix.output_comment):
3365         (Generator.process_event.AdHocTypeContext.get_type_name_fix):
3366         (Generator.process_event.AdHocTypeContext):
3367         (Generator.process_event.AdHocTypeContext.call_generate_type_builder):
3368         (Generator.process_event):
3369         (Generator.process_types.ForwardListener):
3370         (Generator.process_types.ForwardListener.add_type_data):
3371         (Generator.process_types.generate_all_domains_code.namespace_lazy_generator):
3372         (Generator.process_types.generate_all_domains_code):
3373         (Generator.process_types.call_type_builder):
3374         (Generator.process_types.generate_forward_callback):
3375         (Generator):
3376         (Generator.process_types):
3377         (flatten_list.fill_recursive):
3378         (flatten_list):
3379
3380 2011-12-22  Hans Muller  <hmuller@adobe.com>
3381
3382         Onloadend event is not supported in XMLHttpRequest
3383         https://bugs.webkit.org/show_bug.cgi?id=40952
3384
3385         Reviewed by Julien Chaffraix.
3386
3387         Added support for the loadend ProgressEvent to XMLHttpRequest and XMLHttpRequestUpload.
3388         A new method, dispatchEventAndLoadEnd(), was added to XMLHttpRequestProgressEventThrottle
3389         and XMLHttpRequestUpload to foolproof the common case of dispatching a load, abort,
3390         or error event followed by a loadend event.
3391
3392         Tests: http/tests/xmlhttprequest/onloadend-event-after-abort.html
3393                http/tests/xmlhttprequest/onloadend-event-after-error.html
3394                http/tests/xmlhttprequest/onloadend-event-after-load.html
3395                http/tests/xmlhttprequest/onloadend-event-after-sync-requests.html
3396                http/tests/xmlhttprequest/upload-onloadend-event-after-abort.html
3397                http/tests/xmlhttprequest/upload-onloadend-event-after-load.html
3398                http/tests/xmlhttprequest/upload-onloadend-event-after-sync-requests.html
3399
3400         * xml/XMLHttpRequest.cpp:
3401         (WebCore::XMLHttpRequest::callReadyStateChangeListener):
3402         (WebCore::XMLHttpRequest::abort):
3403         (WebCore::XMLHttpRequest::networkError):
3404         (WebCore::XMLHttpRequest::abortError):
3405         (WebCore::XMLHttpRequest::didSendData):
3406         * xml/XMLHttpRequest.h:
3407         * xml/XMLHttpRequest.idl:
3408         * xml/XMLHttpRequestProgressEventThrottle.cpp:
3409         (WebCore::XMLHttpRequestProgressEventThrottle::dispatchEventAndLoadEnd):
3410         * xml/XMLHttpRequestProgressEventThrottle.h:
3411         * xml/XMLHttpRequestUpload.cpp:
3412         (WebCore::XMLHttpRequestUpload::dispatchEventAndLoadEnd):
3413         * xml/XMLHttpRequestUpload.h:
3414         * xml/XMLHttpRequestUpload.idl:
3415
3416 2011-12-22  Mark Pilgrim  <pilgrim@chromium.org>
3417
3418         [FileSystem API] Entry.getMetadata successCallback is required
3419         https://bugs.webkit.org/show_bug.cgi?id=69638
3420
3421         Reviewed by Eric Seidel.
3422
3423         Test: fast/filesystem/simple-required-arguments-getmetadata.html
3424
3425         * fileapi/Entry.idl: remove [Optional] flag from successCallback parameter
3426
3427 2011-12-22  Ilya Tikhonovsky  <loislo@chromium.org>
3428
3429         Unreviewed, rolling out r103405.
3430         http://trac.webkit.org/changeset/103405
3431         https://bugs.webkit.org/show_bug.cgi?id=74088
3432
3433         it broke WorkerDevToolsSanityTest.InspectSharedWorker
3434
3435         * inspector/Inspector.json:
3436         * inspector/InspectorDebuggerAgent.cpp:
3437         (WebCore::InspectorDebuggerAgent::didParseSource):
3438         * inspector/InspectorDebuggerAgent.h:
3439         * inspector/front-end/DebuggerModel.js:
3440         (WebInspector.DebuggerModel.prototype._parsedScriptSource):
3441         (WebInspector.DebuggerDispatcher.prototype.scriptParsed):
3442         * inspector/front-end/RawSourceCode.js:
3443         (WebInspector.RawSourceCode):
3444         * inspector/front-end/Script.js:
3445         (WebInspector.Script):
3446         (WebInspector.Script.prototype.searchInContent):
3447
3448 2011-12-21  Darin Adler  <darin@apple.com>
3449
3450         Make ~CSSParserSelector use Vector<OwnPtr>
3451         https://bugs.webkit.org/show_bug.cgi?id=73782
3452
3453         Reviewed by Alexey Proskuryakov.
3454
3455         * css/CSSParserValues.cpp:
3456         (WebCore::CSSParserSelector::~CSSParserSelector): Use Vector<OwnPtr>
3457         so we don't have to call leakPtr or deleteAllValues.
3458
3459 2011-12-21  Yosifumi Inoue  <yosin@chromium.org>
3460
3461         [Forms] Selection change by type-ahead doesn't fire 'change' event
3462         https://bugs.webkit.org/show_bug.cgi?id=74590
3463
3464         Reviewed by Kent Tamura.
3465
3466         This patch changes when onchange event fired in select element for:
3467         1 Fire onchange event for type ahead selection.
3468         2 Don't fire onchange event for Enter key. We've already fired onchange event for cursor key
3469           and type ahead selection. So, onchange for Enter key is redundant. This behavior is 
3470           compatible to IE(9.0.8112.16421) and Opera(9.80) on Windows. FF(8.01) doesn't fire onchange
3471           by cursor key selection change and type ahead. FF requires Enter key press to fire onchange
3472           event.
3473
3474         Test: fast/forms/select/menulist-type-ahead-find.html
3475
3476         * html/HTMLSelectElement.cpp:
3477         (WebCore::HTMLSelectElement::menuListDefaultEventHandler): Don't fire onchange event for Entry key.
3478         (WebCore::HTMLSelectElement::typeAheadFind): Add DispatchChangeEvent when
3479         calling selectOption method.
3480
3481 2011-12-21  Darin Adler  <darin@apple.com>
3482
3483         Tweak and comment some transform-related code
3484         https://bugs.webkit.org/show_bug.cgi?id=68670
3485
3486         Reviewed by Daniel Bates.
3487
3488         * platform/mac/ScrollbarThemeMac.mm:
3489         (WebCore::ScrollbarThemeMac::paint): Added a FIXME about additional overhead paid here
3490         when the scale factor is 2x.
3491         * rendering/RenderBoxModelObject.cpp:
3492         (WebCore::RenderBoxModelObject::paintBoxShadow): Added a FIXME about this check possibly
3493         being wrong, and also changed the local vairable name so the check need not stretch over
3494         multiple lines.
3495
3496 2011-12-21  Kent Tamura  <tkent@chromium.org>
3497
3498         Change the item type of Document::m_formElementsWithState from Element*
3499         to HTMLFormControlElementWithState*.
3500         https://bugs.webkit.org/show_bug.cgi?id=74998
3501
3502         Reviewed by Andreas Kling.
3503
3504         No new tests. Just refactoring.
3505
3506         * dom/Document.cpp:
3507         (WebCore::Document::formElementsState): Use HTMLFormControlElementWithState*.
3508         * dom/Document.h:
3509         (WebCore::Document::registerFormElementWithState): Change the argument type.
3510         (WebCore::Document::unregisterFormElementWithState): ditto.
3511         (WebCore::Document::formElements): Renamed from getFormElements().
3512         * dom/Element.h:
3513         Removed shouldSaveAndRestoreFormControlState(), saveFormControlState(),
3514         and restoreFormControlState() because they are not called for Element
3515         anymore.
3516         * html/HTMLFormControlElement.h:
3517         - Make formControlName() and formControlType() public.
3518          They are called from Document class.
3519         - Make shouldSaveAndRestoreFormControlState() public, and non-virtual.
3520          This is called from Document class, and no other classes override this.
3521         (WebCore::HTMLFormControlElementWithState::saveFormControlState):
3522         Moved from Element.
3523         (WebCore::HTMLFormControlElementWithState::restoreFormControlState): ditto.
3524         * html/HTMLInputElement.cpp:
3525         (WebCore::HTMLInputElement::updateCheckedRadioButtons):
3526         Use HTMLFormControlElemen