1 2011-07-27 Alexis Menard <alexis.menard@openbossa.org>
3 [Qt] Unreviewed build fix for mac.
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.
12 2011-07-27 Yury Semikhatsky <yurys@chromium.org>
14 Inspector should support cd(window) in the command line
15 https://bugs.webkit.org/show_bug.cgi?id=19872
17 Added dropdown list with all iframes to allow selecting current evaluation context for console expressions.
19 Reviewed by Pavel Feldman.
21 Test: http/tests/inspector/console-cd.html
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:
55 2011-07-27 Shinya Kawanaka <shinyak@google.com>
57 Uses isHTMLSpace to normalize white spaces.
58 https://bugs.webkit.org/show_bug.cgi?id=57746
60 Reviewed by Kent Tamura.
62 Test: fast/forms/option-strip-unicode-spaces.html
64 * dom/OptionElement.cpp:
65 (WebCore::OptionElement::normalizeText):
66 Uses isHTMLSpace to trim and replace white spaces.
68 2011-05-15 Holger Hans Peter Freyther <holger@moiji-mobile.com>
70 [chromium] Remove include of skia/ext/platform_canvas.h
71 https://bugs.webkit.org/show_bug.cgi?id=60852
73 Reviewed by Hajime Morita.
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
81 * platform/graphics/skia/PlatformContextSkia.h: Remove platform_canvas.h
83 2011-07-27 Mikhail Naganov <mnaganov@chromium.org>
85 Web Inspector: [Chromium] REGRESSION: Uncaught TypeError: Cannot read property 'isTracingToWindowObjects' of undefined
86 https://bugs.webkit.org/show_bug.cgi?id=65213
88 Reviewed by Pavel Feldman.
90 * inspector/front-end/DetailedHeapshotView.js:
91 (WebInspector.HeapSnapshotRetainingPathsList.prototype.refresh):
93 2011-07-27 Shinya Kawanaka <shinyak@google.com>
95 Knob of a disabled or readonly range control should not be draggable.
96 https://bugs.webkit.org/show_bug.cgi?id=54820
98 Reviewed by Kent Tamura.
100 Made disabled or readonly range control undraggable.
102 Test: fast/forms/range-drag.html
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.
110 2011-07-27 Yuta Kitamura <yutak@chromium.org>
112 WebSocket: CloseEvent attribute is not available on WebWorkers in JSC
113 https://bugs.webkit.org/show_bug.cgi?id=65232
115 Reviewed by Kent Tamura.
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.
121 Generally speaking, NoStaticTables needs to be specified in interfaces which
122 may be accessed from workers.
124 Tests: http/tests/websocket/tests/hybi/workers/shared-worker-simple.html (updated)
125 http/tests/websocket/tests/hybi/workers/worker-simple.html (updated)
127 * websockets/CloseEvent.idl: Fixed the formatting, too.
129 2011-07-26 James Robinson <jamesr@chromium.org>
131 [chromium] REGRESSION(90963): Content layers are not redrawn after losing the compositor context
132 https://bugs.webkit.org/show_bug.cgi?id=65224
134 Reviewed by Kenneth Russell.
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.
139 * platform/graphics/chromium/ContentLayerChromium.cpp:
140 (WebCore::ContentLayerChromium::cleanupResources):
141 * platform/graphics/chromium/ContentLayerChromium.h:
143 2011-07-26 Sheriff Bot <webkit.review.bot@gmail.com>
145 Unreviewed, rolling out r91805.
146 http://trac.webkit.org/changeset/91805
147 https://bugs.webkit.org/show_bug.cgi?id=65226
149 Breaks @ symbols and changes other font rendering on Windows
150 (Requested by enne on #webkit).
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:
176 2011-07-26 Adrienne Walker <enne@google.com>
178 Unreviewed, rolling out r91812.
179 http://trac.webkit.org/changeset/91812
180 https://bugs.webkit.org/show_bug.cgi?id=65210
182 Breaks OSX GPU tests.
184 * platform/graphics/chromium/LayerRendererChromium.cpp:
185 (WebCore::LayerRendererChromium::drawLayers):
187 2011-07-26 Sheriff Bot <webkit.review.bot@gmail.com>
189 Unreviewed, rolling out r91809.
190 http://trac.webkit.org/changeset/91809
191 https://bugs.webkit.org/show_bug.cgi?id=65225
193 Does not build on Chromium Windows (Requested by abarth on
196 * dom/WheelEvent.cpp:
197 (WebCore::WheelEvent::WheelEvent):
198 (WebCore::WheelEvent::initWheelEvent):
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):
220 (WebCore::isClickOrScroll):
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):
230 2011-07-26 Dmitry Lomov <dslomov@google.com>
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.
236 Reviewed by David Levin.
238 Covered by existing chromium tests.
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:
262 2011-07-26 James Robinson <jamesr@chromium.org>
264 [chromium] Avoid clearing the framebuffer when compositing in release builds
265 https://bugs.webkit.org/show_bug.cgi?id=65210
267 Reviewed by Kenneth Russell.
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.
273 * platform/graphics/chromium/LayerRendererChromium.cpp:
274 (WebCore::LayerRendererChromium::drawLayers):
276 2011-07-26 Jeffrey Pfau <jpfau@apple.com>
279 https://bugs.webkit.org/show_bug.cgi?id=64566
281 Reviewed by Adam Barth.
283 Add tokenizer for XML and tests in NewXMLDocumentParser for printing results of tokenization.
285 * GNUmakefile.list.am:
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):
306 2011-07-26 Robert Kroeger <rjkroege@chromium.org>
308 [chromium] Layering violations in gesture recognizer
309 https://bugs.webkit.org/show_bug.cgi?id=65044
311 Reviewed by Adam Barth.
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
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):
353 (WebCore::isClickOrScroll):
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.
369 2011-07-26 Joseph Pecoraro <joepeck@webkit.org>
371 Restore Composited Layers Faster from PageCache
372 https://bugs.webkit.org/show_bug.cgi?id=65216
374 Reviewed by Simon Fraser.
376 Restore the layer tree hierarchy a little sooner, when
377 restoring from the page cache. This more closely matches
378 original restore behavior.
380 Existing test showed no change.
382 * page/FrameView.cpp:
383 (WebCore::FrameView::restoreBackingStores):
385 2011-07-26 Mike Reed <reed@google.com>
387 [skia] never draw with GDI, so that all text can be gpu-accelerated
388 https://bugs.webkit.org/show_bug.cgi?id=65203
390 Reviewed by Kenneth Russell.
392 No new tests. existing tests apply to the new drawing path
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):
401 2011-07-26 Kenneth Russell <kbr@google.com>
403 Float32Array(ArrayBuffer, index, length) constructor working incorrectly.
404 https://bugs.webkit.org/show_bug.cgi?id=57042
406 Reviewed by James Robinson.
408 * bindings/js/JSArrayBufferViewHelper.h:
409 (WebCore::constructArrayBufferViewWithArrayBufferArgument):
410 * bindings/v8/custom/V8ArrayBufferViewCustom.h:
411 (WebCore::constructWebGLArrayWithArrayBufferArgument):
413 2011-07-26 Chris Rogers <crogers@google.com>
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
418 Reviewed by James Robinson.
420 No new tests - this fixes upcoming audionode.html layout test
422 * bindings/v8/custom/V8AudioNodeCustom.cpp:
423 (WebCore::V8AudioNode::connectCallback):
425 2011-07-26 Chris Rogers <crogers@google.com>
427 AudioContext is not correctly accounting for hardware resources
428 https://bugs.webkit.org/show_bug.cgi?id=65217
430 Reviewed by Kenneth Russell.
432 No new tests since audio API is not yet implemented.
434 * webaudio/AudioContext.cpp:
435 (WebCore::AudioContext::create):
436 (WebCore::AudioContext::AudioContext):
437 (WebCore::AudioContext::lazyInitialize):
439 2011-07-26 Luke Macpherson <macpherson@chromium.org>
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
444 Reviewed by Dimitri Glazkov.
446 No new tests / refactoring only.
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):
468 2011-07-26 Pratik Solanki <psolanki@apple.com>
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>
474 Reviewed by Oliver Hunt.
476 Port over protection space authentication callback code from ResourceHandleMac.mm to
477 ResourceHandleCFNet.cpp.
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.
488 2011-07-26 Sadrul Habib Chowdhury <sadrul@chromium.org>
490 Add support for download='filename' attribute in anchors.
491 https://bugs.webkit.org/show_bug.cgi?id=64580
493 Reviewed by Adam Barth.
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
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.
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
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:
524 2011-07-26 Mark Hahnenberg <mhahnenberg@apple.com>
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
529 Reviewed by Oliver Hunt.
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.
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:
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):
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):
603 2011-07-26 Xiaomei Ji <xji@chromium.org>
605 --webkit-visual-word does not work in multi-line
606 https://bugs.webkit.org/show_bug.cgi?id=61344
608 Reviewed by Ryosuke Niwa.
610 Replace Position(node, offset, PositionIsOffsetInAnchor) with
611 createPositionAvoidingIgnoredNode(node, offset) which takes care of creating position
612 before/after <br/> etc. editingIgnoresContent node.
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).
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.
639 2011-07-26 David Hyatt <hyatt@apple.com>
641 https://bugs.webkit.org/show_bug.cgi?id=60778
643 Use after free because of line box culling optimization regression.
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.
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>.
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.
656 Reviewed by Dan Bernstein.
658 Added editing/execCommand/crash-line-break-after-outdent.html
660 * rendering/RenderLineBoxList.cpp:
661 (WebCore::RenderLineBoxList::dirtyLinesFromChangedChild):
663 2011-07-26 Dan Bernstein <mitz@apple.com>
665 <rdar://problem/9842889> Add a generic pictograph font family
666 https://bugs.webkit.org/show_bug.cgi?id=65197
668 Reviewed by Anders Carlsson.
670 Test: fast/css/font-family-pictograph.html
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.
686 (WebCore::Settings::pictographFontFamily): Added this getter.
687 (WebCore::Settings::setPictographFontFamily): Added this setter.
689 * platform/graphics/FontDescription.h: Added PictographFamily to the GenericFamilyType enum.
691 2011-07-26 Viet-Trung Luu <viettrungluu@chromium.org>
693 Improve (i.e., speed up) .gyp(i) files for Chromium
694 https://bugs.webkit.org/show_bug.cgi?id=65032
696 Reviewed by Adam Barth.
698 This re-applies r91595 with the source exclusion fixed.
700 Test by building (in all supported configurations).
702 * WebCore.gyp/WebCore.gyp:
705 2011-07-26 Alexis Menard <alexis.menard@openbossa.org>
707 [Qt] Disable video support on linux if the dependencies are not found.
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.
712 Reviewed by Holger Freyther.
714 No new tests, it's a build fix.
718 2011-07-26 Evan Martin <evan@chromium.org>
720 regression: generating CSSValueKeywords should not print by default
721 https://bugs.webkit.org/show_bug.cgi?id=65195
723 Reviewed by Tony Chang.
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.
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.
735 2011-07-26 Raphael Kubo da Costa <kubo@profusion.mobi>
737 [EFL] Do not crash on the isSlider() assert.
738 https://bugs.webkit.org/show_bug.cgi?id=65191
740 Reviewed by Antonio Gomes.
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
748 We now do what RenderThemeQt does, and assume everything was properly
749 done in the call to paintSliderTrack().
751 No new tests, as this has been uncovered by an existing test.
753 * platform/efl/RenderThemeEfl.cpp:
754 (WebCore::RenderThemeEfl::paintSliderThumb):
756 2011-07-26 Brian Salomon <bsalomon@google.com>
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
761 Reviewed by Stephen White.
763 No new tests. Not sure how to test wrong-ctx bugs in layout tests.
765 * platform/graphics/skia/SkiaFontWin.cpp:
766 (WebCore::paintSkiaText):
768 2011-07-26 Emil A Eklund <eae@chromium.org>
770 RenderText::absoluteRectsForRange() and absoluteQuadsForRange() have nearly duplicate code
771 https://bugs.webkit.org/show_bug.cgi?id=62478
773 Reviewed by Simon Fraser.
775 Test: fast/dom/Range/getClientRects.html
777 * platform/graphics/FloatRect.h:
778 (WebCore::FloatRect::isZero):
779 Add izZero method, unlike isEmpty this checks if both the width and the
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.
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
795 2011-07-26 Alexandru Chiculita <achicu@adobe.com>
797 [CSSRegions] Collect flowed elements in different render element
798 https://bugs.webkit.org/show_bug.cgi?id=64516
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.
807 Reviewed by Simon Fraser.
809 Tests: fast/regions/webkit-flow-renderer-layer.html
810 fast/regions/webkit-flow-renderer-nested.html
811 fast/regions/webkit-flow-renderer.html
813 * WebCore.vcproj/WebCore.vcproj:
814 * WebCore.xcodeproj/project.pbxproj:
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):
850 2011-07-26 Patrick Dubroy <dubroy@chromium.org>
852 Filename text in file upload controls is not aligned with button text on
853 chromium-linux, chromium-win, and gtk.
855 https://bugs.webkit.org/show_bug.cgi?id=64692
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().
860 Reviewed by Dimitri Glazkov.
862 * rendering/RenderFileUploadControl.cpp:
863 (WebCore::RenderFileUploadControl::paintObject):
865 2011-07-26 Sheriff Bot <webkit.review.bot@gmail.com>
867 Unreviewed, rolling out r91746.
868 http://trac.webkit.org/changeset/91746
869 https://bugs.webkit.org/show_bug.cgi?id=65180
871 It broke SL build (Requested by Ossy on #webkit).
873 * dom/OptionElement.cpp:
874 (WebCore::OptionElement::normalizeText):
876 2011-07-26 Pavel Feldman <pfeldman@google.com>
878 Web Inspector: Better represent custom getters in the properties pane
879 https://bugs.webkit.org/show_bug.cgi?id=16734
881 Reviewed by Yury Semikhatsky.
883 Test: inspector/runtime/runtime-getProperties.html
885 * inspector/InjectedScriptSource.js:
887 * inspector/Inspector.json:
888 * inspector/front-end/ObjectPropertiesSection.js:
889 (WebInspector.ObjectPropertyTreeElement.prototype.update):
891 2011-07-26 Alexis Menard <alexis.menard@openbossa.org>
893 Reviewed by Andreas Kling.
895 [Qt] Change default backend to use GStreamer on Linux and QuickTime on Mac.
896 https://bugs.webkit.org/show_bug.cgi?id=63472
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.
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.
909 2011-07-26 Pavel Feldman <pfeldman@google.com>
911 Web Inspector: Implement setPropertyValue using evaluate and callFunctionOn
912 https://bugs.webkit.org/show_bug.cgi?id=65112
914 Reviewed by Yury Semikhatsky.
916 Test: inspector/runtime/runtime-setPropertyValue.html
918 * inspector/InjectedScript.cpp:
919 * inspector/InjectedScript.h:
920 * inspector/InjectedScriptSource.js:
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):
931 2011-07-26 Pavel Feldman <pfeldman@google.com>
933 Re-applying r91665 and r91668 with JSC issues fixed.
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.
938 https://bugs.webkit.org/show_bug.cgi?id=65103
939 https://bugs.webkit.org/show_bug.cgi?id=65110
941 Reviewed by Yury Semikhatsky.
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):
977 (WebInspector.inspect):
979 2011-07-26 Nikolas Zimmermann <nzimmermann@rim.com>
981 Prepare animVal support - phase 2
982 https://bugs.webkit.org/show_bug.cgi?id=65167
984 Reviewed by Dirk Schulze.
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.
989 Doesn't affect any tests, yet.
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):
1018 2011-07-26 Shinya Kawanaka <shinyak@google.com>
1020 Uses isHTMLSpace to normalize white spaces.
1021 https://bugs.webkit.org/show_bug.cgi?id=57746
1023 Reviewed by Kent Tamura.
1025 Test: fast/forms/option-strip-unicode-spaces.html
1027 * dom/OptionElement.cpp:
1028 (WebCore::OptionElement::normalizeText):
1029 Uses isHTMLSpace to trim and replace white spaces.
1031 2011-07-25 Ryuan Choi <ryuan.choi@samsung.com>
1033 [CMAKE] Split JSC related files from WebCore/CMakeLists.txt
1034 https://bugs.webkit.org/show_bug.cgi?id=61350
1036 Reviewed by Daniel Bates.
1038 No new tests, just moving jsc related files from CMakeLists.txt to UseJSC.cmake.
1043 2011-07-25 Dan Bernstein <mitz@apple.com>
1045 Fix the build by committing a rename in this file that I neglected to include in the previous commit.
1047 * css/CSSFontFaceSource.h:
1049 2011-07-25 Dan Bernstein <mitz@apple.com>
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
1054 Reviewed by Anders Carlsson and Darin Adler.
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.
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:
1067 2011-07-25 Al Patrick <apatrick@chromium.org>
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
1073 Reviewed by James Robinson.
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:
1087 2011-07-25 Sam Weinig <sam@webkit.org>
1089 Refactor ScrollableArea pinned predicates to be more generally useful
1090 <rdar://problem/9740379>
1092 Reviewed by Dan Bernstein.
1094 * platform/ScrollableArea.cpp:
1095 (WebCore::ScrollableArea::isPinnedInBothDirections):
1096 (WebCore::ScrollableArea::isPinnedHorizontallyInDirection):
1097 (WebCore::ScrollableArea::isPinnedVerticallyInDirection):
1098 * platform/ScrollableArea.h:
1100 2011-07-25 Nico Weber <thakis@chromium.org>
1102 [chromium] components/mac: Make webcore not depend on CoreAnimation
1103 https://bugs.webkit.org/show_bug.cgi?id=65143
1105 Reviewed by James Robinson.
1107 * platform/chromium/ScrollAnimatorChromiumMac.mm:
1109 2011-07-25 Ian Henderson <ianh@apple.com>
1111 WebFrame should have a method to determine its visual emptiness
1112 https://bugs.webkit.org/show_bug.cgi?id=64223
1114 Reviewed by Dan Bernstein.
1117 (WebCore::FrameView::isVisuallyNonEmpty): Add an accessor to FrameView
1118 so we can tell whether it's visually non-empty.
1120 2011-07-25 Scott Graham <scottmg@chromium.org>
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
1125 Reviewed by Nate Chapin.
1127 Rollback previous patch. Occasional crashes seen caused by
1128 CachedResource being deleted twice.
1130 * loader/cache/CachedResourceLoader.cpp:
1131 (WebCore::CachedResourceLoader::CachedResourceLoader):
1132 (WebCore::CachedResourceLoader::loadDone):
1133 * loader/cache/CachedResourceLoader.h:
1135 2011-07-25 Chris Rogers <crogers@google.com>
1137 Deprecate AudioBufferSourceNode .looping attribute and implement .loop
1138 https://bugs.webkit.org/show_bug.cgi?id=65133
1140 Reviewed by Kenneth Russell.
1142 No new tests since audio API is not yet implemented.
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:
1154 2011-07-25 James Robinson <jamesr@chromium.org>
1156 [chromium] HUD texture must be unreserved after drawing
1157 https://bugs.webkit.org/show_bug.cgi?id=65122
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.
1162 * platform/graphics/chromium/cc/CCHeadsUpDisplay.cpp:
1163 (WebCore::CCHeadsUpDisplay::draw):
1165 2011-07-25 David Grogan <dgrogan@chromium.org>
1167 Fix leveldb crash when compacting during destruction
1168 https://bugs.webkit.org/show_bug.cgi?id=64494
1170 Reviewed by Nate Chapin.
1172 Only tested manually so far by following the repro instructions at
1175 * platform/leveldb/LevelDBDatabase.cpp:
1176 (WebCore::LevelDBDatabase::~LevelDBDatabase):
1177 * storage/IDBLevelDBBackingStore.cpp:
1178 (WebCore::IDBLevelDBBackingStore::~IDBLevelDBBackingStore):
1180 2011-07-25 David Reveman <reveman@chromium.org>
1182 [Chromium] Use correct vertex shader when rendering video layer.
1183 https://bugs.webkit.org/show_bug.cgi?id=65131
1185 Reviewed by James Robinson.
1187 Add new VertexShaderQuad program that is used by LayerTilerChromium.
1188 Change VertexShaderPosTexTransform so it works with CCVideoLayerImpl.
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):
1202 2011-07-25 Patrick Gansterer <paroga@webkit.org>
1204 Fix AtomicString vs. String usage in accessibility code
1205 https://bugs.webkit.org/show_bug.cgi?id=65086
1207 Reviewed by Darin Adler.
1209 Use AtomicString instead of String where appropriate
1210 to avoid implicit type conversations.
1211 Also fix a invalid reference to a temporary String.
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:
1221 2011-07-25 Dan Bernstein <mitz@apple.com>
1223 Reverted r91699 due to
1224 <http://webkit.org/b/65134> REGRESSION: r91699 broke some font tests (image+text)
1226 Many tests relied on font loading occurring synchronously in the cached and local cases.
1228 * css/CSSFontFaceSource.cpp:
1229 (WebCore::CSSFontFaceSource::CSSFontFaceSource):
1230 (WebCore::CSSFontFaceSource::~CSSFontFaceSource):
1231 (WebCore::CSSFontFaceSource::getFontData):
1232 * css/CSSFontFaceSource.h:
1234 2011-06-07 Martin Robinson <mrobinson@igalia.com>
1236 Reviewed by Gustavo Noronha Silva.
1238 [GTK] Use WebCore scrollbars for the DRT instead of GtkScrolledWindow
1239 https://bugs.webkit.org/show_bug.cgi?id=62252
1241 Properly handle the situation where the GtkWidget wants WebCore to draw its
1242 own main frame scrollbars.
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.
1249 2011-07-25 David Hyatt <hyatt@apple.com>
1251 https://bugs.webkit.org/show_bug.cgi?id=65125
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.
1257 Reviewed by Dan Bernstein.
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:
1281 2011-07-25 Dan Bernstein <mitz@apple.com>
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
1286 Reviewed by Anders Carlsson.
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.
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:
1299 2011-07-25 Andrew Wason <rectalogic@rectalogic.com>
1301 [Qt] Adopt GraphicsContext3DOpenGL.cpp and ANGLE (part 2)
1302 https://bugs.webkit.org/show_bug.cgi?id=64878
1304 Reviewed by Noam Rosenthal.
1306 Existing WebGL layout tests should test this.
1308 Adopt GraphicsContext3DOpenGL.cpp and ANGLE compiler for Qt.
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.
1317 2011-07-25 Daniel Bates <dbates@rim.com>
1319 REGRESSION (r85964): Improper relayout of some nested positioned elements
1320 https://bugs.webkit.org/show_bug.cgi?id=64286
1322 Reviewed by David Hyatt.
1324 Fixes an issue when traversing up the containing block hierarchy after skipping
1325 relatively positioned inlines.
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.
1333 Test: fast/block/positioning/relayout-nested-positioned-elements-crash.html
1335 * rendering/RenderObject.h:
1336 (WebCore::RenderObject::markContainingBlocksForLayout):
1338 2011-07-25 Arno Renevier <arno@renevier.net>
1340 removes last ENABLE(DRAG_SUPPORT) gtk check
1341 https://bugs.webkit.org/show_bug.cgi?id=64518
1343 Reviewed by Martin Robinson.
1345 * platform/gtk/ClipboardGtk.h:
1347 2011-07-25 Alexandru Chiculita <achicu@adobe.com>
1349 [CSS Exclusions] Use HANDLE_INHERIT_AND_INITIAL when parsing -webkit-wrap-shape
1350 https://bugs.webkit.org/show_bug.cgi?id=65096
1352 Also the 'inherit' keyword is now treated correctly. It will
1353 copy the value from the parent style.
1355 Reviewed by Tony Chang.
1357 * css/CSSStyleSelector.cpp:
1358 (WebCore::CSSStyleSelector::applyProperty):
1360 2011-07-25 Andrew Wason <rectalogic@rectalogic.com>
1362 glActiveTexture(0) is invalid
1363 https://bugs.webkit.org/show_bug.cgi?id=65115
1365 Reviewed by Kenneth Russell.
1367 Existing WebGL layout tests.
1369 Fix invalid glActiveTexture(0) call.
1371 * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
1372 (WebCore::GraphicsContext3D::prepareTexture):
1374 2011-07-25 Sheriff Bot <webkit.review.bot@gmail.com>
1376 Unreviewed, rolling out r91665.
1377 http://trac.webkit.org/changeset/91665
1378 https://bugs.webkit.org/show_bug.cgi?id=65118
1380 Breaks inspector tests on JSC (Requested by pfeldman on
1383 * inspector/InjectedScriptSource.js:
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):
1409 (WebInspector.inspect):
1411 2011-07-25 Sheriff Bot <webkit.review.bot@gmail.com>
1413 Unreviewed, rolling out r91668.
1414 http://trac.webkit.org/changeset/91668
1415 https://bugs.webkit.org/show_bug.cgi?id=65117
1417 Breaks inspector tests on JSC (Requested by pfeldman on
1420 * inspector/InjectedScript.cpp:
1421 (WebCore::InjectedScript::callFunctionOn):
1422 * inspector/InjectedScript.h:
1423 * inspector/InjectedScriptSource.js:
1425 * inspector/Inspector.json:
1426 * inspector/InspectorRuntimeAgent.cpp:
1427 (WebCore::InspectorRuntimeAgent::callFunctionOn):
1429 2011-07-25 Pavel Feldman <pfeldman@google.com>
1431 Web Inspector: use dedicated type for object id in the protocol.
1432 https://bugs.webkit.org/show_bug.cgi?id=65110
1434 Reviewed by Yury Semikhatsky.
1436 * inspector/InjectedScript.cpp:
1437 (WebCore::InjectedScript::callFunctionOn):
1438 * inspector/InjectedScript.h:
1439 * inspector/InjectedScriptSource.js:
1441 * inspector/Inspector.json:
1442 * inspector/InspectorRuntimeAgent.cpp:
1443 (WebCore::InspectorRuntimeAgent::callFunctionOn):
1445 2011-07-25 Yury Semikhatsky <yurys@chromium.org>
1447 [Chromium] Web Inspector: live edit error should be revealed in Console
1448 https://bugs.webkit.org/show_bug.cgi?id=65109
1450 Reviewed by Pavel Feldman.
1452 * inspector/front-end/SourceFrame.js:
1453 (WebInspector.SourceFrame.prototype.commitEditing.didEditContent):
1454 (WebInspector.SourceFrame.prototype.commitEditing):
1456 2011-07-25 Pavel Feldman <pfeldman@google.com>
1458 Web Inspector: refactor remote object structure to contain value for primitive values.
1459 https://bugs.webkit.org/show_bug.cgi?id=65103
1461 Reviewed by Yury Semikhatsky.
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):
1489 (WebInspector.inspect):
1491 2011-07-25 Mikhail Naganov <mnaganov@chromium.org>
1493 Web Inspector: [Chromium] Fix mixing of retaining path in heap profiler.
1494 https://bugs.webkit.org/show_bug.cgi?id=65028
1496 Reviewed by Pavel Feldman.
1498 * inspector/front-end/DetailedHeapshotView.js:
1499 (WebInspector.HeapSnapshotPathFinderState): Added
1500 (WebInspector.HeapSnapshotRetainingPathsList): Extracted State-specific code
1502 2011-07-25 Yury Semikhatsky <yurys@chromium.org>
1504 Web Inspector: worker inspector should show Scripts panel by default
1505 https://bugs.webkit.org/show_bug.cgi?id=65099
1507 Reviewed by Pavel Feldman.
1509 * inspector/front-end/inspector.js:
1510 (WebInspector._defaultPanelName):
1511 (WebInspector.showPanel):
1513 2011-07-24 Luke Macpherson <macpherson@chromium.org>
1515 Small cleanup of m_fontDirty tracking in CSSStyleSelector
1516 https://bugs.webkit.org/show_bug.cgi?id=65090
1518 Reviewed by Darin Adler.
1520 1) Use existing setFontDescription helper where appropriate.
1521 2) Move always used m_fontDirty check into updateFont()
1523 No new tests / cleanup only.
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:
1534 2011-07-24 Kent Tamura <tkent@chromium.org>
1536 Validation message bubble position is incorrect if the containing block has paddings.
1537 https://bugs.webkit.org/show_bug.cgi?id=65091
1539 Reviewed by Hajime Morita.
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.
1546 2011-07-24 Rob Buis <rbuis@rim.com>
1548 Crash in SVGUseElement::updateContainerOffsets on <use> with no parent
1549 https://bugs.webkit.org/show_bug.cgi?id=63646
1551 Reviewed by Darin Adler.
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.
1556 Test: svg/custom/use-shadow-root-parent-removal.svg
1558 * svg/SVGUseElement.cpp:
1559 (WebCore::SVGUseElement::svgAttributeChanged):
1561 2011-07-24 Patrick Gansterer <paroga@webkit.org>
1563 Fix AtomicString vs. String usage in JSC binding
1564 https://bugs.webkit.org/show_bug.cgi?id=65085
1566 Reviewed by Darin Adler.
1568 Use ustringToAtomicString instead of ustringToString where appropriate.
1570 * bindings/js/JSHTMLAllCollectionCustom.cpp:
1571 * bindings/js/JSHTMLCollectionCustom.cpp:
1573 2011-07-24 Luke Macpherson <macpherson@chromium.org>
1575 Implement CSSPropertyOutlineOffset in CSSStyleApplyProperty.
1576 https://bugs.webkit.org/show_bug.cgi?id=64773
1578 Reviewed by Dimitri Glazkov.
1580 No new tests / refactoring only.
1582 * css/CSSStyleApplyProperty.cpp:
1583 (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
1584 * css/CSSStyleSelector.cpp:
1585 (WebCore::CSSStyleSelector::applyProperty):
1587 2011-07-24 Rob Buis <rbuis@rim.com>
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
1592 Reviewed by Nikolas Zimmermann.
1594 Only bail out on zero offset if it is not explicitly set.
1596 Test: svg/custom/use-move-to-offset.svg
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):
1607 2011-07-24 Jeffrey Pfau <jpfau@apple.com>
1609 Refactor HTML tokenizer code in preparation for a new XML tokenizer
1610 https://bugs.webkit.org/show_bug.cgi?id=65000
1612 Reviewed by Adam Barth.
1614 * GNUmakefile.list.am:
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):
1671 2011-07-23 Patrick Gansterer <paroga@webkit.org>
1673 Remove WTF namespace from isMainThread() calls
1674 https://bugs.webkit.org/show_bug.cgi?id=65068
1676 Reviewed by Sam Weinig.
1678 Because of the using WTF::isMainThread in the header there is no
1679 reason to include the namespace name when calling this function.
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:
1689 2011-07-23 Alok Priyadarshi <alokp@chromium.org>
1691 Switching off acceleration for small canvas broke gpu tests
1692 https://bugs.webkit.org/show_bug.cgi?id=65053
1694 Reviewed by Stephen White.
1696 No new tests. These are supposed to fix existing canvas tests on gpu.
1698 * html/canvas/CanvasRenderingContext2D.cpp:
1699 (WebCore::shouldAccelerateCanvas):
1700 * page/Settings.cpp:
1701 (WebCore::Settings::Settings):
1702 (WebCore::Settings::setLegacyAccelerated2dCanvasEnabled):
1703 (WebCore::Settings::setMinimumAccelerated2dCanvasSize):
1705 (WebCore::Settings::minimumAccelerated2dCanvasSize):
1707 2011-07-23 Rob Buis <rbuis@rim.com>
1709 Freed SVGTRefElement used in SVGStyledElement::buildPendingResourcesIfNeeded
1710 https://bugs.webkit.org/show_bug.cgi?id=64758
1712 Reviewed by Nikolas Zimmermann.
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.
1718 (WebCore::Text::recalcStyle):
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):
1728 2011-07-23 Shinya Kawanaka <shinyak@google.com>
1730 Display number field without using a thousand separator.
1731 https://bugs.webkit.org/show_bug.cgi?id=65064
1733 Reviewed by Kent Tamura.
1735 Separated formatters for parsing and displaying.
1736 Removed a test for thousand separator.
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.
1758 2011-07-22 James Robinson <jamesr@chromium.org>
1760 [chromium] Seperate texture management for contents textures vs render surface textures
1761 https://bugs.webkit.org/show_bug.cgi?id=64771
1763 Reviewed by Kenneth Russell.
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.
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.
1777 Covered by existing compositing tests.
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):
1802 2011-07-22 Simon Fraser <simon.fraser@apple.com>
1804 Avoiding painting backgrounds if they are fully obscures by an object's foreground
1805 https://bugs.webkit.org/show_bug.cgi?id=65030
1807 Reviewed by Dan Bernstein.
1809 Some pages use animated loading GIFs as the background of <img>,
1810 but WebKit keeps animating these after the <img> has loaded.
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
1816 * platform/graphics/BitmapImage.h:
1817 (WebCore::BitmapImage::currentFrameHasAlpha): Utility method, since currentFrame()
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().
1841 2011-07-22 Kenneth Russell <kbr@google.com>
1843 HTMLImageElement::crossOrigin is hard to use because of caching
1844 https://bugs.webkit.org/show_bug.cgi?id=64813
1846 Reviewed by Adam Barth.
1848 Reload the resource if the allowCredentials flag doesn't match that in the request.
1850 Test: http/tests/security/canvas-remote-read-remote-image-blocked-then-allowed.html
1852 * loader/cache/CachedResourceLoader.cpp:
1853 (WebCore::CachedResourceLoader::requestResource):
1854 (WebCore::CachedResourceLoader::determineRevalidationPolicy):
1855 * loader/cache/CachedResourceLoader.h:
1857 2011-07-22 Simon Fraser <simon.fraser@apple.com>
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
1862 Reviewed by Joseph Pecoraro.
1864 When switching to or from tiled layers, we need to update the new layer's
1865 acceleratesDrawing status.
1867 * platform/graphics/ca/GraphicsLayerCA.cpp:
1868 (WebCore::GraphicsLayerCA::swapFromOrToTiledLayer):
1870 2011-07-22 Mark Pilgrim <pilgrim@chromium.org>
1872 Add [Optional=CallWithDefaultValues] flag and use it in initXXXEvent declarations
1873 https://bugs.webkit.org/show_bug.cgi?id=64973
1875 Reviewed by Adam Barth.
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.
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.
1891 No new tests, all existing tests pass.
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:
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:
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:
1925 2011-07-22 Jessie Berlin <jberlin@apple.com>
1927 [WebKit2] Changing the cookie accept policy in Private Browsing doesn’t work
1928 https://bugs.webkit.org/show_bug.cgi?id=64997
1930 Reviewed by Ada Chan.
1933 * platform/mac/WebCoreSystemInterface.h:
1934 * platform/mac/WebCoreSystemInterface.mm:
1936 2011-07-22 Sergey Glazunov <serg.glazunov@gmail.com>
1938 Perform the JavaScript navigation check on a complete URL
1939 https://bugs.webkit.org/show_bug.cgi?id=65038
1941 Reviewed by Adam Barth.
1943 Test: http/tests/security/xss-DENIED-document-baseURI-javascript.html
1945 * page/DOMWindow.cpp:
1946 (WebCore::DOMWindow::setLocation):
1947 (WebCore::DOMWindow::createWindow):
1948 (WebCore::DOMWindow::open):
1950 2011-07-22 Ryosuke Niwa <rniwa@webkit.org>
1952 Revert r91595 for it broke Chromium Windows build.
1954 * WebCore.gyp/WebCore.gyp:
1957 2011-07-22 Mihnea Ovidenie <mihnea@adobe.com>
1959 BORDER attribute with the IMG tag, using percentage values not working.
1960 https://bugs.webkit.org/show_bug.cgi?id=20226
1962 Reviewed by Simon Fraser.
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
1968 * html/HTMLImageElement.cpp:
1969 (WebCore::parseBorderWidthAttribute):
1970 (WebCore::HTMLImageElement::parseMappedAttribute):
1971 * html/parser/HTMLParserIdioms.cpp:
1972 (WebCore::parseHTMLNonNegativeInteger):
1973 * html/parser/HTMLParserIdioms.h:
1975 2011-07-22 Scott Graham <scottmg@chromium.org>
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
1980 Reviewed by James Robinson.
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.
1993 * loader/DocumentLoader.h:
1994 (WebCore::DocumentLoader::didTellClientAboutLoad):
1996 2011-07-22 Alok Priyadarshi <alokp@chromium.org>
1998 Use software rendering for small canvas
1999 https://bugs.webkit.org/show_bug.cgi?id=64958
2001 Reviewed by Stephen White.
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.
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:
2017 2011-07-21 Adrienne Walker <enne@google.com>
2019 Fix repainting of composited fixed position elements in iframes
2020 https://bugs.webkit.org/show_bug.cgi?id=64010
2022 Reviewed by Simon Fraser.
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.
2029 * page/FrameView.cpp:
2030 (WebCore::FrameView::scrollContentsSlowPath):
2032 2011-07-22 Viet-Trung Luu <viettrungluu@chromium.org>
2034 Improve (i.e., speed up) .gyp(i) files for Chromium
2035 https://bugs.webkit.org/show_bug.cgi?id=65032
2037 Reviewed by Adam Barth.
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.
2043 Test by building (in all supported configurations).
2045 * WebCore.gyp/WebCore.gyp:
2048 2011-07-22 Tony Chang <tony@chromium.org>
2050 add placeholder RenderFlexibleBox.cpp files
2051 https://bugs.webkit.org/show_bug.cgi?id=64982
2053 Reviewed by Ojan Vafai.
2055 No new tests, just adding new files and making sure it compiles.
2056 Also adding the isFlexibleBox identifier to RenderObject.
2059 * GNUmakefile.list.am:
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):
2074 2011-07-22 James Robinson <jamesr@chromium.org>
2076 [chromium] Force slow scrolling path for non-composited frames in a composited page
2077 https://bugs.webkit.org/show_bug.cgi?id=64991
2079 Reviewed by Darin Fisher.
2081 The chromium compositor does not properly handle fast path scrolls for non-composited iframe in a composited
2084 * page/FrameView.cpp:
2085 (WebCore::FrameView::useSlowRepaints):
2087 2011-07-22 Andrew Scherkus <scherkus@chromium.org>
2089 Remove surfaceType() and texture() methods from Chromium video frame classes.
2090 https://bugs.webkit.org/show_bug.cgi?id=64818
2092 Reviewed by Kenneth Russell.
2094 No tests as code was never being executed.
2096 * platform/graphics/chromium/VideoFrameChromium.h:
2097 * platform/graphics/chromium/VideoLayerChromium.cpp:
2098 (WebCore::VideoLayerChromium::updateCompositorResources):
2099 * platform/graphics/chromium/VideoLayerChromium.h:
2101 2011-07-22 Nate Chapin <japhet@chromium.org>
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
2108 Reviewed by Mihai Parparita.
2110 Test: fast/loader/child-frame-add-after-back-forward.html
2112 * dom/Document.h: Drive-by FIXME.
2113 * loader/DocumentLoader.h: Drive-by FIXME.
2114 * loader/FrameLoader.cpp:
2115 (WebCore::FrameLoader::loadURLIntoChildFrame):
2117 2011-07-22 Kent Tamura <tkent@google.com>
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
2122 Reviewed by Dimitri Glazkov.
2124 We need to update the apeearance of thumbs before the layout of RenderSlider.
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.
2143 2011-07-22 Kent Tamura <tkent@chromium.org>
2145 Validation message bubble is incorrectly positioned in a relative body.
2146 https://bugs.webkit.org/show_bug.cgi?id=65018
2148 Reviewed by Dimitri Glazkov.
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.
2154 Test: fast/forms/validation-message-in-relative-body.html
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().
2164 2011-07-22 David Grogan <dgrogan@chromium.org>
2166 Fix crash in IDBRequest::abort
2167 https://bugs.webkit.org/show_bug.cgi?id=64740
2169 Reviewed by Nate Chapin.
2171 Tested manually with the testcase in the bug.
2173 * storage/IDBRequest.cpp:
2174 (WebCore::IDBRequest::~IDBRequest):
2175 (WebCore::IDBRequest::abort):
2177 2011-07-22 Patrick Gansterer <paroga@webkit.org>
2179 Replace preprocessor statements in IDL files with Conditional attribute
2180 https://bugs.webkit.org/show_bug.cgi?id=64961
2182 Reviewed by Darin Adler.
2184 Replaced ENABLE_DATALIST, ENABLE_DIRECTORY_UPLOAD, ENABLE_INPUT_SPEECH, ENABLE_MEDIA_STATISTICS
2185 and ENABLE_ORIENTATION_EVENTS with the corresponding Conditional attribute.
2187 * html/HTMLBodyElement.idl:
2188 * html/HTMLFrameSetElement.idl:
2189 * html/HTMLInputElement.idl:
2190 * html/HTMLMediaElement.idl:
2191 * html/HTMLVideoElement.idl:
2193 2011-07-22 Andrey Kosyakov <caseq@chromium.org>
2195 Web Inspector: [Extensions API] add webInspector.resources.onContentEdited
2196 https://bugs.webkit.org/show_bug.cgi?id=65024
2198 Reviewed by Pavel Feldman.
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):
2207 2011-07-22 Pavel Podivilov <podivilov@chromium.org>
2209 Web Inspector: fix exception when paused in internal script.
2210 https://bugs.webkit.org/show_bug.cgi?id=64995
2212 Reviewed by Yury Semikhatsky.
2214 Test: inspector/debugger/pause-in-internal-script.html
2216 * inspector/front-end/DebuggerPresentationModel.js:
2217 (WebInspector.PresenationCallFrame.prototype.sourceLine):
2219 2011-07-22 Ilya Tikhonovsky <loislo@chromium.org>
2221 Web Inspector: sometimes ReceiveResponse event is attached to wrong parent.
2222 https://bugs.webkit.org/show_bug.cgi?id=65016
2224 Reviewed by Yury Semikhatsky.
2226 Test: inspector/timeline/timeline-receive-response-event.html
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):
2241 2011-07-22 Kentaro Hara <haraken@google.com>
2243 REGRESSION(r89535): Form reset does not repaint a file upload control.
2244 https://bugs.webkit.org/show_bug.cgi?id=65008
2246 Reviewed by Kent Tamura.
2248 This patch fixes the code so that the file upload control is repainted
2249 in updateFromElement() if no files are selected.
2251 Tests: fast/forms/file-input-reset.html
2253 * rendering/RenderFileUploadControl.cpp:
2254 (WebCore::RenderFileUploadControl::updateFromElement): Calls repaint() if no files are selected.
2256 2011-07-22 Ilya Tikhonovsky <loislo@chromium.org>
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
2261 Reviewed by Yury Semikhatsky.
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):
2287 2011-07-22 Sheriff Bot <webkit.review.bot@gmail.com>
2289 Unreviewed, rolling out r91024.
2290 http://trac.webkit.org/changeset/91024
2291 https://bugs.webkit.org/show_bug.cgi?id=65017
2293 number of problems happened with invisible elements which grab
2294 pointer events. (Requested by loislo on #webkit).
2296 * inspector/front-end/inspector.css:
2300 2011-07-22 Jia Pu <jpu@apple.com>
2302 Reviewed by Darin Adler.
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>
2308 * editing/Editor.cpp:
2309 (WebCore::Editor::textFieldDidEndEditing): Dismiss autocorrection panel when current node losing focus.
2311 2011-07-21 Kent Tamura <tkent@chromium.org>
2313 A trivial fix for r91550.
2314 https://bugs.webkit.org/show_bug.cgi?id=65001
2316 Need to update placeholder visibility when the owner elemnent style is changed.
2318 * html/HTMLTextFormControlElement.h: Make updatePlaceholderVisibility() public.
2319 * rendering/RenderTextControl.cpp:
2320 (WebCore::RenderTextControl::styleDidChange):
2321 Call updatePlaceholderVisibility().
2323 2011-07-21 Pratik Solanki <psolanki@apple.com>
2325 https://bugs.webkit.org/show_bug.cgi?id=65002
2326 Get authentication to work with USE(CFNETWORK) on Mac
2328 Reviewed by David Kilzer.
2330 Instead of creating a new CFURLAuthChallengeRef, we save and reuse the same object as the
2331 one given to us by CFNetwork.
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
2341 2011-07-21 Kent Tamura <tkent@chromium.org>
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
2346 Reviewed by Dimitri Glazkov.
2348 Tests: fast/forms/placeholder-in-invisible-elements.html
2349 fast/forms/search-cancel-in-invisible-elements.html
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.
2357 2011-07-21 Shinya Kawanaka <shinyak@google.com>
2359 The input[type="number"] with step="any" should not suffer from step mismatch.
2360 https://bugs.webkit.org/show_bug.cgi?id=64858
2362 Reviewed by Kent Tamura.
2364 Added check step="any" not to suffer from step mismatch.
2366 * html/HTMLInputElement.cpp:
2367 (WebCore::HTMLInputElement::applyStep): Added check step="any".
2368 (WebCore::HTMLInputElement::alignValueForStep): Added.
2370 2011-07-21 MORITA Hajime <morrita@google.com>
2372 [Refactoring] ShadowContentSelector should be ShadowInclusionSelector
2373 https://bugs.webkit.org/show_bug.cgi?id=64850
2375 Reviewed by Dimitri Glazkov.
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
2386 No new tests. Just a textual change.
2389 * GNUmakefile.list.am:
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):
2440 2011-07-21 Robin Qiu <robin.qiu.dev@gmail.com>
2442 https://bugs.webkit.org/show_bug.cgi?id=60737
2444 ThumbPosition() in ScrollbarTheme should be ceiled before returned.
2445 Otherwise, some topest/leftest content can not be shown by dragging
2449 Reviewed by Antonio Gomes.
2451 Test: scrollbars/scrollbar-drag-thumb-with-large-content.html
2453 * platform/ScrollbarThemeComposite.cpp:
2454 (WebCore::ScrollbarThemeComposite::thumbPosition):
2455 * platform/qt/ScrollbarThemeQt.cpp:
2456 (WebCore::ScrollbarThemeQt::thumbPosition):
2458 2011-07-21 Simon Fraser <simon.fraser@apple.com>
2460 GraphicsLayers in subframes can get sync'd multiple times
2461 https://bugs.webkit.org/show_bug.cgi?id=52489
2463 Reviewed by James Robinson.
2465 Avoid doing a 'syncCompositingState' pass on the GraphicsLayers
2466 for subframes, when those GraphicsLayers are rooted in the
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
2475 (WebCore::FrameView::paintContents): The sync is for this frame, so pass m_frame.
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().
2486 2011-07-21 Rafael Brandao <rafael.lobo@openbossa.org>
2488 Local files cannot load icons.
2489 https://bugs.webkit.org/show_bug.cgi?id=62459
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.
2496 Reviewed by Adam Barth.
2498 Test: manual-tests/resources/favicon-loads-for-local-files.html
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.
2504 * loader/icon/IconDatabase.cpp:
2505 (WebCore::IconDatabase::documentCanHaveIcon): Renamed function "pageCanHaveIcon"
2506 to reflect better which url we're handling.
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.
2521 * manual-tests/resources/favicon-loads-for-local-files.html: Added.
2522 * manual-tests/resources/favicon.png: Added.
2524 2011-07-21 Kulanthaivel Palanichamy <kulanthaivel@codeaurora.org>
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
2530 Reviewed by David Hyatt.
2532 Test: fast/css/absolute-child-with-percent-height-inside-relative-parent.html
2534 * rendering/RenderBox.cpp:
2535 (WebCore::RenderBox::availableLogicalHeightUsing):
2537 2011-07-21 Gavin Peters <gavinp@chromium.org>
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.
2542 https://bugs.webkit.org/show_bug.cgi?id=64736
2544 Reviewed by Simon Fraser.
2546 Test: fast/css/css-imports-2.html
2548 * css/CSSStyleSheet.cpp:
2549 (WebCore::CSSStyleSheet::checkLoaded):
2551 2011-07-21 Kenneth Russell <kbr@google.com>
2553 Update webglcontextlost / webglcontextrestored delivery to match spec changes
2554 https://bugs.webkit.org/show_bug.cgi?id=58621
2556 Reviewed by James Robinson.
2558 Updated conditions under which webglcontextrestored event is
2559 delivered to be spec compliant.
2561 * html/canvas/WebGLRenderingContext.cpp:
2562 (WebCore::WebGLRenderingContext::WebGLRenderingContext):
2563 (WebCore::WebGLRenderingContext::loseContext):
2564 (WebCore::WebGLRenderingContext::maybeRestoreContext):
2565 * html/canvas/WebGLRenderingContext.h:
2567 2011-07-21 Dave Hyatt <hyatt@apple.com>
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.
2574 Reviewed by Beth Dakin.
2576 Covered by existing tests.
2578 * rendering/RenderBlock.cpp:
2579 (WebCore::RenderBlock::MarginInfo::MarginInfo):
2581 2011-07-21 Matthew Delaney <mdelaney@apple.com>
2583 Add fast path for ImageBuffer::draw, Take 2.
2584 https://bugs.webkit.org/show_bug.cgi?id=64535
2586 Reviewed by Simon Fraser.
2588 No new tests. This patch doesn't change behavior; current tests are sufficient.
2590 * platform/graphics/GraphicsContext.cpp:
2591 (WebCore::GraphicsContext::drawImage): Moved the main method version next to wrapper versions.
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.
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.
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.
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
2621 2011-07-21 David Kilzer <ddkilzer@apple.com>
2623 <http://webkit.org/b/64972> Clean up generated HTMLEntityTable.cpp output
2625 Reviewed by Eric Seidel.
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
2633 - Add static (const) keywords to local variables that are never
2634 referenced externally.
2636 2011-07-21 Mark Pilgrim <pilgrim@chromium.org>
2638 Remove LegacyDefaultOptionalArguments flag from FileAPI
2639 https://bugs.webkit.org/show_bug.cgi?id=64539
2641 Reviewed by Adam Barth.
2643 No new tests, all existing tests pass.
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:
2668 2011-07-21 Tony Chang <tony@chromium.org>
2670 sort WebCore.xcodeproj
2671 https://bugs.webkit.org/show_bug.cgi?id=64901
2673 Unreviewed, just using sort-Xcode-project-file.
2675 * WebCore.xcodeproj/project.pbxproj:
2677 2011-07-21 Enrica Casucci <enrica@apple.com>
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>
2683 Reviewed by David Hyatt.
2685 Test: editing/selection/click-on-block-image.html
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
2692 * rendering/RenderReplaced.cpp:
2693 (WebCore::RenderReplaced::positionForPoint): Modified to avoid relying entirely
2694 on InlineBox to calculate the position.
2697 2011-07-21 Pavel Feldman <pfeldman@google.com>
2699 Not reviewed: one liner typo fix in Inspector.json.
2701 * inspector/Inspector.json:
2703 2011-07-21 Sam Weinig <sam@webkit.org>
2705 CSS top margin collapses when paginating
2706 https://bugs.webkit.org/show_bug.cgi?id=64906
2708 Reviewed by David Hyatt.
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
2718 (WebCore::RenderBlock::nextPageLogicalTopExcludingBoundaryPoint):
2719 (WebCore::RenderBlock::nextPageLogicalTopIncludingBoundaryPoint):
2720 Split into two functions which differ in how they deal with the boundary condition.
2722 (WebCore::RenderBlock::applyBeforeBreak):
2723 (WebCore::RenderBlock::applyAfterBreak):
2724 Switch to call nextPageLogicalTopIncludingBoundaryPoint.
2726 * rendering/RenderBlock.h:
2727 Add new functions declarations and comment them.
2729 2011-07-21 Pavel Feldman <pfeldman@google.com>
2731 Web Inspector: RuntimeAgent.evaluateOn should not require "return X;" syntax.
2732 https://bugs.webkit.org/show_bug.cgi?id=64691
2734 Reviewed by Yury Semikhatsky.
2736 I'm introducing callFunctionOn that receives function declaration in order
2737 to make call site syntax clear.
2739 Test: inspector/runtime/runtime-callFunctionOn.html
2741 * inspector/InjectedScript.cpp:
2742 (WebCore::InjectedScript::callFunctionOn):
2743 * inspector/InjectedScript.h:
2744 * inspector/InjectedScriptSource.js:
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):
2760 2011-07-21 Andrew Wason <rectalogic@rectalogic.com>
2762 [Qt] Adopt existing GraphicsContext3D members (part 1)
2763 https://bugs.webkit.org/show_bug.cgi?id=64877
2765 Reviewed by Noam Rosenthal.
2767 Existing WebGL layout tests should test this.
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.
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):
2796 2011-07-21 Pavel Feldman <pfeldman@google.com>
2798 Web Inspector: [protocol] extend setBreakpointByUrl request to accept incomplete URL (predicates)
2799 https://bugs.webkit.org/show_bug.cgi?id=60762
2801 Reviewed by Yury Semikhatsky.
2803 Test: inspector/debugger/debugger-set-breakpoint-regex.html
2805 * inspector/Inspector.json:
2806 * inspector/InspectorDebuggerAgent.cpp:
2807 (WebCore::buildObjectForBreakpointCookie):
2809 (WebCore::InspectorDebuggerAgent::setBreakpointByUrl):
2810 (WebCore::InspectorDebuggerAgent::didParseSource):
2811 * inspector/InspectorDebuggerAgent.h:
2813 2011-07-21 Kent Tamura <tkent@chromium.org>
2815 REGRESSION(r88757): input[type=range] renders incorrectly in RTL context.
2816 https://bugs.webkit.org/show_bug.cgi?id=64904
2818 Reviewed by Ryosuke Niwa.
2820 Tests: fast/forms/input-appearance-range-rtl.html
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.
2828 2011-07-18 Vsevolod Vlasov <vsevik@chromium.org>
2830 Web Inspector: Remove networkDataRemoved field from resource.
2831 https://bugs.webkit.org/show_bug.cgi?id=64749
2833 Reviewed by Pavel Feldman.
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):
2841 2011-07-21 Tommy Widenflycht <tommyw@google.com>
2843 MediaStream API: Merging MediaStreamContainer and MediaStreamList
2844 https://bugs.webkit.org/show_bug.cgi?id=64794
2846 Reviewed by Tony Gentilcore.
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:
2861 2011-07-20 Yury Semikhatsky <yurys@chromium.org>
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
2866 Reviewed by Pavel Feldman.
2868 * inspector/front-end/WorkerManager.js:
2869 (WebInspector.WorkerManager.prototype.openWorkerInspector):
2871 2011-07-21 MORITA Hajime <morrita@google.com>
2873 [Refactoring] Shadow inclusion cache should be managed by ShadowContentSelector
2874 https://bugs.webkit.org/show_bug.cgi?id=64849
2876 Reviewed by Dimitri Glazkov.
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.
2888 No new tests. No behavior change.
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):
2939 2011-07-21 Rohan McGovern <rohan@mcgovern.id.au>
2941 Reviewed by Noam Rosenthal.
2943 [Qt] Qt5 Build Fix: remove useless use of qRound(int)
2944 https://bugs.webkit.org/show_bug.cgi?id=64907
2946 Rounding an integer doesn't make sense.
2947 Since 2dcd3939a8bd5ff743e4c87f87b2d81b1a101467 in qtbase, this is not
2948 permitted to compile.
2950 No new tests needed.
2952 * platform/graphics/qt/FontPlatformDataQt.cpp:
2953 (WebCore::FontPlatformData::FontPlatformData): Eliminate qRound(int).
2954 * platform/qt/PlatformScreenQt.cpp:
2955 (WebCore::screenDepthPerComponent): Ditto.
2957 2011-07-20 Ryosuke Niwa <rniwa@webkit.org>
2959 Fix a Valgrind failure caused by r91435.
2961 * platform/ScrollableArea.cpp:
2962 (WebCore::ScrollableArea::ScrollableArea):
2964 2011-07-20 Sheriff Bot <webkit.review.bot@gmail.com>
2966 Unreviewed, rolling out r91332.
2967 http://trac.webkit.org/changeset/91332
2968 https://bugs.webkit.org/show_bug.cgi?id=64925
2970 Crashes css3/images/optimize-contrast-canvas.html on safari-
2971 mac,chromium-mac (Requested by mikelawther on #webkit).
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):
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):
3020 2011-07-20 Ryosuke Niwa <rniwa@webkit.org>
3022 Chromium build fix after r91440.
3024 * platform/chromium/ScrollbarThemeChromiumMac.mm:
3025 (WebCore::ScrollbarThemeChromiumMac::paint):
3027 2011-07-20 Ryosuke Niwa <rniwa@webkit.org>
3029 Build fix after r91435.
3031 * platform/mac/ScrollViewMac.mm:
3032 (WebCore::ScrollView::platformSetScrollbarOverlayStyle):
3034 2011-07-20 Tim Horton <timothy_horton@apple.com>
3036 Reviewed by Darin Adler.
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>
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.
3048 * GNUmakefile.list.am:
3049 * svg/SVGLength.cpp:
3050 (WebCore::SVGLength::construct):
3051 (WebCore::SVGLength::rawValue):
3054 * svg/SVGParsingError.h: Added.
3057 * WebCore.vcproj/WebCore.vcproj:
3058 * WebCore.xcodeproj/project.pbxproj:
3060 2011-07-20 Levi Weintraub <leviw@chromium.org>
3062 Switch getTransformFromContainer and its uses to new layout types
3063 https://bugs.webkit.org/show_bug.cgi?id=64908
3065 Reviewed by Simon Fraser.
3067 Switching getTransformFromContainer and its uses to use the new Layout
3068 Types from strictly integer ones.
3070 No new tests, no new functionality.
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):
3085 2011-07-20 Tim Horton <timothy_horton@apple.com>
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>
3091 Reviewed by Darin Adler.
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.
3098 No new tests, since this code is only enabled on future versions of Mac OS X.
3102 (WebCore::Frame::getDocumentBackgroundColor):
3104 * page/FrameView.cpp:
3105 (WebCore::FrameView::recalculateScrollbarOverlayStyle):
3106 (WebCore::FrameView::setBaseBackgroundColor):
3107 (WebCore::FrameView::documentBackgroundColor): Renamed.
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):
3129 2011-07-20 Luke Macpherson <macpherson@chromium.org>
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
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.
3140 Reviewed by Simon Fraser.
3142 No new tests / refactoring.
3144 * css/CSSStyleApplyProperty.cpp:
3145 (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
3146 * css/CSSStyleSelector.cpp:
3147 (WebCore::CSSStyleSelector::applyProperty):
3149 2011-07-20 Tony Chang <tony@chromium.org>
3151 Remove stray reference to StyleFlexibleBoxData.h that was accidentally
3154 * WebCore.xcodeproj/project.pbxproj:
3156 2011-07-20 Levi Weintraub <leviw@chromium.org>
3158 Bring Int/Float graphics classes closer to parity
3159 https://bugs.webkit.org/show_bug.cgi?id=64833
3161 Reviewed by James Robinson.
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.
3166 Also fixing some compiler errors when using Floats for layout units along the way.
3168 No new tests, no functionality change.
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:
3212 2011-07-20 Scott Graham <scottmg@chromium.org>
3214 mouseover reporting incorrect mouse button, when the button isn't
3215 down. https://bugs.webkit.org/show_bug.cgi?id=64882
3217 Reviewed by Eric Seidel.
3219 Don't increment the button returned in 'which' unless the button is
3222 Test: fast/events/mouseover-button.html
3224 * dom/MouseEvent.cpp:
3225 (WebCore::MouseEvent::which):
3227 2011-07-20 Kenneth Russell <kbr@google.com>
3229 Add restoreContext() to WEBKIT_lose_context
3230 https://bugs.webkit.org/show_bug.cgi?id=58626
3232 Reviewed by James Robinson.
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.
3238 A subsequent patch will make the delivery of the webglcontextrestored
3239 event spec compliant.
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:
3258 2011-07-20 Tony Chang <tony@chromium.org>
3260 Pass -webkit-flex() values on to RenderStyle
3261 https://bugs.webkit.org/show_bug.cgi?id=64038
3263 Reviewed by Eric Seidel.
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
3269 * css/CSSStyleApplyProperty.cpp:
3270 (WebCore::ApplyPropertyLength::applyValue):
3271 (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
3273 2011-07-20 Daniel Bates <dbates@rim.com>
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).
3278 * xml/parser/MarkupTokenBase.h: #include <stdio.h> in debug build for printf(3), which is used in
3279 MarkupTokenBase::printString() and MarkupTokenBase::printAttrs().
3281 2011-07-19 Vsevolod Vlasov <vsevik@chromium.org>
3283 Web Inspector: Add support for disabling cache in web inspector.
3284 https://bugs.webkit.org/show_bug.cgi?id=64097
3286 Reviewed by Pavel Feldman.
3288 Tests: http/tests/inspector/network/network-disable-cache-memory.html
3289 http/tests/inspector/network/network-disable-cache-xhrs.html
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):
3309 2011-07-20 Peter Kasting <pkasting@google.com>
3311 Remove "const" from obviously-non-const accessors
3312 https://bugs.webkit.org/show_bug.cgi?id=62302
3314 Reviewed by Darin Adler.
3316 No functional change, so no new tests.
3318 * WebCore.exp.in: Adjust function names to reflect non-constness.
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().
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().
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().
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.
3455 2011-07-20 Andy Estes <aestes@apple.com>
3457 Fix the Mac build after r91392.
3459 * WebCore.xcodeproj/project.pbxproj: StyleFlexibleBoxData.h should be a
3460 private forwarding header of WebCore.
3462 2011-07-20 Jeffrey Pfau <jpfau@apple.com>
3464 New Token class for XML
3465 https://bugs.webkit.org/show_bug.cgi?id=64764
3467 Reviewed by Adam Barth.
3469 Refactor HTMLToken into MarkupTokenBase and add new XMLToken
3471 * GNUmakefile.list.am:
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: