310671f09ab7874dcf6c4d3cbd365457598c0a38
[WebKit-https.git] / WebCore / ChangeLog
1 2010-11-30  Tony Chang  <tony@chromium.org>
2
3         Reviewed by James Robinson.
4
5         [chromium] enable WebCore compiler warnings on Linux take 3
6         https://bugs.webkit.org/show_bug.cgi?id=50258
7
8         * WebCore.gyp/WebCore.gyp:
9
10 2010-11-30  Mario Sanchez Prada  <msanchez@igalia.com>
11
12         Reviewed by Chris Fleizach.
13
14         [GTK] Implement ROLE_COMBO_BOX
15         https://bugs.webkit.org/show_bug.cgi?id=25678
16
17         Implement the remaining bits for combo boxes.
18
19         This patch finishes the implementation, from the point of view of
20         the Atk library, of those objects exposed to ATK as combo boxes,
21         and their related elements (menus and menu items). It therefore
22         implements the proper interfaces for each type of object related
23         to combo boxes (AtkSelection for the combo box, AtkText for every
24         menu item and AtkAction for the combo box, the menu and the menu
25         items), takes care of emitting the proper signals when focus or a
26         given a selection changes and adds a new unit test to check all
27         this new stuff.
28
29         Make possible to ask an AccessibleMenuListOption for a sensible
30         string representation, so far only available through the private
31         and MSAA related method nameForMSAA. Just moved the implementation
32         of that method to an overriden version of stringValue(), which is
33         platform independent, and called that from nameForMSAA().
34
35         * accessibility/AccessibilityMenuListOption.h:
36         * accessibility/AccessibilityMenuListOption.cpp:
37         (WebCore::AccessibilityMenuListOption::nameForMSAA): Just call to
38         stringValue(), which holds from now on that used to be here.
39         (WebCore::AccessibilityMenuListOption::stringValue): New, override
40         of AccessibilityObject::stringValue() to return a proper string.
41
42         Emit the missing signals when a selection is made.
43
44         * accessibility/gtk/AXObjectCacheAtk.cpp:
45         (WebCore::AXObjectCache::postPlatformNotification): Emit the usual
46         'focus' signals when a selection is made over the combo box.
47
48         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
49         (setAtkStateSetFromCoreObject): Ensure the EXPANDABLE and EXPANDED
50         Atk states are added to the state set when needed.
51         (listObjectForSelection): New, returns the proper list object (the
52         one holding the list of available options as its children) for an
53         specific AtkObject implementing AtkSelection. This is needed
54         because sometimes the selectable options are not directly children
55         of the AtkSelection object (i.e. a combo box has a 'menu' object
56         as its only child of it, holding the list of options as children).
57         (optionFromList): Use listObjectForSelection() to get the actual
58         object holding the list of children as the available options.
59         (optionFromSelection): Add support for combo boxes.
60         (webkit_accessible_selection_add_selection): Ditto.
61         (webkit_accessible_selection_clear_selection): Ditto.
62         (webkit_accessible_selection_get_selection_count): Ditto.
63         (webkit_accessible_selection_is_child_selected): Ditto.
64         (webkit_accessible_selection_remove_selection): Ditto.
65         (webkit_accessible_text_get_text): Makes sure stringValue() is
66         considered to get the result substring when it was already
67         considered when checking the maximum text length for the object.
68         (getInterfaceMaskFromObject): Make sure the AtkSelection interface
69         is implemented for the combo boxes, that the AtkText is
70         implemented for the menu items and that the AtkAction interface is
71         now implemented for every object (WebCore will decide what to do).
72
73         Avoid a segfault crash when using this from unit tests.
74
75         * platform/gtk/PopupMenuGtk.cpp:
76         (WebCore::PopupMenuGtk::show): Make sure we got a valid GdkWindow
77         before calling gdk_window_get_origin() over it.
78
79 2010-11-30  Andreas Kling  <kling@webkit.org>
80
81         Reviewed by Tor Arne Vestbø.
82
83         [Qt] GraphicsContext: Avoid unnecessarily copying the painter's QTransform
84
85         Stash the transform in a const reference (QPainter::transform() returns one)
86         instead of making a copy in the shadow drawing parts of fillPath, strokePath and fillRect.
87
88         * platform/graphics/qt/GraphicsContextQt.cpp:
89         (WebCore::GraphicsContext::fillPath):
90         (WebCore::GraphicsContext::strokePath):
91         (WebCore::GraphicsContext::fillRect):
92
93 2010-11-30  Vangelis Kokkevis  <vangelis@chromium.org>
94
95         Reviewed by Simon Fraser.
96
97         Provide more fine grained control to ports over when to turn on 
98         accelerated compositing.
99         https://bugs.webkit.org/show_bug.cgi?id=49998
100
101         The RenderLayerCompositor now checks with the chrome client whether
102         3d transforms, video, plugins, canvas and animation require
103         switching over to the composited path. Layers that overlap composited
104         content will still turn into composited layers regardless of the
105         setting.
106
107         * css/MediaQueryEvaluator.cpp:
108         (WebCore::transform_3dMediaFeatureEval):
109         * page/ChromeClient.h:
110         (WebCore::ChromeClient::allowedCompositingTriggers):
111         * rendering/RenderLayer.cpp:
112         (WebCore::RenderLayer::canRender3DTransforms):
113         (WebCore::RenderLayer::updateTransform):
114         (WebCore::RenderLayer::currentTransform):
115         * rendering/RenderLayer.h:
116         * rendering/RenderLayerBacking.cpp:
117         (WebCore::RenderLayerBacking::updateLayerTransform):
118         * rendering/RenderLayerCompositor.cpp:
119         (WebCore::RenderLayerCompositor::RenderLayerCompositor):
120         (WebCore::RenderLayerCompositor::cacheAcceleratedCompositingFlags):
121         (WebCore::RenderLayerCompositor::canRender3DTransforms):
122         (WebCore::RenderLayerCompositor::requiresCompositingLayer):
123         (WebCore::RenderLayerCompositor::requiresCompositingForTransform):
124         (WebCore::RenderLayerCompositor::requiresCompositingForVideo):
125         (WebCore::RenderLayerCompositor::requiresCompositingForCanvas):
126         (WebCore::RenderLayerCompositor::requiresCompositingForPlugin):
127         (WebCore::RenderLayerCompositor::requiresCompositingForAnimation):
128         * rendering/RenderLayerCompositor.h:
129
130 2010-11-30  Xan Lopez  <xlopez@igalia.com>
131
132         Reviewed by Martin Robinson.
133
134         [GTK] Plug leak in SoupCache
135         https://bugs.webkit.org/show_bug.cgi?id=50142
136
137         Free the cache file contents when we don't need them anymore.
138
139         * platform/network/soup/cache/webkit/soup-cache.c:
140         (webkit_soup_cache_load):
141
142 2010-11-30  Andras Becsi  <abecsi@webkit.org>
143
144         Reviewed by Csaba Osztrogonác.
145
146         [Qt][V8] Make QtWebKit with V8 build on Linux.
147         https://bugs.webkit.org/show_bug.cgi?id=50244
148
149         No new tests needed.
150
151         * WebCore.pri: add missing idl file
152         * WebCore.pro: enable Linux build
153         * bindings/scripts/CodeGeneratorV8.pm: add missing headers
154         * bindings/v8/ScriptControllerQt.cpp: fix instantiation
155         (WebCore::ScriptController::qtScriptEngine):
156         * bindings/v8/V8GCController.cpp: fix guard
157         (WebCore::V8GCController::checkMemoryUsage):
158         * inspector/CodeGeneratorInspector.pm: add missing header
159         * loader/ResourceLoadScheduler.cpp: ditto
160         * loader/cache/MemoryCache.cpp: ditto
161         * loader/loader.cpp: ditto
162
163 2010-11-30  David Hyatt  <hyatt@apple.com>
164
165         Reviewed by Simon Fraser.
166         
167         https://bugs.webkit.org/show_bug.cgi?id=50183
168         
169         Code got commented out by accident during render tree refactoring last year.  Put the code back in, since
170         it hurts performance to have that line commented out.
171
172         In order to put this code back in, I had to fix some bugs with preferred width computations and
173         overflow: scroll.  Make the pref widths computation create the scrollbar if it doesn't exist yet.
174
175         Make sure the scrollbar size is included prior to checking for defined width/min-width/max-width values.  Otherwise
176         the scrollbar inflates the width beyond the fixed size that was specified.
177         
178         For table cells, there is an additional wrinkle.  Make sure not to include the scrollbar size as part of the minimum
179         intrinsic width so that we don't incorrectly grow.
180
181         * rendering/RenderBlock.cpp:
182         (WebCore::RenderBlock::layoutPositionedObjects):
183         (WebCore::RenderBlock::computePreferredLogicalWidths):
184         * rendering/RenderFlexibleBox.cpp:
185         (WebCore::RenderFlexibleBox::computePreferredLogicalWidths):
186
187 2010-11-30  Vitaly Repeshko  <vitalyr@chromium.org>
188
189         Unreviewed.
190
191         Attempt to fix windows debug chromium build.
192
193         * html/TimeInputType.cpp: Added include providing isfinite.
194
195 2010-11-30  Darin Adler  <darin@apple.com>
196
197         Reviewed by Jon Honeycutt.
198
199         DOM binding code generator scripts import unused File::stat Perl module
200         https://bugs.webkit.org/show_bug.cgi?id=50250
201
202         * bindings/scripts/CodeGeneratorCPP.pm: Removed "using File::stat".
203         * bindings/scripts/CodeGeneratorJS.pm: Ditto.
204         * bindings/scripts/CodeGeneratorObjC.pm: Ditto.
205         * bindings/scripts/CodeGeneratorV8.pm: Ditto.
206
207 2010-11-30  Pavel Feldman  <pfeldman@chromium.org>
208
209         Reviewed by Yury Semikhatsky.
210
211         Web Inspector: implement "Revert to this revision" in resources panel.
212         https://bugs.webkit.org/show_bug.cgi?id=50107
213
214         * inspector/Inspector.idl:
215         * inspector/InspectorCSSAgent.cpp:
216         (WebCore::InspectorCSSAgent::setStyleSheetText2):
217         * inspector/InspectorCSSAgent.h:
218         * inspector/InspectorStyleSheet.cpp:
219         (WebCore::InspectorStyleSheet::reparseStyleSheet):
220         * inspector/front-end/CSSStyleModel.js:
221         (WebInspector.CSSStyleModel.prototype._styleSheetChanged.callback):
222         (WebInspector.CSSStyleModel.prototype._styleSheetChanged):
223         (WebInspector.CSSStyleModel.prototype._onRevert):
224         * inspector/front-end/Resource.js:
225         (WebInspector.Resource.prototype.get contentTimestamp):
226         (WebInspector.Resource.prototype.setInitialContent):
227         (WebInspector.Resource.prototype.isLocallyModified):
228         (WebInspector.Resource.prototype.setContent.else.finished):
229         (WebInspector.Resource.prototype.setContent):
230         (WebInspector.Resource.prototype.revertToThis.callback):
231         (WebInspector.Resource.prototype.revertToThis):
232         (WebInspector.Resource.prototype.get baseRevision):
233         (WebInspector.Resource.prototype._innerRequestContent):
234         * inspector/front-end/ResourcesPanel.js:
235         (WebInspector.ResourcesPanel.prototype._showResourceView):
236         (WebInspector.FrameResourceTreeElement.prototype._contentChanged):
237         (WebInspector.ResourceRevisionTreeElement):
238         (WebInspector.ResourceRevisionTreeElement.prototype.onattach):
239         (WebInspector.ResourceRevisionTreeElement.prototype._ondragstart):
240         (WebInspector.ResourceRevisionTreeElement.prototype._handleContextMenuEvent):
241         * inspector/front-end/ScriptsPanel.js:
242         (WebInspector.ScriptsPanel.prototype.editScriptSource.mycallback):
243         (WebInspector.ScriptsPanel.prototype.editScriptSource):
244         * inspector/front-end/SourceView.js:
245         (WebInspector.SourceView.prototype._editLine):
246         (WebInspector.SourceView.prototype._editLineComplete):
247         (WebInspector.SourceView.prototype._revertEditLine):
248
249 2010-11-30  Adam Roben  <aroben@apple.com>
250
251         Clean up WebCore.vcproj's bindings filter
252
253         I added files that we compile (via an all-in-one file) but weren't in
254         the .vcproj, removed files that no longer exist, and added the scripts
255         we use.
256
257         Fixes <http://webkit.org/b/50248> WebCore.vcproj's bindings filter is
258         out-of-date
259
260         Reviewed by Darin Adler.
261
262         * WebCore.vcproj/WebCore.vcproj:
263
264 2010-11-30  Adam Roben  <aroben@apple.com>
265
266         Move JSIDB* files to the DerivedSources filter
267
268         This correctly reflects their location on disk. (They were formerly
269         listed under bindings/js.)
270
271         * WebCore.vcproj/WebCore.vcproj:
272
273 2010-11-30  Xiaomei Ji  <xji@chromium.org>
274
275         Reviewed by David Hyatt.
276
277         Remove clampNegativeToZero in adjustScrollPositionWithinRange.
278         https://bugs.webkit.org/show_bug.cgi?id=50203
279
280         * platform/ScrollView.cpp:
281         (WebCore::ScrollView::adjustScrollPositionWithinRange):
282
283 2010-11-30  Adam Roben  <aroben@apple.com>
284
285         Remove duplicate files from WebCore.vcproj
286
287         Rubber-stamped by Steve Falkenburg.
288
289         * WebCore.vcproj/WebCore.vcproj:
290
291 2010-11-30  Adam Roben  <aroben@apple.com>
292
293         Let VS do its thang with WebCore.vcproj
294
295         I just removed and readded AnimationBase.cpp.
296
297         Rubber-stamped by Steve Falkenburg.
298
299         * WebCore.vcproj/WebCore.vcproj:
300
301 2010-11-30  Mario Sanchez Prada  <msanchez@igalia.com>
302
303         Reviewed by Chris Fleizach.
304
305         ASSERT failing for combo boxes when selection changes
306         https://bugs.webkit.org/show_bug.cgi?id=50062
307
308         Don't call listBoxOnChange for elements using menu lists.
309
310         Test: fast/forms/select-option-accesskey-crash.html
311
312         * dom/SelectElement.cpp:
313         (WebCore::SelectElement::accessKeySetSelectedIndex): Extra check
314         to decide whether to call menuListOnChange() or listBoxOnChange()
315         instead of always calling listBoxOnChange().
316
317 2010-11-30  Andreas Kling  <kling@webkit.org>
318
319         Reviewed by Dirk Schulze.
320
321         GraphicsContext: Remove "current path" and have strokePath, fillPath and clipPath take a Path argument.
322         https://bugs.webkit.org/show_bug.cgi?id=48516
323
324         No new tests, this is refactoring only.
325
326         fillPath() -> fillPath(const Path&)
327         strokePath() -> strokePath(const Path&)
328         clipPath(WindRule) -> clipPath(const Path&, WindRule)
329
330         drawPath() was only used by CG, so made it PLATFORM(CG) specific.
331
332         The Qt, CG and Cairo implementations are best-effort.
333         For the rest, I've put beginPath/addPath and FIXMEs in the three affected methods.
334
335         * WebCore.exp.in:
336         * html/canvas/CanvasRenderingContext2D.cpp:
337         (WebCore::CanvasRenderingContext2D::fill):
338         (WebCore::CanvasRenderingContext2D::stroke):
339         * inspector/InspectorController.cpp:
340         (WebCore::drawOutlinedQuad):
341         * mathml/RenderMathMLRoot.cpp:
342         (WebCore::RenderMathMLRoot::paint):
343         * mathml/RenderMathMLSquareRoot.cpp:
344         (WebCore::RenderMathMLSquareRoot::paint):
345         * platform/graphics/GraphicsContext.h:
346         * platform/graphics/GraphicsContextPrivate.h:
347         * platform/graphics/cairo/GraphicsContextCairo.cpp:
348         (WebCore::GraphicsContext::fillPath):
349         (WebCore::GraphicsContext::strokePath):
350         (WebCore::GraphicsContext::clipPath):
351         * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h:
352         * platform/graphics/cg/GraphicsContextCG.cpp:
353         (WebCore::GraphicsContext::drawEllipse):
354         (WebCore::addConvexPolygonToPath):
355         (WebCore::GraphicsContext::drawConvexPolygon):
356         (WebCore::GraphicsContext::clipConvexPolygon):
357         (WebCore::GraphicsContext::drawPath):
358         (WebCore::GraphicsContext::fillPath):
359         (WebCore::GraphicsContext::strokePath):
360         (WebCore::GraphicsContext::fillRoundedRect):
361         (WebCore::GraphicsContext::clipPath):
362         * platform/graphics/haiku/GraphicsContextHaiku.cpp:
363         (WebCore::GraphicsContext::strokePath):
364         (WebCore::GraphicsContext::fillPath):
365         * platform/graphics/openvg/GraphicsContextOpenVG.cpp:
366         (WebCore::GraphicsContext::fillPath):
367         (WebCore::GraphicsContext::strokePath):
368         (WebCore::GraphicsContext::clipPath):
369         * platform/graphics/qt/GraphicsContextQt.cpp:
370         (WebCore::GraphicsContext::restorePlatformState):
371         (WebCore::GraphicsContext::fillPath):
372         (WebCore::GraphicsContext::strokePath):
373         (WebCore::GraphicsContext::clipPath):
374         (WebCore::GraphicsContext::strokeRect):
375         (WebCore::GraphicsContext::translate):
376         (WebCore::GraphicsContext::rotate):
377         (WebCore::GraphicsContext::scale):
378         (WebCore::GraphicsContext::concatCTM):
379         * platform/graphics/skia/GraphicsContextSkia.cpp:
380         (WebCore::GraphicsContext::clipPath):
381         (WebCore::GraphicsContext::fillPath):
382         (WebCore::GraphicsContext::strokePath):
383         * platform/graphics/wince/GraphicsContextWinCE.cpp:
384         (WebCore::GraphicsContext::fillPath):
385         (WebCore::GraphicsContext::strokePath):
386         (WebCore::GraphicsContext::clipPath):
387         * platform/graphics/wx/GraphicsContextWx.cpp:
388         (WebCore::GraphicsContext::clipPath):
389         (WebCore::GraphicsContext::fillPath):
390         (WebCore::GraphicsContext::strokePath):
391         * rendering/RenderBoxModelObject.cpp:
392         (WebCore::RenderBoxModelObject::paintBorder):
393         (WebCore::RenderBoxModelObject::paintBoxShadow):
394         * rendering/RenderEmbeddedObject.cpp:
395         (WebCore::RenderEmbeddedObject::paintReplaced):
396         * rendering/RenderObject.cpp:
397         (WebCore::RenderObject::drawBoxSideFromPath):
398         * rendering/RenderSVGResource.h:
399         (WebCore::RenderSVGResource::postApplyResource):
400         * rendering/RenderSVGResourceClipper.cpp:
401         (WebCore::RenderSVGResourceClipper::pathOnlyClipping):
402         * rendering/RenderSVGResourceFilter.cpp:
403         (WebCore::RenderSVGResourceFilter::postApplyResource):
404         * rendering/RenderSVGResourceFilter.h:
405         * rendering/RenderSVGResourceGradient.cpp:
406         (WebCore::RenderSVGResourceGradient::applyResource):
407         * rendering/RenderSVGResourceGradient.h:
408         * rendering/RenderSVGResourcePattern.cpp:
409         (WebCore::RenderSVGResourcePattern::postApplyResource):
410         * rendering/RenderSVGResourcePattern.h:
411         * rendering/RenderSVGResourceSolidColor.cpp:
412         (WebCore::RenderSVGResourceSolidColor::postApplyResource):
413         * rendering/RenderSVGResourceSolidColor.h:
414         * rendering/SVGRenderSupport.cpp:
415         (WebCore::SVGRenderSupport::finishRenderSVGContent):
416         * rendering/svg/RenderSVGPath.cpp:
417         (WebCore::RenderSVGPath::fillAndStrokePath):
418         * rendering/svg/SVGInlineTextBox.cpp:
419         (WebCore::SVGInlineTextBox::releasePaintingResource):
420         (WebCore::SVGInlineTextBox::restoreGraphicsContextAfterTextPainting):
421         (WebCore::SVGInlineTextBox::paintDecorationWithStyle):
422         * rendering/svg/SVGInlineTextBox.h:
423         * svg/SVGFont.cpp:
424         (WebCore::Font::drawTextUsingSVGFont):
425
426 2010-11-30  Alexey Proskuryakov  <ap@apple.com>
427
428         Reviewed by Darin Adler and Geoff Garen.
429
430         https://bugs.webkit.org/show_bug.cgi?id=44152
431         <rdar://problem/8324423> CSSOM should match DOM in discarding wrapper-less parents.
432
433         We have existing behaviors where parent objects in detached subtrees are not preserved:
434         - if a root of a node tree doesn't have a wrapper, it's immediately destroyed, making
435         its children parentNode attribute null;
436         - relationship between a <style> or <link> node and its stylesheet is immediately broken
437         when the node is removed from document (in this case, regardless of wrapper existence).
438
439         Both match Firefox. For consistency, CSSOM should do the same. In fact, it already partially
440         does - CSSRule.parentRule gets zeroed out when the parent rule is destroyed.
441
442         Tests: fast/dom/StyleSheet/detached-parent-rule-without-wrapper.html
443                fast/dom/StyleSheet/detached-stylesheet-without-wrapper.html
444
445         * css/StyleSheet.cpp: (WebCore::StyleSheet::~StyleSheet): Clear out child rule parent.
446
447         * svg/SVGFontFaceElement.cpp: (WebCore::SVGFontFaceElement::insertedIntoDocument): Keep
448         the new assertion from firing. This function was adding a rule to style sheet, without
449         telling the rule about it.
450
451 2010-11-30  Steve Falkenburg  <sfalken@apple.com>
452
453         Reviewed by Adam Roben.
454
455         All projects on Windows should use cmd files for build events
456         https://bugs.webkit.org/show_bug.cgi?id=50213
457
458         * WebCore.vcproj/QTMovieWinCommon.vsprops:
459         * WebCore.vcproj/QTMovieWinPostBuild.cmd: Added.
460         * WebCore.vcproj/QTMovieWinPreBuild.cmd: Added.
461         * WebCore.vcproj/WebCoreCommon.vsprops:
462         * WebCore.vcproj/WebCorePostBuild.cmd: Added.
463         * WebCore.vcproj/WebCorePreBuild.cmd: Added.
464
465 2010-11-30  Sheriff Bot  <webkit.review.bot@gmail.com>
466
467         Unreviewed, rolling out r72914.
468         http://trac.webkit.org/changeset/72914
469         https://bugs.webkit.org/show_bug.cgi?id=50241
470
471         "pfeldman has a revision management patch both for CSS and JS"
472         (Requested by apavlov on #webkit).
473
474         * English.lproj/localizedStrings.js:
475         * inspector/InspectorStyleSheet.cpp:
476         (WebCore::InspectorStyleSheet::reparseStyleSheet):
477         * inspector/front-end/CSSStyleModel.js:
478         (WebInspector.CSSStyleModel.prototype._styleSheetChanged.callback):
479         (WebInspector.CSSStyleModel.prototype._styleSheetChanged):
480         (WebInspector.CSSStyleSheet.prototype.getText):
481         (WebInspector.CSSStyleSheet.prototype.setText):
482         * inspector/front-end/ResourcesPanel.js:
483         (WebInspector.ResourceRevisionTreeElement.prototype.onattach):
484         (WebInspector.ResourceRevisionTreeElement.prototype._ondragstart):
485
486 2010-11-25  Satish Sampath  <satish@chromium.org>
487
488         Reviewed by Kent Tamura.
489
490         Fix rendering of speech button when setting the attribute dynamically.
491         https://bugs.webkit.org/show_bug.cgi?id=50077
492
493         * html/HTMLInputElement.cpp:
494         (WebCore::HTMLInputElement::parseMappedAttribute):
495         * rendering/RenderTextControlSingleLine.cpp:
496         (WebCore::RenderTextControlSingleLine::speechAttributeChanged):
497         * rendering/RenderTextControlSingleLine.h:
498
499 2010-11-30  Alexander Pavlov  <apavlov@chromium.org>
500
501         Reviewed by Yury Semikhatsky.
502
503         Web Inspector: Enable switching between revisions of stylesheets
504         https://bugs.webkit.org/show_bug.cgi?id=50227
505
506         Drive-by fix: styleSheetChanged() call needed after a stylesheet reparsing on setStyleSheetText2().
507
508         * English.lproj/localizedStrings.js:
509         * inspector/InspectorStyleSheet.cpp:
510         (WebCore::InspectorStyleSheet::reparseStyleSheet):
511         * inspector/front-end/CSSStyleModel.js:
512         (WebInspector.CSSStyleModel.prototype.setStyleSheetText):
513         (WebInspector.CSSStyleModel.prototype._styleSheetChanged.callback):
514         (WebInspector.CSSStyleModel.prototype._styleSheetChanged):
515         (WebInspector.CSSStyleSheet.prototype.getText):
516         * inspector/front-end/ResourcesPanel.js:
517         (WebInspector.ResourceRevisionTreeElement.prototype.onattach):
518         (WebInspector.ResourceRevisionTreeElement.prototype._ondragstart):
519         (WebInspector.ResourceRevisionTreeElement.prototype._handleContextMenuEvent):
520
521 2010-11-30  John Knottenbelt  <jknotten@chromium.org>
522
523         Reviewed by David Levin.
524
525         V8 binding for DOMTimeStamp should be Number, not Date
526         https://bugs.webkit.org/show_bug.cgi?id=49963
527
528         Test: fast/dom/domtimestamp-is-number.html
529
530         * bindings/scripts/CodeGeneratorV8.pm:
531
532 2010-11-30  Renata Hodovan  <reni@inf.u-szeged.hu>
533
534         Reviewed by Andreas Kling.
535
536         [Qt] Leak with GraphicsContext::takeOwnershipOfPlatformContext()
537         https://bugs.webkit.org/show_bug.cgi?id=49916
538
539         Change the order of calling QPainter::device() and QPainter::end(), so device() will return with a valid device.
540         No new test is needed.
541
542         * platform/graphics/qt/GraphicsContextQt.cpp:
543         (WebCore::GraphicsContextPlatformPrivate::~GraphicsContextPlatformPrivate):
544
545 2010-11-30  Patrick Gansterer  <paroga@webkit.org>
546
547         Reviewed by Andreas Kling.
548
549         Move generator logic into main CMakeLists.txt file
550         https://bugs.webkit.org/show_bug.cgi?id=49885
551
552         Also make the generator calls more portable.
553
554         * CMakeLists.txt:
555
556 2010-11-30  Mario Sanchez Prada  <msanchez@igalia.com>
557
558         Unreviewed, rolling out r72902.
559         http://trac.webkit.org/changeset/72902
560         https://bugs.webkit.org/show_bug.cgi?id=50062
561
562         This change is causing layout test failures on the Tests bots
563         for the mac platform.
564
565         * dom/SelectElement.cpp:
566         (WebCore::SelectElement::accessKeySetSelectedIndex):
567
568 2010-11-30  Sheriff Bot  <webkit.review.bot@gmail.com>
569
570         Unreviewed, rolling out r72764.
571         http://trac.webkit.org/changeset/72764
572         https://bugs.webkit.org/show_bug.cgi?id=50215
573
574         This change is causing assertion failures on the debug bots.
575         (Requested by mrobinson on #webkit).
576
577         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
578         (webkit_accessible_get_name):
579         (webkit_accessible_detach):
580
581 2010-11-30  Pavel Feldman  <pfeldman@chromium.org>
582
583         Reviewed by Yury Semikhatsky.
584
585         Web Inspector: make copy(node) work in console.
586         https://bugs.webkit.org/show_bug.cgi?id=50180
587
588         * inspector/front-end/InjectedScript.js:
589         (injectedScriptConstructor.):
590
591 2010-11-30  Mario Sanchez Prada  <msanchez@igalia.com>
592
593         Reviewed by Darin Adler.
594
595         ASSERT failing for combo boxes when selection changes
596         https://bugs.webkit.org/show_bug.cgi?id=50062
597
598         Don't call listBoxOnChange for elements using menu lists.
599
600         Test: accessibility/select-menulist-crash.html
601
602         * dom/SelectElement.cpp:
603         (WebCore::SelectElement::accessKeySetSelectedIndex): Extra check
604         to decide whether to call menuListOnChange() or listBoxOnChange()
605         instead of always calling listBoxOnChange().
606
607 2010-11-30  Helder Correia  <helder@sencha.com>
608
609         Reviewed by Kenneth Rohde Christiansen.
610
611         [Qt] Path stroke shadow has incorrect behavior when using ctx.scale(x,y)
612         https://bugs.webkit.org/show_bug.cgi?id=50198
613
614         Handle the special case when scaling is used and translate the shadow
615         offset accordingly. The correct behavior is ensured in ContextShadow
616         already, the issue only happens when using a non-blur shadow.
617
618         Test: fast/canvas/canvas-scale-strokePath-shadow.html
619
620         * platform/graphics/qt/GraphicsContextQt.cpp:
621         (WebCore::GraphicsContext::strokePath):
622
623 2010-11-30  Helder Correia  <helder@sencha.com>
624
625         Reviewed by Kenneth Rohde Christiansen.
626
627         [Qt] Path filling should keep shadow offset after context scaling
628         https://bugs.webkit.org/show_bug.cgi?id=50194
629
630         Handle the special case when scaling is used and translate the shadow
631         offset accordingly. The correct behavior is ensured in ContextShadow
632         already, the issue only happens when using a non-blur shadow.
633
634         Test: fast/canvas/canvas-scale-fillPath-shadow.html
635
636         * platform/graphics/qt/GraphicsContextQt.cpp:
637         (WebCore::GraphicsContext::fillPath):
638
639 2010-11-30  Yury Semikhatsky  <yurys@chromium.org>
640
641         Reviewed by Pavel Feldman.
642
643         Web Inspector: make ScriptCallStack and ScriptArguments reference counted
644         https://bugs.webkit.org/show_bug.cgi?id=50156
645
646         No new tests. This refactoring is covered with existing inspector tests.
647
648         * bindings/js/JSConsoleCustom.cpp:
649         (WebCore::JSConsole::profile):
650         (WebCore::JSConsole::profileEnd):
651         * bindings/js/ScriptCallStackFactory.cpp:
652         (WebCore::createScriptCallStack):
653         (WebCore::createScriptArguments):
654         * bindings/js/ScriptCallStackFactory.h:
655         * bindings/scripts/CodeGeneratorJS.pm:
656         * bindings/scripts/CodeGeneratorV8.pm:
657         * bindings/scripts/test/JS/JSTestObj.cpp:
658         (WebCore::jsTestObjPrototypeFunctionCustomArgsAndException):
659         * bindings/scripts/test/V8/V8TestObj.cpp:
660         (WebCore::TestObjInternal::customArgsAndExceptionCallback):
661         * bindings/v8/ScriptCallStackFactory.cpp:
662         (WebCore::createScriptCallStack):
663         (WebCore::createScriptArguments):
664         * bindings/v8/ScriptCallStackFactory.h:
665         * bindings/v8/V8ConsoleMessage.cpp:
666         (WebCore::V8ConsoleMessage::handler):
667         (WebCore::V8ConsoleMessage::dispatchNow):
668         * bindings/v8/V8ConsoleMessage.h:
669         * bindings/v8/custom/V8ConsoleCustom.cpp:
670         (WebCore::V8Console::traceCallback):
671         (WebCore::V8Console::assertCallback):
672         (WebCore::V8Console::profileCallback):
673         (WebCore::V8Console::profileEndCallback):
674         * inspector/ConsoleMessage.cpp:
675         (WebCore::ConsoleMessage::ConsoleMessage):
676         * inspector/ConsoleMessage.h:
677         * inspector/InspectorController.cpp:
678         (WebCore::InspectorController::addMessageToConsole):
679         (WebCore::InspectorController::startGroup):
680         * inspector/InspectorController.h:
681         * inspector/ScriptArguments.cpp:
682         (WebCore::ScriptArguments::create):
683         * inspector/ScriptArguments.h:
684         * inspector/ScriptCallFrame.h:
685         * inspector/ScriptCallStack.cpp:
686         (WebCore::ScriptCallStack::create):
687         (WebCore::ScriptCallStack::at):
688         (WebCore::ScriptCallStack::size):
689         * inspector/ScriptCallStack.h:
690         * page/Console.cpp:
691         (WebCore::Console::addMessage):
692         (WebCore::Console::debug):
693         (WebCore::Console::error):
694         (WebCore::Console::info):
695         (WebCore::Console::log):
696         (WebCore::Console::dir):
697         (WebCore::Console::dirxml):
698         (WebCore::Console::trace):
699         (WebCore::Console::assertCondition):
700         (WebCore::Console::count):
701         (WebCore::Console::markTimeline):
702         (WebCore::Console::profile):
703         (WebCore::Console::profileEnd):
704         (WebCore::Console::timeEnd):
705         (WebCore::Console::group):
706         (WebCore::Console::groupCollapsed):
707         (WebCore::Console::warn):
708         * page/Console.h:
709
710 2010-11-29  Dan Bernstein  <mitz@apple.com>
711
712         Build fix for non-ICU platforms after r72887.
713
714         * editing/TextIterator.cpp:
715         (WebCore::SearchBuffer::prependContext):
716
717 2010-11-29  Dan Bernstein  <mitz@apple.com>
718
719         Reviewed by Darin Adler.
720
721         WebCore part of <rdar://problem/8650085> adding word-prefix search options to the text search API.
722         https://bugs.webkit.org/show_bug.cgi?id=50038
723
724         Test: editing/text-iterator/findString.html
725
726         * GNUmakefile.am: Added FindOptions.h.
727         * WebCore.exp.in: Export the new methods that take FindOptions.
728         * WebCore.gypi: Added FindOptions.h.
729         * WebCore.pro: Added FindOptions.h and TextBoundaries.{cpp,h}.
730         * WebCore.vcproj/WebCore.vcproj: Added FindOptions.h.
731         * WebCore.xcodeproj/project.pbxproj: Added FindOptions.h and TextBoundaries.cpp.
732         * editing/Editor.cpp:
733         (WebCore::Editor::firstVisibleRange): Changed to use FindOptions.
734         (WebCore::Editor::lastVisibleRange): Ditto.
735         (WebCore::Editor::nextVisibleRange): Ditto.
736         (WebCore::Editor::findString): Ditto.
737         (WebCore::Editor::countMatchesForText): Ditto.
738         * editing/Editor.h: Added a version of findString() that takes FindOptions. Changed
739         countMatchesForText() to take FindOptions. Made nextVisibleRange() private and changed it
740         and firstVisibleRange() and lastVisibleRange() to take FindOptions.
741         * editing/FindOptions.h: Added.
742         * editing/TextIterator.cpp:
743         Augmented SearchBuffer with an optional prefix, which is not searched, but provides context
744         for determining word boundaries.
745         (WebCore::isSeparator): Added. Identifies a class of characters used to determine where
746         “words” are embedded in a word.
747         (WebCore::SearchBuffer::SearchBuffer): Changed to take FindOptions. Added initialization of
748         m_options, m_prefixLength and m_needsMoreContext.
749         (WebCore::SearchBuffer::append): Adjust m_prefixLength as part of the prefix gets pushed out
750         of the buffer.
751         (WebCore::SearchBuffer::needsMoreContext): Added.
752         (WebCore::SearchBuffer::prependContext): Added.
753         (WebCore::SearchBuffer::isWordStartMatch): Added.
754         (WebCore::SearchBuffer::search): Changed to account for the context prefix. When searching
755         only for word prefix matches, maintains enough context before a tentative match when moving
756         it to the beginning of the buffer. Reject matches that are not at word starts if requested.
757         Adjust m_prefixLength when pushing characters out of the buffer.
758         (WebCore::findPlainText): Changed to work with FindOptions. Feed the search buffer with context
759         if and as long as it requires more of it.
760         * editing/TextIterator.h: Added a version of findPlainText() that takes FindOptions.
761         * editing/visible_units.cpp: Moved {end,start}Of{First,Last}WordBoundary to TextBoundaries.cpp.
762         * page/Page.cpp:
763         (WebCore::Page::findString): Changed to work with FindOptions.
764         (WebCore::Page::markAllMatchesForText): Ditto.
765         * page/Page.h: Added FindOptions-based findString() and markAllMatchesForText().
766         * platform/text/TextBoundaries.cpp:
767         (WebCore::endOfFirstWordBoundaryContext): Moved here from visible_units.cpp.
768         (WebCore::startOfLastWordBoundaryContext): Ditto.
769         * platform/text/TextBoundaries.h:
770
771 2010-11-29  Dai Mikurube  <dmikurube@google.com>
772
773         Reviewed by Kent Tamura.
774
775         when empty, clicking "down" on outer-spin-button returns "max value"
776         https://bugs.webkit.org/show_bug.cgi?id=45491
777
778         Modified stepping-up/down from renderer
779         - to clamp steps,
780         - to handle empty values (described below), and
781         - to apply them for range type inputs.
782
783         Stepping-up/down for empty values are handled "the empty as 0."
784         For example :
785         * If 0 is in-range, and matches to step value
786           "down" -> -step
787           "up" -> +step
788           If -step or +step is out of range, new value should be 0.
789
790         * If 0 is smaller than the minimum value
791           "down" -> the minimum value
792           "up" -> the minimum value
793
794         * If 0 is larger than the maximum value
795           "down" -> the maximum value
796           "up" -> the maximum value
797
798         * If 0 is in-range, but not matched to step value
799           "down" -> smaler matched value nearest to 0.
800             e.g. <input type=number min=-100 step=3> -> -1
801           "up" -> larger matched value nearest to 0.
802             e.g. <input type=number min=-100 step=3> -> 2
803
804         As for date/datetime-local/month/time/week types, the empty is assumed as "current local date/time".
805         As for datetime type, the empty is assumed as "current date/time in UTC".
806
807         As for range input types, changed stepping from renderer to use stepUpFromRenderer().
808         It was calculated with stepUp() from RangeInputType::handleKeydownEvent().
809
810         Test: fast/forms/input-stepup-stepdown-from-renderer.html
811
812         * html/BaseDateAndTimeInputType.cpp:
813         (WebCore::BaseDateAndTimeInputType::defaultValueForStepUp): Added defaultValueForStepUp() which returns the current local time
814         * html/BaseDateAndTimeInputType.h:
815         * html/DateTimeInputType.cpp:
816         (WebCore::DateTimeInputType::defaultValueForStepUp): Added defaultValueForStepUp() which returns the current UTC time
817         * html/DateTimeInputType.h:
818         * html/HTMLInputElement.cpp:
819         (WebCore::HTMLInputElement::stepUpFromRenderer): Modified it to clamp steps, support empty values and support range type inputs
820         * html/HTMLInputElement.h:
821         (WebCore::HTMLInputElement::isRangeControl):
822         * html/InputType.cpp:
823         (WebCore::InputType::defaultValueForStepUp): Added defaultValueForStepUp() which returns 0
824         * html/InputType.h:
825         * html/MonthInputType.cpp:
826         (WebCore::MonthInputType::defaultValueForStepUp): Added defaultValueForStepUp() which returns the current local month
827         * html/MonthInputType.h:
828         * html/RangeInputType.cpp:
829         (WebCore::RangeInputType::handleKeydownEvent): Added comments and modified it to use stepUpFromRenderer()
830         * html/TimeInputType.cpp:
831         (WebCore::TimeInputType::defaultValueForStepUp): Added defaultValueForStepUp() which returns the current local time
832         * html/TimeInputType.h:
833         * manual-tests/input-type-datetime-default-value.html: Added manual tests for default values of date/time inputs since they are "the current local/UTC time", which cannot be tested automatically.
834
835 2010-11-29  Adam Barth  <abarth@webkit.org>
836
837         Reviewed by Darin Adler.
838
839         Introduce the notion of a "display-isolated" URL scheme for use by Chrome-internal URLs
840         https://bugs.webkit.org/show_bug.cgi?id=50182
841
842         A display-isolated URL can only be displayed (e.g., put in an iframe,
843         hyperlinked to) by documents from that scheme.  In a sense, this is a
844         generalization of some of the protections we give file URLs, but
845         instead of lumping them all together into one "local" bucket, this
846         patch creates a separate bucket for each scheme.
847
848         For a while, I tried using a separate bucket for each origin.  That
849         would have played nicely with what Blob URLs are trying to do, but some
850         "chrome" URL pages rely on being able to display other chrome URL
851         pages, even in different origins.  For example, the New Tab Page shows
852         thumbnails from the "thumbnail" host.
853
854         This patch also removes a bunch of unused code.  I've also propagated
855         the "deprecated" status of deprecatedCanDisplay to
856         deprecatedShouldTreatURLAsLocal because that method has no other
857         callers and is really asking for uppercase/lowercase bugs.  I dream of
858         someday removing these functions.
859
860         * page/SecurityOrigin.cpp:
861         (WebCore::SecurityOrigin::canDisplay):
862         (WebCore::SecurityOrigin::deprecatedCanDisplay):
863         * platform/SchemeRegistry.cpp:
864         (WebCore::displayIsolatedURLSchemes):
865         (WebCore::SchemeRegistry::registerURLSchemeAsLocal):
866         (WebCore::SchemeRegistry::deprecatedShouldTreatURLAsLocal):
867         (WebCore::SchemeRegistry::shouldTreatURLSchemeAsLocal):
868         (WebCore::SchemeRegistry::registerURLSchemeAsDisplayIsolated):
869         (WebCore::SchemeRegistry::shouldTreatURLSchemeAsDisplayIsolated):
870         * platform/SchemeRegistry.h:
871
872 2010-11-29  Sergio Villar Senin  <svillar@igalia.com>
873
874         Reviewed by Martin Robinson.
875
876         [GTK] Leaks in SoupCache code
877         https://bugs.webkit.org/show_bug.cgi?id=50161
878
879         Fixes some memory leaks in SoupCache code.
880
881         * platform/network/soup/cache/soup-http-input-stream.c:
882         (send_async_finished): Added a missing g_object_unref.
883         * platform/network/soup/cache/webkit/soup-cache.c:
884         (get_cacheability): Added soup_header_free_param_list.
885         (webkit_soup_cache_entry_set_freshness): Ditto.
886         (webkit_soup_cache_send_response): Ditto.
887         (webkit_soup_cache_has_response): Ditto.
888
889 2010-11-29  Jian Li  <jianli@chromium.org>
890
891         Reviewed by David Levin.
892
893         Add send(ArrayBuffer) to XMLHttpRequest per XMLHttpRequest Level 2 spec
894         https://bugs.webkit.org/show_bug.cgi?id=50199
895
896         Test: http/tests/xmlhttprequest/send-array-buffer.html
897
898         * bindings/js/JSXMLHttpRequestCustom.cpp:
899         (WebCore::JSXMLHttpRequest::send):
900         * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
901         (WebCore::V8XMLHttpRequest::sendCallback):
902         * xml/XMLHttpRequest.cpp:
903         (WebCore::XMLHttpRequest::send):
904         * xml/XMLHttpRequest.h:
905
906 2010-11-29  James Robinson  <jamesr@chromium.org>
907
908         [chromium] REGRESSION(72470): Crash in skia on some images
909         https://bugs.webkit.org/show_bug.cgi?id=50201
910
911         Reverts r72470
912
913         * platform/graphics/skia/ImageSkia.cpp:
914         (WebCore::computeResamplingMode):
915         (WebCore::drawResampledBitmap):
916
917 2010-11-29  Dmitry Titov  <dimich@chromium.org>
918
919         Reviewed by David Levin.
920
921         Crash when iframe transfers from one page to another and has child frames.
922         https://bugs.webkit.org/show_bug.cgi?id=50200
923
924         * page/Frame.cpp:
925         (WebCore::Frame::transferChildFrameToNewDocument):
926         avoid overriding 'didTransfer' which has the result of previous check.
927
928 2010-11-19  Ryosuke Niwa  <rniwa@webkit.org>
929
930         Reviewed by David Hyatt.
931
932         up arrow doesn't work with RTL text with word wrapping
933         https://bugs.webkit.org/show_bug.cgi?id=41987
934
935         The bug was caused by positionForPoint's not returning the correct affinity when the x coordiate
936         is to the left of the first line, and startOfLine's incorrectly moving position to the previous candidate.
937
938         Fixed the bug by returning upstream VisiblePosition in positionForPoint if the first inline text box's offset
939         is greater than 0.  Also removed the code added by http://trac.webkit.org/changeset/23608 since this changeset
940         does not add any test, and the problem described in the changelog reproduces regardless of the code's presence.
941
942         Tests: editing/selection/click-left-of-rtl-wrapping-text.html
943                editing/selection/modify-up-on-rtl-wrapping-text.html
944
945         * editing/visible_units.cpp:
946         (WebCore::startOfLine):
947         * rendering/RenderText.cpp:
948         (WebCore::RenderText::positionForPoint):
949
950 2010-11-29  Ilya Sherman  <isherman@chromium.org>
951
952         Reviewed by Kent Tamura.
953
954         Ensure that option elements are rendered with normal font weight on Windows/Linux
955         https://bugs.webkit.org/show_bug.cgi?id=50055
956
957         * WebCore.gyp/WebCore.gyp: include themeChromiumSkia.css
958         * css/themeChromiumSkia.css: Added.
959         (option): font-weight: normal !important;
960         * rendering/RenderThemeChromiumSkia.cpp:
961         (WebCore::RenderThemeChromiumSkia::extraDefaultStyleSheet): include themeChromiumSkia.css
962
963 2010-11-29  Brent Fulgham  <bfulgham@webkit.org>
964
965         Unreviewed build fix.
966
967         * WebCore.vcproj/WebCoreCairo.vsprops: Provide missing WIN_CAIRO
968           definition so that proper targets are build.
969         * platform/graphics/win/cairo/FontPlatformData.h:
970         (WebCore::FontPlatformData::orientation): Add missing implementation.
971
972 2010-11-29  Chris Rogers  <crogers@google.com>
973
974         Reviewed by Kenneth Russell.
975
976         Switch web audio code to use FloatPoint3D instead of Vector3
977         https://bugs.webkit.org/show_bug.cgi?id=50186
978
979         No new tests since audio API is not yet implemented.
980
981         * platform/audio/Cone.cpp:
982         (WebCore::ConeEffect::gain):
983         * platform/audio/Cone.h:
984         * platform/graphics/FloatPoint3D.h:
985         (WebCore::FloatPoint3D::isZero):
986         (WebCore::operator*):
987         (WebCore::FloatPoint3D::distanceTo):
988         * webaudio/AudioListener.h:
989         (WebCore::AudioListener::setPosition):
990         (WebCore::AudioListener::position):
991         (WebCore::AudioListener::setOrientation):
992         (WebCore::AudioListener::orientation):
993         (WebCore::AudioListener::setUpVector):
994         (WebCore::AudioListener::upVector):
995         (WebCore::AudioListener::setVelocity):
996         (WebCore::AudioListener::velocity):
997         * webaudio/AudioPannerNode.cpp:
998         (WebCore::AudioPannerNode::AudioPannerNode):
999         (WebCore::AudioPannerNode::getAzimuthElevation):
1000         (WebCore::AudioPannerNode::dopplerRate):
1001         (WebCore::AudioPannerNode::distanceConeGain):
1002         * webaudio/AudioPannerNode.h:
1003         (WebCore::AudioPannerNode::position):
1004         (WebCore::AudioPannerNode::setPosition):
1005         (WebCore::AudioPannerNode::orientation):
1006         (WebCore::AudioPannerNode::setOrientation):
1007         (WebCore::AudioPannerNode::velocity):
1008         (WebCore::AudioPannerNode::setVelocity):
1009
1010 2010-11-29  Xiaomei Ji  <xji@chromium.org>
1011
1012         Reviewed by David Hyatt.
1013
1014         Right-to-left pages should be scrollable to reveal left overflow.
1015         https://bugs.webkit.org/show_bug.cgi?id=23556
1016
1017         For RTL page, save left layout overflow and include it into the document
1018         size during layout. Use the left layout overflow when scroll and paint
1019         the page. Behavior on LTR page should be untouched since left layout 
1020         overflow is set as 0 for LTR page.
1021
1022         Tests: fast/dom/horizontal-scrollbar-in-rtl-doesnt-fire-onscroll.html
1023                fast/dom/horizontal-scrollbar-in-rtl.html
1024                fast/dom/horizontal-scrollbar-when-dir-change.html
1025                fast/dom/left-overflow-in-ltr.html
1026                fast/dom/right-overflow-in-rtl.html
1027
1028         * page/FrameView.cpp:
1029         (WebCore::FrameView::adjustViewSize): Save negative of left layout overflow as scroll X origin. And includes left layout overflow into document size.
1030         * page/mac/WebCoreFrameView.h: Add methods for setting and getting scroll X origin.
1031         * platform/ScrollView.cpp:
1032         (WebCore::ScrollView::ScrollView):
1033         (WebCore::ScrollView::maximumScrollPosition): Minus scroll X origin from maximum horizontal scroll position.
1034         (WebCore::ScrollView::minimumScrollPosition):
1035         (WebCore::ScrollView::adjustScrollPositionWithinRange):
1036         (WebCore::ScrollView::valueChanged):
1037         (WebCore::ScrollView::setScrollPosition):
1038         (WebCore::ScrollView::updateScrollbars):
1039         (WebCore::ScrollView::wheelEvent):
1040         * platform/ScrollView.h:
1041         * platform/mac/ScrollViewMac.mm:
1042         (WebCore::ScrollView::platformSetContentsSize):
1043         (WebCore::ScrollView::platformSetScrollPosition):
1044         (WebCore::ScrollView::platformSetScrollOriginX):
1045         * rendering/RenderBox.cpp:
1046         (WebCore::RenderBox::styleDidChange):
1047         (WebCore::RenderBox::paintRootBoxDecorations): Include left layout overflow into canvas size.
1048         * rendering/RenderView.cpp:
1049         (WebCore::RenderView::layout): Save left layout overflow.
1050         (WebCore::RenderView::docLeft):
1051         (WebCore::RenderView::docWidth): Include left layout overflow into doc width for RTL page.
1052         * rendering/RenderView.h:
1053
1054 2010-11-29  Simon Fraser  <simon.fraser@apple.com>
1055
1056         Reviewed by Ojan Vafai.
1057
1058         bunch of pixel failures after http://trac.webkit.org/changeset/72839/
1059         https://bugs.webkit.org/show_bug.cgi?id=50188
1060         
1061         We need to call updateLayerTransform() for reflections, and
1062         table rows as well.
1063
1064         * rendering/RenderReplica.cpp:
1065         (WebCore::RenderReplica::layout):
1066         * rendering/RenderTableRow.cpp:
1067         (WebCore::RenderTableRow::layout):
1068         * rendering/RenderTableSection.cpp:
1069         (WebCore::RenderTableSection::layoutRows):
1070
1071 2010-11-29  Xiaomei Ji  <xji@chromium.org>
1072
1073         Reviewed by David Hyatt.
1074
1075         Fix tab overflow problem when alignment is not left.
1076         https://bugs.webkit.org/show_bug.cgi?id=25459
1077
1078         I checked WordPad in Windows, TextEdit in Mac, OpenOffice, and Google doc. 
1079         In all of them, (when the writing mode is horizontal) when the alignment is not
1080         left alignment, the length of tab is computed based on the tab's position
1081         relative to the left start of line, not based on the tab's position relative 
1082         to the left edge of the document.
1083
1084         WebKit should follow the same.
1085
1086         The m_xPos in each TextRun should be relative to the left start of the line, 
1087         not left start of its containing block (in right alignment and center alignment,
1088         left start of the line is not the same as left start of the containing block).
1089         So, when the text is drawn, the width of tab is consistent with the width 
1090         computed in RenderBlock::computeInlineDirectionPositionsForLine().
1091
1092         I did not test vertical writing mode, but I think the same rule should apply.
1093
1094         Test: fast/dom/tab-in-right-alignment.html
1095
1096         * platform/graphics/TextRun.h:
1097         * rendering/InlineTextBox.cpp:
1098         (WebCore::InlineTextBox::textPos):
1099         * rendering/InlineTextBox.h:
1100
1101 2010-11-29  Mikhail Naganov  <mnaganov@chromium.org>
1102
1103         Reviewed by Pavel Feldman.
1104
1105         WebInspector: Request JSON-serialized heap snapshot from JS engine.
1106         This simplifies heap snapshots interaction and API. Instead of
1107         having objects representing snapshot entities, the whole snapshot
1108         is transferred to WebInspector and parsed there.
1109
1110         https://bugs.webkit.org/show_bug.cgi?id=49974
1111
1112         * bindings/js/ScriptHeapSnapshot.h:
1113         (WebCore::ScriptHeapSnapshot::OutputStream::~OutputStream):
1114         (WebCore::ScriptHeapSnapshot::~ScriptHeapSnapshot):
1115         (WebCore::ScriptHeapSnapshot::writeJSON):
1116         (WebCore::ScriptHeapSnapshot::ScriptHeapSnapshot):
1117         * bindings/v8/ScriptHeapSnapshot.cpp:
1118         (WebCore::ScriptHeapSnapshot::writeJSON):
1119         * bindings/v8/ScriptHeapSnapshot.h:
1120         (WebCore::ScriptHeapSnapshot::OutputStream::~OutputStream):
1121         * inspector/Inspector.idl:
1122         * inspector/InspectorProfilerAgent.cpp:
1123         (WebCore::InspectorProfilerAgent::getProfile):
1124         * inspector/front-end/HeapSnapshotView.js:
1125         (WebInspector.HeapSnapshotEdgesIterator):
1126         (WebInspector.HeapSnapshotEdgesIterator.prototype.get done):
1127         (WebInspector.HeapSnapshotEdgesIterator.prototype.get isElement):
1128         (WebInspector.HeapSnapshotEdgesIterator.prototype.get isHidden):
1129         (WebInspector.HeapSnapshotEdgesIterator.prototype.get name):
1130         (WebInspector.HeapSnapshotEdgesIterator.prototype.next):
1131         (WebInspector.HeapSnapshotEdgesIterator.prototype.get node):
1132         (WebInspector.HeapSnapshotEdgesIterator.prototype.get nodeIndex):
1133         (WebInspector.HeapSnapshotEdgesIterator.prototype._getNameOrIndex):
1134         (WebInspector.HeapSnapshotEdgesIterator.prototype._getType):
1135         (WebInspector.HeapSnapshotNodeWrapper):
1136         (WebInspector.HeapSnapshotNodeWrapper.prototype.get edges):
1137         (WebInspector.HeapSnapshotNodeWrapper.prototype.get edgesCount):
1138         (WebInspector.HeapSnapshotNodeWrapper.prototype.get instancesCount):
1139         (WebInspector.HeapSnapshotNodeWrapper.prototype.get isHidden):
1140         (WebInspector.HeapSnapshotNodeWrapper.prototype.get name):
1141         (WebInspector.HeapSnapshotNodeWrapper.prototype.get selfSize):
1142         (WebInspector.HeapSnapshotNodeWrapper.prototype._getName):
1143         (WebInspector.HeapSnapshotNodeWrapper.prototype._getEdges):
1144         (WebInspector.HeapSnapshotNodeWrapper.prototype._getType):
1145         (WebInspector.HeapSnapshot):
1146         (WebInspector.HeapSnapshot.prototype._init):
1147         (WebInspector.HeapSnapshot.prototype.get rootEdges):
1148         (WebInspector.HeapSnapshotView.prototype.snapshotLoaded):
1149         (WebInspector.HeapSnapshotView.prototype._loadProfile.processLoadedSnapshot):
1150         (WebInspector.HeapSnapshotView.prototype._loadProfile):
1151         (WebInspector.HeapSnapshotView.prototype._convertSnapshot):
1152         (WebInspector.HeapSnapshotView.prototype._prepareProfile.mergeRetainers):
1153         (WebInspector.HeapSnapshotView.prototype._prepareProfile):
1154         (WebInspector.HeapSnapshotView.prototype._sortData):
1155         * inspector/front-end/ProfilesPanel.js:
1156         (WebInspector.ProfilesPanel):
1157         (WebInspector.ProfilesPanel.prototype.addHeapSnapshotChunk):
1158         (WebInspector.ProfilesPanel.prototype.finishHeapSnapshot):
1159         * inspector/front-end/inspector.js:
1160         (WebInspector.addHeapSnapshotChunk):
1161         (WebInspector.finishHeapSnapshot):
1162
1163 2010-11-29  Simon Fraser  <simon.fraser@apple.com>
1164
1165         Reviewed by Dave Hyatt.
1166
1167         layer()->currentTransform() is stale when layout changes the box size
1168         https://bugs.webkit.org/show_bug.cgi?id=50175
1169         
1170         RenderLayer::updateTransform() is fairly expensive, so we
1171         have to avoid calling it from RenderBox::applyLayerTransformToRect()
1172         every time. This requires that we update the layer's transform
1173         during layout, instead of from updateLayerPositions() which is too late.
1174         
1175         So call updateLayerTransform() from the various layout methods
1176         on renderers that can be transformed, and remove it from 
1177         updateLayerPositions().
1178
1179         Test: fast/overflow/overflow-update-transform.html
1180
1181         * rendering/RenderBlock.cpp:
1182         (WebCore::RenderBlock::layoutBlock):
1183         (WebCore::RenderBlock::layoutOnlyPositionedObjects):
1184         * rendering/RenderBox.cpp:
1185         (WebCore::RenderBox::applyLayerTransformToRect):
1186         (WebCore::RenderBox::updateLayerTransform):
1187         * rendering/RenderBox.h:
1188         * rendering/RenderEmbeddedObject.cpp:
1189         (WebCore::RenderEmbeddedObject::layout):
1190         * rendering/RenderFlexibleBox.cpp:
1191         (WebCore::RenderFlexibleBox::layoutBlock):
1192         * rendering/RenderIFrame.cpp:
1193         (WebCore::RenderIFrame::layout):
1194         * rendering/RenderLayer.cpp:
1195         (WebCore::RenderLayer::updateLayerPositions):
1196         * rendering/RenderReplaced.cpp:
1197         (WebCore::RenderReplaced::layout):
1198         * rendering/RenderTable.cpp:
1199         (WebCore::RenderTable::layout):
1200
1201 2010-11-29  Chris Rogers  <crogers@google.com>
1202
1203         Reviewed by Kenneth Russell.
1204
1205         Add remaining custom JSC web audio bindings
1206         https://bugs.webkit.org/show_bug.cgi?id=50172
1207
1208         No new tests since audio API is not yet implemented.
1209
1210         * bindings/js/JSAudioBufferSourceNodeCustom.cpp: Added.
1211         (WebCore::JSAudioBufferSourceNode::setBuffer):
1212         * bindings/js/JSConvolverNodeCustom.cpp: Added.
1213         (WebCore::JSConvolverNode::setBuffer):
1214         * bindings/js/JSJavaScriptAudioNodeCustom.cpp: Added.
1215         (WebCore::JSJavaScriptAudioNode::markChildren):
1216         * webaudio/AudioBufferSourceNode.idl:
1217         * webaudio/ConvolverNode.idl:
1218
1219 2010-11-29  Yael Aharon  <yael.aharon@nokia.com>
1220
1221         Reviewed by Darin Adler.
1222
1223         HTMLFormElement.elements doesn't include fieldsets
1224         https://bugs.webkit.org/show_bug.cgi?id=48193
1225
1226         Add fieldset and keygen to the list of form collection elements, by making them enumeratable.
1227         This patch does not add object element to the list. A separate bug will do that.
1228
1229         Test: fast/forms/form-collection-elements.html
1230
1231         * html/HTMLFieldSetElement.h:
1232         (WebCore::HTMLFieldSetElement::isEnumeratable):
1233         * html/HTMLKeygenElement.h:
1234         (WebCore::HTMLKeygenElement::isEnumeratable):
1235
1236 2010-11-29  Xan Lopez  <xlopez@igalia.com>
1237
1238         Reviewed by Martin Robinson.
1239
1240         Get distcheck going.
1241
1242         * GNUmakefile.am:
1243
1244 2010-11-29  Alexey Proskuryakov  <ap@apple.com>
1245
1246         Reviewed by Darin Adler.
1247
1248         https://bugs.webkit.org/show_bug.cgi?id=50181
1249         CSS style declarations don't GC protect parents
1250
1251         Test: fast/dom/StyleSheet/gc-declaration-parent-rule.html
1252
1253         * bindings/js/JSCSSStyleDeclarationCustom.cpp: (WebCore::JSCSSStyleDeclaration::markChildren):
1254         Protect the parent rule.
1255
1256 2010-11-29  Ilya Tikhonovsky  <loislo@chromium.org>
1257
1258         Reviewed by Pavel Feldman.
1259
1260         Web Inspector: UI fix. In Timeline, Paint events "Location" value is displayed
1261         in a confusing manner. The format string should be changed from %d x %d
1262         pattern to (%d, %d).
1263
1264         https://bugs.webkit.org/show_bug.cgi?id=50178
1265
1266         * English.lproj/localizedStrings.js:
1267         * inspector/front-end/TimelinePanel.js:
1268         (WebInspector.TimelinePanel.FormattedRecord.prototype._generatePopupContent):
1269
1270 2010-11-29  Darin Adler  <darin@apple.com>
1271
1272         Reviewed by Andreas Kling.
1273
1274         Remove a couple unneeded overflow checks
1275         https://bugs.webkit.org/show_bug.cgi?id=49816
1276
1277         * platform/text/TextCodecUTF16.cpp:
1278         (WebCore::TextCodecUTF16::encode): Use an ASSERT instead of
1279         an overflow check with CRASH.
1280
1281 2010-11-29  Tony Chang  <tony@chromium.org>
1282
1283         Unreviewed, disable warnings again on chromium linux
1284
1285         * WebCore.gyp/WebCore.gyp:
1286
1287 2010-11-29  Cosmin Truta  <ctruta@chromium.org>
1288
1289         Reviewed by Nikolas Zimmermann.
1290
1291         getBoundingClientRect: Do not truncate the coordinates to integers
1292         https://bugs.webkit.org/show_bug.cgi?id=48110
1293
1294         Remove the float-to-int coordinate conversions inside getBoundingClientRect,
1295         to comply with the CSSOM View Module API.
1296
1297         Tests: fast/dom/Element/getBoundingClientRect.html
1298                fast/dom/Range/getBoundingClientRect.html
1299                svg/zoom/page/zoom-getBoundingClientRect.xhtml
1300                svg/zoom/page/zoom-zoom-coords.xhtml
1301
1302         * dom/ClientRect.cpp:
1303         (WebCore::ClientRect::ClientRect): Added overload to allow a FloatRect argument.
1304         * dom/ClientRect.h:
1305         (WebCore::ClientRect::create): Ditto.
1306         * dom/Element.cpp:
1307         (Element::getBoundingClientRect): Removed conversion from FloatRect to IntRect.
1308         * dom/Range.cpp:
1309         (WebCore::Range::getBoundingClientRect): Ditto.
1310         * rendering/RenderObject.h:
1311         (adjustIntRectForAbsoluteZoom): Removed.
1312         (adjustFloatRectForAbsoluteZoom): Added.
1313         * rendering/style/RenderStyle.h:
1314         (adjustFloatForAbsoluteZoom): Added.
1315
1316 2010-11-29  Dimitri Glazkov  <dglazkov@chromium.org>
1317
1318         Reviewed by Darin Adler.
1319
1320         Converge means of querying a parent node into one way, which is Node::parentNode.
1321         https://bugs.webkit.org/show_bug.cgi?id=49686
1322
1323         A follow-up to r72259, which explicitly forbids further use of Node::parent by
1324         making it private.
1325
1326         No change in behavior, so no new tests.
1327
1328         * dom/Document.cpp:
1329         (WebCore::Document::styleForElementIgnoringPendingStylesheets): Changed to use parentNode.
1330         (WebCore::Document::hoveredNodeDetached): Ditto.
1331         (WebCore::Document::activeChainNodeDetached): Ditto.
1332         * dom/Node.h: Made Node::parent private.
1333         * page/SpatialNavigation.cpp:
1334         (WebCore::canBeScrolledIntoView): Changed to use parentNode.
1335         * xml/XSLTProcessorQt.cpp:
1336         (WebCore::XSLTProcessor::transformToString): Ditto.
1337
1338 2010-11-29  Tony Chang  <tony@chromium.org>
1339
1340         Reviewed by James Robinson.
1341
1342         [chromium] try to enable WebCore compiler warnings on linux
1343         https://bugs.webkit.org/show_bug.cgi?id=50168
1344
1345         * WebCore.gyp/WebCore.gyp:
1346         * platform/graphics/chromium/FontLinux.cpp:
1347         (WebCore::TextRunWalker::setPadding):
1348         (WebCore::TextRunWalker::setGlyphXPositions):
1349         (WebCore::glyphIndexForXPositionInScriptRun):
1350
1351 2010-11-29  Alexey Proskuryakov  <ap@apple.com>
1352
1353         Reviewed by Darin Adler.
1354
1355         https://bugs.webkit.org/show_bug.cgi?id=50165
1356         CSS style rules don't GC protect parents
1357
1358         Tests: fast/dom/StyleSheet/gc-parent-rule.html
1359                fast/dom/StyleSheet/gc-parent-stylesheet.html
1360
1361         * bindings/js/JSCSSRuleCustom.cpp: (WebCore::JSCSSRule::markChildren): Mark parents. The code
1362         is super naive compared to what we have for nodes - but CSSOM has shallow hierarchies, so
1363         it should be OK.
1364
1365         * css/CSSRule.idl: Added CustomMarkFunction.
1366
1367 2010-11-29  Gavin Peters  <gavinp@chromium.org>
1368
1369         Reviewed by Adam Barth.
1370
1371         Web page can prevent WebKit from loading subresources on other
1372         pages (cache poisoning)
1373         https://bugs.webkit.org/show_bug.cgi?id=35404
1374
1375         Tests: http/tests/misc/unloadable-script.html
1376                loader/reload-subresource-when-type-changes.html
1377
1378         * loader/cache/MemoryCache.cpp:
1379         (WebCore::MemoryCache::requestResource):
1380
1381 2010-11-29  Simon Fraser  <simon.fraser@apple.com>
1382
1383         Reviewed by Dan Bernstein.
1384
1385         Crash in WebCore::CSSStyleSelector::loadPendingImages
1386         https://bugs.webkit.org/show_bug.cgi?id=50149
1387         
1388         Null-check style->boxReflect() when loading pending style images.
1389
1390         Test: fast/reflections/pending-reflection-mask-crash.html
1391
1392         * css/CSSStyleSelector.cpp:
1393         (WebCore::CSSStyleSelector::loadPendingImages):
1394
1395 2010-11-29  Pavel Feldman  <pfeldman@chromium.org>
1396
1397         Reviewed by Yury Semikhatsky.
1398
1399         Web Inspector: crash upon inspecting user style sheet.
1400         https://bugs.webkit.org/show_bug.cgi?id=50109
1401
1402         * inspector/InspectorStyleSheet.cpp:
1403         (WebCore::InspectorStyleSheet::resourceStyleSheetText):
1404
1405 2010-11-29  Patrick Gansterer  <paroga@webkit.org>
1406
1407         Reviewed by Adam Roben.
1408
1409         [WINCE] Implement WebCore::directoryName
1410         https://bugs.webkit.org/show_bug.cgi?id=50031
1411
1412         Also fix handling of paths without path separator.
1413
1414         * platform/wince/FileSystemWinCE.cpp:
1415         (WebCore::reverseFindPathSeparator):
1416         (WebCore::makeAllDirectories):
1417         (WebCore::pathGetFileName):
1418         (WebCore::directoryName):
1419
1420 2010-11-29  Patrick Gansterer  <paroga@webkit.org>
1421
1422         Reviewed by Adam Roben.
1423
1424         Simplify directoryName in FileSystemWin.cpp
1425         https://bugs.webkit.org/show_bug.cgi?id=50028
1426
1427         * platform/win/FileSystemWin.cpp:
1428         (WebCore::directoryName):
1429
1430 2010-11-24  Dimitri Glazkov  <dglazkov@chromium.org>
1431
1432         Reviewed by Darin Adler.
1433
1434         REGRESSION (r71934): Main search field at Apple tech specs does not accept typing
1435         https://bugs.webkit.org/show_bug.cgi?id=49868
1436
1437         The problem here was that the inner text element of search input was first laid out as
1438         disabled and thus with a 0-height. This would prevent a hit test to ever reach it, even
1439         if it's enabled.
1440
1441         Test: fast/forms/disabled-search-input.html
1442
1443         * rendering/RenderBlock.cpp:
1444         (WebCore::RenderBlock::hasLineIfEmpty): Removed a check for textarea that is no longer necessary.
1445         * rendering/TextControlInnerElements.cpp:
1446         (WebCore::RenderTextControlInnerBlock::hasLineIfEmpty): Added an override to ensure that
1447             an empty inner text element is always one-line high.
1448
1449 2010-11-29  W. James MacLean  <wjmaclean@chromium.org>
1450
1451        Reviewed by Dirk Schulze.
1452
1453        Large input numbers cause overflow during SVG parsing, leading to crash
1454        https://bugs.webkit.org/show_bug.cgi?id=49546
1455
1456        Values outside the range supported by float lead to Infinity() or NaN()
1457        during parsing, leading to subsequent crashes. Modified
1458        parser to verify number is in the supported range, and return false if not.
1459
1460        Tests: svg/custom/svg-parse-overflow-1.html
1461               svg/custom/svg-parse-overflow-2.html
1462               svg/custom/svg-parse-overflow-3.html
1463               svg/custom/svg-parse-overflow-4.html
1464               svg/custom/svg-parse-overflow-5.html
1465
1466        * svg/SVGParserUtilities.cpp:
1467        (WebCore::isValidRange):
1468        (WebCore::genericParseNumber):
1469
1470 2010-11-29  Yury Semikhatsky  <yurys@chromium.org>
1471
1472         Reviewed by Pavel Feldman.
1473
1474         Web Inspector: display name of an object constructor as the object's type
1475         https://bugs.webkit.org/show_bug.cgi?id=50063
1476
1477         Name of the function that has created given object is used as the object's
1478         type when it's displayed in the inspector front-end(in case of V8). Before
1479         this change, it was always a value of the object's constructor.name property
1480         which is confusing in some cases(see the test).
1481
1482         Removed check for jsEngine from the InjectedScript.js, all VM-specific code
1483         is now encapsulated on the bindings layer.
1484
1485         Test: inspector/console-object-constructor-name.html
1486
1487         * bindings/js/JSInjectedScriptHostCustom.cpp:
1488         (WebCore::InjectedScriptHost::createInjectedScript):
1489         (WebCore::JSInjectedScriptHost::constructorName):
1490         * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
1491         (WebCore::InjectedScriptHost::createInjectedScript):
1492         (WebCore::V8InjectedScriptHost::constructorNameCallback):
1493         * inspector/InjectedScriptHost.idl:
1494         * inspector/front-end/InjectedScript.js:
1495         (injectedScriptConstructor.):
1496
1497 2010-11-29  Jeremy Moskovich  <jeremy@chromium.org>
1498
1499         Reviewed by Eric Seidel.
1500
1501         https://bugs.webkit.org/show_bug.cgi?id=24346
1502
1503         Remove temporary workaround to load Gears plugin.
1504
1505         * html/HTMLObjectElement.cpp:
1506         (WebCore::HTMLObjectElement::rendererIsNeeded):
1507
1508 2010-11-29  Yael Aharon  <yael.aharon@nokia.com>
1509
1510         Reviewed by Antonio Gomes.
1511
1512         Spatial Navigation: Store more information in FocusCandidate
1513         https://bugs.webkit.org/show_bug.cgi?id=50153
1514
1515         More information should be stored in FocusCandidate, to avoid
1516         recalculating it when running the spatial navigation algorithm.
1517
1518         No new tests, since this is code refactoring only.
1519
1520         * page/FocusController.cpp:
1521         (WebCore::updateFocusCandidateIfNeeded):
1522         (WebCore::FocusController::findFocusCandidateInContainer):
1523         (WebCore::FocusController::advanceFocusDirectionallyInContainer):
1524         * page/SpatialNavigation.cpp:
1525         (WebCore::FocusCandidate::FocusCandidate):
1526         (WebCore::canBeScrolledIntoView):
1527         * page/SpatialNavigation.h:
1528         (WebCore::FocusCandidate::FocusCandidate):
1529
1530 2010-11-29  Dimitri Glazkov  <dglazkov@chromium.org>
1531
1532         Reviewed by Darin Adler.
1533
1534         Use the right focusable check to avoid multiple focus/blur events being fired from inside of the shadow DOM.
1535         https://bugs.webkit.org/show_bug.cgi?id=49977
1536
1537         * editing/SelectionController.cpp:
1538         (WebCore::SelectionController::setFocusedNodeIfNeeded): Added a FIXME to remove redundant code.
1539         * page/EventHandler.cpp:
1540         (WebCore::EventHandler::dispatchMouseEvent): Changed to use isMouseFocusable, which is what shadow DOM elements
1541             override, and added a FIXME to convert to use shadow DOM-aware traversal instead of render tree traversal.
1542
1543         Test: fast/events/shadow-boundary-crossing-2.html
1544
1545 2010-11-29  Adam Roben  <aroben@apple.com>
1546
1547         Windows build fix after r72715
1548
1549         * WebCore.vcproj/WebCore.vcproj: Add a missing </File> tag to fix an
1550         XML syntax error.
1551
1552 2010-11-29  Bernhard Bauer  <bauerb@chromium.org>
1553
1554         Reviewed by Jeremy Orlow.
1555
1556         Remove databaseFileName from IDBFactoryBackendImpl
1557         https://bugs.webkit.org/show_bug.cgi?id=50150
1558
1559         No new tests, since functionality is unchanged.
1560
1561         * storage/IDBFactoryBackendImpl.cpp:
1562         (WebCore::openSQLiteDatabase):
1563         * storage/IDBFactoryBackendImpl.h:
1564
1565 2010-11-29  Philippe Normand  <pnormand@igalia.com>
1566
1567         Reviewed by Xan Lopez.
1568
1569         [GStreamer] take video sink ownership with gst_object API
1570         https://bugs.webkit.org/show_bug.cgi?id=49011
1571
1572         Use gst_object_ref_sink instead of g_object_ref_sink to avoid
1573         possible leaks.
1574
1575         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
1576         (WebCore::MediaPlayerPrivateGStreamer::createGSTPlayBin):
1577
1578 2010-11-29  Jan Erik Hanssen  <jhanssen@sencha.com>
1579
1580         Reviewed by Kenneth Rohde Christiansen.
1581
1582         QtWebKit asserts when selecting elided text.
1583         https://bugs.webkit.org/show_bug.cgi?id=45391
1584
1585         Ensure that the length passed to fromRawDataWithoutRef() does
1586         not exceed the length of the string.
1587
1588         * platform/graphics/qt/FontQt.cpp:
1589         (WebCore::Font::selectionRectForSimpleText):
1590
1591 2010-11-26  Alexander Pavlov  <apavlov@chromium.org>
1592
1593         Reviewed by Pavel Feldman.
1594
1595         Web Inspector: Styles Gear Menu Choice to Display Colors "As Authored"
1596         https://bugs.webkit.org/show_bug.cgi?id=31614
1597
1598         * English.lproj/localizedStrings.js:
1599         * inspector/front-end/Color.js:
1600         (WebInspector.Color.prototype.toString):
1601         (WebInspector.Color.prototype._parse.this.rgba.set 0):
1602         (WebInspector.Color.prototype._parse.set WebInspector):
1603         (WebInspector.Color.prototype._parse):
1604         * inspector/front-end/StylesSidebarPane.js:
1605         (WebInspector.StylePropertyTreeElement.prototype.updateTitle.processColor.nextFormat):
1606         (WebInspector.StylePropertyTreeElement.prototype.updateTitle.processColor.changeColorDisplay):
1607
1608 2010-11-29  Helder Correia  <helder@sencha.com>
1609
1610         Reviewed by Kenneth Rohde Christiansen.
1611
1612         [Qt] fillRect shadow has incorrect behavior when using ctx.scale(x,y)
1613         https://bugs.webkit.org/show_bug.cgi?id=50141
1614
1615         Don't apply scaling transformation to shadow offsets.
1616
1617         Test: fast/canvas/canvas-scale-fillRect-shadow.html
1618
1619         * platform/graphics/ContextShadow.h:
1620         * platform/graphics/qt/ContextShadowQt.cpp:
1621         (WebCore::ContextShadow::beginShadowLayer):
1622         (WebCore::ContextShadow::endShadowLayer):
1623         * platform/graphics/qt/GraphicsContextQt.cpp:
1624         (WebCore::GraphicsContext::fillRect):
1625
1626 2010-11-28  Dimitri Glazkov  <dglazkov@chromium.org>
1627
1628         Reviewed by Darin Adler.
1629
1630         Default event handlers should also be using event retargeting.
1631         https://bugs.webkit.org/show_bug.cgi?id=49986
1632
1633         Test: fast/events/shadow-boundary-crossing-2.html
1634
1635         * dom/EventContext.cpp:
1636         (WebCore::EventContext::defaultEventHandler): Added.
1637         * dom/EventContext.h: Added decl.
1638         * dom/Node.cpp:
1639         (WebCore::Node::dispatchGenericEvent): Changed to use event retargeting for
1640             default event handlers.
1641
1642 2010-11-23  MORITA Hajime  <morrita@google.com>
1643
1644         Reviewed by Kent Tamura.
1645
1646         REGRESSION: Text on <input type="search"> is not spellchecked.
1647         https://bugs.webkit.org/show_bug.cgi?id=49651
1648
1649         TextControlInnerElement::isSpellCheckingEnabled() didn't consider 
1650         non-root shadow elelements and always went false for <input type="search>.
1651         This change unifies shadow and host handling into Element::isSpellCheckingEnabled().
1652         
1653         Test: editing/spelling/spellcheck-attribute.html
1654         
1655         * dom/Element.cpp:
1656         (WebCore::Element::isSpellCheckingEnabled):
1657         * rendering/TextControlInnerElements.cpp:
1658         * rendering/TextControlInnerElements.h:
1659
1660 2010-11-28  Antonio Gomes  <agomes@rim.com>
1661
1662         Reviewed by Kenneth Rohde Christiansen.
1663
1664         Spatial Navigation: use isSpatialNaviagtionEnabled from SpatialNavigation.h in HTMLInputElement::defaultEventHandler
1665         https://bugs.webkit.org/show_bug.cgi?id=50131
1666
1667         For all isSpatialNavigationEnabled calls throughout WebCore, we decided to use the static method in
1668         SpatialNavigation.h instead of directly checking from the one in Settings.h. Reason: in a soon future,
1669         there  will be a isCaretBrowsing check incorporated into this method (and probably renaming it accordingly)
1670         to avoid feature conflicts (spatial navigation x caret browsing).
1671
1672         No new tests needed.
1673
1674         * html/HTMLInputElement.cpp:
1675         (WebCore::HTMLInputElement::defaultEventHandler):
1676
1677 2010-11-27  Benjamin Kalman  <kalman@chromium.org>
1678
1679         Reviewed by Darin Adler.
1680
1681         Move Position::EditingBoundaryCrossingRule to a new header file
1682         https://bugs.webkit.org/show_bug.cgi?id=49630
1683
1684         * GNUmakefile.am:
1685         * WebCore.exp.in:
1686         * WebCore.gypi:
1687         * WebCore.pro:
1688         * WebCore.vcproj/WebCore.vcproj:
1689         * WebCore.xcodeproj/project.pbxproj:
1690         * dom/Position.cpp:
1691         (WebCore::downstreamIgnoringEditingBoundaries):
1692         (WebCore::upstreamIgnoringEditingBoundaries):
1693         * dom/Position.h:
1694         * editing/DeleteSelectionCommand.cpp:
1695         (WebCore::DeleteSelectionCommand::doApply):
1696         * editing/EditingBoundary.h: Added.
1697         * editing/visible_units.cpp:
1698         (WebCore::startOfParagraph):
1699         (WebCore::endOfParagraph):
1700         (WebCore::isStartOfParagraph):
1701         (WebCore::isEndOfParagraph):
1702         * editing/visible_units.h:
1703         * rendering/RenderObject.cpp:
1704         (WebCore::RenderObject::createVisiblePosition):
1705
1706 2010-11-26  Rob Buis  <rwlbuis@gmail.com>
1707
1708         Reviewed by Simon Fraser.
1709
1710         Percentage z offset in transform-origin should make the property invalid
1711         https://bugs.webkit.org/show_bug.cgi?id=48704
1712
1713         Discard transform-origin property when parsing invalid Z value.
1714
1715         Test: fast/css/transform-origin-parsing.html
1716
1717         * css/CSSParser.cpp:
1718         (WebCore::CSSParser::parseTransformOriginShorthand):
1719         (WebCore::CSSParser::parseTransformOrigin):
1720         * css/CSSParser.h:
1721
1722 2010-11-26  Dan Bernstein  <mitz@apple.com>
1723
1724         Reviewed by Antti Koivisto.
1725
1726         <rdar://problem/8681368> Avoid unnecessary calls to CTFontGetPlatformFont()
1727         https://bugs.webkit.org/show_bug.cgi?id=50096
1728
1729         No new test, since functionality is unchanged.
1730
1731         * platform/graphics/chromium/CrossProcessFontLoading.mm:
1732         (WebCore::FontPlatformData::loadFont): Removed the ATSUFontID argument.
1733         * platform/graphics/cocoa/FontPlatformData.h:
1734         (WebCore::FontPlatformData::FontPlatformData): Ditto.
1735         (WebCore::FontPlatformData::operator==): Removed comparison of font IDs.
1736         * platform/graphics/cocoa/FontPlatformDataCocoa.mm:
1737         (WebCore::FontPlatformData::loadFont): Removed the ATSUFontID argument.
1738         (WebCore::FontPlatformData::FontPlatformData): Updated.
1739         (WebCore::FontPlatformData::operator=): Removed copying of font ID.
1740         (WebCore::FontPlatformData::setFont): Removed setting of font ID.
1741         * platform/graphics/mac/ComplexTextControllerATSUI.cpp:
1742         (WebCore::initializeATSUStyle): Call CTFontGetPlatformFont() here if necessary.
1743         * platform/graphics/mac/FontCustomPlatformData.cpp:
1744         (WebCore::FontCustomPlatformData::fontPlatformData): Updated for FontPlatformData change.
1745         (WebCore::createFontCustomPlatformData): Updated for FontCustomPlatformData change.
1746         * platform/graphics/mac/FontCustomPlatformData.h:
1747         (WebCore::FontCustomPlatformData::FontCustomPlatformData): Removed ATSUFontID argument and
1748         data member.
1749         * platform/graphics/mac/SimpleFontDataATSUI.mm:
1750         (WebCore::SimpleFontData::checkShapesArabic): Call CTFontGetPlatformFont() here if necessary.
1751
1752 2010-11-26  François Sausset  <sausset@gmail.com>
1753
1754         Reviewed by Daniel Bates.
1755
1756         MathML: code cleaning needed in MathMLInlineContainerElement.cpp
1757         https://bugs.webkit.org/show_bug.cgi?id=50069
1758
1759         Unnecessary namespace was removed and style was adjusted.
1760
1761         * mathml/MathMLInlineContainerElement.cpp:
1762         (WebCore::MathMLInlineContainerElement::createRenderer):
1763
1764 2010-11-26  Andrei Popescu  <andreip@google.com>
1765
1766         Reviewed by Jeremy Orlow.
1767
1768         IDBDatabase and IDBObjectStore remove* methods should be renamed to delete*
1769         https://bugs.webkit.org/show_bug.cgi?id=50113
1770
1771         Modified exisiting layout tests to cover this change.
1772
1773         * storage/IDBDatabase.cpp:
1774         (WebCore::IDBDatabase::deleteObjectStore):
1775         * storage/IDBDatabase.h:
1776         * storage/IDBDatabase.idl:
1777         * storage/IDBDatabaseBackendImpl.cpp:
1778         (WebCore::IDBDatabaseBackendImpl::deleteObjectStore):
1779         (WebCore::IDBDatabaseBackendImpl::deleteObjectStoreInternal):
1780         * storage/IDBDatabaseBackendImpl.h:
1781         * storage/IDBDatabaseBackendInterface.h:
1782         * storage/IDBObjectStore.cpp:
1783         (WebCore::IDBObjectStore::deleteFunction):
1784         (WebCore::IDBObjectStore::deleteIndex):
1785         * storage/IDBObjectStore.h:
1786         * storage/IDBObjectStore.idl:
1787         * storage/IDBObjectStoreBackendImpl.cpp:
1788         (WebCore::IDBObjectStoreBackendImpl::deleteFunction):
1789         (WebCore::IDBObjectStoreBackendImpl::deleteInternal):
1790         (WebCore::IDBObjectStoreBackendImpl::deleteIndex):
1791         (WebCore::IDBObjectStoreBackendImpl::deleteIndexInternal):
1792         * storage/IDBObjectStoreBackendImpl.h:
1793         * storage/IDBObjectStoreBackendInterface.h:
1794
1795 2010-11-26  Sheriff Bot  <webkit.review.bot@gmail.com>
1796
1797         Unreviewed, rolling out r72701.
1798         http://trac.webkit.org/changeset/72701
1799         https://bugs.webkit.org/show_bug.cgi?id=50114
1800
1801         REGRESSION: bad transform matrix on content layer (Requested
1802         by backer on #webkit).
1803
1804         * WebCore.gypi:
1805         * platform/graphics/chromium/Canvas2DLayerChromium.cpp:
1806         (WebCore::Canvas2DLayerChromium::updateContents):
1807         * platform/graphics/chromium/Canvas2DLayerChromium.h:
1808         * platform/graphics/chromium/ContentLayerChromium.cpp:
1809         (WebCore::ContentLayerChromium::cleanupResources):
1810         (WebCore::ContentLayerChromium::updateContents):
1811         (WebCore::ContentLayerChromium::updateTextureRect):
1812         (WebCore::ContentLayerChromium::draw):
1813         * platform/graphics/chromium/ContentLayerChromium.h:
1814         * platform/graphics/chromium/ImageLayerChromium.cpp:
1815         (WebCore::ImageLayerChromium::updateContents):
1816         * platform/graphics/chromium/ImageLayerChromium.h:
1817         * platform/graphics/chromium/LayerChromium.h:
1818         (WebCore::LayerChromium::contentsDirty):
1819         (WebCore::LayerChromium::updateContents):
1820         (WebCore::LayerChromium::draw):
1821         * platform/graphics/chromium/LayerRendererChromium.cpp:
1822         (WebCore::LayerRendererChromium::LayerRendererChromium):
1823         (WebCore::LayerRendererChromium::prepareToDrawLayers):
1824         (WebCore::LayerRendererChromium::drawLayers):
1825         (WebCore::LayerRendererChromium::updateLayersRecursive):
1826         (WebCore::LayerRendererChromium::useRenderSurface):
1827         (WebCore::LayerRendererChromium::drawLayer):
1828         (WebCore::LayerRendererChromium::initializeSharedObjects):
1829         (WebCore::LayerRendererChromium::cleanupSharedObjects):
1830         * platform/graphics/chromium/LayerRendererChromium.h:
1831         * platform/graphics/chromium/LayerTexture.cpp: Removed.
1832         * platform/graphics/chromium/LayerTexture.h: Removed.
1833         * platform/graphics/chromium/PluginLayerChromium.cpp:
1834         (WebCore::PluginLayerChromium::updateContents):
1835         * platform/graphics/chromium/PluginLayerChromium.h:
1836         * platform/graphics/chromium/RenderSurfaceChromium.cpp:
1837         (WebCore::RenderSurfaceChromium::RenderSurfaceChromium):
1838         (WebCore::RenderSurfaceChromium::cleanupResources):
1839         (WebCore::RenderSurfaceChromium::prepareContentsTexture):
1840         * platform/graphics/chromium/RenderSurfaceChromium.h:
1841         * platform/graphics/chromium/TextureManager.cpp: Removed.
1842         * platform/graphics/chromium/TextureManager.h: Removed.
1843         * platform/graphics/chromium/VideoLayerChromium.cpp:
1844         (WebCore::VideoLayerChromium::updateContents):
1845         * platform/graphics/chromium/VideoLayerChromium.h:
1846         * platform/graphics/chromium/WebGLLayerChromium.cpp:
1847         (WebCore::WebGLLayerChromium::updateContents):
1848         * platform/graphics/chromium/WebGLLayerChromium.h:
1849
1850 2010-11-26  Jeremy Orlow  <jorlow@chromium.org>
1851
1852         Unreviewed build fix.
1853
1854         * storage/IDBIndex.cpp:
1855         (WebCore::IDBIndex::openCursor):
1856         (WebCore::IDBIndex::openKeyCursor):
1857         * storage/IDBObjectStore.cpp:
1858         (WebCore::IDBObjectStore::openCursor):
1859
1860 2010-11-26  Sergio Villar Senin  <svillar@igalia.com>
1861
1862         Reviewed by Xan Lopez.
1863
1864         [GTK] SoupCache should not ignore loader's conditional requests
1865         https://bugs.webkit.org/show_bug.cgi?id=50101
1866
1867         SoupCache must not handle WebKit loader conditional requests and
1868         thus should never return its own cached response if any. This was
1869         causing frequent resource load failures as WebCore was trying to
1870         revalidate its own resources and was not getting any expected
1871         result.
1872
1873         * platform/network/soup/cache/webkit/soup-cache.c:
1874         (webkit_soup_cache_has_response): check the presence of
1875         conditional request headers when deciding whether the cache has a
1876         valid response for a given request.
1877
1878 2010-11-26  Jeremy Orlow  <jorlow@chromium.org>
1879
1880         Reviewed by Steve Block.
1881
1882         Make IDBKeyRange match the spec
1883         https://bugs.webkit.org/show_bug.cgi?id=50105
1884
1885         Remove flags and instead add two booleans for being open.
1886         Change left to lower and right to upper everywhere.
1887
1888         * storage/IDBIndexBackendImpl.cpp:
1889         (WebCore::IDBIndexBackendImpl::openCursorInternal):
1890         * storage/IDBKey.cpp:
1891         (WebCore::IDBKey::lowerCursorWhereFragment):
1892         (WebCore::IDBKey::upperCursorWhereFragment):
1893         * storage/IDBKey.h:
1894         * storage/IDBKeyRange.cpp:
1895         (WebCore::IDBKeyRange::IDBKeyRange):
1896         (WebCore::IDBKeyRange::only):
1897         (WebCore::IDBKeyRange::lowerBound):
1898         (WebCore::IDBKeyRange::upperBound):
1899         (WebCore::IDBKeyRange::bound):
1900         (WebCore::IDBKeyRange::lowerWhereClauseComparisonOperator):
1901         (WebCore::IDBKeyRange::upperWhereClauseComparisonOperator):
1902         * storage/IDBKeyRange.h:
1903         (WebCore::IDBKeyRange::create):
1904         (WebCore::IDBKeyRange::lower):
1905         (WebCore::IDBKeyRange::upper):
1906         (WebCore::IDBKeyRange::lowerOpen):
1907         (WebCore::IDBKeyRange::upperOpen):
1908         * storage/IDBKeyRange.idl:
1909         * storage/IDBObjectStoreBackendImpl.cpp:
1910         (WebCore::IDBObjectStoreBackendImpl::openCursorInternal):
1911
1912 2010-11-25  Jeremy Orlow  <jorlow@chromium.org>
1913
1914         Reviewed by Steve Block.
1915
1916         Convert open*Cursor and createIndex over to using OptionsObject
1917         https://bugs.webkit.org/show_bug.cgi?id=50093
1918
1919         Add IDBKeyRange to OptionsObject's parsing abilities. Switch
1920         more APIs over to using it.
1921
1922         * bindings/v8/OptionsObject.cpp:
1923         (WebCore::OptionsObject::getKeyDOMStringList):
1924         (WebCore::OptionsObject::getKeyKeyRange):
1925         * bindings/v8/OptionsObject.h:
1926         * storage/IDBIndex.cpp:
1927         (WebCore::IDBIndex::openCursor):
1928         (WebCore::IDBIndex::openKeyCursor):
1929         * storage/IDBIndex.h:
1930         (WebCore::IDBIndex::openCursor):
1931         (WebCore::IDBIndex::openKeyCursor):
1932         * storage/IDBIndex.idl:
1933         * storage/IDBObjectStore.cpp:
1934         (WebCore::IDBObjectStore::createIndex):
1935         (WebCore::IDBObjectStore::openCursor):
1936         * storage/IDBObjectStore.h:
1937         (WebCore::IDBObjectStore::createIndex):
1938         (WebCore::IDBObjectStore::openCursor):
1939         * storage/IDBObjectStore.idl:
1940
1941 2010-11-25  Jeremy Orlow  <jorlow@chromium.org>
1942
1943         Reviewed by Steve Block.
1944
1945         Clean up IDBDatabase.transaction and add checks to IDBTransaction.objectStore
1946         https://bugs.webkit.org/show_bug.cgi?id=50081
1947
1948         IDBDatabase.transaction should use the new optional OptionsObject way
1949         of taking optional paramters. Modify that object to get numbers and
1950         domStringLists from it. Verify that any requested resources exist and
1951         return an exception if not.
1952
1953         When IDBTransaction.objectStore is called, verify that it's one of the
1954         requested resources. Also verify that it still exists. Plumb the
1955         exception code to make this work.
1956
1957         Tests: storage/indexeddb/create-and-remove-object-store.html
1958                storage/indexeddb/transaction-and-objectstore-calls.html
1959
1960         * bindings/v8/OptionsObject.cpp:
1961         (WebCore::OptionsObject::getKeyInteger):
1962         (WebCore::OptionsObject::getKeyString):
1963         (WebCore::OptionsObject::getKeyDOMStringList):
1964         * bindings/v8/OptionsObject.h:
1965         * storage/IDBDatabase.cpp:
1966         (WebCore::IDBDatabase::createObjectStore):
1967         (WebCore::IDBDatabase::transaction):
1968         * storage/IDBDatabase.h:
1969         (WebCore::IDBDatabase::transaction):
1970         * storage/IDBDatabase.idl:
1971         * storage/IDBDatabaseBackendImpl.cpp:
1972         (WebCore::IDBDatabaseBackendImpl::transaction):
1973         * storage/IDBTransaction.cpp:
1974         (WebCore::IDBTransaction::objectStore):
1975         * storage/IDBTransactionBackendImpl.cpp:
1976         (WebCore::IDBTransactionBackendImpl::IDBTransactionBackendImpl):
1977         (WebCore::IDBTransactionBackendImpl::objectStore):
1978         * storage/IDBTransactionBackendImpl.h:
1979         * storage/IDBTransactionBackendInterface.h:
1980
1981 2010-11-26  Mario Sanchez Prada  <msanchez@igalia.com>
1982
1983         Reviewed by Xan Lopez.
1984
1985         [GTK] events missing when a document is (re)loaded
1986         https://bugs.webkit.org/show_bug.cgi?id=25831
1987
1988         Make sure webArea returns a proper name and that a signal
1989         'state-change::defunct' is emitted when detaching the wrapper.
1990
1991         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
1992         (webkit_accessible_get_name): Returns the current document's title
1993         as fallback mechanism for webArea objects.
1994         (webkit_accessible_detach): Emit 'state-change::defunct' function
1995         as soon as the wrapper is detached from the related core object.
1996
1997 2010-11-26  Sergio Villar Senin  <svillar@igalia.com>
1998
1999         Reviewed by Xan Lopez.
2000
2001         [Gtk] ASSERT(d->m_response.isNull()) in contentSniffedCallback
2002         https://bugs.webkit.org/show_bug.cgi?id=50083
2003
2004         ResourceHandleSoup should not listen to content-sniffed signal
2005         when content sniffing is not enabled. This will prevent us
2006         reaching an assertion on content-sniffed callback
2007
2008         * platform/network/soup/ResourceHandleSoup.cpp:
2009         (WebCore::startHttp):
2010         * platform/network/soup/cache/soup-request-http.c:
2011         (conditional_get_ready_cb): added a comment with the
2012         possible fix for a pure libsoup HTTP cache.
2013         (send_async_cb): prevent an early object finalization adding a
2014         reference.
2015         (webkit_soup_request_http_send_async): Ditto.
2016
2017 2010-11-26  Renata Hodovan  <reni@inf.u-szeged.hu>
2018
2019         Reviewed by Antonio Gomes.
2020
2021         [Qt] Remove empty ScrollView::platformInit/platformDestroy
2022         https://bugs.webkit.org/show_bug.cgi?id=50079
2023
2024         No new test is needed.
2025
2026         * platform/ScrollView.cpp:
2027         (WebCore::ScrollView::wheelEvent):
2028         * platform/qt/ScrollViewQt.cpp:
2029
2030 2010-11-26  Pavel Feldman  <pfeldman@chromium.org>
2031
2032         Not reviewed. Fixing inspector tests.
2033
2034         * inspector/front-end/Resource.js:
2035         (WebInspector.Resource.prototype.set timing):
2036
2037 2010-11-25  Pavel Feldman  <pfeldman@chromium.org>
2038
2039         Reviewed by Yury Semikhatsky.
2040
2041         Web Inspector: UI polish for Network and Resources panels.
2042         https://bugs.webkit.org/show_bug.cgi?id=50100
2043
2044         - Fixed timing inconsistencies
2045         - Made grid user-selectable
2046         - Selection in network panel is made on name column only
2047
2048         * inspector/front-end/NetworkPanel.js:
2049         (WebInspector.NetworkPanel):
2050         (WebInspector.NetworkPanel.prototype._toggleGridMode):
2051         (WebInspector.NetworkDataGridNode.prototype.createCells):
2052         (WebInspector.NetworkDataGridNode.prototype.select):
2053         (WebInspector.NetworkDataGridNode.prototype.get selectable):
2054         (WebInspector.NetworkDataGridNode.prototype._createTimelineCell):
2055         (WebInspector.NetworkDataGridNode.prototype.refreshGraph):
2056         (WebInspector.NetworkDataGridNode.prototype._refreshLabelPositions):
2057         * inspector/front-end/Popover.js:
2058         (WebInspector.PopoverHelper):
2059         (WebInspector.PopoverHelper.prototype.setTimeout):
2060         (WebInspector.PopoverHelper.prototype._mouseMove):
2061         (WebInspector.PopoverHelper.prototype._handleMouseAction):
2062         * inspector/front-end/Resource.js:
2063         (WebInspector.Resource.prototype.get responseReceivedTime):
2064         (WebInspector.Resource.prototype.set endTime):
2065         (WebInspector.Resource.prototype.set timing):
2066         * inspector/front-end/ResourceManager.js:
2067         (WebInspector.ResourceManager.prototype.didReceiveResponse):
2068         (WebInspector.ResourceManager.prototype.didFinishLoading):
2069         * inspector/front-end/ResourcesPanel.js:
2070         (WebInspector.FrameResourceTreeElement.prototype._ondragstart):
2071         * inspector/front-end/networkPanel.css:
2072         (.network-sidebar .data-grid td:not(.network-summary)):
2073         (.network-sidebar .data-grid td.name-column):
2074         (.network.panel:not(.viewing-resource) .network-sidebar td.name-column:hover):
2075         (.network-timing-row):
2076         (.network-timing-bar):
2077         (.network-timing-bar-title):
2078         (.resource-timing-view):
2079
2080 2010-11-26  Helder Correia  <helder@sencha.com>
2081
2082         Reviewed by Ariya Hidayat.
2083
2084         [Qt] Blur shadow for rectangle fill
2085         https://bugs.webkit.org/show_bug.cgi?id=44488
2086
2087         Shadow color opacity needs to be set when blurring shadow with
2088         ContextShadow.
2089
2090         Test: fast/canvas/canvas-fillRect-shadow.html
2091
2092         * platform/graphics/qt/GraphicsContextQt.cpp:
2093         (WebCore::GraphicsContext::fillRect):
2094
2095 2010-11-26  Hans Wennborg  <hans@chromium.org>
2096
2097         Reviewed by Jeremy Orlow.
2098
2099         IndexedDB: Rename IDBDatabase.objectStores to objectStoreNames
2100         https://bugs.webkit.org/show_bug.cgi?id=50102
2101
2102         Rename as per the spec: http://dvcs.w3.org/hg/IndexedDB/raw-file/tip/Overview.html#database-interface
2103
2104         * manual-tests/indexeddb-persists.html:
2105         * storage/IDBDatabase.h:
2106         (WebCore::IDBDatabase::objectStoreNames):
2107         * storage/IDBDatabase.idl:
2108         * storage/IDBDatabaseBackendImpl.cpp:
2109         (WebCore::IDBDatabaseBackendImpl::objectStoreNames):
2110         (WebCore::IDBDatabaseBackendImpl::setVersion):
2111         (WebCore::IDBDatabaseBackendImpl::transaction):
2112         * storage/IDBDatabaseBackendImpl.h:
2113         * storage/IDBDatabaseBackendInterface.h:
2114
2115 2010-11-26  Andrei Popescu  <andreip@google.com>
2116
2117         Reviewed by Jeremy Orlow.
2118
2119         IDBFactory::open should not have a description argument.
2120         https://bugs.webkit.org/show_bug.cgi?id=50087
2121
2122         Modified exisiting tests to cover this change.
2123
2124         * storage/IDBDatabaseBackendImpl.cpp:
2125         (WebCore::setMetaData):
2126         (WebCore::IDBDatabaseBackendImpl::IDBDatabaseBackendImpl):
2127         (WebCore::IDBDatabaseBackendImpl::setVersionInternal):
2128         * storage/IDBDatabaseBackendImpl.h:
2129         (WebCore::IDBDatabaseBackendImpl::create):
2130         * storage/IDBDatabaseBackendInterface.h:
2131         * storage/IDBFactory.cpp:
2132         (WebCore::IDBFactory::open):
2133         * storage/IDBFactory.h:
2134         * storage/IDBFactory.idl:
2135         * storage/IDBFactoryBackendImpl.cpp:
2136         (WebCore::IDBFactoryBackendImpl::open):
2137         * storage/IDBFactoryBackendImpl.h:
2138         * storage/IDBFactoryBackendInterface.h:
2139
2140 2010-11-25  Kenichi Ishibashi  <bashi@google.com>
2141
2142         Reviewed by Kent Tamura.
2143
2144         Assertion failure by resetting <output> twice
2145         https://bugs.webkit.org/show_bug.cgi?id=50095
2146
2147         Don't call setTextContentInternal() when the value wouldn't
2148         be changed.
2149
2150         Test: fast/forms/output-reset-assertion-failed.html
2151
2152         * html/HTMLOutputElement.cpp:
2153         (WebCore::HTMLOutputElement::HTMLOutputElement): Calls
2154         setTextContentInternal() if and only if needed.
2155         (WebCore::HTMLOutputElement::reset): Ditto.
2156         (WebCore::HTMLOutputElement::setValue): Ditto.
2157         (WebCore::HTMLOutputElement::setDefaultValue): Ditto.
2158
2159 2010-11-24  Ryosuke Niwa  <rniwa@webkit.org>
2160
2161         Crash when moving caret around a word with a first-letter rule and whitespace is not collapsible.
2162         https://bugs.webkit.org/show_bug.cgi?id=49652
2163
2164         Fixed the crash by giving the correct end offset to emitText in handleTextNode.
2165
2166         This patch does not fix a bug in TextIterator that incorrectly calculates
2167         the end offset of a word with a first-letter rule as demonstrated in the layout test
2168         because fixing the bug requires an overhaul of TextIterator and new behavior is consistent
2169         with the case when whitespace is collapsible.
2170
2171         Test: editing/text-iterator/first-letter-word-boundary.html
2172
2173         * editing/TextIterator.cpp:
2174         (WebCore::TextIterator::handleTextNode):
2175
2176 2010-11-25  Mike Lawther  <mikelawther@chromium.org>
2177
2178         Reviewed by Kent Tamura.
2179
2180         Fix typos in CSS grammar (HERZ -> HERTZ)
2181         https://bugs.webkit.org/show_bug.cgi?id=50094
2182
2183         * css/CSSGrammar.y:
2184         * css/CSSParser.cpp:
2185         (WebCore::CSSParser::lex):
2186         * css/tokenizer.flex:
2187
2188 2010-11-25  Antti Koivisto  <antti@apple.com>
2189
2190         Reviewed by Dan Bernstein.
2191
2192         https://bugs.webkit.org/show_bug.cgi?id=50078
2193         Simplify CachedResource error handling code by getting rid of the m_httpStatusCodeErrorOccurred boolean.
2194
2195         * loader/cache/CachedImage.cpp:
2196         (WebCore::CachedImage::CachedImage):
2197         * loader/cache/CachedImage.h:
2198         (WebCore::CachedImage::shouldIgnoreHTTPStatusCodeErrors):
2199         * loader/cache/CachedResource.h:
2200         (WebCore::CachedResource::shouldIgnoreHTTPStatusCodeErrors):
2201         (WebCore::CachedResource::httpStatusCodeErrorOccurred):
2202         * loader/loader.cpp:
2203         (WebCore::Loader::didReceiveData):
2204
2205 2010-11-25  Andreas Kling  <kling@webkit.org>
2206
2207         Reviewed by Tor Arne Vestbø.
2208
2209         [Qt] Remove unnecessary save/restore in GraphicsContext::drawConvexPolygon()
2210         https://bugs.webkit.org/show_bug.cgi?id=50085
2211
2212         * platform/graphics/qt/GraphicsContextQt.cpp:
2213         (WebCore::GraphicsContext::drawConvexPolygon):
2214         Remember the previous antialiasing mode and reset it after we're done.
2215
2216 2010-11-25  Ben Murdoch  <benm@google.com>
2217
2218         Reviewed by Steve Block.
2219
2220         Potential crash in JavaClassV8.cpp
2221         https://bugs.webkit.org/show_bug.cgi?id=50016
2222
2223         It is possible that we attempt to free uninitialised
2224         memory in the JavaClass destrctor when using V8 in the
2225         case that the JVM could not find the class in the constructor.
2226
2227         It turns out that the troublesome m_name is not acutally
2228         used anywhere, so we remove it in this patch.
2229
2230         No new tests, just removing dead code.
2231
2232         * bridge/jni/v8/JavaClassV8.cpp: Remove unused m_name.
2233         * bridge/jni/v8/JavaClassV8.h: Ditto.
2234
2235 2010-11-25  Hans Wennborg  <hans@chromium.org>
2236
2237         Reviewed by Jeremy Orlow.
2238
2239         IndexedDB: Better errors for not yet implemented features
2240         https://bugs.webkit.org/show_bug.cgi?id=50075
2241
2242         Raise an exception if createObjectStore is called with autoIncrement
2243         set to true.
2244
2245         Be a little bit more explicit in IDBBindingUtilities that we don't
2246         allow using Date objects as keys yet.
2247
2248         * bindings/v8/IDBBindingUtilities.cpp:
2249         (WebCore::createIDBKeyFromValue):
2250         * storage/IDBDatabase.cpp:
2251         (WebCore::IDBDatabase::createObjectStore):
2252         * storage/IDBObjectStoreBackendImpl.cpp:
2253         (WebCore::IDBObjectStoreBackendImpl::putInternal):
2254
2255 2010-11-25  Pavel Feldman  <pfeldman@chromium.org>
2256
2257         Reviewed by Yury Semikhatsky.
2258
2259         Web Inspector: highlight diffs of revisions against base version.
2260         https://bugs.webkit.org/show_bug.cgi?id=50088
2261
2262         * inspector/front-end/CSSStyleModel.js:
2263         (WebInspector.CSSStyleModel.prototype._styleSheetChanged.callback):
2264         (WebInspector.CSSStyleModel.prototype._styleSheetChanged):
2265         * inspector/front-end/ResourcesPanel.js:
2266         (WebInspector.ResourcesPanel):
2267         (WebInspector.ResourcesPanel.prototype.show):
2268         (WebInspector.ResourcesPanel.prototype._showResourceView.callback):
2269         (WebInspector.ResourcesPanel.prototype._showResourceView):
2270         (WebInspector.ResourcesPanel.prototype._applyDiffMarkup):
2271         (WebInspector.FrameResourceTreeElement.prototype._contentChanged):
2272         * inspector/front-end/SourceFrame.js:
2273         (WebInspector.SourceFrame.prototype.markDiff):
2274         (WebInspector.SourceFrame.prototype._createViewerIfNeeded):
2275         (WebInspector.SourceFrame.prototype._updateDiffDecorations.addDecorations):
2276         (WebInspector.SourceFrame.prototype._updateDiffDecorations):
2277         (WebInspector.SourceFrame.prototype._removeDiffDecorations):
2278         * inspector/front-end/SourceView.js:
2279         * inspector/front-end/textViewer.css:
2280         (.webkit-line-number):
2281         (.diff-container .webkit-added-line .webkit-line-content):
2282         (.diff-container .webkit-removed-line .webkit-line-content):
2283         (.diff-container .webkit-changed-line .webkit-line-content):
2284         * inspector/front-end/utilities.js:
2285
2286 2010-11-25  Sheriff Bot  <webkit.review.bot@gmail.com>
2287
2288         Unreviewed, rolling out r72732.
2289         http://trac.webkit.org/changeset/72732
2290         https://bugs.webkit.org/show_bug.cgi?id=50089
2291
2292         Made Qt bot sad and crashy (Requested by Ossy on #webkit).
2293
2294         * platform/network/qt/QNetworkReplyHandler.cpp:
2295         (WebCore::QNetworkReplyHandler::QNetworkReplyHandler):
2296         * platform/network/qt/QNetworkReplyHandler.h:
2297         * platform/network/qt/ResourceHandleQt.cpp:
2298         (WebCore::WebCoreSynchronousLoader::didFinishLoading):
2299         (WebCore::WebCoreSynchronousLoader::didFail):
2300         (WebCore::ResourceHandle::loadResourceSynchronously):
2301
2302 2010-11-25  Sheriff Bot  <webkit.review.bot@gmail.com>
2303
2304         Unreviewed, rolling out r72734.
2305         http://trac.webkit.org/changeset/72734
2306         https://bugs.webkit.org/show_bug.cgi?id=50086
2307
2308         Backing out 72732 which made Qt sad and crashy (Requested by
2309         kling on #webkit).
2310
2311         * platform/network/qt/ResourceHandleQt.cpp:
2312         (WebCore::ResourceHandle::loadResourceSynchronously):
2313
2314 2010-11-25  Andreas Kling  <kling@webkit.org>
2315
2316         Unreviewed crash fix for Qt 4.6.x.
2317
2318         Check that QNetworkReplyHandler::reply() doesn't return null before
2319         using it (this code needs to work for Qt 4.6 as well.)
2320
2321         * platform/network/qt/ResourceHandleQt.cpp:
2322         (WebCore::ResourceHandle::loadResourceSynchronously):
2323
2324 2010-11-25  Sheriff Bot  <webkit.review.bot@gmail.com>
2325
2326         Unreviewed, rolling out r72727.
2327         http://trac.webkit.org/changeset/72727
2328         https://bugs.webkit.org/show_bug.cgi?id=50084
2329
2330         Broke dom-breakpoints test on chromium win (Requested by
2331         podivilov on #webkit).
2332
2333         * inspector/InspectorController.cpp:
2334         (WebCore::InspectorController::setNativeBreakpoint):
2335         * inspector/InspectorDOMAgent.cpp:
2336         (WebCore::InspectorDOMAgent::InspectorDOMAgent):
2337         (WebCore::InspectorDOMAgent::discardBindings):
2338         (WebCore::InspectorDOMAgent::setDOMBreakpoint):
2339         (WebCore::InspectorDOMAgent::removeDOMBreakpoint):
2340         (WebCore::InspectorDOMAgent::descriptionForDOMEvent):
2341         (WebCore::InspectorDOMAgent::removeBreakpointsForNode):
2342         (WebCore::InspectorDOMAgent::createBreakpointId):
2343         * inspector/InspectorDOMAgent.h:
2344         * inspector/front-end/BreakpointManager.js:
2345         (WebInspector.BreakpointManager.prototype.reset):
2346         (WebInspector.BreakpointManager.prototype.createDOMBreakpoint):
2347         (WebInspector.BreakpointManager.prototype._updateNativeBreakpointsInSettings):
2348         (WebInspector.BreakpointManager.prototype.restoreBreakpoints):
2349         (WebInspector.BreakpointManager.prototype.restoreDOMBreakpoints):
2350         (WebInspector.DOMBreakpoint):
2351         (WebInspector.DOMBreakpoint.prototype.populateLabelElement):
2352         (WebInspector.EventListenerBreakpoint):
2353         (WebInspector.XHRBreakpoint):
2354         * inspector/front-end/BreakpointsSidebarPane.js:
2355         (WebInspector.BreakpointsSidebarPane):
2356         (WebInspector.BreakpointsSidebarPane.prototype.reset):
2357         (WebInspector.EventListenerBreakpointsSidebarPane):
2358         (WebInspector.EventListenerBreakpointsSidebarPane.prototype.reset):
2359         * inspector/front-end/DOMAgent.js:
2360         (WebInspector.DOMAgent.prototype._setDocument):
2361         * inspector/front-end/ElementsPanel.js:
2362         (WebInspector.ElementsPanel.prototype.reset):
2363         * inspector/front-end/ElementsTreeOutline.js:
2364         (WebInspector.ElementsTreeElement.prototype._populateTagContextMenu.handlerFunction):
2365         (WebInspector.ElementsTreeElement.prototype._populateTagContextMenu):
2366         * inspector/front-end/ScriptsPanel.js:
2367         (WebInspector.ScriptsPanel.prototype.reset):
2368         * inspector/front-end/inspector.js:
2369         (WebInspector.reset):
2370         (WebInspector.didCommitLoad):
2371
2372 2010-11-25  Peter Hartmann  <peter.hartmann@nokia.com>
2373
2374         Reviewed by Andreas Kling.
2375
2376         [Qt] enable usage of synchronous HTTP feature in Qt
2377         https://bugs.webkit.org/show_bug.cgi?id=37191
2378
2379         Currently, we spin an event loop when doing synchronous calls to
2380         wait for completion. This patch uses synchronous requests in Qt,
2381         if available, and spins the event loop as a fallback solution.
2382         Patch by Simon Hausmann and Peter Hartmann.
2383
2384         * platform/network/qt/QNetworkReplyHandler.cpp:
2385         (WebCore::QNetworkReplyHandler::QNetworkReplyHandler):
2386         * platform/network/qt/QNetworkReplyHandler.h:
2387         * platform/network/qt/ResourceHandleQt.cpp:
2388         (WebCore::WebCoreSynchronousLoader::setReplyFinished):
2389         (WebCore::WebCoreSynchronousLoader::WebCoreSynchronousLoader):
2390         (WebCore::WebCoreSynchronousLoader::didFinishLoading):
2391         (WebCore::WebCoreSynchronousLoader::didFail):
2392         (WebCore::WebCoreSynchronousLoader::waitForCompletion):
2393         (WebCore::ResourceHandle::loadResourceSynchronously):
2394
2395 2010-11-25  Hans Wennborg  <hans@chromium.org>
2396
2397         Reviewed by Jeremy Orlow.
2398
2399         V8 Bindings: remove faulty include in OptionsObject.h
2400         https://bugs.webkit.org/show_bug.cgi?id=50073
2401
2402         There is no <wtf/NonCopyable.h>, and the code doesn't try to use it
2403         either.
2404
2405         No new functionality, no new tests.
2406
2407         * bindings/v8/OptionsObject.h:
2408
2409 2010-11-25  Kenneth Rohde Christiansen  <kenneth@webkit.org>
2410
2411         Reviewed by Simon Hausmann.
2412
2413         Actually handle targetDensityDpi in computeViewportAttributes
2414         https://bugs.webkit.org/show_bug.cgi?id=50068
2415
2416         * dom/ViewportArguments.cpp:
2417         (WebCore::computeViewportAttributes):
2418
2419 2010-11-25  Jeremy Orlow  <jorlow@chromium.org>
2420
2421         Reviewed by Steve Block.
2422
2423         Add an OptionsObject class for IndexedDB (and later Geolocation)
2424         https://bugs.webkit.org/show_bug.cgi?id=50030
2425
2426         Geolocation and IndexedDB both have the concept of an optional
2427         parameter that has various options supplied with it.  In
2428         Geolocation this was done with custom bindings, but I'm trying to
2429         avoid that for IndexedDB.  
2430
2431         This first patch implements it in V8 and makes createObjectStore use it.
2432         The next patch will cover Geolocation and JSC.
2433
2434         Test: storage/indexeddb/create-object-store-options.html
2435
2436         * WebCore.gypi:
2437         * bindings/scripts/CodeGeneratorV8.pm:
2438         * bindings/scripts/test/CPP/WebDOMTestObj.cpp:
2439         (WebDOMTestObj::optionsObject):
2440         * bindings/scripts/test/CPP/WebDOMTestObj.h:
2441         * bindings/scripts/test/GObject/WebKitDOMTestCallback.cpp:
2442         * bindings/scripts/test/GObject/WebKitDOMTestInterface.cpp:
2443         * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListener.cpp:
2444         * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
2445         (webkit_dom_test_obj_options_object):
2446         * bindings/scripts/test/GObject/WebKitDOMTestObj.h:
2447         * bindings/scripts/test/JS/JSTestObj.cpp:
2448         (WebCore::jsTestObjPrototypeFunctionOptionsObject):
2449         * bindings/scripts/test/JS/JSTestObj.h:
2450         * bindings/scripts/test/ObjC/DOMTestObj.h:
2451         * bindings/scripts/test/ObjC/DOMTestObj.mm:
2452         (-[DOMTestObj optionsObject:ooo:]):
2453         * bindings/scripts/test/TestObj.idl:
2454         * bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp:
2455         (WebCore::ConfigureV8TestMediaQueryListListenerTemplate):
2456         * bindings/scripts/test/V8/V8TestObj.cpp:
2457         (WebCore::TestObjInternal::optionsObjectCallback):
2458         * bindings/v8/OptionsObject.cpp: Added.
2459         (WebCore::OptionsObject::OptionsObject):
2460         (WebCore::OptionsObject::~OptionsObject):
2461         (WebCore::OptionsObject::operator=):
2462         (WebCore::OptionsObject::undefinedOrNull):
2463         (WebCore::OptionsObject::getKeyBool):
2464         (WebCore::OptionsObject::getKeyString):
2465         (WebCore::OptionsObject::getKey):
2466         * bindings/v8/OptionsObject.h:
2467         * bindings/js/OptionsObject.h:
2468         * storage/IDBDatabase.cpp:
2469         (WebCore::IDBDatabase::createObjectStore):
2470         * storage/IDBDatabase.h:
2471         (WebCore::IDBDatabase::createObjectStore):
2472         * storage/IDBDatabase.idl:
2473
2474 2010-11-24  Pavel Podivilov  <podivilov@chromium.org>
2475
2476         Reviewed by Yury Semikhatsky.
2477
2478         Web Inspector: set DOM breakpoints by path.
2479         https://bugs.webkit.org/show_bug.cgi?id=50017
2480
2481         This change is needed to be able to push DOM breakpoints for all URL's to backend
2482         at frontend load.
2483
2484         * inspector/InspectorController.cpp:
2485         (WebCore::InspectorController::setNativeBreakpoint):
2486         * inspector/InspectorDOMAgent.cpp:
2487         (WebCore::InspectorDOMAgent::InspectorDOMAgent):
2488         (WebCore::InspectorDOMAgent::discardBindings):
2489         (WebCore::InspectorDOMAgent::setDOMBreakpoint):
2490         (WebCore::InspectorDOMAgent::removeDOMBreakpoint):
2491         (WebCore::InspectorDOMAgent::descriptionForDOMEvent):
2492         (WebCore::InspectorDOMAgent::removeBreakpointsForNode):
2493         * inspector/InspectorDOMAgent.h:
2494         * inspector/front-end/BreakpointManager.js:
2495         (WebInspector.BreakpointManager.prototype.reset):
2496         (WebInspector.BreakpointManager.prototype.createDOMBreakpoint):
2497         (WebInspector.BreakpointManager.prototype._updateNativeBreakpointsInSettings):
2498         (WebInspector.BreakpointManager.prototype.restoreBreakpoints):
2499         (WebInspector.DOMBreakpoint):
2500         (WebInspector.DOMBreakpoint.prototype._setNodeId):
2501         (WebInspector.DOMBreakpoint.prototype.populateLabelElement):
2502         (WebInspector.EventListenerBreakpoint):
2503         (WebInspector.XHRBreakpoint):
2504         * inspector/front-end/BreakpointsSidebarPane.js:
2505         (WebInspector.BreakpointsSidebarPane):
2506         (WebInspector.BreakpointsSidebarPane.prototype._reset):
2507         (WebInspector.EventListenerBreakpointsSidebarPane):
2508         (WebInspector.EventListenerBreakpointsSidebarPane.prototype._reset):
2509         * inspector/front-end/DOMAgent.js:
2510         (WebInspector.DOMAgent.prototype._setDocument):
2511         * inspector/front-end/ElementsPanel.js:
2512         (WebInspector.ElementsPanel.prototype.reset):
2513         * inspector/front-end/ElementsTreeOutline.js:
2514         (WebInspector.ElementsTreeElement.prototype._populateTagContextMenu.handlerFunction):
2515         (WebInspector.ElementsTreeElement.prototype._populateTagContextMenu):
2516         * inspector/front-end/ScriptsPanel.js:
2517         (WebInspector.ScriptsPanel.prototype.reset):
2518         * inspector/front-end/inspector.js:
2519         (WebInspector.reset):
2520         (WebInspector.didCommitLoad):
2521
2522 2010-11-25  Pavel Feldman  <pfeldman@chromium.org>
2523
2524         Reviewed by Yury Semikhatsky.
2525
2526         Web Inspector: reuse code for recreating resource views.
2527         https://bugs.webkit.org/show_bug.cgi?id=50066
2528
2529         * inspector/front-end/NetworkItemView.js:
2530         (WebInspector.NetworkItemView):
2531         * inspector/front-end/NetworkPanel.js:
2532         (WebInspector.NetworkPanel.prototype.refreshResource):
2533         * inspector/front-end/ResourceManager.js:
2534         (WebInspector.ResourceManager.resourceViewTypeMatchesResource):
2535         (WebInspector.ResourceManager.resourceViewForResource):
2536         (WebInspector.ResourceManager.recreateResourceView):
2537         * inspector/front-end/ResourcesPanel.js:
2538         (WebInspector.FrameResourceTreeElement.prototype._contentChanged):
2539
2540 2010-11-25  Hans Wennborg  <hans@chromium.org>
2541
2542         Reviewed by Jeremy Orlow.
2543
2544         IndexedDB: Disallow inserting records with NULL keys
2545         https://bugs.webkit.org/show_bug.cgi?id=50033
2546
2547         Disallow inserting records with null keys into the object store.
2548
2549         * storage/IDBKey.h:
2550         * storage/IDBObjectStoreBackendImpl.cpp:
2551         (WebCore::IDBObjectStoreBackendImpl::putInternal):
2552
2553 2010-11-25  Philippe Normand  <pnormand@igalia.com>
2554
2555         Rubber-stamped by Xan Lopez.
2556
2557         g_signal_accumulator_first_wins was introduced in glib 2.27.1 so
2558         no need to use our version if that version of glib is used during
2559         the build.
2560
2561         * platform/gtk/GtkVersioning.c:
2562         * platform/gtk/GtkVersioning.h:
2563
2564 2010-11-24  Jian Li  <jianli@chromium.org>
2565
2566         Reviewed by Kenneth Russell.
2567
2568         Implement DataView interface from Typed Array specification
2569         https://bugs.webkit.org/show_bug.cgi?id=46541
2570
2571         Test: fast/canvas/webgl/data-view-test.html
2572
2573         * CMakeLists.txt:
2574         * DerivedSources.make:
2575         * GNUmakefile.am:
2576         * WebCore.gypi:
2577         * WebCore.pri:
2578         * WebCore.pro:
2579         * WebCore.xcodeproj/project.pbxproj:
2580         * bindings/generic/RuntimeEnabledFeatures.h:
2581         (WebCore::RuntimeEnabledFeatures::dataViewEnabled):
2582         * bindings/js/JSArrayBufferViewHelper.h:
2583         (WebCore::constructArrayBufferViewWithArrayBufferArgument):
2584         (WebCore::constructArrayBufferView):
2585         * bindings/js/JSDOMWindowCustom.cpp:
2586         (WebCore::JSDOMWindow::dataView):
2587         * bindings/js/JSDataViewCustom.cpp: Added.
2588         * bindings/js/JSFloat32ArrayCustom.cpp:
2589         (WebCore::JSFloat32ArrayConstructor::constructJSFloat32Array):
2590         * bindings/js/JSInt16ArrayCustom.cpp:
2591         (WebCore::JSInt16ArrayConstructor::constructJSInt16Array):
2592         * bindings/js/JSInt32ArrayCustom.cpp:
2593         (WebCore::JSInt32ArrayConstructor::constructJSInt32Array):
2594         * bindings/js/JSInt8ArrayCustom.cpp:
2595         (WebCore::JSInt8ArrayConstructor::constructJSInt8Array):
2596         * bindings/js/JSUint16ArrayCustom.cpp:
2597         (WebCore::JSUint16ArrayConstructor::constructJSUint16Array):
2598         * bindings/js/JSUint32ArrayCustom.cpp:
2599         (WebCore::JSUint32ArrayConstructor::constructJSUint32Array):
2600         * bindings/js/JSUint8ArrayCustom.cpp:
2601         (WebCore::JSUint8ArrayConstructor::constructJSUint8Array):
2602         * bindings/v8/custom/V8ArrayBufferViewCustom.h:
2603         (WebCore::constructWebGLArrayWithArrayBufferArgument):
2604         (WebCore::constructWebGLArray):
2605         * bindings/v8/custom/V8DataViewCustom.cpp: Added.
2606         * html/canvas/ArrayBufferView.h:
2607         (WebCore::ArrayBufferView::isDataView):
2608         * html/canvas/DataView.cpp: Added.
2609         * html/canvas/DataView.h: Added.
2610         * html/canvas/DataView.idl: Added.
2611         * page/DOMWindow.idl:
2612
2613 2010-11-24  Nicolas Dufresne  <nicolas.dufresne@collabora.co.uk>
2614
2615         Reviewed by Martin Robinson.
2616
2617         [GTK] Windowless plugins gets broken key input
2618         https://bugs.webkit.org/show_bug.cgi?id=49927
2619
2620         When converting the GdkEvent to XEvent we need to send the
2621         hardware_keycode as XEvent::keycode. Instead we where sending
2622         the GdkEvent::keyval. This is already tested by
2623         plugins/keyboard-events.html, but a bug in the test plugin was
2624         resulting in false positive.
2625
2626         * plugins/gtk/PluginViewGtk.cpp:
2627         (WebCore::PluginView::handleKeyboardEvent):
2628
2629 2010-11-24  Eric Uhrhane  <ericu@chromium.org>
2630
2631         Reviewed by David Levin.
2632
2633         Implement FileWriterSync
2634         https://bugs.webkit.org/show_bug.cgi?id=49939
2635
2636         Tests to follow in a separate CL, once the test framework in 47680 goes in.
2637
2638         Build file changes to add FileWriterBase and FileWriterBaseCallback.
2639         * CMakeLists.txt:
2640         * GNUmakefile.am:
2641         * WebCore.gypi:
2642         * WebCore.pro:
2643         * WebCore.vcproj/WebCore.vcproj:
2644         * WebCore.xcodeproj/project.pbxproj:
2645
2646         FileWriterSync doesn't turn out to need to be an ActiveDOMObject.
2647         * bindings/scripts/CodeGeneratorV8.pm:
2648
2649         Added new AsyncFileWriter::waitForOperationToComplete to enable
2650         synchronous calls.
2651         * fileapi/AsyncFileWriter.h:
2652
2653         Added a way to get a FileSystemSync.
2654         * fileapi/DOMFileSystemSync.cpp:
2655         * fileapi/FileEntrySync.cpp:
2656         * fileapi/FileEntrySync.h:
2657         * fileapi/FileEntrySync.idl:
2658
2659         Added an error code for OK, rather than just having 0 everywhere.
2660         * fileapi/FileError.h:
2661
2662         Turned FileWriterCallback into FileWriterBaseCallback.
2663         * fileapi/FileSystemCallbacks.cpp:
2664         * fileapi/FileSystemCallbacks.h:
2665
2666         Refactored out a common base class, FileWriterBase, for FileWriter and
2667         FileWriterSync.
2668         * fileapi/FileWriter.cpp:
2669         * fileapi/FileWriter.h:
2670         * fileapi/FileWriterBase.cpp: Added.
2671         * fileapi/FileWriterBase.h: Added.
2672         * fileapi/FileWriterBaseCallback.h: Added.
2673         * fileapi/FileWriterSync.cpp:
2674         * fileapi/FileWriterSync.h:
2675
2676         Small tweaks to deal with the base class refactoring.
2677         * fileapi/DOMFileSystem.cpp:
2678         * fileapi/DOMFileSystemSync.h:
2679
2680         Removed "CallWith=ScriptExecutionContext", as FileWriterSync doesn't actually need it.
2681         * fileapi/FileWriterSync.idl:
2682
2683 2010-11-24  Martin Robinson  <mrobinson@igalia.com>
2684
2685         Reviewed by Xan Lopez.
2686
2687         Build fix for GTK+. There were some typos in my last build fix
2688         and the empty command (semicolon) seems to be necessary for wildcard
2689         rule chains.
2690
2691         * GNUmakefile.am: Small build fixes.
2692
2693 2010-11-24  James Robinson  <jamesr@chromium.org>
2694
2695         Reviewed by Kenneth Russell.
2696
2697         [chromium] Compositor needs to manage its VRAM use
2698         https://bugs.webkit.org/show_bug.cgi?id=49629
2699
2700         This adds a basic texture manager to the Chromium compositor to limit the amount of VRAM
2701         used by compositor textures and switches ContentLayerChromium, ImageLayerChromium, and
2702         RenderSurfaceChromium to use managed LayerTexture.  The other *LayerChromium classes (Canvas,
2703         Video, and WebGL) and the root layer are still unmanaged.
2704
2705         The TextureManager works by providing tokens to callers that want to use a managed texture.
2706         The token can be used to request a texture, see if the previously requested texture is still
2707         available, and to protect/unprotect textures when they cannot be collected.  Whenever a
2708         texture is created the manager attempts to free up the least recently used textures until the
2709         total memory use is below the provided threshhold.  If the manager cannot satisfy the memory
2710         limit it will not return any new textures until some old textures are released.
2711
2712         A LayerTexture wraps a TextureManager token, size, and format.  A LayerChromium can check if a
2713         previously requested texture is still available for use and reserve the LayerTexture's underlying
2714         storage between the updateContentsIfDirty() and the draw() call.
2715
2716         Also changes LayerChromium from having separate contentsDirty()/updateContents() calls to a single
2717         updateContentsIfDirty().
2718
2719         Tests: compositing/lots-of-img-layers-with-opacity.html
2720                compositing/lots-of-img-layers.html
2721
2722         * WebCore.gypi:
2723         * platform/graphics/chromium/Canvas2DLayerChromium.cpp:
2724         (WebCore::Canvas2DLayerChromium::updateContentsIfDirty):
2725         * platform/graphics/chromium/Canvas2DLayerChromium.h:
2726         * platform/graphics/chromium/ContentLayerChromium.cpp:
2727         (WebCore::ContentLayerChromium::cleanupResources):
2728         (WebCore::ContentLayerChromium::updateContentsIfDirty):
2729         (WebCore::ContentLayerChromium::updateTextureRect):
2730         (WebCore::ContentLayerChromium::draw):
2731         * platform/graphics/chromium/ContentLayerChromium.h:
2732         * platform/graphics/chromium/ImageLayerChromium.cpp:
2733         (WebCore::ImageLayerChromium::updateContentsIfDirty):
2734         * platform/graphics/chromium/ImageLayerChromium.h:
2735         * platform/graphics/chromium/LayerChromium.h:
2736         (WebCore::LayerChromium::updateContentsIfDirty):
2737         (WebCore::LayerChromium::draw):
2738         * platform/graphics/chromium/LayerRendererChromium.cpp:
2739         (WebCore::LayerRendererChromium::LayerRendererChromium):
2740         (WebCore::LayerRendererChromium::prepareToDrawLayers):
2741         (WebCore::LayerRendererChromium::drawLayers):
2742         (WebCore::LayerRendererChromium::updateLayersRecursive):
2743         (WebCore::LayerRendererChromium::useRenderSurface):
2744         (WebCore::LayerRendererChromium::drawLayer):
2745         (WebCore::LayerRendererChromium::initializeSharedObjects):
2746         (WebCore::LayerRendererChromium::cleanupSharedObjects):
2747         * platform/graphics/chromium/LayerRendererChromium.h:
2748         (WebCore::LayerRendererChromium::renderSurfaceSharedValues):
2749         (WebCore::LayerRendererChromium::textureManager):
2750         * platform/graphics/chromium/LayerTexture.cpp: Added.
2751         (WebCore::LayerTexture::LayerTexture):
2752         (WebCore::LayerTexture::~LayerTexture):
2753         (WebCore::LayerTexture::isValid):
2754         (WebCore::LayerTexture::reserve):
2755         (WebCore::LayerTexture::unreserve):
2756         (WebCore::LayerTexture::bindTexture):
2757         (WebCore::LayerTexture::framebufferTexture2D):
2758         * platform/graphics/chromium/LayerTexture.h: Added.
2759         (WebCore::LayerTexture::create):
2760         * platform/graphics/chromium/PluginLayerChromium.cpp:
2761         (WebCore::PluginLayerChromium::updateContentsIfDirty):
2762         * platform/graphics/chromium/PluginLayerChromium.h:
2763         * platform/graphics/chromium/RenderSurfaceChromium.cpp:
2764         (WebCore::RenderSurfaceChromium::SharedValues::SharedValues):
2765         (WebCore::RenderSurfaceChromium::SharedValues::~SharedValues):
2766         (WebCore::RenderSurfaceChromium::RenderSurfaceChromium):
2767         (WebCore::RenderSurfaceChromium::cleanupResources):
2768         (WebCore::RenderSurfaceChromium::prepareContentsTexture):
2769         (WebCore::RenderSurfaceChromium::draw):
2770         * platform/graphics/chromium/RenderSurfaceChromium.h:
2771         (WebCore::RenderSurfaceChromium::SharedValues::shaderProgram):
2772         (WebCore::RenderSurfaceChromium::SharedValues::shaderSamplerLocation):
2773         (WebCore::RenderSurfaceChromium::SharedValues::shaderMatrixLocation):
2774         (WebCore::RenderSurfaceChromium::SharedValues::shaderAlphaLocation):
2775         (WebCore::RenderSurfaceChromium::SharedValues::initialized):
2776         * platform/graphics/chromium/TextureManager.cpp: Added.
2777         (WebCore::memoryUseBytes):
2778         (WebCore::TextureManager::TextureManager):
2779         (WebCore::TextureManager::getToken):
2780         (WebCore::TextureManager::releaseToken):
2781         (WebCore::TextureManager::hasTexture):
2782         (WebCore::TextureManager::protectTexture):
2783         (WebCore::TextureManager::unprotectTexture):
2784         (WebCore::TextureManager::reduceMemoryToLimit):
2785         (WebCore::TextureManager::addTexture):
2786         (WebCore::TextureManager::removeTexture):
2787         (WebCore::TextureManager::requestTexture):
2788         * platform/graphics/chromium/TextureManager.h: Added.
2789         (WebCore::TextureManager::create):
2790         * platform/graphics/chromium/VideoLayerChromium.cpp:
2791         (WebCore::VideoLayerChromium::updateContentsIfDirty):
2792         * platform/graphics/chromium/VideoLayerChromium.h:
2793         * platform/graphics/chromium/WebGLLayerChromium.cpp:
2794         (WebCore::WebGLLayerChromium::updateContentsIfDirty):
2795         * platform/graphics/chromium/WebGLLayerChromium.h:
2796
2797 2010-11-24  Nicolas Dufresne  <nicolas.dufresne@collabora.co.uk>
2798
2799         Reviewed by Martin Robinson.
2800
2801         [GTK] response.isNull() assert when using directory file URI
2802         https://bugs.webkit.org/show_bug.cgi?id=49018
2803
2804         Do ensure that didReceiveResponse happens before any call to
2805         didReceiveData. That was not true for file:// URIs pointing to
2806         directories and thus was triggering an assertion.
2807
2808         Test: platform/gtk/fast/loader/crash-display-local-directory.html
2809
2810         * platform/network/soup/ResourceHandleSoup.cpp:
2811         (WebCore::gotHeadersCallback):
2812         (WebCore::contentSniffedCallback):
2813         (WebCore::parseDataUrl):
2814         (WebCore::sendRequestCallback):
2815         (WebCore::readCallback):
2816
2817 2010-11-24  Xan Lopez  <xlopez@igalia.com>
2818
2819         Reviewed by Martin Robinson.
2820
2821         * bindings/gobject/WebKitDOMBinding.h: fix stlye nit.
2822
2823 2010-11-24  Xan Lopez  <xlopez@igalia.com>
2824
2825         Reviewed by Martin Robinson.
2826
2827         [GTK] Make kit() methods return the proper type instead of gpointer
2828         https://bugs.webkit.org/show_bug.cgi?id=50034
2829
2830         Change kit() methods to return proper type pointer.
2831
2832         * bindings/gobject/WebKitDOMBinding.cpp: change implementions of
2833         kit methods.
2834         * bindings/gobject/WebKitDOMBinding.h: change their declarations.
2835         * bindings/scripts/CodeGeneratorGObject.pm: change the generated
2836         kit() methods.
2837
2838 2010-11-24  Martin Robinson  <mrobinson@igalia.com>
2839
2840         Reviewed by Xan Lopez.
2841
2842         [GTK] DerivedSources/WebCore/DocTypeStrings.cpp is generated for every build
2843         https://bugs.webkit.org/show_bug.cgi?id=50032
2844
2845         Instead of listing two targets for rules that have two outputs, make
2846         a dependency chain. This fixes the issue where some files are generated
2847         unconditionally. Also remove all unnecessary semicolons from the file.
2848
2849         No new tests as this is just a build fix.
2850
2851         * GNUmakefile.am: Fix GNUmake dependency issue.
2852
2853 2010-11-24  Nico Weber  <nicolasweber@gmx.de>
2854
2855         Reviewed by Adam Barth.
2856
2857         Chromium/Mac: Make scaled images un-ugly when using the webkit image decoders
2858         https://bugs.webkit.org/show_bug.cgi?id=49965
2859
2860         Probably covered by existing tests whose expectations were overwritten
2861         in http://trac.webkit.org/changeset/70858
2862
2863         * platform/image-decoders/cg/ImageDecoderCG.cpp:
2864         (WebCore::RGBA32Buffer::asNewNativeImage):
2865
2866 2010-11-24  Alexander Pavlov  <apavlov@chromium.org>
2867
2868         Reviewed by Pavel Feldman.
2869
2870         Web Inspector: Crash when inspecting http://alphaarnhem.nl/beta/
2871         https://bugs.webkit.org/show_bug.cgi?id=50025
2872
2873         @font-face rules were improperly handled by source data extractor.
2874
2875         * css/CSSParser.cpp:
2876         (WebCore::CSSParser::CSSParser):
2877         (WebCore::CSSParser::parseDeclaration):
2878         (WebCore::CSSParser::createStyleRule):
2879         (WebCore::CSSParser::markRuleBodyStart):
2880         (WebCore::CSSParser::markPropertyStart):
2881         (WebCore::CSSParser::markPropertyEnd):
2882         * css/CSSParser.h:
2883
2884 2010-11-24  Cris Neckar  <cdn@chromium.org>
2885
2886         Reviewed by Adam Barth.
2887
2888         Added check when parsing local fonts to ensure that a value's unit type is either string or ident.
2889         https://bugs.webkit.org/show_bug.cgi?id=49883
2890
2891         Test: fast/css/local_font_invalid.html
2892
2893         * css/CSSParser.cpp:
2894         (WebCore::CSSParser::parseFontFaceSrc):
2895
2896 2010-11-24  Pavel Feldman  <pfeldman@chromium.org>
2897
2898         Reviewed by Yury Semikhatsky.
2899
2900         Web Inspector: place local modifications to under original
2901         resource nodes in the resource panel.
2902         https://bugs.webkit.org/show_bug.cgi?id=50029
2903
2904         * English.lproj/localizedStrings.js:
2905         * inspector/Inspector.idl:
2906         * inspector/InspectorController.cpp:
2907         (WebCore::InspectorController::resourceRetrievedByXMLHttpRequest):
2908         (WebCore::InspectorController::scriptImported):
2909         * inspector/InspectorResourceAgent.cpp:
2910         (WebCore::InspectorResourceAgent::setInitialContent):
2911         * inspector/InspectorResourceAgent.h:
2912         * inspector/front-end/CSSStyleModel.js:
2913         (WebInspector.CSSStyleModel.prototype.setRuleSelector):
2914         (WebInspector.CSSStyleModel.prototype.addRule):
2915         (WebInspector.CSSStyleModel.prototype._styleSheetChanged.callback):
2916         (WebInspector.CSSStyleModel.prototype._styleSheetChanged):
2917         (WebInspector.CSSStyleDeclaration.prototype.insertPropertyAt):
2918         (WebInspector.CSSProperty.prototype.setText):
2919         (WebInspector.CSSProperty.prototype.setDisabled.callback):
2920         (WebInspector.CSSProperty.prototype.setDisabled):
2921         (WebInspector.CSSStyleSheet.prototype.setText):
2922         * inspector/front-end/NetworkPanel.js:
2923         (WebInspector.NetworkPanel.prototype.refreshResource):
2924         * inspector/front-end/Resource.js:
2925         (WebInspector.Resource.prototype.set content):
2926         (WebInspector.Resource.prototype.get contentTimestamp):
2927         (WebInspector.Resource.prototype.setInitialContent):
2928         * inspector/front-end/ResourceManager.js:
2929         (WebInspector.ResourceManager):
2930         (WebInspector.ResourceManager.prototype.setInitialContent):
2931         * inspector/front-end/ResourcesPanel.js:
2932         (WebInspector.ResourcesPanel):
2933         (WebInspector.ResourcesPanel.prototype.reset):
2934         (WebInspector.ResourcesPanel.prototype._innerShowView):
2935         (WebInspector.FrameResourceTreeElement):
2936         (WebInspector.FrameResourceTreeElement.prototype._errorsWarningsUpdated):
2937         (WebInspector.FrameResourceTreeElement.prototype._contentChanged.else.finished):
2938         (WebInspector.FrameResourceTreeElement.prototype._contentChanged):
2939         (WebInspector.ResourceRevisionTreeElement):
2940         * inspector/front-end/SourceFrame.js:
2941         (WebInspector.SourceFrame.prototype.get scrollTop):
2942         (WebInspector.SourceFrame.prototype.set scrollTop):
2943         * inspector/front-end/SourceView.js:
2944         (WebInspector.SourceView.prototype.get scrollTop):
2945         (WebInspector.SourceView.prototype.set scrollTop):
2946         (WebInspector.SourceView.prototype._editLine):
2947         (WebInspector.SourceView.prototype._editLineComplete):
2948         * inspector/front-end/StylesSidebarPane.js:
2949         (WebInspector.StylePropertyTreeElement.prototype):
2950
2951 2010-11-24  Andrey Kosyakov  <caseq@chromium.org>
2952
2953         Reviewed by Pavel Feldman.
2954
2955         Web Inspector: extension API cleanup
2956         https://bugs.webkit.org/show_bug.cgi?id=50019
2957
2958         * inspector/front-end/ElementsPanel.js:
2959         (WebInspector.ElementsPanel.this.treeOutline.focusedNodeChanged):
2960         (WebInspector.ElementsPanel):
2961         * inspector/front-end/ExtensionAPI.js: See bug for summary of extension API changes.
2962         (WebInspector.injectedExtensionAPI.Resources.resourceDispatch):
2963         (WebInspector.injectedExtensionAPI):
2964         (WebInspector.injectedExtensionAPI.Resources.prototype.getHAR):
2965         (WebInspector.injectedExtensionAPI.ResourceImpl.prototype.getContent):
2966         (WebInspector.injectedExtensionAPI.Panels.prototype.create):
2967         (WebInspector.injectedExtensionAPI.PanelImpl):
2968         (WebInspector.injectedExtensionAPI.PanelWithSidebarImpl):
2969         (WebInspector.injectedExtensionAPI.PanelWithSidebarImpl.prototype.createSidebarPane):
2970         (WebInspector.injectedExtensionAPI.PanelWithSidebarImpl.prototype.createWatchExpressionSidebarPane):
2971         (WebInspector.injectedExtensionAPI.ElementsPanel):
2972         (WebInspector.injectedExtensionAPI.ExtensionSidebarPaneImpl.prototype.setHeight):
2973         (WebInspector.injectedExtensionAPI.Audits.prototype.addCategory):
2974         (WebInspector.injectedExtensionAPI.AuditCategoryImpl.auditResultDispatch):
2975         (WebInspector.injectedExtensionAPI.AuditCategoryImpl):
2976         (WebInspector.injectedExtensionAPI.AuditResultImpl.prototype.get Severity):
2977         (WebInspector.injectedExtensionAPI.InspectedWindow):
2978         (WebInspector.injectedExtensionAPI.InspectedWindow.prototype.eval):
2979         * inspector/front-end/ExtensionCommon.js:
2980         (WebInspector.commonExtensionSymbols):
2981         * inspector/front-end/ExtensionServer.js:
2982         (WebInspector.ExtensionServer):
2983         (WebInspector.ExtensionServer.prototype.notifyObjectSelected):
2984         (WebInspector.ExtensionServer.prototype.notifyResourceFinished):
2985         (WebInspector.ExtensionServer.prototype.notifyPageLoaded):
2986         (WebInspector.ExtensionServer.prototype.notifyPageDOMContentLoaded):
2987         (WebInspector.ExtensionServer.prototype._onCreatePanel):
2988         (WebInspector.ExtensionServer.prototype._onReload):
2989         (WebInspector.ExtensionServer.prototype._onGetHAR):
2990         (WebInspector.ExtensionServer.prototype._onGetResourceContent):
2991         (WebInspector.ExtensionServer.prototype._onAddAuditCategory):
2992         (WebInspector.ExtensionServer.prototype._buildExtensionAPIInjectedScript):
2993         * inspector/front-end/HAREntry.js:
2994         (WebInspector.HARLog):
2995         (WebInspector.HARLog.prototype.build):
2996         (WebInspector.HARLog.prototype._convertResource):
2997         * inspector/front-end/inspector.js:
2998         (WebInspector.domContentEventFired):
2999         (WebInspector.loadEventFired):
3000         (WebInspector.didCommitLoad):
3001
3002 2010-11-23  Jeremy Orlow  <jorlow@chromium.org>
3003
3004         Reviewed by Steve Block.
3005
3006         Fix minor errors in IndexedDB
3007         https://bugs.webkit.org/show_bug.cgi?id=49970
3008
3009         * Remove SNAPSHOT_READ per spec.
3010         * Assert that the transaction that changes the db is a setVersion
3011           transaction.
3012         * When an objectStore already exists, throw a CONSTRAINT_ERR.
3013         * When not in a setVersion transaction, throw a NOT_ALLOWED_ERR.
3014
3015         Test: storage/indexeddb/createAndRemoveObjectStore.html
3016
3017         * storage/IDBDatabase.cpp:
3018         (WebCore::IDBDatabase::createObjectStore):
3019         * storage/IDBDatabaseBackendImpl.cpp:
3020         (WebCore::IDBDatabaseBackendImpl::createObjectStore):
3021         * storage/IDBTransaction.h:
3022         * storage/IDBTransaction.idl:
3023
3024 2010-11-24  Philippe Normand  <pnormand@igalia.com>
3025
3026         Reviewed by Xan Lopez.
3027
3028         [GStreamer] pause webkitvideosink during fullscreen video playback
3029         https://bugs.webkit.org/show_bug.cgi?id=48824
3030
3031         Added an identity element before the webkitvideosink so that when
3032         fullscreen video is active the element can drop the incoming
3033         buffers so that webkitvideosink appears paused.
3034
3035         * platform/graphics/gstreamer/GStreamerGWorld.cpp:
3036         (WebCore::GStreamerGWorld::enterFullscreen):
3037         (WebCore::GStreamerGWorld::exitFullscreen):
3038         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
3039         (WebCore::MediaPlayerPrivateGStreamer::createGSTPlayBin):
3040
3041 2010-11-24  Avi Drissman  <avi@google.com>
3042
3043         Reviewed by Antonio Gomes.
3044
3045         Add preference to not select when right-clicked
3046         https://bugs.webkit.org/show_bug.cgi?id=23351
3047
3048         Test: editing/selection/context-menu-text-selection.html
3049
3050         * editing/EditingBehavior.h:
3051         (WebCore::EditingBehavior::shouldSelectOnContextualMenuClick):
3052         * page/EventHandler.cpp:
3053         (WebCore::EventHandler::sendContextMenuEvent):
3054
3055 2010-11-24  Andras Becsi  <abecsi@inf.u-szeged.hu>
3056
3057         Reviewed by Csaba Osztrogonác.
3058
3059         Make build-webkit --minimal build with ENABLE_INSPECTOR=0.
3060         https://bugs.webkit.org/show_bug.cgi?id=49975
3061
3062         No new tests needed.
3063
3064         * features.pri: Make the Qt buildsystem aware
3065         that the inspector is enabled by default.
3066
3067 2010-11-24  Martin Robinson  <mrobinson@igalia.com>
3068
3069         Reviewed by Xan Lopez.
3070
3071         [GTK] The WebKitWebView should expose a set of signals encapsulating the behavior of the EditorClient
3072         https://bugs.webkit.org/show_bug.cgi?id=49143
3073
3074         * platform/gtk/GtkVersioning.c:
3075         (g_signal_accumulator_first_wins): Add g_signal_accumulator_first_wins for versions of
3076         GLib before 2.28.
3077         * platform/gtk/GtkVersioning.h:
3078
3079 2010-11-24  Sheriff Bot  <webkit.review.bot@gmail.com>
3080
3081         Unreviewed, rolling out r72499.
3082         http://trac.webkit.org/changeset/72499
3083         https://bugs.webkit.org/show_bug.cgi?id=50022
3084
3085         This change is causing crashes on the bots. (Requested by
3086         mrobinson on #webkit).
3087
3088         * accessibility/AccessibilityMenuListOption.cpp:
3089         (WebCore::AccessibilityMenuListOption::nameForMSAA):
3090         * accessibility/AccessibilityMenuListOption.h:
3091         * accessibility/gtk/AXObjectCacheAtk.cpp:
3092         (WebCore::AXObjectCache::postPlatformNotification):
3093         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
3094         (setAtkStateSetFromCoreObject):
3095         (optionFromList):
3096         (optionFromSelection):
3097         (webkit_accessible_selection_add_selection):
3098         (webkit_accessible_selection_clear_selection):
3099         (webkit_accessible_selection_get_selection_count):
3100         (webkit_accessible_selection_is_child_selected):
3101         (webkit_accessible_selection_remove_selection):
3102         (webkit_accessible_text_get_text):
3103         (getInterfaceMaskFromObject):
3104         * platform/gtk/PopupMenuGtk.cpp:
3105         (WebCore::PopupMenuGtk::show):
3106
3107 2010-11-24  Patrick Gansterer  <paroga@webkit.org>
3108
3109         Reviewed by Csaba Osztrogonác.
3110
3111         Simplify makeprop.pl
3112         https://bugs.webkit.org/show_bug.cgi?id=49925
3113
3114         Don't generate CSSPropertyNamesHash.h.
3115         Instead generate CSSPropertyNames directly.
3116
3117         * GNUmakefile.am: Removed rule for CSSPropertyNamesHash.h.
3118         * css/makeprop.pl:
3119
3120 2010-11-24  Patrick Gansterer  <paroga@webkit.org>
3121
3122         Reviewed by Csaba Osztrogonác.
3123
3124         Remove Bakefile build system files
3125         https://bugs.webkit.org/show_bug.cgi?id=49983
3126
3127         r53757 only removed the content, but not the files.
3128         This patch removes that empty files.
3129
3130         * WebCoreSources.bkl: Removed.
3131         * webcore-base.bkl: Removed.
3132         * webcore-wx.bkl: Removed.
3133
3134 2010-11-24  Renata Hodovan  <reni@inf.u-szeged.hu>
3135
3136         Reviewed by Andreas Kling.
3137
3138         [Qt] GraphicsContext: Clean up Qt/WebCore type conversion functions
3139         https://bugs.webkit.org/show_bug.cgi?id=49919
3140
3141         Add ASSERT_NOT_REACHED() if the given WebCore type doesn't have an equivalent type in Qt.
3142         Also change the return value of toQtLineJoin() from Qt::MiterJoin to the default Qt::SvgMiterJoin,
3143         because the previous one doesn't work currently.
3144
3145         No new test is needed.
3146
3147         * platform/graphics/qt/GraphicsContextQt.cpp:
3148         (WebCore::GraphicsContext::toQtCompositionMode):
3149         (WebCore::toQtLineCap):
3150         (WebCore::toQtLineJoin):
3151         (WebCore::toQPenStyle):
3152         (WebCore::toQtFillRule):
3153
3154 2010-11-24  Patrick Gansterer  <paroga@webkit.org>
3155
3156         Reviewed by Csaba Osztrogonác.
3157
3158         Simplify makevalues.pl
3159         https://bugs.webkit.org/show_bug.cgi?id=49926
3160
3161         Don't generate CSSValueKeywordsHash.h.
3162         Instead generate CSSValueKeywords.cpp directly. 
3163
3164         * GNUmakefile.am: Removed rule for CSSValueKeywordsHash.h.
3165         * css/makevalues.pl:
3166
3167 2010-11-24  Andras Becsi  <abecsi@inf.u-szeged.hu>
3168
3169         Reviewed by Kenneth Rohde Christiansen.
3170
3171         Make WebKit2 compile with !ENABLE(INSPECTOR).
3172         https://bugs.webkit.org/show_bug.cgi?id=49973
3173
3174         No new tests needed.
3175
3176         * bindings/js/ScriptHeapSnapshot.h:
3177         * bindings/js/ScriptProfile.cpp:
3178         * bindings/js/ScriptProfile.h:
3179         * inspector/InspectorDebuggerAgent.cpp:
3180         * inspector/InspectorDebuggerAgent.h:
3181         * inspector/InspectorProfilerAgent.cpp:
3182         * inspector/InspectorProfilerAgent.h:
3183         * inspector/ScriptBreakpoint.h:
3184
3185 2010-11-24  Patrick Gansterer  <paroga@webkit.org>
3186
3187         Reviewed by Csaba Osztrogonác.
3188
3189         Simplify make-hash-tools.pl
3190         https://bugs.webkit.org/show_bug.cgi?id=49922
3191
3192         HashTools.h does not need to be generated, because it only contains static code.
3193
3194         * html/DocTypeStrings.gperf: Include findDoctypeEntry function.
3195         * make-hash-tools.pl: Do not generate HashTools.h.
3196         * platform/ColorData.gperf: Include findColor function.
3197         * platform/HashTools.h: Added.
3198
3199 2010-11-24  Andreas Kling  <kling@webkit.org>
3200
3201         Reviewed by Simon Hausmann.
3202
3203         [Qt] Pass Qt::TextBypassShaping flag when calculating shadow layer rects
3204
3205         Without this, we could end up with a slightly too small shadow layer
3206         for some string/font combinations.
3207
3208         * platform/graphics/qt/FontQt.cpp:
3209         (WebCore::drawTextCommon):
3210
3211 2010-11-22  Pavel Feldman  <pfeldman@chromium.org>
3212
3213         Reviewed by Yury Semikhatsky.
3214
3215         Web Inspector: add timing tab to the network item view.
3216         https://bugs.webkit.org/show_bug.cgi?id=49920
3217
3218         * WebCore.gypi:
3219         * WebCore.vcproj/WebCore.vcproj:
3220         * inspector/front-end/NetworkItemView.js:
3221         (WebInspector.NetworkItemView):
3222         * inspector/front-end/NetworkPanel.js:
3223         (WebInspector.NetworkPanel.prototype._showPopover):
3224         * inspector/front-end/Resource.js:
3225         (WebInspector.Resource.prototype.set timing):
3226         * inspector/front-end/ResourceTimingView.js: Added.
3227         (WebInspector.ResourceTimingView):
3228         (WebInspector.ResourceTimingView.prototype.show):
3229         (WebInspector.ResourceTimingView.prototype._refresh):
3230         (WebInspector.ResourceTimingView.createTimingTable):
3231         * inspector/front-end/WebKit.qrc:
3232         * inspector/front-end/inspector.html:
3233         * inspector/front-end/networkPanel.css:
3234         (#network-views .network-item-view .tabbed-pane-header):
3235         (.resource-timing-view):
3236         (.resource-timing-view table):
3237         (.resource-timing-view .network-timing-bar):
3238         (.resource-timing-view .network-timing-bar.proxy):
3239         (.resource-timing-view .network-timing-bar.dns):
3240         (.resource-timing-view .network-timing-bar.connecting):
3241         (.resource-timing-view .network-timing-bar.ssl):
3242         (.resource-timing-view .network-timing-bar.sending):
3243         (.resource-timing-view .network-timing-bar.waiting):
3244         (.resource-timing-view .network-timing-bar.receiving):
3245         (.resource-timing-view.visible):
3246
3247 2010-11-24  Pavel Feldman  <pfeldman@chromium.org>
3248
3249         Not reviewed. Follow up to r72652 (style id change in inspector).
3250
3251         * inspector/front-end/AuditRules.js:
3252         (WebInspector.AuditRules.UnusedCssRule.prototype.doRun.evalCallback.selectorsCallback):
3253
3254 2010-11-22  Pavel Feldman  <pfeldman@chromium.org>
3255
3256         Reviewed by Yury Semikhatsky.
3257
3258         Web Inspector: refactor ResourceView hierarchy.
3259         https://bugs.webkit.org/show_bug.cgi?id=49864
3260
3261         This refactoring splits ResourceView.js into:
3262             NetworkItemView.js (tabbed pane)
3263             ResourceHeadersView.js (header tab)
3264             ResourceCookiesView.js (cookies tab)
3265             ResourceView.js (base class for content tab).
3266         CookiesTable was extracted from CookieItemsView and
3267         brushed up. headersVisible flag has been removed.
3268
3269         * English.lproj/localizedStrings.js:
3270         * WebCore.gypi:
3271         * WebCore.vcproj/WebCore.vcproj:
3272         * inspector/front-end/CookieItemsView.js:
3273         (WebInspector.CookieItemsView):
3274         (WebInspector.CookieItemsView.prototype.get statusBarItems):
3275         (WebInspector.CookieItemsView.prototype.hide):
3276         (WebInspector.CookieItemsView.prototype.resize):
3277         (WebInspector.CookieItemsView.prototype._updateWithCookies):
3278         (WebInspector.CookieItemsView.prototype._filterCookiesForDomain):
3279         (WebInspector.CookieItemsView.prototype._deleteCookie):
3280         (WebInspector.CookieItemsView.prototype._deleteButtonClicked):
3281         (WebInspector.CookieItemsView.prototype._refreshButtonClicked):
3282         (WebInspector.SimpleCookiesTable):
3283         (WebInspector.SimpleCookiesTable.prototype.setCookies):
3284         (WebInspector.SimpleCookiesTable.prototype.resize):
3285         * inspector/front-end/CookiesTable.js: Added.
3286         (WebInspector.CookiesTable):
3287         (WebInspector.CookiesTable.prototype.updateWidths):
3288         (WebInspector.CookiesTable.prototype.setCookies):
3289         (WebInspector.CookiesTable.prototype.addCookiesFolder):
3290         (WebInspector.CookiesTable.prototype.get selectedCookie):
3291         (WebInspector.CookiesTable.prototype._rebuildTable):
3292         (WebInspector.CookiesTable.prototype.reset):
3293         (WebInspector.CookiesTable.prototype._populateNode):
3294         (WebInspector.CookiesTable.prototype._totalSize):
3295         (WebInspector.CookiesTable.prototype._sortCookies.localeCompare):
3296         (WebInspector.CookiesTable.prototype._sortCookies.numberCompare):
3297         (WebInspector.CookiesTable.prototype._sortCookies.expiresCompare):
3298         (WebInspector.CookiesTable.prototype._sortCookies):
3299         (WebInspector.CookiesTable.prototype._createGridNode):
3300         (WebInspector.CookiesTable.prototype._onDeleteFromGrid):
3301         * inspector/front-end/FileSystemView.js:
3302         (WebInspector.FileSystemView.prototype._selectFileSystemTab):
3303         (WebInspector.FileSystemView.prototype.selectTemporaryFileSystemTab):
3304         * inspector/front-end/FontView.js:
3305         (WebInspector.FontView.prototype.hasContent):
3306         (WebInspector.FontView.prototype._createContentIfNeeded):
3307         (WebInspector.FontView.prototype.show):
3308         (WebInspector.FontView.prototype.updateFontPreviewSize):
3309         * inspector/front-end/ImageView.js:
3310         (WebInspector.ImageView.prototype.hasContent):
3311         (WebInspector.ImageView.prototype.show):
3312         * inspector/front-end/NetworkItemView.js: Added.
3313         (WebInspector.NetworkItemView):
3314         (WebInspector.NetworkItemView.prototype.show):
3315         (WebInspector.NetworkItemView.prototype._selectTab):
3316         (WebInspector.NetworkItemView.prototype._tabSelected):
3317         (WebInspector.NetworkItemView.prototype.resize):
3318         (WebInspector.NetworkItemView.prototype.selectContentTab):
3319         * inspector/front-end/NetworkPanel.js:
3320         (WebInspector.NetworkPanel.prototype.show):
3321         (WebInspector.NetworkPanel.prototype.refreshResource):
3322         (WebInspector.NetworkPanel.prototype._showResource):
3323         (WebInspector.NetworkPanel.prototype._closeVisibleResource):
3324         * inspector/front-end/ResourceCookiesView.js: Added.
3325         (WebInspector.ResourceCookiesView):
3326         (WebInspector.ResourceCookiesView.prototype.show):
3327         * inspector/front-end/ResourceHeadersView.js: Added.
3328         (WebInspector.ResourceHeadersView):
3329         (WebInspector.ResourceHeadersView.prototype._refreshURL):
3330         (WebInspector.ResourceHeadersView.prototype._refreshQueryString):
3331         (WebInspector.ResourceHeadersView.prototype._refreshFormData):
3332         (WebInspector.ResourceHeadersView.prototype._refreshRequestPayload):
3333         (WebInspector.ResourceHeadersView.prototype._refreshParms):
3334         (WebInspector.ResourceHeadersView.prototype._toggleURLdecoding):
3335         (WebInspector.ResourceHeadersView.prototype._getHeaderValue):
3336         (WebInspector.ResourceHeadersView.prototype._refreshRequestHeaders):
3337         (WebInspector.ResourceHeadersView.prototype._refreshResponseHeaders):
3338         (WebInspector.ResourceHeadersView.prototype._refreshHTTPInformation):
3339         (WebInspector.ResourceHeadersView.prototype._refreshHeaders):
3340         * inspector/front-end/ResourceView.js:
3341         (WebInspector.ResourceView):
3342         (WebInspector.ResourceView.prototype.hasContent):
3343         * inspector/front-end/ResourcesPanel.js:
3344         (WebInspector.ResourcesPanel.prototype.show):
3345         (WebInspector.ResourcesPanel.prototype.showResource):
3346         (WebInspector.ResourcesPanel.prototype._showResourceView):
3347         * inspector/front-end/ScriptsPanel.js:
3348         (WebInspector.ScriptsPanel.prototype.show):
3349         (WebInspector.ScriptsPanel.prototype._showScriptOrResource):
3350         * inspector/front-end/SourceView.js:
3351         (WebInspector.SourceView):
3352         (WebInspector.SourceView.prototype.show):
3353         (WebInspector.SourceView.prototype.hide):
3354         (WebInspector.SourceView.prototype.resize):
3355         (WebInspector.SourceView.prototype.setupSourceFrameIfNeeded):
3356         (WebInspector.SourceView.prototype.hasContent):
3357         (WebInspector.SourceView.prototype.updateLocalContent):
3358         (WebInspector.SourceView.prototype.selectLocalContentTab):
3359         * inspector/front-end/StylesSidebarPane.js:
3360         * inspector/front-end/TabbedPane.js:
3361         (WebInspector.TabbedPane):
3362         (WebInspector.TabbedPane.prototype.appendTab):
3363         (WebInspector.TabbedPane.prototype.selectTab):
3364         (WebInspector.TabbedPane.prototype._showTab):
3365         (WebInspector.TabbedPane.prototype._hideTab):
3366         * inspector/front-end/WebKit.qrc:
3367         * inspector/front-end/inspector.css:
3368         (.webkit-line-gutter-backdrop):
3369         (.resource-view):
3370         (.resource-view.visible):
3371         (.resource-view.font):
3372         (.resource-view.image > .image):
3373         (.resource-view.image > .info):
3374         (.storage-view):
3375         (.storage-view .data-grid):
3376         (.storage-empty-view, .storage-view .storage-table-error):
3377         (.storage-view .storage-table-error):
3378         * inspector/front-end/inspector.html:
3379         * inspector/front-end/networkPanel.css:
3380         (.network-cell-subtitle):
3381         (.network-header-subtitle):
3382         (#network-views .network-item-view .tabbed-pane-header):
3383         (#network-views.small .network-item-view .tabbed-pane-header):
3384         (.network-item-view):
3385         (.network-item-view.visible):
3386         (.network-item-view .tabbed-pane-header):
3387         (.network-item-view .scope-bar li):
3388         (.resource-headers-view):
3389         (.resource-headers-view.visible):
3390         (.resource-headers-view .outline-disclosure .parent):
3391         (.resource-headers-view .outline-disclosure .children li):
3392         (.resource-headers-view .outline-disclosure li.expanded .header-count):
3393         (.resource-headers-view .outline-disclosure .header-name):
3394         (.resource-headers-view .outline-disclosure .header-value):
3395         (.resource-headers-view .outline-disclosure .raw-form-data):
3396         (.resource-cookies-view):
3397         (.resource-cookies-view.visible):
3398         (.resource-cookies-view .data-grid):
3399         (.resource-cookies-view .data-grid .row-group):
3400
3401 2010-11-24  Pavel Feldman  <pfeldman@chromium.org>
3402
3403         Reviewed by Yury Semikhatsky.
3404
3405         Web Inspector: add "Locally modified" group into the resource panel.
3406         https://bugs.webkit.org/show_bug.cgi?id=50005
3407
3408         * English.lproj/localizedStrings.js:
3409         * inspector/front-end/ResourcesPanel.js:
3410         (WebInspector.ResourcesPanel):
3411         (WebInspector.ResourcesPanel.prototype.reset):
3412         (WebInspector.ResourcesPanel.prototype.addLocallyModifiedRevision):
3413         (WebInspector.ResourcesPanel.prototype._innerShowView):
3414         (WebInspector.BaseStorageTreeElement.prototype.set titleText):
3415         (WebInspector.LocallyModifiedResourceTreeElement):
3416         (WebInspector.LocallyModifiedResourceTreeElement.prototype.onselect):
3417         (WebInspector.LocallyModifiedResourceTreeElement.prototype.gcRevisions):
3418         (WebInspector.LocallyModifiedRevisionTreeElement):
3419         (WebInspector.LocallyModifiedRevisionTreeElement.prototype.onattach):
3420         (WebInspector.LocallyModifiedRevisionTreeElement.prototype.onselect):
3421         (WebInspector.LocallyModifiedRevisionTreeElement.prototype._ondragstart):
3422
3423 2010-11-24  Pavel Feldman  <pfeldman@chromium.org>
3424
3425         Reviewed by Yury Semikhatsky.
3426
3427         Web Inspector: pass style id to front-end as Object, not string.
3428         https://bugs.webkit.org/show_bug.cgi?id=49971
3429
3430         * inspector/Inspector.idl:
3431         * inspector/InspectorCSSAgent.cpp:
3432         (WebCore::InspectorCSSAgent::getStylesForNode2):
3433         (WebCore::InspectorCSSAgent::getStyleSheetText2):
3434         (WebCore::InspectorCSSAgent::setPropertyText2):
3435         (WebCore::InspectorCSSAgent::toggleProperty2):
3436         (WebCore::InspectorCSSAgent::setRuleSelector2):
3437         * inspector/InspectorCSSAgent.h:
3438         * inspector/InspectorStyleSheet.cpp:
3439         (WebCore::InspectorStyle::buildObjectForStyle):
3440         (WebCore::InspectorStyleSheet::finalURL):
3441         (WebCore::InspectorStyleSheet::ruleForId):
3442         (WebCore::InspectorStyleSheet::buildObjectForStyleSheet):
3443         (WebCore::InspectorStyleSheet::buildObjectForRule):
3444         (WebCore::InspectorStyleSheet::text):
3445         (WebCore::InspectorStyleSheet::ruleOrStyleId):
3446         (WebCore::InspectorStyleSheetForInlineStyle::InspectorStyleSheetForInlineStyle):
3447         (WebCore::InspectorStyleSheetForInlineStyle::text):
3448         * inspector/InspectorStyleSheet.h:
3449         (WebCore::InspectorCSSId::InspectorCSSId):
3450         (WebCore::InspectorCSSId::isEmpty):
3451         (WebCore::InspectorCSSId::styleSheetId):
3452         (WebCore::InspectorCSSId::ordinal):
3453         (WebCore::InspectorCSSId::asInspectorValue):
3454         (WebCore::InspectorStyleSheet::id):
3455         (WebCore::InspectorStyleSheetForInlineStyle::styleForId):
3456         * inspector/front-end/CSSStyleModel.js:
3457         (WebInspector.CSSStyleModel.prototype.setRuleSelector):
3458         (WebInspector.CSSStyleModel.prototype.addRule):
3459         (WebInspector.CSSStyleModel.prototype._styleSheetChanged):
3460         (WebInspector.CSSStyleDeclaration.prototype.insertPropertyAt):
3461         (WebInspector.CSSProperty.prototype.setText):
3462         (WebInspector.CSSProperty.prototype.setDisabled.callback):
3463         (WebInspector.CSSProperty.prototype.setDisabled):
3464         (WebInspector.CSSStyleSheet.createForId):
3465         (WebInspector.CSSStyleSheet.prototype.setText):
3466
3467 2010-11-24  Sheriff Bot  <webkit.review.bot@gmail.com>
3468
3469         Unreviewed, rolling out r72647.
3470         http://trac.webkit.org/changeset/72647
3471         https://bugs.webkit.org/show_bug.cgi?id=50009
3472
3473         breaks the http layout tests (Requested by philn-tp on
3474         #webkit).
3475
3476         * platform/network/soup/ResourceHandleSoup.cpp:
3477         (WebCore::sendRequestCallback):
3478         (WebCore::startHttp):
3479         (WebCore::ResourceHandle::platformSetDefersLoading):
3480
3481 2010-11-23  Philippe Normand  <pnormand@igalia.com>
3482
3483         Reviewed by Martin Robinson.
3484
3485         [soup] implement ResourceHandle::platformSetDefersLoading
3486         https://bugs.webkit.org/show_bug.cgi?id=44158
3487
3488         * platform/network/soup/ResourceHandleSoup.cpp:
3489         (WebCore::ResourceHandle::platformSetDefersLoading): Implemented
3490         using the soup_session_{,un}pause_message APIs.
3491
3492 2010-11-22  Abhishek Arya  <inferno@chromium.org>
3493
3494         Reviewed by Adam Barth.
3495
3496         r71925 broke the chrome new tab page. r71925 blocked drag and drop
3497         of same security origin objects onto themselves if their origin is
3498         marked unique. We need to allow drag and drop in that scenario.
3499         https://bugs.webkit.org/show_bug.cgi?id=49098
3500
3501         Test: http/tests/security/drag-drop-same-unique-origin.html
3502
3503         * page/SecurityOrigin.cpp:
3504         (WebCore::SecurityOrigin::canReceiveDragData):
3505
3506 2010-11-23  Cris Neckar  <cdn@chromium.org>
3507
3508         Reviewed by Dimitri Glazkov.
3509
3510         Removed unneeded conversions to RenderBlock.
3511         https://bugs.webkit.org/show_bug.cgi?id=49896
3512
3513         Test: fast/css/input-search-table-column-crash.html
3514
3515         * rendering/RenderTextControlSingleLine.cpp:
3516         (WebCore::RenderTextControlSingleLine::adjustControlHeightBasedOnLineHeight):
3517
3518 2010-11-23  Ryosuke Niwa  <rniwa@webkit.org>
3519
3520         Reviewed by Adam Barth.
3521
3522         XMLDocumentParser::notifyFinished calls ScriptController's executeScript without updating isEvaluated flag
3523         https://bugs.webkit.org/show_bug.cgi?id=49701
3524
3525         Fixed the bug by calling ScriptElement's executeScript, which sets isEvaluated flag to true.
3526
3527         Test: fast/dom/script-clone-rerun-src.xhtml
3528
3529         * dom/XMLDocumentParser.cpp:
3530         (WebCore::XMLDocumentParser::notifyFinished):
3531
3532 2010-11-23  Sheriff Bot  <webkit.review.bot@gmail.com>
3533
3534         Unreviewed, rolling out r72628.
3535         http://trac.webkit.org/changeset/72628
3536         https://bugs.webkit.org/show_bug.cgi?id=49994
3537
3538         This patch is causing layout-test failtures on GTK Linux
3539         64-bit Debug (Requested by ctguil on #webkit).
3540
3541         * accessibility/AccessibilityRenderObject.cpp:
3542         (WebCore::AccessibilityRenderObject::renderParentObject):
3543         (WebCore::AccessibilityRenderObject::addChildren):
3544         * accessibility/AccessibilityRenderObject.h:
3545         * accessibility/chromium/AccessibilityObjectChromium.cpp:
3546         (WebCore::AccessibilityObject::accessibilityIgnoreAttachment):
3547
3548 2010-11-23  Xan Lopez  <xlopez@igalia.com>
3549
3550         Reviewed by Martin Robinson.
3551
3552         [GTK] Fix IFrame DOM bindings API
3553         https://bugs.webkit.org/show_bug.cgi?id=49980
3554
3555         Fix IFrame API naming. It needs special casing because of the two
3556         consecutive capital letters.
3557
3558         * bindings/scripts/CodeGeneratorGObject.pm:
3559
3560 2010-11-23  Shimeng (Simon) Wang  <swang@google.com>
3561
3562         Reviewed by Steve Block.
3563
3564         Use platform bridge to set scroll position.
3565         https://bugs.webkit.org/show_bug.cgi?id=49550
3566
3567         Refactoring only.  Existing tests shall suffice.
3568
3569         * platform/android/PlatformBridge.h:
3570         * platform/android/ScrollViewAndroid.cpp:
3571         (WebCore::ScrollView::platformSetScrollPosition):
3572
3573 2010-11-23  Andreas Kling  <kling@webkit.org>
3574
3575         Reviewed by Tor Arne Vestbø.
3576
3577         [Qt] Selecting shadowed text causes rendering artifacts
3578         https://bugs.webkit.org/show_bug.cgi?id=49990
3579
3580         When selecting text starting from the end of a word, we need to use
3581         the X coordinate of the start of the substring when calculating the
3582         bounding rect for a ContextShadow.
3583
3584         * platform/graphics/qt/FontQt.cpp:
3585         (WebCore::drawTextCommon):
3586
3587 2010-11-23  Chris Guillory  <chris.guillory@google.com>
3588
3589         Reviewed by Dimitri Glazkov.
3590
3591         Include the FrameView widget of a RenderWidget in the accessibility tree.
3592         https://bugs.webkit.org/show_bug.cgi?id=49106
3593
3594         Include render widget children in the accessibility tree for not mac webkit ports.
3595
3596         Test: accessibility/iframe-has-document.html
3597
3598         * accessibility/AccessibilityRenderObject.cpp:
3599         (WebCore::AccessibilityRenderObject::renderParentObject):
3600         (WebCore::AccessibilityRenderObject::addChildren):
3601         (WebCore::AccessibilityRenderObject::addRenderWidgetChildren):
3602         * accessibility/AccessibilityRenderObject.h:
3603         * accessibility/chromium/AccessibilityObjectChromium.cpp:
3604         (WebCore::AccessibilityObject::accessibilityIgnoreAttachment):
3605
3606 2010-11-23  Chris Rogers  <crogers@google.com>
3607
3608         Reviewed by Alexey Proskuryakov.
3609
3610         Add .responseType and .response to XMLHttpRequest
3611         https://bugs.webkit.org/show_bug.cgi?id=49633
3612
3613         Tests: fast/xmlhttprequest/xmlhttprequest-responsetype-abort.html
3614                fast/xmlhttprequest/xmlhttprequest-responsetype-arraybuffer.html
3615                fast/xmlhttprequest/xmlhttprequest-responsetype-document.html
3616                fast/xmlhttprequest/xmlhttprequest-responsetype-text.html
3617
3618         * bindings/js/JSXMLHttpRequestCustom.cpp:
3619         (WebCore::JSXMLHttpRequest::markChildren):
3620         (WebCore::JSXMLHttpRequest::open):
3621         (WebCore::JSXMLHttpRequest::response):
3622         * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
3623         (WebCore::V8XMLHttpRequest::responseAccessorGetter):
3624         * xml/XMLHttpRequest.cpp:
3625         (WebCore::XMLHttpRequest::XMLHttpRequest):
3626         (WebCore::XMLHttpRequest::responseText):
3627         (WebCore::XMLHttpRequest::responseXML):
3628         (WebCore::XMLHttpRequest::responseBlob):
3629         (WebCore::XMLHttpRequest::responseArrayBuffer):
3630         (WebCore::XMLHttpRequest::setResponseType):
3631         (WebCore::XMLHttpRequest::responseType):
3632         (WebCore::XMLHttpRequest::setAsBlob):
3633         (WebCore::XMLHttpRequest::open):
3634         (WebCore::XMLHttpRequest::clearResponse):
3635         (WebCore::XMLHttpRequest::didFinishLoading):
3636         (WebCore::XMLHttpRequest::didReceiveData):
3637         * xml/XMLHttpRequest.h:
3638         (WebCore::XMLHttpRequest::asBlob):
3639         (WebCore::XMLHttpRequest::optionalResponseXML):
3640         (WebCore::XMLHttpRequest::optionalResponseBlob):
3641         (WebCore::XMLHttpRequest::responseTypeCode):
3642         (WebCore::XMLHttpRequest::optionalResponseArrayBuffer):
3643         * xml/XMLHttpRequest.idl:
3644
3645 2010-11-23  Abhishek Arya  <inferno@chromium.org>
3646
3647         Reviewed by Adam Barth.
3648
3649         dispatchEvent call in EventSource endRequest can lead to calling endRequest
3650         again which frees up the pending activity. Make sure we have request in flight
3651         to prevent that from happening.
3652         https://bugs.webkit.org/show_bug.cgi?id=49448
3653
3654         Test: http/tests/eventsource/eventsource-status-error-iframe-crash.html
3655
3656         * page/EventSource.cpp:
3657         (WebCore::EventSource::endRequest):
3658         (WebCore::EventSource::close):
3659
3660 2010-11-23  Sheriff Bot  <webkit.review.bot@gmail.com>
3661
3662         Unreviewed, rolling out r72618.
3663         http://trac.webkit.org/changeset/72618
3664         https://bugs.webkit.org/show_bug.cgi?id=49987
3665
3666         "Newly added test is failing on Chromium-linux, patch author
3667         said to rollout" (Requested by jparent on #webkit).
3668
3669         * editing/EditingBehavior.h:
3670         * page/EventHandler.cpp:
3671         (WebCore::EventHandler::sendContextMenuEvent):
3672
3673 2010-11-23  Avi Drissman  <avi@google.com>
3674
3675         Reviewed by Antonio Gomes.
3676
3677         Add preference to not select when right-clicked
3678         https://bugs.webkit.org/show_bug.cgi?id=23351
3679
3680         Test: editing/selection/context-menu-text-selection.html
3681
3682         * editing/EditingBehavior.h:
3683         (WebCore::EditingBehavior::shouldSelectOnContextualMenuClick):
3684         * page/EventHandler.cpp:
3685         (WebCore::EventHandler::sendContextMenuEvent):
3686
3687 2010-11-23  Alexander Pavlov  <apavlov@chromium.org>
3688
3689         Reviewed by Pavel Feldman.
3690
3691         Web Inspector: [STYLES] invalid color values are not marked as such.
3692         https://bugs.webkit.org/show_bug.cgi?id=49960
3693
3694         Properties having a valid structure but invalid values will also
3695         be marked as non-parsedOk in the Styles pane.
3696
3697         * css/CSSGrammar.y:
3698         * inspector/InspectorStyleSheet.cpp:
3699         (WebCore::InspectorStyle::populateObjectWithStyleProperties):
3700
3701 2010-11-23  Adam Bergkvist  <adam.bergkvist@ericsson.com>
3702
3703         Reviewed by Martin Robinson.
3704
3705         [GTK] Building with Blob support fails
3706         https://bugs.webkit.org/show_bug.cgi?id=49724
3707
3708         Build fix.
3709
3710         * GNUmakefile.am:
3711         * platform/gtk/FileSystemGtk.cpp:
3712         (WebCore::seekFile): Not implemented.
3713
3714 2010-11-23  Kenneth Rohde Christiansen  <kenneth@webkit.org>
3715
3716         Reviewed by Andreas Kling.
3717
3718         Make setShouldDelegateScrolling not a real setting, so that it works
3719         similar to the related setUseFixedLayout and setPaintEntireContents
3720         options which are all in ScrollView.
3721
3722         * page/FrameView.cpp:
3723         * page/FrameView.h:
3724         * page/Settings.cpp:
3725         (WebCore::Settings::Settings):
3726         * page/Settings.h:
3727         * platform/ScrollView.cpp:
3728         (WebCore::ScrollView::ScrollView):
3729         (WebCore::ScrollView::setDelegatesScrolling):
3730         * platform/ScrollView.h:
3731         (WebCore::ScrollView::delegatesScrolling):
3732
3733 2010-11-23  Adam Roben  <aroben@apple.com>
3734
3735         Don't rely on DocumentLoader outliving the load/unload events
3736
3737         DocumentLoader::m_documentLoadTiming is used to record how long firing
3738         the load event took. But the DocumentLoader was being destroyed while
3739         the event was being dispatched (due to a call to document.open), which
3740         meant that when we tried to record the time when the load event
3741         finished, we were writing into freed memory. We now protect the
3742         DocumentLoader using a RefPtr. (I initially made a change where we
3743         would only access the DocumentLoader after the event has finished
3744         firing, but it seemed possible that a different DocumentLoader could
3745         have come into existence by then, which would cause us to record the
3746         times on the wrong DocumentLoadTiming struct.)
3747
3748         I only saw a crash when firing the load event, but the code for timing
3749         the unload event seemed like it was vulnerable to the same issue, so I
3750         made the same fix for it.
3751
3752         Fixes <http://webkit.org/b/49972> REGRESSION (r72415?): Crash in
3753         DOMWindow::dispatchTimedEvent when running fast/dom/onload-open.html
3754
3755         Reviewed by Darin Fisher.
3756
3757         * loader/FrameLoader.cpp:
3758         (WebCore::FrameLoader::stopLoading):
3759         * page/DOMWindow.cpp:
3760         (WebCore::DOMWindow::dispatchLoadEvent):
3761         Protect the DocumentLoader (and thus its DocumentLoadTiming) with a
3762         RefPtr.
3763
3764 2010-11-17  Zhenyao Mo  <zmo@google.com>
3765
3766         Reviewed by Kenneth Russell.
3767
3768         readPixels should generate INVALID_ENUM if only one of type/format mismatch UNSIGNED_BYTE/RGBA
3769         https://bugs.webkit.org/show_bug.cgi?id=49673
3770
3771         Test: fast/canvas/webgl/read-pixels-test.html
3772
3773         * html/canvas/WebGLRenderingContext.cpp:
3774         (WebCore::WebGLRenderingContext::readPixels):
3775
3776 2010-11-23  Alexander Pavlov  <apavlov@chromium.org>
3777
3778         Reviewed by Pavel Feldman.
3779
3780         Web Inspector: [STYLES] Use strike through as an 'overridden' marker.
3781         https://bugs.webkit.org/show_bug.cgi?id=49961
3782
3783         "line-through" is used for inactive properties overridden within the same style.
3784
3785         * inspector/front-end/inspector.css:
3786         (.styles-section .properties .overloaded, .styles-section .properties .inactive, .styles-section .properties .disabled):
3787
3788 2010-11-23  Yael Aharon  <yael.aharon@nokia.com>
3789
3790         Reviewed by Antonio Gomes.
3791
3792         Spatial Navigation: Code cleanup
3793         https://bugs.webkit.org/show_bug.cgi?id=49442
3794
3795         Remove code that is not used anymore after http://trac.webkit.org/changeset/72522.
3796         Added const to canBeScrolledIntoView.
3797         No new tests because this is only code cleanup.
3798
3799         * page/FocusController.cpp:
3800         * page/FocusController.h:
3801         * page/SpatialNavigation.cpp:
3802         (WebCore::canBeScrolledIntoView):
3803         * page/SpatialNavigation.h:
3804
3805 2010-11-23  Jeremy Orlow  <jorlow@chromium.org>
3806
3807         Reviewed by Steve Block.
3808
3809         Remove unimplemented (and untested) methods from IndexedDB
3810         https://bugs.webkit.org/show_bug.cgi?id=49911
3811
3812         * storage/IDBCursor.idl:
3813         * storage/IDBDatabase.idl:
3814
3815 2010-11-18  Satish Sampath  <satish@chromium.org>
3816
3817         Reviewed by Jeremy Orlow.
3818
3819         For speech input event, send an event object containing all the recognition results and metadata.
3820         https://bugs.webkit.org/show_bug.cgi?id=49736
3821
3822         Currently the speech input event 'onwebkitspeechchange' receives no parameters. WebCore already
3823         has the full list of recognition results and populates only the top result into the input field
3824         automatically. In this patch we pass a SpeechInputEvent object to the event handler, and the JS
3825         code can access the full list of results via "event.results.length", "results[i].utterance" and
3826         "results[i].confidence". Also updated mock object with appropriate methods to test multiple results.
3827
3828         Test: fast/speech/input-onspeechchange-event.html
3829
3830         * CMakeLists.txt:
3831         * GNUmakefile.am:
3832         * WebCore.gypi:
3833         * WebCore.pri:
3834         * WebCore.pro:
3835         * WebCore.xcodeproj/project.pbxproj:
3836         * bindings/js/JSEventCustom.cpp:
3837         (WebCore::toJS): Added new event
3838         * bindings/v8/custom/V8EventCustom.cpp:
3839         (WebCore::toV8): Added new event
3840         * dom/Event.cpp:
3841         (WebCore::Event::isSpeechInputEvent):
3842         * dom/Event.h:
3843         * html/HTMLInputElement.cpp:
3844         * html/HTMLInputElement.h:
3845         * page/SpeechInputEvent.h: New file implementing SpeechInputEvent.idl
3846         (WebCore::SpeechInputEvent::~SpeechInputEvent):
3847         (WebCore::SpeechInputEvent::create):
3848         (WebCore::SpeechInputEvent::isSpeechInputEvent):
3849         (WebCore::SpeechInputEvent::results):
3850         (WebCore::SpeechInputEvent::SpeechInputEvent):
3851         * page/SpeechInputEvent.idl: New file defining SpeechInputEvent object
3852         * page/SpeechInputListener.h:
3853         * page/SpeechInputResult.cpp:
3854         (WebCore::SpeechInputResult::create):
3855         * page/SpeechInputResult.h:
3856         * page/SpeechInputResult.idl: New file defining a single SpeechInputResult object
3857         * page/SpeechInputResultList.h: New file implementing SpeechInputResultList.idl
3858         (WebCore::SpeechInputResultList::create):
3859         (WebCore::SpeechInputResultList::length):
3860         (WebCore::SpeechInputResultList::item):
3861         (WebCore::SpeechInputResultList::SpeechInputResultList):
3862         * page/SpeechInputResultList.idl: New file defining a list of SpeechInputResult objects
3863         * platform/mock/SpeechInputClientMock.cpp:
3864         (WebCore::SpeechInputClientMock::addRecognitionResult): Renamed method and added one parameter.
3865         (WebCore::SpeechInputClientMock::clearResults):
3866         (WebCore::SpeechInputClientMock::timerFired):
3867         * platform/mock/SpeechInputClientMock.h:
3868         * rendering/TextControlInnerElements.cpp:
3869         (WebCore::InputFieldSpeechButtonElement::setRecognitionResult): Pass new event object to handler.
3870
3871 2010-11-22  Alexey Proskuryakov  <ap@apple.com>
3872
3873         Reviewed by Darin Adler.
3874
3875         https://bugs.webkit.org/show_bug.cgi?id=49860
3876         CSS style rules don't GC protect objects reachable as their properties
3877
3878         Test: fast/dom/StyleSheet/gc-rule-children-wrappers.html
3879
3880         * Android.jscbindings.mk:
3881         * CMakeLists.txt:
3882         * GNUmakefile.am:
3883         * WebCore.gypi:
3884         * WebCore.pro:
3885         * WebCore.vcproj/WebCore.vcproj:
3886         * WebCore.xcodeproj/project.pbxproj:
3887         * bindings/js/JSBindingsAllInOne.cpp:
3888         Added new files, sorted appropriate sections for easier adding.
3889
3890         * bindings/js/JSCSSFontFaceRuleCustom.cpp: Added.
3891         (WebCore::JSCSSFontFaceRule::markChildren):
3892         * bindings/js/JSCSSImportRuleCustom.cpp: Added.
3893         (WebCore::JSCSSImportRule::markChildren):
3894         * bindings/js/JSCSSMediaRuleCustom.cpp: Added.
3895         (WebCore::JSCSSMediaRule::markChildren):
3896         * bindings/js/JSCSSPageRuleCustom.cpp: Added.
3897         (WebCore::JSCSSPageRule::markChildren):
3898         * bindings/js/JSCSSStyleRuleCustom.cpp: Added.
3899         (WebCore::JSCSSStyleRule::markChildren):
3900         * bindings/js/JSWebKitCSSKeyframeRuleCustom.cpp: Added.
3901         (WebCore::JSWebKitCSSKeyframeRule::markChildren):
3902         * bindings/js/JSWebKitCSSKeyframesRuleCustom.cpp: Added.
3903         (WebCore::JSWebKitCSSKeyframesRule::markChildren):
3904         Mark objects reachable through these ones.
3905
3906         * css/CSSFontFaceRule.idl:
3907         * css/CSSImportRule.idl:
3908         * css/CSSMediaRule.idl:
3909         * css/CSSPageRule.idl:
3910         * css/CSSStyleRule.idl:
3911         * css/WebKitCSSKeyframeRule.idl:
3912         * css/WebKitCSSKeyframesRule.idl:
3913         Added CustomMarkFunction IDL attribute.
3914
3915 2010-11-23  Helder Correia  <helder@sencha.com>
3916
3917         Reviewed by Ariya Hidayat.
3918
3919         [Qt] Drawing an image on canvas with shadowBlur draws a solid shadow
3920         https://bugs.webkit.org/show_bug.cgi?id=49878
3921
3922         Add support for blurry shadows when drawing images on canvas.
3923
3924         Test: fast/canvas/canvas-drawImage-shadow.html
3925
3926         * platform/graphics/qt/ContextShadowQt.cpp:
3927         (WebCore::ContextShadow::endShadowLayer): Make composition work for solid shadow too.
3928         * platform/graphics/qt/ImageQt.cpp:
3929         (WebCore::BitmapImage::draw): Remove old shadow code and introduce ContextShadow.
3930
3931 2010-11-22  Patrick Gansterer  <paroga@webkit.org>
3932
3933         Reviewed by Adam Roben.
3934
3935         Port ContextMenuWin.cpp to WinCE
3936         https://bugs.webkit.org/show_bug.cgi?id=48408
3937
3938         * platform/ContextMenu.h:
3939         * platform/win/ContextMenuWin.cpp:
3940         (WebCore::ContextMenu::ContextMenu):
3941         (WebCore::ContextMenu::itemCount):
3942         (WebCore::insertMenuItem):
3943         (WebCore::ContextMenu::insertItem):
3944         (WebCore::contextMenuItemByIdOrPosition):
3945         (WebCore::ContextMenu::setPlatformDescription):
3946         (WebCore::contextMenuItemVector):
3947         (WebCore::platformMenuDescription):
3948
3949 2010-11-22  David Hyatt  <hyatt@apple.com>
3950
3951         Back out r72527 since it caused multiple rendering regressions.  Details in bug.
3952
3953         * rendering/InlineFlowBox.cpp:
3954         (WebCore::InlineFlowBox::placeBoxesInInlineDirection):
3955         * rendering/RenderListItem.cpp:
3956         (WebCore::RenderListItem::positionListMarker):
3957
3958 2010-11-22  John Knottenbelt  <jknotten@chromium.org>
3959
3960         Reviewed by Steve Block.
3961
3962         Implement mocks for client-based Geolocation.
3963         https://bugs.webkit.org/show_bug.cgi?id=49258
3964
3965         * Android.mk:
3966         * CMakeLists.txt:
3967         * GNUmakefile.am:
3968         * WebCore.gypi:
3969         * WebCore.pro:
3970         * WebCore.vcproj/WebCore.vcproj:
3971         * WebCore.xcodeproj/project.pbxproj:
3972         * platform/mock/GeolocationClientMock.cpp: Added.
3973         (WebCore::GeolocationClientMock::GeolocationClientMock):
3974         (WebCore::GeolocationClientMock::~GeolocationClientMock):
3975         (WebCore::GeolocationClientMock::setController):
3976         (WebCore::GeolocationClientMock::setPosition):
3977         (WebCore::GeolocationClientMock::setError):
3978         (WebCore::GeolocationClientMock::geolocationDestroyed):
3979         (WebCore::GeolocationClientMock::startUpdating):
3980         (WebCore::GeolocationClientMock::stopUpdating):
3981         (WebCore::GeolocationClientMock::setEnableHighAccuracy):
3982         (WebCore::GeolocationClientMock::lastPosition):
3983         (WebCore::GeolocationClientMock::timerFired):
3984         (WebCore::GeolocationClientMock::makeGeolocationCallback):
3985         * platform/mock/GeolocationClientMock.h: Added.
3986
3987 2010-11-22  Tony Gentilcore  <tonyg@chromium.org>
3988
3989         Reviewed by Adam Barth.
3990
3991         Fix bogus include guard.
3992
3993         * loader/NavigationScheduler.h:
3994
3995 2010-11-22  Andreas Kling  <kling@webkit.org>
3996
3997         Reviewed by Ariya Hidayat.
3998
3999         [Qt] Canvas: strokeText() and fillText() produce same shadow
4000         https://bugs.webkit.org/show_bug.cgi?id=48845
4001
4002         Test: fast/canvas/canvas-strokeText-strokes-shadow.html
4003
4004         * platform/graphics/qt/FontQt.cpp:
4005         (WebCore::drawTextCommon): Stroke the shadow rather than filling it in the cTextStroke case.
4006
4007 2010-11-22  Patrick Gansterer  <paroga@webkit.org>
4008
4009         Reviewed by Sam Weinig.
4010
4011         Use WTF::FixedArray::size()
4012         https://bugs.webkit.org/show_bug.cgi?id=49891
4013
4014         * dom/Document.cpp:
4015         (WebCore::Document::~Document):
4016
4017 2010-11-22  Ryosuke Niwa  <rniwa@webkit.org>
4018
4019         Reviewed by Tony Chang.
4020
4021         SelectionController::typingStyle() should return EditingStyle*
4022         https://bugs.webkit.org/show_bug.cgi?id=49813
4023
4024         Changed the return type of SelectionController::typingStyle to EditingStyle*.
4025
4026         Extracted textDirection from Editor::textDirectionForSelection to hide the underlying
4027         CSSMutableStyleDeclaration.
4028
4029         Also extracted the code to preserve unicode-bidi and direction CSS properties in
4030         InsertTextCommand::input, and moved into EditingStyle::prepareToApplyAt. ShouldPreserveWritingDirection,
4031         which is added to the argument list of EditingStyle::prepareToApplyAt, decides whether or not
4032         these two properties are preserved.
4033
4034         Also added SelectionController::copyTypingStyle() to copy the typing style as an instance of
4035         CSSMutableStyleDeclaration.
4036
4037         No new tests are added since this is a refactoring.
4038
4039         * editing/EditingStyle.cpp:
4040         (WebCore::EditingStyle::textDirection): Extracted from Editor::textDirectionForSelection.
4041         (WebCore::EditingStyle::removeStyleConflictingWithStyleOfNode): Added a missing null check.
4042         (WebCore::EditingStyle::prepareToApplyAt): See above.
4043         (WebCore::editingStyleIncludingTypingStyle): Calls SelectionController::typingStyle.
4044         * editing/EditingStyle.h: Moved WritingDirection from Editor.h
4045         * editing/Editor.cpp:
4046         (WebCore::Editor::textDirectionForSelection): Calls EditingStyle::textDirection.
4047         (WebCore::Editor::computeAndSetTypingStyle): Calls SelectionController::typingStyle.
4048         (WebCore::Editor::selectionComputedStyle): Ditto.
4049         (WebCore::Editor::styleForSelectionStart): Ditto.
4050         * editing/Editor.h:
4051         * editing/InsertLineBreakCommand.cpp:
4052         (WebCore::InsertLineBreakCommand::doApply): Ditto.
4053         * editing/InsertTextCommand.cpp:
4054         (WebCore::InsertTextCommand::input): Calls EditingStyle::prepareToApplyAt with PreserveWritingDirection.
4055         * editing/SelectionController.h:
4056         (WebCore::SelectionController::typingStyle): Returns EditingStyle* rather than CSSMutableStyleDeclaration*.
4057         (WebCore::SelectionController::copyTypingStyle): Added.
4058
4059 2010-11-22  Patrick Gansterer  <paroga@webkit.org>
4060
4061         Reviewed by Adam Roben.
4062
4063         [WINCE] Set correct preprocessor definitions
4064         https://bugs.webkit.org/show_bug.cgi?id=49887
4065
4066         * config.h:
4067
4068 2010-11-22  James Robinson  <jamesr@chromium.org>
4069
4070         Reviewed by Dimitri Glazkov.
4071
4072         [chromium] font-size:0 text runs should have zero width
4073         https://bugs.webkit.org/show_bug.cgi?id=49871
4074
4075         Returns 0 from platformWidthForGlyph if the specified font size is 0.
4076
4077         Test: fast/text/font-size-zero.html
4078
4079         * platform/graphics/chromium/SimpleFontDataChromiumWin.cpp:
4080         (WebCore::SimpleFontData::platformWidthForGlyph):
4081         * platform/graphics/chromium/SimpleFontDataLinux.cpp:
4082         (WebCore::SimpleFontData::platformWidthForGlyph):
4083
4084 2010-11-22  Charlie Reis  <creis@chromium.org>
4085
4086         Reviewed by Darin Fisher.
4087
4088         Update correct content state during back/forward navigations
4089         https://bugs.webkit.org/show_bug.cgi?id=48809
4090
4091         Ensures that history's previousItem is non-null when clients try to
4092         update content state (e.g., Chromium's UpdateSessionHistory).  We now
4093         track load completions with a boolean field rather than by clearing
4094         previousItem.
4095
4096         Test: fast/history/saves-state-after-frame-nav.html
4097
4098         * loader/HistoryController.cpp:
4099         * loader/HistoryController.h:
4100
4101 2010-11-22  Luiz Agostini  <luiz.agostini@openbossa.org>
4102
4103         Unreviewed, Windows build fix.
4104
4105         Adding JSMediaQueryList to DerivedSources.cpp.
4106
4107         * DerivedSources.cpp:
4108
4109 2010-11-22  Adam Roben  <aroben@apple.com>
4110
4111         Use paths relative to $WebKitVSPropsRedirectionDir to access shared .vsprops files
4112
4113         Apple's Windows build allows placing header files and import libraries for WebKit's
4114         dependencies (CoreGraphics, CFNetwork, SQLite, etc.) outside the source tree via the
4115         $WebKitLibrariesDir environment variable. This is both required for production builds and
4116         convenient for Apple-internal developer builds. Apple's production builds also require that
4117         WebKit's shared .vsprops files be accessed relative to $WebKitLibrariesDir. In production
4118         builds, the files are copied into that directory tree by the
4119         WebKitLibraries/win/tools/WinTools.make file. In Apple-internal developer builds, the
4120         copying is done by
4121         JavaScriptCore/JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCoreGenerated.make.
4122
4123         This .vsprops copying is problematic in one very important case: when a developer updates
4124         their source tree and then tries to build. Visual Studio only reads .vsprops files when a
4125         project is first loaded. So, when Visual Studio is first opened after the .vsprops files are
4126         updated, it reads in the old files that were already residing in $WebKitLibrariesDir. When a
4127         build is started, JavaScriptCoreGenerated.make copies the new .vsprops files into
4128         $WebKitLibrariesDir, but Visual Studio will not pick up the changes.  The rest of the build
4129         will proceed with out-of-date .vsprops files, which will likely result in a build failure.
4130
4131         To fix this, we now use normal relative paths to access the .vsprops files in the source
4132         tree rather than in $WebKitLibrariesDir, but prefix those paths with a new environment
4133         variable, $WebKitVSPropsRedirectionDir. In developer builds, this environment variable is
4134         unset, so the normal relative paths are used to read the .vsprops files out of the source
4135         tree directly. In production builds, this environment variable is set to a fake directory
4136         that will cause the .vsprops files in $WebKitLibrariesDir to be found when the relative path
4137         is resolved.
4138         
4139         For example, JavaScriptCore.vcproj uses this path for FeatureDefines.vsprops:
4140
4141         $(WebKitVSPropsRedirectionDir)..\..\..\WebKitLibraries\win\tools\vsprops\FeatureDefines.vsprops
4142
4143         In developer builds, where $WebKitVSPropsRedirectionDir is unset, this will point to the
4144         files in WebKitLibraries\win\tools\vsprops in the source tree. In production builds,
4145         JavaScriptCore.make sets $WebKitVSPropsRedirectionDir to
4146         "$(SRCROOT)\AppleInternal\tools\vsprops\OpenSource\1\2\3\", so the full path for
4147         FeatureDefines.vsprops becomes:
4148
4149         $(SRCROOT)\AppleInternal\tools\vsprops\OpenSource\1\2\3\..\..\..\WebKitLibraries\win\tools\vsprops\FeatureDefines.vsprops
4150
4151         which resolves to:
4152
4153         $(SRCROOT)\AppleInternal\tools\vsprops\OpenSource\WebKitLibraries\win\tools\vsprops\FeatureDefines.vsprops
4154
4155         (We rely on the fact that Windows doesn't care whether the directories "1", "2", and "3"
4156         actually exist since they are matched by an equal number of ".." path components.)
4157
4158         Note that Visual Studio still won't pick up changes made to .vsprops files while Visual
4159         Studio is open, but that problem hasn't seemed to cause developers many headaches so far.
4160
4161         Fixes <http://webkit.org/b/49181> Windows build fails mysteriously when .vsprops files are
4162         updated
4163
4164         Reviewed by Dave Hyatt.
4165
4166         * WebCore.vcproj/WebCore.make: Set $WebKitVSPropsRedirectionDir so that
4167         production builds can find the .vsprops files.
4168
4169         * WebCore.vcproj/QTMovieWin.vcproj:
4170         * WebCore.vcproj/WebCore.vcproj:
4171         Changed to use paths relative to $WebKitVSPropsRedirectionDir to access shared .vsprops
4172         files.
4173
4174 2010-10-21  Luiz Agostini  <luiz.agostini@openbossa.org>
4175
4176         Reviewed by Darin Adler.
4177
4178         Implement CSSOM View matchMedia interface
4179         https://bugs.webkit.org/show_bug.cgi?id=37205
4180
4181         New interfaces may be used to evaluate media queries and to associate listeners
4182         to media queries. Those listeners are called whenever the associated query changes.
4183         Specification may be found at http://dev.w3.org/csswg/cssom-view/#the-mediaquerylist-interface
4184
4185         operator== added to JS version of ScriptValue.
4186         Method isFunction added to JS and V8 versions of ScriptValue.
4187
4188         * bindings/js/ScriptValue.cpp:
4189         (WebCore::ScriptValue::isFunction):
4190         * bindings/js/ScriptValue.h:
4191         (WebCore::ScriptValue::operator==):
4192         * bindings/v8/ScriptValue.h:
4193         (WebCore::ScriptValue::isFunction):
4194
4195         Some changes were needed to the code generators to handle type MediaQueryListListener.
4196
4197         * bindings/scripts/CodeGeneratorGObject.pm:
4198         * bindings/scripts/CodeGeneratorJS.pm:
4199         * bindings/scripts/CodeGeneratorV8.pm:
4200
4201         Some changes to the bindings test results that were previously added.
4202
4203         * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListener.cpp:
4204         * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListener.h:
4205         * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
4206         (WebCore::jsTestMediaQueryListListenerPrototypeFunctionMethod):
4207         * bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp:
4208         (WebCore::TestMediaQueryListListenerInternal::methodCallback):
4209         (WebCore::ConfigureV8TestMediaQueryListListenerTemplate):
4210
4211         New interfaces:
4212
4213         * css/MediaQueryList.cpp: Added.
4214         * css/MediaQueryList.h: Added.
4215         * css/MediaQueryList.idl: Added.
4216
4217         * css/MediaQueryListListener.cpp: Added.
4218         * css/MediaQueryListListener.h: Added.
4219         * css/MediaQueryListListener.idl: Added.
4220
4221         To avoid adding code to classes DOMWindow and Document a new class MediaQueryMatcher was created.
4222
4223         * css/MediaQueryMatcher.cpp: Added.
4224         * css/MediaQueryMatcher.h: Added.
4225
4226         Document and DOMWindow have changed to support new features. DOMWindow is the class that
4227         publishes methods matchMedia but for page cache to work properly the reference to the
4228         MediaQueryMatcher must be in Document.
4229
4230         * dom/Document.cpp:
4231         (WebCore::Document::~Document):
4232         (WebCore::Document::mediaQueryMatcher):
4233         (WebCore::Document::styleSelectorChanged):
4234         * dom/Document.h:
4235         * page/DOMWindow.cpp: