summaryrefslogtreecommitdiffstats
path: root/Source/WebCore/html
Commit message (Collapse)AuthorAgeFilesLines
* DOM OptimizationsNaiem Shaik2013-01-2027-142/+329
| | | | | | | | | | | | DOM traversal optimizations DOM Core optimizations Prefetch optimization for DOM Tree Traversal Conflicts: Source/WebKit/android/jni/WebViewCore.cpp Change-Id: Icbb8a7229ee9cff1a5401b57c8181f18b9a6d6e0
* Improve WebGL object lifetime management in WebGLRenderingContextZhenyao Mo2013-01-204-89/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2011-06-30 Zhenyao Mo <zmo@google.com> Reviewed by Kenneth Russell. Improve WebGL object lifetime management in WebGLRenderingContext https://bugs.webkit.org/show_bug.cgi?id=63635 * fast/canvas/webgl/gl-object-get-calls-expected.txt: * fast/canvas/webgl/gl-object-get-calls.html: Fix a bug so getFramebufferAtatchmentParameter generates an error if nothing is attached and something other than TYPE is queried. * fast/canvas/webgl/object-deletion-behaviour-expected.txt: * fast/canvas/webgl/object-deletion-behaviour.html: Ditto. * fast/canvas/webgl/program-test.html: Fix the test so the order of shaders returned by getAttachedShaders doesn't matter. 2011-06-30 Zhenyao Mo <zmo@google.com> Reviewed by Kenneth Russell. Improve WebGL object lifetime management in WebGLRenderingContext https://bugs.webkit.org/show_bug.cgi?id=63635 * html/canvas/WebGLRenderingContext.cpp: (WebCore::WebGLRenderingContext::getAttachedShaders): Use cached objects instead of querying the underlying GL. (WebCore::WebGLRenderingContext::getFramebufferAttachmentParameter): Ditto. (WebCore::WebGLRenderingContext::detachAndRemoveAllObjects): Multiple loop because objects might be removed from the table within an iteration. * html/canvas/WebGLRenderingContext.h: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@90180 268f45cc-cd09-0410-ab3c-d52691b4dbfc CRs-fixed: 407009 (cherry-picked from commit 2dbba5d5facb2c0c57a37eb0cf3958bae0f697fa) Change-Id: I2cb88cc5790452c18f6e58420cc7b063c9ffce26
* WebGL implementation for AndroidPierre-Antoine LaFayette2013-01-2034-292/+1106
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Implementation of WebGL in Android WebKit. Exposes a low level 3D graphics API based on OpenGL ES 2.0 to JavaScript. WebGL is not compiled by default. It can be enabled by setting ENABLE_WEBGL = true in your device BoardConfig.mk or directly in external/webkit/Android.mk. Includes runtime enablement through Browser Settings -> Labs menu. Enable WebGL debug logs and FPS timing with: adb shell setprop debug.webgl 1 Includes Cross-origin resource sharing support. Includes fixes for the following Khronos WebGL 1.0.1. tests: - premultiplyalpha-test.html - struct-nesting-exceeds-maximum.html - index-validation.html - context-attributes-alpha-depth-stencil-antialias.html - program-test.html - object-deletion-behaviour.html Squashed patches: ----------------------------------------------------------- WebGL implementation for Android Implementation of WebGL in Android WebKit. Exposes a low level 3D graphics API based on OpenGL ES 2.0 to JavaScript. WebGL is not compiled by default. It can be enabled by setting ENABLE_WEBGL = true in your device BoardConfig.mk or directly in external/webkit/Android.mk. It is also disabled by default (in WebSettings.cpp) as required by Khronos until it reaches 100% conformance. -- From: Anders Edenbrandt <anders.edenbrandt@sonyericsson.com> Date: Thu, 26 Jan 2012 11:48:41 +0100 WebGL bug fixes and updates Some updates: - stability fixes - image decoder - redesign of how the FBOs are used - other bug fixes -- From: Anders Edenbrandt <anders.edenbrandt@sonyericsson.com> Date: Tue, 31 Jan 2012 17:20:13 +0100 WebGL code cleanup and bug fixes -- From: Anders Edenbrandt <anders.edenbrandt@sonyericsson.com> Date: Thu Mar 15 10:15:33 2012 +0100 More improvements and bug fixes Updates: - cleaned up buffer handling, allowing for arbitrary number of buffers - removed rect from invalidation - removed screen update request from drawGL - releasing buffers when the browser is paused - added missing method 'slice' for typed arrays - fixed bug in bindFramebuffer https://www.codeaurora.org/gitweb/quic/la/?p=platform/external/webkit.git;a=commit;h=c72ff2aa562941d94ceb51ba685d60809ca882a6 Updates to fix some test failures in Khronos Conformance Test Suite: - Increase max identifier length in shaders to 256 - Add length check on uniforms and attributes - Add minimal support for compressed textures (that is, just return the correct error codes) - Add support for Uint8ClampedByteArray - Modify how error checking is done on framebuffer operations - Activate the GL_OES_packed_depth_stencil extension - Activate the GL_OES_texture_float extension https://www.codeaurora.org/gitweb/quic/la/?p=platform/external/webkit.git;a=commit;h=5bfe05848c12a2894697fbb503cfa79981eb96bd Fix WebGL 1.0.1 premultiplyalpha-test conformance test Fixing bug with toDataURL when called against a Canvas in which WebGL content is being rendered and make sure paintRenderingResultsToImageData isn't used for the premultiplied case. ihttps://www.codeaurora.org/gitweb/quic/la/?p=platform/external/webkit.git;a=commit;h=5834a1e00f89d898a7a0039d47916b196e40a2c8 Update ANGLE to r1009 to fix WebGL 1.0.1 conformance test Fixes struct-nesting-exceeds-maximum Khronos WebGL conformance test. https://www.codeaurora.org/gitweb/quic/la/?p=platform/external/webkit.git;a=commit;h=ae2392db6360b41a5717f3770a9e63b1bcea45d6 vertexAttribPointer needs to reject large negative offsets https://bugs.webkit.org/show_bug.cgi?id=85117 Reviewed by Kenneth Russell. Source/WebCore: * html/canvas/WebGLRenderingContext.cpp: Use long long for GLsizeiptr and GLintptr (WebCore): (WebCore::WebGLRenderingContext::bufferData): (WebCore::WebGLRenderingContext::bufferSubData): (WebCore::WebGLRenderingContext::drawElements): (WebCore::WebGLRenderingContext::getVertexAttribOffset): (WebCore::WebGLRenderingContext::vertexAttribPointer): * html/canvas/WebGLRenderingContext.h: Ditto (WebGLRenderingContext): * html/canvas/WebGLRenderingContext.idl: Ditto LayoutTests: * fast/canvas/webgl/index-validation-expected.txt: * fast/canvas/webgl/index-validation.html: Add a test case for large negative offset. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@116374 268f45cc-cd09-0410-ab3c-d52691b4dbfc https://www.codeaurora.org/gitweb/quic/la/?p=platform/external/webkit.git;a=commit;h=b3a02a0942a0e2c44d23961382145fad6016b2ef Fix for context-attributes-alpha-depth-stencil-antialias Support for alpha, depth and stencil to fix WebGL Khronos 1.0.1 conformance test. Report back that antialiasing is not supported on our platform. https://www.codeaurora.org/gitweb/quic/la/?p=platform/external/webkit.git;a=commit;h=22e98195ac73e7e12a59d5b9a42dfc4e2252b475 WebGLRenderingContext should defer caching program info https://bugs.webkit.org/show_bug.cgi?id=83513 Reviewed by Kenneth Russell. * html/canvas/WebGLProgram.cpp: (WebCore::WebGLProgram::WebGLProgram): (WebCore::WebGLProgram::numActiveAttribLocations): call cacheInfoIfNeeded(); (WebCore::WebGLProgram::getActiveAttribLocation): Ditto. (WebCore::WebGLProgram::isUsingVertexAttrib0): Ditto. (WebCore::WebGLProgram::getLinkStatus): Ditto. (WebCore): (WebCore::WebGLProgram::cacheActiveAttribLocations): (WebCore::WebGLProgram::cacheInfoIfNeeded): Cache link status, active attire locations, etc if needed. (WebCore::WebGLProgram::increaseLinkCount): also invalidate cached info. * html/canvas/WebGLProgram.h: (WebGLProgram): * html/canvas/WebGLRenderingContext.cpp: (WebCore): (WebCore::WebGLRenderingContext::linkProgram): Do not cache program info immediately. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@113915 268f45cc-cd09-0410-ab3c-d52691b4dbfc https://www.codeaurora.org/gitweb/quic/la/?p=platform/external/webkit.git;a=commit;h=66bc9c1b9eb5151b1b236199d0eeb17df0557b47 Runtime enablement of WebGL Hooks up with the Java side to enable/disable WebGL through the debug menu. https://www.codeaurora.org/gitweb/quic/la/?p=platform/external/webkit.git;a=commit;h=75aab57859de45a0aaec5a7cad41a12111e9a82e Support the usage of CORS for WebGL and the 2D canvas Factor CORS request preparation out of DocumentThreadableLoader https://bugs.webkit.org/show_bug.cgi?id=61209 2011-05-20 Adam Barth <abarth@webkit.org> Reviewed by Alexey Proskuryakov. Factor CORS request preparation out of DocumentThreadableLoader https://bugs.webkit.org/show_bug.cgi?id=61209 DocumentThreadableLoader has two jobs: 1) Proxy loads between threads. 2) Run the CORS state machine. This patch begins the work of separating those concerns, allowing CORS to be used elsewhere in the loading pipeline. In particular, this patch moves knowledge of how to prepare CORS requests out of DocumentThreadableLoder. * loader/CrossOriginAccessControl.cpp: (WebCore::isOnAccessControlSimpleRequestHeaderWhitelist): (WebCore::updateRequestForAccessControl): (WebCore::createAccessControlPreflightRequest): * loader/CrossOriginAccessControl.h: * loader/DocumentThreadableLoader.cpp: (WebCore::DocumentThreadableLoader::DocumentThreadableLoader): (WebCore::DocumentThreadableLoader::makeSimpleCrossOriginAccessRequest): (WebCore::DocumentThreadableLoader::makeCrossOriginAccessRequestWithPreflight): git-svn-id: http://svn.webkit.org/repository/webkit/trunk@86980 268f45cc-cd09-0410-ab3c-d52691b4dbfc Add rel type prerender to distinguish prerender from prefetch https://bugs.webkit.org/show_bug.cgi?id=61079 2011-05-21 Gavin Peters <gavinp@chromium.org> Reviewed by Adam Barth. Add rel type prerender to distinguish prerender from prefetch https://bugs.webkit.org/show_bug.cgi?id=61079 Chrome right now uses <link rel=prefetch ...> for one of two things, to warm the cache in the same way as firefox, or to launch a speculative rendering of a web page, for faster "loading" when the user navigates to it. This new rel type will let us distinguish the two cases; the rel type prerender isn't used on the web today, but the Google Web Search example prerendering application is ready to experiment with it. * fast/dom/HTMLLinkElement/prerender-expected.txt: Added. * fast/dom/HTMLLinkElement/prerender.html: Added. * platform/gtk/Skipped: * platform/mac/Skipped: * platform/qt/Skipped: * platform/win/Skipped: 2011-05-21 Gavin Peters <gavinp@chromium.org> Reviewed by Adam Barth. Add rel type prerender to distinguish prerender from prefetch https://bugs.webkit.org/show_bug.cgi?id=61079 Chrome right now uses <link rel=prefetch ...> for one of two things, to warm the cache in the same way as firefox, or to launch a speculative rendering of a web page, for faster "loading" when the user navigates to it. This new rel type will let us distinguish the two cases; the rel type prerender isn't used on the web today, but the Google Web Search example prerendering application is ready to experiment with it. Test: fast/dom/HTMLLinkElement/prerender.html * html/HTMLLinkElement.cpp: (WebCore::HTMLLinkElement::tokenizeRelAttribute): (WebCore::HTMLLinkElement::process): * html/HTMLLinkElement.h: (WebCore::HTMLLinkElement::RelAttribute::RelAttribute): * loader/cache/CachedResource.cpp: (WebCore::defaultPriorityForResourceType): * loader/cache/CachedResource.h: (WebCore::CachedResource::isLinkResource): * loader/cache/CachedResourceLoader.cpp: (WebCore::createResource): (WebCore::CachedResourceLoader::requestLinkResource): (WebCore::CachedResourceLoader::canRequest): * loader/cache/CachedResourceLoader.h: * loader/cache/CachedResourceRequest.cpp: (WebCore::cachedResourceTypeToTargetType): (WebCore::CachedResourceRequest::load): * platform/network/ResourceRequestBase.h: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@87020 268f45cc-cd09-0410-ab3c-d52691b4dbfc Make CachedResource take a ResourceRequest instead of just a url string. 2011-05-24 Nate Chapin <japhet@chromium.org> Reviewed by Adam Barth. Change CachedResources to take a ResourceRequest instead of a url in their constructors and provide a very minimal set of cases for avoiding reusing a CachedResource. The ResourceRequest part of this change requires pushing responsibility for calling Document::completeURL() to the caller, instead of CachedResourceLoader, since ResourceRequest ASSERTs if it is constructed with an invalid url. https://bugs.webkit.org/show_bug.cgi?id=61318 Refactor, no new tests. * css/CSSFontSelector.cpp: (WebCore::CSSFontSelector::addFontFaceRule): * css/CSSImageValue.cpp: (WebCore::CSSImageValue::cachedImage): * css/CSSImportRule.cpp: (WebCore::CSSImportRule::insertedIntoParent): * dom/ProcessingInstruction.cpp: (WebCore::ProcessingInstruction::checkStyleSheet): * dom/ScriptElement.cpp: (WebCore::ScriptElement::requestScript): * html/HTMLLinkElement.cpp: (WebCore::HTMLLinkElement::process): * loader/ImageLoader.cpp: (WebCore::ImageLoader::updateFromElement): * loader/cache/CachedCSSStyleSheet.cpp: (WebCore::CachedCSSStyleSheet::CachedCSSStyleSheet): (WebCore::CachedCSSStyleSheet::didAddClient): (WebCore::CachedCSSStyleSheet::checkNotify): * loader/cache/CachedCSSStyleSheet.h: * loader/cache/CachedFont.cpp: (WebCore::CachedFont::CachedFont): * loader/cache/CachedFont.h: * loader/cache/CachedImage.cpp: (WebCore::CachedImage::CachedImage): (WebCore::CachedImage::checkShouldPaintBrokenImage): * loader/cache/CachedImage.h: * loader/cache/CachedResource.cpp: (WebCore::CachedResource::CachedResource): (WebCore::reuseRequest): (WebCore::CachedResource::allowReuseOfRequest): (WebCore::CachedResource::removeClient): (WebCore::CachedResource::canUseCacheValidator): * loader/cache/CachedResource.h: (WebCore::CachedResource::resourceRequest): (WebCore::CachedResource::url): * loader/cache/CachedResourceLoader.cpp: * loader/cache/CachedResourceLoader.h: * loader/cache/CachedResourceRequest.cpp: (WebCore::CachedResourceRequest::load): * loader/cache/CachedScript.cpp: (WebCore::CachedScript::CachedScript): * loader/cache/CachedScript.h: * loader/cache/CachedXSLStyleSheet.cpp: (WebCore::CachedXSLStyleSheet::CachedXSLStyleSheet): (WebCore::CachedXSLStyleSheet::didAddClient): (WebCore::CachedXSLStyleSheet::checkNotify): * loader/cache/CachedXSLStyleSheet.h: * svg/SVGFEImageElement.cpp: (WebCore::SVGFEImageElement::requestImageResource): * svg/SVGFontFaceUriElement.cpp: (WebCore::SVGFontFaceUriElement::loadFont): * xml/XSLImportRule.cpp: (WebCore::XSLImportRule::loadSheet): git-svn-id: http://svn.webkit.org/repository/webkit/trunk@87239 268f45cc-cd09-0410-ab3c-d52691b4dbfc Support cross-origin property for images 2011-05-26 Adam Barth <abarth@webkit.org> Reviewed by Eric Seidel. Support cross-origin property for images https://bugs.webkit.org/show_bug.cgi?id=61015 Test various cases involving CORS requests and canvas tainting. * http/tests/security/canvas-remote-read-remote-image-allowed-expected.txt: Added. * http/tests/security/canvas-remote-read-remote-image-allowed-with-credentials-expected.txt: Added. * http/tests/security/canvas-remote-read-remote-image-allowed-with-credentials.html: Added. * http/tests/security/canvas-remote-read-remote-image-allowed.html: Added. * http/tests/security/canvas-remote-read-remote-image-blocked-no-crossorigin-expected.txt: Added. * http/tests/security/canvas-remote-read-remote-image-blocked-no-crossorigin.html: Added. * http/tests/security/resources/abe-allow-credentials.php: Added. * http/tests/security/resources/abe-allow-star.php: Added. 2011-05-26 Adam Barth <abarth@webkit.org> Reviewed by Eric Seidel. Support cross-origin property for images https://bugs.webkit.org/show_bug.cgi?id=61015 This patch add support for the crossorigin attribute of images and teaches 2D canvas to respect that flag and not taint a canvas if the image drawn on the canvas is allowed by CORS. While I was editing this code, I couldn't resist a couple touch-up changes. Tests: http/tests/security/canvas-remote-read-remote-image-allowed-with-credentials.html http/tests/security/canvas-remote-read-remote-image-allowed.html http/tests/security/canvas-remote-read-remote-image-blocked-no-crossorigin.html * html/HTMLAttributeNames.in: * html/HTMLCanvasElement.cpp: (WebCore::HTMLCanvasElement::securityOrigin): * html/HTMLCanvasElement.h: * html/HTMLImageElement.idl: * html/canvas/CanvasRenderingContext.cpp: (WebCore::CanvasRenderingContext::checkOrigin): * html/canvas/CanvasRenderingContext2D.cpp: (WebCore::CanvasRenderingContext2D::createPattern): * loader/ImageLoader.cpp: (WebCore::ImageLoader::updateFromElement): * loader/cache/CachedResource.cpp: (WebCore::CachedResource::passesAccessControlCheck): * loader/cache/CachedResource.h: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@87473 268f45cc-cd09-0410-ab3c-d52691b4dbfc HTMLVideoElement::currentSrc() should return a KURL 2011-05-27 Adam Barth <abarth@webkit.org> Reviewed by Eric Seidel. HTMLVideoElement::currentSrc() should return a KURL https://bugs.webkit.org/show_bug.cgi?id=61578 I suspect we got into this mess because the author of this code didn't know about the URL attribute in WebKit IDL, which is super useful! Bad news: The line of code in question seems to have another bug, which I've documented in a FIXME. Let the yak shaving continue! * html/HTMLMediaElement.cpp: (WebCore::urlForLogging): (WebCore::HTMLMediaElement::loadResource): (WebCore::HTMLMediaElement::isSafeToLoadURL): (WebCore::HTMLMediaElement::selectNextSourceChild): (WebCore::HTMLMediaElement::getPluginProxyParams): * html/HTMLMediaElement.h: (WebCore::HTMLMediaElement::currentSrc): (WebCore::HTMLMediaElement::currentURL): * html/canvas/CanvasRenderingContext.cpp: (WebCore::CanvasRenderingContext::checkOrigin): * rendering/HitTestResult.cpp: (WebCore::HitTestResult::absoluteMediaURL): - This complete URL call was unnecessary because currentSrc is already absolute. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@87539 268f45cc-cd09-0410-ab3c-d52691b4dbfc Disallow use of cross-domain media (images, video) in WebGL 2011-06-09 Kenneth Russell <kbr@google.com> Reviewed by Adam Barth. Disallow use of cross-domain media (images, video) in WebGL https://bugs.webkit.org/show_bug.cgi?id=62257 Updated WebGL implementation to track recent spec updates in this area. Tests: http/tests/security/webgl-remote-read-remote-image-allowed-with-credentials.html http/tests/security/webgl-remote-read-remote-image-allowed.html http/tests/security/webgl-remote-read-remote-image-blocked-no-crossorigin.html * html/canvas/CanvasRenderingContext.cpp: (WebCore::CanvasRenderingContext::wouldTaintOrigin): (WebCore::CanvasRenderingContext::checkOrigin): * html/canvas/CanvasRenderingContext.h: (WebCore::CanvasRenderingContext::checkOrigin): * html/canvas/WebGLRenderingContext.cpp: (WebCore::WebGLRenderingContext::readPixels): (WebCore::WebGLRenderingContext::texImage2D): (WebCore::WebGLRenderingContext::videoFrameToImage): (WebCore::WebGLRenderingContext::texSubImage2D): * html/canvas/WebGLRenderingContext.h: 2011-06-09 Kenneth Russell <kbr@google.com> Reviewed by Adam Barth. Disallow use of cross-domain media (images, video) in WebGL https://bugs.webkit.org/show_bug.cgi?id=62257 Updated origin-clean-conformance.html to track upstream version in Khronos repository. Added new layout tests mirroring those added in bug 61015 which verify that new CORS support for images is working in the context of WebGL. Verified new tests in WebKit and Chromium. Skipped tests on platforms where WebGL is disabled. * http/tests/canvas/webgl/origin-clean-conformance-expected.txt: * http/tests/canvas/webgl/origin-clean-conformance.html: * http/tests/security/webgl-remote-read-remote-image-allowed-expected.txt: Added. * http/tests/security/webgl-remote-read-remote-image-allowed-with-credentials-expected.txt: Added. * http/tests/security/webgl-remote-read-remote-image-allowed-with-credentials.html: Added. * http/tests/security/webgl-remote-read-remote-image-allowed.html: Added. * http/tests/security/webgl-remote-read-remote-image-blocked-no-crossorigin-expected.txt: Added. * http/tests/security/webgl-remote-read-remote-image-blocked-no-crossorigin.html: Added. * platform/gtk/Skipped: * platform/mac-leopard/Skipped: * platform/mac-wk2/Skipped: * platform/qt/Skipped: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@88489 268f45cc-cd09-0410-ab3c-d52691b4dbfc https://www.codeaurora.org/gitweb/quic/la/?p=platform/external/webkit.git;a=commit;h=0ddd7c1d91c08fbee6c99b79fa9971a7ac914384 Runtime enablement of WebGL logs Allows enabling WebGL method level logging using: adb shell setprop debug.webgl 1 https://www.codeaurora.org/gitweb/quic/la/?p=platform/external/webkit.git;a=commit;h=307d4a2b5b20f2609497ceaea1eca2e29a8a781f Adding WebGL FPS timing to logs Samples WebGL average FPS every 15 frames and outputs to WebGL debug log. TODO: Add setting to browser debug settings that overlays FPS on web pages. Postpone deleteRenderbuffer/deleteTexture until all framebuffer attachment points are removed. https://bugs.webkit.org/show_bug.cgi?id=74741 Reviewed by Kenneth Russell. Source/WebCore: Use WebGLObject's attachment count mechanism to track if a renderbuffer/texture is still attached to framebuffers, and if its deletion should be delated or not. * html/canvas/WebGLFramebuffer.cpp: (WebCore::WebGLFramebuffer::setAttachmentForBoundFramebuffer): (WebCore::WebGLFramebuffer::getAttachment): (WebCore::WebGLFramebuffer::removeAttachmentFromBoundFramebuffer): (WebCore::WebGLFramebuffer::deleteObjectImpl): (WebCore::WebGLFramebuffer::isBound): * html/canvas/WebGLFramebuffer.h: LayoutTests: * fast/canvas/webgl/object-deletion-behaviour-expected.txt: * fast/canvas/webgl/object-deletion-behaviour.html: synced with khronos side. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@103272 268f45cc-cd09-0410-ab3c-d52691b4dbfc https://www.codeaurora.org/gitweb/quic/la/?p=platform/external/webkit.git;a=commit;h=9def386340c74f2a745fb041b1cb11daa30d1a82 ----------------------------------------------------------- (cherry-picked from commit 6d9d732ff06a6b265d02b18d7034068a68ef0fde) Conflicts: Android.mk Source/WebCore/ChangeLog Change-Id: I3bbf993fe5a3d6cea53e019c8fa3912ecd2bd429
* DO NOT MERGE. Allow numeric entry fields to have placeholder text.George Mount2012-08-021-0/+4
| | | | | | Bug 6712551 Change-Id: I0e43bb223dc2646d6d78f6135f502b75066e6449
* Support autoplay attribute for media element, with optional gesture requirement.Teng-Hui Zhu2012-07-241-1/+4
| | | | | | bug:6806306 Change-Id: I09a7494278be5631d64d125390559058682386d1
* add webSetting API to allow media play without user gestureTeng-Hui Zhu2012-07-181-3/+3
| | | | | | | | | | bug:6806306 This also include partial change from webkit. http://trac.webkit.org/changeset/91232 Framework change: https://android-git.corp.google.com/g/#/c/208569/ Change-Id: I1a843472c0ce3b01bcad3b7c3c12c93702f2970c
* Clear the player even when completelyLoadedTeng-Hui Zhu2012-07-171-1/+4
| | | | | | | | Clear will only happen when the player is stopped and we are moving away from the current page. bug:6520904 Change-Id: I8fd872eefdc012aa819280499298e50186a9a20f
* Merge "Remove unused ENABLE_ANDROID_INSTALLABLE_WEB_APPS"George Mount2012-06-221-14/+0
|\
| * Remove unused ENABLE_ANDROID_INSTALLABLE_WEB_APPSGeorge Mount2012-06-211-14/+0
| | | | | | | | | | | | | | | | Remove an unused #define and code associated with it. This will smooth a possible future webkit merge. Framework change: Ibf046337cdabb9bee9cff8e3d77d9f69a59ecb15 Change-Id: I16d8c457a3f08996bc66401b241fe0db5a118975
* | Remove updateTextfield for changing passwords.George Mount2012-06-202-6/+2
|/ | | | | | | The UI no longer needs to know about password field changes as it is not required like it was with the removed WebTextView. Change-Id: I16a6bb44c31c83c5c3e9cb70f2bc865d5eb2732c
* Merge "Cherry-pick WebKit change r104441 to fix a rendering crash" into jb-devSteve Block2012-05-081-1/+1
|\
| * Cherry-pick WebKit change r104441 to fix a rendering crashSteve Block2012-05-031-1/+1
| | | | | | | | | | | | | | See http://trac.webkit.org/changeset/104441 Bug: 6293773 Change-Id: Icf18ede57a9d505635e1ef8e15b7b2a426ae5a8c
* | Use different mechanism for enabling slider.George Mount2012-05-018-63/+95
| | | | | | | | | | | | | | | | | | Bug 6413206 The HTML5 video scrubbing requires the old mechanism for getting touch events. Nearly a full revert of change I1d1ae457c50fe5b9627df7edb4f11d8245b5bdbf Change-Id: Ia3d07c1fddf5f5ed0f51a518c85f04bed415502e
* | Changes from code comments.George Mount2012-04-271-1/+2
|/ | | | | | Bug 6257532 Change-Id: Ic1c27ecdcbc6e4e6cf69dd73eb9b7b9a6d8b2c70
* Make input="range" visible and react to touch events.George Mount2012-04-257-93/+69
| | | | | | Bug 6257532 Change-Id: I1d1ae457c50fe5b9627df7edb4f11d8245b5bdbf
* Merge changes If869bd58,I18c371c9,I7c46eab4Steve Block2012-04-132-8/+2
|\ | | | | | | | | | | | | * changes: Cherry-pick WebKit change r92139 to fix a LayoutTest crash Cherry-pick WebKit change r87227 as a prerequisite for r92139 Cherry-pick WebKit change r85267 as a prerequisite for r92139
| * Cherry-pick WebKit change r87227 as a prerequisite for r92139Steve Block2012-04-121-3/+2
| | | | | | | | | | | | | | See http://trac.webkit.org/changeset/87227 Bug: 6329073 Change-Id: I18c371c96547d5a2011847647c8fc398b0adb18d
| * Cherry-pick WebKit change r85267 as a prerequisite for r92139Steve Block2012-04-121-5/+0
| | | | | | | | | | | | | | See http://trac.webkit.org/changeset/85267 Bug: 6329073 Change-Id: I7c46eab459647059890732214a9b953adef0a647
* | Merge "Cherry-pick WebKit change r89762 to fix a LayoutTest crash"Steve Block2012-04-132-6/+15
|\ \ | |/
| * Cherry-pick WebKit change r89762 to fix a LayoutTest crashSteve Block2012-04-122-6/+15
| | | | | | | | | | | | | | | | | | fast/dom/shadow/frameless-media-element-crash.html See http://trac.webkit.org/changeset/89762 Bug: 6329068 Change-Id: I73db520557e2ab4c04a4a2198276439e6c7932ec
* | Add support for HTML Media Capture "capture" attribute.Ben Murdoch2012-04-134-0/+28
|/ | | | | | | | | | | | | | | | | | | | Add support in WebKit for the newly specified "capture" attribute to be used on HTML file pickers. Maintains support for the legacy implementation of the API (a MIME type parameter on the 'accept' attribute) for backwards compatibility. Note the 'capture' attribute takes precedent over a MIME type parameter. See http://www.w3.org/TR/html-media-capture/#captureparam for details. Requires changes in the framework (I494adc1274ca21ce8fe52a6c7b6b758217927e66) and Browser (I38dfe2df043fdba1388384dbd3b5370737eb38e5). Bug: 5771207 Change-Id: I0a921be31fda79a43c05da4fe22d9c808d92709c
* Cherry-pick WebKit change r94132 to fix default port in URLsSteve Block2012-03-281-1/+4
| | | | | | | | | | | | | This is to make sure URL parsing behaviour is up-to-date prior to fixing window.location. See bug for details. Note that a manual edit to HTMLAnchorElement::port() was required to avoid the use of emptyString(). See http://trac.webkit.org/changeset/94132 Bug: 2159848 Change-Id: I13ef58e18df46c1d4592c102d4eb80f54ae53020
* Canvas on a textureJohn Reck2012-03-202-0/+10
| | | | Change-Id: I841b3e021298738c91701068992798a55290a520
* Initial support for keyboard navigationJohn Reck2012-02-151-0/+4
| | | | | | Bug: 6019693 Change-Id: I7b4f6d83e8913e647e8ac7340afd01d609c4343b
* Video: make sure the click is from user gesture.Teng-Hui Zhu2012-02-011-1/+1
| | | | | | | Javascript can simulate a click on video element, we don't want sites to WAR autoplay in this way. Change-Id: I7c5074605cce5f867dd675a110282e5a99dca941
* Only allow user gesture to play videoTeng-Hui Zhu2012-01-272-5/+33
| | | | | | | Basically, once a guesture trigger a video to load, play or pause, then no need for future gesture to interact with the video. Change-Id: I0631ea0d5efc1f6fff89e1eaaebee0e601403b27
* Tap to play/pause should avoid customized handlerTeng-Hui Zhu2011-12-161-1/+2
| | | | | | | | | This fix websites which is having their own touch handler to play/pause. E.g://www.nme.com/reviews/young-knives/11931 bug:4232704 Change-Id: I049ea943e14b82a84d7a55e4bd4ed88a34c984b1
* Tap to play/pause for html5 video with UITeng-Hui Zhu2011-12-131-0/+6
| | | | | | bug:4232704 Change-Id: Ice99bc0fa19de93627fe8ffb91085838fa682315
* Add support for Float64Array.Ben Murdoch2011-12-024-0/+186
| | | | | | | | | | | | | | Cherry pick from WebKit r87197 to add support for Float64Array. Note that this requires at least V8 3.3. In particular, this CL means that we will consume less memory executing Emscripten code. See http://trac.webkit.org/changeset/87197/ Bug: 5558474 Change-Id: I686d59acfdb56d03496f407d114826f35b4ff2c8
* Removing ANDROID_INSTRUMENTATION codeKristian Monsen2011-11-176-90/+0
| | | | | | | | | | | | | | This has not been used for years, and due to WebKit merges the results are not accurate anymore. The resulting code is cleaner, less likely to create merge conflicts, and does not give the impression that this can be turned on and it will still work. Needs CL: https://android-git.corp.google.com/g/#/c/148912/ Change-Id: I617ad00c103ab72038371a3203452d2ccec0e50c
* Do not force "mobile" sites to use a viewportBen Murdoch2011-09-261-17/+0
| | | | | | | | | Remove some old code for detecting mobile sites and forcing them to use a mobil viewport. This broke some websites, e.g. Wikipedia. Bug: 5371421 Change-Id: Icb93a1345f24d77d23b783fc965558a11135037a
* Fix the null pointer crash when playing full screen video.Teng-Hui Zhu2011-08-291-0/+4
| | | | | bug:5220693 Change-Id: I3696a8523c3328363ec9d162ef32525c7fbab930
* Fix the duration value for the html5 inline videoTeng-Hui Zhu2011-08-251-0/+5
| | | | | | bug:4600281 Change-Id: Ied1cd64744b59b9b272547656bc250c9eea5ed9e
* The real fix for the video forward/back button.Teng-Hui Zhu2011-08-241-0/+2
| | | | | | | | Since the code move to the /shadow part, revert the previous change c/130242 and put in this new change. bug:4598827 Change-Id: I6592050e198d2801d87ccc1558ceb2bf6dfc25d5
* Fix the mouse handling for the video controlTeng-Hui Zhu2011-08-221-4/+6
| | | | | bug:5137664 Change-Id: I0f2b1a84beebe03d4282e728bb26ec70d05bf813
* Show/hide HTML5 video control properly according to the touch eventTeng-Hui Zhu2011-08-192-2/+24
| | | | | | | | | Due to the webkit merge, some code of handling touch and control is gone. Now basically add this functionality back. Refer to the original CL : c/101875 bug:5137664 Change-Id: I951c88cf8fa86061a13465f966fb291706104d8f
* Force canvas scale factor to 1.Ben Murdoch2011-08-111-0/+12
| | | | | | | | | | | | This Android modification was lost over the course of two WebKit merges and means that we are allocating the backing images for canvas significantly larger than they need to be. For the original change, see Change-Id: I9652d6b88e01f27d69c804ac6bc56b527b33c219 Bug: 5142892 Change-Id: I01549c017cc3b8d683b273948826433c6451de72
* Fix typo in mobile site detection for automatic viewport.Ben Murdoch2011-07-261-1/+1
| | | | | Bug: 5073443 Change-Id: I433aae6c4cea5677ac4c04d34d50b903a48ebbe6
* Merge WebKit at branches/chromium/742 r89068: Initial merge by Git.Ben Murdoch2011-07-138-17/+55
| | | | | | Take us to top of Chrome 12 release branch (12.0.742.130) Change-Id: I4408a97e343a118cf4a1bb9d71367bcc2c16ae48
* meta format-detection is not a viewport meta tag.Shimeng (Simon) Wang2011-07-011-1/+1
| | | | | | | | This reverts some of my previous change which wrongly treats format-detection as a viewport change. issue: 4975315 Change-Id: Icb3ab9b813010b253a59fca6992deb1aa4d186e7
* Update viewport using webkit's way.Shimeng (Simon) Wang2011-07-012-24/+6
| | | | | | | | | The Android's customized way of parsing viewport meta tags is kept intact; while the viewport update notification mechanism is changed to use webkit's way. This gives much better notification of viewport switching. issue: 4975315 Change-Id: I7896b67d684efec015245ee804a9243e72ff0b50
* Merge WebKit at branches/chromium/742 r88085: Initial merge by git.Steve Block2011-06-147-33/+107
| | | | Change-Id: I0501b484b9528e31b0026e5ad64416dd6541cdde
* Merge WebKit at r84325: Fix MediaControls.Ben Murdoch2011-06-105-585/+21
| | | | | | | | | | | | | | Shadow DOM work needs to be applied to our local edits to make SliderThumb work with touch events. Several upstream changes are relevant... http://trac.webkit.org/changeset/83256 http://trac.webkit.org/changeset/83397 http://trac.webkit.org/changeset/83545 http://trac.webkit.org/changeset/84222 Change-Id: Ie653c87e6e1d823c50ee22c406aaa79a22bcf530
* Merge WebKit at r84325: Fix conflicts.Ben Murdoch2011-06-103-17/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Platform.h ENABLE_FULLSCREEN_API (http://trac.webkit.org/changeset/83997) WTF_USE_SKIA (http://trac.webkit.org/changeset/84106) JSNavigatorCustom.cpp V8NavigatorCustom.cpp ENABLE(APPLICATION_INSTALLED) (http://trac.webkit.org/changeset/83287) CSSStyleSelector.cpp ANDROID_CSS_RING (http://trac.webkit.org/changeset/83986) Document.cpp ANDROID_META_SUPPORT (http://trac.webkit.org/changeset/83349) ANDROID_INSTRUMENT (http://trac.webkit.org/changeset/82992) HTMLInputElement.cpp ANDROID_ACCEPT_CHANGES_TO_FOCUSED_TEXTFIELDS (http://trac.webkit.org/changeset/82534) RangeInputType.cpp ENABLE(TOUCH_EVENTS) (http://trac.webkit.org/changeset/83256/) ChromeClient.h ANDROID_INSTALLABLE_WEB_APPS (http://trac.webkit.org/changeset/83375) EventHandler.cpp PLATFORM(ANDROID) (http://trac.webkit.org/changeset/83522) Settings ANDROID_PLUGINS (http://trac.webkit.org/changeset/83201) ANDROID_BLOCK_NETWORK_IMAGE (http://trac.webkit.org/changeset/83628) Gradient.cpp Graphicscontext.cpp HTMLCanvasElement.cpp USE(SKIA) && !PLATFORM(ANDROID) (http://trac.webkit.org/changeset/84088) USE(SKIA) && !PLATFORM(ANDROID) (http://trac.webkit.org/changeset/84101) PluginView.h ANDROID_PLUGINS (http://trac.webkit.org/changeset/84071) RenderBox.h ANDROID_LAYOUT (http://trac.webkit.org/changeset/82611) RenderIframe.cpp (moved code to RenderPart.cpp) PLATFORM(ANDROID) (http://trac.webkit.org/changeset/83518) RenderLayer.cpp ANDROID_OVERFLOW_SCROLL (http://trac.webkit.org/changeset/83899) RenderLayer.h RenderLayerBacking.cpp ANDROID_OVERFLOW_SCROLL (http://trac.webkit.org/changeset/83820) Change-Id: Ieabe98f4e01610b6a73e961b673e2fa99b0010e7
* Merge WebKit at r84325: Initial merge by git.Ben Murdoch2011-06-1075-496/+3452
| | | | Change-Id: Ic1a909300ecc0a13ddc6b4e784371d2ac6e3d59b
* Merge WebKit at r82507: Don't use new loss-free code path in ↵Steve Block2011-06-081-1/+2
| | | | | | | | HTMLCanvasElement::toDataURL() See http://trac.webkit.org/changeset/81213 Change-Id: I1280ec90bd80fbb5cb4450e892f96678b988fa66
* Merge WebKit at r82507: Fix conflictsSteve Block2011-06-082-26/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - RenderLayerBacking.cpp Due to ANDROID_OVERFLOW_SCROLL http://trac.webkit.org/changeset/81715 - Document.cpp Due to domTreeVersion and ANDROID_STYLE_VERSION http://trac.webkit.org/changeset/80797 - CachedResourceLoader.cpp Due to temporary debugging and ANDROID_BLOCK_NETWORK_IMAGE http://trac.webkit.org/changeset/80695 - Settings.cpp/h http://trac.webkit.org/changeset/81289 http://trac.webkit.org/changeset/81635 - MediaPlayer.cpp Whitespace only http://trac.webkit.org/changeset/80874 - RenderBox.cpp Due to isHorizontalWritingMode http://trac.webkit.org/changeset/81716 - RenderLayer.cpp/h Due to ANDROID_OVERFLOW_SCROLL http://trac.webkit.org/changeset/81981 - CSSStyleSelector.cpp Due to ANDROID_CSS_RING http://trac.webkit.org/changeset/80582 http://trac.webkit.org/changeset/80993 http://trac.webkit.org/changeset/80998 http://trac.webkit.org/changeset/81684 http://trac.webkit.org/changeset/82378 - CSSParser.cpp Due to ANDROID_CSS_RING http://trac.webkit.org/changeset/80582 http://trac.webkit.org/changeset/81684 - StyleElement.cpp Due to cherry pick of http://trac.webkit.org/changeset/80787 http://trac.webkit.org/changeset/82054 - EventHandler.cpp Due to ANDROID_PLUGINS http://trac.webkit.org/changeset/81618 http://trac.webkit.org/changeset/81835 - SliderThumbElement.cpp Due to touch events http://trac.webkit.org/changeset/81216 - MediaControls.cpp Due to touch events http://trac.webkit.org/changeset/80857 Note that the WebKit history for this file is confusing as it was renamed in http://trac.webkit.org/changeset/83545 and then re-added in http://trac.webkit.org/changeset/84222 but trac is not smart enough to track history backwards from http://trac.webkit.org/changeset/84222. Change-Id: Ie1f80e09ae7c3befa7a18773cf846ff130e4354e
* Merge WebKit at r82507: Initial merge by gitSteve Block2011-06-0865-428/+890
| | | | Change-Id: I60ce9d780725b58b45e54165733a8ffee23b683e
* Merge WebKit at r80534: Fix conflicts.Ben Murdoch2011-06-022-18/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Android.jscbindings.mk 79223 Conflict due to http://trac.webkit.org/changeset/79223 Android.mk Conflicts due to http://trac.webkit.org/changeset/79825 and http://trac.webkit.org/changeset/79978 Android.v8bindings.mk 80367 Conflicts due to http://trac.webkit.org/changeset/80103 and http://trac.webkit.org/changeset/80367 HTMLMediaElement.cpp Conflicts due to http://trac.webkit.org/changeset/80030 and local TOUCH_EVENTS modifications. HTMLDocumentParser.cpp Conflict due to http://trac.webkit.org/changeset/79772 and local ANDROID_INSTRUMENT modifications. CachedResourceLoader.cpp|h Conflicts due to http://trac.webkit.org/changeset/78602 and ANDROID_BLOCK_NETWORK_IMAGE. MemoryCache.h Conflicts due to http://trac.webkit.org/changeset/78848 and ANDROID_INSTRUMENT. FrameView.cpp Conflict due to http://trac.webkit.org/changeset/78928 and locally added updatePositionedObjects function. NetworkStateNotifier JobjectWrapper.cpp Git seems to have got confused with a rename here in JobjectWrapper.cpp, keep ours. Conflicts due to http://trac.webkit.org/changeset/79563 and local Android additions. PluginViewNone.cpp 79904 Conflicts due to http://trac.webkit.org/changeset/79904 and local cherry pick of http://trac.webkit.org/changeset/79988 RenderBox.cpp Conflicts due to http://trac.webkit.org/changeset/79467 and local android modifications. Change-Id: I98bd80de86b5169212da137ad3df42c1c35e8931
* Merge WebKit at r80534: Intial merge by GitBen Murdoch2011-06-0269-590/+2112
| | | | Change-Id: Ia7a83357124c9e1cdb1debf55d9661ec0bd09a61