1 2009-12-14 Dan Bernstein <mitz@apple.com>
3 Reviewed by Darin Adler.
5 <rdar://problem/7460655> REGRESSION (r47255): Content shifted down at software.opensuse.org
6 https://bugs.webkit.org/show_bug.cgi?id=32382
8 Test: fast/block/float/in-margin.html
10 * rendering/RenderBlock.cpp:
11 (WebCore::RenderBlock::getClearDelta): Floats that do not intrude into the line (because
12 they are in the margin) do not need to be cleared.
14 2009-12-14 Enrica Casucci <enrica@apple.com>
16 Reviewed by John Sullivan.
18 Pressing backspace inside a table cell erases all empty rows below it.
19 <rdar://problem/5565461>
20 https://bugs.webkit.org/show_bug.cgi?id=32526
22 No deletion is performed when the caret selection is on an empty table cell.
24 Test: editing/deleting/delete-empty-table.html
26 * editing/TypingCommand.cpp:
27 (WebCore::TypingCommand::deleteKeyPressed): Added check for empty table cells in
28 case of caret selection.
30 2009-12-14 Andrei Popescu <andreip@google.com>
32 Reviewed by Darin Adler.
34 [Android] Android needs ResourceHandle implementation
35 https://bugs.webkit.org/show_bug.cgi?id=32515
37 Adds implementation of ResourceHandle on Android.
39 No new tests needed, this is platform-specific code, so existing
42 * platform/network/android/ResourceHandleAndroid.cpp: Added.
43 (WebCore::ResourceHandleInternal::~ResourceHandleInternal):
44 (WebCore::ResourceHandle::~ResourceHandle):
45 (WebCore::ResourceHandle::start):
46 (WebCore::ResourceHandle::cancel):
47 (WebCore::ResourceHandle::bufferedData):
48 (WebCore::ResourceHandle::supportsBufferedData):
49 (WebCore::ResourceHandle::setDefersLoading):
50 (WebCore::ResourceHandle::willLoadFromCache):
51 (WebCore::ResourceHandle::loadsBlocked):
52 (WebCore::SyncLoader::SyncLoader):
53 (WebCore::SyncLoader::~SyncLoader):
54 (WebCore::SyncLoader::didReceiveResponse):
55 (WebCore::SyncLoader::didReceiveData):
56 (WebCore::SyncLoader::didFail):
57 (WebCore::ResourceHandle::loadResourceSynchronously):
58 * platform/network/android/ResourceLoaderAndroid.h: Added.
59 (WebCore::ResourceLoaderAndroid::~ResourceLoaderAndroid):
60 (WebCore::ResourceLoaderAndroid::ResourceLoaderAndroid):
62 2009-12-14 Marco Martin <notmart@gmail.com>
64 Reviewed by Kenneth Rohde Christiansen.
66 In the Scrollbar painting of the Qt theme integration,
67 intersects any previous clip rects with the one needed to paint the scrollbar.
68 This fixes the painting in QGraphicsview, when the parent of the widget that
69 paints the QWebPage has the QGraphicsItem::ItemClipsChildrenToShape set and
70 a piece of the scrollbar should be cipped away
71 https://bugs.webkit.org/show_bug.cgi?id=30366
75 * platform/qt/ScrollbarThemeQt.cpp:
76 (WebCore::ScrollbarThemeQt::paint):
78 2009-12-14 Dimitri Glazkov <dglazkov@chromium.org>
80 Reviewed by Eric Seidel.
82 [V8] Generate bindings for trivial indexers.
83 https://bugs.webkit.org/show_bug.cgi?id=32455
85 Covered by existing tests.
87 * bindings/scripts/CodeGeneratorV8.pm:
88 Added detecting indexers and generating code for them.
89 * bindings/v8/V8Collection.h: Removed code that's now generated.
90 * bindings/v8/V8DOMWrapper.cpp:
91 (WebCore::V8DOMWrapper::getTemplate): Ditto.
93 2009-12-14 Alexey Proskuryakov <ap@apple.com>
95 Reviewed by Dave Hyatt.
97 https://bugs.webkit.org/show_bug.cgi?id=31660
98 REGRESSION (r49394): Image load event fires before the document fragment is attached.
100 Test: fast/images/image-load-event-in-fragment.html
102 We cannot fire load events immediately after parsing a fragment - an element inserted via
103 innerHTML or equivalent should be reachable via getElementById() by the time its load event
106 * dom/Document.cpp: (WebCore::Document::implicitClose): Call dispatchPendingBeforeLoadEvents()
107 and dispatchPendingLoadEvents() individually. I'm not sure why these calls are here, just
108 preserving existing behavior.
110 * dom/XMLTokenizer.cpp: (WebCore::XMLTokenizer::write):
111 * html/HTMLTokenizer.cpp: (WebCore::HTMLTokenizer::write):
112 Load events for elements that have just been parsed cannot be dispatched yet, we should give
113 the elements a chance to be inserted into a document first. There is no compatibility baggage
114 for beforeload, so it seems OK to dispatch it right away.
116 * loader/ImageLoader.cpp:
117 (WebCore::ImageLoader::dispatchPendingBeforeLoadEvents):
118 (WebCore::ImageLoader::dispatchPendingLoadEvents):
119 * loader/ImageLoader.h:
120 Separated dispatchPendingEvents() into individual functions for each event kind.
122 2009-12-14 Jakob Petsovits <jpetsovits@rim.com>
124 Reviewed by Simon Fraser.
126 Add FloatQuad::isRectilinear() to check whether it can be represented as FloatRect.
127 https://bugs.webkit.org/show_bug.cgi?id=30442
129 This enables optimizations for distinguishing between
130 arbitrary FloatQuads and rectilinear ones.
132 * platform/graphics/FloatQuad.cpp:
133 (WebCore::FloatQuad::isRectilinear):
134 * platform/graphics/FloatQuad.h:
136 2009-12-14 Simon Hausmann <hausmann@webkit.org>
138 Reviewed by Holger Freyther.
140 [Qt] Add support for keyboard modifiers to TouchEvent
142 https://bugs.webkit.org/show_bug.cgi?id=32482
144 Similar to other ui events with keyboard state, get the alt, shift,
145 meta and ctrl modifiers straight from the platform event.
147 * dom/TouchEvent.cpp:
148 (WebCore::TouchEvent::TouchEvent):
149 (WebCore::TouchEvent::initTouchEvent):
151 (WebCore::TouchEvent::create):
152 * dom/TouchEvent.idl:
153 * page/EventHandler.cpp:
154 (WebCore::EventHandler::handleTouchEvent):
155 * platform/PlatformTouchEvent.h:
156 (WebCore::PlatformTouchEvent::PlatformTouchEvent):
157 (WebCore::PlatformTouchEvent::shiftKey):
158 (WebCore::PlatformTouchEvent::ctrlKey):
159 (WebCore::PlatformTouchEvent::altKey):
160 (WebCore::PlatformTouchEvent::metaKey):
161 * platform/qt/PlatformTouchEventQt.cpp:
162 (WebCore::PlatformTouchEvent::PlatformTouchEvent):
164 2009-12-14 Benjamin Poulain <benjamin.poulain@nokia.com>
166 Reviewed by Kenneth Rohde Christiansen.
168 [Qt] crash when clicking "Sign out" in GMail
169 https://bugs.webkit.org/show_bug.cgi?id=32300
171 When the ResourceLoader cancels the handle we have to make sure not to access
172 the resource handle afterwards again.
175 * platform/network/qt/QNetworkReplyHandler.cpp:
176 (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
178 2009-12-14 Alexander Pavlov <apavlov@chromium.org>
180 Reviewed by Pavel Feldman.
182 Implement InjectedScript.evaluateOnSelf() that evaluates functions in the InjectedScript context.
183 https://bugs.webkit.org/show_bug.cgi?id=32517
185 * inspector/front-end/InjectedScript.js:
186 (InjectedScript.evaluateOnSelf):
187 * inspector/front-end/InjectedScriptAccess.js:
189 2009-12-14 Nayan Kumar K <nayankk@gmail.com>
191 Reviewed by Darin Adler.
193 Fix for compilation errors in WML enabled builds.
195 https://bugs.webkit.org/show_bug.cgi?id=32481
197 * wml/WMLInputElement.cpp:
198 (WebCore::WMLInputElement::setValue):
199 (WebCore::WMLInputElement::setValueForUser):
200 * wml/WMLInputElement.h:
202 2009-12-14 Andrei Popescu <andreip@google.com>
204 Reviewed by Darin Adler.
206 [Android] Android needs ResourceError, ResourceResponse and
207 ResourceRequest implementation.
208 https://bugs.webkit.org/show_bug.cgi?id=32522
210 Add implementation of ResourceError, ResourceResponse and ResourceRequest.
211 No new tests needed, the existing tests should be sufficient.
213 * platform/network/android/ResourceError.h: Added.
214 (WebCore::ResourceError::ResourceError):
215 * platform/network/android/ResourceRequest.h: Added.
216 (WebCore::ResourceRequest::ResourceRequest):
217 (WebCore::ResourceRequest::doUpdatePlatformRequest):
218 (WebCore::ResourceRequest::doUpdateResourceRequest):
219 (WebCore::ResourceRequest::setUserGesture):
220 (WebCore::ResourceRequest::getUserGesture):
221 * platform/network/android/ResourceResponse.h: Added.
222 (WebCore::ResourceResponse::ResourceResponse):
223 (WebCore::ResourceResponse::doUpdateResourceResponse):
225 2009-12-14 Sam Weinig <sam@webkit.org>
229 * page/Geolocation.cpp:
230 * page/Geolocation.h:
232 2009-12-13 Sam Weinig <sam@webkit.org>
234 Reviewed by Dan Bernstein.
236 Fix for https://bugs.webkit.org/show_bug.cgi?id=32499
237 Add client based Geolocation provider
239 Add first cut of a client based Geolocation provider. This is guarded by
240 ENABLE(CLIENT_BASED_GEOLOCATION) and is off by default for now. This adds a
241 GeolocationControllerClient interface that no-one currently implements,
242 but will in a subsequent patch.
248 * WebCore.vcproj/WebCore.vcproj:
249 * WebCore.xcodeproj/project.pbxproj:
250 * WebCoreSources.bkl:
251 * page/Geolocation.cpp:
252 (WebCore::createGeopositionFromGeolocationPosition):
253 (WebCore::createPositionErrorFromGeolocationError):
254 (WebCore::Geolocation::Geolocation):
255 (WebCore::Geolocation::~Geolocation):
256 (WebCore::Geolocation::disconnectFrame):
257 (WebCore::Geolocation::lastPosition):
258 (WebCore::Geolocation::startRequest):
259 (WebCore::Geolocation::fatalErrorOccurred):
260 (WebCore::Geolocation::requestTimedOut):
261 (WebCore::Geolocation::clearWatch):
262 (WebCore::Geolocation::handleError):
263 (WebCore::Geolocation::positionChanged):
264 (WebCore::Geolocation::makeSuccessCallbacks):
265 (WebCore::Geolocation::errorOccurred):
266 (WebCore::Geolocation::geolocationServicePositionChanged):
267 (WebCore::Geolocation::geolocationServiceErrorOccurred):
268 (WebCore::Geolocation::startUpdating):
269 (WebCore::Geolocation::stopUpdating):
270 * page/Geolocation.h:
271 * page/GeolocationController.cpp: Added.
272 (WebCore::GeolocationController::GeolocationController):
273 (WebCore::GeolocationController::~GeolocationController):
274 (WebCore::GeolocationController::addObserver):
275 (WebCore::GeolocationController::removeObserver):
276 (WebCore::GeolocationController::positionChanged):
277 (WebCore::GeolocationController::errorOccurred):
278 (WebCore::GeolocationController::lastPosition):
279 * page/GeolocationController.h: Added.
280 * page/GeolocationControllerClient.h: Added.
281 (WebCore::GeolocationControllerClient::~GeolocationControllerClient):
282 * page/GeolocationError.h: Added.
283 (WebCore::GeolocationError::):
284 (WebCore::GeolocationError::create):
285 (WebCore::GeolocationError::code):
286 (WebCore::GeolocationError::message):
287 * page/GeolocationPosition.h: Added.
288 (WebCore::GeolocationPosition::create):
289 (WebCore::GeolocationPosition::timestamp):
290 (WebCore::GeolocationPosition::latitude):
291 (WebCore::GeolocationPosition::longitude):
292 (WebCore::GeolocationPosition::accuracy):
293 (WebCore::GeolocationPosition::altitude):
294 (WebCore::GeolocationPosition::altitudeAccuracy):
295 (WebCore::GeolocationPosition::heading):
296 (WebCore::GeolocationPosition::speed):
297 (WebCore::GeolocationPosition::canProvideAltitude):
298 (WebCore::GeolocationPosition::canProvideAltitudeAccuracy):
299 (WebCore::GeolocationPosition::canProvideHeading):
300 (WebCore::GeolocationPosition::canProvideSpeed):
301 (WebCore::GeolocationPosition::GeolocationPosition):
302 * page/Geoposition.h:
303 (WebCore::Geoposition::create):
305 (WebCore::Page::Page):
307 (WebCore::Page::geolocationController):
308 * svg/graphics/SVGImage.cpp:
309 (WebCore::SVGImage::dataChanged):
311 2009-12-14 Adam Langley <agl@google.com>
313 Reviewed by Darin Adler.
315 Test that an image's size is valid before reading it.
317 Previously, an image that failed to load (m_failed == true) would
318 trigger an assertion failure when WebKit tried to get its size.
320 https://bugs.webkit.org/show_bug.cgi?id=32176
321 http://code.google.com/p/chromium/issues/detail?id=28566
323 Test: fast/images/size-failure.html
325 * platform/graphics/ImageSource.cpp:
326 (WebCore::ImageSource::createFrameAtIndex):
328 2009-12-14 Dan Bernstein <mitz@apple.com>
330 Reviewed by Darin Adler.
332 <rdar://problem/7458272> REGRESSION (r50470) Reproducible ASSERT in
333 RenderWidget::setWidgetGeometry()
335 Test: fast/forms/defer-updateFromElement.html
337 * html/HTMLFormControlElement.cpp:
338 (WebCore::updateFromElementCallback): Added this post-attach callback
339 that invokes updateFromElement().
340 (WebCore::HTMLFormControlElement::recalcStyle): Instead of calling
341 updateFromElement(), enqueue a post-attach (in this case, post-style
342 recalc) callback to do it. updateFromElement() can cause the selection
343 to change, and in turn trigger synchronous layout, so it must not be
344 called during style recalc.
346 2009-12-14 Pavel Feldman <pfeldman@chromium.org>
348 Reviewed by Timothy Hatcher.
350 Web Inspector: [regression] inspector deletes nodes when editing css.
352 Now all the treeoutlines are focusable, sections and their titles
353 are also focusable. Change contains couple of drive-by fixes such as
354 canceling of the attribute edit nuking attr info and maintaining proper
355 selection while deleting nodes.
357 https://bugs.webkit.org/show_bug.cgi?id=32460
359 * inspector/front-end/CallStackSidebarPane.js:
360 (WebInspector.CallStackSidebarPane.prototype.handleShortcut):
361 * inspector/front-end/ConsoleView.js:
362 (WebInspector.ConsoleView.prototype._promptKeyDown):
363 * inspector/front-end/DataGrid.js:
364 (WebInspector.DataGrid.prototype._keyDown):
365 * inspector/front-end/DatabaseQueryView.js:
366 (WebInspector.DatabaseQueryView):
367 (WebInspector.DatabaseQueryView.prototype._promptKeyDown):
368 * inspector/front-end/ElementsPanel.js:
369 (WebInspector.ElementsPanel.this.treeOutline.focusedNodeChanged):
370 (WebInspector.ElementsPanel.prototype.get defaultFocusedElement):
371 (WebInspector.ElementsPanel.prototype.handleShortcut):
372 * inspector/front-end/ElementsTreeOutline.js:
373 (WebInspector.ElementsTreeOutline):
374 (WebInspector.ElementsTreeOutline.prototype._keyDown):
375 (WebInspector.ElementsTreeElement.prototype._textNodeEditingCommitted):
376 (WebInspector.ElementsTreeElement.prototype._editingCancelled):
377 * inspector/front-end/Panel.js:
378 (WebInspector.Panel.prototype.show):
379 (WebInspector.Panel.prototype.get defaultFocusedElement):
380 * inspector/front-end/PropertiesSection.js:
381 (WebInspector.PropertiesSection):
382 * inspector/front-end/ScriptsPanel.js:
383 (WebInspector.ScriptsPanel):
384 (WebInspector.ScriptsPanel.prototype.get defaultFocusedElement):
385 (WebInspector.ScriptsPanel.prototype.handleShortcut):
386 * inspector/front-end/SidebarPane.js:
387 (WebInspector.SidebarPane):
388 (WebInspector.SidebarPane.prototype.toggleExpanded):
389 (WebInspector.SidebarPane.prototype._onTitleKeyDown):
390 * inspector/front-end/SourceFrame.js:
391 (WebInspector.SourceFrame.prototype._loaded):
392 * inspector/front-end/TextPrompt.js:
393 (WebInspector.TextPrompt):
394 * inspector/front-end/inspector.css:
395 * inspector/front-end/inspector.html:
396 * inspector/front-end/inspector.js:
397 (WebInspector.loaded):
398 (WebInspector.documentKeyDown):
399 (WebInspector.documentCanCopy):
400 (WebInspector.documentCopy):
401 (WebInspector._searchFieldManualFocus):
402 (WebInspector._searchKeyDown):
403 (WebInspector.startEditing.cleanUpAfterEditing):
404 (WebInspector.startEditing.keyDownEventListener):
405 (WebInspector.startEditing):
406 * inspector/front-end/treeoutline.js:
408 (TreeOutline._removeChildAtIndex):
409 (TreeOutline.prototype._treeKeyDown):
410 (TreeElement.prototype.deselect):
411 * inspector/front-end/utilities.js:
414 2009-12-14 Dimitri Glazkov <dglazkov@chromium.org>
416 Unreviewed, build fix.
418 [Chromium] Guard all of JSC's wrapper cache-related members on Document.
421 (WebCore::Document::createWrapperCache): Widened the guards to the whole method.
422 * dom/Document.h: Added JSC guards to wrapper cache-related members.
424 2009-12-14 Chris Fleizach <cfleizach@apple.com>
426 Reviewed by Adele Peterson.
428 AX: there's an infinite loop going on for some webpages - facebook.com
429 https://bugs.webkit.org/show_bug.cgi?id=32501
431 The problem is that parentObjectUnignored() cannot be called
432 while in accessibilityIsIgnored, because it leads to
433 recursiveness. Specifically, there were checks to determine
434 if an object was within a ARIA tree. That check should
435 1) be moved to all platforms, and 2) not call parentObjectUnignored().
437 Test: accessibility/hang-in-isignored.html
439 * accessibility/AccessibilityRenderObject.cpp:
440 (WebCore::AccessibilityRenderObject::isAllowedChildOfTree):
441 (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
442 * accessibility/AccessibilityRenderObject.h:
443 * accessibility/mac/AccessibilityObjectMac.mm:
444 (WebCore::AccessibilityObject::accessibilityPlatformIncludesObject):
446 2009-12-14 Eric Carlson <eric.carlson@apple.com>
448 Reviewed by Dan Bernstein.
450 <rdar://problem/6293979> Adopt shared control drawing for <video> controls on Leopard and Windows
452 Use MediaControllerThemeQuickTime on Leopard.
454 * rendering/RenderThemeMac.mm:
455 (WebCore::mediaControllerTheme):
457 2009-12-14 Adam Roben <aroben@apple.com>
459 Move QuartzCore-related build settings into a vsprops file
461 Fixes <http://webkit.org/b/32518>
463 Reviewed by Dan Bernstein.
465 * WebCore.vcproj/WebCore.vcproj: Let VS reformat the files list, added
466 WebCoreQuartzCore.vsprops to the non-Cairo configurations, moved all
467 other QuartzCore-related build settings from here...
468 * WebCore.vcproj/WebCoreQuartzCore.vsprops: ...to here.
470 2009-12-14 Yael Aharon <yael.aharon@nokia.com>
472 Reviewed by Antti Koivisto.
474 handling scripts can block UI
475 https://bugs.webkit.org/show_bug.cgi?id=27612
477 Break execution of external scrips to smaller chunks.
478 No new tests since no new functionality was introduced.
480 * html/HTMLTokenizer.cpp:
481 (WebCore::HTMLTokenizer::HTMLTokenizer):
482 (WebCore::HTMLTokenizer::reset):
483 (WebCore::HTMLTokenizer::notifyFinished):
484 (WebCore::HTMLTokenizer::executeExternalScriptsIfReady):
485 (WebCore::HTMLTokenizer::executeExternalScriptsTimerFired):
486 (WebCore::HTMLTokenizer::continueExecutingExternalScripts):
487 * html/HTMLTokenizer.h:
489 2009-12-03 Holger Hans Peter Freyther <zecke@selfish.org>
491 Reviewed by Simon Hausmann.
493 [Qt] Connect QNetworkReply via direct connections.
494 https://bugs.webkit.org/show_bug.cgi?id=32113
496 In the past we have switched from auto connections to queued
497 connections to get some more stability. The problem with the
498 Queued connections is latency. Even when running simple loading
499 tests the time it takes to runs highly varies and by using
500 direct connections these tests produce a stable result.
502 We will have to look out for crashes coming from within the
503 QNetworkAccessManager due this patch and address them then.
505 * platform/network/qt/QNetworkReplyHandler.cpp:
506 (WebCore::QNetworkReplyHandler::start):
508 2009-12-14 Holger Hans Peter Freyther <zecke@selfish.org>
510 Rubber-stamped by Simon Hausmann.
512 [Qt] QtWebKit should use QImageReader::setQuality(49)
513 https://bugs.webkit.org/show_bug.cgi?id=30740
515 Using QImageReader::setQuality(49) will influence the JPEG
516 decoder of Qt to use the JDCT_IFAST routines for decompressing. This
517 is showing a 5% improvement in a reduction that decodes all images
518 used during the page loading test. The libjpeg documentation mentions
519 that the IFAST routine is not as accurate as other routines but in
520 our tests we couldn't see a difference.
522 * platform/graphics/qt/ImageDecoderQt.cpp:
523 (WebCore::ImageDecoderQt::setData):
525 2009-11-11 Philippe Normand <pnormand@igalia.com>
527 Reviewed by Oliver Hunt.
529 [GStreamer] Should emit {networkState,readyState,volume,time,size,rate,duration}Changed signals
530 https://bugs.webkit.org/show_bug.cgi?id=30377
532 Emit volumeChanged and durationChanged upon notification from
535 * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
536 (WebCore::mediaPlayerPrivateMessageCallback):
537 (WebCore::mediaPlayerPrivateVolumeCallback):
538 (WebCore::notify_volume_idle_cb):
539 (WebCore::MediaPlayerPrivate::didEnd):
540 (WebCore::MediaPlayerPrivate::durationChanged):
541 (WebCore::MediaPlayerPrivate::createGSTPlayBin):
542 * platform/graphics/gtk/MediaPlayerPrivateGStreamer.h:
544 2009-12-13 Geoffrey Garen <ggaren@apple.com>
546 Reviewed by Sam Weinig.
548 Changed GC from mark-sweep to mark-allocate.
550 * ForwardingHeaders/runtime/WeakGCMap.h: Added.
551 * bindings/js/GCController.cpp:
553 (WebCore::GCController::gcTimerFired):
554 (WebCore::GCController::garbageCollectNow): Updated for rename.
556 * bindings/js/JSDOMBinding.cpp:
557 (WebCore::removeWrappers):
558 (WebCore::hasCachedDOMObjectWrapperUnchecked):
559 (WebCore::hasCachedDOMObjectWrapper):
560 (WebCore::hasCachedDOMNodeWrapperUnchecked):
561 (WebCore::forgetDOMObject):
562 (WebCore::forgetDOMNode):
563 (WebCore::isObservableThroughDOM):
564 (WebCore::markDOMNodesForDocument):
565 (WebCore::markDOMObjectWrapper):
566 (WebCore::markDOMNodeWrapper):
567 * bindings/js/JSDOMBinding.h: Changed DOM wrapper maps to be WeakGCMaps.
568 Don't ASSERT that an item must be in the WeakGCMap when its destructor
569 runs, since it might have been overwritten in the map first.
571 * bindings/js/JSDocumentCustom.cpp:
572 (WebCore::toJS): Changed Document from a DOM object wrapper to a DOM node
573 wrapper, to simplify some code.
575 * bindings/js/JSInspectedObjectWrapper.cpp:
576 (WebCore::JSInspectedObjectWrapper::JSInspectedObjectWrapper):
577 (WebCore::JSInspectedObjectWrapper::~JSInspectedObjectWrapper):
578 * bindings/js/JSInspectorCallbackWrapper.cpp: Use a WeakGCMap for these
581 * bindings/js/JSNodeCustom.cpp:
582 (WebCore::JSNode::markChildren): Updated for WeakGCMap and Document using
583 a DOM node wrapper instead of a DOM object wrapper.
585 * bindings/js/JSSVGPODTypeWrapper.h:
586 (WebCore::JSSVGDynamicPODTypeWrapperCache::wrapperMap):
587 (WebCore::JSSVGDynamicPODTypeWrapperCache::lookupOrCreateWrapper):
588 (WebCore::JSSVGDynamicPODTypeWrapperCache::forgetWrapper):
589 (WebCore::::~JSSVGDynamicPODTypeWrapper): Shined a small beam of sanity light
590 on this code. Use hashtable-based lookup in JSSVGPODTypeWrapper.h instead
591 of linear lookup through iteration, since that's what hashtables were
592 invented for. Make JSSVGPODTypeWrapper.h responsible for reomving itself
593 from the table, instead of its JS wrapper, to decouple these objects from
594 GC, and because these objects are refCounted, not solely owned by their
597 * bindings/scripts/CodeGeneratorJS.pm:
598 * dom/Document.h: Adopted changes above.
600 2009-12-13 Geoffrey Garen <ggaren@apple.com>
602 Windows build fix: Removed an incorrect #ifdef.
604 * bindings/js/GCController.cpp:
606 2009-12-13 Charles Reis <creis@chromium.org>
608 Reviewed by Adam Barth.
610 Refactor some security code out of V8 bindings
611 https://bugs.webkit.org/show_bug.cgi?id=32326
613 No new tests. There should be no functionality changes in this patch,
614 since it is only refactoring code.
616 * WebCore.gyp/WebCore.gyp:
618 * bindings/BindingSecurity.h: Added.
619 (WebCore::BindingSecurity::BindingSecurity):
620 (WebCore::::canAccessWindow):
621 (WebCore::::canAccessFrame):
622 (WebCore::::checkNodeSecurity):
623 * bindings/BindingSecurityBase.cpp: Added.
624 (WebCore::BindingSecurityBase::getDOMWindow):
625 (WebCore::BindingSecurityBase::getFrame):
626 (WebCore::BindingSecurityBase::canAccessWindow):
627 * bindings/BindingSecurityBase.h: Added.
628 * bindings/GenericBinding.h: Added.
630 * bindings/scripts/CodeGeneratorV8.pm:
631 * bindings/v8/ScriptController.cpp:
632 (WebCore::ScriptController::isSafeScript):
633 * bindings/v8/V8Binding.h:
634 * bindings/v8/V8BindingState.cpp: Added.
636 (WebCore::::getActiveWindow):
637 (WebCore::::immediatelyReportUnsafeAccessTo):
638 * bindings/v8/V8BindingState.h: Added.
640 * bindings/v8/V8Proxy.cpp:
641 (WebCore::V8Proxy::reportUnsafeAccessTo):
642 (WebCore::reportUnsafeJavaScriptAccess):
643 * bindings/v8/V8Proxy.h:
644 (WebCore::V8Proxy::):
645 * bindings/v8/custom/V8CustomBinding.cpp:
646 (WebCore::allowSettingFrameSrcToJavascriptUrl):
647 (WebCore::INDEXED_ACCESS_CHECK):
648 (WebCore::NAMED_ACCESS_CHECK):
649 * bindings/v8/custom/V8DOMWindowCustom.cpp:
650 (WebCore::V8Custom::WindowSetTimeoutImpl):
651 (WebCore::ACCESSOR_GETTER):
652 (WebCore::ACCESSOR_SETTER):
653 (WebCore::CALLBACK_FUNC_DECL):
654 (WebCore::V8Custom::ClearTimeoutImpl):
655 (WebCore::NAMED_ACCESS_CHECK):
656 (WebCore::INDEXED_ACCESS_CHECK):
657 * bindings/v8/custom/V8LocationCustom.cpp:
658 (WebCore::ACCESSOR_GETTER):
659 (WebCore::CALLBACK_FUNC_DECL):
660 (WebCore::INDEXED_ACCESS_CHECK):
661 (WebCore::NAMED_ACCESS_CHECK):
663 2009-11-30 Holger Hans Peter Freyther <zecke@selfish.org>
665 Reviewed by Simon Hausmann.
667 [Qt] Implement initializeMaximumHTTPConnectionCountPerHost.
668 https://bugs.webkit.org/show_bug.cgi?id=31849
670 Qt allows to have three connections per host on Symbian, for
671 every other platform the limit is set to six connections per
672 host but the default implementation will only schedule four
673 connections per host.
674 In a manual test we seem to get the best loading speed by
675 going with Qt's limit and schedule two more jobs to allow Qt
678 * platform/network/ResourceRequestBase.cpp:
679 * platform/network/qt/ResourceRequestQt.cpp:
680 (WebCore::initializeMaximumHTTPConnectionCountPerHost):
682 2009-12-13 Dan Bernstein <mitz@apple.com>
684 Reviewed by Simon Fraser.
686 <rdar://problem/7341364> Crash at HTMLParser::popOneBlockCommon() after
687 handling misnested residual style tags
689 Test: fast/parser/residual-style-close-ref-clone.html
691 * html/HTMLParser.cpp:
692 (WebCore::HTMLParser::handleResidualStyleCloseTagAcrossBlocks): Gave the
693 block stack a strong reference to the cloned residual style element.
695 2009-12-13 Adele Peterson <adele@apple.com>
697 Reviewed by Sam Weinig.
699 Reverting changes from http://trac.webkit.org/changeset/49585 to fix:
700 <rdar://problem/7382815> REGRESSION (4.0.4-TOT): Home photo slider is too narrow at http://www.ziprealty.com/
701 https://bugs.webkit.org/show_bug.cgi?id=32078
703 * css/CSSPrimitiveValue.cpp: (WebCore::CSSPrimitiveValue::cssText):
705 2009-12-08 Jeremy Moskovich <jeremy@chromium.org>
707 Reviewed by Eric Seidel.
709 Add code to allow toggling ATSUI/Core Text rendering at runtime in ComplexTextController.
710 https://bugs.webkit.org/show_bug.cgi?id=31802
712 The goal here is to allow for a zero runtime hit for ports that decide to select
713 the API at compile time.
714 When both USE(ATSUI) and USE(CORE_TEXT) are true, the API is toggled
715 at runtime. Core Text is used for OS Versions >= 10.6.
717 No test since this is already covered by existing pixel tests.
719 * platform/graphics/SimpleFontData.h: Change #ifdef to define getNSFont() on Chrome/Mac .
720 * platform/graphics/mac/ComplexTextController.cpp:
721 (WebCore::shouldUseATSUIAPI): Cache decision about which API to use.
722 (WebCore::ComplexTextController::ComplexTextRun::indexAt):
723 (WebCore::ComplexTextController::collectComplexTextRunsForCharacters): Stub function to call through
724 to ATSUI/Core text variants.
725 (WebCore::ComplexTextController::ComplexTextRun::ComplexTextRun): The actual work for object construction
726 is delegate to createTextRunFromFontDataATSUI/createTextRunFromFontDataCoreText.
727 * platform/graphics/mac/ComplexTextController.h:
728 * platform/graphics/mac/ComplexTextControllerATSUI.cpp:
729 (WebCore::ComplexTextController::ComplexTextRun::overrideLayoutOperation): Small style fix.
730 (WebCore::ComplexTextController::ComplexTextRun::createTextRunFromFontDataATSUI):
731 (WebCore::ComplexTextController::collectComplexTextRunsForCharactersATSUI):
732 * platform/graphics/mac/ComplexTextControllerCoreText.cpp:
733 (WebCore::ComplexTextController::ComplexTextRun::ComplexTextRun):
734 (WebCore::ComplexTextController::ComplexTextRun::createTextRunFromFontDataCoreText):
735 (WebCore::ComplexTextController::collectComplexTextRunsForCharactersCoreText):
737 2009-12-13 Eric Carlson <eric.carlson@apple.com>
739 No review, rolling out r52059 until I can generate new Tiger
742 * rendering/RenderThemeMac.mm:
743 (WebCore::mediaControllerTheme):
745 2009-12-12 Sam Weinig <sam@webkit.org>
747 Rubber-stamped by Dan Bernstein.
749 Fix the EXPERIMENTAL_SINGLE_VIEW_MODE build.
751 * Configurations/WebCore.xcconfig:
752 * page/EventHandler.cpp:
753 (WebCore::EventHandler::EventHandler):
754 (WebCore::EventHandler::clearDragState):
755 * page/mac/DragControllerMac.mm:
756 (WebCore::DragController::isCopyKeyDown):
757 * page/mac/EventHandlerMac.mm:
758 (WebCore::EventHandler::eventActivatedView):
759 * platform/PlatformKeyboardEvent.h:
760 * platform/PlatformMouseEvent.h:
761 * platform/PlatformWheelEvent.h:
762 (WebCore::PlatformWheelEvent::PlatformWheelEvent):
763 * platform/ScrollView.cpp:
764 (WebCore::ScrollView::wheelEvent):
765 * platform/mac/KeyEventMac.mm:
766 (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
767 * platform/mac/PlatformMouseEventMac.mm:
768 (WebCore::PlatformMouseEvent::PlatformMouseEvent):
769 * platform/mac/PopupMenuMac.mm:
770 (WebCore::PopupMenu::show):
771 * platform/mac/WidgetMac.mm:
773 2009-12-12 Sam Weinig <sam@webkit.org>
775 Rubber-stamped by Dan Bernstein.
777 Fix the !ENABLE(VIDEO) build.
779 * rendering/RenderLayerCompositor.cpp:
780 (WebCore::RenderLayerCompositor::requiresCompositingForVideo):
782 2009-12-12 Sam Weinig <sam@webkit.org>
784 Rubber-stamped by Dan Bernstein.
786 Fix the !ENABLE(DATABASE) build.
788 * storage/SQLTransactionClient.cpp:
789 * storage/SQLTransactionClient.h:
790 * storage/SQLTransactionCoordinator.cpp:
791 * storage/SQLTransactionCoordinator.h:
792 * loader/FrameLoader.cpp:
793 (WebCore::FrameLoader::stopLoading):
795 2009-12-12 Eric Carlson <eric.carlson@apple.com>
797 Reviewed by Dan Bernstein.
799 <rdar://problem/6293979> Adopt shared control drawing for <video> controls on Leopard and Windows
801 Use MediaControllerThemeQuickTime on Leopard.
803 * rendering/RenderThemeMac.mm:
804 (WebCore::mediaControllerTheme):
806 2009-12-12 Kenneth Russell <kbr@google.com>
808 Reviewed by Oliver Hunt.
810 Errors in WebGL[T]Array set() and get() methods
811 https://bugs.webkit.org/show_bug.cgi?id=32456
813 Test: fast/canvas/webgl/bug-32456.html
815 * bindings/js/JSWebGLFloatArrayCustom.cpp:
816 (WebCore::JSWebGLFloatArray::set):
817 * bindings/js/JSWebGLIntArrayCustom.cpp:
818 (WebCore::JSWebGLIntArray::set):
819 * bindings/js/JSWebGLShortArrayCustom.cpp:
820 (WebCore::JSWebGLShortArray::set):
821 * bindings/js/JSWebGLUnsignedByteArrayCustom.cpp:
822 (WebCore::JSWebGLUnsignedByteArray::set):
823 * bindings/js/JSWebGLUnsignedIntArrayCustom.cpp:
824 (WebCore::JSWebGLUnsignedIntArray::set):
825 * bindings/js/JSWebGLUnsignedShortArrayCustom.cpp:
826 (WebCore::JSWebGLUnsignedShortArray::set):
827 * bindings/v8/custom/V8WebGLArrayCustom.h:
828 (WebCore::setWebGLArray):
829 * html/canvas/WebGLFloatArray.idl:
830 * html/canvas/WebGLUnsignedIntArray.idl:
832 2009-12-12 Kenneth Russell <kbr@google.com>
834 Reviewed by Oliver Hunt.
836 Update WebGL tests to released versions
837 https://bugs.webkit.org/show_bug.cgi?id=32457
839 * manual-tests/webgl/Earth.html:
840 * manual-tests/webgl/ManyPlanetsDeep.html:
841 * manual-tests/webgl/SpinningBox.html:
842 * manual-tests/webgl/TeapotPerPixel.html:
843 * manual-tests/webgl/TeapotPerVertex.html:
844 * manual-tests/webgl/resources/CanvasMatrix.js:
845 (CanvasMatrix4.prototype.getAsWebGLFloatArray):
846 * manual-tests/webgl/resources/utils3d.js:
847 (initWebGL.gl.console.window.console.log):
854 (doLoadImageTexture):
856 2009-12-12 Christian Dywan <christian@twotoasts.de>
858 Reviewed by Dirk Schulze.
860 Remove the include to SVGFEDisplacementMap.h, it's not needed at all.
862 * platform/graphics/filters/FEComponentTransfer.h:
864 2009-12-12 Christian Dywan <christian@twotoasts.de>
866 Rubber-stamped by Maciej Stachowiak.
868 Only include SVGFEDisplacementMap.h if SVG is enabled.
870 * platform/graphics/filters/FEComponentTransfer.h:
872 2009-12-12 Dirk Schulze <krit@webkit.org>
874 Reviewed by Eric Seidel.
876 [Cairo][Qt] Alpha blending in SVG filters is wrong
877 https://bugs.webkit.org/show_bug.cgi?id=32427
879 This patch is a follow-up to:
880 http://trac.webkit.org/changeset/51950
881 It fixes the alpha blending for Cairo and Qt on SVG Filters.
883 Covered by: * LayoutTests/svg/filters/feGaussianBlur.svg
884 * LayoutTests/svg/filters/feComposite.svg
887 * platform/graphics/cairo/ImageBufferCairo.cpp:
888 (WebCore::ImageBuffer::platformTransformColorSpace):
889 * platform/graphics/qt/ImageBufferQt.cpp:
890 (WebCore::ImageBuffer::platformTransformColorSpace):
892 2009-12-11 Eric Roman <eroman@chromium.org>
894 Unreviewed build fix.
896 [V8] Add a method on ScriptController to get it compiling after http://trac.webkit.org/changeset/52033.
898 * bindings/v8/ScriptController.cpp:
899 (WebCore::ScriptController::anyPageIsProcessingUserGesture):
900 * bindings/v8/ScriptController.h:
902 2009-12-11 Dimitri Glazkov <dglazkov@chromium.org>
904 Unreviewed, build fix.
906 [V8] Change bindings to catch up with http://trac.webkit.org/changeset/52033.
908 * bindings/v8/custom/V8HTMLFormElementCustom.cpp:
909 (WebCore::CALLBACK_FUNC_DECL): Added retrieval of calling frame and passing
910 to the submit method.
912 2009-12-11 Sam Weinig <sam@webkit.org>
914 Reviewed by Mark Rowe.
916 Put -umbrella linker flag into a variable so that it can be overridden.
918 * Configurations/WebCore.xcconfig:
920 2009-12-11 Shinichiro Hamaji <hamaji@chromium.org>
922 Reviewed by Darin Adler.
924 body with display:inline causes crash
925 https://bugs.webkit.org/show_bug.cgi?id=32371
927 Tests: fast/inline/inline-body-crash.html
928 fast/inline/inline-body-with-scrollbar-crash.html
930 * page/FrameView.cpp:
931 (WebCore::FrameView::createScrollbar):
932 (WebCore::FrameView::layout):
934 2009-12-11 Brady Eidson <beidson@apple.com>
936 Rubberstamped by Sam Weinig.
938 https://webkit.org/b/22851 - Remove defunct FIXME.
940 * html/HTMLPlugInElement.cpp:
941 (WebCore::HTMLPlugInElement::HTMLPlugInElement): This flag was removed completely
942 from the HTMLFrameOwnerElement chain of classes.
944 2009-12-11 Darin Adler <darin@apple.com>
946 Reviewed by Dan Bernstein.
948 Small refactoring to get rid of some extra unneeded selection-related work
949 in RenderLayer::scrollToOffset and separate caret and range selection
950 logic in FrameView::layout. This may be useful later when changing how
951 the range selection logic works to fix layout reentrancy problems.
953 * page/Frame.cpp: Removed invalidateSelection.
954 * page/Frame.h: Ditto.
956 * page/FrameView.cpp:
957 (WebCore::FrameView::layout): Call SelectionController::setNeedsLayout
958 and Frame::selectionLayoutChanged instead of calling
959 Frame::invalidateSelection, which was just a function that called
960 both of those others.
962 * rendering/RenderLayer.cpp:
963 (WebCore::RenderLayer::scrollToOffset): Call
964 SelectionController::setNeedsLayout instead of calling
965 Frame::invalidateSelection. This call site only needs the caret-related
966 work in that first function, not the other work formerly done by
967 Frame::invalidateSelection. The caret works outside the normal
968 painting and rendering system, and the range selection highlight is
969 more or less inside it and doesn't need special handling when scrolling.
971 2009-12-11 Brady Eidson <beidson@apple.com>
973 Reviewed by Darin Adler.
975 <rdar://problem/7342725> and https://webkit.org/b/32383
976 Selecting article text at sfgate.com results in spurious back/forward entries
978 If an iframe had a form and that form is submitted by javascript, IE and Opera don't add back/forward entries.
980 In the case where the frame was added dynamically via createElement(), Firefox would like to add a back entry
981 but has a bug that prevents this.
983 Therefore by a bizarre coincidence, WebKit is the loner and the only engine affected by sfgate.com's technique.
985 This patch changes us to willfully match IE and Opera and fixes sfgate.com in the process.
987 Tests: http/tests/navigation/dynamic-iframe-dynamic-form-back-entry.html
988 http/tests/navigation/parsed-iframe-dynamic-form-back-entry.html
990 Capture whether the form was submitted by javascript:
991 * loader/FormState.cpp:
992 (WebCore::FormState::FormState):
993 (WebCore::FormState::create):
994 * loader/FormState.h:
995 (WebCore::FormState::formSubmissionTrigger):
997 When deciding the value of the lockBackForwardList variable, take formSubmissionTrigger() into account:
998 * loader/RedirectScheduler.cpp:
999 (WebCore::RedirectScheduler::scheduleFormSubmission):
1001 Rearrange the public HTMLFormElement::submit() method to be called only from DOM or JS bindings,
1002 and figure out the rest of the parameters for an internal submit() call including the formSubmissionTrigger:
1003 * bindings/js/JSHTMLFormElementCustom.cpp:
1004 (WebCore::JSHTMLFormElement::submit):
1005 * html/HTMLFormElement.cpp:
1006 (WebCore::HTMLFormElement::prepareSubmit):
1007 (WebCore::HTMLFormElement::submit):
1008 * html/HTMLFormElement.h:
1010 2009-12-11 Alexey Proskuryakov <ap@apple.com>
1012 Reviewed by Darin Adler.
1014 https://bugs.webkit.org/show_bug.cgi?id=32445
1015 REGRESSION: http://www.mcafee.com/japan/ displays unstyled
1017 * css/CSSImportRule.cpp:
1018 (WebCore::CSSImportRule::setCSSStyleSheet):
1019 * html/HTMLLinkElement.cpp:
1020 (WebCore::HTMLLinkElement::setCSSStyleSheet):
1021 Add a quirk for mcafee.com/japan (http or https, with or without www).
1023 2009-12-11 Sam Weinig <sam@webkit.org>
1025 Reviewed by Dan Bernstein.
1027 Make PlatformWheelEvent.h private instead of project.
1029 * WebCore.xcodeproj/project.pbxproj:
1031 2009-12-11 Simon Fraser <simon.fraser@apple.com>
1033 Reviewed by Darin Adler.
1035 Support reflections on composited layers
1036 https://bugs.webkit.org/show_bug.cgi?id=31885
1038 First part of supporting composited reflections on compositing layers.
1040 Rename the m_transformLayer member variable to m_structuralLayer, since it
1041 will get used both for transform layers (for preserve-3d) and to hold a flattening
1042 layer related to reflections, both of which have similar requirements, and are
1045 * platform/graphics/mac/GraphicsLayerCA.h:
1046 primaryLayer(), hostLayerForSublayers() and layerForSuperlayer() all now return
1047 a CALayer, since m_structuralLayer isn't always a WebLayer.
1049 * platform/graphics/mac/GraphicsLayerCA.mm:
1050 (WebCore::GraphicsLayerCA::commitLayerChanges):
1051 updateLayerPreserves3D() renamed to updateStructuralLayer()
1053 (WebCore::GraphicsLayerCA::updateLayerNames):
1054 New "update" method for updating layer names.
1056 (WebCore::GraphicsLayerCA::updateSublayerList):
1057 m_transformLayer -> m_structuralLayer. Also minor refactor to only
1058 allocate newSublayers in one place.
1060 (WebCore::GraphicsLayerCA::updateLayerSize):
1061 (WebCore::GraphicsLayerCA::removeAnimationFromLayer):
1062 (WebCore::GraphicsLayerCA::hostLayerForSublayers):
1063 (WebCore::GraphicsLayerCA::layerForSuperlayer):
1064 m_transformLayer -> m_structuralLayer
1066 (WebCore::GraphicsLayerCA::updateStructuralLayer):
1067 Call ensureStructuralLayer() which handles any deltas to the
1068 structural layer type.
1070 (WebCore::GraphicsLayerCA::ensureStructuralLayer):
1071 Handle changes to the structural layer requirements
1073 (WebCore::GraphicsLayerCA::structuralLayerPurpose):
1074 Return an enum describing the purpose of the structural layer; for now
1075 this only returns NoStructuralLayer or StructuralLayerForPreserves3D, but
1076 will in future also have a value related to reflections.
1078 2009-12-11 Simon Fraser <simon.fraser@apple.com>
1080 Build fix for platforms where ACCELERATED_COMPOSITING is not defined.
1082 * page/animation/KeyframeAnimation.cpp:
1083 (WebCore::KeyframeAnimation::pauseAnimation):
1085 2009-12-11 Adam Roben <aroben@apple.com>
1089 * platform/graphics/win/WKCACFLayerRenderer.cpp: Removed #include of
1090 non-existent header.
1092 2009-12-11 Simon Fraser <simon.fraser@apple.com>
1094 Build fix, no review.
1096 Build fix for platforms where ACCELERATED_COMPOSITING is not defined.
1098 * page/animation/KeyframeAnimation.cpp:
1099 (WebCore::KeyframeAnimation::startAnimation):
1101 2009-12-11 Simon Fraser <simon.fraser@apple.com>
1103 Build fix, no review.
1105 Build fix for platforms where ACCELERATED_COMPOSITING is not defined.
1107 * page/animation/ImplicitAnimation.cpp:
1108 (WebCore::ImplicitAnimation::startAnimation):
1110 2009-12-11 Simon Fraser <simon.fraser@apple.com>
1112 Reviewed by Darin Adler.
1114 Negative values for animation-delay are ignored (treated as zero)
1115 https://bugs.webkit.org/show_bug.cgi?id=26150
1117 When we get the m_startTime for an animation or transition, subtract any negative
1118 delay so the animation/transition behaves like it started in the past, per spec.
1120 Tests: animations/negative-delay.html
1121 transitions/negative-delay.html
1123 * page/animation/AnimationBase.cpp:
1124 (WebCore::AnimationBase::updateStateMachine):
1126 2009-12-11 Simon Fraser <simon.fraser@apple.com>
1128 Reviewed by Dan Bernstein.
1130 Accelerated transitions broken when mixed with paused animations
1131 https://bugs.webkit.org/show_bug.cgi?id=32387
1133 Synchronization of a mixture of accelerated and software animations occurs via
1134 a callback from GraphicsLayerCA, which ends up in
1135 AnimationControllerPrivate::receivedStartTimeResponse(). The time passed in is
1136 the exact time at which the accelerated animations started, so is used as the
1137 start time for all animations and transitions which are marked as waiting.
1139 The bug was that the callback called when re-starting animations that were
1140 paused sent back an old time value, but this was used to start normal
1141 transitions. Therefore the transition would start with a stale start time, and
1142 thus end prematurely.
1144 The fix is to change the way that GraphicsLayerCA handles paused animations.
1145 Rather than setting the beginTime of the animation, it uses a beginTime of 0
1146 and a timeOffset that gets passed down. Thus the callbacks always come with
1147 beginTime for 'now'.
1149 Also clarify the role of AnimationBase::endAnimation() by splitting it into
1150 pauseAnimation() and endAnimation(), and pass down timeOffsets, rather than
1151 beginTimes when starting and pausing.
1153 Manual test only, because the bug requires a non-trivial combination of
1154 animation pausing and transitions which take time, and the bug only shows in
1157 * manual-tests/animation/transitions-and-paused-animations.html
1159 * page/animation/AnimationBase.cpp:
1160 (WebCore::AnimationBase::updateStateMachine):
1161 * page/animation/AnimationBase.h:
1162 (WebCore::AnimationBase::startAnimation):
1163 (WebCore::AnimationBase::pauseAnimation):
1164 (WebCore::AnimationBase::endAnimation):
1165 * page/animation/ImplicitAnimation.cpp:
1166 (WebCore::ImplicitAnimation::~ImplicitAnimation):
1167 (WebCore::ImplicitAnimation::startAnimation):
1168 (WebCore::ImplicitAnimation::endAnimation):
1169 (WebCore::ImplicitAnimation::onAnimationEnd):
1170 * page/animation/ImplicitAnimation.h:
1171 (WebCore::ImplicitAnimation::pauseAnimation):
1172 * page/animation/KeyframeAnimation.cpp:
1173 (WebCore::KeyframeAnimation::~KeyframeAnimation):
1174 (WebCore::KeyframeAnimation::startAnimation):
1175 (WebCore::KeyframeAnimation::pauseAnimation):
1176 (WebCore::KeyframeAnimation::endAnimation):
1177 (WebCore::KeyframeAnimation::onAnimationEnd):
1178 * page/animation/KeyframeAnimation.h:
1179 * platform/graphics/GraphicsLayer.h:
1180 (WebCore::GraphicsLayer::addAnimation):
1181 (WebCore::GraphicsLayer::pauseAnimation):
1182 * platform/graphics/mac/GraphicsLayerCA.h:
1183 (WebCore::GraphicsLayerCA::LayerAnimation::LayerAnimation):
1184 (WebCore::GraphicsLayerCA::AnimationProcessingAction::AnimationProcessingAction):
1185 * platform/graphics/mac/GraphicsLayerCA.mm:
1186 (WebCore::GraphicsLayerCA::addAnimation):
1187 (WebCore::GraphicsLayerCA::removeAnimationsForKeyframes):
1188 (WebCore::GraphicsLayerCA::pauseAnimation):
1189 (WebCore::GraphicsLayerCA::updateLayerAnimations):
1190 (WebCore::GraphicsLayerCA::setAnimationOnLayer):
1191 (WebCore::GraphicsLayerCA::pauseAnimationOnLayer):
1192 (WebCore::GraphicsLayerCA::createAnimationFromKeyframes):
1193 (WebCore::GraphicsLayerCA::createTransformAnimationsFromKeyframes):
1194 * rendering/RenderLayerBacking.cpp:
1195 (WebCore::RenderLayerBacking::startAnimation):
1196 (WebCore::RenderLayerBacking::startTransition):
1197 (WebCore::RenderLayerBacking::animationPaused):
1198 * rendering/RenderLayerBacking.h:
1200 2009-12-11 Brian Weinstein <bweinstein@apple.com>
1202 Reviewed by Darin Adler.
1204 Fixes <http://webkit.org/b/32399>.
1205 Pan Scrolling Jumps out of frames if the initial location is in a frame that can't be scrolled.
1207 When we initially figure out the layer that we should begin scrolling, don't try to jump out
1208 of frames/iFrames to look at the owner document. We don't want to jump out of frames, so we
1209 don't need that logic anymore.
1211 Added a test to make sure that we don't pan scroll if we start to scroll in an empty
1212 iFrame that has a scrollable owner document.
1214 Test: platform/win/fast/events/panScroll-no-iframe-jump.html
1217 (WebCore::Node::defaultEventHandler):
1219 2009-12-11 Brian Weinstein <bweinstein@apple.com>
1221 Reviewed by Adam Roben.
1223 Fixes <http://webkit.org/b/32303>.
1224 Middle-mouse button not firing mousedown DOM event when autoscroll happens.
1226 This fix moves the pan scrolling code into Node.cpp, as part of the default event handler.
1227 We get two wins out of this:
1228 1) Mousedown DOM events are now fired before pan scrolling.
1229 2) Calling event.preventDefault() on a middle mouse button will now prevent pan scrolling.
1231 Added tests to show that middle mousedown DOM events are fired when panscrolling happens, and
1232 that when event.preventDefault is called, pan scrolling doesn't happen.
1234 Tests: platform/win/fast/events/panScroll-event-fired.html
1235 platform/win/fast/events/panScroll-preventDefault.html
1238 (WebCore::Node::defaultEventHandler): Moved pan scrolling starting code to here.
1239 * page/EventHandler.cpp:
1240 (WebCore::EventHandler::startPanScrolling): Function to initialize scrolling variables and start timer.
1241 (WebCore::EventHandler::handleMousePressEvent): From here.
1242 * page/EventHandler.h:
1244 2009-12-11 Chris Marrin <cmarrin@apple.com>
1246 Reviewed by Adam Roben.
1248 Delay load DLLs for accelerated compositing
1249 https://bugs.webkit.org/show_bug.cgi?id=31856
1251 Change calls that use the data export symbols from
1252 QuartzCore to use the functions in QuartzCoreInterface.
1253 This allows QuartzCore to be delay loaded.
1255 * platform/graphics/win/GraphicsLayerCACF.cpp:
1256 (WebCore::GraphicsLayerCACF::GraphicsLayerCACF):
1257 (WebCore::GraphicsLayerCACF::updateLayerPreserves3D):
1258 (WebCore::GraphicsLayerCACF::updateContentsImage):
1259 * platform/graphics/win/WKCACFLayer.cpp:
1260 (WebCore::toCACFLayerType):
1261 (WebCore::toCACFContentsGravityType):
1262 (WebCore::fromCACFContentsGravityType):
1263 (WebCore::toCACFFilterType):
1264 (WebCore::fromCACFFilterType):
1265 (WebCore::WKCACFLayer::create):
1266 (WebCore::WKCACFLayer::WKCACFLayer):
1267 (WebCore::WKCACFLayer::setContentsGravity):
1268 (WebCore::WKCACFLayer::contentsGravity):
1269 (WebCore::WKCACFLayer::setMagnificationFilter):
1270 (WebCore::WKCACFLayer::magnificationFilter):
1271 (WebCore::WKCACFLayer::setMinificationFilter):
1272 (WebCore::WKCACFLayer::minificationFilter):
1273 * platform/graphics/win/WKCACFLayer.h:
1274 (WebCore::WKCACFLayer::):
1275 * platform/graphics/win/WKCACFLayerRenderer.cpp:
1276 (WebCore::WKCACFLayerRenderer::acceleratedCompositingAvailable):
1277 (WebCore::WKCACFLayerRenderer::createRenderer):
1279 2009-12-11 Steve Block <steveblock@google.com>
1281 Reviewed by Darin Fisher.
1283 Adds an Android-specific implementation of initializeMaximumHTTPConnectionCountPerHost.
1284 https://bugs.webkit.org/show_bug.cgi?id=31810
1286 * platform/network/ResourceRequestBase.cpp: Modified. Disable default implementation
1287 of initializeMaximumHTTPConnectionCountPerHost for Android.
1288 * platform/network/android: Added.
1289 * platform/network/android/ResourceRequestAndroid.cpp: Added.
1290 (WebCore::initializeMaximumHTTPConnectionCountPerHost): Android-specific implementation.
1292 2009-12-11 Kent Tamura <tkent@chromium.org>
1294 Reviewed by Darin Fisher.
1296 Add acceptTypes() method to FileChooser.
1297 https://bugs.webkit.org/show_bug.cgi?id=32429
1299 This method returns an 'accept' attribute value of the
1300 corresponding INPUT element. A ChromeClient::runOpenPanel()
1301 implementation can refer it through a FileChooser instance to
1302 support type-restricted file selecting.
1304 This makes no user-visible changes for now.
1306 * platform/FileChooser.h:
1307 (WebCore::FileChooser::acceptTypes):
1308 * rendering/RenderFileUploadControl.cpp:
1309 (WebCore::RenderFileUploadControl::acceptTypes):
1310 * rendering/RenderFileUploadControl.h:
1312 2009-12-11 Victor Wang <victorw@chromium.org>
1314 Reviewed by Darin Fisher.
1316 Changed PopupMenuChromium to keep the value selected from
1317 keyboard when popup is closed.
1319 The problem is Chromium does not fire the onchange event
1320 when the popup is closed if an item is selected via
1321 keyboard by typing the first char of the item. This makes
1322 chromium popup not having consistent behaviours and also
1323 behaves differently from other major browsers.
1324 Calling popup->hide() instead of popup->hidePopup() in
1325 PopupMenu fixes the issues as it does extra step to check
1326 whethere there is a keyboard selection changed when closing
1329 https://bugs.webkit.org/show_bug.cgi?id=32403
1331 TEST: add a manual test as the current layout test shell
1332 does not support sending keyboard events to popup list.
1334 * manual-tests/chromium/select-close-popup-value-change.html: Added.
1335 * platform/chromium/PopupMenuChromium.cpp:
1336 (WebCore::PopupMenu::hide):
1338 2009-12-11 anton muhin <antonm@chromium.org>
1340 Reviewed by Adam Barth.
1342 [v8] refactor WeakReferenceMap.
1343 Move common bits of functionality to reduce duplication.
1345 https://bugs.webkit.org/show_bug.cgi?id=32389
1347 Should be covered by buildbots.
1349 * bindings/v8/DOMData.h:
1350 (WebCore::DOMData::WrapperMapObjectRemover::visitDOMWrapper):
1351 (WebCore::DOMData::handleWeakObject):
1352 (WebCore::DOMData::removeObjectsFromWrapperMap):
1353 * bindings/v8/DOMDataStore.cpp:
1354 (WebCore::DOMDataStore::weakDOMObjectCallback):
1355 (WebCore::DOMDataStore::weakActiveDOMObjectCallback):
1356 (WebCore::DOMDataStore::weakNodeCallback):
1357 (WebCore::DOMDataStore::weakSVGElementInstanceCallback):
1358 (WebCore::DOMDataStore::weakSVGObjectWithContextCallback):
1359 * bindings/v8/DOMDataStore.h:
1360 * bindings/v8/V8DOMMap.cpp:
1361 (WebCore::visitDOMNodesInCurrentThread):
1362 (WebCore::visitDOMObjectsInCurrentThread):
1363 (WebCore::visitActiveDOMObjectsInCurrentThread):
1364 (WebCore::visitDOMSVGElementInstancesInCurrentThread):
1365 (WebCore::visitSVGObjectsInCurrentThread):
1366 * bindings/v8/V8DOMMap.h:
1367 (WebCore::WeakReferenceMap::removeIfPresent):
1368 (WebCore::WeakReferenceMap::clear):
1369 (WebCore::WeakReferenceMap::visit):
1371 2009-12-11 anton muhin <antonm@chromium.org>
1372 Reviewed by Adam Barth.
1374 [v8] in Debug builds create an additional handle scope
1375 when doing debug build checks.
1376 https://bugs.webkit.org/show_bug.cgi?id=32335
1378 Should be covered by buildbots.
1380 * bindings/v8/V8DOMWrapper.h:
1381 (WebCore::V8DOMWrapper::convertDOMWrapperToNative):
1382 (WebCore::V8DOMWrapper::convertDOMWrapperToNode):
1384 2009-12-11 Pavel Feldman <pfeldman@chromium.org>
1386 Reviewed by Timothy Hatcher.
1388 Web Inspector: Do not use ContextMenuItem as value type in custom
1389 context menu implementation.
1391 https://bugs.webkit.org/show_bug.cgi?id=32411
1396 * WebCore.vcproj/WebCore.vcproj:
1397 * WebCore.xcodeproj/project.pbxproj:
1398 * bindings/js/JSInspectorFrontendHostCustom.cpp:
1399 (WebCore::JSInspectorFrontendHost::showContextMenu):
1400 * inspector/InspectorFrontendHost.cpp:
1401 (WebCore::InspectorFrontendHost::InspectorFrontendHost):
1402 (WebCore::InspectorFrontendHost::~InspectorFrontendHost):
1403 (WebCore::InspectorFrontendHost::showContextMenu):
1404 (WebCore::InspectorFrontendHost::contextMenuCleared):
1405 * inspector/InspectorFrontendHost.h:
1406 (WebCore::InspectorFrontendHost::MenuProvider::create):
1407 (WebCore::InspectorFrontendHost::MenuProvider::~MenuProvider):
1408 (WebCore::InspectorFrontendHost::MenuProvider::disconnect):
1409 (WebCore::InspectorFrontendHost::MenuProvider::populateContextMenu):
1410 (WebCore::InspectorFrontendHost::MenuProvider::contextMenuCleared):
1411 (WebCore::InspectorFrontendHost::MenuProvider::MenuProvider):
1412 * page/ContextMenuController.cpp:
1413 (WebCore::ContextMenuController::ContextMenuController):
1414 (WebCore::ContextMenuController::clearContextMenu):
1415 (WebCore::ContextMenuController::showContextMenu):
1416 (WebCore::ContextMenuController::contextMenuItemSelected):
1417 * page/ContextMenuController.h:
1418 * page/ContextMenuProvider.h: Added.
1419 (WebCore::ContextMenuProvider::~ContextMenuProvider):
1420 * page/ContextMenuSelectionHandler.h: Removed.
1422 2009-12-11 Simon Hausmann <hausmann@webkit.org>, Kim Grönholm <kim.gronholm@nomovok.com>
1424 Reviewed by Antti Koivisto.
1426 Basic cross-platform implementation of mapping platform touch events
1427 to JavaScript touch events.
1429 https://bugs.webkit.org/show_bug.cgi?id=32114
1431 Test: fast/events/basic-touch-events.html
1433 * page/EventHandler.cpp:
1434 (WebCore::EventHandler::handleTouchEvent):
1435 * page/EventHandler.h:
1437 2009-12-11 Zoltan Horvath <zoltan@webkit.org>
1439 Reviewed by Darin Adler.
1441 Allow custom memory allocation control for WebCore's EmptyFrameLoaderClient
1442 https://bugs.webkit.org/show_bug.cgi?id=32110
1444 Inherits the following class from Noncopyable because it is
1445 instantiated by 'new' and no need to be copyable:
1447 class name - instantiated at: WebCore/'location'
1449 class EmptyFrameLoaderClient - svg/graphics/SVGImage.cpp:229
1451 * loader/FrameLoaderClient.h:
1453 2009-12-11 Zoltan Horvath <zoltan@webkit.org>
1455 Reviewed by Darin Adler.
1457 Allow custom memory allocation control for 3 classes in WebCore's svg and loader directory
1458 https://bugs.webkit.org/show_bug.cgi?id=32106
1460 Inherits the following classes from Noncopyable because these are instantiated
1461 by 'new' and no need to be copyable:
1463 class/struct name - instantiated at: WebCore/'location'
1465 class EmptyContextMenuClient - instantiated at: svg/graphics/SVGImage.cpp:232
1466 class EmptyDragClient - instantiated at: svg/graphics/SVGImage.cpp:237
1467 class SVGImageChromeClient - instantiated at: svg/graphics/SVGImage.cpp:243
1469 * svg/graphics/SVGImage.cpp:
1470 * loader/EmptyClients.h:
1472 2009-12-11 Benjamin Poulain <benjamin.poulain@nokia.com>
1474 Reviewed by Darin Adler.
1476 The values of RuntimeArray are not enumerable
1477 https://bugs.webkit.org/show_bug.cgi?id=29005
1479 The indices of RuntimeArray should be enumerated like for a regular array.
1481 * bridge/runtime_array.cpp:
1482 (JSC::RuntimeArray::getOwnPropertyNames):
1483 * bridge/runtime_array.h:
1485 2009-12-11 Andreas Kling <andreas.kling@nokia.com>
1487 Reviewed by Simon Hausmann.
1489 [Qt] ImageDecoderQt: Fix retrieval of image file extensions
1491 QImageReader only allows retrieving the format() before actually reading the image.
1493 https://bugs.webkit.org/show_bug.cgi?id=32428
1495 * platform/graphics/qt/ImageDecoderQt.cpp:
1496 (WebCore::ImageDecoderQt::setData):
1497 (WebCore::ImageDecoderQt::internalDecodeSize):
1499 2009-12-11 Simon Hausmann <hausmann@webkit.org>, Kim Grönholm <kim.gronholm@nomovok.com>
1501 Reviewed by Antti Koivisto.
1503 Added interfaces for touch event support in JavaScript.
1505 https://bugs.webkit.org/show_bug.cgi?id=32114
1507 The Touch, TouchEvent and TouchList interfaces come straight from
1508 Android's copy of WebKit (eclaire branch).
1510 The PlatformTouchEvent and PlatformTouchPoint code was written by
1513 No new tests added, we are just adding interfaces
1517 * bindings/js/JSEventCustom.cpp:
1520 (WebCore::Document::addListenerTypeIfNeeded):
1522 (WebCore::Document::):
1527 (WebCore::Event::isTouchEvent):
1530 * dom/Touch.cpp: Added.
1531 (WebCore::contentsX):
1532 (WebCore::contentsY):
1533 (WebCore::Touch::Touch):
1534 (WebCore::Touch::updateLocation):
1535 * dom/Touch.h: Added.
1536 (WebCore::Touch::create):
1537 (WebCore::Touch::frame):
1538 (WebCore::Touch::target):
1539 (WebCore::Touch::identifier):
1540 (WebCore::Touch::clientX):
1541 (WebCore::Touch::clientY):
1542 (WebCore::Touch::screenX):
1543 (WebCore::Touch::screenY):
1544 (WebCore::Touch::pageX):
1545 (WebCore::Touch::pageY):
1546 * dom/Touch.idl: Added.
1547 * dom/TouchEvent.cpp: Added.
1548 (WebCore::TouchEvent::TouchEvent):
1549 (WebCore::TouchEvent::initTouchEvent):
1550 * dom/TouchEvent.h: Added.
1551 (WebCore::TouchEvent::create):
1552 (WebCore::TouchEvent::touches):
1553 (WebCore::TouchEvent::targetTouches):
1554 (WebCore::TouchEvent::changedTouches):
1555 (WebCore::TouchEvent::TouchEvent):
1556 (WebCore::TouchEvent::isTouchEvent):
1557 * dom/TouchEvent.idl: Added.
1558 * dom/TouchList.cpp: Added.
1559 (WebCore::TouchList::item):
1560 * dom/TouchList.h: Added.
1561 (WebCore::TouchList::create):
1562 (WebCore::TouchList::length):
1563 (WebCore::TouchList::append):
1564 (WebCore::TouchList::TouchList):
1565 * dom/TouchList.idl: Added.
1566 * html/HTMLAttributeNames.in:
1567 * html/HTMLElement.cpp:
1568 (WebCore::HTMLElement::parseMappedAttribute):
1570 * page/DOMWindow.idl:
1571 * platform/PlatformTouchEvent.h: Added.
1572 (WebCore::PlatformTouchEvent::PlatformTouchEvent):
1573 (WebCore::PlatformTouchEvent::touchPoints):
1574 * platform/PlatformTouchPoint.h: Added.
1575 (WebCore::PlatformTouchPoint::):
1576 (WebCore::PlatformTouchPoint::id):
1577 (WebCore::PlatformTouchPoint::state):
1578 (WebCore::PlatformTouchPoint::screenPos):
1579 (WebCore::PlatformTouchPoint::pos):
1580 * platform/qt/PlatformTouchEventQt.cpp: Added.
1581 (WebCore::PlatformTouchEvent::PlatformTouchEvent):
1582 * platform/qt/PlatformTouchPointQt.cpp: Added.
1583 (WebCore::PlatformTouchPoint::PlatformTouchPoint):
1585 2009-12-11 Grace Kloba <klobag@gmail.com>
1587 Reviewed by Darin Adler.
1589 [Android] Add detachHistoryItem() to AndroidWebHistoryBridge. And the constructor takes
1590 HistoryItem* now. As AndroidWebHistoryBridge holds a dumb pointer of HistoryItem and
1591 HistoryItem holds a RefPtr of AndroidWebHistoryBridge, the dumb pointer needs to be cleared
1592 when HistoryItem is deleted to avoid potential crash.
1593 https://bugs.webkit.org/show_bug.cgi?id=32251
1595 * history/HistoryItem.cpp:
1596 (WebCore::HistoryItem::~HistoryItem):
1597 * history/android/AndroidWebHistoryBridge.h:
1598 (WebCore::AndroidWebHistoryBridge::AndroidWebHistoryBridge):
1599 (WebCore::AndroidWebHistoryBridge::detachHistoryItem):
1602 2009-12-11 Fumitoshi Ukai <ukai@chromium.org>
1604 Reviewed by Pavel Feldman.
1606 Log WebSocket error to Web Inspector console.
1607 https://bugs.webkit.org/show_bug.cgi?id=32165
1609 * websockets/WebSocketChannel.cpp:
1610 (WebCore::WebSocketChannel::didOpen):
1611 (WebCore::WebSocketChannel::appendToBuffer):
1612 * websockets/WebSocketHandshake.cpp:
1613 (WebCore::WebSocketHandshake::readServerHandshake):
1614 (WebCore::WebSocketHandshake::readHTTPHeaders):
1615 (WebCore::WebSocketHandshake::checkResponseHeaders):
1617 2009-12-10 Adam Barth <abarth@webkit.org>
1619 Reviewed by Darin Adler.
1621 Mixed content shouldn't trigger for plug-ins without URLs
1622 https://bugs.webkit.org/show_bug.cgi?id=32384
1624 These plug-ins cannot be controlled by active network attackers, so
1625 there's no reason to trigger a mixed content warning.
1627 Test: http/tests/security/mixedContent/empty-url-plugin-in-frame.html
1629 * loader/FrameLoader.cpp:
1630 (WebCore::FrameLoader::isMixedContent):
1632 2009-12-10 Alexey Proskuryakov <ap@apple.com>
1634 Reviewed by Darin Adler.
1636 https://bugs.webkit.org/show_bug.cgi?id=32140
1637 REGRESSION(r50072): Mailman administrative functionality is broken
1639 Test: http/tests/misc/percent-sign-in-form-field-name.html
1641 * platform/network/FormDataBuilder.cpp: (WebCore::appendQuotedString): Don't encode percent
1642 sign, we never had a good reason to do that.
1644 2009-12-10 Kent Hansen <kent.hansen@nokia.com>
1646 Reviewed by Geoffrey Garen.
1648 Remove getPropertyAttributes() from JavaScript bindings.
1649 https://bugs.webkit.org/show_bug.cgi?id=31933
1651 The functionality is provided by getOwnPropertyDescriptor().
1654 * bindings/js/JSDOMWindowCustom.cpp:
1655 * bindings/js/JSDOMWindowShell.cpp:
1656 * bindings/js/JSDOMWindowShell.h:
1657 * bindings/scripts/CodeGeneratorJS.pm:
1658 * page/DOMWindow.idl:
1660 2009-12-10 Kenneth Russell <kbr@google.com>
1662 Reviewed by Oliver Hunt.
1664 Changed WebGLRenderingContext to synthesize GL errors rather than
1665 raising JavaScript exceptions. Removed internal getError() calls
1666 after each graphics call. The GraphicsContext3D maintains the
1667 synthetic exceptions because only it has complete information
1668 about certain conditions requiring them to be raised.
1670 Based on idea from Ilmari Heikkinen, added create3DDebugContext()
1671 to webgl-test.js and changed the WebGL layout tests expecting
1672 error conditions to use it. Updated expected.txt files, which now
1673 implicitly test the OpenGL error as it is part of the exception's
1676 Added new targeted test covering aspects of synthetic errors as
1677 well as regression tests for bugs uncovered during its development.
1679 Test: fast/canvas/webgl/error-reporting.html
1681 * html/canvas/WebGLRenderingContext.cpp:
1682 (WebCore::WebGLRenderingContext::sizeInBytes):
1683 (WebCore::WebGLRenderingContext::activeTexture):
1684 (WebCore::WebGLRenderingContext::attachShader):
1685 (WebCore::WebGLRenderingContext::bindAttribLocation):
1686 (WebCore::WebGLRenderingContext::bindBuffer):
1687 (WebCore::WebGLRenderingContext::bindFramebuffer):
1688 (WebCore::WebGLRenderingContext::bindRenderbuffer):
1689 (WebCore::WebGLRenderingContext::bindTexture):
1690 (WebCore::WebGLRenderingContext::bufferData):
1691 (WebCore::WebGLRenderingContext::bufferSubData):
1692 (WebCore::WebGLRenderingContext::compileShader):
1693 (WebCore::WebGLRenderingContext::createShader):
1694 (WebCore::WebGLRenderingContext::detachShader):
1695 (WebCore::WebGLRenderingContext::disableVertexAttribArray):
1696 (WebCore::WebGLRenderingContext::drawArrays):
1697 (WebCore::WebGLRenderingContext::drawElements):
1698 (WebCore::WebGLRenderingContext::enableVertexAttribArray):
1699 (WebCore::WebGLRenderingContext::framebufferRenderbuffer):
1700 (WebCore::WebGLRenderingContext::framebufferTexture2D):
1701 (WebCore::WebGLRenderingContext::getActiveAttrib):
1702 (WebCore::WebGLRenderingContext::getActiveUniform):
1703 (WebCore::WebGLRenderingContext::getBufferParameter):
1704 (WebCore::WebGLRenderingContext::getFramebufferAttachmentParameter):
1705 (WebCore::WebGLRenderingContext::getParameter):
1706 (WebCore::WebGLRenderingContext::getProgramParameter):
1707 (WebCore::WebGLRenderingContext::getProgramInfoLog):
1708 (WebCore::WebGLRenderingContext::getRenderbufferParameter):
1709 (WebCore::WebGLRenderingContext::getShaderParameter):
1710 (WebCore::WebGLRenderingContext::getShaderInfoLog):
1711 (WebCore::WebGLRenderingContext::getShaderSource):
1712 (WebCore::WebGLRenderingContext::getTexParameter):
1713 (WebCore::WebGLRenderingContext::getUniform):
1714 (WebCore::WebGLRenderingContext::getUniformLocation):
1715 (WebCore::WebGLRenderingContext::getVertexAttrib):
1716 (WebCore::WebGLRenderingContext::linkProgram):
1717 (WebCore::WebGLRenderingContext::shaderSource):
1718 (WebCore::WebGLRenderingContext::texImage2D):
1719 (WebCore::WebGLRenderingContext::texSubImage2D):
1720 (WebCore::WebGLRenderingContext::uniform1f):
1721 (WebCore::WebGLRenderingContext::uniform1fv):
1722 (WebCore::WebGLRenderingContext::uniform1i):
1723 (WebCore::WebGLRenderingContext::uniform1iv):
1724 (WebCore::WebGLRenderingContext::uniform2f):
1725 (WebCore::WebGLRenderingContext::uniform2fv):
1726 (WebCore::WebGLRenderingContext::uniform2i):
1727 (WebCore::WebGLRenderingContext::uniform2iv):
1728 (WebCore::WebGLRenderingContext::uniform3f):
1729 (WebCore::WebGLRenderingContext::uniform3fv):
1730 (WebCore::WebGLRenderingContext::uniform3i):
1731 (WebCore::WebGLRenderingContext::uniform3iv):
1732 (WebCore::WebGLRenderingContext::uniform4f):
1733 (WebCore::WebGLRenderingContext::uniform4fv):
1734 (WebCore::WebGLRenderingContext::uniform4i):
1735 (WebCore::WebGLRenderingContext::uniform4iv):
1736 (WebCore::WebGLRenderingContext::uniformMatrix2fv):
1737 (WebCore::WebGLRenderingContext::uniformMatrix3fv):
1738 (WebCore::WebGLRenderingContext::uniformMatrix4fv):
1739 (WebCore::WebGLRenderingContext::useProgram):
1740 (WebCore::WebGLRenderingContext::validateProgram):
1741 (WebCore::WebGLRenderingContext::vertexAttribPointer):
1742 * html/canvas/WebGLRenderingContext.h:
1743 (WebCore::WebGLRenderingContext::cleanupAfterGraphicsCall):
1744 * platform/graphics/GraphicsContext3D.h:
1745 * platform/graphics/mac/GraphicsContext3DMac.cpp:
1746 (WebCore::GraphicsContext3D::getActiveAttrib):
1747 (WebCore::GraphicsContext3D::getActiveUniform):
1748 (WebCore::GraphicsContext3D::getError):
1749 (WebCore::GraphicsContext3D::synthesizeGLError):
1751 2009-12-10 Stephen White <senorblanco@chromium.org>
1753 Reviewed by Dimitri Glazkov.
1755 Fix for assert on Chrome/skia with SVG Filters enabled.
1756 https://bugs.webkit.org/show_bug.cgi?id=32394
1758 Covered by LayoutTests/svg/W3C-SVG-1.1/filters-tile-01-b.svg and others.
1760 * platform/graphics/skia/ImageBufferSkia.cpp:
1761 (WebCore::ImageBuffer::platformTransformColorSpace):
1763 2009-12-10 Enrica Casucci <enrica@apple.com>
1765 Reviewed by Darin Adler.
1767 REGRESSION(4.0.4-42a12): With 2 highlighted lines of text in gmail/hotmail selecting Bold selects other 2 edit buttons automatically.
1768 <rdar://problem/7442065>
1769 https://bugs.webkit.org/show_bug.cgi?id=32285
1771 When examining the styles of the nodes after the first in a range selection, we take into
1772 cosideration differences in style of txt nodes only.
1774 Test: editing/execCommand/queryCommandState-02.html
1776 * editing/Editor.cpp:
1777 (WebCore::Editor::selectionHasStyle):
1779 2009-12-10 Oliver Hunt <oliver@apple.com>
1781 Reviewed by Alexey Proskuryakov.
1783 Crash in XMLTokenizer::popCurrentNode if window.close() is called during parsing
1784 https://bugs.webkit.org/show_bug.cgi?id=31576
1786 Add a RefCounted wrapper object around xmlParserCtxtPtr so we can
1787 maintain it's lifetime more effectively.
1789 Test: fast/parser/xhtml-close-while-parsing.xhtml
1791 * dom/XMLTokenizer.cpp:
1792 (WebCore::XMLTokenizer::popCurrentNode):
1793 * dom/XMLTokenizer.h:
1794 (WebCore::XMLParserContext::context):
1795 (WebCore::XMLParserContext::XMLParserContext):
1796 (WebCore::XMLTokenizer::context):
1797 * dom/XMLTokenizerLibxml2.cpp:
1798 (WebCore::XMLParserContext::createStringParser):
1799 (WebCore::XMLParserContext::createMemoryParser):
1800 (WebCore::XMLParserContext::~XMLParserContext):
1801 (WebCore::XMLTokenizer::~XMLTokenizer):
1802 (WebCore::XMLTokenizer::doWrite):
1803 (WebCore::XMLTokenizer::initializeParserContext):
1804 (WebCore::XMLTokenizer::doEnd):
1805 (WebCore::XMLTokenizer::lineNumber):
1806 (WebCore::XMLTokenizer::columnNumber):
1807 (WebCore::XMLTokenizer::stopParsing):
1808 (WebCore::parseXMLDocumentFragment):
1809 (WebCore::parseAttributes):
1811 2009-12-10 Pavel Feldman <pfeldman@chromium.org>
1813 Reviewed by Timothy Hatcher.
1815 Web Inspector: debugger shortcuts don't work when
1816 Search field or Console drawer has focus.
1818 https://bugs.webkit.org/show_bug.cgi?id=32392
1820 * inspector/front-end/inspector.js:
1821 (WebInspector.loaded):
1822 (WebInspector.documentKeyDown):
1823 (WebInspector.documentKeyUp):
1824 (WebInspector.searchKeyDown):
1826 2009-12-10 Dimitri Glazkov <dglazkov@chromium.org>
1828 Reviewed by Adam Barth.
1830 [V8] Events created in isolated worlds may fire in main world.
1831 https://bugs.webkit.org/show_bug.cgi?id=32386
1833 Test: http/tests/security/isolatedWorld/events.html
1835 * WebCore.gypi: Added WorldContextHandle.
1836 * bindings/v8/ScriptEventListener.cpp:
1837 (WebCore::createAttributeEventListener): Added WorldContextHandle params.
1838 * bindings/v8/SharedPersistent.h: Fixed a few style/include issues.
1839 * bindings/v8/V8AbstractEventListener.cpp:
1840 (WebCore::V8AbstractEventListener::V8AbstractEventListener): Added WorldContextHandle params.
1841 (WebCore::V8AbstractEventListener::handleEvent): Adjusted context retrieval to use WorldContextHandle.
1842 (WebCore::V8AbstractEventListener::invokeEventHandler): Ditto.
1843 * bindings/v8/V8AbstractEventListener.h:
1844 (WebCore::V8AbstractEventListener::worldContext): Added WorldContextHandle params.
1845 * bindings/v8/V8EventListenerList.h:
1846 (WebCore::V8EventListenerList::findOrCreateWrapper): Ditto.
1847 * bindings/v8/V8LazyEventListener.cpp:
1848 (WebCore::V8LazyEventListener::V8LazyEventListener): Ditto.
1849 (WebCore::V8LazyEventListener::prepareListenerObject): Adjusted context retrieval to use WorldContextHandle.
1850 * bindings/v8/V8LazyEventListener.h:
1851 (WebCore::V8LazyEventListener::create): Added WorldContextHandle params.
1852 * bindings/v8/V8Proxy.cpp:
1853 (WebCore::V8Proxy::context): Refactored to use mainWorldContext();
1854 (WebCore::V8Proxy::mainWorldContext): Added.
1855 (WebCore::toV8Context): Changed to use WorldContextHandle.
1856 * bindings/v8/V8Proxy.h: Added mainWorldContext decl.
1857 * bindings/v8/V8Utilities.cpp:
1858 (WebCore::reportException): Added an extra check to avoid crashes during frame teardown.
1859 * bindings/v8/V8WorkerContextEventListener.cpp:
1860 (WebCore::V8WorkerContextEventListener::V8WorkerContextEventListener): Added WorldContextHandle params.
1861 * bindings/v8/V8WorkerContextEventListener.h:
1862 (WebCore::V8WorkerContextEventListener::create): Added WorldContextHandle params.
1863 * bindings/v8/WorldContextHandle.cpp: Added.
1864 * bindings/v8/WorldContextHandle.h: Added.
1865 * bindings/v8/custom/V8CustomEventListener.cpp:
1866 (WebCore::V8EventListener::V8EventListener): Added WorldContextHandle params.
1867 * bindings/v8/custom/V8CustomEventListener.h:
1868 (WebCore::V8EventListener::create): Added WorldContextHandle params.
1870 2009-12-10 Jon Honeycutt <jhoneycutt@apple.com>
1872 Pass more information about a plug-in to the PluginHalterDelegate
1874 Reviewed by Adam Roben.
1876 * loader/EmptyClients.h:
1877 Remove this unused class.
1879 * page/HaltablePlugin.h:
1880 Add new functions to return the plug-in's name and whether it is
1883 * page/PluginHalter.cpp:
1884 (WebCore::PluginHalter::timerFired):
1885 Pass new arguments to the client.
1887 * page/PluginHalterClient.h:
1890 * plugins/PluginView.cpp:
1891 (WebCore::PluginView::pluginName):
1892 Return the name from the PluginPackage.
1894 * plugins/PluginView.h:
1895 (WebCore::PluginView::isWindowed):
1897 2009-12-09 Brian Weinstein <bweinstein@apple.com>
1899 Reviewed by Pavel Feldman.
1901 Fixes <http://webkit.org/b/31738>.
1902 Web Inspector: Console Scope Bar should be on top of console when Console is a Panel.
1904 When the console is set to be shown as a full panel, move the scope bar to the top
1905 where it looks best. When it is only shown as a drawer, move it to the bottom, where
1906 it originally was. This takes up less space as a drawer, and makes it more discoverable
1907 and usable when it is the full panel.
1909 * inspector/front-end/ConsolePanel.js:
1910 (WebInspector.ConsolePanel.prototype.show): Move filter bar to top.
1911 (WebInspector.ConsolePanel.prototype.hide): Move filter bar back to bottom.
1912 * inspector/front-end/inspector.css:
1914 2009-12-10 Stephen White <senorblanco@chromium.org>
1916 Reviewed by Dirk Schulze.
1918 Fix for alpha blending in SVG Filters on Chromium/skia.
1919 https://bugs.webkit.org/show_bug.cgi?id=32378
1921 Covered by LayoutTests/svg/filters/feGaussianBlur.svg and others.
1923 * platform/graphics/skia/ImageBufferSkia.cpp:
1924 (WebCore::ImageBuffer::platformTransformColorSpace):
1926 2009-12-10 Pavel Feldman <pfeldman@chromium.org>
1928 Reviewed by Timothy Hatcher.
1930 Web Inspector: Add context menu actions for DOM tree.
1932 https://bugs.webkit.org/show_bug.cgi?id=32348
1934 * English.lproj/localizedStrings.js:
1935 * inspector/front-end/ContextMenu.js:
1936 (WebInspector.ContextMenu):
1937 (WebInspector.ContextMenu.prototype.show):
1938 (WebInspector.ContextMenu.prototype.appendItem):
1939 (WebInspector.ContextMenu.prototype.appendSeparator):
1940 (WebInspector.ContextMenu.prototype._itemSelected):
1941 (WebInspector.contextMenuItemSelected):
1942 (WebInspector.contextMenuCleared):
1943 * inspector/front-end/ElementsTreeOutline.js:
1944 (WebInspector.ElementsTreeOutline.prototype._onmouseout):
1945 (WebInspector.ElementsTreeOutline.prototype.populateContextMenu):
1946 (WebInspector.ElementsTreeElement.prototype.ondblclick):
1947 (WebInspector.ElementsTreeElement.prototype._startEditingFromEvent):
1948 (WebInspector.ElementsTreeElement.prototype._populateTagContextMenu):
1949 (WebInspector.ElementsTreeElement.prototype._populateTextContextMenu):
1950 (WebInspector.ElementsTreeElement.prototype._startEditing):
1951 (WebInspector.ElementsTreeElement.prototype._addNewAttribute):
1952 * inspector/front-end/ObjectPropertiesSection.js:
1953 (WebInspector.ObjectPropertyTreeElement.prototype.ondblclick):
1954 * inspector/front-end/ResourceView.js:
1955 (WebInspector.ResourceView.prototype._toggleURLdecoding):
1956 * inspector/front-end/ResourcesPanel.js:
1957 (WebInspector.ResourceSidebarTreeElement.prototype.ondblclick):
1958 * inspector/front-end/StylesSidebarPane.js:
1959 (WebInspector.StylePropertyTreeElement.prototype):
1960 * inspector/front-end/inspector.js:
1961 (WebInspector.contextMenuEventFired):
1962 * inspector/front-end/treeoutline.js:
1963 (TreeElement.treeElementDoubleClicked):
1965 2009-12-09 Nikolas Zimmermann <nzimmermann@rim.com>
1967 Reviewed by Oliver Hunt.
1969 Filters contain some leaks in untested code
1970 https://bugs.webkit.org/show_bug.cgi?id=32325
1972 Fix obvious leak in SVGFE*Lighting classes. Implement the create() idiom for
1973 all classes in svg/graphics, that were missing it. The lighting filters aren't
1974 implemented so far, but the associated FilterEffect objects are build, which created
1977 This removes the SVG related failures in the leaks bot.
1979 * svg/SVGFEDiffuseLightingElement.cpp:
1980 (WebCore::SVGFEDiffuseLightingElement::findLights):
1981 * svg/SVGFEDiffuseLightingElement.h:
1982 * svg/SVGFEDistantLightElement.cpp:
1983 (WebCore::SVGFEDistantLightElement::lightSource):
1984 * svg/SVGFEDistantLightElement.h:
1985 * svg/SVGFELightElement.h:
1986 * svg/SVGFEPointLightElement.cpp:
1987 (WebCore::SVGFEPointLightElement::lightSource):
1988 * svg/SVGFEPointLightElement.h:
1989 * svg/SVGFESpecularLightingElement.cpp:
1990 (WebCore::SVGFESpecularLightingElement::findLights):
1991 * svg/SVGFESpecularLightingElement.h:
1992 * svg/SVGFESpotLightElement.cpp:
1993 (WebCore::SVGFESpotLightElement::lightSource):
1994 * svg/SVGFESpotLightElement.h:
1995 * svg/graphics/filters/SVGDistantLightSource.h:
1996 (WebCore::DistantLightSource::create):
1997 (WebCore::DistantLightSource::DistantLightSource):
1998 * svg/graphics/filters/SVGFEDiffuseLighting.cpp:
1999 (WebCore::FEDiffuseLighting::FEDiffuseLighting):
2000 (WebCore::FEDiffuseLighting::create):
2001 (WebCore::FEDiffuseLighting::setLightSource):
2002 * svg/graphics/filters/SVGFEDiffuseLighting.h:
2003 * svg/graphics/filters/SVGFESpecularLighting.cpp:
2004 (WebCore::FESpecularLighting::FESpecularLighting):
2005 (WebCore::FESpecularLighting::create):
2006 (WebCore::FESpecularLighting::setLightSource):
2007 * svg/graphics/filters/SVGFESpecularLighting.h:
2008 * svg/graphics/filters/SVGLightSource.h:
2009 * svg/graphics/filters/SVGPointLightSource.h:
2010 (WebCore::PointLightSource::create):
2011 (WebCore::PointLightSource::PointLightSource):
2012 * svg/graphics/filters/SVGSpotLightSource.h:
2013 (WebCore::SpotLightSource::create):
2014 (WebCore::SpotLightSource::SpotLightSource):
2016 2009-12-10 Kenneth Russell <kbr@google.com>
2018 Reviewed by Oliver Hunt.
2020 [Chromium] SporeViewer demo doesn't work in Chromium
2021 https://bugs.webkit.org/show_bug.cgi?id=32364
2023 Test: fast/canvas/webgl/bug-32364.html
2025 * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
2026 (WebCore::CALLBACK_FUNC_DECL):
2027 (WebCore::vertexAttribAndUniformHelperf):
2028 (WebCore::uniformHelperi):
2030 2009-12-09 Beth Dakin <bdakin@apple.com>
2032 Reviewed by Oliver Hunt.
2034 Fix for https://bugs.webkit.org/show_bug.cgi?id=32346 SVG property
2035 -webkit-shadow should apply shadow on the result after compositing
2037 <rdar://problem/7389404>
2039 Set a transparency layer when setting a shadow to apply the shadow
2041 * rendering/SVGRenderSupport.cpp:
2042 (WebCore::SVGRenderBase::prepareToRenderSVGContent):
2043 (WebCore::SVGRenderBase::finishRenderSVGContent):
2045 2009-12-09 Alexey Proskuryakov <ap@apple.com>
2047 Reviewed by Darin Adler.
2049 https://bugs.webkit.org/show_bug.cgi?id=32332
2050 WebSocket events should be dispatched synchronously
2052 Updated websocket/tests/simple to test for the new behavior.
2054 When Web Sockets API says that events should be queued for async dispatch, it means something
2055 different. We should keep this in mind when dealing with other HTML5-related specs.
2057 The model for HTML5 is that code running in response to network events (e.g. WebSocket or
2058 XMLHttpRequest algorithms) runs in a separate thread of execution, and thus needs to post
2059 async events as its only way to communicate with client code. As long as network events are
2060 queued themselves (as they are in WebKit), there is no need to queue JS events for async
2063 * websockets/WebSocket.cpp:
2064 (WebCore::WebSocket::didConnect):
2065 (WebCore::WebSocket::didReceiveMessage):
2066 (WebCore::WebSocket::didClose):
2068 2009-12-09 Alexey Proskuryakov <ap@apple.com>
2070 Reviewed by Oliver Hunt.
2072 https://bugs.webkit.org/show_bug.cgi?id=32355
2073 Assertion failure when opening a WebSocket connection
2075 I couldn't make a reliable test for this. Once the test from bug 32299 is landed, it
2076 will provide partial coverage, as I was frequently seeing the assertion failure with it.
2078 * platform/network/SocketStreamHandleBase.cpp: (WebCore::SocketStreamHandleBase::send):
2079 It's not an error if zero is returned from platformSend() - it just means that nothing could
2080 be pushed down to the network layer, and all data was queued for later.
2081 * platform/network/cf/SocketStreamHandleCFNet.cpp:
2082 (WebCore::SocketStreamHandle::readStreamCallback): This will no longer happen with SocketStream,
2083 but a client can potentially destroy the handle from any callback, so we need to check that
2085 (WebCore::SocketStreamHandle::writeStreamCallback): Ditto.
2087 2009-12-09 Sam Weinig <sam@webkit.org>
2089 Roll out 51919 and 51920. They were incorrect and unnecessary right now.
2091 * platform/mac/WebCoreObjCExtras.mm:
2092 (WebCoreObjCScheduleDeallocateOnMainThread):
2093 * platform/network/mac/NetworkStateNotifierMac.cpp:
2094 (WebCore::NetworkStateNotifier::NetworkStateNotifier):
2096 2009-12-09 Steve Block <steveblock@google.com>
2098 Reviewed by Darin Fisher.
2100 Adds wtf/StdLibExtras.h include for DEFINE_STATIC_LOCAL in V8 ScriptState.
2101 https://bugs.webkit.org/show_bug.cgi?id=32330
2103 Build fix only, no new tests.
2105 * bindings/v8/ScriptState.cpp: Modified. Adds wtf/StdLibExtras.h include.
2107 2009-12-09 Steve Block <steveblock@google.com>
2109 Reviewed by Darin Adler.
2111 Adds ENABLE(INSPECTOR) guards around script binding methods that use types
2112 defined only when INSPECTOR is enabled.
2113 https://bugs.webkit.org/show_bug.cgi?id=32328
2115 Build fix only, no new tests.
2117 * bindings/js/ScriptValue.cpp: Modified. Added ENABLE(INSPECTOR) guard to ScriptValue::quarantineValue.
2118 * bindings/v8/ScriptObject.cpp: Modified. Added ENABLE(INSPECTOR) guard to some overloads of ScriptGlobalObject::set.
2120 2009-12-09 Steve Block <steveblock@google.com>
2122 Reviewed by Adam Barth.
2124 Adds Android Makefiles for building with V8.
2125 Also updates existing Android Makefiles with latest additions.
2126 https://bugs.webkit.org/show_bug.cgi?id=32278
2128 Build fix only, no new tests.
2130 * Android.derived.jscbindings.mk: Modified.
2131 * Android.derived.mk: Modified.
2132 * Android.derived.v8bindings.mk: Added.
2133 * Android.jscbindings.mk: Modified.
2134 * Android.mk: Modified.
2135 * Android.v8bindings.mk: Added.
2137 2009-12-09 Jonathan Dixon <joth@chromium.org>
2139 Reviewed by Dimitri Glazkov.
2141 Bug 32338 - [Chromium] Fix Chromium builder by including missing GeolocationServiceChromium
2142 https://bugs.webkit.org/show_bug.cgi?id=32338
2144 Fix build break: re-include file dropped out by merge in http://trac.webkit.org/changeset/51681/trunk/WebCore/WebCore.gypi
2146 * WebCore.gypi: Add missing GeolocationServiceChromium.cpp
2148 2009-12-09 Andreas Kling <andreas.kling@nokia.com>
2150 Reviewed by Brady Eidson.
2152 Fixed a typo in http://trac.webkit.org/changeset/51644 that broke
2153 the QWebPage autotest.
2155 No new test required.
2157 * loader/FrameLoader.cpp:
2158 (WebCore::FrameLoader::navigateToDifferentDocument):
2160 2009-12-09 Robert Hogan <robert@roberthogan.net>
2162 Reviewed by Eric Seidel.
2164 Exclude JSSVG*.cpp generated files from --minimal and --no-svg builds.
2166 https://bugs.webkit.org/show_bug.cgi?id=32286
2170 2009-12-09 Philippe Normand <pnormand@igalia.com>
2172 Reviewed by Eric Carlson.
2174 Ogg mimetypes are incorrect
2175 https://bugs.webkit.org/show_bug.cgi?id=27113
2177 The ogg extension is handled by audio/ogg instead of
2178 application/ogg. See
2179 http://wiki.xiph.org/MIME_Types_and_File_Extensions
2181 * platform/MIMETypeRegistry.cpp:
2182 (WebCore::TypeExtensionPair::):
2184 2009-12-09 Sam Weinig <sam@webkit.org>
2186 Reviewed by Anders Carlsson.
2188 Use the current run loop instead of the main runloop for the NetworkStateNotifier.
2190 * platform/network/mac/NetworkStateNotifierMac.cpp:
2191 (WebCore::NetworkStateNotifier::NetworkStateNotifier):
2193 2009-12-09 Sam Weinig <sam@webkit.org>
2195 Reviewed by Anders Carlsson.
2197 Use isMainThread() helper instead of pthread_main_np() != 0.
2199 * platform/mac/WebCoreObjCExtras.mm:
2200 (WebCoreObjCScheduleDeallocateOnMainThread):
2202 2009-12-09 Sam Weinig <sam@webkit.org>
2204 Reviewed by Anders Carlsson.
2206 Add some #ifdefs to allow us to experiment with a single NSView mac WebKit.
2209 * page/EventHandler.h:
2210 * page/mac/ChromeMac.mm:
2211 * page/mac/DragControllerMac.mm:
2212 (WebCore::DragController::dragOperation):
2213 * page/mac/EventHandlerMac.mm:
2214 (WebCore::EventHandler::eventLoopHandleMouseDragged):
2215 (WebCore::EventHandler::eventActivatedView):
2216 (WebCore::EventHandler::passMousePressEventToSubframe):
2217 (WebCore::EventHandler::passMouseMoveEventToSubframe):
2218 (WebCore::EventHandler::passMouseReleaseEventToSubframe):
2219 (WebCore::EventHandler::passWheelEventToWidget):
2220 (WebCore::EventHandler::focusDocumentView):
2221 (WebCore::EventHandler::passWidgetMouseDownEventToWidget):
2222 (WebCore::EventHandler::createDraggingClipboard):
2223 (WebCore::isKeyboardOptionTab):
2224 (WebCore::EventHandler::invertSenseOfTabsToLinks):
2225 (WebCore::EventHandler::tabsToAllControls):
2226 (WebCore::EventHandler::needsKeyboardEventDisambiguationQuirks):
2227 (WebCore::EventHandler::accessKeyModifiers):
2228 * platform/ScrollView.cpp:
2229 (WebCore::ScrollView::wheelEvent):
2230 * platform/Widget.cpp:
2231 * platform/Widget.h:
2232 * platform/mac/ScrollViewMac.mm:
2233 * platform/mac/WidgetMac.mm:
2234 (WebCore::Widget::Widget):
2235 (WebCore::Widget::~Widget):
2236 (WebCore::Widget::show):
2237 (WebCore::Widget::hide):
2238 (WebCore::Widget::setCursor):
2239 (WebCore::Widget::paint):
2240 (WebCore::Widget::setFocus):
2241 (WebCore::Widget::setIsSelected):
2242 (WebCore::Widget::frameRect):
2243 (WebCore::Widget::setFrameRect):
2245 2009-12-09 Michael Nordman <michaeln@google.com>
2247 Reviewed by Dimitri Glazkov.
2253 * bindings/v8/DOMData.cpp
2254 * bindings/v8/V8DOMWrapper.cpp
2255 * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
2256 (WebCore::vertexAttribAndUniformHelperf):
2257 (WebCore::uniformHelperi):
2258 (WebCore::uniformMatrixHelper):
2260 2009-12-09 Søren Gjesse <sgjesse@chromium.org>
2262 Reviewed by Pavel Feldman.
2264 [V8] Isolated world reuse failure
2265 https://bugs.webkit.org/show_bug.cgi?id=32306
2267 Fixed bug introduced in r51407: (http://trac.webkit.org/changeset/51407) which caused layout test
2268 LayoutTests/http/tests/security/isolatedWorld/world-reuse.html to fail.
2270 * bindings/v8/V8Proxy.cpp:
2271 (WebCore::V8Proxy::setInjectedScriptContextDebugId):
2272 (WebCore::V8Proxy::contextDebugId):
2274 2009-12-09 Patrick Scott <phanna@email.unc.edu>
2276 Fix the build with ENABLE_ORIENTATION_EVENTS
2277 https://bugs.webkit.org/show_bug.cgi?id=32321
2280 (WebCore::Frame::sendOrientationChangeEvent):
2282 2009-12-09 Avi Drissman <avi@chromium.org>
2284 Reviewed by Darin Fisher.
2286 Chromium tickmarks in scrollbar now UX approved.
2287 https://bugs.webkit.org/show_bug.cgi?id=32069
2289 * platform/chromium/ScrollbarThemeChromiumMac.mm:
2290 (WebCore::ScrollbarThemeChromiumMac::paint):
2292 2009-12-09 Chris Marrin <cmarrin@apple.com>
2294 Reviewed by Adam Roben.
2296 Delay load DLLs for accelerated compositing
2297 https://bugs.webkit.org/show_bug.cgi?id=31856
2299 Add logic to turn off accelerated compositing if d3d9 or QuartzCore
2300 DLLs are not present.
2302 This patch also changes the WKCACFLayerRenderer to be a pointer.
2303 This allows me to have a create() method which will not create it when
2304 accelerated compositing is disabled because of missing DLLs. It
2305 avoids having to do so many checks. I also made WebViewWndProc
2306 a member function to allow several methods to be made protected, which
2307 allows me to avoid doing availability checks there as well.
2309 * platform/graphics/win/WKCACFLayer.cpp:
2310 * platform/graphics/win/WKCACFLayer.h:
2311 * platform/graphics/win/WKCACFLayerRenderer.cpp:
2312 * platform/graphics/win/WKCACFLayerRenderer.h:
2313 * rendering/RenderLayerBacking.cpp:
2315 2009-12-09 Nate Chapin <japhet@chromium.org>
2317 Reviewed by Darin Adler.
2319 Rename dom/ClassNames to SpaceSplitString and update build files.
2321 https://bugs.webkit.org/show_bug.cgi?id=32250
2326 * WebCore.vcproj/WebCore.vcproj:
2327 * WebCore.xcodeproj/project.pbxproj:
2328 * WebCoreSources.bkl:
2329 * css/CSSStyleSelector.cpp:
2330 (WebCore::CSSStyleSelector::matchRules):
2331 * dom/ClassNames.cpp: Removed.
2332 * dom/ClassNames.h: Removed.
2333 * dom/ClassNodeList.h:
2334 * dom/NamedMappedAttrMap.h:
2335 (WebCore::NamedMappedAttrMap::classNames):
2336 * dom/SpaceSplitString.cpp: Copied from WebCore/dom/ClassNames.cpp.
2337 (WebCore::SpaceSplitStringData::createVector):
2338 (WebCore::SpaceSplitStringData::containsAll):
2339 * dom/SpaceSplitString.h: Copied from WebCore/dom/ClassNames.h.
2340 (WebCore::SpaceSplitStringData::SpaceSplitStringData):
2341 (WebCore::SpaceSplitString::SpaceSplitString):
2342 (WebCore::SpaceSplitString::set):
2343 (WebCore::SpaceSplitString::containsAll):
2344 * dom/StyledElement.h:
2345 (WebCore::StyledElement::classNames):
2346 * html/HTMLAnchorElement.cpp:
2347 (WebCore::HTMLAnchorElement::setRel):
2349 2009-12-09 Stephen White <senorblanco@chromium.org>
2351 Reviewed by Darin Fisher.
2353 Enable SVG filters in Chromium build.
2354 https://bugs.webkit.org/show_bug.cgi?id=32323
2356 Covered by SVG filter layout tests.
2358 * WebCore.gyp/WebCore.gyp:
2360 * bindings/scripts/CodeGeneratorV8.pm:
2361 * bindings/v8/DerivedSourcesAllInOne.cpp:
2362 * bindings/v8/V8DOMWrapper.cpp:
2363 * bindings/v8/V8Index.cpp:
2364 * bindings/v8/V8Index.h:
2366 2009-12-09 Oliver Hunt <oliver@apple.com>
2370 * bindings/js/JSWebGLRenderingContextCustom.cpp:
2371 (WebCore::functionForUniform):
2373 2009-12-08 Fumitoshi Ukai <ukai@chromium.org>
2375 Reviewed by Darin Adler.
2377 WebSocket allow space (U+0020) in sub protocol name.
2378 https://bugs.webkit.org/show_bug.cgi?id=32266
2380 Test: websocket/tests/sub-protocol-with-space.html
2382 * websockets/WebSocket.cpp:
2383 (WebCore::isValidProtocolString):
2385 2009-12-08 Peterson Trethewey <petersont@google.com>
2387 Reviewed by Oliver Hunt.
2389 Implement WebGLUniformLocation and change API to use it.
2390 https://bugs.webkit.org/show_bug.cgi?id=31173
2392 Test: fast/canvas/webgl/uniform-location.html
2394 * DerivedSources.make:
2396 * WebCore.xcodeproj/project.pbxproj:
2397 * bindings/js/JSWebGLRenderingContextCustom.cpp:
2398 (WebCore::JSWebGLRenderingContext::getProgramParameter):
2399 (WebCore::JSWebGLRenderingContext::getUniform):
2400 (WebCore::functionForUniform):
2401 (WebCore::dataFunctionf):
2402 (WebCore::dataFunctioni):
2403 (WebCore::dataFunctionMatrix):
2404 * bindings/scripts/CodeGeneratorV8.pm:
2405 * bindings/v8/DerivedSourcesAllInOne.cpp:
2406 * bindings/v8/V8Index.cpp:
2407 * bindings/v8/V8Index.h:
2408 * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
2409 (WebCore::toWebGLUniformLocation):
2411 (WebCore::CALLBACK_FUNC_DECL):
2412 (WebCore::isFunctionToCallForAttribute):
2413 (WebCore::vertexAttribAndUniformHelperf):
2414 (WebCore::uniformHelperi):
2415 (WebCore::uniformMatrixHelper):
2416 * html/canvas/WebGLRenderingContext.cpp:
2417 (WebCore::WebGLRenderingContext::getUniform):
2418 (WebCore::WebGLRenderingContext::getUniformLocation):
2419 (WebCore::WebGLRenderingContext::uniform1f):
2420 (WebCore::WebGLRenderingContext::uniform1fv):
2421 (WebCore::WebGLRenderingContext::uniform1i):
2422 (WebCore::WebGLRenderingContext::uniform1iv):
2423 (WebCore::WebGLRenderingContext::uniform2f):
2424 (WebCore::WebGLRenderingContext::uniform2fv):
2425 (WebCore::WebGLRenderingContext::uniform2i):
2426 (WebCore::WebGLRenderingContext::uniform2iv):
2427 (WebCore::WebGLRenderingContext::uniform3f):
2428 (WebCore::WebGLRenderingContext::uniform3fv):
2429 (WebCore::WebGLRenderingContext::uniform3i):
2430 (WebCore::WebGLRenderingContext::uniform3iv):
2431 (WebCore::WebGLRenderingContext::uniform4f):
2432 (WebCore::WebGLRenderingContext::uniform4fv):
2433 (WebCore::WebGLRenderingContext::uniform4i):
2434 (WebCore::WebGLRenderingContext::uniform4iv):
2435 (WebCore::WebGLRenderingContext::uniformMatrix2fv):
2436 (WebCore::WebGLRenderingContext::uniformMatrix3fv):
2437 (WebCore::WebGLRenderingContext::uniformMatrix4fv):
2438 * html/canvas/WebGLRenderingContext.h:
2439 * html/canvas/WebGLRenderingContext.idl:
2440 * html/canvas/WebGLUniformLocation.cpp: Added.
2441 (WebCore::WebGLUniformLocation::create):
2442 (WebCore::WebGLUniformLocation::WebGLUniformLocation):
2443 * html/canvas/WebGLUniformLocation.h: Added.
2444 (WebCore::WebGLUniformLocation::~WebGLUniformLocation):
2445 (WebCore::WebGLUniformLocation::program):
2446 (WebCore::WebGLUniformLocation::location):
2447 * html/canvas/WebGLUniformLocation.idl: Added.
2449 2009-12-08 Adam Langley <agl@google.com>
2451 Reviewed by Darin Adler.
2453 Fix assertion failure in WebCore::RenderBlock::startDelayUpdateScrollInfo
2455 startDelayUpdateScrollInfo calls a function that can end up calling
2456 startDelayUpdateScrollInfo again. However, it's static state is
2457 inconsistent when this happens leading to an assertion failure (or
2458 probably a memory leak if assertions are off).
2460 Thanks to Robert Swiecki for the test case.
2462 https://bugs.webkit.org/show_bug.cgi?id=32172
2463 http://code.google.com/p/chromium/issues/detail?id=28880
2465 Test: fast/css/recursive-delay-update-scroll.html
2467 * rendering/RenderBlock.cpp:
2468 (WebCore::RenderBlock::finishDelayUpdateScrollInfo):
2470 2009-12-08 Steve Falkenburg <sfalken@apple.com>
2472 Reviewed by Adam Roben.
2474 WebCore source level debugging on Windows not reliable in some cases
2475 https://bugs.webkit.org/show_bug.cgi?id=32297
2477 Customized pdb file name/location for WebCore static library.
2479 * WebCore.vcproj/WebCoreCommon.vsprops: Add ProgramDataBaseFileName.
2481 2009-12-08 Kevin Watters <kevinwatters@gmail.com>
2483 Reviewed by Kevin Ollivier.
2485 [wx] Mac plugins support.
2487 https://bugs.webkit.org/show_bug.cgi?id=32236
2489 * platform/FileSystem.h:
2490 * platform/cf/BinaryPropertyList.h:
2491 * platform/network/curl/ResourceHandleManager.cpp:
2492 * platform/wx/FileSystemWx.cpp:
2493 (WebCore::fileExists):
2494 (WebCore::unloadModule):
2495 (WebCore::wxDirTraverserNonRecursive::wxDirTraverserNonRecursive):
2496 (WebCore::wxDirTraverserNonRecursive::OnFile):
2497 (WebCore::wxDirTraverserNonRecursive::OnDir):
2498 (WebCore::listDirectory):
2499 * plugins/mac/PluginViewMac.cpp:
2500 (WebCore::nativeWindowFor):
2501 (WebCore::cgHandleFor):
2502 (WebCore::topLevelOffsetFor):
2503 (WebCore::PluginView::platformStart):
2504 (WebCore::PluginView::setFocus):
2505 (WebCore::PluginView::invalidateRect):
2506 (WebCore::PluginView::handleKeyboardEvent):
2507 (WebCore::PluginView::globalMousePosForPlugin):
2508 * plugins/wx/PluginDataWx.cpp: Added.
2509 (WebCore::PluginData::initPlugins):
2510 (WebCore::PluginData::refresh):
2513 2009-12-08 Brady Eidson <beidson@apple.com>
2515 Reviewed by Darin Adler.
2517 Navigating to a cached page can result in accessing a destroyed HTMLInputElement.
2518 <rdar://problem/6856662> and https://webkit.org/b/32293
2520 Test: fast/loader/input-element-page-cache-crash.html
2522 * html/HTMLInputElement.cpp:
2523 (WebCore::HTMLInputElement::parseMappedAttribute): Make sure to unregister for the activation
2524 callback after the new m_autocomplete setting has been stored so the unregistration actually
2527 2009-12-08 Dmitry Titov <dimich@chromium.org>
2529 Rubber-stamped by David Levin.
2531 Revert and reopen "Add asserts to RefCounted to make sure ref/deref happens on the right thread."
2532 It may have caused massive increase of reported leaks on the bots.
2533 https://bugs.webkit.org/show_bug.cgi?id=31639
2535 * ForwardingHeaders/wtf/ThreadVerifier.h: Removed.
2536 * loader/icon/IconRecord.cpp:
2537 (WebCore::IconRecord::IconRecord):
2538 * platform/SharedBuffer.cpp:
2539 (WebCore::SharedBuffer::SharedBuffer):
2540 * platform/text/StringImpl.cpp:
2541 (WebCore::StringImpl::StringImpl):
2543 2009-12-08 Pavel Feldman <pfeldman@chromium.org>
2545 Reviewed by Darin Fisher.
2547 Chromium: support custom WebCore context menu items in Chromium port.
2549 https://bugs.webkit.org/show_bug.cgi?id=32277
2551 * platform/ContextMenu.h:
2552 * platform/ContextMenuItem.h:
2553 (WebCore::PlatformMenuItemDescription::PlatformMenuItemDescription):
2554 * platform/chromium/ContextMenuChromium.cpp:
2555 (WebCore::ContextMenu::ContextMenu):
2556 (WebCore::ContextMenu::itemCount):
2557 (WebCore::ContextMenu::insertItem):
2558 (WebCore::ContextMenu::appendItem):
2559 (WebCore::ContextMenu::itemWithAction):
2560 (WebCore::ContextMenu::itemAtIndex):
2561 (WebCore::ContextMenu::platformDescription):
2562 * platform/chromium/ContextMenuItemChromium.cpp:
2563 (WebCore::ContextMenuItem::ContextMenuItem):
2564 (WebCore::ContextMenuItem::releasePlatformDescription):
2565 (WebCore::ContextMenuItem::type):
2566 (WebCore::ContextMenuItem::action):
2567 (WebCore::ContextMenuItem::title):
2568 (WebCore::ContextMenuItem::checked):
2569 (WebCore::ContextMenuItem::enabled):
2570 (WebCore::ContextMenuItem::setType):
2571 (WebCore::ContextMenuItem::setAction):
2572 (WebCore::ContextMenuItem::setTitle):
2573 (WebCore::ContextMenuItem::setChecked):
2574 (WebCore::ContextMenuItem::setEnabled):
2576 2009-12-08 Adam Langley <agl@google.com>
2578 Reviewed by Dimitri Glazkov.
2580 Chromium Linux: set default scrollbar colours.
2582 This is so that layout tests have sane defaults for the scrollbar
2583 colours, even if the API user doesn't set any.
2585 This is a fix due to r51827.
2587 https://bugs.webkit.org/show_bug.cgi?id=32287
2589 This is very well covered by existing layout tests.
2591 * rendering/RenderThemeChromiumLinux.cpp:
2593 2009-12-08 Beth Dakin <bdakin@apple.com>
2595 Reviewed by Sam Weinig.
2597 Fix for <rdar://problem/7397808> Crash occurs at
2598 RenderObject::containingBlock() as I type in the Google Search
2599 field (during page load)
2601 * editing/Editor.cpp:
2602 (WebCore::Editor::insideVisibleArea): ownerRenderer() needs to be
2605 2009-12-08 Dmitry Titov <dimich@chromium.org>
2607 Reviewed by Darin Adler.
2609 Add asserts to RefCounted to make sure ref/deref happens on the right thread.
2610 https://bugs.webkit.org/show_bug.cgi?id=31639
2612 * loader/icon/IconRecord.cpp:
2613 (WebCore::IconRecord::IconRecord): Disable thread verification for this class because of its cross-thread use in IconDatabase.
2614 * platform/SharedBuffer.cpp:
2615 (WebCore::SharedBuffer::SharedBuffer): Ditto.
2616 * platform/text/StringImpl.cpp:
2617 (WebCore::StringImpl::StringImpl): Disable thread verification for this class, add FIXME to enforce proper usage via crossThreadString.
2618 * ForwardingHeaders/wtf/ThreadVerifier.h: Added.
2620 2009-12-08 John Gregg <johnnyg@google.com>
2622 Reviewed by Adam Barth.
2624 Inform the NotificationCenter when its window goes away in the same
2625 manner as other DOMWindow fields, and prevent invalid operations on
2626 it after that happens.
2628 As part of this, change the V8 bindings for notifications to call
2629 through the NotificationCenter rather than doing those operations
2632 https://bugs.webkit.org/show_bug.cgi?id=31886
2634 Test: fast/notifications/notification-after-close.html
2636 * bindings/v8/custom/V8NotificationCenterCustom.cpp:
2637 (WebCore::CALLBACK_FUNC_DECL):
2638 * notifications/Notification.cpp:
2639 (WebCore::Notification::Notification):
2640 * notifications/NotificationCenter.cpp:
2641 (WebCore::NotificationCenter::checkPermission):
2642 (WebCore::NotificationCenter::requestPermission):
2643 * notifications/NotificationCenter.h:
2644 (WebCore::NotificationCenter::createHTMLNotification):
2645 (WebCore::NotificationCenter::createNotification):
2646 (WebCore::NotificationCenter::disconnectFrame):
2647 * page/DOMWindow.cpp:
2648 (WebCore::DOMWindow::clear):
2650 2009-12-08 Dan Bernstein <mitz@apple.com>
2652 Reviewed by John Sullivan.
2654 Fixed block selection gap repainting in table cells
2656 Test: fast/repaint/block-selection-gap-in-table-cell.html
2658 This recently-introduced regression exposed the fact that
2659 RenderTableCell did not override offsetFromContainer() to adjust for
2660 the fact that table cells’ coordinates are relative to the table
2661 section, not the table row. With this fixed, RenderTableCell no longer
2662 needs to override mapLocalToContainer() and mapAbsoluteToLocalPoint(),
2663 since the base class implementations of those use offsetFromContainer().
2665 * rendering/RenderTableCell.cpp:
2666 (WebCore::RenderTableCell::offsetFromContainer):
2667 * rendering/RenderTableCell.h:
2669 2009-12-08 Nikolas Zimmermann <nzimmermann@rim.com>
2671 Not reviewed. Sane way to force a rebuild on all win slaves, according to Adam Roben.
2675 2009-12-08 Dan Bernstein <mitz@apple.com>
2679 * loader/loader.cpp:
2680 (WebCore::cachedResourceTypeToTargetType):
2682 2009-12-08 Nikolas Zimmermann <nzimmermann@rim.com>
2684 Not reviewed. Touch svgtags.in to eventually fix the win debug build.
2688 2009-12-08 Mike Belshe <mike@belshe.com>
2690 Reviewed by Darin Fisher.
2692 https://bugs.webkit.org/show_bug.cgi?id=32167
2693 Update the ResourceRequest::RequestType. This previously
2694 was specific to Chromium. Moved into ResourceRequestBase, enabling
2695 more specificity about the type (which is otherwise only known to the
2696 loader), and also making this information available to all platforms.
2697 Any platform with a network layer which can utilize this information
2698 may want to use it for prioritization.
2700 Note to Chromium glue: TargetIsSubResource renamed to TargetIsSubresource.
2702 * loader/loader.cpp:
2703 (WebCore::Loader::Loader):
2704 (WebCore::CachedResourceTypeToTargetType):
2705 (WebCore::Loader::Host::servePendingRequests):
2706 * platform/network/ResourceRequestBase.h:
2707 (WebCore::ResourceRequestBase::):
2708 (WebCore::ResourceRequestBase::targetType):
2709 (WebCore::ResourceRequestBase::setTargetType):
2710 (WebCore::ResourceRequestBase::ResourceRequestBase):
2711 * platform/network/chromium/ResourceRequest.h:
2712 (WebCore::ResourceRequest::ResourceRequest):
2714 2009-12-08 Steve Block <steveblock@google.com>
2716 Reviewed by Adam Barth.
2718 [Android] Adds Makefiles for Android port.
2719 https://bugs.webkit.org/show_bug.cgi?id=31325
2721 Build system change only. No tests possible.
2723 * Android.derived.jscbindings.mk: Added.
2724 * Android.derived.mk: Added.
2725 * Android.jscbindings.mk: Added.
2726 * Android.mk: Added.
2727 * WebCorePrefix.h: Modified. Sets up some flags and adds a header required for building on Android.
2729 2009-12-08 Christian Dywan <christian@twotoasts.de>
2731 Reviewed by Xan Lopez.
2733 * platform/network/soup/DNSSoup.cpp:
2734 (WebCore::prefetchDNS): Conditionalize prefetching on
2735 the libSoup version.
2737 2009-12-08 Nikolas Zimmermann <nzimmermann@rim.com>
2739 Rubber-stamped by Maciej Stachowiak.
2741 Turn on (SVG) Filters for Win.
2742 https://bugs.webkit.org/show_bug.cgi?id=32224
2744 * WebCore.vcproj/WebCoreCommon.vsprops:
2745 * WebCore.vcproj/build-generated-files.sh:
2746 * bindings/scripts/CodeGeneratorCOM.pm: Touch file to assure a world rebuild. Hopefully.
2748 2009-12-08 Carol Szabo <carol.szabo@nokia.com>
2750 Reviewed by Darin Adler.
2752 CSS Counter Nesting still does not work according to the spec.
2753 https://bugs.webkit.org/show_bug.cgi?id=31723
2755 Test: fast/css/counters/nesting.html
2757 * rendering/RenderCounter.cpp:
2758 (WebCore::findPlaceForCounter):
2759 Replaced the faulty counter insertion algorithm with one that works.
2761 2009-12-08 John Sullivan <sullivan@apple.com>
2763 Add isAutofilled getter to match existing setter.
2765 Reviewed by Ada Chan.
2767 * bindings/objc/DOMHTML.mm:
2768 (-[DOMHTMLInputElement _isAutofilled]):
2769 Implemented new cover function.
2771 * bindings/objc/DOMPrivate.h:
2772 Declared new cover function.
2774 2009-12-08 Dominik Röttsches <dominik.roettsches@access-company.com>
2776 Reviewed by Gustavo Noronha Silva.
2778 [Gtk] Create a TextBreakIterator implementation based on GLib (without ICU)
2779 https://bugs.webkit.org/show_bug.cgi?id=31469
2781 Added a TextBreakIterator implementation based on GLib and pango,
2782 which allows compiling WebCore without ICU.
2785 * platform/text/gtk/TextBreakIteratorGtk.cpp: Added.
2787 (WebCore::setUpIterator):
2788 (WebCore::characterBreakIterator):
2789 (WebCore::cursorMovementIterator):
2790 (WebCore::wordBreakIterator):
2791 (WebCore::lineBreakIterator):
2792 (WebCore::sentenceBreakIterator):
2793 (WebCore::textBreakFirst):
2794 (WebCore::textBreakLast):
2795 (WebCore::textBreakNext):
2796 (WebCore::textBreakPrevious):
2797 (WebCore::textBreakPreceding):
2798 (WebCore::textBreakFollowing):
2799 (WebCore::textBreakCurrent):
2800 (WebCore::isTextBreak):
2802 2009-12-08 Alexander Pavlov <apavlov@chromium.org>
2804 Reviewed by Pavel Feldman.
2806 Change the way cookies are retrieved in the WebInspector frontend.
2808 Moved the cookie filtering from the native code into the frontend so that
2809 all cookies can be retrieved regardless of the associated domain
2810 (required for certain audits to run.)
2811 https://bugs.webkit.org/show_bug.cgi?id=32160
2813 Test: inspector/cookie-resource-match.html
2815 * inspector/InspectorBackend.cpp:
2816 (WebCore::InspectorBackend::getCookies):
2817 * inspector/InspectorBackend.h:
2818 * inspector/InspectorBackend.idl:
2819 * inspector/InspectorController.cpp:
2820 (WebCore::InspectorController::getCookies):
2821 * inspector/InspectorController.h:
2822 * inspector/front-end/CookieItemsView.js:
2823 (WebInspector.CookieItemsView.prototype.update.callback):
2824 (WebInspector.CookieItemsView.prototype.update):
2825 (WebInspector.CookieItemsView.prototype._cookiesForDomain):
2826 * inspector/front-end/DOMAgent.js:
2827 (WebInspector.Cookies.getCookiesAsync):
2828 (WebInspector.Cookies.cookieMatchesResourceURL):
2829 (WebInspector.Cookies.cookieDomainMatchesResourceDomain):
2830 * inspector/front-end/Resource.js:
2831 (WebInspector.Resource):
2832 (WebInspector.Resource.prototype.get documentURL):
2833 (WebInspector.Resource.prototype.set documentURL):
2834 * inspector/front-end/inspector.js:
2835 (WebInspector.addResource):
2837 2009-12-08 Nikolas Zimmermann <nzimmermann@rim.com>
2839 Not reviewed. Touch svgtags.in, in order to force SVGNames.* regeneration. Praying for gtk bot to be fixed :-)
2843 2009-12-08 Nikolas Zimmermann <nzimmermann@rim.com>
2845 Not reviewed. Trying to force a rebuild on the Gtk slave. If that doesn't work, someone must force a rebuild from scratch.
2847 * bindings/scripts/CodeGeneratorJS.pm:
2849 2009-12-06 Pavel Feldman <pfeldman@chromium.org>
2851 Reviewed by Timothy Hatcher.
2853 Web Inspector: provide custom context menu in the front-end window.
2855 https://bugs.webkit.org/show_bug.cgi?id=32200
2857 * English.lproj/localizedStrings.js:
2861 * WebCore.vcproj/WebCore.vcproj:
2862 * WebCore.xcodeproj/project.pbxproj:
2863 * bindings/js/JSInspectorFrontendHostCustom.cpp:
2864 (WebCore::JSInspectorFrontendHost::showContextMenu):
2865 * inspector/InspectorFrontend.cpp:
2866 (WebCore::InspectorFrontend::contextMenuItemSelected):
2867 (WebCore::InspectorFrontend::contextMenuCleared):
2868 * inspector/InspectorFrontend.h:
2869 * inspector/InspectorFrontendHost.cpp:
2870 (WebCore::InspectorFrontendHost::InspectorFrontendHost):
2871 (WebCore::InspectorFrontendHost::~InspectorFrontendHost):
2872 (WebCore::InspectorFrontendHost::showContextMenu):
2873 (WebCore::InspectorFrontendHost::contextMenuItemSelected):
2874 (WebCore::InspectorFrontendHost::contextMenuCleared):
2875 * inspector/InspectorFrontendHost.h:
2876 (WebCore::InspectorFrontendHost::MenuSelectionHandler::create):
2877 (WebCore::InspectorFrontendHost::MenuSelectionHandler::~MenuSelectionHandler):
2878 (WebCore::InspectorFrontendHost::MenuSelectionHandler::disconnect):
2879 (WebCore::InspectorFrontendHost::MenuSelectionHandler::contextMenuItemSelected):
2880 (WebCore::InspectorFrontendHost::MenuSelectionHandler::contextMenuCleared):
2881 (WebCore::InspectorFrontendHost::MenuSelectionHandler::MenuSelectionHandler):
2882 * inspector/InspectorFrontendHost.idl:
2883 * inspector/front-end/ContextMenu.js: Added.
2884 * inspector/front-end/WebKit.qrc:
2885 * inspector/front-end/inspector.html:
2886 * inspector/front-end/inspector.js:
2887 (WebInspector.loaded):
2888 (WebInspector.documentContextMenu):
2889 * page/ContextMenuController.cpp:
2890 (WebCore::ContextMenuController::ContextMenuController):
2891 (WebCore::ContextMenuController::clearContextMenu):
2892 (WebCore::ContextMenuController::handleContextMenuEvent):
2893 (WebCore::ContextMenuController::showContextMenu):
2894 (WebCore::ContextMenuController::createContextMenu):
2895 (WebCore::ContextMenuController::contextMenuItemSelected):
2896 * page/ContextMenuController.h:
2897 * page/ContextMenuSelectionHandler.h: Added.
2898 (WebCore::ContextMenuSelectionHandler::ContextMenuSelectionHandler):
2899 (WebCore::ContextMenuSelectionHandler::~ContextMenuSelectionHandler):
2900 * platform/ContextMenu.cpp:
2901 (WebCore::ContextMenu::checkOrEnableIfNeeded):
2902 * platform/ContextMenuItem.h:
2904 2009-12-08 Andras Becsi <abecsi@inf.u-szeged.hu>
2906 Rubber-stamped by Kenneth Rohde Christiansen.
2908 [Qt] Build fix of duplicated platform/graphics/filters/FEGaussianBlur.cpp in WebCore.pro after enabled svg filters.
2910 No new tests needed.
2913 2009-12-07 Shinichiro Hamaji <hamaji@chromium.org>
2915 Reviewed by Darin Adler.
2917 Add a function to show render tree for debugging
2918 https://bugs.webkit.org/show_bug.cgi?id=31288
2920 No new tests because this just adds a function for debugging.
2922 * rendering/RenderObject.cpp:
2923 (WebCore::RenderObject::showRenderObject):
2924 (WebCore::RenderObject::showRenderTreeAndMark):
2926 * rendering/RenderObject.h:
2928 2009-12-07 Victor Wang <victorw@chromium.org>
2930 Reviewed by Dimitri Glazkov.
2932 Implement NamedPropertyEnumerator and IndexedPropertyEnumerator for
2933 V8 NPObject. This should make the object enumerable and fix the
2934 enumeration issue in layout test plugins/netscape-enumerate.html.
2936 Also fix some existing style issues per webkit style guidelines.
2938 https://bugs.webkit.org/show_bug.cgi?id=32254
2940 Test: plugins/netscape-enumerate.html
2942 * bindings/v8/V8NPObject.cpp:
2943 (npObjectInvokeImpl):
2944 (npObjectInvokeDefaultHandler):
2945 (npObjectGetProperty):
2946 (npObjectPropertyEnumerator):
2947 (npObjectNamedPropertyEnumerator):
2948 (npObjectIndexedPropertyEnumerator):
2949 (createV8ObjectForNPObject):
2951 2009-12-07 Fumitoshi Ukai <ukai@chromium.org>
2953 Reviewed by Alexey Proskuryakov.
2955 Fragments now make WebSocket URL parsing fail.
2956 https://bugs.webkit.org/show_bug.cgi?id=32144
2958 * websockets/WebSocket.cpp:
2959 (WebCore::WebSocket::connect):
2961 2009-12-07 Fumitoshi Ukai <ukai@chromium.org>
2963 Reviewed by Darin Adler.
2965 Fix wrong length parsing in WebSocket.
2966 https://bugs.webkit.org/show_bug.cgi?id=32203
2968 * websockets/WebSocketChannel.cpp:
2969 (WebCore::WebSocketChannel::didReceiveData):
2971 2009-12-07 Nikolas Zimmermann <nzimmermann@rim.com>
2973 Rubber-stamped by Maciej Stachowiak.
2975 Turn on (SVG) Filters for Qt.
2976 https://bugs.webkit.org/show_bug.cgi?id=32224
2980 2009-12-07 Evan Martin <evan@chromium.org>
2982 Reviewed by Eric Seidel.
2984 Chromium: theme scrollbars to match GTK theme.
2985 Add functions to RenderThemeChromiumLinux to change the scrollbar
2988 Since the change is to the Chromium WebKit API layer, testing will
2989 be in Chromium's test shell.
2990 http://bugs.webkit.org/show_bug.cgi?id=32048
2992 Patch from Markus Gutschke <markus@chromium.org>.
2994 * platform/chromium/ScrollbarThemeChromiumLinux.cpp:
2995 (WebCore::saturateAndBrighten):
2996 (WebCore::outlineColor):
2997 (WebCore::ScrollbarThemeChromiumLinux::paintTrackPiece):
2998 (WebCore::ScrollbarThemeChromiumLinux::paintThumb):
2999 * rendering/RenderThemeChromiumLinux.cpp:
3000 (WebCore::RenderThemeChromiumLinux::setScrollbarColors):
3001 * rendering/RenderThemeChromiumLinux.h:
3002 (WebCore::RenderThemeChromiumLinux::thumbInactiveColor):
3003 (WebCore::RenderThemeChromiumLinux::thumbActiveColor):
3004 (WebCore::RenderThemeChromiumLinux::trackColor):
3006 2009-12-08 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
3008 Reviewed by Xan Lopez.
3010 [GTK] Doesn't respect Content-Disposition for downloads, and provides no way for apps to do that
3011 https://bugs.webkit.org/show_bug.cgi?id=32247
3013 Allow creating a ResourceResponse from a SoupMessage.
3015 Covered by API test.
3017 * platform/network/soup/ResourceResponse.h:
3018 (WebCore::ResourceResponse::ResourceResponse):
3019 * platform/network/soup/ResourceResponseSoup.cpp:
3020 (WebCore::ResourceResponse::updateFromSoupMessage):
3022 2009-12-07 Nikolas Zimmermann <nzimmermann@rim.com>
3024 Not reviewed. Reverting problematic patch, causing errors.
3026 Revert r51789 (Avoid zero division during SVGPaintServerPattern::setup()). Crashes on all Windows slaves.
3027 Reopen bug https://bugs.webkit.org/show_bug.cgi?id=29912.
3029 * svg/graphics/SVGPaintServerPattern.cpp:
3030 (WebCore::SVGPaintServerPattern::setup):
3032 2009-12-07 Kent Tamura <tkent@chromium.org>
3034 Reviewed by Darin Adler.
3036 Add support for HTMLInputElement::stepUp() and stepDown() for
3037 type=number and type=range.
3038 https://bugs.webkit.org/show_bug.cgi?id=27451
3040 Our implementation of stepUp() and stepDown() rounds the resultant
3041 value to conform to the step value.
3042 Change the number-string conversion method for RenderSlider to be
3043 consistent with type=number.
3045 Tests: fast/forms/input-step-number.html
3046 fast/forms/input-step-range.html
3047 fast/forms/input-step-unsupported.html
3049 * html/HTMLInputElement.cpp:
3050 (WebCore::HTMLInputElement::rangeUnderflow): Unify the code for NUMBER and RANGE.
3051 (WebCore::HTMLInputElement::rangeOverflow): Unify the code for NUMBER and RANGE.
3052 (WebCore::HTMLInputElement::minimum): Renamed from rangeMinimum(), and support for NUMBER.
3053 (WebCore::HTMLInputElement::maximum): Renamed from rangeMaximum(), and support for NUMBER.
3054 (WebCore::HTMLInputElement::stepBase):
3055 (WebCore::HTMLInputElement::stepMismatch): Use stepBase().
3056 (WebCore::HTMLInputElement::applyStepForNumberOrRange):
3057 (WebCore::HTMLInputElement::stepUp):
3058 (WebCore::HTMLInputElement::stepDown):
3059 (WebCore::HTMLInputElement::formStringFromDouble):
3060 * html/HTMLInputElement.h:
3061 (WebCore::HTMLInputElement::stepUp):
3062 (WebCore::HTMLInputElement::stepDown):
3063 * html/HTMLInputElement.idl: Add stepUp() and stepDown().
3064 * rendering/RenderSlider.cpp:
3065 (WebCore::SliderRange::SliderRange): Sync with rangeMinimum()/rangeMaximum() renaming.
3066 (WebCore::RenderSlider::updateFromElement): Use formStringFromDouble().
3067 (WebCore::RenderSlider::setValueForPosition): Use formStringFromDouble().
3069 2009-12-07 Albert J. Wong <ajwong@chromium.org>
3071 Not reviewed: Chromium build fix try 2 (dumb error).
3073 * bindings/v8/ScriptValue.h:
3074 (WebCore::ScriptValue::getString):
3076 2009-12-07 Albert J. Wong <ajwong@chromium.org>
3078 Not reviewed: Chromium build fix.
3080 Fix Chromium build break caused by an added dependency from
3081 ScriptControllerBase to JSDOMWindowShell, and an API change in
3084 * bindings/ScriptControllerBase.cpp:
3085 (WebCore::ScriptController::executeIfJavaScriptURL):
3086 * bindings/v8/ScriptValue.h:
3087 (WebCore::ScriptValue::getString):
3089 2009-12-07 Enrica Casucci <enrica@apple.com>
3091 Reviewed by Darin Adler.
3093 REGRESSION(4.0.4-42a12): Indent does not work for twice modified with background text in gmail.
3094 <rdar://problem/7442387>
3095 https://bugs.webkit.org/show_bug.cgi?id=32233
3097 Fixes problem in re-creating the correct hierarchy under the new block.
3098 Added extensive testing to cover all the cases.
3100 Test: editing/execCommand/indent-with-style2.html
3102 * editing/CompositeEditCommand.cpp:
3103 (WebCore::CompositeEditCommand::cloneParagraphUnderNewElement):
3105 2009-12-07 Dmitry Titov <dimich@chromium.org>
3107 Rubber-stamped by Darin Adler.
3109 Remove ENABLE_SHARED_SCRIPT flags
3110 https://bugs.webkit.org/show_bug.cgi?id=32245
3111 This patch was obtained by "git revert" command and then un-reverting of ChangeLog files.
3113 * Configurations/FeatureDefines.xcconfig:
3117 2009-12-07 Nikolas Zimmermann <nzimmermann@rim.com>
3119 Not reviewed. Force JS binding regeneration, eventually fixing the broken tests on the bots.
3121 * bindings/scripts/CodeGeneratorJS.pm:
3123 2009-12-07 Nikolas Zimmermann <nzimmermann@rim.com>
3125 Not reviewed. Try to fix mac builds by touching svgtags.in - I only tried from-scratch builds.
3129 2009-12-07 Gavin Barraclough <barraclough@apple.com>
3131 Reviewed by Oliver Hunt.
3133 https://bugs.webkit.org/show_bug.cgi?id=32184
3134 Handle out-of-memory conditions with JSC Ropes with a JS exception, rather than crashing.
3135 Switch from using fastMalloc to tryFastMalloc, pass an ExecState to record the exception on.
3137 * bindings/ScriptControllerBase.cpp:
3138 (WebCore::ScriptController::executeIfJavaScriptURL):
3139 * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
3140 (WebCore::toHTMLCanvasStyle):
3141 (WebCore::JSCanvasRenderingContext2D::setFillColor):
3142 (WebCore::JSCanvasRenderingContext2D::setStrokeColor):
3143 (WebCore::JSCanvasRenderingContext2D::setShadow):
3144 * bindings/js/ScriptCallStack.cpp:
3145 (WebCore::ScriptCallStack::ScriptCallStack):
3146 (WebCore::ScriptCallStack::initialize):
3147 * bindings/js/ScriptValue.cpp:
3148 (WebCore::ScriptValue::getString):
3149 * bindings/js/ScriptValue.h:
3150 * bindings/js/SerializedScriptValue.cpp:
3151 (WebCore::SerializingTreeWalker::convertIfTerminal):
3152 * bindings/objc/WebScriptObject.mm:
3153 (+[WebScriptObject _convertValueToObjcValue:originRootObject:rootObject:]):
3155 (WebCore::Console::addMessage):
3157 2009-12-07 Nikolas Zimmermann <nzimmermann@rim.com>
3159 Reviewed by Holger Hans Peter Freyther.
3161 Turn on (SVG) Filters support, by default.
3162 https://bugs.webkit.org/show_bug.cgi?id=32224
3164 Only enable filters on mac for now, skipped all affected tests on the other platforms.
3165 Will enable them one after another, to minimize breakage.
3167 * Configurations/FeatureDefines.xcconfig: Enable FILTERS build flag.
3169 2009-12-07 Kent Tamura <tkent@chromium.org>
3171 Reviewed by Darin Adler.
3173 Fix a bug that KURL rejects a host name which has an IPv4 address
3174 inside an IPv6 form like [::127.0.0.1].
3175 https://bugs.webkit.org/show_bug.cgi?id=29913
3177 * platform/KURL.cpp:
3178 (WebCore::characterClassTable): Add IPv6Char to '.'.
3180 2009-12-07 Brady Eidson <beidson@apple.com>
3182 Reviewed by Sam Weinig.
3184 <rdar://problem/7443417> - Closing a window opened with "New windows open with: Same Page" results in crash in ::~HistoryItem
3186 The HistoryItem copy constructor has one very specific use case - to support the feature of a WebView copying another WebView's
3187 BackForwardList. That constructor wasn't initializing its m_document pointer, leading to this crash in the destructor.
3189 * history/HistoryItem.cpp:
3190 (WebCore::HistoryItem::~HistoryItem): Change the setDocument(0) to an ASSERT that the document is already 0. A HistoryItem cannot
3191 outlive its Document and Documents will always clear the back-pointer in their ::detach() method.
3192 (WebCore::HistoryItem::HistoryItem): Missed the m_document initializer in the copy constructor. Also remove an invalid assertion
3193 about the original items m_cachedPage object (which is irrelevant to the copy).
3195 2009-12-07 Dmitry Titov <dimich@chromium.org>
3197 Reviewed by Darin Adler.
3199 Remove partial SharedScript implementation.
3200 https://bugs.webkit.org/show_bug.cgi?id=32237
3201 The patch was obtained by running "git revert" command and then un-reverting WebCore/ChangeLog.
3203 * DerivedSources.make:
3204 * SharedScript/SharedScriptContext.cpp: Removed.
3205 * SharedScript/SharedScriptContext.h: Removed.
3206 * SharedScript/SharedScriptContext.idl: Removed.
3207 * SharedScript/SharedScriptController.h: Removed.
3208 * SharedScript/WebKitSharedScript.cpp: Removed.
3209 * SharedScript/WebKitSharedScript.h: Removed.
3210 * SharedScript/WebKitSharedScript.idl: Removed.
3211 * SharedScript/WebKitSharedScriptRepository.cpp: Removed.
3212 * SharedScript/WebKitSharedScriptRepository.h: Removed.
3213 * WebCore.vcproj/WebCore.vcproj:
3214 * WebCore.xcodeproj/project.pbxproj:
3216 (WebCore::Document::detach):
3217 * dom/EventTarget.cpp:
3218 * dom/EventTarget.h:
3219 * dom/ScriptExecutionContext.h:
3221 2009-12-07 Alexey Proskuryakov <ap@apple.com>
3223 Reviewed by Nikolas Zimmermann.
3225 https://bugs.webkit.org/show_bug.cgi?id=32226
3226 Random crashes in WebSocket tests on Leopard Debug builbot
3228 * platform/network/SocketStreamHandleBase.cpp: (WebCore::SocketStreamHandleBase::close):
3229 Make sure the object still exists when setting m_state.
3231 2009-12-07 Shiki Okasaka <shiki@google.com>
3233 Reviewed by Dirk Schulze.
3235 Avoid zero division during SVGPaintServerPattern::setup()
3236 https://bugs.webkit.org/show_bug.cgi?id=29912
3238 Fix zero division bugs in SVGPaintServerPattern::setup() that occurred
3239 if the tile of a pattern was bigger than the pattern and the pattern
3240 size was < 0.5, and if the attribute overflow was set to visible.
3242 Test: svg/custom/small-pattern.html
3244 * svg/graphics/SVGPaintServerPattern.cpp:
3245 (WebCore::SVGPaintServerPattern::setup):
3247 2009-12-07 Kenneth Russell <kbr@google.com>
3249 Reviewed by Dimitri Glazkov.
3251 [v8] WebCore::WebGLArrayBufferInternal::byteLengthAttrGetter NULL pointer
3252 https://bugs.webkit.org/show_bug.cgi?id=31889
3254 Fixed bug in handling of zero-argument constructor call.
3256 Test: fast/canvas/webgl/bug-31889.html
3258 * bindings/v8/custom/V8WebGLArrayBufferCustom.cpp:
3259 (WebCore::CALLBACK_FUNC_DECL):
3261 2009-12-07 Gyuyoung Kim <gyuyoung@gmail.com>
3263 Reviewed by Eric Seidel.
3265 https://bugs.webkit.org/show_bug.cgi?id=32024
3266 [GTK] WebKit does not compile without JAVASCRIPT_DEBUGGER
3268 Fix build errors when javascript-debugger is disabled on GTK
3272 2009-12-07 Dan Bernstein <mitz@apple.com>
3274 Reviewed by Darin Adler.
3276 Fixed <rdar://problem/7437820> Weird selection artifacts
3278 Tests: fast/repaint/block-selection-gap-stale-cache-2.html
3279 fast/repaint/block-selection-gap-stale-cache.html
3281 Instead of caching the block selection gaps’ bounds in the RenderView at setSelection()
3282 time, cache them in each RenderLayer at paint time. This prevents the cache from getting
3283 stale due to layout changes and overflow scrolling.
3285 * rendering/RenderBlock.cpp:
3286 (WebCore::RenderBlock::selectionGapRectsForRepaint): Account for overflow scroll.
3287 (WebCore::RenderBlock::paintSelection): Update the enclosing layer’s selection gaps bounds.
3288 * rendering/RenderLayer.cpp:
3289 (WebCore::RenderLayer::addBlockSelectionGapsBounds): Added. Updates the selection gaps
3290 bounds to include the given rect.
3291 (WebCore::RenderLayer::clearBlockSelectionGapsBounds): Added. Recursively clears the cached
3292 selection gaps bounds.
3293 (WebCore::RenderLayer::repaintBlockSelectionGaps): Added. Recursively invalidates the
3294 selection gaps bounds.
3295 * rendering/RenderLayer.h:
3296 * rendering/RenderView.cpp:
3297 (WebCore::RenderView::setSelection): Clear the layer-level selection gaps bounds instead
3298 of the view-level cache.
3299 (WebCore::RenderView::clearSelection): Changed to call repaintBlockSelectionGaps().
3300 * rendering/RenderView.h:
3302 2009-12-07 Philippe Normand <pnormand@igalia.com>
3304 Reviewed by Gustavo Noronha.
3306 Fixed whitelist comment and removed useless (tags, sdp) mimetypes
3307 from it. Also, GStreamer doesn't handle directly SMIL.
3309 * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
3310 (WebCore::mimeTypeCache):
3312 2009-12-07 Joanmarie Diggs <joanmarie.diggs@gmail.com>
3314 Reviewed by Xan Lopez.
3316 https://bugs.webkit.org/show_bug.cgi?id=25415
3317 [GTK][ATK] Please implement support for get_text_at_offset
3319 Eliminate the segfaults which occur when accessing the text interface now
3320 implemented by text controls.
3322 * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
3323 (getPangoLayoutForAtk):
3325 2009-12-07 Gustavo Noronha Silva <gns@gnome.org>
3327 Reviewed by Xan Lopez.
3329 Turn the MediaPlayer supported types blacklist into a whitelist
3331 [GTK] REGRESSION: webkit thinks it can render PDFs
3332 https://bugs.webkit.org/show_bug.cgi?id=32183
3334 Covered by API test.
3336 * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
3337 (WebCore::mimeTypeCache):
3339 2009-12-07 Joanmarie Diggs <joanmarie.diggs@gmail.com>
3341 Reviewed by Xan Lopez.
3343 https://bugs.webkit.org/show_bug.cgi?id=25524
3344 [Gtk] Expose the title attribute to assistive technologies
3346 Expose 'alt' attribute from images as accessible name.
3347 Expose the 'title' core HTML attribute as accessible description.
3348 This is a modified version of the original fix submitted by Mario Sanchez Prada,
3349 adjusted so that it doesn't impact other platforms.
3351 * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
3352 (webkit_accessible_get_name):
3353 (webkit_accessible_get_description):
3355 2009-12-07 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
3357 Reviewed by Simon Hausmann.
3359 [Qt] Fix support for generic font families
3361 By not propagating the resolved font family in FontCacheQt and
3362 only concidering the font description we ended up passing the
3363 generic font families to Qt directly. Since most systems don't
3364 have a mapping for these font families we ended up using the
3365 default font in most cases.
3367 * platform/graphics/qt/FontCacheQt.cpp:
3368 * platform/graphics/qt/FontPlatformData.h:
3369 * platform/graphics/qt/FontPlatformDataQt.cpp:
3371 2009-12-06 Oliver Hunt <oliver@apple.com>
3373 Reviewed by Maciej Stachowiak.
3375 Object.getOwnPropertyDescriptor() allows cross-frame access
3376 https://bugs.webkit.org/show_bug.cgi?id=32119
3378 Make all implementations of getOwnPropertyDescriptor that have
3379 cross domain restrictions simply fail immediately on cross domain
3380 access, rather than trying to mimic the behaviour of normal
3383 Test: http/tests/security/cross-frame-access-getOwnPropertyDescriptor.html
3385 * bindings/js/JSDOMWindowCustom.cpp:
3386 (WebCore::JSDOMWindow::getOwnPropertyDescriptor):
3387 * bindings/js/JSHistoryCustom.cpp:
3388 (WebCore::JSHistory::getOwnPropertyDescriptorDelegate):
3389 * bindings/js/JSLocationCustom.cpp:
3390 (WebCore::JSLocation::getOwnPropertyDescriptorDelegate):
3391 * bindings/scripts/CodeGeneratorJS.pm:
3393 2009-12-07 Steve Block <steveblock@google.com>
3395 Reviewed by Adam Barth.
3397 Moves JSC-specific functions from jni_utility and moves them to new jsc/jni_utility_private files.
3398 https://bugs.webkit.org/show_bug.cgi?id=32157
3400 Build fix only, no new tests.
3402 * WebCore.xcodeproj/project.pbxproj: Modified. Add jni_utility_private.[cpp|h].
3403 * bridge/jni/jni_instance.cpp: Modified. Include jni_utility_private.h for JSC.
3404 * bridge/jni/jni_jsobject.mm: Modified. Include jni_utility_private.h for JSC.
3405 * bridge/jni/jni_objc.mm: Modified. Include jni_utility_private.h for JSC.
3406 * bridge/jni/jni_runtime.cpp: Modified. Include jni_utility_private.h for JSC.
3407 * bridge/jni/jni_utility.cpp: Modified. Removed convertValueToJValue and convertArrayInstanceToJavaArray.
3408 * bridge/jni/jni_utility.h: Modified. Removed convertValueToJValue and dispatchJNICall.
3409 * bridge/jni/jsc: Added.
3410 * bridge/jni/jsc/jni_utility_private.cpp: Added.
3411 (JSC::Bindings::convertArrayInstanceToJavaArray):
3412 (JSC::Bindings::convertValueToJValue):
3413 * bridge/jni/jsc/jni_utility_private.h: Added. Header for convertValueToJValue and dispatchJNICall.
3414 * platform/android/TemporaryLinkStubs.cpp: Modified. Include jni_utility_private.h for JSC.
3416 2009-12-06 Oliver Hunt <oliver@apple.com>
3418 Reviewed by Maciej Stachowiak.
3420 texImage2D pixel junk for transparency
3421 https://bugs.webkit.org/show_bug.cgi?id=32188
3423 Use kCGBlendModeCopy when drawing an image to the intermediate context
3424 used to create a GL texture.
3426 No test as we don't currently have any mechanism to retrieve pixel data
3427 from the webgl context.
3429 * platform/graphics/mac/GraphicsContext3DMac.cpp:
3430 (WebCore::imageToTexture):
3432 2009-12-03 Philippe Normand <pnormand@igalia.com>
3434 Reviewed by Gustavo Noronha.
3436 Advertize audio/ogg correctly and refactored mime-type cache
3439 [GTK] Recognize oga as audio/ogg
3440 https://bugs.webkit.org/show_bug.cgi?id=31990
3442 Test: media/media-can-play-ogg.html
3444 * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
3445 (WebCore::mimeTypeCache):
3447 2009-12-05 Alexey Proskuryakov <ap@apple.com>
3449 Reviewed by Eric Seidel.
3451 https://bugs.webkit.org/show_bug.cgi?id=32175
3452 REGRESSION: websocket/tests/url-parsing.html is crashing on Leopard Bot
3454 * platform/network/cf/SocketStreamHandleCFNet.cpp:
3455 (WebCore::SocketStreamHandle::readStreamCallback): Call platformClose() to unschedule both
3456 streams, guaranteeing that there will be no callbacks after SocketStreamHandle is destroyed.
3457 (WebCore::SocketStreamHandle::writeStreamCallback): Edited a comment a bit.
3459 2009-12-05 Adam Langley <agl@google.com>
3461 Reviewed by Adam Barth.
3463 Check that a CSS format() argument is of a valid type.
3465 https://bugs.webkit.org/show_bug.cgi?id=31815
3466 http://code.google.com/p/chromium/issues/detail?id=28582
3468 Test: fast/css/url-format-non-string.html
3470 * css/CSSParser.cpp:
3471 (WebCore::CSSParser::parseFontFaceSrc):
3473 2009-12-04 Adam Langley <agl@google.com>
3475 Reviewed by Eric Seidel.
3477 Chromium: make rounded borders heavier.
3479 Skia draws its rounded corners differently from the other ports.
3480 Whereas they have anti-aliased clipping regions, Skia only has 1-bit
3481 regions. (Which is technically more correct, but somewhat unhelpful
3482 for us.) Instead, with Skia we use a layer and collect all the
3483 clipping paths in effect. When the state is popped, we paint
3484 transparency outside the clipping paths and merge the layer down.
3486 This appears to cause rounded borders to look a little thin, which is
3487 addressed in this patch.
3489 This is well covered by existing tests but will require new baselines
3490 in the Chromium tree.
3492 https://bugs.webkit.org/show_bug.cgi?id=31778
3494 * platform/graphics/skia/GraphicsContextSkia.cpp:
3495 (WebCore::GraphicsContext::addInnerRoundedRectClip):
3497 2009-12-04 Simon Fraser <simon.fraser@apple.com>
3499 Reviewed by Dan Bernstein.
3501 <rdar://problem/7441571> Hardware-backed layers are skipped when printing
3503 When printing, set the PaintBehaviorFlattenCompositingLayers flag so that compositing layers
3504 paint. This also causes 3D transforms to be flattened to 2D.
3506 Test: printing/compositing-layer-printing.html
3508 * page/FrameView.cpp:
3509 (WebCore::FrameView::paintContents):
3511 2009-12-04 Oliver Hunt <oliver@apple.com>
3513 Reviewed by Beth Dakin.
3515 Fix up some issues in my SVGListTraits change from yesterday.
3517 * svg/SVGListTraits.h:
3520 2009-12-04 Albert J. Wong <ajwong@chromium.org>
3522 Not reviewed: chromium build fix.
3524 Fix Chromium build break caused by moving of isDefaultPortForProtocol() and
3525 portAllowed() into KURL.h/KURL.cpp. Cloning code.
3527 * platform/KURLGoogle.cpp:
3528 (WebCore::isDefaultPortForProtocol):
3529 (WebCore::portAllowed):
3531 2009-12-04 Pavel Feldman <pfeldman@chromium.org>
3533 Reviewed by Timothy Hatcher.
3535 Web Inspector: Remove suppress highlight when restoring selected node.
3537 https://bugs.webkit.org/show_bug.cgi?id=32152
3539 * inspector/front-end/ElementsPanel.js:
3540 (WebInspector.ElementsPanel.prototype.setDocument.selectNode):
3541 (WebInspector.ElementsPanel.prototype.setDocument.selectLastSelectedNode):
3542 (WebInspector.ElementsPanel.prototype.setDocument):
3544 2009-12-04 Dirk Schulze <krit@webkit.org>
3546 Reviewed by Nikolas Zimmermann.
3548 Gradient SVG animation demonstrates tearing at animation extremes
3549 https://bugs.webkit.org/show_bug.cgi?id=11929
3551 The focalPoint of a radial gradient is temporarly substracted by
3552 the centralPoint, if the focalPoint is not in the radius of the
3553 gradient. This is needed to calculate a new postion of the focalPoint
3554 according to the specification. But the new focalPoint needs to be
3555 moved by the centralPoint after this calculation, which is not the case
3556 at the moment. This patch fixes this issue. It was also introduced a
3557 deviation of maximal 0.2% for Cairo to get around the fixed point numbers
3560 W3C-SVG-1.1/pservers-grad-13-b needed an update. The missing adjustment
3561 of the new focalPoint caused wrong results for the last three tests.
3563 Test: svg/custom/radial-gradient-with-outstanding-focalPoint.svg
3565 * svg/SVGRadialGradientElement.cpp:
3566 (WebCore::SVGRadialGradientElement::buildGradient):
3568 2009-12-04 Anton Muhin <antonm@chromium.org>
3570 Reviewed by Dmitry Titov.
3572 Do not use WebCore::String::String(const UChar*, int length) to convert
3575 Plus added string traits.
3576 https://bugs.webkit.org/show_bug.cgi?id=31415
3578 * bindings/v8/V8Binding.cpp:
3580 (WebCore::v8StringToWebCoreString):
3582 2009-12-04 Chris Fleizach <cfleizach@apple.com>
3584 Reviewed by Darin Adler.
3586 REGRESSION: AX: buttons now extremely repetitive
3587 https://bugs.webkit.org/show_bug.cgi?id=32164
3589 Test: platform/mac/accessibility/button-shouldnot-have-axvalue.html
3591 * accessibility/AccessibilityObject.h:
3592 (WebCore::AccessibilityObject::isButton):
3593 * accessibility/mac/AccessibilityObjectWrapper.mm:
3594 (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
3596 2009-12-04 Zoltan Herczeg <zherczeg@inf.u-szeged.hu>
3598 Reviewed by Darin Adler.
3600 Check whether the right side of a string append is non-empty
3601 https://bugs.webkit.org/show_bug.cgi?id=32151
3603 Especially beneficial for CachedScript::script() method
3604 which usually appends an empty string returned by flush()
3605 to its m_script member. m_script is often hundreds of kbytes
3606 which is duplated without reason.
3608 * platform/text/String.cpp:
3609 (WebCore::String::append):
3611 2009-12-04 Enrica Casucci <enrica@apple.com>
3613 Reviewed by John Sullivan.
3615 Mail.app crashes when indenting table pasted from Numbers.app.
3616 <rdar://problem/7209507>
3617 https://bugs.webkit.org/show_bug.cgi?id=32166
3619 Test: LayoutTests/editing/execCommand/indent-partial-table.html
3621 * editing/IndentOutdentCommand.cpp:
3622 (WebCore::IndentOutdentCommand::indentRegion): Added test to verify that the end of the paragraph
3623 after the selection has not been moved.
3625 2009-12-04 Alexey Proskuryakov <ap@apple.com>
3627 Reviewed by Darin Adler.
3629 https://bugs.webkit.org/show_bug.cgi?id=32085
3630 WebSocket should block the same ports that are blocked for resource loading
3632 Test: websocket/tests/url-parsing.html
3634 * page/SecurityOrigin.cpp:
3635 (WebCore::SecurityOrigin::SecurityOrigin):
3636 (WebCore::SecurityOrigin::localURLSchemes):
3637 * page/SecurityOrigin.h:
3638 Move isDefaultPortForProtocol() to KURL, because that's a better place for it (SecurityOrigin
3639 is not even in WebCore/platform directory).
3641 * html/HTMLAnchorElement.cpp:
3642 (WebCore::HTMLAnchorElement::host):
3643 (WebCore::HTMLAnchorElement::setHost):
3644 (WebCore::HTMLAnchorElement::setPort):
3645 Updated for the new location of isDefaultPortForProtocol().
3647 * platform/KURL.cpp:
3648 (WebCore::KURL::protocolIs): In an assertion, compare to "javascript" case-insensitively,
3649 since the function doesn't require lower case input.
3650 (WebCore::isDefaultPortForProtocol): Moved from SecurityOrigin.
3651 (WebCore::portAllowed): Moved from ResourceHandle.
3654 * platform/network/ResourceHandle.cpp: (WebCore::ResourceHandle::create): Updated for the
3655 new location of portAllowed().
3657 * websockets/WebSocket.cpp: (WebCore::WebSocket::connect): Per the spec, raise a SECURITY_ERR
3658 if trying to connect to a blocked port.
3660 2009-12-04 Benjamin Poulain <benjamin.poulain@nokia.com>
3662 Reviewed by Kenneth Rohde Christiansen.
3664 [Qt] WebKit crashes when loading certain SVG images
3665 https://bugs.webkit.org/show_bug.cgi?id=29443
3667 Remove FontFallbackListQt and rely on the common FontFallbackList
3668 to handle the fonts. FontCache and FontPlatformData have been
3669 updated to work with the common FontFallbackList.
3671 In the previous implementation, FontPlatformDataCacheKey
3672 was a clone of FontPlatformData with the hashing
3673 capabilities added in order to use it as a key in the cache's
3674 hashmap. FontPlatformData has been modified to handle the hashing
3675 function directly so the data are not copied twice in memory.
3677 FontFallbackList::fontDataAt() from FontFallbackListQt was a copy of
3678 code from FontCache::getFontData() and FontFallbackList::fontDataAt().
3679 The behavior is similar except currFamily->family().length() was
3680 not tested and the fallback fonts selector were not used.
3682 Existing tests cover the change.
3685 * platform/graphics/qt/FontCacheQt.cpp:
3686 (WebCore::FontCache::platformInit):
3687 (WebCore::FontCache::getFontDataForCharacters):
3688 (WebCore::FontCache::getSimilarFontPlatformData):
3689 (WebCore::FontCache::getLastResortFallbackFont):
3690 (WebCore::FontCache::getTraitsInFamily):
3691 (WebCore::FontCache::createFontPlatformData):
3692 * platform/graphics/qt/FontCustomPlatformData.cpp:
3693 (WebCore::FontCustomPlatformData::fontPlatformData):
3694 * platform/graphics/qt/FontFallbackListQt.cpp:
3695 Removed. We now use the implementation from FontFallbackList.cpp
3696 * platform/graphics/qt/FontPlatformData.h:
3697 Add hashing capabilities to be able to use the data with the FontCache.
3698 This was previously done in FontCacheQt.cpp
3699 (WebCore::FontPlatformDataPrivate::FontPlatformDataPrivate):
3700 (WebCore::FontPlatformData::FontPlatformData):
3701 (WebCore::FontPlatformData::isHashTableDeletedValue):
3702 (WebCore::FontPlatformData::font):
3703 (WebCore::FontPlatformData::size):
3704 (WebCore::FontPlatformData::family):
3705 (WebCore::FontPlatformData::bold):
3706 (WebCore::FontPlatformData::italic):
3707 (WebCore::FontPlatformData::smallCaps):
3708 (WebCore::FontPlatformData::pixelSize):
3709 * platform/graphics/qt/FontPlatformDataQt.cpp: