2010-09-17 Johnny Ding <jnd@chromium.org>
[WebKit-https.git] / WebCore / ChangeLog
1 2010-09-17  Johnny Ding  <jnd@chromium.org>
2
3         Reviewed by Adam Barth.
4
5         Stop history reload navigation to bypass WebKit's popup blocker.
6         Now history reload can only navigate the page in self frame, no matter
7         what target frame is defined in <base> and no new window can be created.
8         https://bugs.webkit.org/show_bug.cgi?id=45369
9
10         Test: fast/events/popup-blocked-from-history-reload.html
11
12         * loader/RedirectScheduler.cpp:
13         (WebCore::ScheduledNavigation::ScheduledNavigation):
14         (WebCore::ScheduledNavigation::wasUserGesture):
15         Move the m_wasUserGesture to base class ScheduledNavigation. Then all
16         asynchronous navigation situations can restore the correct gesture state
17         during the real navigation process.
18         (WebCore::ScheduledURLNavigation::ScheduledURLNavigation):
19         (WebCore::ScheduledURLNavigation::fire):
20         (WebCore::ScheduledURLNavigation::referrer):
21         (WebCore::ScheduledHistoryNavigation::ScheduledHistoryNavigation):
22         (WebCore::ScheduledHistoryNavigation::fire):
23         (WebCore::ScheduledFormSubmission::ScheduledFormSubmission):
24         (WebCore::ScheduledFormSubmission::fire):
25         (WebCore::RedirectScheduler::scheduleHistoryNavigation):
26
27 2010-09-16  Vangelis Kokkevis  <vangelis@chromium.org>
28
29         Reviewed by James Robinson.
30
31         [chromium] Clip the update region of an ImageLayerChromium to actual size
32         of the image bitmap to prevent uninitialized memory access when uploading
33         the dirty region to the texture.
34         https://bugs.webkit.org/show_bug.cgi?id=45937
35
36
37         * platform/graphics/chromium/ImageLayerChromium.cpp:
38         (WebCore::ImageLayerChromium::updateContents):
39
40 2010-09-17  Dimitri Glazkov  <dglazkov@chromium.org>
41
42         Reviewed by David Hyatt.
43
44         Remove extraneous RenderObject traversal.
45         https://bugs.webkit.org/show_bug.cgi?id=45821
46
47         This code always exits in the first iteration of the loop,
48         because in the context of this call, node->renderer()->node() != 0
49         is always true.
50
51         No behavior change, covered by existing tests.
52
53         * page/EventHandler.cpp:
54         (WebCore::EventHandler::canMouseDownStartSelect): Removed the loop.
55         (WebCore::EventHandler::canMouseDragExtendSelect): Ditto.
56
57 2010-09-17  Pavel Feldman  <pfeldman@chromium.org>
58
59         Reviewed by Yury Semikhatsky.
60
61         Web Inspector: FrameLoader::loadedResourceFromMemoryCache reports
62         resource as not cached to InspectorController.
63         https://bugs.webkit.org/show_bug.cgi?id=45961
64
65         Web Inspector: FrameLoader::loadedResourceFromMemoryCache reports
66         resource as not cached to InspectorController.
67         There is one path in control flow that leads to resources being
68         reported as not cached. Patch to follow.
69
70         * inspector/InspectorController.cpp:
71         (WebCore::InspectorController::markResourceAsCached):
72         * inspector/InspectorController.h:
73         * inspector/InspectorResource.cpp:
74         (WebCore::InspectorResource::markAsCached):
75         (WebCore::InspectorResource::updateResponse):
76         * inspector/InspectorResource.h:
77         * loader/FrameLoader.cpp:
78         (WebCore::FrameLoader::loadedResourceFromMemoryCache):
79
80 2010-09-17  Alexander Pavlov  <apavlov@chromium.org>
81
82         Unreviewed, build fix. Add files missed in the previous commit.
83
84         * GNUmakefile.am:
85         * css/CSSPropertySourceData.cpp: Added.
86         (WebCore::SourceRange::SourceRange):
87         (WebCore::SourceRange::operator=):
88         (WebCore::CSSPropertySourceData::CSSPropertySourceData):
89         (WebCore::CSSPropertySourceData::operator=):
90         (WebCore::CSSPropertySourceData::toString):
91         (WebCore::CSSPropertySourceData::hash):
92         (WebCore::CSSPropertySourceData::init):
93         * css/CSSPropertySourceData.h: Added.
94         (WebCore::CSSPropertySourceData::~CSSPropertySourceData):
95         (WebCore::CSSStyleSourceData::create):
96
97 2010-09-15  Alexander Pavlov  <apavlov@chromium.org>
98
99         Reviewed by Pavel Feldman.
100
101         Provide source-based properties for style declarations to CSSParser clients
102
103         This change:
104         - Enables InspectorCSSStore to extract CSS stylesheet text for all source-based stylesheets,
105           even with the resource tracking turned off.
106         - Adds to CSSParser a capability of source-related style declaration data extraction:
107           * Start/end source offsets for a declaration, relative to the parent stylesheet start or the "style" attribute value.
108           * Start/end source offsets for CSS properties, relative to the declaration start.
109           * CSS property data: name, value, priority, WebCore parsability (i.e. if the property is understood by WebCore).
110         - Provides the extracted data to the WebInspector frontend via InspectorDOMAgent::getStyleSourceData().
111         https://bugs.webkit.org/show_bug.cgi?id=44949
112
113         * WebCore.gypi:
114         * WebCore.pro:
115         * WebCore.vcproj/WebCore.vcproj:
116         * WebCore.xcodeproj/project.pbxproj:
117         * css/CSSGrammar.y:
118         * css/CSSMutableStyleDeclaration.h:
119         (WebCore::CSSMutableStyleDeclaration::node):
120         * css/CSSParser.cpp:
121         (WebCore::CSSParser::CSSParser):
122         (WebCore::CSSParser::parseSheet):
123         (WebCore::CSSParser::parseDeclaration):
124         (WebCore::CSSParser::createStyleRule):
125         (WebCore::CSSParser::markRuleBodyStart):
126         (WebCore::CSSParser::markPropertyStart):
127         (WebCore::CSSParser::markPropertyEnd):
128         * css/CSSParser.h:
129         (WebCore::CSSParser::resetPropertyMarks):
130         * css/CSSPropertySourceData.cpp: Added.
131         (WebCore::SourceRange::SourceRange):
132         (WebCore::SourceRange::operator=):
133         (WebCore::CSSPropertySourceData::CSSPropertySourceData):
134         (WebCore::CSSPropertySourceData::operator=):
135         (WebCore::CSSPropertySourceData::toString):
136         (WebCore::CSSPropertySourceData::hash):
137         (WebCore::CSSPropertySourceData::init):
138         * css/CSSPropertySourceData.h: Added.
139         (WebCore::CSSPropertySourceData::~CSSPropertySourceData):
140         (WebCore::CSSStyleSourceData::create):
141         * inspector/Inspector.idl:
142         * inspector/InspectorCSSStore.cpp:
143         (WebCore::InspectorCSSStore::reset):
144         (WebCore::InspectorCSSStore::styleSheetText):
145         (WebCore::InspectorCSSStore::resourceStyleSheetText):
146         (WebCore::InspectorCSSStore::inlineStyleSheetText):
147         (WebCore::InspectorCSSStore::getStyleSourceData):
148         (WebCore::InspectorCSSStore::extractRanges):
149         (WebCore::InspectorCSSStore::getStyleAttributeRanges):
150         (WebCore::InspectorCSSStore::getParentStyleSheet):
151         (WebCore::InspectorCSSStore::inlineStyleElement):
152         * inspector/InspectorCSSStore.h:
153         * inspector/InspectorController.cpp:
154         (WebCore::InspectorController::resourceContentForURL):
155         * inspector/InspectorController.h:
156         * inspector/InspectorDOMAgent.cpp:
157         (WebCore::InspectorDOMAgent::getStyleSourceData):
158         (WebCore::InspectorDOMAgent::buildObjectForStyle):
159         * inspector/InspectorDOMAgent.h:
160
161 2010-09-17  Alexander Pavlov  <apavlov@chromium.org>
162
163         Reviewed by Pavel Feldman.
164
165         Web Inspector: Show node description in inspector highlight
166         https://bugs.webkit.org/show_bug.cgi?id=20930
167
168         * inspector/InspectorController.cpp:
169         (WebCore::InspectorController::drawNodeHighlight):
170         (WebCore::InspectorController::drawElementTitle):
171         * inspector/InspectorController.h:
172
173 2010-09-16  takano takumi  <takano1@asia.apple.com>
174
175         Reviewed by Kent Tamura.
176
177         https://bugs.webkit.org/show_bug.cgi?id=45020
178         Support "block-flow" and "writing-mode": interpret properties into RenderStyle
179
180         Fixed a regression in SVG test introduced by my previous change.
181
182         * css/CSSPrimitiveValueMappings.h:
183         (WebCore::CSSPrimitiveValue::operator EWritingMode):
184         * css/SVGCSSParser.cpp:
185         (WebCore::CSSParser::parseSVGValue):
186
187 2010-09-16  Kenneth Russell  <kbr@google.com>
188
189         Reviewed by James Robinson.
190
191         Add entry points to GraphicsContext3D needed for Chromium compositor port
192         https://bugs.webkit.org/show_bug.cgi?id=45939
193
194         Added entry points for two Chromium-specific extensions, and added
195         a flag to the GraphicsContext3D constructor, currently unsupported
196         by all ports (including Chromium), indicating whether the context
197         should render directly to the passed HostWindow or off-screen per
198         the current semantics. The switch to use GraphicsContext3D in
199         Chromium's compositor will follow in a subsequent patch.
200
201         No new tests; functionality is unchanged. Built and tested
202         Chromium and WebKit on Mac OS X.
203
204         * platform/graphics/GraphicsContext3D.cpp:
205         (WebCore::GraphicsContext3D::supportsMapSubCHROMIUM):
206         (WebCore::GraphicsContext3D::mapBufferSubDataCHROMIUM):
207         (WebCore::GraphicsContext3D::unmapBufferSubDataCHROMIUM):
208         (WebCore::GraphicsContext3D::mapTexSubImage2DCHROMIUM):
209         (WebCore::GraphicsContext3D::unmapTexSubImage2DCHROMIUM):
210         (WebCore::GraphicsContext3D::supportsCopyTextureToParentTextureCHROMIUM):
211         (WebCore::GraphicsContext3D::copyTextureToParentTextureCHROMIUM):
212         * platform/graphics/GraphicsContext3D.h:
213         * platform/graphics/mac/GraphicsContext3DMac.mm:
214         (WebCore::GraphicsContext3D::create):
215         (WebCore::GraphicsContext3D::GraphicsContext3D):
216         * platform/graphics/qt/GraphicsContext3DQt.cpp:
217         (WebCore::GraphicsContext3D::create):
218         (WebCore::GraphicsContext3D::GraphicsContext3D):
219
220 2010-09-16  Simon Fraser  <simon.fraser@apple.com>
221
222         Reviewed by James Robinson.
223
224         In layerTreeAsText output, avoid printing properties which have their default values
225         https://bugs.webkit.org/show_bug.cgi?id=45931
226
227         Don't dump properties that have their default values to simplify output.
228
229         * platform/graphics/GraphicsLayer.cpp:
230         (WebCore::GraphicsLayer::dumpProperties):
231
232 2010-09-16  Andreas Kling  <andreas.kling@nokia.com>
233
234         Reviewed by Ariya Hidayat.
235
236         [Qt] GraphicsContext: Remove unused variable
237
238         GraphicsContextPlatformPrivate::redirect wasn't used for anything.
239
240         * platform/graphics/qt/GraphicsContextQt.cpp:
241         (WebCore::GraphicsContextPlatformPrivate::p):
242         (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
243
244 2010-09-16  Andreas Kling  <andreas.kling@nokia.com>
245
246         Reviewed by Ariya Hidayat.
247
248         [Qt] Remove unnecessary QPainter::clipPath() call in TransparencyLayer()
249         https://bugs.webkit.org/show_bug.cgi?id=45923
250
251         QPainter::clipPath() can be very expensive, so use QPainter::hasClipping()
252         instead of QPainter::clipPath().isEmpty().
253
254         * platform/graphics/qt/TransparencyLayer.h:
255         (WebCore::TransparencyLayer::TransparencyLayer):
256
257 2010-09-16  David Hyatt  <hyatt@apple.com>
258
259         Reviewed by Eric Seidel.
260
261         Fix for regression from my previous check-in.  Make sure not to move the LayoutRepainter line
262         below the setHeight(0) call.  This meant it snagged the wrong rectangle and we ended up repainting
263         the world.
264
265         * rendering/RenderBlock.cpp:
266         (WebCore::RenderBlock::layoutBlock):
267
268 2010-09-16  takano takumi  <takano1@asia.apple.com>
269
270         Reviewed by Dave Hyatt.
271
272         https://bugs.webkit.org/show_bug.cgi?id=45020
273         Support "block-flow" and "writing-mode": interpret properties into RenderStyle
274  
275         Added code that interprets "block-flow" property and "writing-mode" property settings
276         into a RenderStyle object.
277
278         Test: fast/text/international/block-flow-parser-test.html
279
280         * css/CSSComputedStyleDeclaration.cpp:
281         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
282         * css/CSSParser.cpp:
283         (WebCore::CSSParser::parseValue):
284         * css/CSSPrimitiveValueMappings.h:
285         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
286         (WebCore::CSSPrimitiveValue::operator EBlockFlowDirection):
287         * css/CSSPropertyNames.in:
288         * css/CSSStyleSelector.cpp:
289         (WebCore::CSSStyleSelector::applyProperty):
290         * css/CSSValueKeywords.in:
291         * css/SVGCSSValueKeywords.in:
292         * rendering/style/RenderStyle.cpp:
293         (WebCore::RenderStyle::diff):
294         * rendering/style/RenderStyle.h:
295         (WebCore::InheritedFlags::setBitDefaults):
296         (WebCore::InheritedFlags::blockFlow):
297         (WebCore::InheritedFlags::setBlockFlow):
298         (WebCore::InheritedFlags::initialBlockFlow):
299         * rendering/style/RenderStyleConstants.h:
300
301 2010-09-16  Martin Robinson  <mrobinson@igalia.com>
302
303         Reviewed by Xan Lopez.
304
305         [GTK] Implement dissolveDragImageToFraction
306         https://bugs.webkit.org/show_bug.cgi?id=45826
307
308         Convert the drag image from a GdkPixbuf to a Cairo surface. Not only
309         might this allow code to be shared between Cairo ports it prevents a
310         full data copy when the image is not resized and makes the implementation
311         of dissolveDragImageToFraction more straight-forward.
312
313         This feature is covered by manual-tests/drag-image.html.
314
315         * page/gtk/DragControllerGtk.cpp:
316         (WebCore::DragController::maxDragImageSize): Make the maximum size of the drag
317         image a little smaller.
318         * platform/DragImage.h: Changed the drag image type to be a cairo_surface_t*.
319         * platform/gtk/DragImageGtk.cpp:
320         (WebCore::dragImageSize): Reimplemented to reflect new drag image type.
321         (WebCore::deleteDragImage): Ditto.
322         (WebCore::scaleDragImage): Ditto.
323         (WebCore::dissolveDragImageToFraction): Filled the stub of this function.
324         (WebCore::createDragImageFromImage): Reimplemented to reflect new drag image type.
325         * platform/gtk/GtkVersioning.h: Added definition for gtk_widget_get_realized for older GTK+s.
326
327 2010-09-15  David Hyatt  <hyatt@apple.com>
328
329         Reviewed by Darin Adler.
330
331         https://bugs.webkit.org/show_bug.cgi?id=38402, paginate columns at layout time rather than at paint time.
332
333         This patch adds support for column breaking at layout time rather than at paint time.  New variables have been
334         added to LayoutState and to ColumnInfo to track column information while laying out.
335         
336         The basic idea behind this patch is to retain the columns' paint-time hackery of transforming one long vertical strip
337         into multiple columns.  Now, however, layout is aware of the columns and will move objects up and down vertically in order
338         to ensure they don't intersect a break.
339         
340         Many new tests added in fast/multicol and new results added for existing fast/multicol tests.
341
342         * rendering/ColumnInfo.h:
343         (WebCore::ColumnInfo::ColumnInfo):
344         (WebCore::ColumnInfo::columnCount):
345         (WebCore::ColumnInfo::columnHeight):
346         (WebCore::ColumnInfo::setColumnCountAndHeight):
347         (WebCore::ColumnInfo::setColumnHeight):
348         (WebCore::ColumnInfo::updateMinimumColumnHeight):
349         (WebCore::ColumnInfo::minimumColumnHeight):
350         (WebCore::ColumnInfo::forcedBreaks):
351         (WebCore::ColumnInfo::forcedBreakOffset):
352         (WebCore::ColumnInfo::maximumDistanceBetweenForcedBreaks):
353         (WebCore::ColumnInfo::clearForcedBreaks):
354         (WebCore::ColumnInfo::addForcedBreak):
355         * rendering/LayoutState.cpp:
356         (WebCore::LayoutState::LayoutState):
357         (WebCore::LayoutState::clearPaginationInformation):
358         (WebCore::LayoutState::pageY):
359         (WebCore::LayoutState::addForcedColumnBreak):
360         * rendering/LayoutState.h:
361         (WebCore::LayoutState::LayoutState):
362         (WebCore::LayoutState::paginatingColumns):
363         (WebCore::LayoutState::paginated):
364         * rendering/RenderBlock.cpp:
365         (WebCore::RenderBlock::RenderBlock):
366         (WebCore::RenderBlock::~RenderBlock):
367         (WebCore::RenderBlock::layoutBlock):
368         (WebCore::RenderBlock::collapseMargins):
369         (WebCore::RenderBlock::estimateVerticalPosition):
370         (WebCore::RenderBlock::layoutBlockChild):
371         (WebCore::RenderBlock::layoutPositionedObjects):
372         (WebCore::RenderBlock::paintColumnRules):
373         (WebCore::RenderBlock::paintColumnContents):
374         (WebCore::RenderBlock::paintChildren):
375         (WebCore::RenderBlock::insertFloatingObject):
376         (WebCore::RenderBlock::removeFloatingObjects):
377         (WebCore::RenderBlock::positionNewFloats):
378         (WebCore::RenderBlock::positionNewFloatOnLine):
379         (WebCore::RenderBlock::lowestPosition):
380         (WebCore::RenderBlock::rightmostPosition):
381         (WebCore::RenderBlock::leftmostPosition):
382         (WebCore::RenderBlock::markAllDescendantsWithFloatsForLayout):
383         (WebCore::RenderBlock::markDescendantBlocksAndLinesForLayout):
384         (WebCore::RenderBlock::hitTestColumns):
385         (WebCore::RenderBlock::setDesiredColumnCountAndWidth):
386         (WebCore::RenderBlock::columnCount):
387         (WebCore::RenderBlock::columnRectAt):
388         (WebCore::RenderBlock::layoutColumns):
389         (WebCore::RenderBlock::adjustPointToColumnContents):
390         (WebCore::RenderBlock::adjustRectForColumns):
391         (WebCore::RenderBlock::adjustForColumns):
392         (WebCore::RenderBlock::setMaxTopMargins):
393         (WebCore::RenderBlock::setMaxBottomMargins):
394         (WebCore::RenderBlock::setPaginationStrut):
395         (WebCore::RenderBlock::setPageY):
396         (WebCore::RenderBlock::nextPageTop):
397         (WebCore::inNormalFlow):
398         (WebCore::RenderBlock::applyBeforeBreak):
399         (WebCore::RenderBlock::applyAfterBreak):
400         (WebCore::RenderBlock::adjustForUnsplittableChild):
401         (WebCore::RenderBlock::adjustLinePositionForPagination):
402         * rendering/RenderBlock.h:
403         (WebCore::RenderBlock::paginationStrut):
404         (WebCore::RenderBlock::pageY):
405         (WebCore::RenderBlock::maxTopPosMargin):
406         (WebCore::RenderBlock::maxTopNegMargin):
407         (WebCore::RenderBlock::maxBottomPosMargin):
408         (WebCore::RenderBlock::maxBottomNegMargin):
409         (WebCore::RenderBlock::initMaxMarginValues):
410         (WebCore::RenderBlock::FloatingObject::FloatingObject):
411         (WebCore::RenderBlock::FloatingObject::type):
412         (WebCore::RenderBlock::RenderBlockRareData::RenderBlockRareData):
413         * rendering/RenderBlockLineLayout.cpp:
414         (WebCore::RenderBlock::layoutInlineChildren):
415         (WebCore::RenderBlock::determineStartPosition):
416         (WebCore::RenderBlock::skipLeadingWhitespace):
417         (WebCore::RenderBlock::findNextLineBreak):
418         * rendering/RenderBox.cpp:
419         (WebCore::RenderBox::mapLocalToContainer):
420         (WebCore::RenderBox::computeRectForRepaint):
421         (WebCore::RenderBox::markDescendantBlocksAndLinesForLayout):
422         * rendering/RenderBox.h:
423         * rendering/RenderFlexibleBox.cpp:
424         (WebCore::RenderFlexibleBox::layoutBlock):
425         (WebCore::RenderFlexibleBox::layoutHorizontalBox):
426         (WebCore::RenderFlexibleBox::layoutVerticalBox):
427         * rendering/RenderFlexibleBox.h:
428         * rendering/RenderInline.cpp:
429         (WebCore::RenderInline::computeRectForRepaint):
430         (WebCore::RenderInline::mapLocalToContainer):
431         * rendering/RenderLayer.cpp:
432         (WebCore::RenderLayer::updatePagination):
433         (WebCore::RenderLayer::paintChildLayerIntoColumns):
434         (WebCore::RenderLayer::hitTestChildLayerColumns):
435         * rendering/RenderLineBoxList.cpp:
436         (WebCore::RenderLineBoxList::paint):
437         * rendering/RenderTable.cpp:
438         (WebCore::RenderTable::RenderTable):
439         (WebCore::RenderTable::layout):
440         * rendering/RenderTable.h:
441         * rendering/RenderTableRow.cpp:
442         (WebCore::RenderTableRow::layout):
443         * rendering/RenderTableSection.cpp:
444         (WebCore::RenderTableSection::layoutRows):
445         * rendering/RenderView.cpp:
446         (WebCore::RenderView::RenderView):
447         (WebCore::RenderView::pushLayoutState):
448         * rendering/RenderView.h:
449         (WebCore::RenderView::setTruncatedAt):
450         (WebCore::RenderView::pushLayoutState):
451         (WebCore::RenderView::popLayoutState):
452         (WebCore::LayoutStateMaintainer::LayoutStateMaintainer):
453         (WebCore::LayoutStateMaintainer::push):
454         * rendering/RootInlineBox.h:
455         (WebCore::RootInlineBox::RootInlineBox):
456         (WebCore::RootInlineBox::paginationStrut):
457         (WebCore::RootInlineBox::setPaginationStrut):
458
459 2010-09-16  Pavel Podivilov  <podivilov@chromium.org>
460
461         Reviewed by Dimitri Glazkov.
462
463         Fix debug crash in HTMLFrameOwnerElement caused by content frame being used after destruction.
464         https://bugs.webkit.org/show_bug.cgi?id=45737
465
466         Test: fast/frames/frame-limit.html
467
468         * html/HTMLFrameOwnerElement.cpp:
469         (WebCore::HTMLFrameOwnerElement::willRemove):
470
471 2010-09-16  Thomas Zander <t.zander@nokia.com>
472
473         Reviewed by Andreas Kling.
474
475         https://bugs.webkit.org/show_bug.cgi?id=45878
476
477         [Qt] Fixed incorrect Symbian scoping.
478
479         The missing install functionality is only true for mmp based systems.
480
481         * WebCore.pro: limit functionality to mmp systems.
482
483 2010-09-16  Anders Carlsson  <andersca@apple.com>
484
485         Fix clang build.
486
487         * page/animation/AnimationBase.h:
488         Fix struct/class mismatch.
489
490 2010-09-16  Darin Adler  <darin@apple.com>
491
492         Reviewed by Andreas Kling.
493
494         Reduce use of HTMLInputElement::inputType so we can remove it later
495         https://bugs.webkit.org/show_bug.cgi?id=45903
496
497         * accessibility/AccessibilityRenderObject.cpp:
498         (WebCore::AccessibilityRenderObject::isFileUploadButton): Use isFileUpload.
499         (WebCore::AccessibilityRenderObject::isInputImage): Use isImageButton.
500         (WebCore::AccessibilityRenderObject::determineAccessibilityRole): Use
501         isCheckbox and isRadioButton.
502
503         * css/CSSStyleSelector.cpp:
504         (WebCore::CSSStyleSelector::adjustRenderStyle): Use isImageButton.
505
506         * editing/Editor.cpp:
507         (WebCore::Editor::setBaseWritingDirection): Use isTextField.
508
509         * editing/ReplaceSelectionCommand.cpp:
510         (WebCore::ReplaceSelectionCommand::doApply): Use isPasswordField.
511
512         * editing/SelectionController.cpp:
513         (WebCore::SelectionController::isInPasswordField): Use isPasswordField.
514
515         * html/HTMLInputElement.h: Added isFileUpload, isImageButton, and isSubmitButton.
516
517         * page/Chrome.cpp:
518         (WebCore::Chrome::setToolTip): Use isSubmitButton and isFileUpload.
519
520         * page/DragController.cpp:
521         (WebCore::asFileInput): Use isFileUpload.
522
523         * page/EventHandler.cpp:
524         (WebCore::isSubmitImage): Use isImageButton.
525
526         * rendering/RenderFileUploadControl.cpp:
527         (WebCore::RenderFileUploadControl::updateFromElement): Use isFileUpload.
528
529 2010-09-16  Pavel Podivilov  <podivilov@chromium.org>
530
531         Reviewed by Pavel Feldman.
532
533         Web Inspector: quick fix for crash in InspectorController::loadBreakpoints caused by empty main resource
534         https://bugs.webkit.org/show_bug.cgi?id=45901
535
536         * inspector/InspectorController.cpp:
537         (WebCore::InspectorController::breakpointsSettingKey):
538
539 2010-09-16  Pavel Feldman  <pfeldman@chromium.org>
540
541         Reviewed by Yury Semikhatsky.
542
543         Web Inspector: Prevent responseReceivedTime from being > endTime in case mixture of WebCore and Network stack info is used.
544         https://bugs.webkit.org/show_bug.cgi?id=45892
545
546         * inspector/InspectorResource.cpp:
547         (WebCore::InspectorResource::endTiming):
548
549 2010-09-16  Ilya Tikhonovsky  <loislo@chromium.org>
550
551         Reviewed by Yury Semikhatsky.
552
553         Web Inspector: move resourceTracking flag under control of BackendSettings.
554
555         Four Inspector API methods about resourceTracking flag were removed.
556         Actual state of the flag is transfered as the response of setResourceTracking request.
557         Initial state of the flag on the frontend side is obtained from settings.backend.
558
559         https://bugs.webkit.org/show_bug.cgi?id=45887
560
561         * inspector/Inspector.idl:
562         * inspector/InspectorController.cpp:
563         (WebCore::InspectorController::getBackendSettings):
564         (WebCore::InspectorController::populateScriptObjects):
565         (WebCore::InspectorController::setResourceTracking):
566         * inspector/InspectorController.h:
567         * inspector/front-end/ResourcesPanel.js:
568         (WebInspector.ResourcesPanel.prototype._toggleResourceTracking):
569         * inspector/front-end/Settings.js:
570         (WebInspector.Settings.initialize.populateBackendSettings):
571         (WebInspector.Settings.initialize):
572         * inspector/front-end/inspector.js:
573
574 2010-09-16  Jian Li  <jianli@chromium.org>
575
576         Reviewed by David Levin.
577
578         BlobData should be copied for it to be used cross-thread in ThreadableBlobRegistry.
579         https://bugs.webkit.org/show_bug.cgi?id=45909
580
581         * fileapi/ThreadableBlobRegistry.cpp:
582         (WebCore::BlobRegistryContext::BlobRegistryContext):
583
584 2010-09-16  Daniel Cheng  <dcheng@chromium.org>
585
586         Reviewed by Simon Fraser.
587
588         [chromium] Fix incorrect drag node/selection painting.
589         https://bugs.webkit.org/show_bug.cgi?id=45573
590
591         Drag selections were being incorrectly clipped when dragging a selection
592         near the bottom of a page that was taller than the viewport. To fix
593         this, we use paintContents() instead of paint().
594
595         * page/chromium/FrameChromium.cpp:
596         (WebCore::Frame::nodeImage):
597         (WebCore::Frame::dragImageForSelection):
598
599 2010-09-16  Daniel Cheng  <dcheng@chromium.org>
600
601         Reviewed by Tony Chang.
602
603         Fix incorrect usage of dissolveDragImageToFraction().
604         https://bugs.webkit.org/show_bug.cgi?id=45835
605
606         createDragImageForSelection() was ignoring the return value of
607         dissolveDragImageToFraction(). This didn't happen to crash on most
608         platforms, since most implementations simply modified the image that was
609         passed in. However, Chromium Mac's implementation actually creates a new
610         image and returns that instead. This caused us to crash when copying the
611         image from the renderer to the browser process, since the memory had
612         already been freed.
613
614         * manual-tests/selection-drag-crash.html: Added.
615         * platform/DragImage.cpp:
616         (WebCore::createDragImageForSelection):
617
618 2010-09-16  Sheriff Bot  <webkit.review.bot@gmail.com>
619
620         Unreviewed, rolling out r67628.
621         http://trac.webkit.org/changeset/67628
622         https://bugs.webkit.org/show_bug.cgi?id=45904
623
624         broke the build (Requested by eric_carlson on #webkit).
625
626         * page/ContextMenuController.cpp:
627         (WebCore::ContextMenuController::contextMenuItemSelected):
628         * platform/ContextMenu.cpp:
629         (WebCore::ContextMenu::populate):
630         (WebCore::ContextMenu::checkOrEnableIfNeeded):
631         * platform/ContextMenuItem.h:
632         * platform/LocalizationStrategy.h:
633         * platform/LocalizedStrings.cpp:
634         * platform/LocalizedStrings.h:
635         * platform/android/LocalizedStringsAndroid.cpp:
636         * platform/brew/LocalizedStringsBrew.cpp:
637         * platform/efl/LocalizedStringsEfl.cpp:
638         * platform/gtk/ContextMenuItemGtk.cpp:
639         (WebCore::gtkStockIDFromContextMenuAction):
640         * platform/gtk/LocalizedStringsGtk.cpp:
641         * platform/haiku/LocalizedStringsHaiku.cpp:
642         * platform/wx/LocalizedStringsWx.cpp:
643         * rendering/HitTestResult.cpp:
644         (WebCore::HitTestResult::absoluteMediaURL):
645         * rendering/HitTestResult.h:
646
647 2010-09-16  Andreas Kling  <andreas.kling@nokia.com>
648
649         Reviewed by Simon Fraser.
650
651         CSS: Fix crash in getTimingFunctionValue()
652         https://bugs.webkit.org/show_bug.cgi?id=45896
653
654         Use a RefPtr to avoid deleting the TimingFunction prematurely.
655
656         This is covered by existing tests, e.g transitions/inherit-other-props.html
657         but will only actually crash on picky platforms (or in valgrind.)
658
659         * css/CSSComputedStyleDeclaration.cpp:
660         (WebCore::getTimingFunctionValue):
661
662 2010-09-16  Pavel Feldman  <pfeldman@chromium.org>
663
664         Reviewed by Yury Semikhatsky.
665
666         Web Inspector: prevent resource timing popover from having scrollers.
667         https://bugs.webkit.org/show_bug.cgi?id=45883
668
669         * inspector/front-end/ResourcesPanel.js:
670         (WebInspector.ResourcesPanel.prototype._showPopover):
671
672 2010-09-15  Philippe Normand  <pnormand@igalia.com>
673
674         Reviewed by Eric Carlson.
675
676         [GTK] enhanced context menu for media elements
677         https://bugs.webkit.org/show_bug.cgi?id=45021
678
679         New items in the media Element context menu:
680         - play/pause
681         - mute/unmute
682         - controls display control
683         - switch to fullscreen (for video only)
684         - loop playback control
685         - copy media url to clipboard
686         - open in new window
687
688         Test: media/context-menu-actions.html
689
690         * page/ContextMenuController.cpp:
691         (WebCore::ContextMenuController::contextMenuItemSelected):
692         * platform/ContextMenu.cpp:
693         (WebCore::ContextMenu::populate):
694         (WebCore::ContextMenu::checkOrEnableIfNeeded):
695         * platform/ContextMenuItem.h:
696         * platform/LocalizationStrategy.h:
697         * platform/LocalizedStrings.cpp:
698         (WebCore::contextMenuItemTagOpenMediaInNewWindow):
699         (WebCore::contextMenuItemTagCopyMediaLinkToClipboard):
700         (WebCore::contextMenuItemTagToggleMediaControls):
701         (WebCore::contextMenuItemTagToggleMediaLoop):
702         (WebCore::contextMenuItemTagEnterVideoFullscreen):
703         (WebCore::contextMenuItemTagMediaPlay):
704         (WebCore::contextMenuItemTagMediaPause):
705         (WebCore::contextMenuItemTagMediaMute):
706         (WebCore::contextMenuItemTagMediaUnMute):
707         * platform/LocalizedStrings.h:
708         * platform/android/LocalizedStringsAndroid.cpp:
709         (WebCore::contextMenuItemTagOpenMediaInNewWindow):
710         (WebCore::contextMenuItemTagCopyMediaLinkToClipboard):
711         (WebCore::contextMenuItemTagToggleMediaControls):
712         (WebCore::contextMenuItemTagToggleMediaLoop):
713         (WebCore::contextMenuItemTagEnterVideoFullscreen):
714         (WebCore::contextMenuItemTagMediaPlay):
715         (WebCore::contextMenuItemTagMediaPause):
716         (WebCore::contextMenuItemTagMediaMute):
717         (WebCore::contextMenuItemTagMediaUnMute):
718         * platform/brew/LocalizedStringsBrew.cpp:
719         (WebCore::contextMenuItemTagOpenMediaInNewWindow):
720         (WebCore::contextMenuItemTagCopyMediaLinkToClipboard):
721         (WebCore::contextMenuItemTagToggleMediaControls):
722         (WebCore::contextMenuItemTagToggleMediaLoop):
723         (WebCore::contextMenuItemTagEnterVideoFullscreen):
724         (WebCore::contextMenuItemTagMediaPlay):
725         (WebCore::contextMenuItemTagMediaPause):
726         (WebCore::contextMenuItemTagMediaMute):
727         (WebCore::contextMenuItemTagMediaUnMute):
728         * platform/efl/LocalizedStringsEfl.cpp:
729         (WebCore::contextMenuItemTagOpenMediaInNewWindow):
730         (WebCore::contextMenuItemTagCopyMediaLinkToClipboard):
731         (WebCore::contextMenuItemTagToggleMediaControls):
732         (WebCore::contextMenuItemTagToggleMediaLoop):
733         (WebCore::contextMenuItemTagEnterVideoFullscreen):
734         (WebCore::contextMenuItemTagMediaPlay):
735         (WebCore::contextMenuItemTagMediaPause):
736         (WebCore::contextMenuItemTagMediaMute):
737         (WebCore::contextMenuItemTagMediaUnMute):
738         * platform/gtk/ContextMenuItemGtk.cpp:
739         (WebCore::gtkStockIDFromContextMenuAction):
740         * platform/gtk/LocalizedStringsGtk.cpp:
741         (WebCore::contextMenuItemTagOpenMediaInNewWindow):
742         (WebCore::contextMenuItemTagCopyMediaLinkToClipboard):
743         (WebCore::contextMenuItemTagToggleMediaControls):
744         (WebCore::contextMenuItemTagToggleMediaLoop):
745         (WebCore::contextMenuItemTagEnterVideoFullscreen):
746         (WebCore::contextMenuItemTagMediaPlay):
747         (WebCore::contextMenuItemTagMediaPause):
748         (WebCore::contextMenuItemTagMediaMute):
749         (WebCore::contextMenuItemTagMediaUnMute):
750         * platform/haiku/LocalizedStringsHaiku.cpp:
751         (WebCore::contextMenuItemTagOpenMediaInNewWindow):
752         (WebCore::contextMenuItemTagCopyMediaLinkToClipboard):
753         (WebCore::contextMenuItemTagToggleMediaControls):
754         (WebCore::contextMenuItemTagToggleMediaLoop):
755         (WebCore::contextMenuItemTagEnterVideoFullscreen):
756         (WebCore::contextMenuItemTagMediaPlay):
757         (WebCore::contextMenuItemTagMediaPause):
758         (WebCore::contextMenuItemTagMediaMute):
759         (WebCore::contextMenuItemTagMediaUnMute):
760         * platform/wx/LocalizedStringsWx.cpp:
761         (WebCore::contextMenuItemTagOpenMediaInNewWindow):
762         (WebCore::contextMenuItemTagCopyMediaLinkToClipboard):
763         (WebCore::contextMenuItemTagToggleMediaControls):
764         (WebCore::contextMenuItemTagToggleMediaLoop):
765         (WebCore::contextMenuItemTagEnterVideoFullscreen):
766         (WebCore::contextMenuItemTagMediaPlay):
767         (WebCore::contextMenuItemTagMediaPause):
768         (WebCore::contextMenuItemTagMediaMute):
769         (WebCore::contextMenuItemTagMediaUnMute):
770         * rendering/HitTestResult.cpp:
771         (WebCore::HitTestResult::absoluteMediaURL):
772         (WebCore::HitTestResult::mediaSupportsFullscreen):
773         (WebCore::HitTestResult::mediaElement):
774         (WebCore::HitTestResult::toggleMediaControlsDisplay):
775         (WebCore::HitTestResult::toggleMediaLoopPlayback):
776         (WebCore::HitTestResult::enterFullscreenForVideo):
777         (WebCore::HitTestResult::mediaControlsEnabled):
778         (WebCore::HitTestResult::mediaLoopEnabled):
779         (WebCore::HitTestResult::mediaPlaying):
780         (WebCore::HitTestResult::toggleMediaPlayState):
781         (WebCore::HitTestResult::mediaHasAudio):
782         (WebCore::HitTestResult::mediaMuted):
783         (WebCore::HitTestResult::toggleMediaMuteState):
784         * rendering/HitTestResult.h:
785
786 2010-09-16  Tony Gentilcore  <tonyg@chromium.org>
787
788         Reviewed by Adam Barth.
789
790         Crash in WebCore::FrameLoader::shouldInterruptLoadForXFrameOptions
791         https://bugs.webkit.org/show_bug.cgi?id=45833
792
793         Test: fast/parser/x-frame-options-detached-document-crash.html
794
795         * dom/Document.cpp:
796         (WebCore::Document::processHttpEquiv): Other branches in this method already test for a null frame. So it seems to make sense to test that here as well.
797
798 2010-09-16  Vangelis Kokkevis  <vangelis@chromium.org>
799
800         Reviewed by Darin Fisher.
801
802         [chromium] ImageLayerChromium needs to keep a ref to the Image it uses
803         so that it never tries to access an already destroyed Image.
804         https://bugs.webkit.org/show_bug.cgi?id=45869
805
806         * platform/graphics/chromium/GraphicsLayerChromium.cpp:
807         (WebCore::GraphicsLayerChromium::setContentsToImage):
808         * platform/graphics/chromium/ImageLayerChromium.cpp:
809         (WebCore::ImageLayerChromium::setContents):
810         (WebCore::ImageLayerChromium::updateContents):
811         * platform/graphics/chromium/ImageLayerChromium.h:
812
813 2010-09-16  Patrick Gansterer  <paroga@paroga.com>
814
815         Reviewed by Adam Roben.
816
817         [WINCE] Add platform-specific Image methods
818         https://bugs.webkit.org/show_bug.cgi?id=28272
819
820         * platform/graphics/wince/ImageWinCE.cpp: Added.
821         (WebCore::RGBA32Buffer::asNewNativeImage):
822         (WebCore::FrameData::clear):
823         (WebCore::BitmapImage::getHBITMAPOfSize):
824         (WebCore::BitmapImage::drawFrameMatchingSourceSize):
825         (WebCore::BitmapImage::draw):
826         (WebCore::Image::drawPattern):
827         (WebCore::BitmapImage::drawPattern):
828         (WebCore::BitmapImage::checkForSolidColor):
829
830 2010-09-16  Yury Semikhatsky  <yurys@chromium.org>
831
832         Reviewed by Pavel Feldman.
833
834         Web Inspector: [REGRESSION] Scripts disappear from scripts panel after navigation
835         https://bugs.webkit.org/show_bug.cgi?id=45890
836
837         * inspector/InspectorController.cpp:
838         (WebCore::InspectorController::populateScriptObjects):
839         (WebCore::InspectorController::restoreDebugger):
840         (WebCore::InspectorController::restoreProfiler):
841         * inspector/InspectorController.h:
842
843 2010-09-16  Satish Sampath  <satish@chromium.org>
844
845         Unreviewed, fixing a build break with VS 2008.
846
847         Fix build break, add the namespace in a friend declaration to get MSVC recognize it properly.
848         https://bugs.webkit.org/show_bug.cgi?id=45893
849
850         * fileapi/FileWriter.h:
851
852 2010-09-15  Philippe Normand  <pnormand@igalia.com>
853
854         Reviewed by Martin Robinson.
855
856         [GStreamer] XOverlay API changes break the build
857         https://bugs.webkit.org/show_bug.cgi?id=45810
858
859         Cope with the GStreamer XOverlay API change for the upcoming
860         0.10.31 version.
861         No new tests, build fix only.
862
863         * platform/graphics/gstreamer/GStreamerGWorld.cpp:
864         (WebCore::GStreamerGWorld::setWindowOverlay):
865
866 2010-09-16  Andreas Kling  <andreas.kling@nokia.com>
867
868         Reviewed by Tor Arne Vestbø.
869
870         [Qt] V8 port: Fix debug build
871
872         Add missing inclusion of <wtf/text/CString.h> where necessary for debug builds.
873
874         * history/PageCache.cpp:
875         * html/HTMLElement.cpp:
876         * html/HTMLMediaElement.cpp:
877         * loader/DocumentLoader.cpp:
878         * loader/icon/IconDatabase.cpp:
879         * loader/icon/IconLoader.cpp:
880         * storage/AbstractDatabase.cpp:
881         * storage/Database.cpp:
882         * storage/DatabaseSync.cpp:
883         * storage/DatabaseTracker.cpp:
884
885 2010-09-16  Alexey Proskuryakov  <ap@apple.com>
886
887         Reviewed by Adam Barth.
888
889         https://bugs.webkit.org/show_bug.cgi?id=45852
890         Range::selectNode and selectNodeContents misbehave when argument is in another document
891
892         Test: fast/dom/Range/select-node-different-document.html
893
894         There is nothing in DOM Traversal spec that says this shouldn't work, and it does work in
895         Firefox.
896
897         * dom/Range.cpp:
898         (WebCore::Range::setDocument):
899         (WebCore::Range::selectNode):
900         (WebCore::Range::selectNodeContents):
901         * dom/Range.h:
902
903 2010-09-16  Andrey Kosyakov  <caseq@chromium.org>
904
905         Reviewed by Pavel Feldman.
906
907         Web Inspector: [Resources panel] [HAR] Need a way to save timing data.
908         Added support to export HAR to file from Resources panel (conditional on Preferences)
909         Added support for HARLog (a higher-level aggregate than HAREntry)
910         https://bugs.webkit.org/show_bug.cgi?id=45663
911
912         * English.lproj/localizedStrings.js:
913         * inspector/front-end/HAREntry.js:
914         (WebInspector.HAREntry.prototype.build):
915         (WebInspector.HAREntry.prototype._buildTimings):
916         (WebInspector.HAREntry._toMilliseconds):
917         (WebInspector.HARLog):
918         (WebInspector.HARLog.prototype.build):
919         (WebInspector.HARLog.prototype._buildPages):
920         (WebInspector.HARLog.prototype._buildMainResourceTimings):
921         (WebInspector.HARLog.prototype._convertResource):
922         * inspector/front-end/ResourcesPanel.js:
923         (WebInspector.ResourcesPanel):
924         (WebInspector.ResourcesPanel.prototype.hide):
925         (WebInspector.ResourcesPanel.prototype._contextMenu):
926         (WebInspector.ResourcesPanel.prototype._exportAll):
927         (WebInspector.ResourcesPanel.prototype._exportResource):
928         * inspector/front-end/Settings.js:
929         * inspector/front-end/utilities.js:
930         ():
931
932 2010-09-16  Eric Uhrhane  <ericu@chromium.org>
933
934         Reviewed by Jian Li.
935
936         Unify FILE_SYSTEM and FILE_WRITER enables under the name FILE_SYSTEM.
937         https://bugs.webkit.org/show_bug.cgi?id=45798
938
939         * CMakeLists.txt:
940         * Configurations/FeatureDefines.xcconfig:
941         * GNUmakefile.am:
942         * WebCore.pro:
943         * dom/EventTarget.cpp:
944         * dom/EventTarget.h:
945         * dom/ExceptionCode.h:
946         * dom/ScriptExecutionContext.cpp:
947         (WebCore::ScriptExecutionContext::~ScriptExecutionContext):
948         * dom/ScriptExecutionContext.h:
949         * fileapi/AsyncFileWriter.h:
950         * fileapi/FileEntry.cpp:
951         * fileapi/FileEntry.h:
952         * fileapi/FileEntry.idl:
953         * fileapi/FileError.h:
954         * fileapi/FileError.idl:
955         * fileapi/FileException.h:
956         * fileapi/FileException.idl:
957         * fileapi/FileStreamProxy.cpp:
958         * fileapi/FileStreamProxy.h:
959         * fileapi/FileThread.cpp:
960         * fileapi/FileThread.h:
961         * fileapi/FileWriter.cpp:
962         * fileapi/FileWriter.h:
963         * fileapi/FileWriter.idl:
964         * fileapi/FileWriterCallback.h:
965         * fileapi/FileWriterCallback.idl:
966         * fileapi/FileWriterClient.h:
967         * page/DOMWindow.idl:
968         * platform/AsyncFileStream.h:
969         * platform/FileStream.cpp:
970         * platform/FileStream.h:
971         * platform/FileStreamClient.h:
972
973 2010-09-16  Marc-Antoine Ruel  <maruel@chromium.org>
974
975         Reviewed by Dimitri Glazkov.
976
977         Convert WebCore.gyp to use regexp to excludes files instead of listing them in sources!.
978
979         This is necessary because sources! is processed before sources/. This makes
980         applying broader pattern in sources/ more difficult since it overrides the files
981         listed in sources!. Having all them in sources/ permits controlling the ordering
982         of the regexp, thus the final list of included files.
983
984         Fix Harfbuzz and VDMX source files includes in WebCore.gypi and WebCore.gyp
985
986         https://bugs.webkit.org/show_bug.cgi?id=45823
987
988         * WebCore.gyp/WebCore.gyp:
989         * WebCore.gypi:
990
991 2010-09-16  Nat Duca  <nduca@chromium.org>
992
993         Reviewed by Darin Fisher.
994
995         [chromium] Make compositor obey finish flag
996         https://bugs.webkit.org/show_bug.cgi?id=45552
997
998         The compositor should obey the finish flag on doComposite. This
999         flag causes the compositor to finish rendering before returning,
1000         which is needed when resizing the window to avoid flashes of green.
1001
1002         * platform/graphics/chromium/LayerRendererChromium.cpp:
1003         (WebCore::LayerRendererChromium::finish):
1004         * platform/graphics/chromium/LayerRendererChromium.h:
1005
1006 2010-09-16  Alejandro G. Castro  <alex@igalia.com>
1007
1008         Reviewed by Xan Lopez.
1009
1010         GTK+ 3.x. updates, gtk_widget_size_request is deprecated and
1011         "activate-slider" style property for scrollbars is gone.
1012
1013         * platform/gtk/PopupMenuGtk.cpp:
1014         (WebCore::PopupMenuGtk::show):
1015         * platform/gtk/gtk2drawing.c:
1016         (moz_gtk_scrollbar_thumb_paint):
1017         (moz_gtk_combo_box_paint):
1018
1019 2010-09-16  Diego Gonzalez  <diegohcg@webkit.org>
1020
1021         Reviewed by Kenneth Rohde Christiansen.
1022
1023         [Qt] Remove FrameLoaderClientQt::webFrame() to use NetworkingContext to get the WebFrame to avoid layering violations
1024         https://bugs.webkit.org/show_bug.cgi?id=42293
1025
1026         * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
1027         (WebCore::MediaPlayerPrivate::commitLoad):
1028
1029 2010-09-16  Ryuan Choi  <ryuan.choi@samsung.com>
1030
1031         Unreviewed build fix for EFL
1032
1033         [EFL] REGRESSION(67567) FontCacheCairo was removed
1034         https://bugs.webkit.org/show_bug.cgi?id=45858
1035
1036         * CMakeListsEfl.txt:
1037
1038 2010-09-16  Yong Li  <yoli@rim.com>
1039
1040         Reviewed by George Staikos.
1041
1042         https://bugs.webkit.org/show_bug.cgi?id=37117
1043
1044         Add platform-independent JPEG/PNG image encoders that
1045         work with big endian RGBA source data.
1046
1047         There's no layout test because this patch does't make
1048         any port start using the encoders.
1049
1050         * platform/image-encoders/JPEGImageEncoder.cpp: Added.
1051         * platform/image-encoders/JPEGImageEncoder.h: Added.
1052         * platform/image-encoders/PNGImageEncoder.cpp: Added.
1053         * platform/image-encoders/PNGImageEncoder.h: Added.
1054
1055 2010-09-15  Jeremy Orlow  <jorlow@chromium.org>
1056
1057         Reviewed by Steve Block.
1058
1059         Allow the embedder to specify the base path for IndexedDB.
1060         https://bugs.webkit.org/show_bug.cgi?id=45815
1061
1062         Existing tests provide coverage. Use the indexedDBPath parameter that's
1063         already on the group settings object. Pass this parameter into the backend
1064         which will use it rather than a hard coded tmp directory location. If
1065         nothing is specified, assume it should be an in-memory temporary database.
1066         (This is useful for bringup and Chromium's incognito mode.)
1067
1068         * storage/IDBFactory.cpp:
1069         (WebCore::IDBFactory::open):
1070         * storage/IDBFactoryBackendImpl.cpp:
1071         (WebCore::openSQLiteDatabase):
1072         (WebCore::createTables):
1073         (WebCore::IDBFactoryBackendImpl::open):
1074         * storage/IDBFactoryBackendImpl.h:
1075         * storage/IDBFactoryBackendInterface.h:
1076
1077 2010-09-16  Yong Li  <yoli@rim.com>
1078
1079         Reviewed by George Staikos.
1080
1081         Fix the bug that GIF image down sampling can miss some lines.
1082         https://bugs.webkit.org/show_bug.cgi?id=45322
1083
1084         Test: fast/images/gif-large-checkerboard.html
1085
1086         * platform/image-decoders/gif/GIFImageDecoder.cpp:
1087         (WebCore::GIFImageDecoder::haveDecodedRow):
1088
1089 2010-09-16  Philippe Normand  <pnormand@igalia.com>
1090
1091         Reviewed by Andreas Kling.
1092
1093         [GStreamer] un-needed header includes in MediaPlayerPrivate
1094         https://bugs.webkit.org/show_bug.cgi?id=45877
1095
1096         Include only the headers we need.
1097         No new tests, #includes cleanup only.
1098
1099         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
1100
1101 2010-09-16  Pavel Feldman  <pfeldman@chromium.org>
1102
1103         Reviewed by Yury Semikhatsky.
1104
1105         Web Inspector: console.group(object) does not allow object to be expanded.
1106         https://bugs.webkit.org/show_bug.cgi?id=45806
1107
1108         * inspector/front-end/ConsoleView.js:
1109         (WebInspector.ConsoleGroup.prototype.addMessage):
1110         * inspector/front-end/treeoutline.js:
1111         (TreeElement.treeElementToggled):
1112
1113 2010-09-08  Jeremy Orlow  <jorlow@chromium.org>
1114
1115         Reviewed by Steve Block.
1116
1117         Complete index support for IndexedDB
1118         https://bugs.webkit.org/show_bug.cgi?id=45386
1119
1120         Add the rest of the index related API for IndexedDB.  This
1121         includes cursor suport.  A bunch of code was also refactored
1122         since it is shared between indexes and objectStores.
1123
1124         Tests: storage/indexeddb/index-basics.html
1125                storage/indexeddb/index-cursor.html
1126                + additions to others.
1127
1128         * storage/IDBAny.cpp:
1129         (WebCore::IDBAny::set):
1130         * storage/IDBCursor.cpp:
1131         (WebCore::IDBCursor::value):
1132         * storage/IDBCursorBackendImpl.cpp:
1133         (WebCore::IDBCursorBackendImpl::IDBCursorBackendImpl):
1134         (WebCore::IDBCursorBackendImpl::value):
1135         (WebCore::IDBCursorBackendImpl::update):
1136         (WebCore::IDBCursorBackendImpl::continueFunction):
1137         (WebCore::IDBCursorBackendImpl::remove):
1138         (WebCore::IDBCursorBackendImpl::loadCurrentRow):
1139         (WebCore::IDBCursorBackendImpl::database):
1140         * storage/IDBCursorBackendImpl.h:
1141         (WebCore::IDBCursorBackendImpl::create):
1142         * storage/IDBCursorBackendInterface.h:
1143         * storage/IDBFactoryBackendImpl.cpp:
1144         (WebCore::createTables):
1145         * storage/IDBIndex.cpp:
1146         (WebCore::IDBIndex::openObjectCursor):
1147         (WebCore::IDBIndex::openCursor):
1148         (WebCore::IDBIndex::getObject):
1149         (WebCore::IDBIndex::get):
1150         * storage/IDBIndex.h:
1151         (WebCore::IDBIndex::storeName):
1152         * storage/IDBIndex.idl:
1153         * storage/IDBIndexBackendImpl.cpp:
1154         (WebCore::IDBIndexBackendImpl::storeName):
1155         (WebCore::openCursorInternal):
1156         (WebCore::IDBIndexBackendImpl::openObjectCursor):
1157         (WebCore::IDBIndexBackendImpl::openCursor):
1158         (WebCore::getInternal):
1159         (WebCore::IDBIndexBackendImpl::getObject):
1160         (WebCore::IDBIndexBackendImpl::get):
1161         * storage/IDBIndexBackendImpl.h:
1162         (WebCore::IDBIndexBackendImpl::objectStore):
1163         * storage/IDBIndexBackendInterface.h:
1164         * storage/IDBKey.cpp:
1165         (WebCore::IDBKey::fromQuery):
1166         (WebCore::IDBKey::whereSyntax):
1167         (WebCore::IDBKey::leftCursorWhereFragment):
1168         (WebCore::IDBKey::rightCursorWhereFragment):
1169         * storage/IDBKey.h:
1170         * storage/IDBKeyRange.cpp:
1171         (WebCore::IDBKeyRange::leftWhereClauseComparisonOperator):
1172         (WebCore::IDBKeyRange::rightWhereClauseComparisonOperator):
1173         * storage/IDBKeyRange.h:
1174         * storage/IDBObjectStoreBackendImpl.cpp:
1175         (WebCore::IDBObjectStoreBackendImpl::openCursor):
1176         * storage/IDBRequest.cpp:
1177         (WebCore::IDBRequest::timerFired):
1178
1179 2010-09-15  Simon Fraser  <simon.fraser@apple.com>
1180
1181         Fix chromium build.
1182         
1183         * platform/graphics/chromium/GraphicsLayerChromium.cpp:
1184
1185 2010-09-15  Simon Fraser  <simon.fraser@apple.com>
1186
1187         Reviewed by Adam Roben.
1188
1189         https://bugs.webkit.org/show_bug.cgi?id=44715
1190         maps.google.com flips upside down when zooming map using trackpad in WebKit2 on Mac
1191
1192         Remove the concept of geometry flipping from GraphicsLayer; geometry flipping will
1193         be taken care of in platform code without the need to complicate the GraphicsLayer API.
1194         
1195         RenderLayerCompositor no longer sets the geometry orientation for the root
1196         platform layer; platform-specific code does this instead.
1197         
1198         This fixes flipped layers in WebKit2, since WebKit2 was already flipping
1199         geometry, and then RenderLayerCompositor was doing an additional flip.
1200
1201         * platform/graphics/GraphicsLayer.cpp:
1202         (WebCore::GraphicsLayer::GraphicsLayer):
1203         * platform/graphics/GraphicsLayer.h:
1204         * platform/graphics/chromium/GraphicsLayerChromium.cpp:
1205         * platform/graphics/chromium/GraphicsLayerChromium.h:
1206         * platform/graphics/mac/GraphicsLayerCA.h:
1207         * platform/graphics/mac/GraphicsLayerCA.mm:
1208         (WebCore::GraphicsLayerCA::commitLayerChangesBeforeSublayers):
1209         (WebCore::GraphicsLayerCA::swapFromOrToTiledLayer):
1210         (WebCore::GraphicsLayerCA::defaultContentsOrientation):
1211         * platform/graphics/qt/GraphicsLayerQt.cpp:
1212         (WebCore::GraphicsLayerQtImpl::flushChanges):
1213         * platform/graphics/qt/GraphicsLayerQt.h:
1214         * platform/graphics/win/GraphicsLayerCACF.cpp:
1215         (WebCore::GraphicsLayerCACF::swapFromOrToTiledLayer):
1216         * platform/graphics/win/GraphicsLayerCACF.h:
1217         * platform/graphics/win/WKCACFLayerRenderer.cpp:
1218         (WebCore::WKCACFLayerRenderer::setRootChildLayer):
1219         * rendering/RenderLayerCompositor.cpp:
1220         (WebCore::RenderLayerCompositor::ensureRootPlatformLayer):
1221
1222 2010-09-15  Julien Chaffraix  <jchaffraix@codeaurora.org>
1223
1224         Unreviewed.
1225
1226         Reverting my changes as it is breaking several tests on Gtk and Qt.
1227
1228         * css/CSSParser.cpp:
1229         (WebCore::CSSParser::parseColor):
1230         * css/CSSParser.h:
1231         * html/canvas/CanvasRenderingContext2D.cpp:
1232         (WebCore::CanvasRenderingContext2D::setStrokeColor):
1233         (WebCore::CanvasRenderingContext2D::setFillColor):
1234         * html/canvas/CanvasStyle.cpp:
1235         (WebCore::CanvasStyle::createFromString):
1236         * html/canvas/CanvasStyle.h:
1237
1238 2010-09-15  Julien Chaffraix  <jchaffraix@codeaurora.org>
1239
1240         Reviewed by Andreas Kling.
1241
1242         Parse system colors in the HTML5 canvas context.
1243         https://bugs.webkit.org/show_bug.cgi?id=39168
1244
1245         Test: fast/css/test-setting-canvas-color.html
1246
1247         Based on previous work by Jan Erik Hanssen  <jhanssen@codeaurora.org>
1248
1249         * css/CSSParser.cpp:
1250         (WebCore::CSSParser::parseColor): Changed the function to better match our
1251         early return policy. Also we now return false when we don't parse the color.
1252         This is needed for createFromString to fallback to using parseSystemColor.
1253
1254         (WebCore::CSSParser::parseSystemColor): Made use of the RenderTheme to get
1255         the system colors.
1256
1257         * css/CSSParser.h: Added the new parseSystemColor method.
1258
1259         * html/canvas/CanvasRenderingContext2D.cpp:
1260         (WebCore::CanvasRenderingContext2D::setStrokeColor): Pass the document to createFromString.
1261         (WebCore::CanvasRenderingContext2D::setFillColor): Ditto.
1262         * html/canvas/CanvasStyle.cpp:
1263         (WebCore::CanvasStyle::createFromString): Try to parse the color using CSSParser::parseColor
1264         and fall back to parseSystemColor if it did not work.
1265
1266         * html/canvas/CanvasStyle.h: Added the new Document* parameter to createFromString.
1267
1268 2010-09-14  Erik Arvidsson  <arv@chromium.org>
1269
1270         Reviewed by Darin Adler.
1271
1272         getComputedStyle() returns different values for different zoom levels
1273         https://bugs.webkit.org/show_bug.cgi?id=32230
1274
1275         Test: fast/css/getComputedStyle/computed-style-with-zoom.html
1276
1277         * css/CSSComputedStyleDeclaration.cpp:
1278         (WebCore::zoomAdjustedPixelValue):
1279         (WebCore::zoomAdjustedNumberValue):
1280         (WebCore::valueForReflection):
1281         (WebCore::getPositionOffsetValue):
1282         (WebCore::getBorderRadiusCornerValue):
1283         (WebCore::computedTransform):
1284         (WebCore::CSSComputedStyleDeclaration::getFontSizeCSSValuePreferringKeyword):
1285         (WebCore::CSSComputedStyleDeclaration::valueForShadow):
1286         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
1287         * css/CSSComputedStyleDeclaration.h:
1288         * css/SVGCSSComputedStyleDeclaration.cpp:
1289         (WebCore::CSSComputedStyleDeclaration::getSVGPropertyCSSValue):
1290         * rendering/RenderObject.h:
1291         (WebCore::adjustForAbsoluteZoom):
1292         * rendering/style/RenderStyle.h:
1293         (WebCore::adjustForAbsoluteZoom):
1294
1295 2010-09-14  Martin Robinson  <mrobinson@igalia.com>
1296
1297         Reviewed by Xan Lopez.
1298
1299         [GTK] Fully separate Pango and FreeType font backends
1300         https://bugs.webkit.org/show_bug.cgi?id=27442
1301
1302         Split FontPlatformData.h into separate versions for Pango, FreeType and WinCairo.
1303         Include the correct file via #ifdef'd includes, like the Chromium port. Also split
1304         FontCacheCairo.cpp into Pango and FreeType versions, as they had almost no code in
1305         common. Finally, rename FontPlatformDataCairo to FontPlatformDataFreeType, as this
1306         compilation unit is used only by the FreeType backend. This change is important to
1307         prevent upcoming fixes to the FreeType backend from affecting other backends.
1308
1309         No new tests as functionality has not changed.
1310
1311         * CMakeListsEfl.txt: Update source lists.
1312         * GNUmakefile.am: Update source lists.
1313         * platform/graphics/cairo/FontCacheCairo.cpp: Removed.
1314         * platform/graphics/cairo/FontCacheFreeType.cpp: Added.
1315         (WebCore::FontCache::platformInit):
1316         (WebCore::FontCache::getFontDataForCharacters):
1317         (WebCore::FontCache::getSimilarFontPlatformData):
1318         (WebCore::FontCache::getLastResortFallbackFont):
1319         (WebCore::FontCache::getTraitsInFamily):
1320         (WebCore::isWellKnownFontName):
1321         (WebCore::FontCache::createFontPlatformData):
1322         * platform/graphics/cairo/FontPlatformData.h:
1323         * platform/graphics/cairo/FontPlatformDataFreeType.cpp: Renamed from WebCore/platform/graphics/cairo/FontPlatformDataCairo.cpp.
1324         (WebCore::FontPlatformData::FontPlatformData):
1325         (WebCore::FontPlatformData::operator=):
1326         (WebCore::FontPlatformData::init):
1327         (WebCore::FontPlatformData::~FontPlatformData):
1328         (WebCore::FontPlatformData::isFixedPitch):
1329         (WebCore::FontPlatformData::operator==):
1330         (WebCore::FontPlatformData::description):
1331         * platform/graphics/cairo/FontPlatformDataFreeType.h: Added.
1332         (WebCore::FontPlatformData::FontPlatformData):
1333         (WebCore::FontPlatformData::size):
1334         (WebCore::FontPlatformData::setSize):
1335         (WebCore::FontPlatformData::syntheticBold):
1336         (WebCore::FontPlatformData::syntheticOblique):
1337         (WebCore::FontPlatformData::scaledFont):
1338         (WebCore::FontPlatformData::hash):
1339         (WebCore::FontPlatformData::isHashTableDeletedValue):
1340         (WebCore::FontPlatformData::hashTableDeletedFontValue):
1341         * platform/graphics/gtk/FontCachePango.cpp: Added.
1342         (WebCore::FontCache::platformInit):
1343         (WebCore::FontCache::getFontDataForCharacters):
1344         (WebCore::FontCache::getSimilarFontPlatformData):
1345         (WebCore::FontCache::getLastResortFallbackFont):
1346         (WebCore::FontCache::getTraitsInFamily):
1347         (WebCore::FontCache::createFontPlatformData):
1348         * platform/graphics/gtk/FontPlatformDataPango.h: Added.
1349         (WebCore::FontPlatformData::FontPlatformData):
1350         (WebCore::FontPlatformData::size):
1351         (WebCore::FontPlatformData::setSize):
1352         (WebCore::FontPlatformData::syntheticBold):
1353         (WebCore::FontPlatformData::syntheticOblique):
1354         (WebCore::FontPlatformData::scaledFont):
1355         (WebCore::FontPlatformData::hash):
1356         (WebCore::FontPlatformData::isHashTableDeletedValue):
1357         (WebCore::FontPlatformData::hashTableDeletedFontValue):
1358         * platform/graphics/win/FontPlatformDataCairoWin.h: Added.
1359         (WebCore::FontPlatformData::FontPlatformData):
1360         (WebCore::FontPlatformData::hfont):
1361         (WebCore::FontPlatformData::useGDI):
1362         (WebCore::FontPlatformData::fontFace):
1363         (WebCore::FontPlatformData::size):
1364         (WebCore::FontPlatformData::setSize):
1365         (WebCore::FontPlatformData::syntheticBold):
1366         (WebCore::FontPlatformData::syntheticOblique):
1367         (WebCore::FontPlatformData::scaledFont):
1368         (WebCore::FontPlatformData::hash):
1369         (WebCore::FontPlatformData::isHashTableDeletedValue):
1370
1371 2010-09-15  Chris Fleizach  <cfleizach@apple.com>
1372
1373         Reviewed by Simon Fraser.
1374
1375         AX: when text is auto-truncated, accessibility bounds are wrong
1376         https://bugs.webkit.org/show_bug.cgi?id=45793
1377
1378         Allow accessibility to retrieve the absoluteQuads of a text node that
1379         clips to the ellipsis.
1380         
1381         Test: accessibility/ellipsis-text.html
1382
1383         * accessibility/AccessibilityRenderObject.cpp:
1384         (WebCore::AccessibilityRenderObject::boundingBoxRect):
1385         * rendering/RenderText.cpp:
1386         (WebCore::ellipsisRectForBox):
1387             Make a common method to retrieve the ellipsis rect.
1388         (WebCore::RenderText::absoluteQuads):
1389             Default into the absoluteQuads method that allows for ellipsis clipping.
1390         (WebCore::RenderText::selectionRectForRepaint):
1391             Use the common method for retrieving the ellipsis.
1392         * rendering/RenderText.h:
1393
1394 2010-09-15  Ariya Hidayat  <ariya@sencha.com>
1395
1396         [Qt] Improve the speed of blur shadow
1397         https://bugs.webkit.org/show_bug.cgi?id=44222
1398
1399         Rewrite the shadow blur function with loop unrolls and sliding step
1400         unification for both horizontal and vertical directions.
1401         This gives significant performance improvement on most cases.
1402
1403         * platform/graphics/qt/ContextShadow.cpp:
1404         (WebCore::shadowBlur):
1405
1406 2010-09-14  Pavel Feldman  <pfeldman@chromium.org>
1407
1408         Reviewed by Yury Semikhatsky.
1409
1410         (Take 2). Web Inspector: Provide network-based load timing.
1411         Before this change, inspector used timers taken from
1412         within WebCore notifications (that are by definition
1413         synchronous and serialized). As a result, timing was
1414         affected by the routines running on the main thread
1415         (JavaScript and such).
1416         https://bugs.webkit.org/show_bug.cgi?id=45664
1417
1418         * inspector/InspectorController.cpp:
1419         (WebCore::InspectorController::willSendRequest):
1420         (WebCore::InspectorController::didFinishLoading):
1421         (WebCore::InspectorController::didFailLoading):
1422         * inspector/InspectorController.h:
1423         * inspector/InspectorResource.cpp:
1424         (WebCore::InspectorResource::endTiming):
1425         * inspector/InspectorResource.h:
1426         * loader/PingLoader.h:
1427         (WebCore::PingLoader::didFinishLoading):
1428         * loader/ResourceLoadNotifier.cpp:
1429         (WebCore::ResourceLoadNotifier::dispatchDidFinishLoading):
1430         * loader/ResourceLoader.cpp:
1431         (WebCore::ResourceLoader::didFinishLoading):
1432         * loader/ResourceLoader.h:
1433         * loader/appcache/ApplicationCacheGroup.cpp:
1434         (WebCore::ApplicationCacheGroup::didFinishLoading):
1435         * loader/appcache/ApplicationCacheGroup.h:
1436         * loader/icon/IconFetcher.cpp:
1437         (WebCore::IconFetcher::didFinishLoading):
1438         * loader/icon/IconFetcher.h:
1439         * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
1440         (StreamingClient::didFinishLoading):
1441         * platform/network/BlobResourceHandle.cpp:
1442         (WebCore::BlobResourceHandle::notifyFinish):
1443         * platform/network/ResourceHandleClient.h:
1444         (WebCore::ResourceHandleClient::didFinishLoading):
1445         * platform/network/ResourceLoadTiming.h:
1446         (WebCore::ResourceLoadTiming::deepCopy):
1447         (WebCore::ResourceLoadTiming::operator==):
1448         (WebCore::ResourceLoadTiming::ResourceLoadTiming):
1449         * platform/network/cf/ResourceHandleCFNet.cpp:
1450         (WebCore::didFinishLoading):
1451         * platform/network/curl/ResourceHandleCurl.cpp:
1452         (WebCore::WebCoreSynchronousLoader::didFinishLoading):
1453         * platform/network/curl/ResourceHandleManager.cpp:
1454         (WebCore::ResourceHandleManager::downloadTimerCallback):
1455         (WebCore::parseDataUrl):
1456         * platform/network/mac/ResourceHandleMac.mm:
1457         (-[WebCoreResourceHandleAsDelegate connectionDidFinishLoading:]):
1458         (WebCoreSynchronousLoaderClient::didFinishLoading):
1459         * platform/network/qt/QNetworkReplyHandler.cpp:
1460         (WebCore::QNetworkReplyHandler::finish):
1461         * platform/network/qt/ResourceHandleQt.cpp:
1462         (WebCore::WebCoreSynchronousLoader::didFinishLoading):
1463         * platform/network/soup/ResourceHandleSoup.cpp:
1464         (WebCore::WebCoreSynchronousLoader::didFinishLoading):
1465         (WebCore::WebCoreSynchronousLoader::didFail):
1466         * platform/network/win/ResourceHandleWin.cpp:
1467         (WebCore::WebCoreSynchronousLoader::didFinishLoading):
1468         (WebCore::ResourceHandle::onRequestComplete):
1469         (WebCore::ResourceHandle::fileLoadTimer):
1470         (WebCore::ResourceHandle::cancel):
1471
1472 2010-09-15  Sheriff Bot  <webkit.review.bot@gmail.com>
1473
1474         Unreviewed, rolling out r67551.
1475         http://trac.webkit.org/changeset/67551
1476         https://bugs.webkit.org/show_bug.cgi?id=45816
1477
1478         "Plugin tests fail" (Requested by yurys on #webkit).
1479
1480         * inspector/InspectorController.cpp:
1481         (WebCore::InspectorController::willSendRequest):
1482         (WebCore::InspectorController::didFinishLoading):
1483         (WebCore::InspectorController::didFailLoading):
1484         (WebCore::InspectorController::didCloseWebSocket):
1485         * inspector/InspectorController.h:
1486         * inspector/InspectorResource.cpp:
1487         (WebCore::InspectorResource::endTiming):
1488         * inspector/InspectorResource.h:
1489         * loader/DocumentLoader.cpp:
1490         (WebCore::DocumentLoader::substituteResourceDeliveryTimerFired):
1491         * loader/MainResourceLoader.cpp:
1492         (WebCore::MainResourceLoader::continueAfterContentPolicy):
1493         (WebCore::MainResourceLoader::didFinishLoading):
1494         * loader/MainResourceLoader.h:
1495         * loader/NetscapePlugInStreamLoader.cpp:
1496         (WebCore::NetscapePlugInStreamLoader::didFinishLoading):
1497         * loader/PingLoader.h:
1498         (WebCore::PingLoader::didFinishLoading):
1499         * loader/ResourceLoadNotifier.cpp:
1500         (WebCore::ResourceLoadNotifier::didFinishLoad):
1501         (WebCore::ResourceLoadNotifier::dispatchDidFinishLoading):
1502         (WebCore::ResourceLoadNotifier::sendRemainingDelegateMessages):
1503         * loader/ResourceLoadNotifier.h:
1504         * loader/ResourceLoader.cpp:
1505         (WebCore::ResourceLoader::didFinishLoading):
1506         (WebCore::ResourceLoader::didFinishLoadingOnePart):
1507         * loader/ResourceLoader.h:
1508         * loader/SubresourceLoader.cpp:
1509         (WebCore::SubresourceLoader::didReceiveResponse):
1510         (WebCore::SubresourceLoader::didFinishLoading):
1511         * loader/SubresourceLoader.h:
1512         * loader/appcache/ApplicationCacheGroup.cpp:
1513         (WebCore::ApplicationCacheGroup::didFinishLoading):
1514         * loader/appcache/ApplicationCacheGroup.h:
1515         * loader/icon/IconFetcher.cpp:
1516         (WebCore::IconFetcher::didFinishLoading):
1517         * loader/icon/IconFetcher.h:
1518         * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
1519         (StreamingClient::didFinishLoading):
1520         * platform/network/BlobResourceHandle.cpp:
1521         (WebCore::BlobResourceHandle::notifyFinish):
1522         * platform/network/ResourceHandleClient.h:
1523         (WebCore::ResourceHandleClient::didFinishLoading):
1524         * platform/network/cf/ResourceHandleCFNet.cpp:
1525         (WebCore::didFinishLoading):
1526         (WebCore::WebCoreSynchronousLoaderClient::didFinishLoading):
1527         * platform/network/curl/ResourceHandleCurl.cpp:
1528         (WebCore::WebCoreSynchronousLoader::didFinishLoading):
1529         * platform/network/curl/ResourceHandleManager.cpp:
1530         (WebCore::ResourceHandleManager::downloadTimerCallback):
1531         (WebCore::parseDataUrl):
1532         * platform/network/mac/ResourceHandleMac.mm:
1533         (-[WebCoreResourceHandleAsDelegate connectionDidFinishLoading:]):
1534         (WebCoreSynchronousLoaderClient::didFinishLoading):
1535         * platform/network/qt/QNetworkReplyHandler.cpp:
1536         (WebCore::QNetworkReplyHandler::finish):
1537         * platform/network/qt/ResourceHandleQt.cpp:
1538         (WebCore::WebCoreSynchronousLoader::didFinishLoading):
1539         * platform/network/soup/ResourceHandleSoup.cpp:
1540         (WebCore::WebCoreSynchronousLoader::didFinishLoading):
1541         (WebCore::WebCoreSynchronousLoader::didFail):
1542         (WebCore::finishedCallback):
1543         (WebCore::parseDataUrl):
1544         * platform/network/win/ResourceHandleWin.cpp:
1545         (WebCore::WebCoreSynchronousLoader::didFinishLoading):
1546         (WebCore::ResourceHandle::onRequestComplete):
1547         (WebCore::ResourceHandle::fileLoadTimer):
1548         (WebCore::ResourceHandle::cancel):
1549
1550 2010-09-14  Pavel Feldman  <pfeldman@chromium.org>
1551
1552         Reviewed by Yury Semikhatsky.
1553
1554         Web Inspector: Provide network-based load timing.
1555         Before this change, inspector used timers taken from
1556         within WebCore notifications (that are by definition
1557         synchronous and serialized). As a result, timing was
1558         affected by the routines running on the main thread
1559         (JavaScript and such).
1560         https://bugs.webkit.org/show_bug.cgi?id=45664
1561
1562         * inspector/InspectorController.cpp:
1563         (WebCore::InspectorController::willSendRequest):
1564         (WebCore::InspectorController::didFinishLoading):
1565         (WebCore::InspectorController::didFailLoading):
1566         * inspector/InspectorController.h:
1567         * inspector/InspectorResource.cpp:
1568         (WebCore::InspectorResource::endTiming):
1569         * inspector/InspectorResource.h:
1570         * loader/PingLoader.h:
1571         (WebCore::PingLoader::didFinishLoading):
1572         * loader/ResourceLoadNotifier.cpp:
1573         (WebCore::ResourceLoadNotifier::dispatchDidFinishLoading):
1574         * loader/ResourceLoader.cpp:
1575         (WebCore::ResourceLoader::didFinishLoading):
1576         * loader/ResourceLoader.h:
1577         * loader/appcache/ApplicationCacheGroup.cpp:
1578         (WebCore::ApplicationCacheGroup::didFinishLoading):
1579         * loader/appcache/ApplicationCacheGroup.h:
1580         * loader/icon/IconFetcher.cpp:
1581         (WebCore::IconFetcher::didFinishLoading):
1582         * loader/icon/IconFetcher.h:
1583         * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
1584         (StreamingClient::didFinishLoading):
1585         * platform/network/BlobResourceHandle.cpp:
1586         (WebCore::BlobResourceHandle::notifyFinish):
1587         * platform/network/ResourceHandleClient.h:
1588         (WebCore::ResourceHandleClient::didFinishLoading):
1589         * platform/network/ResourceLoadTiming.h:
1590         (WebCore::ResourceLoadTiming::deepCopy):
1591         (WebCore::ResourceLoadTiming::operator==):
1592         (WebCore::ResourceLoadTiming::ResourceLoadTiming):
1593         * platform/network/cf/ResourceHandleCFNet.cpp:
1594         (WebCore::didFinishLoading):
1595         * platform/network/curl/ResourceHandleCurl.cpp:
1596         (WebCore::WebCoreSynchronousLoader::didFinishLoading):
1597         * platform/network/curl/ResourceHandleManager.cpp:
1598         (WebCore::ResourceHandleManager::downloadTimerCallback):
1599         (WebCore::parseDataUrl):
1600         * platform/network/mac/ResourceHandleMac.mm:
1601         (-[WebCoreResourceHandleAsDelegate connectionDidFinishLoading:]):
1602         (WebCoreSynchronousLoaderClient::didFinishLoading):
1603         * platform/network/qt/QNetworkReplyHandler.cpp:
1604         (WebCore::QNetworkReplyHandler::finish):
1605         * platform/network/qt/ResourceHandleQt.cpp:
1606         (WebCore::WebCoreSynchronousLoader::didFinishLoading):
1607         * platform/network/soup/ResourceHandleSoup.cpp:
1608         (WebCore::WebCoreSynchronousLoader::didFinishLoading):
1609         (WebCore::WebCoreSynchronousLoader::didFail):
1610         * platform/network/win/ResourceHandleWin.cpp:
1611         (WebCore::WebCoreSynchronousLoader::didFinishLoading):
1612         (WebCore::ResourceHandle::onRequestComplete):
1613         (WebCore::ResourceHandle::fileLoadTimer):
1614         (WebCore::ResourceHandle::cancel):
1615
1616 2010-09-14  Ilya Tikhonovsky  <loislo@chromium.org>
1617
1618         Reviewed by Yury Semikhatsky.
1619
1620         WebInspector: small refactoring for monitorXHR backend property.
1621
1622         Our Inspector API is quite big and can be simplified a bit.
1623         As example for single backend property like monitoringXHR we
1624         have 4 functions in the API. Two functions for frontend
1625         enableMonitoringXHR/disableMonitoringXHR and
1626         two functions for backend monitoringXHRWasEnabled and
1627         monitoringXHRWasDisabled. These functions can be replaced by
1628         one setMonitoringXHR with one 'in' and one 'out' argument.
1629         The initial state of the flag can be gathered from backend
1630         with help of getSettings call where additional section was
1631         added for backend state information.
1632
1633         https://bugs.webkit.org/show_bug.cgi?id=45759
1634
1635         * inspector/Inspector.idl:
1636         * inspector/InspectorController.cpp:
1637         * inspector/InspectorController.h:
1638         * inspector/front-end/ConsoleView.js:
1639         * inspector/front-end/Settings.js:
1640         * inspector/front-end/inspector.js:
1641
1642 2010-09-15  Pavel Feldman  <pfeldman@chromium.org>
1643
1644         Reviewed by Yury Semikhatsky.
1645
1646         Web Inspector: Multiline console does not work on Windows / Linux.
1647         https://bugs.webkit.org/show_bug.cgi?id=45807
1648
1649         * inspector/front-end/ConsoleView.js:
1650
1651 2010-09-15  Renata Hodovan  <reni@inf.u-szeged.hu>
1652
1653         Reviewed by Dirk Schulze.
1654
1655         SVGFETurbulenceElement doesn't support dynamic invalidation, when attributes change.
1656         A typo (noStich instead of nostitch) is also fixed in this patch.
1657         https://bugs.webkit.org/show_bug.cgi?id=45809
1658
1659         Tests: svg/dynamic-updates/SVGFETurbulenceElement-dom-baseFrequency-attr.html
1660                svg/dynamic-updates/SVGFETurbulenceElement-dom-numOctaves-attr.html
1661                svg/dynamic-updates/SVGFETurbulenceElement-dom-seed-attr.html
1662                svg/dynamic-updates/SVGFETurbulenceElement-dom-stitchTiles-attr.html
1663                svg/dynamic-updates/SVGFETurbulenceElement-dom-type-attr.html
1664                svg/dynamic-updates/SVGFETurbulenceElement-svgdom-baseFrequency-prop.html
1665                svg/dynamic-updates/SVGFETurbulenceElement-svgdom-numOctaves-prop.html
1666                svg/dynamic-updates/SVGFETurbulenceElement-svgdom-seed-prop.html
1667                svg/dynamic-updates/SVGFETurbulenceElement-svgdom-stitchTiles-prop.html
1668                svg/dynamic-updates/SVGFETurbulenceElement-svgdom-type-prop.html
1669
1670         * svg/SVGFETurbulenceElement.cpp:
1671         (WebCore::SVGFETurbulenceElement::parseMappedAttribute):
1672         (WebCore::SVGFETurbulenceElement::svgAttributeChanged):
1673         * svg/SVGFETurbulenceElement.h:
1674
1675 2010-09-15  Patrick Gansterer  <paroga@paroga.com>
1676
1677         Reviewed by Kenneth Rohde Christiansen.
1678
1679         [WINCE] Avoid memcpy in TextCodecWinCE::encode
1680         https://bugs.webkit.org/show_bug.cgi?id=45468
1681
1682         * platform/text/wince/TextCodecWinCE.cpp:
1683         (WebCore::TextCodecWinCE::encode):
1684
1685 2010-09-14  Kinuko Yasuda  <kinuko@chromium.org>
1686
1687         Reviewed by Dumitru Daniliuc.
1688
1689         Add custom binding code for DirectoryEntry to allow JSON parameters for Flags
1690         https://bugs.webkit.org/show_bug.cgi?id=45724
1691
1692         No new tests; tests will be added later.
1693
1694         * CMakeLists.txt:
1695         * GNUmakefile.am:
1696         * WebCore.gypi:
1697         * WebCore.pro:
1698         * WebCore.vcproj/WebCore.vcproj:
1699         * WebCore.xcodeproj/project.pbxproj:
1700         * bindings/js/JSDirectoryEntryCustom.cpp: Added.
1701         (WebCore::JSDirectoryEntry::getFile):
1702         (WebCore::JSDirectoryEntry::getDirectory):
1703         * bindings/v8/custom/V8DirectoryEntryCustom.cpp: Added.
1704         (WebCore::V8DirectoryEntry::getDirectoryCallback):
1705         (WebCore::V8DirectoryEntry::getFileCallback):
1706         * fileapi/DirectoryEntry.h:
1707         * fileapi/DirectoryEntry.idl:
1708
1709 2010-09-14  Jia Pu  <jpu@apple.com>
1710         
1711         Reviewed by Dan Bernstein.
1712
1713         Only intercept ESC key press when autocorrection UI is visible.
1714         https://bugs.webkit.org/show_bug.cgi?id=45071
1715
1716         Only intercept ESC key when autocorrection panel is shown. Otherwise pressing
1717         ESC will cancel current loading like usual.
1718
1719         * editing/Editor.cpp:
1720         (WebCore::Editor::isShowingCorrectionPanel): Query editor client whether autocorrection
1721           panel is shown.
1722
1723         * editing/Editor.h: Added declaration of isShowingCorrectionPanel().
1724
1725         * editing/EditorCommand.cpp:
1726         (WebCore::supportedDismissCorrectionPanel): Only support executeCancelOperation()
1727           when autocorrection panel is shown.
1728         (WebCore::createCommandMap): Replaced isSupported function pointer for
1729           executeCancelOperation() command with supportedDismissCorrectionPanel().
1730
1731         * loader/EmptyClients.h:
1732         (WebCore::EmptyEditorClient::isShowingCorrectionPanel): Dummy implementation of
1733           new member method declared in base class.
1734
1735         * page/EditorClient.h: Declared new member method isShowingCorrectionPanel().
1736
1737 2010-09-14  Sheriff Bot  <webkit.review.bot@gmail.com>
1738
1739         Unreviewed, rolling out r67503.
1740         http://trac.webkit.org/changeset/67503
1741         https://bugs.webkit.org/show_bug.cgi?id=45802
1742
1743         This patch broke GTK builds (Requested by jianli_ on #webkit).
1744
1745         * fileapi/ThreadableBlobRegistry.cpp:
1746         (WebCore::BlobRegistryContext::BlobRegistryContext):
1747         * loader/ResourceLoader.cpp:
1748         (WebCore::ResourceLoader::resourceData):
1749         (WebCore::ResourceLoader::addData):
1750         * platform/network/BlobResourceHandle.cpp:
1751         * platform/network/BlobResourceHandle.h:
1752         * platform/network/ResourceHandle.h:
1753         * platform/network/mac/ResourceHandleMac.mm:
1754         (WebCore::ResourceHandle::bufferedData):
1755
1756 2010-09-14  Luiz Agostini  <luiz.agostini@openbossa.org>
1757
1758         Reviewed by Kenneth Rohde Christiansen.
1759
1760         [Qt] Zoom factor for checkboxes and radios.
1761         https://bugs.webkit.org/show_bug.cgi?id=45776
1762
1763         RenderThemeQt does not consider RenderStyle::effectiveZoom when calculating sizes of
1764         checkboxes and radios.
1765
1766         Even with this change the used QStyle must support different sizes for radios and checkboxes.
1767         QWindowStyle and QMacStyle, for example, do not.
1768
1769         * platform/qt/RenderThemeQt.cpp:
1770         (WebCore::RenderThemeQt::computeSizeBasedOnStyle):
1771
1772 2010-09-14  Chris Rogers  <crogers@google.com>
1773
1774         Reviewed by Kenneth Russell.
1775
1776         audio engine: add AudioFileReader files (Mac implementation)
1777         https://bugs.webkit.org/show_bug.cgi?id=36475
1778
1779         No new tests since audio API is not yet implemented.
1780
1781         * platform/audio/AudioFileReader.h: Added.
1782         * platform/audio/mac/AudioFileReaderMac.cpp: Added.
1783         (WebCore::createAudioBufferList):
1784         (WebCore::destroyAudioBufferList):
1785         (WebCore::AudioFileReader::AudioFileReader):
1786         (WebCore::AudioFileReader::~AudioFileReader):
1787         (WebCore::AudioFileReader::readProc):
1788         (WebCore::AudioFileReader::getSizeProc):
1789         (WebCore::AudioFileReader::createBus):
1790         (WebCore::createBusFromAudioFile):
1791         (WebCore::createBusFromInMemoryAudioFile):
1792         * platform/audio/mac/AudioFileReaderMac.h: Added.
1793         (WebCore::AudioFileReader::data):
1794         (WebCore::AudioFileReader::dataSize):
1795
1796 2010-09-14  Simon Fraser  <simon.fraser@apple.com>
1797
1798         Reviewed by Oliver Hunt.
1799
1800         Drawing an image outside the bounds of a canvas still causes repaints
1801         https://bugs.webkit.org/show_bug.cgi?id=45792
1802         
1803         Some canvas examples, such as http://www.phoboslab.org/biolab/, draw
1804         images outide the bounds of the canvas. If the canvas already had a
1805         non-empty m_dirtyRect, such draws would cause us to do a repaint of
1806         m_dirtyRect again (which goes through the platform-specific invalidation
1807         machinery, which can be slow).
1808         
1809         Optimize this by avoiding extra invalidation when the dirty rect
1810         does not intersect the canvas bounds.
1811         
1812         Not testable because this avoids additional repaints of m_dirtyRect, but
1813         m_dirtyRect has to be non-empty for this to benefit.
1814
1815         * html/HTMLCanvasElement.cpp:
1816         (WebCore::HTMLCanvasElement::didDraw):
1817
1818 2010-09-14  Yury Semikhatsky  <yurys@chromium.org>
1819
1820         Reviewed by Pavel Feldman.
1821
1822         Web Inspector: Links from "Profiles" don't lead to "Scripts"
1823         https://bugs.webkit.org/show_bug.cgi?id=45756
1824
1825         * inspector/front-end/ProfileDataGridTree.js:
1826         (WebInspector.ProfileDataGridNode.prototype.createCell): use standard routine to create resource link
1827         * inspector/front-end/inspector.js: code cleanup: removed no-op method
1828         (WebInspector.addMainEventListeners):
1829
1830 2010-09-14  Patrick Gansterer  <paroga@paroga.com>
1831
1832         Reviewed by Adam Roben.
1833
1834         [WINCE] Use codePage instead of TextEncoding
1835         https://bugs.webkit.org/show_bug.cgi?id=45466
1836
1837         Use codePage as member variable to avoid repeated lookup.
1838
1839         * platform/text/wince/TextCodecWinCE.cpp:
1840         (WebCore::newTextCodecWinCE):
1841         (WebCore::TextCodecWinCE::TextCodecWinCE):
1842         (WebCore::decode):
1843         (WebCore::TextCodecWinCE::decode):
1844         (WebCore::TextCodecWinCE::encode):
1845         * platform/text/wince/TextCodecWinCE.h:
1846
1847 2010-09-14  Adam Barth  <abarth@webkit.org>
1848
1849         Attempted Chromium build fix.  The compiler can't tell that
1850         ASSERT_NOT_REACHED is not reached and so it demands an initialization
1851         of this variable.
1852
1853         * html/HTMLFontElement.cpp:
1854         (WebCore::HTMLFontElement::parseMappedAttribute):
1855
1856 2010-09-14  Andreas Kling  <andreas.kling@nokia.com>
1857
1858         Reviewed by Ariya Hidayat.
1859
1860         [Qt] Wheeling over windowed plugins sometimes cause them to disappear
1861
1862         * plugins/qt/PluginContainerQt.cpp:
1863         (PluginClientWrapper::x11Event): Pass on captured mouse wheel events
1864         to the effective native window rather than the grandparent widget.
1865         We were calling QWidget::winId() which caused a new X11 window to be
1866         created for the grandparent widget and generally mess things up.
1867
1868 2010-09-14  Kevin Ollivier  <kevino@theolliviers.com>
1869
1870         [wx] Build fix after move of selectedText() method.
1871
1872         * platform/wx/PasteboardWx.cpp:
1873         (WebCore::Pasteboard::writeSelection):
1874
1875 2010-09-14  Adam Barth  <abarth@webkit.org>
1876
1877         Reviewed by Darin Adler.
1878
1879         Handle <font size=0> as <font size=1> like any other browser
1880         https://bugs.webkit.org/show_bug.cgi?id=39148
1881
1882         Update font size parser to match HTML5 spec.  The main difference here
1883         is the handling of 0, which now maps to 1 instead of 3.
1884
1885         * html/HTMLFontElement.cpp:
1886         (WebCore::parseFontSize):
1887         (WebCore::HTMLFontElement::cssValueFromFontSizeNumber):
1888
1889 2010-09-14  Adam Barth  <abarth@webkit.org>
1890
1891         Reviewed by Darin Adler.
1892
1893         document.lastModified gives no output if the response doesn't have a Last-Modified header
1894         https://bugs.webkit.org/show_bug.cgi?id=8475
1895
1896         Implement document.lastModified as per HTML5.
1897
1898         Tests: http/tests/misc/last-modified-parsing.html
1899                http/tests/misc/no-last-modified.html
1900
1901         * dom/Document.cpp:
1902         (WebCore::Document::lastModified):
1903
1904 2010-09-14  Adam Barth  <abarth@webkit.org>
1905
1906         Reviewed by Eric Seidel.
1907
1908         `document.compatMode` is `undefined` when using `application/xhtml+xml`
1909         https://bugs.webkit.org/show_bug.cgi?id=44422
1910
1911         Moving the compatMode IDL attribute from HTMLDocument.idl to
1912         Document.idl fixes this bug and improve compliance with HTML5.
1913
1914         Test: fast/parser/compatMode-in-xhtml.xhtml
1915
1916         * dom/Document.cpp:
1917         (WebCore::Document::compatMode):
1918         * dom/Document.h:
1919         * dom/Document.idl:
1920         * html/HTMLDocument.cpp:
1921         * html/HTMLDocument.h:
1922
1923 2010-09-14  Adam Barth  <abarth@webkit.org>
1924
1925         Reviewed by Nate Chapin.
1926
1927         V8 security checks don't account for shadowing named frames
1928         https://bugs.webkit.org/show_bug.cgi?id=45700
1929
1930         Test: http/tests/security/xss-DENIED-frame-name.html
1931
1932         * bindings/v8/custom/V8DOMWindowCustom.cpp:
1933         (WebCore::V8DOMWindow::namedSecurityCheck):
1934             - If the property name exists on the object, it will shadow the
1935               named property lookup on the window object.  That means we need
1936               to block access if there's shadowing going on.
1937         (WebCore::V8DOMWindow::indexedSecurityCheck):
1938             - I made the corresponding change to this function too, but I don't
1939               think this one can actually be triggered because JavaScript
1940               variable names need to start with a non-digit.
1941
1942 2010-09-14  Adam Barth  <abarth@webkit.org>
1943
1944         Reviewed by Eric Seidel.
1945
1946         incorrect tabindex parsing
1947         https://bugs.webkit.org/show_bug.cgi?id=21076
1948
1949         Updated our integer parsing for tabindex to use the algorithm from the
1950         HTML5 spec.
1951
1952         Test: fast/parser/tabindex-parsing-2.html
1953
1954         * html/HTMLElement.cpp:
1955         (WebCore::HTMLElement::parseMappedAttribute):
1956         * html/parser/HTMLParserIdioms.cpp:
1957         (WebCore::parseHTMLInteger):
1958         * html/parser/HTMLParserIdioms.h:
1959
1960 2010-09-14  Brent Fulgham  <bfulgham@webkit.org>
1961
1962         Build correction, no review.
1963
1964         * WebCore.vcproj/WebCore.vcproj: Exclude OwnPtrCairo.cpp from
1965         non-Cairo based builds.
1966
1967 2010-09-14  Jian Li  <jianli@chromium.org>
1968
1969         Reviewed by David Levin.
1970
1971         fast/files/apply-blob-url-to-img.html timeout on Leopard
1972         https://bugs.webkit.org/show_bug.cgi?id=45576
1973
1974         The failure on Leopard is caused by the static method
1975         ResourceHandle::supportsBufferedData that returns true to indicate that
1976         the buffered data support is enabled for blob resource. However,
1977         BlobResourceHandle does not support this and we need to override this.
1978
1979         The fix is to change supportsBufferedData method from static to virtual
1980         so that we can override the default behavior in BlobResourceHandle.
1981
1982         * fileapi/ThreadableBlobRegistry.cpp: Copy BlobData to make it cross-thread. 
1983         (WebCore::BlobRegistryContext::BlobRegistryContext):
1984         * loader/ResourceLoader.cpp:
1985         (WebCore::ResourceLoader::resourceData):
1986         (WebCore::ResourceLoader::addData):
1987         * platform/network/BlobResourceHandle.cpp:
1988         (WebCore::BlobResourceHandle::supportsBufferedData): Override the default
1989         behavior.
1990         * platform/network/BlobResourceHandle.h:
1991         * platform/network/ResourceHandle.h: Made supportsBufferedData virtual.
1992         * platform/network/mac/ResourceHandleMac.mm:
1993         (WebCore::ResourceHandle::bufferedData):
1994
1995 2010-09-14  Brent Fulgham  <bfulgham@webkit.org>
1996
1997         Build correction, no review.
1998
1999         * WebCore.vcproj/WebCore.vcproj: Add missing OwnPtrCairo.cpp
2000           implementation file.
2001         * platform/graphics/cairo/OwnPtrCairo.cpp: Add missing include
2002           for <cairo.h>
2003
2004 2010-09-14  Chris Guillory   <chris.guillory@google.com>
2005
2006         Reviewed by Chris Fleizach.
2007
2008         Send all accessibility notifications to Chromium.
2009         https://bugs.webkit.org/show_bug.cgi?id=45156
2010         
2011         Use postAccessibilityNotification to pass accessibility notifications
2012         to chromium.
2013
2014         Tests: platform/chromium/accessibility/post-notification-ActiveDescendantChanged.html
2015                platform/chromium/accessibility/post-notification-CheckedStateChanged.html
2016                platform/chromium/accessibility/post-notification-ChildrenChanged.html
2017                platform/chromium/accessibility/post-notification-FocusedUIElementChanged.html
2018                platform/chromium/accessibility/post-notification-LayoutComplete.html
2019                platform/chromium/accessibility/post-notification-LiveRegionChanged.html
2020                platform/chromium/accessibility/post-notification-LoadComplete.html
2021                platform/chromium/accessibility/post-notification-MenuListValueChanged.html
2022                platform/chromium/accessibility/post-notification-RowCollapsed.html
2023                platform/chromium/accessibility/post-notification-RowCountChanged.html
2024                platform/chromium/accessibility/post-notification-RowExpanded.html
2025                platform/chromium/accessibility/post-notification-ScrolledToAnchor.html
2026                platform/chromium/accessibility/post-notification-SelectedChildrenChanged.html
2027                platform/chromium/accessibility/post-notification-SelectedTextChanged.html
2028                platform/chromium/accessibility/post-notification-ValueChanged.html
2029
2030         * accessibility/chromium/AXObjectCacheChromium.cpp:
2031         (WebCore::AXObjectCache::postPlatformNotification):
2032         * page/chromium/ChromeClientChromium.h:
2033
2034 2010-09-14  Darin Adler  <darin@apple.com>
2035
2036         Reviewed by Geoffrey Garen.
2037
2038         Hang processing href attribute containing a million slashes
2039         https://bugs.webkit.org/show_bug.cgi?id=45767
2040
2041         Test: fast/css/visited-link-hang.html
2042
2043         * platform/LinkHash.cpp:
2044         (WebCore::findSlashDotDotSlash): Added a start position argument and
2045         changed types to use size_t consistently instead of a mix.
2046         (WebCore::findSlashSlash): Ditto.
2047         (WebCore::findSlashDotSlash): Ditto.
2048         (WebCore::squeezeOutNullCharacters): Added.
2049         (WebCore::cleanSlashDotDotSlashes): Added. Factored out part
2050         of cleanPath (see below).
2051         (WebCore::mergeDoubleSlashes): Ditto.
2052         (WebCore::cleanSlashDotSlashes): Ditto.
2053         (WebCore::cleanPath): Changed algorithm to not remove as we go to
2054         avoid N^2 behavior; instead replace with null characters and then
2055         do a squeeze operation after the fact. Also moved the body of the
2056         function out of line since we normally don't have to do any cleaning.
2057         This whole thing should go at some point -- it's not the right
2058         algorithm -- but this should eliminate the performance problems
2059         without changing behavior.
2060
2061 2010-09-14  Nico Weber  <thakis@chromium.org>
2062
2063         Reviewed by Kenneth Russell.
2064
2065         [chromium]: On Mac, let image layer data row order match skia.
2066         https://bugs.webkit.org/show_bug.cgi?id=45400
2067
2068         Make CoreGraphics texture row order match skia's row order, remove all
2069         code that worked around this difference. This also fixes a problem where
2070         image layers would be drawn upside down.
2071
2072         Covered by existing layout tests, but we don't run these with
2073         compositing yet.
2074
2075         * platform/graphics/chromium/ContentLayerChromium.cpp:
2076         (WebCore::ContentLayerChromium::SharedValues::SharedValues):
2077         (WebCore::ContentLayerChromium::updateContents):
2078         (WebCore::ContentLayerChromium::updateTextureRect):
2079         * platform/graphics/chromium/LayerRendererChromium.cpp:
2080         (WebCore::LayerRendererChromium::setRootLayerCanvasSize):
2081         (WebCore::LayerRendererChromium::drawLayers):
2082
2083 2010-09-14  Ryosuke Niwa  <rniwa@webkit.org>
2084
2085         Reviewed by Tony Chang.
2086
2087         applyInlineStyleToNodeRange does not extend run properly
2088         https://bugs.webkit.org/show_bug.cgi?id=45616
2089
2090         The bug was caused by applyInlineStyleToNodeRange's skipping a node whenever it has children.
2091         Fixed the bug by only skipping a node that contains the past end node, contains non-editable region,
2092         or has a non-editable parent node. Also fixed a bug that applyInlineStyleToNodeRange does not remove
2093         styled elements in a run that are identical to the one added. addInlineStyleIfNeeded now removes
2094         all styled elements in a run using removeStyleFromRunBeforeApplyingStyle before calling addInlineStyleIfNeeded.
2095
2096         Test: editing/style/inline-style-extend-run.html
2097
2098         * editing/ApplyStyleCommand.cpp:
2099         (WebCore::containsNonEditableRegion): Added.
2100         (WebCore::ApplyStyleCommand::applyInlineStyleToNodeRange): See above.
2101         (WebCore::ApplyStyleCommand::removeStyleFromRunBeforeApplyingStyle): Added, see above.
2102         (WebCore::ApplyStyleCommand::removeInlineStyleFromElement): Added support for RemoveAlways.
2103         (WebCore::ApplyStyleCommand::removeImplicitlyStyledElement): Replaced RemoveAttributesAndElements by RemoveIfNeeded.
2104         (WebCore::ApplyStyleCommand::extractInlineStyleToPushDown): Replaced RemoveAttributesAndElements by RemoveIfNeeded.
2105         * editing/ApplyStyleCommand.h:
2106
2107 2010-09-14  Andreas Kling  <andreas.kling@nokia.com>
2108
2109         Reviewed by Kenneth Rohde Christiansen.
2110
2111         [Qt] V8 port: Get inspector up and running
2112         https://bugs.webkit.org/show_bug.cgi?id=45771
2113
2114         * inspector/front-end/WebKit.qrc: Add DebuggerScript.js
2115
2116 2010-09-14  Oliver Hunt  <oliver@apple.com>
2117
2118         PPC Build fix.
2119
2120         * bindings/js/SerializedScriptValue.cpp:
2121         (WebCore::CloneDeserializer::readFile):
2122         (WebCore::CloneDeserializer::readTerminal):
2123
2124 2010-09-14  Kwang Yul Seo  <skyul@company100.net>
2125
2126         Reviewed by Andreas Kling.
2127
2128         [chromium] Remove unused ICU headers
2129         https://bugs.webkit.org/show_bug.cgi?id=45698
2130
2131         Remove unused headers.
2132
2133         * platform/graphics/chromium/FontCacheLinux.cpp:
2134
2135 2010-09-14  Andreas Kling  <andreas.kling@nokia.com>
2136
2137         Reviewed by Antonio Gomes.
2138
2139         [Qt] Numpad Enter key returns keyCode 0 instead of 13
2140         https://bugs.webkit.org/show_bug.cgi?id=45014
2141
2142         Original patch by Jarred Nicholls <jarred.nicholls@gmail.com>
2143
2144         There is a missing case statement in the PlatformKeyboardEventQt.cpp
2145         file to handle the Enter button on the number pad.  Because it is not
2146         handled, the keyCode returned in a JavaScript event is 0 rather than 13.
2147
2148         Test: manual-tests/qt/numpad-enter-key.html
2149
2150         * manual-tests/qt/numpad-enter-key.html: Added.
2151         * platform/qt/PlatformKeyboardEventQt.cpp:
2152         (WebCore::windowsKeyCodeForKeyEvent):
2153
2154 2010-09-14  Evan Martin  <evan@chromium.org>
2155
2156         Reviewed by Darin Fisher.
2157
2158         [chromium] building without debug syms broke after recent refactoring
2159         https://bugs.webkit.org/show_bug.cgi?id=45720
2160
2161         Now that we build WebCore as multiple libraries, we need to adjust the
2162         flags to turn off debug symbols for all of these libraries.
2163
2164         No new tests; should only affect an uncommon build flag.
2165
2166         * WebCore.gyp/WebCore.gyp:
2167
2168 2010-09-14  Tony Chang  <tony@chromium.org>
2169
2170         Unreviewed, fix chromium compile.
2171
2172         * platform/graphics/chromium/ImageLayerChromium.h:
2173
2174 2010-09-14  Nico Weber  <thakis@chromium.org>
2175
2176         Reviewed by Darin Fisher.
2177
2178         [chromium]: crash less in compositor mode on mac
2179         https://bugs.webkit.org/show_bug.cgi?id=45714
2180
2181         The contents image can go away when the dom is updated. Since the
2182         layer tree is updated asynchronously, it needs to ref the native image,
2183         else it will hold on to a stale object.
2184
2185         This still needs to be done for skia, too.
2186
2187         * platform/graphics/chromium/ImageLayerChromium.h:
2188         * platform/graphics/chromium/ImageLayerChromium.cpp:
2189
2190 2010-09-14  Andrey Kosyakov  <caseq@chromium.org>
2191
2192         Reviewed by Yury Semikhatsky.
2193
2194         Web Inspector: [Resources panel] [HAR] Need a way to save timing data.
2195         Added support for resource timings to HAREntry.
2196         https://bugs.webkit.org/show_bug.cgi?id=45663
2197
2198         * inspector/front-end/HAREntry.js:
2199         (WebInspector.HAREntry.prototype._buildTimings):
2200         (WebInspector.HAREntry.prototype._toMilliseconds):
2201         (WebInspector.HAREntry.prototype._interval):
2202
2203 2010-09-14  Kwang Yul Seo  <skyul@company100.net>
2204
2205         Reviewed by Kent Tamura.
2206
2207         [BREWMP] Always set LeftButton in PlatformMouseEvent
2208         https://bugs.webkit.org/show_bug.cgi?id=45705
2209
2210         AEE_POINTER_GET_MOUSE_MODIFIERS always returns 0, so it is impossible to know
2211         which button is pressed or released. The current code erroneously sets NoButton.
2212         Set LeftButton unconditionally because Brew MP usually runs on touch device.
2213
2214         * platform/brew/PlatformMouseEventBrew.cpp:
2215         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
2216
2217 2010-09-14  Yury Semikhatsky  <yurys@chromium.org>
2218
2219         Reviewed by Andreas Kling.
2220
2221         Move DebuggerScript.js from WebKit/chromium/src/js to WebCore/bindings/v8
2222         https://bugs.webkit.org/show_bug.cgi?id=45739
2223
2224         * bindings/v8/DebuggerScript.js: Added.
2225
2226 2010-09-10  Alexander Pavlov  <apavlov@chromium.org>
2227
2228         Reviewed by Pavel Feldman.
2229
2230         Web Inspector: Implement on-demand reporting of empty CSS rules matched for a node by WebCore
2231         https://bugs.webkit.org/show_bug.cgi?id=45530
2232
2233         * css/CSSStyleSelector.cpp:
2234         (WebCore::CSSStyleSelector::matchRules):
2235         (WebCore::CSSStyleSelector::matchRulesForList):
2236         (WebCore::CSSStyleSelector::matchUARules):
2237         (WebCore::CSSStyleSelector::styleForElement):
2238         (WebCore::CSSStyleSelector::pseudoStyleForElement):
2239         (WebCore::CSSStyleSelector::styleRulesForElement):
2240         (WebCore::CSSStyleSelector::pseudoStyleRulesForElement):
2241         * css/CSSStyleSelector.h:
2242         * inspector/InspectorDOMAgent.cpp:
2243         (WebCore::InspectorDOMAgent::getStyles):
2244         (WebCore::InspectorDOMAgent::buildArrayForPseudoElements):
2245
2246 2010-09-14  Hyung Song  <beergun@company100.net>
2247
2248         Reviewed by Darin Adler.
2249
2250         [BREWMP] Set m_size in SharedBuffer::createWithContentsOfFile();
2251         https://bugs.webkit.org/show_bug.cgi?id=45701
2252
2253         SharedBuffer::createWithContentsOfFile() reads file content and saves to 
2254         result.m_buffer directly, leaving result.m_size unchanged.
2255
2256         * platform/brew/SharedBufferBrew.cpp:
2257         (WebCore::SharedBuffer::createWithContentsOfFile):
2258
2259 2010-09-14  Adam Barth  <abarth@webkit.org>
2260
2261         Reviewed by Darin Adler.
2262
2263         Move adjustLexerState to the HTMLTokenizer
2264         https://bugs.webkit.org/show_bug.cgi?id=45649
2265
2266         This function used let us share code between the tree builder and the
2267         two other users of the HTMLTokenizer.  However, now that the tree
2268         builder is all grown up, it can't use this code anymore.  The other
2269         users would much rather this code lived on HTMLTokenizer and understood
2270         <script>.  This patch attempts to make them happy.
2271
2272         * html/parser/HTMLPreloadScanner.cpp:
2273         (WebCore::HTMLPreloadScanner::processToken):
2274         * html/parser/HTMLTokenizer.cpp:
2275         (WebCore::HTMLTokenizer::updateStateFor):
2276         * html/parser/HTMLTokenizer.h:
2277         * html/parser/HTMLTreeBuilder.cpp:
2278         (WebCore::HTMLTreeBuilder::scriptEnabled):
2279         * html/parser/HTMLTreeBuilder.h:
2280         * html/parser/HTMLViewSourceParser.cpp:
2281         (WebCore::HTMLViewSourceParser::updateTokenizerState):
2282
2283 2010-09-14  Pierre-Antoine LaFayette  <plafayet@codeaurora.org>
2284
2285         Reviewed by Darin Adler.
2286
2287         REGRESSION (r52839): Incomplete repaint of IMG with text-align:center
2288         https://bugs.webkit.org/show_bug.cgi?id=40142
2289
2290         http://trac.webkit.org/changeset/52839 didn't really deal with the inline replaced element case.  This just generalizes to all inline content.
2291
2292         Patch by: Dave Hyatt
2293
2294         Tests: fast/repaint/block-layout-inline-children-float-positioned.html
2295                fast/repaint/block-layout-inline-children-replaced.html
2296
2297         * rendering/RenderBlockLineLayout.cpp:
2298         (WebCore::RenderBlock::layoutInlineChildren):
2299          
2300 2010-09-14  Balazs Kelemen  <kb@inf.u-szeged.hu>
2301
2302         Reviewed by Andreas Kling.
2303
2304         [Qt] Cookie operations should use NetworkingContext
2305         https://bugs.webkit.org/show_bug.cgi?id=45745
2306         No new functionality so no new tests.
2307
2308         * platform/qt/CookieJarQt.cpp:
2309         (WebCore::cookieJar): Use the NetworkingContext for obtaining the QNetworkAccessManager
2310         instead of directly accessing the FrameLoaderClient.
2311
2312 2010-09-14  Sheriff Bot  <webkit.review.bot@gmail.com>
2313
2314         Unreviewed, rolling out r67449.
2315         http://trac.webkit.org/changeset/67449
2316         https://bugs.webkit.org/show_bug.cgi?id=45746
2317
2318         This change makes tree red. (Requested by pfeldman on
2319         #webkit).
2320
2321         * editing/ApplyStyleCommand.cpp:
2322         (WebCore::ApplyStyleCommand::applyInlineStyleToNodeRange):
2323         (WebCore::ApplyStyleCommand::removeInlineStyleFromElement):
2324         (WebCore::ApplyStyleCommand::removeImplicitlyStyledElement):
2325         (WebCore::ApplyStyleCommand::extractInlineStyleToPushDown):
2326         * editing/ApplyStyleCommand.h:
2327
2328 2010-09-14  Eric Seidel  <eric@webkit.org>
2329
2330         Unreviewed, reverting changes r67451 and r67451.
2331         Broke lots of builders.
2332
2333         Only intercept ESC key press when autocorrection UI is visible.
2334         https://bugs.webkit.org/show_bug.cgi?id=45071
2335
2336         * editing/Editor.cpp:
2337         * editing/Editor.h:
2338         * editing/EditorCommand.cpp:
2339         (WebCore::createCommandMap):
2340         * loader/EmptyClients.h:
2341         * page/EditorClient.h:
2342
2343 2010-09-14  Kinuko Yasuda  <kinuko@chromium.org>
2344
2345         Unreviewed; an attempt to fix Chromium Windows build.
2346
2347         * fileapi/FileEntry.cpp:
2348
2349 2010-09-13  Andrey Kosyakov  <caseq@chromium.org>
2350
2351         Reviewed by Pavel Feldman.
2352
2353         Web Inspector: provide support for opening external navigation for links within certain elements
2354         Use default handling for clicks on links that have target="_blank".
2355         Add option for external navigation to URL audit formatter.
2356         https://bugs.webkit.org/show_bug.cgi?id=45671
2357
2358         * inspector/front-end/AuditFormatters.js:
2359         (WebInspector.AuditFormatters.url):
2360         * inspector/front-end/inspector.js:
2361
2362 2010-09-14  Dan Bernstein  <mitz@apple.com>
2363
2364         Build fix.
2365
2366         * editing/EditorCommand.cpp:
2367
2368 2010-09-14  Jia Pu  <jpu@apple.com>
2369
2370         Reviewed by Dan Bernstein.
2371
2372         Only intercept ESC key press when autocorrection UI is visible.
2373         https://bugs.webkit.org/show_bug.cgi?id=45071
2374
2375         Only intercept ESC key when autocorrection panel is shown. Otherwise pressing
2376         ESC will cancel current loading like usual.
2377
2378         * editing/Editor.cpp:
2379         (WebCore::Editor::isShowingCorrectionPanel): Query editor client whether autocorrection
2380           panel is shown.
2381
2382         * editing/Editor.h: Added declaration of isShowingCorrectionPanel().
2383
2384         * editing/EditorCommand.cpp:
2385         (WebCore::supportedDismissCorrectionPanel): Only support executeCancelOperation()
2386           when autocorrection panel is shown.
2387         (WebCore::createCommandMap): Replaced isSupported function pointer for
2388           executeCancelOperation() command with supportedDismissCorrectionPanel().
2389
2390         * loader/EmptyClients.h:
2391         (WebCore::EmptyEditorClient::isShowingCorrectionPanel): Dummy implementation of
2392           new member method declared in base class.
2393
2394         * page/EditorClient.h: Declared new member method isShowingCorrectionPanel().
2395
2396 2010-09-14  Kwang Yul Seo  <skyul@company100.net>
2397
2398         Reviewed by Kent Tamura.
2399
2400         [BREWMP] Remove TextBreakIteratorInternalICUBrew.cpp
2401         https://bugs.webkit.org/show_bug.cgi?id=45691
2402
2403         Brew MP no longer depends on ICU for internationalization.
2404         Remove TextBreakIteratorInternalICUBrew.cpp.
2405
2406         * platform/text/brew/TextBreakIteratorInternalICUBrew.cpp: Removed.
2407
2408 2010-09-14  Ryosuke Niwa  <rniwa@webkit.org>
2409
2410         Reviewed by Tony Chang.
2411
2412         applyInlineStyleToNodeRange does not extend run properly
2413         https://bugs.webkit.org/show_bug.cgi?id=45616
2414
2415         The bug was caused by applyInlineStyleToNodeRange's skipping a node whenever it has children.
2416         Fixed the bug by only skipping a node that contains the past end node, contains non-editable region,
2417         or has a non-editable parent node. Also fixed a bug that applyInlineStyleToNodeRange does not remove
2418         styled elements in a run that are identical to the one added. addInlineStyleIfNeeded now removes
2419         all styled elements in a run using removeStyleFromRunBeforeApplyingStyle before calling addInlineStyleIfNeeded.
2420
2421         Test: editing/style/inline-style-extend-run.html
2422
2423         * editing/ApplyStyleCommand.cpp:
2424         (WebCore::containsNonEditableRegion): Added.
2425         (WebCore::ApplyStyleCommand::applyInlineStyleToNodeRange): See above.
2426         (WebCore::ApplyStyleCommand::removeStyleFromRunBeforeApplyingStyle): Added, see above.
2427         (WebCore::ApplyStyleCommand::removeInlineStyleFromElement): Added support for RemoveAlways.
2428         (WebCore::ApplyStyleCommand::removeImplicitlyStyledElement): Replaced RemoveAttributesAndElements by RemoveIfNeeded.
2429         (WebCore::ApplyStyleCommand::extractInlineStyleToPushDown): Replaced RemoveAttributesAndElements by RemoveIfNeeded.
2430         * editing/ApplyStyleCommand.h:
2431
2432 2010-09-13  Yuta Kitamura  <yutak@chromium.org>
2433
2434         Reviewed by Kent Tamura.
2435
2436         Add one #if guard block to fix Qt builds.
2437
2438         Web Inspector: WebSocket in Resources tab
2439         https://bugs.webkit.org/show_bug.cgi?id=40768
2440
2441         * inspector/InspectorResource.cpp:
2442
2443 2010-09-13  Yuta Kitamura  <yutak@chromium.org>
2444
2445         Reviewed by Pavel Feldman.
2446
2447         Add WebSocket resource type to Web Inspector.
2448
2449         When a new WebSocket connection is established, a line for that connection
2450         will appear in Web Inspector's Resources tab. If the resource name is
2451         clicked, the details of handshake request and response will be shown.
2452
2453         Web Inspector: WebSocket in Resources tab
2454         https://bugs.webkit.org/show_bug.cgi?id=40768
2455
2456         * inspector/InspectorController.cpp:
2457         (WebCore::InspectorController::addResource): WebSocket resource does not
2458         have an associated loader, thus frame might be null. Need to check it.
2459         (WebCore::InspectorController::removeResource): Ditto.
2460         (WebCore::InspectorController::didCreateWebSocket):
2461         (WebCore::InspectorController::willSendWebSocketHandshakeRequest):
2462         (WebCore::InspectorController::didReceiveWebSocketHandshakeResponse):
2463         (WebCore::InspectorController::didCloseWebSocket):
2464         * inspector/InspectorController.h:
2465         * inspector/InspectorResource.cpp: Add null checks of m_loader and m_frame,
2466         because WebSocket does not have a loader and we need to allow null for
2467         these variables.
2468         (WebCore::createReadableStringFromBinary):
2469         (WebCore::InspectorResource::InspectorResource):
2470         (WebCore::InspectorResource::create): Factory function of
2471         regular (non-WebSocket) resources.
2472         (WebCore::InspectorResource::createWebSocket): Factory function of
2473         WebSocket resources.
2474         (WebCore::InspectorResource::updateWebSocketRequest):
2475         (WebCore::InspectorResource::updateWebSocketResponse):
2476         (WebCore::InspectorResource::updateScriptObject): m_frame->document() becomes
2477         available when Frame::setDocument() is called. We cannot obtain documentURL
2478         during the constructor or updateRequest() function, because m_frame->document()
2479         is not available yet at that point and documentURL will contain a wrong URL.
2480         As far as I know, updateScriptObject() is the only place where we can safely
2481         obtain documentURL.
2482         (WebCore::InspectorResource::cachedResource):
2483         (WebCore::InspectorResource::type):
2484         (WebCore::InspectorResource::resourceData):
2485         * inspector/InspectorResource.h:
2486         (WebCore::InspectorResource::):
2487         (WebCore::InspectorResource::markWebSocket):
2488         * inspector/front-end/Resource.js:
2489         (WebInspector.Resource.Type.toString):
2490         (WebInspector.Resource.prototype.set type):
2491         (WebInspector.Resource.prototype._mimeTypeIsConsistentWithType):
2492         * inspector/front-end/ResourceView.js:
2493         (WebInspector.ResourceView.prototype._refreshRequestHeaders):
2494         (WebInspector.ResourceView.prototype._refreshResponseHeaders):
2495         (WebInspector.ResourceView.prototype._refreshHeaders):
2496         * inspector/front-end/inspector.css:
2497         (.resources-category-websockets, .resources-category-other):
2498         (.resources-category-websockets .resources-graph-bar):
2499         (.resources-category-websockets.resource-cached .resources-graph-bar):
2500         * inspector/front-end/inspector.js:
2501         (WebInspector.loaded):
2502         (WebInspector.updateResource):
2503         * websockets/WebSocketChannel.cpp:
2504         (WebCore::WebSocketChannel::WebSocketChannel):
2505         (WebCore::WebSocketChannel::disconnect):
2506         (WebCore::WebSocketChannel::didOpen):
2507         (WebCore::WebSocketChannel::didClose):
2508         (WebCore::WebSocketChannel::processBuffer):
2509         (WebCore::WebSocketChannel::identifier):
2510         * websockets/WebSocketChannel.h:
2511
2512 2010-09-13  W. James MacLean  <wjmaclean@google.com>
2513
2514         Reviewed by Darin Fisher.
2515
2516         [chromium] Thumbnails not generated for GPU Rendered Pages
2517         https://bugs.webkit.org/show_bug.cgi?id=44127
2518
2519         Replicates existing functionality, use existing tests.
2520         Adds pixel-readback for GPU composited pages to allow for thumbnailing,
2521         printing and other services to work with GPU rendered pages.
2522
2523         * platform/graphics/chromium/LayerRendererChromium.cpp:
2524         (WebCore::LayerRendererChromium::getFramebufferPixels):
2525         * platform/graphics/chromium/LayerRendererChromium.h:
2526         (WebCore::LayerRendererChromium::rootLayerTextureSize):
2527
2528 2010-09-13  Kinuko Yasuda  <kinuko@chromium.org>
2529
2530         Unreviewed, build fix for Gtk.
2531
2532         * bindings/js/JSEntryCustom.cpp:
2533
2534 2010-09-13  Kinuko Yasuda  <kinuko@chromium.org>
2535
2536         Reviewed by Adam Barth.
2537
2538         Make FileEntry and DirectoryEntry methods accessible via Entry instance
2539         https://bugs.webkit.org/show_bug.cgi?id=45553
2540
2541         FileEntry- and DirectoryEntry- specific methods must be available on Entry object based on its internal type.
2542
2543         Added custom toJS/toV8 implementation to Entry interface.
2544
2545         No new tests; test will be added later when we have complete implementation for the API.
2546
2547         * CMakeLists.txt:
2548         * GNUmakefile.am:
2549         * WebCore.gypi:
2550         * WebCore.pro:
2551         * WebCore.vcproj/WebCore.vcproj:
2552         * WebCore.xcodeproj/project.pbxproj:
2553         * bindings/js/JSEntryCustom.cpp: Added.
2554         (WebCore::toJS):
2555         * bindings/v8/custom/V8EntryCustom.cpp: Added.
2556         (WebCore::toV8):
2557         * fileapi/DirectoryEntry.h: Nits fix.
2558         * fileapi/DirectoryEntry.idl: Added ConvertUndefinedOrNullToString to path parameter.
2559         * fileapi/Entry.idl: Added CustomToJS attribute.
2560         * fileapi/FileEntry.cpp:
2561         (WebCore::FileEntry::createWriter):
2562         (WebCore::FileEntry::file):
2563         * fileapi/FileEntry.h:
2564         * fileapi/FileEntry.idl:
2565
2566 2010-09-13  Ryosuke Niwa  <rniwa@webkit.org>
2567
2568         Reviewed by Darin Adler.
2569
2570         REGRESSION: In Gmail, a crash occurs at getDoubleValue() when applying a text color to a new line
2571         https://bugs.webkit.org/show_bug.cgi?id=45632
2572
2573         Test: editing/execCommand/query-font-size-with-typing-style.html
2574
2575         The crash was caused by selectionStartCSSPropertyValue's deleting nodeToRemove before
2576         retrieving the font-size property. Fixed the bug by moving the removal code to the end of the function.
2577
2578         * editing/Editor.cpp:
2579         (WebCore::Editor::selectionStartCSSPropertyValue):
2580
2581 2010-09-13  Kwang Yul Seo  <skyul@company100.net>
2582
2583         Reviewed by Darin Adler.
2584
2585         [BREWMP] Remove WebCore namespace in SSLKeyGeneratorBrew.cpp
2586         https://bugs.webkit.org/show_bug.cgi?id=45690
2587
2588         WebCore namespace is not required because getSupportedKeySizes and signedPublicKeyAndChallengeString are already
2589         in namespace WebCore block.
2590
2591         * platform/brew/SSLKeyGeneratorBrew.cpp:
2592         (WebCore::getSupportedKeySizes):
2593         (WebCore::signedPublicKeyAndChallengeString):
2594
2595 2010-09-13  Mario Sanchez Prada  <msanchez@igalia.com>
2596
2597         Reviewed by Martin Robinson.
2598
2599         [GTK] Code simplification needed in Atk Wrapper
2600         https://bugs.webkit.org/show_bug.cgi?id=45687
2601
2602         Use TextIterator::rangeLength() to calculate endOffset
2603
2604         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
2605         (getSelectionOffsetsForObject): Don't manually iterate over a
2606         artificial new range but just call TextIterator::rangeLength on
2607         the range created between the start and end positions.
2608
2609 2010-09-13  Sam Weinig  <sam@webkit.org>
2610
2611         Reviewed by Alice Liu.
2612
2613         Clean up xcode project.
2614
2615         * WebCore.xcodeproj/project.pbxproj:
2616
2617 2010-09-13  Eric Carlson  <eric.carlson@apple.com>
2618
2619         Reviewed by Geoff Garen.
2620
2621         JavaScript dialog should not deactivate media element
2622         https://bugs.webkit.org/show_bug.cgi?id=45688
2623
2624         Test: http/tests/media/reload-after-dialog.html
2625
2626         * bindings/generic/ActiveDOMCallback.cpp:
2627         (WebCore::ActiveDOMObjectCallbackImpl::suspend): Add ReasonForSuspension parameter.
2628
2629         * bindings/js/ScriptDebugServer.cpp:
2630         (WebCore::ScriptDebugServer::setJavaScriptPaused): Pass new parameter to suspendActiveDOMObjects.
2631
2632         * dom/ActiveDOMObject.cpp:
2633         (WebCore::ActiveDOMObject::suspend): Add ReasonForSuspension parameter.
2634         * dom/ActiveDOMObject.h:
2635
2636         * dom/ScriptExecutionContext.cpp:
2637         (WebCore::ScriptExecutionContext::suspendActiveDOMObjects): Ditto.
2638         * dom/ScriptExecutionContext.h:
2639
2640         * history/CachedFrame.cpp:
2641         (WebCore::CachedFrame::CachedFrame): Pass new parameter to suspendActiveDOMObjects.
2642
2643         * html/HTMLMarqueeElement.cpp:
2644         (WebCore::HTMLMarqueeElement::suspend): Add ReasonForSuspension parameter.
2645         * html/HTMLMarqueeElement.h:
2646
2647         * html/HTMLMediaElement.cpp:
2648         (WebCore::HTMLMediaElement::stop): Deal with element being suspended.
2649         (WebCore::HTMLMediaElement::suspend): Do nothing unless reason for suspension is document
2650         becoming inactive.
2651         * html/HTMLMediaElement.h:
2652
2653         * page/PageGroupLoadDeferrer.cpp:
2654         (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer): Pass WillShowDialog to suspendActiveDOMObjects.
2655
2656         * page/SuspendableTimer.cpp:
2657         (WebCore::SuspendableTimer::suspend): Add ReasonForSuspension parameter.
2658         * page/SuspendableTimer.h:
2659
2660         * websockets/WebSocket.cpp:
2661         (WebCore::WebSocket::suspend): Ditto.
2662         * websockets/WebSocket.h:
2663
2664         * xml/XMLHttpRequest.cpp:
2665         (WebCore::XMLHttpRequest::suspend): Ditto.
2666         * xml/XMLHttpRequest.h:
2667
2668 2010-09-13  Sam Weinig  <sam@webkit.org>
2669
2670         Fix the mac build.
2671
2672         * page/mac/EventHandlerMac.mm:
2673         (WebCore::EventHandler::passMousePressEventToSubframe):
2674
2675 2010-09-13  Sam Weinig  <sam@webkit.org>
2676
2677         Reviewed by Anders Carlsson.
2678
2679         Can't scroll on Bugzilla patch review pages on Mac with WebKit2
2680         https://bugs.webkit.org/show_bug.cgi?id=43555
2681
2682         <rdar://problem/8421386> WebKit2: gmail.com is completely unresponsive to clicks
2683         <rdar://problem/8276298> Can't scroll on Bugzilla patch review pages on Mac with WebKit2 (43555)
2684
2685         * page/mac/EventHandlerMac.mm:
2686         (WebCore::EventHandler::passWheelEventToWidget):
2687         (WebCore::frameHasPlatformWidget):
2688         (WebCore::EventHandler::passMousePressEventToSubframe):
2689         (WebCore::EventHandler::passMouseMoveEventToSubframe):
2690         (WebCore::EventHandler::passMouseReleaseEventToSubframe):
2691         Add WebKit2 mode for these functions based on the presence of a platform widget for a
2692         FrameView.
2693
2694 2010-09-13  Patrick Gansterer  <paroga@paroga.com>
2695
2696         Reviewed by Kenneth Rohde Christiansen.
2697
2698         [WINCE] Buildfix for ViewportArguments.cpp
2699         https://bugs.webkit.org/show_bug.cgi?id=45678
2700
2701         Use fabs() instead of abs().
2702         This patch also fixes the return value, when
2703         the value is between -1 and 1.
2704
2705         * dom/ViewportArguments.cpp:
2706         (WebCore::findUserScalableValue):
2707
2708 2010-09-13  Darin Adler  <darin@apple.com>
2709
2710         Reviewed by Adam Barth.
2711
2712         Preparation for eliminating deprecatedParseURL
2713         https://bugs.webkit.org/show_bug.cgi?id=45695
2714
2715         Added new HTMLParserIdioms source file, with a name inspired by the HTML
2716         specification, which has a section defining things like "space character"
2717         that talks about common parser idioms. These are idioms for the main HTML
2718         parser and for parsers for various microlanguages as well.
2719
2720         * Android.mk:
2721         * CMakeLists.txt:
2722         * GNUmakefile.am:
2723         * WebCore.gypi:
2724         * WebCore.pro:
2725         * WebCore.vcproj/WebCore.vcproj:
2726         * WebCore.xcodeproj/project.pbxproj:
2727         Added HTMLParserIdioms.
2728
2729         * css/CSSHelper.h: Fixed indentation and comments here. Point to the new
2730         stripLeadingAndTrailingHTMLSpaces function.
2731
2732         * html/parser/HTMLParserIdioms.cpp: Added.
2733         * html/parser/HTMLParserIdioms.h: Added.
2734
2735         * html/parser/HTMLTreeBuilder.cpp:
2736         (WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::skipLeadingWhitespace):
2737         (WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::takeLeadingWhitespace):
2738         (WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::takeLeadingNonWhitespace):
2739         (WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::takeRemainingWhitespace):
2740         Updated for name changes.
2741
2742         * html/parser/HTMLTreeBuilder.h: Moved functions to HTMLParserIdioms.h.
2743
2744         * html/HTMLInputElement.cpp:
2745         * html/HTMLMeterElement.cpp:
2746         * html/HTMLProgressElement.cpp:
2747         * html/StepRange.cpp:
2748         * rendering/RenderSlider.cpp:
2749         Updated includes.
2750
2751         * svg/SVGImageLoader.cpp:
2752         (WebCore::SVGImageLoader::sourceURI): Fixed incorrect use of deprecatedParseURL.
2753         This is for use on the attribute value before building the URL, not on the URL
2754         after building it. I did not add a test case; this is an obscure corner and soon
2755         we will be moving to stripLeadingAndTrailingHTMLSpaces anyway.
2756         * wml/WMLImageLoader.cpp:
2757         (WebCore::WMLImageLoader::sourceURI): Ditto.
2758
2759 2010-09-13  Chris Fleizach  <cfleizach@apple.com>
2760
2761         Reviewed by Darin Adler.
2762
2763         AX: REGRESSION: WebKit does not report label of web popup buttons
2764         https://bugs.webkit.org/show_bug.cgi?id=45715
2765
2766         Test: platform/mac/accessibility/popup-button-title.html
2767
2768         * WebCore.xcodeproj/project.pbxproj:
2769         * accessibility/AccessibilityRenderObject.cpp:
2770         (WebCore::AccessibilityRenderObject::title):
2771
2772 2010-09-13  Kinuko Yasuda  <kinuko@chromium.org>
2773
2774         Reviewed by Dumitru Daniliuc.
2775
2776         Expose Flags constructor if FileSystem API is Enabled
2777         https://bugs.webkit.org/show_bug.cgi?id=45165
2778
2779         This change also includes:
2780         - Changed Flags' attribute names from UPPERCASE to camelCase to reflect the recent spec change.
2781           http://dev.w3.org/2009/dap/file-system/file-dir-sys.html#the-flags-interface
2782         - Enhanced EnabledAtRuntime attribute to take parameter that is used to generate a RuntimeEnabledFeatures method name.
2783
2784         No new tests; tests will be added when we fully expose the interface.
2785
2786         * bindings/v8/V8DOMWindowCustom.cpp: Added custom getter for FlagsConstructor.
2787         * fileapi/Flags.idl: Changed attribute names to camelCase.
2788         * page/DOMWindow.idl: Exposed Flags constructor.
2789
2790         * bindings/scripts/CodeGenerator.pm: Updated the WK_lcfirst hack to work around getter method for 'create' (create() should be avoided as it's widely used to instantiate an object).
2791         * bindings/scripts/CodeGeneratorV8.pm: Added EnabledAtRuntime=FeatureName support.
2792         * bindings/scripts/test/CPP/WebDOMTestObj.cpp:
2793         (WebDOMTestObj::create):
2794         (WebDOMTestObj::setCreate):
2795         * bindings/scripts/test/CPP/WebDOMTestObj.h:
2796         * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
2797         (webkit_dom_test_obj_set_property):
2798         (webkit_dom_test_obj_get_property):
2799         (webkit_dom_test_obj_class_init):
2800         * bindings/scripts/test/GObject/WebKitDOMTestObj.h:
2801         * bindings/scripts/test/JS/JSTestObj.cpp:
2802         * bindings/scripts/test/ObjC/DOMTestObj.h:
2803         * bindings/scripts/test/ObjC/DOMTestObj.mm:
2804         * bindings/scripts/test/TestObj.idl:
2805         * bindings/scripts/test/V8/V8TestObj.cpp:
2806         (WebCore::TestObjInternal::createAttrGetter):
2807         (WebCore::TestObjInternal::createAttrSetter):
2808         (WebCore::TestObjInternal::enabledAtRuntimeAttr1AttrGetter):
2809         (WebCore::TestObjInternal::enabledAtRuntimeAttr1AttrSetter):
2810         (WebCore::TestObjInternal::enabledAtRuntimeAttr2AttrGetter):
2811         (WebCore::TestObjInternal::enabledAtRuntimeAttr2AttrSetter):
2812         (WebCore::TestObjInternal::enabledAtRuntimeMethod1Callback):
2813         (WebCore::TestObjInternal::enabledAtRuntimeMethod2Callback):
2814         (WebCore::ConfigureV8TestObjTemplate):
2815
2816 2010-09-13  Adam Barth  <abarth@webkit.org>
2817
2818         Reviewed by Darin Adler.
2819
2820         "Implement" EOF processing in AfterBodyMode and AfterAfterBodyMode
2821         https://bugs.webkit.org/show_bug.cgi?id=45647
2822
2823         Implements the notImplemented by doing nothing, which is the proper
2824         behavior according to the spec.
2825
2826         * html/parser/HTMLTreeBuilder.cpp:
2827         (WebCore::HTMLTreeBuilder::processEndOfFile):
2828
2829 2010-09-13  Adam Barth  <abarth@webkit.org>
2830
2831         Reviewed by Darin Adler.
2832
2833         More trivial EOF handling in tree builder
2834         https://bugs.webkit.org/show_bug.cgi?id=45648
2835
2836         The spec says to treat these modes like the InBodyMode, which is what
2837         this patch does.  Doing so is indistinguishable from our current
2838         behavior, which is why we didn't catch this based on tests.
2839
2840         * html/parser/HTMLTreeBuilder.cpp:
2841         (WebCore::HTMLTreeBuilder::processEndOfFile):
2842
2843 2010-09-13  James Robinson  <jamesr@chromium.org>
2844
2845         Reviewed by Kenneth Russell.
2846
2847         SharedGraphicsContext3D's texture cache holds on to images after free
2848         https://bugs.webkit.org/show_bug.cgi?id=45706
2849
2850         Each SharedGraphicsContext3D keeps a cache of uploaded textures keyed by NativeImagePtrs.
2851         Whenever the backing native image is deleted it needs to let the SharedGraphicsContext3D know
2852         so that the cache entry and associated texture can also be removed.
2853
2854         * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
2855         (WebCore::SharedGraphicsContext3D::SharedGraphicsContext3D):
2856         (WebCore::SharedGraphicsContext3D::~SharedGraphicsContext3D):
2857         (WebCore::SharedGraphicsContext3D::removeTextureFor):
2858         (WebCore::SharedGraphicsContext3D::removeTexturesFor):
2859         (WebCore::SharedGraphicsContext3D::allContexts):
2860         * platform/graphics/gpu/SharedGraphicsContext3D.h:
2861         * platform/graphics/skia/NativeImageSkia.cpp:
2862         (WebCore::NativeImageSkia::~NativeImageSkia):
2863         * platform/graphics/skia/NativeImageSkia.h:
2864
2865 2010-09-13  Chris Fleizach  <cfleizach@apple.com>
2866
2867         Reviewed by David Kilzer.
2868
2869         AX: accessibilityIsIgnored is returning nil when return value expects a BOOL
2870         https://bugs.webkit.org/show_bug.cgi?id=45548
2871
2872         Test: platform/mac/accessibility/element-is-ignored.html
2873
2874         * accessibility/mac/AccessibilityObjectWrapper.mm:
2875         (-[AccessibilityObjectWrapper accessibilityIsIgnored]):
2876
2877 2010-09-13  Chris Fleizach  <cfleizach@apple.com>
2878
2879         Reviewed by Darin Adler.
2880
2881         CrashTracer: 874 crashes in Safari at com.apple.WebCore: WebCore::AccessibilityTable::isTableExposableThroughAccessibility + 663
2882         https://bugs.webkit.org/show_bug.cgi?id=45697
2883
2884         Inside of AccessibilityTableRow, parentTable() should not use getOrCreate() on the parent table, because the render table may
2885         be in a bad state and accessing internal variables can lead to a crash.
2886
2887         Test: platform/mac/accessibility/updating-attribute-in-table-row-crash.html
2888
2889         * accessibility/AccessibilityTableRow.cpp:
2890         (WebCore::AccessibilityTableRow::parentTable):
2891
2892 2010-09-13  Adam Barth  <abarth@webkit.org>
2893
2894         Reviewed by Eric Seidel.
2895
2896         Implement EOF handling in TextMode
2897         https://bugs.webkit.org/show_bug.cgi?id=45644
2898
2899         This patch is actually covered by a bunch of tests.  We were just
2900         magically passing the tests before because of some nutty code in
2901         Document.cpp.
2902
2903         * dom/Document.cpp:
2904         (WebCore::Document::implicitClose):
2905             - This code was masking the notImplemented in the tree builder.
2906               I also removed the use of the setting because it wasn't working
2907               properly anyway.  I'll implement a working version shortly.
2908         * html/parser/HTMLTreeBuilder.cpp:
2909         (WebCore::HTMLTreeBuilder::processEndOfFile):
2910             - Implement per the spec.
2911
2912 2010-09-13  Enrica Casucci  <enrica@apple.com>
2913
2914         Reviewed by Sam Weining.
2915
2916         Paste should be implemented in WebCore like Copy and Cut for Mac also.
2917         https://bugs.webkit.org/show_bug.cgi?id=45494
2918         <rdar://problem/7660537>
2919
2920         On the Mac platform, the implementation of the paste operation is all done
2921         at the WebKit level. In order to support it on WebKit2 it is necessary to
2922         refactor the code and move this functionality at the level of WebCore like
2923         we already have on Windows.
2924         The original code relies on some in AppKit functions that call back into
2925         WebKit causing problems in WebKit2. All this functionality has been moved
2926         at the level of the editor client where it can be dealt with appropriately.
2927
2928         * editing/Editor.cpp:
2929         (WebCore::Editor::shouldInsertFragment):
2930         * editing/mac/EditorMac.mm: extended to support Mail specific scenarios.
2931         (WebCore::Editor::pasteWithPasteboard):
2932         * loader/EmptyClients.h:
2933         (WebCore::EmptyFrameLoaderClient::canShowMIMETypeAsHTML): Added.
2934         (WebCore::EmptyEditorClient::documentFragmentFromAttributedString): Added.
2935         (WebCore::EmptyEditorClient::setInsertionPasteboard): Added to support Mail.
2936         * loader/FrameLoaderClient.h:
2937         * page/EditorClient.h:
2938         * platform/Pasteboard.h:
2939         * platform/mac/PasteboardMac.mm:
2940         (WebCore::Pasteboard::writeSelection): replaced call to Appkit with one that
2941         doesn't calll back into WebKit.
2942         (WebCore::Pasteboard::documentFragmentWithImageResource): Re-implemented at the
2943         WebCore level.
2944         (WebCore::Pasteboard::documentFragmentWithRtf): Re-implemented at the
2945         WebCore level.
2946         (WebCore::uniqueURLWithRelativePart): Added.
2947         (WebCore::Pasteboard::documentFragment): Extended to include all the functionality
2948         provided in documentFragmentFromPasteboard in WebHTMLView.mm.
2949
2950 2010-09-13  Alejandro G. Castro  <alex@igalia.com>
2951
2952         Reviewed by Kenneth Rohde Christiansen.
2953
2954         [Gtk] Reduce the size of the shadow buffer in the paths using the clip region
2955         https://bugs.webkit.org/show_bug.cgi?id=44699
2956
2957         Intersect the clip bounding rect with the path that we are going
2958         to use to create the shadow in order to reduce the region we have
2959         to blur.
2960
2961         * platform/graphics/cairo/GraphicsContextCairo.cpp:
2962         (WebCore::drawPathShadow):
2963
2964 210-09-13  Darin Fisher  <darin@chromium.org>
2965
2966         Reviewed by David Levin.
2967
2968         Add option to conditionally compile smooth scrolling support.
2969         https://bugs.webkit.org/show_bug.cgi?id=45689
2970
2971         The OS(WINDOWS) conditional becomes unnecessary since
2972         ENABLE(SMOOTH_SCROLLING) should only be specified on
2973         platforms that have a smooth scrolling implementation.
2974
2975         * platform/ScrollAnimator.cpp:
2976         * platform/ScrollAnimatorWin.cpp:
2977         * platform/ScrollAnimatorWin.h:
2978
2979 2010-09-13  Ryosuke Niwa  <rniwa@webkit.org>
2980
2981         Reviewed by Kent Tamura.
2982
2983         Move functions of StyledMarkupAccumulator below that of MarkupAccumulator
2984         https://bugs.webkit.org/show_bug.cgi?id=45624
2985
2986         Moved the declaration of StyledMarkupAccumulator and the definitions of its member functions
2987         to below the definitions of MarkupAccumulator's member functions.
2988
2989         No new tests are added since this is a cleanup.
2990
2991         * editing/markup.cpp:
2992         (WebCore::StyledMarkupAccumulator::StyledMarkupAccumulator):
2993         (WebCore::StyledMarkupAccumulator::appendElement):
2994         (WebCore::StyledMarkupAccumulator::shouldAnnotate):
2995         (WebCore::StyledMarkupAccumulator::wrapWithNode):
2996         (WebCore::StyledMarkupAccumulator::wrapWithStyleNode):
2997         (WebCore::StyledMarkupAccumulator::takeResults):
2998         (WebCore::StyledMarkupAccumulator::appendText):
2999         (WebCore::StyledMarkupAccumulator::renderedText):
3000         (WebCore::StyledMarkupAccumulator::stringValueForRange):
3001         (WebCore::styleFromMatchedRulesForElement):
3002         (WebCore::StyledMarkupAccumulator::removeExteriorStyles):
3003         (WebCore::needInterchangeNewlineAfter):
3004         (WebCore::styleFromMatchedRulesAndInlineDecl):
3005         (WebCore::removeEnclosingMailBlockquoteStyle):
3006         (WebCore::removeDefaultStyles):
3007
3008 2010-09-13  Alejandro G. Castro  <alex@igalia.com>
3009
3010         Reviewed by Martin Robinson.
3011
3012         [GTK] Leak in the GraphicsContextCairo drawPathShadow
3013         https://bugs.webkit.org/show_bug.cgi?id=44959
3014
3015         Fix a leak of the cairo_path.
3016
3017         * platform/graphics/cairo/GraphicsContextCairo.cpp:
3018         (WebCore::drawPathShadow):
3019         * platform/graphics/cairo/OwnPtrCairo.cpp:
3020         (WTF::cairo_path_t):
3021         * platform/graphics/cairo/OwnPtrCairo.h:
3022
3023 2010-09-13  Adam Barth  <abarth@webkit.org>
3024
3025         Reviewed by Darin Adler.
3026
3027         Fix </sarcasm>
3028         https://bugs.webkit.org/show_bug.cgi?id=45645
3029
3030         Umm... Yeah.
3031
3032         * html/parser/HTMLTreeBuilder.cpp:
3033         (WebCore::HTMLTreeBuilder::processEndTagForInBody):
3034
3035 2010-09-13  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
3036
3037         Reviewed by Darin Adler.
3038
3039         [WML] Fix build breaks when WML is enabled
3040         https://bugs.webkit.org/show_bug.cgi?id=45628
3041
3042         There are build breaks by Bug 22382 when WML is enabled. The handleLinkClick() has an event parameter.
3043         So, we need to set an event when wml invoke the handleLinkClick(). And, doTextFieldCommandFromEvent()
3044         was moved to editor. So, we need to mofidy the invocation in WMLInputElement.cpp 
3045
3046         * wml/WMLAElement.cpp:
3047         (WebCore::WMLAElement::defaultEventHandler):
3048         * wml/WMLInputElement.cpp:
3049         (WebCore::WMLInputElement::defaultEventHandler):
3050
3051 2010-09-13  Martin Robinson  <mrobinson@igalia.com>
3052
3053         Reviewed by Xan Lopez.
3054
3055         [GTK] When a feature is disabled by default, the source necessary to build it are not included in the distribution
3056         https://bugs.webkit.org/show_bug.cgi?id=45230
3057
3058         No new tests as this is just a build change.
3059
3060         * GNUmakefile.am: Move as many sources as possible to the SOURCES primary.
3061         Others should be moved over time as we solve issues with them.
3062
3063 2010-09-13  Chris Fleizach  <cfleizach@apple.com>
3064
3065         Reviewed by Darin Adler.
3066
3067         REGRESSION (r64816-r64889): Crash in WebCore::AccessibilityRenderObject
3068         https://bugs.webkit.org/show_bug.cgi?id=43807
3069
3070         Ensure that visiblePositionForPoint can handle non RenderBoxModelObject types.
3071
3072         Test: platform/mac/accessibility/visible-position-crash-for-text-node.html
3073
3074         * accessibility/AccessibilityRenderObject.cpp:
3075         (WebCore::AccessibilityRenderObject::visiblePositionForPoint):
3076
3077 2010-09-13  Martin Robinson  <mrobinson@igalia.com>
3078
3079         Reviewed by Andreas Kling.
3080
3081         [Qt] DOM listeners get wrong keycodes for some keys
3082         https://bugs.webkit.org/show_bug.cgi?id=43365
3083
3084         Produce the proper keycodes for the print screen key as well as the
3085         keypad insert and delete keys.
3086
3087         * platform/qt/PlatformKeyboardEventQt.cpp:
3088         (WebCore::windowsKeyCodeForKeyEvent): Fix keycode translation for the mentioned keys.
3089
3090 2010-09-13  Jonathan Dixon  <joth@chromium.org>
3091
3092         Reviewed by Steve Block.
3093
3094         [chromium] Port test shell geolocation fixes to DRT
3095         https://bugs.webkit.org/show_bug.cgi?id=45313
3096
3097         Also re-apply rolled out patch http://trac.webkit.org/changeset/66886 :-
3098         Add missing virtual destructor to the abstract base class.
3099
3100         * platform/chromium/GeolocationServiceChromium.cpp:
3101         (WebCore::GeolocationServiceBridge::~GeolocationServiceBridge):
3102         * platform/chromium/GeolocationServiceChromium.h:
3103
3104 2010-09-13  Yury Semikhatsky  <yurys@chromium.org>
3105
3106         Reviewed by Pavel Feldman.
3107
3108         Web Inspector: upstream testExpandScope debugger test
3109         https://bugs.webkit.org/show_bug.cgi?id=45260
3110
3111         Test: inspector/debugger-expand-scope.html
3112
3113         * inspector/front-end/InjectedScript.js: return "Arguments" as class name for arguments variable in v8.
3114         (injectedScriptConstructor.):
3115
3116 2010-09-13  Mario Sanchez Prada  <msanchez@igalia.com>
3117
3118         Reviewed by Martin Robinson.
3119
3120         [GTK] ATs should be able to select/unselect text
3121         https://bugs.webkit.org/show_bug.cgi?id=25673
3122
3123         Implement AtkText's setSelection and removeSelection functions
3124
3125         * accessibility/AccessibilityObject.cpp:
3126         (WebCore::AccessibilityObject::visiblePositionRangeForRange):
3127         Moved some GTK specific code from a ifdef-endif region to
3128         AccessibilityObjectAtk.cpp
3129         * accessibility/AccessibilityObject.h:
3130         * accessibility/gtk/AccessibilityObjectAtk.cpp:
3131         (WebCore::AccessibilityObject::getLengthForTextRange): New.
3132         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
3133         (webkit_accessible_text_remove_selection): Implemented following
3134         the lead of GAIL's implementation of the AtkText interface.
3135         (webkit_accessible_text_set_selection): Implemented following
3136         the lead of GAIL's implementation of the AtkText interface.
3137         (webkit_accessible_text_set_caret_offset): Changed to directly use
3138         visiblePositionRangeForRange now that there's no longer a problem
3139         with that, as it was in the past (only worked for text controls).
3140
3141 2010-08-27  Kenneth Rohde Christiansen  <kenneth@webkit.org>
3142
3143         Reviewed by Antti Koivisto.
3144
3145         Update support for the viewport meta tag algorithm, to
3146         match the following draft spec:
3147
3148         http://people.opera.com/rune/TR/ED-css-viewport-20100806/
3149
3150         Add common handling of viewport meta tag based on new Opera spec
3151         https://bugs.webkit.org/show_bug.cgi?id=44201
3152
3153         Tests: fast/viewport/viewport-1.html
3154                fast/viewport/viewport-10.html
3155                fast/viewport/viewport-100.html
3156                fast/viewport/viewport-101.html
3157                fast/viewport/viewport-102.html
3158                fast/viewport/viewport-103.html
3159                fast/viewport/viewport-104.html
3160                fast/viewport/viewport-105.html
3161                fast/viewport/viewport-106.html
3162                fast/viewport/viewport-107.html
3163                fast/viewport/viewport-108.html
3164                fast/viewport/viewport-109.html
3165                fast/viewport/viewport-11.html
3166                fast/viewport/viewport-110.html
3167                fast/viewport/viewport-111.html
3168                fast/viewport/viewport-112.html
3169                fast/viewport/viewport-113.html
3170                fast/viewport/viewport-114.html
3171                fast/viewport/viewport-115.html
3172                fast/viewport/viewport-116.html
3173                fast/viewport/viewport-117.html
3174                fast/viewport/viewport-118.html
3175                fast/viewport/viewport-119.html
3176                fast/viewport/viewport-12.html
3177                fast/viewport/viewport-120.html
3178                fast/viewport/viewport-121.html
3179                fast/viewport/viewport-122.html
3180                fast/viewport/viewport-123.html
3181                fast/viewport/viewport-124.html
3182                fast/viewport/viewport-125.html
3183                fast/viewport/viewport-126.html
3184                fast/viewport/viewport-127.html
3185                fast/viewport/viewport-13.html
3186                fast/viewport/viewport-14.html
3187                fast/viewport/viewport-15.html
3188                fast/viewport/viewport-16.html
3189                fast/viewport/viewport-17.html
3190                fast/viewport/viewport-18.html
3191                fast/viewport/viewport-19.html
3192                fast/viewport/viewport-2.html
3193                fast/viewport/viewport-20.html
3194                fast/viewport/viewport-21.html
3195                fast/viewport/viewport-22.html
3196                fast/viewport/viewport-23.html
3197                fast/viewport/viewport-24.html
3198                fast/viewport/viewport-25.html
3199                fast/viewport/viewport-26.html
3200                fast/viewport/viewport-27.html
3201                fast/viewport/viewport-28.html
3202                fast/viewport/viewport-29.html
3203                fast/viewport/viewport-3.html
3204                fast/viewport/viewport-30.html
3205                fast/viewport/viewport-31.html
3206                fast/viewport/viewport-32.html
3207                fast/viewport/viewport-33.html
3208                fast/viewport/viewport-34.html
3209                fast/viewport/viewport-35.html
3210                fast/viewport/viewport-36.html
3211                fast/viewport/viewport-37.html
3212                fast/viewport/viewport-38.html
3213                fast/viewport/viewport-39.html
3214                fast/viewport/viewport-4.html
3215                fast/viewport/viewport-40.html
3216                fast/viewport/viewport-41.html
3217                fast/viewport/viewport-42.html
3218                fast/viewport/viewport-43.html
3219                fast/viewport/viewport-44.html
3220                fast/viewport/viewport-45.html
3221                fast/viewport/viewport-46.html
3222                fast/viewport/viewport-47.html
3223                fast/viewport/viewport-48.html
3224                fast/viewport/viewport-49.html
3225                fast/viewport/viewport-5.html
3226                fast/viewport/viewport-50.html
3227                fast/viewport/viewport-51.html
3228                fast/viewport/viewport-52.html
3229                fast/viewport/viewport-53.html
3230                fast/viewport/viewport-54.html
3231                fast/viewport/viewport-55.html
3232                fast/viewport/viewport-56.html
3233                fast/viewport/viewport-57.html
3234                fast/viewport/viewport-58.html
3235                fast/viewport/viewport-59.html
3236                fast/viewport/viewport-6.html
3237                fast/viewport/viewport-60.html
3238                fast/viewport/viewport-61.html
3239                fast/viewport/viewport-62.html
3240                fast/viewport/viewport-63.html
3241                fast/viewport/viewport-64.html
3242                fast/viewport/viewport-65.html
3243                fast/viewport/viewport-66.html
3244                fast/viewport/viewport-67.html
3245                fast/viewport/viewport-68.html
3246                fast/viewport/viewport-69.html
3247                fast/viewport/viewport-7.html
3248                fast/viewport/viewport-70.html
3249                fast/viewport/viewport-71.html
3250                fast/viewport/viewport-72.html
3251                fast/viewport/viewport-73.html
3252                fast/viewport/viewport-74.html
3253                fast/viewport/viewport-75.html
3254                fast/viewport/viewport-76.html
3255                fast/viewport/viewport-77.html
3256                fast/viewport/viewport-78.html
3257                fast/viewport/viewport-79.html
3258                fast/viewport/viewport-8.html
3259                fast/viewport/viewport-80.html
3260                fast/viewport/viewport-81.html
3261                fast/viewport/viewport-82.html
3262                fast/viewport/viewport-83.html
3263                fast/viewport/viewport-84.html
3264                fast/viewport/viewport-85.html
3265                fast/viewport/viewport-86.html
3266                fast/viewport/viewport-87.html
3267                fast/viewport/viewport-88.html
3268                fast/viewport/viewport-9.html
3269                fast/viewport/viewport-90.html
3270
3271         * dom/ViewportArguments.cpp:
3272         (WebCore::findConfigurationForViewportData):
3273         (WebCore::findSizeValue):
3274         (WebCore::findScaleValue):
3275         (WebCore::findUserScalableValue):
3276         (WebCore::findTargetDensityDPIValue):
3277         (WebCore::setViewportFeature):
3278         * dom/ViewportArguments.h:
3279         (WebCore::ViewportArguments::):
3280         (WebCore::ViewportArguments::ViewportArguments):
3281         (WebCore::ViewportArguments::hasCustomArgument):
3282
3283 2010-09-13  Andreas Kling  <andreas.kling@nokia.com>
3284
3285         Reviewed by Kenneth Rohde Christiansen.
3286
3287         [Qt] Don't add empty strings to list of supported image MIME types
3288         https://bugs.webkit.org/show_bug.cgi?id=45643
3289
3290         After <http://trac.webkit.org/changeset/67355> getMIMETypeForExtension()
3291         returns an empty string instead of "application/octet-stream" for unsupported
3292         extensions. Don't add these to the list of supported types, and clean out
3293         the logic that removed "application/octet-stream" from supported types.
3294
3295         Fixes crash in initializeMIMETypeRegistry() due to inserting String() into
3296         a HashSet<String>.
3297
3298         * platform/MIMETypeRegistry.cpp:
3299         (WebCore::initializeSupportedImageMIMETypes):
3300         (WebCore::initializeSupportedImageMIMETypesForEncoding):
3301
3302 2010-09-13  Adam Barth  <abarth@webkit.org>
3303
3304         Attempted Qt build fix.
3305
3306         * html/parser/HTMLElementStack.cpp:
3307
3308 2010-09-13  Adam Barth  <abarth@webkit.org>
3309
3310         Reviewed by Eric Seidel.
3311
3312         Apply spec changes to InForeignContentMode
3313         https://bugs.webkit.org/show_bug.cgi?id=45636
3314
3315         Now breaking out of foreign content doesn't always bring you back to
3316         HTML.  If you have a foreign content element that can contain HTML, you
3317         just get brought back to that element.
3318
3319         * html/parser/HTMLElementStack.cpp:
3320         (WebCore::HTMLNames::isForeignContentScopeMarker):
3321         (WebCore::HTMLElementStack::popUntilForeignContentScopeMarker):
3322         * html/parser/HTMLElementStack.h:
3323         * html/parser/HTMLTreeBuilder.cpp:
3324         (WebCore::HTMLTreeBuilder::processStartTag):
3325         (WebCore::HTMLTreeBuilder::processEndOfFile):
3326
3327 2010-09-13  Adam Barth  <abarth@webkit.org>
3328
3329         Reviewed by Eric Seidel.
3330
3331         Convert notImplemented() to ASSERT_NOT_REACHED
3332         https://bugs.webkit.org/show_bug.cgi?id=45639
3333
3334         The reason we never implemented this state is because it's not actually
3335         reachable.
3336
3337         * html/parser/HTMLTreeBuilder.cpp:
3338         (WebCore::HTMLTreeBuilder::processStartTag):
3339
3340 2010-09-13  Patrick Gansterer  <paroga@paroga.com>
3341
3342         Reviewed by Kenneth Rohde Christiansen.
3343
3344         [WINCE] Buildfix for ScrollAnimatorWin
3345         https://bugs.webkit.org/show_bug.cgi?id=45595
3346
3347         Use fabs() instead of abs().
3348
3349         * platform/ScrollAnimatorWin.cpp:
3350         (WebCore::ScrollAnimatorWin::scroll):
3351         (WebCore::ScrollAnimatorWin::animateScroll):
3352
3353 2010-09-13  Adam Barth  <abarth@webkit.org>
3354
3355         Reviewed by Eric Seidel.
3356
3357         Remove fixed FIXME
3358         https://bugs.webkit.org/show_bug.cgi?id=45637
3359
3360         The spec made assertions that were false.  Hixie fixed the spec by
3361         removing the assertions.  There's no need to keep these FIXMEs in the
3362         code.
3363
3364         * html/parser/HTMLTreeBuilder.cpp:
3365         (WebCore::HTMLTreeBuilder::processEndTagForInCell):
3366
3367 2010-09-12  Adam Barth  <abarth@webkit.org>
3368
3369         Reviewed by Eric Seidel.
3370
3371         Remove FIXME now that the HTML5 spec has been updated
3372         https://bugs.webkit.org/show_bug.cgi?id=45634
3373
3374         The spec changed to say what we do here so this FIXME isn't needed
3375         anymore.
3376
3377         Tests: fast/parser/form-pointer-1.html
3378                fast/parser/form-pointer-2.html
3379                fast/parser/form-pointer-3.html
3380                fast/parser/form-pointer-4.html
3381
3382         * html/parser/HTMLTreeBuilder.cpp:
3383         (WebCore::HTMLTreeBuilder::processStartTagForInTable):
3384
3385 2010-09-12  Robin Qiu  <robin.qiu@torchmobile.com.cn>
3386
3387         Reviewed by Antonio Gomes.
3388
3389         https://bugs.webkit.org/show_bug.cgi?id=18768
3390         Fixed a bug in scroll flow. When we don't have scrollbars, we need to
3391         repaintFixedElementsAfterScrolling(), sendScrollEvent() ... as well as
3392         scrollContents();
3393
3394         Tests: scrollbars/scrollevent-iframe-no-scrolling-wheel.html
3395                scrollbars/scrollevent-iframe-no-scrolling.html
3396
3397         * page/FrameView.cpp:
3398         (WebCore::FrameView::valueChanged): Added.
3399         * page/FrameView.h: Added a new method.
3400         * platform/ScrollView.cpp:
3401         (WebCore::ScrollView::valueChanged): Added.
3402         (WebCore::ScrollView::updateScrollbars):
3403         * platform/ScrollView.h: Added a new method.
3404
3405 2010-09-10  MORITA Hajime  <morrita@google.com>
3406
3407         Reviewed by Tony Chang.
3408
3409         [Chromium] Implement textInputController.hasSpellingMarker() for Chromium
3410         https://bugs.webkit.org/show_bug.cgi?id=45441
3411         
3412         Added an  API for testing marker state. 
3413         We locate this here instead of DRT for sharing the logic between
3414         multiple ports.
3415
3416         * WebCore.exp.in:
3417         * editing/Editor.cpp:
3418         (WebCore::Editor::selectionStartHasSpellingMarkerFor):
3419         * editing/Editor.h:
3420
3421 2010-09-12  Adam Barth  <abarth@webkit.org>
3422
3423         Reviewed by Eric Seidel.
3424
3425         Adoption agency should use takeAllChildrenFrom
3426         https://bugs.webkit.org/show_bug.cgi?id=45570
3427
3428         Before this patch, we were using an unsafe pattern of walking the
3429         sibling list without grabbing references.  Instead, we should use the
3430         shiny new takeAllChildrenFrom method that shoves the children into a
3431         vector first.  Also, update takeAllChildrenFrom to handle the case
3432         where the old parent is attached.
3433
3434         * dom/ContainerNode.cpp:
3435         (WebCore::ContainerNode::takeAllChildrenFrom):
3436         * html/parser/HTMLTreeBuilder.cpp:
3437         (WebCore::HTMLTreeBuilder::callTheAdoptionAgency):
3438         * html/parser/HTMLTreeBuilder.h:
3439
3440 2010-09-12  Adam Barth  <abarth@webkit.org>
3441
3442         Reviewed by Eric Seidel.
3443
3444         isParsingFragment assert hit in new treebuilder
3445         https://bugs.webkit.org/show_bug.cgi?id=45621
3446
3447         Update our list of special tags to match the spec.
3448
3449         * html/parser/HTMLTreeBuilder.cpp:
3450
3451 2010-09-12  Robert Hogan  <robert@webkit.org>
3452
3453         Reviewed by Andreas Kling.
3454
3455         [Qt] Fix http/tests/navigation/reload-subframe-object.html
3456
3457         We need to bring our use of getMimeTypeForPath() and
3458         getMimeTypeForExtension() into line with WebCore expectations.
3459
3460         We should use MIMETypeRegistry::getMIMETypeForExtension() for cases
3461         where an empty mimetype should be returned if no match is found, and
3462         MIMETypeRegistry::getMIMETypeForPath() for cases where
3463         'application/octet-stream' should be returned if no match is found.
3464
3465         Fixes http/tests/navigation/reload-subframe-object.html
3466
3467         Based on findings in webkit.org/b/31398 and webkit.org/b/15554.
3468
3469         https://bugs.webkit.org/show_bug.cgi?id=45613
3470
3471         * platform/network/qt/QNetworkReplyHandler.cpp:
3472         (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
3473         * platform/qt/MIMETypeRegistryQt.cpp:
3474         (WebCore::MIMETypeRegistry::getMIMETypeForExtension):
3475
3476 2010-09-12  Dan Bernstein  <mitz@apple.com>
3477
3478         Reviewed by Adele Peterson.
3479
3480         Neglect unlikely hyphenation opportunities
3481         https://bugs.webkit.org/show_bug.cgi?id=45606
3482
3483         Avoid looking for hyphenation points in about 40% of the cases at the cost of missing about
3484         3% of the hyphenation opportunities.
3485
3486         * rendering/RenderBlockLineLayout.cpp:
3487         (WebCore::tryHyphenating): Bail out if the widest the prefix before the hyphen can be is no more
3488         than 5/4 the font size.
3489
3490 2010-09-12  Oswald Buddenhagen  <oswald.buddenhagen@nokia.com>
3491
3492         Reviewed by Simon Hausmann.
3493
3494         [Qt] fix qt_webkit_version.pri install for in-Qt builds
3495
3496         Always add the target, even if building inside Qt - as opposed to the
3497         headers and libraries, there are no rules for that coming from
3498         qbase.pri.
3499
3500         Task-number: QTBUG-13306
3501
3502         * WebCore.pro:
3503
3504 2010-09-12  Oswald Buddenhagen  <oswald.buddenhagen@nokia.com>
3505
3506         Reviewed by Simon Hausmann.
3507
3508         [Qt] Let QtWebKit inject itself into the qt configuration
3509
3510         i.e., don't explicitly deal with qt_webkit_version.pri outside of the
3511         webkit source directory.
3512
3513         Task-number: QTBUG-12379
3514
3515         * WebCore.pro:
3516
3517 2010-09-12  Simon Hausmann  <simon.hausmann@nokia.com>
3518
3519         [Qt] Build fix.
3520
3521         * WebCore.pro: Re-add erroneously removed sources.
3522
3523 2010-09-12  Andreas Kling  <andreas.kling@nokia.com>
3524
3525         Reviewed by Kenneth Rohde Christiansen.
3526
3527         [Qt] Remove Path::closeSubpath() workaround for broken miter joins
3528         https://bugs.webkit.org/show_bug.cgi?id=45618
3529
3530         Removed Path::closeCanvasSubpath() and share the logic between Canvas and SVG
3531         paths. The problem was actually in Qt's path stroker and has been fixed for Qt 4.7.1.
3532
3533         * html/canvas/CanvasRenderingContext2D.cpp:
3534         (WebCore::CanvasRenderingContext2D::closePath):
3535         * platform/graphics/Path.h:
3536         * platform/graphics/qt/PathQt.cpp:
3537
3538 2010-09-12  Simon Hausmann  <simon.hausmann@nokia.com>
3539
3540         Fix the Gtk and minimal builds.
3541
3542         * plugins/PluginView.cpp:
3543         (WebCore::PluginView::npObject): Correct the #ifdefs.
3544         (WebCore::PluginView::bindingInstance): Moved npErr variable
3545         into npObject() function where it is used.
3546
3547 2010-09-12  Simon Hausmann  <simon.hausmann@nokia.com>
3548
3549         [Qt] Prospective build fix for minimal build.
3550
3551         * plugins/PluginView.cpp: Guard newly added function
3552         by ENABLE_NETSCAPE_PLUGIN feature.
3553         (WebCore::PluginView::npObject):
3554         * plugins/PluginView.h:
3555
3556 2010-09-12  Simon Hausmann  <simon.hausmann@nokia.com>
3557
3558         Reviewed by Andreas Kling.
3559
3560         [Qt] Add support for binding QtWebKit to a QScriptEngine.
3561
3562         The ScriptController owns the V8 context, and this patch
3563         for the Qt build also gives it a QScriptEngine, that has
3564         been instructed to adopt the V8 context.
3565
3566         This is the enabler for the QObject bindings, used in
3567         the API and DRT.
3568
3569         * WebCore.pro:
3570         * bindings/v8/ScriptController.cpp: Include QScriptEngine
3571         for the Qt build, to let the ~ScriptController destructor
3572         find the QScriptEngine destructor (via OwnPtr).
3573         * bindings/v8/ScriptController.h: Declare getters.
3574         * bindings/v8/ScriptControllerQt.cpp: Added.
3575         (WebCore::ScriptController::qtScriptEngine): Implement
3576         engine adoption.
3577
3578 2010-09-12  Simon Hausmann  <simon.hausmann@nokia.com>
3579
3580         Reviewed by Andreas Kling.
3581
3582         [Qt] Last bits and pieces for a V8 build.
3583
3584         When building with V8, get it from QtScript.
3585
3586         * WebCore.pro: Use QtScript, removed non-existant
3587         bridge files from the build.
3588
3589 2010-09-12  Simon Hausmann  <simon.hausmann@nokia.com>
3590
3591         Reviewed by Andreas Kling.
3592
3593         [Qt] Add PlatformBridge for V8 build.
3594
3595         Add the minimalisting platform bridge with the two
3596         methods needed by NPV8Object.cpp.