1 2009-11-25 Dimitri Glazkov <dglazkov@chromium.org>
3 Reviewed by David Levin.
5 [Chromium] Implement canSetValueAttribute in the API, the clean-up part.
6 https://bugs.webkit.org/show_bug.cgi?id=31894
8 * accessibility/chromium/AccessibilityObjectWrapper.h: Added RefCounted decl.
9 (WebCore::AccessibilityObjectWrapper::AccessibilityObjectWrapper): Removed mis-refcountingness.
11 2009-11-25 Kenneth Russell <kbr@google.com>
13 Reviewed by Oliver Hunt.
15 Off-by-one error in index validation for drawElements and drawArrays
16 https://bugs.webkit.org/show_bug.cgi?id=31891
18 Fixed computation of number of elements for bound array objects.
20 Test: fast/canvas/webgl/index-validation.html
22 * html/canvas/WebGLRenderingContext.cpp:
23 (WebCore::WebGLRenderingContext::vertexAttribPointer):
25 2009-11-25 Dmitry Titov <dimich@chromium.org>
27 Reviewed by David Levin.
29 Update SharedScript to use eventNames() instead of EventNames()
30 https://bugs.webkit.org/show_bug.cgi?id=31890
32 * SharedScript/WebKitSharedScript.cpp:
33 (WebCore::LoadEventTask::performTask):
35 2009-11-25 Eric Carlson <eric.carlson@apple.com>
37 Reviewed by Simon Fraser.
39 <rdar://problem/7409331> Windows: Support closed caption in <video> element
41 Enable closed captions in QuickTime/Windows media engine.
43 * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
44 (WebCore::MediaPlayerPrivate::hasClosedCaptions):
45 (WebCore::MediaPlayerPrivate::setClosedCaptionsVisible):
46 New, all through to m_qtMovie.
48 * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.h:
49 Make all but the destructor private since MediaPlayer call through the media
52 * platform/graphics/win/QTMovieWin.cpp:
53 (QTMovieWin::disableUnsupportedTracks):
54 Use handy new constants for QuickTime track types.
55 (QTMovieWin::hasClosedCaptions):
56 (QTMovieWin::setClosedCaptionsVisible):
57 New, closed caption support.
58 * platform/graphics/win/QTMovieWin.h:
60 * rendering/RenderMediaControls.cpp:
61 (WebCore::RenderMediaControls::paintMediaControlsPart):
62 Deal with closed caption buttons.
64 * rendering/RenderThemeWin.cpp:
65 (WebCore::RenderThemeWin::shouldRenderMediaControlPart):
66 New, don't ask the media engine if it has closed captions unless the Safari theme will
67 be able to render the button.
68 (WebCore::RenderThemeWin::paintMediaToggleClosedCaptionsButton):
70 * rendering/RenderThemeWin.h:
72 2009-11-25 Drew Wilson <atwilson@chromium.org>
74 Reviewed by David Levin.
76 MessagePorts always look remotely entangled even when closed.
77 https://bugs.webkit.org/show_bug.cgi?id=31698
79 Tests: Existing tests suffice, Chromium soak test passes now.
81 * bindings/v8/custom/V8CustomBinding.h:
82 Removed kMessagePortEntangledPortIndex which is no longer used.
83 * bindings/v8/V8GCController.cpp:
84 (WebCore::GCPrologueVisitor::visitDOMWrapper):
85 Simplified GC code to reflect the Chromium MessagePort implementation
86 (locallyEntangledPort() always returns false).
87 (WebCore::GCEpilogueVisitor::visitDOMWrapper):
88 Cleaned up epilogue code to handle the case where the port gets closed
89 in mid-GC (due to the parent context being freed).
90 * dom/MessagePort.cpp:
91 (WebCore::MessagePort::MessagePort):
92 (WebCore::MessagePort::close):
93 Now sets the closed flag.
94 (WebCore::MessagePort::disentanglePorts):
95 Updated to use new isCloned() API instead of relying on isEntangled(), which was incorrect.
97 Added a m_closed flag and updated isEntangled() to check it.
98 (WebCore::MessagePort::isEntangled):
99 Now returns false if the port has been closed.
100 (WebCore::MessagePort::isCloned):
101 Added new API to differentiate between cloned and closed ports (closed ports can still be passed to postMessage).
103 2009-11-25 Jocelyn Turcotte <jocelyn.turcotte@nokia.com>
105 Reviewed by Simon Hausmann.
107 [Qt] Fix crash of QtWebKit on any page with Flash when compiled with MinGW.
109 Fix inline assembly, don't dereference the function pointer twice.
111 * plugins/win/PluginViewWin.cpp:
112 (WebCore::PluginView::hookedBeginPaint):
113 (WebCore::PluginView::hookedEndPaint):
115 2009-11-22 Jakub Wieczorek <faw217@gmail.com>
117 Reviewed by Adam Barth.
119 [Qt] Remove the Referer header when redirecting to a non-secure site
120 https://bugs.webkit.org/show_bug.cgi?id=31785
122 This makes Qt pass two tests introduced in r50226.
124 * platform/network/qt/QNetworkReplyHandler.cpp:
125 (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
127 2009-11-25 Andrei Popescu <andreip@google.com>
129 Reviewed by Dimitri Glazkov.
131 The select elements do not reflect the actual choice the user makes.
132 https://bugs.webkit.org/show_bug.cgi?id=31831
134 Handle the drawing of the listboxes in Android code.
136 No new features, just fixing an Android problem. Existing layout tests are sufficient.
138 * platform/android/RenderThemeAndroid.cpp:
140 (WebCore::RenderThemeAndroid::platformActiveSelectionBackgroundColor):
141 (WebCore::RenderThemeAndroid::platformActiveListBoxSelectionBackgroundColor):
142 (WebCore::RenderThemeAndroid::platformInactiveListBoxSelectionBackgroundColor):
143 (WebCore::RenderThemeAndroid::platformActiveListBoxSelectionForegroundColor):
144 (WebCore::RenderThemeAndroid::platformInactiveListBoxSelectionForegroundColor):
145 (WebCore::RenderThemeAndroid::adjustButtonStyle):
146 (WebCore::RenderThemeAndroid::paintTextArea):
147 (WebCore::RenderThemeAndroid::adjustListboxStyle):
148 * platform/android/RenderThemeAndroid.h:
150 2009-11-25 Alexander Pavlov <apavlov@chromium.org>
152 Reviewed by Pavel Feldman.
154 Load InspectorResource mime type from CachedResource for 304 responses
156 For network libraries that do not merge cache data into 304 ResourceResponses,
157 the mime type for cached resources is unknown.
158 https://bugs.webkit.org/show_bug.cgi?id=31868
160 * inspector/InspectorResource.cpp:
161 (WebCore::InspectorResource::updateResponse):
162 (WebCore::InspectorResource::updateScriptObject):
163 (WebCore::InspectorResource::type):
165 2009-11-25 Andrei Popescu <andreip@google.com>
167 Reviewed by Eric Seidel.
169 Android is missing implementation of SSL Key generator functions.
170 https://bugs.webkit.org/show_bug.cgi?id=31825
172 This change adds the PlatformBridge class to platform/android.
173 PlarformBridge is used to access the embedding layer for things
174 such as key generator, cookies, plugins, etc.
176 No new tests required, this is platform code.
178 * platform/android/PlatformBridge.h: Added.
179 * platform/android/SSLKeyGeneratorAndroid.cpp: Added.
180 (WebCore::getSupportedKeySizes):
181 (WebCore::signedPublicKeyAndChallengeString):
183 2009-11-25 Philippe Normand <pnormand@igalia.com>
185 Reviewed by Eric Seidel.
187 [GTK] use gst_init_check() instead of gst_init()
188 https://bugs.webkit.org/show_bug.cgi?id=31864
190 Use gst_init_check() instead of gst_init() to prevent eventual
191 unexpected exit of the application.
193 * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
194 (WebCore::do_gst_init):
195 (WebCore::MediaPlayerPrivate::isAvailable):
197 2009-11-25 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
199 Reviewed by Xan Lopez.
201 Some tests are crashing from time to time
202 https://bugs.webkit.org/show_bug.cgi?id=31866
204 Make sure we do not notify the client of a finished load, if the
205 load has been cancelled, or the client is gone.
207 * platform/network/soup/ResourceHandleSoup.cpp:
210 2009-11-24 Ben Murdoch <benm@google.com>
212 Reviewed by Eric Seidel.
214 [Android] Upstream Android changes to WebCore/bridge/jni
215 https://bugs.webkit.org/show_bug.cgi?id=31824
217 No new tests required as no new functionality.
219 * bridge/jni/jni_class.cpp:
220 (JavaClass::JavaClass): Add calls to delete allocated references, to avoid potential leaks.
221 * bridge/jni/jni_instance.cpp: Add an Android include path.
222 * bridge/jni/jni_instance.h: Add getter/setter for JObjectWrapper::_instance and make the JavaInstance ctor and member variables protected. Both needed for the Android port, see bug for discussion.
223 (JSC::Bindings::JObjectWrapper::instance): Added.
224 (JSC::Bindings::JObjectWrapper::setInstance): Added.
225 * bridge/jni/jni_runtime.cpp:
226 (JavaMethod::JavaMethod): Delete an allocated reference to avoid a potential leak.
227 * bridge/jni/jni_utility.h:
228 (JSC::Bindings::callJNIMethodV): Delete an allocated reference to avoid a potential leak.
230 2009-11-24 Zoltan Horvath <zoltan@webkit.org>
232 Reviewed by Eric Seidel.
234 Allow custom memory allocation control for classes of the plugins and rendering directory in WebCore
235 https://bugs.webkit.org/show_bug.cgi?id=31827
237 Inherits the following classes from Noncopyable because these are instantiated
238 by 'new' and no need to be copyable:
240 class/struct name - instantiated at: WebCore/'location'
242 class PluginRequest - plugins/PluginView.cpp:521
243 class PluginMainThreadScheduler - plugins/PluginMainThreadScheduler.cpp:34
244 class PluginDatabase - plugins/PluginDatabase.cpp:50
245 struct MimeClassInfo - plugins/PluginInfoStore.cpp:50
246 struct PluginInfo - plugins/PluginInfoStore.cpp:40
247 class RenderArena - dom/Document.cpp:1401
248 class RenderImageScaleData - rendering/RenderImage.cpp:149
249 class TableLayout - (its child class) rendering/RenderTable.cpp:82
250 struct ColumnInfo - rendering/RenderBlock.cpp:3590
251 struct FloatingObject - rendering/RenderBlock.cpp:2300
252 struct MaxMargin - rendering/RenderBlock.cpp:4794
253 class RenderMarquee - rendering/RenderLayer.cpp:3277
255 * plugins/PluginData.h:
256 * plugins/PluginDatabase.h:
257 * plugins/PluginMainThreadScheduler.h:
258 * plugins/PluginView.h:
259 * rendering/RenderArena.h:
260 * rendering/RenderBlock.cpp:
261 * rendering/RenderBlock.h:
262 * rendering/RenderImage.cpp:
263 * rendering/RenderMarquee.h:
264 * rendering/TableLayout.h:
266 2009-11-24 Dmitry Titov <dimich@chromium.org>
268 Reviewed by David Levin.
270 Initial implementation of WebKitSharedScript and SharedScriptContext
271 https://bugs.webkit.org/show_bug.cgi?id=31569
273 No new tests since there are no bindings yet (soon to come).
275 * DerivedSources.make: Add WebKitSharedScript and SharedScriptContext to a list of idl files.
276 * WebCore.xcodeproj/project.pbxproj:
278 (WebCore::Document::detach): Notify WebKitSharedScriptRepository that document is detaching.
279 * dom/EventTarget.cpp: Add new casting methods, since the new types are EventTargets.
280 (WebCore::EventTarget::toWebKitSharedScript):
281 (WebCore::EventTarget::toSharedScriptContext):
282 * dom/EventTarget.h: Ditto
283 * dom/ScriptExecutionContext.h:
284 (WebCore::ScriptExecutionContext::isSharedScriptContext): New virtual method, since there is a new type of context.
286 * SharedScript/SharedScriptContext.cpp: Added. Similar to WorkerContext, but w/o threading.
287 (WebCore::SharedScriptContext::SharedScriptContext):
288 (WebCore::SharedScriptContext::~SharedScriptContext):
289 (WebCore::SharedScriptContext::clearScript):
290 (WebCore::SharedScriptContext::virtualURL):
291 (WebCore::SharedScriptContext::virtualCompleteURL):
292 (WebCore::SharedScriptContext::reportException):
293 (WebCore::SharedScriptContext::addMessage):
294 (WebCore::SharedScriptContext::resourceRetrievedByXMLHttpRequest):
295 (WebCore::SharedScriptContext::scriptImported):
296 (WebCore::SharedScriptContext::matches):
297 (WebCore::SharedScriptContext::addToDocumentsList):
298 (WebCore::SharedScriptContext::destructionTimerFired):
299 (WebCore::SharedScriptContext::removeFromDocumentList):
300 (WebCore::SharedScriptContext::load):
301 (WebCore::SharedScriptContext::postTask):
302 (WebCore::SharedScriptContext::eventTargetData):
303 (WebCore::SharedScriptContext::ensureEventTargetData):
304 (WebCore::SharedScriptContext::scriptExecutionContext):
305 * SharedScript/SharedScriptContext.h: Added.
306 (WebCore::SharedScriptContext::create):
307 (WebCore::SharedScriptContext::isSharedScriptContext):
308 (WebCore::SharedScriptContext::userAgent):
309 (WebCore::SharedScriptContext::toSharedScriptContext):
310 (WebCore::SharedScriptContext::self):
311 (WebCore::SharedScriptContext::script):
312 (WebCore::SharedScriptContext::loaded):
313 (WebCore::SharedScriptContext::name):
314 (WebCore::SharedScriptContext::refEventTarget):
315 (WebCore::SharedScriptContext::derefEventTarget):
316 (WebCore::SharedScriptContext::refScriptExecutionContext):
317 (WebCore::SharedScriptContext::derefScriptExecutionContext):
318 * SharedScript/SharedScriptContext.idl: Added.
320 * SharedScript/SharedScriptController.h:
321 Added. Empty implementation of a ScriptController, will come later as part of bindings. Needed to compile.
323 * SharedScript/WebKitSharedScript.cpp: Added. EventTarget-based DOM object.
324 (WebCore::WebKitSharedScript::WebKitSharedScript):
325 (WebCore::WebKitSharedScript::~WebKitSharedScript):
326 (WebCore::WebKitSharedScript::setContext):
327 (WebCore::LoadEventTask::create): Fires asynchronous 'load' event when underlying SharedScriptContext is initialized.
328 (WebCore::LoadEventTask::performTask):
329 (WebCore::LoadEventTask::LoadEventTask):
330 (WebCore::WebKitSharedScript::scheduleLoadEvent):
331 * SharedScript/WebKitSharedScript.h: Added.
332 (WebCore::WebKitSharedScript::create):
333 (WebCore::WebKitSharedScript::scriptExecutionContext):
334 (WebCore::WebKitSharedScript::toWebKitSharedScript):
335 (WebCore::WebKitSharedScript::context):
336 (WebCore::WebKitSharedScript::refEventTarget):
337 (WebCore::WebKitSharedScript::derefEventTarget):
338 (WebCore::WebKitSharedScript::eventTargetData):
339 (WebCore::WebKitSharedScript::ensureEventTargetData):
340 * SharedScript/WebKitSharedScript.idl: Added.
342 * SharedScript/WebKitSharedScriptRepository.cpp: Added. Implements a list of running SharedScriptContexts.
343 (WebCore::ScriptLoader::ScriptLoader): The helper class to load an initial script of SharedScriptContext.
344 (WebCore::ScriptLoader::load):
345 (WebCore::ScriptLoader::notifyFinished):
346 (WebCore::WebKitSharedScriptRepository::instance): Repository has a static global instance.
347 (WebCore::WebKitSharedScriptRepository::connect):
348 (WebCore::WebKitSharedScriptRepository::documentDetached): Called from Document::detach().
349 (WebCore::WebKitSharedScriptRepository::removeSharedScriptContext): Called from ~SharedScriptContext().
350 (WebCore::WebKitSharedScriptRepository::connectToSharedScript):
351 (WebCore::WebKitSharedScriptRepository::getSharedScriptContext):
352 * SharedScript/WebKitSharedScriptRepository.h: Added.
353 (WebCore::WebKitSharedScriptRepository::WebKitSharedScriptRepository):
355 2009-11-24 Dmitry Titov <dimich@chromium.org>
357 Reviewed by Eric Seidel.
359 Add ENABLE_SHARED_SCRIPT feature define and flag for build-webkit
360 https://bugs.webkit.org/show_bug.cgi?id=31444
362 * Configurations/FeatureDefines.xcconfig:
366 2009-11-24 Chris Marrin <cmarrin@apple.com>
368 Reviewed by Simon Fraser.
370 Implement accelerated compositing
371 https://bugs.webkit.org/show_bug.cgi?id=27314
373 This part of the checkin adds the Windows specific GraphicsLayer support files.
374 It provides the interface between GraphicsLayer and CACF. It also deals with
375 the compositing loop, and provides the plumbing to pass the root layer up to
378 * WebCore.vcproj/WebCore.vcproj:
379 * WebCore.vcproj/WebCoreCommon.vsprops:
380 * page/FrameView.cpp:
381 (WebCore::FrameView::syncCompositingStateRecursive):
382 * platform/graphics/GraphicsLayer.cpp:
383 (WebCore::GraphicsLayer::GraphicsLayer):
384 * platform/graphics/GraphicsLayer.h:
385 * platform/graphics/win/GraphicsLayerCACF.cpp: Added.
386 * platform/graphics/win/GraphicsLayerCACF.h: Added.
387 * platform/graphics/win/WKCACFContextFlusher.cpp: Added.
388 * platform/graphics/win/WKCACFContextFlusher.h: Added.
389 * platform/graphics/win/WKCACFContextFlusherWin.cpp: Added.
390 * platform/graphics/win/WKCACFLayer.cpp: Added.
391 * platform/graphics/win/WKCACFLayer.h: Added.
392 * platform/graphics/win/WKCACFLayerWindow.cpp: Added.
393 * platform/graphics/win/WKCACFLayerWindow.h: Added.
395 2009-11-24 Chris Marrin <cmarrin@apple.com>
397 Reviewed by Eric Seidel.
399 Do error checking of parameter to createShader
400 https://bugs.webkit.org/show_bug.cgi?id=31808
402 Test: fast/canvas/webgl/invalidPassedParams.html
404 * html/canvas/WebGLRenderingContext.cpp:
405 (WebCore::WebGLRenderingContext::createShader):
406 * html/canvas/WebGLRenderingContext.h:
407 * html/canvas/WebGLRenderingContext.idl:
409 2009-11-24 Kent Tamura <tkent@chromium.org>
411 Reviewed by Eric Seidel.
413 [Chromium] Ignore line-height CSS property specified to a search field on
415 https://bugs.webkit.org/show_bug.cgi?id=31820
417 LayoutTests/fast/forms/control-restrict-line-height.html checks that the
418 following controls should ignore line-height CSS property.
420 - <input type=button>
421 - <input type=search>
422 This change addresses the <input type=search> issue with Chromium/Windows
425 * rendering/RenderThemeChromiumSkia.cpp:
426 (WebCore::RenderThemeChromiumSkia::adjustSearchFieldStyle): Implement this to ignore line-height.
427 * rendering/RenderThemeChromiumSkia.h: Declare adjustSearchFieldStyle().
429 2009-11-24 Simon Fraser <simon.fraser@apple.com>
433 Stylistic fix: indent the member var initialisation.
435 * platform/graphics/mac/GraphicsLayerCA.mm:
436 (WebCore::GraphicsLayerCA::GraphicsLayerCA):
438 2009-11-24 Gavin Barraclough <barraclough@apple.com>
440 Reviewed by Geoff Garen.
442 Bug 31848 - Remove uses of mainThreadCurrentWorld, and of currentWorld using a globalData.
444 These methods get the world from the global data rather than from an execstate.
445 If the current world is always read from an exec state then it can be read
446 from the global object, and world entry can become automagical, rather than
447 being explicitly set by an EnterDOMWrapperWorld.
449 * bindings/js/JSCSSRuleCustom.cpp:
451 * bindings/js/JSCSSValueCustom.cpp:
453 * bindings/js/JSDOMBinding.cpp:
454 (WebCore::currentWorld):
455 (WebCore::DOMObjectWrapperMapFor):
456 (WebCore::hasCachedDOMObjectWrapper):
457 (WebCore::getCachedDOMObjectWrapper):
458 (WebCore::cacheDOMObjectWrapper):
459 (WebCore::hasCachedDOMNodeWrapper):
460 (WebCore::getCachedDOMNodeWrapper):
461 (WebCore::cacheDOMNodeWrapper):
462 * bindings/js/JSDOMBinding.h:
463 (WebCore::createDOMObjectWrapper):
464 (WebCore::getDOMObjectWrapper):
465 (WebCore::createDOMNodeWrapper):
466 (WebCore::getDOMNodeWrapper):
467 * bindings/js/JSDOMWindowCustom.cpp:
468 (WebCore::JSDOMWindow::history):
469 (WebCore::JSDOMWindow::location):
470 * bindings/js/JSDocumentCustom.cpp:
471 (WebCore::JSDocument::location):
473 * bindings/js/JSElementCustom.cpp:
474 (WebCore::toJSNewlyCreated):
475 * bindings/js/JSEventCustom.cpp:
477 * bindings/js/JSHTMLCollectionCustom.cpp:
479 * bindings/js/JSImageDataCustom.cpp:
481 * bindings/js/JSNodeCustom.cpp:
482 (WebCore::JSNode::markChildren):
483 (WebCore::createWrapper):
485 * bindings/js/JSSVGPathSegCustom.cpp:
487 * bindings/js/JSStyleSheetCustom.cpp:
489 * xml/XMLHttpRequest.cpp:
490 (WebCore::XMLHttpRequest::dropProtection):
492 2009-11-24 Alexey Proskuryakov <ap@apple.com>
496 * platform/network/cf/SocketStreamHandleCFNet.cpp: Also, don't include the wrong one!
498 2009-11-24 Alexey Proskuryakov <ap@apple.com>
502 * platform/network/cf/SocketStreamHandleCFNet.cpp: Include the proper WKSI header.
504 2009-11-24 Simon Fraser <simon.fraser@apple.com>
506 Reviewed by Oliver Hunt.
508 SVGUseElement::toClipPath can crash
509 <rdar://problem/7385270>
511 Null-test m_shadowTreeRootElement again, because the call to buildPendingResource() may not
512 actually initialize it.
514 * svg/SVGUseElement.cpp:
515 (WebCore::SVGUseElement::toClipPath):
517 2009-11-24 Simon Fraser <simon.fraser@apple.com>
521 * page/win/FrameCGWin.cpp:
522 (WebCore::imageFromRect):
523 (WebCore::imageFromSelection):
525 2009-11-24 Eric Carlson <eric.carlson@apple.com>
527 Not reviewed. Revert r51351 until a new WebKitSupportLibrary is available.
529 * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
530 * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.h:
531 * platform/graphics/win/QTMovieWin.cpp:
532 * platform/graphics/win/QTMovieWin.h:
533 * rendering/RenderMediaControls.cpp:
534 * rendering/RenderThemeWin.cpp:
535 * rendering/RenderThemeWin.h:
537 2009-11-24 Alexey Proskuryakov <ap@apple.com>
539 Reviewed by Brady Eidson.
541 https://bugs.webkit.org/show_bug.cgi?id=31844
542 SocketStreamHandleCFNet should support CONNECT proxy credentials
544 * WebCore.vcproj/WebCore.vcproj:
545 * WebCore.xcodeproj/project.pbxproj:
546 * platform/network/CredentialStorage.h:
547 * platform/network/mac/CredentialStorageMac.mm: Added.
548 (WebCore::CredentialStorage::getFromPersistentStorage):
549 * platform/network/cf/CredentialStorageCFNet.cpp: Added.
550 (WebCore::CredentialStorage::getFromPersistentStorage):
551 Add support for fetching credentials from persistent storage (CFNet version is currently
554 * bindings/js/JSWebSocketCustom.cpp: Removed an unneeded include.
556 * platform/network/cf/SocketStreamHandle.h:
557 * platform/network/cf/SocketStreamHandleCFNet.cpp:
558 (WebCore::SocketStreamHandle::SocketStreamHandle):
559 (WebCore::SocketStreamHandle::createStreams):
560 (WebCore::getStoredCONNECTProxyCredentials):
561 (WebCore::authenticationSchemeFromAuthenticationMethod):
562 (WebCore::SocketStreamHandle::addCONNECTCredentials):
563 (WebCore::SocketStreamHandle::readStreamCallback):
564 Check if connection attempt was resulted in 407, and try stored credentials if it did.
566 * platform/mac/WebCoreSystemInterface.h:
567 * platform/mac/WebCoreSystemInterface.mm:
571 2009-11-24 Simon Fraser <simon.fraser@apple.com>
573 Reviewed by Dan Bernstein.
575 Find highlight is drawn incorrectly on pages with compositing layers
576 <rdar://problem/7413925>
578 Part 2: Add a new bit to the PaintBehavior flags, PaintBehaviorFlattenCompositingLayers,
579 and pass that down when painting into an image.
581 When set, it forces painting of compositing layers to go down a software paint path
582 when all layers are painted, irrespective of compositing status, and where
583 3d transforms are flattened to 2d. When doing this, we also need to use temporary
584 clip rects for layers which are normally composited.
587 (WebCore::FrameView::paintBehavior):
588 * page/mac/FrameMac.mm:
589 (WebCore::Frame::imageFromRect):
590 * rendering/RenderLayer.cpp:
591 (WebCore::RenderLayer::renderableTransform):
592 (WebCore::expandClipRectForDescendantsAndReflection):
593 (WebCore::transparencyClipBox):
594 (WebCore::RenderLayer::beginTransparencyLayers):
595 (WebCore::RenderLayer::paintLayer):
596 * rendering/RenderLayer.h:
597 (WebCore::RenderLayer::paintsWithTransparency):
598 (WebCore::RenderLayer::paintsWithTransform):
599 * rendering/RenderLayerCompositor.cpp:
600 (WebCore::RenderLayerCompositor::calculateCompositedBounds):
601 * rendering/RenderObject.h:
603 2009-11-24 Simon Fraser <simon.fraser@apple.com>
605 Reviewed by Dan Bernstein.
607 Find highlight is drawn incorrectly on pages with compositing layers
608 <rdar://problem/7413925>
610 Part 1: Rename PaintRestriction to PaintBehavior, and make it a bitmask, in
611 preparation for adding a new flag related to painting into an image.
613 PaintBehaviorSelectionOnly and PaintBehaviorForceBlackText are now separate flags.
615 * page/FrameView.cpp:
616 (WebCore::FrameView::reset):
617 (WebCore::FrameView::paintContents):
618 (WebCore::FrameView::setPaintBehavior):
620 * page/mac/FrameMac.mm:
621 (WebCore::Frame::selectionImage):
622 * rendering/RenderLayer.cpp:
623 (WebCore::RenderLayer::paint):
624 (WebCore::RenderLayer::paintLayer):
625 * rendering/RenderLayer.h:
626 * rendering/RenderLayerBacking.cpp:
627 (WebCore::RenderLayerBacking::paintIntoLayer):
628 (WebCore::RenderLayerBacking::paintContents):
629 * rendering/RenderLayerBacking.h:
630 * rendering/RenderObject.h:
631 * rendering/RenderReplica.cpp:
632 (WebCore::RenderReplica::paint):
634 2009-11-24 Eric Carlson <eric.carlson@apple.com>
636 Reviewed by Simon Fraser.
638 <rdar://problem/7409331> Windows: Support closed caption in <video> element
640 Enable closed captions in QuickTime/Windows media engine.
642 * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
643 (WebCore::MediaPlayerPrivate::hasClosedCaptions):
644 (WebCore::MediaPlayerPrivate::setClosedCaptionsVisible):
645 * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.h:
646 * platform/graphics/win/QTMovieWin.cpp:
647 (QTMovieWin::hasClosedCaptions):
648 (QTMovieWin::setClosedCaptionsVisible):
649 * platform/graphics/win/QTMovieWin.h:
650 * rendering/RenderMediaControls.cpp:
651 (WebCore::RenderMediaControls::paintMediaControlsPart):
652 * rendering/RenderThemeWin.cpp:
653 (WebCore::RenderThemeWin::paintMediaToggleClosedCaptionsButton):
654 * rendering/RenderThemeWin.h:
656 2009-11-24 Darin Fisher <darin@chromium.org>
658 Reviewed by Adam Barth.
660 [Chromium] Renderer hang when using www.expedia.com
661 https://bugs.webkit.org/show_bug.cgi?id=31822
663 Test: http/tests/cache/subresource-failover-to-network.html
665 * loader/FrameLoader.cpp:
666 (WebCore::FrameLoader::loadResourceSynchronously): Use the originalRequest
667 when inheriting cache policy. This matches SubresourceLoader::create.
669 2009-11-23 Kenneth Russell <kbr@google.com>
671 Reviewed by Oliver Hunt.
673 Change get... calls to latest spec
674 https://bugs.webkit.org/show_bug.cgi?id=30091
676 Removed old versions of get calls on WebGLRenderingContext and
677 added new ones per spec returning "any". New code simplifies
678 GraphicsContext3D and fixes previously unimplemented routines.
679 Added custom JS and V8 bindings. Added exhaustive test case
680 exercising all new code paths. Updated preexisting test cases for
681 new APIs. Fixed preexisting bugs in WebKit's and Chrome's WebGL
684 Ran WebGL layout tests in WebKit (clean) and Chrome (couple of
685 preexisting known failures) and manual WebGL tests in both
688 Test: fast/canvas/webgl/gl-object-get-calls.html
691 * WebCore.xcodeproj/project.pbxproj:
692 * bindings/js/JSWebGLRenderingContextCustom.cpp:
695 (WebCore::getObjectParameter):
696 (WebCore::getProgramParameterHelper):
697 (WebCore::JSWebGLRenderingContext::getBufferParameter):
698 (WebCore::JSWebGLRenderingContext::getFramebufferAttachmentParameter):
699 (WebCore::JSWebGLRenderingContext::getParameter):
700 (WebCore::JSWebGLRenderingContext::getProgramParameter):
701 (WebCore::JSWebGLRenderingContext::getRenderbufferParameter):
702 (WebCore::JSWebGLRenderingContext::getShaderParameter):
703 (WebCore::JSWebGLRenderingContext::getTexParameter):
704 (WebCore::JSWebGLRenderingContext::getUniform):
705 (WebCore::JSWebGLRenderingContext::getVertexAttrib):
706 * bindings/v8/custom/V8CustomBinding.h:
707 * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
710 (WebCore::getObjectParameter):
711 (WebCore::getProgramParameter):
712 (WebCore::CALLBACK_FUNC_DECL):
713 * html/canvas/CanvasObject.cpp:
714 (WebCore::CanvasObject::CanvasObject):
715 (WebCore::CanvasObject::setObject):
716 (WebCore::CanvasObject::deleteObject):
717 * html/canvas/CanvasObject.h:
718 * html/canvas/WebGLBuffer.cpp:
719 (WebCore::WebGLBuffer::create):
720 (WebCore::WebGLBuffer::WebGLBuffer):
721 * html/canvas/WebGLBuffer.h:
722 * html/canvas/WebGLGetInfo.cpp: Added.
723 (WebCore::WebGLGetInfo::WebGLGetInfo):
724 (WebCore::WebGLGetInfo::~WebGLGetInfo):
725 (WebCore::WebGLGetInfo::getType):
726 (WebCore::WebGLGetInfo::getBool):
727 (WebCore::WebGLGetInfo::getFloat):
728 (WebCore::WebGLGetInfo::getLong):
729 (WebCore::WebGLGetInfo::getString):
730 (WebCore::WebGLGetInfo::getUnsignedLong):
731 (WebCore::WebGLGetInfo::getWebGLBuffer):
732 (WebCore::WebGLGetInfo::getWebGLFloatArray):
733 (WebCore::WebGLGetInfo::getWebGLFramebuffer):
734 (WebCore::WebGLGetInfo::getWebGLIntArray):
735 (WebCore::WebGLGetInfo::getWebGLProgram):
736 (WebCore::WebGLGetInfo::getWebGLRenderbuffer):
737 (WebCore::WebGLGetInfo::getWebGLTexture):
738 (WebCore::WebGLGetInfo::getWebGLUnsignedByteArray):
739 * html/canvas/WebGLGetInfo.h: Added.
740 (WebCore::WebGLGetInfo::):
741 * html/canvas/WebGLRenderbuffer.cpp:
742 (WebCore::WebGLRenderbuffer::create):
743 (WebCore::WebGLRenderbuffer::WebGLRenderbuffer):
744 * html/canvas/WebGLRenderbuffer.h:
745 * html/canvas/WebGLRenderingContext.cpp:
746 (WebCore::WebGLStateRestorer::WebGLStateRestorer):
747 (WebCore::WebGLStateRestorer::~WebGLStateRestorer):
748 (WebCore::WebGLRenderingContext::WebGLRenderingContext):
749 (WebCore::WebGLRenderingContext::activeTexture):
750 (WebCore::WebGLRenderingContext::bindBuffer):
751 (WebCore::WebGLRenderingContext::bindFramebuffer):
752 (WebCore::WebGLRenderingContext::bindRenderbuffer):
753 (WebCore::WebGLRenderingContext::bindTexture):
754 (WebCore::WebGLRenderingContext::getBufferParameter):
755 (WebCore::WebGLRenderingContext::getFramebufferAttachmentParameter):
756 (WebCore::WebGLRenderingContext::getParameter):
757 (WebCore::WebGLRenderingContext::getProgramParameter):
758 (WebCore::WebGLRenderingContext::getProgramInfoLog):
759 (WebCore::WebGLRenderingContext::getRenderbufferParameter):
760 (WebCore::WebGLRenderingContext::getShaderParameter):
761 (WebCore::WebGLRenderingContext::getShaderInfoLog):
762 (WebCore::WebGLRenderingContext::getShaderSource):
763 (WebCore::WebGLRenderingContext::getString):
764 (WebCore::WebGLRenderingContext::getTexParameter):
765 (WebCore::WebGLRenderingContext::getUniform):
766 (WebCore::WebGLRenderingContext::getVertexAttrib):
767 (WebCore::WebGLRenderingContext::useProgram):
768 (WebCore::WebGLRenderingContext::getBooleanParameter):
769 (WebCore::WebGLRenderingContext::getFloatParameter):
770 (WebCore::WebGLRenderingContext::getIntParameter):
771 (WebCore::WebGLRenderingContext::getLongParameter):
772 (WebCore::WebGLRenderingContext::getUnsignedLongParameter):
773 (WebCore::WebGLRenderingContext::getWebGLFloatArrayParameter):
774 (WebCore::WebGLRenderingContext::getWebGLIntArrayParameter):
775 (WebCore::WebGLRenderingContext::getWebGLUnsignedByteArrayParameter):
776 * html/canvas/WebGLRenderingContext.h:
777 * html/canvas/WebGLRenderingContext.idl:
778 * html/canvas/WebGLTexture.cpp:
779 (WebCore::WebGLTexture::create):
780 (WebCore::WebGLTexture::WebGLTexture):
781 * html/canvas/WebGLTexture.h:
782 * manual-tests/webgl/resources/utils3d.js:
785 (Framerate.prototype.snapshot):
786 * platform/graphics/GraphicsContext3D.h:
787 * platform/graphics/mac/GraphicsContext3DMac.cpp:
788 (WebCore::GraphicsContext3D::bindRenderbuffer):
789 (WebCore::GraphicsContext3D::getBooleanv):
790 (WebCore::GraphicsContext3D::getBufferParameteriv):
791 (WebCore::GraphicsContext3D::getFloatv):
792 (WebCore::GraphicsContext3D::getFramebufferAttachmentParameteriv):
793 (WebCore::GraphicsContext3D::getIntegerv):
794 (WebCore::GraphicsContext3D::getProgramiv):
795 (WebCore::GraphicsContext3D::getRenderbufferParameteriv):
796 (WebCore::GraphicsContext3D::getShaderiv):
797 (WebCore::GraphicsContext3D::getTexParameterfv):
798 (WebCore::GraphicsContext3D::getTexParameteriv):
799 (WebCore::GraphicsContext3D::getUniformfv):
800 (WebCore::GraphicsContext3D::getUniformiv):
801 (WebCore::GraphicsContext3D::getVertexAttribfv):
802 (WebCore::GraphicsContext3D::getVertexAttribiv):
804 2009-11-24 Steve Falkenburg <sfalken@apple.com>
808 * WebCore.vcproj/QTMovieWin.vcproj: Add additional search path for QuickTime SDK.
810 2009-11-24 Philippe Normand <pnormand@igalia.com>
812 Reviewed by Gustavo Noronha Silva.
814 [Gtk] GStreamer-CRITICAL's (and other warnings) on <video>
815 https://bugs.webkit.org/show_bug.cgi?id=26354
817 Implemented MediaPlayerPrivate::isAvailable by checking the
818 presence of the playbin2 GStreamer element.
820 * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
821 (WebCore::MediaPlayerPrivate::isAvailable):
822 * platform/graphics/gtk/MediaPlayerPrivateGStreamer.h:
824 2009-11-24 Joanmarie Diggs <joanmarie.diggs@gmail.com>
826 Reviewed by Xan Lopez.
828 https://bugs.webkit.org/show_bug.cgi?id=25415
829 [GTK][ATK] Please implement support for get_text_at_offset
831 When building up the pango layout from text boxes, only append a
832 newline char after verifying there are no more boxes on this line.
834 * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
835 (getPangoLayoutForAtk):
837 2009-11-24 Joseph Pecoraro <joepeck@webkit.org>
839 Reviewed by Pavel Feldman.
841 Web Inspector: Keyboard Shortcut to Clear Console Messages
842 https://bugs.webkit.org/show_bug.cgi?id=31780
844 All Platforms: Ctrl+L = Clear Console Messages
845 Mac Only: Cmd+K = Clear Console Messages
847 * inspector/front-end/ConsoleView.js:
848 (WebInspector.ConsoleView): create shortcuts
849 (WebInspector.ConsoleView.prototype._promptKeyDown): handle shortcuts
850 * inspector/front-end/KeyboardShortcut.js:
851 (WebInspector.KeyboardShortcut.makeKey): convenience conversion of "a-z" character to keyCode
852 * inspector/front-end/ScriptsPanel.js:
853 (WebInspector.ScriptsPanel): style fixes for keyboard shortcuts
855 2009-11-24 Pavel Feldman <pfeldman@chromium.org>
857 Not reviewed: touch inspector controller in order to
858 kick win bot inspector deploy. rs=aroben.
860 * inspector/InspectorController.cpp:
862 2009-11-23 Pavel Feldman <pfeldman@chromium.org>
864 Reviewed by Timothy Hatcher.
866 Web Inspector: Implement expandable compartments on timeline panel.
868 https://bugs.webkit.org/show_bug.cgi?id=31796
870 * inspector/front-end/TimelineOverviewPane.js:
871 (WebInspector.TimelineOverviewPane.prototype._setWindowPosition):
872 * inspector/front-end/TimelinePanel.js:
873 (WebInspector.TimelinePanel):
874 (WebInspector.TimelinePanel.prototype.addRecordToTimeline):
875 (WebInspector.TimelinePanel.prototype._innerAddRecordToTimeline):
876 (WebInspector.TimelinePanel.prototype._formatRecord):
877 (WebInspector.TimelinePanel.prototype._refreshRecords):
878 (WebInspector.TimelinePanel.prototype._addToRecordsWindow):
879 (WebInspector.TimelineRecordListRow):
880 (WebInspector.TimelineRecordListRow.prototype.update):
881 (WebInspector.TimelineRecordListRow.prototype.dispose):
882 (WebInspector.TimelineRecordGraphRow):
883 (WebInspector.TimelineRecordGraphRow.prototype.update):
884 (WebInspector.TimelineRecordGraphRow.prototype._onClick):
885 (WebInspector.TimelineRecordGraphRow.prototype.dispose):
886 * inspector/front-end/inspector.css:
888 2009-11-24 Mark Rowe <mrowe@apple.com>
890 Fix production builds where the source tree may be read-only.
892 * WebCore.xcodeproj/project.pbxproj:
894 2009-11-23 Laszlo Gombos <laszlo.1.gombos@nokia.com>
896 Reviewed by Kenneth Rohde Christiansen.
898 Include "config.h" to meet Coding Style Guidelines
899 https://bugs.webkit.org/show_bug.cgi?id=31792
901 No new tests as there is no new functionality.
903 * platform/graphics/win/IntPointWin.cpp:
904 * platform/graphics/win/IntRectWin.cpp:
905 * platform/graphics/win/IntSizeWin.cpp:
906 * platform/network/chromium/ResourceRequest.cpp:
907 * platform/win/PlatformMouseEventWin.cpp:
909 2009-11-23 Jian Li <jianli@chromium.org>
911 Reviewed by NOBODY (Chromium build fix).
913 * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
914 (WebCore::CALLBACK_FUNC_DECL):
915 * platform/graphics/GraphicsContext3D.h:
917 2009-11-23 Aaron Golden <agolden@apple.com>
919 Reviewed by Alexey Proskuryakov.
921 Prevent ResourceHandleMac's version of ResourceHandle::receivedCredential from stripping
922 identity and certificate information from a WebCore::Credential when receivedCredential
923 needs to modify the credential's persistence.
925 Adding a new constructor Credential(const Credential& original, CredentialPersistence)
926 that copies every field from original except for persistence.
928 * platform/network/Credential.cpp:
929 (WebCore::Credential::Credential):
930 * platform/network/Credential.h:
931 * platform/network/mac/ResourceHandleMac.mm:
932 (WebCore::ResourceHandle::receivedCredential):
934 2009-11-23 Gavin Barraclough <barraclough@apple.com>
936 Reviewed by Geoff Garen.
938 Part 2/3 of <rdar://problem/7377477> REGRESSION: Many web pages fail to render after interesting script runs in isolated world
940 Some clients of the JavaScriptCore API expect to be able to make callbacks over the JSC API,
941 and for this to automagically cause execution to take place in the world associated with the
942 global object associated with the ExecState (JSContextRef) passed. However this is not how
943 things work - the world must be explicitly set within WebCore.
945 Making this work just for API calls to evaluate & call will be a far from perfect solution,
946 since direct (non-API) use of JSC still relies on WebCore setting the current world correctly.
947 A better solution would be to make this all work automagically all throughout WebCore, but this
948 will require more refactoring.
950 Add references from the JSDOMWindowShell and the JSDOMGlobalObject to the world that owns them,
951 so that we can get to the world from the lexical global object of an ExecState. In the long-term
952 we should switch over to using this approach for all cases we want to get a world from an exec state.
954 * bindings/js/JSDOMBinding.cpp:
955 (WebCore::WebCoreJSClientData::beginningExecution):
956 (WebCore::WebCoreJSClientData::completedExecution):
957 * bindings/js/JSDOMBinding.h:
958 * bindings/js/JSDOMGlobalObject.h:
959 (WebCore::JSDOMGlobalObject::world):
960 (WebCore::JSDOMGlobalObject::JSDOMGlobalObjectData::JSDOMGlobalObjectData):
961 * bindings/js/JSDOMWindowBase.cpp:
962 (WebCore::JSDOMWindowBase::JSDOMWindowBaseData::JSDOMWindowBaseData):
963 * bindings/js/JSDOMWindowBase.h:
964 * bindings/js/JSDOMWindowShell.cpp:
965 (WebCore::JSDOMWindowShell::JSDOMWindowShell):
966 * bindings/js/JSDOMWindowShell.h:
967 (WebCore::JSDOMWindowShell::world):
968 * bindings/js/JSWorkerContextBase.cpp:
969 (WebCore::JSWorkerContextBase::JSWorkerContextBase):
970 * bindings/js/ScriptController.cpp:
971 (WebCore::ScriptController::initScript):
973 2009-11-23 Chris Marrin <cmarrin@apple.com>
975 Reviewed by Oliver Hunt.
977 Add range checks to rendering calls in WebGL
978 https://bugs.webkit.org/show_bug.cgi?id=31239
980 I am now tracking the size of the data in each CanvasBuffer object
981 and keeping track of the buffer size of each active vertex attrib.
982 In drawArrays and drawElements I make sure no attempt is made to
983 access elements outside the valid buffer ranges. The test at:
985 http://cs.helsinki.fi/u/ilmarihe/c3d/functions/drawArraysOutOfBounds.html
989 I also added all the WebGL enumerations to GraphicsContext3D to use them in the validation checks
991 Tests: fast/canvas/webgl/drawArraysOutOfBounds.html
992 fast/canvas/webgl/drawElementssOutOfBounds.html
994 * bindings/js/JSWebGLArrayCustom.cpp:
996 * bindings/js/JSWebGLRenderingContextCustom.cpp:
997 (WebCore::JSWebGLRenderingContext::bufferData):
998 (WebCore::JSWebGLRenderingContext::bufferSubData):
999 (WebCore::JSWebGLRenderingContext::texSubImage2D):
1000 * html/canvas/WebGLArrayBuffer.cpp:
1001 (WebCore::WebGLArrayBuffer::create):
1002 (WebCore::WebGLArrayBuffer::data):
1003 * html/canvas/WebGLArrayBuffer.h:
1004 * html/canvas/WebGLBuffer.cpp:
1005 (WebCore::WebGLBuffer::WebGLBuffer):
1006 (WebCore::WebGLBuffer::associateBufferData):
1007 (WebCore::WebGLBuffer::associateBufferSubData):
1008 (WebCore::WebGLBuffer::byteLength):
1009 * html/canvas/WebGLBuffer.h:
1010 (WebCore::WebGLBuffer::elementArrayBuffer):
1011 * html/canvas/WebGLRenderingContext.cpp:
1012 (WebCore::WebGLRenderingContext::WebGLRenderingContext):
1013 (WebCore::WebGLRenderingContext::sizeInBytes):
1014 (WebCore::WebGLRenderingContext::bindBuffer):
1015 (WebCore::WebGLRenderingContext::bufferData):
1016 (WebCore::WebGLRenderingContext::bufferSubData):
1017 (WebCore::WebGLRenderingContext::createShader):
1018 (WebCore::WebGLRenderingContext::disableVertexAttribArray):
1019 (WebCore::WebGLRenderingContext::validateIndexArray):
1020 (WebCore::WebGLRenderingContext::validateRenderingState):
1021 (WebCore::WebGLRenderingContext::drawArrays):
1022 (WebCore::WebGLRenderingContext::drawElements):
1023 (WebCore::WebGLRenderingContext::enableVertexAttribArray):
1024 (WebCore::WebGLRenderingContext::isFramebuffer):
1025 (WebCore::WebGLRenderingContext::isProgram):
1026 (WebCore::WebGLRenderingContext::isRenderbuffer):
1027 (WebCore::WebGLRenderingContext::isShader):
1028 (WebCore::WebGLRenderingContext::isTexture):
1029 (WebCore::WebGLRenderingContext::useProgram):
1030 (WebCore::WebGLRenderingContext::validateProgram):
1031 (WebCore::WebGLRenderingContext::vertexAttribPointer):
1032 (WebCore::WebGLRenderingContext::detachAndRemoveAllObjects):
1033 * html/canvas/WebGLRenderingContext.h:
1034 (WebCore::WebGLRenderingContext::VertexAttribState::VertexAttribState):
1035 * html/canvas/WebGLRenderingContext.idl:
1036 * html/canvas/WebGLShader.cpp:
1037 (WebCore::WebGLShader::create):
1038 (WebCore::WebGLShader::WebGLShader):
1039 * html/canvas/WebGLShader.h:
1040 * platform/graphics/GraphicsContext3D.h:
1041 (WebCore::GraphicsContext3D::):
1042 * platform/graphics/mac/GraphicsContext3DMac.cpp:
1043 (WebCore::GraphicsContext3D::createShader):
1045 2009-11-23 Erik Arvidsson <arv@chromium.org>
1047 Reviewed by Eric Seidel.
1049 JSC bindings for HasIndexGetter generates incorrect code (affects
1050 MediaList and CSSStyleDeclaration).
1051 This cleans up the edge cases for indexing out of range for style and
1052 computed style objects to return an empty string according to the spec.
1053 MediaList now returns null when indexed out of range.
1054 https://bugs.webkit.org/show_bug.cgi?id=31683
1056 Tests: fast/dom/CSSStyleDeclaration/css-computed-style-item.html
1057 fast/dom/CSSStyleDeclaration/css-style-item.html
1058 fast/dom/StyleSheet/css-medialist-item.html
1060 * bindings/scripts/CodeGeneratorJS.pm: If IndexGetterReturnsString then
1061 we do not check the length before calling the item function.
1062 * css/CSSComputedStyleDeclaration.cpp:
1063 (WebCore::CSSComputedStyleDeclaration::item):
1064 * css/CSSMutableStyleDeclaration.cpp:
1065 (WebCore::CSSMutableStyleDeclaration::item):
1066 * css/CSSStyleDeclaration.idl:
1068 2009-11-23 Simon Fraser <simon.fraser@apple.com>
1070 Reviewed by Dan Bernstein.
1072 DocumentMarkers need to be educated about transforms
1073 https://bugs.webkit.org/show_bug.cgi?id=31751
1075 Find highlight is incorrect with transforms
1076 <rdar://problem/6358394>
1078 Allow callers to specify that Frame::selectionTextRects() takes transforms into account
1079 when computing the set of rects that encompass a selection. For transformed elemenets, the
1080 selection rect will be the bounding box of the selected content.
1082 Fix DocumentMarkers to cache rects in absolute coordinates, rather than painting coordinates.
1084 Test: editing/selection/transformed-selection-rects.html
1087 Frame::selectionTextRects() has a new parameter.
1090 (WebCore::Document::setRenderedRectForMarker):
1092 Pass the marker as a const reference.
1096 (WebCore::Range::textQuads):
1097 Add a new method, textQuads(), which returns a list of quads, respecting transforms.
1101 (WebCore::Frame::selectionTextRects):
1102 Add a new parameter, respectTransforms, and when that is RespectTransforms, use the quad
1103 method to get quads for ranges, and then take their bounding boxes.
1105 * rendering/InlineTextBox.h:
1106 * rendering/InlineTextBox.cpp:
1107 (WebCore::InlineTextBox::paintSpellingOrGrammarMarker):
1108 (WebCore::InlineTextBox::paintTextMatchMarker):
1109 (WebCore::InlineTextBox::computeRectForReplacementMarker):
1110 (WebCore::InlineTextBox::paintDocumentMarkers):
1111 (WebCore::InlineTextBox::textPos):
1112 (WebCore::InlineTextBox::offsetForPosition):
1114 Pass DocumentMarkers as a const references.
1115 Convert the argument to setRenderedRectForMarker() into absolute coordinates.
1117 * rendering/RenderView.cpp:
1118 (WebCore::RenderView::selectionBounds):
1120 2009-11-23 Dirk Schulze <krit@webkit.org>
1122 Reviewed by Oliver Hunt.
1124 [Cairo] support blurred test-shadow
1125 [https://bugs.webkit.org/show_bug.cgi?id=31797]
1127 Support for blurred text-shadows on Cairo. This patch
1128 reuses the code of blurred box-shadows, introduced in
1129 bug 26102. For a full textshadow support, a filters enabled
1132 * platform/graphics/cairo/FontCairo.cpp:
1133 (WebCore::Font::drawGlyphs):
1135 2009-11-23 Jens Alfke <snej@chromium.org>
1137 Reviewed by Geoffrey Garen.
1139 Change incorrect calls to the constructor "EventNames()" to the correct accessor
1140 "eventNames()". This saves ~100 AtomicString lookups each time.
1141 https://bugs.webkit.org/show_bug.cgi?id=31811
1143 * dom/EventNames.h: Make constructor private to prevent this from happening again.
1144 * history/CachedFrame.cpp:
1145 (WebCore::CachedFrameBase::restore): EventNames() --> eventNames()
1146 * html/HTMLFormControlElement.cpp:
1147 (WebCore::HTMLFormControlElement::checkValidity): EventNames() --> eventNames()
1148 * loader/FrameLoader.cpp:
1149 (WebCore::FrameLoader::stopLoading): EventNames() --> eventNames()
1150 (WebCore::FrameLoader::pageHidden): EventNames() --> eventNames()
1151 * page/DOMWindow.cpp:
1152 (WebCore::DOMWindow::dispatchAllPendingUnloadEvents): EventNames() --> eventNames()
1154 2009-11-23 Adam Langley <agl@google.com>
1156 Reviewed by Dmitry Titov.
1158 Chromium Linux: Limit the stroke width and mitre limit.
1160 Limit the stroke width and mitre limit that we'll pass into Skia to
1161 avoid overflowing Skia's uint16_t glyph widths.
1163 http://code.google.com/p/chromium/issues/detail?id=28250
1164 https://bugs.webkit.org/show_bug.cgi?id=31747
1166 * platform/graphics/skia/PlatformContextSkia.cpp:
1168 (PlatformContextSkia::setupPaintForStroking):
1170 2009-11-23 Alexey Proskuryakov <ap@apple.com>
1172 Reviewed by Oliver Hunt.
1174 https://bugs.webkit.org/show_bug.cgi?id=31812
1175 WebSocket code uses RefPtr::get() where it shouldn't
1177 No change in funcitonality, just coding style correction.
1179 * websockets/WebSocket.cpp:
1180 (WebCore::WebSocket::~WebSocket):
1181 * websockets/WebSocketChannel.cpp:
1182 (WebCore::WebSocketChannel::connect):
1183 (WebCore::WebSocketChannel::send):
1184 (WebCore::WebSocketChannel::bufferedAmount):
1185 (WebCore::WebSocketChannel::close):
1186 (WebCore::WebSocketChannel::disconnect):
1187 (WebCore::WebSocketChannel::didOpen):
1188 (WebCore::WebSocketChannel::didClose):
1189 (WebCore::WebSocketChannel::didReceiveData):
1190 (WebCore::WebSocketChannel::didFail):
1192 2009-11-23 Alexey Proskuryakov <ap@apple.com>
1196 * platform/network/cf/SocketStreamHandleCFNet.cpp:
1197 (WebCore::SocketStreamHandle::pacExecutionCallbackMainThread): pacExecutionCallbackMainThread
1198 is static, so it can't use member variables directly.
1200 2009-11-23 Alexey Proskuryakov <ap@apple.com>
1202 Reviewed by Brady Eidson.
1204 https://bugs.webkit.org/show_bug.cgi?id=31748
1205 Make WebSocketHandleCFNet respect proxy auto-configuration files via CFProxySupport
1207 * platform/network/cf/SocketStreamHandle.h: Removed names from some void* arguments, since
1208 they didn't carry useful information.
1210 * platform/network/cf/SocketStreamHandleCFNet.cpp:
1211 (WebCore::SocketStreamHandle::SocketStreamHandle): When we need an http-style URL, we actually
1213 (WebCore::SocketStreamHandle::scheduleStreams): Factored out from constructor, since streams
1214 only get scheduled after PAC is fetched and executed asynchronously.
1215 (WebCore::SocketStreamHandle::copyPACExecutionDescription): Return a description for event
1217 (WebCore::MainThreadPACCallbackInfo::MainThreadPACCallbackInfo): Forward callback to main thread.
1218 (WebCore::SocketStreamHandle::pacExecutionCallback): Ditto.
1219 (WebCore::SocketStreamHandle::pacExecutionCallbackMainThread): Ditto. To avoid code duplication,
1220 we make the call even on Mac.
1221 (WebCore::SocketStreamHandle::executePACFileURL): Make an async call to CFNetworkExecuteProxyAutoConfigurationURL.
1222 (WebCore::SocketStreamHandle::removePACRunLoopSource): Once PAC execution is done or aborted,
1223 we need to get rid of the event source.
1224 (WebCore::SocketStreamHandle::chooseProxy): Use stored m_httpsURL.get.
1225 (WebCore::SocketStreamHandle::chooseProxyFromArray): Factored out from chooseProxy - the
1226 array may come directly from system configuration, or from PAC.
1227 (WebCore::SocketStreamHandle::chooseProxy): Tiger version of this function is now completely
1229 (WebCore::SocketStreamHandle::~SocketStreamHandle): Run loop source should be destroyed
1230 before we get to the destructor.
1231 (WebCore::SocketStreamHandle::platformClose): Destroy the run loop source, if PAC execution
1232 is still in progress.
1234 2009-11-23 Oliver Hunt <oliver@apple.com>
1236 Reviewed by Geoff Garen.
1238 Don't leak the CGImage we create when drawing a sub image.
1240 * platform/graphics/cg/ImageCG.cpp:
1241 (WebCore::BitmapImage::draw):
1243 2009-11-23 Adam Barth <abarth@webkit.org>
1245 Reviewed by Dimitri Glazkov.
1247 [V8] Don't crash when OOM in creating isolated world
1248 https://bugs.webkit.org/show_bug.cgi?id=31805
1250 We need to add some more null checks to avoid crashing. No new tests
1251 because we don't have a good way to test out-of-memory bugs.
1253 * bindings/v8/V8Proxy.cpp:
1254 (WebCore::V8Proxy::evaluateInIsolatedWorld):
1255 (WebCore::V8Proxy::evaluateInNewContext):
1256 (WebCore::V8Proxy::setInjectedScriptContextDebugId):
1257 * bindings/v8/V8Proxy.h:
1259 2009-11-23 Dirk Schulze <krit@webkit.org>
1261 Reviewed by Nikolas Zimmermann.
1263 This is the implementation of the filterRes attribute. It
1264 helps the SVG developer to set the quality of a filter by
1265 giving the width or height of filter.
1266 This patch also sets the filter resolution to lower values
1267 if a intermediate ImageBuffer size is bigger than the given
1269 The maximal size is set to 5000x5000 by default. This is a
1270 subjectiv decission. Everthing greater than this values gets
1271 sensible slower. Values of 10000x10000 crashed on WebKitGtk.
1272 For mobil devices a maximum size of 100x100 or 200x200 seems
1274 The important fact on filter resolution is, that the output
1275 size is still the size given by the <filter> element.
1277 Tests: svg/filters/big-sized-filter-2.svg
1278 svg/filters/big-sized-filter.svg
1279 svg/filters/filterRes.svg
1281 * platform/graphics/FloatRect.cpp:
1282 (WebCore::FloatRect::scale): Add the abbility to scale a rect by x and y.
1283 * platform/graphics/FloatRect.h:
1284 (WebCore::FloatRect::scale): Add the abbility to scale a rect by x and y.
1285 * platform/graphics/cairo/GraphicsContextCairo.cpp:
1286 (WebCore::GraphicsContext::createPlatformShadow): Use scaledSubRegion for
1288 * platform/graphics/filters/FEBlend.cpp:
1289 (WebCore::FEBlend::apply): Use scaledSubRegion for effect intern calculations.
1290 * platform/graphics/filters/FEColorMatrix.cpp:
1291 (WebCore::FEColorMatrix::apply): Use scaledSubRegion for effect intern calculations.
1292 * platform/graphics/filters/FEComponentTransfer.cpp:
1293 (WebCore::FEComponentTransfer::apply): Use scaledSubRegion for effect intern
1295 * platform/graphics/filters/FEComposite.cpp:
1296 (WebCore::FEComposite::apply): Use scaledSubRegion for effect intern calculations.
1297 * platform/graphics/filters/FEGaussianBlur.cpp:
1298 (WebCore::FEGaussianBlur::apply): Use scaledSubRegion for effect intern calculations.
1299 * platform/graphics/filters/Filter.h: Add the abbility to change the quality
1301 (WebCore::Filter::filterResolution):
1302 (WebCore::Filter::setFilterResolution):
1303 (WebCore::Filter::calculateEffectSubRegion): Calculates the correct subRegion
1304 as well as the scaledSubRegion. It also searches for the biggest effect size.
1305 We have to change the filter resolution, if one intermediate ImageBuffer size
1306 doesn't fit in the maximal image size.
1307 * platform/graphics/filters/FilterEffect.cpp:
1308 (WebCore::FilterEffect::calculateDrawingIntRect): Use scaledSubRegion to get
1309 the right part of a previous effect result.
1310 (WebCore::FilterEffect::calculateDrawingRect): Use scaledSubRegion to get
1311 the right part of a previous effect result.
1312 (WebCore::FilterEffect::getEffectContext): Use scaledSubRegion to create
1313 a new intermediate ImageBuffer for the result of the current effect.
1314 * platform/graphics/filters/FilterEffect.h:
1315 (WebCore::FilterEffect::scaledSubRegion): The scaled subRegion of a the
1317 (WebCore::FilterEffect::setScaledSubRegion):
1318 (WebCore::FilterEffect::effectBoundaries): The original values of the
1319 EffectElement for a second subRegion calculation.
1320 (WebCore::FilterEffect::setEffectBoundaries):
1321 * platform/graphics/filters/ImageBufferFilter.cpp:
1322 (WebCore::ImageBufferFilter::ImageBufferFilter): Set the scale factor to one.
1323 * platform/graphics/filters/ImageBufferFilter.h:
1324 (WebCore::ImageBufferFilter::maxImageSize):
1325 (WebCore::ImageBufferFilter::calculateEffectSubRegion):
1326 * platform/graphics/filters/SourceAlpha.cpp:
1327 (WebCore::SourceAlpha::calculateEffectRect): Use scaledSubRegion for effect
1328 intern calculations.
1329 * platform/graphics/filters/SourceGraphic.cpp:
1330 (WebCore::SourceGraphic::calculateEffectRect): Use scaledSubRegion for effect
1331 intern calculations.
1332 * svg/SVGFilterElement.cpp:
1333 (WebCore::SVGFilterElement::parseMappedAttribute): Parse filterRes attribute.
1334 (WebCore::SVGFilterElement::buildFilter): Give SVGResourceFilter the current
1336 * svg/SVGFilterPrimitiveStandardAttributes.cpp:
1337 (WebCore::SVGFilterPrimitiveStandardAttributes::setStandardAttributes): Save
1338 values to effectBoundaries of the filter effect
1339 * svg/graphics/SVGResourceFilter.cpp:
1340 (WebCore::SVGResourceFilter::SVGResourceFilter):
1341 (WebCore::shouldProcessFilter): Return signal if a neccessary value is zero.
1342 (WebCore::SVGResourceFilter::fitsInMaximumImageSize): Checks if the given size
1343 fits into the maximal image size, modifys scale factors if not and return a
1345 (WebCore::SVGResourceFilter::prepareFilter): Scale the SourceImage to
1346 filterResolution (given by FilterElement or calculated on to big image sizes).
1347 Set the scale level to SVGFilter.
1348 (WebCore::SVGResourceFilter::applyFilter): Don't apply filters if shouldProcessFilter
1350 * svg/graphics/SVGResourceFilter.h:
1351 (WebCore::SVGResourceFilter::setFilterResolution): FilterResolution of FilterElement.
1352 (WebCore::SVGResourceFilter::setHasFilterResolution): Does FilterElement provides
1354 (WebCore::SVGResourceFilter::scaleX): Current scale factor for horizontal.
1355 (WebCore::SVGResourceFilter::scaleY): Current scale factor for vertical.
1356 * svg/graphics/filters/SVGFEDisplacementMap.cpp:
1357 (WebCore::FEDisplacementMap::apply): Use scaledSubRegion for effect intern calculations.
1358 Kernel values are scaled to current filter resolution too.
1359 * svg/graphics/filters/SVGFEFlood.cpp:
1360 (WebCore::FEFlood::apply): Use scaledSubRegion for effect intern calculations.
1361 * svg/graphics/filters/SVGFEMerge.cpp:
1362 (WebCore::FEMerge::apply): Use scaledSubRegion for effect intern calculations.
1363 Kernel values are scaled to current filter resolution too.
1364 * svg/graphics/filters/SVGFEMorphology.cpp:
1365 (WebCore::FEMorphology::apply): Use scaledSubRegion for effect intern calculations.
1366 Kernel values are scaled to current filter resolution too.
1367 * svg/graphics/filters/SVGFEOffset.cpp:
1368 (WebCore::FEOffset::apply): Use scaledSubRegion for effect intern calculations.
1369 * svg/graphics/filters/SVGFETile.cpp:
1370 (WebCore::FETile::apply): Use scaledSubRegion for effect intern calculations.
1371 * svg/graphics/filters/SVGFilter.cpp:
1372 (WebCore::SVGFilter::calculateEffectSubRegion): Calculate subRegion for LayoutTests,
1373 scaledSubRegion according to the current filterResolution and get the maximal image size.
1374 * svg/graphics/filters/SVGFilter.h:
1375 (WebCore::SVGFilter::effectBoundingBoxMode): Original values of the FilterElement.
1376 (WebCore::SVGFilter::filterRegion): Use virtual for clarification.
1377 (WebCore::SVGFilter::sourceImageRect): Use virtual for clarification.
1378 (WebCore::SVGFilter::maxImageSize): Get the maximal image size.
1380 2009-11-23 Simon Hausmann <simon.hausmann@nokia.com>
1382 Reviewed by Kenneth Rohde Christiansen.
1384 [Qt] Wrong runtime instance objects of wrapped QObjects may be used if
1385 the wrapped object died before the gc removed the instance.
1387 https://bugs.webkit.org/show_bug.cgi?id=31681
1389 Before using a cached instance, verify that its wrapped QObject is
1392 * bridge/qt/qt_instance.cpp:
1393 (JSC::Bindings::QtInstance::getQtInstance):
1394 * bridge/qt/qt_instance.h:
1395 (JSC::Bindings::QtInstance::hashKey):
1397 2009-11-22 Chris Fleizach <cfleizach@apple.com>
1399 Reviewed by Oliver Hunt.
1401 ARIA: support aria-flowto
1402 https://bugs.webkit.org/show_bug.cgi?id=31762
1404 Test: platform/mac/accessibility/aria-flowto.html
1406 * accessibility/AccessibilityObject.h:
1407 (WebCore::AccessibilityObject::ariaOwnsElements):
1408 (WebCore::AccessibilityObject::supportsARIAFlowTo):
1409 (WebCore::AccessibilityObject::ariaFlowToElements):
1410 * accessibility/AccessibilityRenderObject.cpp:
1411 (WebCore::AccessibilityRenderObject::linkedUIElements):
1412 (WebCore::AccessibilityRenderObject::supportsARIAFlowTo):
1413 (WebCore::AccessibilityRenderObject::ariaFlowToElements):
1414 * accessibility/AccessibilityRenderObject.h:
1415 * html/HTMLAttributeNames.in:
1417 2009-11-22 Nikolas Zimmermann <nzimmermann@rim.com>
1419 Not reviewed. Build fix for WML enabled builds.
1420 Adopt WebCore API changes.
1422 * wml/WMLAElement.cpp:
1423 (WebCore::WMLAElement::defaultEventHandler):
1424 * wml/WMLInputElement.cpp:
1425 (WebCore::WMLInputElement::defaultEventHandler):
1427 2009-11-22 Pavel Feldman <pfeldman@chromium.org>
1429 Reviewed by Timothy Hatcher.
1431 Web Inspector: Introduce sidebar background on timeline panel in order
1432 to prevent it from flickering on scroll.
1434 https://bugs.webkit.org/show_bug.cgi?id=31789
1436 * inspector/front-end/TimelinePanel.js:
1437 (WebInspector.TimelinePanel):
1438 (WebInspector.TimelinePanel.prototype.setSidebarWidth):
1439 (WebInspector.TimelinePanel.prototype._onScroll):
1440 (WebInspector.TimelinePanel.prototype._scheduleRefresh):
1441 * inspector/front-end/inspector.css:
1443 2009-11-22 Pavel Feldman <pfeldman@chromium.org>
1445 Reviewed by Timothy Hatcher.
1447 Web Inspector: Reimplement TimelinePanel to make it fast:
1448 - Extract grid and overview into separate files
1449 - Make timeline create only divs for visible rows
1451 https://bugs.webkit.org/show_bug.cgi?id=31784
1454 * WebCore.vcproj/WebCore.vcproj:
1455 * inspector/front-end/AbstractTimelinePanel.js:
1456 (WebInspector.AbstractTimelinePanel.prototype.createInterface):
1457 (WebInspector.AbstractTimelinePanel.prototype.refresh):
1458 (WebInspector.AbstractTimelinePanel.prototype.set calculator):
1459 * inspector/front-end/TimelineGrid.js: Added.
1460 (WebInspector.TimelineGrid):
1461 (WebInspector.TimelineGrid.prototype.get itemsGraphsElement):
1462 (WebInspector.TimelineGrid.prototype.updateDividers):
1463 (WebInspector.TimelineGrid.prototype.addEventDivider):
1464 (WebInspector.TimelineGrid.prototype.setScrollAndDividerTop):
1465 * inspector/front-end/TimelineOverviewPane.js: Added.
1466 (WebInspector.TimelineOverviewPane):
1467 (WebInspector.TimelineOverviewPane.prototype._onCheckboxClicked):
1468 (WebInspector.TimelineOverviewPane.prototype.update):
1469 (WebInspector.TimelineOverviewPane.prototype.setSidebarWidth):
1470 (WebInspector.TimelineOverviewPane.prototype.updateMainViewWidth):
1471 (WebInspector.TimelineOverviewPane.prototype.reset):
1472 (WebInspector.TimelineOverviewPane.prototype._resizeWindow):
1473 (WebInspector.TimelineOverviewPane.prototype._windowResizeDragging):
1474 (WebInspector.TimelineOverviewPane.prototype._dragWindow):
1475 (WebInspector.TimelineOverviewPane.prototype._windowDragging):
1476 (WebInspector.TimelineOverviewPane.prototype._resizeWindowLeft):
1477 (WebInspector.TimelineOverviewPane.prototype._resizeWindowRight):
1478 (WebInspector.TimelineOverviewPane.prototype._setWindowPosition):
1479 (WebInspector.TimelineOverviewPane.prototype._endWindowDragging):
1480 (WebInspector.TimelineOverviewCalculator):
1481 (WebInspector.TimelineOverviewCalculator.prototype.computeBarGraphPercentages):
1482 (WebInspector.TimelineOverviewCalculator.prototype.reset):
1483 (WebInspector.TimelineOverviewCalculator.prototype.updateBoundaries):
1484 (WebInspector.TimelineOverviewCalculator.prototype.get boundarySpan):
1485 (WebInspector.TimelineOverviewCalculator.prototype.formatValue):
1486 (WebInspector.TimelineCategoryTreeElement):
1487 (WebInspector.TimelineCategoryTreeElement.prototype.onattach):
1488 (WebInspector.TimelineCategoryGraph):
1489 (WebInspector.TimelineCategoryGraph.prototype.get graphElement):
1490 (WebInspector.TimelineCategoryGraph.prototype.addChunk):
1491 (WebInspector.TimelineCategoryGraph.prototype.clearChunks):
1492 (WebInspector.TimelineCategoryGraph.prototype.set dimmed):
1493 * inspector/front-end/TimelinePanel.js:
1494 (WebInspector.TimelinePanel):
1495 (WebInspector.TimelinePanel.prototype._toggleTimelineButtonClicked):
1496 (WebInspector.TimelinePanel.prototype.addRecordToTimeline):
1497 (WebInspector.TimelinePanel.prototype._formatRecord):
1498 (WebInspector.TimelinePanel.prototype.setSidebarWidth):
1499 (WebInspector.TimelinePanel.prototype.updateMainViewWidth):
1500 (WebInspector.TimelinePanel.prototype.resize):
1501 (WebInspector.TimelinePanel.prototype.reset):
1502 (WebInspector.TimelinePanel.prototype.show):
1503 (WebInspector.TimelinePanel.prototype._onScroll):
1504 (WebInspector.TimelinePanel.prototype._scheduleRefresh):
1505 (WebInspector.TimelinePanel.prototype._refresh):
1506 (WebInspector.TimelinePanel.prototype._refreshRecords):
1507 (WebInspector.TimelinePanel.prototype._adjustScrollPosition):
1508 (WebInspector.TimelineCategory):
1509 (WebInspector.TimelineCalculator):
1510 (WebInspector.TimelineCalculator.prototype.get boundarySpan):
1511 (WebInspector.TimelineRecordListRow):
1512 (WebInspector.TimelineRecordListRow.prototype.update):
1513 (WebInspector.TimelineRecordGraphRow):
1514 (WebInspector.TimelineRecordGraphRow.prototype.update):
1515 * inspector/front-end/WebKit.qrc:
1516 * inspector/front-end/inspector.css:
1517 * inspector/front-end/inspector.html:
1519 2009-11-22 Chris Evans <cevans@chromium.org>
1521 Reviewed by Adam Barth.
1523 Disable access to file:/// directory listings
1524 https://bugs.webkit.org/show_bug.cgi?id=31329
1526 Deny access to directory listings. This needs doing in WebKit for
1527 WebKit clients that do permit top-level navigation to file:///dir.
1528 This matches Firefox, plus the existing Safari implementation (which
1529 does not support any directory access at all). It will fix the
1530 LayoutTest named below for Chromium.
1532 Test: fast/xmlhttprequest/xmlhttprequest-nonexistent-file.html
1534 * page/SecurityOrigin.cpp: Deny access to directory listings.
1535 (WebCore::SecurityOrigin::SecurityOrigin):
1536 (WebCore::SecurityOrigin::canRequest):
1538 2009-11-20 Joseph Pecoraro <joepeck@webkit.org>
1540 Reviewed by Timothy Hatcher.
1542 Web Inspector: Support Ctrl+P and Ctrl+N, Readline keyboard shortcuts in the Console
1543 https://bugs.webkit.org/show_bug.cgi?id=31400
1545 Handle the following when on a Mac:
1547 Ctrl+P = Previous (like Up arrow)
1548 Ctrl+N = Next (like Down arrow)
1550 No longer rerun autocompletion when just pushing a modifier key
1551 like Control, Alt, Shift, or Meta.
1553 Improved arrow key behavior with Multiline code in the Console, with the following behavior:
1555 Up = Previous Command if on First Line (caret moves to the end of the first line)
1556 otherwise default caret movement in text.
1557 Down = Next Command if on Last Line (caret naturally moves to the end)
1558 otherwise default caret movement in text.
1560 * inspector/front-end/TextPrompt.js:
1561 (WebInspector.TextPrompt.prototype.handleKeyEvent): handle new keyboard shortcuts
1562 (WebInspector.TextPrompt.prototype.isCaretOnFirstLine): check if the caret is on the top line
1563 (WebInspector.TextPrompt.prototype.isCaretOnLastLine): check if the caret is on the bottom line
1564 (WebInspector.TextPrompt.prototype._upKeyPressed):
1565 (WebInspector.TextPrompt.prototype._downKeyPressed):
1566 (WebInspector.TextPrompt.prototype._moveBackInHistory):
1567 (WebInspector.TextPrompt.prototype._moveForwardInHistory):
1569 2009-11-21 Jessie Berlin <jberlin@webkit.org>
1571 Reviewed by Timothy Hatcher.
1573 Adds a tooltip containing the full url of the resource to each element
1574 in the Resources panel so that it is possible to quickly see the query
1576 https://bugs.webkit.org/show_bug.cgi?id=19103
1578 * inspector/front-end/ResourcesPanel.js:
1579 (WebInspector.ResourceSidebarTreeElement.prototype.refresh):
1580 Set the tooltip to be the resource's url.
1582 2009-11-21 Simon Fraser <simon.fraser@apple.com>
1584 Reviewed by Dan Bernstein.
1586 CSSKeyframesRule::findRule() and deleteRule() should accept 'from' and 'to' as well as percentages
1587 https://bugs.webkit.org/show_bug.cgi?id=31588
1589 In WebKitCSSKeyframesRule::findRuleIndex(), map 'from' to 0% an 'to' to 100%
1590 so that findRule() and deleteRule() work with these keywords.
1592 * css/WebKitCSSKeyframesRule.cpp:
1593 (WebCore::WebKitCSSKeyframesRule::findRuleIndex):
1595 2009-11-21 Daniel Bates <dbates@webkit.org>
1597 Reviewed by Eric Seidel.
1599 https://bugs.webkit.org/show_bug.cgi?id=31647
1601 Changed KeyboardEvent::m_keyEvent from a raw pointer to an OwnPtr.
1603 No functionality was changed. So, no new tests.
1605 * dom/KeyboardEvent.cpp:
1606 (WebCore::KeyboardEvent::~KeyboardEvent):
1607 * dom/KeyboardEvent.h: Changed m_keyEvent to OwnPtr.
1608 (WebCore::KeyboardEvent::keyEvent):
1610 2009-11-20 Chris Fleizach <cfleizach@apple.com>
1612 Reviewed by Beth Dakin.
1614 WAI-ARIA: add support for aria-owns
1615 https://bugs.webkit.org/show_bug.cgi?id=31702
1617 Re-organized how accessibilityAttributeNames are returned so
1618 that it's possible for an element to add an attribute based on
1619 a dynamic value. In this case, we only want to add AXOwn if the
1620 element actually supports aria-owns.
1622 Test: platform/mac/accessibility/aria-owns.html
1624 * accessibility/AccessibilityObject.h:
1625 (WebCore::AccessibilityObject::supportsARIAOwns):
1626 (WebCore::AccessibilityObject::ariaOwnsElements):
1627 * accessibility/AccessibilityRenderObject.cpp:
1628 (WebCore::AccessibilityRenderObject::ariaOwnsElements):
1629 (WebCore::AccessibilityRenderObject::supportsARIAOwns):
1630 * accessibility/AccessibilityRenderObject.h:
1631 * accessibility/mac/AccessibilityObjectWrapper.mm:
1632 (-[AccessibilityObjectWrapper additionalAccessibilityAttributeNames]):
1633 (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
1634 (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
1635 * html/HTMLAttributeNames.in:
1637 2009-11-20 Eric Carlson <eric.carlson@apple.com>
1639 Reviewed by Simon Fraser.
1641 <rdar://problem/7414396> Leopard & Tiger: Support closed caption in <video> element
1643 * css/mediaControls.css:
1644 Define closed caption toggle button.
1646 * rendering/RenderMedia.cpp:
1647 (WebCore::RenderMedia::updateControls):
1648 Create closed caption toggle button in display order.
1650 * rendering/RenderThemeMac.mm:
1651 (WebCore::RenderThemeMac::shouldRenderMediaControlPart):
1652 Don't require MediaControllerThemeQuickTime theme for captions toggle button.
1653 No need to check if the movie has video, a closed captions track is a video
1656 2009-11-20 Joseph Pecoraro <joepeck@webkit.org>
1658 Reviewed by Timothy Hatcher.
1660 Web Inspector: Running code in the Console that ends with a
1661 single line comment no longer produces a parse error.
1663 * inspector/front-end/InjectedScript.js:
1664 (InjectedScript._evaluateOn):
1666 2009-11-20 Chris Fleizach <cfleizach@apple.com>
1668 Reviewed by Beth Dakin.
1670 WAI-ARIA: add support for 'math' role
1671 https://bugs.webkit.org/show_bug.cgi?id=31706
1673 * accessibility/AccessibilityObject.cpp:
1674 * accessibility/AccessibilityObject.h:
1675 * accessibility/mac/AccessibilityObjectWrapper.mm:
1677 2009-11-20 Yael Aharon <yael.aharon@nokia.com>
1679 Reviewed by Kenneth Rohde Christiansen.
1681 NPN_ReloadPlugins does not reload the page even if reloadPages is true.
1682 https://bugs.webkit.org/show_bug.cgi?id=30460
1684 Replace call to PluginDatabase::installedPlugins()->refresh() with Page::refreshPlugins().
1685 It already refreshes plugins and reloads pages when necessary.
1687 Tests: plugins/reloadplugins-and-pages.html
1688 plugins/reloadplugins-no-pages.html
1690 * plugins/PluginInfoStore.cpp:
1691 (WebCore::refreshPlugins):
1693 2009-11-20 Oliver Hunt <oliver@apple.com>
1695 Reviewed by Dave Hyatt.
1697 <rdar://7409188> WebKit needs to be able to serialize and deserialize objects.
1699 Expose WebCore object serialization to WebKit.
1702 * bindings/js/SerializedScriptValue.cpp:
1703 (WebCore::SerializedScriptValue::~SerializedScriptValue):
1704 (WebCore::SerializedScriptValue::create):
1705 (WebCore::SerializedScriptValue::deserialize):
1706 * bindings/js/SerializedScriptValue.h:
1708 2009-11-20 Brian Weinstein <bweinstein@apple.com>
1710 Reviewed by Tim Hatcher.
1712 Fixes <http://webkit.org/b/31741>.
1713 Web Inspector: User Entered Data on the console should show up no matter what filters.
1715 Always show .console-user-command-result, no matter what the filter say
1716 we should do with the other classes.
1718 * inspector/front-end/inspector.css:
1720 2009-11-20 Brian Weinstein <bweinstein@apple.com>
1722 Reviewed by Tim Hatcher.
1724 Fixes <http://webkit.org/b/31700>.
1725 Web Inspector: isMac should be in one central location + Cached.
1727 We should cache the value of isMac, and make the indexOf call in one
1728 single location, because we are calling it from multiple places, and saving
1729 the result can save us time, and make the call sites simpler.
1731 * inspector/front-end/AbstractTimelinePanel.js:
1732 (WebInspector.AbstractTimelinePanel.prototype._updateFilter):
1733 * inspector/front-end/ConsoleView.js:
1734 (WebInspector.ConsoleView.prototype._updateFilter):
1735 * inspector/front-end/ElementsPanel.js:
1736 (WebInspector.ElementsPanel.prototype.handleKeyEvent):
1737 * inspector/front-end/ScriptsPanel.js:
1738 (WebInspector.ScriptsPanel):
1739 * inspector/front-end/SourceFrame.js:
1740 (WebInspector.SourceFrame.prototype._loaded):
1741 * inspector/front-end/inspector.js:
1742 (WebInspector.documentKeyDown):
1743 (WebInspector.isMac):
1745 2009-11-19 Joseph Pecoraro <joepeck@webkit.org>
1747 Removed .DS_Store accidentally added in last (r51245).
1749 2009-11-19 Joseph Pecoraro <joepeck@webkit.org>
1751 Reviewed by Timothy Hatcher.
1753 Web Inspector: Add Console Only Layout Mode
1754 https://bugs.webkit.org/show_bug.cgi?id=30282
1756 Adds a Console Panel, which allows for a Full size Console. This
1757 extends the Drawer to the size of a Panel. This also fixes previous
1758 resize issues with the Drawer.
1760 * inspector/front-end/ConsolePanel.js: added.
1761 (WebInspector.ConsolePanel):
1762 (WebInspector.ConsolePanel.prototype.toolbarItemClass.get toolbarItemLabel):
1763 (WebInspector.ConsolePanel.prototype.show):
1764 (WebInspector.ConsolePanel.prototype.hide):
1765 * inspector/front-end/Drawer.js:
1766 (WebInspector.Drawer):
1767 (WebInspector.Drawer.prototype.set visibleView):
1768 (WebInspector.Drawer.prototype.get savedHeight): access the saved height of the variable console.
1769 (WebInspector.Drawer.prototype.show.animationFinished):
1770 (WebInspector.Drawer.prototype.show):
1771 (WebInspector.Drawer.prototype.hide.animationFinished):
1772 (WebInspector.Drawer.prototype.hide):
1773 (WebInspector.Drawer.prototype.resize): resize appropriately if full/non-full
1774 (WebInspector.Drawer.prototype.enterPanelMode):
1775 (WebInspector.Drawer.prototype.exitPanelMode):
1776 (WebInspector.Drawer.prototype.immediatelyExitPanelMode):
1777 (WebInspector.Drawer.prototype._cancelAnimationIfNeeded):
1778 (WebInspector.Drawer.prototype._animateDrawerHeight.animationFinished):
1779 (WebInspector.Drawer.prototype._animateDrawerHeight):
1780 (WebInspector.Drawer.prototype._animationDuration):
1781 (WebInspector.Drawer.prototype._startStatusBarDragging):
1782 (WebInspector.Drawer.prototype._statusBarDragging):
1783 (WebInspector.Drawer.prototype._endStatusBarDragging):
1785 Miscellaneous changes and cleanup.
1787 * English.lproj/localizedStrings.js: "Console" toolbar title.
1788 * inspector/front-end/ConsoleView.js: removed unnecessary element reordering
1789 * inspector/front-end/Images/consoleIcon.png: added.
1790 * inspector/front-end/inspector.css: added icon.
1791 * inspector/front-end/inspector.html:
1792 * inspector/front-end/inspector.js:
1793 (WebInspector._createPanels): create console panel
1794 (WebInspector.windowResize): resize drawer if necessary
1795 (WebInspector.documentKeyDown): esc should not toggle the console when in panel mode
1796 (WebInspector.animateStyle): start animation interval, returns the interval key
1797 (WebInspector.toggleAttach): resize drawer if necessary
1798 (WebInspector.showConsolePanel): restore the panel when the inspector restarts
1799 (WebInspector.showProfileForURL): style fix
1801 Restore the panel when the inspector restarts.
1803 * inspector/InspectorController.cpp:
1804 (WebCore::InspectorController::setWindowVisible):
1805 (WebCore::InspectorController::specialPanelForJSName):
1806 * inspector/InspectorFrontend.cpp:
1807 (WebCore::InspectorFrontend::showPanel):
1812 * WebCore.vcproj/WebCore.vcproj:
1813 * inspector/front-end/WebKit.qrc:
1815 2009-11-20 Brian Weinstein <bweinstein@apple.com>
1817 Reviewed by Tim Hatcher.
1819 Fixes <http://webkit.org/b/31699>.
1820 Web Inspector: Should Cache Values of InspectorController.platform() and port().
1822 Refactor the Inspector to cache the value of InspectorController.platform
1823 and InspectorController.port, because those need to call into C++, they are
1824 being called more and more as we add platform specific keyboard shortcuts, and
1825 they shouldn't change in the lifecycle of the Web Inspector.
1827 * inspector/front-end/AbstractTimelinePanel.js:
1828 (WebInspector.AbstractTimelinePanel.prototype._updateFilter):
1829 * inspector/front-end/ConsoleView.js:
1830 (WebInspector.ConsoleView.prototype._updateFilter):
1831 * inspector/front-end/ElementsPanel.js:
1832 (WebInspector.ElementsPanel.prototype.handleKeyEvent):
1833 * inspector/front-end/ScriptsPanel.js:
1834 (WebInspector.ScriptsPanel):
1835 * inspector/front-end/SourceFrame.js:
1836 (WebInspector.SourceFrame.prototype._loaded):
1837 * inspector/front-end/inspector.js:
1838 (WebInspector.get platform):
1839 (WebInspector.get port):
1840 (WebInspector.loaded):
1841 (WebInspector.documentKeyDown):
1842 (WebInspector.toolbarDragStart):
1844 2009-11-20 Dirk Schulze <krit@webkit.org>
1846 Unreviewed build fix for filters enabled builds.
1848 * platform/graphics/filters/FEColorMatrix.cpp:
1849 (WebCore::FEColorMatrix::apply):
1850 * platform/graphics/filters/FEComposite.cpp:
1851 (WebCore::FEComposite::apply):
1852 * platform/graphics/filters/SourceGraphic.cpp:
1853 (WebCore::SourceGraphic::apply):
1854 * svg/graphics/SVGResourceFilter.cpp:
1855 (WebCore::SVGResourceFilter::applyFilter):
1856 * svg/graphics/filters/SVGFEMerge.cpp:
1857 (WebCore::FEMerge::apply):
1858 * svg/graphics/filters/SVGFEOffset.cpp:
1859 (WebCore::FEOffset::apply):
1860 * svg/graphics/filters/SVGFETile.cpp:
1861 (WebCore::FETile::apply):
1863 2009-11-20 Eric Carlson <eric.carlson@apple.com>
1865 Reviewed by Simon Fraser.
1867 <rdar://problem/7389945> QTKit based media engine should not claim to support
1868 fullscreen on Leopard
1870 * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
1871 (WebCore::MediaPlayerPrivate::supportsFullscreen):
1872 Only return true on SnowLeopard for now.
1874 * rendering/RenderThemeMac.mm:
1875 (WebCore::RenderThemeMac::shouldRenderMediaControlPart):
1876 No need to special case MediaFullscreenButtonPart as the default implementation
1877 asks the media engine if it supports fullscreen.
1879 2009-11-18 Girish Ramakrishnan <girish@forwardbias.in>
1881 Reviewed by Simon Hausmann.
1883 Patch by Yongjun Zhang <yongjun.zhang@nokia.com> and
1884 Girish Ramakrishnan <girish@forwardbias.in>
1886 [Qt] Implement support for rendering plugins on Qt/Mac when a page is used
1887 without a QWebView or when inside QGraphicsWebView.
1889 Currently, the code provides the cgcontext of the PlatformPluginWidget to
1890 the plugin. This approach does not work when we are printing, or using
1891 QWebFrame::render() to render to a QImage/QPixmap since the plugin ends
1892 up drawing on the QWebView (i.e platformPluginWidget's cgcontext) instead
1893 of the QPaintDevice's context.
1895 To solve all cases and keep the code simple, we render the plugin to an
1896 offscreen pixmap in all cases. This way, the plugin always renders to the
1897 CGContext of the pixmap and we then use QPainter to blit the pixmap into
1898 the QPaintDevice. We also create a fake window and set it's WindowRef in
1899 NPWindow. Only with this WindowRef does Flash paint correctly to the QPixmap.
1901 Now, that's the theory. In practice, ATM, mouse events do not work when using
1902 the fake window. So, setPlatformPluginWidget() is still called when using QWebView
1903 so that there are no regressions after this patch. Once we get mouse events
1904 working, setPlatformPluginWidget will be removed.
1906 https://bugs.webkit.org/show_bug.cgi?id=31183
1908 * plugins/PluginView.cpp:
1909 (WebCore::PluginView::PluginView):
1910 * plugins/PluginView.h:
1911 * plugins/mac/PluginViewMac.cpp:
1912 (WebCore::PluginView::platformStart):
1913 (WebCore::PluginView::platformDestroy):
1914 (WebCore::PluginView::setNPWindowIfNeeded):
1915 (WebCore::PluginView::updatePluginWidget):
1916 (WebCore::PluginView::paint):
1917 (WebCore::PluginView::invalidateRect):
1919 2009-11-19 Joseph Pecoraro <joepeck@webkit.org>
1921 Reviewed by Timothy Hatcher.
1923 Web Inspector: Resync Resources Backend and Frontend
1924 https://bugs.webkit.org/show_bug.cgi?id=31705
1926 * inspector/front-end/Resource.js: resync enum values with backend
1927 (WebInspector.Resource.prototype._mimeTypeIsConsistentWithType): return false if all else fails, not true in all cases
1929 2009-11-19 Steve Block <steveblock@google.com>
1931 Reviewed by Darin Fisher.
1933 Android port lacks configuration in Platform.h and config.h.
1934 https://bugs.webkit.org/show_bug.cgi?id=31671
1936 Build change only. No new tests possible.
1938 * config.h: Modified. Added Android-specific configuration.
1940 2009-11-20 Roland Steiner <rolandsteiner@chromium.org>
1942 Reviewed by Darin Adler.
1944 Change default stylesheet to reset text indentation for ruby elements by default.
1945 (https://bugs.webkit.org/show_bug.cgi?id=31247)
1947 Test: fast/ruby/ruby-text-indent.html
1949 * css/html.css: reset text-indent on <ruby> and <rt> elements
1951 2009-11-19 Brian Weinstein <bweinstein@apple.com>
1953 Reviewed by Darin Adler.
1955 Fixes <http://webkit.org/b/22754>.
1956 Web Inspector: Keyboard shortcut for Element finder.
1958 Use Command + Shift + C as a shortcut for Node Search, to
1959 match the Firebug shortcut to do the same thing.
1961 * inspector/front-end/ElementsPanel.js:
1962 (WebInspector.ElementsPanel.prototype.handleKeyEvent):
1964 2009-11-19 Alexey Proskuryakov <ap@apple.com>
1966 Reviewed by Darin Adler.
1968 https://bugs.webkit.org/show_bug.cgi?id=31690
1969 Make SocketStreamHandleCFNet work on Windows
1971 * WebCore.vcproj/WebCore.vcproj: Added LoaderRunLoopCF.
1973 * platform/network/ResourceHandle.h: Removed loaderRunLoop().
1975 * platform/network/cf/LoaderRunLoopCF.cpp: Added.
1976 (WebCore::emptyPerform):
1977 (WebCore::runLoaderThread):
1978 (WebCore::loaderRunLoop):
1979 * platform/network/cf/LoaderRunLoopCF.h: Added.
1980 Moved the run loop that we use for CFNetwork from ResourceHandle to its own file, because
1981 it's needed for more than just resource loading.
1983 * platform/network/cf/ResourceHandleCFNet.cpp: Use loaderRunLoop() from its new location.
1985 * platform/network/cf/DNSCFNet.cpp: (WebCore::DNSResolveQueue::resolve): Ditto.
1987 * platform/network/cf/SocketStreamHandle.h: Added static callbacks for forwarding events to
1989 * platform/network/cf/SocketStreamHandleCFNet.cpp:
1990 (WebCore::SocketStreamHandle::SocketStreamHandle): Use loaderRunLoop() on Windows instead of
1991 inoperable main run loop.
1993 (WebCore::MainThreadEventCallbackInfo::MainThreadEventCallbackInfo):
1994 (WebCore::SocketStreamHandle::readStreamCallback):
1995 (WebCore::SocketStreamHandle::writeStreamCallback):
1996 (WebCore::SocketStreamHandle::readStreamCallbackMainThread):
1997 (WebCore::SocketStreamHandle::writeStreamCallbackMainThread):
1998 Forward stream events to main thread on Windows.
2000 2009-11-19 Avi Drissman <avi@chromium.org>
2002 Reviewed by Darin Adler.
2005 https://bugs.webkit.org/show_bug.cgi?id=27777
2007 * platform/graphics/cg/PDFDocumentImage.cpp:
2009 2009-11-19 Beth Dakin <bdakin@apple.com>
2011 Build fix. No review needed.
2013 * platform/chromium/ScrollbarThemeChromium.cpp:
2014 (WebCore::ScrollbarThemeChromium::paintTickmarks):
2015 * rendering/RenderMediaControlsChromium.cpp:
2016 (WebCore::paintMediaButton):
2018 2009-11-19 Beth Dakin <bdakin@apple.com>
2020 Build fix. No review needed.
2022 * rendering/RenderThemeChromiumSkia.cpp:
2023 (WebCore::RenderThemeChromiumSkia::paintCheckbox):
2024 (WebCore::RenderThemeChromiumSkia::paintRadio):
2025 (WebCore::RenderThemeChromiumSkia::paintSearchFieldCancelButton):
2026 (WebCore::RenderThemeChromiumSkia::paintSearchFieldResultsDecoration):
2027 (WebCore::RenderThemeChromiumSkia::paintSearchFieldResultsButton):
2029 2009-11-19 Beth Dakin <bdakin@apple.com>
2031 Build fix. No review needed.
2033 * platform/graphics/qt/StillImageQt.cpp:
2034 (WebCore::StillImage::draw):
2035 * platform/graphics/qt/StillImageQt.h:
2037 2009-11-19 Beth Dakin <bdakin@apple.com>
2039 Build fix. No review needed.
2041 * rendering/RenderThemeWin.cpp:
2042 (WebCore::RenderThemeWin::paintSearchFieldCancelButton):
2043 (WebCore::RenderThemeWin::paintSearchFieldResultsDecoration):
2044 (WebCore::RenderThemeWin::paintSearchFieldResultsButton):
2046 2009-11-19 Beth Dakin <bdakin@apple.com>
2048 Build fix. No review needed.
2050 * plugins/PluginView.cpp:
2051 (WebCore::PluginView::paintMissingPluginIcon):
2053 2009-11-19 Beth Dakin <bdakin@apple.com>
2055 Build fix. No review needed.
2057 * platform/graphics/win/ImageCGWin.cpp:
2058 (WebCore::BitmapImage::getHBITMAPOfSize):
2059 (WebCore::BitmapImage::drawFrameMatchingSourceSize):
2061 2009-11-19 Beth Dakin <bdakin@apple.com>
2063 Reviewed by Darin Adler.
2065 Fix for https://bugs.webkit.org/show_bug.cgi?id=31321 Make -webkit-
2066 color-correction work with untagged images
2068 Image's draw(), drawPattern(), and fillWithSolidColor() functions
2069 now take a ColorSpace. A bunch of classes inherit from Image, so
2070 draw() and drawPattern() functions there must also take a
2072 * platform/graphics/Image.cpp:
2073 (WebCore::Image::fillWithSolidColor):
2074 (WebCore::Image::drawTiled):
2075 * platform/graphics/Image.h:
2076 * platform/graphics/BitmapImage.h:
2077 * platform/graphics/GeneratedImage.cpp:
2078 (WebCore::GeneratedImage::draw):
2079 (WebCore::GeneratedImage::drawPattern):
2080 * platform/graphics/GeneratedImage.h:
2081 * platform/graphics/cg/PDFDocumentImage.cpp:
2082 (WebCore::PDFDocumentImage::draw):
2083 * platform/graphics/cg/PDFDocumentImage.h:
2084 * svg/graphics/SVGImage.cpp:
2085 (WebCore::SVGImage::draw):
2086 * svg/graphics/SVGImage.h:
2088 All of the drawImage() functions and drawTiled() functions of
2089 GraphicsContext now take a ColorSpace.
2090 * platform/graphics/GraphicsContext.cpp:
2091 (WebCore::GraphicsContext::drawImage):
2092 (WebCore::GraphicsContext::drawTiledImage):
2093 * platform/graphics/GraphicsContext.h:
2095 This is where the actual work is done.
2096 * platform/graphics/cg/ImageCG.cpp:
2097 (WebCore::imageWithColorSpace): New static function that returns a
2098 copy of the given image in the given ColorSpace *IF* we should use
2099 the given ColorSpace. We will ignore the color space if the image
2100 is tagged and return 0.
2101 (WebCore::BitmapImage::draw): Now takes a ColorSpace and uses it to
2102 call imageWithColorSpace().
2103 (WebCore::Image::drawPattern): Same.
2105 Attempt to keep all ports building.
2106 * platform/graphics/cairo/ImageCairo.cpp:
2107 (WebCore::BitmapImage::draw):
2108 (WebCore::Image::drawPattern):
2109 * platform/graphics/haiku/ImageHaiku.cpp:
2110 (WebCore::BitmapImage::draw):
2111 (WebCore::Image::drawPattern):
2112 * platform/graphics/qt/ImageQt.cpp:
2113 (WebCore::Image::drawPattern):
2114 (WebCore::BitmapImage::draw):
2115 * platform/graphics/skia/BitmapImageSingleFrameSkia.h:
2116 * platform/graphics/skia/ImageSkia.cpp:
2117 (WebCore::Image::drawPattern):
2118 (WebCore::BitmapImage::draw):
2119 (WebCore::BitmapImageSingleFrameSkia::draw):
2120 * platform/graphics/wx/ImageWx.cpp:
2121 (WebCore::BitmapImage::draw):
2122 (WebCore::BitmapImage::drawPattern):
2124 Callers of GraphicsContext's drawImage() and drawTiled() functions
2125 now need to send a ColorSpace.
2126 * html/HTMLCanvasElement.cpp:
2127 (WebCore::HTMLCanvasElement::paint):
2128 * html/canvas/CanvasRenderingContext2D.cpp:
2129 (WebCore::CanvasRenderingContext2D::drawImage):
2130 (WebCore::CanvasRenderingContext2D::drawImageFromRect):
2131 * platform/ScrollView.cpp:
2132 (WebCore::ScrollView::wheelEvent):
2133 * platform/graphics/filters/FEColorMatrix.cpp:
2134 (WebCore::FEColorMatrix::apply):
2135 * platform/graphics/filters/FEComposite.cpp:
2136 (WebCore::FEComposite::apply):
2137 * platform/graphics/filters/SourceGraphic.cpp:
2138 (WebCore::SourceGraphic::apply):
2139 * platform/mac/ScrollbarThemeMac.mm:
2140 (WebCore::ScrollbarThemeMac::paint):
2141 * rendering/RenderBoxModelObject.cpp:
2142 (WebCore::RenderBoxModelObject::paintFillLayerExtended):
2143 (WebCore::RenderBoxModelObject::paintNinePieceImage):
2144 * rendering/RenderImage.cpp:
2145 (WebCore::RenderImage::paintReplaced):
2146 * rendering/RenderLayer.cpp:
2147 (WebCore::RenderLayer::paintResizer):
2148 * rendering/RenderListMarker.cpp:
2149 (WebCore::RenderListMarker::paint):
2150 * rendering/RenderSVGImage.cpp:
2151 (WebCore::RenderSVGImage::paint):
2152 * rendering/RenderWidget.cpp:
2153 (WebCore::RenderWidget::paint):
2154 * svg/graphics/SVGPaintServerPattern.cpp:
2155 (WebCore::SVGPaintServerPattern::setup):
2156 * svg/graphics/SVGResourceFilter.cpp:
2157 (WebCore::SVGResourceFilter::applyFilter):
2158 * svg/graphics/filters/SVGFEMerge.cpp:
2159 (WebCore::FEMerge::apply):
2160 * svg/graphics/filters/SVGFEOffset.cpp:
2161 (WebCore::FEOffset::apply):
2162 * svg/graphics/filters/SVGFETile.cpp:
2163 (WebCore::FETile::apply):
2165 2009-11-19 Avi Drissman <avi@chromium.org>
2167 Reviewed by Darin Adler.
2169 Properly create a CGImageRef on non-PLATFORM(MAC).
2170 https://bugs.webkit.org/show_bug.cgi?id=27777
2172 * platform/graphics/cg/ImageSourceCG.cpp:
2173 (WebCore::sharedBufferGetBytesAtPosition):
2174 (WebCore::sharedBufferRelease):
2175 (WebCore::ImageSource::setData):
2176 * platform/graphics/cg/ImageSourceCG.h:
2177 * platform/graphics/cg/PDFDocumentImage.cpp:
2178 (WebCore::PDFDocumentImage::dataChanged):
2180 2009-11-19 Oliver Hunt <oliver@apple.com>
2182 Reviewed by Dave Hyatt.
2184 -webkit-user-drag: element Drag images include overflow decorations from incorrect nodes
2185 https://bugs.webkit.org/show_bug.cgi?id=31656
2187 Make sure we're a child of the painting root before drawing overflow features.
2189 * manual-tests/user-drag-with-decorations.html: Added.
2190 * rendering/RenderBlock.cpp:
2191 (WebCore::RenderBlock::paint):
2193 2009-11-19 Dmitry Titov <dimich@chromium.org>
2195 Not reviewed, attempt to fix Chromium build.
2197 * rendering/RenderMediaControlsChromium.cpp:
2198 (WebCore::RenderMediaControlsChromium::paintMediaControlsPart): Add new enum values for Show/HideClosedCaptionButton to make it compile.
2200 2009-11-19 Rahul Kuchhal <kuchhal@chromium.org>
2202 Reviewed by Darin Adler.
2204 Do not assert when a high number is used for roman numerals in lists.
2205 https://bugs.webkit.org/show_bug.cgi?id=31652
2207 Test: fast/lists/ol-start-roman.html
2209 * rendering/RenderListMarker.cpp:
2210 (WebCore::toRoman): Increase the char array size.
2212 2009-11-19 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
2214 Rubber-stamped by Oliver Hunt.
2216 Add translatable strings to cover validationMessage, after
2217 r51172. Already covered by existing test.
2219 * platform/gtk/LocalizedStringsGtk.cpp:
2220 (WebCore::validationMessageValueMissingText):
2221 (WebCore::validationMessageTypeMismatchText):
2222 (WebCore::validationMessagePatternMismatchText):
2223 (WebCore::validationMessageTooLongText):
2224 (WebCore::validationMessageRangeUnderflowText):
2225 (WebCore::validationMessageRangeOverflowText):
2226 (WebCore::validationMessageStepMismatchText):
2228 2009-11-19 Laszlo Gombos <laszlo.1.gombos@nokia.com>
2230 Reviewed by Darin Adler.
2232 Remove HAVE(FLOAT_H) guard
2233 https://bugs.webkit.org/show_bug.cgi?id=31661
2235 WebCore has a dependency on float.h, there is
2236 no need to guard float.h.
2238 No new tests as there is no functional change.
2240 * html/HTMLInputElement.cpp: Remove include directive
2241 for float.h as it is included in MathExtras.h already.
2243 2009-11-19 Simon Fraser <simon.fraser@apple.com>
2245 Reviewed by Pavel Feldman.
2247 Instrumentation should account for painting in compositing layers
2248 https://bugs.webkit.org/show_bug.cgi?id=31674
2250 Add calls to InspectorTimelineAgent for painting into compositing layers,
2251 which is not accounted for in FrameView::paintContents().
2253 * rendering/RenderLayerBacking.cpp:
2254 (WebCore::RenderLayerBacking::paintIntoLayer):
2255 Avoid fetching the FrameView multiple times.
2257 (WebCore::inspectorTimelineAgent):
2258 (WebCore::RenderLayerBacking::paintContents):
2260 2009-11-19 Eric Carlson <eric.carlson@apple.com>
2262 Reviewed by Dan Bernstein.
2264 <rdar://problem/7035231>
2265 Support closed caption in <video> element
2267 Test: media/media-captions.html
2270 * accessibility/AccessibilityMediaControls.cpp:
2271 (WebCore::AccessibilityMediaControl::controlTypeName):
2272 Define ShowClosedCaptionsButton and HideClosedCaptionsButton.
2274 * css/CSSPrimitiveValueMappings.h:
2275 (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
2276 Add MediaToggleClosedCaptionsButtonPart.
2278 * css/CSSSelector.cpp:
2279 (WebCore::CSSSelector::extractPseudoType):
2280 Define and match mediaControlsToggleClosedCaptionsButton.
2282 * css/CSSSelector.h:
2283 (WebCore::CSSSelector::):
2284 * css/CSSStyleSelector.cpp:
2285 (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
2286 Define and match PseudoMediaControlsToggleClosedCaptions.
2288 * css/CSSValueKeywords.in:
2289 Define and use media-toggle-closed-captions-button.
2291 * css/mediaControls.css:
2292 * css/mediaControlsQuickTime.css:
2293 Add webkit-media-controls-toggle-closed-captions-button.
2295 * html/HTMLMediaElement.cpp:
2296 (WebCore::HTMLMediaElement::HTMLMediaElement):
2297 Initialize m_closedCaptionsVisible.
2298 (WebCore::HTMLMediaElement::loadInternal):
2299 Set m_closedCaptionsVisible to false.
2300 (WebCore::HTMLMediaElement::hasClosedCaptions):
2301 (WebCore::HTMLMediaElement::closedCaptionsVisible):
2302 (WebCore::HTMLMediaElement::setClosedCaptionsVisible):
2303 New, captions internal methods.
2304 (WebCore::HTMLMediaElement::setWebkitClosedCaptionsVisible):
2305 (WebCore::HTMLMediaElement::webkitClosedCaptionsVisible):
2306 (WebCore::HTMLMediaElement::webkitHasClosedCaptions):
2307 New, captions DOM API.
2309 * html/HTMLMediaElement.h:
2310 * html/HTMLMediaElement.idl:
2311 Declare methods needed for captions API.
2313 * platform/ThemeTypes.h:
2314 Add MediaToggleClosedCaptionsButtonPart.
2316 * platform/android/LocalizedStringsAndroid.cpp:
2317 (WebCore::localizedMediaControlElementString):
2318 (WebCore::localizedMediaControlElementHelpText):
2319 (WebCore::localizedMediaTimeDescription):
2320 Add empty implmentations.
2322 * platform/graphics/MediaPlayer.cpp:
2323 (WebCore::NullMediaPlayerPrivate::hasClosedCaptions):
2324 (WebCore::NullMediaPlayerPrivate::setClosedCaptionsVisible):
2325 New, empty implementations of media engine closed caption functions.
2326 (WebCore::MediaPlayer::hasClosedCaptions):
2327 (WebCore::MediaPlayer::setClosedCaptionsVisible):
2328 New, call media engine closed caption functions.
2330 * platform/graphics/MediaPlayer.h:
2331 * platform/graphics/MediaPlayerPrivate.h:
2332 (WebCore::MediaPlayerPrivateInterface::hasClosedCaptions):
2333 (WebCore::MediaPlayerPrivateInterface::setClosedCaptionsVisible):
2334 Declare new media engine methods.
2336 * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
2337 * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
2338 (WebCore::MediaPlayerPrivate::hasClosedCaptions):
2339 (WebCore::MediaPlayerPrivate::setClosedCaptionsVisible):
2340 New, QTKit implementation of closed caption methods.
2342 * platform/gtk/LocalizedStringsGtk.cpp:
2343 (WebCore::localizedMediaControlElementString):
2344 (WebCore::localizedMediaControlElementHelpText):
2345 Add help text for ShowClosedCaptionsButton and HideClosedCaptionsButton.
2347 * platform/mac/WebCoreSystemInterface.h:
2348 * platform/mac/WebCoreSystemInterface.mm:
2349 Declare and initialize wkQTMovieHasClosedCaptions and wkQTMovieSetShowClosedCaptions.
2351 * rendering/MediaControlElements.cpp:
2352 (WebCore::MediaControlInputElement::MediaControlInputElement):
2353 Deal with MEDIA_CONTROLS_TOGGLE_CLOSED_CAPTIONS_BUTTON.
2354 (WebCore::MediaControlToggleClosedCaptionsButtonElement::MediaControlToggleClosedCaptionsButtonElement):
2355 (WebCore::MediaControlToggleClosedCaptionsButtonElement::defaultEventHandler):
2356 (WebCore::MediaControlToggleClosedCaptionsButtonElement::updateDisplayType):
2357 New, implement the closed caption toggle button,
2359 * rendering/MediaControlElements.h:
2360 Define MediaShowClosedCaptionsButton and MediaHideClosedCaptionsButton,
2361 declare MediaControlToggleClosedCaptionsButtonElement.
2363 * rendering/RenderMedia.cpp:
2364 (WebCore::RenderMedia::styleDidChange):
2365 (WebCore::RenderMedia::createToggleClosedCaptionsButton):
2366 (WebCore::RenderMedia::createStatusDisplay):
2367 (WebCore::RenderMedia::updateControls):
2368 (WebCore::RenderMedia::forwardEvent):
2369 * rendering/RenderMedia.h:
2370 Deal with m_toggleClosedCaptionsButton.
2372 * rendering/RenderTheme.cpp:
2373 (WebCore::RenderTheme::paint):
2374 Deal with MediaToggleClosedCaptionsButtonPart.
2376 * rendering/RenderTheme.h:
2377 * rendering/RenderThemeMac.h:
2378 Declare paintMediaToggleClosedCaptionsButton.
2380 * rendering/RenderThemeMac.mm:
2381 (WebCore::RenderThemeMac::paintMediaToggleClosedCaptionsButton):
2383 (WebCore::RenderThemeMac::shouldRenderMediaControlPart):
2384 Don't render captions toggle button unless we are using the new theme, the
2385 movie has captions, and the movie is in a <video> element since we currently
2386 rely on QTKit to render the captions.
2388 * rendering/style/RenderStyleConstants.h:
2389 Define MEDIA_CONTROLS_TOGGLE_CLOSED_CAPTIONS_BUTTON.
2391 2009-11-19 Kevin Ollivier <kevino@theolliviers.com>
2393 wx build fix. Add missing header.
2395 * platform/wx/LocalizedStringsWx.cpp:
2397 2009-11-19 Alexey Proskuryakov <ap@apple.com>
2399 Reviewed by Darin Adler.
2401 https://bugs.webkit.org/show_bug.cgi?id=31634
2402 Ignore realm for proxy protection spaces
2404 Only affects WebSocket proxy authentication, cannot be tested in DRT.
2406 * platform/network/ProtectionSpace.cpp:
2407 (WebCore::operator==):
2408 * platform/network/ProtectionSpaceHash.h:
2409 (WebCore::ProtectionSpaceHash::hash):
2411 2009-11-19 Olivier Goffart <ogoffart@trolltech.com>
2413 Reviewed by Simon Hausmann.
2415 [Qt] Normalize signal and slot signatures.
2417 * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
2418 (WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
2420 2009-11-19 Alexander Pavlov <apavlov@chromium.org>
2422 Reviewed by Pavel Feldman.
2424 Store cookie domains in the WebInspector object
2426 The cookie domains have been moved from StoragePanel into WebInspector.
2427 Also, the document URLs are now passed inside the WebInspector.addResource()
2428 payload rather than pushed directly from InspectorController.
2429 https://bugs.webkit.org/show_bug.cgi?id=31627
2431 * inspector/InspectorController.cpp:
2432 (WebCore::InspectorController::populateScriptObjects):
2433 (WebCore::InspectorController::didFinishLoading):
2434 * inspector/InspectorFrontend.cpp:
2435 * inspector/InspectorFrontend.h:
2436 * inspector/InspectorResource.cpp:
2437 (WebCore::InspectorResource::createScriptObject):
2438 (WebCore::InspectorResource::updateScriptObject):
2439 * inspector/front-end/StoragePanel.js:
2440 (WebInspector.StoragePanel.prototype.reset):
2441 (WebInspector.StoragePanel.prototype.addCookieDomain):
2442 * inspector/front-end/inspector.js:
2443 (WebInspector.addResource):
2444 (WebInspector.addCookieDomain):
2445 (WebInspector.reset):
2447 2009-11-19 Zoltan Horvath <zoltan@webkit.org>
2449 Reviewed by Darin Adler.
2451 Allow custom memory allocation control for the other part of platform directory in WebCore
2452 https://bugs.webkit.org/show_bug.cgi?id=31585
2454 Inherits the following classes from FastAllocBase because these are
2455 instantiated by 'new':
2457 class RegularExpression - instantiated at: WebCore/page/Frame.cpp:415
2458 class TransformationMatrix - instantiated at: WebCore/rendering/TransformState.cpp:62
2459 class Path - instantiated at: WebCore/html/HTMLAreaElement.cpp:73
2460 class FontPlatformData - instantiated at: WebCore/platform/graphics/qt/FontCacheQt.cpp:188
2462 Inherits the following classes from Noncopyable because these are
2463 instantiated by 'new' and no need to be copyable:
2465 class Cursors - instantiated at: WebCore/platform/qt/CursorQt.cpp:146
2466 class NetworkStateNotifier - instantiated at: WebCore/platform/network/NetworkStateNotifier.cpp:37
2467 struct CrossThreadResourceRequestData - instantiated at: WebCore/platform/network/ResourceRequestBase.cpp:71
2469 class ImageDecoder - its child class is instantiated at: WebCore/platform/graphics/qt/ImageDecoderQt.cpp:46
2470 class MediaPlayerPrivateInterface - its child class is instantiated at: WebCore/platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:119
2472 * platform/graphics/MediaPlayerPrivate.h:
2473 * platform/graphics/Path.h:
2474 * platform/graphics/qt/FontPlatformData.h:
2475 * platform/graphics/transforms/TransformationMatrix.h:
2476 * platform/image-decoders/ImageDecoder.h:
2477 * platform/network/NetworkStateNotifier.h:
2478 * platform/network/ResourceRequestBase.h:
2479 * platform/qt/CursorQt.cpp:
2480 * platform/text/RegularExpression.h:
2482 2009-11-18 Laszlo Gombos <laszlo.1.gombos@nokia.com>
2486 [Qt] Build fix for QtWebKit after r51172.
2488 * platform/qt/Localizations.cpp:
2489 (WebCore::validationMessageValueMissingText):
2490 (WebCore::validationMessageTypeMismatchText):
2491 (WebCore::validationMessagePatternMismatchText):
2492 (WebCore::validationMessageTooLongText):
2493 (WebCore::validationMessageRangeUnderflowText):
2494 (WebCore::validationMessageRangeOverflowText):
2495 (WebCore::validationMessageStepMismatchText):
2497 2009-11-18 Dan Bernstein <mitz@apple.com>
2499 Reviewed by Simon Fraser.
2501 Fixed <rdar://problem/7398987> Assertion failure in
2502 RenderLayer::updateClipRects when a plug-in’s enclosing layer is
2503 enclosed by a transformed layer
2505 Tests: fast/layers/clip-rects-transformed-2.html
2506 fast/layers/clip-rects-transformed.html
2508 * rendering/RenderLayer.cpp:
2509 (WebCore::RenderLayer::clippingRoot): Added. Finds the nearest ancestor
2510 that is either transformed or composited. During painting and hit
2511 testing, when a transformed or composited layer is hit, it becomes the
2512 new root layer, which ultimately gets passed to calculateRects().
2513 (WebCore::RenderLayer::childrenClipRect): Pass the clipping root as the
2514 root layer to calculateRects(), and return the bounding box of the
2515 transformed rectangle.
2516 (WebCore::RenderLayer::selfClipRect): Ditto.
2517 * rendering/RenderLayer.h:
2519 2009-11-18 Laszlo Gombos <laszlo.1.gombos@nokia.com>
2521 Reviewed by Kenneth Rohde Christiansen.
2523 [Qt] Remove support for Qt v4.3 or older versions
2524 https://bugs.webkit.org/show_bug.cgi?id=29469
2526 No new tests as there is no change if compiled with
2527 Qt v4.4 or later version.
2530 * dom/XMLTokenizerQt.cpp:
2531 (WebCore::EntityResolver::resolveUndeclaredEntity):
2532 (WebCore::XMLTokenizer::XMLTokenizer):
2533 (WebCore::XMLTokenizer::~XMLTokenizer):
2534 (WebCore::XMLTokenizer::doWrite):
2535 (WebCore::XMLTokenizer::startDocument):
2536 (WebCore::XMLTokenizer::parseDtd):
2537 * platform/graphics/qt/FontQt.cpp:
2538 * platform/graphics/qt/FontQt43.cpp: Removed.
2539 * platform/graphics/qt/ImageQt.cpp:
2540 * platform/network/ResourceHandleInternal.h:
2541 * platform/network/qt/QNetworkReplyHandler.cpp:
2542 * platform/network/qt/QNetworkReplyHandler.h:
2543 * platform/network/qt/ResourceHandleQt.cpp:
2544 (WebCore::ResourceHandle::start):
2545 (WebCore::ResourceHandle::cancel):
2546 (WebCore::ResourceHandle::loadResourceSynchronously):
2547 (WebCore::ResourceHandle::setDefersLoading):
2548 * platform/network/qt/ResourceRequest.h:
2549 * platform/network/qt/ResourceRequestQt.cpp:
2550 * platform/qt/ClipboardQt.cpp:
2551 (WebCore::ClipboardQt::clearData):
2552 * platform/qt/CookieJarQt.cpp:
2553 (WebCore::cookieJar):
2554 (WebCore::setCookies):
2556 (WebCore::cookiesEnabled):
2557 * platform/qt/PlatformKeyboardEventQt.cpp:
2558 (WebCore::keyIdentifierForQtKeyCode):
2559 (WebCore::windowsKeyCodeForKeyEvent):
2560 * platform/text/qt/TextBoundaries.cpp:
2561 * platform/text/qt/TextBreakIteratorQt.cpp:
2562 * plugins/qt/PluginDataQt.cpp:
2563 (WebCore::PluginData::initPlugins):
2565 2009-11-18 Michelangelo De Simone <micdesim@gmail.com>
2567 Reviewed by Darin Adler.
2569 Fix for <https://bugs.webkit.org/show_bug.cgi?id=27959>.
2570 Support for validationMessage attribute, as per HTML5 specs.
2572 Test: fast/forms/validationMessage.html
2574 * html/HTMLButtonElement.idl: validationMessage attribute
2575 * html/HTMLFieldSetElement.idl: validationMessage attribute
2576 * html/HTMLFormControlElement.cpp:
2577 * html/HTMLFormControlElement.h:
2578 * html/HTMLInputElement.idl: validationMessage attribute
2579 * html/HTMLSelectElement.idl: validationMessage attribute
2580 * html/HTMLTextAreaElement.idl: validationMessage attribute
2581 * html/ValidityState.cpp: new method to retrieve pertinent localized text
2582 * html/ValidityState.h:
2583 * page/mac/WebCoreViewFactory.h:
2584 * platform/LocalizedStrings.h:
2585 * platform/android/LocalizedStringsAndroid.cpp:
2586 * platform/gtk/LocalizedStringsGtk.cpp:
2587 * platform/haiku/LocalizedStringsHaiku.cpp:
2588 * platform/mac/LocalizedStringsMac.mm:
2589 * platform/wx/LocalizedStringsWx.cpp:
2591 2009-11-18 Laszlo Gombos <laszlo.1.gombos@nokia.com>
2595 Fix a typo. Remove the trailing semicolon
2596 from an include directive after r51137.
2598 No new tests as there is no functional change.
2600 * platform/qt/QWebPageClient.h:
2602 2009-11-18 Laszlo Gombos <laszlo.1.gombos@nokia.com>
2606 [Qt] Build fix for QtWebKit after r51159.
2608 Include float.h for DBL_MANT_DIG. Not sure why this
2609 is not a problem for other ports.
2611 * html/HTMLInputElement.cpp:
2613 2009-11-19 Roland Steiner <rolandsteiner@chromium.org>
2615 Reviewed by Darin Adler.
2617 Bug 31574 - Crashing bug when removing <ruby> element
2618 (https://bugs.webkit.org/show_bug.cgi?id=31574)
2621 1.) RenderBlock::destroy() of the RenderRubyRun called destroyLeftoverChildren()
2622 2.) that called destroy() of the RenderRubyBase(), which in RenderObject::destroy() calls remove()
2623 3.) remove() is being redirected as parent()->removeChild() in RenderObject.h
2624 4.) this triggers the special handling of child removal in RenderRubyRun that
2625 causes it to destroy itself
2626 5.) On returning from all this the renderer crashes when accessing a member
2627 or virtual function on this now illegal object.
2629 I therefore added a flag that tracks if the ruby run is being destroyed.
2630 If so, avoid doing the special handling in removeChild that caused this.
2631 It's not the most elegant solution, but the easiest to implement without
2632 touching unrelated code. Also, it's self-documenting.
2634 Test: fast/ruby/ruby-remove.html
2636 * rendering/RenderRubyRun.cpp:
2637 (WebCore::RenderRubyRun::RenderRubyRun):
2638 (WebCore::RenderRubyRun::destroy):
2639 (WebCore::RenderRubyRun::removeChild):
2640 * rendering/RenderRubyRun.h:
2642 2009-11-18 Laszlo Gombos <laszlo.1.gombos@nokia.com>
2644 Reviewed by Kenneth Rohde Christiansen.
2646 [Qt] Remove WTF_USE_JAVASCRIPTCORE_BINDINGS as it is no longer used
2647 https://bugs.webkit.org/show_bug.cgi?id=31643
2649 No new tests as there is no functional change.
2653 2009-11-18 Yong Li <yong.li@torchmobile.com>
2655 Reviewed by Eric Seidel.
2657 Implement TextBoundaries for WINCE port.
2658 https://bugs.webkit.org/show_bug.cgi?id=27371
2660 * platform/text/wince/TextBoundariesWince.cpp: Added.
2662 2009-11-18 Yong Li <yong.li@torchmobile.com>
2664 Reviewed by Eric Seidel.
2666 Implement TextBreakIterator for WINCE port.
2667 https://bugs.webkit.org/show_bug.cgi?id=27371
2669 * platform/text/wince/TextBreakIteratorWince.cpp: Added.
2671 2009-11-18 Kent Tamura <tkent@chromium.org>
2673 Reviewed by Darin Adler.
2675 Add support for ValidityState.typeMismatch for the following INPUT types:
2676 date datetime datetime-local month time week
2677 https://bugs.webkit.org/show_bug.cgi?id=31342
2679 Tests: fast/forms/ValidityState-typeMismatch-date.html
2680 fast/forms/ValidityState-typeMismatch-datetime.html
2681 fast/forms/ValidityState-typeMismatch-datetimelocal.html
2682 fast/forms/ValidityState-typeMismatch-month.html
2683 fast/forms/ValidityState-typeMismatch-time.html
2684 fast/forms/ValidityState-typeMismatch-week.html
2686 * html/HTMLInputElement.cpp:
2687 (WebCore::HTMLInputElement::formStringToISODateTime): Check the type
2688 validity of the specified type and string using the ISODateTime class.
2689 * html/HTMLInputElement.h:
2690 * html/ValidityState.cpp:
2691 (WebCore::ValidityState::typeMismatch): Check the type validity
2692 for date, datetime, datetime-local, month, time and week with
2693 HTMLInputElemtn::formStringToISODateTime()
2695 2009-11-18 Maciej Stachowiak <mjs@apple.com>
2697 Reviewed by Oliver Hunt.
2699 Fix REGRESSION (r47022): Performance of DocumentFragment.appendChild is 1000x slower sometimes
2700 https://bugs.webkit.org/show_bug.cgi?id=31237
2702 Also speeds up Dromaeo DOM Core tests by 1.31x.
2704 * bindings/js/JSNodeCustom.cpp:
2705 (WebCore::JSNode::markChildren): Change marking algorithm to avoid O(N^2) behavior. The subtree
2706 mark bit was no longer effective; instead I changed things so only a node that has no ancestors
2707 with wrappers would do marking; there should be only one in the typical case (the root of the
2710 (WebCore::Node::Node): Remove now useless m_inSubtreeMark bit and related functions.
2713 2009-11-18 Darin Adler <darin@apple.com>
2715 Reviewed by Sam Weinig.
2717 Get rid of the redundant strokeType and fillType data members on
2718 a GraphicsContext as well as the FillOrStrokeType enum. Use
2719 null pointers instead.
2721 * platform/graphics/GraphicsContext.cpp:
2722 (WebCore::GraphicsContext::setStrokeColor): Null out the pattern
2724 (WebCore::GraphicsContext::setFillColor): Ditto.
2725 (WebCore::GraphicsContext::setStrokePattern): Null out the graident.
2726 (WebCore::GraphicsContext::setFillPattern): Ditto.
2727 (WebCore::GraphicsContext::setStrokeGradient): Null out the pattern.
2728 (WebCore::GraphicsContext::setFillGradient): Ditto.
2730 * platform/graphics/GraphicsContextPrivate.h: Remove all that stuff.
2732 * platform/graphics/cairo/GraphicsContextCairo.cpp:
2733 (WebCore::setPlatformFill): Use null checks on fillPattern and
2734 fillGraident instead of a switch statement.
2735 (WebCore::setPlatformStroke): Ditto.
2737 * platform/graphics/cg/GraphicsContextCG.cpp:
2738 (WebCore::GraphicsContext::applyStrokePattern): Removed unneeded get.
2739 (WebCore::GraphicsContext::applyFillPattern): Ditto.
2740 (WebCore::calculateDrawingMode): Use fillPattern and strokePattern
2741 to see if there is a pattern instead of fillType and strokeType.
2742 (WebCore::GraphicsContext::drawPath): Use fillGradient, strokeGradient,
2743 fillPattern, and strokePattern instead of fillType and strokeType.
2744 (WebCore::GraphicsContext::fillPath): Added FIXME about color space that
2745 is used in the pattern and gradient case probably erroneously. Moved
2746 gradient code inside an if statement. Streamlined pattern code and
2747 use an if statement. No switch any more.
2748 (WebCore::GraphicsContext::strokePath): Ditto.
2749 (WebCore::GraphicsContext::fillRect): Ditto.
2750 (WebCore::GraphicsContext::strokeRect): Ditto.
2752 * platform/graphics/qt/GraphicsContextQt.cpp:
2753 (WebCore::GraphicsContext::fillPath): Use null checks on fillPattern and
2754 fillGraident instead of a switch statement.
2755 (WebCore::GraphicsContext::strokePath): Ditto.
2756 (WebCore::GraphicsContext::fillRect): Ditto.
2758 * platform/graphics/wince/GraphicsContextWince.cpp:
2759 (WebCore::GraphicsContext::fillPath): Removed unneeded check of fillType.
2760 (WebCore::GraphicsContext::fillRect): Ditto.
2762 2009-11-18 Kent Tamura <tkent@chromium.org>
2764 Reviewed by Darin Adler.
2766 Support for step attribute and ValidityStae.stepMismatch for
2767 type=number and range. stepMismatch will be false if the
2768 difference between the current value and a multiple of the step
2769 value is very small.
2771 Change the behavior of RenderSlider so that it always has a value
2772 rounded to the step attribute value.
2774 https://bugs.webkit.org/show_bug.cgi?id=31331
2776 Tests: fast/forms/ValidityState-stepMismatch-number.html
2777 fast/forms/ValidityState-stepMismatch-range.html
2778 fast/forms/ValidityState-stepMismatch-unsupported.html
2779 fast/forms/input-step.html
2781 * html/HTMLAttributeNames.in: Add "step".
2782 * html/HTMLInputElement.cpp:
2783 (WebCore::HTMLInputElement::stepMismatch):
2784 (WebCore::HTMLInputElement::getStepParameters):
2785 (WebCore::HTMLInputElement::getAllowedValueStep):
2786 * html/HTMLInputElement.h:
2787 * html/HTMLInputElement.idl: Add "step".
2788 * html/ValidityState.cpp:
2789 (WebCore::ValidityState::stepMismatch): Forward to HTMLInputElement::stepMismatch().
2790 * html/ValidityState.h:
2791 * rendering/RenderSlider.cpp:
2792 (WebCore::SliderRange::SliderRange):
2793 (WebCore::SliderRange::clampValue):
2795 2009-11-18 Dmitry Titov <dimich@chromium.org>
2797 Reviewed by Darin Adler.
2799 Need to ASSERT(isMainThread()) in ThreadShared methods.
2800 https://bugs.webkit.org/show_bug.cgi?id=31637
2802 Added ASSERT(IsMainThread()) to all following methods:
2803 * platform/TreeShared.h:
2804 (WebCore::TreeShared::TreeShared):
2805 (WebCore::TreeShared::~TreeShared):
2806 (WebCore::TreeShared::ref):
2807 (WebCore::TreeShared::deref):
2808 (WebCore::TreeShared::setParent):
2809 (WebCore::TreeShared::parent):
2811 2009-11-18 Girish Ramakrishnan <girish@forwardbias.in>
2813 Reviewed by Eric Seidel.
2815 Add plugin visibility manual test
2817 https://bugs.webkit.org/show_bug.cgi?id=31542
2819 * manual-tests/plugins/windowed.html:
2820 * manual-tests/plugins/windowless.html:
2822 2009-11-18 Patrick Mueller <Patrick_Mueller@us.ibm.com>
2824 Reviewed by Pavel Feldman.
2826 Web Inspector - remember last script displayed in Scripts panel
2827 https://bugs.webkit.org/show_bug.cgi?id=27552
2831 * inspector/front-end/ScriptsPanel.js:
2832 (WebInspector.ScriptsPanel.prototype.showScript):
2833 (WebInspector.ScriptsPanel.prototype.showResource):
2834 (WebInspector.ScriptsPanel.prototype._showScriptOrResource):
2835 (WebInspector.ScriptsPanel.prototype._addScriptToFilesMenu):
2836 (WebInspector.ScriptsPanel.prototype._callFrameSelected):
2837 (WebInspector.ScriptsPanel.prototype._goBack):
2838 (WebInspector.ScriptsPanel.prototype._goForward):
2839 * manual-tests/inspector/remember-last-script.html: Added.
2841 2009-11-18 Shinichiro Hamaji <hamaji@chromium.org>
2843 Reviewed by Dimitri Glazkov.
2845 Win chromium is slow to draw transparent texts
2846 https://bugs.webkit.org/show_bug.cgi?id=31258
2848 Create bounded transparency layers instead of just clipping.
2850 No new tests because this is just a performance improvement.
2852 * platform/graphics/chromium/FontChromiumWin.cpp:
2853 (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::initializeForGDI):
2855 2009-11-18 Shu Chang <Chang.Shu@nokia.com>
2857 Reviewed by Eric Seidel.
2859 [Qt] Add support for displaying deleteButton.
2860 https://bugs.webkit.org/show_bug.cgi?id=31560
2862 Test: LayoutTests/editing/deleting/5408255.html
2865 * platform/graphics/qt/ImageQt.cpp:
2866 (loadResourcePixmap):
2868 2009-11-18 Mikhail Naganov <mnaganov@chromium.org>
2870 Reviewed by Eric Seidel.
2872 Fix Qt build without JavaScript debugger.
2874 https://bugs.webkit.org/show_bug.cgi?id=31575
2878 2009-11-18 Daniel Bates <dbates@webkit.org>
2880 Reviewed by Dave Hyatt.
2882 https://bugs.webkit.org/show_bug.cgi?id=24971
2884 <rdar://problem/7138265>
2886 Fixes an issue where setting the height of a table row programmatically
2887 (via JavaScript) causes the table to be improperly rendered because the
2888 height of each row in the table is not recalculated with respect to the
2889 CSS height property.
2891 In particular, programmatically setting the height of some table row causes
2892 the rows of that table to be rendered with a height equal to the minimum
2893 height required by the cells in that row, regardless of any specified cell
2894 heights. Instead, when RenderTableSection::recalcCells is called, the height
2895 of each row should be set to the CSS height property just as we do in
2896 RenderTableSection::addChild.
2898 Test: fast/table/row-height-recalc2.html
2900 * rendering/RenderTableSection.cpp:
2901 (WebCore::setRowHeightToRowStyleHeightIfNotRelative): Added.
2902 (WebCore::RenderTableSection::addChild): Moved code that set row height into
2903 method WebCore::setRowHeightToRowStyleHeightIfNotRelative.
2904 (WebCore::RenderTableSection::recalcCells): Modified to call
2905 WebCore::setRowHeightToRowStyleHeightIfNotRelative.
2907 2009-11-18 Zoltan Horvath <zoltan@webkit.org>
2909 Reviewed by Darin Adler.
2911 Allow custom memory allocation control for the part of platform directory in WebCore
2912 https://bugs.webkit.org/show_bug.cgi?id=31473
2914 Inherits the following classes from FastAllocBase because these are
2915 instantiated by 'new':
2917 class AnimationList - instantiated at WebCore/rendering/style/StyleRareNonInheritedData.cpp:85
2918 class Color - instantiated at WebCore/rendering/RenderTheme.cpp:48
2919 struct Length - instantiated at WebCore/platform/Length.cpp:103
2920 class PlatformKeyboardEvent - instantiated at WebCore/dom/KeyboardEvent.cpp:63
2921 class ContextMenuItem - instantiated at WebCore/platform/ContextMenu.cpp:70
2922 class DeprecatedPtrList - instantiated at WebCore/rendering/RenderBlock.cpp:2284
2924 Inherits the following classes from Noncopyable because these are
2925 instantiated by 'new' and no need to be copyable:
2927 class GraphicsContextPrivate - instantiated at WebCore/platform/graphics/GraphicsContext.cpp:78
2928 class FontCache - instantiated at WebCore/platform/graphics/qt/FontCacheQt.cpp:43
2929 struct MediaPlayerFactory - instantiated at WebCore/platform/graphics/MediaPlayer.cpp:163
2930 class DeprecatedPtrListNode - instantiated at WebCore/platform/DeprecatedPtrListImpl.cpp:53
2932 * platform/ContextMenuItem.h:
2933 * platform/DeprecatedPtrList.h:
2934 * platform/DeprecatedPtrListImpl.cpp:
2935 * platform/Length.h:
2936 * platform/PlatformKeyboardEvent.h:
2937 * platform/animation/AnimationList.h:
2938 * platform/graphics/Color.h:
2939 * platform/graphics/FontCache.h:
2940 * platform/graphics/GraphicsContextPrivate.h:
2941 * platform/graphics/MediaPlayer.cpp:
2943 2009-11-18 Daniel Bates <dbates@webkit.org>
2945 Reviewed by Darin Adler.
2947 https://bugs.webkit.org/show_bug.cgi?id=31186
2949 Renames RenderTextControl::m_edited and RenderTextControl::m_userEdited to
2950 m_wasChangedSinceLastChangeEvent and m_lastChangeWasUserEdit, respectively.
2951 These are more descriptive names so as to clear an ambiguity surrounding
2952 their usage. Also, renames associated setters and getters so that they
2953 coincide with the renamed fields.
2955 No functionality was changed. So, no tests were included.
2957 * bindings/objc/DOMHTML.mm:
2958 (-[DOMHTMLInputElement _isEdited]):
2959 (-[DOMHTMLTextAreaElement _isEdited]):
2961 (WebCore::Document::setFocusedNode):
2962 * html/HTMLInputElement.cpp:
2963 (WebCore::HTMLInputElement::defaultEventHandler):
2964 * rendering/RenderTextControl.cpp:
2965 (WebCore::RenderTextControl::RenderTextControl):
2966 (WebCore::RenderTextControl::setInnerTextValue):
2967 (WebCore::RenderTextControl::setLastChangeWasUserEdit): Formerly named setUserEdited.
2968 (WebCore::RenderTextControl::subtreeHasChanged):
2969 * rendering/RenderTextControl.h:
2970 (WebCore::RenderTextControl::wasChangedSinceLastChangeEvent): Formerly named isEdited.
2971 (WebCore::RenderTextControl::setChangedSinceLastChangeEvent): Formerly named setEdited.
2972 (WebCore::RenderTextControl::lastChangeWasUserEdit): Formerly named setUserEdited.
2973 * rendering/RenderTextControlSingleLine.cpp:
2974 (WebCore::RenderTextControlSingleLine::subtreeHasChanged):
2975 * wml/WMLInputElement.cpp:
2976 (WebCore::WMLInputElement::defaultEventHandler):
2978 2009-11-18 Tony Chang <tony@chromium.org>
2980 Reviewed by Adam Barth.
2982 Remove V8CanvasPixelArrayCustom.cpp because it is no longer used by V8.
2983 https://bugs.webkit.org/show_bug.cgi?id=31499
2985 No new tests, just a build cleanup.
2988 * bindings/v8/custom/V8CanvasPixelArrayCustom.cpp: Removed.
2989 * bindings/v8/custom/V8CustomBinding.h:
2991 2009-11-18 Kevin Watters <kevinwatters@gmail.com>
2993 Reviewed by Kevin Ollivier.
2995 Enable wx plugin support using the Windows implementation as a base.
2997 https://bugs.webkit.org/show_bug.cgi?id=31636
2999 * platform/graphics/GraphicsContext.h:
3000 (WebCore::GraphicsContext::inTransparencyLayer):
3001 * platform/graphics/wx/GraphicsContextWx.cpp:
3002 (WebCore::GraphicsContext::getWindowsContext):
3003 (WebCore::GraphicsContext::releaseWindowsContext):
3004 * platform/wx/FileSystemWx.cpp:
3005 (WebCore::unloadModule):
3006 (WebCore::listDirectory):
3007 * plugins/PluginDatabase.cpp:
3008 * plugins/PluginView.cpp:
3009 (WebCore::PluginView::stop):
3010 (WebCore::PluginView::PluginView):
3011 * plugins/PluginView.h:
3012 * plugins/win/PluginViewWin.cpp:
3013 (windowHandleForPageClient):
3014 (WebCore::PluginView::handleMouseEvent):
3015 (WebCore::PluginView::platformStart):
3016 (WebCore::PluginView::snapshot):
3019 2009-11-18 Andrei Popescu <andreip@google.com>
3021 Reviewed by Dimitri Glazkov.
3023 [Android] Add shared timer and sound utilities to platform/android
3024 https://bugs.webkit.org/show_bug.cgi?id=31584
3026 No new tests required, this is platform specific code.
3028 * platform/android/SharedTimerAndroid.cpp: Added.
3029 (WebCore::setSharedTimerFiredFunction):
3030 (WebCore::setSharedTimerFireTime):
3031 (WebCore::stopSharedTimer):
3032 * platform/android/SoundAndroid.cpp: Added.
3033 (WebCore::systemBeep):
3035 2009-11-18 Mikhail Naganov <mnaganov@chromium.org>
3037 Reviewed by Timothy Hatcher.
3039 Fix profile tree nodes loss after focus / restore actions.
3041 Focusing on a node is currently implemented via nodes reattaching
3042 with some caching involved. It seems that not all code was updated
3043 to handle this scenario correctly.
3045 https://bugs.webkit.org/show_bug.cgi?id=31553
3047 * inspector/front-end/BottomUpProfileDataGridTree.js:
3048 (WebInspector.BottomUpProfileDataGridNode):
3049 (WebInspector.BottomUpProfileDataGridNode.prototype._restore):
3050 (WebInspector.BottomUpProfileDataGridNode.prototype._sharedPopulate):
3051 (WebInspector.BottomUpProfileDataGridNode.prototype._willHaveChildren):
3052 * inspector/front-end/DataGrid.js:
3053 (WebInspector.DataGrid.prototype.insertChild):
3054 (WebInspector.DataGridNode.prototype._detach):
3055 (WebInspector.DataGridNode.prototype.savePosition):
3056 (WebInspector.DataGridNode.prototype.restorePosition):
3057 * inspector/front-end/TopDownProfileDataGridTree.js:
3058 (WebInspector.TopDownProfileDataGridTree.prototype.focus):
3059 (WebInspector.TopDownProfileDataGridTree.prototype.restore):
3061 2009-11-18 Carol Szabo <carol.szabo@nokia.com>
3063 Reviewed by Kenneth Rohde Christiansen.
3065 [Qt] QWebPageClient.h needs in some cases QCursor, but it does not
3067 https://bugs.webkit.org/show_bug.cgi?id=31527
3069 No new tests as this is just a coding style fix that affects the
3070 build of some not yet submitted patches (i.e. for bug 30173).
3072 * platform/qt/QWebPageClient.h:
3074 2009-11-18 Nicolas Roard <nicolas@roard.com>
3076 Reviewed by Dimitri Glazkov.
3078 InspectorTimelineAgent.h should be guarded by ENABLE(INSPECTOR)
3079 https://bugs.webkit.org/show_bug.cgi?id=31504
3081 * inspector/InspectorTimelineAgent.h:Added the guard.
3083 2009-11-18 Jens Alfke <snej@chromium.org>
3085 Build fix to my previous checkin, for Windows Chromium
3087 * svg/SVGAnimatedProperty.h:
3088 (WebCore::PropertySynchronizer::synchronize): Fix implicit-conversion error on AtomicString.
3090 2009-11-18 Joseph Pecoraro <joepeck@webkit.org>
3092 Reviewed by Pavel Feldman.
3094 Web Inspector: Directly Access <head> Instead of Searching for It
3095 https://bugs.webkit.org/show_bug.cgi?id=31641
3097 Changed old access of the head element (document.getElementsByTagName)
3098 to just use the document.head accessor.
3100 * inspector/front-end/FontView.js:
3101 (WebInspector.FontView):
3102 * inspector/front-end/InjectedScript.js:
3103 (InjectedScript.addStyleSelector):
3104 * inspector/front-end/SourceFrame.js:
3105 (WebInspector.SourceFrame.prototype._loaded):
3106 * inspector/front-end/inspector.js:
3109 2009-11-18 Sam Weinig <sam@webkit.org>
3111 Reviewed by Anders Carlsson.
3113 Fix two Geolocation assertions.
3116 (WebCore::Chrome::requestGeolocationPermissionForFrame): No need to use PageGroupLoadDeferrer since this
3117 is not called from JS.
3118 * page/Geolocation.cpp:
3119 (WebCore::Geolocation::Watchers::set): The PassRefPtr was getting nulled out, so we need to put it in
3122 2009-11-18 Alexey Proskuryakov <ap@apple.com>
3124 Case sensitive file system build fix.
3126 * platform/network/Credential.h: It's not WTF, just wtf.
3128 2009-11-18 Aaron Golden <agolden@apple.com>
3130 Reviewed by Alexey Proskuryakov.
3132 Add support for certificates to WebCore::Credential so we can convert between NSURLCredential
3133 objects and WebCore::Credential objects without losing certificate information.
3135 * platform/network/Credential.cpp:
3136 (WebCore::Credential::Credential): Adding a constructor that takes an identity argument and a certificate chain argument
3137 (WebCore::Credential::isEmpty): Modifying isEmpty to support certificate based credentials (which don't have a username or password)
3138 (WebCore::Credential::identity): Accessor for the m_identity property
3139 (WebCore::Credential::certificates): Accessor for the m_certificates property
3140 (WebCore::Credential::type): Accessor for the m_type property
3141 (WebCore::operator==): Modifying == to compare the identity and certificate chains of certificate based credentials.
3142 * platform/network/Credential.h: Adding new fields to WebCore::Credential to support certificate based credentials.
3143 * platform/network/mac/AuthenticationMac.mm:
3144 (WebCore::mac): Modifying the mac() conversion method to correctly convert certificate based WebCore::Credential objects.
3145 (WebCore::core): Modifying the core() conversion method to correctly convert certificate based NSURLCredential objects.
3147 2009-11-18 Dmitry Titov <dimich@chromium.org>
3149 Reviewed by Eric Seidel.
3151 Reverting r50919 that has introduced a non-thread-safe refcounting in ScriptExecutionContext::postTaskToMainThread.
3152 https://bugs.webkit.org/show_bug.cgi?id=31615
3155 (WebCore::ScriptExecutionContextTaskTimer::ScriptExecutionContextTaskTimer):
3156 (WebCore::ScriptExecutionContextTaskTimer::fired):
3157 (WebCore::PerformTaskContext::PerformTaskContext):
3158 (WebCore::performTask):
3159 (WebCore::Document::postTask):
3160 * dom/ScriptExecutionContext.cpp:
3161 * dom/ScriptExecutionContext.h:
3163 2009-11-18 Jens Alfke <snej@chromium.org>
3165 Reviewed by Darin Adler.
3167 Eliminate unnecessary String-->AtomicString conversions from generated V8 bindings,
3168 by causing the right v8-to-WebCore conversion function to be called for every parameter.
3169 This no longer requires any IDL metadata, so I've removed the [HintAtomic] annotations.
3170 To enforce correctness, I added a mode that disables implicit
3171 String-->AtomicString conversions while compiling the generated bindings.
3172 https://bugs.webkit.org/show_bug.cgi?id=31168
3174 * bindings/scripts/CodeGeneratorV8.pm: Generate usage of V8Parameter class.
3175 * bindings/v8/DerivedSourcesAllInOne.cpp: Enable NO_IMPLICIT_ATOMICSTRING.
3176 * bindings/v8/V8Binding.h: Add V8Parameter class.
3177 * css/WebKitCSSKeyframesRule.h: Make AtomicString conversions explicit.
3178 * dom/Document.idl: Remove obsolete [HintAtomic] annotation.
3179 * platform/text/AtomicString.h: Added NO_IMPLICIT_ATOMICSTRING option.
3180 * svg/SVGAnimatedTemplate.h: Change some return types to String to avoid implicit conversion.
3181 * svg/SVGAnimatedProperty.h: Adapt to changed return types in SVGAnimatedTemplate.
3183 2009-11-18 Darin Adler <darin@apple.com>
3185 Reviewed by Dan Bernstein.
3187 Move FillOrStrokeType out of public header.
3189 * platform/graphics/GraphicsContext.h: Updated copyright date to cover
3190 some years we published Apple changes, sorted forward declarations,
3191 removed FillOrStrokeType enum.
3192 * platform/graphics/GraphicsContextPrivate.h: Updated copyright date
3193 to cover some years we published Apple changes, sorted includes,
3194 moved FillOrStrokeType enum here.
3196 2009-11-18 Chris Marrin <cmarrin@apple.com>
3198 Reviewed by Simon Fraser.
3200 Add Settings for WebKitShowDebugBorders and WebKitShowRepaintCounter
3201 https://bugs.webkit.org/show_bug.cgi?id=31601
3203 These are used to debug accelerated compositing layers. I removed
3204 the platform specific code from GraphicsLayerCA.mm and added calls
3205 to GraphicsLayerClient to get it from the higher levels. The values
3206 now get cached in RenderLayerCompositing and are queried from there
3207 by RenderLayerBacking (which implements the GraphicsLayerClient interface).
3210 * page/FrameView.cpp:
3211 (WebCore::FrameView::updateCompositingLayers):
3212 * page/Settings.cpp:
3213 (WebCore::Settings::Settings):
3214 (WebCore::Settings::setShowDebugBorders):
3215 (WebCore::Settings::setShowRepaintCounter):
3217 (WebCore::Settings::showDebugBorders):
3218 (WebCore::Settings::showRepaintCounter):
3219 * platform/graphics/GraphicsLayer.h:
3220 (WebCore::GraphicsLayer::showDebugBorders):
3221 (WebCore::GraphicsLayer::showRepaintCounter):
3222 * platform/graphics/GraphicsLayerClient.h:
3223 * platform/graphics/mac/GraphicsLayerCA.mm:
3224 * rendering/RenderLayerBacking.cpp:
3225 (WebCore::RenderLayerBacking::showDebugBorders):
3226 (WebCore::RenderLayerBacking::showRepaintCounter):
3227 * rendering/RenderLayerBacking.h:
3228 * rendering/RenderLayerCompositor.cpp:
3229 (WebCore::RenderLayerCompositor::RenderLayerCompositor):
3230 (WebCore::RenderLayerCompositor::cacheAcceleratedCompositingFlags):
3231 * rendering/RenderLayerCompositor.h:
3232 (WebCore::RenderLayerCompositor::showDebugBorders):
3233 (WebCore::RenderLayerCompositor::showRepaintCounter):
3235 2009-11-18 Pavel Feldman <pfeldman@chromium.org>
3237 Reviewed by Timothy Hatcher.
3239 Web Inspector: Get rid of metrics and properties sidebars'
3242 https://bugs.webkit.org/show_bug.cgi?id=31629
3244 * inspector/front-end/MetricsSidebarPane.js:
3245 * inspector/front-end/PropertiesSidebarPane.js:
3247 2009-11-17 Brian Weinstein <bweinstein@apple.com>
3249 Reviewed by Pavel Feldman.
3251 Fixes <http://webkit.org/b/31606>.
3252 Web Inspector: Enter/Return key should enter edit mode for Editable Fields.
3254 This implements Enter starting editing mode in an editable DataGrid. If the
3255 DataGrid is editable and the user hits return, startEditing the first child
3256 of the selected node. Also refactored some editing functions to take an
3257 event target instead of the event itself, because the functions only needed
3258 the target. Lastly, added had return in editing mode stop propogation, because
3259 when enter was hit to confirm text, it would propagate back to the datagrid
3260 and try to start editing again.
3262 * inspector/front-end/DataGrid.js:
3263 (WebInspector.DataGrid.prototype._ondblclick):
3264 (WebInspector.DataGrid.prototype._startEditing):
3265 (WebInspector.DataGrid.prototype.handleKeyEvent):
3266 (WebInspector.DataGrid.prototype.dataGridNodeFromEvent):
3267 (WebInspector.DataGrid.prototype._mouseDownInDataTable):
3268 (WebInspector.DataGrid.prototype._clickInDataTable):
3269 * inspector/front-end/inspector.js:
3270 (WebInspector.startEditing.element.handleKeyEvent):
3271 (WebInspector.startEditing):
3273 2009-11-18 Ben Murdoch <benm@google.com>
3275 Reviewed by Darin Adler.
3277 HTMLAnchorElement is inconsistent with its internal handling of the value returned for the href attribute.
3278 https://bugs.webkit.org/show_bug.cgi?id=31593
3280 Test: fast/dom/HTMLAnchorElement/set-href-attribute-whitespace.html
3282 * html/HTMLAnchorElement.cpp:
3283 (WebCore::HTMLAnchorElement::href): Add call to deprecatedParseURL.
3285 2009-11-18 Pavel Feldman <pfeldman@chromium.org>
3287 Not reviewed. Touch InspectorController so that frontend
3288 JS files are deployed on Windows.
3290 * inspector/InspectorController.cpp:
3292 2009-11-18 Pavel Feldman <pfeldman@chromium.org>
3294 Reviewed by Timothy Hatcher.
3296 Web Inspector: clone timeline records array instead of
3297 copying reference on invalidate all.
3299 https://bugs.webkit.org/show_bug.cgi?id=31596
3301 * inspector/front-end/AbstractTimelinePanel.js:
3302 (WebInspector.AbstractTimelinePanel.prototype.invalidateAllItems):
3304 2009-11-18 Simon Fraser <simon.fraser@apple.com>
3306 Reviewed by Dan Bernstein.
3308 Elements don't drop out of compositing layers when animation ends
3309 https://bugs.webkit.org/show_bug.cgi?id=31613
3310 <rdar://problem/7402913>
3312 Avoid setting the mustOverlapCompositedLayers flag on RenderLayers which
3313 are compositing anyway for other reasons. Doing so can cause those layers
3314 to stay in compositing mode even after animations finish, because needsToBeComposited()
3315 continues to return true.
3317 No new tests because it's not possible to determine which elements are in
3318 compositing layers from DRT output.
3320 * rendering/RenderLayerCompositor.cpp:
3321 (WebCore::RenderLayerCompositor::computeCompositingRequirements):
3323 2009-11-18 Girish Ramakrishnan <girish@forwardbias.in>
3325 Reviewed by Tor Arne Vestbø.
3327 [Qt] Mac Plugins: Remove null timer
3329 A null timer was used to send mouse move events. Instead, we now use
3330 move events to send nullEvent. This brings down CPU usage by 20-30%.
3332 https://bugs.webkit.org/show_bug.cgi?id=31624
3334 * plugins/PluginView.h:
3335 * plugins/mac/PluginViewMac.cpp:
3336 (WebCore::PluginView::platformStart):
3337 (WebCore::PluginView::handleMouseEvent):
3339 2009-11-18 Benjamin Poulain <benjamin.poulain@nokia.com>
3341 Reviewed by Simon Hausmann.
3343 [Qt] WebKit crashes when loading certain SVG images
3345 Check if the familly exist before creating the PlatformData from it.
3347 https://bugs.webkit.org/show_bug.cgi?id=29443
3349 Test: svg/text/text-font-invalid.html
3351 * platform/graphics/qt/FontFallbackListQt.cpp:
3352 (WebCore::FontFallbackList::fontDataAt):
3354 2009-11-17 Nicolas Weber <thakis@chromium.org>
3356 Reviewed by Darin Fisher.
3358 Fix crash in Chromium/Mac where dropdowns weren't dismissed correctly
3360 https://bugs.webkit.org/show_bug.cgi?id=31609
3362 * platform/chromium/PopupMenuChromium.cpp:
3363 (WebCore::PopupContainer::showExternal): Set parent for external
3364 dropdowns, so that |PopupListBox::hidePopup()| can successfully notify
3365 its parent's client.
3367 2009-11-17 Hayato Ito <hayato@google.com>
3369 Reviewed by Darin Adler.
3371 Avoid infinite mutual recursion when deeply nested tags are loaded
3372 https://bugs.webkit.org/show_bug.cgi?id=30651
3374 Test: fast/parser/block-nesting-cap-table.html
3376 * html/HTMLParser.cpp:
3377 (WebCore::HTMLParser::parseToken):
3378 (WebCore::tagPriorityOfNode):
3379 (WebCore::HTMLParser::limitBlockDepth):
3380 (WebCore::HTMLParser::insertNodeAfterLimitBlockDepth):
3381 (WebCore::HTMLParser::insertNode):
3382 * html/HTMLParser.h:
3384 2009-11-17 Brent Fulgham <bfulgham@webkit.org>
3386 Rubber-stamped by Alexey Proskuryakov.
3388 Final clean-ups for minor coding standard violations.
3389 https://bugs.webkit.org/show_bug.cgi?id=26102.
3391 * platform/graphics/cairo/GraphicsContextCairo.cpp:
3393 2009-11-17 Johnny Ding <jnd@chromium.org>
3395 Reviewed by Darin Adler.
3397 In all valid script tags for JavaScript, the event handler in <script...for> should not get executed.
3398 https://bugs.webkit.org/show_bug.cgi?id=31567
3400 * dom/ScriptElement.cpp:
3401 (WebCore::ScriptElementData::shouldExecuteAsJavaScript):
3403 2009-11-17 Pavel Feldman <pfeldman@chromium.org>
3405 Reviewed by Timothy Hatcher.
3407 Web Inspector: Make DRT show web inspector for tests in inspector/ folder.
3408 - Updated DRT to show/close inspector for all tests under /inspector
3409 - Introduced LayoutTestController::setTimelineProfilingEnabled and
3410 WebInspector::setTimelineProfilingEnabled beside setJavaScriptProfilingEnabled
3411 - Removed reload on each inspector test
3412 - Renamed fast/inspector to fast/inspector-support in order not to trigger
3413 inspector for those.
3414 - Reimplemented timeline tests in order to get rid of reload there.
3415 - Moved tests that don't require harness into the fast group.
3417 https://bugs.webkit.org/show_bug.cgi?id=31472
3419 * WebCore.Inspector.exp:
3420 * inspector/front-end/TimelinePanel.js:
3421 (WebInspector.TimelinePanel.prototype._formatRecord):
3423 2009-11-17 Andrei Popescu <andreip@google.com>
3425 Reviewed by Dimitri Glazkov.
3427 [Android] Android is missing the implementation of the GeolocationService iface.
3428 https://bugs.webkit.org/show_bug.cgi?id=31554
3430 No new tests required as this is platform specific code.
3432 * platform/android/GeolocationServiceAndroid.cpp: Added.
3433 (WebCore::GeolocationServiceAndroid::create):
3434 (WebCore::GeolocationServiceAndroid::GeolocationServiceAndroid):
3435 (WebCore::GeolocationServiceAndroid::startUpdating):
3436 (WebCore::GeolocationServiceAndroid::stopUpdating):
3437 (WebCore::GeolocationServiceAndroid::suspend):
3438 (WebCore::GeolocationServiceAndroid::resume):
3439 (WebCore::GeolocationServiceAndroid::newPositionAvailable):
3440 (WebCore::GeolocationServiceAndroid::newErrorAvailable):
3441 (WebCore::GeolocationServiceAndroid::timerFired):
3442 (WebCore::GeolocationServiceAndroid::isPositionMovement):
3443 (WebCore::GeolocationServiceAndroid::isPositionMoreAccurate):
3444 (WebCore::GeolocationServiceAndroid::isPositionMoreTimely):
3445 * platform/android/GeolocationServiceAndroid.h: Added.
3446 (WebCore::GeolocationServiceAndroid::~GeolocationServiceAndroid):
3447 (WebCore::GeolocationServiceAndroid::lastPosition):
3448 (WebCore::GeolocationServiceAndroid::lastError):
3449 * platform/android/GeolocationServiceBridge.cpp: Added.
3451 (WebCore::GeolocationServiceBridge::GeolocationServiceBridge):
3452 (WebCore::GeolocationServiceBridge::~GeolocationServiceBridge):
3453 (WebCore::GeolocationServiceBridge::start):
3454 (WebCore::GeolocationServiceBridge::stop):
3455 (WebCore::GeolocationServiceBridge::setEnableGps):
3456 (WebCore::GeolocationServiceBridge::newLocationAvailable):
3457 (WebCore::GeolocationServiceBridge::newErrorAvailable):
3458 (WebCore::GeolocationServiceBridge::toGeoposition):
3459 (WebCore::GeolocationServiceBridge::startJavaImplementation):
3460 (WebCore::GeolocationServiceBridge::stopJavaImplementation):
3461 * platform/android/GeolocationServiceBridge.h: Added.
3463 2009-11-16 Kent Tamura <tkent@chromium.org>
3465 Unreviewd build fix.
3467 - Fix typo in WebCore.vcproj.
3468 - Intlude limits.h for INT_MAX.
3469 - Enclose with parenthesis to suspress warning.
3471 * WebCore.vcproj/WebCore.vcproj:
3472 * html/ISODateTime.cpp:
3473 (WebCore::ISODateTime::addDay):
3475 2009-11-16 Robin Dunn <robin@alldunn.com>
3477 Reviewed by Kevin Ollivier.
3479 Make sure wx scrollbar drawing code factors in transforms when switching backends,
3480 fix calcs for scrollbar length, and tweak the Mac scrollbar tracking rects.
3482 https://bugs.webkit.org/show_bug.cgi?id=31570
3484 * platform/wx/ScrollbarThemeWx.cpp:
3485 (WebCore::ScrollbarThemeWx::minimumThumbLength):
3486 (WebCore::ScrollbarThemeWx::splitTrack):
3487 (WebCore::ScrollbarThemeWx::forwardButtonRect):
3488 * platform/wx/ScrollbarThemeWx.h:
3489 * platform/wx/wxcode/gtk/scrollbar_render.cpp:
3490 (wxRenderer_DrawScrollbar):
3491 * platform/wx/wxcode/scrollbar_render.h:
3492 (calcThumbStartAndLength):
3493 * platform/wx/wxcode/win/scrollbar_render.cpp:
3494 (wxRenderer_DrawScrollbar):
3496 2009-11-16 Kent Tamura <tkent@chromium.org>
3498 Reviewed by David Levin.
3500 Introduce WebCore::ISODateTime class.
3501 https://bugs.webkit.org/show_bug.cgi?id=31340
3503 This class represents a value of date/time types of the HTML5 INPUT
3504 element, and has some parsing methods for ISO 8601.
3506 This change has no tests because the class is not used yet.
3508 * GNUmakefile.am: Add ISODateTime.cpp and ISODateTime.h.
3509 * WebCore.gypi: ditto.
3510 * WebCore.pro: ditto.
3511 * WebCore.vcproj/WebCore.vcproj: ditto.
3512 * WebCore.xcodeproj/project.pbxproj: ditto.
3513 * WebCoreSources.bkl: ditto.
3514 * html/ISODateTime.cpp: Added. Implementation of WebCore::ISODateTime class.
3515 (WebCore::isLeapYear):
3516 (WebCore::maxDayOfMonth):
3517 (WebCore::dayOfWeek):
3518 (WebCore::ISODateTime::maxWeekNumberInYear):
3519 (WebCore::countDigits):
3521 (WebCore::ISODateTime::parseYear): Private helper for parseDate() and parseWeek().
3522 (WebCore::ISODateTime::addDay): Private helper for parseTimeZone().
3523 (WebCore::ISODateTime::addMinute): ditto.
3524 (WebCore::ISODateTime::parseTimeZone): Private helper for parseDateTime().
3525 (WebCore::ISODateTime::parseMonth): Parser for <input type=month>.
3526 (WebCore::ISODateTime::parseDate): Parser for <input type=date>.
3527 (WebCore::ISODateTime::parseWeek): Parser for <input type=week>.
3528 (WebCore::ISODateTime::parseTime): Parser for <input type=time>.
3529 (WebCore::ISODateTime::parseDateTimeLocal): Parser for <input type=datetime-local>.
3530 (WebCore::ISODateTime::parseDateTime): Parser for <input type=datetime>.
3531 * html/ISODateTime.h: Added. Declare WebCore::ISODateTime class.
3532 (WebCore::ISODateTime::ISODateTime):
3533 (WebCore::ISODateTime::millisecond):
3534 (WebCore::ISODateTime::second):
3535 (WebCore::ISODateTime::minute):
3536 (WebCore::ISODateTime::hour):
3537 (WebCore::ISODateTime::monthDay):
3538 (WebCore::ISODateTime::month):
3539 (WebCore::ISODateTime::fullYear):
3540 (WebCore::ISODateTime::week):
3542 2009-11-16 Alexey Proskuryakov <ap@apple.com>
3544 Fix a typo in previous commit.
3546 * platform/network/cf/SocketStreamHandleCFNet.cpp: #ifdef, not #if.
3548 2009-11-16 Alexey Proskuryakov <ap@apple.com>
3550 Fix a typo in previous commit.
3552 * platform/network/cf/SocketStreamHandleCFNet.cpp:
3554 2009-11-16 Alexey Proskuryakov <ap@apple.com>
3558 * platform/network/cf/SocketStreamHandleCFNet.cpp: Define CFN_EXPORT, as this macro was named
3559 differently in Tiger CFNetwork.
3561 2009-11-16 Dimitri Glazkov <dglazkov@chromium.org>
3563 Reviewed by Darin Fisher.
3565 [KURLGoogle] setHostAndPort doesn't handle arguments without port correctly.
3567 Fix a bug in the code that was dormant until http://trac.webkit.org/changeset/50784.
3569 Covered by existing test: LayoutTests/fast/dom/HTMLAnchorElement/set-href-attribute-host.html
3571 * platform/KURLGoogle.cpp:
3572 (WebCore::KURL::setHostAndPort): Added handling of arguments without port specified.
3574 2009-11-16 Alexey Proskuryakov <ap@apple.com>
3576 Rubber-stamped by Jon Honeycutt.
3578 A better Windows build fix
3580 * platform/network/cf/SocketStreamHandleCFNet.cpp: (WebCore::SocketStreamHandle::createStreams):
3581 Use a macro that inserts __declspec(dllimport) when appropriate for CFNetwork imports.
3583 2009-11-16 Yael Aharon <yael.aharon@nokia.com>
3585 Reviewed by Darin Adler.
3587 Rename protocolIsValid to isValidProtocol.
3588 https://bugs.webkit.org/show_bug.cgi?id=31503
3590 This name change was suggested in https://bugs.webkit.org/show_bug.cgi?id=29972#c19.
3592 No new tests since no new functionality was introduced.
3594 * html/HTMLAnchorElement.cpp:
3595 (WebCore::HTMLAnchorElement::setProtocol):
3596 * platform/KURL.cpp:
3597 (WebCore::isValidProtocol):
3599 * platform/KURLGoogle.cpp:
3600 (WebCore::isValidProtocol):
3602 2009-11-16 Chris Fleizach <cfleizach@apple.com>
3604 Reviewed by Beth Dakin.
3606 AX: aria-labelledby duplicates some of its WAI-ARIA label
3607 https://bugs.webkit.org/show_bug.cgi?id=31565
3609 Test: accessibility/aria-labelledby-overrides-label.html
3611 * accessibility/AccessibilityRenderObject.cpp:
3612 (WebCore::AccessibilityRenderObject::hasTextAlternative):
3613 (WebCore::AccessibilityRenderObject::exposesTitleUIElement):
3614 (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
3615 * accessibility/AccessibilityRenderObject.h:
3617 2009-11-16 Nate Chapin <japhet@chromium.org>
3619 Reviewed by Darin Fisher.
3621 Handle the case of a null NPObject* in NPN_SetException in
3622 the V8 bindings. This allow out of process plugins calling
3623 NPN_SetException to just send null instead of sending an
3624 NPObject* that would be an address in a different
3625 process's memory space.
3627 https://bugs.webkit.org/show_bug.cgi?id=31561
3629 * bindings/v8/NPV8Object.cpp:
3630 (_NPN_SetException): Allow null NPObject* and just throw a general error.
3632 2009-11-16 Alexey Proskuryakov <ap@apple.com>
3636 * platform/network/cf/SocketStreamHandleCFNet.cpp: (WebCore::SocketStreamHandle::createStreams):
3637 Disable CONNECT proxies on Windows until WebKitSupportLibrary includes support for those.
3639 2009-11-14 Yael Aharon <yael.aharon@nokia.com>
3641 Reviewed by Kenneth Rohde Christiansen.
3643 [Qt] ASSERT failure while running DRT
3644 https://bugs.webkit.org/show_bug.cgi?id=30978
3646 Add needed Structure typeInfo flags to QtRuntimeObjectImpl and QtRuntimeMethod.
3647 These flags are needed after r49649, where HasDefaultmark was changed to OverrideMarkChildren.
3649 * bridge/qt/qt_instance.cpp:
3650 (JSC::Bindings::QtRuntimeObjectImp::createStructure):
3651 * bridge/qt/qt_runtime.h:
3652 (JSC::Bindings::QtRuntimeMethod::createStructure):
3654 2009-11-16 Mark Rowe <mrowe@apple.com>
3656 Attempt to fix the build. Land a file that was missing from r51049.
3658 * bindings/js/JSWebGLArrayHelper.h: Copied from WebCore/html/canvas/WebGLByteArray.idl.
3659 (WebCore::setWebGLArrayFromArray):
3661 2009-11-16 Kenneth Russell <kbr@google.com>
3663 Reviewed by Oliver Hunt.
3665 Update API of WebGLArray and friends
3666 https://bugs.webkit.org/show_bug.cgi?id=31175
3668 * bindings/js/JSWebGLArrayCustom.cpp:
3670 * bindings/js/JSWebGLArrayHelper.h: Added.
3671 (WebCore::setWebGLArrayFromArray):
3672 * bindings/js/JSWebGLByteArrayCustom.cpp:
3673 (WebCore::JSWebGLByteArray::set):
3674 * bindings/js/JSWebGLFloatArrayCustom.cpp:
3675 (WebCore::JSWebGLFloatArray::set):
3676 * bindings/js/JSWebGLIntArrayCustom.cpp:
3677 (WebCore::JSWebGLIntArray::set):
3678 * bindings/js/JSWebGLShortArrayCustom.cpp:
3679 (WebCore::JSWebGLShortArray::set):
3680 * bindings/js/JSWebGLUnsignedByteArrayCustom.cpp:
3681 (WebCore::JSWebGLUnsignedByteArray::set):
3682 * bindings/js/JSWebGLUnsignedIntArrayCustom.cpp:
3683 (WebCore::JSWebGLUnsignedIntArray::set):
3684 * bindings/js/JSWebGLUnsignedShortArrayCustom.cpp:
3685 (WebCore::JSWebGLUnsignedShortArray::set):
3686 * bindings/scripts/CodeGeneratorV8.pm:
3687 * bindings/v8/V8DOMWrapper.cpp:
3688 (WebCore::V8DOMWrapper::convertToV8Object):
3689 * bindings/v8/custom/V8CustomBinding.h:
3690 * bindings/v8/custom/V8WebGLArrayBufferCustom.cpp:
3691 (WebCore::CALLBACK_FUNC_DECL):
3692 * bindings/v8/custom/V8WebGLArrayCustom.h:
3693 (WebCore::constructWebGLArray):
3694 (WebCore::getWebGLArrayElement):
3695 (WebCore::setWebGLArrayFromArray):
3696 (WebCore::setWebGLArray):
3697 * bindings/v8/custom/V8WebGLByteArrayCustom.cpp:
3698 (WebCore::CALLBACK_FUNC_DECL):
3699 * bindings/v8/custom/V8WebGLFloatArrayCustom.cpp:
3700 (WebCore::CALLBACK_FUNC_DECL):
3701 * bindings/v8/custom/V8WebGLIntArrayCustom.cpp:
3702 (WebCore::CALLBACK_FUNC_DECL):
3703 * bindings/v8/custom/V8WebGLShortArrayCustom.cpp:
3704 (WebCore::CALLBACK_FUNC_DECL):
3705 * bindings/v8/custom/V8WebGLUnsignedByteArrayCustom.cpp:
3706 (WebCore::CALLBACK_FUNC_DECL):
3707 * bindings/v8/custom/V8WebGLUnsignedIntArrayCustom.cpp:
3708 (WebCore::CALLBACK_FUNC_DECL):
3709 * bindings/v8/custom/V8WebGLUnsignedShortArrayCustom.cpp:
3710 (WebCore::CALLBACK_FUNC_DECL):
3711 * html/canvas/WebGLArray.cpp:
3712 (WebCore::WebGLArray::WebGLArray):
3713 (WebCore::WebGLArray::~WebGLArray):
3714 (WebCore::WebGLArray::setImpl):
3715 * html/canvas/WebGLArray.h:
3716 (WebCore::WebGLArray::isByteArray):
3717 (WebCore::WebGLArray::isUnsignedByteArray):
3718 (WebCore::WebGLArray::isShortArray):
3719 (WebCore::WebGLArray::isUnsignedShortArray):
3720 (WebCore::WebGLArray::isIntArray):
3721 (WebCore::WebGLArray::isUnsignedIntArray):
3722 (WebCore::WebGLArray::isFloatArray):
3723 (WebCore::WebGLArray::buffer):
3724 (WebCore::WebGLArray::baseAddress):
3725 (WebCore::WebGLArray::byteOffset):
3726 * html/canvas/WebGLArray.idl:
3727 * html/canvas/WebGLArrayBuffer.cpp:
3728 (WebCore::WebGLArrayBuffer::create):
3729 (WebCore::WebGLArrayBuffer::WebGLArrayBuffer):
3730 (WebCore::WebGLArrayBuffer::data):
3731 (WebCore::WebGLArrayBuffer::byteLength):
3732 (WebCore::WebGLArrayBuffer::~WebGLArrayBuffer):
3733 * html/canvas/WebGLArrayBuffer.h:
3734 * html/canvas/WebGLByteArray.cpp:
3735 (WebCore::WebGLByteArray::create):
3736 (WebCore::WebGLByteArray::byteLength):
3737 (WebCore::WebGLByteArray::slice):
3738 (WebCore::WebGLByteArray::set):
3739 * html/canvas/WebGLByteArray.h:
3740 (WebCore::WebGLByteArray::isByteArray):
3741 (WebCore::WebGLByteArray::data):
3742 (WebCore::WebGLByteArray::set):
3743 (WebCore::WebGLByteArray::get):
3744 (WebCore::WebGLByteArray::item):
3745 * html/canvas/WebGLByteArray.idl:
3746 * html/canvas/WebGLFloatArray.cpp:
3747 (WebCore::WebGLFloatArray::create):
3748 (WebCore::WebGLFloatArray::WebGLFloatArray):
3749 (WebCore::WebGLFloatArray::length):
3750 (WebCore::WebGLFloatArray::byteLength):
3751 (WebCore::WebGLFloatArray::slice):
3752 (WebCore::WebGLFloatArray::set):
3753 * html/canvas/WebGLFloatArray.h:
3754 (WebCore::WebGLFloatArray::isFloatArray):
3755 (WebCore::WebGLFloatArray::data):
3756 (WebCore::WebGLFloatArray::set):
3757 (WebCore::WebGLFloatArray::get):
3758 (WebCore::WebGLFloatArray::item):
3759 * html/canvas/WebGLFloatArray.idl:
3760 * html/canvas/WebGLIntArray.cpp:
3761 (WebCore::WebGLIntArray::create):
3762 (WebCore::WebGLIntArray::WebGLIntArray):
3763 (WebCore::WebGLIntArray::length):
3764 (WebCore::WebGLIntArray::byteLength):
3765 (WebCore::WebGLIntArray::slice):
3766 (WebCore::WebGLIntArray::set):
3767 * html/canvas/WebGLIntArray.h:
3768 (WebCore::WebGLIntArray::isIntArray):
3769 (WebCore::WebGLIntArray::data):
3770 (WebCore::WebGLIntArray::set):
3771 (WebCore::WebGLIntArray::get):
3772 (WebCore::WebGLIntArray::item):
3773 * html/canvas/WebGLIntArray.idl:
3774 * html/canvas/WebGLShortArray.cpp:
3775 (WebCore::WebGLShortArray::create):
3776 (WebCore::WebGLShortArray::WebGLShortArray):
3777 (WebCore::WebGLShortArray::length):
3778 (WebCore::WebGLShortArray::byteLength):
3779 (WebCore::WebGLShortArray::slice):
3780 (WebCore::WebGLShortArray::set):
3781 * html/canvas/WebGLShortArray.h:
3782 (WebCore::WebGLShortArray::isShortArray):
3783 (WebCore::WebGLShortArray::data):
3784 (WebCore::WebGLShortArray::set):
3785 (WebCore::WebGLShortArray::get):
3786 (WebCore::WebGLShortArray::item):
3787 * html/canvas/WebGLShortArray.idl:
3788 * html/canvas/WebGLUnsignedByteArray.cpp:
3789 (WebCore::WebGLUnsignedByteArray::create):
3790 (WebCore::WebGLUnsignedByteArray::WebGLUnsignedByteArray):
3791 (WebCore::WebGLUnsignedByteArray::length):
3792 (WebCore::WebGLUnsignedByteArray::byteLength):
3793 (WebCore::WebGLUnsignedByteArray::slice):
3794 (WebCore::WebGLUnsignedByteArray::set):
3795 * html/canvas/WebGLUnsignedByteArray.h:
3796 (WebCore::WebGLUnsignedByteArray::isUnsignedByteArray):
3797 (WebCore::WebGLUnsignedByteArray::data):
3798 (WebCore::WebGLUnsignedByteArray::set):
3799 (WebCore::WebGLUnsignedByteArray::get):
3800 (WebCore::WebGLUnsignedByteArray::item):
3801 * html/canvas/WebGLUnsignedByteArray.idl:
3802 * html/canvas/WebGLUnsignedIntArray.cpp:
3803 (WebCore::WebGLUnsignedIntArray::create):
3804 (WebCore::WebGLUnsignedIntArray::WebGLUnsignedIntArray):
3805 (WebCore::WebGLUnsignedIntArray::length):
3806 (WebCore::WebGLUnsignedIntArray::byteLength):
3807 (WebCore::WebGLUnsignedIntArray::slice):
3808 (WebCore::WebGLUnsignedIntArray::set):
3809 * html/canvas/WebGLUnsignedIntArray.h:
3810 (WebCore::WebGLUnsignedIntArray::isUnsignedIntArray):
3811 (WebCore::WebGLUnsignedIntArray::data):
3812 (WebCore::WebGLUnsignedIntArray::set):
3813 (WebCore::WebGLUnsignedIntArray::get):
3814 (WebCore::WebGLUnsignedIntArray::item):
3815 * html/canvas/WebGLUnsignedIntArray.idl:
3816 * html/canvas/WebGLUnsignedShortArray.cpp:
3817 (WebCore::WebGLUnsignedShortArray::create):
3818 (WebCore::WebGLUnsignedShortArray::WebGLUnsignedShortArray):
3819 (WebCore::WebGLUnsignedShortArray::length):
3820 (WebCore::WebGLUnsignedShortArray::byteLength):
3821 (WebCore::WebGLUnsignedShortArray::slice):
3822 (WebCore::WebGLUnsignedShortArray::set):
3823 * html/canvas/WebGLUnsignedShortArray.h:
3824 (WebCore::WebGLUnsignedShortArray::isUnsignedShortArray):
3825 (WebCore::WebGLUnsignedShortArray::data):
3826 (WebCore::WebGLUnsignedShortArray::set):
3827 (WebCore::WebGLUnsignedShortArray::get):
3828 (WebCore::WebGLUnsignedShortArray::item):
3829 * html/canvas/WebGLUnsignedShortArray.idl:
3830 * platform/graphics/mac/GraphicsContext3DMac.cpp:
3831 (WebCore::GraphicsContext3D::bufferData):
3832 (WebCore::GraphicsContext3D::bufferSubData):
3834 2009-11-16 Alexey Proskuryakov <ap@apple.com>
3838 * platform/network/cf/SocketStreamHandleCFNet.cpp: Declare constants as extern "C".
3840 2009-11-15 Brent Fulgham <bfulgham@webkit.org>
3842 Reviewed by Oliver Hunt.
3844 Enable support for webkit-box-shadow in Cairo builds.
3845 https://bugs.webkit.org/show_bug.cgi?id=26102.
3847 Covered by existing fast/box-shadow tests.
3849 * platform/graphics/cairo/GraphicsContextCairo.cpp: Add
3850 support for fillRect shadows.
3852 2009-11-16 Alexey Proskuryakov <ap@apple.com>
3856 * platform/network/cf/SocketStreamHandleCFNet.cpp: Don't try to include a file that's not
3857 in WebKitSupportLibrary.
3859 2009-11-16 Alexey Proskuryakov <ap@apple.com>
3861 Reviewed by Darin Adler.
3863 https://bugs.webkit.org/show_bug.cgi?id=31494
3864 Add unauthenticated proxy support to SocketStreamHandleCFNet
3866 Cannot be tested in DRT.
3868 * platform/network/cf/SocketStreamHandleCFNet.cpp:
3869 (WebCore::SocketStreamHandle::chooseProxy): Fetch proxy information from OS.
3870 (WebCore::SocketStreamHandle::createStreams): Apply it to the newly created streams.
3872 2009-11-14 Antonio Gomes <tonikitoo@webkit.org>
3874 Reviewed by Antti Koivisto.
3876 [Qt] Broken back/forward after using ErrorPageExtension to set error page
3877 https://bugs.webkit.org/show_bug.cgi?id=30573
3879 Make FrameLoader::checkLoadCompleteForThisFrame method
3880 to check for any working DocumentLoader instance (through
3881 activeDocumentLoader()) instead of only checking for
3882 'm_provisionalDocumentLoader' in order to decide to if
3883 it is going to reset of not the back and forward history.
3884 after an error page has been loaded.
3886 Test: LayoutTests/fast/history/back-forward-reset-after-error-handling.html
3888 * loader/FrameLoader.cpp:
3889 (WebCore::FrameLoader::checkLoadCompleteForThisFrame):
3891 2009-11-14 Chris Fleizach <cfleizach@apple.com>
3893 Reviewed by Darin Adler.
3895 Need to implement ARIA role="directory"
3896 https://bugs.webkit.org/show_bug.cgi?id=31516
3898 Test: platform/mac/accessibility/aria-directory.html
3900 * accessibility/AXObjectCache.cpp:
3901 (WebCore::AXObjectCache::getOrCreate):
3902 * accessibility/AccessibilityList.cpp:
3903 (WebCore::AccessibilityList::isOrderedList):
3904 * accessibility/AccessibilityRenderObject.cpp:
3905 (WebCore::createARIARoleMap):
3907 2009-11-15 Dave Tapuska <dtapuska@rim.com>
3909 Reviewed by George Staikos.
3911 Compare UChars single unit at a time as opposed to the uint32_t
3912 approach as casting to unaligned addresses may cause a bus failure
3913 on ARMv5 and below. This change replicates the same defines that
3914 exists in AtomicString.cpp
3916 https://bugs.webkit.org/show_bug.cgi?id=31475
3918 * platform/text/StringHash.h:
3919 (WebCore::StringHash::equal):
3921 2009-11-15 Evan Martin <evan@chromium.org>
3923 Reviewed by Adam Barth.
3925 Wrap some SVG code in V8DOMWrapper with an ENABLE(SVG) test.
3927 https://bugs.webkit.org/show_bug.cgi?id=31490
3929 * bindings/v8/V8DOMWrapper.cpp:
3931 2009-11-15 Maxime Simon <simon.maxime@gmail.com>
3933 Reviewed by Adam Barth.
3935 [Haiku] Build fix. The FileChooser constructor doesn't need to be redefined.
3937 * platform/haiku/FileChooserHaiku.cpp:
3939 2009-11-15 Maxime Simon <simon.maxime@gmail.com>
3941 Reviewed by Adam Barth.
3943 [Haiku] Build fix. ColorSpace name had a wrong CamelCase.
3945 * platform/graphics/haiku/GraphicsContextHaiku.cpp:
3946 (WebCore::GraphicsContext::setPlatformStrokeColor):
3948 2009-11-15 Daniel Bates <dbates@webkit.org>
3950 No review, rolling out r50999.
3951 http://trac.webkit.org/changeset/50999
3953 Need to fix some issues in the Windows build. Missed some places where
3954 RenderTextControl::isEdited is called.
3956 * bindings/objc/DOMHTML.mm:
3957 (-[DOMHTMLInputElement _isEdited]):
3958 (-[DOMHTMLTextAreaElement _isEdited]):
3960 (WebCore::Document::setFocusedNode):
3961 * html/HTMLInputElement.cpp:
3962 (WebCore::HTMLInputElement::defaultEventHandler):
3963 * rendering/RenderTextControl.cpp:
3964 (WebCore::RenderTextControl::RenderTextControl):
3965 (WebCore::RenderTextControl::setInnerTextValue):
3966 (WebCore::RenderTextControl::setUserEdited):
3967 (WebCore::RenderTextControl::subtreeHasChanged):
3968 * rendering/RenderTextControl.h:
3969 (WebCore::RenderTextControl::isEdited):
3970 (WebCore::RenderTextControl::setEdited):
3971 (WebCore::RenderTextControl::isUserEdited):
3972 * rendering/RenderTextControlSingleLine.cpp:
3973 (WebCore::RenderTextControlSingleLine::subtreeHasChanged):
3974 * wml/WMLInputElement.cpp:
3975 (WebCore::WMLInputElement::defaultEventHandler):
3977 2009-11-15 Daniel Bates <dbates@webkit.org>
3979 Reviewed by Darin Adler.
3981 https://bugs.webkit.org/show_bug.cgi?id=31186
3983 Renames RenderTextControl::m_edited and RenderTextControl::m_userEdited to
3984 m_wasChangedSinceLastChangeEvent and m_lastChangeWasUserEdit, respectively.
3985 These are more descriptive names so as to clear an ambiguity surrounding
3986 their usage. Also, renames associated setters and getters so that they
3987 coincide with the renamed fields.
3989 No functionality was changed. So, no tests were included.
3991 * bindings/objc/DOMHTML.mm:
3992 (-[DOMHTMLInputElement _isEdited]):
3993 (-[DOMHTMLTextAreaElement _isEdited]):
3995 (WebCore::Document::setFocusedNode):
3996 * html/HTMLInputElement.cpp:
3997 (WebCore::HTMLInputElement::defaultEventHandler):
3998 * rendering/RenderTextControl.cpp:
3999 (WebCore::RenderTextControl::RenderTextControl):
4000 (WebCore::RenderTextControl::setInnerTextValue):
4001 (WebCore::RenderTextControl::setLastChangeWasUserEdit): Formerly named setUserEdited.
4002 (WebCore::RenderTextControl::subtreeHasChanged):
4003 * rendering/RenderTextControl.h:
4004 (WebCore::RenderTextControl::wasChangedSinceLastChangeEvent): Formerly named isEdited.
4005 (WebCore::RenderTextControl::setChangedSinceLastChangeEvent): Formerly named setEdited.
4006 (WebCore::RenderTextControl::lastChangeWasUserEdit): Formerly named setUserEdited.
4007 * rendering/RenderTextControlSingleLine.cpp:
4008 (WebCore::RenderTextControlSingleLine::subtreeHasChanged):
4009 * wml/WMLInputElement.cpp:
4010 (WebCore::WMLInputElement::defaultEventHandler):
4012 2009-11-14 Adele Peterson <adele@apple.com>
4014 Reviewed by Dan Bernstein.
4016 Fix for <rdar://problem/6946165> Would like to be able to specify the number of visible lines when using -webkit-line-clamp
4018 Test: fast/overflow/line-clamp.html
4020 * css/CSSComputedStyleDeclaration.cpp: (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Updated to handle different types of values.
4021 * css/CSSParser.cpp: (WebCore::CSSParser::parseValue): ditto.
4022 * css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::applyProperty): ditto.
4024 * rendering/RenderFlexibleBox.cpp: (WebCore::RenderFlexibleBox::layoutVerticalBox):
4025 Use the line count value if available. Otherwise, convert the percentage to the line count, as we did before. Also,
4026 if there is anchor as the last child box, still allow adding the ellipsis.
4028 * rendering/RenderLayer.cpp:
4029 (WebCore::RenderLayer::scrollByRecursively): Call isNone on the LineClampValue to see if the line-clamp property has been set.
4030 (WebCore::RenderLayer::scrollRectToVisible): ditto.
4032 * WebCore.xcodeproj/project.pbxproj: Added LineClampValue.h
4033 * rendering/style/LineClampValue.h: Added.
4034 (WebCore::LineClampValue::LineClampValue):
4035 (WebCore::LineClampValue::value):
4036 (WebCore::LineClampValue::isPercentage):
4037 (WebCore::LineClampValue::isNone):
4038 (WebCore::LineClampValue::operator==):
4039 (WebCore::LineClampValue::operator!=):
4040 * rendering/style/RenderStyleConstants.h: (WebCore::): Define ELineClampType enum for percentage or line count.
4042 * rendering/style/RenderStyle.h: Use LineClampValue.
4043 (WebCore::InheritedFlags::lineClamp):
4044 (WebCore::InheritedFlags::setLineClamp):
4045 (WebCore::InheritedFlags::initialLineClamp):
4046 * rendering/style/StyleRareNonInheritedData.h:
4048 2009-11-14 Eric Carlson <eric.carlson@apple.com>
4050 Reviewed by Oliver Hunt.
4052 <rdar://problem/7287487>
4053 Do not use QuickTime version to detect media controller theme
4055 * WebCore.base.exp: Export wkMediaControllerThemeAvailable
4056 * platform/mac/WebCoreSystemInterface.h: Ditto.
4057 * platform/mac/WebCoreSystemInterface.mm: Ditto.
4059 * rendering/RenderThemeMac.mm:
4060 (WebCore::mediaControllerTheme): Use wkMediaControllerThemeAvailable instead of the
4061 QuickTime version to see if it is possible to use MediaControllerThemeQuickTime.
4063 2009-11-14 Kent Tamura <tkent@chromium.org>
4065 Reviewed by Darin Adler.
4067 - Recognizes date/datetime/datetime-local/month/time/week types of INPUT element.
4068 They have no dedicated UI and no type validation for now.
4069 - Clean up setInputType() and formControlType() of HTMLInputElement.
4070 https://bugs.webkit.org/show_bug.cgi?id=29004
4072 Test: fast/forms/input-type-change3.html
4074 * html/HTMLInputElement.cpp:
4075 (WebCore::HTMLInputElement::valueMissing):
4076 (WebCore::HTMLInputElement::patternMismatch):
4077 (WebCore::HTMLInputElement::tooLong):
4078 (WebCore::createTypeMap):
4079 (WebCore::HTMLInputElement::setInputType):
4080 (WebCore::createFormControlTypes):
4081 (WebCore::HTMLInputElement::formControlType):
4082 (WebCore::HTMLInputElement::saveFormControlState):
4083 (WebCore::HTMLInputElement::restoreFormControlState):
4084 (WebCore::HTMLInputElement::accessKeyAction):
4085 (WebCore::HTMLInputElement::rendererIsNeeded):
4086 (WebCore::HTMLInputElement::createRenderer):
4087 (WebCore::HTMLInputElement::appendFormData):
4088 (WebCore::HTMLInputElement::isTextField):
4089 (WebCore::HTMLInputElement::valueWithDefault):
4090 (WebCore::HTMLInputElement::storesValueSeparateFromAttribute):
4091 (WebCore::HTMLInputElement::defaultEventHandler):
4092 (WebCore::HTMLInputElement::isRequiredFormControl):
4093 (WebCore::HTMLInputElement::dataList):
4094 * html/HTMLInputElement.h:
4095 (WebCore::HTMLInputElement::):
4097 2009-11-13 Chris Fleizach <cfleizach@apple.com>
4099 Reviewed by Darin Adler.
4101 WAI-ARIA: checkbox does not determine its label from text content
4102 https://bugs.webkit.org/show_bug.cgi?id=31456
4104 Test: accessibility/aria-checkbox-text.html
4106 * accessibility/AccessibilityRenderObject.cpp:
4107 (WebCore::AccessibilityRenderObject::title):
4109 2009-11-13 Dimitri Glazkov <dglazkov@chromium.org>
4111 Unreviewed, build fix.
4113 [Chromium] Fix build to catch up with http://trac.webkit.org/changeset/50973.
4114 This is just enough changes to unbreak the port.
4116 * bindings/v8/ScriptController.cpp:
4117 (WebCore::mainThreadNormalWorld):
4118 * bindings/v8/V8Proxy.cpp:
4119 (WebCore::V8Proxy::initContextIfNeeded):
4120 * loader/FrameLoaderClient.h:
4122 2009-11-13 Aaron Boodman <aa@chromium.org>
4124 Unreviewed fix for Chromium build.
4126 * loader/FrameLoaderClient.h:
4127 (WebCore::FrameLoaderClient::dispatchDidClearWindowObjectInWorld):
4128 Provide an empty implementation of this method because I don't know
4129 what it is supposed to do on Chromium.
4131 2009-11-13 Aaron Boodman <aa@chromium.org>
4133 Unreviewed fix for Chromium build.
4135 * loader/FrameLoader.h: Make dispatchDidClearWindowObjectsInAllWorlds()
4136 public, as Chromium's V8Proxy calls it.
4138 2009-11-13 Aaron Boodman <aa@chromium.org>
4140 Unreviewed fix to Chromium build.
4142 * bindings/v8/ScriptController.cpp:
4143 (WebCore::ScriptController::getAllWorlds):
4145 2009-11-13 Aaron Boodman <aa@chromium.org>
4147 Unreviewed fix for Chromium build.
4149 * platform/text/TextBoundaries.cpp: Use longer path to refer to Unicode.h.
4151 2009-11-13 Adam Barth <abarth@webkit.org>
4153 Unreviewed partial build fix for Chromium. Should fix failure #4.
4155 * bindings/v8/ScriptController.cpp:
4156 (WebCore::ScriptController::getAllWorlds):
4157 * bindings/v8/ScriptController.h:
4158 * bindings/v8/V8Proxy.cpp:
4159 (WebCore::V8Proxy::initContextIfNeeded):
4161 2009-11-13 Adam Barth <abarth@webkit.org>
4163 Unreviewed partial build fix for Chromium.
4165 * bindings/v8/ScriptController.h:
4166 (WebCore::ScriptController::getAllWorlds):
4168 2009-11-13 Eric Seidel <eric@webkit.org>
4170 No review, build fix only.
4172 Fix Windows and Chromium builds after http://trac.webkit.org/changeset/50977.
4174 Unify TextBoundaries implementations by only relying on WTF Unicode abstractions
4175 https://bugs.webkit.org/show_bug.cgi?id=31468
4177 * WebCore.gypi: Rename TextBoundariesICU -> TextBoundaries
4178 * WebCore.vcproj/WebCore.vcproj: Rename TextBoundariesICU -> TextBoundaries
4180 2009-11-12 Jeremy Orlow <jorlow@chromium.org>
4182 Reviewed by Dmitry Titov.
4184 LocalStorage quota should include key sizes in its count
4185 https://bugs.webkit.org/show_bug.cgi?id=31451
4187 * storage/StorageMap.cpp:
4188 (WebCore::StorageMap::setItem):
4189 Count keys in the quota when adding a new item.
4190 (WebCore::StorageMap::removeItem):
4191 Remove the key's length from the quota if we're removing the item.
4192 (WebCore::StorageMap::importItem):
4193 Assume that we're adding things for the first time.
4194 Count keys in the quota.
4196 2009-11-13 Dominik Röttsches <dominik.roettsches@access-company.com>
4198 Reviewed by Eric Seidel.
4200 Unify TextBoundaries implementations by only relying on WTF Unicode abstractions
4201 https://bugs.webkit.org/show_bug.cgi?id=31468
4203 Moving TextBoundariesICU.cpp to TextBoundaries.cpp
4204 by removing the direct ICU dependency and replacing it
4205 with WTF functions and WebCore's own TextBreakIterator
4209 * platform/graphics/gtk/SimpleFontDataGtk.cpp:
4210 * platform/text/TextBoundaries.cpp: Added.
4211 (WebCore::findNextWordFromIndex):
4212 (WebCore::findWordBoundary):
4213 * platform/text/TextBoundariesICU.cpp: Removed.
4214 * platform/text/TextBreakIterator.h:
4215 * platform/text/TextBreakIteratorICU.cpp:
4216 (WebCore::textBreakLast):
4217 (WebCore::textBreakPrevious):
4219 2009-11-13 Shinichiro Hamaji <hamaji@chromium.org>