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