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