Source/WebCore: Popups on Chromium now check the minimum row height set through the...
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2011-07-27  Fady Samuel  <fsamuel@chromium.org>
2
3         Popups on Chromium now check the minimum row height set through the Chromium WebKit API when
4         computing the height of a row in a popup listbox.
5         https://bugs.webkit.org/show_bug.cgi?id=64897
6
7         Reviewed by Darin Fisher.
8
9         No new tests.
10
11         * platform/chromium/PopupMenuChromium.cpp:
12         (WebCore::PopupListBox::getRowHeight):
13         * platform/chromium/PopupMenuChromium.h:
14         (WebCore::PopupMenuChromium::minimumRowHeight):
15         (WebCore::PopupMenuChromium::setMinimumRowHeight):
16
17 2011-07-27  MORITA Hajime  <morrita@google.com>
18
19         Inconsistent state of TreeScope reference.
20         https://bugs.webkit.org/show_bug.cgi?id=65235
21         
22         The tree scope pointers on shadow tree nodes didn't cleared.
23         even when the tree scope (shadow root) is destroyed.
24         This change clear these poitners before detaching the shadow root.
25
26         Reviewed by Dimitri Glazkov.
27
28         Test: fast/dom/shadow/tree-scope-crash.html
29
30         * dom/Element.cpp:
31         (WebCore::Element::removeShadowRoot):
32
33 2011-07-27  Rachel Blum  <groby@chromium.org>
34
35         Implement sizes attribute for link tag from HTML5
36         https://bugs.webkit.org/show_bug.cgi?id=37674
37
38         Reviewed by Dimitri Glazkov.
39
40         Test: fast/dom/icon-size-property.html
41
42         * WebCore.gypi:
43         * WebCore.pro:
44         * bindings/js/JSHTMLLinkElementCustom.cpp:
45         (WebCore::JSHTMLLinkElement::sizes):
46         (WebCore::JSHTMLLinkElement::setSizes):
47         * bindings/v8/custom/V8HTMLLinkElementCustom.cpp: Added.
48         (WebCore::V8HTMLLinkElement::sizesAccessorGetter):
49         (WebCore::V8HTMLLinkElement::sizesAccessorSetter):
50         * html/HTMLAttributeNames.in:
51         * html/HTMLLinkElement.cpp:
52         (WebCore::HTMLLinkElement::HTMLLinkElement):
53         (WebCore::HTMLLinkElement::parseMappedAttribute):
54         (WebCore::HTMLLinkElement::sizes):
55         (WebCore::HTMLLinkElement::setSizes):
56         * html/HTMLLinkElement.h:
57         * html/HTMLLinkElement.idl:
58
59 2011-07-27  Pratik Solanki  <psolanki@apple.com>
60
61         Incorrect arguments passed to LOG statement
62         https://bugs.webkit.org/show_bug.cgi?id=65293
63
64         Reviewed by Oliver Hunt.
65
66         * platform/network/mac/ResourceHandleMac.mm:
67         (-[WebCoreResourceHandleAsDelegate connection:canAuthenticateAgainstProtectionSpace:]):
68
69 2011-07-27  Levi Weintraub  <leviw@chromium.org>
70
71         Switch transform operations to FloatSize
72         https://bugs.webkit.org/show_bug.cgi?id=64301
73
74         Reviewed by Simon Fraser.
75
76         Changing TransformOperation and its progeny to operate on FloatSizes instead of IntSizes.
77
78         * platform/graphics/transforms/IdentityTransformOperation.h:
79         (WebCore::IdentityTransformOperation::apply):
80         * platform/graphics/transforms/Matrix3DTransformOperation.cpp:
81         (WebCore::Matrix3DTransformOperation::blend):
82         * platform/graphics/transforms/Matrix3DTransformOperation.h:
83         (WebCore::Matrix3DTransformOperation::apply):
84         * platform/graphics/transforms/MatrixTransformOperation.cpp:
85         (WebCore::MatrixTransformOperation::blend):
86         * platform/graphics/transforms/MatrixTransformOperation.h:
87         (WebCore::MatrixTransformOperation::apply):
88         * platform/graphics/transforms/PerspectiveTransformOperation.h:
89         (WebCore::PerspectiveTransformOperation::apply):
90         * platform/graphics/transforms/RotateTransformOperation.h:
91         (WebCore::RotateTransformOperation::apply):
92         * platform/graphics/transforms/ScaleTransformOperation.h:
93         (WebCore::ScaleTransformOperation::apply):
94         * platform/graphics/transforms/SkewTransformOperation.h:
95         (WebCore::SkewTransformOperation::apply):
96         * platform/graphics/transforms/TransformOperation.h:
97         * platform/graphics/transforms/TransformOperations.h:
98         (WebCore::TransformOperations::apply):
99         * platform/graphics/transforms/TranslateTransformOperation.h:
100         (WebCore::TranslateTransformOperation::x):
101         (WebCore::TranslateTransformOperation::y):
102         (WebCore::TranslateTransformOperation::z):
103         (WebCore::TranslateTransformOperation::apply):
104
105 2011-07-27  Levi Weintraub  <leviw@chromium.org>
106
107         unicode-bidi:-webkit-plaintext does not work on <textarea>
108         https://bugs.webkit.org/show_bug.cgi?id=65074
109
110         Reviewed by Ryosuke Niwa.
111
112         Fixing unicode-bidi style propagation into text control shadow trees.
113
114         Test: fast/text/international/unicode-bidi-plaintext-in-textarea.html
115
116         * rendering/RenderTextControl.cpp:
117         (WebCore::RenderTextControl::adjustInnerTextStyle):
118
119 2011-07-27  Eric Carlson  <eric.carlson@apple.com>
120
121         Load delegate not consulted before loading some poster images
122         https://bugs.webkit.org/show_bug.cgi?id=65270
123
124         Reviewed by Darin Adler.
125
126         Test: media/video-poster-blocked-by-willsendrequest.html
127
128         * html/HTMLVideoElement.cpp:
129         (WebCore::HTMLVideoElement::setDisplayMode): Don't ask media engine to set poster if
130             willLoadMediaElementURL returns false.
131
132 2011-07-27  Stephen White  <senorblanco@chromium.org>
133
134         Fix for printing with accelerated <canvas>
135         https://bugs.webkit.org/show_bug.cgi?id=62406
136
137         Reviewed by James Robinson.
138
139         The platform-independent side of this should be covered by existing
140         tests.  Printing itself in Chrome has few tests, sadly.  :(
141
142         * html/HTMLCanvasElement.cpp:
143         (WebCore::HTMLCanvasElement::paint):
144         * platform/graphics/skia/ImageBufferSkia.cpp:
145         (WebCore::ImageBuffer::draw):
146
147 2011-07-25  Mihai Parparita  <mihaip@chromium.org>
148
149         [Chromium] Add better WebKit API for chrome.tabs.insertCSS extension API
150         https://bugs.webkit.org/show_bug.cgi?id=65158
151
152         Reviewed by David Hyatt.
153
154         Add per-Document instance user stylesheets (as opposed to the page 
155         group user styles and the global page stylesheet).
156
157         * css/CSSStyleSelector.cpp:
158         (WebCore::CSSStyleSelector::CSSStyleSelector):
159         * css/CSSStyleSelector.h:
160         * dom/Document.cpp:
161         (WebCore::Document::~Document):
162         (WebCore::Document::createStyleSelector):
163         (WebCore::Document::addUserSheet):
164         * dom/Document.h:
165
166 2011-07-27  Vsevolod Vlasov  <vsevik@chromium.org>
167
168         Web Inspector: Disable cache option should only clear memory cache, not disable it.
169         https://bugs.webkit.org/show_bug.cgi?id=65184
170
171         Reviewed by Pavel Feldman.
172
173         * inspector/InspectorClient.h:
174         * inspector/InspectorResourceAgent.cpp:
175         (WebCore::InspectorResourceAgent::enable):
176         (WebCore::InspectorResourceAgent::disable):
177         (WebCore::InspectorResourceAgent::setCacheDisabled):
178         (WebCore::InspectorResourceAgent::mainFrameNavigated):
179
180 2011-07-27  Rob Buis  <rbuis@rim.com>
181
182         Implement getIntersectionList(), getEnclosureList(), checkIntersection() and checkEnclosure() in SVGSVGElement
183         https://bugs.webkit.org/show_bug.cgi?id=11274
184
185         Reviewed by Nikolas Zimmermann.
186
187         Implement checkIntersection/checkEnclosure and use it to implement getIntersectionList and getEnclosureList as well.
188         The referenceElement is used to provide a DOM subtree to find matches in. Also we do not allow elements that specify
189         pointer-events=none in the list.
190
191         Tests: svg/W3C-SVG-1.1-SE/struct-dom-11-f.svg
192                svg/custom/intersection-list-clipping.svg
193                svg/custom/intersection-list-nested-svg.svg
194
195         * rendering/svg/RenderSVGModelObject.cpp:
196         (WebCore::getElementCTM):
197         (WebCore::intersectsAllowingEmpty):
198         (WebCore::isGraphicsElement):
199         (WebCore::RenderSVGModelObject::checkIntersection):
200         (WebCore::RenderSVGModelObject::checkEnclosure):
201         * rendering/svg/RenderSVGModelObject.h:
202         * svg/SVGSVGElement.cpp:
203         (WebCore::SVGSVGElement::checkIntersection):
204         (WebCore::SVGSVGElement::checkEnclosure):
205
206 2011-07-27  Becsi Andras  <abecsi@webkit.org>
207
208         [Qt][V8] Fix the build.
209
210         Unreviewed build fix.
211
212         No new tests needed.
213
214         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp: Add missing CString.h include.
215
216 2011-07-27  Alexis Menard  <alexis.menard@openbossa.org>
217
218         [Qt] Unreviewed build fix for mac.
219
220         QtKit is now our default media player, the define is WTF_USE_QTKIT and it's not part
221         of the options passed to build-webkit, therefore DerivedSources should now generate the
222         includes when it's mac.
223
224         * DerivedSources.pro:
225         * WebCore.pro:
226
227 2011-07-27  Yury Semikhatsky  <yurys@chromium.org>
228
229         Inspector should support cd(window) in the command line
230         https://bugs.webkit.org/show_bug.cgi?id=19872
231
232         Added dropdown list with all iframes to allow selecting current evaluation context for console expressions.
233
234         Reviewed by Pavel Feldman.
235
236         Test: http/tests/inspector/console-cd.html
237
238         * WebCore.gypi:
239         * inspector/Inspector.json:
240         * inspector/InspectorController.cpp:
241         (WebCore::InspectorController::InspectorController):
242         * inspector/InspectorRuntimeAgent.cpp:
243         (WebCore::InspectorRuntimeAgent::InspectorRuntimeAgent):
244         (WebCore::InspectorRuntimeAgent::evaluate):
245         * inspector/InspectorRuntimeAgent.h:
246         * inspector/WorkerInspectorController.cpp:
247         * inspector/front-end/ConsoleView.js:
248         (WebInspector.ConsoleView.prototype.addContext):
249         (WebInspector.ConsoleView.prototype.removeContext):
250         (WebInspector.ConsoleView.prototype._contextUpdated):
251         (WebInspector.ConsoleView.prototype.get _currentEvaluationContextId):
252         (WebInspector.ConsoleView.prototype.evalInInspectedWindow):
253         * inspector/front-end/ContextManager.js: Added.
254         (WebInspector.ContextManager):
255         (WebInspector.ContextManager.prototype._frameAdded):
256         (WebInspector.ContextManager.prototype._frameNavigated):
257         (WebInspector.ContextManager.prototype._frameDetached):
258         (WebInspector.FrameEvaluationContext):
259         (WebInspector.FrameEvaluationContext.prototype._frameNavigated):
260         (WebInspector.FrameEvaluationContext.prototype.get id):
261         (WebInspector.FrameEvaluationContext.prototype.get url):
262         (WebInspector.FrameEvaluationContext.prototype.get displayName):
263         * inspector/front-end/ResourceTreeModel.js:
264         (WebInspector.ResourceTreeModel.prototype._cleanupFramesAfterNavigation):
265         (WebInspector.ResourceTreeModel.prototype._addFramesRecursively):
266         * inspector/front-end/WebKit.qrc:
267         * inspector/front-end/inspector.html:
268         * inspector/front-end/inspector.js:
269
270 2011-07-27  Shinya Kawanaka  <shinyak@google.com>
271
272         Uses isHTMLSpace to normalize white spaces.
273         https://bugs.webkit.org/show_bug.cgi?id=57746
274
275         Reviewed by Kent Tamura.
276
277         Test: fast/forms/option-strip-unicode-spaces.html
278
279         * dom/OptionElement.cpp:
280         (WebCore::OptionElement::normalizeText):
281           Uses isHTMLSpace to trim and replace white spaces.
282
283 2011-05-15  Holger Hans Peter Freyther  <holger@moiji-mobile.com>
284
285         [chromium] Remove include of skia/ext/platform_canvas.h
286         https://bugs.webkit.org/show_bug.cgi?id=60852
287
288         Reviewed by Hajime Morita.
289
290         In https://bugs.webkit.org/show_bug.cgi?id=57563 the usage of the
291         skia::PlatformCanvas was eliminated in favor of directly using
292         SkCanvas directly. The include of platform_canvas.h was not removed
293         leaving the dependency on Chromium in the header files. Remove
294         that dependency now.
295
296         * platform/graphics/skia/PlatformContextSkia.h: Remove platform_canvas.h
297
298 2011-07-27  Mikhail Naganov  <mnaganov@chromium.org>
299
300         Web Inspector: [Chromium] REGRESSION: Uncaught TypeError: Cannot read property 'isTracingToWindowObjects' of undefined
301         https://bugs.webkit.org/show_bug.cgi?id=65213
302
303         Reviewed by Pavel Feldman.
304
305         * inspector/front-end/DetailedHeapshotView.js:
306         (WebInspector.HeapSnapshotRetainingPathsList.prototype.refresh):
307
308 2011-07-27  Shinya Kawanaka  <shinyak@google.com>
309
310         Knob of a disabled or readonly range control should not be draggable.
311         https://bugs.webkit.org/show_bug.cgi?id=54820
312
313         Reviewed by Kent Tamura.
314
315         Made disabled or readonly range control undraggable.
316
317         Test: fast/forms/range-drag.html
318
319         * html/RangeInputType.cpp:
320         (WebCore::RangeInputType::handleMouseDownEvent):
321           Added check that the element is readonly or disabled.
322         * html/shadow/SliderThumbElement.cpp:
323         (WebCore::SliderThumbElement::defaultEventHandler): ditto.
324
325 2011-07-27  Yuta Kitamura  <yutak@chromium.org>
326
327         WebSocket: CloseEvent attribute is not available on WebWorkers in JSC
328         https://bugs.webkit.org/show_bug.cgi?id=65232
329
330         Reviewed by Kent Tamura.
331
332         Add [NoStaticTables] attribute to CloseEvent interface definition. This attribute
333         makes the code generator obtain the attributes table used for building ClassInfo
334         through JSGlobalData, instead of directly using a statically-allocated table.
335
336         Generally speaking, NoStaticTables needs to be specified in interfaces which
337         may be accessed from workers.
338
339         Tests: http/tests/websocket/tests/hybi/workers/shared-worker-simple.html (updated)
340                http/tests/websocket/tests/hybi/workers/worker-simple.html (updated)
341
342         * websockets/CloseEvent.idl: Fixed the formatting, too.
343
344 2011-07-26  James Robinson  <jamesr@chromium.org>
345
346         [chromium] REGRESSION(90963): Content layers are not redrawn after losing the compositor context
347         https://bugs.webkit.org/show_bug.cgi?id=65224
348
349         Reviewed by Kenneth Russell.
350
351         There's no automated way to test lost compositor contexts (yet), but to test manually open up the poster circle
352         page and kill the GPU process.
353
354         * platform/graphics/chromium/ContentLayerChromium.cpp:
355         (WebCore::ContentLayerChromium::cleanupResources):
356         * platform/graphics/chromium/ContentLayerChromium.h:
357
358 2011-07-26  Sheriff Bot  <webkit.review.bot@gmail.com>
359
360         Unreviewed, rolling out r91805.
361         http://trac.webkit.org/changeset/91805
362         https://bugs.webkit.org/show_bug.cgi?id=65226
363
364         Breaks @ symbols and changes other font rendering on Windows
365         (Requested by enne on #webkit).
366
367         * platform/graphics/chromium/FontChromiumWin.cpp:
368         (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::TransparencyAwareFontPainter):
369         (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::init):
370         (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::initializeForGDI):
371         (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::~TransparencyAwareFontPainter):
372         (WebCore::TransparencyAwareFontPainter::TransparencyAwareGlyphPainter::TransparencyAwareGlyphPainter):
373         (WebCore::TransparencyAwareFontPainter::TransparencyAwareGlyphPainter::~TransparencyAwareGlyphPainter):
374         (WebCore::TransparencyAwareFontPainter::TransparencyAwareGlyphPainter::drawGlyphs):
375         (WebCore::TransparencyAwareFontPainter::TransparencyAwareUniscribePainter::hdc):
376         (WebCore::TransparencyAwareFontPainter::TransparencyAwareUniscribePainter::TransparencyAwareUniscribePainter):
377         (WebCore::TransparencyAwareFontPainter::TransparencyAwareUniscribePainter::~TransparencyAwareUniscribePainter):
378         (WebCore::drawGlyphsWin):
379         (WebCore::Font::drawComplexText):
380         * platform/graphics/chromium/UniscribeHelper.cpp:
381         (WebCore::UniscribeHelper::draw):
382         * platform/graphics/skia/PlatformContextSkia.cpp:
383         (WebCore::PlatformContextSkia::isNativeFontRenderingAllowed):
384         * platform/graphics/skia/PlatformContextSkia.h:
385         * platform/graphics/skia/SkiaFontWin.cpp:
386         (WebCore::windowsCanHandleDrawTextShadow):
387         (WebCore::windowsCanHandleTextDrawing):
388         (WebCore::windowsCanHandleTextDrawingWithoutShadow):
389         * platform/graphics/skia/SkiaFontWin.h:
390
391 2011-07-26  Adrienne Walker  <enne@google.com>
392
393         Unreviewed, rolling out r91812.
394         http://trac.webkit.org/changeset/91812
395         https://bugs.webkit.org/show_bug.cgi?id=65210
396
397         Breaks OSX GPU tests.
398
399         * platform/graphics/chromium/LayerRendererChromium.cpp:
400         (WebCore::LayerRendererChromium::drawLayers):
401
402 2011-07-26  Sheriff Bot  <webkit.review.bot@gmail.com>
403
404         Unreviewed, rolling out r91809.
405         http://trac.webkit.org/changeset/91809
406         https://bugs.webkit.org/show_bug.cgi?id=65225
407
408         Does not build on Chromium Windows (Requested by abarth on
409         #webkit).
410
411         * dom/WheelEvent.cpp:
412         (WebCore::WheelEvent::WheelEvent):
413         (WebCore::WheelEvent::initWheelEvent):
414         * dom/WheelEvent.h:
415         * page/EventHandler.cpp:
416         (WebCore::EventHandler::EventHandler):
417         (WebCore::EventHandler::handleGestureEvent):
418         (WebCore::EventHandler::handleTouchEvent):
419         (WebCore::EventHandler::resetGestureRecognizer):
420         * page/EventHandler.h:
421         * page/FrameView.cpp:
422         (WebCore::FrameView::reset):
423         * platform/PlatformGestureEvent.h:
424         * platform/PlatformGestureRecognizer.h:
425         * platform/chromium/FramelessScrollView.h:
426         * platform/chromium/GestureRecognizerChromium.cpp:
427         (WebCore::InnerGestureRecognizer::InnerGestureRecognizer):
428         (WebCore::InnerGestureRecognizer::reset):
429         (WebCore::InnerGestureRecognizer::dispatchSyntheticClick):
430         (WebCore::InnerGestureRecognizer::processTouchEventForGesture):
431         (WebCore::InnerGestureRecognizer::scrollViaTouchMotion):
432         (WebCore::touchDown):
433         (WebCore::noGesture):
434         (WebCore::click):
435         (WebCore::isClickOrScroll):
436         (WebCore::inScroll):
437         * platform/chromium/GestureRecognizerChromium.h:
438         (WebCore::GestureRecognizerChromium::reset):
439         (WebCore::GestureRecognizerChromium::processTouchEventForGesture):
440         * platform/chromium/PopupMenuChromium.cpp:
441         * platform/chromium/PopupMenuChromium.h:
442         * platform/mac/ScrollAnimatorMac.mm:
443         (WebCore::ScrollAnimatorMac::handleGestureEvent):
444
445 2011-07-26  Dmitry Lomov  <dslomov@google.com>
446
447         [V8][Chromium] Run workers in a separate v8::Isolate 
448         https://bugs.webkit.org/show_bug.cgi?id=65004
449         This patch allocates a new v8::Isolate for every worker and enters it on worker thread.
450
451         Reviewed by David Levin.
452
453         Covered by existing chromium tests.
454
455         * bindings/v8/DOMDataStore.cpp:
456         (WebCore::DOMDataStore::DOMDataStore):
457         (WebCore::DOMDataStore::~DOMDataStore):
458         * bindings/v8/StaticDOMDataStore.cpp:
459         (WebCore::StaticDOMDataStore::StaticDOMDataStore):
460         (WebCore::StaticDOMDataStore::~StaticDOMDataStore):
461         * bindings/v8/StaticDOMDataStore.h:
462         * bindings/v8/V8Binding.h:
463         (WebCore::V8BindingPerIsolateData::registerDOMDataStore):
464         (WebCore::V8BindingPerIsolateData::unregisterDOMDataStore):
465         * bindings/v8/V8DOMMap.cpp:
466         (WebCore::DOMDataStoreHandle::DOMDataStoreHandle):
467         (WebCore::DOMDataStoreHandle::~DOMDataStoreHandle):
468         * bindings/v8/WorkerContextExecutionProxy.cpp:
469         (WebCore::WorkerContextExecutionProxy::WorkerContextExecutionProxy):
470         (WebCore::WorkerContextExecutionProxy::initV8):
471         * bindings/v8/WorkerContextExecutionProxy.h:
472         * bindings/v8/WorkerScriptController.cpp:
473         (WebCore::WorkerScriptController::WorkerScriptController):
474         (WebCore::WorkerScriptController::~WorkerScriptController):
475         * bindings/v8/WorkerScriptController.h:
476
477 2011-07-26  James Robinson  <jamesr@chromium.org>
478
479         [chromium] Avoid clearing the framebuffer when compositing in release builds
480         https://bugs.webkit.org/show_bug.cgi?id=65210
481
482         Reviewed by Kenneth Russell.
483
484         We clear the default framebuffer to blue when compositing so it's
485         easier to spot regions we miss. This is useful for debugging, but eats
486         bandwidth unnecessarily in release builds.
487
488         * platform/graphics/chromium/LayerRendererChromium.cpp:
489         (WebCore::LayerRendererChromium::drawLayers):
490
491 2011-07-26  Jeffrey Pfau  <jpfau@apple.com>
492
493         New XML tokenizer
494         https://bugs.webkit.org/show_bug.cgi?id=64566
495
496         Reviewed by Adam Barth.
497
498         Add tokenizer for XML and tests in NewXMLDocumentParser for printing results of tokenization.
499
500         * GNUmakefile.list.am:
501         * WebCore.gypi:
502         * WebCore.pro:
503         * WebCore.vcproj/WebCore.vcproj:
504         * WebCore.xcodeproj/project.pbxproj:
505         * xml/parser/NewXMLDocumentParser.cpp:
506         (WebCore::NewXMLDocumentParser::NewXMLDocumentParser):
507         (WebCore::NewXMLDocumentParser::append):
508         * xml/parser/NewXMLDocumentParser.h:
509         * xml/parser/XMLToken.h:
510         * xml/parser/XMLTokenizer.cpp: Added.
511         (WebCore::XMLTokenizer::XMLTokenizer):
512         (WebCore::::shouldSkipNullCharacters):
513         (WebCore::XMLTokenizer::nextToken):
514         (WebCore::XMLTokenizer::bufferCharacter):
515         (WebCore::XMLTokenizer::parseError):
516         * xml/parser/XMLTokenizer.h: Added.
517         (WebCore::XMLTokenizer::create):
518         (WebCore::XMLTokenizer::gotError):
519         (WebCore::XMLTokenizer::shouldSkipNullCharacters):
520
521 2011-07-26  Robert Kroeger  <rjkroege@chromium.org>
522
523         [chromium] Layering violations in gesture recognizer
524         https://bugs.webkit.org/show_bug.cgi?id=65044
525
526         Reviewed by Adam Barth.
527
528         Divided the gesture recognizer up to correct a layering
529         violation by moving gesture implementation from it to
530         EventHandler::handleGestureEvent so that the gesture recognizer
531         could simply be an engine for generating gesture events from
532         touch events.
533
534         * page/EventHandler.cpp:
535         (WebCore::EventHandler::EventHandler):
536         Removed construction of gesture recognizer.
537         (WebCore::EventHandler::handleGestureEvent):
538         Extended for new gesture events added in this patch.
539         (WebCore::EventHandler::handleTouchEvent):
540         Removed call into gesture recognizer.
541         * page/EventHandler.h:
542         * page/FrameView.cpp:
543         (WebCore::FrameView::reset):
544         Removed code to reset gesture recognizer.
545         * platform/PlatformGestureEvent.h:
546         (WebCore::PlatformGestureEvent::PlatformGestureEvent):
547         (WebCore::PlatformGestureEvent::deltaX):
548         (WebCore::PlatformGestureEvent::deltaY):
549         (WebCore::PlatformGestureEvent::shiftKey):
550         (WebCore::PlatformGestureEvent::ctrlKey):
551         (WebCore::PlatformGestureEvent::altKey):
552         (WebCore::PlatformGestureEvent::metaKey):
553         Added additional gesture types and parameters.
554         * platform/PlatformGestureRecognizer.h:
555         * platform/chromium/FramelessScrollView.h:
556         Added support for displatching gesture and touch events.
557         * platform/chromium/GestureRecognizerChromium.cpp:
558         (WebCore::InnerGestureRecognizer::InnerGestureRecognizer):
559         (WebCore::InnerGestureRecognizer::reset):
560         (WebCore::InnerGestureRecognizer::constructClickGestureEvent):
561         (WebCore::InnerGestureRecognizer::processTouchEventForGestures):
562         Removed all depedencies on EventHandler. Instead, create gesture
563         events from touch event stream.
564         (WebCore::InnerGestureRecognizer::constructScrollGesture):
565         (WebCore::touchDown):
566         (WebCore::noGesture):
567         (WebCore::click):
568         (WebCore::isClickOrScroll):
569         (WebCore::inScroll):
570         (WebCore::GestureRecognizerChromium::processTouchEventForGestures):
571         (WebCore::GestureRecognizerChromium::reset):
572         * platform/chromium/GestureRecognizerChromium.h:
573         * platform/chromium/PopupMenuChromium.cpp:
574         Added support to handle touch events and gesture events.
575         (WebCore::PopupContainer::handleTouchEvent):
576         (WebCore::PopupContainer::handleGestureEvent):
577         (WebCore::PopupListBox::handleTouchEvent):
578         (WebCore::PopupListBox::handleGestureEvent):
579         * platform/chromium/PopupMenuChromium.h:
580         * platform/mac/ScrollAnimatorMac.mm:
581         (WebCore::ScrollAnimatorMac::handleGestureEvent):
582         Ignores the newly added gesture event types.
583
584 2011-07-26  Joseph Pecoraro  <joepeck@webkit.org>
585
586         Restore Composited Layers Faster from PageCache
587         https://bugs.webkit.org/show_bug.cgi?id=65216
588
589         Reviewed by Simon Fraser.
590
591         Restore the layer tree hierarchy a little sooner, when
592         restoring from the page cache. This more closely matches
593         original restore behavior.
594
595         Existing test showed no change.
596
597         * page/FrameView.cpp:
598         (WebCore::FrameView::restoreBackingStores):
599
600 2011-07-26  Mike Reed  <reed@google.com>
601
602         [skia] never draw with GDI, so that all text can be gpu-accelerated
603         https://bugs.webkit.org/show_bug.cgi?id=65203
604
605         Reviewed by Kenneth Russell.
606
607         No new tests. existing tests apply to the new drawing path
608
609         * platform/graphics/chromium/FontChromiumWin.cpp:
610         (WebCore::TransparencyAwareFontPainter::TransparencyAwareGlyphPainter::drawGlyphs):
611         * platform/graphics/skia/SkiaFontWin.cpp:
612         (WebCore::windowsCanHandleDrawTextShadow):
613         (WebCore::windowsCanHandleTextDrawing):
614         (WebCore::windowsCanHandleTextDrawingWithoutShadow):
615
616 2011-07-26  Kenneth Russell  <kbr@google.com>
617
618         Float32Array(ArrayBuffer, index, length) constructor working incorrectly.
619         https://bugs.webkit.org/show_bug.cgi?id=57042
620
621         Reviewed by James Robinson.
622
623         * bindings/js/JSArrayBufferViewHelper.h:
624         (WebCore::constructArrayBufferViewWithArrayBufferArgument):
625         * bindings/v8/custom/V8ArrayBufferViewCustom.h:
626         (WebCore::constructWebGLArrayWithArrayBufferArgument):
627
628 2011-07-26  Chris Rogers  <crogers@google.com>
629
630         V8 custom bindings for AudioNode must do proper object checking and throw exception in case of error
631         https://bugs.webkit.org/show_bug.cgi?id=65222
632
633         Reviewed by James Robinson.
634
635         No new tests - this fixes upcoming audionode.html layout test
636
637         * bindings/v8/custom/V8AudioNodeCustom.cpp:
638         (WebCore::V8AudioNode::connectCallback):
639
640 2011-07-26  Chris Rogers  <crogers@google.com>
641
642         AudioContext is not correctly accounting for hardware resources
643         https://bugs.webkit.org/show_bug.cgi?id=65217
644
645         Reviewed by Kenneth Russell.
646
647         No new tests since audio API is not yet implemented.
648
649         * webaudio/AudioContext.cpp:
650         (WebCore::AudioContext::create):
651         (WebCore::AudioContext::AudioContext):
652         (WebCore::AudioContext::lazyInitialize):
653
654 2011-07-26  Luke Macpherson   <macpherson@chromium.org>
655
656         Handle CSS Properties that can be either auto or a primitive value in CSSStyleApplyProperty
657         https://bugs.webkit.org/show_bug.cgi?id=65164
658
659         Reviewed by Dimitri Glazkov.
660
661         No new tests / refactoring only.
662
663         * css/CSSPrimitiveValueMappings.h:
664         Add casts to/from various numeric types.
665         (WebCore::CSSPrimitiveValue::operator short):
666         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
667         (WebCore::CSSPrimitiveValue::operator unsigned short):
668         (WebCore::CSSPrimitiveValue::operator int):
669         (WebCore::CSSPrimitiveValue::operator float):
670         * css/CSSStyleApplyProperty.cpp:
671         Add class to handle properties that set an "auto" boolean on RenderStyle.
672         (WebCore::ApplyPropertyAuto::ApplyPropertyAuto):
673         (WebCore::ApplyPropertyAuto::applyInheritValue):
674         (WebCore::ApplyPropertyAuto::applyInitialValue):
675         (WebCore::ApplyPropertyAuto::applyValue):
676         (WebCore::ApplyPropertyAuto::hasAuto):
677         (WebCore::ApplyPropertyAuto::setAuto):
678         (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
679         * css/CSSStyleSelector.cpp:
680         Remove existing implementations.
681         (WebCore::CSSStyleSelector::applyProperty):
682
683 2011-07-26  Pratik Solanki  <psolanki@apple.com>
684
685         Add protection space authentication callback code to CFNetwork loader on Mac
686         https://bugs.webkit.org/show_bug.cgi?id=65190
687         <rdar://problem/9842424>
688
689         Reviewed by Oliver Hunt.
690
691         Port over protection space authentication callback code from ResourceHandleMac.mm to
692         ResourceHandleCFNet.cpp.
693
694         * platform/network/ResourceHandle.h:
695         * platform/network/cf/ResourceHandleCFNet.cpp:
696         (WebCore::canRespondToProtectionSpace):
697         (WebCore::ResourceHandle::createCFURLConnection):
698         (WebCore::ResourceHandle::canAuthenticateAgainstProtectionSpace):
699         (WebCore::WebCoreSynchronousLoaderClient::canAuthenticateAgainstProtectionSpace):
700         * platform/network/mac/ResourceHandleMac.mm:
701         (-[WebCoreResourceHandleAsDelegate connection:canAuthenticateAgainstProtectionSpace:]): Add logging.
702
703 2011-07-26  Sadrul Habib Chowdhury  <sadrul@chromium.org>
704
705         Add support for download='filename' attribute in anchors.
706         https://bugs.webkit.org/show_bug.cgi?id=64580
707
708         Reviewed by Adam Barth.
709
710         The download attribute allows the author of the hyperlink to cause the
711         browser to download the linked URL.  The author can also supply a
712         suggested file name in the attribute value.  This feature is a recent
713         addition to HTML to better support offline applications that use blob
714         URLs.  Traditionally, web sites use the HTTP Content-Disposition header
715         to trigger downloads, but that option isn't available when working
716         offline.
717
718         There is some question about whether we should initiate a download when
719         we receive a DOM-created click event.  This patch does initiate the
720         download, but we might revise that decision in the future as part of a
721         larger change in how WebKit treats the interaction between default
722         event handlers and DOM-created events.
723
724         Tests: fast/dom/HTMLAnchorElement/anchor-download.html
725                fast/dom/HTMLAnchorElement/anchor-nodownload.html
726                fast/dom/HTMLAnchorElement/anchor-download-unset.html
727                fast/dom/HTMLAnchorElement/anchor-nodownload-set.html
728
729         * html/HTMLAnchorElement.cpp:
730         (WebCore::HTMLAnchorElement::defaultEventHandler):
731         (WebCore::HTMLAnchorElement::handleClick):
732         * html/HTMLAnchorElement.h:
733         * html/HTMLAnchorElement.idl:
734         * html/HTMLAttributeNames.in:
735         * loader/EmptyClients.h:
736         (WebCore::EmptyFrameLoaderClient::startDownload):
737         * loader/FrameLoaderClient.h:
738
739 2011-07-26  Mark Hahnenberg  <mhahnenberg@apple.com>
740
741         Refactor automatically generated JS DOM bindings to replace operator new with static create methods
742         https://bugs.webkit.org/show_bug.cgi?id=64732
743
744         Reviewed by Oliver Hunt.
745
746         No new tests.
747
748         Replacing the public constructors in the automatically generated JS DOM bindings in CodeGeneratorJS.pm
749         with static create methods.  This is part of a larger refactoring effort to use static create methods
750         in the headers of the generated files (so as to be inline-able) in favor of public constructors throughout JSC.
751
752         * bindings/js/JSAudioConstructor.h:
753         (WebCore::JSAudioConstructor::create):
754         * bindings/js/JSDOMBinding.h:
755         (WebCore::createWrapper):
756         * bindings/js/JSDOMGlobalObject.h:
757         (WebCore::getDOMConstructor):
758         * bindings/js/JSDOMWindowCustom.cpp:
759         (WebCore::JSDOMWindow::history):
760         (WebCore::JSDOMWindow::location):
761         * bindings/js/JSDOMWindowShell.cpp:
762         (WebCore::JSDOMWindowShell::setWindow):
763         * bindings/js/JSDocumentCustom.cpp:
764         (WebCore::JSDocument::location):
765         * bindings/js/JSImageConstructor.h:
766         (WebCore::JSImageConstructor::create):
767         * bindings/js/JSImageDataCustom.cpp:
768         (WebCore::toJS):
769         * bindings/js/JSOptionConstructor.h:
770         (WebCore::JSOptionConstructor::create):
771         * bindings/js/WorkerScriptController.cpp:
772         (WebCore::WorkerScriptController::initScript):
773         * bindings/scripts/CodeGeneratorJS.pm:
774         (AddIncludesForTypeInImpl):
775         (AddIncludesForTypeInHeader):
776         (AddIncludesForType):
777         (GenerateHeader):
778         (GenerateImplementation):
779         (GenerateCallbackImplementation):
780         (GenerateConstructorDeclaration):
781         * bindings/scripts/test/JS/JSTestInterface.cpp:
782         (WebCore::JSTestInterfaceConstructor::create):
783         (WebCore::JSTestInterface::createPrototype):
784         * bindings/scripts/test/JS/JSTestInterface.h:
785         (WebCore::JSTestInterface::create):
786         (WebCore::JSTestInterfacePrototype::create):
787         * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
788         (WebCore::JSTestMediaQueryListListenerConstructor::create):
789         (WebCore::JSTestMediaQueryListListener::createPrototype):
790         * bindings/scripts/test/JS/JSTestMediaQueryListListener.h:
791         (WebCore::JSTestMediaQueryListListener::create):
792         (WebCore::JSTestMediaQueryListListenerPrototype::create):
793         * bindings/scripts/test/JS/JSTestObj.cpp:
794         (WebCore::JSTestObjConstructor::create):
795         (WebCore::JSTestObj::createPrototype):
796         * bindings/scripts/test/JS/JSTestObj.h:
797         (WebCore::JSTestObj::create):
798         (WebCore::JSTestObjPrototype::create):
799         * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
800         (WebCore::JSTestSerializedScriptValueInterfaceConstructor::create):
801         (WebCore::JSTestSerializedScriptValueInterface::createPrototype):
802         * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.h:
803         (WebCore::JSTestSerializedScriptValueInterface::create):
804         (WebCore::JSTestSerializedScriptValueInterfacePrototype::create):
805         * bridge/jni/jsc/JavaArrayJSC.cpp:
806         (JavaArray::convertJObjectToArray):
807         * bridge/jsc/BridgeJSC.cpp:
808         (JSC::Bindings::Instance::newRuntimeObject):
809         * bridge/objc/objc_utility.mm:
810         (JSC::Bindings::convertObjcValueToValue):
811         * bridge/qt/qt_runtime.cpp:
812         (JSC::Bindings::convertQVariantToValue):
813         * bridge/runtime_array.h:
814         (JSC::RuntimeArray::create):
815         * bridge/runtime_object.h:
816         (JSC::Bindings::RuntimeObject::create):
817
818 2011-07-26  Xiaomei Ji  <xji@chromium.org>
819
820         --webkit-visual-word does not work in multi-line
821         https://bugs.webkit.org/show_bug.cgi?id=61344
822
823         Reviewed by Ryosuke Niwa.
824
825         Replace Position(node, offset, PositionIsOffsetInAnchor) with 
826         createPositionAvoidingIgnoredNode(node, offset) which takes care of creating position 
827         before/after <br/> etc. editingIgnoresContent node. 
828
829         When iterate InlineBox, replace prevLeafChild and nextLeafChild (which only returns 
830         InlineBox within the same line) with leftInlineBox and rightInlineBox (which returns 
831         InlineBox across multiple lines).
832
833         * editing/htmlediting.cpp:
834         (WebCore::createPositionAvoidingIgnoredNode):
835         * editing/htmlediting.h:
836         * editing/visible_units.cpp:
837         (WebCore::previousWordBreakInBoxInsideBlockWithSameDirectionality): Replace Position() with
838         createPositionAvoidingIgnoredNode().
839         (WebCore::leftmostPositionInRTLBoxInLTRBlock): Ditto.
840         (WebCore::rightmostPositionInLTRBoxInRTLBlock): Ditto.
841         (WebCore::nextWordBreakInBoxInsideBlockWithDifferentDirectionality): Ditto.
842         (WebCore::blockWithPreviousLineBox): Added.
843         (WebCore::previousRootInlineBox): Added.
844         (WebCore::blockWithNextLineBox): Added.
845         (WebCore::nextRootInlineBox): Added.
846         (WebCore::leftInlineBox): Added.
847         (WebCore::rightInlineBox): Added.
848         (WebCore::leftWordBoundary): Replace prevLeafChild/nextLeafChild with leftInlineBox()
849         and rightInlineBox().
850         (WebCore::rightWordBoundary): Ditto.
851         (WebCore::leftWordPositionAcrossBoundary): Ditto.
852         (WebCore::rightWordPositionAcrossBoundary): Ditto.
853
854 2011-07-26  David Hyatt  <hyatt@apple.com>
855
856         https://bugs.webkit.org/show_bug.cgi?id=60778
857
858         Use after free because of line box culling optimization regression.
859
860         In the case of a child with no line box being removed (typically
861         a <br> in quirks mode), if there is no previous sibling with a line
862         box, then we have a potential problem with the culling optimization.
863
864         The culled inline may still have other leaf line box children, but
865         they may follow the removed <br>. In this case we can't rely on
866         them, since we need a line box that comes before the <br>.
867
868         The fix is to simply recur up to the parent if we are a culled inline
869         and could not find a previous line box.
870
871         Reviewed by Dan Bernstein.
872
873         Added editing/execCommand/crash-line-break-after-outdent.html
874
875         * rendering/RenderLineBoxList.cpp:
876         (WebCore::RenderLineBoxList::dirtyLinesFromChangedChild):
877
878 2011-07-26  Dan Bernstein  <mitz@apple.com>
879
880         <rdar://problem/9842889> Add a generic pictograph font family
881         https://bugs.webkit.org/show_bug.cgi?id=65197
882
883         Reviewed by Anders Carlsson.
884
885         Test: fast/css/font-family-pictograph.html
886
887         * WebCore.exp.in: Export Settings::setPictographFontFamily().
888         * css/CSSComputedStyleDeclaration.cpp:
889         (WebCore::identifierForFamily): Added -webkit-pictograph.
890         * css/CSSFontSelector.cpp:
891         (WebCore::CSSFontSelector::addFontFaceRule): Ditto.
892         (WebCore::fontDataForGenericFamily): Ditto.
893         * css/CSSStyleSelector.cpp:
894         (WebCore::CSSStyleSelector::applyProperty): Ditto.
895         * css/CSSValueKeywords.in:
896         * inspector/front-end/CSSKeywordCompletions.js: Ditto.
897         * inspector/front-end/SourceCSSTokenizer.js: Ditto.
898         (WebInspector.SourceCSSTokenizer):
899         * inspector/front-end/SourceCSSTokenizer.re2js: Ditto.
900         * page/Settings.cpp:
901         (WebCore::Settings::pictographFontFamily): Added this getter.
902         (WebCore::Settings::setPictographFontFamily): Added this setter.
903         * page/Settings.h:
904         * platform/graphics/FontDescription.h: Added PictographFamily to the GenericFamilyType enum.
905
906 2011-07-26  Viet-Trung Luu  <viettrungluu@chromium.org>
907
908         Improve (i.e., speed up) .gyp(i) files for Chromium
909         https://bugs.webkit.org/show_bug.cgi?id=65032
910
911         Reviewed by Adam Barth.
912
913         This re-applies r91595 with the source exclusion fixed.
914
915         Test by building (in all supported configurations).
916
917         * WebCore.gyp/WebCore.gyp:
918         * WebCore.gypi:
919
920 2011-07-26  Alexis Menard  <alexis.menard@openbossa.org>
921
922         [Qt] Disable video support on linux if the dependencies are not found.
923
924         If we can't find the necessary dependencies to build the GStreamer media player
925         we disable the video support. This is related to http://trac.webkit.org/changeset/91752.
926
927         Reviewed by Holger Freyther.
928
929         No new tests, it's a build fix.
930
931         * features.pri:
932
933 2011-07-26  Evan Martin  <evan@chromium.org>
934
935         regression: generating CSSValueKeywords should not print by default
936         https://bugs.webkit.org/show_bug.cgi?id=65195
937
938         Reviewed by Tony Chang.
939
940         Some refactoring made some callers no longer pass the final 'beQuiet'
941         parameter to applyPreprocessor.  This flag was only used to print the
942         input filename anyway, so remove the flag and just make the caller
943         print the filename if it wants this.
944
945         * bindings/scripts/IDLParser.pm:
946         (Parse): print before calling applyPreprocessor, if necessary.
947         * bindings/scripts/preprocessor.pm:
948         (applyPreprocessor): remove the beQuiet flag; just always be quiet.
949
950 2011-07-26  Raphael Kubo da Costa  <kubo@profusion.mobi>
951
952         [EFL] Do not crash on the isSlider() assert.
953         https://bugs.webkit.org/show_bug.cgi?id=65191
954
955         Reviewed by Antonio Gomes.
956
957         RenderThemeEfl's paintSliderThumb() just forwarded the call to
958         paintSliderTrack(), which, on its turn, called code that assumed that
959         object->isSlider() was true. That does not seem to be the case for
960         slidethumbs, so any page with an <input type="range"> tag would crash
961         WebKit.
962
963         We now do what RenderThemeQt does, and assume everything was properly
964         done in the call to paintSliderTrack().
965
966         No new tests, as this has been uncovered by an existing test.
967
968         * platform/efl/RenderThemeEfl.cpp:
969         (WebCore::RenderThemeEfl::paintSliderThumb):
970
971 2011-07-26  Brian Salomon  <bsalomon@google.com>
972
973         [SKIA] Make the skia GL context current when drawing text to gpu backed platform context.
974         https://bugs.webkit.org/show_bug.cgi?id=65182
975
976         Reviewed by Stephen White.
977
978         No new tests. Not sure how to test wrong-ctx bugs in layout tests.
979
980         * platform/graphics/skia/SkiaFontWin.cpp:
981         (WebCore::paintSkiaText):
982
983 2011-07-26  Emil A Eklund  <eae@chromium.org>
984
985         RenderText::absoluteRectsForRange() and absoluteQuadsForRange() have nearly duplicate code
986         https://bugs.webkit.org/show_bug.cgi?id=62478
987
988         Reviewed by Simon Fraser.
989
990         Test: fast/dom/Range/getClientRects.html
991
992         * platform/graphics/FloatRect.h:
993         (WebCore::FloatRect::isZero):
994         Add izZero method, unlike isEmpty this checks if both the width and the
995         height are zero.
996
997         * rendering/RenderText.cpp:
998         (WebCore::absoluteQuadForTextBox):
999         (WebCore::RenderText::absoluteRectsForRange):
1000         (WebCore::RenderText::absoluteQuadsForRange):
1001         Break duplicate code out of absoluteRectsForRange and
1002         absoluteQuadsForRange into shared static function.
1003         
1004         Fix what I presume to be a bug in the absoluteQuadsForRange where the
1005         logicalHeight was always used to set the size in absoluteQuadForTextBox
1006         as oppsued to the absoluteRectsForRange implementation that uses the
1007         logicalWidth or the logicalHeight depending on whether it's horizontal or
1008         vertical.
1009
1010 2011-07-26  Alexandru Chiculita  <achicu@adobe.com>
1011
1012         [CSSRegions] Collect flowed elements in different render element
1013         https://bugs.webkit.org/show_bug.cgi?id=64516
1014
1015         All the RenderObjects that have a specified "flow" name are moved out of the
1016         normal flow. A RenderFlowThread will collect all such RenderObjects. There is
1017         a RenderFlowThread for each flow name. The new RenderFlowThread is an anonymous
1018         RenderBlock that is positioned absolute and will not render directly. In a
1019         different bug/patch we will add RenderRegion that will take care of rendering the
1020         RenderFlowThread on screen.
1021
1022         Reviewed by Simon Fraser.
1023
1024         Tests: fast/regions/webkit-flow-renderer-layer.html
1025                fast/regions/webkit-flow-renderer-nested.html
1026                fast/regions/webkit-flow-renderer.html
1027
1028         * WebCore.vcproj/WebCore.vcproj:
1029         * WebCore.xcodeproj/project.pbxproj:
1030         * dom/Node.cpp:
1031         (WebCore::Node::diff):
1032         * dom/NodeRenderingContext.cpp:
1033         (WebCore::NodeRenderingContext::NodeRenderingContext):
1034         (WebCore::NodeRenderingContext::setStyle):
1035         (WebCore::NodeRenderingContext::nextRenderer):
1036         (WebCore::NodeRenderingContext::previousRenderer):
1037         (WebCore::NodeRenderingContext::parentRenderer):
1038         (WebCore::NodeRenderingContext::moveToFlowThreadIfNeeded):
1039         (WebCore::NodeRendererFactory::createRendererIfNeeded):
1040         * dom/NodeRenderingContext.h:
1041         (WebCore::NodeRenderingContext::hasFlowThreadParent):
1042         (WebCore::NodeRenderingContext::parentFlowRenderer):
1043         * rendering/RenderFlowThread.cpp: Added.
1044         (WebCore::RenderFlowThread::RenderFlowThread):
1045         (WebCore::RenderFlowThread::createFlowThreadStyle):
1046         (WebCore::RenderFlowThread::nextRendererForNode):
1047         (WebCore::RenderFlowThread::previousRendererForNode):
1048         (WebCore::RenderFlowThread::addChild):
1049         (WebCore::RenderFlowThread::removeChild):
1050         * rendering/RenderFlowThread.h: Added.
1051         (WebCore::toRenderFlowThread):
1052         * rendering/RenderLayer.cpp:
1053         (WebCore::RenderLayer::collectLayers):
1054         * rendering/RenderObject.h:
1055         (WebCore::RenderObject::isRenderFlowThread):
1056         * rendering/RenderTreeAsText.cpp:
1057         (WebCore::RenderTreeAsText::writeRenderObject):
1058         (WebCore::writeLayers):
1059         * rendering/RenderView.cpp:
1060         (WebCore::RenderView::renderFlowThreadWithName):
1061         * rendering/RenderView.h:
1062         * rendering/style/RenderStyle.cpp:
1063         (WebCore::RenderStyle::diff):
1064
1065 2011-07-26  Patrick Dubroy  <dubroy@chromium.org>
1066
1067         Filename text in file upload controls is not aligned with button text on
1068         chromium-linux, chromium-win, and gtk.
1069
1070         https://bugs.webkit.org/show_bug.cgi?id=64692
1071
1072         The fix is to not include the margin, border, and padding in the calculation,
1073         because those are already accounted for by RenderBlock::baselinePosition().
1074
1075         Reviewed by Dimitri Glazkov.
1076
1077         * rendering/RenderFileUploadControl.cpp:
1078         (WebCore::RenderFileUploadControl::paintObject):
1079
1080 2011-07-26  Sheriff Bot  <webkit.review.bot@gmail.com>
1081
1082         Unreviewed, rolling out r91746.
1083         http://trac.webkit.org/changeset/91746
1084         https://bugs.webkit.org/show_bug.cgi?id=65180
1085
1086         It broke SL build (Requested by Ossy on #webkit).
1087
1088         * dom/OptionElement.cpp:
1089         (WebCore::OptionElement::normalizeText):
1090
1091 2011-07-26  Pavel Feldman  <pfeldman@google.com>
1092
1093         Web Inspector: Better represent custom getters in the properties pane
1094         https://bugs.webkit.org/show_bug.cgi?id=16734
1095
1096         Reviewed by Yury Semikhatsky.
1097
1098         Test: inspector/runtime/runtime-getProperties.html
1099
1100         * inspector/InjectedScriptSource.js:
1101         (.):
1102         * inspector/Inspector.json:
1103         * inspector/front-end/ObjectPropertiesSection.js:
1104         (WebInspector.ObjectPropertyTreeElement.prototype.update):
1105
1106 2011-07-26  Alexis Menard  <alexis.menard@openbossa.org>
1107
1108         Reviewed by Andreas Kling.
1109
1110         [Qt] Change default backend to use GStreamer on Linux and QuickTime on Mac.
1111         https://bugs.webkit.org/show_bug.cgi?id=63472
1112
1113         Enable the GStreamer backend and the QuickTime backend as default media players
1114         for the Qt port on Mac and Linux. QtMultimedia is now a fallback option that you
1115         can enable by passing DEFINES+=USE_QT_MULTIMEDIA=1 to enforce its usage.
1116
1117         No new tests. The media layout tests are disabled on the Qt port but hopefully with this
1118         switch we can enable them again.
1119
1120         * WebCore.pri:
1121         * WebCore.pro:
1122         * features.pri:
1123
1124 2011-07-26  Pavel Feldman  <pfeldman@google.com>
1125
1126         Web Inspector: Implement setPropertyValue using evaluate and callFunctionOn
1127         https://bugs.webkit.org/show_bug.cgi?id=65112
1128
1129         Reviewed by Yury Semikhatsky.
1130
1131         Test: inspector/runtime/runtime-setPropertyValue.html
1132
1133         * inspector/InjectedScript.cpp:
1134         * inspector/InjectedScript.h:
1135         * inspector/InjectedScriptSource.js:
1136         (.):
1137         * inspector/Inspector.json:
1138         * inspector/InspectorRuntimeAgent.cpp:
1139         * inspector/InspectorRuntimeAgent.h:
1140         * inspector/front-end/RemoteObject.js:
1141         (WebInspector.RemoteObject.prototype.setPropertyValue.evaluatedCallback.setPropertyValue):
1142         (WebInspector.RemoteObject.prototype.setPropertyValue.evaluatedCallback):
1143         (WebInspector.RemoteObject.prototype.setPropertyValue.propertySetCallback):
1144         (WebInspector.RemoteObject.prototype.setPropertyValue):
1145
1146 2011-07-26  Pavel Feldman  <pfeldman@google.com>
1147
1148         Re-applying r91665 and r91668 with JSC issues fixed.
1149
1150         Web Inspector: use dedicated type for object id in the protocol.
1151         Web Inspector: refactor remote object structure to contain value for primitive values.
1152
1153         https://bugs.webkit.org/show_bug.cgi?id=65103
1154         https://bugs.webkit.org/show_bug.cgi?id=65110
1155
1156         Reviewed by Yury Semikhatsky.
1157
1158         * inspector/InjectedScript.cpp:
1159         (WebCore::InjectedScript::callFunctionOn):
1160         * inspector/InjectedScript.h:
1161         * inspector/InjectedScriptSource.js:
1162         * inspector/Inspector.json:
1163         * inspector/InspectorRuntimeAgent.cpp:
1164         (WebCore::InspectorRuntimeAgent::callFunctionOn):
1165         * inspector/InspectorValues.cpp:
1166         (WebCore::InspectorBasicValue::writeJSON):
1167         * inspector/front-end/ConsoleView.js:
1168         (WebInspector.ConsoleView.prototype._format):
1169         (WebInspector.ConsoleView.prototype._formatAsArrayEntry):
1170         (WebInspector.ConsoleMessage.prototype._format):
1171         * inspector/front-end/ElementsTreeOutline.js:
1172         (WebInspector.ElementsTreeElement.prototype._createTooltipForNode.setTooltip):
1173         * inspector/front-end/ObjectPropertiesSection.js:
1174         (WebInspector.ObjectPropertyTreeElement.prototype.update):
1175         * inspector/front-end/PropertiesSidebarPane.js:
1176         (WebInspector.PropertiesSidebarPane.prototype.update.nodePrototypesReady):
1177         * inspector/front-end/RemoteObject.js:
1178         (WebInspector.RemoteObject):
1179         (WebInspector.RemoteObject.fromPrimitiveValue):
1180         (WebInspector.RemoteObject.fromPayload):
1181         (WebInspector.RemoteObject.prototype.get subtype):
1182         (WebInspector.RemoteObject.prototype.callFunction):
1183         (WebInspector.LocalJSONObject.prototype.get description):
1184         (WebInspector.LocalJSONObject.prototype.get type):
1185         (WebInspector.LocalJSONObject.prototype.get subtype):
1186         * inspector/front-end/SourceFrame.js:
1187         (WebInspector.SourceFrame.prototype._showPopup.showObjectPopup):
1188         (WebInspector.SourceFrame.prototype._showPopup):
1189         * inspector/front-end/inspector.js:
1190         (WebInspector.log.logMessage):
1191         (WebInspector.log):
1192         (WebInspector.inspect):
1193
1194 2011-07-26  Nikolas Zimmermann  <nzimmermann@rim.com>
1195
1196         Prepare animVal support - phase 2
1197         https://bugs.webkit.org/show_bug.cgi?id=65167
1198
1199         Reviewed by Dirk Schulze.
1200
1201         Next patch preparing animVal support. Modify the SVGAnimatedProperty* classes & macros to assure that calling someElement->someProperty()
1202         will return the animVal, when the property is being animated. Not yet hooked into SVGAnimateElement, this is just a preparation.
1203
1204         Doesn't affect any tests, yet.
1205
1206         * svg/SVGPathElement.cpp: Adapt to SVGAnimatedProperty::lookupWrapper changes (new template parameters have been added).
1207         (WebCore::SVGPathElement::svgAttributeChanged):
1208         * svg/SVGPathSegWithContext.h: Ditto.
1209         (WebCore::SVGPathSegWithContext::animatedProperty):
1210         * svg/SVGPolyElement.cpp: Ditto.
1211         (WebCore::SVGPolyElement::parseMappedAttribute):
1212         * svg/properties/SVGAnimatedEnumerationPropertyTearOff.h: Implement currentAnimatedValue, an abstract way to retrieve the underlying animated value for any animated type.
1213         (WebCore::SVGAnimatedEnumerationPropertyTearOff::currentAnimatedValue): Forward call to SVGAnimatedStaticPropertyTearOff<int>, our base.
1214         * svg/properties/SVGAnimatedListPropertyTearOff.h:
1215         (WebCore::SVGAnimatedListPropertyTearOff::isAnimating): Returns whether this property is being animated or not.
1216         (WebCore::SVGAnimatedListPropertyTearOff::currentAnimatedValue):
1217         * svg/properties/SVGAnimatedProperty.h:
1218         (WebCore::SVGAnimatedProperty::updateAnimVal): Will be used from SVGAnim*Element to update the current animVal, exposed to JS.
1219         (WebCore::SVGAnimatedProperty::lookupOrCreateWrapper): Share more code with lookupWrapper.
1220         (WebCore::SVGAnimatedProperty::lookupWrapper): Cleanup code, avoid doing any work for non-SVGElement derived objects, like SVGViewSpec.
1221         * svg/properties/SVGAnimatedPropertyMacros.h: Make all lowerProperty() calls (eg. myRectElement->x()) return the animVal, if the property is being animated.
1222         * svg/properties/SVGAnimatedPropertyTearOff.h: Main logic for the new animVal stuff.
1223         (WebCore::SVGAnimatedPropertyTearOff::isAnimating):
1224         (WebCore::SVGAnimatedPropertyTearOff::currentAnimatedValue):
1225         (WebCore::SVGAnimatedPropertyTearOff::updateAnimVal):
1226         (WebCore::SVGAnimatedPropertyTearOff::SVGAnimatedPropertyTearOff):
1227         * svg/properties/SVGAnimatedStaticPropertyTearOff.h:
1228         (WebCore::SVGAnimatedStaticPropertyTearOff::isAnimating):
1229         (WebCore::SVGAnimatedStaticPropertyTearOff::currentAnimatedValue):
1230         * svg/properties/SVGPropertyTearOff.h:
1231         (WebCore::SVGPropertyTearOff::updateAnimVal):
1232
1233 2011-07-26  Shinya Kawanaka  <shinyak@google.com>
1234
1235         Uses isHTMLSpace to normalize white spaces.
1236         https://bugs.webkit.org/show_bug.cgi?id=57746
1237
1238         Reviewed by Kent Tamura.
1239
1240         Test: fast/forms/option-strip-unicode-spaces.html
1241
1242         * dom/OptionElement.cpp:
1243         (WebCore::OptionElement::normalizeText):
1244           Uses isHTMLSpace to trim and replace white spaces.
1245
1246 2011-07-25  Ryuan Choi  <ryuan.choi@samsung.com>
1247
1248         [CMAKE] Split JSC related files from WebCore/CMakeLists.txt
1249         https://bugs.webkit.org/show_bug.cgi?id=61350
1250
1251         Reviewed by Daniel Bates.
1252
1253         No new tests, just moving jsc related files from CMakeLists.txt to UseJSC.cmake.
1254
1255         * CMakeLists.txt:
1256         * UseJSC.cmake:
1257
1258 2011-07-25  Dan Bernstein  <mitz@apple.com>
1259
1260         Fix the build by committing a rename in this file that I neglected to include in the previous commit.
1261
1262         * css/CSSFontFaceSource.h:
1263
1264 2011-07-25  Dan Bernstein  <mitz@apple.com>
1265
1266         <rdar://problem/9835028> Font loading during layout can cause layout code to be re-entered via resource load delegate
1267         https://bugs.webkit.org/show_bug.cgi?id=65123
1268
1269         Reviewed by Anders Carlsson and Darin Adler.
1270
1271         Since CSSFontFaceSource::getFontData() can get called during layout, avoid calling out to loader
1272         code from under it, and instead defer that work using a zero-delay timer.
1273
1274         * css/CSSFontFaceSource.cpp:
1275         (WebCore::CSSFontFaceSource::CSSFontFaceSource):
1276         (WebCore::CSSFontFaceSource::~CSSFontFaceSource):
1277         (WebCore::CSSFontFaceSource::getFontData): Rather than starting the font load here, schedule
1278         a zero-delay timer to do it.
1279         (WebCore::CSSFontFaceSource::startLoadingTimerFired): Added. Starts loading the font if needed.
1280         * css/CSSFontFaceSource.h:
1281
1282 2011-07-25  Al Patrick  <apatrick@chromium.org>
1283
1284         Removed support for the GL_latch_CHROMIUM extension which Chromium no longer supports.
1285         Replaced calls to SetLatch with calls to Flush since Flush now has barrier semantics in Chromium.
1286         https://bugs.webkit.org/show_bug.cgi?id=65043
1287
1288         Reviewed by James Robinson.
1289
1290         * platform/graphics/chromium/Canvas2DLayerChromium.cpp:
1291         (WebCore::Canvas2DLayerChromium::updateCompositorResources):
1292         * platform/graphics/chromium/DrawingBufferChromium.cpp:
1293         (WebCore::DrawingBuffer::publishToPlatformLayer):
1294         * platform/graphics/chromium/Extensions3DChromium.h:
1295         * platform/graphics/chromium/LayerRendererChromium.cpp:
1296         (WebCore::LayerRendererChromium::LayerRendererChromium):
1297         (WebCore::LayerRendererChromium::drawLayers):
1298         (WebCore::LayerRendererChromium::addChildContext):
1299         (WebCore::LayerRendererChromium::removeChildContext):
1300         * platform/graphics/chromium/LayerRendererChromium.h:
1301
1302 2011-07-25  Sam Weinig  <sam@webkit.org>
1303
1304         Refactor ScrollableArea pinned predicates to be more generally useful
1305         <rdar://problem/9740379>
1306
1307         Reviewed by Dan Bernstein.
1308
1309         * platform/ScrollableArea.cpp:
1310         (WebCore::ScrollableArea::isPinnedInBothDirections):
1311         (WebCore::ScrollableArea::isPinnedHorizontallyInDirection):
1312         (WebCore::ScrollableArea::isPinnedVerticallyInDirection):
1313         * platform/ScrollableArea.h:
1314
1315 2011-07-25  Nico Weber  <thakis@chromium.org>
1316
1317         [chromium] components/mac: Make webcore not depend on CoreAnimation
1318         https://bugs.webkit.org/show_bug.cgi?id=65143
1319
1320         Reviewed by James Robinson.
1321
1322         * platform/chromium/ScrollAnimatorChromiumMac.mm:
1323
1324 2011-07-25  Ian Henderson  <ianh@apple.com>
1325
1326         WebFrame should have a method to determine its visual emptiness
1327         https://bugs.webkit.org/show_bug.cgi?id=64223
1328
1329         Reviewed by Dan Bernstein.
1330
1331         * page/FrameView.h:
1332         (WebCore::FrameView::isVisuallyNonEmpty): Add an accessor to FrameView
1333         so we can tell whether it's visually non-empty.
1334
1335 2011-07-25  Scott Graham  <scottmg@chromium.org>
1336
1337         REGRESSION (r39725?): Resources removed from document can not be freed until the document is deleted
1338         https://bugs.webkit.org/show_bug.cgi?id=61006
1339
1340         Reviewed by Nate Chapin.
1341
1342         Rollback previous patch. Occasional crashes seen caused by
1343         CachedResource being deleted twice.
1344
1345         * loader/cache/CachedResourceLoader.cpp:
1346         (WebCore::CachedResourceLoader::CachedResourceLoader):
1347         (WebCore::CachedResourceLoader::loadDone):
1348         * loader/cache/CachedResourceLoader.h:
1349
1350 2011-07-25  Chris Rogers  <crogers@google.com>
1351
1352         Deprecate AudioBufferSourceNode .looping attribute and implement .loop
1353         https://bugs.webkit.org/show_bug.cgi?id=65133
1354
1355         Reviewed by Kenneth Russell.
1356
1357         No new tests since audio API is not yet implemented.
1358
1359         * webaudio/AudioBufferSourceNode.cpp:
1360         (WebCore::AudioBufferSourceNode::renderFromBuffer):
1361         (WebCore::AudioBufferSourceNode::totalPitchRate):
1362         (WebCore::AudioBufferSourceNode::looping):
1363         (WebCore::AudioBufferSourceNode::setLooping):
1364         * webaudio/AudioBufferSourceNode.h:
1365         (WebCore::AudioBufferSourceNode::loop):
1366         (WebCore::AudioBufferSourceNode::setLoop):
1367         * webaudio/AudioBufferSourceNode.idl:
1368
1369 2011-07-25  James Robinson  <jamesr@chromium.org>
1370
1371         [chromium] HUD texture must be unreserved after drawing
1372         https://bugs.webkit.org/show_bug.cgi?id=65122
1373
1374         Unreserve the HUD texture after drawing.  To test, start chrome in debug with --show-fps-counter.  Since this is
1375         a debugging option, no tests.
1376
1377         * platform/graphics/chromium/cc/CCHeadsUpDisplay.cpp:
1378         (WebCore::CCHeadsUpDisplay::draw):
1379
1380 2011-07-25  David Grogan  <dgrogan@chromium.org>
1381
1382         Fix leveldb crash when compacting during destruction
1383         https://bugs.webkit.org/show_bug.cgi?id=64494
1384
1385         Reviewed by Nate Chapin.
1386
1387         Only tested manually so far by following the repro instructions at
1388         crbug.com/88944
1389
1390         * platform/leveldb/LevelDBDatabase.cpp:
1391         (WebCore::LevelDBDatabase::~LevelDBDatabase):
1392         * storage/IDBLevelDBBackingStore.cpp:
1393         (WebCore::IDBLevelDBBackingStore::~IDBLevelDBBackingStore):
1394
1395 2011-07-25  David Reveman  <reveman@chromium.org>
1396
1397         [Chromium] Use correct vertex shader when rendering video layer.
1398         https://bugs.webkit.org/show_bug.cgi?id=65131
1399
1400         Reviewed by James Robinson.
1401
1402         Add new VertexShaderQuad program that is used by LayerTilerChromium.
1403         Change VertexShaderPosTexTransform so it works with CCVideoLayerImpl.
1404
1405         * platform/graphics/chromium/LayerTilerChromium.h:
1406         * platform/graphics/chromium/ShaderChromium.cpp:
1407         (WebCore::VertexShaderPosTexTransform::VertexShaderPosTexTransform):
1408         (WebCore::VertexShaderPosTexTransform::init):
1409         (WebCore::VertexShaderPosTexTransform::getShaderString):
1410         (WebCore::VertexShaderQuad::VertexShaderQuad):
1411         (WebCore::VertexShaderQuad::init):
1412         (WebCore::VertexShaderQuad::getShaderString):
1413         * platform/graphics/chromium/ShaderChromium.h:
1414         (WebCore::VertexShaderQuad::matrixLocation):
1415         (WebCore::VertexShaderQuad::texTransformLocation):
1416
1417 2011-07-25  Patrick Gansterer  <paroga@webkit.org>
1418
1419         Fix AtomicString vs. String usage in accessibility code
1420         https://bugs.webkit.org/show_bug.cgi?id=65086
1421
1422         Reviewed by Darin Adler.
1423
1424         Use AtomicString instead of String where appropriate
1425         to avoid implicit type conversations.
1426         Also fix a invalid reference to a temporary String.
1427
1428         * accessibility/AccessibilityObject.h:
1429         (WebCore::AccessibilityObject::setAccessibleName):
1430         * accessibility/AccessibilityRenderObject.cpp:
1431         (WebCore::AccessibilityRenderObject::elementsFromAttribute):
1432         (WebCore::AccessibilityRenderObject::ariaAccessibilityDescription):
1433         (WebCore::AccessibilityRenderObject::setAccessibleName):
1434         * accessibility/AccessibilityRenderObject.h:
1435
1436 2011-07-25  Dan Bernstein  <mitz@apple.com>
1437
1438         Reverted r91699 due to
1439         <http://webkit.org/b/65134> REGRESSION: r91699 broke some font tests (image+text)
1440
1441         Many tests relied on font loading occurring synchronously in the cached and local cases.
1442
1443         * css/CSSFontFaceSource.cpp:
1444         (WebCore::CSSFontFaceSource::CSSFontFaceSource):
1445         (WebCore::CSSFontFaceSource::~CSSFontFaceSource):
1446         (WebCore::CSSFontFaceSource::getFontData):
1447         * css/CSSFontFaceSource.h:
1448
1449 2011-06-07  Martin Robinson  <mrobinson@igalia.com>
1450
1451         Reviewed by Gustavo Noronha Silva.
1452
1453         [GTK] Use WebCore scrollbars for the DRT instead of GtkScrolledWindow
1454         https://bugs.webkit.org/show_bug.cgi?id=62252
1455
1456         Properly handle the situation where the GtkWidget wants WebCore to draw its
1457         own main frame scrollbars.
1458
1459         * platform/gtk/ScrollViewGtk.cpp:
1460         (WebCore::shouldCreateMainFrameScrollbar): Abstract this logic into a helper function.
1461         (WebCore::ScrollView::createScrollbar): Use the new helper.
1462         (WebCore::ScrollView::visibleContentRect): Use the new helper.
1463
1464 2011-07-25  David Hyatt  <hyatt@apple.com>
1465
1466         https://bugs.webkit.org/show_bug.cgi?id=65125
1467         
1468         (1) Add the new CSS3 positioned value for floats.
1469         (2) Rename FLEFT, FRIGHT and FNONE to our more modern convention: NoFloat, LeftFloat, RightFloat.
1470         (3) Replace uses of == FNONE and != FNONE with isFloating and !isFloating.
1471
1472         Reviewed by Dan Bernstein.
1473
1474         * css/CSSParser.cpp:
1475         (WebCore::CSSParser::parseValue):
1476         * css/CSSPrimitiveValueMappings.h:
1477         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
1478         (WebCore::CSSPrimitiveValue::operator EFloat):
1479         * css/CSSStyleSelector.cpp:
1480         (WebCore::CSSStyleSelector::adjustRenderStyle):
1481         * css/CSSValueKeywords.in:
1482         * editing/ReplaceSelectionCommand.cpp:
1483         (WebCore::ReplaceSelectionCommand::removeRedundantStylesAndKeepStyleSpanInline):
1484         * rendering/RenderBlock.cpp:
1485         (WebCore::RenderBlock::insertFloatingObject):
1486         (WebCore::RenderBlock::positionNewFloats):
1487         (WebCore::RenderBlock::computeInlinePreferredLogicalWidths):
1488         (WebCore::RenderBlock::computeBlockPreferredLogicalWidths):
1489         * rendering/RenderObjectChildList.cpp:
1490         (WebCore::RenderObjectChildList::updateBeforeAfterContent):
1491         * rendering/style/RenderStyle.h:
1492         (WebCore::InheritedFlags::isFloating):
1493         (WebCore::InheritedFlags::initialFloating):
1494         * rendering/style/RenderStyleConstants.h:
1495
1496 2011-07-25  Dan Bernstein  <mitz@apple.com>
1497
1498         <rdar://problem/9835028> Font loading during layout can cause layout code to be re-entered via resource load delegate
1499         https://bugs.webkit.org/show_bug.cgi?id=65123
1500
1501         Reviewed by Anders Carlsson.
1502
1503         Since CSSFontFaceSource::getFontData() can get called during layout, avoid calling out to loader
1504         code from under it, and instead defer that work using a zero-delay timer.
1505
1506         * css/CSSFontFaceSource.cpp:
1507         (WebCore::CSSFontFaceSource::CSSFontFaceSource):
1508         (WebCore::CSSFontFaceSource::~CSSFontFaceSource):
1509         (WebCore::CSSFontFaceSource::getFontData): Rather than starting the font load here, schedule
1510         a zero-delay timer to do it.
1511         (WebCore::CSSFontFaceSource::startLoadingTimerFired): Added. Starts loading the font if needed.
1512         * css/CSSFontFaceSource.h:
1513
1514 2011-07-25  Andrew Wason  <rectalogic@rectalogic.com>
1515
1516         [Qt] Adopt GraphicsContext3DOpenGL.cpp and ANGLE (part 2)
1517         https://bugs.webkit.org/show_bug.cgi?id=64878
1518
1519         Reviewed by Noam Rosenthal.
1520
1521         Existing WebGL layout tests should test this.
1522
1523         Adopt GraphicsContext3DOpenGL.cpp and ANGLE compiler for Qt.
1524
1525         * WebCore.pro: Build ANGLE compiler and GraphicsContext3DOpenGL.cpp.
1526         * platform/graphics/ANGLEWebKitBridge.h:
1527         * platform/graphics/GraphicsContext3D.h: Expose exising ANGLEWebKitBridge compiler member for Qt.
1528         * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
1529         * platform/graphics/qt/GraphicsContext3DQt.cpp:
1530         (WebCore::GraphicsContext3D::GraphicsContext3D): Initialize ANGLE resources.
1531
1532 2011-07-25  Daniel Bates  <dbates@rim.com>
1533
1534         REGRESSION (r85964): Improper relayout of some nested positioned elements
1535         https://bugs.webkit.org/show_bug.cgi?id=64286
1536
1537         Reviewed by David Hyatt.
1538
1539         Fixes an issue when traversing up the containing block hierarchy after skipping
1540         relatively positioned inlines.
1541
1542         When processing a positioned element we skip any intermediate inlines to get to
1543         to enclosing block B, but don't use the containing block for B (call this P_B) to
1544         properly continue traversing up the containing block hierarchy. So, B may be
1545         considered again instead of looking at P_B. Hence, we don't set the correct dirty
1546         bits for P_B and may not schedule a relayout with respect to the correct layout node.
1547
1548         Test: fast/block/positioning/relayout-nested-positioned-elements-crash.html
1549
1550         * rendering/RenderObject.h:
1551         (WebCore::RenderObject::markContainingBlocksForLayout):
1552
1553 2011-07-25  Arno Renevier  <arno@renevier.net>
1554
1555         removes last ENABLE(DRAG_SUPPORT) gtk check
1556         https://bugs.webkit.org/show_bug.cgi?id=64518
1557
1558         Reviewed by Martin Robinson.
1559
1560         * platform/gtk/ClipboardGtk.h:
1561
1562 2011-07-25  Alexandru Chiculita  <achicu@adobe.com>
1563
1564         [CSS Exclusions] Use HANDLE_INHERIT_AND_INITIAL when parsing -webkit-wrap-shape
1565         https://bugs.webkit.org/show_bug.cgi?id=65096
1566
1567         Also the 'inherit' keyword is now treated correctly. It will
1568         copy the value from the parent style.
1569
1570         Reviewed by Tony Chang.
1571
1572         * css/CSSStyleSelector.cpp:
1573         (WebCore::CSSStyleSelector::applyProperty):
1574
1575 2011-07-25  Andrew Wason  <rectalogic@rectalogic.com>
1576
1577         glActiveTexture(0) is invalid
1578         https://bugs.webkit.org/show_bug.cgi?id=65115
1579
1580         Reviewed by Kenneth Russell.
1581
1582         Existing WebGL layout tests.
1583
1584         Fix invalid glActiveTexture(0) call.
1585
1586         * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
1587         (WebCore::GraphicsContext3D::prepareTexture):
1588
1589 2011-07-25  Sheriff Bot  <webkit.review.bot@gmail.com>
1590
1591         Unreviewed, rolling out r91665.
1592         http://trac.webkit.org/changeset/91665
1593         https://bugs.webkit.org/show_bug.cgi?id=65118
1594
1595         Breaks inspector tests on JSC (Requested by pfeldman on
1596         #webkit).
1597
1598         * inspector/InjectedScriptSource.js:
1599         (.):
1600         ():
1601         * inspector/Inspector.json:
1602         * inspector/front-end/ConsoleView.js:
1603         (WebInspector.ConsoleView.prototype._format):
1604         (WebInspector.ConsoleView.prototype._formatAsArrayEntry):
1605         (WebInspector.ConsoleMessage.prototype._format):
1606         * inspector/front-end/ElementsTreeOutline.js:
1607         (WebInspector.ElementsTreeElement.prototype._createTooltipForNode.setTooltip):
1608         * inspector/front-end/ObjectPropertiesSection.js:
1609         (WebInspector.ObjectPropertyTreeElement.prototype.update):
1610         * inspector/front-end/PropertiesSidebarPane.js:
1611         (WebInspector.PropertiesSidebarPane.prototype.update.nodePrototypesReady):
1612         * inspector/front-end/RemoteObject.js:
1613         (WebInspector.RemoteObject):
1614         (WebInspector.RemoteObject.fromPrimitiveValue):
1615         (WebInspector.RemoteObject.fromPayload):
1616         (WebInspector.RemoteObject.prototype.callFunction):
1617         (WebInspector.LocalJSONObject.prototype.get type):
1618         * inspector/front-end/SourceFrame.js:
1619         (WebInspector.SourceFrame.prototype._showPopup.showObjectPopup):
1620         (WebInspector.SourceFrame.prototype._showPopup):
1621         * inspector/front-end/inspector.js:
1622         (WebInspector.log.logMessage):
1623         (WebInspector.log):
1624         (WebInspector.inspect):
1625
1626 2011-07-25  Sheriff Bot  <webkit.review.bot@gmail.com>
1627
1628         Unreviewed, rolling out r91668.
1629         http://trac.webkit.org/changeset/91668
1630         https://bugs.webkit.org/show_bug.cgi?id=65117
1631
1632         Breaks inspector tests on JSC (Requested by pfeldman on
1633         #webkit).
1634
1635         * inspector/InjectedScript.cpp:
1636         (WebCore::InjectedScript::callFunctionOn):
1637         * inspector/InjectedScript.h:
1638         * inspector/InjectedScriptSource.js:
1639         (.):
1640         * inspector/Inspector.json:
1641         * inspector/InspectorRuntimeAgent.cpp:
1642         (WebCore::InspectorRuntimeAgent::callFunctionOn):
1643
1644 2011-07-25  Pavel Feldman  <pfeldman@google.com>
1645
1646         Web Inspector: use dedicated type for object id in the protocol.
1647         https://bugs.webkit.org/show_bug.cgi?id=65110
1648
1649         Reviewed by Yury Semikhatsky.
1650
1651         * inspector/InjectedScript.cpp:
1652         (WebCore::InjectedScript::callFunctionOn):
1653         * inspector/InjectedScript.h:
1654         * inspector/InjectedScriptSource.js:
1655         (.):
1656         * inspector/Inspector.json:
1657         * inspector/InspectorRuntimeAgent.cpp:
1658         (WebCore::InspectorRuntimeAgent::callFunctionOn):
1659
1660 2011-07-25  Yury Semikhatsky  <yurys@chromium.org>
1661
1662         [Chromium] Web Inspector: live edit error should be revealed in Console
1663         https://bugs.webkit.org/show_bug.cgi?id=65109
1664
1665         Reviewed by Pavel Feldman.
1666
1667         * inspector/front-end/SourceFrame.js:
1668         (WebInspector.SourceFrame.prototype.commitEditing.didEditContent):
1669         (WebInspector.SourceFrame.prototype.commitEditing):
1670
1671 2011-07-25  Pavel Feldman  <pfeldman@google.com>
1672
1673         Web Inspector: refactor remote object structure to contain value for primitive values.
1674         https://bugs.webkit.org/show_bug.cgi?id=65103
1675
1676         Reviewed by Yury Semikhatsky.
1677
1678         * inspector/InjectedScriptSource.js:
1679         * inspector/Inspector.json:
1680         * inspector/front-end/ConsoleView.js:
1681         (WebInspector.ConsoleView.prototype._format):
1682         (WebInspector.ConsoleView.prototype._formatAsArrayEntry):
1683         (WebInspector.ConsoleMessage.prototype._format):
1684         * inspector/front-end/ElementsTreeOutline.js:
1685         (WebInspector.ElementsTreeElement.prototype._createTooltipForNode.setTooltip):
1686         * inspector/front-end/ObjectPropertiesSection.js:
1687         (WebInspector.ObjectPropertyTreeElement.prototype.update):
1688         * inspector/front-end/PropertiesSidebarPane.js:
1689         (WebInspector.PropertiesSidebarPane.prototype.update.nodePrototypesReady):
1690         * inspector/front-end/RemoteObject.js:
1691         (WebInspector.RemoteObject):
1692         (WebInspector.RemoteObject.fromPrimitiveValue):
1693         (WebInspector.RemoteObject.fromPayload):
1694         (WebInspector.RemoteObject.prototype.get subtype):
1695         (WebInspector.RemoteObject.prototype.callFunction):
1696         (WebInspector.LocalJSONObject.prototype.get type):
1697         (WebInspector.LocalJSONObject.prototype.get subtype):
1698         * inspector/front-end/SourceFrame.js:
1699         (WebInspector.SourceFrame.prototype._showPopup.showObjectPopup):
1700         (WebInspector.SourceFrame.prototype._showPopup):
1701         * inspector/front-end/inspector.js:
1702         (WebInspector.log.logMessage):
1703         (WebInspector.log):
1704         (WebInspector.inspect):
1705
1706 2011-07-25  Mikhail Naganov  <mnaganov@chromium.org>
1707
1708         Web Inspector: [Chromium] Fix mixing of retaining path in heap profiler.
1709         https://bugs.webkit.org/show_bug.cgi?id=65028
1710
1711         Reviewed by Pavel Feldman.
1712
1713         * inspector/front-end/DetailedHeapshotView.js:
1714         (WebInspector.HeapSnapshotPathFinderState): Added
1715         (WebInspector.HeapSnapshotRetainingPathsList): Extracted State-specific code
1716
1717 2011-07-25  Yury Semikhatsky  <yurys@chromium.org>
1718
1719         Web Inspector: worker inspector should show Scripts panel by default
1720         https://bugs.webkit.org/show_bug.cgi?id=65099
1721
1722         Reviewed by Pavel Feldman.
1723
1724         * inspector/front-end/inspector.js:
1725         (WebInspector._defaultPanelName):
1726         (WebInspector.showPanel):
1727
1728 2011-07-24  Luke Macpherson   <macpherson@chromium.org>
1729
1730         Small cleanup of m_fontDirty tracking in CSSStyleSelector
1731         https://bugs.webkit.org/show_bug.cgi?id=65090
1732
1733         Reviewed by Darin Adler.
1734
1735         1) Use existing setFontDescription helper where appropriate.
1736         2) Move always used m_fontDirty check into updateFont()
1737
1738         No new tests / cleanup only.
1739
1740         * css/CSSStyleSelector.cpp:
1741         (WebCore::CSSStyleSelector::styleForElement):
1742         (WebCore::CSSStyleSelector::styleForKeyframe):
1743         (WebCore::CSSStyleSelector::pseudoStyleForElement):
1744         (WebCore::CSSStyleSelector::styleForPage):
1745         (WebCore::CSSStyleSelector::updateFontIfDirty):
1746         (WebCore::CSSStyleSelector::applyProperty):
1747         * css/CSSStyleSelector.h:
1748
1749 2011-07-24  Kent Tamura  <tkent@chromium.org>
1750
1751         Validation message bubble position is incorrect if the containing block has paddings.
1752         https://bugs.webkit.org/show_bug.cgi?id=65091
1753
1754         Reviewed by Hajime Morita.
1755
1756         * html/ValidationMessage.cpp:
1757         (WebCore::adjustBubblePosition):
1758         We don't need to subtract paddings because the origin of
1759         position:aboslute is inside borders and outside of the padding.
1760
1761 2011-07-24  Rob Buis  <rbuis@rim.com>
1762
1763         Crash in SVGUseElement::updateContainerOffsets on <use> with no parent
1764         https://bugs.webkit.org/show_bug.cgi?id=63646
1765
1766         Reviewed by Darin Adler.
1767
1768         Prevent using invalid targetElementInstance->shadowTreeElement after shadow render tree recreation. This situation can
1769         only occur when there was a valid shadowTreeElement before setting xlink:href to empty/invalid.
1770
1771         Test: svg/custom/use-shadow-root-parent-removal.svg
1772
1773         * svg/SVGUseElement.cpp:
1774         (WebCore::SVGUseElement::svgAttributeChanged):
1775
1776 2011-07-24  Patrick Gansterer  <paroga@webkit.org>
1777
1778         Fix AtomicString vs. String usage in JSC binding
1779         https://bugs.webkit.org/show_bug.cgi?id=65085
1780
1781         Reviewed by Darin Adler.
1782
1783         Use ustringToAtomicString instead of ustringToString where appropriate.
1784
1785         * bindings/js/JSHTMLAllCollectionCustom.cpp:
1786         * bindings/js/JSHTMLCollectionCustom.cpp:
1787
1788 2011-07-24  Luke Macpherson   <macpherson@chromium.org>
1789
1790         Implement CSSPropertyOutlineOffset in CSSStyleApplyProperty.
1791         https://bugs.webkit.org/show_bug.cgi?id=64773
1792
1793         Reviewed by Dimitri Glazkov.
1794
1795         No new tests / refactoring only.
1796
1797         * css/CSSStyleApplyProperty.cpp:
1798         (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
1799         * css/CSSStyleSelector.cpp:
1800         (WebCore::CSSStyleSelector::applyProperty):
1801
1802 2011-07-24  Rob Buis  <rbuis@rim.com>
1803
1804         SVG <use> element is not repositioned when moved to x=0 y=0 through script 
1805         https://bugs.webkit.org/show_bug.cgi?id=53767
1806
1807         Reviewed by Nikolas Zimmermann.
1808
1809         Only bail out on zero offset if it is not explicitly set.
1810
1811         Test: svg/custom/use-move-to-offset.svg
1812
1813         * rendering/svg/RenderSVGTransformableContainer.cpp:
1814         (WebCore::RenderSVGTransformableContainer::calculateLocalTransform):
1815         * rendering/svg/SVGShadowTreeElements.cpp:
1816         (WebCore::SVGShadowTreeContainerElement::SVGShadowTreeContainerElement):
1817         (WebCore::SVGShadowTreeContainerElement::setContainerOffset):
1818         * rendering/svg/SVGShadowTreeElements.h:
1819         (WebCore::SVGShadowTreeContainerElement::containerOffsetChanged):
1820         (WebCore::SVGShadowTreeContainerElement::setContainerOffsetChanged):
1821
1822 2011-07-24  Jeffrey Pfau  <jpfau@apple.com>
1823
1824         Refactor HTML tokenizer code in preparation for a new XML tokenizer
1825         https://bugs.webkit.org/show_bug.cgi?id=65000
1826
1827         Reviewed by Adam Barth.
1828
1829         * GNUmakefile.list.am:
1830         * WebCore.gypi:
1831         * WebCore.pro:
1832         * WebCore.vcproj/WebCore.vcproj:
1833         * WebCore.xcodeproj/project.pbxproj:
1834         * html/parser/HTMLDocumentParser.cpp:
1835         (WebCore::HTMLNames::tokenizerStateForContextElement):
1836         (WebCore::HTMLDocumentParser::pumpTokenizer):
1837         * html/parser/HTMLTokenizer.cpp:
1838         (WebCore::HTMLNames::isEndTagBufferingState):
1839         (WebCore::HTMLTokenizer::HTMLTokenizer):
1840         (WebCore::::shouldSkipNullCharacters):
1841         (WebCore::HTMLTokenizer::reset):
1842         (WebCore::HTMLTokenizer::flushEmitAndResumeIn):
1843         (WebCore::HTMLTokenizer::nextToken):
1844         (WebCore::HTMLTokenizer::updateStateFor):
1845         * html/parser/HTMLTokenizer.h:
1846         (WebCore::HTMLTokenizer::emitAndResumeIn):
1847         (WebCore::HTMLTokenizer::emitAndReconsumeIn):
1848         (WebCore::HTMLTokenizer::saveEndTagNameIfNeeded):
1849         * html/parser/HTMLTreeBuilder.cpp:
1850         (WebCore::HTMLTreeBuilder::processStartTagForInBody):
1851         (WebCore::HTMLTreeBuilder::processEndTag):
1852         (WebCore::HTMLTreeBuilder::processGenericRCDATAStartTag):
1853         (WebCore::HTMLTreeBuilder::processGenericRawTextStartTag):
1854         (WebCore::HTMLTreeBuilder::processScriptStartTag):
1855         * html/parser/TextDocumentParser.cpp:
1856         (WebCore::TextDocumentParser::TextDocumentParser):
1857         * html/parser/TextViewSourceParser.cpp:
1858         (WebCore::TextViewSourceParser::TextViewSourceParser):
1859         * xml/parser/MarkupTokenBase.h:
1860         (WebCore::MarkupTokenBase::type):
1861         * xml/parser/MarkupTokenizerBase.h: Added.
1862         (WebCore::MarkupTokenizerBase::~MarkupTokenizerBase):
1863         (WebCore::MarkupTokenizerBase::lineNumber):
1864         (WebCore::MarkupTokenizerBase::columnNumber):
1865         (WebCore::MarkupTokenizerBase::state):
1866         (WebCore::MarkupTokenizerBase::setState):
1867         (WebCore::MarkupTokenizerBase::forceNullCharacterReplacement):
1868         (WebCore::MarkupTokenizerBase::setForceNullCharacterReplacement):
1869         (WebCore::MarkupTokenizerBase::InputStreamPreprocessor::InputStreamPreprocessor):
1870         (WebCore::MarkupTokenizerBase::InputStreamPreprocessor::nextInputCharacter):
1871         (WebCore::MarkupTokenizerBase::InputStreamPreprocessor::peek):
1872         (WebCore::MarkupTokenizerBase::InputStreamPreprocessor::advance):
1873         (WebCore::MarkupTokenizerBase::InputStreamPreprocessor::shouldTreatNullAsEndOfFileMarker):
1874         (WebCore::MarkupTokenizerBase::MarkupTokenizerBase):
1875         (WebCore::MarkupTokenizerBase::bufferCharacter):
1876         (WebCore::MarkupTokenizerBase::emitAndResumeIn):
1877         (WebCore::MarkupTokenizerBase::emitAndReconsumeIn):
1878         (WebCore::MarkupTokenizerBase::emitEndOfFile):
1879         (WebCore::MarkupTokenizerBase::reset):
1880         (WebCore::MarkupTokenizerBase::haveBufferedCharacterToken):
1881         * xml/parser/MarkupTokenizerInlineMethods.h: Added.
1882         (WebCore::isTokenizerWhitespace):
1883         (WebCore::advanceStringAndASSERTIgnoringCase):
1884         (WebCore::advanceStringAndASSERT):
1885
1886 2011-07-23  Patrick Gansterer  <paroga@webkit.org>
1887
1888         Remove WTF namespace from isMainThread() calls
1889         https://bugs.webkit.org/show_bug.cgi?id=65068
1890
1891         Reviewed by Sam Weinig.
1892
1893         Because of the using WTF::isMainThread in the header there is no
1894         reason to include the namespace name when calling this function.
1895
1896         * bindings/js/JSMainThreadExecState.h:
1897         * bindings/v8/DOMDataStore.cpp:
1898         * bindings/v8/V8Binding.cpp:
1899         * bindings/v8/V8DOMMap.cpp:
1900         * bindings/v8/V8DOMWrapper.h:
1901         * page/DOMWindow.cpp:
1902         * page/History.cpp:
1903
1904 2011-07-23  Alok Priyadarshi  <alokp@chromium.org>
1905
1906         Switching off acceleration for small canvas broke gpu tests
1907         https://bugs.webkit.org/show_bug.cgi?id=65053
1908
1909         Reviewed by Stephen White.
1910
1911         No new tests. These are supposed to fix existing canvas tests on gpu.
1912
1913         * html/canvas/CanvasRenderingContext2D.cpp:
1914         (WebCore::shouldAccelerateCanvas):
1915         * page/Settings.cpp:
1916         (WebCore::Settings::Settings):
1917         (WebCore::Settings::setLegacyAccelerated2dCanvasEnabled):
1918         (WebCore::Settings::setMinimumAccelerated2dCanvasSize):
1919         * page/Settings.h:
1920         (WebCore::Settings::minimumAccelerated2dCanvasSize):
1921
1922 2011-07-23  Rob Buis  <rbuis@rim.com>
1923
1924         Freed SVGTRefElement used in SVGStyledElement::buildPendingResourcesIfNeeded
1925         https://bugs.webkit.org/show_bug.cgi?id=64758
1926
1927         Reviewed by Nikolas Zimmermann.
1928
1929         Fix the crash by storing referenced content inside a shadow tree. This way removing child nodes of
1930         the <tref> does not remove the referenced content.
1931
1932         * dom/Text.cpp:
1933         (WebCore::Text::recalcStyle):
1934         * dom/Text.h:
1935         * svg/SVGTRefElement.cpp:
1936         (WebCore::SVGShadowText::create):
1937         (WebCore::SVGShadowText::SVGShadowText):
1938         (WebCore::SVGShadowText::createRenderer):
1939         (WebCore::SVGShadowText::recalcStyle):
1940         (WebCore::SVGTRefElement::updateReferencedText):
1941         (WebCore::SVGTRefElement::childShouldCreateRenderer):
1942
1943 2011-07-23  Shinya Kawanaka  <shinyak@google.com>
1944
1945         Display number field without using a thousand separator.
1946         https://bugs.webkit.org/show_bug.cgi?id=65064
1947
1948         Reviewed by Kent Tamura.
1949
1950         Separated formatters for parsing and displaying.
1951         Removed a test for thousand separator.
1952
1953         * manual-tests/input-number-localization.html:
1954         Removed a test for thousand separator.
1955         Made the test description more specific.
1956         * platform/text/LocalizedNumberICU.cpp:
1957         (WebCore::createFormatterForCurrentLocaleToDisplay):
1958         Added to introduce a formatter for display.
1959         (WebCore::numberFormatterForParsing):
1960         Changed the name to be clear.
1961         (WebCore::numberFormatterForDisplay): Added.
1962         (WebCore::parseLocalizedNumber): Used numberFormatterForParsing.
1963         (WebCore::formatLocalizedNumber): Used numberFormatterForDisplay.
1964         * platform/text/mac/LocalizedNumberMac.mm:
1965         (WebCore::createFormatterForCurrentLocaleForDisplay):
1966         Added to introduce a formatter for display.
1967         (WebCore::numberFormatterForParsing):
1968         Changed the name to be clear.
1969         (WebCore::numberFormatterForDisplay): Added.
1970         (WebCore::parseLocalizedNumber): Used numberFormatterForParsing.
1971         (WebCore::formatLocalizedNumber): Used numberFormatterForDisplay.
1972
1973 2011-07-22  James Robinson  <jamesr@chromium.org>
1974
1975         [chromium] Seperate texture management for contents textures vs render surface textures
1976         https://bugs.webkit.org/show_bug.cgi?id=64771
1977
1978         Reviewed by Kenneth Russell.
1979
1980         Splits the chromium texture management across two TextureManagers, one for contents textures and one for render
1981         surfaces.  The lifetimes and relative evicition costs for these types of textures are significantly different.
1982         Content textures need to be managed from paint time through draw time and evicting them is generally expensive,
1983         since replacing the texture requires doing a software repaint into a buffer, creating a new texture, and
1984         uploading the contents into the texture.  Render surface textures are only used while drawing and never contain
1985         useful contents between frames.  The only reason to preserve a render surface texture between frames is to avoid
1986         having to create the texture on the next frame, they never contain useful contents across frames.
1987
1988         The contents texture limits remain the same.  Render surfaces are allocated the difference between the high
1989         memory bound and the contents texture memory use during a frame and the difference between the low memory bound
1990         and the contents texture memory use between frames.
1991
1992         Covered by existing compositing tests.
1993
1994         * platform/graphics/chromium/LayerRendererChromium.cpp:
1995         (WebCore::LayerRendererChromium::releaseTextures):
1996         (WebCore::LayerRendererChromium::drawLayers):
1997         (WebCore::LayerRendererChromium::updateLayers):
1998         (WebCore::LayerRendererChromium::initializeSharedObjects):
1999         (WebCore::LayerRendererChromium::cleanupSharedObjects):
2000         * platform/graphics/chromium/LayerRendererChromium.h:
2001         (WebCore::LayerRendererChromium::contentsTextureManager):
2002         (WebCore::LayerRendererChromium::renderSurfaceTextureManager):
2003         * platform/graphics/chromium/LayerTilerChromium.cpp:
2004         (WebCore::LayerTilerChromium::createTile):
2005         * platform/graphics/chromium/RenderSurfaceChromium.cpp:
2006         (WebCore::RenderSurfaceChromium::prepareContentsTexture):
2007         * platform/graphics/chromium/TextureManager.cpp:
2008         (WebCore::TextureManager::TextureManager):
2009         (WebCore::TextureManager::setMemoryLimitBytes):
2010         (WebCore::TextureManager::requestTexture):
2011         * platform/graphics/chromium/TextureManager.h:
2012         (WebCore::TextureManager::create):
2013         (WebCore::TextureManager::currentMemoryUseBytes):
2014         * platform/graphics/chromium/cc/CCHeadsUpDisplay.cpp:
2015         (WebCore::CCHeadsUpDisplay::draw):
2016
2017 2011-07-22  Simon Fraser  <simon.fraser@apple.com>
2018
2019         Avoiding painting backgrounds if they are fully obscures by an object's foreground
2020         https://bugs.webkit.org/show_bug.cgi?id=65030
2021
2022         Reviewed by Dan Bernstein.
2023
2024         Some pages use animated loading GIFs as the background of <img>,
2025         but WebKit keeps animating these after the <img> has loaded.
2026         
2027         Thwart this by avoiding the painting of such backgrounds, if we can
2028         determine that they are completely obscured by the border and content
2029         of the element.
2030
2031         * platform/graphics/BitmapImage.h:
2032         (WebCore::BitmapImage::currentFrameHasAlpha): Utility method, since currentFrame()
2033         is protected.
2034         * rendering/RenderBox.cpp:
2035         (WebCore::RenderBox::paintBoxDecorations): Call paintBackground().
2036         (WebCore::RenderBox::paintBackground): New wrapper for the paintFillLayers() which
2037         paints the background layers, plus some code we call in a couple of places. This
2038         checks the new backgroundIsObscured() method before doing any painting.
2039         * rendering/RenderBox.h:
2040         (WebCore::RenderBox::backgroundIsObscured): New virtual method that determines
2041         whether any of the background is visible.
2042         * rendering/RenderBoxModelObject.h:
2043         * rendering/RenderBoxModelObject.cpp:
2044         (WebCore::BorderEdge::obscuresBackground): Returns true if this edge will
2045         entirely hide the background under it.
2046         (WebCore::RenderBoxModelObject::borderObscuresBackground): Determine whether
2047         the border hides the background.
2048         * rendering/RenderImage.cpp:
2049         (WebCore::RenderImage::backgroundIsObscured): Override the RenderBox method
2050         and return true if the image is a loaded, opaque bitmap image, and the background
2051         won't show in the border or padding areas.
2052         * rendering/RenderImage.h:
2053         * rendering/RenderTable.cpp:
2054         (WebCore::RenderTable::paintBoxDecorations): Use paintBackground().
2055
2056 2011-07-22  Kenneth Russell  <kbr@google.com>
2057
2058         HTMLImageElement::crossOrigin is hard to use because of caching
2059         https://bugs.webkit.org/show_bug.cgi?id=64813
2060
2061         Reviewed by Adam Barth.
2062
2063         Reload the resource if the allowCredentials flag doesn't match that in the request.
2064
2065         Test: http/tests/security/canvas-remote-read-remote-image-blocked-then-allowed.html
2066
2067         * loader/cache/CachedResourceLoader.cpp:
2068         (WebCore::CachedResourceLoader::requestResource):
2069         (WebCore::CachedResourceLoader::determineRevalidationPolicy):
2070         * loader/cache/CachedResourceLoader.h:
2071
2072 2011-07-22  Simon Fraser  <simon.fraser@apple.com>
2073
2074         Need to update the acceleratesDrawing status on a layer when switching to/from tiled layers
2075         https://bugs.webkit.org/show_bug.cgi?id=65057
2076
2077         Reviewed by Joseph Pecoraro.
2078
2079         When switching to or from tiled layers, we need to update the new layer's
2080         acceleratesDrawing status.
2081
2082         * platform/graphics/ca/GraphicsLayerCA.cpp:
2083         (WebCore::GraphicsLayerCA::swapFromOrToTiledLayer):
2084
2085 2011-07-22  Mark Pilgrim  <pilgrim@chromium.org>
2086
2087         Add [Optional=CallWithDefaultValues] flag and use it in initXXXEvent declarations
2088         https://bugs.webkit.org/show_bug.cgi?id=64973
2089
2090         Reviewed by Adam Barth.
2091
2092         We are doing away with the interface-level LegacyDefaultOptionalArguments
2093         flag. To handle some cases of the old behavior, we need to define a new
2094         (argument-level) flag so that functions can define optional arguments
2095         but not have to declare every single combination of arguments in C++.
2096         The old code generator handled this by calling a single C++ function
2097         with all arguments, but with default values for the "optional" arguments.
2098         Thus, this patch invents a new argument-level flag called
2099         [Optional=CallWithDefaultValue] that emulates the old behavior.
2100
2101         This patch also fixes all the initXXXEvent declarations to remove the
2102         LegacyDefaultOptionalArguments flag and use the new
2103         [Optional=CallWithDefaultValue] flag only on the specific arguments that
2104         require it for backward compatibility.
2105
2106         No new tests, all existing tests pass.
2107
2108         * bindings/scripts/CodeGeneratorJS.pm:
2109         (GenerateImplementation):
2110         * bindings/scripts/CodeGeneratorV8.pm:
2111         (GenerateFunctionCallback):
2112         * dom/BeforeLoadEvent.idl:
2113         * dom/BeforeProcessEvent.idl:
2114         * dom/CompositionEvent.idl:
2115         * dom/CustomEvent.idl:
2116         * dom/DeviceMotionEvent.idl:
2117         * dom/DeviceOrientationEvent.idl:
2118         * dom/ErrorEvent.idl:
2119         * dom/Event.idl:
2120         * dom/HashChangeEvent.idl:
2121         * dom/KeyboardEvent.idl:
2122         * dom/MessageEvent.idl:
2123         * dom/MouseEvent.idl:
2124         * dom/MutationEvent.idl:
2125         * dom/OverflowEvent.idl:
2126         * dom/PageTransitionEvent.idl:
2127         * dom/PopStateEvent.idl:
2128         * dom/ProgressEvent.idl:
2129         * dom/StreamEvent.idl:
2130         * dom/TextEvent.idl:
2131         * dom/TouchEvent.idl:
2132         * dom/UIEvent.idl:
2133         * dom/WebKitAnimationEvent.idl:
2134         * dom/WebKitTransitionEvent.idl:
2135         * dom/WheelEvent.idl:
2136         * html/canvas/WebGLContextEvent.idl:
2137         * storage/StorageEvent.idl:
2138         * websockets/CloseEvent.idl:
2139
2140 2011-07-22  Jessie Berlin  <jberlin@apple.com>
2141
2142         [WebKit2] Changing the cookie accept policy in Private Browsing doesn’t work
2143         https://bugs.webkit.org/show_bug.cgi?id=64997
2144
2145         Reviewed by Ada Chan.
2146
2147         * WebCore.exp.in:
2148         * platform/mac/WebCoreSystemInterface.h:
2149         * platform/mac/WebCoreSystemInterface.mm:
2150
2151 2011-07-22  Sergey Glazunov  <serg.glazunov@gmail.com>
2152
2153         Perform the JavaScript navigation check on a complete URL
2154         https://bugs.webkit.org/show_bug.cgi?id=65038
2155
2156         Reviewed by Adam Barth.
2157
2158         Test: http/tests/security/xss-DENIED-document-baseURI-javascript.html
2159
2160         * page/DOMWindow.cpp:
2161         (WebCore::DOMWindow::setLocation):
2162         (WebCore::DOMWindow::createWindow):
2163         (WebCore::DOMWindow::open):
2164
2165 2011-07-22  Ryosuke Niwa  <rniwa@webkit.org>
2166
2167         Revert r91595 for it broke Chromium Windows build.
2168
2169         * WebCore.gyp/WebCore.gyp:
2170         * WebCore.gypi:
2171
2172 2011-07-22  Mihnea Ovidenie  <mihnea@adobe.com>
2173
2174         BORDER attribute with the IMG tag, using percentage values not working.
2175         https://bugs.webkit.org/show_bug.cgi?id=20226
2176
2177         Reviewed by Simon Fraser.
2178
2179         When border presentational attribute of image element has % in it, it should be parsed using
2180         HTML parser rules. In this case, the algorithm is the one used described in:
2181         http://www.whatwg.org/specs/web-apps/current-work/#rules-for-parsing-non-negative-integers
2182
2183         * html/HTMLImageElement.cpp:
2184         (WebCore::parseBorderWidthAttribute):
2185         (WebCore::HTMLImageElement::parseMappedAttribute):
2186         * html/parser/HTMLParserIdioms.cpp:
2187         (WebCore::parseHTMLNonNegativeInteger):
2188         * html/parser/HTMLParserIdioms.h:
2189
2190 2011-07-22  Scott Graham  <scottmg@chromium.org>
2191
2192         DocumentLoader keeps a reference to all URL strings ever loaded in m_resourcesClientKnowsAbout leading to lots of memory waste
2193         https://bugs.webkit.org/show_bug.cgi?id=61894
2194
2195         Reviewed by James Robinson.
2196
2197         DocumentLoader::m_resourcesClientKnowsAbout is a set of all the URLs
2198         that have passed through FrameLoader::dispatchWillSendRequest() and is
2199         used by FrameLoader::loadedResourceFromMemoryCached to decide whether
2200         to inform the FrameLoader's m_client about this load.  Unfortunately,
2201         this set holds a reference to the URL string for every resource
2202         loaded, so on pages that use data URLs to "load" large amounts of data
2203         this leaks lots of memory. The cache improves performance going through
2204         FrameLoader::loadResourceFromMemoryCache, so rather than removing it,
2205         simply exclude 'data:' urls from the cache to save the majority of
2206         memory that is held for too long.
2207
2208         * loader/DocumentLoader.h:
2209         (WebCore::DocumentLoader::didTellClientAboutLoad):
2210
2211 2011-07-22  Alok Priyadarshi  <alokp@chromium.org>
2212
2213         Use software rendering for small canvas
2214         https://bugs.webkit.org/show_bug.cgi?id=64958
2215
2216         Reviewed by Stephen White.
2217
2218         No new tests. Does not affect rendering output, just canvas backing.
2219         If there is a regression, they should be caught by existing canvas tests.
2220
2221         * html/HTMLCanvasElement.cpp:
2222         (WebCore::HTMLCanvasElement::reset):
2223         * html/canvas/CanvasRenderingContext2D.cpp:
2224         (WebCore::shouldAccelerateCanvas):
2225         (WebCore::CanvasRenderingContext2D::CanvasRenderingContext2D):
2226         (WebCore::CanvasRenderingContext2D::reset):
2227         (WebCore::CanvasRenderingContext2D::platformLayer):
2228         (WebCore::CanvasRenderingContext2D::clearAcceleration):
2229         (WebCore::CanvasRenderingContext2D::resetAcceleration):
2230         * html/canvas/CanvasRenderingContext2D.h:
2231
2232 2011-07-21  Adrienne Walker  <enne@google.com>
2233
2234         Fix repainting of composited fixed position elements in iframes
2235         https://bugs.webkit.org/show_bug.cgi?id=64010
2236
2237         Reviewed by Simon Fraser.
2238
2239         In cases where an iframe's contents have their own graphics layer, the
2240         invalidation during scrolling was being sent to the wrong render
2241         layer. Fixed by checking if such a layer exists and routing scrolling
2242         invalidations there first.
2243
2244         * page/FrameView.cpp:
2245         (WebCore::FrameView::scrollContentsSlowPath):
2246
2247 2011-07-22  Viet-Trung Luu  <viettrungluu@chromium.org>
2248
2249         Improve (i.e., speed up) .gyp(i) files for Chromium
2250         https://bugs.webkit.org/show_bug.cgi?id=65032
2251
2252         Reviewed by Adam Barth.
2253
2254         Begin splitting off webcore_(privateheader_)files into separate lists
2255         (dom/html/svg in this patch), to avoid the very slow pattern of
2256         excluding all files and then filtering to include selected files.
2257
2258         Test by building (in all supported configurations).
2259
2260         * WebCore.gyp/WebCore.gyp:
2261         * WebCore.gypi:
2262
2263 2011-07-22  Tony Chang  <tony@chromium.org>
2264
2265         add placeholder RenderFlexibleBox.cpp files
2266         https://bugs.webkit.org/show_bug.cgi?id=64982
2267
2268         Reviewed by Ojan Vafai.
2269
2270         No new tests, just adding new files and making sure it compiles.
2271         Also adding the isFlexibleBox identifier to RenderObject.
2272
2273         * CMakeLists.txt:
2274         * GNUmakefile.list.am:
2275         * WebCore.gypi:
2276         * WebCore.pro:
2277         * WebCore.vcproj/WebCore.vcproj:
2278         * WebCore.xcodeproj/project.pbxproj:
2279         * rendering/RenderFlexibleBox.cpp: Added.
2280         (WebCore::RenderFlexibleBox::RenderFlexibleBox): Inherit from RenderBlock like the old flexbox.
2281         (WebCore::RenderFlexibleBox::~RenderFlexibleBox):
2282         (WebCore::RenderFlexibleBox::renderName):
2283         (WebCore::RenderFlexibleBox::layoutBlock):
2284         * rendering/RenderFlexibleBox.h: Added.
2285         (WebCore::RenderFlexibleBox::isFlexibleBox):
2286         * rendering/RenderObject.h:
2287         (WebCore::RenderObject::isFlexibleBox):
2288
2289 2011-07-22  James Robinson  <jamesr@chromium.org>
2290
2291         [chromium] Force slow scrolling path for non-composited frames in a composited page
2292         https://bugs.webkit.org/show_bug.cgi?id=64991
2293
2294         Reviewed by Darin Fisher.
2295
2296         The chromium compositor does not properly handle fast path scrolls for non-composited iframe in a composited
2297         page.
2298
2299         * page/FrameView.cpp:
2300         (WebCore::FrameView::useSlowRepaints):
2301
2302 2011-07-22  Andrew Scherkus  <scherkus@chromium.org>
2303
2304         Remove surfaceType() and texture() methods from Chromium video frame classes.
2305         https://bugs.webkit.org/show_bug.cgi?id=64818
2306
2307         Reviewed by Kenneth Russell.
2308
2309         No tests as code was never being executed.
2310
2311         * platform/graphics/chromium/VideoFrameChromium.h:
2312         * platform/graphics/chromium/VideoLayerChromium.cpp:
2313         (WebCore::VideoLayerChromium::updateCompositorResources):
2314         * platform/graphics/chromium/VideoLayerChromium.h:
2315
2316 2011-07-22  Nate Chapin  <japhet@chromium.org>
2317
2318         Don't treat child frame loads as back-forward navigations
2319         after the load event fires. This can lead to loading
2320         the wrong url in the child frame.
2321         https://bugs.webkit.org/show_bug.cgi?id=64895
2322
2323         Reviewed by Mihai Parparita.
2324
2325         Test: fast/loader/child-frame-add-after-back-forward.html
2326
2327         * dom/Document.h: Drive-by FIXME.
2328         * loader/DocumentLoader.h: Drive-by FIXME.
2329         * loader/FrameLoader.cpp:
2330         (WebCore::FrameLoader::loadURLIntoChildFrame):
2331
2332 2011-07-22  Kent Tamura  <tkent@google.com>
2333
2334         REGRESSION(r88757): The thumb of a vertical range slider is offset to the right on non-Mac.
2335         https://bugs.webkit.org/show_bug.cgi?id=65011
2336
2337         Reviewed by Dimitri Glazkov.
2338
2339         We need to update the apeearance of thumbs before the layout of RenderSlider.
2340
2341         * html/shadow/SliderThumbElement.cpp:
2342         (WebCore::RenderSliderThumb::updateAppearance):
2343         Added. This function adjsuts the apparance of a thumb for the appearance of an <input>.
2344         (WebCore::RenderSliderThumb::isSliderThumb):
2345         Added.  Returns true.
2346         (WebCore::RenderSliderThumb::layout):
2347         Remove the appearance adjustment code. It is unnecessary because it is
2348         done in RenderSlider::layout().
2349         (WebCore::trackLimiterElementOf): Added.
2350         * html/shadow/SliderThumbElement.h: Move RenderSliderThumb from SliderThumbElement.cpp.
2351         * rendering/RenderObject.h:
2352         (WebCore::RenderObject::isSliderThumb): Added. Returns false.
2353         * rendering/RenderSlider.cpp:
2354         (WebCore::RenderSlider::layout):
2355         If the renderers for the thumb element and the limiter element is
2356         RenderSliderThumb, updates its appearance.
2357
2358 2011-07-22  Kent Tamura  <tkent@chromium.org>
2359
2360         Validation message bubble is incorrectly positioned in a relative body.
2361         https://bugs.webkit.org/show_bug.cgi?id=65018
2362
2363         Reviewed by Dimitri Glazkov.
2364
2365         We use position:aboslute for validation message bubbles, and the
2366         origin of the absolute position can be not only the page, but also
2367         an ancestor block with non-static position.
2368
2369         Test: fast/forms/validation-message-in-relative-body.html
2370
2371         * html/ValidationMessage.cpp:
2372         (WebCore::adjustBubblePosition):
2373         Subtract the containing block position from the host position.
2374         (WebCore::ValidationMessage::buildBubbleTree):
2375         Change the order of appendChild() and adjustBubblePosition() in
2376         order to use RenderObject::containingBlock() in
2377         adjustbubbleposition().
2378
2379 2011-07-22  David Grogan  <dgrogan@chromium.org>
2380
2381         Fix crash in IDBRequest::abort
2382         https://bugs.webkit.org/show_bug.cgi?id=64740
2383
2384         Reviewed by Nate Chapin.
2385
2386         Tested manually with the testcase in the bug.
2387
2388         * storage/IDBRequest.cpp:
2389         (WebCore::IDBRequest::~IDBRequest):
2390         (WebCore::IDBRequest::abort):
2391
2392 2011-07-22  Patrick Gansterer  <paroga@webkit.org>
2393
2394         Replace preprocessor statements in IDL files with Conditional attribute
2395         https://bugs.webkit.org/show_bug.cgi?id=64961
2396
2397         Reviewed by Darin Adler.
2398
2399         Replaced ENABLE_DATALIST, ENABLE_DIRECTORY_UPLOAD, ENABLE_INPUT_SPEECH, ENABLE_MEDIA_STATISTICS
2400         and ENABLE_ORIENTATION_EVENTS with the corresponding Conditional attribute.
2401
2402         * html/HTMLBodyElement.idl:
2403         * html/HTMLFrameSetElement.idl:
2404         * html/HTMLInputElement.idl:
2405         * html/HTMLMediaElement.idl:
2406         * html/HTMLVideoElement.idl:
2407
2408 2011-07-22  Andrey Kosyakov  <caseq@chromium.org>
2409
2410         Web Inspector: [Extensions API] add webInspector.resources.onContentEdited
2411         https://bugs.webkit.org/show_bug.cgi?id=65024
2412
2413         Reviewed by Pavel Feldman.
2414
2415         * inspector/front-end/ExtensionAPI.js:
2416         (WebInspector.injectedExtensionAPI):
2417         * inspector/front-end/ExtensionServer.js:
2418         (WebInspector.ExtensionServer.prototype.notifyResourceContentEdited):
2419         * inspector/front-end/Resource.js:
2420         (WebInspector.Resource.prototype.addRevision):
2421
2422 2011-07-22  Pavel Podivilov  <podivilov@chromium.org>
2423
2424         Web Inspector: fix exception when paused in internal script.
2425         https://bugs.webkit.org/show_bug.cgi?id=64995
2426
2427         Reviewed by Yury Semikhatsky.
2428
2429         Test: inspector/debugger/pause-in-internal-script.html
2430
2431         * inspector/front-end/DebuggerPresentationModel.js:
2432         (WebInspector.PresenationCallFrame.prototype.sourceLine):
2433
2434 2011-07-22  Ilya Tikhonovsky  <loislo@chromium.org>
2435
2436         Web Inspector: sometimes ReceiveResponse event is attached to wrong parent.
2437         https://bugs.webkit.org/show_bug.cgi?id=65016
2438
2439         Reviewed by Yury Semikhatsky.
2440
2441         Test: inspector/timeline/timeline-receive-response-event.html
2442
2443         * inspector/InspectorTimelineAgent.cpp:
2444         (WebCore::InspectorTimelineAgent::didInstallTimer):
2445         (WebCore::InspectorTimelineAgent::didRemoveTimer):
2446         (WebCore::InspectorTimelineAgent::didScheduleResourceRequest):
2447         (WebCore::InspectorTimelineAgent::didFinishLoadingResource):
2448         (WebCore::InspectorTimelineAgent::didTimeStamp):
2449         (WebCore::InspectorTimelineAgent::didMarkDOMContentEvent):
2450         (WebCore::InspectorTimelineAgent::didMarkLoadEvent):
2451         (WebCore::InspectorTimelineAgent::appendRecord):
2452         * inspector/InspectorTimelineAgent.h:
2453         * inspector/front-end/TimelinePanel.js:
2454         (WebInspector.TimelinePanel.prototype._innerAddRecordToTimeline):
2455
2456 2011-07-22  Kentaro Hara  <haraken@google.com>
2457
2458         REGRESSION(r89535): Form reset does not repaint a file upload control.
2459         https://bugs.webkit.org/show_bug.cgi?id=65008
2460
2461         Reviewed by Kent Tamura.
2462
2463         This patch fixes the code so that the file upload control is repainted
2464         in updateFromElement() if no files are selected.
2465
2466         Tests: fast/forms/file-input-reset.html
2467
2468         * rendering/RenderFileUploadControl.cpp:
2469         (WebCore::RenderFileUploadControl::updateFromElement): Calls repaint() if no files are selected.
2470
2471 2011-07-22  Ilya Tikhonovsky  <loislo@chromium.org>
2472
2473         Web Inspector: the max depth of the Timeline events' stack trace should be customizable.
2474         https://bugs.webkit.org/show_bug.cgi?id=65023
2475
2476         Reviewed by Yury Semikhatsky.
2477
2478         * inspector/Inspector.json:
2479         * inspector/InspectorController.cpp:
2480         (WebCore::InspectorController::startTimelineProfiler):
2481         * inspector/InspectorTimelineAgent.cpp:
2482         (WebCore::InspectorTimelineAgent::pushGCEventRecords):
2483         (WebCore::InspectorTimelineAgent::restore):
2484         (WebCore::InspectorTimelineAgent::start):
2485         (WebCore::InspectorTimelineAgent::didInstallTimer):
2486         (WebCore::InspectorTimelineAgent::didRemoveTimer):
2487         (WebCore::InspectorTimelineAgent::didScheduleResourceRequest):
2488         (WebCore::InspectorTimelineAgent::willSendResourceRequest):
2489         (WebCore::InspectorTimelineAgent::didFinishLoadingResource):
2490         (WebCore::InspectorTimelineAgent::didTimeStamp):
2491         (WebCore::InspectorTimelineAgent::didMarkDOMContentEvent):
2492         (WebCore::InspectorTimelineAgent::didMarkLoadEvent):
2493         (WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
2494         (WebCore::InspectorTimelineAgent::pushCurrentRecord):
2495         * inspector/InspectorTimelineAgent.h:
2496         * inspector/TimelineRecordFactory.cpp:
2497         (WebCore::TimelineRecordFactory::createGenericRecord):
2498         * inspector/TimelineRecordFactory.h:
2499         * inspector/front-end/TimelineManager.js:
2500         (WebInspector.TimelineManager.prototype.start):
2501
2502 2011-07-22  Sheriff Bot  <webkit.review.bot@gmail.com>
2503
2504         Unreviewed, rolling out r91024.
2505         http://trac.webkit.org/changeset/91024
2506         https://bugs.webkit.org/show_bug.cgi?id=65017
2507
2508         number of problems happened with invisible elements which grab
2509         pointer events. (Requested by loislo on #webkit).
2510
2511         * inspector/front-end/inspector.css:
2512         (.panel):
2513         (.panel.visible):
2514
2515 2011-07-22  Jia Pu  <jpu@apple.com>
2516
2517         Reviewed by Darin Adler.
2518
2519         [Mac] Need to make sure autocorrection panel is dismissed in Document::setFocusNode().
2520         https://bugs.webkit.org/show_bug.cgi?id=64824
2521         <rdar://problem/9624232>
2522
2523         * editing/Editor.cpp:
2524         (WebCore::Editor::textFieldDidEndEditing): Dismiss autocorrection panel when current node losing focus.
2525
2526 2011-07-21  Kent Tamura  <tkent@chromium.org>
2527
2528         A trivial fix for r91550.
2529         https://bugs.webkit.org/show_bug.cgi?id=65001
2530
2531         Need to update placeholder visibility when the owner elemnent style is changed.
2532
2533         * html/HTMLTextFormControlElement.h: Make updatePlaceholderVisibility() public.
2534         * rendering/RenderTextControl.cpp:
2535         (WebCore::RenderTextControl::styleDidChange):
2536         Call updatePlaceholderVisibility().
2537
2538 2011-07-21  Pratik Solanki  <psolanki@apple.com>
2539
2540         https://bugs.webkit.org/show_bug.cgi?id=65002
2541         Get authentication to work with USE(CFNETWORK) on Mac
2542
2543         Reviewed by David Kilzer.
2544
2545         Instead of creating a new CFURLAuthChallengeRef, we save and reuse the same object as the
2546         one given to us by CFNetwork.
2547
2548         * platform/network/mac/AuthenticationMac.mm:
2549         (-[WebCoreAuthenticationClientAsChallengeSender setCFChallenge:]): Accessor methods for the
2550         new CFURLAuthChallengeRef ivar.
2551         (-[WebCoreAuthenticationClientAsChallengeSender cfChallenge]):
2552         (WebCore::core): Create AuthenticationChallenge using the saved CFURLAuthChallengeRef.
2553         (WebCore::mac): Use the CFURLAuthChallengeRef object in AuthenticationChallenge instead of
2554         creating a new one.
2555
2556 2011-07-21  Kent Tamura  <tkent@chromium.org>
2557
2558         REGRESSION(r90971): Placeholder and search cancel button are visible even in elements with visibility:hidden.
2559         https://bugs.webkit.org/show_bug.cgi?id=65001
2560
2561         Reviewed by Dimitri Glazkov.
2562
2563         Tests: fast/forms/placeholder-in-invisible-elements.html
2564                fast/forms/search-cancel-in-invisible-elements.html
2565
2566         * html/HTMLTextFormControlElement.cpp:
2567         (WebCore::HTMLTextFormControlElement::placeholderShouldBeVisible):
2568         Don't show the placeholder if the 'visibility' property of the owner element is 'hidden.'
2569         * rendering/RenderTextControlSingleLine.cpp:
2570         (WebCore::RenderTextControlSingleLine::visibilityForCancelButton): ditto.
2571
2572 2011-07-21  Shinya Kawanaka  <shinyak@google.com>
2573
2574         The input[type="number"] with step="any" should not suffer from step mismatch.
2575         https://bugs.webkit.org/show_bug.cgi?id=64858
2576
2577         Reviewed by Kent Tamura.
2578
2579         Added check step="any" not to suffer from step mismatch.
2580
2581         * html/HTMLInputElement.cpp:
2582         (WebCore::HTMLInputElement::applyStep): Added check step="any".
2583         (WebCore::HTMLInputElement::alignValueForStep): Added.
2584
2585 2011-07-21  MORITA Hajime  <morrita@google.com>
2586
2587         [Refactoring] ShadowContentSelector should be ShadowInclusionSelector
2588         https://bugs.webkit.org/show_bug.cgi?id=64850
2589
2590         Reviewed by Dimitri Glazkov.
2591
2592         Renamed:
2593         - ShadowContentSelector -> ShadowInclusionSelector
2594         - ShadowContentSelector::findInclusionFor -> ShadowInclusionSelector::findFor
2595         - ShadowContentSelector::selectInclusion -> ShadowInclusionSelector::select
2596         - ShadowContentSelector::unselectInclusion -> ShadowInclusionSelector::unselect
2597         - ShadowContentSelector::didSelectInclusion -> ShadowInclusionSelector::didSelect
2598         - ShadowContentSelector::willSelectInclusionOver -> ShadowInclusionSelector::willSelectOver
2599         - ShadowContentSelector::hasChildren -> ShadowInclusionSelector::hasCandidates
2600         
2601         No new tests. Just a textual change.
2602
2603         * CMakeLists.txt:
2604         * GNUmakefile.list.am:
2605         * WebCore.gypi:
2606         * WebCore.pro:
2607         * WebCore.vcproj/WebCore.vcproj:
2608         * WebCore.xcodeproj/project.pbxproj:
2609         * dom/DOMAllInOne.cpp:
2610         * dom/NodeRenderingContext.cpp:
2611         * dom/ShadowContentElement.cpp:
2612         (WebCore::ShadowContentElement::attach):
2613         (WebCore::ShadowContentElement::detach):
2614         * dom/ShadowInclusionSelector.cpp: Renamed from Source/WebCore/dom/ShadowContentSelector.cpp.
2615         (WebCore::ShadowInclusion::append):
2616         (WebCore::ShadowInclusion::unlink):
2617         (WebCore::ShadowInclusionList::ShadowInclusionList):
2618         (WebCore::ShadowInclusionList::~ShadowInclusionList):
2619         (WebCore::ShadowInclusionList::find):
2620         (WebCore::ShadowInclusionList::clear):
2621         (WebCore::ShadowInclusionList::append):
2622         (WebCore::ShadowInclusionSelector::ShadowInclusionSelector):
2623         (WebCore::ShadowInclusionSelector::~ShadowInclusionSelector):
2624         (WebCore::ShadowInclusionSelector::select):
2625         (WebCore::ShadowInclusionSelector::unselect):
2626         (WebCore::ShadowInclusionSelector::findFor):
2627         (WebCore::ShadowInclusionSelector::didSelect):
2628         (WebCore::ShadowInclusionSelector::willSelectOver):
2629         * dom/ShadowInclusionSelector.h: Renamed from Source/WebCore/dom/ShadowContentSelector.h.
2630         (WebCore::ShadowInclusion::includer):
2631         (WebCore::ShadowInclusion::content):
2632         (WebCore::ShadowInclusion::next):
2633         (WebCore::ShadowInclusion::previous):
2634         (WebCore::ShadowInclusion::ShadowInclusion):
2635         (WebCore::ShadowInclusion::create):
2636         (WebCore::ShadowInclusionList::first):
2637         (WebCore::ShadowInclusionList::last):
2638         (WebCore::ShadowInclusionList::isEmpty):
2639         (WebCore::ShadowInclusionSet::add):
2640         (WebCore::ShadowInclusionSet::remove):
2641         (WebCore::ShadowInclusionSet::isEmpty):
2642         (WebCore::ShadowInclusionSet::Translator::hash):
2643         (WebCore::ShadowInclusionSet::Translator::equal):
2644         (WebCore::ShadowInclusionSet::Hash::hash):
2645         (WebCore::ShadowInclusionSet::Hash::equal):
2646         (WebCore::ShadowInclusionSet::find):
2647         (WebCore::ShadowInclusionSelector::hasCandidates):
2648         * dom/ShadowRoot.cpp:
2649         (WebCore::ShadowRoot::includerFor):
2650         (WebCore::ShadowRoot::attach):
2651         (WebCore::ShadowRoot::inclusions):
2652         (WebCore::ShadowRoot::ensureInclusions):
2653         * dom/ShadowRoot.h:
2654
2655 2011-07-21  Robin Qiu  <robin.qiu.dev@gmail.com>
2656
2657         https://bugs.webkit.org/show_bug.cgi?id=60737
2658
2659         ThumbPosition() in ScrollbarTheme should be ceiled before returned.
2660         Otherwise, some topest/leftest content can not be shown by dragging
2661         scrollbar thumb.
2662
2663
2664         Reviewed by Antonio Gomes.
2665
2666         Test: scrollbars/scrollbar-drag-thumb-with-large-content.html
2667
2668         * platform/ScrollbarThemeComposite.cpp:
2669         (WebCore::ScrollbarThemeComposite::thumbPosition):
2670         * platform/qt/ScrollbarThemeQt.cpp:
2671         (WebCore::ScrollbarThemeQt::thumbPosition):
2672
2673 2011-07-21  Simon Fraser  <simon.fraser@apple.com>
2674
2675         GraphicsLayers in subframes can get sync'd multiple times
2676         https://bugs.webkit.org/show_bug.cgi?id=52489
2677
2678         Reviewed by James Robinson.
2679         
2680         Avoid doing a 'syncCompositingState' pass on the GraphicsLayers
2681         for subframes, when those GraphicsLayers are rooted in the
2682         parent document.
2683
2684         * page/FrameView.cpp:
2685         (WebCore::FrameView::syncCompositingStateForThisFrame): Add a parameter
2686         that contains the rootmost frame on which sync was called. This is used
2687         to indicate to the compositor whether it's the root of the sync.
2688         (WebCore::FrameView::syncCompositingStateIncludingSubframes): Pass the current
2689         Frame in.
2690         (WebCore::FrameView::paintContents): The sync is for this frame, so pass m_frame.
2691         * page/FrameView.h:
2692         * rendering/RenderLayerCompositor.cpp:
2693         (WebCore::RenderLayerCompositor::flushPendingLayerChanges): New parameter
2694         to specify whether this compositor is in the rootmost Frame being flushed.
2695         We can avoid doing work if we know that flushing some ancestor frame would
2696         have also traversed our GraphicsLayers.
2697         * rendering/RenderLayerCompositor.h:
2698         (WebCore::RenderLayerCompositor::isFlushingLayers): Make this private, since
2699         callers are probably most intersted in enclosingCompositorFlushingLayers().
2700
2701 2011-07-21  Rafael Brandao  <rafael.lobo@openbossa.org>
2702
2703         Local files cannot load icons.
2704         https://bugs.webkit.org/show_bug.cgi?id=62459
2705         
2706         Previous policy only allowed favicons for pages whose protocol was part of HTTP family.
2707         Changed that to allow to any url that's not empty and whose protocol is not "about".
2708         Also added this check where it attempts to start loading the favicon, so it can avoid
2709         wasting time downloading a resource that won't be stored and won't be used.
2710
2711         Reviewed by Adam Barth.
2712
2713         Test: manual-tests/resources/favicon-loads-for-local-files.html
2714
2715         * loader/icon/IconController.cpp:
2716         (WebCore::IconController::startLoader): Added check to avoid to request a favicon
2717         when there's no way to store it.
2718         
2719         * loader/icon/IconDatabase.cpp:
2720         (WebCore::IconDatabase::documentCanHaveIcon): Renamed function "pageCanHaveIcon"
2721         to reflect better which url we're handling.
2722         
2723         (WebCore::IconDatabase::synchronousIconForPageURL): Ditto.
2724         (WebCore::IconDatabase::synchronousIconURLForPageURL): Ditto.
2725         (WebCore::IconDatabase::retainIconForPageURL): Ditto.
2726         (WebCore::IconDatabase::releaseIconForPageURL): Ditto.
2727         (WebCore::IconDatabase::setIconURLForPageURL): Ditto.
2728         (WebCore::IconDatabase::getOrCreatePageURLRecord): Ditto.
2729         (WebCore::IconDatabase::importIconURLForPageURL): Ditto.
2730         (WebCore::IconDatabase::performURLImport): Ditto.
2731         * loader/icon/IconDatabase.h:
2732         * loader/icon/IconDatabaseBase.h:
2733         (WebCore::IconDatabaseBase::documentCanHaveIcon): Added it as virtual to replace its
2734         default behavior of not allowing favicons when we have IconDatabase enabled.
2735         
2736         * manual-tests/resources/favicon-loads-for-local-files.html: Added.
2737         * manual-tests/resources/favicon.png: Added.
2738
2739 2011-07-21  Kulanthaivel Palanichamy  <kulanthaivel@codeaurora.org>
2740
2741         Fix for bug 64046 - Wrong image height in absolutely positioned div in
2742         relatively positioned parent with bottom padding.
2743         https://bugs.webkit.org/show_bug.cgi?id=64046
2744
2745         Reviewed by David Hyatt.
2746
2747         Test: fast/css/absolute-child-with-percent-height-inside-relative-parent.html
2748
2749         * rendering/RenderBox.cpp:
2750         (WebCore::RenderBox::availableLogicalHeightUsing):
2751
2752 2011-07-21  Gavin Peters  <gavinp@chromium.org>
2753
2754         Extend the protector of a CSS style sheet.  Because checkLoaded() can recursively delete
2755         parent style elements, the protector should be extended to include the parent call.
2756
2757         https://bugs.webkit.org/show_bug.cgi?id=64736
2758
2759         Reviewed by Simon Fraser.
2760
2761         Test: fast/css/css-imports-2.html
2762
2763         * css/CSSStyleSheet.cpp:
2764         (WebCore::CSSStyleSheet::checkLoaded):
2765
2766 2011-07-21  Kenneth Russell  <kbr@google.com>
2767
2768         Update webglcontextlost / webglcontextrestored delivery to match spec changes
2769         https://bugs.webkit.org/show_bug.cgi?id=58621
2770
2771         Reviewed by James Robinson.
2772
2773         Updated conditions under which webglcontextrestored event is
2774         delivered to be spec compliant.
2775
2776         * html/canvas/WebGLRenderingContext.cpp:
2777         (WebCore::WebGLRenderingContext::WebGLRenderingContext):
2778         (WebCore::WebGLRenderingContext::loseContext):
2779         (WebCore::WebGLRenderingContext::maybeRestoreContext):
2780         * html/canvas/WebGLRenderingContext.h:
2781
2782 2011-07-21  Dave Hyatt  <hyatt@apple.com>
2783
2784         https://bugs.webkit.org/show_bug.cgi?id=64975
2785         Elements that have columns (e.g., column-width or column-count non-auto) and elements that have
2786         column-spans establish block formatting contexts, and therefore they should not be allowing
2787         child margins to collapse with their own margins.
2788
2789         Reviewed by Beth Dakin.
2790
2791         Covered by existing tests.
2792
2793         * rendering/RenderBlock.cpp:
2794         (WebCore::RenderBlock::MarginInfo::MarginInfo):
2795
2796 2011-07-21  Matthew Delaney  <mdelaney@apple.com>
2797
2798         Add fast path for ImageBuffer::draw, Take 2.
2799         https://bugs.webkit.org/show_bug.cgi?id=64535
2800
2801         Reviewed by Simon Fraser.
2802
2803         No new tests. This patch doesn't change behavior; current tests are sufficient.
2804
2805         * platform/graphics/GraphicsContext.cpp:
2806         (WebCore::GraphicsContext::drawImage): Moved the main method version next to wrapper versions.
2807
2808         * platform/graphics/ImageBuffer.h:
2809         1) Added BackingStoreCopy enum for choosing to copy backing store or not in copyImage().
2810         2) Added copyNativeImage() behind USE(CG) - same as copyImage() but gives NativeImagePtr.
2811         * platform/graphics/cg/ImageBufferCG.cpp: Added new methods described above.
2812
2813         * platform/graphics/GraphicsContext.h: Adding drawNativeImage() for fast draw path.
2814         * platform/graphics/cg/GraphicsContextCG.cpp:
2815         (WebCore::GraphicsContext::drawNativeImage): Added. Draws a nativeImagePtr into context.
2816
2817         * platform/graphics/Image.h: Added imageWithColorSpace behind CG platform ifdef
2818         * platform/graphics/cg/ImageCG.cpp:
2819         (WebCore::BitmapImage::draw): Refactored out actual image drawing code into GraphicsContext,
2820         so that it can be used by more than just BitmapImage without having to copy code.
2821         (WebCore::Image::imageWithColorSpace): Made into an Image class function.
2822
2823         Updated copyImage() to use BackingStoreCopy:
2824         * platform/graphics/qt/ImageBufferQt.cpp
2825         * platform/graphics/filters/FETile.cpp
2826         * platform/graphics/cairo/ImageBufferCairo.cpp
2827         * platform/graphics/skia/ImageBufferSkia.cpp
2828         * platform/graphics/wx/ImageBufferWx.cpp
2829         * platform/graphics/wince/ImageBufferWinCE.cpp
2830         * svg/SVGFEImageElement.cpp
2831         * svg/graphics/SVGImage.cpp
2832         * html/HTMLCanvasElement.cpp
2833         * html/canvas/WebGLRenderingContext.cpp
2834         * rendering/svg/RenderSVGResourcePattern.cpp
2835
2836 2011-07-21  David Kilzer  <ddkilzer@apple.com>
2837
2838         <http://webkit.org/b/64972> Clean up generated HTMLEntityTable.cpp output
2839
2840         Reviewed by Eric Seidel.
2841
2842         * html/parser/create-html-entity-table:
2843         - Fix duplicate "EntityName" suffix on local variables (changes
2844           fooSemicolonEntityNameEntityName to fooSemicolonEntityName)
2845           for all 2138 symbols.
2846         - Add newlines to make source file human-readable (as originally
2847           intended).
2848         - Add static (const) keywords to local variables that are never
2849           referenced externally.
2850
2851 2011-07-21  Mark Pilgrim  <pilgrim@chromium.org>
2852
2853         Remove LegacyDefaultOptionalArguments flag from FileAPI
2854         https://bugs.webkit.org/show_bug.cgi?id=64539
2855
2856         Reviewed by Adam Barth.
2857
2858         No new tests, all existing tests pass.
2859
2860         * fileapi/Blob.idl:
2861         * fileapi/DirectoryEntry.idl:
2862         * fileapi/DirectoryEntrySync.idl:
2863         * fileapi/DirectoryReader.idl:
2864         * fileapi/EntriesCallback.idl:
2865         * fileapi/Entry.idl:
2866         * fileapi/EntryArray.idl:
2867         * fileapi/EntryArraySync.idl:
2868         * fileapi/EntryCallback.idl:
2869         * fileapi/EntrySync.idl:
2870         * fileapi/ErrorCallback.idl:
2871         * fileapi/FileCallback.idl:
2872         * fileapi/FileEntry.idl:
2873         * fileapi/FileList.idl:
2874         * fileapi/FileReader.idl:
2875         * fileapi/FileReaderSync.idl:
2876         * fileapi/FileSystemCallback.idl:
2877         * fileapi/FileWriter.idl:
2878         * fileapi/FileWriterCallback.idl:
2879         * fileapi/FileWriterSync.idl:
2880         * fileapi/MetadataCallback.idl:
2881         * fileapi/WebKitBlobBuilder.idl:
2882
2883 2011-07-21  Tony Chang  <tony@chromium.org>
2884
2885         sort WebCore.xcodeproj
2886         https://bugs.webkit.org/show_bug.cgi?id=64901
2887
2888         Unreviewed, just using sort-Xcode-project-file.
2889
2890         * WebCore.xcodeproj/project.pbxproj:
2891
2892 2011-07-21  Enrica Casucci  <enrica@apple.com>
2893
2894         Cannot click to position the caret to the right of an image with display:block style.
2895         https://bugs.webkit.org/show_bug.cgi?id=64962
2896         <rdar://problem/9446343>
2897
2898         Reviewed by David Hyatt.
2899
2900         Test: editing/selection/click-on-block-image.html
2901
2902         The current implementation of positionForPoint always returns the visible
2903         position to the left of the image, if the image has a block style.
2904         This patch changes the behavior for block styled images to match the behavior
2905         for inline images.
2906
2907         * rendering/RenderReplaced.cpp:
2908         (WebCore::RenderReplaced::positionForPoint): Modified to avoid relying entirely
2909         on InlineBox to calculate the position.
2910
2911 >>>>>>> .r91495
2912 2011-07-21  Pavel Feldman  <pfeldman@google.com>
2913
2914         Not reviewed: one liner typo fix in Inspector.json.
2915
2916         * inspector/Inspector.json:
2917
2918 2011-07-21  Sam Weinig  <sam@webkit.org>
2919
2920         CSS top margin collapses when paginating
2921         https://bugs.webkit.org/show_bug.cgi?id=64906
2922
2923         Reviewed by David Hyatt.
2924
2925         * rendering/RenderBlock.cpp:
2926         (WebCore::RenderBlock::collapseMargins):
2927         (WebCore::RenderBlock::estimateLogicalTopPosition):
2928         Update to only go down paginated path when we actually have a page height (so
2929         not in the case that we are just gathering breaks) and to call the version of
2930         of nextPageLogicalTop that actually returns the next page, even if we are at
2931         the boundary point.
2932
2933         (WebCore::RenderBlock::nextPageLogicalTopExcludingBoundaryPoint):
2934         (WebCore::RenderBlock::nextPageLogicalTopIncludingBoundaryPoint):
2935         Split into two functions which differ in how they deal with the boundary condition.
2936
2937         (WebCore::RenderBlock::applyBeforeBreak):
2938         (WebCore::RenderBlock::applyAfterBreak):
2939         Switch to call nextPageLogicalTopIncludingBoundaryPoint.
2940
2941         * rendering/RenderBlock.h:
2942         Add new functions declarations and comment them.
2943
2944 2011-07-21  Pavel Feldman  <pfeldman@google.com>
2945
2946         Web Inspector: RuntimeAgent.evaluateOn should not require "return X;" syntax.
2947         https://bugs.webkit.org/show_bug.cgi?id=64691
2948
2949         Reviewed by Yury Semikhatsky.
2950
2951         I'm introducing callFunctionOn that receives function declaration in order
2952         to make call site syntax clear.
2953
2954         Test: inspector/runtime/runtime-callFunctionOn.html
2955
2956         * inspector/InjectedScript.cpp:
2957         (WebCore::InjectedScript::callFunctionOn):
2958         * inspector/InjectedScript.h:
2959         * inspector/InjectedScriptSource.js:
2960         (.):
2961         * inspector/Inspector.json:
2962         * inspector/InspectorRuntimeAgent.cpp:
2963         (WebCore::InspectorRuntimeAgent::callFunctionOn):
2964         * inspector/InspectorRuntimeAgent.h:
2965         * inspector/front-end/ElementsTreeOutline.js:
2966         (WebInspector.ElementsTreeElement.prototype._createTooltipForNode.resolvedNode.dimensions):
2967         (WebInspector.ElementsTreeElement.prototype._createTooltipForNode.resolvedNode):
2968         (WebInspector.ElementsTreeElement.prototype._createTooltipForNode):
2969         * inspector/front-end/PropertiesSidebarPane.js:
2970         (WebInspector.PropertiesSidebarPane.prototype.update.nodeResolved.protoList):
2971         (WebInspector.PropertiesSidebarPane.prototype.update.nodeResolved):
2972         * inspector/front-end/RemoteObject.js:
2973         (WebInspector.RemoteObject.prototype.callFunction):
2974
2975 2011-07-21  Andrew Wason  <rectalogic@rectalogic.com>
2976
2977         [Qt] Adopt existing GraphicsContext3D members (part 1)
2978         https://bugs.webkit.org/show_bug.cgi?id=64877
2979
2980         Reviewed by Noam Rosenthal.
2981
2982         Existing WebGL layout tests should test this.
2983
2984         Remove GraphicsContext3DInternal members and use the existing
2985         corresponding members from GraphicsContext3D instead.
2986         Move most of the GraphicsContext3DInternal constructor, destructor
2987         and the reshape() method into GraphicsContext3D.
2988         The GraphicsContext3D members will be needed when we adopt
2989         GraphicsContext3DOpenGL.cpp.
2990
2991         * platform/graphics/GraphicsContext3D.h:
2992         * platform/graphics/qt/GraphicsContext3DQt.cpp:
2993         (WebCore::GraphicsContext3DInternal::GraphicsContext3DInternal):
2994         (WebCore::GraphicsContext3DInternal::~GraphicsContext3DInternal):
2995         (WebCore::GraphicsContext3DInternal::paintToTextureMapper):
2996         (WebCore::GraphicsContext3DInternal::boundingRect):
2997         (WebCore::GraphicsContext3DInternal::paint):
2998         (WebCore::GraphicsContext3D::GraphicsContext3D):
2999         (WebCore::GraphicsContext3D::~GraphicsContext3D):
3000         (WebCore::GraphicsContext3D::platformTexture):
3001         (WebCore::GraphicsContext3D::reshape):
3002         (WebCore::GraphicsContext3D::bindFramebuffer):
3003         (WebCore::GraphicsContext3D::getContextAttributes):
3004         (WebCore::GraphicsContext3D::getError):
3005         (WebCore::GraphicsContext3D::synthesizeGLError):
3006         (WebCore::GraphicsContext3D::markLayerComposited):
3007         (WebCore::GraphicsContext3D::markContextChanged):
3008         (WebCore::GraphicsContext3D::layerComposited):
3009         (WebCore::GraphicsContext3D::getExtensions):
3010
3011 2011-07-21  Pavel Feldman  <pfeldman@google.com>
3012
3013         Web Inspector: [protocol] extend setBreakpointByUrl request to accept incomplete URL (predicates)
3014         https://bugs.webkit.org/show_bug.cgi?id=60762
3015
3016         Reviewed by Yury Semikhatsky.
3017
3018         Test: inspector/debugger/debugger-set-breakpoint-regex.html
3019
3020         * inspector/Inspector.json:
3021         * inspector/InspectorDebuggerAgent.cpp:
3022         (WebCore::buildObjectForBreakpointCookie):
3023         (WebCore::matches):
3024         (WebCore::InspectorDebuggerAgent::setBreakpointByUrl):
3025         (WebCore::InspectorDebuggerAgent::didParseSource):
3026         * inspector/InspectorDebuggerAgent.h:
3027
3028 2011-07-21  Kent Tamura  <tkent@chromium.org>
3029
3030         REGRESSION(r88757): input[type=range] renders incorrectly in RTL context.
3031         https://bugs.webkit.org/show_bug.cgi?id=64904
3032
3033         Reviewed by Ryosuke Niwa.
3034
3035         Tests: fast/forms/input-appearance-range-rtl.html
3036
3037         * html/shadow/SliderThumbElement.cpp:
3038         (WebCore::RenderSliderThumb::layout):
3039         The thumb should be positioned based on 'right' CSS property instead of 'left.'
3040         (WebCore::SliderThumbElement::setPositionFromPoint):
3041         The fraction should be flipped in RTL.
3042
3043 2011-07-18  Vsevolod Vlasov  <vsevik@chromium.org>
3044
3045         Web Inspector: Remove networkDataRemoved field from resource.
3046         https://bugs.webkit.org/show_bug.cgi?id=64749
3047
3048         Reviewed by Pavel Feldman.
3049
3050         * inspector/front-end/NetworkManager.js:
3051         (WebInspector.NetworkManager.prototype.requestContent):
3052         (WebInspector.NetworkDispatcher.prototype._appendRedirect):
3053         * inspector/front-end/NetworkPanel.js:
3054         (WebInspector.NetworkLogView.prototype._frameNavigated):
3055
3056 2011-07-21  Tommy Widenflycht  <tommyw@google.com>
3057
3058         MediaStream API: Merging MediaStreamContainer and MediaStreamList
3059         https://bugs.webkit.org/show_bug.cgi?id=64794
3060
3061         Reviewed by Tony Gentilcore.
3062
3063         * GNUmakefile.list.am:
3064         * dom/MediaStreamContainer.h: Removed.
3065         * dom/MediaStreamList.cpp:
3066         (WebCore::MediaStreamList::create):
3067         (WebCore::MediaStreamList::MediaStreamList):
3068         (WebCore::MediaStreamList::length):
3069         (WebCore::MediaStreamList::item):
3070         (WebCore::MediaStreamList::add):
3071         (WebCore::MediaStreamList::remove):
3072         (WebCore::MediaStreamList::contains):
3073         (WebCore::MediaStreamList::get):
3074         * dom/MediaStreamList.h:
3075
3076 2011-07-20  Yury Semikhatsky  <yurys@chromium.org>
3077
3078         Web Inspector: always open dedicated worker inspector in a new window not a new tab
3079         https://bugs.webkit.org/show_bug.cgi?id=64872
3080
3081         Reviewed by Pavel Feldman.
3082
3083         * inspector/front-end/WorkerManager.js:
3084         (WebInspector.WorkerManager.prototype.openWorkerInspector):
3085
3086 2011-07-21  MORITA Hajime  <morrita@google.com>
3087
3088         [Refactoring] Shadow inclusion cache should be managed by ShadowContentSelector
3089         https://bugs.webkit.org/show_bug.cgi?id=64849
3090
3091         Reviewed by Dimitri Glazkov.
3092
3093         This change is a reorg around Shadow inclusion mechanism.
3094         - Moved definition of ShadowInclusion, ShadowInclusionSet and ShadowInclusionList
3095           from ShadowContentElement.h to ShadowContentSelector.h, which is included
3096           from smaller number of places.
3097         - Moved ShadowInclusionSet from ShadowRoot to ShadowContentSelector
3098         - Made ShadowContentSelector's lifetime managed by ShadowRoot
3099           because ShadowInclusionSet is held by the selector.
3100         - Thus, there is no longer "active" selector (ShadowContentSelector::s_currentInstance)
3101           Because the selector is associated for each ShadowRoot object.
3102         
3103         No new tests. No behavior change.
3104
3105         * dom/NodeRenderingContext.cpp:
3106         * dom/ShadowContentElement.cpp:
3107         (WebCore::ShadowContentElement::ShadowContentElement):
3108         (WebCore::ShadowContentElement::attach):
3109         (WebCore::ShadowContentElement::detach):
3110         * dom/ShadowContentElement.h:
3111         (WebCore::ShadowContentElement::inclusions):
3112         * dom/ShadowContentSelector.cpp:
3113         (WebCore::ShadowInclusion::append):
3114         (WebCore::ShadowInclusion::unlink):
3115         (WebCore::ShadowInclusionList::ShadowInclusionList):
3116         (WebCore::ShadowInclusionList::~ShadowInclusionList):
3117         (WebCore::ShadowInclusionList::find):
3118         (WebCore::ShadowInclusionList::clear):
3119         (WebCore::ShadowInclusionList::append):
3120         (WebCore::ShadowContentSelector::ShadowContentSelector):
3121         (WebCore::ShadowContentSelector::~ShadowContentSelector):
3122         (WebCore::ShadowContentSelector::selectInclusion):
3123         (WebCore::ShadowContentSelector::unselectInclusion):
3124         (WebCore::ShadowContentSelector::findInclusionFor):
3125         (WebCore::ShadowContentSelector::didSelectInclusion):
3126         (WebCore::ShadowContentSelector::willSelectInclusionOver):
3127         * dom/ShadowContentSelector.h:
3128         (WebCore::ShadowInclusion::includer):
3129         (WebCore::ShadowInclusion::content):
3130         (WebCore::ShadowInclusion::next):
3131         (WebCore::ShadowInclusion::previous):
3132         (WebCore::ShadowInclusion::ShadowInclusion):
3133         (WebCore::ShadowInclusion::create):
3134         (WebCore::ShadowInclusionList::first):
3135         (WebCore::ShadowInclusionList::last):
3136         (WebCore::ShadowInclusionList::isEmpty):
3137         (WebCore::ShadowInclusionSet::add):
3138         (WebCore::ShadowInclusionSet::remove):
3139         (WebCore::ShadowInclusionSet::isEmpty):
3140         (WebCore::ShadowInclusionSet::Translator::hash):
3141         (WebCore::ShadowInclusionSet::Translator::equal):
3142         (WebCore::ShadowInclusionSet::Hash::hash):
3143         (WebCore::ShadowInclusionSet::Hash::equal):
3144         (WebCore::ShadowInclusionSet::find):
3145         (WebCore::ShadowContentSelector::hasChildren):
3146         * dom/ShadowRoot.cpp:
3147         (WebCore::ShadowRoot::~ShadowRoot):
3148         (WebCore::ShadowRoot::includerFor):
3149         (WebCore::ShadowRoot::attach):
3150         (WebCore::ShadowRoot::inclusions):
3151         (WebCore::ShadowRoot::ensureInclusions):
3152         * dom/ShadowRoot.h:
3153
3154 2011-07-21  Rohan McGovern  <rohan@mcgovern.id.au>
3155
3156         Reviewed by Noam Rosenthal.
3157
3158         [Qt] Qt5 Build Fix: remove useless use of qRound(int)
3159         https://bugs.webkit.org/show_bug.cgi?id=64907
3160
3161         Rounding an integer doesn't make sense.
3162         Since 2dcd3939a8bd5ff743e4c87f87b2d81b1a101467 in qtbase, this is not
3163         permitted to compile.
3164
3165         No new tests needed.
3166
3167         * platform/graphics/qt/FontPlatformDataQt.cpp:
3168         (WebCore::FontPlatformData::FontPlatformData): Eliminate qRound(int).
3169         * platform/qt/PlatformScreenQt.cpp:
3170         (WebCore::screenDepthPerComponent): Ditto.
3171
3172 2011-07-20  Ryosuke Niwa  <rniwa@webkit.org>
3173
3174         Fix a Valgrind failure caused by r91435.
3175
3176         * platform/ScrollableArea.cpp:
3177         (WebCore::ScrollableArea::ScrollableArea):
3178
3179 2011-07-20  Sheriff Bot  <webkit.review.bot@gmail.com>
3180
3181         Unreviewed, rolling out r91332.
3182         http://trac.webkit.org/changeset/91332
3183         https://bugs.webkit.org/show_bug.cgi?id=64925
3184
3185         Crashes css3/images/optimize-contrast-canvas.html on safari-
3186         mac,chromium-mac (Requested by mikelawther on #webkit).
3187
3188         * html/HTMLCanvasElement.cpp:
3189         (WebCore::HTMLCanvasElement::makePresentationCopy):
3190         (WebCore::HTMLCanvasElement::copiedImage):
3191         * html/canvas/WebGLRenderingContext.cpp:
3192         (WebCore::WebGLRenderingContext::videoFrameToImage):
3193         * platform/graphics/GraphicsContext.cpp:
3194         (WebCore::GraphicsContext::drawImage):
3195         * platform/graphics/GraphicsContext.h:
3196         * platform/graphics/Image.h:
3197         * platform/graphics/ImageBuffer.h:
3198         * platform/graphics/cairo/ImageBufferCairo.cpp:
3199         (WebCore::ImageBuffer::copyImage):
3200         * platform/graphics/cg/GraphicsContextCG.cpp:
3201         * platform/graphics/cg/ImageBufferCG.cpp:
3202         (WebCore::ImageBuffer::copyImage):
3203         (WebCore::cgImage):
3204         (WebCore::ImageBuffer::draw):
3205         (WebCore::ImageBuffer::drawPattern):
3206         (WebCore::ImageBuffer::clip):
3207         (WebCore::ImageBuffer::toDataURL):
3208         * platform/graphics/cg/ImageCG.cpp:
3209         (WebCore::imageWithColorSpace):
3210         (WebCore::BitmapImage::draw):
3211         (WebCore::Image::drawPattern):
3212         * platform/graphics/filters/FETile.cpp:
3213         (WebCore::FETile::apply):
3214         * platform/graphics/qt/ImageBufferQt.cpp:
3215         (WebCore::ImageBuffer::copyImage):
3216         (WebCore::ImageBuffer::draw):
3217         (WebCore::ImageBuffer::drawPattern):
3218         * platform/graphics/skia/ImageBufferSkia.cpp:
3219         (WebCore::ImageBuffer::copyImage):
3220         * platform/graphics/wince/ImageBufferWinCE.cpp:
3221         (WebCore::ImageBuffer::copyImage):
3222         (WebCore::ImageBuffer::draw):
3223         (WebCore::ImageBuffer::drawPattern):
3224         * platform/graphics/wx/ImageBufferWx.cpp:
3225         (WebCore::ImageBuffer::copyImage):
3226         (WebCore::ImageBuffer::draw):
3227         (WebCore::ImageBuffer::drawPattern):
3228         * rendering/svg/RenderSVGResourcePattern.cpp:
3229         (WebCore::RenderSVGResourcePattern::applyResource):
3230         * svg/SVGFEImageElement.cpp:
3231         (WebCore::SVGFEImageElement::build):
3232         * svg/graphics/SVGImage.cpp:
3233         (WebCore::SVGImage::nativeImageForCurrentFrame):
3234
3235 2011-07-20  Ryosuke Niwa  <rniwa@webkit.org>
3236
3237         Chromium build fix after r91440.
3238
3239         * platform/chromium/ScrollbarThemeChromiumMac.mm:
3240         (WebCore::ScrollbarThemeChromiumMac::paint):
3241
3242 2011-07-20  Ryosuke Niwa  <rniwa@webkit.org>
3243
3244         Build fix after r91435.
3245
3246         * platform/mac/ScrollViewMac.mm:
3247         (WebCore::ScrollView::platformSetScrollbarOverlayStyle):
3248
3249 2011-07-20  Tim Horton  <timothy_horton@apple.com>
3250
3251         Reviewed by Darin Adler.
3252
3253         Errors encountered within SVG documents should be reported to the console
3254         https://bugs.webkit.org/show_bug.cgi?id=62599
3255         <rdar://problem/9727074>
3256
3257         Add SVGLength::construct, which can be used to construct an SVGLength
3258         as normal, but returns an SVGParsingError via a reference argument.
3259         The function also takes another argument, which is whether or not
3260         the SVGLength value is allowed to be negative. If not, an error is
3261         thrown. It defaults to allowing negatives if not specified.
3262
3263         * GNUmakefile.list.am:
3264         * svg/SVGLength.cpp:
3265         (WebCore::SVGLength::construct):
3266         (WebCore::SVGLength::rawValue):
3267         * svg/SVGLength.h:
3268         * svg/SVGElement.h:
3269         * svg/SVGParsingError.h: Added.
3270         * WebCore.gypi:
3271         * WebCore.pro:
3272         * WebCore.vcproj/WebCore.vcproj:
3273         * WebCore.xcodeproj/project.pbxproj:
3274
3275 2011-07-20  Levi Weintraub  <leviw@chromium.org>
3276
3277         Switch getTransformFromContainer and its uses to new layout types
3278         https://bugs.webkit.org/show_bug.cgi?id=64908
3279
3280         Reviewed by Simon Fraser.
3281
3282         Switching getTransformFromContainer and its uses to use the new Layout
3283         Types from strictly integer ones.
3284
3285         No new tests, no new functionality.
3286
3287         * rendering/RenderBox.cpp:
3288         (WebCore::RenderBox::mapLocalToContainer):
3289         * rendering/RenderInline.cpp:
3290         (WebCore::RenderInline::mapLocalToContainer):
3291         * rendering/RenderLayer.cpp:
3292         (WebCore::RenderLayer::createLocalTransformState):
3293         * rendering/RenderObject.cpp:
3294         (WebCore::RenderObject::getTransformFromContainer):
3295         * rendering/RenderObject.h:
3296         * rendering/RenderView.cpp:
3297         (WebCore::RenderView::mapLocalToContainer):
3298         (WebCore::RenderView::mapAbsoluteToLocalPoint):
3299
3300 2011-07-20  Tim Horton  <timothy_horton@apple.com>
3301
3302         Scrollbar color heuristic needs to be hooked up in WebKit1
3303         https://bugs.webkit.org/show_bug.cgi?id=64220
3304         <rdar://problem/9589140>
3305
3306         Reviewed by Darin Adler.
3307
3308         Store the scroller style on ScrollableArea, and recompute it whenever
3309         the document or body element background color changes or the base background
3310         color of the scrollview changes. Also, make sure to repaint the scrollbars
3311         whenever the style changes.
3312
3313         No new tests, since this code is only enabled on future versions of Mac OS X.
3314
3315         * WebCore.exp.in:
3316         * page/Frame.cpp:
3317         (WebCore::Frame::getDocumentBackgroundColor):
3318         * page/Frame.h:
3319         * page/FrameView.cpp:
3320         (WebCore::FrameView::recalculateScrollbarOverlayStyle):
3321         (WebCore::FrameView::setBaseBackgroundColor):
3322         (WebCore::FrameView::documentBackgroundColor): Renamed.
3323         * page/FrameView.h:
3324         * platform/ScrollView.cpp:
3325         (WebCore::ScrollView::setScrollbarOverlayStyle):
3326         * platform/ScrollView.h:
3327         * platform/ScrollableArea.cpp:
3328         (WebCore::ScrollableArea::setScrollbarOverlayStyle):
3329         * platform/ScrollableArea.h:
3330         (WebCore::ScrollableArea::scrollbarOverlayStyle):
3331         * platform/ScrollbarTheme.h:
3332         (WebCore::ScrollbarTheme::updateScrollbarOverlayStyle):
3333         * platform/mac/ScrollViewMac.mm:
3334         (WebCore::toNSScrollerKnobStyle):
3335         (WebCore::ScrollView::platformSetScrollbarOverlayStyle):
3336         * platform/mac/ScrollbarThemeMac.h:
3337         * platform/mac/ScrollbarThemeMac.mm:
3338         (WebCore::toScrollbarPainterKnobStyle):
3339         (WebCore::ScrollbarThemeMac::updateScrollbarOverlayStyle):
3340         (WebCore::ScrollbarThemeMac::paint):
3341         * rendering/RenderBox.cpp:
3342         (WebCore::RenderBox::styleDidChange):
3343
3344 2011-07-20  Luke Macpherson   <macpherson@chromium.org>
3345
3346         Implement CSSPropertyWebkitTransformOriginZ and Origin in CSSStyleApplyProperty.
3347         https://bugs.webkit.org/show_bug.cgi?id=64785
3348         Note that this changes a cast from
3349           computed length double -> 28 bit int -> float
3350         to
3351           computed length double -> float
3352         I couldn't see any reason in the code that this was strictly necessary,
3353         however it may have been so that X,Y,Z all have the same behavior, even though Z itself is not stored in a Length.
3354
3355         Reviewed by Simon Fraser.
3356
3357         No new tests / refactoring.
3358
3359         * css/CSSStyleApplyProperty.cpp:
3360         (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
3361         * css/CSSStyleSelector.cpp:
3362         (WebCore::CSSStyleSelector::applyProperty):
3363
3364 2011-07-20  Tony Chang  <tony@chromium.org>
3365
3366         Remove stray reference to StyleFlexibleBoxData.h that was accidentally
3367         added in r91402.
3368
3369         * WebCore.xcodeproj/project.pbxproj:
3370
3371 2011-07-20  Levi Weintraub  <leviw@chromium.org>
3372
3373         Bring Int/Float graphics classes closer to parity
3374         https://bugs.webkit.org/show_bug.cgi?id=64833
3375
3376         Reviewed by James Robinson.
3377
3378         In preparation of switching to Floating point data structures, bringing the
3379         functionality and method names of the Int/Float graphics classes close together.
3380
3381         Also fixing some compiler errors when using Floats for layout units along the way.
3382
3383         No new tests, no functionality change.
3384
3385         * page/FrameView.cpp:
3386         (WebCore::FrameView::convertFromRenderer):
3387         * platform/ScrollView.cpp:
3388         (WebCore::ScrollView::wheelEvent):
3389         * platform/ScrollView.h:
3390         (WebCore::ScrollView::convertChildToSelf):
3391         (WebCore::ScrollView::convertSelfToChild):
3392         * platform/graphics/FloatPoint.h:
3393         (WebCore::operator-): Adding a single-parameter version.
3394         * platform/graphics/FloatSize.cpp:
3395         (WebCore::FloatSize::isZero): Adding isZero that uses epsilon for floats.
3396         * platform/graphics/FloatSize.h:
3397         * platform/graphics/IntPoint.h:
3398         (WebCore::IntPoint::moveBy): Renaming IntPoint version to moveBy to mirror FloatPoint.
3399         * platform/graphics/RoundedRect.cpp:
3400         (WebCore::RoundedRect::Radii::expand): Switching to specific templatized max.
3401         * platform/graphics/filters/FilterEffect.cpp:
3402         (WebCore::FilterEffect::requestedRegionOfInputImageData):
3403         * rendering/RenderBlock.cpp: Moving outstanding Int* functions to Layout units.
3404         (WebCore::RenderBlock::paintContinuationOutlines):
3405         (WebCore::RenderBlock::logicalRectToPhysicalRect):
3406         * rendering/RenderBlock.h:
3407         * rendering/RenderBox.cpp:
3408         (WebCore::RenderBox::positionForPoint):
3409         * rendering/RenderTable.cpp:
3410         (WebCore::RenderTable::subtractCaptionRect):
3411         * rendering/RenderTable.h:
3412         * rendering/RenderTableCell.cpp:
3413         (WebCore::RenderTableCell::styleOrColLogicalWidth):
3414         (WebCore::RenderTableCell::setOverrideSizeFromRowHeight):
3415         (WebCore::RenderTableCell::paintCollapsedBorder):
3416         (WebCore::RenderTableCell::paintBackgroundsBehindCell):
3417         * rendering/RenderTableCell.h:
3418         * rendering/RenderView.h:
3419         (WebCore::RenderView::pushLayoutState):
3420         (WebCore::LayoutStateMaintainer::LayoutStateMaintainer):
3421         (WebCore::LayoutStateMaintainer::push):
3422         * rendering/RootInlineBox.cpp:
3423         (WebCore::RootInlineBox::paddedLayoutOverflowRect):
3424         (WebCore::setAscentAndDescent):
3425         * rendering/RootInlineBox.h:
3426
3427 2011-07-20  Scott Graham  <scottmg@chromium.org>
3428
3429         mouseover reporting incorrect mouse button, when the button isn't
3430         down. https://bugs.webkit.org/show_bug.cgi?id=64882
3431
3432         Reviewed by Eric Seidel.
3433
3434         Don't increment the button returned in 'which' unless the button is
3435         actually down.
3436
3437         Test: fast/events/mouseover-button.html
3438
3439         * dom/MouseEvent.cpp:
3440         (WebCore::MouseEvent::which):
3441
3442 2011-07-20  Kenneth Russell  <kbr@google.com>
3443
3444         Add restoreContext() to WEBKIT_lose_context
3445         https://bugs.webkit.org/show_bug.cgi?id=58626
3446
3447         Reviewed by James Robinson.
3448
3449         Added the restoreContext() entry point to the WEBKIT_lose_context
3450         extension. Refactored and simplified the logic associated with context
3451         loss and restoration.
3452
3453         A subsequent patch will make the delivery of the webglcontextrestored
3454         event spec compliant.
3455
3456         * html/canvas/WebGLRenderingContext.cpp:
3457         (WebCore::WebGLRenderingContext::WebGLRenderingContextRestoreTimer::fired):
3458         (WebCore::WebGLRenderingContextLostCallback::WebGLRenderingContextLostCallback):
3459         (WebCore::WebGLRenderingContextLostCallback::onContextLost):
3460         (WebCore::WebGLRenderingContext::isContextLost):
3461         (WebCore::WebGLRenderingContext::forceLostContext):
3462         (WebCore::WebGLRenderingContext::forceRestoreContext):
3463         (WebCore::WebGLRenderingContext::loseContext):
3464         (WebCore::WebGLRenderingContext::maybeRestoreContext):
3465         * html/canvas/WebGLRenderingContext.h:
3466         (WebCore::WebGLRenderingContext::WebGLRenderingContextRestoreTimer::WebGLRenderingContextRestoreTimer):
3467         * html/canvas/WebKitLoseContext.cpp:
3468         (WebCore::WebKitLoseContext::loseContext):
3469         (WebCore::WebKitLoseContext::restoreContext):
3470         * html/canvas/WebKitLoseContext.h:
3471         * html/canvas/WebKitLoseContext.idl:
3472
3473 2011-07-20  Tony Chang  <tony@chromium.org>
3474
3475         Pass -webkit-flex() values on to RenderStyle
3476         https://bugs.webkit.org/show_bug.cgi?id=64038
3477
3478         Reviewed by Eric Seidel.
3479
3480         No new tests, this just copies data to RenderStyle, which we can
3481         then access when doing layout.  Tests will come with the layout
3482         changes.
3483
3484         * css/CSSStyleApplyProperty.cpp:
3485         (WebCore::ApplyPropertyLength::applyValue):
3486         (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
3487
3488 2011-07-20  Daniel Bates  <dbates@rim.com>
3489
3490         Attempt to fix the GTK build after changeset 91396 <http://trac.webkit.org/changeset/91396>
3491         (https://bugs.webkit.org/show_bug.cgi?id=64764).
3492
3493         * xml/parser/MarkupTokenBase.h: #include <stdio.h> in debug build for printf(3), which is used in
3494         MarkupTokenBase::printString() and MarkupTokenBase::printAttrs().
3495
3496 2011-07-19  Vsevolod Vlasov  <vsevik@chromium.org>
3497
3498         Web Inspector: Add support for disabling cache in web inspector.
3499         https://bugs.webkit.org/show_bug.cgi?id=64097
3500
3501         Reviewed by Pavel Feldman.
3502
3503         Tests: http/tests/inspector/network/network-disable-cache-memory.html
3504                http/tests/inspector/network/network-disable-cache-xhrs.html
3505
3506         * English.lproj/localizedStrings.js:
3507         * inspector/Inspector.json:
3508         * inspector/InspectorClient.h:
3509         (WebCore::InspectorClient::setCacheDisabled):
3510         * inspector/InspectorResourceAgent.cpp:
3511         (WebCore::InspectorResourceAgent::willSendRequest):
3512         (WebCore::InspectorResourceAgent::enable):
3513         (WebCore::InspectorResourceAgent::disable):