4ec1d62996659f804de8ae9b27d33238b353ba96
[WebKit-https.git] / WebCore / ChangeLog
1 2011-01-03  Darin Adler  <darin@apple.com>
2
3         Try to fix Chromium build.
4
5         * history/HistoryItem.cpp:
6         (WebCore::HistoryItem::encodeBackForwardTreeNode): Added a V8 case here.
7         Not sure this ever will be used with V8.
8         (WebCore::HistoryItem::decodeBackForwardTree): Ditto.
9
10 2011-01-03  Darin Adler  <darin@apple.com>
11
12         Try to fix Leopard build.
13
14         * history/HistoryItem.cpp: Use a consistent type, uint64_t, for the
15         size variable.
16
17 2011-01-03  Abhishek Arya  <inferno@chromium.org>
18
19         Reviewed by Darin Adler.
20
21         Fixes before child calculation when adding anonymous childs to table parts.
22         https://bugs.webkit.org/show_bug.cgi?id=50932
23
24         Fix in r74364 was incomplete. When before child is equal to the table part(to
25         which the new child is getting added), it confuses the table part to add it
26         incorrectly as an after child. The patch fixes by passing the before child as
27         the table part's first child.
28
29         Tests: fast/css-generated-content/table-before-after-child-add.html
30                fast/css-generated-content/table-cell-before-after-child-add.html
31                fast/css-generated-content/table-row-before-after-child-add.html
32                fast/css-generated-content/table-row-before-after-child-add.html
33
34         * rendering/RenderTable.cpp:
35         (WebCore::RenderTable::addChild):
36         * rendering/RenderTableRow.cpp:
37         (WebCore::RenderTableRow::addChild):
38         * rendering/RenderTableSection.cpp:
39         (WebCore::RenderTableSection::addChild):
40
41 2011-01-03  Dan Bernstein  <mitz@apple.com>
42
43         Reviewed by Simon Fraser.
44
45         Shrink HTMLTableCellElement
46         https://bugs.webkit.org/show_bug.cgi?id=51858
47
48         * html/HTMLTableCellElement.cpp:
49         (WebCore::HTMLTableCellElement::HTMLTableCellElement): Removed intialization of m_row and
50         m_col.
51         * html/HTMLTableCellElement.h: Removed m_row and m_col and their accessors.
52
53 2011-01-03  Darin Adler  <darin@apple.com>
54
55         Fix build.
56
57         * platform/network/FormData.cpp:
58         (WebCore::FormData::create): Roll back uint8_t change.
59         (WebCore::FormData::flatten): Ditto.
60         (WebCore::FormData::flattenToString): Ditto.
61         (WebCore::encode): Ditto.
62         (WebCore::decode): Ditto.
63         (WebCore::FormData::encodeForBackForward):
64         * platform/network/FormData.h: Ditto.
65         * platform/network/mac/FormDataStreamMac.mm:
66         (WebCore::advanceCurrentStream): Ditto.
67
68 2011-01-03  Darin Adler  <darin@apple.com>
69
70         Reviewed by Brady Eidson.
71
72         Add code to encode/decode the back/forward tree
73         https://bugs.webkit.org/show_bug.cgi?id=51853
74
75         * history/HistoryItem.cpp:
76         (WebCore::HistoryItem::encodeBackForwardTree): Added.
77         (WebCore::HistoryItem::encodeBackForwardTreeNode): Added.
78         (WebCore::HistoryItem::decodeBackForwardTree): Added.
79         * history/HistoryItem.h: Added functions above.
80
81         * platform/network/FormData.cpp:
82         (WebCore::FormData::create): Changed type to Vector<uint8_t> instead of
83         Vector<char>. This type is used in our newer code for vectors of bytes.
84         (WebCore::FormData::flatten): Ditto.
85         (WebCore::FormData::flattenToString): Ditto. Had to add a cast here.
86         (WebCore::FormData::encodeForBackForward): Added.
87         (WebCore::FormData::decodeForBackForward): Added.
88         * platform/network/FormData.h: Changed type to Vector<uint8_t> instead of
89         Vector<char>. Also made some single-argument constructors explicit.
90         Also added the new functions.
91
92         * platform/network/mac/FormDataStreamMac.mm:
93         (WebCore::advanceCurrentStream): Changed to use uint8_t to match above.
94
95 2011-01-03  Simon Fraser  <simon.fraser@apple.com>
96
97         Attempt to fix GTK build.
98
99         * platform/graphics/gtk/FontGtk.cpp:
100         (WebCore::drawGlyphsShadow):
101
102 2011-01-03  Helder Correia  <helder@sencha.com>
103
104         Reviewed by Simon Fraser.
105
106         ContextShadow can avoid code duplication for getting the CTM
107         https://bugs.webkit.org/show_bug.cgi?id=51799
108
109         ContextShadow defines its own getTransformationMatrixFromContext()
110         which does exactly the same as GraphicsContext::getCTM().
111
112         Existing tests: fast/canvas/canvas*shadow*html
113
114         * platform/graphics/ContextShadow.cpp:
115         (WebCore::ContextShadow::mustUseContextShadow):
116         (WebCore::ContextShadow::adjustBlurDistance):
117         (WebCore::ContextShadow::calculateLayerBoundingRect):
118         * platform/graphics/ContextShadow.h:
119         * platform/graphics/cairo/ContextShadowCairo.cpp:
120         (WebCore::ContextShadow::beginShadowLayer):
121         (WebCore::ContextShadow::endShadowLayer):
122         (WebCore::ContextShadow::drawRectShadowWithoutTiling):
123         * platform/graphics/cairo/FontCairo.cpp:
124         (WebCore::drawGlyphsShadow):
125         * platform/graphics/cairo/GraphicsContextCairo.cpp:
126         (WebCore::drawPathShadow):
127         * platform/graphics/cairo/ImageCairo.cpp:
128         (WebCore::BitmapImage::draw):
129         * platform/graphics/gtk/FontGtk.cpp:
130         (WebCore::drawGlyphsShadow):
131         * platform/graphics/qt/ContextShadowQt.cpp:
132         (WebCore::ContextShadow::beginShadowLayer):
133         (WebCore::ContextShadow::endShadowLayer):
134         * platform/graphics/qt/FontQt.cpp:
135         (WebCore::drawTextCommon):
136         * platform/graphics/qt/GraphicsContextQt.cpp:
137         (WebCore::GraphicsContext::fillPath):
138         (WebCore::GraphicsContext::strokePath):
139         (WebCore::GraphicsContext::fillRect):
140         (WebCore::GraphicsContext::fillRoundedRect):
141         * platform/graphics/qt/ImageQt.cpp:
142         (WebCore::BitmapImage::draw):
143         * platform/graphics/qt/StillImageQt.cpp:
144         (WebCore::StillImage::draw):
145
146 2011-01-03  Darin Adler  <darin@apple.com>
147
148         Reviewed by Dan Bernstein.
149
150         InsertTextCommand::m_charactersAdded is unused
151         https://bugs.webkit.org/show_bug.cgi?id=51849
152
153         * editing/InsertTextCommand.cpp:
154         (WebCore::InsertTextCommand::InsertTextCommand): Don't initialize m_charactersAdded.
155         (WebCore::InsertTextCommand::input): Don't update m_charactersAdded.
156         * editing/InsertTextCommand.h: Removed charactersAdded function and
157         m_charactersAdded data member.
158
159 2011-01-03  Carlos Garcia Campos  <cgarcia@igalia.com>
160
161         Reviewed by Martin Robinson.
162
163         [GTK] Move paintMenuListButton() to RenderThemeGtk.cpp
164         https://bugs.webkit.org/show_bug.cgi?id=51832
165
166         Method paintMenuListButton() contains code common to both gtk 2
167         and 3, so it can be moved to RenderThemeGtk.cpp instead of
168         duplicating it.
169
170         * platform/gtk/RenderThemeGtk.cpp:
171         (WebCore::RenderThemeGtk::paintMenuListButton):
172         * platform/gtk/RenderThemeGtk2.cpp:
173         * platform/gtk/RenderThemeGtk3.cpp:
174
175 2011-01-03  Pratik Solanki  <psolanki@apple.com>
176
177         Reviewed by Darin Adler.
178
179         https://bugs.webkit.org/show_bug.cgi?id=51850
180         Put CFNetwork loader code inside USE(CFNETWORK)
181
182         Add USE(CFNETWORK) macros around all the cf/mac network files. Also added all CFNetwork
183         files to the WebCore Xcode project.
184
185         * WebCore.xcodeproj/project.pbxproj:
186         * loader/cf/ResourceLoaderCFNet.cpp:
187         * loader/mac/ResourceLoaderMac.mm:
188         * platform/network/cf/AuthenticationCF.cpp:
189         * platform/network/cf/AuthenticationCF.h:
190         * platform/network/cf/CookieJarCFNet.cpp:
191         * platform/network/cf/CookieStorageCFNet.cpp:
192         * platform/network/cf/CookieStorageCFNet.h:
193         * platform/network/cf/CredentialStorageCFNet.cpp:
194         * platform/network/cf/FormDataStreamCFNet.cpp:
195         * platform/network/cf/FormDataStreamCFNet.h:
196         * platform/network/cf/LoaderRunLoopCF.cpp:
197         * platform/network/cf/LoaderRunLoopCF.h:
198         * platform/network/cf/ResourceError.h:
199         * platform/network/cf/ResourceHandleCFNet.cpp:
200         * platform/network/cf/ResourceRequest.h:
201         * platform/network/cf/ResourceRequestCFNet.cpp:
202         * platform/network/cf/ResourceRequestCFNet.h:
203         * platform/network/cf/ResourceResponse.h:
204         * platform/network/cf/ResourceResponseCFNet.cpp:
205         * platform/network/mac/AuthenticationMac.h:
206         * platform/network/mac/AuthenticationMac.mm:
207         * platform/network/mac/FormDataStreamMac.h:
208         * platform/network/mac/FormDataStreamMac.mm:
209         * platform/network/mac/ResourceError.h:
210         * platform/network/mac/ResourceHandleMac.mm:
211         * platform/network/mac/ResourceRequest.h:
212         * platform/network/mac/ResourceRequestMac.mm:
213         * platform/network/mac/ResourceResponse.h:
214         * platform/network/mac/ResourceResponseMac.mm:
215
216 2011-01-03  Yi Shen  <yi.4.shen@nokia.com>
217
218         Reviewed by Adam Barth.
219
220         [Qt] Add SelectAll option to the context menu for the editor
221         https://bugs.webkit.org/show_bug.cgi?id=50049
222
223         Enable SelectAll for the Qt context menu.
224
225         * page/ContextMenuController.cpp:
226         (WebCore::ContextMenuController::populate):
227         * platform/ContextMenuItem.h:
228         * platform/LocalizationStrategy.h:
229         * platform/LocalizedStrings.cpp:
230         (WebCore::contextMenuItemTagSelectAll):
231         * platform/LocalizedStrings.h:
232
233 2011-01-03  Dan Bernstein  <mitz@apple.com>
234
235         Reviewed by Darin Adler.
236
237         Shrink RootInlineBox
238         https://bugs.webkit.org/show_bug.cgi?id=51847
239
240         * rendering/RootInlineBox.cpp:
241         (WebCore::RootInlineBox::alignBoxesInBlockDirection): Changed to use the baselineType()
242         accessor.
243         * rendering/RootInlineBox.h: Rolled m_baselineType into a bitfield. Changed its type to
244         unsigned because otherwise MSVC treats it as signed.
245         (WebCore::RootInlineBox::baselineType): Added a cast.
246
247 2011-01-03  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>
248
249         Reviewed by Martin Robinson.
250
251         [GTK] Split webkitprivate.{cpp,h} in more manageable chunks
252         https://bugs.webkit.org/show_bug.cgi?id=50698
253
254         Fix DOM bindings generation to no longer include the now-gone
255         webkitprivate.h header, including the appropriate replacements
256         instead.
257
258         * bindings/scripts/CodeGeneratorGObject.pm:
259
260 2011-01-03  Brady Eidson  <beidson@apple.com>
261
262         Reviewed by Darin Adler.
263
264         Add Encode/Decode machinery Darin and I plan to work with for back/forward stuff in WebKit2.
265
266         * ForwardingHeaders/wtf/Decoder.h: Added.
267         * ForwardingHeaders/wtf/Encoder.h: Added.
268
269 2011-01-03  Chris Fleizach  <cfleizach@apple.com>
270
271         Reviewed by Darin Adler.
272
273         AX: Regression: WebKit no longer auto-scrolls with VoiceOver navigation
274         https://bugs.webkit.org/show_bug.cgi?id=51833
275
276         Make sure the web area returns the contentsSize, not the same size as what is displayed.
277
278         Test: platform/mac/accessibility/webarea-size-equals-content-size.html
279
280         * accessibility/AccessibilityRenderObject.cpp:
281         (WebCore::AccessibilityRenderObject::boundingBoxRect):
282
283 2011-01-03  Simon Fraser  <simon.fraser@apple.com>
284
285         Fix warning in 32-bit builds.
286
287         * css/CSSGradientValue.cpp:
288         (WebCore::CSSLinearGradientValue::createGradient):
289
290 2011-01-03  Benjamin C Meyer  <bmeyer@rim.com>
291
292         Reviewed by Daniel Bates.
293
294         In the cmake build system move logic related to ENABLE_NOTIFICATIONS into its own block.
295         https://bugs.webkit.org/show_bug.cgi?id=51827
296
297         * CMakeLists.txt:
298
299 2011-01-03  Dan Bernstein  <mitz@apple.com>
300
301         Reviewed by Simon Fraser.
302
303         Remove the unused RenderTableCell::m_percentageHeight
304         https://bugs.webkit.org/show_bug.cgi?id=51837
305
306         * rendering/RenderTableCell.cpp:
307         (WebCore::RenderTableCell::RenderTableCell): Removed initialization of m_percentageHeight.
308         * rendering/RenderTableCell.h: Removed m_percentageHeight.
309
310 2011-01-03  Simon Fraser  <simon.fraser@apple.com>
311
312         Reviewed by David Hyatt.
313
314         Implement -webkit-linear-gradient and -webkit-radial-gradient
315         https://bugs.webkit.org/show_bug.cgi?id=28152
316
317         Add support for -webkit-radial-gradients.
318
319         Tests: fast/gradients/css3-radial-gradients.html
320                fast/gradients/css3-radial-gradients2.html
321
322         * css/CSSGradientValue.cpp:
323         (WebCore::blend): Used to blend colors, which is necessary when truncating
324         the start of radial gradients.
325         (WebCore::GradientStop): Small struct to aid gradient stop processing.
326         (WebCore::CSSGradientValue::addStops): Rename 'positions' to 'stops', and store
327         the color so that we can blend it when truncating radial gradients. Changed
328         to handle both linear and radial gradients.
329         (WebCore::CSSRadialGradientValue::cssText): Update to follow the spec.
330         (WebCore::CSSRadialGradientValue::resolveRadius): Stylistic change.
331         (WebCore::distanceToClosestCorner): New utility method.
332         (WebCore::distanceToFarthestCorner): Ditto.
333         (WebCore::CSSRadialGradientValue::createGradient): New logic to deal with shape and
334         fill rules.
335
336         * css/CSSGradientValue.h:
337         (WebCore::CSSGradientValue::isLinearGradient): Color-stop processing needs to know what
338         kind of gradient it's dealing with, so add new isFooGradient methods.
339         (WebCore::CSSGradientValue::isRadialGradient): Ditto.
340         (WebCore::CSSLinearGradientValue::isLinearGradient):
341         (WebCore::CSSRadialGradientValue::setShape): New setters for shape, size etc.
342         (WebCore::CSSRadialGradientValue::setSizingBehavior):
343         (WebCore::CSSRadialGradientValue::setEndHorizontalSize):
344         (WebCore::CSSRadialGradientValue::setEndVerticalSize):
345         (WebCore::CSSRadialGradientValue::isRadialGradient):
346
347         * css/CSSParser.h:
348         * css/CSSParser.h: Pass a CSSParserValueList* into parseFillPositionXY() and parseFillPosition()
349         so we can use parseFillPosition() when parsing a gradient function.
350         * css/CSSParser.cpp:
351         (WebCore::CSSParser::parseFillPositionXY): Pass in a CSSParserValueList*
352         (WebCore::CSSParser::parseFillPosition): Ditto
353         (WebCore::CSSParser::parseFillProperty): Pass m_valueList to parseFillPosition.
354         (WebCore::CSSParser::parseTransformOriginShorthand): Ditto
355         (WebCore::CSSParser::parseRadialGradient): Flesh out radial gradient parsing.
356         (WebCore::CSSParser::parseTransformOrigin): Pass m_valueList to parseFillPosition.
357         (WebCore::CSSParser::parsePerspectiveOrigin): Ditto
358
359         * css/CSSValueKeywords.in: New keywords for radial gradient shape and fill behaviors.
360
361         * platform/graphics/Gradient.cpp:
362         (WebCore::Gradient::Gradient): Pass aspect ratio for elliptical gradients.
363         * platform/graphics/Gradient.h: Add aspect ratio for elliptical gradients.
364         (WebCore::Gradient::create):
365         (WebCore::Gradient::startRadius): Expose radii.
366         (WebCore::Gradient::endRadius):
367         (WebCore::Gradient::setStartRadius): Setters are required for when we need to scale color stops.
368         (WebCore::Gradient::setEndRadius):
369         (WebCore::Gradient::aspectRatio):
370         * platform/graphics/cg/GradientCG.cpp:
371         (WebCore::Gradient::paint): For elliptical gradients, scale the CTM.
372         * platform/graphics/wince/GraphicsContextWinCE.cpp:
373         (WebCore::GraphicsContext::fillRect): Use start/endRadius() rather than r0() and r1().
374
375 2011-01-03  Simon Fraser  <simon.fraser@apple.com>
376
377         Reviewed by David Hyatt.
378
379         Implement -webkit-linear-gradient and -webkit-radial-gradient
380         https://bugs.webkit.org/show_bug.cgi?id=28152
381         
382         Add support for the parsing and rendering of non-repeating CSS3 linear gradients,
383         according to <http://dev.w3.org/csswg/css3-images/#linear-gradients>.
384
385         Tests: fast/gradients/css3-color-stop-units.html
386                fast/gradients/css3-color-stops.html
387                fast/gradients/css3-gradient-parsing.html
388                fast/gradients/css3-linear-angle-gradients.html
389
390         * css/CSSGradientValue.h:
391         Add subclasses of CSSGradientValue for linear and radial gradients.
392         
393         * css/CSSGradientValue.cpp:
394         (WebCore::CSSGradientValue::image): Add FIXME comment about why we can't cache
395         the gradient sometimes.
396         (WebCore::compareStops): positions are CSSValues now.
397         (WebCore::CSSGradientValue::sortStopsIfNeeded): Add assertion that this is only called
398         for old-style gradients.
399         (WebCore::CSSGradientValue::addStops): New method that handles the spec rules about
400         missing positions, ensuring that stop position is ordered, and spacing out stops
401         without positions. Also normalize gradients which use stops outside the 0-1 range
402         so that platforms can render them correctly.
403         (WebCore::positionFromValue): Determin the position on the gradient line for percentage,
404         number and length values.
405         (WebCore::CSSGradientValue::computeEndPoint):
406         (WebCore::CSSLinearGradientValue::cssText):
407         (WebCore::endPointsFromAngle): Compute endpoints for a gradient which covers the rectangle
408         given an angle.
409         (WebCore::CSSLinearGradientValue::createGradient):
410         (WebCore::CSSRadialGradientValue::cssText):
411         (WebCore::CSSRadialGradientValue::resolveRadius):
412         (WebCore::CSSRadialGradientValue::createGradient):
413
414         * css/CSSParser.cpp:
415         (WebCore::CSSParser::parseValue): Style fix.
416         (WebCore::CSSParser::parseContent): Use isGeneratedImageValue() and parseGeneratedImage()
417         (WebCore::CSSParser::parseFillImage): Use isGeneratedImageValue() and parseGeneratedImage()
418         (WebCore::CSSParser::parseBorderImage): Use isGeneratedImageValue() and parseGeneratedImage()
419         (WebCore::parseDeprecatedGradientPoint): Renamed to indicate that it's only used for -webkit-gradient.
420         (WebCore::parseDeprecatedGradientColorStop): Renamed to indicate that it's only used for -webkit-gradient,
421         and fixed to store CSSValues for the stop position.
422         (WebCore::CSSParser::parseDeprecatedGradient): Renamed to indicate that it's only used for -webkit-gradient,
423         and create CSSLinearGradientValue and CSSRadialGradientValue as appropriate.
424         (WebCore::valueFromSideKeyword):
425         (WebCore::parseGradientColorOrKeyword): Color parsing utility.
426         (WebCore::CSSParser::parseLinearGradient): New method to parse linear gradients.
427         (WebCore::CSSParser::parseRadialGradient): Stub for new method to parse radial gradients.
428         (WebCore::CSSParser::isGeneratedImageValue): Detect gradients and CSS canvas.
429         (WebCore::CSSParser::parseGeneratedImage): Parser for generated images like gradients
430         and CSS canvas.
431         * css/CSSParser.h:
432         * platform/graphics/Gradient.h:
433         (WebCore::Gradient::setP0): We need to be able to change the points when normalizing gradients.
434         (WebCore::Gradient::setP1): Ditto.
435
436 2011-01-03  Noam Rosenthal  <noam.rosenthal@nokia.com>
437
438         Reviewed by Andreas Kling.
439
440         [Qt] document.getElementById(...) doesn't return the right object in combination with QGraphicsWidget
441         https://bugs.webkit.org/show_bug.cgi?id=51464
442
443         Added a way to bind any QObject created as a plugin to JavaScript, 
444         by adding a custom member (qtObject) to WebCore::Widget. 
445         Added a test to tst_qwebpage to make sure plugins created 
446         as QGraphicsWidget are accessible through JavaScript.
447
448         * bindings/js/ScriptControllerQt.cpp:
449         (WebCore::ScriptController::createScriptInstanceForWidget):
450         * platform/Widget.h:
451         * platform/qt/WidgetQt.cpp:
452         (WebCore::Widget::Widget):
453         (WebCore::Widget::setBindingObject):
454         (WebCore::Widget::bindingObject):
455
456 2011-01-03  David Hyatt  <hyatt@apple.com>
457
458         Reviewed by Simon Fraser.
459
460         https://bugs.webkit.org/show_bug.cgi?id=51328
461
462         Printing on a page with body { height: 100% } clips out the overflow contents.  This happened
463         because the computePageRects function was never correct.  It was using the layer's width and height
464         for the document's width and height, and the layer no longer includes overflow in its width and
465         height.  It was also incorrectly assuming the first page would begin at (0,0), and this is an invalid
466         assumption in RTL or vertical text environments.
467
468         Added printing/page-count-percentage-height.html
469
470         * page/PrintContext.cpp:
471         (WebCore::PrintContext::computePageRects):
472         (WebCore::PrintContext::computePageRectsWithPageSizeInternal):
473
474 2011-01-03  Csaba Osztrogon√°c  <ossy@webkit.org>
475
476         [Qt] Unreviewed buildfix for --minimal build after r74895.
477
478         * html/InputType.cpp: Missing include added.
479         * html/NumberInputType.cpp: Missing include added.
480
481 2011-01-02  Darin Adler  <darin@apple.com>
482
483         Reviewed by Kent Tamura.
484
485         Eliminate HTMLInputElement::m_deprecatedTypeNumber, other input refactoring and renaming
486         https://bugs.webkit.org/show_bug.cgi?id=51791
487
488         * dom/InputElement.h: Make sanitizeValueForTextField public so it can
489         be called by InputType.
490
491         * html/BaseButtonInputType.cpp:
492         (WebCore::BaseButtonInputType::accessKeyAction): Added.
493         (WebCore::BaseButtonInputType::storesValueSeparateFromAttribute): Added.
494         * html/BaseButtonInputType.h: Ditto.
495
496         * html/BaseCheckableInputType.cpp:
497         (WebCore::BaseCheckableInputType::canSetStringValue): Added.
498         (WebCore::BaseCheckableInputType::accessKeyAction): Added.
499         (WebCore::BaseCheckableInputType::fallbackValue): Added.
500         (WebCore::BaseCheckableInputType::storesValueSeparateFromAttribute): Added.
501         (WebCore::BaseCheckableInputType::isCheckable): Added.
502         * html/BaseCheckableInputType.h: Ditto.
503
504         * html/BaseDateAndTimeInputType.cpp:
505         (WebCore::BaseDateAndTimeInputType::hasSpinButton): Added.
506         * html/BaseDateAndTimeInputType.h: Ditto.
507
508         * html/BaseTextInputType.h: Made more functions private.
509
510         * html/ButtonInputType.cpp:
511         (WebCore::ButtonInputType::isTextButton): Added.
512         * html/ButtonInputType.h: Ditto.
513
514         * html/CheckboxInputType.cpp:
515         (WebCore::CheckboxInputType::willDispatchClick): Added.
516         (WebCore::CheckboxInputType::didDispatchClick): Added.
517         (WebCore::CheckboxInputType::isCheckbox): Added.
518         * html/CheckboxInputType.h: Ditto.
519
520         * html/DateTimeInputType.cpp:
521         (WebCore::DateTimeInputType::scaledStepValueShouldBeInteger): Fixed
522         typo in name of this function.
523         * html/DateTimeInputType.h: Ditto.
524         * html/DateTimeLocalInputType.cpp:
525         (WebCore::DateTimeLocalInputType::scaledStepValueShouldBeInteger): Ditto.
526         * html/DateTimeLocalInputType.h: Ditto.
527
528         * html/EmailInputType.cpp:
529         (WebCore::EmailInputType::isEmailField): Added.
530         * html/EmailInputType.h: Ditto.
531
532         * html/FileInputType.cpp:
533         (WebCore::FileInputType::FileInputType): Added.
534         (WebCore::FileInputType::canSetStringValue): Added.
535         (WebCore::FileInputType::canChangeFromAnotherType): Added.
536         (WebCore::FileInputType::files): Added.
537         (WebCore::FileInputType::canSetValue): Added.
538         (WebCore::FileInputType::getTypeSpecificValue): Added.
539         (WebCore::FileInputType::storesValueSeparateFromAttribute): Added.
540         (WebCore::FileInputType::setFileList): Added.
541         (WebCore::FileInputType::isFileUpload): Added.
542         * html/FileInputType.h: Ditto.
543
544         * html/HTMLInputElement.cpp:
545         (WebCore::HTMLInputElement::HTMLInputElement): Updated for data member
546         renaming and removal.
547         (WebCore::HTMLInputElement::isValidValue): Call canSetStringValue
548         instead of checking specific type numbers.
549         (WebCore::HTMLInputElement::getAllowedValueStepWithDecimalPlaces):
550         Use fastGetAttribute and fixed typo in the name of the
551         scaledStepValueShouldBeInteger function.
552         (WebCore::HTMLInputElement::isKeyboardFocusable): Call
553         InputType::isKeyboardFocusable; moved most of the type-specific
554         logic there.
555         (WebCore::HTMLInputElement::shouldUseInputMethod): Call
556         InputType::shouldUseInputMethod; moved the type-specific logic there.
557         (WebCore::HTMLInputElement::handleBlurEvent): Call
558         InputType::handleBlurEvent; moved the type-specific logic there.
559         (WebCore::HTMLInputElement::setType): Tweak the names and types
560         in this function.
561         (WebCore::HTMLInputElement::updateType): Removed the code that
562         set m_deprecatedTypeNumber. Compare types by comparing the value
563         from formControlType. Removed file-specific logic and instead call
564         InputType::canChangeFromAnotherType. Streamlined the logic for
565         activation callbacks.
566         (WebCore::HTMLInputElement::accessKeyAction): Call
567         InputType::accessKeyAction; moved the type-specific logic there.
568         (WebCore::HTMLInputElement::mapToEntry): Call
569         InputType::shouldRespectHeightAndWidthAttributes and
570         InputType::shouldRespectAlignAttribute.
571         (WebCore::HTMLInputElement::parseMappedAttribute): Updated
572         for name changes and the removal of m_defaultChecked. Changed the
573         alt attribute logic to be based on the class of the renderer.
574         Call InputType::srcAttributeChanged and moved the type-specific
575         logic there. Call shouldRespectAlignAttribute and
576         shouldRespectHeightAndWidthAttributes rather than having
577         type-specific logic here. Call minOrMaxAttributeChanged.
578         (WebCore::HTMLInputElement::rendererIsNeeded): Call
579         InputType::rendererIsNeeded; moved the type-specific logic there.
580         (WebCore::HTMLInputElement::attach): Removed the unneeded m_inited
581         flag, which was redundant with the m_haveType flag. Call
582         InputType::attach; moved the type-specific logic there.
583         (WebCore::HTMLInputElement::altText): Use fastGetAttribute.
584         (WebCore::HTMLInputElement::isSuccessfulSubmitButton): Call
585         InputType::canBeSuccessfulSubmitButton; moved the type-specific
586         logic there.
587         (WebCore::HTMLInputElement::isActivatedSubmit): Updated for
588         name changes.
589         (WebCore::HTMLInputElement::setActivatedSubmit): Ditto.
590         (WebCore::HTMLInputElement::reset): Updated to use
591         InputType::storesValueSeparateFromAttribute. Also use
592         hasAttribute(checkedAttr) rather than m_defaultChecked,
593         since both are the same. Also updated for name change.
594         (WebCore::HTMLInputElement::setChecked): Updated for name
595         changes. Also added call to
596         InputType::shouldSendChangeEventAfterCheckedChanged and
597         moved the type-specific logic there.
598         (WebCore::HTMLInputElement::setIndeterminate): Call
599         isCheckable to see if indeterminate is allowed.
600         Also updated for name changes.
601         (WebCore::HTMLInputElement::copyNonAttributeProperties):
602         Updated for name changes and removed data members.
603         (WebCore::HTMLInputElement::value): Call
604         InputType::getTypeSpecificValue and InputType::fallbackValue.
605         Moved the type-specific logic there.
606         (WebCore::HTMLInputElement::valueWithDefault): Call
607         InputType::defaultValue. Moved the type-specific logic there.
608         (WebCore::HTMLInputElement::setSuggestedValue): Call
609         InputType::canSetSuggestedValue. Moved the type-specific logic
610         there.
611         (WebCore::HTMLInputElement::setValue): Call
612         InputType::canSetValue. Moved the type-specific logic there.
613         Clear the file list if it exists rather than checking the
614         type explicitly. We could probably do that a more elegant way.
615         (WebCore::HTMLInputElement::placeholder): Use fastGetAttribute.
616         (WebCore::HTMLInputElement::setValueFromRenderer): Use the
617         isFileUpload function in the assertion.
618         (WebCore::HTMLInputElement::setFileListFromRenderer): Put most
619         of the code from this function into FileInputType::setFileList.
620         (WebCore::HTMLInputElement::preDispatchEventHandler): Changed
621         to call InputType::willDispatchClick, which does the type-specific
622         work. Still need to use a single struct for all types, because
623         the type of the element could change during the event handling.
624         (WebCore::HTMLInputElement::postDispatchEventHandler): Changed
625         to call InputType::didDispatchClick.
626         (WebCore::HTMLInputElement::defaultValue): Use fastGetAttribute.
627         (WebCore::HTMLInputElement::accept): Use fastGetAttribute.
628         (WebCore::HTMLInputElement::alt): Use fastGetAttribute.
629         (WebCore::HTMLInputElement::src): Use fastGetAttribute.
630         (WebCore::HTMLInputElement::setAutofilled): Updated for name
631         changes.
632         (WebCore::HTMLInputElement::files): Use InputType::files.
633         (WebCore::HTMLInputElement::isAcceptableValue): Use
634         InputType::isAcceptableValue.
635         (WebCore::HTMLInputElement::sanitizeValue): Use
636         InputType::sanitizeValue.
637         (WebCore::HTMLInputElement::hasUnacceptableValue): Use
638         InputType::hasUnacceptableValue.
639         (WebCore::HTMLInputElement::needsActivationCallback): Use
640         InputType::shouldResetOnDocumentActivation.
641         (WebCore::HTMLInputElement::willMoveToNewOwnerDocument): Use
642         InputType::willMoveToNewOwnerDocument.
643         (WebCore::HTMLInputElement::dataList): Use
644         InputType::shouldRespectListAttribute.
645         (WebCore::HTMLInputElement::selectedOption): Tweaked logic
646         and naming a bit.
647         (WebCore::HTMLInputElement::stepUpFromRenderer): Use
648         fastGetAttribute.
649         (WebCore::HTMLInputElement::isSpeechEnabled): Use
650         InputType::shouldRespectSpeechAttribute.
651         (WebCore::HTMLInputElement::isTextButton): No longer inline.
652         Calls through to InputType.
653         (WebCore::HTMLInputElement::isRadioButton): Ditto.
654         (WebCore::HTMLInputElement::isSearchField): Ditto.
655         (WebCore::HTMLInputElement::isInputTypeHidden): Ditto.
656         (WebCore::HTMLInputElement::isPasswordField): Ditto.
657         (WebCore::HTMLInputElement::isCheckbox): Ditto.
658         (WebCore::HTMLInputElement::isText): Ditto.
659         (WebCore::HTMLInputElement::isEmailField): Ditto.
660         (WebCore::HTMLInputElement::isFileUpload): Ditto.
661         (WebCore::HTMLInputElement::isImageButton): Ditto.
662         (WebCore::HTMLInputElement::isNumberField): Ditto.
663         (WebCore::HTMLInputElement::isSubmitButton): Ditto.
664         (WebCore::HTMLInputElement::isTelephoneField): Ditto.
665         (WebCore::HTMLInputElement::isURLField): Ditto.
666         (WebCore::HTMLInputElement::isEnumeratable): Ditto.
667         (WebCore::HTMLInputElement::isChecked): No longer inline.
668         Calls InputType::isCheckable.
669         (WebCore::HTMLInputElement::hasSpinButton): No longer inline.
670         Calls through to InputType.
671         (WebCore::HTMLInputElement::supportsPlaceholder): No longer
672         inline. Calls isTextType as before, but with no special case
673         for ISINDEX. That special case was unneeded since it returns
674         true from isTextType.
675         (WebCore::HTMLInputElement::checkedRadioButtons): No longer
676         inline.
677         (WebCore::HTMLInputElement::handleBeforeTextInsertedEvent):
678         No longer inline.
679
680         * html/HTMLInputElement.h: Removed multiple unneeded includes.
681         The big one is probably InputType.h, but also HTMLFormElement.h.
682         Removed unneeded forward declarations. Made many functions
683         no longer inline since they now need to make virtual function
684         dispatches. Removed the unneeded defaultChecked and
685         webkitdirectory functions. Both are handled by HTML attribute
686         reflection for DOM bindings, and the callers instead can get
687         at the attribute. Made updateCheckedRadioButtons public so it
688         can be called by an InputType class. Removed
689         DeprecatedInputType, InputTypeMap, createTypeMap,
690         deprecatedInputType, allowsIndeterminate,
691         respectHeightAndWidthAttrs, storesValueSeparateFromAttribute,
692         m_imageLoader, m_fileList, m_deprecatedTypeNumber,
693         m_defaultChecked, and m_inited. Renamed m_checked to
694         m_isChecked, m_useDefaultChecked to m_reflectsCheckedAttribute,
695         m_indeterminate tom_isIndeterminate, m_haveType to m_hasType,
696         m_activeSubmit to m_isActivatedSubmit, and m_autofilled to
697         m_isAutofilled.
698         
699         * html/HiddenInputType.cpp:
700         (WebCore::HiddenInputType::accessKeyAction): Added.
701         (WebCore::HiddenInputType::rendererIsNeeded) Added.:
702         (WebCore::HiddenInputType::storesValueSeparateFromAttribute): Added.
703         (WebCore::HiddenInputType::isHiddenType): Added.
704         (WebCore::HiddenInputType::shouldRespectHeightAndWidthAttributes): Added.
705         * html/HiddenInputType.h: Ditto.
706
707         * html/ImageInputType.cpp:
708         (WebCore::ImageInputType::ImageInputType): Moved out of the header file.
709         (WebCore::ImageInputType::srcAttributeChanged): Added.
710         (WebCore::ImageInputType::attach): Added.
711         (WebCore::ImageInputType::willMoveToNewOwnerDocument): Added.
712         (WebCore::ImageInputType::shouldRespectAlignAttribute): Added.
713         (WebCore::ImageInputType::canBeSuccessfulSubmitButton): Added.
714         (WebCore::ImageInputType::isImageButton): Added.
715         (WebCore::ImageInputType::isEnumeratable): Added.
716         (WebCore::ImageInputType::shouldRespectHeightAndWidthAttributes): Added.
717         * html/ImageInputType.h: Ditto.
718
719         * html/InputType.cpp:
720         (WebCore::InputType::create): Changed argument type to String. There
721         is no value in taking an AtomicString here.
722         (WebCore::InputType::scaledStepValueShouldBeInteger): Fixed typo in
723         this function name.
724         (WebCore::InputType::canSetStringValue): Added.
725         (WebCore::InputType::isKeyboardFocusable): Added.
726         (WebCore::InputType::shouldUseInputMethod): Added.
727         (WebCore::InputType::handleBlurEvent): Added.
728         (WebCore::InputType::accessKeyAction): Added.
729         (WebCore::InputType::attach): Added.
730         (WebCore::InputType::srcAttributeChanged): Added.
731         (WebCore::InputType::willMoveToNewOwnerDocument): Added.
732         (WebCore::InputType::shouldRespectAlignAttribute): Added.
733         (WebCore::InputType::canChangeFromAnotherType): Added.
734         (WebCore::InputType::minOrMaxAttributeChanged): Added.
735         (WebCore::InputType::canBeSuccessfulSubmitButton): Added.
736         (WebCore::InputType::rendererIsNeeded): Added.
737         (WebCore::InputType::files): Added.
738         (WebCore::InputType::getTypeSpecificValue): Added.
739         (WebCore::InputType::fallbackValue): Added.
740         (WebCore::InputType::defaultValue): Added.
741         (WebCore::InputType::canSetSuggestedValue): Added.
742         (WebCore::InputType::shouldSendChangeEventAfterCheckedChanged): Added.
743         (WebCore::InputType::storesValueSeparateFromAttribute): Added.
744         (WebCore::InputType::canSetValue): Added.
745         (WebCore::InputType::willDispatchClick): Added.
746         (WebCore::InputType::didDispatchClick): Added.
747         (WebCore::InputType::isAcceptableValue): Added.
748         (WebCore::InputType::sanitizeValue): Added.
749         (WebCore::InputType::hasUnacceptableValue): Added.
750         (WebCore::InputType::setFileList): Added.
751         (WebCore::InputType::shouldResetOnDocumentActivation): Added.
752         (WebCore::InputType::shouldRespectListAttribute): Added.
753         (WebCore::InputType::shouldRespectSpeechAttribute): Added.
754         (WebCore::InputType::isTextButton): Added.
755         (WebCore::InputType::isRadioButton): Added.
756         (WebCore::InputType::isSearchField): Added.
757         (WebCore::InputType::isHiddenType): Added.
758         (WebCore::InputType::isPasswordField): Added.
759         (WebCore::InputType::isCheckbox): Added.
760         (WebCore::InputType::isEmailField): Added.
761         (WebCore::InputType::isFileUpload): Added.
762         (WebCore::InputType::isImageButton): Added.
763         (WebCore::InputType::isNumberField): Added.
764         (WebCore::InputType::isSubmitButton): Added.
765         (WebCore::InputType::isTelephoneField): Added.
766         (WebCore::InputType::isURLField): Added.
767         (WebCore::InputType::isEnumeratable): Added.
768         (WebCore::InputType::isCheckable): Added.
769         (WebCore::InputType::hasSpinButton): Added.
770         (WebCore::InputType::shouldRespectHeightAndWidthAttributes): Added.
771
772         * html/InputType.h: Removed unneeded ExceptionCode.h include and
773         used a typedef instead as we do when we want for forward declare it.
774         Added includes and forward declarations needed for new functions.
775         Added ClickHandlingState structure. Changed the argument to create
776         to a String rather than AtomicString. Added many virtual functions.
777         
778         * html/IsIndexInputType.cpp:
779         (WebCore::IsIndexInputType::shouldRespectListAttribute): Added.
780         * html/IsIndexInputType.h: Ditto.
781
782         * html/NumberInputType.cpp:
783         (WebCore::NumberInputType::handleBlurEvent): Added.
784         (WebCore::NumberInputType::isAcceptableValue): Added.
785         (WebCore::NumberInputType::sanitizeValue): Added.
786         (WebCore::NumberInputType::hasUnacceptableValue): Added.
787         (WebCore::NumberInputType::shouldRespectSpeechAttribute): Added.
788         (WebCore::NumberInputType::isNumberField): Added.
789         (WebCore::NumberInputType::hasSpinButton): Added.
790         * html/NumberInputType.h: Ditto.
791
792         * html/PasswordInputType.cpp:
793         (WebCore::PasswordInputType::shouldUseInputMethod): Added.
794         (WebCore::PasswordInputType::shouldResetOnDocumentActivation): Added.
795         (WebCore::PasswordInputType::shouldRespectListAttribute): Added.
796         (WebCore::PasswordInputType::shouldRespectSpeechAttribute): Added.
797         (WebCore::PasswordInputType::isPasswordField): Added.
798         * html/PasswordInputType.h: Ditto.
799
800         * html/RadioInputType.cpp:
801         (WebCore::RadioInputType::isKeyboardFocusable): Added.
802         (WebCore::RadioInputType::attach): Added.
803         (WebCore::RadioInputType::shouldSendChangeEventAfterCheckedChanged): Added.
804         (WebCore::RadioInputType::willDispatchClick): Added.
805         (WebCore::RadioInputType::didDispatchClick): Added.
806         (WebCore::RadioInputType::isRadioButton): Added.
807         * html/RadioInputType.h: Ditto.
808
809         * html/RangeInputType.cpp:
810         (WebCore::RangeInputType::accessKeyAction): Added.
811         (WebCore::RangeInputType::minOrMaxAttributeChanged): Added.
812         (WebCore::RangeInputType::fallbackValue): Added.
813         (WebCore::RangeInputType::sanitizeValue): Added.
814         (WebCore::RangeInputType::shouldRespectListAttribute): Added.
815         * html/RangeInputType.h: Ditto.
816
817         * html/ResetInputType.cpp:
818         (WebCore::ResetInputType::defaultValue): Added.
819         (WebCore::ResetInputType::isTextButton): Added.
820         * html/ResetInputType.h: Ditto.
821
822         * html/SearchInputType.cpp:
823         (WebCore::SearchInputType::shouldRespectSpeechAttribute): Added.
824         (WebCore::SearchInputType::isSearchField): Added.
825         * html/SearchInputType.h: Ditto.
826
827         * html/SubmitInputType.cpp:
828         (WebCore::SubmitInputType::canBeSuccessfulSubmitButton): Added.
829         (WebCore::SubmitInputType::defaultValue): Added.
830         (WebCore::SubmitInputType::isSubmitButton): Added.
831         (WebCore::SubmitInputType::isTextButton): Added.
832         * html/SubmitInputType.h: Ditto.
833
834         * html/TelephoneInputType.cpp:
835         (WebCore::TelephoneInputType::shouldRespectSpeechAttribute): Added.
836         (WebCore::TelephoneInputType::isTelephoneField): Added.
837         * html/TelephoneInputType.h: Ditto.
838
839         * html/TextFieldInputType.cpp:
840         (WebCore::TextFieldInputType::shouldUseInputMethod): Added.
841         (WebCore::TextFieldInputType::sanitizeValue): Added.
842         (WebCore::TextFieldInputType::shouldRespectListAttribute): Added.
843         * html/TextFieldInputType.h: Ditto.
844
845         * html/TextInputType.cpp:
846         (WebCore::TextInputType::canSetSuggestedValue): Added.
847         (WebCore::TextInputType::shouldRespectSpeechAttribute): Added.
848         * html/TextInputType.h: Ditto.
849
850         * html/TimeInputType.cpp:
851         (WebCore::TimeInputType::scaledStepValueShouldBeInteger): Fixed
852         typo in the name of this function.
853         * html/TimeInputType.h: Ditto.
854
855         * html/URLInputType.cpp:
856         (WebCore::URLInputType::isURLField): Added.
857         * html/URLInputType.h: Ditto.
858
859 2011-01-03  Mihai Parparita  <mihaip@chromium.org>
860
861         Unreviewed.
862
863         NSScrollView-based scrollbars and ScrollBarTheme-based scrollbars don't look the same
864         https://bugs.webkit.org/show_bug.cgi?id=51151
865
866         Flip switch to use WebThemeEngine for Chromium/Mac scrollbar rendering,
867         so that it can match Safari's (and thus use the same baselines).
868
869         No new tests, should be covered by layout tests (which will need
870         expectation changes)
871
872         * platform/chromium/ScrollbarThemeChromiumMac.mm:
873
874 2011-01-03  Antonio Gomes  <agomes@rim.com>
875
876         Unreviewed build fix for WebKit/Gtk+.
877
878         RenderThemeGtk::initMediaColors() in RenderThemeGtk2.cpp needs to be
879         guarded by ENABLE(VIDEO), as it is in its header.
880
881         No new tests.
882
883         * platform/gtk/RenderThemeGtk2.cpp:
884
885 2011-01-02  Dan Bernstein  <mitz@apple.com>
886
887         Rubber-stamped by Simon Fraser.
888
889         <rdar://problem/8812159> Update copyright strings
890
891         * Info.plist:
892
893 2011-01-02  Dan Bernstein  <mitz@apple.com>
894
895         Reviewed by Sam Weinig.
896
897         <rdar://problem/8806570> REGRESSION (r73337): Incorrect text match count when a match occurs in a text field
898         https://bugs.webkit.org/show_bug.cgi?id=51623
899
900         * editing/Editor.cpp:
901         (WebCore::Editor::countMatchesForText): Actually remember the original search range end
902         container and offset and restore them when needed, instead of using two references to the
903         same Range.
904         * manual-tests/find-count-matches-after-text-control.html: Added.
905
906 2011-01-02  Benjamin Poulain  <benjamin.poulain@nokia.com>
907
908         Reviewed by Csaba Osztrogon√°c.
909
910         WebKit 2 does not build on 64bits with a recent GCC
911         https://bugs.webkit.org/show_bug.cgi?id=51754
912
913         Use explicitely 64 bits types for the attributes of DatabaseDetails.
914
915         * storage/DatabaseDetails.h:
916         (WebCore::DatabaseDetails::expectedUsage):
917         (WebCore::DatabaseDetails::currentUsage):
918
919 2011-01-02  Patrick Gansterer  <paroga@webkit.org>
920
921         Unreviewed WinCE build fix for r74868.
922
923         * platform/graphics/wince/ImageBufferWinCE.cpp:
924         (WebCore::getImageData):
925
926 2011-01-02  Sheriff Bot  <webkit.review.bot@gmail.com>
927
928         Unreviewed, rolling out r74847.
929         http://trac.webkit.org/changeset/74847
930         https://bugs.webkit.org/show_bug.cgi?id=51803
931
932         "Preprocessor guards should be in header files" (Requested by
933         ap on #webkit).
934
935         * bindings/js/JSDOMWindowBase.cpp:
936         * dom/Document.cpp:
937         (WebCore::Document::recalcStyle):
938         * html/HTMLDocument.cpp:
939         * loader/FrameLoader.cpp:
940         * loader/ResourceLoadNotifier.cpp:
941         * page/Chrome.cpp:
942         * page/Console.cpp:
943         * page/ContextMenuController.cpp:
944         * page/DOMWindow.cpp:
945         (WebCore::DOMWindow::dispatchEvent):
946         * page/EventHandler.cpp:
947         * page/Page.cpp:
948         * storage/Database.cpp:
949         * workers/AbstractWorker.cpp:
950         * workers/DefaultSharedWorkerRepository.cpp:
951         * workers/SharedWorker.cpp:
952         * workers/Worker.cpp:
953         * workers/WorkerContext.cpp:
954         * workers/WorkerMessagingProxy.cpp:
955         * xml/XMLHttpRequest.cpp:
956         (WebCore::XMLHttpRequest::callReadyStateChangeListener):
957
958 2011-01-02  Patrick Gansterer  <paroga@webkit.org>
959
960         [CMake] Unreviewed build fix.
961
962         * CMakeLists.txt:
963
964 2011-01-02  Dirk Schulze  <krit@webkit.org>
965
966         Reviewed by Simon Fraser.
967
968         Clarify ImageBuffer and ImageData relationship
969         https://bugs.webkit.org/show_bug.cgi?id=51297
970
971         Remove references to ImageData and CanvasPixelArray from ImageBuffer and SVG filter/masker code,
972         since this was a layering violation, and replaced it by ByteArray.
973
974         No change of functionality, so no new test added.
975
976         * html/ImageData.cpp:
977         (WebCore::ImageData::create):
978         (WebCore::ImageData::ImageData):
979         * html/ImageData.h: Added new constructor with ByteArray input.
980         (WebCore::ImageData::width):
981         (WebCore::ImageData::height):
982         (WebCore::ImageData::data):
983         * html/canvas/CanvasPixelArray.cpp:
984         (WebCore::CanvasPixelArray::create):
985         (WebCore::CanvasPixelArray::CanvasPixelArray):
986         * html/canvas/CanvasPixelArray.h: New conctructor with ByteArray input, used by HTML Canvas.
987         (WebCore::CanvasPixelArray::data):
988         (WebCore::CanvasPixelArray::length):
989         (WebCore::CanvasPixelArray::set):
990         (WebCore::CanvasPixelArray::get):
991         * html/canvas/CanvasRenderingContext2D.cpp:
992         (WebCore::CanvasRenderingContext2D::getImageData):
993         (WebCore::CanvasRenderingContext2D::putImageData):
994         * platform/graphics/ImageBuffer.h:
995         * platform/graphics/cairo/ImageBufferCairo.cpp:
996         (WebCore::getImageData):
997         (WebCore::ImageBuffer::getUnmultipliedImageData):
998         (WebCore::ImageBuffer::getPremultipliedImageData):
999         (WebCore::putImageData):
1000         (WebCore::ImageBuffer::putUnmultipliedImageData):
1001         (WebCore::ImageBuffer::putPremultipliedImageData):
1002         * platform/graphics/cg/ImageBufferCG.cpp:
1003         (WebCore::getImageData):
1004         (WebCore::ImageBuffer::getUnmultipliedImageData):
1005         (WebCore::ImageBuffer::getPremultipliedImageData):
1006         (WebCore::putImageData):
1007         (WebCore::ImageBuffer::putUnmultipliedImageData):
1008         (WebCore::ImageBuffer::putPremultipliedImageData):
1009         * platform/graphics/filters/FEBlend.cpp:
1010         (WebCore::FEBlend::apply):
1011         * platform/graphics/filters/FEColorMatrix.cpp:
1012         (WebCore::FEColorMatrix::apply):
1013         * platform/graphics/filters/FEComponentTransfer.cpp:
1014         (WebCore::FEComponentTransfer::apply):
1015         * platform/graphics/filters/FEComposite.cpp:
1016         (WebCore::FEComposite::apply):
1017         * platform/graphics/filters/FEConvolveMatrix.cpp:
1018         (WebCore::setDestinationPixels):
1019         (WebCore::FEConvolveMatrix::apply):
1020         * platform/graphics/filters/FEConvolveMatrix.h:
1021         * platform/graphics/filters/FEDisplacementMap.cpp:
1022         (WebCore::FEDisplacementMap::apply):
1023         * platform/graphics/filters/FEGaussianBlur.cpp:
1024         (WebCore::FEGaussianBlur::apply):
1025         * platform/graphics/filters/FELighting.cpp:
1026         (WebCore::FELighting::apply):
1027         * platform/graphics/filters/FEMorphology.cpp:
1028         (WebCore::FEMorphology::apply):
1029         * platform/graphics/filters/FETurbulence.cpp:
1030         (WebCore::FETurbulence::apply):
1031         * platform/graphics/filters/FilterEffect.cpp:
1032         (WebCore::FilterEffect::asImageBuffer):
1033         (WebCore::FilterEffect::asUnmultipliedImage):
1034         (WebCore::FilterEffect::asPremultipliedImage):
1035         (WebCore::FilterEffect::copyImageBytes):
1036         (WebCore::FilterEffect::copyUnmultipliedImage):
1037         (WebCore::FilterEffect::copyPremultipliedImage):
1038         (WebCore::FilterEffect::createUnmultipliedImageResult):
1039         (WebCore::FilterEffect::createPremultipliedImageResult):
1040         * platform/graphics/filters/FilterEffect.h:
1041         * platform/graphics/qt/ImageBufferQt.cpp:
1042         (WebCore::getImageData):
1043         (WebCore::ImageBuffer::getUnmultipliedImageData):
1044         (WebCore::ImageBuffer::getPremultipliedImageData):
1045         (WebCore::putImageData):
1046         (WebCore::ImageBuffer::putUnmultipliedImageData):
1047         (WebCore::ImageBuffer::putPremultipliedImageData):
1048         * platform/graphics/skia/ImageBufferSkia.cpp:
1049         (WebCore::getImageData):
1050         (WebCore::ImageBuffer::getUnmultipliedImageData):
1051         (WebCore::ImageBuffer::getPremultipliedImageData):
1052         (WebCore::putImageData):
1053         (WebCore::ImageBuffer::putUnmultipliedImageData):
1054         (WebCore::ImageBuffer::putPremultipliedImageData):
1055         * platform/graphics/wince/ImageBufferWinCE.cpp:
1056         (WebCore::getImageData):
1057         (WebCore::ImageBuffer::getUnmultipliedImageData):
1058         (WebCore::ImageBuffer::getPremultipliedImageData):
1059         (WebCore::putImageData):
1060         (WebCore::ImageBuffer::putUnmultipliedImageData):
1061         (WebCore::ImageBuffer::putPremultipliedImageData):
1062         * platform/graphics/wx/ImageBufferWx.cpp:
1063         (WebCore::ImageBuffer::getUnmultipliedImageData):
1064         (WebCore::ImageBuffer::getPremultipliedImageData):
1065         (WebCore::ImageBuffer::putUnmultipliedImageData):
1066         (WebCore::ImageBuffer::putPremultipliedImageData):
1067         * rendering/RenderSVGResourceMasker.cpp:
1068         (WebCore::RenderSVGResourceMasker::drawContentIntoMaskImage):
1069
1070 2011-01-01  Adam Barth  <abarth@webkit.org>
1071
1072         Reviewed by Eric Seidel.
1073
1074         Move JavaScriptCore to Source
1075         https://bugs.webkit.org/show_bug.cgi?id=51604
1076
1077         Update references to JavaScriptCore.
1078
1079         * Android.derived.jscbindings.mk:
1080         * Android.v8bindings.mk:
1081         * CMakeLists.txt:
1082         * WebCore.gyp/WebCore.gyp:
1083         * WebCore.pro:
1084           - These changes are subtle and might not be 100% correct.
1085         * move-js-headers.sh:
1086
1087 2011-01-01  Adam Barth  <abarth@webkit.org>
1088
1089         Reviewed by Eric Seidel.
1090
1091         forbid sandboxed frames to call top.close() when allow-same-origin is not setted
1092         https://bugs.webkit.org/show_bug.cgi?id=38340
1093
1094         We now pass the ScriptExecutionContext to window.close so it can find
1095         the Frame and check whether navigation is allowed.  This check will
1096         almost always pass because you can only close top-level frames, but the
1097         check will fail when the calling script is sandboxed.
1098
1099         Tests: fast/frames/sandboxed-iframe-close-top-noclose.html
1100                fast/frames/sandboxed-iframe-close-top.html
1101
1102         * page/DOMWindow.cpp:
1103         (WebCore::DOMWindow::close):
1104         * page/DOMWindow.h:
1105         * page/DOMWindow.idl:
1106
1107 2011-01-01  Adam Barth  <abarth@webkit.org>
1108
1109         Reviewed by Eric Seidel.
1110
1111         sandbox iframes have access to top.history methods
1112         https://bugs.webkit.org/show_bug.cgi?id=38152
1113
1114         To enforce the sandbox restrictions on History, we need to pass the
1115         ScriptExecutionContext to WebCore.  This patch leaves the original
1116         History methods in place because they are used directly by folks who
1117         don't care about security checks.
1118
1119         Test: fast/frames/sandboxed-iframe-history-denied.html
1120
1121         * page/History.cpp:
1122         (WebCore::History::back):
1123         (WebCore::History::forward):
1124         (WebCore::History::go):
1125         * page/History.h:
1126         * page/History.idl:
1127
1128 2011-01-01  Adam Barth  <abarth@webkit.org>
1129
1130         Remove empty file.
1131
1132         * Android.mk:
1133         * CMakeLists.txt:
1134         * GNUmakefile.am:
1135         * WebCore.gypi:
1136         * WebCore.pro:
1137         * WebCore.vcproj/WebCore.vcproj:
1138         * WebCore.xcodeproj/project.pbxproj:
1139         * dom/DOMAllInOne.cpp:
1140         * dom/Entity.cpp: Removed.
1141
1142 2011-01-01  Adam Barth  <abarth@webkit.org>
1143
1144         Remove empty file.
1145
1146         * CMakeLists.txt:
1147         * GNUmakefile.am:
1148         * WebCore.pro:
1149         * WebCore.vcproj/WebCore.vcproj:
1150         * WebCore.xcodeproj/project.pbxproj:
1151         * bindings/js/JSBindingsAllInOne.cpp:
1152         * bindings/js/JSPopStateEventCustom.cpp: Removed.
1153
1154 2011-01-01  Adam Barth  <abarth@webkit.org>
1155
1156         Remove empty files.
1157
1158         * GNUmakefile.am:
1159         * WebCore.gypi:
1160         * WebCore.vcproj/WebCore.vcproj:
1161         * WebCore.xcodeproj/project.pbxproj:
1162         * bindings/generic/BindingFrame.h: Removed.
1163         * bindings/generic/BindingLocation.h: Removed.
1164
1165 2011-01-01  Konstantin Tokarev  <annulen@yandex.ru>
1166
1167         Reviewed by Darin Adler.
1168
1169         Don't include Inspector headers when Inspector is disabled
1170         https://bugs.webkit.org/show_bug.cgi?id=51789
1171
1172         * bindings/js/JSDOMWindowBase.cpp: Include Inspector headers when
1173         Inspector is enabled
1174         * dom/Document.cpp: Include Inspector headers when
1175         Inspector is enabled
1176         (WebCore::Document::recalcStyle): Disabled InspectorInstrumentationCookie
1177         handling
1178         * html/HTMLDocument.cpp: Include Inspector headers when
1179         Inspector is enabled
1180         * loader/FrameLoader.cpp: Include Inspector headers when
1181         Inspector is enabled
1182         * loader/ResourceLoadNotifier.cpp: Include Inspector headers when
1183         Inspector is enabled
1184         * page/Chrome.cpp: Include Inspector headers when
1185         Inspector is enabled
1186         * page/Console.cpp: Include Inspector headers when
1187         Inspector is enabled
1188         * page/ContextMenuController.cpp: Include Inspector headers when
1189         Inspector is enabled
1190         * page/DOMWindow.cpp: Include Inspector headers when
1191         Inspector is enabled
1192         (WebCore::DOMWindow::dispatchEvent): Disabled InspectorInstrumentationCookie
1193         handling
1194         * page/EventHandler.cpp: Include Inspector headers when
1195         Inspector is enabled
1196         * page/Page.cpp: Include Inspector headers when
1197         Inspector is enabled
1198         * storage/Database.cpp: Include Inspector headers when
1199         Inspector is enabled
1200         * workers/AbstractWorker.cpp: Include Inspector headers when
1201         Inspector is enabled
1202         * workers/DefaultSharedWorkerRepository.cpp: Include Inspector headers when
1203         Inspector is enabled
1204         * workers/SharedWorker.cpp: Include Inspector headers when
1205         Inspector is enabled
1206         * workers/Worker.cpp: Include Inspector headers when
1207         Inspector is enabled
1208         * workers/WorkerContext.cpp: Include Inspector headers when
1209         Inspector is enabled
1210         * workers/WorkerMessagingProxy.cpp: Include Inspector headers when
1211         Inspector is enabled
1212         * xml/XMLHttpRequest.cpp: Include Inspector headers when
1213         Inspector is enabled
1214         (WebCore::XMLHttpRequest::callReadyStateChangeListener): Disabled
1215         InspectorInstrumentationCookie handling
1216
1217 2010-12-31  Adam Barth  <abarth@webkit.org>
1218
1219         Reviewed by Darin Adler.
1220
1221         fast/loader/about-blank-hash-change.html fails on Chromium
1222         https://bugs.webkit.org/show_bug.cgi?id=51788
1223
1224         I'm unable to reproduce the failure locally, so this patch is slightly
1225         speculative.  We need to be slighly more careful how we compare the
1226         fragment identifiers for Chromium because Chromium uses a URL parser
1227         that is more agressive about canonicalization.
1228
1229         * page/Location.cpp:
1230         (WebCore::Location::setHash):
1231
1232 2010-12-31  Martin Robinson  <mrobinson@igalia.com>
1233
1234         Reviewed by Xan Lopez.
1235
1236         [GTK] Use GLib/GIO API for FileSystemGtk implementation
1237         https://bugs.webkit.org/show_bug.cgi?id=51617
1238
1239         Complete implementation of FileSystem platform code for GLib. This
1240         converts remaining API points using POSIX calls to platform-independent
1241         GLib calls and fixes other compilation errors.
1242
1243         No new tests. This code will be tested when an implementation
1244         of beginDragWithFiles is complete.
1245
1246         (WebCore::JSDirectoryEntry::getFile):
1247         (WebCore::JSDirectoryEntry::getDirectory):
1248         * platform/FileSystem.h: Added forward declarations for GLib types to
1249         avoid GLib includes and changed the PlatformFileHandle to be a GIOStream.
1250         * platform/gtk/FileSystemGtk.cpp:
1251         (WebCore::openTemporaryFile): Reimplement using only GLib calls.
1252         (WebCore::openFile): Ditto.
1253         (WebCore::closeFile): Ditto.
1254         (WebCore::seekFile): Added implementation.
1255         (WebCore::writeToFile): Reimplement using only GLib calls.
1256         (WebCore::readFromFile): Ditto.
1257
1258 2010-12-31  Darin Adler  <darin@apple.com>
1259
1260         Reviewed by Dan Bernstein.
1261
1262         Some renaming and refactoring of form element code
1263         https://bugs.webkit.org/show_bug.cgi?id=51784
1264
1265         * bindings/js/JSHTMLSelectElementCustom.cpp:
1266         (WebCore::JSHTMLSelectElement::remove): Call new overload of remove
1267         for option elements instead of putting the logic in the binding.
1268
1269         * html/HTMLButtonElement.cpp:
1270         (WebCore::HTMLButtonElement::HTMLButtonElement): Updated for name changes.
1271         (WebCore::HTMLButtonElement::defaultEventHandler): Renamed argument to
1272         "event" instead of "evt". Also updated for name changes.
1273         (WebCore::HTMLButtonElement::isActivatedSubmit): Ditto.
1274         (WebCore::HTMLButtonElement::setActivatedSubmit): Ditto.
1275         (WebCore::HTMLButtonElement::appendFormData): Ditto.
1276         * html/HTMLButtonElement.h: Renamed m_activeSubmit to m_isActivatedSubmit
1277         to match the getter function name. The name still doesn't seem great.
1278
1279         * html/HTMLFormElement.cpp:
1280         (WebCore::HTMLFormElement::HTMLFormElement): Updated for name changes.
1281         (WebCore::HTMLFormElement::~HTMLFormElement): Use autoComplete function
1282         instead of m_autocomplete data member.
1283         (WebCore::HTMLFormElement::rendererIsNeeded): Use m_wasDemoted data member
1284         instead of otherwise-unused isDemoted function.
1285         (WebCore::HTMLFormElement::submitImplicitly): Updated for name changes.
1286         (WebCore::HTMLFormElement::validateInteractively): Removed code to clear
1287         m_insubmit. This is now handled by the caller, prepareForSubmission.
1288         (WebCore::HTMLFormElement::prepareForSubmission): Renamed. Updated for
1289         name changes. Moved code to clear m_isSubmittingOrPreparingForSubmission
1290         here from validateInteractively. Removed unneeded check of m_doingsubmit
1291         boolean before setting it.
1292         (WebCore::HTMLFormElement::submit): Factored this function into two.
1293         One for JavaScript and one for non-JavaScript. Neither function needs a frame
1294         argument, because the question being asked, anyPageIsProcessingUserGesture,
1295         is a question asked of an entire page group, not a specific frame or page,
1296         so it's not important which is the active frame.
1297         (WebCore::HTMLFormElement::submitFromJavaScript): Ditto.
1298         (WebCore::HTMLFormElement::reset): Updated for name changes.
1299         (WebCore::HTMLFormElement::parseMappedAttribute): Removed code to parse
1300         acceptAttr and got rid of code to set m_autocomplete.
1301         (WebCore::HTMLFormElement::elementForAlias): Changed return type to a raw
1302         pointer.
1303         (WebCore::HTMLFormElement::getNamedElements): Updated to use raw pointer
1304         and the vector find function. Added a FIXME about the comment.
1305         (WebCore::HTMLFormElement::documentDidBecomeActive): Use autoComplete
1306         function instead of m_autocomplete data member.
1307         (WebCore::HTMLFormElement::willMoveToNewOwnerDocument): Ditto.
1308         (WebCore::HTMLFormElement::didMoveToNewOwnerDocument): Ditto.
1309         (WebCore::HTMLFormElement::autoComplete): Ditto.
1310         * html/HTMLFormElement.h: Added a FIXME about renaming the autoComplete
1311         function. Renamed prepareSubmit to prepareForSubmission. Got rid of the
1312         frame argument from the submit function and added a new submitFromJavaScript
1313         variant. Removed the unneeded isDemoted function. Changed the return type
1314         of elementForAlias to a raw pointer. Removed m_autocomplete. Renamed
1315         m_insubmit to m_isSubmittingOrPreparingForSubmission, m_doingsubmit to
1316         m_shouldSubmit, m_inreset to m_inResetFunction, m_malformed to m_wasMalformed,
1317         m_demoted to m_wasDemoted. Use plain bool instead of bitfields.
1318
1319         * html/HTMLFormElement.idl: Use the function named submitFromJavaScript
1320         instead of using CallWith=DynamicFrame because we don't need to know
1321         what frame is calling. If we did, it's not clear that the "dynamic"
1322         frame would be the right one anyway.
1323
1324         * html/HTMLSelectElement.cpp:
1325         (WebCore::HTMLSelectElement::remove): Added an overload that takes an option
1326         element, since the JavaScript binding supports this.
1327         * html/HTMLSelectElement.h: Ditto.
1328
1329         * html/ImageInputType.cpp:
1330         (WebCore::ImageInputType::handleDOMActivateEvent): Updated for name changes.
1331         * html/ImageInputType.h: Ditto.
1332         * html/SubmitInputType.cpp:
1333         (WebCore::SubmitInputType::handleDOMActivateEvent): Ditto.
1334
1335 2010-12-31  Daniel Bates  <dbates@rim.com>
1336
1337         Reviewed by Darin Adler.
1338
1339         Pass style for <area> instead of associated <img> when querying whether
1340         the theme draws the focus ring for an <area>
1341         https://bugs.webkit.org/show_bug.cgi?id=51632
1342
1343         Fixes an issue where the style for the associated <img> of an <area>
1344         was passed when considering whether the theme should draw a focus ring
1345         for the <area>. Instead, we should pass the theme the style for the <area>.
1346
1347         It's not possible to test this at this time since there are no themes
1348         that override focus ring drawing for <area>s.
1349
1350         * rendering/RenderImage.cpp:
1351         (WebCore::RenderImage::paintFocusRing): Moved call to RenderTheme::supportsFocusRing()
1352         such that it's called with respect to the focused <area>.
1353
1354 2010-12-31  Darin Adler  <darin@apple.com>
1355
1356         * WebCore.xcodeproj/project.pbxproj: Added back the language.
1357         Developers should be using Xcode 3.2.5 or newer.
1358
1359 2010-12-31  Adam Barth  <abarth@webkit.org>
1360
1361         Reviewed by Eric Seidel.
1362
1363         Move V8 to WebCore Location implementation
1364         https://bugs.webkit.org/show_bug.cgi?id=51768
1365
1366         * bindings/generic/BindingFrame.h:
1367         * bindings/generic/BindingLocation.h:
1368         * bindings/v8/V8Binding.h:
1369         * bindings/v8/V8DOMWindowShell.cpp:
1370         (WebCore::V8DOMWindowShell::setLocation):
1371         * bindings/v8/V8Utilities.cpp:
1372         * bindings/v8/V8Utilities.h:
1373         * bindings/v8/custom/V8LocationCustom.cpp:
1374         (WebCore::V8Location::hashAccessorSetter):
1375         (WebCore::V8Location::hostAccessorSetter):
1376         (WebCore::V8Location::hostnameAccessorSetter):
1377         (WebCore::V8Location::hrefAccessorSetter):
1378         (WebCore::V8Location::pathnameAccessorSetter):
1379         (WebCore::V8Location::portAccessorSetter):
1380         (WebCore::V8Location::protocolAccessorSetter):
1381         (WebCore::V8Location::searchAccessorSetter):
1382         (WebCore::V8Location::reloadCallback):
1383         (WebCore::V8Location::replaceCallback):
1384         (WebCore::V8Location::assignCallback):
1385
1386 2010-12-31  Yi Shen  <yi.4.shen@nokia.com>
1387
1388         Reviewed by Eric Seidel.
1389
1390         Make retrieving extraMediaControlsStyleSheet be page dependent.
1391         https://bugs.webkit.org/show_bug.cgi?id=51752
1392
1393         Use themeForPage to retrieve extraMediaControlsStyleSheet for media
1394         controls.
1395
1396         No new tests because no platform-specific theme implementation uses
1397         the passed page pointer yet.
1398
1399         * css/CSSStyleSelector.cpp:
1400         (WebCore::CSSStyleSelector::styleForElement):
1401
1402 2010-12-31  Ilya Tikhonovsky  <loislo@chromium.org>
1403
1404         Reviewed by Pavel Feldman.
1405
1406         Web Inspector: [REGRESSION] WebInspector.ResourcesPanel.prototype.canShowSourceLine() broken.
1407
1408         https://bugs.webkit.org/show_bug.cgi?id=51709
1409
1410         * inspector/front-end/ResourcesPanel.js:
1411         (WebInspector.ResourcesPanel.prototype.canShowSourceLine):
1412
1413 2010-12-31  Patrick Gansterer  <paroga@webkit.org>
1414
1415         Unreviewed build fix after r74800.
1416
1417         * bindings/js/JSDOMWindowCustom.cpp: Add missing header.
1418         * bindings/js/JSLocationCustom.cpp: Ditto.
1419
1420 2010-12-31  Adam Barth  <abarth@webkit.org>
1421
1422         Rubber-stamped by Eric Seidel.
1423
1424         Move HTML and XML parser benchmarks into PerformanceTests/Parser
1425         https://bugs.webkit.org/show_bug.cgi?id=51772
1426
1427         Remove the benchmarks folder now that it's empty.  Future benchmarks
1428         should go in the PerformanceTests directory.
1429
1430         * benchmarks: Removed.
1431         * benchmarks/parser: Removed.
1432         * benchmarks/parser/html-parser.html: Removed.
1433         * benchmarks/parser/resources: Removed.
1434         * benchmarks/parser/resources/html5.html: Removed.
1435         * benchmarks/parser/resources/runner.js: Removed.
1436         * benchmarks/parser/xml-parser.html: Removed.
1437
1438 2010-12-31  Patrick Gansterer  <paroga@webkit.org>
1439
1440         Reviewed by Adam Barth.
1441
1442         Add XML parser benchmark
1443         https://bugs.webkit.org/show_bug.cgi?id=51612
1444
1445         Move the JavaScript code of html parser into a separate file to share it with xml parser.
1446
1447         * benchmarks/parser/html-parser.html:
1448         * benchmarks/parser/resources/runner.js: Copied from WebCore/benchmarks/parser/html-parser.html.
1449         (runFunction):
1450         (run):
1451         (start):
1452         * benchmarks/parser/xml-parser.html: Copied from WebCore/benchmarks/parser/html-parser.html.
1453
1454 2010-12-29  Zhenyao Mo  <zmo@google.com>
1455
1456         Reviewed by Kenneth Russell.
1457
1458         Update validation of stencil mask and ref values
1459         https://bugs.webkit.org/show_bug.cgi?id=50716
1460
1461         * html/canvas/WebGLRenderingContext.cpp:
1462         (WebCore::WebGLRenderingContext::initializeNewContext): Initialize cached stencil settings.
1463         (WebCore::WebGLRenderingContext::drawArrays): Validate stencil settings.
1464         (WebCore::WebGLRenderingContext::drawElements): Ditto.
1465         (WebCore::WebGLRenderingContext::stencilFunc): Cache stencil settings, but generate no error.
1466         (WebCore::WebGLRenderingContext::stencilFuncSeparate): Ditto.
1467         (WebCore::WebGLRenderingContext::stencilMask): Ditto.
1468         (WebCore::WebGLRenderingContext::stencilMaskSeparate): Ditto.
1469         (WebCore::WebGLRenderingContext::validateStencilSettings): Helper function to validate stencil settings.
1470         * html/canvas/WebGLRenderingContext.h: Declare stencil setting members.
1471
1472 2010-12-30  Martin Robinson  <mrobinson@igalia.com>
1473
1474         Reviewed by Xan Lopez.
1475
1476         [GTK] Fork pieces of RenderThemeGtk that will differ for GTK+ 3
1477         https://bugs.webkit.org/show_bug.cgi?id=51755
1478
1479         Split out pieces of RenderThemeGtk into RenderThemeGtk2 and RenderThemeGtk3
1480         if they are going to differ between GTK+ 2.x and GTK+ 3.x. This is the preliminary
1481         step to landing support for the new GTK+ 3.x theming API.
1482
1483         No new tests. This should not change functionality.
1484
1485         * GNUmakefile.am: Add RenderThemeGtk2 and RenderThemeGtk3 to the sources list.
1486         * platform/gtk/RenderThemeGtk.cpp:
1487         (WebCore::RenderThemeGtk::adjustTextFieldStyle): Call the setTextInputBorders static method.
1488         (WebCore::RenderThemeGtk::adjustTextAreaStyle): Ditto.
1489         (WebCore::RenderThemeGtk::paintMediaButton): Ditto.
1490         (WebCore::RenderThemeGtk::adjustProgressBarStyle): ditto.
1491         * platform/gtk/RenderThemeGtk.h: Make setTextInputBorders a method, so that
1492         it can be exist in RenderThemeGtk{2,3} and be called from RenderThemeGtk.
1493         * platform/gtk/RenderThemeGtk2.cpp: Added. A fork of the bits of RenderThemeGtk
1494         that will eventually be platform-dependent.
1495         * platform/gtk/RenderThemeGtk3.cpp: Added. Ditto.
1496
1497 2010-12-30  Justin Schuh  <jschuh@chromium.org>
1498
1499         Reviewed by James Robinson.
1500
1501         Reverting r74292 because it introduced a crash with ruby text.
1502         https://bugs.webkit.org/show_bug.cgi?id=51637
1503
1504         Test: fast/css/counters/counter-ruby-text-cleared.html
1505
1506         * rendering/RenderCounter.cpp:
1507         (WebCore::findPlaceForCounter):
1508         * rendering/RenderObject.cpp:
1509         (WebCore::RenderObject::addChild):
1510         * rendering/RenderObjectChildList.cpp:
1511         (WebCore::RenderObjectChildList::appendChildNode):
1512         (WebCore::RenderObjectChildList::insertChildNode):
1513
1514 2010-12-30  Darin Adler  <darin@apple.com>
1515
1516         Reviewed by David Kilzer.
1517
1518         Remove unused JSBinding source files
1519         https://bugs.webkit.org/show_bug.cgi?id=51762
1520
1521         * bindings/js/JSBinding.h: Removed.
1522         * bindings/js/specialization: Removed.
1523         * bindings/js/specialization/JSBindingState.cpp: Removed.
1524         * bindings/js/specialization/JSBindingState.h: Removed.
1525
1526         * CMakeLists.txt: Removed references to files.
1527         * GNUmakefile.am: Ditto.
1528         * WebCore.gypi: Ditto.
1529         * WebCore.pro: Ditto.
1530         * WebCore.vcproj/WebCore.vcproj: Ditto.
1531         * bindings/js/JSBindingsAllInOne.cpp: Ditto.
1532
1533 2010-12-30  Tony Gentilcore  <tonyg@chromium.org>
1534
1535         Reviewed by Darin Adler.
1536
1537         Remove Document.h include from some headers where it isn't necessary
1538         https://bugs.webkit.org/show_bug.cgi?id=51730
1539
1540         No new tests because no new functionality.
1541
1542         * editing/EditingStyle.cpp:
1543         * editing/EditingStyle.h:
1544         * editing/SelectionController.h:
1545         * editing/visible_units.h:
1546         * html/HTMLAudioElement.h:
1547         * html/HTMLBodyElement.h:
1548         * inspector/InspectorCSSAgent.h:
1549         * inspector/InspectorDOMAgent.h:
1550         * inspector/InspectorInstrumentation.h:
1551         * xml/DOMParser.cpp:
1552         * xml/DOMParser.h:
1553         (WebCore::DOMParser::create):
1554         (WebCore::DOMParser::DOMParser):
1555
1556 2010-12-30  Benjamin C Meyer  <bmeyer@rim.com>
1557
1558         Reviewed by Darin Adler.
1559
1560         bindings/js/JSDesktopNotificationsCustom.cpp is not included in the cmake build
1561         which is required when NOTIFICATIONS is enabled.
1562
1563         https://bugs.webkit.org/show_bug.cgi?id=51761
1564
1565         * CMakeLists.txt:
1566
1567 2010-12-30  Antti Koivisto  <antti@apple.com>
1568
1569         Not reviewed.
1570
1571         Revert accidental project file change.
1572
1573         * WebCore.xcodeproj/project.pbxproj:
1574
1575 2010-12-30  Antti Koivisto  <antti@apple.com>
1576
1577         Reviewed by Darin Adler.
1578
1579         https://bugs.webkit.org/show_bug.cgi?id=51134
1580         Move loading related code from MemoryCache to CachedResourceLoader
1581
1582         - Merge MemoryCache::requestResource to CachedResourceLoader::requestResource
1583         - Merge MemoryCache::requestUserCSSStyleSheet to CachedResourceLoader::requestUserCSSStyleSheet
1584         - Move MemoryCache::revalidateResource to CachedResourceLoader::revalidateResource
1585         - Add MemoryCache::add
1586         - Refactor the decision on whether to reload, revalidate or use the existing resource to 
1587           a single function, CachedResourceLoader::determineRevalidationPolicy
1588
1589         * css/CSSImageValue.cpp:
1590         (WebCore::CSSImageValue::cachedImage):
1591             
1592             Remove a code path that called MemoryCache::requestResource directly. This code path would have crashed
1593             if ever taken (since it passes null CachedResourceLoader pointer).
1594             
1595         * loader/ImageLoader.cpp:
1596         (WebCore::ImageLoader::updateFromElement):
1597         * loader/cache/CachedImage.cpp:
1598         * loader/cache/CachedResource.cpp:
1599         (WebCore::CachedResource::CachedResource):
1600         (WebCore::CachedResource::~CachedResource):
1601         (WebCore::CachedResource::mustRevalidateDueToCacheHeaders):
1602         
1603             Moved tests that were not about cache headers to CachedResourceLoader::determineRevalidationPolicy and renamed.
1604         
1605         (WebCore::CachedResource::setLoadPriority):
1606         
1607             Check for Unresolved value before setting.
1608         
1609         * loader/cache/CachedResource.h:
1610         (WebCore::CachedResource::setOwningCachedResourceLoader):
1611         
1612             Rename to be bit less mysterious.
1613         
1614         * loader/cache/CachedResourceLoader.cpp:
1615         (WebCore::createResource):
1616         
1617             This was moved from MemoryCache.
1618         
1619         (WebCore::CachedResourceLoader::~CachedResourceLoader):
1620         (WebCore::CachedResourceLoader::determineRevalidationPolicy):
1621         (WebCore::CachedResourceLoader::requestUserCSSStyleSheet):
1622         
1623             This was moved/merged from MemoryCache.
1624         
1625         (WebCore::CachedResourceLoader::canRequest):
1626         (WebCore::CachedResourceLoader::requestResource):
1627         
1628             This combines MemoryCache::requestResource and the existing method.
1629         
1630         (WebCore::CachedResourceLoader::revalidateResource):
1631         
1632             This was moved from MemoryCache.
1633         
1634         (WebCore::CachedResourceLoader::loadResource):
1635         
1636             New method for initiating loading.
1637         
1638         (WebCore::CachedResourceLoader::notifyLoadedFromMemoryCache):
1639         
1640             Renamed the mysterious CachedResourceLoader::checkCacheObjectStatus
1641         
1642         * loader/cache/CachedResourceLoader.h:
1643         * loader/cache/MemoryCache.cpp:
1644         (WebCore::MemoryCache::add):
1645         * loader/cache/MemoryCache.h:
1646         (WebCore::MemoryCache::remove):
1647
1648 2010-12-30  Steve Block  <steveblock@google.com>
1649
1650         Reviewed by Gavin Barraclough.
1651
1652         Enable JSC Rich Source Info for Android even when Inspector and Debugger are disabled
1653         https://bugs.webkit.org/show_bug.cgi?id=51740
1654
1655         This is a policy decision for Android.
1656
1657         No new tests, simply enabling existing, tested code on Android.
1658
1659         * bindings/js/JSDOMWindowBase.cpp:
1660         (WebCore::JSDOMWindowBase::supportsRichSourceInfo):
1661
1662 2010-12-30  Yael Aharon  <yael.aharon@nokia.com>
1663
1664         Reviewed by Adam Barth.
1665
1666         REGRESSION: fast/dom/cssTarget-crash.html fails
1667         https://bugs.webkit.org/show_bug.cgi?id=20342
1668
1669         Do not reload the page when submitting a form, using "GET" method, and the
1670         form action url matches the location url, except for the fragment.
1671       
1672         Test: fast/forms/submit-change-fragment.html
1673
1674         * loader/FrameLoader.cpp:
1675         (WebCore::FrameLoader::loadURL):
1676         (WebCore::FrameLoader::loadWithDocumentLoader):
1677         (WebCore::FrameLoader::shouldScrollToAnchor):
1678         * loader/FrameLoader.h:
1679
1680 2010-12-30  Darin Adler  <darin@apple.com>
1681
1682         Reviewed by Adam Barth.
1683
1684         Move security logic out of the JavaScript binding for location into the DOM class
1685         https://bugs.webkit.org/show_bug.cgi?id=51714
1686
1687         * WebCore.xcodeproj/project.pbxproj: Removed JSBindingState.cpp, JSBindingState.h,
1688         and JSBinding.h. Later, we'll remove them from other project files and delete
1689         the source files.
1690
1691         * bindings/js/JSBinding.h: Emptied out, marked for later deletion.
1692
1693         * bindings/js/JSDOMBinding.cpp: Removed unused overload of the jsOwnedStringOrNull
1694         function, unused shouldAllowNavigation function, unused allowSettingSrcToJavascriptURL
1695         function, unused toLexicalFrame function, unused completeURL function, unused
1696         getCachedDOMStructure and cacheDOMStructure overloads, and unused
1697         getCachedDOMConstructor and cacheDOMConstruction functions.
1698         (WebCore::activeDOMWindow): Added.
1699         (WebCore::firstDOMWindow): Added.
1700         (WebCore::toDynamicFrame): Changed to use firstDOMWindow instead of calling through
1701         JSBindingState, since the latter is an unneeded abstraction.
1702         (WebCore::processingUserGesture): Changed to call ScriptController's function
1703         rather than calling through JSBindingState, which is an unneeded abstraction
1704
1705         * bindings/js/JSDOMBinding.h: Removed the functions mentioned above. Added
1706         activeDOMWindow and firstDOMWindow. Also added a FIXME for the extremely poorly
1707         named allowsAccessFromFrame functions, which answer the question of whether
1708         script is allowed access *to* a frame.
1709
1710         * bindings/js/JSDOMWindowCustom.cpp: Removed many unneeded includes.
1711         (WebCore::JSDOMWindow::setLocation): Streamlined by using the new
1712         activeDOMWindow and firstDOMWindow functions.
1713         (WebCore::JSDOMWindow::open): Ditto.
1714         (WebCore::JSDOMWindow::showModalDialog): Ditto.
1715         (WebCore::JSDOMWindow::postMessage): Ditto.
1716
1717         * bindings/js/JSLocationCustom.cpp:
1718         (WebCore::JSLocation::setHref): Changed to pass the active and first windows through
1719         to the Location::setHref function, with it doing the rest of the work. This moves
1720         work out of the DOM binding that belongs in the DOM itself. Eventually such functions
1721         could even be automatically generated by the bindings script.
1722         (WebCore::JSLocation::setProtocol): Ditto.
1723         (WebCore::JSLocation::setHost): Ditto.
1724         (WebCore::JSLocation::setHostname): Ditto.
1725         (WebCore::JSLocation::setPort): Ditto.
1726         (WebCore::JSLocation::setPathname): Ditto.
1727         (WebCore::JSLocation::setSearch): Ditto.
1728         (WebCore::JSLocation::setHash): Ditto.
1729         (WebCore::JSLocation::replace): Ditto.
1730         (WebCore::JSLocation::reload): Ditto.
1731         (WebCore::JSLocation::assign): Ditto.
1732
1733         * bindings/js/specialization/JSBindingState.cpp: Emptied out, marked for later deletion.
1734         * bindings/js/specialization/JSBindingState.h: Emptied out, marked for later deletion.
1735
1736         * page/DOMWindow.cpp:
1737         (WebCore::DOMWindow::setLocation): Added a SetLocationLocking argument that allows us
1738         to use this function for Location::replace, which is the same as setLocation except that
1739         it locks both history and the back/forward list.
1740         * page/DOMWindow.h: Ditto.
1741
1742         * page/Location.cpp:
1743         (WebCore::Location::setHref): Added. Uses DOMWindow::setLocation so that the security
1744         logic there does not have to be repeated or even refactored.
1745         (WebCore::Location::setProtocol): Ditto.
1746         (WebCore::Location::setHost): Ditto.
1747         (WebCore::Location::setHostname): Ditto.
1748         (WebCore::Location::setPort): Ditto.
1749         (WebCore::Location::setPathname): Ditto.
1750         (WebCore::Location::setSearch): Ditto.
1751         (WebCore::Location::setHash): Ditto.
1752         (WebCore::Location::assign): Ditto.
1753         (WebCore::Location::replace): Ditto.
1754         (WebCore::Location::reload): Added. Security logic was refactored from the code in
1755         JSLocationCustom.cpp. Added a FIXME about the fact that this security logic seems
1756         possibly unneeded.
1757
1758         * page/Location.h: Fixed indentation on the whole file. Added the new functions above.
1759         (WebCore::Location::create):
1760         (WebCore::Location::frame):
1761
1762 2010-12-30  Alexander Pavlov  <apavlov@chromium.org>
1763
1764         Reviewed by Pavel Feldman.
1765
1766         Web Inspector: Pasting a style property with value should automatically split it into prop/value
1767         https://bugs.webkit.org/show_bug.cgi?id=51581
1768
1769         The "paste" DOM event is handled for the CSS property name field to parse out the name and value parts
1770         of a CSS property being pasted (by the first ':' found). The property is committed (if not a new one),
1771         and the edit focus is transferred to the value field.
1772
1773         * inspector/front-end/StylesSidebarPane.js:
1774         (WebInspector.StylePropertyTreeElement.prototype.selectElement):
1775         (WebInspector.StylePropertyTreeElement.prototype):
1776         * inspector/front-end/inspector.js:
1777         (WebInspector.completeURL): Drive-by: return full URLs as-is.
1778         (WebInspector.startEditing.cleanUpAfterEditing):
1779         (WebInspector.startEditing):
1780         (WebInspector.startEditing.pasteEventListener):
1781         (WebInspector.startEditing.keyDownEventListener):
1782
1783 2010-12-30  Pavel Podivilov  <podivilov@chromium.org>
1784
1785         Reviewed by Pavel Feldman.
1786
1787         Web Inspector: breakpoint is not disabled when clicking on breakpoints sidebar pane checkbox.
1788         https://bugs.webkit.org/show_bug.cgi?id=51745
1789
1790         * inspector/front-end/Breakpoint.js:
1791         (WebInspector.Breakpoint.prototype.set enabled):
1792
1793 2010-12-30  Pavel Podivilov  <podivilov@chromium.org>
1794
1795         Reviewed by Pavel Feldman.
1796
1797         Web Inspector: call stack shows "Paused on a JavaScript breakpoint" when stepping.
1798         https://bugs.webkit.org/show_bug.cgi?id=51748
1799
1800         * inspector/front-end/CallStackSidebarPane.js:
1801         (WebInspector.CallStackSidebarPane.prototype.update):
1802         (WebInspector.CallStackSidebarPane.prototype.registerShortcuts):
1803         (WebInspector.CallStackSidebarPane.prototype._scriptBreakpointHit):
1804         (WebInspector.CallStackSidebarPane.prototype._nativeBreakpointHit):
1805
1806 2010-12-30  Mikhail Naganov  <mnaganov@chromium.org>
1807
1808         Reviewed by Pavel Feldman.
1809
1810         Fix leak of MemoryInfo wrappers introduced in r57004 (see issue 51712).
1811
1812         https://bugs.webkit.org/show_bug.cgi?id=51713
1813
1814         * WebCore.gypi:
1815         * WebCore.pro:
1816         * bindings/v8/custom/V8ConsoleCustom.cpp:
1817         (WebCore::V8Console::memoryAccessorGetter):
1818         * bindings/v8/custom/V8PerformanceCustom.cpp: Copied from V8ConsoleCustom.cpp.
1819         (WebCore::V8Performance::memoryAccessorGetter):
1820         * page/Console.idl:
1821         * page/Performance.idl:
1822
1823 2010-12-30  Steve Block  <steveblock@google.com>
1824
1825         Reviewed by Sam Weinig.
1826
1827         Visiting macnn.com often causes SQL spew via geolocation database
1828         https://bugs.webkit.org/show_bug.cgi?id=51557
1829
1830         If the Geolocation position cache database path has not been set, early-out
1831         rather than using an empty path and thus failing to open the database.
1832         This avoids SQL log spew.
1833
1834         Also, avoid starting the database thread until the path has been set, and
1835         shorten the thread name to avoid warnings due to exceeding 30 characters.
1836
1837         No new tests, implementation clean-up only.
1838
1839         * page/GeolocationPositionCache.cpp:
1840         (WebCore::GeolocationPositionCache::addUser):
1841         (WebCore::GeolocationPositionCache::removeUser):
1842         (WebCore::GeolocationPositionCache::setDatabasePath):
1843         (WebCore::GeolocationPositionCache::startBackgroundThread):
1844
1845 2010-12-29  Philippe Normand  <pnormand@igalia.com>
1846
1847         Reviewed by Martin Robinson.
1848
1849         [GTK] minimal build fails at link time due to missing sqlite3 symbols
1850         https://bugs.webkit.org/show_bug.cgi?id=51327
1851
1852         Guard the code calling sqlite3 with the ENABLE(DATABASE) check.
1853
1854         No new tests, build fix only.
1855
1856         * platform/sql/SQLiteAuthorizer.cpp:
1857         * platform/sql/SQLiteDatabase.cpp:
1858         * platform/sql/SQLiteFileSystem.cpp:
1859         * platform/sql/SQLiteStatement.cpp:
1860         * platform/sql/SQLiteTransaction.cpp:
1861
1862 2010-12-30  Justin Schuh  <jschuh@chromium.org>
1863
1864         Reviewed by Dirk Schulze.
1865
1866         Prevent stringToLengthType() from skipping past end-of-string on invalid length unit. 
1867         https://bugs.webkit.org/show_bug.cgi?id=51692
1868
1869         * svg/SVGLength.cpp:
1870         (WebCore::stringToLengthType):
1871         (WebCore::SVGLength::setValueAsString):
1872
1873 2010-12-30  Abhishek Arya  <inferno@chromium.org>
1874
1875         Reviewed by Eric Seidel.
1876
1877         Create a helper function for finding descendent video elements for a node.
1878         https://bugs.webkit.org/show_bug.cgi?id=51696
1879
1880         Test: media/video-element-other-namespace-crash.html
1881
1882         * html/MediaDocument.cpp:
1883         (WebCore::descendentVideoElement): helper function.
1884         (WebCore::MediaDocument::defaultEventHandler): use the new helper function. fix code repetitions.
1885         (WebCore::MediaDocument::replaceMediaElementTimerFired): use the new helper function.
1886
1887 2010-12-29  Pavel Feldman  <pfeldman@chromium.org>
1888
1889         Reviewed by Yury Semikhatsky.
1890
1891         Web Inspector: extract Database & DOM Storage agents; remove InspectorBackend.
1892         https://bugs.webkit.org/show_bug.cgi?id=51707
1893
1894         This change brushes up storage agents + removes redundant InspectorBackend class.
1895
1896         * CMakeLists.txt:
1897         * GNUmakefile.am:
1898         * WebCore.gypi:
1899         * WebCore.pro:
1900         * WebCore.vcproj/WebCore.vcproj:
1901         * WebCore.xcodeproj/project.pbxproj:
1902         * inspector/CodeGeneratorInspector.pm:
1903         * inspector/InjectedScriptHost.cpp:
1904         (WebCore::InjectedScriptHost::databaseForId):
1905         (WebCore::InjectedScriptHost::selectDatabase):
1906         (WebCore::InjectedScriptHost::selectDOMStorage):
1907         (WebCore::InjectedScriptHost::inspectorDOMAgent):
1908         * inspector/Inspector.idl:
1909         * inspector/InspectorBackend.cpp: Removed.
1910         * inspector/InspectorBackend.h: Removed.
1911         * inspector/InspectorController.cpp:
1912         (WebCore::InspectorController::InspectorController):
1913         (WebCore::InspectorController::~InspectorController):
1914         (WebCore::InspectorController::connectFrontend):
1915         (WebCore::InspectorController::releaseFrontendLifetimeAgents):
1916         (WebCore::InspectorController::didUseDOMStorage):
1917         (WebCore::InspectorController::setInjectedScriptSource):
1918         (WebCore::InspectorController::dispatchOnInjectedScript):
1919         (WebCore::InspectorController::releaseWrapperObjectGroup):
1920         * inspector/InspectorController.h:
1921         * inspector/InspectorDOMStorageAgent.cpp: Added.
1922         (WebCore::InspectorDOMStorageAgent::~InspectorDOMStorageAgent):
1923         (WebCore::InspectorDOMStorageAgent::getDOMStorageEntries):
1924         (WebCore::InspectorDOMStorageAgent::setDOMStorageItem):
1925         (WebCore::InspectorDOMStorageAgent::removeDOMStorageItem):
1926         (WebCore::InspectorDOMStorageAgent::selectDOMStorage):
1927         (WebCore::InspectorDOMStorageAgent::InspectorDOMStorageAgent):
1928         (WebCore::InspectorDOMStorageAgent::getDOMStorageResourceForId):
1929         * inspector/InspectorDOMStorageAgent.h: Copied from WebCore/inspector/InspectorStorageAgent.h.
1930         (WebCore::InspectorDOMStorageAgent::create):
1931         (WebCore::InspectorDOMStorageAgent::frontend):
1932         * inspector/InspectorDatabaseAgent.cpp: Renamed from WebCore/inspector/InspectorStorageAgent.cpp.
1933         (WebCore::InspectorDatabaseAgent::~InspectorDatabaseAgent):
1934         (WebCore::InspectorDatabaseAgent::getDatabaseTableNames):
1935         (WebCore::InspectorDatabaseAgent::executeSQL):
1936         (WebCore::InspectorDatabaseAgent::databaseForId):
1937         (WebCore::InspectorDatabaseAgent::selectDatabase):
1938         (WebCore::InspectorDatabaseAgent::clearFrontend):
1939         (WebCore::InspectorDatabaseAgent::InspectorDatabaseAgent):
1940         * inspector/InspectorDatabaseAgent.h: Renamed from WebCore/inspector/InspectorStorageAgent.h.
1941         (WebCore::InspectorDatabaseAgent::create):
1942         (WebCore::InspectorDatabaseAgent::frontend):
1943         * inspector/front-end/ScriptsPanel.js:
1944         (WebInspector.ScriptsPanel.prototype.show):
1945         (WebInspector.ScriptsPanel.prototype.attachDebuggerWhenShown):
1946         (WebInspector.ScriptsPanel.prototype._toggleDebugging):
1947
1948 2010-12-29  Dirk Schulze  <krit@webkit.org>
1949
1950         Reviewed by Darin Adler.
1951
1952         Cleanup SVG code according to the webkit style rules 3
1953         https://bugs.webkit.org/show_bug.cgi?id=51490
1954
1955         Last patch to fix indention and other style issues according to the WebKit style rules in the SVG code.
1956         Just one file can't be fixed for check-webkit-style.
1957         * SVGAllInOne.cpp: check-webkit-style wants a config.h at the beginning
1958
1959         No changes of functionality, so no new tests. 
1960
1961         * svg/SVGAllInOne.cpp:
1962         * svg/SVGImage.cpp:
1963         * svg/SVGLength.cpp:
1964         (WebCore::SVGLength::setValue):
1965         * svg/SVGPolygonElement.h:
1966         * svg/SVGPolylineElement.h:
1967         * svg/SVGPreserveAspectRatio.cpp:
1968         (WebCore::SVGPreserveAspectRatio::parsePreserveAspectRatio):
1969         (WebCore::SVGPreserveAspectRatio::transformRect):
1970         * svg/SVGSVGElement.cpp:
1971         (WebCore::SVGSVGElement::viewport):
1972         * svg/SVGSetElement.h:
1973         * svg/SVGStylable.h:
1974         (WebCore::SVGStylable::~SVGStylable):
1975         * svg/SVGStyledLocatableElement.h:
1976         (WebCore::SVGStyledLocatableElement::localCoordinateSpaceTransform):
1977         (WebCore::SVGStyledLocatableElement::isStyledLocatable):
1978         * svg/SVGStyledTransformableElement.cpp:
1979         (WebCore::SVGStyledTransformableElement::isKnownAttribute):
1980         * svg/SVGSwitchElement.cpp:
1981         (WebCore::SVGSwitchElement::childShouldCreateRenderer):
1982         * svg/SVGTests.cpp:
1983         (WebCore::SVGTests::parseMappedAttribute):
1984         * svg/SVGTextContentElement.cpp:
1985         (WebCore::SVGTextContentElement::isKnownAttribute):
1986         * svg/SVGTextPathElement.cpp:
1987         * svg/SVGTextPathElement.h:
1988         * svg/SVGTitleElement.h:
1989         (WebCore::SVGTitleElement::rendererIsNeeded):
1990         * svg/SVGTransformDistance.cpp:
1991         (WebCore::SVGTransformDistance::SVGTransformDistance):
1992         (WebCore::SVGTransformDistance::scaledDistance):
1993         (WebCore::SVGTransformDistance::addSVGTransforms):
1994         (WebCore::SVGTransformDistance::addSVGTransform):
1995         (WebCore::SVGTransformDistance::addToSVGTransform):
1996         (WebCore::SVGTransformDistance::isZero):
1997         * svg/SVGTransformList.cpp:
1998         * svg/SVGURIReference.cpp:
1999         (WebCore::SVGURIReference::getTarget):
2000         * svg/SVGVKernElement.h:
2001         * svg/SVGViewSpec.cpp:
2002         (WebCore::SVGViewSpec::parseViewSpec):
2003         * svg/SVGZoomAndPan.h:
2004         (WebCore::SVGZoomAndPan::SVGZoomAndPan):
2005         (WebCore::SVGZoomAndPan::~SVGZoomAndPan):
2006         (WebCore::SVGZoomAndPan::zoomAndPan):
2007         * svg/SVGZoomEvent.h:
2008         (WebCore::SVGZoomEvent::create):
2009         * svg/animation/SMILTime.cpp:
2010         (WebCore::operator*):
2011         * svg/animation/SMILTime.h:
2012         (WebCore::SMILTime::SMILTime):
2013         (WebCore::SMILTime::unresolved):
2014         (WebCore::SMILTime::indefinite):
2015         (WebCore::SMILTime::operator=):
2016         (WebCore::SMILTime::value):
2017         (WebCore::SMILTime::isFinite):
2018         (WebCore::SMILTime::isIndefinite):
2019         (WebCore::SMILTime::isUnresolved):
2020         (WebCore::operator==):
2021         (WebCore::operator!): new operator checks for 0 or infinite values.
2022         (WebCore::operator!=):
2023         (WebCore::operator>):
2024         (WebCore::operator<):
2025         (WebCore::operator>=):
2026         (WebCore::operator<=):
2027         * svg/animation/SMILTimeContainer.h:
2028         (WebCore::SMILTimeContainer::create):
2029         (WebCore::SMILTimeContainer::setDocumentOrderIndexesDirty):
2030         * svg/animation/SVGSMILElement.cpp:
2031         (WebCore::ConditionEventListener::operator==):
2032         (WebCore::SVGSMILElement::repeatingDuration):
2033         (WebCore::SVGSMILElement::resolveInterval):
2034         (WebCore::SVGSMILElement::calculateAnimationPercentAndRepeat):
2035         * svg/animation/SVGSMILElement.h:
2036         (WebCore::SVGSMILElement::timeContainer):
2037         (WebCore::SVGSMILElement::intervalBegin):
2038         (WebCore::SVGSMILElement::intervalEnd):
2039         (WebCore::SVGSMILElement::previousIntervalBegin):
2040         (WebCore::SVGSMILElement::documentOrderIndex):
2041         (WebCore::SVGSMILElement::setDocumentOrderIndex):
2042         * svg/graphics/SVGImage.h:
2043         (WebCore::SVGImage::create):
2044         (WebCore::SVGImage::destroyDecodedData):
2045         (WebCore::SVGImage::decodedSize):
2046         (WebCore::SVGImage::frameAtIndex):
2047         * svg/graphics/filters/SVGFilterBuilder.h:
2048         (WebCore::SVGFilterBuilder::create):
2049         (WebCore::SVGFilterBuilder::lastEffect):
2050         (WebCore::SVGFilterBuilder::getEffectReferences):
2051         (WebCore::SVGFilterBuilder::addBuiltinEffects):
2052
2053 2010-12-29  Abhishek Arya  <inferno@chromium.org>
2054
2055         Reviewed by Darin Adler.
2056
2057         ASSERT(oldchild->parent() == owner) fails.
2058         https://bugs.webkit.org/show_bug.cgi?id=50480
2059
2060         In RenderBlock removeChild function, when the inlineChildrenBlock(equal to prev or next)
2061         is reparented to blockChildrenBlock, it is no longer a child of "this". This causes the
2062         assertion failure when removeChildNode executes on the child(equal to prev or next).
2063         Fix a typo in canMergeContiguousAnonymousBlocks.
2064
2065         Test: fast/multicol/span/double-merge-anonymous-block-crash.html
2066
2067         * rendering/RenderBlock.cpp:
2068         (WebCore::canMergeContiguousAnonymousBlocks): fix typo, change prev to next.
2069         (WebCore::RenderBlock::removeChild): if prev or not is reparented, then set it to zero.
2070
2071 2010-12-29  Justin Schuh  <jschuh@chromium.org>
2072
2073         Reviewed by Darin Adler.
2074
2075         Check SVG element type in FrameView::scrollToAnchor
2076         https://bugs.webkit.org/show_bug.cgi?id=51718
2077
2078         Test: svg/custom/scroll-to-anchor-in-symbol.svg
2079
2080         * page/FrameView.cpp:
2081         (WebCore::FrameView::scrollToAnchor):
2082
2083 2010-12-29  Anton Muhin  <antonm@chromium.org>
2084
2085         Reviewed by Eric Seidel.
2086
2087         [v8] Minor cleanup: remove unused method (the only method which can mutate context of V8DOMWindowShell)
2088         https://bugs.webkit.org/show_bug.cgi?id=51704
2089
2090         * bindings/v8/V8DOMWindowShell.cpp:
2091         * bindings/v8/V8DOMWindowShell.h:
2092
2093 2010-12-29  Kenichi Ishibashi  <bashi@google.com>
2094
2095         Reviewed by Darin Adler.
2096
2097         Use a HashMap for m_continuation to save memory
2098         https://bugs.webkit.org/show_bug.cgi?id=43716
2099
2100         Saving memory consumption by applying a HashMap convention to
2101         continuation pointers of RenderInline and RenderBlock classes.
2102
2103         * rendering/RenderBlock.cpp: Removed m_continuation.
2104         (WebCore::RenderBlock::RenderBlock):
2105         (WebCore::RenderBlock::destroy):
2106         (WebCore::RenderBlock::inlineElementContinuation):
2107         (WebCore::RenderBlock::blockElementContinuation):
2108         * rendering/RenderBlock.h: Removed m_continuation.
2109         * rendering/RenderBoxModelObject.cpp: Added a hash map for continuations.
2110         (WebCore::RenderBoxModelObject::destroy): Added an assertion.
2111         (WebCore::RenderBoxModelObject::continuation): Added.
2112         (WebCore::RenderBoxModelObject::setContinuation): Added.
2113         * rendering/RenderBoxModelObject.h:
2114         * rendering/RenderInline.cpp: Removed m_continuation.
2115         (WebCore::RenderInline::RenderInline):
2116         (WebCore::RenderInline::destroy):
2117         (WebCore::RenderInline::inlineElementContinuation):
2118         * rendering/RenderInline.h: Removed m_continuation.
2119
2120 2010-12-27  Amruth Raj  <amruthraj@motorola.com> and Ravi Kasibhatla  <ravi.kasibhatla@motorola.com>
2121
2122         Reviewed by Martin Robinson.
2123
2124         [GTK] Enable building whatever already exists of WebKit2
2125         https://bugs.webkit.org/show_bug.cgi?id=37369
2126
2127         No new functionality added or deleted. Only makefile change. Hence, no tests added.
2128
2129         * GNUmakefile.am: Removed bindings/gobject from webcore_sources & webcore_cppflags and
2130         added them to WebKit/gtk/GNUmakefile.am
2131         * platform/network/soup/cache/webkit/soup-cache.h: Remove include <webkit/webkitdefines.h>
2132         and declare WEBKIT_API directly
2133
2134 2010-12-29  Eric Seidel  <eric@webkit.org>
2135
2136         Unreviewed.
2137
2138         Simplify make-hash-tools.pl
2139         https://bugs.webkit.org/show_bug.cgi?id=49922
2140
2141         Added HashTools.h to the project file now that its not autogenerated.
2142         I also sorted the project file using sort-xcode-project-file
2143
2144         * WebCore.xcodeproj/project.pbxproj:
2145
2146 2010-12-29  Pavel Feldman  <pfeldman@chromium.org>
2147
2148         Not reviewed: revert r74755 and 74757.
2149
2150 2010-12-29  Martin Robinson  <mrobinson@igalia.com>
2151
2152         Reviewed by Sam Weinig.
2153
2154         JSDataViewCustom.cpp gives the fastcall calling convention to functions called via C++
2155         https://bugs.webkit.org/show_bug.cgi?id=51722
2156
2157         Remove the JSC_HOST_CALL from methods that are called from C++. JSC_HOST_CALL gives
2158         methods the fastcall calling convention, which leads to runtime errors when they are
2159         called from C++. Also remove a bit of unnecessary code duplication.
2160
2161         No new tests. This is covered by fast/canvas/webgl/data-view-test.html.
2162
2163         * bindings/js/JSDataViewCustom.cpp:
2164         (WebCore::getDataViewMember): Remove duplicated code.
2165         (WebCore::JSDataView::getInt8): Remove JSC_HOST_CALL.
2166         (WebCore::JSDataView::getUint8): Ditto.
2167         (WebCore::JSDataView::getFloat32): Ditto.
2168         (WebCore::JSDataView::getFloat64): Ditto.
2169         (WebCore::setDataViewMember): Remove duplicated code.
2170         (WebCore::JSDataView::setInt8): Remove JSC_HOST_CALL.
2171         (WebCore::JSDataView::setUint8): Ditto.
2172
2173 2010-12-29  Dan Bernstein  <mitz@apple.com>
2174
2175         Reviewed by Kenneth Russel.
2176
2177         A more robust fix for https://bugs.webkit.org/show_bug.cgi?id=51681
2178
2179         * html/HTMLCanvasElement.cpp:
2180         (WebCore::HTMLCanvasElement::attach): Added. Like recalcStyle(), calls
2181         CanvasRenderingContext2D::updateFont() if necessary. This covers the case of a detach/
2182         attach-type style recalc.
2183         * html/HTMLCanvasElement.h:
2184         * html/canvas/CanvasRenderingContext2D.cpp:
2185         (WebCore::CanvasRenderingContext2D::drawTextInternal): Removed the early return added in
2186         r74716. A font that is loading custom fonts is okay to use, as long as it is valid.
2187         (WebCore::CanvasRenderingContext2D::accessFont): Added a call to
2188         Document::updateStyleIfNeeded(). This ensures that any pending style recalc will take place
2189         and update the font if it is invalid.
2190         * platform/graphics/Font.h:
2191         (WebCore::Font::loadingCustomFonts): Made this private.
2192
2193 2010-12-29  Pavel Feldman  <pfeldman@chromium.org>
2194
2195         Not reviewed: Qt build fix.
2196
2197         * inspector/InspectorController.cpp:
2198
2199 2010-12-29  Pavel Feldman  <pfeldman@chromium.org>
2200
2201         Reviewed by Yury Semikhatsky.
2202
2203         Web Inspector: extract Database & DOM Storage
2204         agents; remove InspectorBackend.
2205         https://bugs.webkit.org/show_bug.cgi?id=51707
2206
2207         This change brushes up storage agents + removes redundant
2208         InspectorBackend class.
2209
2210         * CMakeLists.txt:
2211         * GNUmakefile.am:
2212         * WebCore.gypi:
2213         * WebCore.pro:
2214         * WebCore.vcproj/WebCore.vcproj:
2215         * WebCore.xcodeproj/project.pbxproj:
2216         * inspector/CodeGeneratorInspector.pm:
2217         * inspector/InjectedScriptHost.cpp:
2218         (WebCore::InjectedScriptHost::databaseForId):
2219         (WebCore::InjectedScriptHost::selectDatabase):
2220         (WebCore::InjectedScriptHost::selectDOMStorage):
2221         (WebCore::InjectedScriptHost::inspectorDOMAgent):
2222         * inspector/Inspector.idl:
2223         * inspector/InspectorBackend.cpp: Removed.
2224         * inspector/InspectorBackend.h: Removed.
2225         * inspector/InspectorController.cpp:
2226         (WebCore::InspectorController::InspectorController):
2227         (WebCore::InspectorController::~InspectorController):
2228         (WebCore::InspectorController::connectFrontend):
2229         (WebCore::InspectorController::releaseFrontendLifetimeAgents):
2230         (WebCore::InspectorController::didUseDOMStorage):
2231         (WebCore::InspectorController::setInjectedScriptSource):
2232         (WebCore::InspectorController::dispatchOnInjectedScript):
2233         (WebCore::InspectorController::releaseWrapperObjectGroup):
2234         * inspector/InspectorController.h:
2235         * inspector/InspectorDOMStorageAgent.cpp: Added.
2236         (WebCore::InspectorDOMStorageAgent::~InspectorDOMStorageAgent):
2237         (WebCore::InspectorDOMStorageAgent::getDOMStorageEntries):
2238         (WebCore::InspectorDOMStorageAgent::setDOMStorageItem):
2239         (WebCore::InspectorDOMStorageAgent::removeDOMStorageItem):
2240         (WebCore::InspectorDOMStorageAgent::selectDOMStorage):
2241         (WebCore::InspectorDOMStorageAgent::InspectorDOMStorageAgent):
2242         (WebCore::InspectorDOMStorageAgent::getDOMStorageResourceForId):
2243         * inspector/InspectorDOMStorageAgent.h: Copied from WebCore/inspector/InspectorStorageAgent.h.
2244         (WebCore::InspectorDOMStorageAgent::create):
2245         (WebCore::InspectorDOMStorageAgent::frontend):
2246         * inspector/InspectorDatabaseAgent.cpp: Renamed from WebCore/inspector/InspectorStorageAgent.cpp.
2247         (WebCore::InspectorDatabaseAgent::~InspectorDatabaseAgent):
2248         (WebCore::InspectorDatabaseAgent::getDatabaseTableNames):
2249         (WebCore::InspectorDatabaseAgent::executeSQL):
2250         (WebCore::InspectorDatabaseAgent::databaseForId):
2251         (WebCore::InspectorDatabaseAgent::selectDatabase):
2252         (WebCore::InspectorDatabaseAgent::clearFrontend):
2253         (WebCore::InspectorDatabaseAgent::InspectorDatabaseAgent):
2254         * inspector/InspectorDatabaseAgent.h: Renamed from WebCore/inspector/InspectorStorageAgent.h.
2255         (WebCore::InspectorDatabaseAgent::create):
2256         (WebCore::InspectorDatabaseAgent::frontend):
2257         * inspector/InspectorFrontendClientLocal.cpp:
2258         * inspector/InspectorFrontendClientLocal.h:
2259         * inspector/front-end/ScriptsPanel.js:
2260         (WebInspector.ScriptsPanel.prototype.show):
2261
2262 2010-12-29  Tony Gentilcore  <tonyg@chromium.org>
2263
2264         Reviewed by Eric Seidel.
2265
2266         Assertion failure: element->inDocument() in AsyncScriptRunner::executeScriptSoon()
2267         https://bugs.webkit.org/show_bug.cgi?id=51067
2268
2269         Typically when a script element is removed from the document, the cached script
2270         client is removed. However, during the before load event, the cached script client
2271         hasn't been created yet so it can't be removed.
2272
2273         This patch handles that case by explicitly checking if the script element was
2274         removed during the beforeload event. Also, it avoids caching the Document references
2275         over the arbitrary script execution in the before load event.
2276
2277         Test: fast/dom/HTMLScriptElement/move-in-beforeload.html
2278               fast/dom/HTMLScriptElement/remove-in-beforeload.html
2279
2280         * dom/ScriptElement.cpp:
2281         (WebCore::ScriptElement::requestScript):
2282
2283 2010-12-29  Alexander Pavlov  <apavlov@chromium.org>
2284
2285         Reviewed by Yury Semikhatsky.
2286
2287         Web Inspector: Element highlight tooltip displays wrong element size when zoomed in
2288         https://bugs.webkit.org/show_bug.cgi?id=51703
2289
2290         * inspector/InspectorController.cpp:
2291         (WebCore::InspectorController::drawElementTitle):
2292
2293 2010-12-29  Yael Aharon  <yael.aharon@nokia.com>
2294
2295         Reviewed by Kent Tamura.
2296
2297         [HTML5][Forms] Support for :in-range and :out-of-range CSS selectors
2298         https://bugs.webkit.org/show_bug.cgi?id=29071
2299
2300         Use InputType::rangeUnderflow() and InputType::rangeOverflow()
2301         to determine if a control is in-range or out-of-range.
2302
2303         Tests: fast/css/pseudo-in-range-invalid-value.html
2304                fast/css/pseudo-in-range.html
2305                fast/css/pseudo-out-of-range.html
2306
2307         * css/CSSSelector.cpp:
2308         (WebCore::CSSSelector::pseudoId):
2309         (WebCore::nameToPseudoTypeMap):
2310         (WebCore::CSSSelector::extractPseudoType):
2311         * css/CSSSelector.h:
2312         * css/CSSStyleSelector.cpp:
2313         (WebCore::CSSStyleSelector::canShareStyleWithElement):
2314         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
2315         * dom/Element.h:
2316         (WebCore::Element::isInRange):
2317         (WebCore::Element::isOutOfRange):
2318         * html/BaseDateAndTimeInputType.cpp:
2319         (WebCore::BaseDateAndTimeInputType::supportsRangeLimitation):
2320         * html/BaseDateAndTimeInputType.h:
2321         * html/HTMLInputElement.cpp:
2322         (WebCore::HTMLInputElement::isInRange):
2323         (WebCore::HTMLInputElement::isOutOfRange):
2324         * html/HTMLInputElement.h:
2325         * html/InputType.cpp:
2326         (WebCore::InputType::supportsRangeLimitation):
2327         * html/InputType.h:
2328         * html/NumberInputType.cpp:
2329         (WebCore::NumberInputType::supportsRangeLimitation):
2330         * html/NumberInputType.h:
2331         * html/RangeInputType.cpp:
2332         (WebCore::RangeInputType::supportsRangeLimitation):
2333         * html/RangeInputType.h:
2334
2335 2010-12-29  Abhishek Arya  <inferno@chromium.org>
2336
2337         Reviewed by Eric Seidel.
2338
2339         When cloning an anonymous block, make sure to set the childrenInline flag based
2340         on the state of the block to be cloned.
2341         https://bugs.webkit.org/show_bug.cgi?id=51489
2342
2343         Test: fast/multicol/span/clone-anonymous-block-non-inline-child-crash.html
2344
2345         * rendering/RenderBlock.cpp:
2346         (WebCore::RenderBlock::clone): add code to handle cloning of anonymous blocks.
2347         (WebCore::RenderBlock::splitBlocks): remove anonymous block creation calls since it is now handled by clone().
2348
2349 2010-12-29  Patrick Gansterer  <paroga@webkit.org>
2350
2351         Unreviewed build fix for WinCE after r73802.
2352
2353         Reapply parts from r72585:
2354         Port ContextMenuWin.cpp to WinCE
2355         https://bugs.webkit.org/show_bug.cgi?id=48408
2356
2357         * CMakeLists.txt:
2358         * platform/ContextMenu.h:
2359         * platform/win/ContextMenuWin.cpp:
2360         (WebCore::ContextMenu::getContextMenuItems):
2361         (WebCore::ContextMenu::createNativeMenuFromItems):
2362
2363 2010-12-29  Kent Hansen  <kent.hansen@nokia.com>
2364
2365         Reviewed by Simon Hausmann.
2366
2367         [Qt] Fix compilation with Qt in namespace
2368         https://bugs.webkit.org/show_bug.cgi?id=51701
2369
2370         * platform/graphics/ContextShadow.h:
2371         * platform/graphics/GraphicsContext3D.h:
2372         * platform/network/NetworkingContext.h:
2373         * platform/network/qt/QtNAMThreadSafeProxy.h:
2374         * plugins/PluginView.h:
2375
2376 2010-12-28  Alexander Pavlov  <apavlov@chromium.org>
2377
2378         Reviewed by Pavel Feldman.
2379
2380         Web Inspector: A disabled style property should get enabled when edited
2381         https://bugs.webkit.org/show_bug.cgi?id=51679
2382
2383         Test: inspector/styles-disable-then-change.html
2384
2385         * inspector/front-end/CSSStyleModel.js:
2386         (WebInspector.CSSProperty.prototype.setText):
2387         (WebInspector.CSSProperty.prototype.setText.callback):
2388
2389 2010-12-29  Patrick Gansterer  <paroga@webkit.org>
2390
2391         Reviewed by Andreas Kling.
2392
2393         [CMake] Remove WebKitGenerators
2394         https://bugs.webkit.org/show_bug.cgi?id=50445
2395
2396         * CMakeLists.txt: Pass preprocessor to generate-bindings.pl.
2397
2398 2010-12-28  Pratik Solanki  <psolanki@apple.com>
2399
2400         Reviewed by Eric Seidel.
2401
2402         https://bugs.webkit.org/show_bug.cgi?id=51522
2403         Use deviceRGBColorSpaceRef() instead of calling CGColorSpaceCreateDeviceRGB()
2404
2405         * page/win/FrameCGWin.cpp:
2406         (WebCore::imageFromRect):
2407         * platform/graphics/cg/GradientCG.cpp:
2408         (WebCore::Gradient::platformGradient):
2409         * platform/graphics/cg/GraphicsContext3DCG.cpp:
2410         (WebCore::GraphicsContext3D::paintToCanvas):
2411         * platform/graphics/cg/ImageCG.cpp:
2412         (WebCore::BitmapImage::checkForSolidColor):
2413         * platform/graphics/gstreamer/ImageGStreamerCG.mm:
2414         (ImageGStreamer::ImageGStreamer):
2415         * platform/graphics/win/GraphicsContextCGWin.cpp:
2416         (WebCore::CGContextWithHDC):
2417         (WebCore::GraphicsContext::releaseWindowsContext):
2418         (WebCore::GraphicsContext::drawWindowsBitmap):
2419         * platform/graphics/win/ImageCGWin.cpp:
2420         (WebCore::BitmapImage::create):
2421         (WebCore::BitmapImage::getHBITMAPOfSize):
2422         * platform/image-decoders/cg/ImageDecoderCG.cpp:
2423         (WebCore::createColorSpace):
2424         * platform/win/DragImageCGWin.cpp:
2425         (WebCore::allocImage):
2426         (WebCore::createCgContextFromBitmap):
2427         * rendering/RenderThemeMac.mm:
2428         (WebCore::RenderThemeMac::paintMenuListButtonGradients):
2429         (WebCore::RenderThemeMac::paintSliderTrack):
2430         * rendering/RenderThemeSafari.cpp:
2431         (WebCore::RenderThemeSafari::paintMenuListButtonGradients):
2432         (WebCore::RenderThemeSafari::paintSliderTrack):
2433
2434 2010-12-28  Daniel Bates  <dbates@rim.com>
2435
2436         Reviewed by Sam Weinig.
2437
2438         Substitute // MARK: for compiler-specific #pragma mark
2439         https://bugs.webkit.org/show_bug.cgi?id=51657
2440
2441         Fix compilation warnings about "#pragma mark" on GTK+ bots by
2442         substituting  "// MARK:" for "#pragma mark", which provides
2443         analogous code-bookmarking functionality under Xcode.
2444
2445         * platform/graphics/cg/PathCG.cpp:
2446         * platform/graphics/mac/WebLayer.mm:
2447
2448 2010-12-28  Jan Erik Hanssen  <jhanssen@sencha.com>
2449
2450         Reviewed by Eric Seidel.
2451
2452         [Qt] GraphicsContext::getCTM() does not need to make a copy of QPainter::combinedTransform()
2453         https://bugs.webkit.org/show_bug.cgi?id=51687
2454
2455         Use a const reference instead of a copy of QPainter::combinedTransform() 
2456         in GraphicsContext::getCTM()
2457
2458         * platform/graphics/qt/GraphicsContextQt.cpp:
2459         (WebCore::GraphicsContext::getCTM):
2460
2461 2010-12-28  Takashi Toyoshima  <toyoshim@google.com>
2462
2463         Reviewed by Eric Seidel.
2464
2465         gcc detected 'control reaches end of non-void function' with
2466         -finstrument-functions option.
2467         https://bugs.webkit.org/show_bug.cgi?id=51669
2468
2469         No new tests. These fixes are trivial.
2470
2471         * dom/Element.cpp:
2472         (WebCore::Element::childTypeAllowed):
2473         * inspector/InspectorResourceAgent.cpp:
2474         (WebCore::cachedResourceTypeString):
2475
2476 2010-12-28  Tony Gentilcore  <tonyg@chromium.org>
2477
2478         Reviewed by Eric Seidel.
2479
2480         Remove unused member of PendingScript
2481         https://bugs.webkit.org/show_bug.cgi?id=51684
2482
2483         This was used when HTMLScriptRunner::runScript created a PendingScript
2484         for inline scripts. But now it just calls executeScript() directly.
2485         External scripts always have the minimum starting line number.
2486
2487         No new tests because no changed functionality.
2488
2489         * dom/PendingScript.cpp:
2490         (WebCore::PendingScript::releaseElementAndClear):
2491         * dom/PendingScript.h:
2492         (WebCore::PendingScript::PendingScript):
2493         (WebCore::PendingScript::operator=):
2494         * html/parser/HTMLScriptRunner.cpp:
2495         (WebCore::HTMLScriptRunner::sourceFromPendingScript):
2496
2497 2010-12-20  Antonio Gomes  <agomes@rim.com>
2498
2499         Reviewed by Daniel Bates.
2500
2501         Spatial Navigation: code clean up (Part VI)
2502         https://bugs.webkit.org/show_bug.cgi?id=50666
2503
2504         No new tests needed.
2505
2506         * page/FocusController.cpp:
2507         (WebCore::updatFocusCandidateIfNeeded): Assert renderer() and
2508         isElementNode() now that we are bailing out earlier in both the
2509         FocusCandidate constructor and FocusController::findFocusCandidateInContainer().
2510         * page/SpatialNavigation.h: Swapped the parameters order in canScrollInDirection
2511         and virtualRectForAreaElementAndDirection functions.
2512         (WebCore::FocusController::findFocusCandidateInContainer):
2513         (WebCore::FocusController::advanceFocusDirectionallyInContainer): Adjusted callsites
2514         of canScrollInDirection(), and added an early return if !isElementNode().
2515         (WebCore::FocusController::advanceFocusDirectionally): Adjusted callsite of
2516         virtualRectForAreaElementAndDirection();
2517         * page/SpatialNavigation.cpp:
2518         (WebCore::FocusCandidate::FocusCandidate): Assert if node is not a element node;
2519         (WebCore::isScrollableNode): Renamed from isScrollableContainerNode;
2520         (WebCore::scrollInDirection): Adjusted callsite after function name change;
2521         (WebCore::scrollableEnclosingBoxOrParentFrameForNodeInDi:rection): Assert if node is
2522         a documentNode.
2523         (WebCore::canScrollInDirection): Signature changed.
2524         (WebCore::canBeScrolledIntoView): Ditto.
2525         (WebCore::virtualRectForAreaElementAndDirection): Ditto.
2526
2527 2010-12-28  Adrienne Walker  <enne@google.com>
2528
2529         Reviewed by Kenneth Russell.
2530
2531         [chromium] Fix tiled compositor assertion after GPU process recovery.
2532         https://bugs.webkit.org/show_bug.cgi?id=51682
2533
2534         After the GPU process recovers, the layer size is set to IntSize(),
2535         but IntRect::unite() has a special case for empty rects.  This
2536         behavior was causing the layer size to be too small, causing an
2537         out-of-bounds array access elsewhere.
2538
2539         No new tests.
2540
2541         * platform/graphics/chromium/LayerTilerChromium.cpp:
2542         (WebCore::LayerTilerChromium::growLayerToContain):
2543
2544 2010-12-23  Zhenyao Mo  <zmo@google.com>
2545
2546         Reviewed by Kenneth Russell.
2547
2548         Initialize to 0 for undefined values in CopyTexImage2D
2549         https://bugs.webkit.org/show_bug.cgi?id=51421
2550
2551         * html/canvas/WebGLFramebuffer.cpp: Track width/height/internalFormat of color buffer.
2552         (WebCore::WebGLFramebuffer::WebGLFramebuffer):
2553         (WebCore::WebGLFramebuffer::setAttachment):
2554         (WebCore::WebGLFramebuffer::getWidth):
2555         (WebCore::WebGLFramebuffer::getHeight):
2556         (WebCore::WebGLFramebuffer::getColorBufferFormat):
2557         * html/canvas/WebGLFramebuffer.h:
2558         * html/canvas/WebGLRenderingContext.cpp:
2559         (WebCore::WebGLRenderingContext::copyTexImage2D): Initialize undefined pixels to 0.
2560         (WebCore::WebGLRenderingContext::copyTexSubImage2D):
2561         (WebCore::WebGLRenderingContext::framebufferTexture2D):
2562         (WebCore::WebGLRenderingContext::renderbufferStorage):
2563         (WebCore::WebGLRenderingContext::getBoundFramebufferWidth):
2564         (WebCore::WebGLRenderingContext::getBoundFramebufferHeight):
2565         * html/canvas/WebGLRenderingContext.h:
2566         * html/canvas/WebGLTexture.cpp: Track width/height/internalFormat of a texture by target/level.
2567         (WebCore::WebGLTexture::getInternalFormat):
2568         (WebCore::WebGLTexture::getWidth):
2569         (WebCore::WebGLTexture::getHeight):
2570         (WebCore::WebGLTexture::mapTargetToIndex):
2571         (WebCore::WebGLTexture::getLevelInfo):
2572         * html/canvas/WebGLTexture.h:
2573         (WebCore::WebGLTexture::isTexture):
2574         * platform/graphics/GraphicsContext3D.h: Add getInternalFramebufferSize() function.
2575         * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
2576         (WebCore::GraphicsContext3D::getInternalFramebufferSize):
2577         * platform/graphics/qt/GraphicsContext3DQt.cpp:
2578         (WebCore::GraphicsContext3D::getInternalFramebufferSize):
2579
2580 2010-12-23  Zhenyao Mo  <zmo@google.com>
2581
2582         Reviewed by Kenneth Russell.
2583
2584         Map GLsizei to long instead of unsigned long in WebGLRenderingContext and GraphicsContext3D
2585         https://bugs.webkit.org/show_bug.cgi?id=39855
2586
2587         * html/canvas/WebGLRenderingContext.cpp:
2588         (WebCore::WebGLRenderingContext::copyTexImage2D): Map GLsizei to long.
2589         (WebCore::WebGLRenderingContext::copyTexSubImage2D): Ditto.
2590         (WebCore::WebGLRenderingContext::renderbufferStorage): Ditto.
2591         (WebCore::WebGLRenderingContext::scissor): Ditto.
2592         (WebCore::WebGLRenderingContext::texImage2DBase): Ditto.
2593         (WebCore::WebGLRenderingContext::texImage2D): Ditto.
2594         (WebCore::WebGLRenderingContext::texSubImage2DBase): Ditto.
2595         (WebCore::WebGLRenderingContext::texSubImage2DImpl): Ditto.
2596         (WebCore::WebGLRenderingContext::texSubImage2D): Ditto.
2597         (WebCore::WebGLRenderingContext::viewport): Ditto.
2598         (WebCore::WebGLRenderingContext::validateSize): Check the sizes are non-negative.
2599         * html/canvas/WebGLRenderingContext.h:
2600         * html/canvas/WebGLRenderingContext.idl:
2601
2602 2010-12-28  Abhishek Arya  <inferno@chromium.org>
2603
2604         Reviewed by Kenneth Russell.
2605
2606         Fix crash with invalid font in m_fontList by not drawing text when a custom font is in the
2607         process of loading.
2608         https://bugs.webkit.org/show_bug.cgi?id=51681
2609
2610         Test: canvas/philip/tests/2d.text-custom-font-load-crash.html
2611
2612         * html/canvas/CanvasRenderingContext2D.cpp:
2613         (WebCore::CanvasRenderingContext2D::drawTextInternal): bail out if a custom font is loading.
2614         * platform/graphics/Font.cpp:
2615         (WebCore::Font::operator==): Replace condition with new function loadingCustomFonts()
2616         (WebCore::Font::drawText): Replace condition with new function loadingCustomFonts()
2617         (WebCore::Font::drawEmphasisMarks): Replace condition with new function loadingCustomFonts()
2618         * platform/graphics/Font.h:
2619         (WebCore::Font::loadingCustomFonts): new function that returns if a custom font is loading.
2620
2621 2010-12-28  Dimitri Glazkov  <dglazkov@chromium.org>
2622
2623         Reviewed by Eric Seidel.
2624
2625         Combine setShadowRoot and clearShadowRoot into a simpler API
2626         https://bugs.webkit.org/show_bug.cgi?id=50971
2627
2628         No change in behavior, and API is not used yet.
2629
2630         * dom/Element.cpp:
2631         (WebCore::Element::setShadowRoot): Combined clearing and setting of
2632             the shadowRoot, also hooked up with setting and clearing of the
2633             corresponding shadowHost values.
2634         * dom/Element.h: renamed clearShadowRoot to removeShadowRoot and made it
2635             private.
2636         * dom/Node.h: Made shadow host-related functions public so that
2637             Element::setShadowRoot can access setShadowHost. It seems logical
2638             to make shadowHost public as well to keep the defs together.
2639
2640 2010-12-28  Andrey Kosyakov  <caseq@chromium.org>
2641
2642         Reviewed by Pavel Feldman.
2643
2644         Web Inspector: [Chromium] Expose extension API to select a node in WebInspector
2645         Do not request content for resources with non-numeric identifiers.
2646         https://bugs.webkit.org/show_bug.cgi?id=49727
2647
2648         Test: http/tests/inspector/extensions-resources-redirect.html
2649
2650         * inspector/front-end/NetworkManager.js:
2651         (WebInspector.NetworkManager.prototype._appendRedirect):
2652
2653 2010-12-28  Ilya Tikhonovsky  <loislo@chromium.org>
2654
2655         Unreviewed build fix for Qt.
2656
2657         ResourceTreeModel.js was added.
2658
2659         * inspector/front-end/WebKit.qrc:
2660
2661 2010-12-28  Mikhail Naganov  <mnaganov@chromium.org>
2662
2663         Reviewed by Pavel Feldman.
2664
2665         [Chromium] Fix memory leak in Profiles tab concerned with heap profiles views.
2666
2667         https://bugs.webkit.org/show_bug.cgi?id=51680
2668
2669         * inspector/front-end/ProfilesPanel.js:
2670         (WebInspector.ProfilesPanel.prototype._reset):
2671
2672 2010-12-28  Alexander Pavlov  <apavlov@chromium.org>
2673
2674         Reviewed by Pavel Feldman.
2675
2676         Web Inspector: REGRESSION: Clicking image resource in style sidebar doesn't actually go to resource anymore
2677         https://bugs.webkit.org/show_bug.cgi?id=51663
2678
2679         The base URI is now computed correctly for links from CSS property uri(...) values. Additionally,
2680         optional quotes/apostrophes and spaces are now allowed inside uri(...).
2681
2682         Test: inspector/styles-url-linkify.html
2683
2684         * inspector/front-end/StylesSidebarPane.js:
2685         (WebInspector.StylePropertyTreeElement.prototype.updateTitle.linkifyURL):
2686         (WebInspector.StylePropertyTreeElement.prototype.updateTitle):
2687
2688 2010-12-21  Ilya Tikhonovsky  <loislo@chromium.org>
2689
2690         Reviewed by Pavel Feldman.
2691
2692         Web Inspector: Protocol cleanup task. Introduce Network, DOMStorage and Database domains.
2693
2694         Domain was changed for Resources, FileSystem etc. related methods.
2695         ResourcesManager was renamed to NetworkManager.
2696         ResourceTreeModel was extracted as separate file.
2697         FileSystem, Database, DOMStorage and ApplicationCache methods were
2698         removed from NetworkManager and added to corresponding classes.
2699
2700         https://bugs.webkit.org/show_bug.cgi?id=51334
2701
2702         * WebCore.gypi:
2703         * WebCore.vcproj/WebCore.vcproj:
2704         * inspector/CodeGeneratorInspector.pm:
2705         * inspector/Inspector.idl:
2706         * inspector/front-end/AuditRules.js:
2707         (WebInspector.AuditRules.UnusedCssRule.prototype.doRun.evalCallback.selectorsCallback):
2708         * inspector/front-end/CSSStyleModel.js:
2709         (WebInspector.CSSStyleModel.prototype._styleSheetChanged.callback):
2710         (WebInspector.CSSStyleModel.prototype._styleSheetChanged):
2711         * inspector/front-end/ConsoleView.js:
2712         (WebInspector.ConsoleView.prototype.addMessage):
2713         (WebInspector.ConsoleView.prototype.clearMessages):
2714         * inspector/front-end/DOMAgent.js:
2715         (WebInspector.ApplicationCache.updateApplicationCacheStatus):
2716         (WebInspector.ApplicationCache.updateNetworkState):
2717         * inspector/front-end/DOMStorage.js:
2718         (WebInspector.DOMStorage.addDOMStorage):
2719         (WebInspector.DOMStorage.selectDOMStorage):
2720         (WebInspector.DOMStorage.updateDOMStorage):
2721         * inspector/front-end/Database.js:
2722         (WebInspector.Database.prototype.executeSql):
2723         (WebInspector.Database.addDatabase):
2724         (WebInspector.Database.selectDatabase):
2725         (WebInspector.Database.sqlTransactionSucceeded):
2726         (WebInspector.Database.sqlTransactionFailed):
2727         * inspector/front-end/FileSystemView.js:
2728         (WebInspector.FileSystem.didGetFileSystemPath):
2729         (WebInspector.FileSystem.didGetFileSystemError):
2730         (WebInspector.FileSystem.didGetFileSystemDisabled):
2731         * inspector/front-end/NetworkItemView.js:
2732         (WebInspector.NetworkItemView):
2733         * inspector/front-end/NetworkManager.js: Added.
2734         (WebInspector.NetworkManager):
2735         (WebInspector.NetworkManager.prototype._createResource):
2736         (WebInspector.NetworkManager.prototype.identifierForInitialRequest):
2737         (WebInspector.NetworkManager.prototype.willSendRequest):
2738         (WebInspector.NetworkManager.prototype._updateResourceWithRequest):
2739         (WebInspector.NetworkManager.prototype._appendRedirect):
2740         (WebInspector.NetworkManager.prototype.markResourceAsCached):
2741         (WebInspector.NetworkManager.prototype.didReceiveResponse):
2742         (WebInspector.NetworkManager.prototype._updateResourceWithResponse):
2743         (WebInspector.NetworkManager.prototype.didReceiveContentLength):
2744         (WebInspector.NetworkManager.prototype.didFinishLoading):
2745         (WebInspector.NetworkManager.prototype.didFailLoading):
2746         (WebInspector.NetworkManager.prototype.didLoadResourceFromMemoryCache):
2747         (WebInspector.NetworkManager.prototype._updateResourceWithCachedResource):
2748         (WebInspector.NetworkManager.prototype.setInitialContent):
2749         (WebInspector.NetworkManager.prototype.didCommitLoadForFrame):
2750         (WebInspector.NetworkManager.prototype.frameDetachedFromParent):
2751         (WebInspector.NetworkManager.prototype.didCreateWebSocket):
2752         (WebInspector.NetworkManager.prototype.willSendWebSocketHandshakeRequest):
2753         (WebInspector.NetworkManager.prototype.didReceiveWebSocketHandshakeResponse):
2754         (WebInspector.NetworkManager.prototype.didCloseWebSocket):
2755         (WebInspector.NetworkManager.prototype._processCachedResources):
2756         (WebInspector.NetworkManager.prototype._addFramesRecursively):
2757         (WebInspector.NetworkManager.requestContent):
2758         * inspector/front-end/NetworkPanel.js:
2759         (WebInspector.NetworkPanel.prototype.refreshResource):
2760         * inspector/front-end/Resource.js:
2761         (WebInspector.Resource.prototype._innerRequestContent):
2762         * inspector/front-end/ResourceManager.js: Removed.
2763         * inspector/front-end/ResourceTreeModel.js: Added.
2764         (WebInspector.ResourceTreeModel):
2765         (WebInspector.ResourceTreeModel.prototype.addOrUpdateFrame):
2766         (WebInspector.ResourceTreeModel.prototype.didCommitLoadForFrame):
2767         (WebInspector.ResourceTreeModel.prototype.frameDetachedFromParent):
2768         (WebInspector.ResourceTreeModel.prototype._clearChildFramesAndResources):
2769         (WebInspector.ResourceTreeModel.prototype.addResourceToFrame):
2770         (WebInspector.ResourceTreeModel.prototype._clearResources):
2771         (WebInspector.ResourceTreeModel.prototype.forAllResources):
2772         (WebInspector.ResourceTreeModel.prototype.addConsoleMessage):
2773         (WebInspector.ResourceTreeModel.prototype.clearConsoleMessages):
2774         (WebInspector.ResourceTreeModel.prototype._callForFrameResources):
2775         (WebInspector.ResourceTreeModel.prototype.resourceForURL):
2776         (WebInspector.ResourceTreeModel.prototype.bindResourceURL):
2777         (WebInspector.ResourceTreeModel.prototype._unbindResourceURL):
2778         (WebInspector.ResourceTreeModel.createResource):
2779         * inspector/front-end/ResourceView.js:
2780         (WebInspector.ResourceView.createResourceView):
2781         (WebInspector.ResourceView.resourceViewTypeMatchesResource):
2782         (WebInspector.ResourceView.resourceViewForResource):
2783         (WebInspector.ResourceView.recreateResourceView):
2784         (WebInspector.ResourceView.existingResourceViewForResource):
2785         * inspector/front-end/ResourcesPanel.js:
2786         (WebInspector.ResourcesPanel.prototype.canShowSourceLine):
2787         (WebInspector.ResourcesPanel.prototype.showSourceLine):
2788         (WebInspector.ResourcesPanel.prototype.showResource):
2789         (WebInspector.ResourcesPanel.prototype.get searchableViews.callback):
2790         (WebInspector.ResourcesPanel.prototype.get searchableViews):
2791         (WebInspector.FrameResourceTreeElement.prototype._errorsWarningsUpdated):
2792         (WebInspector.FrameResourceTreeElement.prototype._contentChanged):
2793         * inspector/front-end/ScriptsPanel.js:
2794         (WebInspector.ScriptsPanel.prototype._addScript):
2795         (WebInspector.ScriptsPanel.prototype.reset):
2796         (WebInspector.ScriptsPanel.prototype._sourceFrameForResource):
2797         (WebInspector.ScriptsPanel.prototype._showScriptOrResource):
2798         * inspector/front-end/WebKit.qrc:
2799         * inspector/front-end/inspector.html:
2800         * inspector/front-end/inspector.js:
2801         (WebInspector.forAllResources):
2802         (WebInspector.resourceForURL):
2803
2804 2010-12-27  Helder Correia  <helder@sencha.com>
2805
2806         Reviewed by Ariya Hidayat.
2807
2808         ContextShadow should use AffineTransform instead of TransformationMatrix
2809         https://bugs.webkit.org/show_bug.cgi?id=51661
2810
2811         ContextShadow needs the CTM to make sure shadows are not affected by
2812         transformations when drawing on a canvas. AffineTransform is sufficient
2813         in this case.
2814
2815         Existing tests: fast/canvas/canvas*shadow*html
2816
2817         * platform/graphics/ContextShadow.cpp:
2818         (WebCore::ContextShadow::mustUseContextShadow):
2819         (WebCore::ContextShadow::adjustBlurDistance):
2820         (WebCore::ContextShadow::calculateLayerBoundingRect):
2821         * platform/graphics/ContextShadow.h:
2822         * platform/graphics/cairo/ContextShadowCairo.cpp:
2823         (WebCore::ContextShadow::getTransformationMatrixFromContext):
2824         * platform/graphics/qt/ContextShadowQt.cpp:
2825         (WebCore::ContextShadow::getTransformationMatrixFromContext):
2826
2827 2010-12-27  Daniel Bates  <dbates@rim.com>
2828
2829         Reviewed by Antonio Gomes.
2830
2831         Clean up: Rename HTMLFrameElementBase::getMarginWidth() and HTMLFrameElementBase::getMarginHeight()
2832         https://bugs.webkit.org/show_bug.cgi?id=51634
2833
2834         Rename HTMLFrameElementBase::getMarginWidth() and HTMLFrameElementBase::getMarginHeight()
2835         to HTMLFrameElementBase::marginWidth() and HTMLFrameElementBase::marginHeight(), respectively.
2836         This will make the names of these getters consistent with the naming convention we use for
2837         getters.
2838
2839         * html/HTMLBodyElement.cpp:
2840         (WebCore::HTMLBodyElement::insertedIntoDocument):
2841         * html/HTMLFrameElementBase.h:
2842         (WebCore::HTMLFrameElementBase::marginWidth): Renamed; Formerly getMarginWidth().
2843         (WebCore::HTMLFrameElementBase::marginHeight): Renamed; Formerly getMarginHeight().
2844         * loader/SubframeLoader.cpp:
2845         (WebCore::SubframeLoader::loadSubframe):
2846         * page/FrameView.cpp:
2847         (WebCore::FrameView::init):
2848         * rendering/RenderEmbeddedObject.cpp:
2849         (WebCore::RenderEmbeddedObject::viewCleared): Also renamed variables marginw and marginh
2850         to marginWidth and marginHeight, respectively. This makes the names of these variables
2851         consistent with the names of similar variables in SubframeLoader::loadSubframe() and FrameView::init().
2852         * rendering/RenderFrame.cpp:
2853         (WebCore::RenderFrame::viewCleared): Ditto.
2854
2855 2010-12-27  Martin Robinson  <mrobinson@igalia.com>
2856
2857         Reviewed by Daniel Bates.
2858
2859         [GTK] RenderThemeGtk::m_HScale and RenderThemeGtk::m_VScale are not initialized
2860         https://bugs.webkit.org/show_bug.cgi?id=51654
2861
2862         Properly initialize slider members of RenderThemeGtk. This can lead to test crashes
2863         on some debug configurations.
2864
2865         No new tests. This is already covered by current slider tests. It isn't crashing on
2866         the bots, but it does crash locally.
2867
2868         * platform/gtk/RenderThemeGtk.cpp:
2869         (WebCore::RenderThemeGtk::RenderThemeGtk): Properly initialize members.
2870
2871 2010-12-27  Anton Muhin  <antonm@chromium.org>
2872
2873         Reviewed by David Levin.
2874
2875         [v8] Remove unused methods to protect/unprotect wrappers during garbage collection
2876         https://bugs.webkit.org/show_bug.cgi?id=51648
2877
2878         * bindings/v8/ScriptController.cpp:
2879         * bindings/v8/ScriptController.h:
2880         * bindings/v8/V8GCController.cpp:
2881         (WebCore::V8GCController::gcEpilogue):
2882         * bindings/v8/V8GCController.h:
2883
2884 2010-12-27  Yury Semikhatsky  <yurys@chromium.org>
2885
2886         Unreviewed. Removed trailing spaces from a localized
2887         string to make it the same as the one used in the code.
2888
2889         * English.lproj/localizedStrings.js:
2890
2891 2010-12-27  Yael Aharon  <yael.aharon@nokia.com>
2892
2893         Reviewed by Eric Seidel.
2894
2895         Browser is failing 16 baseline test from Selector API Test Suite
2896         https://bugs.webkit.org/show_bug.cgi?id=42968
2897
2898         Throw an exception if there is no argument to querySelector or 
2899         querySelectorAll. This replaces the current behavior of passing the string
2900         "undefined" as the argument.
2901
2902         No new tests, just updating the existing results for 
2903         fast/dom/SelectorAPI/resig-SelectorAPI-test.xhtml.
2904
2905         * dom/Document.idl:
2906         * dom/DocumentFragment.idl:
2907         * dom/Element.idl:
2908
2909 2010-12-26  MORITA Hajime  <morrita@google.com>
2910
2911         Reviewed by Dan Bernstein.
2912
2913         For box-shadow, non-primary shadows should have specified radii.
2914         https://bugs.webkit.org/show_bug.cgi?id=51386
2915
2916         On paintBoxShadow(), the spread value accidentally accumulated accidentally
2917         during the loop, which should be applied individually for radius of each shadow. 
2918         This change makes the radii for rects computed for each shadow.
2919         
2920         Test: fast/box-shadow/spread-multiple-normal.html
2921
2922         * rendering/RenderBoxModelObject.cpp:
2923         (WebCore::RenderBoxModelObject::paintBoxShadow):
2924
2925 2010-12-26  Patrick Gansterer  <paroga@webkit.org>
2926
2927         Reviewed by Eric Seidel.
2928
2929         Improve output of HTML parser benchmark
2930         https://bugs.webkit.org/show_bug.cgi?id=51611
2931
2932         Calculate and show median, min and max values.
2933
2934         * benchmarks/parser/html-parser.html:
2935
2936 2010-12-26  Abhishek Arya  <inferno@chromium.org>
2937
2938         Reviewed by Simon Fraser.
2939
2940         Remove the bad assert in paintPaginatedChildLayer, hitTestPaginatedChildLayer. 
2941         https://bugs.webkit.org/show_bug.cgi?id=48772
2942
2943         Test: fast/multicol/renderer-positioned-assert-crash.html
2944
2945         * rendering/RenderLayer.cpp:
2946         (WebCore::RenderLayer::paintPaginatedChildLayer):
2947         (WebCore::RenderLayer::hitTestPaginatedChildLayer):
2948
2949 2010-12-25  Peter Rybin  <peter.rybin@gmail.com>
2950
2951         Reviewed by Adam Barth.
2952
2953         Adds currentColumn (and currentLine) to SegmentedString. Switches
2954         HTMLTreeBuilder to HTMLDocumentParser::textPosition when it
2955         needs position for a <script> tag.
2956
2957         SegmentedString should provide column position
2958         https://bugs.webkit.org/show_bug.cgi?id=51311
2959
2960         * html/parser/HTMLDocumentParser.cpp:
2961         (WebCore::HTMLDocumentParser::HTMLDocumentParser):
2962         (WebCore::HTMLDocumentParser::textPosition):
2963         * html/parser/HTMLInputStream.h:
2964         (WebCore::HTMLInputStream::current):
2965         (WebCore::InsertionPointRecord::InsertionPointRecord):
2966         (WebCore::InsertionPointRecord::~InsertionPointRecord):
2967         * html/parser/HTMLTreeBuilder.cpp:
2968         (WebCore::HTMLTreeBuilder::HTMLTreeBuilder):
2969         (WebCore::HTMLTreeBuilder::processScriptStartTag):
2970         * html/parser/HTMLTreeBuilder.h:
2971         (WebCore::HTMLTreeBuilder::create):
2972         * platform/text/SegmentedString.cpp:
2973         (WebCore::SegmentedString::operator=):
2974         (WebCore::SegmentedString::numberOfCharactersConsumedSlow):
2975         (WebCore::SegmentedString::advanceSlowCase):
2976         (WebCore::SegmentedString::currentLine):
2977         (WebCore::SegmentedString::currentColumn):
2978         (WebCore::SegmentedString::setCurrentPosition):
2979         * platform/text/SegmentedString.h:
2980         (WebCore::SegmentedString::SegmentedString):
2981         (WebCore::SegmentedString::advancePastNewline):
2982         (WebCore::SegmentedString::advance):
2983         (WebCore::SegmentedString::numberOfCharactersConsumed):
2984
2985 2010-12-25  Andreas Kling  <kling@webkit.org>
2986
2987         Reviewed by Kenneth Rohde Christiansen.
2988
2989         GraphicsContext: Don't pass StrokeStyle (enum) as const reference
2990         https://bugs.webkit.org/show_bug.cgi?id=51608
2991
2992         * platform/graphics/GraphicsContext.cpp:
2993         (WebCore::GraphicsContext::setStrokeStyle):
2994         (WebCore::GraphicsContext::setPlatformStrokeStyle):
2995         (WebCore::GraphicsContext::adjustLineToPixelBoundaries):
2996         * platform/graphics/GraphicsContext.h:
2997         * platform/graphics/cairo/GraphicsContextCairo.cpp:
2998         (WebCore::GraphicsContext::setPlatformStrokeStyle):
2999         * platform/graphics/haiku/GraphicsContextHaiku.cpp:
3000         (WebCore::GraphicsContext::setPlatformStrokeStyle):
3001         * platform/graphics/openvg/GraphicsContextOpenVG.cpp:
3002         (WebCore::GraphicsContext::setPlatformStrokeStyle):
3003         * platform/graphics/openvg/PainterOpenVG.cpp:
3004         (WebCore::PainterOpenVG::setStrokeStyle):
3005         * platform/graphics/openvg/PainterOpenVG.h:
3006         * platform/graphics/qt/GraphicsContextQt.cpp:
3007         (WebCore::GraphicsContext::setPlatformStrokeStyle):
3008         * platform/graphics/skia/GraphicsContextSkia.cpp:
3009         (WebCore::GraphicsContext::setPlatformStrokeStyle):
3010
3011 2010-12-24  Dan Bernstein  <mitz@apple.com>
3012
3013         Reviewed by Alexey Proskuryakov.
3014
3015         REGRESSION (r74648): XHR layout test failures
3016         https://bugs.webkit.org/show_bug.cgi?id=51603
3017
3018         Reverted r74648.
3019
3020         * WebCore.exp.in:
3021
3022 2010-12-24  Dan Bernstein  <mitz@apple.com>
3023
3024         Try to fix the Qt build after r74648.
3025
3026         * WebCore.gypi:
3027         * WebCore.pro:
3028         * platform/network/qt/CredentialStorageQt.cpp: Added.
3029         (WebCore::CredentialStorage::getFromPersistentStorage):
3030
3031 2010-12-24  Simon Fraser  <simon.fraser@apple.com>
3032
3033         Reviewed by Dan Bernstein.
3034
3035         CSSStyleSelector cleanup
3036         https://bugs.webkit.org/show_bug.cgi?id=51597
3037
3038         Make some methods const. Add assertion to checkOneSelector, with the
3039         intention of later removing the if (!e) check (this is hot code).
3040
3041         * css/CSSStyleSelector.cpp:
3042         (WebCore::CSSStyleSelector::locateCousinList):
3043         (WebCore::CSSStyleSelector::canShareStyleWithElement):
3044         (WebCore::CSSStyleSelector::locateSharedStyle):
3045         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
3046         (WebCore::CSSStyleSelector::mmLength):
3047         (WebCore::CSSStyleSelector::inchLength):
3048         (WebCore::CSSStyleSelector::getColorFromPrimitiveValue):
3049         (WebCore::CSSStyleSelector::hasSelectorForAttribute):
3050         * css/CSSStyleSelector.h:
3051         (WebCore::CSSStyleSelector::fontSelector):
3052
3053 2010-12-24  Dan Bernstein  <mitz@apple.com>
3054
3055         Reviewed by Anders Carlsson.
3056
3057         <rdar://problem/8758386> The web process uses its own credential storage
3058         https://bugs.webkit.org/show_bug.cgi?id=51599
3059
3060         * WebCore.exp.in: Export CredentialStorage::getFromPersistentStorage(), Credential::hasPassword(),
3061         and Credential::isEmpty().
3062
3063 2010-12-24  Yury Semikhatsky  <yurys@chromium.org>
3064
3065         Reviewed by Darin Adler.
3066
3067         [V8] Rename V8CustomEventListener.{h,cpp} to V8EventListener.{h,cpp}
3068         https://bugs.webkit.org/show_bug.cgi?id=51595
3069
3070         * WebCore.gypi:
3071         * bindings/v8/V8DOMWrapper.cpp:
3072         * bindings/v8/V8EventListener.cpp: Renamed from WebCore/bindings/v8/custom/V8CustomEventListener.cpp.
3073         (WebCore::V8EventListener::V8EventListener):
3074         (WebCore::V8EventListener::getListenerFunction):
3075         (WebCore::V8EventListener::callListenerFunction):
3076         * bindings/v8/V8EventListener.h: Renamed from WebCore/bindings/v8/custom/V8CustomEventListener.h.
3077         (WebCore::V8EventListener::create):
3078         * bindings/v8/V8EventListenerList.h:
3079         * bindings/v8/V8WorkerContextEventListener.h:
3080         * bindings/v8/custom/V8DOMWindowCustom.cpp:
3081         * bindings/v8/custom/V8LocationCustom.cpp:
3082         * bindings/v8/custom/V8NodeCustom.cpp:
3083         * bindings/v8/custom/V8NotificationCenterCustom.cpp:
3084
3085 2010-12-24  Carlos Garcia Campos  <cgarcia@igalia.com>
3086
3087         Reviewed by Xan Lopez.
3088
3089         [GTK] Show current time / total in media player
3090         https://bugs.webkit.org/show_bug.cgi?id=51535
3091
3092         * css/mediaControlsGtk.css:
3093         (audio::-webkit-media-controls-current-time-display, video::-webkit-media-controls-current-time-display):
3094         * platform/gtk/RenderThemeGtk.cpp:
3095         (WebCore::RenderThemeGtk::formatMediaControlsCurrentTime):
3096         (WebCore::RenderThemeGtk::paintMediaCurrentTime):
3097         * platform/gtk/RenderThemeGtk.h:
3098
3099 2010-12-24  Jan Erik Hanssen  <jhanssen@sencha.com>
3100
3101         Reviewed by Eric Seidel.
3102
3103         Clean up CSSRuleData in CSSStyleSelector.h
3104         https://bugs.webkit.org/show_bug.cgi?id=27753
3105
3106         Move CSSRuleData and CSSRuleDataList from CSSStyleSelector.h to the .cpp file.
3107
3108         * css/CSSStyleSelector.cpp:
3109         (WebCore::CSSRuleData::CSSRuleData):
3110         (WebCore::CSSRuleData::~CSSRuleData):
3111         (WebCore::CSSRuleData::position):
3112         (WebCore::CSSRuleData::rule):
3113         (WebCore::CSSRuleData::selector):
3114         (WebCore::CSSRuleData::next):
3115         (WebCore::CSSRuleDataList::CSSRuleDataList):
3116         (WebCore::CSSRuleDataList::~CSSRuleDataList):
3117         (WebCore::CSSRuleDataList::first):
3118         (WebCore::CSSRuleDataList::last):
3119         (WebCore::CSSRuleDataList::append):
3120         * css/CSSStyleSelector.h:
3121
3122 2010-12-24  Yury Semikhatsky  <yurys@chromium.org>
3123
3124         Unreviewed. Fix compilation on Windows.
3125
3126         * inspector/InspectorStyleSheet.cpp:
3127         (WebCore::InspectorStyle::~InspectorStyle): added explicit empty destructor
3128         * inspector/InspectorStyleSheet.h:
3129
3130 2010-12-24  Yury Semikhatsky  <yurys@chromium.org>
3131
3132         Reviewed by Darin Adler.
3133
3134         inspector/debugger-step-out.html crashing intermittently in the bots
3135         https://bugs.webkit.org/show_bug.cgi?id=50868
3136
3137         Use RefPtr rather instead of raw pointers when keeping references
3138         to refcounted objects.
3139
3140         * inspector/InspectorCSSAgent.cpp:
3141         (WebCore::InspectorCSSAgent::getStylesForNode2):
3142         (WebCore::InspectorCSSAgent::getComputedStyleForNode2):
3143         * inspector/InspectorStyleSheet.cpp:
3144         (WebCore::InspectorStyle::create):
3145         (WebCore::InspectorStyle::InspectorStyle):
3146         (WebCore::InspectorStyle::buildObjectForStyle):
3147         (WebCore::InspectorStyle::setPropertyText):
3148         (WebCore::InspectorStyle::toggleProperty):
3149         (WebCore::InspectorStyle::styleText):
3150         (WebCore::InspectorStyle::populateAllProperties):
3151         (WebCore::InspectorStyle::replacePropertyInStyleText):
3152         (WebCore::InspectorStyleSheet::create):
3153         (WebCore::InspectorStyleSheet::InspectorStyleSheet):
3154         (WebCore::InspectorStyleSheetForInlineStyle::create):
3155         (WebCore::InspectorStyleSheetForInlineStyle::InspectorStyleSheetForInlineStyle):
3156         (WebCore::InspectorStyleSheetForInlineStyle::getStyleAttributeRanges):
3157         * inspector/InspectorStyleSheet.h:
3158         (WebCore::InspectorStyle::cssStyle):
3159         (WebCore::InspectorStyleSheet::pageStyleSheet):
3160
3161 2010-12-24  Justin Schuh  <jschuh@chromium.org>
3162
3163         Reviewed by Nikolas Zimmermann.
3164
3165         SVGElementInstance::m_useElement should be cleared when use element is removed from document
3166         https://bugs.webkit.org/show_bug.cgi?id=51486
3167
3168         Test: svg/custom/use-instanceRoot-with-use-removed.svg
3169
3170         * svg/SVGElementInstance.cpp:
3171         (WebCore::SVGElementInstance::invalidateAllInstancesOfElement):
3172         * svg/SVGElementInstance.h:
3173         (WebCore::SVGElementInstance::clearUseElement):
3174         * svg/SVGUseElement.cpp:
3175         (WebCore::SVGUseElement::removedFromDocument):
3176         (WebCore::ShadowTreeUpdateBlocker::if):
3177         (WebCore::SVGUseElement::detachInstance):
3178         (WebCore::SVGUseElement::detach):
3179         * svg/SVGUseElement.h:
3180
3181 2010-12-23  Joseph Pecoraro  <joepeck@webkit.org>
3182
3183         Reviewed by Yury Semikhatsky.
3184
3185         Web Inspector: Missing Localized Strings
3186         https://bugs.webkit.org/show_bug.cgi?id=51542
3187
3188         Added missing strings: "WebSocket",  "Frames", "Text", "Transfer",
3189         "Preserve Log upon Navigation", and "Go to Line".
3190
3191         * English.lproj/localizedStrings.js:
3192
3193 2010-12-24  Alexander Pavlov  <apavlov@chromium.org>
3194
3195         Reviewed by Yury Semikhatsky.
3196
3197         Web Inspector: Inline HTML style property out of sync with element.style in Sidebar
3198         https://bugs.webkit.org/show_bug.cgi?id=51478
3199
3200         Now the element attribute modifications (including "style") are tracked, which results in the
3201         source offsets update (in the backend) and Styles/Metrics pane updates (in the frontend)
3202         on the "style" attribute modification through the Elements tree. Also, it appears that
3203         a complete "style" attribute removal destroys the inline style declaration
3204         (StyledElement::m_inlineStyleDecl), while the code used to rely on it being immutable (hence a crash).
3205
3206         Test: inspector/elements-delete-inline-style.html
3207
3208         * inspector/InspectorCSSAgent.cpp:
3209         (WebCore::InspectorCSSAgent::didModifyDOMAttr):
3210         * inspector/InspectorCSSAgent.h:
3211         * inspector/InspectorDOMAgent.cpp:
3212         (WebCore::InspectorDOMAgent::didModifyDOMAttr):
3213         * inspector/InspectorDOMAgent.h:
3214         * inspector/InspectorStyleSheet.cpp:
3215         (WebCore::InspectorStyleSheetForInlineStyle::InspectorStyleSheetForInlineStyle):
3216         (WebCore::InspectorStyleSheetForInlineStyle::didModifyElementAttribute):
3217         (WebCore::InspectorStyleSheetForInlineStyle::text):
3218         (WebCore::InspectorStyleSheetForInlineStyle::setStyleText):
3219         (WebCore::InspectorStyleSheetForInlineStyle::getStyleAttributeRanges):
3220         * inspector/InspectorStyleSheet.h:
3221         * inspector/front-end/ElementsTreeOutline.js:
3222         (WebInspector.ElementsTreeElement.prototype._attributeEditingCommitted):
3223
3224 2010-12-24  Noel Gordon  <noel.gordon@gmail.com>
3225
3226         Reviewed by Andreas Kling.
3227
3228         [chromium] Fix a style nit in the JPEG encoder
3229         https://bugs.webkit.org/show_bug.cgi?id=51574
3230
3231         * platform/image-encoders/skia/JPEGImageEncoder.cpp: nit begone.
3232
3233 2010-12-23  Alexander Pavlov  <apavlov@chromium.org>
3234
3235         Reviewed by Maciej Stachowiak.
3236
3237         Web Inspector: CSS shorthand properties expand unnecessarily
3238         https://bugs.webkit.org/show_bug.cgi?id=36304
3239
3240         "border-radius" is a shorthand property that has a "non-standard" format and longhands, see
3241         http://www.w3.org/TR/css3-background/#border-radius for reference. CSSParser does not use the
3242         standard parseShorthand() or parse4Values() methods but instead a custom parseBorderRadius() method.
3243         This method didn't use to create a ShorthandScope instance and set the m_implicitShorthand value
3244         appropriately when adding implicit longhands, thus they were added as normal properties
3245         found in the CSS (neither implicit, nor longhands). This is now fixed.
3246
3247         * css/CSSParser.cpp:
3248         (WebCore::CSSParser::parseBorderRadius):
3249
3250 2010-12-24  Justin Schuh  <jschuh@chromium.org>
3251
3252         Reviewed by Darin Adler.
3253
3254         setTargetAttributeAnimatedValue should check for a null shadowTreeElement.
3255         https://bugs.webkit.org/show_bug.cgi?id=51576
3256
3257         Disallowed elements may be pruned from the shadow tree, leaving a null
3258         shadowTreeElement. We should check for that before setting attributes.
3259
3260         Test: svg/custom/animate-disallowed-use-element.svg
3261
3262         * svg/SVGAnimationElement.cpp:
3263         (WebCore::SVGAnimationElement::setTargetAttributeAnimatedValue):
3264
3265 2010-12-24  Evan Martin  <evan@chromium.org>
3266
3267         Reviewed by Darin Adler.
3268
3269         TextMetrics::width is an integer, but the member is a float
3270         https://bugs.webkit.org/show_bug.cgi?id=51566
3271
3272         Change the return type to a float.
3273
3274         No tests, fixing a compiler warning.
3275         (I was unable to produce a difference in the values exposed to pages
3276         with a float versus the previous conversion to an integer.)
3277
3278         * html/TextMetrics.h:
3279         (WebCore::TextMetrics::width):
3280
3281 2010-12-24  Ryuan Choi  <ryuan.choi@samsung.com>
3282
3283         Reviewed by Kenneth Rohde Christiansen.
3284
3285         [EFL] Add option to enable Touch Events.
3286         https://bugs.webkit.org/show_bug.cgi?id=49125
3287
3288         Add files for EFL to support TOUCH_EVENTS.
3289
3290         * CMakeLists.txt:
3291         * CMakeListsEfl.txt:
3292         * platform/PlatformTouchEvent.h: Add EFL related constructor.
3293         * platform/PlatformTouchPoint.h: ditto.
3294         * platform/efl/PlatformTouchEventEfl.cpp: Added.
3295         (WebCore::PlatformTouchEvent::PlatformTouchEvent):
3296         * platform/efl/PlatformTouchPointEfl.cpp: Added.
3297         (WebCore::PlatformTouchPoint::PlatformTouchPoint):
3298
3299 2010-12-24  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
3300
3301         Reviewed by Kenneth Rohde Christiansen.
3302
3303         [EFL] Return an empty string instead of 'application/octet-stream' in getMIMETypeForExtension()
3304         https://bugs.webkit.org/show_bug.cgi?id=51457
3305
3306         WebKit EFL can't play html5 audio because of wrong mime type checking.
3307         So, 'application/octet-stream' is changed with an empty string.
3308
3309         * platform/efl/MIMETypeRegistryEfl.cpp:
3310         (WebCore::MIMETypeRegistry::getMIMETypeForExtension):
3311         Returns an empty string instead of application/octet-stream when it can't find proper mime type.
3312
3313 2010-12-24  Justin Schuh  <jschuh@chromium.org>
3314
3315         Reviewed by Darin Adler.
3316
3317         SVGFontFaceElement::rebuildFontFace() should exit when not in document
3318         https://bugs.webkit.org/show_bug.cgi?id=51571
3319
3320         We were hitting a NULL deref crash. Since most of the callers checked
3321         inDocument() anyway, I moved it into the start of rebuildFontFace.
3322
3323         Test: svg/custom/use-invalid-font-face.svg
3324
3325         * svg/SVGFontFaceElement.cpp:
3326         (WebCore::SVGFontFaceElement::parseMappedAttribute):
3327         (WebCore::SVGFontFaceElement::rebuildFontFace):
3328         (WebCore::SVGFontFaceElement::childrenChanged):
3329
3330 2010-12-24  Justin Schuh  <jschuh@chromium.org>
3331
3332         Reviewed by Darin Adler.
3333
3334         Remove unnecessary check in CSSCanvasValue::canvasDestroyed().
3335         https://bugs.webkit.org/show_bug.cgi?id=51564
3336
3337         This check was duplicating an ASSERT for a case fixed in r73927.
3338         Now that the bug is fixed the check is no longer necessary.
3339
3340         Removing dead code, so no new tests needed.
3341
3342         * css/CSSCanvasValue.cpp:
3343         (WebCore::CSSCanvasValue::canvasDestroyed):
3344
3345 2010-12-23  Evan Martin  <evan@chromium.org>
3346
3347         Reviewed by Darin Adler.
3348
3349         ViewportArguments.h uses an enum to intialize a bool
3350         https://bugs.webkit.org/show_bug.cgi?id=50982
3351
3352         Initialize userScalable to true, rather than -1.
3353         No tests; fixes a compiler warning.
3354
3355         * dom/ViewportArguments.h:
3356         (WebCore::ViewportArguments::ViewportArguments):
3357
3358 2010-12-23  Jan Erik Hanssen  <jhanssen@sencha.com>
3359
3360         Reviewed by Adam Barth.
3361
3362         [Qt] User name/password stripped from URLs
3363         https://bugs.webkit.org/show_bug.cgi?id=36232
3364
3365         If a username but no password or no username but a password is present
3366         in a URL, QtWebKit won't send any authentication information down to Qt
3367         as it should.
3368
3369         Tests: http/tests/xmlhttprequest/basic-auth-nopassword.html
3370                http/tests/xmlhttprequest/basic-auth-nouser.html
3371
3372         * platform/network/qt/ResourceHandleQt.cpp:
3373         (WebCore::ResourceHandle::start):
3374         (WebCore::ResourceHandle::loadResourceSynchronously):
3375
3376 2010-12-23  Ryosuke Niwa  <rniwa@webkit.org>
3377
3378         Reviewed by Darin Adler.
3379
3380         queryCommandValue("FormatBlock") does not respect editing boundaries
3381         https://bugs.webkit.org/show_bug.cgi?id=51219
3382
3383         Fixed the bug by checking the element we found in elementForFormatBlockCommand
3384         does not contain the editable root.
3385
3386         * editing/FormatBlockCommand.cpp:
3387         (WebCore::FormatBlockCommand::elementForFormatBlockCommand):
3388
3389 2010-12-23  Ryosuke Niwa  <rniwa@webkit.org>
3390
3391         Reviewed by Darin Adler.
3392
3393         FormatBlock doesn't preserve typing style but it should
3394         https://bugs.webkit.org/show_bug.cgi?id=51140
3395
3396         Fixed the bug by making preserveTypingStyle return true.
3397
3398         Test: editing/execCommand/format-block-typing-style.html
3399
3400         * editing/FormatBlockCommand.h:
3401         (WebCore::FormatBlockCommand::preservesTypingStyle):
3402
3403 2010-12-23  Jessie Berlin  <jberlin@apple.com>
3404
3405         Reviewed by Sam Weinig.
3406
3407         Need WebKit2 API to create a SecurityOrigin from protocol, host, and port
3408         https://bugs.webkit.org/show_bug.cgi?id=51563
3409
3410         Add SecurityOrigin::create(const String& protocol, const String& host, int port).
3411
3412         * WebCore.exp.in:
3413         Export the symbols for WebCore::SecurityOrigin::create(String, String, int).
3414
3415         * page/SecurityOrigin.cpp:
3416         (WebCore::SecurityOrigin::createFromDatabaseIdentifier):
3417         Use the constant MaxAllowedPort.
3418         (WebCore::SecurityOrigin::create):
3419         Sanitizing based off of that done in createFromDatabaseIdentifier.
3420         * page/SecurityOrigin.h:
3421
3422 2010-12-23  Patrick Gansterer  <paroga@webkit.org>
3423
3424         Unreviewed build fix for WinCE after r73802.
3425
3426         Reapply r70812:
3427         Port ContextMenuItemWin.cpp to WinCE
3428         https://bugs.webkit.org/show_bug.cgi?id=48407
3429
3430         * platform/win/ContextMenuItemWin.cpp:
3431
3432 2010-12-23  Adam Barth  <abarth@webkit.org>
3433
3434         Remove include of non-existant file.
3435
3436         * bindings/v8/custom/V8DOMWindowCustom.cpp:
3437
3438 2010-12-23  Ryosuke Niwa  <rniwa@webkit.org>
3439
3440         Reviewed by Darin Adler.
3441
3442         Selection becomes stale when CharacterData is manipulated directly
3443         https://bugs.webkit.org/show_bug.cgi?id=51389
3444
3445         The bug was caused by SelectionController's not adjusting selection when CharacterData's
3446         m_data is modified by its API.
3447
3448         Fixed the bug by adding textWillBeReplaced to SelectionController and calling it in
3449         CharacterData::textWillBeReplaced. Added newLength to setDataAndUpdate, which is passed to
3450         textWillBeReplaced because inserting, replacing, or removing data may require moving
3451         the offset of the selection end points (done by shouldRemovePositionAfterAdoptingTextReplacement).
3452
3453         Also fixed the condition for determining whether or not a node intersects the selection
3454         in respondToNodeModification, which is extracted from nodeWillBeRemoved. The old condition
3455         failed to recognize certain cases when selection started and ended with non-zero offsets.
3456
3457         Tests: editing/selection/character-data-mutation-crash.html
3458                editing/selection/character-data-mutation.html
3459
3460         * dom/CharacterData.cpp:
3461         (WebCore::CharacterData::setData): Passes newLegnth to setDataAndUpdate.
3462         (WebCore::CharacterData::appendData): Ditto.
3463         (WebCore::CharacterData::insertData): Ditto.
3464         (WebCore::CharacterData::deleteData): Ditto.
3465         (WebCore::CharacterData::replaceData): Ditto.
3466         (WebCore::CharacterData::setDataAndUpdate): Added newLegnth to the argument list,
3467         and renamed lengthOfReplacedData to oldLength; calls textWillBeReplaced.
3468         * dom/CharacterData.h:
3469         * editing/SelectionController.cpp:
3470         (WebCore::removingNodeRemovesPosition): Removed indentations from blank lines.
3471         (WebCore::SelectionController::nodeWillBeRemoved): Calls nodeWillBeRemoved.
3472         (WebCore::SelectionController::respondToNodeModification): Extracted from nodeWillBeRemoved;
3473         fixed the logic to figure out whether a node is inside the range or not.
3474         (WebCore::shouldRemovePositionAfterAdoptingTextReplacement): Added.
3475         (WebCore::SelectionController::textWillBeReplaced): Added.
3476         * editing/SelectionController.h:
3477
3478 2010-12-23  Adam Barth  <abarth@webkit.org>
3479
3480         Reviewed by Darin Adler.
3481
3482         Remove unneeded V8 bindings files
3483         https://bugs.webkit.org/show_bug.cgi?id=51570
3484
3485         * WebCore.gypi:
3486         * bindings/generic/BindingDOMWindow.h: Removed.
3487         * bindings/v8/specialization/V8BindingDOMWindow.h: Removed.
3488
3489 2010-12-23  Dan Bernstein  <mitz@apple.com>
3490
3491         Build fix.
3492
3493         * editing/EditorCommand.cpp:
3494         (WebCore::enabledDismissCorrectionPanel):
3495
3496 2010-12-23  Darin Adler  <darin@apple.com>
3497
3498         Try to fix crash seen on GTK bot.
3499
3500         * editing/EditorCommand.cpp:
3501         (WebCore::internalCommand): Add back empty string check I accidentally deleted in r74580.
3502
3503         * WebCore.xcodeproj/project.pbxproj: Let Xcode edit the file.
3504
3505 2010-12-23  Sheriff Bot  <webkit.review.bot@gmail.com>
3506
3507         Unreviewed, rolling out r74561.
3508         http://trac.webkit.org/changeset/74561
3509         https://bugs.webkit.org/show_bug.cgi?id=51565
3510
3511         "Broke Chromium UI tests on Vista" (Requested by kbr_google on
3512         #webkit).
3513
3514         * platform/graphics/chromium/ImageLayerChromium.cpp:
3515         (WebCore::ImageLayerChromium::updateContentsIfDirty):
3516         * platform/graphics/skia/GraphicsContext3DSkia.cpp:
3517         (WebCore::GraphicsContext3D::getImageData):
3518
3519 2010-12-23  Mihai Parparita  <mihaip@chromium.org>
3520
3521         Reviewed by Kent Tamura.
3522
3523         [Chromium] Add WebThemeEngine for Mac to allow scrollbar rendering to be overridden for the DRT
3524         https://bugs.webkit.org/show_bug.cgi?id=51507
3525         
3526         Adds WebThemeEngine for the Mac (it already has parallel definitions for
3527         Windows and Linux) so that scrollbar thumb rendering can be overridden
3528         for the DRT (to be consistent with the NSScroller-based rendering
3529         used by the Mac port).
3530
3531         No new tests since the functionality is not exposed yet. Eventually will
3532         result in the Chromium/Mac port being able to use the same pixel
3533         baselines for layout tests as the Mac port.
3534
3535         * platform/chromium/ChromiumBridge.h:
3536         * platform/chromium/ScrollbarThemeChromiumMac.mm:
3537         (WebCore::scrollbarStateToThemeState):
3538         (WebCore::ScrollbarThemeChromiumMac::paint):
3539
3540 2010-12-23  Darin Adler  <darin@apple.com>
3541
3542         Reviewed by Sam Weinig.
3543
3544         WKView should not try to do asynchronous validation for selectors that are not editor commands
3545         https://bugs.webkit.org/show_bug.cgi?id=51555
3546
3547         * WebCore.exp.in: Added commandIsSupportedFromMenuOrKeyBinding.
3548         * editing/Editor.h: Reordered arguments in the Editor::Command constructor
3549         and the data members too so the frame is last. Added
3550         commandIsSupportedFromMenuOrKeyBinding.
3551
3552         * editing/EditorCommand.cpp:
3553         (WebCore::supported): Removed the EditorCommandSource argument. These
3554         functions are now only used when called from DOM.
3555         (WebCore::supportedFromMenuOrKeyBinding): Ditto.
3556         (WebCore::supportedCopyCut): Ditto.
3557         (WebCore::supportedPaste): Ditto.
3558         (WebCore::enabledDismissCorrectionPanel): Changed the supported function to
3559         an enabled function. It was incorrect to say that this is "supported" only
3560         when the correction panel is up. Correct to say that it is "enabled" only
3561         then. And also probably OK to enable it even when the selection is not in
3562         editable text, as long as the panel is up.
3563         (WebCore::createCommandMap): Moved conditional commands out of the main
3564         array into a separate section at the end.
3565         (WebCore::internalCommand): Added.
3566         (WebCore::Editor::command): Changed to use the new internalCommand function
3567         and simplified by relying on the null check in the Command constructor.
3568         (WebCore::Editor::commandIsSupportedFromMenuOrKeyBinding): Added.
3569         (WebCore::Editor::Command::Command): Removed unneeded initialization of
3570         m_source, which is never looked at if m_command is 0. Added feature of
3571         passing a null command pointer to the non-default constructor.
3572         (WebCore::Editor::Command::isSupported): Changed to only call the
3573         per-command isSupported function when the command source is DOM.
3574         Accordingly that function is now called isSupportedFromDOM.
3575
3576 2010-12-23  Matthew Delaney  <mdelaney@apple.com>
3577
3578         Reviewed by Simon Fraser.
3579
3580         Incorrect layer property used noted as changed in GraphicsLayerCA::setAcceleratesDrawing
3581         https://bugs.webkit.org/show_bug.cgi?id=51560
3582
3583         No new tests.
3584
3585         * platform/graphics/ca/GraphicsLayerCA.cpp:
3586         (WebCore::GraphicsLayerCA::setAcceleratesDrawing):
3587
3588 2010-12-23  Jan Erik Hanssen  <jhanssen@sencha.com>
3589
3590         Reviewed by Andreas Kling.
3591
3592         [Qt] copy and paste greek symbols to Word, TextEdit results in ?'s being shown
3593         https://bugs.webkit.org/show_bug.cgi?id=35635
3594
3595         Explicitly set text/html data on QClipboard as UTF-8 and also include a <meta>
3596         tag informing the OS that the data is in UTF-8 format.
3597
3598         * platform/qt/PasteboardQt.cpp:
3599         (WebCore::Pasteboard::writeSelection):
3600
3601 2010-12-23  Justin Schuh  <jschuh@chromium.org>
3602
3603         Reviewed by Eric Seidel.
3604
3605         CSSCursorImageValue destructor should clear referenced element.
3606         https://bugs.webkit.org/show_bug.cgi?id=51417
3607
3608         Calls correct method to clear image and renames method to avoid future confusion.
3609
3610         Test: svg/css/cursor-image-replace.svg
3611
3612         * css/CSSCursorImageValue.cpp:
3613         (WebCore::CSSCursorImageValue::~CSSCursorImageValue):
3614         * svg/SVGElement.cpp:
3615         (WebCore::SVGElement::cursorImageValueRemoved):
3616         * svg/SVGElement.h:
3617
3618 2010-12-22  Sam Weinig  <sam@webkit.org>
3619
3620         Reviewed by Darin Adler.
3621
3622         WebKit2 needs to mirror the frame tree in the UIProcess
3623         https://bugs.webkit.org/show_bug.cgi?id=51546
3624
3625         - Add client functions to notify that a frame has been added or
3626           removed from the page cache.
3627
3628         * history/CachedFrame.cpp:
3629         (WebCore::CachedFrameBase::restore):
3630         (WebCore::CachedFrame::CachedFrame):
3631         * history/CachedFrame.h:
3632         * loader/EmptyClients.h:
3633         (WebCore::EmptyFrameLoaderClient::didSaveToPageCache):
3634         (WebCore::EmptyFrameLoaderClient::didRestoreFromPageCache):
3635         * loader/FrameLoaderClient.h:
3636
3637 2010-12-22  Matthew Delaney  <mdelaney@apple.com>
3638
3639         Reviewed by Simon Fraser.
3640
3641         Add setNeedsStyleRecalc for getting canvas contexts that use IOSurfaces
3642         This patch also changes USE_IOSURFACE to instead follow USE(IOSURFACE)
3643         https://bugs.webkit.org/show_bug.cgi?id=51279
3644
3645         * html/HTMLCanvasElement.cpp: For IOSurface, use setNeedsStyleRecalc
3646         * html/canvas/CanvasRenderingContext2D.cpp: Use new flag
3647         * platform/graphics/ImageBuffer.h: Use new flag
3648         * platform/graphics/cg/ImageBufferCG.cpp: Use new flag
3649
3650 2010-12-20  Adrienne Walker  <enne@google.com>
3651
3652         Reviewed by Kenneth Russell.
3653
3654         [chromium] Tile root layer of the compositor.
3655         https://bugs.webkit.org/show_bug.cgi?id=49947
3656
3657         Refactor root layer update and drawing from LayerRendererChromium into
3658         LayerTilerChromium.  The root layer is now drawn as multiple tiles
3659         rather than as one single large texture.  Scrollbars are now drawn
3660         separately rather than as part of the root layer.
3661
3662         Test: LayoutTests/compositing/
3663
3664         * WebCore.gypi:
3665         * page/FrameView.cpp:
3666         (WebCore::FrameView::repaintContentRectangle):
3667         * platform/ScrollView.cpp:
3668         (WebCore::ScrollView::ScrollView):
3669         (WebCore::ScrollView::setClipsRepaints):
3670         * platform/ScrollView.h:
3671         (WebCore::ScrollView::clipsRepaints):
3672         * platform/graphics/chromium/LayerChromium.h:
3673         * platform/graphics/chromium/LayerRendererChromium.cpp:
3674         (WebCore::LayerRendererChromium::LayerRendererChromium):
3675         (WebCore::LayerRendererChromium::~LayerRendererChromium):
3676         (WebCore::LayerRendererChromium::useShader):
3677         (WebCore::LayerRendererChromium::verticalScrollbarRect):
3678         (WebCore::LayerRendererChromium::horizontalScrollbarRect):
3679         (WebCore::LayerRendererChromium::invalidateRootLayerRect):
3680         (WebCore::LayerRendererChromium::updateAndDrawRootLayer):
3681         (WebCore::LayerRendererChromium::drawLayers):
3682         (WebCore::LayerRendererChromium::setRootLayer):
3683         (WebCore::LayerRendererChromium::initializeSharedObjects):
3684         (WebCore::LayerRendererChromium::cleanupSharedObjects):
3685         * platform/graphics/chromium/LayerRendererChromium.h:
3686         * platform/graphics/chromium/LayerTilerChromium.cpp: Added.
3687         (WebCore::LayerTilerChromium::create):
3688         (WebCore::LayerTilerChromium::LayerTilerChromium):
3689         (WebCore::LayerTilerChromium::~LayerTilerChromium):
3690         (WebCore::LayerTilerChromium::layerRendererContext):
3691         (WebCore::LayerTilerChromium::setTileSize):
3692         (WebCore::LayerTilerChromium::reset):
3693         (WebCore::LayerTilerChromium::createTile):
3694         (WebCore::LayerTilerChromium::invalidateTiles):
3695         (WebCore::LayerTilerChromium::contentRectToTileIndices):
3696         (WebCore::LayerTilerChromium::contentRectToLayerRect):
3697         (WebCore::LayerTilerChromium::layerRectToContentRect):
3698         (WebCore::LayerTilerChromium::tileIndex):
3699         (WebCore::LayerTilerChromium::tileContentRect):
3700         (WebCore::LayerTilerChromium::tileLayerRect):
3701         (WebCore::LayerTilerChromium::invalidateRect):
3702         (WebCore::LayerTilerChromium::invalidateEntireLayer):
3703         (WebCore::LayerTilerChromium::update):
3704         (WebCore::LayerTilerChromium::setLayerPosition):
3705         (WebCore::LayerTilerChromium::draw):
3706         (WebCore::LayerTilerChromium::resizeLayer):
3707         (WebCore::LayerTilerChromium::growLayerToContain):
3708         (WebCore::LayerTilerChromium::Tile::~Tile):
3709         (WebCore::LayerTilerChromium::Tile::releaseTextureId):
3710         * platform/graphics/chromium/LayerTilerChromium.h: Added.
3711         (WebCore::LayerTilerChromium::Tile::Tile):
3712         (WebCore::LayerTilerChromium::Tile::textureId):
3713         (WebCore::LayerTilerChromium::Tile::dirty):
3714         (WebCore::LayerTilerChromium::Tile::clearDirty):
3715         (WebCore::LayerTilerChromium::layerRenderer):
3716
3717 2010-12-22  Ryosuke Niwa  <rniwa@webkit.org>
3718
3719         Reviewed by Eric Seidel.
3720
3721         Editor.h doesn't need to include SelectionController.h
3722         https://bugs.webkit.org/show_bug.cgi?id=51441
3723
3724         Removed #include <Selection.h> from Editor.h.
3725         Also extracted WritingDirection.h from EditingStyle.h and renamed SelectionController::EDirection
3726         to SelectionDirection and moved its declaration from SelectionController.h to VisibleSelection.h
3727
3728         * WebCore.exp.in: Signature changes.
3729         * WebCore.xcodeproj/project.pbxproj: Added WritingDirection.h
3730         * accessibility/AccessibilityRenderObject.cpp:
3731         (WebCore::AccessibilityRenderObject::visiblePositionRangeForLine): Change due to SelectionDirection.
3732         * editing/EditingStyle.h: Removed WritingDirection and included WritingDirection.h
3733         * editing/Editor.cpp:
3734         (WebCore::Editor::deleteWithDirection): Change due to SelectionDirection.
3735         (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges): Ditto.
3736         (WebCore::Editor::markMisspellingsAfterTypingToWord): Ditto.
3737         * editing/Editor.h: Removed SelectionController.h; added DocumentMarker.h, Timer.h, VisibleSelection.h
3738         and WritingDirection.h; forward declared CSSMutableStyleDeclaration.
3739         * editing/EditorCommand.cpp:
3740         (WebCore::executeDeleteBackward): Change due to SelectionDirection.
3741         (WebCore::executeDeleteBackwardByDecomposingPreviousCharacter): Ditto.
3742         (WebCore::executeDeleteForward): Ditto.
3743         (WebCore::executeDeleteToBeginningOfLine): Ditto.
3744         (WebCore::executeDeleteToBeginningOfParagraph): Ditto.
3745         (WebCore::executeDeleteToEndOfLine): Ditto.
3746         (WebCore::executeDeleteToEndOfParagraph): Ditto.
3747         (WebCore::executeDeleteWordBackward): Ditto.
3748         (WebCore::executeDeleteWordForward): Ditto.
3749         (WebCore::executeForwardDelete): Ditto.
3750         (WebCore::executeMoveBackward): Ditto.
3751         (WebCore::executeMoveBackwardAndModifySelection): Ditto.
3752         (WebCore::executeMoveDown): Ditto.
3753         (WebCore::executeMoveDownAndModifySelection): Ditto.
3754         (WebCore::executeMoveForward): Ditto.
3755         (WebCore::executeMoveForwardAndModifySelection): Ditto.
3756         (WebCore::executeMoveLeft): Ditto.
3757         (WebCore::executeMoveLeftAndModifySelection): Ditto.
3758         (WebCore::executeMoveRight): Ditto.
3759         (WebCore::executeMoveRightAndModifySelection): Ditto.
3760         (WebCore::executeMoveToBeginningOfDocument): Ditto.
3761         (WebCore::executeMoveToBeginningOfDocumentAndModifySelection): Ditto.
3762         (WebCore::executeMoveToBeginningOfLine): Ditto.
3763         (WebCore::executeMoveToBeginningOfLineAndModifySelection): Ditto.
3764         (WebCore::executeMoveToBeginningOfParagraph): Ditto.
3765         (WebCore::executeMoveToBeginningOfParagraphAndModifySelection): Ditto.
3766         (WebCore::executeMoveToBeginningOfSentence): Ditto.
3767         (WebCore::executeMoveToBeginningOfSentenceAndModifySelection): Ditto.
3768         (WebCore::executeMoveToEndOfDocument): Ditto.
3769         (WebCore::executeMoveToEndOfDocumentAndModifySelection): Ditto.
3770         (WebCore::executeMoveToEndOfSentence): Ditto.
3771         (WebCore::executeMoveToEndOfSentenceAndModifySelection): Ditto.
3772         (WebCore::executeMoveToEndOfLine): Ditto.
3773         (WebCore::executeMoveToEndOfLineAndModifySelection): Ditto.
3774         (WebCore::executeMoveToEndOfParagraph): Ditto.
3775         (WebCore::executeMoveToEndOfParagraphAndModifySelection): Ditto.
3776         (WebCore::executeMoveParagraphBackwardAndModifySelection): Ditto.
3777         (WebCore::executeMoveParagraphForwardAndModifySelection): Ditto.
3778         (WebCore::executeMoveUp): Ditto.
3779         (WebCore::executeMoveUpAndModifySelection): Ditto.
3780         (WebCore::executeMoveWordBackward): Ditto.
3781         (WebCore::executeMoveWordBackwardAndModifySelection): Ditto.
3782         (WebCore::executeMoveWordForward): Ditto.
3783         (WebCore::executeMoveWordForwardAndModifySelection): Ditto.
3784         (WebCore::executeMoveWordLeft): Ditto.
3785         (WebCore::executeMoveWordLeftAndModifySelection): Ditto.
3786         (WebCore::executeMoveWordRight): Ditto.
3787         (WebCore::executeMoveWordRightAndModifySelection): Ditto.
3788         (WebCore::executeMoveToLeftEndOfLine): Ditto.
3789         (WebCore::executeMoveToLeftEndOfLineAndModifySelection): Ditto.
3790         (WebCore::executeMoveToRightEndOfLine): Ditto.
3791         (WebCore::executeMoveToRightEndOfLineAndModifySelection): Ditto.
3792         * editing/SelectionController.cpp:
3793         (WebCore::SelectionController::willBeModified): Takes SelectionDirection instead of EDirection.
3794         (WebCore::SelectionController::modify): Ditto.
3795         * editing/SelectionController.h: Change due to SelectionDirection.
3796         * editing/TypingCommand.cpp:
3797         (WebCore::TypingCommand::deleteKeyPressed): Ditto.
3798         (WebCore::TypingCommand::forwardDeleteKeyPressed): Ditto.
3799         * editing/VisibleSelection.h: Added SelectionDirection, renamed and moved from EDirection
3800         in SelectionController.h
3801         * editing/WritingDirection.h: Added.
3802         * page/DOMSelection.cpp:
3803         (WebCore::DOMSelection::modify): Change due to SelectionDirection.
3804         (WebCore::DOMSelection::deleteFromDocument): Ditto.
3805         * page/EventHandler.cpp:
3806         (WebCore::EventHandler::handleKeyboardSelectionMovement): Ditto.
3807         * page/Frame.h: Includes SelectionController.h.
3808
3809 2010-12-23  Adam Barth  <abarth@webkit.org>
3810
3811         Reviewed by Darin Adler.
3812
3813         Move V8 to WebCore's implementation of showModalDialog
3814         https://bugs.webkit.org/show_bug.cgi?id=51527
3815
3816         This code is basically verbatim translation from the JavaScriptCore
3817         bindings.  The only intentional difference is in the world selection
3818         for the dialog's frame.  I suspect JavaScriptCore's bindings have a
3819         subtle bug there.
3820
3821         In this patch, I also remove a bunch of now-unneeded code in the
3822         generic bindings.
3823
3824         * bindings/generic/BindingDOMWindow.h:
3825         * bindings/js/JSDOMWindowCustom.cpp:
3826         (WebCore::DialogHandler::dialogCreated):
3827         (WebCore::setUpDialog):
3828         * bindings/v8/custom/V8DOMWindowCustom.cpp:
3829         (WebCore::DialogHandler::DialogHandler):
3830         (WebCore::DialogHandler::dialogCreated):
3831         (WebCore::DialogHandler::returnValue):
3832         (WebCore::setUpDialog):
3833         (WebCore::V8DOMWindow::showModalDialogCallback):
3834         (WebCore::V8DOMWindow::openCallback):
3835         * bindings/v8/specialization/V8BindingDOMWindow.h:
3836
3837 2010-12-23  Alexander Pavlov  <apavlov@chromium.org>
3838
3839         Reviewed by Joseph Pecoraro.
3840
3841         Web Inspector: Can't backspace from CSS value to CSS key field
3842         https://bugs.webkit.org/show_bug.cgi?id=51476
3843
3844         * inspector/front-end/StylesSidebarPane.js:
3845         (WebInspector.StylePropertyTreeElement.prototype.):
3846         (WebInspector.StylePropertyTreeElement.prototype):
3847
3848 2010-12-23  W. James MacLean  <wjmaclean@chromium.org>
3849
3850         Reviewed by Kenneth Russell.
3851
3852         [chromium] Add asserts to test for contiguous-pixel Skia bitmaps.
3853         https://bugs.webkit.org/show_bug.cgi?id=51186
3854
3855         No new tests. Behaviour not changed, but need the asserts to detect when assumptions violated.
3856
3857         * platform/graphics/chromium/ImageLayerChromium.cpp:
3858         (WebCore::ImageLayerChromium::updateContentsIfDirty):
3859         * platform/graphics/skia/GraphicsContext3DSkia.cpp:
3860         (WebCore::GraphicsContext3D::getImageData):
3861
3862 2010-12-23  Lucas De Marchi  <lucas.demarchi@profusion.mobi>
3863
3864         Reviewed by Kenneth Rohde Christiansen.
3865
3866         Fix check by undefined macro
3867         https://bugs.webkit.org/show_bug.cgi?id=51531
3868
3869         Fix check by undefined macro
3870
3871         When building EFL port with libsoup, BUILDING_GTK__ is not defined,
3872         leading to warnings during compile. We actually have to use an #ifdef
3873         instead of an #if.
3874
3875         No change in functionality so no new tests.
3876
3877         * platform/network/soup/cache/webkit/soup-cache.h:
3878
3879 2010-12-23  Jonathan Dixon  <joth@chromium.org>
3880
3881         Reviewed by Steve Block.
3882
3883         TouchEvents does not support multi-touch on a page with multiple touch targets
3884         https://bugs.webkit.org/show_bug.cgi?id=51258
3885
3886         Test: fast/events/touch/multi-touch-grouped-targets.html
3887
3888         * page/EventHandler.cpp:
3889         (WebCore::eventNameForTouchPointState):
3890         (WebCore::EventHandler::handleTouchEvent):
3891         Redesigned event handler to ensure all event targets involved in a given
3892         multitouch event get the appropriate event(s) fired.
3893
3894         * platform/PlatformTouchPoint.h: Added end-stop marker for State enum.
3895
3896 2010-12-23  Philippe Normand  <pnormand@igalia.com>
3897
3898         Reviewed by Xan Lopez.
3899
3900         [GTK] media/audio-data-url.html fails since r75504
3901         https://bugs.webkit.org/show_bug.cgi?id=51525
3902
3903         Make the GStreamer media-player advertize 3gpp mime-types as
3904         supported if the 3gp caps are in the typefind factories.
3905
3906         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
3907         (WebCore::mimeTypeCache):
3908
3909 2010-12-23  Kent Tamura  <tkent@chromium.org>
3910
3911         Reviewed by Dimitri Glazkov.
3912
3913         Refactor HTMLInputElement: Move a part of HTMLInputElement::defaultEventHandler()
3914         to InputTypes.
3915         https://bugs.webkit.org/show_bug.cgi?id=51093
3916
3917         Move BeforeTextInserted and Wheel event handling, event forwarding to
3918         renderers, and the isindex form submission quirk code to InputTypes.
3919         Also, change the return types of InputType event handlers from 'bool'
3920         to 'void'. We use Event::defaultHandled() to decide whether event
3921         handling should be stopped.
3922
3923         No new tests because this is just a refactoring.
3924
3925         * html/BaseButtonInputType.cpp: bool->void changes
3926         (WebCore::BaseButtonInputType::handleKeydownEvent):
3927         (WebCore::BaseButtonInputType::handleKeypressEvent):
3928         (WebCore::BaseButtonInputType::handleKeyupEvent):
3929         * html/BaseButtonInputType.h: ditto.
3930         * html/BaseCheckableInputType.cpp: ditto.
3931         (WebCore::BaseCheckableInputType::handleKeydownEvent):
3932         (WebCore::BaseCheckableInputType::handleKeypressEvent):
3933         * html/BaseCheckableInputType.h: ditto.
3934         * html/BaseDateAndTimeInputType.cpp:
3935         (WebCore::BaseDateAndTimeInputType::handleKeydownEvent): ditto.
3936         (WebCore::BaseDateAndTimeInputType::handleWheelEvent): Just calls handleWheelEventForSpinButton().
3937         * html/BaseDateAndTimeInputType.h: bool->void change and handleWhellEvent() addition.
3938         * html/CheckboxInputType.cpp: bool->void change
3939         (WebCore::CheckboxInputType::handleKeyupEvent):
3940         * html/CheckboxInputType.h: ditto.
3941         * html/FileInputType.cpp: ditto.
3942         (WebCore::FileInputType::handleDOMActivateEvent):
3943         * html/FileInputType.h: ditto.
3944         * html/HTMLInputElement.cpp:
3945         (WebCore::HTMLInputElement::defaultEventHandler):
3946          - Change return-value handling of InputType event handlers
3947          - Move out beforeTextInserted/wheel event handling and isindex form quirk.
3948         * html/HTMLInputElement.h:
3949         (WebCore::HTMLInputElement::handleBeforeTextInsertedEvent):
3950          Added so that InputType can call InputElement::handleBeforeTextInsertedEvent().
3951         * html/ImageInputType.cpp: bool->void change
3952         (WebCore::ImageInputType::handleDOMActivateEvent):
3953         * html/ImageInputType.h: ditto.
3954         * html/InputType.cpp: ditto.
3955         (WebCore::InputType::handleClickEvent):
3956         (WebCore::InputType::handleDOMActivateEvent):
3957         (WebCore::InputType::handleKeydownEvent):
3958         (WebCore::InputType::handleKeypressEvent):
3959         (WebCore::InputType::handleKeyupEvent):
3960         (WebCore::InputType::handleBeforeTextInsertedEvent):
3961         (WebCore::InputType::handleWheelEvent): Added default implementation.
3962         (WebCore::InputType::forwardEvent): ditto.
3963         (WebCore::InputType::formForSubmission): ditto.
3964         * html/InputType.h:
3965         * html/IsIndexInputType.cpp:
3966         (WebCore::IsIndexInputType::formForSubmission): Moved from HTMLInputElement.cpp.
3967         * html/IsIndexInputType.h:
3968         * html/NumberInputType.cpp:
3969         (WebCore::isNumberCharacter): Moved from HTMLInputElement.cpp.
3970         (WebCore::NumberInputType::handleKeydownEvent): bool->void change.
3971         (WebCore::NumberInputType::handleBeforeTextInsertedEvent): Moved from HTMInputElement.cpp.
3972         (WebCore::NumberInputType::handleWheelEvent): Added. Just calls handleWheelEventForSpinButton().
3973         * html/NumberInputType.h:
3974         * html/RadioInputType.cpp: bool->void changes.
3975         (WebCore::RadioInputType::handleClickEvent):
3976         (WebCore::RadioInputType::handleKeydownEvent):
3977         (WebCore::RadioInputType::handleKeyupEvent):
3978         * html/RadioInputType.h:
3979         * html/RangeInputType.cpp:
3980         (WebCore::RangeInputType::handleKeydownEvent): ditto.
3981         (WebCore::RangeInputType::forwardEvent): Moved from HTMLInputElement.cpp.
3982         * html/RangeInputType.h:
3983         * html/ResetInputType.cpp: bool->void change.
3984         (WebCore::ResetInputType::handleDOMActivateEvent):
3985         * html/ResetInputType.h: ditto.
3986         * html/SubmitInputType.cpp: ditto.
3987         (WebCore::SubmitInputType::handleDOMActivateEvent):
3988         * html/SubmitInputType.h: ditto.
3989         * html/TextFieldInputType.cpp:
3990         (WebCore::TextFieldInputType::handleKeydownEvent): bool->void change.
3991         (WebCore::TextFieldInputType::handleKeydownEventForSpinButton): ditto.
3992         (WebCore::TextFieldInputType::handleWheelEventForSpinButton): Moved from HTMLInputElement.cpp.
3993         (WebCore::TextFieldInputType::forwardEvent): ditto.
3994         * html/TextFieldInputType.h:
3995
3996 2010-12-23  Alexander Pavlov  <apavlov@chromium.org>
3997
3998         Reviewed by Joseph Pecoraro.
3999
4000         Web Inspector: After scrolling new property value and cancelling, removed property remains active in page style
4001         https://bugs.webkit.org/show_bug.cgi?id=51390
4002
4003         * inspector/front-end/StylesSidebarPane.js:
4004         (WebInspector.StylePropertyTreeElement.prototype):
4005
4006 2010-12-23  Noel Gordon  <noel.gordon@gmail.com>
4007
4008         Reviewed by Adam Barth.
4009
4010         [chromium] Reduce canvas.toDataURL("image/png") run-time costs 300%
4011         https://bugs.webkit.org/show_bug.cgi?id=51455
4012
4013         Chromium uses the libpng compression defaults.  Good compression results,
4014         but at much larger run-time cost compared to other browsers.  Chrome is 2
4015         times slower than Mozilla 3.6.12 and 3-4 times slower than Safari 5.0.3.
4016
4017         libpng has supported alternative compression methods for some time, they
4018         better meet the dual goals of good compression and run-time cost for the
4019         on-line case, and are well-documented.  Here use Huffman encoding.  It's
4020         2-20% faster than other encodings (Z_RLE, Z_FILTERED) and the compressed
4021         size is within 1% of the Safari 5.0.3 result independent of image size.
4022
4023         No change in behaviour, so no new tests.
4024
4025         * platform/image-encoders/skia/PNGImageEncoder.cpp:
4026         (WebCore::PNGImageEncoder::encode): Apply Huffman image encoding.
4027
4028 2010-12-22  Noel Gordon  <noel.gordon@gmail.com>
4029
4030         Reviewed by Darin Fisher.
4031
4032         [chromium] Optimize canvas.toDataURL("image/png") unpremultiplication loop
4033         https://bugs.webkit.org/show_bug.cgi?id=51321
4034
4035         Follow on from r73890, unroll the SkUnPreMultiply::PMColorToColor() call for
4036         the "image/png" encoder case viz., compute the unpremultiplication in-place.
4037         See https://bugs.webkit.org/show_bug.cgi?id=50804 for reference.
4038
4039         No new tests: canvas.toDataURL() is covered by existing tests.
4040
4041         * platform/image-encoders/skia/PNGImageEncoder.cpp:
4042         (WebCore::preMultipliedBGRAtoRGBA):
4043
4044 2010-12-22  Ariya Hidayat  <ariya@sencha.com>
4045
4046         Reviewed by Simon Fraser.
4047
4048         Implement skewX() and skewY() for CSSMatrix.
4049         https://bugs.webkit.org/show_bug.cgi?id=38335
4050
4051         * css/WebKitCSSMatrix.cpp:
4052         (WebCore::WebKitCSSMatrix::skew): Implemented skewX() and skewY().
4053         * css/WebKitCSSMatrix.h: Added skewX() and skewY().
4054         * css/WebKitCSSMatrix.idl: Added skewX() and skewY().
4055
4056 2010-12-22  Simon Fraser  <simon.fraser@apple.com>
4057
4058         Reviewed by Dan Bernstein.
4059
4060         Support unprefixed box-shadow property
4061         https://bugs.webkit.org/show_bug.cgi?id=51448
4062         
4063         Add support for the box-shadow CSS property. We'll currently render this
4064         similarly to -webkit-box-shadow, but a later fix will adjust the blur radius
4065         handling to match the spec.
4066
4067         Test: fast/css/box-shadow.html
4068
4069         * css/CSSComputedStyleDeclaration.cpp:
4070         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Implement getComputedStyle
4071         for box-shadow
4072         
4073         * css/CSSParser.cpp:
4074         (WebCore::CSSParser::parseValue):
4075         (WebCore::ShadowParseContext::ShadowParseContext):
4076         (WebCore::ShadowParseContext::commitValue):
4077         (WebCore::ShadowParseContext::commitLength):
4078         (WebCore::ShadowParseContext::commitColor): Support CSSPropertyBoxShadow
4079
4080         * css/CSSPropertyNames.in: add box-shadow
4081
4082         * css/CSSStyleSelector.cpp:
4083         (WebCore::CSSStyleSelector::applyProperty): Add CSSPropertyBoxShadow, and
4084         store in the ShadowData if this is -webkit-box-shadow or not. We'll use this
4085         to adjust radii later.
4086
4087         * css/SVGCSSStyleSelector.cpp:
4088         (WebCore::CSSStyleSelector::applySVGProperty): Add CSSPropertyBoxShadow.
4089         
4090         * page/animation/AnimationBase.cpp:
4091         (WebCore::blendFunc):
4092         (WebCore::PropertyWrapperShadow::blend):
4093         (WebCore::AnimationBase::ensurePropertyMap): Support animations of box-shadow.
4094         
4095         * rendering/style/ShadowData.cpp: Store a flag to say if this is a -webkit-box-shadow.
4096         (WebCore::ShadowData::ShadowData):
4097         (WebCore::ShadowData::operator==):
4098         * rendering/style/ShadowData.h:
4099         (WebCore::ShadowData::ShadowData):
4100         (WebCore::ShadowData::isWebkitBoxShadow):
4101
4102 2010-12-22  Michael Saboff  <msaboff@apple.com>
4103
4104         Reviewed by Sam Weinig.
4105
4106         REGRESSION: Can't shadow/overwrite window.constructor 
4107         (causes TypeError exception)
4108         https://bugs.webkit.org/show_bug.cgi?id=48953
4109
4110         Added code in the javascript code generator to create a setter for
4111         a constructor if the new extended attribute ReplaceableConstructor
4112         is present for the interface.
4113
4114         * bindings/scripts/CodeGeneratorJS.pm:
4115         * page/DOMWindow.idl:
4116
4117 2010-12-22  Steve Lacey  <sjl@chromium.org>
4118
4119         Reviewed by David Levin.
4120
4121         Change css for chromium media controls to deal with the timeline
4122         not expanding when the current time disappears. This happens when
4123         the width of the control drops below 240px.
4124
4125         This change results in a minor pixel difference - the timebar now
4126         aligns better with the time and when the time is not displayed is
4127         now perfectly centered. Disabling the affected tests for now
4128         and will rebaseline.
4129
4130         https://bugs.webkit.org/show_bug.cgi?id=51500
4131
4132         * css/mediaControlsChromium.css:
4133         (audio::-webkit-media-controls-timeline-container, video::-webkit-media-controls-timeline-container):
4134         (audio::-webkit-media-controls-current-time-display, video::-webkit-media-controls-current-time-display):
4135         (audio::-webkit-media-controls-time-remaining-display, video::-webkit-media-controls-time-remaining-display):
4136         (audio::-webkit-media-controls-timeline, video::-webkit-media-controls-timeline):
4137
4138 2010-12-22  Mihai Parparita  <mihaip@chromium.org>
4139
4140         Reviewed by Simon Fraser.
4141
4142         the shadow direction is negated in canvas context shadowOffsetY.
4143         https://bugs.webkit.org/show_bug.cgi?id=25619
4144         
4145         Invert shadow offset Y direction in 0-blur path in FontMac::drawGlyps
4146         if we're not transforming shadows (i.e. are rendering in a canvas). Also
4147         use CG shadows if there's a non-translate/flip transform applied
4148         (shadow offsets are supposed to ignore transforms, but the naive/simple
4149         implementation was taking them into account).
4150         
4151         Also does the equivalent changes to FontCGWin.
4152
4153         Test: fast/canvas/fillText-shadow.html
4154
4155         * platform/graphics/GraphicsContext.cpp:
4156         (WebCore::GraphicsContext::shadowsIgnoreTransforms):
4157         * platform/graphics/GraphicsContext.h:
4158         * platform/graphics/mac/FontMac.mm:
4159         (WebCore::Font::drawGlyphs):
4160         * platform/graphics/win/FontCGWin.cpp:
4161         (WebCore::Font::drawGlyphs):
4162
4163 2010-12-22  Sheriff Bot  <webkit.review.bot@gmail.com>
4164
4165         Unreviewed, rolling out r74503.
4166         http://trac.webkit.org/changeset/74503
4167         https://bugs.webkit.org/show_bug.cgi?id=51513
4168
4169         breaks chromium mac debug compile (Requested by tonyg-cr on
4170         #webkit).
4171
4172         * platform/graphics/chromium/ImageLayerChromium.cpp:
4173         (WebCore::ImageLayerChromium::updateContentsIfDirty):
4174         * platform/graphics/skia/GraphicsContext3DSkia.cpp:
4175         (WebCore::GraphicsContext3D::getImageData):
4176
4177 2010-12-22  Dan Bernstein  <mitz@apple.com>
4178
4179         Reviewed by Darin Adler.
4180
4181         Replace runtime checks for hyphenation API availability with compile-time checks.
4182
4183         * platform/text/cf/HyphenationCF.cpp:
4184         (WebCore::::createValueForNullKey): Changed to use CFLocaleCopyCurrent() instead of using the
4185         search locale, which is empty on Windows. On Mac, this is equivalent to using the search locale.
4186         (WebCore::canHyphenate): Added this implementation for when the hyphenation API is not available.