From a9b3c681444eb289a7b431f3d2d3c05872a09deb Mon Sep 17 00:00:00 2001 From: Gaia Pushbot Date: Thu, 15 Aug 2013 03:05:27 -0700 Subject: [PATCH 1/8] Bumping gaia.json for 2 gaia-central revision(s) ======== https://hg.mozilla.org/integration/gaia-central/rev/e240516ce3ec Author: Sam Joch Desc: Merge pull request #11348 from epang/bug901496_browsergraphicswap Bug 901499 - Swap Camera Graphics r=samjoch ======== https://hg.mozilla.org/integration/gaia-central/rev/44bde2c73c65 Author: Eric Pang Desc: Bug 901499 - Swap Camera Graphics --- b2g/config/gaia.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/b2g/config/gaia.json b/b2g/config/gaia.json index d0f1e29e9dc..df133e6dcc6 100644 --- a/b2g/config/gaia.json +++ b/b2g/config/gaia.json @@ -1,4 +1,4 @@ { - "revision": "4194b54f00c29a3e7fd9bf50391f3f042982d940", + "revision": "e240516ce3ec5966d42f5cbe1f869f5f5d0f7958", "repo_path": "/integration/gaia-central" } From 99713f80a06951810059fa3d4daba8c4e7b8acbf Mon Sep 17 00:00:00 2001 From: Gaia Pushbot Date: Thu, 15 Aug 2013 03:20:25 -0700 Subject: [PATCH 2/8] Bumping gaia.json for 4 gaia-central revision(s) ======== https://hg.mozilla.org/integration/gaia-central/rev/0452882ba864 Author: Alive.Kuo Desc: Merge pull request #11541 from snowmantw/issue904982 Bug 904982 - [System] System reboot if CustomDialog shows with improper callbacks, r=alive ======== https://hg.mozilla.org/integration/gaia-central/rev/349a68bfec90 Author: Greg Weng (snowmantw) Desc: Bug 904982 - [System] System reboot if CustomDialog shows with improper callbacks ======== https://hg.mozilla.org/integration/gaia-central/rev/9c65f0e58196 Author: Gabriele Svelto Desc: Merge pull request #11424 from gabrielesvelto/bug-902500-scrollintoview Bug 902500 - Prevent synchronous reflows when scrolling to the bottom of the message list r=julienw ======== https://hg.mozilla.org/integration/gaia-central/rev/537dea3ef4f7 Author: Gabriele Svelto Desc: Bug 902500 - Prevent synchronous reflows when scrolling to the bottom of the message list --- b2g/config/gaia.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/b2g/config/gaia.json b/b2g/config/gaia.json index df133e6dcc6..194f3fd9d11 100644 --- a/b2g/config/gaia.json +++ b/b2g/config/gaia.json @@ -1,4 +1,4 @@ { - "revision": "e240516ce3ec5966d42f5cbe1f869f5f5d0f7958", + "revision": "0452882ba864920957a5efefcdc51e82d183828b", "repo_path": "/integration/gaia-central" } From b3ab64da9c219c849591f791d132f442cb3fc0de Mon Sep 17 00:00:00 2001 From: Gaia Pushbot Date: Thu, 15 Aug 2013 03:40:23 -0700 Subject: [PATCH 3/8] Bumping gaia.json for 2 gaia-central revision(s) ======== https://hg.mozilla.org/integration/gaia-central/rev/7074e7efe829 Author: Sam Joch Desc: Merge pull request #11466 from pivanov/bug-903360 Bug 903360 - [HD] Blue time stamp is too small and should be closer to the right edge r=samjoch ======== https://hg.mozilla.org/integration/gaia-central/rev/94253782dd92 Author: Pavel Ivanov Desc: Bug 903360 - [HD] Blue time stamp is too small and should be closer to the right edge --- b2g/config/gaia.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/b2g/config/gaia.json b/b2g/config/gaia.json index 194f3fd9d11..65d88b48667 100644 --- a/b2g/config/gaia.json +++ b/b2g/config/gaia.json @@ -1,4 +1,4 @@ { - "revision": "0452882ba864920957a5efefcdc51e82d183828b", + "revision": "7074e7efe829b1c29326dce177234cdf4c0e7df0", "repo_path": "/integration/gaia-central" } From 3a4fb0c3f652bbc3b6eca530d1ff203b8c81857a Mon Sep 17 00:00:00 2001 From: Gaia Pushbot Date: Thu, 15 Aug 2013 04:25:24 -0700 Subject: [PATCH 4/8] Bumping gaia.json for 2 gaia-central revision(s) ======== https://hg.mozilla.org/integration/gaia-central/rev/a58a2144100e Author: Yuren Ju Desc: Merge pull request #11545 from yurenju/remove-offline Bug 905608 - Remove build/offline-cache.js and make target for it r=@timdream ======== https://hg.mozilla.org/integration/gaia-central/rev/518d0a317466 Author: Yuren Ju Desc: Bug 905608 - Remove build/offline-cache.js and make target for it --- b2g/config/gaia.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/b2g/config/gaia.json b/b2g/config/gaia.json index 65d88b48667..09394bf2b70 100644 --- a/b2g/config/gaia.json +++ b/b2g/config/gaia.json @@ -1,4 +1,4 @@ { - "revision": "7074e7efe829b1c29326dce177234cdf4c0e7df0", + "revision": "a58a2144100e219d4a32d776941d360d0fdb0437", "repo_path": "/integration/gaia-central" } From 1dc4995fb9949e5d21e9d734e514dc70637e272e Mon Sep 17 00:00:00 2001 From: Gaia Pushbot Date: Thu, 15 Aug 2013 04:50:23 -0700 Subject: [PATCH 5/8] Bumping gaia.json for 2 gaia-central revision(s) ======== https://hg.mozilla.org/integration/gaia-central/rev/f4bf404a0aa8 Author: Alive.Kuo Desc: Merge pull request #11531 from alivedise/bugzilla/904991/app-window-factory Bug 904991 - App Window Factory, r=timdream ======== https://hg.mozilla.org/integration/gaia-central/rev/adceb5097431 Author: Alive Kuo Desc: Bug 904991 - App Window Factory --- b2g/config/gaia.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/b2g/config/gaia.json b/b2g/config/gaia.json index 09394bf2b70..c9a66395b6b 100644 --- a/b2g/config/gaia.json +++ b/b2g/config/gaia.json @@ -1,4 +1,4 @@ { - "revision": "a58a2144100e219d4a32d776941d360d0fdb0437", + "revision": "f4bf404a0aa81269d7ba9393008f4b72c0ef0b18", "repo_path": "/integration/gaia-central" } From 5f324bf8f9e0f96f74fafcf98f642acb8a263ce8 Mon Sep 17 00:00:00 2001 From: Kartikaya Gupta Date: Thu, 15 Aug 2013 08:03:31 -0400 Subject: [PATCH 6/8] Bug 890280 - Update the AsyncPanZoomController tests to also test the transformation matrices. r=BenWa --- .../gtest/TestAsyncPanZoomController.cpp | 67 +++++++++++++++---- 1 file changed, 53 insertions(+), 14 deletions(-) diff --git a/gfx/tests/gtest/TestAsyncPanZoomController.cpp b/gfx/tests/gtest/TestAsyncPanZoomController.cpp index a9351dc7284..bc413782d22 100644 --- a/gfx/tests/gtest/TestAsyncPanZoomController.cpp +++ b/gfx/tests/gtest/TestAsyncPanZoomController.cpp @@ -6,6 +6,8 @@ #include "gtest/gtest.h" #include "gmock/gmock.h" +#include "mozilla/Attributes.h" +#include "mozilla/gfx/Tools.h" // For NudgeToInteger #include "mozilla/layers/AsyncCompositionManager.h" // for ViewTransform #include "mozilla/layers/AsyncPanZoomController.h" #include "mozilla/layers/LayerManagerComposite.h" @@ -365,6 +367,20 @@ SetScrollableFrameMetrics(Layer* aLayer, FrameMetrics::ViewID aScrollId, MockCon EXPECT_CALL(*mcc, RequestContentRepaint(_)).Times(1); } +static gfxPoint +NudgeToIntegers(const gfxPoint& aPoint) +{ + // gfxPoint has doubles but NudgeToInteger takes + // floats so use local vars. The loss in precision + // shouldn't affect this because these are supposed + // to be integers anyway. + float x = aPoint.x; + float y = aPoint.y; + NudgeToInteger(&x); + NudgeToInteger(&y); + return gfxPoint(x, y); +} + TEST(APZCTreeManager, GetAPZCAtPoint) { nsTArray > layers; nsRefPtr lm; @@ -376,70 +392,91 @@ TEST(APZCTreeManager, GetAPZCAtPoint) { ScopedLayerTreeRegistration controller(0, root, mcc); nsRefPtr manager = new TestAPZCTreeManager(); - gfx3DMatrix matrix; + gfx3DMatrix transformToApzc; + gfx3DMatrix transformToScreen; // No APZC attached so hit testing will return no APZC at (20,20) - nsRefPtr hit = manager->GetTargetAPZC(ScreenPoint(20, 20), matrix, matrix); + nsRefPtr hit = manager->GetTargetAPZC(ScreenPoint(20, 20), transformToApzc, transformToScreen); AsyncPanZoomController* nullAPZC = nullptr; EXPECT_EQ(nullAPZC, hit.get()); + EXPECT_EQ(gfx3DMatrix(), transformToApzc); + EXPECT_EQ(gfx3DMatrix(), transformToScreen); // Now we have a root APZC that will match the page SetScrollableFrameMetrics(root, FrameMetrics::ROOT_SCROLL_ID, mcc); manager->UpdatePanZoomControllerTree(nullptr, root, 0, false); - hit = manager->GetTargetAPZC(ScreenPoint(15, 15), matrix, matrix); + hit = manager->GetTargetAPZC(ScreenPoint(15, 15), transformToApzc, transformToScreen); EXPECT_EQ(root->AsContainerLayer()->GetAsyncPanZoomController(), hit.get()); // expect hit point at LayerIntPoint(15, 15) + EXPECT_EQ(gfxPoint(15, 15), transformToApzc.Transform(gfxPoint(15, 15))); + EXPECT_EQ(gfxPoint(15, 15), transformToScreen.Transform(gfxPoint(15, 15))); // Now we have a sub APZC with a better fit SetScrollableFrameMetrics(layers[3], FrameMetrics::START_SCROLL_ID, mcc); manager->UpdatePanZoomControllerTree(nullptr, root, 0, false); EXPECT_NE(root->AsContainerLayer()->GetAsyncPanZoomController(), layers[3]->AsContainerLayer()->GetAsyncPanZoomController()); - hit = manager->GetTargetAPZC(ScreenPoint(15, 15), matrix, matrix); + hit = manager->GetTargetAPZC(ScreenPoint(15, 15), transformToApzc, transformToScreen); EXPECT_EQ(layers[3]->AsContainerLayer()->GetAsyncPanZoomController(), hit.get()); // expect hit point at LayerIntPoint(15, 15) + EXPECT_EQ(gfxPoint(15, 15), transformToApzc.Transform(gfxPoint(15, 15))); + EXPECT_EQ(gfxPoint(15, 15), transformToScreen.Transform(gfxPoint(15, 15))); // Now test hit testing when we have two scrollable layers - hit = manager->GetTargetAPZC(ScreenPoint(15, 15), matrix, matrix); + hit = manager->GetTargetAPZC(ScreenPoint(15, 15), transformToApzc, transformToScreen); EXPECT_EQ(layers[3]->AsContainerLayer()->GetAsyncPanZoomController(), hit.get()); SetScrollableFrameMetrics(layers[4], FrameMetrics::START_SCROLL_ID + 1, mcc); manager->UpdatePanZoomControllerTree(nullptr, root, 0, false); - hit = manager->GetTargetAPZC(ScreenPoint(15, 15), matrix, matrix); + hit = manager->GetTargetAPZC(ScreenPoint(15, 15), transformToApzc, transformToScreen); EXPECT_EQ(layers[4]->AsContainerLayer()->GetAsyncPanZoomController(), hit.get()); // expect hit point at LayerIntPoint(15, 15) + EXPECT_EQ(gfxPoint(15, 15), transformToApzc.Transform(gfxPoint(15, 15))); + EXPECT_EQ(gfxPoint(15, 15), transformToScreen.Transform(gfxPoint(15, 15))); // Hit test ouside the reach of layer[3,4] but inside root - hit = manager->GetTargetAPZC(ScreenPoint(90, 90), matrix, matrix); + hit = manager->GetTargetAPZC(ScreenPoint(90, 90), transformToApzc, transformToScreen); EXPECT_EQ(root->AsContainerLayer()->GetAsyncPanZoomController(), hit.get()); // expect hit point at LayerIntPoint(90, 90) + EXPECT_EQ(gfxPoint(90, 90), transformToApzc.Transform(gfxPoint(90, 90))); + EXPECT_EQ(gfxPoint(90, 90), transformToScreen.Transform(gfxPoint(90, 90))); // Hit test ouside the reach of any layer - hit = manager->GetTargetAPZC(ScreenPoint(1000, 10), matrix, matrix); + hit = manager->GetTargetAPZC(ScreenPoint(1000, 10), transformToApzc, transformToScreen); EXPECT_EQ(nullAPZC, hit.get()); - hit = manager->GetTargetAPZC(ScreenPoint(-1000, 10), matrix, matrix); + EXPECT_EQ(gfx3DMatrix(), transformToApzc); + EXPECT_EQ(gfx3DMatrix(), transformToScreen); + hit = manager->GetTargetAPZC(ScreenPoint(-1000, 10), transformToApzc, transformToScreen); EXPECT_EQ(nullAPZC, hit.get()); + EXPECT_EQ(gfx3DMatrix(), transformToApzc); + EXPECT_EQ(gfx3DMatrix(), transformToScreen); // Test layer transform gfx3DMatrix transform; transform.ScalePost(0.1, 0.1, 1); root->SetBaseTransform(transform); manager->UpdatePanZoomControllerTree(nullptr, root, 0, false); - hit = manager->GetTargetAPZC(ScreenPoint(50, 50), matrix, matrix); // This point is now outside the root layer + hit = manager->GetTargetAPZC(ScreenPoint(50, 50), transformToApzc, transformToScreen); // This point is now outside the root layer EXPECT_EQ(nullAPZC, hit.get()); + EXPECT_EQ(gfx3DMatrix(), transformToApzc); + EXPECT_EQ(gfx3DMatrix(), transformToScreen); // This hit test will hit both layers[3] and layers[4]; layers[4] is later in the tree so // it is a better match - hit = manager->GetTargetAPZC(ScreenPoint(2, 2), matrix, matrix); + hit = manager->GetTargetAPZC(ScreenPoint(2, 2), transformToApzc, transformToScreen); EXPECT_EQ(layers[4]->AsContainerLayer()->GetAsyncPanZoomController(), hit.get()); // expect hit point at LayerPoint(20, 20) + EXPECT_EQ(gfxPoint(20, 20), NudgeToIntegers(transformToApzc.Transform(gfxPoint(2, 2)))); + EXPECT_EQ(gfxPoint(2, 2), NudgeToIntegers(transformToScreen.Transform(gfxPoint(20, 20)))); // Scale layer[4] outside the range layers[4]->SetBaseTransform(transform); // layer 4 effective visible screenrect: (0.05, 0.05, 0.2, 0.2) // Does not contain (2, 2) manager->UpdatePanZoomControllerTree(nullptr, root, 0, false); - hit = manager->GetTargetAPZC(ScreenPoint(2, 2), matrix, matrix); + hit = manager->GetTargetAPZC(ScreenPoint(2, 2), transformToApzc, transformToScreen); EXPECT_EQ(layers[3]->AsContainerLayer()->GetAsyncPanZoomController(), hit.get()); // expect hit point at LayerPoint(20, 20) + EXPECT_EQ(gfxPoint(20, 20), NudgeToIntegers(transformToApzc.Transform(gfxPoint(2, 2)))); + EXPECT_EQ(gfxPoint(2, 2), NudgeToIntegers(transformToScreen.Transform(gfxPoint(20, 20)))); // Transformation chain to layer 7 SetScrollableFrameMetrics(layers[7], FrameMetrics::START_SCROLL_ID + 2, mcc); @@ -458,9 +495,11 @@ TEST(APZCTreeManager, GetAPZCAtPoint) { manager->UpdatePanZoomControllerTree(nullptr, root, 0, false); // layer 7 effective visible screenrect (0,16,4,60) but clipped by parent layers - hit = manager->GetTargetAPZC(ScreenPoint(1, 45), matrix, matrix); + hit = manager->GetTargetAPZC(ScreenPoint(1, 45), transformToApzc, transformToScreen); EXPECT_EQ(layers[7]->AsContainerLayer()->GetAsyncPanZoomController(), hit.get()); - // expect hit point at LayerPoint(20, 29) + // expect hit point at LayerPoint(20, 440), which is CSSPoint(20, 29) + EXPECT_EQ(gfxPoint(20, 440), NudgeToIntegers(transformToApzc.Transform(gfxPoint(1, 45)))); + EXPECT_EQ(gfxPoint(1, 45), NudgeToIntegers(transformToScreen.Transform(gfxPoint(20, 440)))); manager->ClearTree(); } From 1f8e109a85f4758f54744e64fbc4ff4f4f718946 Mon Sep 17 00:00:00 2001 From: "Szu-Yu Chen [:aknow]" Date: Thu, 15 Aug 2013 08:25:56 -0400 Subject: [PATCH 7/8] Bug 905510 - Handle imported file not found. r=hsinyi --- .../tests/marionette/test_ril_code_quality.py | 21 ++++++++++++------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/dom/system/gonk/tests/marionette/test_ril_code_quality.py b/dom/system/gonk/tests/marionette/test_ril_code_quality.py index 242ac20128d..a64fb52aa39 100644 --- a/dom/system/gonk/tests/marionette/test_ril_code_quality.py +++ b/dom/system/gonk/tests/marionette/test_ril_code_quality.py @@ -140,7 +140,10 @@ class ResourceUriFileReader: @classmethod def get_uri(cls, filename): """Convert filename to URI in system.""" - return cls.URI_PREFIX + cls.URI_PATH[filename] + if filename.startswith(cls.URI_PREFIX): + return filename + else: + return cls.URI_PREFIX + cls.URI_PATH[filename] def __init__(self, marionette): self.runjs = lambda x: marionette.execute_script(x, new_sandbox=False) @@ -278,13 +281,15 @@ class Linter: # Maintain a mapping table. # New line number after merge => original file and line number. info.append((dst_line, filepath, 1)) - - code = self.code_reader.read_file(filepath) - lines = code.splitlines(True) # Keep '\n'. - src_results = StringUtility.auto_wrap_strict_mode( - StringUtility.auto_close(lines)) - dst_results.extend(src_results) - dst_line += len(src_results) + try: + code = self.code_reader.read_file(filepath) + lines = code.splitlines(True) # Keep '\n'. + src_results = StringUtility.auto_wrap_strict_mode( + StringUtility.auto_close(lines)) + dst_results.extend(src_results) + dst_line += len(src_results) + except: + info.pop() return dst_results, info def _convert_merged_result(self, error_lines, line_info): From efbf79d8c64a0b7c35288bc90be97aa4f9c477dd Mon Sep 17 00:00:00 2001 From: Mihnea Dobrescu-Balaur Date: Thu, 25 Jul 2013 17:31:10 -0700 Subject: [PATCH 8/8] Bug 873179 - Add support for JSReftests to B2G. r=ahal --- layout/tools/reftest/runreftestb2g.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/layout/tools/reftest/runreftestb2g.py b/layout/tools/reftest/runreftestb2g.py index ffd7b5e012a..904a0f41b35 100644 --- a/layout/tools/reftest/runreftestb2g.py +++ b/layout/tools/reftest/runreftestb2g.py @@ -540,6 +540,9 @@ def main(args=sys.argv[1:]): auto.setRemoteLog(options.remoteLogFile) auto.setServerInfo(options.webServer, options.httpPort, options.sslPort) + # Hack in a symbolic link for jsreftest + os.system("ln -s %s %s" % (os.path.join('..', 'jsreftest'), os.path.join(SCRIPT_DIRECTORY, 'jsreftest'))) + # Dynamically build the reftest URL if possible, beware that args[0] should exist 'inside' the webroot manifest = args[0] if os.path.exists(os.path.join(SCRIPT_DIRECTORY, args[0])):