bb425010c7637ee5ac21ef52e1f184e565d29fe6
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2011-09-21  Beth Dakin  <bdakin@apple.com>
2
3         https://bugs.webkit.org/show_bug.cgi?id=67415
4         Text drawn via -webkit-background-clip:text is blurry at device scale factors >1.0
5         -and corresponding-
6         <rdar://problem/10060379>
7
8         Reviewed by Darin Adler.
9
10         New helper function RenderBoxModelObject scales the mask image by the 
11         deviceScaleFactor to get an image of the appropriate resolution. It also scales 
12         the image's GraphicsContext so that the clip is set up on the same scale. Back in 
13         paintFillLayerExtended() we still clip the image to the original maskRect to get 
14         everything scaled back to the appropriate size.
15         * rendering/RenderBoxModelObject.cpp:
16         (WebCore::createDeviceScaledImageBuffer):
17         (WebCore::RenderBoxModelObject::paintFillLayerExtended):
18
19         Make the deviceScaleFactor convenience function just a namespace-level function in 
20         Page rather than a static member or Page.
21         * page/Page.cpp:
22         (WebCore::deviceScaleFactor):
23         * page/Page.h:
24         
25         Pre-existing callers of Page::deviceScaleFactor(Frame*) must now use 
26         WebCore::deviceScaleFactor(Frame*)
27         * editing/DeleteButtonController.cpp:
28         (WebCore::DeleteButtonController::createDeletionUI):
29         * rendering/RenderImage.cpp:
30         (WebCore::RenderImage::imageSizeForError):
31         (WebCore::RenderImage::paintReplaced):
32         * rendering/RenderLayer.cpp:
33         (WebCore::RenderLayer::drawPlatformResizerImage):
34
35 2011-09-21  Tim Horton  <timothy_horton@apple.com>
36
37         [CG] ImageBufferData::getData has an invariant comparison in the inner part of a loop which doesn't get optimized out
38         https://bugs.webkit.org/show_bug.cgi?id=68588
39         <rdar://problem/10164955>
40
41         Reviewed by Simon Fraser.
42
43         Factor the unmultiplied check out of the inner loop, resulting in a
44         speed bump in ImageBufferData::getData.
45
46         No new tests, performance improvement.
47
48         * platform/graphics/cg/ImageBufferDataCG.cpp:
49         (WebCore::ImageBufferData::getData):
50
51 2011-09-21  Sameer Patil  <mkrp87@motorola.com>
52
53         :hover selector fails when hovering over a child select element with size attribute
54         https://bugs.webkit.org/show_bug.cgi?id=67594
55
56         Reviewed by Darin Adler.
57
58         Test: fast/css/hover-affects-ancestor.html
59
60         This patch addresses the problem of deactivation of the ancestor element :hover rules
61         when hovered its contained elements.
62
63         * rendering/RenderLayer.cpp:
64         (WebCore::RenderLayer::updateHoverActiveState):
65
66 2011-09-21  Sergey Glazunov  <serg.glazunov@gmail.com>
67
68         [Chromium] Protect message ports from being deleted in V8MessageEvent::portsAccessorGetter
69         https://bugs.webkit.org/show_bug.cgi?id=68584
70
71         Reviewed by Adam Barth.
72
73         Test: fast/dom/message-port-deleted-by-accessor.html
74
75         * bindings/v8/custom/V8MessageEventCustom.cpp:
76         (WebCore::V8MessageEvent::portsAccessorGetter):
77
78 2011-09-21  Anders Carlsson  <andersca@apple.com>
79
80         Add back protection against the NSView going away while handling mouseDown
81         https://bugs.webkit.org/show_bug.cgi?id=68585
82
83         Reviewed by Darin Adler.
84
85         Add calls to RenderWidget::suspendWidgetHierarchyUpdates() and RenderWidget::resumeWidgetHierarchyUpdates(),
86         as a followup fix to https://bugs.webkit.org/show_bug.cgi?id=68570.
87
88         * page/mac/EventHandlerMac.mm:
89         (WebCore::EventHandler::passMouseDownEventToWidget):
90
91 2011-09-21  Julien Chaffraix  <jchaffraix@webkit.org>
92
93         Crash in RenderBox::paintMaskImages when GraphicsContext's painting is disabled
94         https://bugs.webkit.org/show_bug.cgi?id=68133
95
96         Reviewed by Darin Adler.
97
98         Tests: fast/css/webkit-mask-crash-fieldset-legend.html
99                fast/css/webkit-mask-crash-figure.html
100                fast/css/webkit-mask-crash-table.html
101                fast/css/webkit-mask-crash-td-2.html
102                fast/css/webkit-mask-crash-td.html
103
104         GraphicsContext::getCTM crashes if called with a GraphicsContext that has painting
105         disabled. RenderBox::paintMaskImages would thus crash if called in this condition.
106
107         This change just modifies the different GraphicsContext::getCTM method to bail early
108         if painting is disabled on the GraphicsContext. The rest of the change is exposing
109         paintControlTints that exposes this.
110
111         * WebCore.exp.in: Added symbols of the newly export window.internals function.
112
113         * page/FrameView.cpp:
114         (WebCore::FrameView::updateControlTints): Split this function in 2 so that
115         I can expose the internal paintControlTints.
116
117         (WebCore::FrameView::paintControlTints):
118         This is the one exposed to Internals as we want to be testable regardless of
119         whether the platform supports control tints.
120
121         * page/FrameView.h: Added paintControlTints.
122
123         * testing/Internals.cpp:
124         (WebCore::Internals::paintControlTints):
125         * testing/Internals.h:
126         * testing/Internals.idl:
127         Added a way to force a fake painting so that we can easily reproduce the bugs.
128
129         * platform/graphics/cairo/GraphicsContextCairo.cpp:
130         (WebCore::GraphicsContext::getCTM):
131         * platform/graphics/cg/GraphicsContextCG.cpp:
132         (WebCore::GraphicsContext::getCTM):
133         * platform/graphics/qt/GraphicsContextQt.cpp:
134         (WebCore::GraphicsContext::getCTM):
135         * platform/graphics/skia/GraphicsContextSkia.cpp:
136         (WebCore::GraphicsContext::getCTM):
137         * platform/graphics/wince/GraphicsContextWinCE.cpp:
138         (WebCore::GraphicsContext::getCTM):
139         * platform/graphics/wx/GraphicsContextWx.cpp:
140         (WebCore::GraphicsContext::getCTM):
141         Fixed all our back-end to exit early if painting is disabled.
142
143 2011-09-19  Jer Noble  <jer.noble@apple.com>
144
145         Add settings to control the availability of the Web Audio API to WebKit and WebKit2.
146         https://bugs.webkit.org/show_bug.cgi?id=68382
147
148         Reviewed by Darin Adler.
149
150         Only create a AudioContext object if the Web Audio feature is runtime-enabled in Settings.
151
152         No new tests, as this feature is not yet enabled by default.
153
154         * bindings/js/JSDOMWindowCustom.cpp:
155         (WebCore::JSDOMWindow::webkitAudioContext):
156
157 2011-09-21  Anders Carlsson  <andersca@apple.com>
158
159         Remove checks for Leopard-only Objective-C APIs
160         https://bugs.webkit.org/show_bug.cgi?id=68579
161
162         Reviewed by Sam Weinig.
163
164         We can always assume that OBJC_API_VERSION is at least 2, it's been 2 since Leopard.
165
166         * bridge/objc/objc_class.mm:
167         (JSC::Bindings::ObjcClass::methodsNamed):
168         (JSC::Bindings::ObjcClass::fieldNamed):
169         * bridge/objc/objc_instance.mm:
170         (allocateAutoReleasePool):
171         * bridge/objc/objc_runtime.mm:
172         (JSC::Bindings::ObjcField::ObjcField):
173         * page/mac/EventHandlerMac.mm:
174
175 2011-09-21  Anders Carlsson  <andersca@apple.com>
176
177         Remove Widget::beforeMouseDown and Widget::afterMouseDown
178         https://bugs.webkit.org/show_bug.cgi?id=68570
179
180         Reviewed by Sam Weinig.
181
182         These two member functions were originally added to avoid crashes due to removing NSViews while they were
183         being tracked by AppKit. Since they were added, we've moved away from NSViews for form controls, and the bugs in
184         AppKit that lead to crashes have been fixed.
185
186         * page/mac/EventHandlerMac.mm:
187         (WebCore::EventHandler::passMouseDownEventToWidget):
188         * platform/Widget.h:
189         * platform/mac/WidgetMac.mm:
190         (WebCore::Widget::Widget):
191         (WebCore::Widget::removeFromSuperview):
192
193         * rendering/RenderWidget.cpp:
194         Change widgetHierarchyUpdateSuspendCount to be an unsigned integer instead of a size_t.
195
196 2011-09-21  Abhishek Arya  <inferno@chromium.org>
197
198         Not use anonymousContainer on beforeChild calculation
199         and let later code handle it. Fix style update on block-level
200         anonymous objects.
201         https://bugs.webkit.org/show_bug.cgi?id=67656
202
203         Reviewed by David Hyatt.
204
205         Test: fast/table/quote-text-around-iframe.html
206
207         * rendering/RenderTable.cpp:
208         (WebCore::RenderTable::addChild):
209         * rendering/RenderTableCell.cpp:
210         (WebCore::RenderTableCell::styleDidChange):
211         * rendering/RenderTableRow.cpp:
212         (WebCore::RenderTableRow::addChild):
213         * rendering/RenderObject.cpp:
214         (WebCore::RenderObject::propagateStyleToAnonymousChildren):
215
216 2011-09-21  David Hyatt  <hyatt@apple.com>
217
218         https://bugs.webkit.org/show_bug.cgi?id=68562
219         
220         Pagination struts don't update properly when collapsing margin estimates are wrong.
221         
222         Refactor the pagination adjustments that happen during block layout to allow for
223         a 3-pass layout system instead of just a 2-pass layout system. The basic idea is
224         to come up with an estimate that includes collapsing, clearance and pagination.
225         
226         If the estimate only with collapsing and clearance was wrong, then we lay out again
227         using the correct collapsing margin values and clearance before applying pagination breaks.
228         
229         After this second layout, the normal code that runs when unpaginated compares estimates
230         and lays out a third time to account for adjustments as a result of pagination movement.
231
232         Reviewed by Sam Weinig.
233
234         Added fast/regions/text-regions-split-small-pagination.html
235
236         * rendering/RenderBlock.cpp:
237         (WebCore::RenderBlock::estimateLogicalTopPosition):
238         (WebCore::RenderBlock::layoutBlockChild):
239         (WebCore::RenderBlock::adjustBlockChildForPagination):
240         * rendering/RenderBlock.h:
241
242 2011-09-21  James Robinson  <jamesr@chromium.org>
243
244         [chromium] SharedGraphicsContext3D's context should not be destroyed during atexit
245         https://bugs.webkit.org/show_bug.cgi?id=68558
246
247         Reviewed by Stephen White.
248
249         The SharedGraphicsContext3D's internal context is lazily created and then leaked intentionally, but since the
250         last ref is in a function-static RefPtr<> it ends up being destroyed at process exit time.  This is bad, since
251         by the time we get this far in process shutdown we can't actually cleanly run the destruction logic and we
252         crash.  Since we are explicitly leaking this for the lifetime of the process there's no point in keeping it in a
253         RefPtr<>
254
255         * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
256         (WebCore::SharedGraphicsContext3D::get):
257
258 2011-09-21  Sergey Glazunov  <serg.glazunov@gmail.com>
259
260         [Chromium] Protect the Frame in V8HTMLDocument::openCallback
261         https://bugs.webkit.org/show_bug.cgi?id=68555
262
263         Reviewed by Nate Chapin.
264
265         Test: fast/dom/frame-deleted-in-document-open.html
266
267         * bindings/v8/custom/V8HTMLDocumentCustom.cpp:
268         (WebCore::V8HTMLDocument::openCallback):
269
270 2011-09-21  Adam Klein  <adamk@chromium.org>
271
272         Clean up CSS Counter code
273         https://bugs.webkit.org/show_bug.cgi?id=68492
274
275         Reviewed by Tony Chang.
276
277         Several cleanups/fixes:
278         - Make Counter::listStyle() return the actual list style string,
279           rather than empty string.
280         - Handle a specified list style of "none" correctly when generating
281           cssText and in Counter::listStyle().
282         - Use StringBuilder when generating cssText.
283
284         Test: fast/css/counters/getCounterValue.html
285
286         * css/CSSParser.cpp:
287         (WebCore::CSSParser::parseCounterContent):
288         Simplify processing (moving conversion to CSSStyleSelector),
289         pass a CSS_IDENT as the listStyle to Counter::create.
290         * css/CSSPrimitiveValue.cpp:
291         (WebCore::CSSPrimitiveValue::cssText):
292         Use StringBuilder.
293         * css/CSSStyleSelector.cpp:
294         (WebCore::CSSStyleSelector::applyProperty):
295         Convert from a CSS_IDENT to an EListStyleType.
296         * css/Counter.h:
297         (WebCore::Counter::listStyleIdent):
298         Renamed from listStyleNumber to match its new functionality.
299
300 2011-09-21  Chris Marrin  <cmarrin@apple.com>
301
302         Check in WebCore.vcproj file unchanged but written like MSDev likes it
303
304         Unreviewed.
305
306         * WebCode.vcproj/WebCore.vcproj:
307
308 2011-09-21  Stephen White  <senorblanco@chromium.org>
309
310         [chromium] Optimize ImageBuffer constructor when accelerated
311         https://bugs.webkit.org/show_bug.cgi?id=68501
312
313         If the accelerated rendering mode is passed in to ImageBuffer, instead
314         of creating a bitmap PlatformCanvas and subsequently replacing its
315         device with an SkGpuDevice, create an SkCanvas and SkGpuDevice first,
316         and fall back to raster creation only failure.  This saves on system
317         RAM for the backing store (and possibly GDI resources).
318
319         Reviewed by James Robinson.
320
321         Covered by existing tests.
322
323         * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
324         (WebCore::SharedGraphicsContext3D::get):
325         * platform/graphics/gpu/SharedGraphicsContext3D.h:
326         Rename "SharedGraphicsContext3D::create()" to "get()" to more
327         accurately reflect its function.
328         * platform/graphics/skia/ImageBufferSkia.cpp:
329         (WebCore::createAcceleratedCanvas):
330         Refactor creation of accelerated ImageBuffer.
331         (WebCore::ImageBuffer::ImageBuffer):
332         Attempt creation of accelerated ImageBuffer first, and only fall back
333         to bitmap-backed canvas creation if it fails.
334
335 2011-09-21  Dan Bernstein  <mitz@apple.com>
336
337         WebCore part of: Prevent the WebKit frameworks from defining inappropriately-named Objective-C classes
338         https://bugs.webkit.org/show_bug.cgi?id=68451
339
340         Reviewed by Darin Adler.
341
342         * WebCore.xcodeproj/project.pbxproj: Added a script build phase that invokes
343         check-for-inappropriate-objc-class-names, allowing only class names prefixed with "DOM" or "Web".
344
345 2011-09-21  Dan Bernstein  <mitz@apple.com>
346
347         <rdar://problem/9768483> REGRESSION: Crash in RenderBlock::removeFloatingObjectsBelow()
348         https://bugs.webkit.org/show_bug.cgi?id=68550
349
350         Reviewed by Darin Adler.
351
352         Test: fast/multicol/null-lastFloat-in-removeFloatingObjectsBelow.html
353
354         * rendering/RenderBlock.cpp:
355         (WebCore::RenderBlock::removeFloatingObjectsBelow): Break out of the while() loop when the
356         floating object set is empty, which can happen if there were no floats on previous lines
357         (in which case, lastFloat is 0).
358
359 2011-09-21  ChangSeok Oh  <shivamidow@gmail.com>
360
361         [GTK] Fix build break when enabling webgl on r95593
362         https://bugs.webkit.org/show_bug.cgi?id=68502
363
364         Reviewed by Martin Robinson.
365
366         Add PassOwnPtr.h to GC3DPrivate.h and remove useless one from GC3DGtk.cpp & GC3DPrivate.cpp
367
368         No tests required.
369
370         * platform/graphics/gtk/GraphicsContext3DGtk.cpp:
371         * platform/graphics/gtk/GraphicsContext3DPrivate.cpp:
372         * platform/graphics/gtk/GraphicsContext3DPrivate.h:
373
374 2011-09-21  Vsevolod Vlasov  <vsevik@chromium.org>
375
376         Web Inspector: clear resource agent resource cache upon resource agent's disable.
377         https://bugs.webkit.org/show_bug.cgi?id=67995
378
379         Reviewed by Pavel Feldman.
380
381         Test: http/tests/inspector/network/network-disabling-check-no-memory-leak.html
382
383         * inspector/InspectorResourceAgent.cpp:
384         (WebCore::InspectorResourceAgent::disable):
385
386 2011-09-21  David Hyatt  <hyatt@apple.com>
387
388         https://bugs.webkit.org/show_bug.cgi?id=68543
389         
390         Make sure that when regions change dimensions we recompute pagination slices.
391
392         Reviewed by Simon Fraser.
393
394         Added new tests in fast/regions.
395
396         * rendering/LayoutState.cpp:
397         (WebCore::LayoutState::LayoutState):
398         * rendering/LayoutState.h:
399         * rendering/RenderFlowThread.cpp:
400         (WebCore::RenderFlowThread::layout):
401         (WebCore::RenderFlowThread::renderRegionForLine):
402         (WebCore::RenderFlowThread::regionLogicalWidthForLine):
403         * rendering/RenderRegion.cpp:
404         (WebCore::RenderRegion::layout):
405         * rendering/RenderView.cpp:
406         (WebCore::RenderView::pushLayoutState):
407         * rendering/RenderView.h:
408         (WebCore::LayoutStateMaintainer::LayoutStateMaintainer):
409         (WebCore::LayoutStateMaintainer::push):
410
411 2011-09-21  Xianzhu Wang  <wangxianzhu@chromium.org>
412
413         Ensure TestWebKitAPI works on mac, win, chromium-mac and chromium-linux
414         https://bugs.webkit.org/show_bug.cgi?id=68206
415
416         Reviewed by Tony Chang.
417
418         Added two new wtf headers into ForwardingHeaders/wtf to make
419         #include <wtf/...h> cross-platform.
420         No new tests needed.
421
422         * ForwardingHeaders/wtf/MetaAllocator.h: Added.
423         * ForwardingHeaders/wtf/RedBlackTree.h: Added.
424
425 2011-09-21  David Delaune  <david.delaune@googlemail.com>
426
427         [WinCairo] IconDatabase::defaultIcon always fails for non-CAN_THEME_URL_ICON builds.
428         https://bugs.webkit.org/show_bug.cgi?id=67469
429
430         Reviewed by Brent Fulgham.
431
432         No new functionality added in this change.
433
434         * loader/icon/IconDatabase.cpp: defining CAN_THEME_URL_ICON for the WIN_CAIRO
435
436 2011-09-20  Ryosuke Niwa  <rniwa@webkit.org>
437
438         Span element gets produced using backspace/delete to merge header with paragraph
439         https://bugs.webkit.org/show_bug.cgi?id=68413
440
441         Reviewed by Darin Adler.
442
443         Add p element to the list of elements to retain appearance. Also modified removeStyleFromNode
444         (and renamed to removeStyleFromRules) not to remove inline style declarations because
445         inline styles need to stay on copy.
446
447         Test: editing/deleting/merge-paragraph-from-p-with-style.html
448
449         * editing/DeleteSelectionCommand.cpp:
450         (WebCore::DeleteSelectionCommand::saveTypingStyleState):
451         * editing/EditingStyle.cpp:
452         (WebCore::EditingStyle::removeStyleFromRules): Renamed from removeStyleFromNode.
453         * editing/EditingStyle.h:
454         * editing/markup.cpp:
455         (WebCore::isBlockNodeToRetainAppearance):
456         (WebCore::StyledMarkupAccumulator::serializeNodes):
457
458 2011-09-21  Alice Boxhall  <aboxhall@chromium.org>
459
460         Report AXValueChanged when value changes in element with role=textbox.
461         https://bugs.webkit.org/show_bug.cgi?id=68201
462
463         Reviewed by Chris Fleizach.
464
465         Test: platform/mac/accessibility/textbox-role-reports-notifications.html
466
467         * accessibility/AccessibilityObject.cpp:
468         (WebCore::AccessibilityObject::isARIATextControl):
469         * accessibility/AccessibilityObject.h:
470         * accessibility/AccessibilityRenderObject.cpp:
471         (WebCore::AccessibilityRenderObject::contentChanged):
472         (WebCore::AccessibilityRenderObject::childrenChanged):
473
474 2011-09-21  Pavel Feldman  <pfeldman@google.com>
475
476         Web Inspector: introduce Page.enable and Page.disable
477         https://bugs.webkit.org/show_bug.cgi?id=68530
478
479         Otherwise protocol is violating the contract of not sending
480         notifications by default.
481
482         Reviewed by Yury Semikhatsky.
483
484         * inspector/Inspector.json:
485
486 2011-09-21  Pavel Feldman  <pfeldman@google.com>
487
488         Web Inspector: add minimal error handling to the DOM breakpoints.
489         https://bugs.webkit.org/show_bug.cgi?id=68537
490
491         Reviewed by Yury Semikhatsky.
492
493         * inspector/InspectorDOMAgent.h:
494         * inspector/InspectorDOMDebuggerAgent.cpp:
495         (WebCore::domTypeForName):
496         (WebCore::InspectorDOMDebuggerAgent::setDOMBreakpoint):
497         (WebCore::InspectorDOMDebuggerAgent::removeDOMBreakpoint):
498
499 2011-09-21  Ilya Tikhonovsky  <loislo@chromium.org>
500
501         Web Inspector: make WebInspector a bit more timeline friendly.
502         https://bugs.webkit.org/show_bug.cgi?id=68534
503
504         I found that the maximum captured stack frame depth tracked by timeline is not
505         very convenient because the average depth of call stack considerably more than five.
506         Another useful trick is console.timeStamp for all backend calls.
507
508         Reviewed by Yury Semikhatsky.
509
510         * inspector/CodeGeneratorInspector.pm:
511         * inspector/front-end/TimelinePanel.js:
512         (WebInspector.TimelinePanel.prototype._toggleTimelineButtonClicked):
513
514 2011-09-21  Jesus Sanchez-Palencia  <jesus.palencia@openbossa.org>
515
516         [Qt][WK2] Implement Download support in WebProcess
517         https://bugs.webkit.org/show_bug.cgi?id=68153
518
519         Reviewed by Andreas Kling.
520
521         Refactored QNetworkReplyHandler::finish() in order to add
522         and use the static function QNetworkReplyHandler::errorForReply().
523         This will be used by our Download implementation in WebKit2 (WebProcess)
524         when handling ResourceError.
525
526         * platform/network/qt/QNetworkReplyHandler.cpp:
527         (WebCore::QNetworkReplyHandler::finish):
528         (WebCore::QNetworkReplyHandler::errorForReply):
529         * platform/network/qt/QNetworkReplyHandler.h:
530         * platform/network/qt/ResourceRequest.h:
531
532 2011-09-21  Pavel Feldman  <pfeldman@google.com>
533
534         Web Inspector: paint box model colors in Metrics sidebar at all times, do not draw box outlines.
535         https://bugs.webkit.org/show_bug.cgi?id=68240
536
537         Today we paint backgrounds in Metrics box model on hover only - should be painted at all
538         times for the reference. Outlining boxes is highlight is wrong since outlines are outside
539         the corresponding box regions. We've seen few reports on that + Firebug does not do borders
540         for that reason.
541
542         Reviewed by Yury Semikhatsky.
543
544         * inspector/DOMNodeHighlighter.cpp:
545         * inspector/DOMNodeHighlighter.h:
546         * inspector/Inspector.json:
547         * inspector/InspectorDOMAgent.cpp:
548         (WebCore::InspectorDOMAgent::setHighlightDataFromConfig):
549         * inspector/front-end/Color.js:
550         * inspector/front-end/MetricsSidebarPane.js:
551         (WebInspector.MetricsSidebarPane.prototype._highlightDOMNode):
552         (WebInspector.MetricsSidebarPane.prototype._updateMetrics):
553         * inspector/front-end/inspector.css:
554         (.metrics .label):
555         * inspector/front-end/inspector.js:
556         (WebInspector.buildHighlightConfig):
557
558 2011-09-21  Andreas Kling  <kling@webkit.org>
559
560         Protect against misuse of EventListenerIterator.
561         https://bugs.webkit.org/show_bug.cgi?id=68364
562
563         Reviewed by Darin Adler.
564
565         In debug mode, keep track of the number of active EventListenerIterators
566         on an EventListenerMap, and assert that there are no iterators when the
567         map is being modified.
568
569         * dom/EventListenerMap.cpp:
570         (WebCore::EventListenerMap::EventListenerMap):
571         (WebCore::EventListenerMap::clear):
572         (WebCore::EventListenerMap::add):
573         (WebCore::EventListenerMap::remove):
574         (WebCore::EventListenerMap::find):
575         (WebCore::EventListenerMap::removeFirstEventListenerCreatedFromMarkup):
576         (WebCore::EventListenerMap::copyEventListenersNotCreatedFromMarkupToTarget):
577         (WebCore::EventListenerIterator::EventListenerIterator):
578         (WebCore::EventListenerIterator::~EventListenerIterator):
579         * dom/EventListenerMap.h:
580
581 2011-09-21  Pavel Feldman  <pfeldman@google.com>
582
583         Web Inspector: minor fixes in the DOM domain of the protocol.
584         https://bugs.webkit.org/show_bug.cgi?id=68517
585
586         Reviewed by Yury Semikhatsky.
587
588         * inspector/Inspector.json:
589         * inspector/InspectorDOMAgent.cpp:
590         (WebCore::InspectorDOMAgent::setAttributesAsText):
591         * inspector/InspectorDOMAgent.h:
592         * inspector/front-end/DOMAgent.js:
593         (WebInspector.DOMNode.prototype.setAttribute):
594
595 2011-09-16  Pavel Feldman  <pfeldman@google.com>
596
597         Web Inspector: limit the use of "Resource" term in the protocol.
598         https://bugs.webkit.org/show_bug.cgi?id=68250
599
600         Reviewed by Yury Semikhatsky.
601
602         * inspector/Inspector.json:
603         * inspector/InspectorResourceAgent.cpp:
604         (WebCore::InspectorResourceAgent::markResourceAsCached):
605         (WebCore::InspectorResourceAgent::didLoadResourceFromMemoryCache):
606         (WebCore::InspectorResourceAgent::setExtraHTTPHeaders):
607         (WebCore::InspectorResourceAgent::getResponseBody):
608         * inspector/InspectorResourceAgent.h:
609         * inspector/front-end/ExtensionServer.js:
610         (WebInspector.ExtensionServer.prototype._onAddRequestHeaders):
611         * inspector/front-end/NetworkManager.js:
612         (WebInspector.NetworkManager.prototype.requestContent):
613         (WebInspector.NetworkDispatcher.prototype.requestServedFromCache):
614         (WebInspector.NetworkDispatcher.prototype.requestServedFromMemoryCache):
615
616 2011-09-21  Sheriff Bot  <webkit.review.bot@gmail.com>
617
618         Unreviewed, rolling out r95608.
619         http://trac.webkit.org/changeset/95608
620         https://bugs.webkit.org/show_bug.cgi?id=68521
621
622         breaks GTK and Windows builds. Please check EWS next time.
623         (Requested by philn-tp on #webkit).
624
625         * html/HTMLBodyElement.cpp:
626         (WebCore::adjustForZoom):
627         (WebCore::HTMLBodyElement::setScrollLeft):
628         (WebCore::HTMLBodyElement::setScrollTop):
629         * loader/HistoryController.cpp:
630         (WebCore::HistoryController::saveScrollPositionAndViewStateToItem):
631         * page/DOMWindow.cpp:
632         (WebCore::DOMWindow::scrollX):
633         (WebCore::DOMWindow::scrollY):
634         (WebCore::DOMWindow::scrollTo):
635         * page/Frame.cpp:
636         (WebCore::Frame::pageScaleFactor):
637         * page/Frame.h:
638         * page/FrameView.cpp:
639         (WebCore::FrameView::applyOverflowToViewport):
640         (WebCore::FrameView::scrollXForFixedPosition):
641         (WebCore::FrameView::scrollYForFixedPosition):
642
643 2011-09-21  Pavel Feldman  <pfeldman@google.com>
644
645         Web Inspector: console panel's scroller is not properly aligned.
646         https://bugs.webkit.org/show_bug.cgi?id=68448
647
648         Reviewed by Yury Semikhatsky.
649
650         * inspector/front-end/inspector.css:
651         (#console-view):
652         (#console-messages):
653         (#drawer #console-messages):
654
655 2011-09-20  Alpha Lam  <hclam@chromium.org>
656
657         https://bugs.webkit.org/show_bug.cgi?id=68081
658         Fix scroll in page scaling mode.
659
660         Reviewed by Simon Fraser.
661
662         The following things are done in this patch:
663         1. Rename Frame::pageScaleFactor() to Frame::frameScaleFactor() to better
664            reflect its purpose.
665         2. Frame::frameScaleFactor() returns the scale factor of this frame with
666            respect to the container. So for the main frame it'll return the scale
667            factor of the page, inner frames will return 1.0
668         3. scrollBy(), scrollX() and scrollY() to take into account of the frame
669            scale factor, causing incorrect coordinates reported to Javascript.
670
671         Tests: fast/events/scale-and-scroll-body.html
672                fast/events/scale-and-scroll-iframe-body.html
673                fast/events/scale-and-scroll-iframe-window.html
674                fast/events/scale-and-scroll-window.html
675
676         * html/HTMLBodyElement.cpp:
677         (WebCore::adjustForZoom):
678         (WebCore::HTMLBodyElement::setScrollLeft):
679         (WebCore::HTMLBodyElement::setScrollTop):
680         * loader/HistoryController.cpp:
681         (WebCore::HistoryController::saveScrollPositionAndViewStateToItem):
682         * page/DOMWindow.cpp:
683         (WebCore::DOMWindow::scrollX):
684         (WebCore::DOMWindow::scrollY):
685         (WebCore::DOMWindow::scrollTo):
686         * page/Frame.cpp:
687         (WebCore::Frame::frameScaleFactor): Return page's scale factor if this is
688                                             main frame, otherwise 1.0
689         * page/Frame.h:
690         * page/FrameView.cpp:
691         (WebCore::FrameView::applyOverflowToViewport):
692         (WebCore::FrameView::scrollXForFixedPosition):
693         (WebCore::FrameView::scrollYForFixedPosition):
694
695 2011-09-21  Andras Becsi  <andras.becsi@nokia.com>
696
697         [Qt] Remove Qt specific code from css/SelectorChecker.cpp
698         https://bugs.webkit.org/show_bug.cgi?id=67702
699
700         Reviewed by Csaba Osztrogonác.
701
702         No new tests needed.
703
704         * css/SelectorChecker.cpp: Move Qt-specific code to the Qt-specific WebPlatformStrategies.
705         (WebCore::SelectorChecker::determineLinkStateSlowCase):
706         * platform/VisitedLinkStrategy.h:
707
708 2011-09-16  MORITA Hajime  <morrita@google.com>
709
710         Style changes on forwarded shadow children should trigger shadow renderer reconstruction.
711         https://bugs.webkit.org/show_bug.cgi?id=68228
712
713         Reviewed by Dimitri Glazkov.
714
715         Currently style changes on forwarded shadow child triggers
716         Node::reattach() only for the forwarded node. But it should
717         invalidate whole renderers on the shadow tree because
718         ShadowContentElement expects its inclusions to be attached and to
719         create renderers in the inclusion order. But single node
720         reattach() violates the expectation and possibly creates
721         inconsistent render tree.
722
723         This change makes NodeRenderingContext to go
724         AttachContentForwarded, where the ShadowContentElement::attach()
725         happens, only during ShadowRoot::attach(), not for style-change
726         triggered Node::attach() on the forwarded nodes.
727
728         Note that the altering phase AttachContentLight doesn't create
729         renderers for the forwarded nodes. Instead of that, it possibly
730         triggers shadow subtree reconstruction on
731         NodeRenderingContext::hostChildrenChanged().
732
733         No new tests. This is a defensive change. There is no visible
734         difference at this time.
735
736         * dom/NodeRenderingContext.cpp:
737         (WebCore::NodeRenderingContext::NodeRenderingContext):
738         * dom/ShadowRoot.cpp:
739         (WebCore::ShadowRoot::isInclusionSelectorActive):
740         * dom/ShadowRoot.h:
741
742 2011-09-20  MORITA Hajime  <morrita@google.com>
743
744         <meter> doesn't update rendering when its value is changed.
745         https://bugs.webkit.org/show_bug.cgi?id=67614
746
747         Reviewed by Dimitri Glazkov.
748
749         It lacks repaint() when the value is changed. 
750         
751         For non-native appearance it works because the indicator is
752         implemented in shadow DOM, for native appearance, repainting should be
753         handled explicitly.
754         
755         Test: fast/dom/HTMLMeterElement/meter-element-repaint-on-update-value.html
756
757         * html/HTMLMeterElement.cpp:
758         (WebCore::HTMLMeterElement::didElementStateChange):
759         * rendering/RenderMeter.cpp:
760         (WebCore::RenderMeter::updateFromElement):
761         * rendering/RenderMeter.h:
762         * rendering/RenderProgress.cpp:
763         (WebCore::RenderProgress::updateAnimationState):
764
765 2011-09-20  Kent Tamura  <tkent@chromium.org>
766
767         Move RenderObject::markContainingBlocksForLayout() to RenderObject.cpp.
768         https://bugs.webkit.org/show_bug.cgi?id=67989
769
770         Reviewed by Ryosuke Niwa.
771
772         No new tests because of no behavior change.
773
774         * rendering/RenderObject.cpp:
775         (WebCore::objectIsRelayoutBoundary): Moved from RenderObject.h.
776         (WebCore::RenderObject::markContainingBlocksForLayout): Moved from RenderObject.h
777         * rendering/RenderObject.h:
778
779 2011-09-20  Rachel Blum  <groby@chromium.org>
780
781         Support for multiple <link rel="icon"> favicon elements.
782         https://bugs.webkit.org/show_bug.cgi?id=65564
783
784         Reviewed by Darin Fisher.
785
786         No tests - purely an API change. (And API is not exposed to LayoutTests)
787
788         * dom/Document.cpp:
789         (WebCore::Document::iconURLs):
790         (WebCore::Document::addIconURL):
791         * dom/Document.h:
792         * dom/IconURL.cpp:
793         (WebCore::toIconIndex):
794         * dom/IconURL.h:
795         (WebCore::IconURL::IconURL):
796         * html/HTMLLinkElement.cpp:
797         (WebCore::HTMLLinkElement::process):
798         * loader/LinkLoader.cpp:
799         (WebCore::LinkLoader::loadLink):
800         * loader/LinkLoader.h:
801         * loader/icon/IconController.cpp:
802         (WebCore::IconController::urlsForTypes):
803         (WebCore::IconController::appendToIconURLs):
804         (WebCore::IconController::defaultURL):
805
806 2011-09-20  Ojan Vafai  <ojan@chromium.org>
807
808         [css3-flexbox] cleanup padding width calculations
809         https://bugs.webkit.org/show_bug.cgi?id=68490
810
811         Reviewed by Tony Chang.
812
813         No new tests. Existing tests cover the refactor.
814
815         * rendering/RenderFlexibleBox.cpp:
816         (WebCore::RenderFlexibleBox::logicalBorderAndPaddingWidthForChild):
817         (WebCore::RenderFlexibleBox::logicalScrollbarHeightForChild):
818         (WebCore::RenderFlexibleBox::preferredLogicalContentWidthForFlexItem):
819         (WebCore::RenderFlexibleBox::computePreferredLogicalWidth):
820         (WebCore::RenderFlexibleBox::layoutAndPlaceChildrenInlineDirection):
821         * rendering/RenderFlexibleBox.h:
822
823 2011-09-19  Jer Noble  <jer.noble@apple.com>
824
825         Fix clang compile errors in Web Audio
826         https://bugs.webkit.org/show_bug.cgi?id=68384
827
828         Reviewed by David Levin.
829
830         No new tests; no net change in functionality.
831
832         * platform/graphics/MediaPlayer.h: Forward declare (instead of including directly)
833             AudioSourceProvider.
834         * webaudio/AudioChannelMerger.cpp:
835         (WebCore::AudioChannelMerger::checkNumberOfChannelsForInput): Remove unused parameter name.
836
837 2011-09-20  John Gregg  <johnnyg@google.com>
838
839         Directory Upload: parent path can truncate first char of the correct path
840         https://bugs.webkit.org/show_bug.cgi?id=66695
841
842         In some cases, if the parent path we compute ends with a separator
843         character like '/' or 'C:\', by adding one in an attempt to grab the
844         subsequent separator we actually grab a character of the real path,
845         which is incorrect.
846
847         Reviewed by Darin Fisher.
848
849         * html/FileInputType.cpp:
850         (WebCore::FileInputType::setFileList):
851
852 2011-09-20  Jochen Eisinger  <jochen@chromium.org>
853
854         Invoke CachedResourceLoader::canRequest for all URLs in a redirect chain
855         https://bugs.webkit.org/show_bug.cgi?id=68279
856
857         Reviewed by Adam Barth.
858
859         * loader/cache/CachedResourceLoader.h:
860         * loader/cache/CachedResourceRequest.cpp:
861         (WebCore::CachedResourceRequest::willSendRequest):
862
863 2011-09-18  Ojan Vafai  <ojan@chromium.org>
864
865         change RenderFlexibleBox to act on logical coordinates
866         https://bugs.webkit.org/show_bug.cgi?id=68129
867
868         Reviewed by David Hyatt.
869
870         This makes RenderFlexibleBox respect direction and writing-mode.
871         We now properly support the default flex-flow value of "row".
872
873         Test: css3/flexbox/writing-modes.html
874
875         * rendering/RenderBlock.cpp:
876         (WebCore::RenderBlock::setLogicalLocationForChild):
877         * rendering/RenderBlock.h:
878         * rendering/RenderFlexibleBox.cpp:
879         (WebCore::RenderFlexibleBox::layoutBlock):
880         (WebCore::RenderFlexibleBox::logicalBorderWidthForChild):
881         (WebCore::RenderFlexibleBox::logicalPaddingWidthForChild):
882         (WebCore::RenderFlexibleBox::logicalScrollbarHeightForChild):
883         (WebCore::RenderFlexibleBox::marginStartStyleForChild):
884         (WebCore::RenderFlexibleBox::marginEndStyleForChild):
885         (WebCore::RenderFlexibleBox::preferredLogicalContentWidthForFlexItem):
886         (WebCore::RenderFlexibleBox::layoutInlineDirection):
887         (WebCore::RenderFlexibleBox::logicalPositiveFlexForChild):
888         (WebCore::RenderFlexibleBox::logicalNegativeFlexForChild):
889         (WebCore::RenderFlexibleBox::computePreferredLogicalWidth):
890         (WebCore::RenderFlexibleBox::runFreeSpaceAllocationAlgorithmInlineDirection):
891         (WebCore::RenderFlexibleBox::setLogicalOverrideSize):
892         (WebCore::RenderFlexibleBox::layoutAndPlaceChildrenInlineDirection):
893         * rendering/RenderFlexibleBox.h:
894
895 2011-09-20  Marshall Greenblatt  <marshall@chromium.org>
896
897         Use DEFINE_STATIC_LOCAL to intentionally leak the static RefCountedHFONT object returned from
898         FontPlatformData::hashTableDeletedFontValue() to avoid global destructor ordering problems.
899         https://bugs.webkit.org/show_bug.cgi?id=67906
900
901         Reviewed by Adam Barth.
902
903         * platform/graphics/chromium/FontPlatformDataChromiumWin.cpp:
904
905 2011-09-20  Ryosuke Niwa  <rniwa@webkit.org>
906
907         Hit testing on margins of body and head elements doesn't recur
908         https://bugs.webkit.org/show_bug.cgi?id=40753
909
910         Reviewed by Darin Adler.
911
912         The bug was caused by positionForPointRespectingEditingBoundaries's comparing the editability
913         of head/body and html elements when hit testing was done inside margins of head and body elements.
914
915         Fixed the bug by special-casing html element since margins of head and body elements are special.
916
917         Tests: editing/selection/click-on-body-margin.html
918                editing/selection/click-on-head-margin.html
919
920         * rendering/RenderBlock.cpp:
921         (WebCore::positionForPointRespectingEditingBoundaries):
922
923 2011-09-20  David Hyatt  <hyatt@apple.com>
924
925         https://bugs.webkit.org/show_bug.cgi?id=68480
926         
927         De-virtualize containingBlock() and make RenderView return 0 instead
928         of itself to make the construction of normal loops that terminate via
929         a null-check possible.
930
931         Fix the only two places in the tree that needed null checks.
932
933         Eliminating RenderTableCell::containingBlock() is fine since the base class
934         does the same thing anyway.
935
936         Reviewed by Simon Fraser.
937
938         * editing/VisiblePosition.cpp:
939         (WebCore::VisiblePosition::lineDirectionPointForBlockDirectionNavigation):
940         * rendering/RenderObject.cpp:
941         (WebCore::RenderObject::containingBlock):
942         * rendering/RenderObject.h:
943         * rendering/RenderTableCell.cpp:
944         * rendering/RenderTableCell.h:
945         * rendering/RenderTreeAsText.cpp:
946         (WebCore::RenderTreeAsText::writeRenderObject):
947         * rendering/RenderView.cpp:
948         * rendering/RenderView.h:
949
950 2011-09-20  Anders Carlsson  <andersca@apple.com>
951
952         Remove ScrollView::platformContentsSize
953         https://bugs.webkit.org/show_bug.cgi?id=68188
954
955         Reviewed by Darin Adler.
956
957         Since ScrollView keeps track of the contents size in ScrollView::m_contentsSize, we never
958         have to ask the underlying platform scroll view for contents size since it should always just
959         be equal to m_contentsSize.
960
961         * platform/ScrollView.cpp:
962         (WebCore::ScrollView::contentsSize):
963         (WebCore::ScrollView::wheelEvent):
964         * platform/ScrollView.h:
965         * platform/mac/ScrollViewMac.mm:
966         * platform/wx/ScrollViewWx.cpp:
967
968 2011-09-20  Alexis Menard  <alexis.menard@openbossa.org>
969
970         [Qt] [WK2] Implement a persistent cookie storage.
971         https://bugs.webkit.org/show_bug.cgi?id=65309
972
973         Reviewed by Chang Shu.
974
975         Implement a cookie storage for the Qt port on WebKit2.
976         The implementation is using a SQLite database to store the cookies
977         and restore them. It uses a static object as CookieJar is not an
978         object but a set of global functions. The actual saving/restoring is on
979         the WebProcess side where our network stack lives.
980
981         Existing tests cover the new implementation. Unfortunately there is one
982         case that we can't easily simulate : login in a website, make sure that the webprocess
983         is not running and then going back to this website and see that we are logged.
984
985         * WebCore.pri:
986         * WebCore.pro:
987         * platform/qt/CookieJarQt.cpp:
988         (WebCore::getHostnamesWithCookies):
989         (WebCore::deleteCookiesForHostname):
990         (WebCore::deleteAllCookies):
991         (WebCore::SharedCookieJarQt::shared):
992         (WebCore::SharedCookieJarQt::create):
993         (WebCore::SharedCookieJarQt::destroy):
994         (WebCore::SharedCookieJarQt::getHostnamesWithCookies):
995         (WebCore::SharedCookieJarQt::deleteCookiesForHostname):
996         (WebCore::SharedCookieJarQt::deleteAllCookies):
997         (WebCore::SharedCookieJarQt::SharedCookieJarQt):
998         (WebCore::SharedCookieJarQt::~SharedCookieJarQt):
999         (WebCore::SharedCookieJarQt::setCookiesFromUrl):
1000         (WebCore::SharedCookieJarQt::ensureDatabaseTable):
1001         (WebCore::SharedCookieJarQt::loadCookies):
1002         * platform/qt/CookieJarQt.h: Added.
1003
1004 2011-09-20  David Hyatt  <hyatt@apple.com>
1005
1006         https://bugs.webkit.org/show_bug.cgi?id=68314
1007
1008         Make sure that the containing block loop when clipping to border-radius
1009         terminates by checking if you hit the RenderView. Null checking isn't sufficient
1010         for stupid historical reasons that should be fixed (i.e., the RenderView returns itself
1011         as its own containing block, even though this should just be changed).
1012
1013         Reviewed by Simon Fraser and Darin Adler.
1014
1015         Added new test in fast/clip.
1016
1017         * rendering/RenderLayer.cpp:
1018         (WebCore::inContainingBlockChain):
1019
1020 2011-09-20  Dan Bernstein  <mitz@apple.com>
1021
1022         MathML renderers do not override RenderObject::renderName()
1023         https://bugs.webkit.org/show_bug.cgi?id=68461
1024
1025         Reviewed by Darin Adler.
1026
1027         Added implementations of renderName() in MathML RenderObject subclasses.
1028
1029         * rendering/mathml/RenderMathMLBlock.h:
1030         (WebCore::RenderMathMLBlock::renderName):
1031         * rendering/mathml/RenderMathMLFenced.h:
1032         (WebCore::RenderMathMLFenced::renderName):
1033         * rendering/mathml/RenderMathMLFraction.h:
1034         (WebCore::RenderMathMLFraction::renderName):
1035         * rendering/mathml/RenderMathMLMath.h:
1036         (WebCore::RenderMathMLMath::renderName):
1037         * rendering/mathml/RenderMathMLOperator.h:
1038         (WebCore::RenderMathMLOperator::renderName):
1039         * rendering/mathml/RenderMathMLRoot.h:
1040         (WebCore::RenderMathMLRoot::renderName):
1041         * rendering/mathml/RenderMathMLRow.h:
1042         (WebCore::RenderMathMLRow::renderName):
1043         * rendering/mathml/RenderMathMLSquareRoot.h:
1044         (WebCore::RenderMathMLSquareRoot::renderName):
1045         * rendering/mathml/RenderMathMLSubSup.h:
1046         (WebCore::RenderMathMLSubSup::renderName):
1047         * rendering/mathml/RenderMathMLUnderOver.h:
1048         (WebCore::RenderMathMLUnderOver::renderName):
1049
1050 2011-09-20  ChangSeok Oh  <shivamidow@gmail.com>
1051
1052         [GTK] requestAnimationFrame support for gtk port
1053         https://bugs.webkit.org/show_bug.cgi?id=66280
1054
1055         Reviewed by Martin Robinson.
1056
1057         Add some files to build-target & activate ENABLE_REQUEST_ANIMATION_FRAME flag
1058         when enabling requestAnimationFrame option.
1059
1060         fast/animation/request-animation-frame-cancel.html
1061         fast/animation/request-animation-frame-cancel2.html
1062         fast/animation/request-animation-frame-display.html
1063         fast/animation/request-animation-frame-during-modal.html
1064         fast/animation/request-animation-frame-timestamps.html
1065         fast/animation/request-animation-frame-within-callback.html
1066         fast/animation/request-animation-frame.html
1067
1068         * GNUmakefile.am:
1069         * GNUmakefile.list.am:
1070
1071 2011-09-20  Aaron Boodman  <aa@chromium.org>
1072
1073         Rework script context creation/release notifications
1074         https://bugs.webkit.org/show_bug.cgi?id=67828
1075
1076         Reviewed by Adam Barth.
1077
1078         * bindings/v8/V8DOMWindowShell.cpp:
1079         (WebCore::V8DOMWindowShell::disposeContextHandles):
1080         (WebCore::V8DOMWindowShell::initContextIfNeeded):
1081         * bindings/v8/V8IsolatedContext.cpp:
1082         (WebCore::V8IsolatedContext::V8IsolatedContext):
1083         (WebCore::V8IsolatedContext::destroy):
1084         * bindings/v8/V8IsolatedContext.h:
1085         * loader/EmptyClients.h:
1086         (WebCore::EmptyFrameLoaderClient::didCreateScriptContext):
1087         (WebCore::EmptyFrameLoaderClient::willReleaseScriptContext):
1088         * loader/FrameLoaderClient.h:
1089
1090 2011-09-19  Oliver Hunt  <oliver@apple.com>
1091
1092         Refactor Heap allocation logic into separate AllocationSpace class
1093         https://bugs.webkit.org/show_bug.cgi?id=68409
1094
1095         Reviewed by Gavin Barraclough.
1096
1097         Adding a forwarding header.
1098
1099         * ForwardingHeaders/heap/AllocationSpace.h: Added.
1100
1101 2011-09-20  Geoffrey Garen  <ggaren@apple.com>
1102
1103         Build fix.
1104
1105         * WebCorePrefix.h: Removed stray text from accidental paste.
1106
1107 2011-09-19  Geoffrey Garen  <ggaren@apple.com>
1108
1109         Removed BREWMP* platform #ifdefs
1110         https://bugs.webkit.org/show_bug.cgi?id=68425
1111         
1112         BREWMP* has no maintainer, and this is dead code.
1113
1114         Reviewed by Darin Adler.
1115
1116         * WebCorePrefix.h:
1117         * loader/cache/CachedFont.cpp:
1118         * platform/DragData.h:
1119         * platform/DragImage.h:
1120         * platform/FileSystem.h:
1121         * platform/PlatformKeyboardEvent.h:
1122         * platform/PlatformMouseEvent.h:
1123         * platform/PlatformTouchEvent.h:
1124         * platform/PlatformTouchPoint.h:
1125         (WebCore::PlatformTouchPoint::PlatformTouchPoint):
1126         * platform/Widget.h:
1127         * platform/graphics/IntPoint.h:
1128         * platform/graphics/IntSize.h:
1129         * platform/graphics/WOFFFileFormat.cpp:
1130         * platform/graphics/skia/FontCustomPlatformData.cpp:
1131         (WebCore::FontCustomPlatformData::~FontCustomPlatformData):
1132         (WebCore::FontCustomPlatformData::fontPlatformData):
1133         (WebCore::createFontCustomPlatformData):
1134         * platform/graphics/skia/FontCustomPlatformData.h:
1135         * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
1136         * platform/text/TextBoundaries.cpp:
1137         * platform/text/TextEncoding.cpp:
1138         (WebCore::TextEncoding::encode):
1139         * platform/text/TextEncodingRegistry.cpp:
1140         * plugins/PluginViewNone.cpp:
1141
1142 2011-09-20  Pavel Feldman  <pfeldman@google.com>
1143
1144         Web Inspector: Copy Stack Trace lacks newlines on Windows
1145         https://bugs.webkit.org/show_bug.cgi?id=68447
1146
1147         Reviewed by Joseph Pecoraro.
1148
1149         * inspector/front-end/CallStackSidebarPane.js:
1150         (WebInspector.CallStackSidebarPane.prototype._copyStackTrace):
1151
1152 2011-09-20  Pavel Feldman  <pfeldman@google.com>
1153
1154         Not reviewed: inspector sanity test fix.
1155
1156         * inspector/front-end/inspector.js:
1157         (WebInspector.showConsole):
1158
1159 2011-09-20  Alexis Menard  <alexis.menard@openbossa.org>
1160
1161         [Qt][WK2] Add stubs for FULLSCREEN_API on Qt.
1162         https://bugs.webkit.org/show_bug.cgi?id=68444
1163
1164         Reviewed by Andreas Kling.
1165
1166         Create all the stubs necessary for enabling FULLSCREEN_API on the Qt port.
1167
1168         No new tests : just stubs.
1169
1170         * CodeGenerators.pri:
1171         * WebCore.pro:
1172         * features.pri:
1173
1174 2011-09-20  Sheriff Bot  <webkit.review.bot@gmail.com>
1175
1176         Unreviewed, rolling out r95509.
1177         http://trac.webkit.org/changeset/95509
1178         https://bugs.webkit.org/show_bug.cgi?id=68446
1179
1180         crashes chromium fast/repaint/japanese-rl-selection-repaint-
1181         in-regions.html on Win and Linux (Requested by dslomov on
1182         #webkit).
1183
1184         * rendering/RenderBlock.cpp:
1185         (WebCore::positionForPointRespectingEditingBoundaries):
1186
1187 2011-09-20  Jarred Nicholls  <jarred@sencha.com>
1188
1189         [Qt] Permit qrc resources to load in QWebSettings::setUserStyleSheetUrl()
1190         https://bugs.webkit.org/show_bug.cgi?id=51159
1191         
1192         Permit any URL with a local scheme to set a user style sheet. Allow qrc
1193         resource URLs as arguments to QWebSettings::setUserStyleSheetUrl().
1194
1195         Reviewed by Kenneth Rohde Christiansen.
1196
1197         * page/Page.cpp:
1198         (WebCore::Page::userStyleSheetLocationChanged):
1199         * platform/qt/KURLQt.cpp:
1200         (WebCore::KURL::fileSystemPath):
1201
1202 2011-09-20  Csaba Osztrogonác  <ossy@webkit.org>
1203
1204         [Qt][Mac] Buildfix after r95513.
1205         Forwarding headers for WebCore should be generated based on WebCore sources instead of WebKit2.
1206
1207         Rubber-stamped by Andras Becsi.
1208
1209         * DerivedSources.pro:
1210         * WebCore.pro: Add platform/mac/DisplaySleepDisabler.cpp to SOURCES.
1211
1212 2011-09-19  Pavel Feldman  <pfeldman@google.com>
1213
1214         Web Inspector: document Debugger.paused, introduce types for ids in Debugger domain.
1215         https://bugs.webkit.org/show_bug.cgi?id=68363
1216
1217         Migrates from poorly documented "details" object to explicit parameters
1218         containing break type and data.
1219
1220         Reviewed by Tony Gentilcore.
1221
1222         * inspector/InjectedScriptSource.js:
1223         ():
1224         * inspector/Inspector.json:
1225         * inspector/InspectorDOMDebuggerAgent.cpp:
1226         (WebCore::InspectorDOMDebuggerAgent::didInvalidateStyleAttr):
1227         (WebCore::InspectorDOMDebuggerAgent::willInsertDOMNode):
1228         (WebCore::InspectorDOMDebuggerAgent::willRemoveDOMNode):
1229         (WebCore::InspectorDOMDebuggerAgent::willModifyDOMAttr):
1230         (WebCore::InspectorDOMDebuggerAgent::pauseOnNativeEventIfNeeded):
1231         (WebCore::InspectorDOMDebuggerAgent::willSendXMLHttpRequest):
1232         * inspector/InspectorDebuggerAgent.cpp:
1233         (WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent):
1234         (WebCore::InspectorDebuggerAgent::schedulePauseOnNextStatement):
1235         (WebCore::InspectorDebuggerAgent::cancelPauseOnNextStatement):
1236         (WebCore::InspectorDebuggerAgent::pause):
1237         (WebCore::InspectorDebuggerAgent::didPause):
1238         (WebCore::InspectorDebuggerAgent::didContinue):
1239         (WebCore::InspectorDebuggerAgent::breakProgram):
1240         (WebCore::InspectorDebuggerAgent::clear):
1241         (WebCore::InspectorDebuggerAgent::clearBreakDetails):
1242         * inspector/InspectorDebuggerAgent.h:
1243         * inspector/front-end/DOMBreakpointsSidebarPane.js:
1244         (WebInspector.DOMBreakpointsSidebarPane.prototype.createBreakpointHitStatusMessage.didPushNodeToFrontend):
1245         (WebInspector.DOMBreakpointsSidebarPane.prototype.createBreakpointHitStatusMessage):
1246         (WebInspector.DOMBreakpointsSidebarPane.prototype.highlightBreakpoint):
1247         * inspector/front-end/DebuggerModel.js:
1248         (WebInspector.DebuggerModel.prototype._pausedScript):
1249         (WebInspector.DebuggerDispatcher.prototype.paused):
1250         * inspector/front-end/DebuggerPresentationModel.js:
1251         (WebInspector.PresentationCallFrame.prototype.evaluate):
1252         * inspector/front-end/ScopeChainSidebarPane.js:
1253         (WebInspector.ScopeChainSidebarPane.prototype.update):
1254         * inspector/front-end/ScriptsPanel.js:
1255         (WebInspector.ScriptsPanel.prototype._debuggerPaused.didCreateBreakpointHitStatusMessage):
1256         (WebInspector.ScriptsPanel.prototype._debuggerPaused.else.didGetSourceLocation):
1257         (WebInspector.ScriptsPanel.prototype._debuggerPaused):
1258
1259 2011-09-19  Pavel Feldman  <pfeldman@google.com>
1260
1261         Web Inspector: use strict types for Breakpoint and CallFrame ids in the protocol definition.
1262         https://bugs.webkit.org/show_bug.cgi?id=68172
1263
1264         Reviewed by Tony Gentilcore.
1265
1266         * inspector/Inspector.json:
1267
1268 2011-09-15  Pavel Feldman  <pfeldman@google.com>
1269
1270         Web Inspector: refactor ConsoleView, Drawer, ConsolePanel trio. Remove animation
1271         from drawer -> panel transition.
1272         https://bugs.webkit.org/show_bug.cgi?id=68155
1273
1274         ConsoleView, ConsolePanel and Drawer are all Views with custom show/hide implementations
1275         and weird DOM element containment. As a result, we have a number of cases when switching
1276         console from full panel to drawer mode and back result in UI glitches.
1277         For the sake of code clarity and no glitches, I'd like to sacrifice the "grow into full
1278         screen" console animation.
1279
1280         Reviewed by Tony Gentilcore.
1281
1282         * inspector/front-end/ConsoleModel.js:
1283         (WebInspector.ConsoleModel):
1284         * inspector/front-end/ConsolePanel.js:
1285         (WebInspector.ConsolePanel):
1286         (WebInspector.ConsolePanel.prototype.get statusBarItems):
1287         (WebInspector.ConsolePanel.prototype.show):
1288         (WebInspector.ConsolePanel.prototype.hide):
1289         * inspector/front-end/ConsoleView.js:
1290         (WebInspector.ConsoleView):
1291         (WebInspector.ConsoleView.createFilterElement):
1292         (WebInspector.ConsoleView.get this):
1293         (WebInspector.ConsoleView.prototype.get statusBarItems):
1294         (WebInspector.ConsoleView.prototype.wasShown):
1295         * inspector/front-end/Drawer.js:
1296         (WebInspector.Drawer):
1297         (WebInspector.Drawer.prototype.get visible):
1298         (WebInspector.Drawer.prototype._constrainHeight):
1299         (WebInspector.Drawer.prototype.show.animationFinished):
1300         (WebInspector.Drawer.prototype.show):
1301         (WebInspector.Drawer.prototype.hide):
1302         (WebInspector.Drawer.prototype.resize):
1303         (WebInspector.Drawer.prototype._animationDuration):
1304         * inspector/front-end/inspector.html:
1305         * inspector/front-end/inspector.js:
1306         (WebInspector._createGlobalStatusBarItems):
1307         (WebInspector._toggleConsoleButtonClicked):
1308         (WebInspector.set attached):
1309         (WebInspector.windowResize):
1310         (WebInspector.documentKeyDown):
1311
1312 2011-09-19  Pavel Feldman  <pfeldman@google.com>
1313
1314         Web Inspector: streamline Console's MessageType and MessageSource semantics.
1315         https://bugs.webkit.org/show_bug.cgi?id=68342
1316
1317         This change fixes semantics of the MessageSource and MessageType:
1318         MessageSource is now the source of the message (be it Network, HTML
1319         parser or Console API). MessageType is only defined for the Console API
1320         messages and contains the name of the API call (log, dir, dirxml, etc.).
1321         Subsequent https://bugs.webkit.org/show_bug.cgi?id=66371 will make MessageType
1322         private to the inspector.
1323
1324         Reviewed by Tony Gentilcore.
1325
1326         * dom/Document.cpp:
1327         (WebCore::Document::logExceptionToConsole):
1328         * inspector/ConsoleMessage.cpp:
1329         (WebCore::messageSourceValue):
1330         (WebCore::messageTypeValue):
1331         (WebCore::ConsoleMessage::addToFrontend):
1332         * inspector/Inspector.json:
1333         * inspector/InspectorConsoleAgent.cpp:
1334         (WebCore::InspectorConsoleAgent::didReceiveResponse):
1335         (WebCore::InspectorConsoleAgent::didFailLoading):
1336         * inspector/front-end/ConsoleMessage.js:
1337         (WebInspector.ConsoleMessage.createTextMessage):
1338         (WebInspector.ConsoleMessage.prototype._formatMessage):
1339         (WebInspector.ConsoleMessage.prototype.toString):
1340         * page/Console.cpp:
1341         (WebCore::printMessageSourceAndLevelPrefix):
1342         (WebCore::Console::addMessage):
1343         (WebCore::Console::dir):
1344         (WebCore::Console::dirxml):
1345         (WebCore::Console::group):
1346         (WebCore::Console::groupCollapsed):
1347         (WebCore::Console::groupEnd):
1348         * page/ConsoleTypes.h:
1349         * websockets/WebSocketChannel.cpp:
1350         (WebCore::WebSocketChannel::didFailSocketStream):
1351
1352 2011-09-20  Adenilson Cavalcanti  <adenilson.silva@openbossa.org>
1353
1354         [Qt] resizeToContent seems to trigger infinite resize on some pages
1355         https://bugs.webkit.org/show_bug.cgi?id=43852
1356
1357         Reviewed by Kenneth Rohde Christiansen.
1358
1359         InnerHeight and InnerWidth are now calculated using ScrollView::visibleContentRect
1360         including the scrollbars (if any) instead of using ScrollView::frameRect as before.
1361
1362         This makes no behavior change while not using the tiled backing
1363         store and is compliant with the W3C definition stated in the CSSOM
1364         View Module.
1365
1366         Plus it will return the correct values for tiled backing store,
1367         thus fixing the original bug report by avoiding infinite resize
1368         events caused by wrong innerHeight and innerWidth values.
1369
1370         Test: innerWidth/Height are covered by existing tests. The
1371         non-infinite resizing is covered by a new Qt autotest at
1372         test_qgraphicswebview::windowResizeEvent()
1373
1374         * page/DOMWindow.cpp:
1375         (WebCore::DOMWindow::innerHeight): using ScrollView::visibleContentRect.
1376         (WebCore::DOMWindow::innerWidth): using ScrollView::visibleContentRect.
1377
1378 2011-09-09  Pavel Podivilov  <podivilov@chromium.org>
1379
1380         Web Inspector: implement reverse mapping for compiler source maps.
1381         https://bugs.webkit.org/show_bug.cgi?id=67850
1382
1383         Implement the mapping from source code to compiled code. It will be used for
1384         setting breakpoints on source code.
1385
1386         Reviewed by Pavel Feldman.
1387
1388         * inspector/front-end/CompilerSourceMapping.js:
1389         (WebInspector.ClosureCompilerSourceMapping):
1390         (WebInspector.ClosureCompilerSourceMapping.prototype.compiledLocationToSourceLocation):
1391         (WebInspector.ClosureCompilerSourceMapping.prototype.sourceLocationToCompiledLocation):
1392         (WebInspector.ClosureCompilerSourceMapping.prototype._parseMappings):
1393
1394 2011-09-08  Pavel Podivilov  <podivilov@chromium.org>
1395
1396         Web Inspector: extract RawSourceCode source mapping logic to helper classes.
1397         https://bugs.webkit.org/show_bug.cgi?id=67789
1398
1399         Reviewed by Pavel Feldman.
1400
1401         * inspector/front-end/SourceFile.js:
1402         (WebInspector.RawSourceCode.prototype.get uiSourceCode):
1403         (WebInspector.RawSourceCode.prototype.rawLocationToUILocation):
1404         (WebInspector.RawSourceCode.prototype.uiLocationToRawLocation):
1405         (WebInspector.RawSourceCode.prototype._createSourceMapping.didRequestContent.didFormatContent):
1406         (WebInspector.RawSourceCode.prototype._createSourceMapping.didRequestContent):
1407         (WebInspector.RawSourceCode.prototype._createSourceMapping):
1408         (WebInspector.RawSourceCode.prototype._saveSourceMapping):
1409         (WebInspector.RawSourceCode.PlainSourceMapping):
1410         (WebInspector.RawSourceCode.PlainSourceMapping.prototype.rawLocationToUILocation):
1411         (WebInspector.RawSourceCode.PlainSourceMapping.prototype.uiLocationToRawLocation):
1412         (WebInspector.RawSourceCode.PlainSourceMapping.prototype.get uiSourceCode):
1413         (WebInspector.RawSourceCode.FormattedSourceMapping):
1414         (WebInspector.RawSourceCode.FormattedSourceMapping.prototype.rawLocationToUILocation):
1415         (WebInspector.RawSourceCode.FormattedSourceMapping.prototype.uiLocationToRawLocation):
1416         (WebInspector.RawSourceCode.FormattedSourceMapping.prototype.get uiSourceCode):
1417
1418 2011-09-20  Carlos Garcia Campos  <cgarcia@igalia.com>
1419
1420         [GTK] WebProcess shouldn't use the GTK+ API
1421         https://bugs.webkit.org/show_bug.cgi?id=68062
1422
1423         Reviewed by Martin Robinson.
1424
1425         Move errors code that is common between webki1 and webkit2 to
1426         WebCore so that it can be shared.
1427
1428         * GNUmakefile.list.am: Add new files to compilation.
1429         * platform/gtk/ErrorsGtk.cpp: Added.
1430         (WebCore::cancelledError):
1431         (WebCore::blockedError):
1432         (WebCore::cannotShowURLError):
1433         (WebCore::interruptedForPolicyChangeError):
1434         (WebCore::cannotShowMIMETypeError):
1435         (WebCore::fileDoesNotExistError):
1436         (WebCore::pluginWillHandleLoadError):
1437         * platform/gtk/ErrorsGtk.h: Added.
1438
1439 2011-09-19  Mark Rowe  <mrowe@apple.com>
1440
1441         Attempt to fix the Leopard build.
1442         
1443         * platform/mac/DisplaySleepDisabler.cpp:
1444         (WebCore::DisplaySleepDisabler::DisplaySleepDisabler):
1445         * platform/mac/DisplaySleepDisabler.h:
1446
1447 2011-09-19  Mark Rowe  <mrowe@apple.com>
1448
1449         <http://webkit.org/b/68421> Stop calling UpdateSystemActivity in places where we hold power assertions that achieve the same effect
1450
1451         On SnowLeopard and newer it's not necessary to call UpdateSystemActivity to prevent the screensaver from kicking
1452         in as the NoDisplaySleep assertion now has that effect. It's also not necessary to hold both a NoDisplaySleep and
1453         a NoIdleSleep assertion as the latter is implied by the former.
1454
1455         Since there were multiple copies of the same code to disable display sleep spread across WebCore, WebKit and WebKit2
1456         this patch takes the approach of moving this functionality to a new DisplaySleepDisabler class that lives in WebCore.
1457         A class is used as it makes it easier to reason about the lifetime of the assertions and to ensure that the assertions will
1458         always be released when their owning objects go away.
1459
1460         Reviewed by Dan Bernstein.
1461
1462         * WebCore.exp.in:
1463         * WebCore.xcodeproj/project.pbxproj:
1464         * platform/mac/DisplaySleepDisabler.cpp:
1465         (WebCore::DisplaySleepDisabler::DisplaySleepDisabler): Register for the NoDisplaySleep assertion, and start our
1466         system activity timer when on Leopard.
1467         (WebCore::DisplaySleepDisabler::~DisplaySleepDisabler): Unregister for the assertion.
1468         (WebCore::DisplaySleepDisabler::systemActivityTimerFired): Call UpdateSystemActivity to prevent the screensaver from
1469         triggering on Leopard.
1470         * platform/mac/DisplaySleepDisabler.h:
1471         (WebCore::DisplaySleepDisabler::create):
1472         * platform/mac/WebVideoFullscreenController.h:
1473         * platform/mac/WebVideoFullscreenController.mm:
1474         (-[WebVideoFullscreenController dealloc]):
1475         (-[WebVideoFullscreenController setupVideoOverlay:]): Remove the now-unnecessary explicit use of the WebCore namespace.
1476         (-[WebVideoFullscreenController mediaElement]): Ditto.
1477         (-[WebVideoFullscreenController setMediaElement:]): Ditto.
1478         (-[WebVideoFullscreenController windowDidExitFullscreen]): Ditto.
1479         (-[WebVideoFullscreenController updatePowerAssertions]): Create a DisplaySleepDisabler instance when transitioning from permitting
1480         display sleep to disabling display sleep. Clear out our reference when sleep should be permitted, destroying any
1481         disabler that we own.
1482
1483 2011-09-19  Ryosuke Niwa  <rniwa@webkit.org>
1484
1485         Hit testing on margins of body and head elements doesn't recur
1486         https://bugs.webkit.org/show_bug.cgi?id=40753
1487
1488         Reviewed by Darin Adler.
1489
1490         The bug was caused by positionForPointRespectingEditingBoundaries's comparing the editability
1491         of head/body and html elements when hit testing was done inside margins of head and body elements.
1492
1493         Fixed the bug by special-casing html element (any immediate child of render view with a render layer)
1494         since margins of head and body elements are special.
1495
1496         Tests: editing/selection/click-on-body-margin.html
1497                editing/selection/click-on-head-margin.html
1498
1499         * rendering/RenderBlock.cpp:
1500         (WebCore::positionForPointRespectingEditingBoundaries):
1501
1502 2011-09-19  Sheriff Bot  <webkit.review.bot@gmail.com>
1503
1504         Unreviewed, rolling out r95493 and r95496.
1505         http://trac.webkit.org/changeset/95493
1506         http://trac.webkit.org/changeset/95496
1507         https://bugs.webkit.org/show_bug.cgi?id=68418
1508
1509         Broke Windows build (Requested by rniwa on #webkit).
1510
1511         * ForwardingHeaders/heap/AllocationSpace.h: Removed.
1512
1513 2011-09-19  James Robinson  <jamesr@chromium.org>
1514
1515         [chromium] ContentLayer's texture updater deleted during paint when compositing turns off in the middle of paint
1516         https://bugs.webkit.org/show_bug.cgi?id=68405
1517
1518         Reviewed by Kenneth Russell.
1519
1520         Make TiledLayerChromium's textureUpdater refcounted and hold an explicit reference during paint in case
1521         compositing is turned off halfway through a paint.
1522
1523         * platform/graphics/chromium/ContentLayerChromium.h:
1524         * platform/graphics/chromium/ImageLayerChromium.cpp:
1525         (WebCore::ImageLayerTextureUpdater::create):
1526         * platform/graphics/chromium/ImageLayerChromium.h:
1527         * platform/graphics/chromium/LayerTextureUpdater.h:
1528         * platform/graphics/chromium/LayerTextureUpdaterCanvas.cpp:
1529         (WebCore::LayerTextureUpdaterBitmap::create):
1530         (WebCore::LayerTextureUpdaterSkPicture::create):
1531         * platform/graphics/chromium/LayerTextureUpdaterCanvas.h:
1532         * platform/graphics/chromium/TiledLayerChromium.cpp:
1533         (WebCore::TiledLayerChromium::prepareToUpdate):
1534
1535 2011-09-19  Luke Macpherson   <macpherson@chromium.org>
1536
1537         Eliminate Length::undefinedLength = -1 and replace with Undefined LengthType.
1538         https://bugs.webkit.org/show_bug.cgi?id=68057
1539
1540         Reviewed by Darin Adler.
1541
1542         There appear to be many cases where -1 is actually a valid Length.
1543         Encoding the validity of Length separately to the value is a natural solution.
1544
1545         No new tests / no behavioral changes.
1546
1547         * css/CSSComputedStyleDeclaration.cpp:
1548         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
1549         * css/CSSPrimitiveValue.cpp:
1550         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
1551         * css/CSSStyleApplyProperty.cpp:
1552         (WebCore::ApplyPropertyLength::applyValue):
1553         * platform/Length.h:
1554         (WebCore::Length::Length):
1555         (WebCore::Length::value):
1556         (WebCore::Length::calcValue):
1557         (WebCore::Length::calcMinValue):
1558         (WebCore::Length::calcFloatValue):
1559         (WebCore::Length::isUndefined):
1560         * rendering/RenderBlock.cpp:
1561         (WebCore::RenderBlock::computePreferredLogicalWidths):
1562         * rendering/RenderDeprecatedFlexibleBox.cpp:
1563         (WebCore::RenderDeprecatedFlexibleBox::computePreferredLogicalWidths):
1564         * rendering/RenderFileUploadControl.cpp:
1565         (WebCore::RenderFileUploadControl::computePreferredLogicalWidths):
1566         * rendering/RenderImage.cpp:
1567         (WebCore::RenderImage::isLogicalWidthSpecified):
1568         (WebCore::RenderImage::isLogicalHeightSpecified):
1569         * rendering/RenderListBox.cpp:
1570         (WebCore::RenderListBox::computePreferredLogicalWidths):
1571         * rendering/RenderMenuList.cpp:
1572         (WebCore::RenderMenuList::computePreferredLogicalWidths):
1573         * rendering/RenderReplaced.cpp:
1574         (WebCore::RenderReplaced::computePreferredLogicalWidths):
1575         * rendering/RenderSlider.cpp:
1576         (WebCore::RenderSlider::computePreferredLogicalWidths):
1577         * rendering/RenderTextControl.cpp:
1578         (WebCore::RenderTextControl::computePreferredLogicalWidths):
1579         * rendering/style/RenderStyle.h:
1580         (WebCore::InheritedFlags::initialMaxSize):
1581         * rendering/svg/RenderSVGRoot.cpp:
1582         (WebCore::RenderSVGRoot::computePreferredLogicalWidths):
1583
1584 2011-09-19  Adam Barth  <abarth@webkit.org>
1585
1586         Always enable ENABLE(EVENTSOURCE)
1587         https://bugs.webkit.org/show_bug.cgi?id=68414
1588
1589         Reviewed by Eric Seidel.
1590
1591         EventSource seems to be here to stay.  This patch makes WebKit more
1592         hackable by removing this ENABLE macro, as discussed on webkit-dev.
1593
1594         * Configurations/FeatureDefines.xcconfig:
1595         * GNUmakefile.am:
1596         * bindings/cpp/WebDOMEventTarget.cpp:
1597         (toWebKit):
1598         * bindings/js/JSDOMWindowCustom.cpp:
1599         (WebCore::JSDOMWindow::eventSource):
1600         * bindings/js/JSEventSourceCustom.cpp:
1601         * bindings/js/JSEventTarget.cpp:
1602         (WebCore::toJS):
1603         (WebCore::toEventTarget):
1604         * bindings/js/JSWorkerContextCustom.cpp:
1605         (WebCore::JSWorkerContext::eventSource):
1606         * bindings/v8/V8DOMWrapper.cpp:
1607         (WebCore::V8DOMWrapper::convertEventTargetToV8Object):
1608         * features.pri:
1609         * page/DOMWindow.idl:
1610         * page/EventSource.cpp:
1611         * page/EventSource.h:
1612         * page/EventSource.idl:
1613         * workers/WorkerContext.idl:
1614
1615 2011-09-19  Jeremy Apthorp  <jeremya@chromium.org>
1616
1617         Fix a use-after-free: clear the fullscreen change event target queue at
1618         detach time, rather than at destruction time. If this isn't done, it's
1619         possible for the event target queue to be the only thing that
1620         references the document. Then when the document is popped off the queue
1621         and dereferenced in Document::fullScreenChangeDelayTimerFired, the
1622         document is destroyed and the subsequent access to
1623         m_fullScreenChangeEventTargetQueue.isEmpty() accesses free'd memory.
1624         https://bugs.webkit.org/show_bug.cgi?id=67960
1625
1626         Reviewed by Adam Barth.
1627
1628         * dom/Document.cpp:
1629         (WebCore::Document::~Document):
1630         (WebCore::Document::detach):
1631
1632 2011-09-19  Sheriff Bot  <webkit.review.bot@gmail.com>
1633
1634         Unreviewed, rolling out r95482.
1635         http://trac.webkit.org/changeset/95482
1636         https://bugs.webkit.org/show_bug.cgi?id=68410
1637
1638         Broke chromium webkit-tests (Requested by dslomov on #webkit).
1639
1640         * platform/image-encoders/skia/JPEGImageEncoder.cpp:
1641         (WebCore::RGBAtoRGB):
1642
1643 2011-09-19  Oliver Hunt  <oliver@apple.com>
1644
1645         Refactor Heap allocation logic into separate AllocationSpace class
1646         https://bugs.webkit.org/show_bug.cgi?id=68409
1647
1648         Reviewed by Gavin Barraclough.
1649
1650         Adding a forwarding header.
1651
1652         * ForwardingHeaders/heap/AllocationSpace.h: Added.
1653
1654 2011-09-19  Adam Barth  <abarth@webkit.org>
1655
1656         [V8] document.all gets confused about its prototype chain
1657         https://bugs.webkit.org/show_bug.cgi?id=68393
1658
1659         Reviewed by Eric Seidel.
1660
1661         GetRealNamedPropertyInPrototypeChain doesn't call interceptors, so it's
1662         not a good idea to use its return value.  It turns out that all the
1663         callers of the API only cared about whether it returns a null handle.
1664
1665         Test: http/tests/security/document-all.html
1666
1667         * bindings/v8/V8Collection.h:
1668         (WebCore::collectionNamedPropertyGetter):
1669         * bindings/v8/custom/V8DOMStringMapCustom.cpp:
1670         (WebCore::V8DOMStringMap::namedPropertyDeleter):
1671         (WebCore::V8DOMStringMap::namedPropertySetter):
1672         * bindings/v8/custom/V8HTMLAllCollectionCustom.cpp:
1673         (WebCore::V8HTMLAllCollection::namedPropertyGetter):
1674         * bindings/v8/custom/V8HTMLCollectionCustom.cpp:
1675         (WebCore::V8HTMLCollection::namedPropertyGetter):
1676         * bindings/v8/custom/V8NamedNodeMapCustom.cpp:
1677         (WebCore::V8NamedNodeMap::namedPropertyGetter):
1678         * bindings/v8/custom/V8StorageCustom.cpp:
1679         (WebCore::storageSetter):
1680
1681 2011-09-19  Adam Barth  <abarth@webkit.org>
1682
1683         Named property confusion with __proto__
1684         https://bugs.webkit.org/show_bug.cgi?id=68221
1685
1686         Reviewed by Eric Seidel.
1687
1688         The __proto__ property is super magical because it's not a real named
1689         property and it has higher precedence than even interceptors.  This
1690         confuses this check, which is meant to detech which names will get
1691         handled by our interceptor.
1692
1693         Test: http/tests/security/window-named-proto.html
1694
1695         * bindings/v8/custom/V8DOMWindowCustom.cpp:
1696         (WebCore::V8DOMWindow::namedSecurityCheck):
1697
1698 2011-09-19  Adam Barth  <abarth@webkit.org>
1699
1700         Rename ENABLE(OPENTYPE_SANITIZER) to USE(OPENTYPE_SANITIZER)
1701         https://bugs.webkit.org/show_bug.cgi?id=68292
1702
1703         Reviewed by Eric Seidel.
1704
1705         OpenType Sanitizer is a library for sanitizing type and not a feature.
1706         Therefore this macro should say that we USE the library.
1707
1708         * platform/graphics/WOFFFileFormat.cpp:
1709         * platform/graphics/WOFFFileFormat.h:
1710         * platform/graphics/mac/FontCustomPlatformData.cpp:
1711         (WebCore::createFontCustomPlatformData):
1712         * platform/graphics/opentype/OpenTypeSanitizer.cpp:
1713         * platform/graphics/opentype/OpenTypeSanitizer.h:
1714         * platform/graphics/skia/FontCustomPlatformData.cpp:
1715         (WebCore::createFontCustomPlatformData):
1716         (WebCore::FontCustomPlatformData::supportsFormat):
1717
1718 2011-09-19  Adam Barth  <abarth@webkit.org>
1719
1720         Remove APPLICATION_CACHE_DYNAMIC_ENTRIES and associated code
1721         https://bugs.webkit.org/show_bug.cgi?id=68407
1722
1723         Reviewed by Eric Seidel.
1724
1725         As discussed on webkit-dev, no one appears to be using this code.
1726
1727         * GNUmakefile.list.am:
1728         * UseJSC.cmake:
1729         * WebCore.gypi:
1730         * WebCore.pro:
1731         * WebCore.vcproj/WebCore.vcproj:
1732         * WebCore.xcodeproj/project.pbxproj:
1733         * bindings/js/JSBindingsAllInOne.cpp:
1734         * bindings/js/JSDOMApplicationCacheCustom.cpp: Removed.
1735
1736 2011-09-19  Sheriff Bot  <webkit.review.bot@gmail.com>
1737
1738         Unreviewed, rolling out r95385 and r95457.
1739         http://trac.webkit.org/changeset/95385
1740         http://trac.webkit.org/changeset/95457
1741         https://bugs.webkit.org/show_bug.cgi?id=68395
1742
1743         Broke chromium browser_tests (Requested by dslomov on
1744         #webkit).
1745
1746         * bindings/v8/V8DOMWindowShell.cpp:
1747         (WebCore::V8DOMWindowShell::disposeContextHandles):
1748         (WebCore::V8DOMWindowShell::initContextIfNeeded):
1749         * bindings/v8/V8IsolatedContext.cpp:
1750         (WebCore::V8IsolatedContext::V8IsolatedContext):
1751         (WebCore::V8IsolatedContext::destroy):
1752         * bindings/v8/V8IsolatedContext.h:
1753         * loader/EmptyClients.h:
1754         (WebCore::EmptyFrameLoaderClient::didCreateScriptContextForFrame):
1755         (WebCore::EmptyFrameLoaderClient::didDestroyScriptContextForFrame):
1756         (WebCore::EmptyFrameLoaderClient::didCreateIsolatedScriptContext):
1757         * loader/FrameLoaderClient.h:
1758
1759 2011-09-19  John Bauman  <jbauman@chromium.org>
1760
1761         Fix nonpremultiplied webgl toDataURL to jpeg
1762         https://bugs.webkit.org/show_bug.cgi?id=68366
1763
1764         The canvas spec says that toDataURL to formats without an alpha must
1765         be "composited onto a solid black background using the source-over
1766         operator." Do that.
1767
1768         Reviewed by Kenneth Russell.
1769
1770         * platform/image-encoders/skia/JPEGImageEncoder.cpp:
1771         (WebCore::RGBAtoRGB):
1772
1773 2011-09-19  Chris Marrin  <cmarrin@apple.com>
1774
1775         Crash can occur when doing a PlatformCAAnimation::copy() with no valueFunction
1776         https://bugs.webkit.org/show_bug.cgi?id=67510
1777
1778         Reviewed by Adam Roben.
1779         
1780         Another fix to take care of one last crash when running pause-crash.html. 
1781         CACF can't deal with null valueFunctions, so avoid setting it when it doesn't 
1782         exist.
1783         
1784         This also adds logic to the Windows Hook in LayerChangesFlusher to prevent it 
1785         from catching the null pointer exception generated by the pause-crash.html test 
1786         before this bug was fixed. Windows was ignoring the exception, so the testcase 
1787         would appear to succeed, even though it should have crashed.
1788
1789         This is a resubmission of http://trac.webkit.org/changeset/95243 with a build fix.
1790
1791         * WebCore.vcproj/WebCore.vcproj:
1792         * platform/graphics/ca/win/LayerChangesFlusher.cpp:
1793         (WebCore::LayerChangesFlusher::hookCallback):
1794         * platform/graphics/ca/win/PlatformCAAnimationWin.cpp:
1795         (PlatformCAAnimation::copy):
1796         * platform/win/StructuredExceptionHandlerSupressor.h: Added.
1797         (WebCore::StructuredExceptionHandlerSupressor::StructuredExceptionHandlerSupressor):
1798         (WebCore::StructuredExceptionHandlerSupressor::~StructuredExceptionHandlerSupressor):
1799
1800 2011-09-19  Ryosuke Niwa  <rniwa@webkit.org>
1801
1802         Incorrect selection with absolutely positioned div
1803         https://bugs.webkit.org/show_bug.cgi?id=39503
1804
1805         Reviewed by Kenneth Rohde Christiansen.
1806
1807         The bug was caused by a false assumption in RenderBlock::positionForPoint. Because the last child box
1808         can be positioned, floated, invisible, etc..., we can't always trust last child's logicalTop to tell us
1809         whether a given point is inside or below the last child box.
1810
1811         Fixed the bug by using the last hit-test candidate instead.
1812
1813         Test: editing/selection/block-with-positioned-lastchild.html
1814
1815         * rendering/RenderBlock.cpp:
1816         (WebCore::RenderBlock::positionForPoint):
1817
1818 2011-09-19  Dmitry Titov  <dimich@chromium.org>
1819
1820         [Chromium] Crash after magic iframe transfer for Pepper/NaCl plugins.
1821         https://bugs.webkit.org/show_bug.cgi?id=68267
1822         Make adoptNode() to not enable live iframe transfer when the iframe's subtree contains plugins.
1823
1824         Reviewed by Adam Barth.
1825
1826         Test: fast/frames/iframe-reparenting-embed-elements.html
1827
1828         * dom/Document.cpp:
1829         (WebCore::Document::adoptNode):
1830         * html/HTMLFrameElementBase.cpp:
1831         (WebCore::hasPluginElements):
1832         (WebCore::HTMLFrameElementBase::canRemainAliveOnRemovalFromTree):
1833         * html/HTMLFrameElementBase.h:
1834
1835 2011-09-19  Abhishek Arya  <inferno@chromium.org>
1836
1837         Issues with merging ruby bases.
1838         https://bugs.webkit.org/show_bug.cgi?id=67240
1839
1840         Reviewed by James Robinson.
1841
1842         1) Change fromBeforeChild to beforeChild to match
1843         webkit rendering naming conventions.
1844         2) Add assert to verify ruby base is indeed emptied
1845         after collecting all children in a single base.
1846         3) Fix condition in mergeBlockChildren to bail out only
1847         when we have no children and there is no work to merge
1848         children to toBase.
1849
1850         Test: fast/ruby/ruby-overhang-crash.html
1851
1852         * rendering/RenderRubyBase.cpp:
1853         (WebCore::RenderRubyBase::moveChildren):
1854         (WebCore::RenderRubyBase::moveInlineChildren):
1855         (WebCore::RenderRubyBase::moveBlockChildren):
1856         (WebCore::RenderRubyBase::mergeBlockChildren):
1857         * rendering/RenderRubyBase.h:
1858         * rendering/RenderRubyRun.cpp:
1859         (WebCore::RenderRubyRun::removeChild):
1860
1861 2011-09-16  Abhishek Arya  <inferno@chromium.org>
1862
1863         Child not placed correctly when beforeChild (table part)
1864         has both :before, :after content.
1865         https://bugs.webkit.org/show_bug.cgi?id=67656
1866
1867         Reviewed by James Robinson.
1868
1869         Tests: fast/table/table-cell-before-after-content-around-table-block.html
1870                fast/table/table-cell-before-after-content-around-table-row.html
1871                fast/table/table-cell-before-after-content-around-table.html
1872                fast/table/table-row-before-after-content-around-block.html
1873                fast/table/table-row-before-after-content-around-table.html
1874
1875         * rendering/RenderBlock.cpp:
1876         (WebCore::RenderBlock::addChildIgnoringAnonymousColumnBlocks):
1877         1. Use the new helper functions findAfterContentRenderer,
1878            anonymousContainer.
1879         2. Rename anonymousChild to better name - beforeChildAnonymousContainer.
1880         * rendering/RenderObject.cpp:
1881         (WebCore::RenderObject::addChild):
1882         When adding a new child, if beforeChild is a table part(
1883         Table/TableSection/TableRow), we need to check if both
1884         :before, :after content are shoved in one of the anonymous child.
1885         If yes, we need to split the :before, :after content before adding
1886         newChild. Easiest approach is to destroy the :before content, then add
1887         the newChild and then call updateBeforeAfterContent to recreate the
1888         :before content.   
1889         * rendering/RenderObject.h:
1890         (WebCore::RenderObject::findBeforeContentRenderer): same as
1891         beforePseudoElementRenderer, but ignores text childs since they are
1892         sequentially added.
1893         (WebCore::RenderObject::findAfterContentRenderer): same.
1894         (WebCore::RenderObject::anonymousContainer):
1895         (WebCore::objectIsRelayoutBoundary):
1896         * rendering/RenderTable.cpp:
1897         (WebCore::RenderTable::addChild): use the new helpers and functionally
1898         correct functions - findAfterContentRenderer, anonymousContainer. previous
1899         implementation was wrong since it would not go inside, if :after content
1900         is embedded deeper than one level.
1901         * rendering/RenderTableRow.cpp:
1902         (WebCore::RenderTableRow::addChild): same.
1903         * rendering/RenderTableSection.cpp:
1904         (WebCore::RenderTableSection::addChild): same.
1905
1906 2011-09-19  Robert Kroeger  <rjkroege@chromium.org>
1907
1908         [chromium] Gesture recognizer fires taptype only every other touch
1909         down/up sequence https://bugs.webkit.org/show_bug.cgi?id=68368
1910  
1911         Reviewed by Adam Barth.
1912
1913         The addition of doubletap detection to the gesture recognizer missed some of the
1914         outgoing edges in the recognizer state machine. This change simplifies the logic
1915         and handles all outgoing edges.
1916
1917         * platform/chromium/GestureRecognizerChromium.cpp:
1918         (WebCore::GestureRecognizerChromium::GestureRecognizerChromium):
1919         (WebCore::GestureRecognizerChromium::isInSecondClickTimeWindow):
1920         (WebCore::GestureRecognizerChromium::updateValues):
1921         (WebCore::GestureRecognizerChromium::touchDown):
1922         (WebCore::GestureRecognizerChromium::click):
1923         * platform/chromium/GestureRecognizerChromium.h:
1924
1925 2011-09-19  Tom Sepez  <tsepez@chromium.org>
1926
1927         Fix xssauditor bypass with unterminated closing tag by making the HTMLSourceTracker
1928         and the HTMLParser interact more closely with each other.  HTMLParser should be
1929         setting the end range for the token itself to account for buffering that the
1930         HTMLSourceTracker can't know about, but there are a lot of paths that would need
1931         updating. First step is to cover this one path.
1932         https://bugs.webkit.org/show_bug.cgi?id=68281
1933
1934         Reviewed by Adam Barth.
1935
1936         Test: http/tests/security/xssAuditor/script-tag-with-invalid-closing-tag.html
1937
1938         * html/parser/HTMLSourceTracker.cpp:
1939         (WebCore::HTMLSourceTracker::end):
1940         * html/parser/HTMLTokenizer.cpp:
1941         (WebCore::HTMLTokenizer::nextToken):
1942
1943 2011-09-19  Peter Rybin  <peter.rybin@gmail.com>
1944
1945         TextPosition refactoring: Merge ZeroBasedNumber and OneBasedNumber classes
1946         https://bugs.webkit.org/show_bug.cgi?id=63541
1947
1948         Reviewed by Adam Barth.
1949
1950         No new tests because this patch is not changing behavior.
1951
1952         * bindings/js/JavaScriptCallFrame.cpp:
1953         (WebCore::JavaScriptCallFrame::JavaScriptCallFrame):
1954         * bindings/js/JavaScriptCallFrame.h:
1955         (WebCore::JavaScriptCallFrame::create):
1956         (WebCore::JavaScriptCallFrame::position):
1957         (WebCore::JavaScriptCallFrame::update):
1958         * bindings/js/ScriptController.cpp:
1959         (WebCore::ScriptController::eventHandlerLineNumber):
1960         * bindings/js/ScriptDebugServer.cpp:
1961         (WebCore::ScriptDebugServer::hasBreakpoint):
1962         (WebCore::ScriptDebugServer::dispatchDidParseSource):
1963         (WebCore::ScriptDebugServer::createCallFrameAndPauseIfNeeded):
1964         (WebCore::ScriptDebugServer::updateCallFrameAndPauseIfNeeded):
1965         * bindings/js/ScriptDebugServer.h:
1966         * bindings/js/ScriptSourceCode.h:
1967         (WebCore::ScriptSourceCode::ScriptSourceCode):
1968         * bindings/js/StringSourceProvider.h:
1969         (WebCore::StringSourceProvider::create):
1970         (WebCore::StringSourceProvider::startPosition):
1971         (WebCore::StringSourceProvider::StringSourceProvider):
1972         * bindings/v8/ScheduledAction.cpp:
1973         (WebCore::ScheduledAction::ScheduledAction):
1974         * bindings/v8/ScriptController.cpp:
1975         (WebCore::ScriptController::eventHandlerPosition):
1976         * bindings/v8/ScriptController.h:
1977         * bindings/v8/ScriptEventListener.cpp:
1978         (WebCore::createAttributeEventListener):
1979         * bindings/v8/ScriptSourceCode.h:
1980         (WebCore::ScriptSourceCode::ScriptSourceCode):
1981         (WebCore::ScriptSourceCode::startPosition):
1982         * bindings/v8/V8LazyEventListener.cpp:
1983         (WebCore::V8LazyEventListener::V8LazyEventListener):
1984         * bindings/v8/V8LazyEventListener.h:
1985         (WebCore::V8LazyEventListener::create):
1986         * bindings/v8/V8Proxy.cpp:
1987         (WebCore::V8Proxy::compileScript):
1988         (WebCore::V8Proxy::evaluate):
1989         (WebCore::V8Proxy::runScript):
1990         * bindings/v8/V8Proxy.h:
1991         * bindings/v8/WorkerContextExecutionProxy.cpp:
1992         (WebCore::WorkerContextExecutionProxy::evaluate):
1993         (WebCore::WorkerContextExecutionProxy::runScript):
1994         * bindings/v8/WorkerContextExecutionProxy.h:
1995         * bindings/v8/WorkerScriptController.cpp:
1996         (WebCore::WorkerScriptController::evaluate):
1997         * dom/PendingScript.cpp:
1998         (WebCore::PendingScript::releaseElementAndClear):
1999         * dom/PendingScript.h:
2000         (WebCore::PendingScript::PendingScript):
2001         (WebCore::PendingScript::startingPosition):
2002         (WebCore::PendingScript::setStartingPosition):
2003         * dom/ScriptElement.cpp:
2004         (WebCore::ScriptElement::prepareScript):
2005         * dom/ScriptElement.h:
2006         * dom/ScriptableDocumentParser.h:
2007         * dom/ViewportArguments.cpp:
2008         (WebCore::parserLineNumber):
2009         * html/parser/HTMLDocumentParser.cpp:
2010         (WebCore::HTMLDocumentParser::runScriptsForPausedTreeBuilder):
2011         (WebCore::HTMLDocumentParser::pumpTokenizer):
2012         (WebCore::HTMLDocumentParser::lineNumber):
2013         (WebCore::HTMLDocumentParser::textPosition):
2014         * html/parser/HTMLDocumentParser.h:
2015         * html/parser/HTMLInputStream.h:
2016         * html/parser/HTMLScriptRunner.cpp:
2017         (WebCore::HTMLScriptRunner::execute):
2018         (WebCore::HTMLScriptRunner::runScript):
2019         * html/parser/HTMLScriptRunner.h:
2020         * html/parser/HTMLTreeBuilder.cpp:
2021         (WebCore::uninitializedPositionValue1):
2022         (WebCore::HTMLTreeBuilder::HTMLTreeBuilder):
2023         (WebCore::HTMLTreeBuilder::takeScriptToProcess):
2024         (WebCore::HTMLTreeBuilder::processEndTag):
2025         (WebCore::HTMLTreeBuilder::processScriptStartTag):
2026         * html/parser/HTMLTreeBuilder.h:
2027         * inspector/InspectorResourceAgent.cpp:
2028         (WebCore::InspectorResourceAgent::buildInitiatorObject):
2029         * platform/text/SegmentedString.cpp:
2030         (WebCore::SegmentedString::currentLine):
2031         (WebCore::SegmentedString::currentColumn):
2032         (WebCore::SegmentedString::setCurrentPosition):
2033         * platform/text/SegmentedString.h:
2034         * svg/SVGDocumentExtensions.cpp:
2035         (WebCore::parserLineNumber):
2036         * xml/XMLErrors.cpp:
2037         (WebCore::XMLErrors::XMLErrors):
2038         (WebCore::XMLErrors::handleError):
2039         (WebCore::XMLErrors::appendErrorMessage):
2040         * xml/XMLErrors.h:
2041         * xml/parser/MarkupTokenizerBase.h:
2042         (WebCore::MarkupTokenizerBase::lineNumber):
2043         * xml/parser/NewXMLDocumentParser.cpp:
2044         (WebCore::NewXMLDocumentParser::processScript):
2045         (WebCore::NewXMLDocumentParser::textPosition):
2046         (WebCore::NewXMLDocumentParser::lineNumber):
2047         * xml/parser/NewXMLDocumentParser.h:
2048         * xml/parser/XMLDocumentParser.cpp:
2049         (WebCore::XMLDocumentParser::pushCurrentNode):
2050         (WebCore::XMLDocumentParser::handleError):
2051         * xml/parser/XMLDocumentParser.h:
2052         * xml/parser/XMLDocumentParserLibxml2.cpp:
2053         (WebCore::PendingCallbacks::appendErrorCallback):
2054         (WebCore::XMLDocumentParser::XMLDocumentParser):
2055         (WebCore::XMLDocumentParser::doWrite):
2056         (WebCore::XMLDocumentParser::startElementNs):
2057         (WebCore::XMLDocumentParser::error):
2058         (WebCore::XMLDocumentParser::lineNumber):
2059         (WebCore::XMLDocumentParser::columnNumber):
2060         (WebCore::XMLDocumentParser::textPosition):
2061         * xml/parser/XMLDocumentParserQt.cpp:
2062         (WebCore::XMLDocumentParser::XMLDocumentParser):
2063         (WebCore::XMLDocumentParser::doWrite):
2064         (WebCore::XMLDocumentParser::doEnd):
2065         (WebCore::XMLDocumentParser::lineNumber):
2066         (WebCore::XMLDocumentParser::columnNumber):
2067         (WebCore::XMLDocumentParser::textPosition):
2068         (WebCore::XMLDocumentParser::parse):
2069         (WebCore::XMLDocumentParser::parseStartElement):
2070
2071 2011-09-19  Dan Bernstein  <mitz@apple.com>
2072
2073         WebCore part of [mac] WebKit contains Objective-C classes that are not prefixed with its standard prefixes
2074         https://bugs.webkit.org/show_bug.cgi?id=68323
2075
2076         Reviewed by Sam Weinig.
2077
2078         Renamed AccessibilityObjectWrapper to WebAccessibilityObjectWrapper.
2079         Renamed CascadeList to WebCascadeList.
2080         Renamed CookieStorageObjCAdapter to WebCookieStorageObjCAdapter.
2081         Renamed LanguageChangeObserver to WebLanguageChangeObserver.
2082         Renamed ScrollAnimationHelperDelegate to WebScrollAnimationHelperDelegate.
2083         Renamed ScrollbarPainterControllerDelegate to WebScrollbarPainterControllerDelegate.
2084         Renamed ScrollbarPainterDelegate to WebScrollbarPainterDelegate.
2085         Renamed ScrollbarPartAnimation to WebScrollbarPartAnimation.
2086         Renamed ScrollbarPrefsObserver to WebScrollbarPrefsObserver.
2087
2088         * WebCore.gyp/WebCore.gyp: Updated for the renaming of CascadeList to WebCascadeList.
2089         * WebCore.xcodeproj/project.pbxproj:
2090         * accessibility/AccessibilityObject.h:
2091         * accessibility/mac/AXObjectCacheMac.mm:
2092         (WebCore::AXObjectCache::attachWrapper):
2093         * accessibility/mac/AccessibilityObjectMac.mm:
2094         * accessibility/mac/AccessibilityObjectWrapper.h: Removed.
2095         * accessibility/mac/AccessibilityObjectWrapper.mm: Removed.
2096         * accessibility/mac/WebAccessibilityObjectWrapper.h: Copied from Source/WebCore/accessibility/mac/AccessibilityObjectWrapper.h.
2097         * accessibility/mac/WebAccessibilityObjectWrapper.mm: Copied from Source/WebCore/accessibility/mac/AccessibilityObjectWrapper.mm.
2098         (convertToNSArray):
2099         (-[WebAccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):
2100         (-[WebAccessibilityObjectWrapper accessibilityIndexOfChild:]):
2101         (-[WebAccessibilityObjectWrapper accessibilityArrayAttributeValues:index:maxCount:]):
2102         * platform/graphics/mac/ComplexTextControllerCoreText.mm:
2103         (WebCore::ComplexTextController::collectComplexTextRunsForCharactersCoreText):
2104         * platform/mac/Language.mm:
2105         (WebCore::platformDefaultLanguage):
2106         * platform/mac/ScrollAnimatorMac.h:
2107         * platform/mac/ScrollAnimatorMac.mm:
2108         (-[WebScrollbarPainterDelegate setUpAnimation:scrollerPainter:part:WebCore::animateAlphaTo:duration:]):
2109         (WebCore::ScrollAnimatorMac::ScrollAnimatorMac):
2110         * platform/mac/ScrollbarThemeMac.mm:
2111         (WebCore::ScrollbarThemeMac::ScrollbarThemeMac):
2112         * platform/network/mac/CookieStorageMac.mm:
2113         (WebCore::startObservingCookieChanges):
2114
2115 2011-09-19  Cary Clark  <caryclark@google.com>
2116
2117         Move fontDataForCombiningCharacterSequence to fix Skia on Mac build
2118         https://bugs.webkit.org/show_bug.cgi?id=68358
2119
2120         Reviewed by Dan Bernstein.
2121
2122         No new tests.
2123
2124         * platform/graphics/mac/FontMac.mm:
2125         * platform/graphics/mac/FontComplexTextMac.cpp:
2126         (WebCore::Font::fontDataForCombiningCharacterSequence):
2127         This moves the implementation from FontMac.mm to
2128         FontComplexTextMac.cpp, so it is visible to the Skia on Mac
2129         platform as well.
2130
2131 2011-09-19  Jessie Berlin  <jberlin@apple.com>
2132
2133         Sites that use history pushState or replaceState are recorded in history in Private Browsing
2134         mode.
2135         https://bugs.webkit.org/show_bug.cgi?id=68208
2136
2137         Reviewed by Brady Eidson.
2138
2139         Test: TestWebKitAPI/Tests/WebKit2/PrivateBrowsingPushStateNoHistoryCallback.
2140
2141         Add the privateBrowsingEnabled check that is used in other places in HistoryController
2142         before calling addVisitedLink and FrameLoaderClient::updateGlobalHistory.
2143
2144         * loader/HistoryController.cpp:
2145         (WebCore::HistoryController::pushState):
2146         (WebCore::HistoryController::replaceState):
2147
2148 2011-09-19  Leandro Pereira  <leandro@profusion.mobi>
2149
2150         Unreviewed: ScrollbarThemeMock.cpp is already referenced in the
2151         global CMakeLists.txt.
2152
2153         * CMakeListsEfl.txt: Remove reference to platform/mock/ScrollbarThemeMock.cpp.
2154         * CMakeListsWinCE.txt: Ditto.
2155
2156 2011-09-19  Ademar de Souza Reis Jr.  <ademar.reis@openbossa.org>
2157
2158         Unreviewed: dos2unix on bindings/js/JSExceptionBase.h
2159
2160         Visual Studio is choking on this file when generating packages for
2161         Qt-4.8 on Windows:
2162
2163         """
2164         Source\WebCore\Bindings\js\JSExceptionBase.h:
2165         error C4335: Mac file format detected: please convert the source file
2166         to either DOS or UNIX format
2167         """
2168
2169         Since from all .cpp or .h files shared by all ports this is the only
2170         one with CRLF line terminations, I'm assuming this was a mistake.
2171
2172         * bindings/js/JSExceptionBase.h:
2173
2174 2011-09-19  Ilya Tikhonovsky  <loislo@chromium.org>
2175
2176         Web Inspector: didMarkDOMContentEvent() should send event of MarkDOMContent type.
2177         https://bugs.webkit.org/show_bug.cgi?id=67528
2178
2179         Reviewed by Pavel Feldman.
2180
2181         Tests: inspector/timeline/timeline-dom-content-loaded-event.html
2182                inspector/timeline/timeline-load-event.html
2183
2184         * inspector/InspectorTimelineAgent.cpp:
2185         (WebCore::InspectorTimelineAgent::didMarkDOMContentEvent):
2186
2187 2011-09-19  Shawn Singh  <shawnsingh@chromium.org>
2188
2189         Re-name LayerChromium border functions to reflect that
2190         they are only for debug use.
2191         https://bugs.webkit.org/show_bug.cgi?id=68212
2192
2193         Reviewed by James Robinson.
2194
2195         Code cleanup towards unit testing.
2196
2197         * platform/graphics/chromium/GraphicsLayerChromium.cpp:
2198         (WebCore::GraphicsLayerChromium::clearBackgroundColor):
2199         (WebCore::GraphicsLayerChromium::setDebugBackgroundColor):
2200         (WebCore::GraphicsLayerChromium::setDebugBorder):
2201         (WebCore::GraphicsLayerChromium::updateLayerBackgroundColor):
2202         (WebCore::GraphicsLayerChromium::setupContentsLayer):
2203         * platform/graphics/chromium/LayerChromium.cpp:
2204         (WebCore::LayerChromium::setDebugBorderColor):
2205         (WebCore::LayerChromium::setDebugBorderWidth):
2206         * platform/graphics/chromium/LayerChromium.h:
2207
2208 2011-09-18  Ilya Tikhonovsky  <loislo@chromium.org>
2209
2210         Web Inspector: requestAnimationFrame callbacks don't show up in the timeline panel.
2211         https://bugs.webkit.org/show_bug.cgi?id=67986
2212
2213         Reviewed by Pavel Feldman.
2214
2215         Test: inspector/timeline/timeline-animation-frame.html
2216
2217         * English.lproj/localizedStrings.js:
2218         * bindings/v8/V8Proxy.cpp:
2219         (WebCore::V8Proxy::callFunction):
2220         (WebCore::V8Proxy::callFunctionWithoutFrame):
2221         (WebCore::V8Proxy::instrumentedCallFunction):
2222         * bindings/v8/V8Proxy.h:
2223         * bindings/v8/custom/V8CustomVoidCallback.cpp:
2224         (WebCore::invokeCallback):
2225         * dom/ScriptedAnimationController.cpp:
2226         (WebCore::ScriptedAnimationController::registerCallback):
2227         (WebCore::ScriptedAnimationController::cancelCallback):
2228         (WebCore::ScriptedAnimationController::serviceScriptedAnimations):
2229         * inspector/InspectorInstrumentation.cpp:
2230         (WebCore::InspectorInstrumentation::didRegisterAnimationFrameCallbackImpl):
2231         (WebCore::InspectorInstrumentation::didCancelAnimationFrameCallbackImpl):
2232         (WebCore::InspectorInstrumentation::willFireAnimationFrameEventImpl):
2233         (WebCore::InspectorInstrumentation::didFireAnimationFrameEventImpl):
2234         * inspector/InspectorInstrumentation.h:
2235         (WebCore::InspectorInstrumentation::willCallFunction):
2236         (WebCore::InspectorInstrumentation::didRegisterAnimationFrameCallback):
2237         (WebCore::InspectorInstrumentation::didCancelAnimationFrameCallback):
2238         (WebCore::InspectorInstrumentation::willFireAnimationFrameEvent):
2239         (WebCore::InspectorInstrumentation::didFireAnimationFrameEvent):
2240         * inspector/InspectorTimelineAgent.cpp:
2241         (WebCore::InspectorTimelineAgent::didRegisterAnimationFrameCallback):
2242         (WebCore::InspectorTimelineAgent::didCancelAnimationFrameCallback):
2243         (WebCore::InspectorTimelineAgent::willFireAnimationFrameEvent):
2244         (WebCore::InspectorTimelineAgent::didFireAnimationFrameEvent):
2245         * inspector/InspectorTimelineAgent.h:
2246         * inspector/TimelineRecordFactory.cpp:
2247         (WebCore::TimelineRecordFactory::createAnimationFrameCallbackData):
2248         * inspector/TimelineRecordFactory.h:
2249         * inspector/front-end/TimelineAgent.js:
2250         * inspector/front-end/TimelinePanel.js:
2251         (WebInspector.TimelinePanel):
2252         (WebInspector.TimelinePanel.prototype.get _recordStyles):
2253         (WebInspector.TimelinePanel.prototype._innerAddRecordToTimeline):
2254         (WebInspector.TimelinePanel.prototype._clearPanel):
2255         (WebInspector.TimelinePanel.FormattedRecord):
2256         (WebInspector.TimelinePanel.FormattedRecord.prototype._generatePopupContent):
2257         (WebInspector.TimelinePanel.FormattedRecord.prototype._getRecordDetails):
2258
2259 2011-09-19  Carlos Garcia Campos  <cgarcia@igalia.com>
2260
2261         [GTK] Fix distcheck build
2262         https://bugs.webkit.org/show_bug.cgi?id=68241
2263
2264         Reviewed by Martin Robinson.
2265
2266         * GNUmakefile.list.am:
2267
2268 2011-09-18  Ilya Tikhonovsky  <loislo@chromium.org>
2269
2270         Web Inspector: chromium-win: "Save timeline data" does nothing.
2271         https://bugs.webkit.org/show_bug.cgi?id=68313
2272
2273         windows shell API function GetSaveFileName doesn't accept file names with ':' symbol.
2274
2275         Reviewed by Pavel Feldman.
2276
2277         * inspector/front-end/TimelinePanel.js:
2278         (WebInspector.TimelineModel.prototype._saveToFile):
2279
2280 2011-09-18  Dan Bernstein  <mitz@apple.com>
2281
2282         Try to fix the Chromium Mac build after r95391.
2283
2284         * WebCore.gyp/WebCore.gyp:
2285
2286 2011-09-18  Dan Bernstein  <mitz@apple.com>
2287
2288         Try to fix the Chromium Mac build after r95391.
2289
2290         * WebCore.gyp/WebCore.gyp:
2291
2292 2011-09-18  Dan Bernstein  <mitz@apple.com>
2293
2294         Try to fix the Chromium Mac build after r95391.
2295
2296         * WebCore.gypi: Updated for the renaming of ComplexTextController.cpp.
2297         * WebCore.xcodeproj/project.pbxproj: Ditto.
2298         * platform/graphics/Font.h: Changed #if directives to include the Chromium Mac port.
2299         * platform/graphics/SimpleFontData.h: Ditto.
2300         * platform/graphics/mac/ComplexTextControllerCoreText.cpp: Changed the filename extension of this
2301         Objective-C++ file to .mm.
2302         * platform/graphics/mac/ComplexTextControllerCoreText.mm: Copied from Source/WebCore/platform/graphics/mac/ComplexTextControllerCoreText.cpp.
2303
2304 2011-09-18  Dan Bernstein  <mitz@apple.com>
2305
2306         Snow Leopard build fix after r95391.
2307
2308         * platform/graphics/mac/ComplexTextControllerCoreText.cpp:
2309         (WebCore::ComplexTextController::collectComplexTextRunsForCharactersCoreText):
2310
2311 2011-09-18  Dan Bernstein  <mitz@apple.com>
2312
2313         Leopard build fix after r95391.
2314
2315         * platform/graphics/mac/ComplexTextControllerATSUI.cpp:
2316         (WebCore::ComplexTextController::collectComplexTextRunsForCharactersATSUI):
2317
2318 2011-09-18  Dan Bernstein  <mitz@apple.com>
2319
2320         Allow Core Text to choose the fallback font for rendering a combining character sequence
2321
2322         Fixes <rdar://problem/7860281> Decomposed text is displayed incorrectly when Verdana is specified
2323         https://bugs.webkit.org/show_bug.cgi?id=68287
2324
2325         Reviewed by Dave Hyatt.
2326
2327         Test: platform/mac/fast/text/combining-character-sequence-fallback.html
2328
2329         * WebCore.xcodeproj/project.pbxproj: Compile ComplexTextControllerCoreText.cpp as Objective-C++.
2330         I am going to rename this file in a followup patch.
2331
2332         * platform/graphics/Font.h: Declared fontDataForCombiningCharacterSequence().
2333
2334         * platform/graphics/SimpleFontData.h: Declared canRenderCombiningCharacterSequence() and added
2335         a member variable to cache the results of calling this function.
2336
2337         * platform/graphics/mac/ComplexTextController.cpp:
2338         (WebCore::ComplexTextController::offsetForPosition): Fixed a typo in a comment.
2339         (WebCore::advanceByCombiningCharacterSequence): Added this helper function, which iterates over
2340         characters until the end of a sequence of combining characters, zero-width joiners and zero-width
2341         non-joiners. A single base characater followed by such a (possibly-empty) sequence is known as
2342         a combining character sequence. This stretches the definition a little because the base character
2343         may be a combining character as well. Returns false if an invalid UTF-16 sequence is encountered,
2344         true otherwise.
2345         (WebCore::ComplexTextController::collectComplexTextRuns): - Replaced the glyphData and nextGlyphData
2346         variables each with a pair of variables, a SimpleFontData* and a boolean indicating whether a
2347         character mapped to the missing glyph. This clarifies that this function does not use glyph IDs.
2348         - Renamed the local variable newC to uppercaseCharacter.
2349         - Changed to use advanceByCombiningCharacterSequence().
2350         - Changed to use Font::fontDataForCombiningCharacterSequence() instead of Font::glyphDataForCharacter().
2351           If there are combining marks and none of the fonts in the fallback list can render the sequence alone,
2352           use the systemFallbackFontData() constant to indicate to collectComplexTextRunsForCharactersCoreText()
2353           to allow Core Text to perform its own fallback.
2354         - Stopped checking isSmallCaps against nextIsSmallCaps. It was redundant, since the small caps FontData
2355           differs from the normal variant.
2356         (WebCore::ComplexTextController::collectComplexTextRunsForCharacters): Moved the common logic to
2357         handle the 0 fontData case from the ATSUI and Core Text continuations of this function into this function.
2358
2359         * platform/graphics/mac/ComplexTextController.h:
2360         (WebCore::ComplexTextController::systemFallbackFontData): Added. This constant is used to indicate to
2361         collectComplexTextRunsForCharactersCoreText() that it should allow Core Text to perform its own font
2362         fallback.
2363
2364         * platform/graphics/mac/ComplexTextControllerATSUI.cpp:
2365         (WebCore::ComplexTextController::collectComplexTextRunsForCharactersATSUI): Handle systemFallbackFontData()
2366         by using the primary font data.
2367
2368         * platform/graphics/mac/ComplexTextControllerCoreText.cpp:
2369         (-[CascadeList initWithFont:WebCore::character:]): Added.
2370         (-[CascadeList count]): Added.
2371         (-[CascadeList objectAtIndex:]): Added. Returns an entry from a cascade list of CTFontDescriptorRef
2372         objects based on the font’s fallback list for the character. The list is initialized lazily.
2373         (WebCore::ComplexTextController::collectComplexTextRunsForCharactersCoreText): Handle systemFallbackFontData()
2374         by allowing Core Text to perform font fallback, starting with a cascade list based on the font’s fallback
2375         list and possibly continuing with system fallback.
2376
2377         * platform/graphics/mac/FontMac.mm:
2378         (WebCore::Font::fontDataForCombiningCharacterSequence): Added. If the sequence is only a base character,
2379         calls through to glyphDataForCharacter(). Otherwise, iterates over the font’s fallback list for the
2380         base character (and the system fallback font for that character), returning the first font that can
2381         render the sequence, or 0 if there is none.
2382
2383         * platform/graphics/mac/SimpleFontDataMac.mm:
2384         (WebCore::provideStringAndAttributes): Added this Core Text callback.
2385         (WebCore::SimpleFontData::canRenderCombiningCharacterSequence): Added. Checks if Core Text can render
2386         the sequence using only this font. Caches the result.
2387
2388 2011-09-17  Mihai Parparita  <mihaip@chromium.org>
2389
2390         FrameLoaderClient BackForwardList-related methods are unsued
2391         https://bugs.webkit.org/show_bug.cgi?id=68293
2392
2393         Reviewed by Darin Adler.
2394
2395         Remove FrameLoaderClient methods that were added by r51629, since only
2396         the old (since-deleted) Android port needed them.
2397
2398         * history/BackForwardListImpl.cpp:
2399         (WebCore::BackForwardListImpl::addItem):
2400         (WebCore::BackForwardListImpl::goBack):
2401         (WebCore::BackForwardListImpl::goForward):
2402         (WebCore::BackForwardListImpl::goToItem):
2403         (WebCore::BackForwardListImpl::setCapacity):
2404         * loader/EmptyClients.h:
2405         * loader/FrameLoaderClient.h:
2406
2407 2011-09-17  David Hyatt  <hyatt@apple.com>
2408
2409         https://bugs.webkit.org/show_bug.cgi?id=68307
2410         
2411         Crash in border image cssText. Make sure to null check all the components, since they're all
2412         optional now.
2413
2414         Reviewed by Sam Weinig.
2415
2416         Added fast/borders/border-image-slice-omission.html
2417
2418         * css/CSSBorderImageValue.cpp:
2419         (WebCore::CSSBorderImageValue::cssText):
2420
2421 2011-09-17  Aaron Boodman  <aa@chromium.org>
2422
2423         Rework script context creation/release notifications
2424         https://bugs.webkit.org/show_bug.cgi?id=67828
2425
2426         Reviewed by Adam Barth.
2427
2428         * bindings/v8/V8DOMWindowShell.cpp:
2429         (WebCore::V8DOMWindowShell::disposeContextHandles):
2430         (WebCore::V8DOMWindowShell::initContextIfNeeded):
2431         * bindings/v8/V8IsolatedContext.cpp:
2432         (WebCore::V8IsolatedContext::V8IsolatedContext):
2433         (WebCore::V8IsolatedContext::destroy):
2434         * bindings/v8/V8IsolatedContext.h:
2435         * loader/EmptyClients.h:
2436         (WebCore::EmptyFrameLoaderClient::didCreateScriptContext):
2437         (WebCore::EmptyFrameLoaderClient::willReleaseScriptContext):
2438         * loader/FrameLoaderClient.h:
2439
2440 2011-09-17  Ilya Tikhonovsky  <loislo@chromium.org>
2441
2442         Web Inspector: file open dialog appears when user clicks on the timeline bar in timeline panel.
2443         https://bugs.webkit.org/show_bug.cgi?id=68312
2444
2445         Reviewed by Pavel Feldman.
2446
2447        * inspector/front-end/TimelinePanel.js:
2448         (WebInspector.TimelinePanel.prototype._createFileSelector):
2449
2450 2011-09-17  Jeff Miller  <jeffm@apple.com>
2451
2452         Build fix after r95372.
2453
2454         * dom/DOMAllInOne.cpp: #include "EventListenerMap.cpp"
2455
2456 2011-09-17  Deepak Sherveghar  <bpwv64@motorola.com>
2457
2458         Override supportsFocus() for HTMLMediaElement.
2459         https://bugs.webkit.org/show_bug.cgi?id=67190
2460
2461         Reviewed by Antonio Gomes.
2462
2463         Tests: fast/events/media-element-focus-tab.html
2464                fast/spatial-navigation/snav-media-elements.html
2465
2466         Return true from supportsFocus() if control's attribute is present or a tabindex is specified.
2467
2468         * html/HTMLMediaElement.cpp:
2469         (WebCore::HTMLMediaElement::supportsFocus):
2470         * html/HTMLMediaElement.h:
2471
2472 2011-09-16  Adam Barth  <abarth@webkit.org>
2473
2474         Rename ENABLE(LEVELDB) to USE(LEVELDB)
2475         https://bugs.webkit.org/show_bug.cgi?id=68290
2476
2477         Reviewed by Darin Adler.
2478
2479         LEVELDB is a library that can be used to implemented INDEXED_DATABASE,
2480         which means it should be a USE not an ENABLE.
2481
2482         * CMakeLists.txt:
2483         * WebCore.gyp/WebCore.gyp:
2484         * platform/leveldb/LevelDBComparator.h:
2485         * platform/leveldb/LevelDBDatabase.cpp:
2486         * platform/leveldb/LevelDBDatabase.h:
2487         * platform/leveldb/LevelDBIterator.h:
2488         * platform/leveldb/LevelDBSlice.h:
2489         * platform/leveldb/LevelDBTransaction.cpp:
2490         * platform/leveldb/LevelDBTransaction.h:
2491         * platform/leveldb/LevelDBWriteBatch.cpp:
2492         * platform/leveldb/LevelDBWriteBatch.h:
2493         * storage/IDBFactoryBackendImpl.cpp:
2494         (WebCore::IDBFactoryBackendImpl::open):
2495         (WebCore::IDBFactoryBackendImpl::migrateFromSQLiteToLevelDB):
2496         * storage/IDBLevelDBBackingStore.cpp:
2497         * storage/IDBLevelDBBackingStore.h:
2498         * storage/IDBLevelDBCoding.cpp:
2499         * storage/IDBLevelDBCoding.h:
2500
2501 2011-09-16  Andreas Kling  <kling@webkit.org>
2502
2503         Reduce EventTarget memory usage by deferring hash map allocation
2504         until there are listeners for more than 1 event type.
2505
2506         http://webkit.org/b/68105
2507
2508         Reviewed by Darin Adler.
2509
2510         Introduce an EventListenerMap class which manages a map of event types that have
2511         one or more listeners connected.
2512
2513         When there is only one event type, it's stored directly on the EventListenerMap
2514         internally, and when more are added it moves to a hash map. It only goes back
2515         from the hash map if all the listeners are removed at once (i.e clear() is called.)
2516
2517         * CMakeLists.txt:
2518         * GNUmakefile.list.am:
2519         * WebCore.gypi:
2520         * WebCore.pro:
2521         * WebCore.vcproj/WebCore.vcproj:
2522         * WebCore.xcodeproj/project.pbxproj:
2523
2524             Adding files.
2525
2526         * WebCore.exp.in:
2527
2528             Export EventListenerMap::contains() for WebKit/mac.
2529
2530         * dom/EventListenerMap.cpp: Added.
2531         (WebCore::EventListenerMap::EventListenerMap):
2532         (WebCore::EventListenerMap::~EventListenerMap):
2533         (WebCore::EventListenerMap::isEmpty):
2534         (WebCore::EventListenerMap::contains):
2535         (WebCore::EventListenerMap::clear):
2536         (WebCore::EventListenerMap::eventTypes):
2537         (WebCore::addListenerToVector):
2538         (WebCore::EventListenerMap::add):
2539         (WebCore::removeListenerFromVector):
2540         (WebCore::EventListenerMap::remove):
2541         (WebCore::EventListenerMap::find):
2542         (WebCore::removeFirstListenerCreatedFromMarkup):
2543         (WebCore::EventListenerMap::removeFirstEventListenerCreatedFromMarkup):
2544         (WebCore::copyListenersNotCreatedFromMarkupToTarget):
2545         (WebCore::EventListenerMap::copyEventListenersNotCreatedFromMarkupToTarget):
2546         (WebCore::EventListenerIterator::EventListenerIterator):
2547         (WebCore::EventListenerIterator::nextListener):
2548         * dom/EventListenerMap.h: Added.
2549
2550         * dom/EventTarget.cpp:
2551         (WebCore::EventTargetData::~EventTargetData):
2552         (WebCore::EventTarget::addEventListener):
2553         (WebCore::EventTarget::removeEventListener):
2554         (WebCore::EventTarget::fireEventListeners):
2555         (WebCore::EventTarget::getEventListeners):
2556         (WebCore::EventTarget::removeAllEventListeners):
2557
2558         * dom/EventTarget.h:
2559         (WebCore::EventTarget::visitJSEventListeners):
2560
2561             Use EventListenerIterator to visit listeners. (JSC specific.)
2562
2563         * inspector/InspectorDOMAgent.cpp:
2564         (WebCore::InspectorDOMAgent::getEventListenersForNode):
2565
2566             Call EventListenerMap::eventTypes() go get the list of event types
2567             currently listened for.
2568
2569         * dom/Node.cpp:
2570         (WebCore::Node::removeEventListener):
2571         * svg/SVGUseElement.cpp:
2572         (WebCore::SVGUseElement::transferEventListenersToShadowTree):
2573
2574             Move implementations of SVG-specific hacks into EventListenerMap and
2575             call them from here.
2576
2577 2011-09-16  Jeremy Apthorp <jeremya@chromium.org> and James Kozianski  <koz@chromium.org>
2578
2579         Don't detach elements from the render tree when entering fullscreen mode
2580         https://bugs.webkit.org/show_bug.cgi?id=66531
2581
2582         This prevents plugin instances from being destroyed and reinstantiated
2583         when entering fullscreen mode.
2584
2585         Reviewed by James Robinson.
2586
2587         Test: plugins/fullscreen-plugins-dont-reload.html
2588
2589         * dom/Document.cpp:
2590         (WebCore::Document::webkitWillEnterFullScreenForElement):
2591         (WebCore::Document::webkitDidExitFullScreenForElement):
2592         * dom/NodeRenderingContext.cpp:
2593         (WebCore::NodeRendererFactory::createRendererIfNeeded):
2594         * rendering/RenderFullScreen.cpp:
2595         (createFullScreenStyle):
2596         (RenderFullScreen::wrapRenderer):
2597         (RenderFullScreen::unwrapRenderer):
2598         * rendering/RenderFullScreen.h:
2599
2600 2011-09-16  Jochen Eisinger  <jochen@chromium.org>
2601
2602         Rename FrameLoaderClient::allowImages to FrameLoaderClient::allowImage and include the image URL as parameter
2603         https://bugs.webkit.org/show_bug.cgi?id=68071
2604
2605         This will allow embedders to block images based on where the image is loaded from, instead of just blocking all images in a given frame.
2606
2607         Reviewed by Adam Barth.
2608
2609         * html/ImageDocument.cpp:
2610         (WebCore::ImageDocumentParser::appendBytes):
2611         * loader/FrameLoaderClient.h:
2612         (WebCore::FrameLoaderClient::allowImage):
2613         * loader/cache/CachedResourceLoader.cpp:
2614         (WebCore::CachedResourceLoader::requestImage):
2615
2616 2011-09-16  Tom Sepez  <tsepez@chromium.org>
2617
2618         Make XSSAuditor truncate inline snippets at a reasonable length before comparison
2619         respecting boundaries of multiply urlencoded sequences.
2620         https://bugs.webkit.org/show_bug.cgi?id=68092
2621         
2622         Reviewed by Adam Barth.
2623
2624         Test: http/tests/security/xssAuditor/property-escape-long.html
2625
2626         * html/parser/XSSAuditor.cpp:
2627         (WebCore::XSSAuditor::filterTokenAfterScriptStartTag):
2628         (WebCore::XSSAuditor::eraseDangerousAttributesIfInjected):
2629         (WebCore::XSSAuditor::eraseAttributeIfInjected):
2630         (WebCore::XSSAuditor::decodedSnippetForAttribute):
2631         (WebCore::XSSAuditor::isContainedInRequest):
2632         * html/parser/XSSAuditor.h:
2633
2634 2011-09-16  Shawn Singh  <shawnsingh@chromium.org>
2635
2636         Remove m_contentsDirty from LayerChromium because it
2637         is redundant with m_dirtyRect.
2638         https://bugs.webkit.org/show_bug.cgi?id=68213
2639
2640         Reviewed by James Robinson.
2641
2642         Code cleanup towards unit testing.
2643
2644         * platform/graphics/chromium/Canvas2DLayerChromium.cpp:
2645         (WebCore::Canvas2DLayerChromium::updateCompositorResources):
2646         * platform/graphics/chromium/ContentLayerChromium.cpp:
2647         (WebCore::ContentLayerChromium::paintContentsIfDirty):
2648         * platform/graphics/chromium/ImageLayerChromium.cpp:
2649         (WebCore::ImageLayerChromium::paintContentsIfDirty):
2650         * platform/graphics/chromium/LayerChromium.cpp:
2651         (WebCore::LayerChromium::LayerChromium):
2652         (WebCore::LayerChromium::setNeedsDisplay):
2653         (WebCore::LayerChromium::resetNeedsDisplay):
2654         * platform/graphics/chromium/LayerChromium.h:
2655         * platform/graphics/chromium/VideoLayerChromium.cpp:
2656         (WebCore::VideoLayerChromium::updateCompositorResources):
2657         * platform/graphics/chromium/WebGLLayerChromium.cpp:
2658         (WebCore::WebGLLayerChromium::updateCompositorResources):
2659
2660 2011-09-16  Dmitry Lomov  <dslomov@google.com>
2661
2662         https://bugs.webkit.org/show_bug.cgi?id=66714
2663         Add webkitPostMessage to allow for adding transferable support.
2664         This adds webkitPostMessage, currently identical to postMessage, which 
2665         would later be a vehicle for adding transferable support for messaging.
2666         
2667         Based on patch by Luke Zarko.
2668
2669         Reviewed by David Levin.
2670
2671         * bindings/js/JSDOMWindowCustom.cpp:
2672         (WebCore::JSDOMWindow::webkitPostMessage):
2673         * bindings/js/JSDedicatedWorkerContextCustom.cpp:
2674         (WebCore::JSDedicatedWorkerContext::webkitPostMessage):
2675         * bindings/js/JSMessageEventCustom.cpp:
2676         (WebCore::JSMessageEvent::webkitInitMessageEvent):
2677         * bindings/js/JSMessagePortCustom.cpp:
2678         (WebCore::JSMessagePort::webkitPostMessage):
2679         * bindings/js/JSWorkerCustom.cpp:
2680         (WebCore::JSWorker::postMessage):
2681         (WebCore::JSWorker::webkitPostMessage):
2682         * bindings/v8/custom/V8DOMWindowCustom.cpp:
2683         (WebCore::handlePostMessageCallback):
2684         (WebCore::V8DOMWindow::postMessageCallback):
2685         (WebCore::V8DOMWindow::webkitPostMessageCallback):
2686         * bindings/v8/custom/V8DedicatedWorkerContextCustom.cpp:
2687         (WebCore::handlePostMessageCallback):
2688         (WebCore::V8DedicatedWorkerContext::postMessageCallback):
2689         (WebCore::V8DedicatedWorkerContext::webkitPostMessageCallback):
2690         * bindings/v8/custom/V8MessageEventCustom.cpp:
2691         (WebCore::V8MessageEvent::initMessageEventCallback):
2692         (WebCore::V8MessageEvent::webkitInitMessageEventCallback):
2693         * bindings/v8/custom/V8MessagePortCustom.cpp:
2694         (WebCore::handlePostMessageCallback):
2695         (WebCore::V8MessagePort::postMessageCallback):
2696         (WebCore::V8MessagePort::webkitPostMessageCallback):
2697         * bindings/v8/custom/V8WorkerCustom.cpp:
2698         (WebCore::handlePostMessageCallback):
2699         (WebCore::V8Worker::postMessageCallback):
2700         (WebCore::V8Worker::webkitPostMessageCallback):
2701         * dom/MessageEvent.idl:
2702         * dom/MessagePort.idl:
2703         * page/DOMWindow.idl:
2704         * workers/DedicatedWorkerContext.idl:
2705         * workers/Worker.idl:
2706
2707 2011-09-16  Alexei Svitkine  <asvitkine@chromium.org>
2708
2709         Chromium: Fix repaint of rubber-band overhang area under composited path
2710         https://bugs.webkit.org/show_bug.cgi?id=68246
2711
2712         I accidently removed these two lines from the last patch on: https://bugs.webkit.org/show_bug.cgi?id=66969
2713
2714         Reviewed by James Robinson.
2715
2716         Test: platform/chromium-gpu/compositing/rubberbanding/transform-overhang-size-change.html
2717
2718         * platform/ScrollView.cpp:
2719         (WebCore::ScrollView::scrollContents):
2720
2721 2011-09-16  Peter Beverloo  <peter@chromium.org>
2722
2723         Depend on harfbuzz for OS=Android as well
2724         https://bugs.webkit.org/show_bug.cgi?id=68239
2725
2726         Like GTK, Android depends on harfbuzz as well, so reflect that in
2727         the project file. Furthermore, fix a compile error in PopupListBox.cpp
2728         by explicitly including ctype.h, as isspace otherwise won't be declared.
2729
2730         Reviewed by Steve Block.
2731
2732         * WebCore.gyp/WebCore.gyp:
2733         * platform/chromium/PopupListBox.cpp:
2734
2735 2011-09-16  Tony Chang  <tony@chromium.org>
2736
2737         Rename flex-align values to match the spec
2738         https://bugs.webkit.org/show_bug.cgi?id=67741
2739
2740         Reviewed by Ojan Vafai.
2741
2742         * css/CSSParser.cpp:
2743         (WebCore::CSSParser::parseValue):
2744         * css/CSSPrimitiveValueMappings.h:
2745         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
2746         (WebCore::CSSPrimitiveValue::operator EFlexAlign):
2747         * css/CSSValueKeywords.in:
2748         * rendering/style/RenderStyleConstants.h:
2749
2750 2011-09-16  Kentaro Hara  <haraken@chromium.org>
2751
2752         Implement an ErrorEvent constructor for JSC
2753         https://bugs.webkit.org/show_bug.cgi?id=68148
2754
2755         Reviewed by Sam Weinig.
2756
2757         The spec for the ErrorEvent constructor is here:
2758         http://dev.w3.org/html5/workers/#errorevent
2759
2760         Test: fast/events/constructors/error-event-constructor.html
2761
2762         * bindings/generic/EventConstructors.h: Added a definition for the ErrorEvent constructor.
2763         * bindings/js/JSEventConstructors.cpp: Added #includes for ErrorEvent.
2764         * dom/ErrorEvent.cpp:
2765         (WebCore::ErrorEventInit::ErrorEventInit):
2766         (WebCore::ErrorEvent::ErrorEvent):
2767         (WebCore::ErrorEvent::initErrorEvent):
2768         (WebCore::ErrorEvent::isErrorEvent):
2769         * dom/ErrorEvent.h: Added a definition for ErrorEventInit.
2770         (WebCore::ErrorEvent::create):
2771         (WebCore::ErrorEvent::message):
2772         (WebCore::ErrorEvent::filename):
2773         (WebCore::ErrorEvent::lineno):
2774         * dom/ErrorEvent.idl: Makes ErrorEvent constructible.
2775
2776 2011-09-16  Kentaro Hara  <haraken@google.com>
2777
2778         Overhangs a ruby by no more than half the width of the neighboring text.
2779         https://bugs.webkit.org/show_bug.cgi?id=62684
2780
2781         Reviewed by Dan Bernstein.
2782
2783         Assume two rubies between which a narrow text exists, like
2784         "<ruby>x<rt>xxxxxx</rt></ruby>l<ruby>y<rt>yyyyyy</rt></ruby>".
2785         In order to avoid the two rubies overlapping with each other,
2786         this patch overhangs the ruby by no more than half the ruby font
2787         size and no more than half the width of the neighboring text.
2788
2789         Tests: fast/ruby/overhang-horizontal-no-overlap1.html
2790                fast/ruby/overhang-horizontal-no-overlap2.html
2791                fast/ruby/overhang-vertical-no-overlap1.html
2792                fast/ruby/overhang-vertical-no-overlap2.html
2793
2794         * rendering/RenderRubyRun.cpp:
2795         (WebCore::RenderRubyRun::getOverhang): Calculates the width of ruby overhanging.
2796
2797 2011-09-16  Sheriff Bot  <webkit.review.bot@gmail.com>
2798
2799         Unreviewed, rolling out r95304.
2800         http://trac.webkit.org/changeset/95304
2801         https://bugs.webkit.org/show_bug.cgi?id=68299
2802
2803         Broke GTK+ builds. It pulls derived headers into main.c
2804         (Requested by rniwa on #webkit).
2805
2806         * bindings/scripts/CodeGeneratorGObject.pm:
2807         ():
2808         * bindings/scripts/test/GObject/WebKitDOMTestCallback.cpp:
2809         * bindings/scripts/test/GObject/WebKitDOMTestCallback.h:
2810         * bindings/scripts/test/GObject/WebKitDOMTestCallbackPrivate.h:
2811         * bindings/scripts/test/GObject/WebKitDOMTestInterface.cpp:
2812         * bindings/scripts/test/GObject/WebKitDOMTestInterface.h:
2813         * bindings/scripts/test/GObject/WebKitDOMTestInterfacePrivate.h:
2814         * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListener.cpp:
2815         * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListener.h:
2816         * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListenerPrivate.h:
2817         * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
2818         (webkit_dom_test_obj_conditional_method1):
2819         (webkit_dom_test_obj_conditional_method2):
2820         (webkit_dom_test_obj_conditional_method3):
2821         (webkit_dom_test_obj_get_conditional_attr1):
2822         (webkit_dom_test_obj_set_conditional_attr1):
2823         (webkit_dom_test_obj_get_conditional_attr2):
2824         (webkit_dom_test_obj_set_conditional_attr2):
2825         (webkit_dom_test_obj_get_conditional_attr3):
2826         (webkit_dom_test_obj_set_conditional_attr3):
2827         (webkit_dom_test_obj_set_property):
2828         (webkit_dom_test_obj_get_property):
2829         (webkit_dom_test_obj_class_init):
2830         * bindings/scripts/test/GObject/WebKitDOMTestObj.h:
2831         * bindings/scripts/test/GObject/WebKitDOMTestObjPrivate.h:
2832         * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.cpp:
2833         * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.h:
2834         * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterfacePrivate.h:
2835
2836 2011-09-16  Shawn Singh  <shawnsingh@chromium.org>
2837
2838         Re-named isRootLayer to isNonCompositedContent because
2839         that is what the flag actually means.
2840         https://bugs.webkit.org/show_bug.cgi?id=68214
2841
2842         Reviewed by James Robinson.
2843
2844         Code cleanup towards unit testing.
2845
2846         * platform/graphics/chromium/LayerChromium.cpp:
2847         (WebCore::LayerChromium::LayerChromium):
2848         (WebCore::LayerChromium::pushPropertiesTo):
2849         * platform/graphics/chromium/LayerChromium.h:
2850         (WebCore::LayerChromium::setIsNonCompositedContent):
2851         (WebCore::LayerChromium::isNonCompositedContent):
2852         * platform/graphics/chromium/NonCompositedContentHost.cpp:
2853         (WebCore::NonCompositedContentHost::NonCompositedContentHost):
2854         * platform/graphics/chromium/TiledLayerChromium.cpp:
2855         (WebCore::TiledLayerChromium::setLayerTreeHost):
2856         * platform/graphics/chromium/cc/CCLayerImpl.cpp:
2857         (WebCore::CCLayerImpl::CCLayerImpl):
2858         * platform/graphics/chromium/cc/CCLayerImpl.h:
2859         (WebCore::CCLayerImpl::setIsNonCompositedContent):
2860         (WebCore::CCLayerImpl::isNonCompositedContent):
2861         * platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:
2862         (WebCore::CCTiledLayerImpl::draw):
2863
2864 2011-09-16  Simon Fraser  <simon.fraser@apple.com>
2865
2866         Make custom scrollbar theme for use in DRT, to reduce pixel diffs between platforms
2867         https://bugs.webkit.org/show_bug.cgi?id=68134
2868
2869         Reviewed by Sam Weinig.
2870
2871         Add a new setting to control whether the mock scrollbar theme is used.
2872         This is a global setting, so that it can be set without having to
2873         access a specific Settings object.
2874
2875         * page/Settings.h:
2876         (WebCore::Settings::setMockScrollbarsEnabled):
2877         (WebCore::Settings::mockScrollbarsEnabled):
2878
2879 2011-09-16  Ben Wells  <benwells@chromium.org>
2880
2881         Large canvas fills should not crash or create unnecessarily large image buffers
2882         https://bugs.webkit.org/show_bug.cgi?id=67988
2883
2884         When using source-in, destination-in, source-out, or destination-atop a temporary
2885         buffer is created. This buffer only needs to be big enough to cover the intersection
2886         of the path and the canvas. If the area of intersection between the fill and the
2887         canvas is empty the canvas is completely cleared and a temporary buffer is not used.
2888
2889         This change also adds some null checks for failures to create contexts or buffers.
2890
2891         Reviewed by Darin Adler.
2892
2893         Test: fast/canvas/canvas-large-fills.html
2894
2895         * html/canvas/CanvasRenderingContext2D.cpp:
2896         (WebCore::CanvasRenderingContext2D::clearCanvas):
2897         (WebCore::CanvasRenderingContext2D::fillAndDisplayTransparencyElsewhere):
2898
2899 2011-09-16  Shawn Singh  <shawnsingh@chromium.org>
2900
2901         Remove default NULL argument in LayerChromium::create().
2902         https://bugs.webkit.org/show_bug.cgi?id=68211
2903
2904         Reviewed by James Robinson.
2905
2906         Code cleanup related to creating unit testing.
2907
2908         * platform/graphics/chromium/LayerChromium.h:
2909
2910 2011-09-16  Adrienne Walker  <enne@google.com>
2911
2912         [chromium] Move quad drawing code from LayerChromium to LayerRendererChromium
2913         https://bugs.webkit.org/show_bug.cgi?id=68272
2914
2915         Reviewed by James Robinson.
2916
2917         All the OpenGL code is in LayerRendererChromium and the CCLayerImpl
2918         tree, so move the static drawTexturedQuad/toGLMatrix functions to
2919         LayerRendererChromium, where they really belong.
2920
2921         Just moving code around. Tested by existing compositor tests.
2922
2923         * platform/graphics/chromium/LayerChromium.cpp:
2924         * platform/graphics/chromium/LayerChromium.h:
2925         * platform/graphics/chromium/LayerRendererChromium.cpp:
2926         (WebCore::LayerRendererChromium::toGLMatrix):
2927         (WebCore::LayerRendererChromium::drawTexturedQuad):
2928         * platform/graphics/chromium/LayerRendererChromium.h:
2929         * platform/graphics/chromium/cc/CCCanvasLayerImpl.cpp:
2930         (WebCore::CCCanvasLayerImpl::draw):
2931         * platform/graphics/chromium/cc/CCHeadsUpDisplay.cpp:
2932         (WebCore::CCHeadsUpDisplay::draw):
2933         * platform/graphics/chromium/cc/CCLayerImpl.cpp:
2934         (WebCore::CCLayerImpl::drawDebugBorder):
2935         * platform/graphics/chromium/cc/CCPluginLayerImpl.cpp:
2936         (WebCore::CCPluginLayerImpl::draw):
2937         * platform/graphics/chromium/cc/CCRenderSurface.cpp:
2938         (WebCore::CCRenderSurface::drawSurface):
2939         * platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:
2940         (WebCore::CCTiledLayerImpl::drawTiles):
2941         * platform/graphics/chromium/cc/CCVideoLayerImpl.cpp:
2942         (WebCore::CCVideoLayerImpl::drawYUV):
2943         (WebCore::CCVideoLayerImpl::drawRGBA):
2944
2945 2011-09-16  Shawn Singh  <shawnsingh@chromium.org>
2946
2947         Fixed const correctness on accessors in LayerChromium
2948         https://bugs.webkit.org/show_bug.cgi?id=68210
2949
2950         Reviewed by James Robinson.
2951
2952         Code cleanup related to creating unit testing.
2953
2954         * platform/graphics/chromium/LayerChromium.h:
2955         (WebCore::LayerChromium::preserves3D):
2956         (WebCore::LayerChromium::replicaLayer):
2957
2958 2011-09-14  Ryosuke Niwa  <rniwa@webkit.org>
2959
2960         Deleting line break before h1 converts h1 to span
2961         https://bugs.webkit.org/show_bug.cgi?id=45784
2962
2963         Reviewed by Kenneth Rohde Christiansen.
2964
2965         Fixed the bug by treating h1 and other elements that retain structure like Mail blockquote.
2966
2967         We already had a logic to overriding styles of merged paragraphs by Mail blockquote so
2968         just extend this logic for h1-h6, pre, etc...
2969
2970         Tests: editing/deleting/merge-paragraph-from-address.html
2971                editing/deleting/merge-paragraph-from-h6-with-style.html
2972                editing/deleting/merge-paragraph-from-h6.html
2973                editing/deleting/merge-paragraph-from-listing.html
2974                editing/deleting/merge-paragraph-into-h1-with-style.html
2975                editing/deleting/merge-paragraph-into-h1.html
2976                editing/deleting/merge-paragraph-into-pre.html
2977
2978         * editing/ReplaceSelectionCommand.cpp:
2979         (WebCore::ReplaceSelectionCommand::removeRedundantStylesAndKeepStyleSpanInline):
2980         * editing/markup.cpp:
2981         (WebCore::isBlockNodeToRetainAppearance): Extracted from ancestorToRetainStructureAndAppearance.
2982         (WebCore::StyledMarkupAccumulator::serializeNodes):
2983         (WebCore::ancestorToRetainStructureAndAppearance):
2984         * editing/markup.h:
2985
2986 2011-09-16  Max Perepelitsyn  <pph34r@gmail.com>
2987
2988         Set but not used variables cleanup (gcc 4.6)
2989         https://bugs.webkit.org/show_bug.cgi?id=68157
2990
2991         Reviewed by Darin Adler.
2992
2993         * platform/audio/ReverbConvolverStage.cpp:
2994         (WebCore::ReverbConvolverStage::process):
2995         * rendering/RenderMediaControlsChromium.cpp:
2996         (WebCore::paintMediaButton):
2997
2998 2011-09-16  Geoffrey Garen  <ggaren@apple.com>
2999
3000         Removed undetectable style.filter.
3001
3002         Reviewed by Sam Weinig.
3003         
3004         This feature was added in http://trac.webkit.org/changeset/15557 to
3005         support housingmaps.com. But housingmaps.com no longer needs this hack,
3006         we don't know of other websites that need it, and we don't know of
3007         any other browsers that have implemented this feature.
3008
3009         * ForwardingHeaders/runtime/StringObjectThatMasqueradesAsUndefined.h: Removed.
3010         * WebCore.order:
3011         * bindings/js/JSCSSStyleDeclarationCustom.cpp:
3012         (WebCore::JSCSSStyleDeclaration::nameGetter):
3013
3014 2011-09-16  Adam Barth  <abarth@webkit.org>
3015
3016         Update JSC results to account for intrinsics change.
3017
3018         * bindings/scripts/test/JS/JSTestInterface.cpp:
3019         * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
3020         * bindings/scripts/test/JS/JSTestObj.cpp:
3021         * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
3022
3023 2011-09-16  Sheriff Bot  <webkit.review.bot@gmail.com>
3024
3025         Unreviewed, rolling out r95312.
3026         http://trac.webkit.org/changeset/95312
3027         https://bugs.webkit.org/show_bug.cgi?id=68277
3028
3029         It's innocent, innocent I tell you! (Requested by jamesr_ on
3030         #webkit).
3031
3032         * platform/graphics/chromium/ContentLayerChromium.cpp:
3033         (WebCore::ContentLayerChromium::createTextureUpdater):
3034         * platform/graphics/chromium/LayerRendererChromium.cpp:
3035         (WebCore::LayerRendererChromium::LayerRendererChromium):
3036         * platform/graphics/chromium/cc/CCLayerTreeHost.h:
3037         * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
3038         * platform/graphics/chromium/cc/CCThreadProxy.cpp:
3039         (WebCore::CCThreadProxy::context):
3040         (WebCore::CCThreadProxy::beginFrameAndCommitOnCCThread):
3041         (WebCore::CCThreadProxy::setNeedsCommitAndRedrawOnCCThread):
3042         (WebCore::CCThreadProxy::setNeedsRedrawOnCCThread):
3043
3044 2011-09-16  Sheriff Bot  <webkit.review.bot@gmail.com>
3045
3046         Unreviewed, rolling out r95309.
3047         http://trac.webkit.org/changeset/95309
3048         https://bugs.webkit.org/show_bug.cgi?id=68271
3049
3050         Broke many chromium gpu tests. (Requested by dave_levin on
3051         #webkit).
3052
3053         * platform/graphics/chromium/ContentLayerChromium.cpp:
3054         (WebCore::ContentLayerChromium::createTextureUpdater):
3055         * platform/graphics/chromium/LayerRendererChromium.cpp:
3056         (WebCore::LayerRendererChromium::LayerRendererChromium):
3057         * platform/graphics/chromium/cc/CCLayerTreeHost.h:
3058         * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
3059         * platform/graphics/chromium/cc/CCThreadProxy.cpp:
3060         (WebCore::CCThreadProxy::context):
3061         (WebCore::CCThreadProxy::beginFrameAndCommitOnCCThread):
3062         (WebCore::CCThreadProxy::setNeedsCommitAndRedrawOnCCThread):
3063         (WebCore::CCThreadProxy::setNeedsRedrawOnCCThread):
3064
3065 2011-09-16  Filip Pizlo  <fpizlo@apple.com>
3066
3067         DFG JIT should inline Math.abs
3068         https://bugs.webkit.org/show_bug.cgi?id=68227
3069
3070         Reviewed by Oliver Hunt.
3071
3072         Added JavaScriptCore/dfg to include path path. Changed the bindings
3073         scripts to handle the presence of intrinsics.
3074
3075         * CMakeLists.txt:
3076         * bindings/scripts/CodeGeneratorJS.pm:
3077         (GenerateHashTable):
3078
3079 2011-09-16  Iain Merrick  <husky@google.com>
3080
3081         [chromium] Fix CCLayerTreeHostTest
3082         https://bugs.webkit.org/show_bug.cgi?id=67418
3083
3084         This is a minimal set of changes to get CCLayerTreeHostTest
3085         compiling, running and passing with USE_THREADED_COMPOSITING
3086         enabled.
3087
3088         Reviewed by James Robinson.
3089
3090         * platform/graphics/chromium/ContentLayerChromium.cpp:
3091         (WebCore::ContentLayerChromium::createTextureUpdater):
3092         * platform/graphics/chromium/LayerRendererChromium.cpp:
3093         (WebCore::LayerRendererChromium::LayerRendererChromium):
3094         * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
3095         (WebCore::CCLayerTreeHost::createLayerTreeHostImpl):
3096         * platform/graphics/chromium/cc/CCLayerTreeHost.h:
3097         * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
3098         * platform/graphics/chromium/cc/CCThreadProxy.cpp:
3099         (WebCore::CCThreadProxy::context):
3100         (WebCore::CCThreadProxy::beginFrameAndCommitOnCCThread):
3101         (WebCore::CCThreadProxy::setNeedsCommitAndRedrawOnCCThread):
3102         (WebCore::CCThreadProxy::setNeedsRedrawOnCCThread):
3103
3104 2011-09-16  Sheriff Bot  <webkit.review.bot@gmail.com>
3105
3106         Unreviewed, rolling out r95227.
3107         http://trac.webkit.org/changeset/95227
3108         https://bugs.webkit.org/show_bug.cgi?id=68262
3109
3110         Broke a bunch of SVG tests (Requested by andersca on #webkit).
3111
3112         * platform/ScrollView.cpp:
3113         (WebCore::ScrollView::contentsSize):
3114         (WebCore::ScrollView::wheelEvent):
3115         * platform/ScrollView.h:
3116         * platform/mac/ScrollViewMac.mm:
3117         (WebCore::ScrollView::platformContentsSize):
3118         * platform/wx/ScrollViewWx.cpp:
3119         (WebCore::ScrollView::platformContentsSize):
3120
3121 2011-09-16  James Simonsen  <simonjam@chromium.org>
3122
3123         Fix HTML5 parser's adoption agency algorithm to reparent correctly
3124         https://bugs.webkit.org/show_bug.cgi?id=68147
3125
3126         Reviewed by Eric Seidel.
3127
3128         * html/parser/HTMLTreeBuilder.cpp:
3129         (WebCore::HTMLTreeBuilder::callTheAdoptionAgency):
3130
3131 2011-09-16  Adam Barth  <abarth@webkit.org>
3132
3133         CodeGeneratorGObject should use C++ style comments for ENABLE guards
3134         https://bugs.webkit.org/show_bug.cgi?id=68256
3135
3136         Reviewed by Darin Adler.
3137
3138         This patch should have not behavioral effect.  It just cleans up the
3139         GObject code generator to use C++-style comments for ENABLE guards and
3140         to use the usual comment style for license blocks.
3141
3142         * bindings/scripts/CodeGeneratorGObject.pm:
3143         * bindings/scripts/test/GObject/WebKitDOMTestCallback.cpp:
3144         * bindings/scripts/test/GObject/WebKitDOMTestCallback.h:
3145         * bindings/scripts/test/GObject/WebKitDOMTestCallbackPrivate.h:
3146         * bindings/scripts/test/GObject/WebKitDOMTestInterface.cpp:
3147         * bindings/scripts/test/GObject/WebKitDOMTestInterface.h:
3148         * bindings/scripts/test/GObject/WebKitDOMTestInterfacePrivate.h:
3149         * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListener.cpp:
3150         * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListener.h:
3151         * bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListenerPrivate.h:
3152         * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
3153         (webkit_dom_test_obj_conditional_method1):
3154         (webkit_dom_test_obj_conditional_method2):
3155         (webkit_dom_test_obj_conditional_method3):
3156         (webkit_dom_test_obj_get_conditional_attr1):
3157         (webkit_dom_test_obj_set_conditional_attr1):
3158         (webkit_dom_test_obj_get_conditional_attr2):
3159         (webkit_dom_test_obj_set_conditional_attr2):
3160         (webkit_dom_test_obj_get_conditional_attr3):
3161         (webkit_dom_test_obj_set_conditional_attr3):
3162         (webkit_dom_test_obj_set_property):
3163         (webkit_dom_test_obj_get_property):
3164         (webkit_dom_test_obj_class_init):
3165         * bindings/scripts/test/GObject/WebKitDOMTestObj.h:
3166         * bindings/scripts/test/GObject/WebKitDOMTestObjPrivate.h:
3167         * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.cpp:
3168         * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.h:
3169         * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterfacePrivate.h:
3170
3171 2011-09-16  Csaba Osztrogonác  <ossy@webkit.org>
3172
3173         [Qt] REGRESSION(r95091) It made many tests flakey
3174         https://bugs.webkit.org/show_bug.cgi?id=68232
3175
3176         Unreviewed rolling out r95091 and followup patches.
3177
3178         * English.lproj/localizedStrings.js:
3179         * bindings/v8/V8Proxy.cpp:
3180         (WebCore::V8Proxy::callFunction):
3181         * bindings/v8/V8Proxy.h:
3182         * bindings/v8/custom/V8CustomVoidCallback.cpp:
3183         (WebCore::invokeCallback):
3184         * dom/ScriptedAnimationController.cpp:
3185         (WebCore::ScriptedAnimationController::registerCallback):
3186         (WebCore::ScriptedAnimationController::cancelCallback):
3187         (WebCore::ScriptedAnimationController::serviceScriptedAnimations):
3188         * inspector/InspectorInstrumentation.cpp:
3189         * inspector/InspectorInstrumentation.h:
3190         (WebCore::InspectorInstrumentation::willCallFunction):
3191         * inspector/InspectorTimelineAgent.cpp:
3192         * inspector/InspectorTimelineAgent.h:
3193         * inspector/TimelineRecordFactory.cpp:
3194         * inspector/TimelineRecordFactory.h:
3195         * inspector/front-end/TimelineAgent.js:
3196         * inspector/front-end/TimelinePanel.js:
3197         (WebInspector.TimelinePanel):
3198         (WebInspector.TimelinePanel.prototype.get _recordStyles):
3199         (WebInspector.TimelinePanel.prototype._innerAddRecordToTimeline):
3200         (WebInspector.TimelinePanel.prototype._clearPanel):
3201         (WebInspector.TimelinePanel.FormattedRecord):
3202         (WebInspector.TimelinePanel.FormattedRecord.prototype._generatePopupContent):
3203         (WebInspector.TimelinePanel.FormattedRecord.prototype._getRecordDetails):
3204
3205 2011-09-16  Abhishek Arya  <inferno@chromium.org>
3206
3207         cachedFont not getting updated for inline SVG text.
3208         https://bugs.webkit.org/show_bug.cgi?id=68060
3209
3210         Reviewed by Nikolas Zimmermann.
3211
3212         The cached scaledFont needs to be updated on every style set call. It
3213         is not similar to m_style which can get derived from parent's style and
3214         hence will get automatically updated on ancestor's style change. This is
3215         required, otherwise we will maintain stale font list in cached scaledFont
3216         when custom fonts are retired on Document::recalcStyle.
3217
3218         Test: svg/text/text-style-recalc-crash.html
3219
3220         * rendering/svg/RenderSVGInlineText.cpp:
3221         (WebCore::RenderSVGInlineText::styleDidChange):
3222         (WebCore::RenderSVGInlineText::setStyle):
3223         * rendering/svg/RenderSVGInlineText.h:
3224
3225 2011-09-16  Antti Koivisto  <antti@apple.com>
3226
3227         REGRESSION (r95052): SelectorChecker identifier filter not working
3228         https://bugs.webkit.org/show_bug.cgi?id=68244
3229
3230         Reviewed by Dan Bernstein.
3231
3232         Missing &.
3233
3234         * css/SelectorChecker.cpp:
3235         (WebCore::collectDescendantSelectorIdentifierHashes):
3236
3237 2011-09-16  Csaba Osztrogonác  <ossy@webkit.org>
3238
3239         Unreviewed typo fix after r95271.
3240
3241         * bindings/scripts/test/GObject/WebKitDOMTestCallback.cpp:
3242
3243 2011-09-16  Andrey Kosyakov  <caseq@chromium.org>
3244
3245         Web Inspector: [Extensions API] support extensions for remote inspector front-end
3246         https://bugs.webkit.org/show_bug.cgi?id=67840
3247
3248         Reviewed by Pavel Feldman.
3249
3250         - Merge ExtensionCommon.js into ExtensionAPI.js
3251         - refactor building of extension API for better reuse
3252         - expose interface for extension registration
3253
3254         * WebCore.gypi:
3255         * WebCore.vcproj/WebCore.vcproj:
3256         * inspector/front-end/ExtensionAPI.js:
3257         (defineCommonExtensionSymbols):
3258         (buildExtensionAPIInjectedScript):
3259         * inspector/front-end/ExtensionCommon.js:
3260         * inspector/front-end/ExtensionServer.js:
3261         (WebInspector.ExtensionServer.prototype._addExtensions):
3262         (WebInspector.ExtensionServer.prototype._addExtension):
3263         (WebInspector.ExtensionServer.prototype._buildExtensionAPIScript):
3264         (WebInspector.ExtensionServer.prototype._onWindowMessage):
3265         (WebInspector.ExtensionServer.prototype._registerExtension):
3266         (WebInspector.ExtensionServer.prototype._expandResourcePath):
3267         * inspector/front-end/WebKit.qrc:
3268         * inspector/front-end/inspector.html:
3269
3270 2011-09-16  Ilya Tikhonovsky  <loislo@chromium.org>
3271
3272         Web Inspector: change WebInspector.currentPanel getter/setter to functions.
3273         https://bugs.webkit.org/show_bug.cgi?id=68242
3274
3275         This is necessary for the panel switching performance tests.
3276
3277         Reviewed by Pavel Feldman.
3278
3279         * inspector/front-end/Drawer.js:
3280         (WebInspector.Drawer.prototype.show.animationFinished):
3281         (WebInspector.Drawer.prototype.show):
3282         (WebInspector.Drawer.prototype.hide):
3283         (WebInspector.Drawer.prototype._animateDrawerHeight.animationFinished):
3284         (WebInspector.Drawer.prototype._animateDrawerHeight):
3285         (WebInspector.Drawer.prototype._statusBarDragging):
3286         * inspector/front-end/ElementsPanel.js:
3287         (WebInspector.ElementsPanel.prototype.switchToAndFocus):
3288         * inspector/front-end/ResourcesPanel.js:
3289         (WebInspector.ResourcesPanel.prototype.showAnchorLocation):
3290         * inspector/front-end/ScriptsPanel.js:
3291         * inspector/front-end/SearchController.js:
3292         (WebInspector.SearchController.prototype.updateSearchMatchesCount):
3293         (WebInspector.SearchController.prototype.updateCurrentMatchIndex):
3294         (WebInspector.SearchController.prototype.updateSearchLabel):
3295         (WebInspector.SearchController.prototype.handleShortcut):
3296         (WebInspector.SearchController.prototype._performSearch):
3297         * inspector/front-end/Toolbar.js:
3298         (WebInspector.Toolbar.createPanelToolbarItem.onToolbarItemClicked):
3299         (WebInspector.Toolbar.createPanelToolbarItem):
3300         * inspector/front-end/inspector.js:
3301         (WebInspector.currentPanel):
3302         (WebInspector._updateFocusedNode):
3303         (WebInspector.windowResize):
3304         (WebInspector.documentKeyDown):
3305         (WebInspector.documentCanCopy):
3306         (WebInspector.documentCopy):
3307         (WebInspector.showPanel):
3308         (WebInspector.startUserInitiatedDebugging):
3309         (WebInspector.inspect):
3310         (WebInspector._showAnchorLocationInPanel):
3311         (WebInspector._toolbarItemClicked):
3312         (WebInspector.PanelHistory.prototype.goBack):
3313         (WebInspector.PanelHistory.prototype.goForward):
3314
3315 2011-09-15  Pavel Feldman  <pfeldman@google.com>
3316
3317         Web Inspector: rename Console.clearConsoleMessages to Console.clearMessages, brush up console domain doc.
3318         https://bugs.webkit.org/show_bug.cgi?id=68165
3319
3320         Reviewed by Yury Semikhatsky.
3321
3322         * inspector/InjectedScriptHost.cpp:
3323         (WebCore::InjectedScriptHost::clearConsoleMessages):
3324         * inspector/Inspector.json:
3325         * inspector/InspectorConsoleAgent.cpp:
3326         (WebCore::InspectorConsoleAgent::clearMessages):
3327         * inspector/InspectorConsoleAgent.h:
3328         * inspector/front-end/ConsoleModel.js:
3329         (WebInspector.ConsoleModel.prototype.requestClearMessages):
3330
3331 2011-09-16  Alejandro G. Castro  <alex@igalia.com>
3332
3333         Fix GTK build after r95245.
3334
3335         * GNUmakefile.list.am:
3336
3337 2011-09-16  Leo Yang  <leo.yang@torchmobile.com.cn>
3338
3339         [Qt] Crash when dragging google maps.
3340         https://bugs.webkit.org/show_bug.cgi?id=68223
3341
3342         The custom image for a cursor might not be ready when WebKit trying
3343         to use it to construct the cursor in Qt porting. This patch is using
3344         arrow image to substitute the unready custom image.
3345
3346         Reviewed by Adam Barth.
3347
3348         Test: fast/css/crash-on-custom-cursor-when-loading.html
3349
3350         * platform/qt/CursorQt.cpp:
3351         (WebCore::createCustomCursor):
3352         (WebCore::Cursor::ensurePlatformCursor):
3353
3354 2011-09-15  Adam Barth  <abarth@webkit.org>
3355
3356         Rename ENABLE(DATABASE) to ENABLE(SQL_DATABASE)
3357         https://bugs.webkit.org/show_bug.cgi?id=68205
3358
3359         Reviewed by Eric Seidel.
3360
3361         As discussed on webkit-dev.
3362
3363         * CMakeLists.txt:
3364         * Configurations/FeatureDefines.xcconfig:
3365         * GNUmakefile.am:
3366         * GNUmakefile.list.am:
3367         * UseJSC.cmake:
3368         * bindings/generic/RuntimeEnabledFeatures.cpp:
3369         * bindings/generic/RuntimeEnabledFeatures.h:
3370         * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
3371         * bindings/js/JSDOMBinding.cpp:
3372         (WebCore::setDOMException):
3373         * bindings/js/JSExceptionBase.cpp:
3374         (WebCore::toExceptionBase):
3375         * bindings/js/JSInjectedScriptHostCustom.cpp:
3376         (WebCore::JSInjectedScriptHost::databaseId):
3377         * bindings/js/JSSQLResultSetRowListCustom.cpp:
3378         * bindings/js/JSSQLTransactionCustom.cpp:
3379         * bindings/js/JSSQLTransactionSyncCustom.cpp:
3380         * bindings/scripts/test/CPP/WebDOMTestCallback.cpp:
3381         * bindings/scripts/test/CPP/WebDOMTestCallback.h:
3382         * bindings/scripts/test/GObject/WebKitDOMTestCallback.cpp:
3383         * bindings/scripts/test/JS/JSTestCallback.cpp:
3384         * bindings/scripts/test/JS/JSTestCallback.h:
3385         * bindings/scripts/test/ObjC/DOMTestCallback.mm:
3386         * bindings/scripts/test/TestCallback.idl:
3387         * bindings/scripts/test/V8/V8TestCallback.cpp:
3388         * bindings/scripts/test/V8/V8TestCallback.h:
3389         * bindings/v8/V8Proxy.cpp:
3390         (WebCore::V8Proxy::setDOMException):
3391         * bindings/v8/V8Proxy.h:
3392         * bindings/v8/custom/V8CustomSQLStatementErrorCallback.cpp:
3393         * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
3394         (WebCore::V8InjectedScriptHost::databaseIdCallback):
3395         * bindings/v8/custom/V8SQLResultSetRowListCustom.cpp:
3396         * bindings/v8/custom/V8SQLTransactionCustom.cpp:
3397         * bindings/v8/custom/V8SQLTransactionSyncCustom.cpp:
3398         * dom/Document.cpp:
3399         * dom/Document.h:
3400         * dom/ExceptionCode.cpp:
3401         (WebCore::getExceptionCodeDescription):
3402         * dom/ExceptionCode.h:
3403         * dom/ScriptExecutionContext.cpp:
3404         (WebCore::ScriptExecutionContext::ScriptExecutionContext):
3405         (WebCore::ScriptExecutionContext::~ScriptExecutionContext):
3406         * dom/ScriptExecutionContext.h:
3407         * features.pri:
3408         * history/PageCache.cpp:
3409         (WebCore::logCanCacheFrameDecision):
3410         (WebCore::PageCache::canCachePageContainingThisFrame):
3411         * inspector/InjectedScriptHost.cpp:
3412         (WebCore::InjectedScriptHost::InjectedScriptHost):
3413         (WebCore::InjectedScriptHost::disconnect):
3414         * inspector/InjectedScriptHost.h:
3415         (WebCore::InjectedScriptHost::init):
3416         * inspector/InspectorController.cpp:
3417         (WebCore::InspectorController::InspectorController):
3418         (WebCore::InspectorController::connectFrontend):
3419         (WebCore::InspectorController::disconnectFrontend):
3420         (WebCore::InspectorController::restoreInspectorStateFromCookie):
3421         * inspector/InspectorController.h:
3422         * inspector/InspectorDatabaseAgent.cpp:
3423         * inspector/InspectorDatabaseInstrumentation.h:
3424         * inspector/InspectorDatabaseResource.cpp:
3425         * inspector/InspectorDatabaseResource.h:
3426         * inspector/InspectorInstrumentation.cpp:
3427         (WebCore::InspectorInstrumentation::didCommitLoadImpl):
3428         * inspector/InspectorInstrumentation.h:
3429         * inspector/InstrumentingAgents.h:
3430         (WebCore::InstrumentingAgents::InstrumentingAgents):
3431         * inspector/WorkerInspectorController.cpp:
3432         (WebCore::WorkerInspectorController::WorkerInspectorController):
3433         (WebCore::WorkerInspectorController::connectFrontend):
3434         * loader/EmptyClients.h:
3435         * loader/FrameLoader.cpp:
3436         (WebCore::FrameLoader::stopLoading):
3437         * page/ChromeClient.h:
3438         * page/DOMWindow.cpp:
3439         * page/DOMWindow.h:
3440         * page/DOMWindow.idl:
3441         * platform/sql/SQLiteAuthorizer.cpp:
3442         * platform/sql/SQLiteDatabase.cpp:
3443         * platform/sql/SQLiteFileSystem.cpp:
3444         * platform/sql/SQLiteStatement.cpp:
3445         * platform/sql/SQLiteTransaction.cpp:
3446         * storage/AbstractDatabase.cpp:
3447         * storage/AbstractDatabase.h:
3448         * storage/ChangeVersionWrapper.cpp:
3449         * storage/ChangeVersionWrapper.h:
3450         * storage/Database.cpp:
3451         * storage/Database.h:
3452         * storage/Database.idl:
3453         * storage/DatabaseAuthorizer.cpp:
3454         * storage/DatabaseCallback.h:
3455         * storage/DatabaseCallback.idl:
3456         * storage/DatabaseDetails.h:
3457         * storage/DatabaseSync.cpp:
3458         * storage/DatabaseSync.h:
3459         * storage/DatabaseSync.idl:
3460         * storage/DatabaseTask.cpp:
3461         * storage/DatabaseTask.h:
3462         * storage/DatabaseThread.cpp:
3463         * storage/DatabaseThread.h:
3464         * storage/DatabaseTracker.cpp:
3465         * storage/DatabaseTracker.h:
3466         * storage/DatabaseTrackerClient.h:
3467         * storage/OriginQuotaManager.cpp:
3468         * storage/OriginQuotaManager.h:
3469         * storage/OriginUsageRecord.cpp:
3470         * storage/OriginUsageRecord.h:
3471         * storage/SQLCallbackWrapper.h:
3472         * storage/SQLError.h:
3473         * storage/SQLError.idl:
3474         * storage/SQLException.h:
3475         * storage/SQLException.idl:
3476         * storage/SQLResultSet.cpp:
3477         * storage/SQLResultSet.h:
3478         * storage/SQLResultSet.idl:
3479         * storage/SQLResultSetRowList.cpp:
3480         * storage/SQLResultSetRowList.h:
3481         * storage/SQLResultSetRowList.idl:
3482         * storage/SQLStatement.cpp:
3483         * storage/SQLStatement.h:
3484         * storage/SQLStatementCallback.h:
3485         * storage/SQLStatementCallback.idl:
3486         * storage/SQLStatementErrorCallback.h:
3487         * storage/SQLStatementErrorCallback.idl:
3488         * storage/SQLStatementSync.cpp:
3489         * storage/SQLStatementSync.h:
3490         * storage/SQLTransaction.cpp:
3491         * storage/SQLTransaction.h:
3492         * storage/SQLTransaction.idl:
3493         * storage/SQLTransactionCallback.h:
3494         * storage/SQLTransactionCallback.idl:
3495         * storage/SQLTransactionClient.cpp:
3496         * storage/SQLTransactionClient.h:
3497         * storage/SQLTransactionCoordinator.cpp:
3498         * storage/SQLTransactionCoordinator.h:
3499         * storage/SQLTransactionErrorCallback.h:
3500         * storage/SQLTransactionErrorCallback.idl:
3501         * storage/SQLTransactionSync.cpp:
3502         * storage/SQLTransactionSync.h:
3503         * storage/SQLTransactionSync.idl:
3504         * storage/SQLTransactionSyncCallback.h:
3505         * storage/SQLTransactionSyncCallback.idl:
3506         * storage/chromium/DatabaseObserver.h:
3507         * storage/chromium/DatabaseTrackerChromium.cpp:
3508         * storage/chromium/QuotaTracker.cpp:
3509         * storage/chromium/QuotaTracker.h:
3510         * storage/chromium/SQLTransactionClientChromium.cpp:
3511         * workers/WorkerContext.cpp:
3512         * workers/WorkerContext.h:
3513         * workers/WorkerContext.idl:
3514         * workers/WorkerThread.cpp:
3515         (WebCore::WorkerThreadShutdownStartTask::performTask):
3516         (WebCore::WorkerThread::stop):
3517
3518 2011-09-15  Alexandru Chiculita  <achicu@adobe.com>
3519
3520         [CSSRegions] Regions should not slice line box rendering
3521         https://bugs.webkit.org/show_bug.cgi?id=66198
3522
3523         Created a new LayoutState constructor for the RenderFlowThread. It will
3524         set m_isPaginated to true and force a pageHeight if 1. The actual pageHeight is
3525         not used, because pageLogicalHeightForOffset will actually redirect the call
3526         to RenderFlowThread.
3527
3528         Removed some of the duplicate code that calculated the page logical offset.
3529         Added new methods like logicalPageOffset, pageLogicalHeightForOffset,
3530         pageRemainingLogicalHeightForOffset.
3531
3532         There are still some issues related to incremental layout and different region widths.
3533         Those issues will be addressed in different patches.
3534
3535         Reviewed by David Hyatt.
3536
3537         Tests: fast/regions/text-region-breaks.html
3538                fast/regions/text-region-split-horizontal-bt.html
3539                fast/regions/text-region-split-vertical-rl.html
3540                fast/regions/text-region-split-vertical.html
3541                fast/regions/text-region-split.html
3542
3543         * rendering/LayoutState.cpp:
3544         (WebCore::LayoutState::LayoutState):
3545         * rendering/LayoutState.h:
3546         (WebCore::LayoutState::LayoutState):
3547         (WebCore::LayoutState::isPaginated):
3548         * rendering/RenderBlock.cpp:
3549         (WebCore::RenderBlock::positionNewFloats):
3550         (WebCore::RenderBlock::adjustForRegionFittingIfNeeded):
3551         (WebCore::RenderBlock::nextPageLogicalTopExcludingBoundaryPoint):
3552         (WebCore::RenderBlock::nextPageLogicalTopIncludingBoundaryPoint):
3553         (WebCore::inNormalFlow):
3554         (WebCore::RenderBlock::applyBeforeBreak):
3555         (WebCore::RenderBlock::applyAfterBreak):
3556         (WebCore::RenderBlock::logicalPageOffset):
3557         (WebCore::RenderBlock::pageLogicalHeightForOffset):
3558         (WebCore::RenderBlock::pageRemainingLogicalHeightForOffset):
3559         (WebCore::RenderBlock::adjustForUnsplittableChild):
3560         (WebCore::RenderBlock::adjustLinePositionForPagination):
3561         * rendering/RenderBlock.h:
3562         * rendering/RenderFlowThread.cpp:
3563         (WebCore::RenderFlowThread::layout):
3564         (WebCore::RenderFlowThread::regionLogicalHeightForLine):
3565         (WebCore::RenderFlowThread::regionRemainingLogicalHeightForLine):
3566         * rendering/RenderFlowThread.h:
3567         * rendering/RenderView.cpp:
3568         (WebCore::RenderView::pushLayoutState):
3569         * rendering/RenderView.h:
3570         (WebCore::LayoutStateMaintainer::LayoutStateMaintainer):
3571         (WebCore::LayoutStateMaintainer::push):
3572
3573 2011-09-15  Kentaro Hara  <haraken@google.com>
3574
3575         Implement a PopStateEvent constructor for JSC
3576         https://bugs.webkit.org/show_bug.cgi?id=67977
3577
3578         Reviewed by Sam Weinig.
3579
3580         Test: fast/events/constructors/pop-state-event-constructor.html
3581
3582         * bindings/generic/EventConstructors.h: Added a definition for the PopStateEvent constructor.
3583         * bindings/js/JSEventConstructors.cpp: Added #includes for PopStateEvent.
3584         * dom/PopStateEvent.cpp:
3585         (WebCore::PopStateEventInit::PopStateEventInit):
3586         (WebCore::PopStateEvent::PopStateEvent):
3587         (WebCore::PopStateEvent::create):
3588         * dom/PopStateEvent.h: Added a definition for PopStateEventInit.
3589         * dom/PopStateEvent.idl: Makes PopStateEvent constructible.
3590
3591 2011-09-15  Mihai Parparita  <mihaip@chromium.org>
3592
3593         Fragment navigations should interrupt a provisional load of a different document
3594         https://bugs.webkit.org/show_bug.cgi?id=64556
3595
3596         Reviewed by Adam Barth.
3597         
3598         Tests: http/tests/history/back-with-fragment-change.php
3599                http/tests/navigation/navigation-interrupted-by-fragment.html
3600
3601         * loader/FrameLoader.cpp: Stop provisional load if a fragment commits.
3602         * loader/HistoryController.cpp: Don't commit the wrong provisional item.
3603
3604 2011-09-15  Adrienne Walker  <enne@google.com>
3605
3606         [chromium] Add temporary diagnostics for LayerTreeHost::commitTo crash
3607         https://bugs.webkit.org/show_bug.cgi?id=68204
3608
3609         Reviewed by James Robinson.
3610
3611         Add CRASH calls to determine which assumptions are being violated.
3612
3613         * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
3614         (WebCore::CCLayerTreeHost::commitTo):
3615
3616 2011-09-15  Mark Hahnenberg  <mhahnenberg@apple.com>
3617
3618         Unzip initialization lists and constructors in JSCell hierarchy (7/7)
3619         https://bugs.webkit.org/show_bug.cgi?id=68122
3620
3621         Reviewed by Geoffrey Garen.
3622
3623         No new tests.
3624
3625         Completed the seventh and final level of the refactoring to add finishCreation() 
3626         methods to all classes within the JSCell hierarchy with non-trivial 
3627         constructor bodies.
3628
3629         This consists of moving the finishCreation() method call into the create methods
3630         of the sixth level of the hierarchy as was done in previous patches.  
3631
3632         The special cases for JSAudioConstructor, JSOptionConstructor, and JSImageConstructor 
3633         were also lumped in and given finishCreation() methods that are called in their 
3634         create methods because we are at the end and want to avoid a trivial patch just 
3635         for moving their finishCreation() methods from their constructor to their create method.
3636
3637         * bindings/js/JSAudioConstructor.cpp:
3638         (WebCore::JSAudioConstructor::JSAudioConstructor):
3639         (WebCore::JSAudioConstructor::finishCreation):
3640         * bindings/js/JSAudioConstructor.h:
3641         (WebCore::JSAudioConstructor::create):
3642         * bindings/js/JSDOMBinding.h:
3643         (WebCore::DOMConstructorWithDocument::DOMConstructorWithDocument):
3644         * bindings/js/JSDOMWindowBase.cpp:
3645         (WebCore::JSDOMWindowBase::JSDOMWindowBase):
3646         * bindings/js/JSImageConstructor.cpp:
3647         (WebCore::JSImageConstructor::JSImageConstructor):
3648         (WebCore::JSImageConstructor::finishCreation):
3649         * bindings/js/JSImageConstructor.h:
3650         (WebCore::JSImageConstructor::create):
3651         * bindings/js/JSOptionConstructor.cpp:
3652         (WebCore::JSOptionConstructor::JSOptionConstructor):
3653         (WebCore::JSOptionConstructor::finishCreation):
3654         * bindings/js/JSOptionConstructor.h:
3655         (WebCore::JSOptionConstructor::create):
3656         * bindings/js/JSWorkerContextBase.cpp:
3657         (WebCore::JSWorkerContextBase::JSWorkerContextBase):
3658
3659         The bindings generation script was also changed to move the finishCreation() call into the 
3660         create methods for descendants of JSWorkerContextBase and JSDOMWindowBase because those base
3661         classes had it removed from their constructors.  
3662
3663         * bindings/scripts/CodeGeneratorJS.pm:
3664         (GenerateHeader):
3665         * bridge/c/c_instance.cpp:
3666         (JSC::Bindings::CRuntimeMethod::create):
3667         (JSC::Bindings::CRuntimeMethod::CRuntimeMethod):
3668         * bridge/jni/jsc/JavaInstanceJSC.cpp:
3669         (JavaRuntimeMethod::create):
3670         (JavaRuntimeMethod::JavaRuntimeMethod):
3671         * bridge/objc/objc_instance.mm:
3672         (ObjCRuntimeMethod::create):
3673         (ObjCRuntimeMethod::ObjCRuntimeMethod):
3674         * bridge/qt/qt_runtime.cpp:
3675         (JSC::Bindings::QtRuntimeMetaMethod::QtRuntimeMetaMethod):
3676         (JSC::Bindings::QtRuntimeConnectionMethod::QtRuntimeConnectionMethod):
3677         * bridge/qt/qt_runtime.h:
3678         (JSC::Bindings::QtRuntimeMetaMethod::create):
3679         (JSC::Bindings::QtRuntimeConnectionMethod::create):
3680
3681 2011-09-15  Kentaro Hara  <haraken@google.com>
3682
3683         A single line must not be split into two pages.
3684         https://bugs.webkit.org/show_bug.cgi?id=65005
3685
3686         Reviewed by David Hyatt.
3687
3688         When the document width of a page is overflowed, the last line of the page can be
3689         split into the next page. This is the regression caused by r88737. r88737 tried to
3690         fix rounding errors in rendering calculations by expanding and shrinking a page
3691         using one common method, resizePageRectsKeepingRatio(), but overlooked the case where
3692         a document width gets overflowed.
3693
3694         This patch fixes the problem by also using resizePageRectsKeepingRatio() for the case
3695         where the document width gets overflowed.
3696
3697         Test: printing/single-line-must-not-be-split-into-two-pages.html
3698
3699         * WebCore.exp.in: Updated the signature of forceLayoutForPagination().
3700         * page/Frame.cpp:
3701         (WebCore::Frame::setPrinting): Added a new argument |originalPageSize|, which is an original page size before being expanded or shrunk.
3702         * page/Frame.h:
3703         * page/FrameView.cpp:
3704         (WebCore::FrameView::forceLayoutForPagination): Uses resizePageRectsKeepingRatio() in the case where the document width gets overflowed.
3705         * page/FrameView.h:
3706         * page/PrintContext.cpp:
3707         (WebCore::PrintContext::begin): Passes an original page size to setPrinting().
3708         (WebCore::PrintContext::end): Ditto.
3709
3710 2011-09-15  Sheriff Bot  <webkit.review.bot@gmail.com>
3711
3712         Unreviewed, rolling out r95243 and r95246.
3713         http://trac.webkit.org/changeset/95243
3714         http://trac.webkit.org/changeset/95246
3715         https://bugs.webkit.org/show_bug.cgi?id=68202
3716
3717         Broke the Windows build (Requested by smfr on #webkit).
3718
3719         * WebCore.vcproj/WebCore.vcproj:
3720         * platform/graphics/ca/win/LayerChangesFlusher.cpp:
3721         (WebCore::LayerChangesFlusher::hookCallback):
3722         * platform/graphics/ca/win/PlatformCAAnimationWin.cpp:
3723         (PlatformCAAnimation::copy):
3724         * platform/win/StructuredExceptionHandlerSupressor.h: Removed.
3725
3726 2011-09-15  Simon Fraser  <simon.fraser@apple.com>
3727
3728         Attempt to fix Windows build after r95243.
3729
3730         * WebCore.vcproj/WebCore.vcproj:
3731
3732 2011-09-15  Simon Fraser  <simon.fraser@apple.com>
3733
3734         Make custom scrollbar theme for use in DRT, to reduce pixel differences between platforms
3735         https://bugs.webkit.org/show_bug.cgi?id=68134
3736
3737         Reviewed by James Robinson.
3738
3739         Add new scrollbar theme, called ScrollbarThemeMock, for use in layout
3740         tests. The mock scrollbar simply draws a light gray box in the track,
3741         with a dark gray box for the thumb.
3742         
3743         Add ScrollbarThemeMock files to the build on all platforms. It isn't hooked up yet.
3744
3745         * CMakeLists.txt:
3746         * CMakeListsEfl.txt:
3747         * CMakeListsWinCE.txt:
3748         * GNUmakefile.list.am:
3749         * WebCore.gypi:
3750         * WebCore.pro:
3751         * WebCore.vcproj/WebCore.vcproj:
3752         * WebCore.xcodeproj/project.pbxproj:
3753         * platform/mac/ScrollbarThemeMac.mm:
3754         (WebCore::ScrollbarTheme::nativeTheme):
3755         * platform/mock/ScrollbarThemeMock.cpp: Added.
3756         (WebCore::ScrollbarThemeMock::trackRect):
3757         (WebCore::ScrollbarThemeMock::scrollbarThickness):
3758         (WebCore::ScrollbarThemeMock::paintTrackBackground):
3759         (WebCore::ScrollbarThemeMock::paintThumb):
3760         * platform/mock/ScrollbarThemeMock.h: Added.
3761         (WebCore::ScrollbarThemeMock::hasButtons):
3762         (WebCore::ScrollbarThemeMock::hasThumb):
3763         (WebCore::ScrollbarThemeMock::backButtonRect):
3764         (WebCore::ScrollbarThemeMock::forwardButtonRect):
3765
3766 2011-09-15  Beth Dakin  <bdakin@apple.com>
3767
3768         https://bugs.webkit.org/show_bug.cgi?id=67884
3769         Delete button icon does not properly update when the device resolution changes 
3770         dynamically
3771         -and corresponding-
3772         <rdar://problem/10104632>
3773
3774         Reviewed by Darin Adler.
3775
3776         In DeleteButtonController::deviceScaleFactorChanged(), if the delete button is 
3777         currently showing, hide it and re-show it, forcing it to re-create the deletion 
3778         UI.
3779         * editing/DeleteButtonController.cpp:
3780         (WebCore::DeleteButtonController::deviceScaleFactorChanged):
3781         * editing/DeleteButtonController.h:
3782         * editing/Editor.cpp:
3783         (WebCore::Editor::deviceScaleFactorChanged):
3784         * editing/Editor.h:
3785
3786         Iterate through all of the frames and propagate the deviceScaleFactorChange() 
3787         message to Editor.
3788         * page/Page.cpp:
3789         (WebCore::Page::setDeviceScaleFactor):
3790
3791 2011-09-15  Chris Marrin  <cmarrin@apple.com>
3792
3793         Crash can occur when doing a PlatformCAAnimation::copy() with no valueFunction
3794         https://bugs.webkit.org/show_bug.cgi?id=67510
3795
3796         Reviewed by Adam Roben.
3797         
3798         Another fix to take care of one last crash when running pause-crash.html.
3799         CACF can't deal with null valueFunctions, so avoid setting it when it doesn't 
3800         exist.
3801         
3802         This also adds logic to the Windows Hook in LayerChangesFlusher to prevent it
3803         from catching the null pointer exception generated by the pause-crash.html test
3804         before this bug was fixed. Windows was ignoring the exception, so the testcase
3805         would appear to succeed, even though it should have crashed.
3806
3807         * WebCore.vcproj/WebCore.vcproj:
3808         * platform/graphics/ca/win/LayerChangesFlusher.cpp:
3809         (WebCore::LayerChangesFlusher::hookCallback):
3810         * platform/graphics/ca/win/PlatformCAAnimationWin.cpp:
3811         (PlatformCAAnimation::copy):
3812         * platform\win\StructuredExceptionHandlerSupressor.h: New file to encapsulate the exception handling supression.
3813
3814 2011-09-15  David Hyatt  <hyatt@apple.com>
3815
3816         https://bugs.webkit.org/show_bug.cgi?id=27579
3817         
3818         Make sure that the border shorthand also resets border-image.
3819
3820         Reviewed by Beth Dakin.
3821
3822         Added fast/borders/border-image-reset-by-border-shorthand.html.
3823
3824         * css/CSSParser.cpp:
3825         (WebCore::CSSParser::parseValue):
3826
3827 2011-09-15  David Hyatt  <hyatt@apple.com>
3828
3829         https://bugs.webkit.org/show_bug.cgi?id=50072
3830         
3831         Make overflow clipping to border-radius work across layers. This patch makes painting
3832         work but does not attempt to fix hit testing. It also doesn't work when a composited
3833         layer is clipped by a non-composited ancestor.
3834
3835         Add a new ClipRect class (used by ClipRects and RenderLayer) that is basically just tracking
3836         a rect and a border radius taint. At the time we set a clip, if the rectangle is listed
3837         as also being clipped by a radius, then we walk up the layer tree and push those inner border
3838         rounded rect clips for any overflow areas in the containing block chain.
3839
3840         Reviewed by Beth Dakin.
3841
3842         Added new tests in fast/clip.
3843
3844         * rendering/RenderBox.cpp:
3845         (WebCore::RenderBox::pushContentsClip):
3846         * rendering/RenderLayer.cpp:
3847         (WebCore::inContainingBlockChain):
3848         (WebCore::RenderLayer::clipToRect):
3849         (WebCore::RenderLayer::restoreClip):
3850         (WebCore::RenderLayer::paintLayer):
3851         (WebCore::RenderLayer::hitTestLayer):
3852         (WebCore::RenderLayer::calculateClipRects):
3853         (WebCore::RenderLayer::backgroundClipRect):
3854         (WebCore::RenderLayer::calculateRects):
3855         (WebCore::RenderLayer::childrenClipRect):
3856         (WebCore::RenderLayer::selfClipRect):
3857         * rendering/RenderLayer.h:
3858         (WebCore::ClipRect::ClipRect):
3859         (WebCore::ClipRect::rect):
3860         (WebCore::ClipRect::setRect):
3861         (WebCore::ClipRect::hasRadius):
3862         (WebCore::ClipRect::setHasRadius):
3863         (WebCore::ClipRect::operator==):
3864         (WebCore::ClipRect::intersect):
3865         (WebCore::ClipRect::move):
3866         (WebCore::ClipRect::isEmpty):
3867         (WebCore::ClipRect::intersects):
3868         (WebCore::intersection):
3869         (WebCore::ClipRects::overflowClipRect):
3870         (WebCore::ClipRects::setOverflowClipRect):
3871         (WebCore::ClipRects::fixedClipRect):
3872         (WebCore::ClipRects::setFixedClipRect):
3873         (WebCore::ClipRects::posClipRect):
3874         (WebCore::ClipRects::setPosClipRect):
3875         * rendering/RenderLayerBacking.cpp:
3876         (WebCore::RenderLayerBacking::updateCompositedBounds):
3877         (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
3878         (WebCore::RenderLayerBacking::paintIntoLayer):
3879         * rendering/RenderLayerCompositor.cpp:
3880         (WebCore::RenderLayerCompositor::addToOverlapMap):
3881         (WebCore::RenderLayerCompositor::clippedByAncestor):
3882         * rendering/RenderTreeAsText.cpp:
3883         (WebCore::writeLayers):
3884
3885 2011-09-15  Julien Chaffraix  <jchaffraix@webkit.org>
3886
3887         Crash in RenderBox::paintMaskImages due to a mask without an associated image
3888         https://bugs.webkit.org/show_bug.cgi?id=50151
3889
3890         Reviewed by Simon Fraser.
3891
3892         Test: fast/css/empty-webkit-mask-crash.html
3893
3894         The crash stems from the fact that FillLayer::hasImage would walk over the linked list
3895         of FillLayers and return true if one had an image. This means that hasImage() is true
3896         does not mean that image() is non-NULL on all FillLayers.
3897
3898         * rendering/RenderBox.cpp:
3899         (WebCore::RenderBox::paintMaskImages): Simplify the logic by doing the hasImage() check up-front
3900         and properly check image() for each FillLayers. This has the nice benefit of changing the complexity
3901         from O(n^2) to O(n), which was what the code expected anyway.
3902
3903 2011-09-15  Eric Seidel  <eric@webkit.org>
3904
3905         Remove ENABLE(SVG_AS_IMAGE) since all major ports have it on by default
3906         https://bugs.webkit.org/show_bug.cgi?id=68182
3907
3908         Reviewed by Adam Barth.
3909
3910         * Configurations/FeatureDefines.xcconfig:
3911         * DerivedSources.make:
3912         * GNUmakefile.am:
3913         * features.pri:
3914         * loader/cache/CachedImage.cpp:
3915         (WebCore::CachedImage::createImage):
3916
3917 2011-09-15  Andy Estes  <aestes@apple.com>
3918
3919         Having an empty listener to beforeload events changes the behavior of other scripts
3920         https://bugs.webkit.org/show_bug.cgi?id=45586
3921
3922         Reviewed by Darin Adler.
3923
3924         Test: fast/dom/beforeload/cached-image-before-load.html
3925         
3926         When loading a cached image after a beforeload handler has been
3927         installed on the document, ImageLoader would dispatch both the
3928         beforeload and load events asynchronously in such a way that caused
3929         load to fire first. Since a side effect of firing the beforeload event
3930         is to wire up the CachedImage to its associated RenderImage object,
3931         this work was not done by the time load fired, and scripts that queried
3932         renderer-dependent attributes of the image in an onload handler would
3933         get bogus values in return.
3934
3935         Fix this by ensuring load fires after beforeload in the cached image case.
3936
3937         * loader/ImageLoader.cpp:
3938         (WebCore::ImageLoader::updateFromElement): Call setClient() after
3939         dispatching beforeload, since setClient() will dispatch the load event
3940         if the image is cached.
3941
3942 2011-09-15  Anders Carlsson  <andersca@apple.com>
3943
3944         Remove ScrollView::platformContentsSize
3945         https://bugs.webkit.org/show_bug.cgi?id=68188
3946
3947         Reviewed by Darin Adler.
3948
3949         Since ScrollView keeps track of the contents size in ScrollView::m_contentsSize, we never
3950         have to ask the underlying platform scroll view for contents size since it should always just
3951         be equal to m_contentsSize.
3952
3953         * platform/ScrollView.cpp:
3954         (WebCore::ScrollView::contentsSize):
3955         (WebCore::ScrollView::wheelEvent):
3956         * platform/ScrollView.h:
3957         * platform/mac/ScrollViewMac.mm:
3958         * platform/wx/ScrollViewWx.cpp:
3959
3960 2011-09-15  Jon Lee  <jonlee@apple.com>
3961
3962         Submitting a form with target=_blank works only once
3963         https://bugs.webkit.org/show_bug.cgi?id=28633
3964         <rdar://problem/7357787>
3965
3966         Reviewed by Andy Estes.
3967
3968         Test: fast/forms/submit-to-blank-multiple-times.html
3969
3970         The call to reset the multiple form submission bool is pushed down from the mouseDown handler to
3971         handleMousePressEvent(), to include WK2 coverage, similar to keyEvent.
3972
3973         * page/EventHandler.cpp:
3974         (WebCore::EventHandler::handleMousePressEvent):
3975         (WebCore::EventHandler::keyEvent): clarified old FIXME comment. Both key events and mouse events
3976         may submit a form multiple times, but the call to reset the handler should probably be in another
3977         abstraction layer.
3978         * page/mac/EventHandlerMac.mm:
3979         (WebCore::EventHandler::mouseDown):
3980
3981 2011-09-15  Peter Rybin  <peter.rybin@gmail.com>
3982
3983         XMLDocumentParserQt.cpp incorrectly converts 0-based number into 1-based number
3984         https://bugs.webkit.org/show_bug.cgi?id=63540
3985
3986         ZeroBasedNumber/OneBasedNumber are used in more places, inconsistency
3987         in xml parser is fixed.
3988
3989         Reviewed by Adam Barth.
3990
3991         * bindings/js/ScriptController.cpp:
3992         (WebCore::ScriptController::eventHandlerLineNumber):
3993         * dom/ScriptableDocumentParser.h:
3994         * dom/StyleElement.cpp:
3995         (WebCore::StyleElement::StyleElement):
3996         * dom/ViewportArguments.cpp:
3997         (WebCore::parserLineNumber):
3998         * html/parser/HTMLDocumentParser.cpp:
3999         (WebCore::HTMLDocumentParser::lineNumber):
4000         * html/parser/HTMLDocumentParser.h:
4001         * inspector/InspectorResourceAgent.cpp:
4002         (WebCore::InspectorResourceAgent::buildInitiatorObject):
4003         * svg/SVGDocumentExtensions.cpp:
4004         (WebCore::parserLineNumber):
4005         * xml/parser/NewXMLDocumentParser.cpp:
4006         (WebCore::NewXMLDocumentParser::lineNumber):
4007         * xml/parser/NewXMLDocumentParser.h:
4008         * xml/parser/XMLDocumentParser.cpp:
4009         (WebCore::XMLDocumentParser::pushCurrentNode):
4010         * xml/parser/XMLDocumentParser.h:
4011         * xml/parser/XMLDocumentParserLibxml2.cpp:
4012         (WebCore::PendingCallbacks::appendErrorCallback):
4013         (WebCore::XMLDocumentParser::doWrite):
4014         (WebCore::XMLDocumentParser::startElementNs):
4015         (WebCore::XMLDocumentParser::error):
4016         (WebCore::XMLDocumentParser::lineNumber):
4017         (WebCore::XMLDocumentParser::columnNumber):
4018         (WebCore::XMLDocumentParser::textPosition):
4019         * xml/parser/XMLDocumentParserQt.cpp:
4020         (WebCore::XMLDocumentParser::doWrite):
4021         (WebCore::XMLDocumentParser::doEnd):
4022         (WebCore::XMLDocumentParser::lineNumber):
4023         (WebCore::XMLDocumentParser::columnNumber):
4024         (WebCore::XMLDocumentParser::textPosition):
4025         (WebCore::XMLDocumentParser::parse):
4026         (WebCore::XMLDocumentParser::parseStartElement):
4027
4028 2011-09-15  Peter Kasting  <pkasting@google.com>
4029
4030         Fix WebCore.gypi after r95130.
4031
4032         Unreviewed, build fix.
4033
4034         * WebCore.gypi:
4035
4036 2011-09-15  Eric Seidel  <eric@webkit.org>
4037
4038         Remove ENABLE_SVG_ANIMATION as all major ports have it on by default
4039         https://bugs.webkit.org/show_bug.cgi?id=68022
4040
4041         Reviewed by Ryosuke Niwa.
4042
4043         * Configurations/FeatureDefines.xcconfig:
4044         * DerivedSources.make:
4045         * GNUmakefile.am:
4046         * features.pri:
4047         * page/DOMWindow.idl:
4048         * svg/svgtags.in:
4049
4050 2011-09-15  Matthew Delaney  <mdelaney@apple.com>
4051
4052         REGRESSION (Safari 5.1-r95043): Incorrect box-shadow offset
4053         https://bugs.webkit.org/show_bug.cgi?id=68041
4054
4055         Reviewed by Dan Bernstein.
4056
4057         Test: fast/box-shadow/no-blur-multiple-offsets.html
4058
4059         * platform/graphics/cg/GraphicsContextCG.cpp:
4060         (WebCore::GraphicsContext::setPlatformShadow): Add hack back in for Lion if
4061         context is not accelerated.
4062
4063 2011-09-15  James Simonsen  <simonjam@chromium.org>
4064
4065         Ref protect HTMLObjectElement and HTMLEmbedElement while requesting plugins
4066         https://bugs.webkit.org/show_bug.cgi?id=68014
4067
4068         Reviewed by Adam Barth.
4069
4070         Test: plugins/destroy-during-npp-new.html under valgrind
4071               plugins/destroy-during-npp-new-object-with-fallback-content.html under valgrind
4072
4073         * html/HTMLEmbedElement.cpp:
4074         (WebCore::HTMLEmbedElement::updateWidget):
4075         * html/HTMLObjectElement.cpp:
4076         (WebCore::HTMLObjectElement::updateWidget):
4077
4078 2011-09-15  Sam Weinig  <sam@webkit.org>
4079
4080         Experiment with removing ability to call a collection (except document.all)
4081         https://bugs.webkit.org/show_bug.cgi?id=67579
4082
4083         Reviewed by Anders Carlsson.
4084
4085         At the request of the public-script-coord mailing list (specifically Brendan Eich, see
4086         http://lists.w3.org/Archives/Public/public-script-coord/2011JulSep/0360.html), this
4087         patch removes the ability to call a collection (either a NodeList or HTMLCollection,
4088         but not an HTMLAllCollection) as function, a syntax that we adopted to emulate IE.
4089         It is being landed to find out if there are any sites relying on this behavior of WebKit,
4090         or, if it is only used in IE only paths.  If we find sites are breaking, it should be rolled
4091         out and we should inform the public-script-coord mailing list.
4092
4093         * bindings/js/JSHTMLAllCollectionCustom.cpp:
4094         Update comment.
4095
4096         * bindings/js/JSHTMLCollectionCustom.cpp:
4097         * bindings/js/JSNodeListCustom.cpp:
4098         Remove custom call code.
4099
4100         * bindings/scripts/CodeGeneratorV8.pm:
4101         Add support for V8CustomCall.
4102
4103         * dom/NodeList.idl:
4104         * html/HTMLCollection.idl:
4105         Remove CustomCall.
4106
4107 2011-09-15  Andreas&nbs