From 994b787c21bf9c0fc9e18afae541c5daebc09886 Mon Sep 17 00:00:00 2001 From: Ehsan Akhgari Date: Wed, 29 May 2013 17:14:27 -0400 Subject: [PATCH] Backed out 8 changesets (bug 803299) because it makes Tcheckerboard and Tpan so much worse Backed out changeset f0311781c218 (bug 803299) Backed out changeset 946467115924 (bug 803299) Backed out changeset 59af481d8888 (bug 803299) Backed out changeset 99a03f7ca8a4 (bug 803299) Backed out changeset 44539f533a92 (bug 803299) Backed out changeset 3f3963a3ebf6 (bug 803299) Backed out changeset 5269f0483d1e (bug 803299) Backed out changeset a9485787fdb1 (bug 803299) --- content/canvas/test/reftest/black.html | 9 --- content/canvas/test/reftest/black.png | Bin 0 -> 1027 bytes content/canvas/test/reftest/reftest.list | 5 +- image/test/reftest/jpeg/reftest.list | 6 +- layout/reftests/backgrounds/reftest.list | 4 +- layout/reftests/border-radius/reftest.list | 2 +- layout/reftests/bugs/reftest.list | 18 ++--- layout/reftests/css-gradients/reftest.list | 68 +++++++++--------- layout/reftests/scrolling/reftest.list | 8 +-- layout/reftests/svg/reftest.list | 4 +- layout/reftests/svg/smil/reftest.list | 2 +- .../reftests/svg/smil/transform/reftest.list | 12 ++-- layout/reftests/text/reftest.list | 2 +- mobile/android/app/mobile.js | 3 - mobile/android/base/GeckoApp.java | 9 --- mobile/android/base/GeckoAppShell.java | 32 --------- mobile/android/base/Tab.java | 4 +- mobile/android/base/ThumbnailHelper.java | 21 +----- mobile/android/base/gfx/GLController.java | 34 ++------- mobile/android/base/widget/TopSitesView.java | 7 +- widget/android/AndroidBridge.cpp | 32 +-------- widget/android/AndroidBridge.h | 2 - widget/android/nsScreenManagerAndroid.cpp | 4 +- widget/android/nsWindow.cpp | 12 +--- 24 files changed, 80 insertions(+), 220 deletions(-) delete mode 100644 content/canvas/test/reftest/black.html create mode 100644 content/canvas/test/reftest/black.png diff --git a/content/canvas/test/reftest/black.html b/content/canvas/test/reftest/black.html deleted file mode 100644 index d2c721b1d54..00000000000 --- a/content/canvas/test/reftest/black.html +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - -
- - diff --git a/content/canvas/test/reftest/black.png b/content/canvas/test/reftest/black.png new file mode 100644 index 0000000000000000000000000000000000000000..7e3e4b53747914a3eaf1a961a5b09945da0c0337 GIT binary patch literal 1027 zcmeAS@N?(olHy`uVBq!ia0y~yU<5K58911L)MWvCLlCbx$lZxy-8q?;Kn_c~qpu?a z!^VE@KZ&eBK4*bPWHAE+-(e7DJf6QI1t=(0;u=vBoS#-wo>-L15RjOeSEA?V8lq5U ztY@lcXkhTAXdwdwbCIWuV@O5Z+Y5#uI}a`R>i;&CyTc*zKm#K)8;^uR!YE@j5Jpo1 e)pEfBb~Z*`2F3(a$x2{;WAJqKb6Mw<&;$SyeChH4 literal 0 HcmV?d00001 diff --git a/content/canvas/test/reftest/reftest.list b/content/canvas/test/reftest/reftest.list index b83f86aa44d..ea6da04e9e6 100644 --- a/content/canvas/test/reftest/reftest.list +++ b/content/canvas/test/reftest/reftest.list @@ -137,9 +137,8 @@ pref(webgl.force-layers-readback,true) random-if(B2G) == webgl-color-test.html?r # Check alpha behavior: fuzzy-if(B2G,256,83) == webgl-color-alpha-test.html?colorVal=1.0&alphaVal=1.0&nogl wrapper.html?colors.png fuzzy-if(B2G,256,83) == webgl-color-alpha-test.html?colorVal=1.0&alphaVal=1.0 wrapper.html?colors.png -# These tests don't use wrapper.html, as there appear to be invalidation issues with black.png and async image decoding - Bug 803299 -== webgl-color-alpha-test.html?colorVal=0.0&alphaVal=1.0&nogl black.html -== webgl-color-alpha-test.html?colorVal=0.0&alphaVal=1.0 black.html +fails-if(B2G) == webgl-color-alpha-test.html?colorVal=0.0&alphaVal=1.0&nogl wrapper.html?black.png +fails-if(B2G) == webgl-color-alpha-test.html?colorVal=0.0&alphaVal=1.0 wrapper.html?black.png fuzzy-if(B2G,256,83) == webgl-color-alpha-test.html?colorVal=1.0&alphaVal=0.0&nogl wrapper.html?colors.png fuzzy-if(B2G,256,83) == webgl-color-alpha-test.html?colorVal=1.0&alphaVal=0.0 wrapper.html?colors.png diff --git a/image/test/reftest/jpeg/reftest.list b/image/test/reftest/jpeg/reftest.list index 32aff87618e..98c84a68b7d 100644 --- a/image/test/reftest/jpeg/reftest.list +++ b/image/test/reftest/jpeg/reftest.list @@ -23,11 +23,7 @@ random-if(bug685516) == jpg-gray.jpg jpg-gray.png # CMYK colorspace random-if(bug685516) == jpg-cmyk-1.jpg jpg-cmyk-1.png random-if(bug685516) == jpg-cmyk-2.jpg jpg-cmyk-2.png -# This intermittently fails on Android due to async image decoding (bug #685516) -# Sometimes the image decodes in time and the test passes, other times the image -# appears blank and the test fails. This only seems to be triggered since the -# switch to 24-bit colour (bug #803299). -random-if(bug685516) random-if(Android) == jpg-srgb-icc.jpg jpg-srgb-icc.png +random-if(bug685516) == jpg-srgb-icc.jpg jpg-srgb-icc.png # webcam-simulacrum.mjpg is a hand-edited file containing red.jpg and blue.jpg, # concatenated together with the relevant headers for diff --git a/layout/reftests/backgrounds/reftest.list b/layout/reftests/backgrounds/reftest.list index 174362d3787..70c23646790 100644 --- a/layout/reftests/backgrounds/reftest.list +++ b/layout/reftests/backgrounds/reftest.list @@ -7,8 +7,8 @@ random-if(bug685516) == layers-layer-count-inheritance-1.xhtml layers-layer-coun random-if(bug685516) == layers-layer-count-cascade-2.xhtml layers-layer-count-2-ref.xhtml random-if(bug685516) == layers-layer-count-inheritance-2.xhtml layers-layer-count-2-ref.xhtml fuzzy-if(Android,9,600000) == viewport-translucent-color-1.html viewport-translucent-color-ref.html -== viewport-translucent-color-2.html viewport-translucent-color-ref.html -== viewport-translucent-color-3.html viewport-translucent-color-ref.html +fails-if(Android) == viewport-translucent-color-2.html viewport-translucent-color-ref.html +fails-if(Android) == viewport-translucent-color-3.html viewport-translucent-color-ref.html != viewport-translucent-color-ref.html about:blank random-if(bug685516) == iframe-translucent-color-1.html iframe-translucent-color-ref.html random-if(bug685516) == translucent-color-1.html translucent-color-ref.html diff --git a/layout/reftests/border-radius/reftest.list b/layout/reftests/border-radius/reftest.list index 3b328ad898e..4b92cd00876 100644 --- a/layout/reftests/border-radius/reftest.list +++ b/layout/reftests/border-radius/reftest.list @@ -83,6 +83,6 @@ skip-if(B2G) fuzzy-if(/^Windows\x20NT\x206\.2/.test(http.oscpu),1,20) fuzzy-if(A == iframe-1.html iframe-1-ref.html # Test for antialiasing gaps between background and border -skip-if(B2G) fails-if(winWidget) fuzzy-if(Android,1,5) == curved-border-background-nogap.html curved-border-background-nogap-ref.html +skip-if(B2G) fails-if(winWidget) == curved-border-background-nogap.html curved-border-background-nogap-ref.html == color-layer-1a.html color-layer-1-ref.html diff --git a/layout/reftests/bugs/reftest.list b/layout/reftests/bugs/reftest.list index 03d03461da1..06921eba08e 100644 --- a/layout/reftests/bugs/reftest.list +++ b/layout/reftests/bugs/reftest.list @@ -461,7 +461,7 @@ skip-if(B2G) == 336153-1.html 336153-1-ref.html == 346774-1c.html 346774-1-ref.html == 347348-1.xhtml 347348-1-ref.xhtml == 347496-1.xhtml 347496-1-ref.xhtml -== 347912-1.html 347912-1-ref.html +fails-if(Android) == 347912-1.html 347912-1-ref.html == 348049-1.xhtml 348049-1-ref.xhtml == 348516-1.html 348516-1-ref.html == 348516-2.html 348516-2-ref.html @@ -796,7 +796,7 @@ skip-if(Android) == 391979.html 391979-ref.html == 393671-2.html 393671-2-ref.html == 393671-3.html 393671-3-ref.html == 393760-1.xml 393760-1-ref.xml -== 393760-2.xml 393760-2-ref.xml +fails-if(Android) == 393760-2.xml 393760-2-ref.xml == 394111-1.html about:blank # Really an assertion test rather than a rendering test == 394534-1.html 394534-1-ref.html == 394676-1.xhtml 394676-1-ref.xhtml @@ -1474,7 +1474,7 @@ needs-focus != 542116-1.html 542116-1-ref.html needs-focus != 542116-2.html 542116-2-ref.html needs-focus != 542116-3.html 542116-3-ref.html == 542317-1.html 542317-1-ref.html -fuzzy-if(Android,17,2) == 542605-hidden-unscrollable.xul 542605-hidden-unscrollable-ref.xul +== 542605-hidden-unscrollable.xul 542605-hidden-unscrollable-ref.xul == 542620-1.html 542620-1-ref.html == 545049-1.html 545049-1-ref.html == 546033-1.html 546033-1-ref.html @@ -1588,7 +1588,7 @@ random-if(Android) == 594333-1.html 594333-1-ref.html == 594624-1.html 594624-1-ref.html == 594737-1.html 594737-1-ref.html == 597721-1.html 597721-1-ref.html -random-if(winWidget) fuzzy-if(Android,3,65) needs-focus == 598726-1.html 598726-1-ref.html # Fails on Windows, bug 782196 +random-if(winWidget) needs-focus == 598726-1.html 598726-1-ref.html # Fails on Windows, bug 782196 == 599113-1.html 599113-1-ref.html fails-if(!haveTestPlugin) == 599476.html 599476-ref.html == 599882-1a.html 599882-1-ref.html @@ -1644,7 +1644,7 @@ skip-if(B2G) fails-if(Android) == 632423-1.html 632423-1-ref.html skip-if(Android||B2G) == 632781-verybig.html 632781-ref.html == 632781-normalsize.html 632781-ref.html fails-if(Android) == 633344-1.html 633344-1-ref.html -== 634232-1.html 634232-1-ref.html +fails-if(Android) == 634232-1.html 634232-1-ref.html fails-if(Android) == 635302-1.html 635302-1-ref.html skip-if(B2G) random-if(d2d) fails-if(Android) == 635373-1.html 635373-1-ref.html skip-if(B2G) random-if(d2d) fails-if(Android) == 635373-2.html 635373-2-ref.html @@ -1653,7 +1653,7 @@ HTTP(..) == 635639-1.html 635639-1-ref.html HTTP(..) == 635639-2.html 635639-2-ref.html random == 637597-1.html 637597-1-ref.html # bug 637597 was never really fixed! skip-if(B2G) == 637852-1.html 637852-1-ref.html # bug 839735 -== 637852-2.html 637852-2-ref.html +fails-if(Android) == 637852-2.html 637852-2-ref.html == 637852-3.html 637852-3-ref.html skip-if(B2G) == 641770-1.html 641770-1-ref.html == 641856-1.html 641856-1-ref.html @@ -1671,7 +1671,7 @@ fails-if(layersGPUAccelerated&&cocoaWidget) fails-if(Android) == 654950-1.html 6 != 656875.html about:blank == 658952.html 658952-ref.html == 660682-1.html 660682-1-ref.html -== 664127-1.xul 664127-1-ref.xul +fails-if(Android) == 664127-1.xul 664127-1-ref.xul skip-if(B2G) == 665597-1.html 665597-1-ref.html skip-if(B2G) == 665597-2.html 665597-2-ref.html == 668319-1.xul about:blank @@ -1735,11 +1735,11 @@ fuzzy(40,850) == 797797-2.html 797797-2-ref.html # 'opacity:N' and rgba(,,,N) te == 801681-2.html 801681-2-ref.html == 801994-1.html 801994-1-ref.html == 804323-1.html 804323-1-ref.html -fuzzy-if(Android,4,100) == 811301-1.html 811301-1-ref.html +== 811301-1.html 811301-1-ref.html == 812824-1.html 812824-1-ref.html == 814677.html 814677-ref.html skip-if(B2G) == 814952-1.html 814952-1-ref.html -skip-if(B2G) fuzzy-if(Android,4,61) == 815593-1.html 815593-1-ref.html +skip-if(B2G) == 815593-1.html 815593-1-ref.html == 816359-1.html 816359-1-ref.html == 816458-1.html 816458-1-ref.html == 816948-1.html 816948-1-ref.html diff --git a/layout/reftests/css-gradients/reftest.list b/layout/reftests/css-gradients/reftest.list index a74eefb94e0..79653914028 100644 --- a/layout/reftests/css-gradients/reftest.list +++ b/layout/reftests/css-gradients/reftest.list @@ -1,9 +1,9 @@ -fuzzy-if(!contentSameGfxBackendAsCanvas,2,88500) == linear-1a.html linear-1-ref.html -fuzzy-if(!contentSameGfxBackendAsCanvas,2,88500) == linear-1b.html linear-1-ref.html -fuzzy-if(!contentSameGfxBackendAsCanvas,2,88500) == linear-keywords-1a.html linear-keywords-1-ref.html -fuzzy-if(!contentSameGfxBackendAsCanvas,2,88500) == linear-keywords-1b.html linear-keywords-1-ref.html -fuzzy-if(!contentSameGfxBackendAsCanvas,2,88500) == linear-percent.html linear-percent-ref.html -fuzzy-if(!contentSameGfxBackendAsCanvas,1,92400) == linear-mix.html linear-mix-ref.html +fuzzy-if(!contentSameGfxBackendAsCanvas,2,88500) fails-if(Android) == linear-1a.html linear-1-ref.html +fuzzy-if(!contentSameGfxBackendAsCanvas,2,88500) fails-if(Android) == linear-1b.html linear-1-ref.html +fuzzy-if(!contentSameGfxBackendAsCanvas,2,88500) fails-if(Android) == linear-keywords-1a.html linear-keywords-1-ref.html +fuzzy-if(!contentSameGfxBackendAsCanvas,2,88500) fails-if(Android) == linear-keywords-1b.html linear-keywords-1-ref.html +fuzzy-if(!contentSameGfxBackendAsCanvas,2,88500) fails-if(Android) == linear-percent.html linear-percent-ref.html +fuzzy-if(!contentSameGfxBackendAsCanvas,1,92400) fails-if(Android) == linear-mix.html linear-mix-ref.html == linear-diagonal-1a.html linear-diagonal-1-ref.html == linear-diagonal-1b.html linear-diagonal-1-ref.html == linear-diagonal-1c.html linear-diagonal-1-ref.html @@ -38,11 +38,11 @@ fails-if(d2d) == linear-repeat-1g.html linear-repeat-1-ref.html # bug 582236 == linear-stops-1d.html linear-stops-1-ref.html == linear-stops-1e.html linear-stops-1-ref.html == linear-stops-1f.html linear-stops-1-ref.html -fuzzy-if(!contentSameGfxBackendAsCanvas,1,88500) == linear-vertical-1a.html linear-vertical-1-ref.html -fuzzy-if(!contentSameGfxBackendAsCanvas,1,88500) == linear-vertical-1b.html linear-vertical-1-ref.html -fuzzy-if(!contentSameGfxBackendAsCanvas,1,88500) == linear-vertical-1c.html linear-vertical-1-ref.html -fuzzy-if(!contentSameGfxBackendAsCanvas,1,88500) == linear-vertical-1d.html linear-vertical-1-ref.html -fuzzy-if(!contentSameGfxBackendAsCanvas,1,88500) == linear-vertical-1e.html linear-vertical-1-ref.html +fuzzy-if(!contentSameGfxBackendAsCanvas,1,88500) fails-if(Android) == linear-vertical-1a.html linear-vertical-1-ref.html +fuzzy-if(!contentSameGfxBackendAsCanvas,1,88500) fails-if(Android) == linear-vertical-1b.html linear-vertical-1-ref.html +fuzzy-if(!contentSameGfxBackendAsCanvas,1,88500) fails-if(Android) == linear-vertical-1c.html linear-vertical-1-ref.html +fuzzy-if(!contentSameGfxBackendAsCanvas,1,88500) fails-if(Android) == linear-vertical-1d.html linear-vertical-1-ref.html +fuzzy-if(!contentSameGfxBackendAsCanvas,1,88500) fails-if(Android) == linear-vertical-1e.html linear-vertical-1-ref.html == linear-vertical-subpixel-1.html linear-vertical-subpixel-1-ref.html == linear-viewport.html linear-viewport-ref.html == linear-zero-length-1a.html linear-zero-length-1-ref.html @@ -50,15 +50,15 @@ fuzzy-if(!contentSameGfxBackendAsCanvas,1,88500) == linear-vertical-1e.html line == linear-zero-length-1c.html linear-zero-length-1-ref.html == nostops.html about:blank == onestop.html about:blank -fuzzy-if(!contentSameGfxBackendAsCanvas,1,5884) fuzzy-if(cocoaWidget,9,51018) random-if(d2d) == radial-1a.html radial-1-ref.html -fuzzy-if(!contentSameGfxBackendAsCanvas,1,5884) fuzzy-if(cocoaWidget,9,51018) random-if(d2d) == radial-1b.html radial-1-ref.html -fuzzy-if(!contentSameGfxBackendAsCanvas,1,5884) fuzzy-if(cocoaWidget,9,51018) random-if(d2d) == radial-1c.html radial-1-ref.html -fuzzy-if(!contentSameGfxBackendAsCanvas,3,7860) == radial-2a.html radial-2-ref.html -fuzzy-if(!contentSameGfxBackendAsCanvas,3,7860) == radial-2b.html radial-2-ref.html -fuzzy-if(!contentSameGfxBackendAsCanvas,3,7860) == radial-2c.html radial-2-ref.html -fuzzy-if(!contentSameGfxBackendAsCanvas,3,7860) == radial-2d.html radial-2-ref.html -fuzzy-if(!contentSameGfxBackendAsCanvas,3,7860) == radial-2e.html radial-2-ref.html -fuzzy-if(!contentSameGfxBackendAsCanvas,3,7860) == radial-2f.html radial-2-ref.html +fuzzy-if(!contentSameGfxBackendAsCanvas,1,5884) fuzzy-if(cocoaWidget,9,51018) fails-if(Android) random-if(d2d) == radial-1a.html radial-1-ref.html +fuzzy-if(!contentSameGfxBackendAsCanvas,1,5884) fuzzy-if(cocoaWidget,9,51018) fails-if(Android) random-if(d2d) == radial-1b.html radial-1-ref.html +fuzzy-if(!contentSameGfxBackendAsCanvas,1,5884) fuzzy-if(cocoaWidget,9,51018) fails-if(Android) random-if(d2d) == radial-1c.html radial-1-ref.html +fuzzy-if(!contentSameGfxBackendAsCanvas,3,7860) fails-if(Android) == radial-2a.html radial-2-ref.html +fuzzy-if(!contentSameGfxBackendAsCanvas,3,7860) fails-if(Android) == radial-2b.html radial-2-ref.html +fuzzy-if(!contentSameGfxBackendAsCanvas,3,7860) fails-if(Android) == radial-2c.html radial-2-ref.html +fuzzy-if(!contentSameGfxBackendAsCanvas,3,7860) fails-if(Android) == radial-2d.html radial-2-ref.html +fuzzy-if(!contentSameGfxBackendAsCanvas,3,7860) fails-if(Android) == radial-2e.html radial-2-ref.html +fuzzy-if(!contentSameGfxBackendAsCanvas,3,7860) fails-if(Android) == radial-2f.html radial-2-ref.html == radial-position-1a.html radial-position-1-ref.html == radial-position-1b.html radial-position-1-ref.html == radial-shape-closest-corner-1a.html radial-shape-closest-corner-1-ref.html @@ -105,23 +105,23 @@ fails-if(OSX==10.6) == twostops-1c.html twostops-1-ref.html # bug 524173 == twostops-1g.html twostops-1-ref.html # from http://www.xanthir.com/:4bhipd by way of http://a-ja.net/newgrad.html -fuzzy-if(!contentSameGfxBackendAsCanvas,1,20000) == aja-linear-1a.html aja-linear-1-ref.html +fuzzy-if(!contentSameGfxBackendAsCanvas,1,20000) fails-if(Android) == aja-linear-1a.html aja-linear-1-ref.html fails-if(!d2d) == aja-linear-1b.html aja-linear-1-ref.html # bug 526694 -fuzzy-if(!contentSameGfxBackendAsCanvas,1,20000) == aja-linear-1c.html aja-linear-1-ref.html -fuzzy-if(!contentSameGfxBackendAsCanvas,1,20000) == aja-linear-1d.html aja-linear-1-ref.html -fuzzy-if(!contentSameGfxBackendAsCanvas,1,20000) == aja-linear-1e.html aja-linear-1-ref.html -fuzzy-if(!contentSameGfxBackendAsCanvas,1,20000) == aja-linear-1f.html aja-linear-1-ref.html -fuzzy-if(!contentSameGfxBackendAsCanvas,1,20000) == aja-linear-1g.html aja-linear-1-ref.html -fuzzy-if(!contentSameGfxBackendAsCanvas,1,20000) == aja-linear-2a.html aja-linear-2-ref.html -fuzzy-if(!contentSameGfxBackendAsCanvas,1,20000) == aja-linear-2b.html aja-linear-2-ref.html +fuzzy-if(!contentSameGfxBackendAsCanvas,1,20000) fails-if(Android) == aja-linear-1c.html aja-linear-1-ref.html +fuzzy-if(!contentSameGfxBackendAsCanvas,1,20000) fails-if(Android) == aja-linear-1d.html aja-linear-1-ref.html +fuzzy-if(!contentSameGfxBackendAsCanvas,1,20000) fails-if(Android) == aja-linear-1e.html aja-linear-1-ref.html +fuzzy-if(!contentSameGfxBackendAsCanvas,1,20000) fails-if(Android) == aja-linear-1f.html aja-linear-1-ref.html +fuzzy-if(!contentSameGfxBackendAsCanvas,1,20000) fails-if(Android) == aja-linear-1g.html aja-linear-1-ref.html +fuzzy-if(!contentSameGfxBackendAsCanvas,1,20000) fails-if(Android) == aja-linear-2a.html aja-linear-2-ref.html +fuzzy-if(!contentSameGfxBackendAsCanvas,1,20000) fails-if(Android) == aja-linear-2b.html aja-linear-2-ref.html fails == aja-linear-2c.html aja-linear-2-ref.html # bug 522607 fails-if(!d2d) == aja-linear-2d.html aja-linear-2-ref.html # bug 526694 -fuzzy-if(!contentSameGfxBackendAsCanvas,1,19999) == aja-linear-3a.html aja-linear-3-ref.html -fuzzy-if(!contentSameGfxBackendAsCanvas,1,19999) == aja-linear-3b.html aja-linear-3-ref.html -fuzzy-if(!contentSameGfxBackendAsCanvas,2,20000) == aja-linear-4a.html aja-linear-4-ref.html -fuzzy-if(!contentSameGfxBackendAsCanvas,2,20000) == aja-linear-4b.html aja-linear-4-ref.html -fuzzy-if(!contentSameGfxBackendAsCanvas,2,20000) == aja-linear-5a.html aja-linear-5-ref.html -fuzzy-if(!contentSameGfxBackendAsCanvas,2,16477) == aja-linear-6a.html aja-linear-6-ref.html # bug 526708 +fuzzy-if(!contentSameGfxBackendAsCanvas,1,19999) fails-if(Android) == aja-linear-3a.html aja-linear-3-ref.html +fuzzy-if(!contentSameGfxBackendAsCanvas,1,19999) fails-if(Android) == aja-linear-3b.html aja-linear-3-ref.html +fuzzy-if(!contentSameGfxBackendAsCanvas,2,20000) fails-if(Android) == aja-linear-4a.html aja-linear-4-ref.html +fuzzy-if(!contentSameGfxBackendAsCanvas,2,20000) fails-if(Android) == aja-linear-4b.html aja-linear-4-ref.html +fuzzy-if(!contentSameGfxBackendAsCanvas,2,20000) fails-if(Android) == aja-linear-5a.html aja-linear-5-ref.html +fuzzy-if(!contentSameGfxBackendAsCanvas,2,16477) fails-if(Android) == aja-linear-6a.html aja-linear-6-ref.html # bug 526708 fails == aja-linear-6b.html aja-linear-6-ref.html # bug 522607 skip-if(B2G) == height-dependence-1.html height-dependence-1-ref.html skip-if(B2G) fuzzy-if(cocoaWidget,1,40000) == height-dependence-2.html height-dependence-2-ref.html diff --git a/layout/reftests/scrolling/reftest.list b/layout/reftests/scrolling/reftest.list index e162bd6bf02..5f78f79e8aa 100644 --- a/layout/reftests/scrolling/reftest.list +++ b/layout/reftests/scrolling/reftest.list @@ -1,7 +1,7 @@ HTTP == fixed-1.html fixed-1.html?ref random-if(bug685516) HTTP == fixed-opacity-1.html fixed-opacity-1.html?ref skip-if(B2G) random-if(bug685516) HTTP == fixed-opacity-2.html fixed-opacity-2.html?ref -skip-if(B2G) random-if(gtk2Widget) random-if(bug685516) fuzzy-if(Android,3,67) HTTP == fixed-text-1.html fixed-text-1.html?ref +skip-if(B2G) random-if(gtk2Widget) random-if(bug685516) HTTP == fixed-text-1.html fixed-text-1.html?ref random-if(bug685516) HTTP == fixed-text-2.html fixed-text-2.html?ref random-if(Android&&!browserIsRemote) == iframe-border-radius.html iframe-border-radius-ref.html # bug 760269 random-if(Android) HTTP == image-1.html image-1.html?ref @@ -9,9 +9,9 @@ random-if(Android&&!browserIsRemote) HTTP == opacity-mixed-scrolling-1.html opac skip-if(B2G) random-if(cocoaWidget) HTTP == opacity-mixed-scrolling-2.html opacity-mixed-scrolling-2.html?ref # see bug 625357 random-if(bug685516) HTTP == simple-1.html simple-1.html?ref skip-if(B2G) HTTP == subpixel-1.html#d subpixel-1-ref.html#d -fuzzy-if(Android,4,67) HTTP == text-1.html text-1.html?ref -fuzzy-if(Android,3,11) HTTP == text-2.html?up text-2.html?ref -fuzzy-if(Android,251,722) HTTP == transformed-1.html transformed-1.html?ref +fuzzy-if(Android,4,32) HTTP == text-1.html text-1.html?ref +fuzzy-if(Android,4,5) HTTP == text-2.html?up text-2.html?ref +fuzzy-if(Android,255,675) HTTP == transformed-1.html transformed-1.html?ref HTTP == transformed-1.html?up transformed-1.html?ref fuzzy-if(Android,5,20000) == uncovering-1.html uncovering-1-ref.html fuzzy-if(Android,5,20000) == uncovering-2.html uncovering-2-ref.html diff --git a/layout/reftests/svg/reftest.list b/layout/reftests/svg/reftest.list index 80bf41ffd4c..04b27651a28 100644 --- a/layout/reftests/svg/reftest.list +++ b/layout/reftests/svg/reftest.list @@ -73,7 +73,7 @@ fuzzy-if(/^Windows\x20NT\x206\.[12]/.test(http.oscpu),1,5) == clipPath-and-shape == dynamic-conditions-11.svg pass.svg == dynamic-conditions-12.svg pass.svg == dynamic-conditions-13.svg about:blank -fuzzy-if(Android,4,87) skip-if(B2G) == dynamic-clipPath-01.svg pass.svg +fuzzy-if(Android,4,44) skip-if(B2G) == dynamic-clipPath-01.svg pass.svg == dynamic-clipPath-02.svg pass.svg == dynamic-feFlood-01.svg pass.svg == dynamic-feImage-01.svg pass.svg @@ -198,7 +198,7 @@ pref(layout.css.masking.enabled,true) fuzzy-if(d2d,1,6400) == mask-type-04.svg m == nested-viewBox-01.svg pass.svg == nesting-invalid-01.svg nesting-invalid-01-ref.svg == non-scaling-stroke-01.svg non-scaling-stroke-01-ref.svg -fuzzy-if(Android,1,99) fuzzy-if(!contentSameGfxBackendAsCanvas,1,99) == non-scaling-stroke-02.svg non-scaling-stroke-02-ref.svg +fuzzy-if(Android,9,61) fuzzy-if(!contentSameGfxBackendAsCanvas,1,99) == non-scaling-stroke-02.svg non-scaling-stroke-02-ref.svg == non-scaling-stroke-03.svg non-scaling-stroke-03-ref.svg == objectBoundingBox-and-clipPath.svg pass.svg # Bug 588684 diff --git a/layout/reftests/svg/smil/reftest.list b/layout/reftests/svg/smil/reftest.list index 6cb19150e5c..38d1fa26fb5 100644 --- a/layout/reftests/svg/smil/reftest.list +++ b/layout/reftests/svg/smil/reftest.list @@ -137,7 +137,7 @@ skip-if(B2G) == anim-feComposite-operator-01.svg lime.svg skip-if(B2G) == anim-feConvolveMatrix-preserveAlpha-01.svg lime.svg # bug 773482 # animate some viewBox attributes -fuzzy-if(Android,4,1) == anim-svg-viewBox-01.svg lime.svg +== anim-svg-viewBox-01.svg lime.svg == anim-svg-viewBox-02.svg lime.svg == anim-svg-viewBox-03.svg lime.svg == anim-view-01.svg#view lime.svg diff --git a/layout/reftests/svg/smil/transform/reftest.list b/layout/reftests/svg/smil/transform/reftest.list index 54bfb6d768e..a4cae9ba0cf 100644 --- a/layout/reftests/svg/smil/transform/reftest.list +++ b/layout/reftests/svg/smil/transform/reftest.list @@ -1,14 +1,14 @@ # Tests related to SVG Animation (using SMIL), focusing on the animateTransform # element. -fuzzy(110,1058) == additive-1.svg additive-1-ref.svg # bug 839865 +fuzzy(110,1056) == additive-1.svg additive-1-ref.svg # bug 839865 == animate-width-1.svg lime.svg fuzzy(155,4352) == paced-1.svg paced-1-ref.svg # bug 839865 -fuzzy(32,225) == rotate-angle-1.svg rotate-angle-ref.svg # bug 839865 -fuzzy(32,225) == rotate-angle-2.svg rotate-angle-ref.svg # bug 839865 -fuzzy(32,225) == rotate-angle-3.svg rotate-angle-ref.svg # bug 839865 -fuzzy(32,200) == rotate-angle-4.svg rotate-angle-ref.svg # bug 839865 -fuzzy(32,125) == rotate-angle-5.svg rotate-angle-ref.svg # bug 839865 +fuzzy(32,216) == rotate-angle-1.svg rotate-angle-ref.svg # bug 839865 +fuzzy(32,216) == rotate-angle-2.svg rotate-angle-ref.svg # bug 839865 +fuzzy(32,216) == rotate-angle-3.svg rotate-angle-ref.svg # bug 839865 +fuzzy(32,192) == rotate-angle-4.svg rotate-angle-ref.svg # bug 839865 +fuzzy(32,120) == rotate-angle-5.svg rotate-angle-ref.svg # bug 839865 fuzzy(16,6237) == scale-1.svg scale-1-ref.svg # bug 839865 == set-transform-1.svg lime.svg fuzzy(132,13656) == skew-1.svg skew-1-ref.svg # bug 839865 diff --git a/layout/reftests/text/reftest.list b/layout/reftests/text/reftest.list index 1d23acf26d3..cca53a6e015 100644 --- a/layout/reftests/text/reftest.list +++ b/layout/reftests/text/reftest.list @@ -50,7 +50,7 @@ skip-if(!(d2d||cocoaWidget)) random-if(d2d) != subpixel-glyphs-x-2a.html subpixe skip-if(B2G) HTTP(..) == subpixel-glyphs-x-3a.html subpixel-glyphs-x-3b.html # No platforms do subpixel positioning vertically == subpixel-glyphs-y-1a.html subpixel-glyphs-y-1b.html -fuzzy-if((Android||B2G),231,653) == subpixel-lineheight-1a.html subpixel-lineheight-1b.html +fuzzy-if((Android||B2G),231,603) == subpixel-lineheight-1a.html subpixel-lineheight-1b.html == swash-1.html swash-1-ref.html HTTP(..) != synthetic-bold-metrics-01.html synthetic-bold-metrics-01-notref.html HTTP(..) == synthetic-bold-papyrus-01.html synthetic-bold-papyrus-01-ref.html diff --git a/mobile/android/app/mobile.js b/mobile/android/app/mobile.js index 65bb662150a..478164dccef 100644 --- a/mobile/android/app/mobile.js +++ b/mobile/android/app/mobile.js @@ -360,9 +360,6 @@ pref("gfx.displayport.strategy_vb.danger_y_incr", -1); // additional danger zone // prediction bias strategy options pref("gfx.displayport.strategy_pb.threshold", -1); // velocity threshold in inches/frame -// Allow 24-bit colour when the hardware supports it -pref("gfx.android.rgb16.force", false); - // don't allow JS to move and resize existing windows pref("dom.disable_window_move_resize", true); diff --git a/mobile/android/base/GeckoApp.java b/mobile/android/base/GeckoApp.java index f481676a1f9..118f00eb7a3 100644 --- a/mobile/android/base/GeckoApp.java +++ b/mobile/android/base/GeckoApp.java @@ -2191,15 +2191,6 @@ abstract public class GeckoApp } protected void connectGeckoLayerClient() { - // See if we want to force 16-bit colour before doing anything - PrefsHelper.getPref("gfx.android.rgb16.force", new PrefsHelper.PrefHandlerBase() { - @Override public void prefValue(String pref, boolean force16bit) { - if (force16bit) { - GeckoAppShell.setScreenDepthOverride(16); - } - } - }); - mLayerView.getLayerClient().notifyGeckoReady(); mLayerView.addTouchInterceptor(this); diff --git a/mobile/android/base/GeckoAppShell.java b/mobile/android/base/GeckoAppShell.java index 65227d19f37..e348a8d3b26 100644 --- a/mobile/android/base/GeckoAppShell.java +++ b/mobile/android/base/GeckoAppShell.java @@ -38,7 +38,6 @@ import android.graphics.Canvas; import android.graphics.Color; import android.graphics.ImageFormat; import android.graphics.Paint; -import android.graphics.PixelFormat; import android.graphics.Rect; import android.graphics.RectF; import android.graphics.SurfaceTexture; @@ -136,7 +135,6 @@ public class GeckoAppShell static private final boolean LOGGING = false; static private int sDensityDpi = 0; - static private int sScreenDepth = 0; private static final EventDispatcher sEventDispatcher = new EventDispatcher(); @@ -1388,36 +1386,6 @@ public class GeckoAppShell return sDensityDpi; } - /** - * Returns the colour depth of the default screen. This will either be - * 24 or 16. - */ - public static synchronized int getScreenDepth() { - if (sScreenDepth == 0 && getGeckoInterface() != null) { - switch (getGeckoInterface().getActivity().getWindowManager().getDefaultDisplay().getPixelFormat()) { - case PixelFormat.RGBA_8888 : - case PixelFormat.RGBX_8888 : - case PixelFormat.RGB_888 : - sScreenDepth = 24; - break; - default: - sScreenDepth = 16; - break; - } - } - - return sScreenDepth; - } - - public static synchronized void setScreenDepthOverride(int aScreenDepth) { - if (sScreenDepth != 0) { - Log.e(LOGTAG, "Tried to override screen depth after it's already been set"); - return; - } - - sScreenDepth = aScreenDepth; - } - public static void setFullScreen(boolean fullscreen) { if (getGeckoInterface() != null) getGeckoInterface().setFullScreen(fullscreen); diff --git a/mobile/android/base/Tab.java b/mobile/android/base/Tab.java index c9e75458285..9d8f2172732 100644 --- a/mobile/android/base/Tab.java +++ b/mobile/android/base/Tab.java @@ -182,9 +182,7 @@ public class Tab { } if (mThumbnailBitmap == null) { - Bitmap.Config config = (GeckoAppShell.getScreenDepth() == 24) ? - Bitmap.Config.ARGB_8888 : Bitmap.Config.RGB_565; - mThumbnailBitmap = Bitmap.createBitmap(width, height, config); + mThumbnailBitmap = Bitmap.createBitmap(width, height, Bitmap.Config.RGB_565); } return mThumbnailBitmap; diff --git a/mobile/android/base/ThumbnailHelper.java b/mobile/android/base/ThumbnailHelper.java index 0258fad0de1..56d09829c2e 100644 --- a/mobile/android/base/ThumbnailHelper.java +++ b/mobile/android/base/ThumbnailHelper.java @@ -105,8 +105,7 @@ public final class ThumbnailHelper { mWidth &= ~0x1; // Ensure the width is always an even number (bug 776906) mHeight = Math.round(mWidth * THUMBNAIL_ASPECT_RATIO); - int pixelSize = (GeckoAppShell.getScreenDepth() == 24) ? 4 : 2; - int capacity = mWidth * mHeight * pixelSize; + int capacity = mWidth * mHeight * 2; // Multiply by 2 for 16bpp if (mBuffer == null || mBuffer.capacity() != capacity) { if (mBuffer != null) { mBuffer = DirectBufferAllocator.free(mBuffer); @@ -183,23 +182,7 @@ public final class ThumbnailHelper { private void processThumbnailData(Tab tab, ByteBuffer data) { Bitmap b = tab.getThumbnailBitmap(mWidth, mHeight); data.position(0); - if (b.getConfig() == Bitmap.Config.RGB_565) { - b.copyPixelsFromBuffer(data); - } else { - // Unfortunately, Gecko's 32-bit format is BGRA and Android's is - // ARGB, so we need to manually swizzle. - for (int y = 0; y < mHeight; y++) { - for (int x = 0; x < mWidth; x++) { - int index = (y * mWidth + x) * 4; - int bgra = data.getInt(index); - int argb = ((bgra << 24) & 0xFF000000) - | ((bgra << 8) & 0x00FF0000) - | ((bgra >> 8) & 0x0000FF00) - | ((bgra >> 24) & 0x000000FF); - b.setPixel(x, y, argb); - } - } - } + b.copyPixelsFromBuffer(data); setTabThumbnail(tab, b, null); } diff --git a/mobile/android/base/gfx/GLController.java b/mobile/android/base/gfx/GLController.java index 72c2f4d58dd..c27c0565fa7 100644 --- a/mobile/android/base/gfx/GLController.java +++ b/mobile/android/base/gfx/GLController.java @@ -49,7 +49,7 @@ public class GLController { private static final int LOCAL_EGL_OPENGL_ES2_BIT = 4; - private static final int[] CONFIG_SPEC_16BPP = { + private static final int[] CONFIG_SPEC = { EGL10.EGL_RED_SIZE, 5, EGL10.EGL_GREEN_SIZE, 6, EGL10.EGL_BLUE_SIZE, 5, @@ -58,15 +58,6 @@ public class GLController { EGL10.EGL_NONE }; - private static final int[] CONFIG_SPEC_24BPP = { - EGL10.EGL_RED_SIZE, 8, - EGL10.EGL_GREEN_SIZE, 8, - EGL10.EGL_BLUE_SIZE, 8, - EGL10.EGL_SURFACE_TYPE, EGL10.EGL_WINDOW_BIT, - EGL10.EGL_RENDERABLE_TYPE, LOCAL_EGL_OPENGL_ES2_BIT, - EGL10.EGL_NONE - }; - private GLController() { // Here we start the GfxInfo thread, which will query OpenGL // system information for Gecko. This must be done early enough that the data will be @@ -211,41 +202,26 @@ public class GLController { } private EGLConfig chooseConfig() { - int[] desiredConfig; - int rSize, gSize, bSize; int[] numConfigs = new int[1]; - - switch (GeckoAppShell.getScreenDepth()) { - case 24: - desiredConfig = CONFIG_SPEC_24BPP; - rSize = gSize = bSize = 8; - break; - case 16: - default: - desiredConfig = CONFIG_SPEC_16BPP; - rSize = 5; gSize = 6; bSize = 5; - break; - } - - if (!mEGL.eglChooseConfig(mEGLDisplay, desiredConfig, null, 0, numConfigs) || + if (!mEGL.eglChooseConfig(mEGLDisplay, CONFIG_SPEC, null, 0, numConfigs) || numConfigs[0] <= 0) { throw new GLControllerException("No available EGL configurations " + getEGLError()); } EGLConfig[] configs = new EGLConfig[numConfigs[0]]; - if (!mEGL.eglChooseConfig(mEGLDisplay, desiredConfig, configs, numConfigs[0], numConfigs)) { + if (!mEGL.eglChooseConfig(mEGLDisplay, CONFIG_SPEC, configs, numConfigs[0], numConfigs)) { throw new GLControllerException("No EGL configuration for that specification " + getEGLError()); } - // Select the first configuration that matches the screen depth. + // Select the first 565 RGB configuration. int[] red = new int[1], green = new int[1], blue = new int[1]; for (EGLConfig config : configs) { mEGL.eglGetConfigAttrib(mEGLDisplay, config, EGL10.EGL_RED_SIZE, red); mEGL.eglGetConfigAttrib(mEGLDisplay, config, EGL10.EGL_GREEN_SIZE, green); mEGL.eglGetConfigAttrib(mEGLDisplay, config, EGL10.EGL_BLUE_SIZE, blue); - if (red[0] == rSize && green[0] == gSize && blue[0] == bSize) { + if (red[0] == 5 && green[0] == 6 && blue[0] == 5) { return config; } } diff --git a/mobile/android/base/widget/TopSitesView.java b/mobile/android/base/widget/TopSitesView.java index eb88ddfa046..87861a28364 100644 --- a/mobile/android/base/widget/TopSitesView.java +++ b/mobile/android/base/widget/TopSitesView.java @@ -316,12 +316,7 @@ public class TopSitesView extends GridView { if (b == null) continue; - Bitmap thumbnail = null; - try { - thumbnail = BitmapUtils.decodeByteArray(b); - } catch (IllegalArgumentException e) { - Log.e(LOGTAG, "Error decoding thumbnail", e); - } + Bitmap thumbnail = BitmapUtils.decodeByteArray(b); if (thumbnail == null) continue; diff --git a/widget/android/AndroidBridge.cpp b/widget/android/AndroidBridge.cpp index dc35dee1d67..4a8b5b74384 100644 --- a/widget/android/AndroidBridge.cpp +++ b/widget/android/AndroidBridge.cpp @@ -134,7 +134,6 @@ AndroidBridge::Init(JNIEnv *jEnv, jAlertsProgressListener_OnProgress = (jmethodID) jEnv->GetStaticMethodID(jGeckoAppShellClass, "alertsProgressListener_OnProgress", "(Ljava/lang/String;JJLjava/lang/String;)V"); jCloseNotification = (jmethodID) jEnv->GetStaticMethodID(jGeckoAppShellClass, "closeNotification", "(Ljava/lang/String;)V"); jGetDpi = (jmethodID) jEnv->GetStaticMethodID(jGeckoAppShellClass, "getDpi", "()I"); - jGetScreenDepth = (jmethodID) jEnv->GetStaticMethodID(jGeckoAppShellClass, "getScreenDepth", "()I"); jSetFullScreen = (jmethodID) jEnv->GetStaticMethodID(jGeckoAppShellClass, "setFullScreen", "(Z)V"); jShowInputMethodPicker = (jmethodID) jEnv->GetStaticMethodID(jGeckoAppShellClass, "showInputMethodPicker", "()V"); jNotifyDefaultPrevented = (jmethodID) jEnv->GetStaticMethodID(jGeckoAppShellClass, "notifyDefaultPrevented", "(Z)V"); @@ -775,29 +774,6 @@ AndroidBridge::GetDPI() return sDPI; } -int -AndroidBridge::GetScreenDepth() -{ - static int sDepth = 0; - if (sDepth) - return sDepth; - - ALOG_BRIDGE("AndroidBridge::GetScreenDepth"); - const int DEFAULT_DEPTH = 16; - JNIEnv *env = GetJNIEnv(); - if (!env) - return DEFAULT_DEPTH; - AutoLocalJNIFrame jniFrame(env); - - sDepth = (int)env->CallStaticIntMethod(mGeckoAppShellClass, jGetScreenDepth); - if (jniFrame.CheckForException()) { - sDepth = 0; - return DEFAULT_DEPTH; - } - - return sDepth; -} - void AndroidBridge::ShowFilePickerForExtensions(nsAString& aFilePath, const nsAString& aExtensions) { @@ -2684,17 +2660,13 @@ nsresult AndroidBridge::CaptureThumbnail(nsIDOMWindow *window, int32_t bufW, int nsPresContext::CSSPixelsToAppUnits(srcW / scale), nsPresContext::CSSPixelsToAppUnits(srcH / scale)); - bool is24bit = (GetScreenDepth() == 24); - uint32_t stride = bufW * (is24bit ? 4 : 2); + uint32_t stride = bufW * 2 /* 16 bpp */; void* data = env->GetDirectBufferAddress(buffer); if (!data) return NS_ERROR_FAILURE; - nsRefPtr surf = - new gfxImageSurface(static_cast(data), nsIntSize(bufW, bufH), stride, - is24bit ? gfxASurface::ImageFormatRGB24 : - gfxASurface::ImageFormatRGB16_565); + nsRefPtr surf = new gfxImageSurface(static_cast(data), nsIntSize(bufW, bufH), stride, gfxASurface::ImageFormatRGB16_565); if (surf->CairoStatus() != 0) { ALOG_BRIDGE("Error creating gfxImageSurface"); return NS_ERROR_FAILURE; diff --git a/widget/android/AndroidBridge.h b/widget/android/AndroidBridge.h index 01c52674af2..07697857418 100644 --- a/widget/android/AndroidBridge.h +++ b/widget/android/AndroidBridge.h @@ -254,7 +254,6 @@ public: void CloseNotification(const nsAString& aAlertName); int GetDPI(); - int GetScreenDepth(); void ShowFilePickerForExtensions(nsAString& aFilePath, const nsAString& aExtensions); void ShowFilePickerForMimeType(nsAString& aFilePath, const nsAString& aMimeType); @@ -483,7 +482,6 @@ protected: jmethodID jAlertsProgressListener_OnProgress; jmethodID jCloseNotification; jmethodID jGetDpi; - jmethodID jGetScreenDepth; jmethodID jSetFullScreen; jmethodID jShowInputMethodPicker; jmethodID jNotifyDefaultPrevented; diff --git a/widget/android/nsScreenManagerAndroid.cpp b/widget/android/nsScreenManagerAndroid.cpp index 95facf8d39a..905f02c962a 100644 --- a/widget/android/nsScreenManagerAndroid.cpp +++ b/widget/android/nsScreenManagerAndroid.cpp @@ -45,7 +45,9 @@ nsScreenAndroid::GetAvailRect(int32_t *outLeft, int32_t *outTop, int32_t *outWid NS_IMETHODIMP nsScreenAndroid::GetPixelDepth(int32_t *aPixelDepth) { - *aPixelDepth = AndroidBridge::Bridge()->GetScreenDepth(); + // XXX do we need to lie here about 16bpp? Or + // should we actually check and return the right thing? + *aPixelDepth = 16; return NS_OK; } diff --git a/widget/android/nsWindow.cpp b/widget/android/nsWindow.cpp index 5f36b6d0eb4..1d15c5d5204 100644 --- a/widget/android/nsWindow.cpp +++ b/widget/android/nsWindow.cpp @@ -1066,17 +1066,11 @@ nsWindow::OnDraw(AndroidGeckoEvent *ae) return; } - int bytesPerPixel = 2; - gfxASurface::gfxImageFormat format = gfxASurface::ImageFormatRGB16_565; - if (AndroidBridge::Bridge()->GetScreenDepth() == 24) { - bytesPerPixel = 4; - format = gfxASurface::ImageFormatRGB24; - } - layers::renderTraceEventStart("Get surface", "424545"); - static unsigned char bits2[32 * 32 * 4]; + static unsigned char bits2[32 * 32 * 2]; nsRefPtr targetSurface = - new gfxImageSurface(bits2, gfxIntSize(32, 32), 32 * bytesPerPixel, format); + new gfxImageSurface(bits2, gfxIntSize(32, 32), 32 * 2, + gfxASurface::ImageFormatRGB16_565); layers::renderTraceEventEnd("Get surface", "424545"); layers::renderTraceEventStart("Widget draw to", "434646");