| Index: telemetry/telemetry/internal/actions/scroll.js
|
| diff --git a/telemetry/telemetry/internal/actions/scroll.js b/telemetry/telemetry/internal/actions/scroll.js
|
| index d23cd63984dab41518992ece4a3ca5b7e0d68059..2cc565011e1aa0ce134354410ec8e45d716fe2d9 100644
|
| --- a/telemetry/telemetry/internal/actions/scroll.js
|
| +++ b/telemetry/telemetry/internal/actions/scroll.js
|
| @@ -32,7 +32,9 @@
|
| function supportedByBrowser() {
|
| return !!(window.chrome &&
|
| chrome.gpuBenchmarking &&
|
| - chrome.gpuBenchmarking.smoothScrollBy);
|
| + chrome.gpuBenchmarking.smoothScrollBy &&
|
| + chrome.gpuBenchmarking.visualViewportHeight &&
|
| + chrome.gpuBenchmarking.visualViewportWidth);
|
| }
|
|
|
| // This class scrolls a page from the top to the bottom once.
|
| @@ -52,7 +54,7 @@
|
| var clientHeight;
|
| // clientHeight is "special" for the body element.
|
| if (this.element_ == document.body)
|
| - clientHeight = window.innerHeight;
|
| + clientHeight = __GestureCommon_GetWindowHeight();
|
| else
|
| clientHeight = this.element_.clientHeight;
|
|
|
| @@ -69,7 +71,7 @@
|
| var clientWidth;
|
| // clientWidth is "special" for the body element.
|
| if (this.element_ == document.body)
|
| - clientWidth = window.innerWidth;
|
| + clientWidth = __GestureCommon_GetWindowWidth();
|
| else
|
| clientWidth = this.element_.clientWidth;
|
|
|
| @@ -124,14 +126,10 @@
|
| this.getScrollDistance_());
|
|
|
| var rect = __GestureCommon_GetBoundingVisibleRect(this.options_.element_);
|
| - // TODO(bccheng): workaround crbug/599656
|
| - // Use device-independent pixel value for the x and y positions
|
| var start_left =
|
| - rect.left + (rect.width / window.devicePixelRatio) *
|
| - this.options_.left_start_ratio_;
|
| + rect.left + rect.width * this.options_.left_start_ratio_;
|
| var start_top =
|
| - rect.top + (rect.height / window.devicePixelRatio) *
|
| - this.options_.top_start_ratio_;
|
| + rect.top + rect.height * this.options_.top_start_ratio_;
|
| chrome.gpuBenchmarking.smoothScrollBy(
|
| distance, this.onGestureComplete_.bind(this), start_left, start_top,
|
| this.options_.gesture_source_type_, this.options_.direction_,
|
|
|