Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(557)

Side by Side Diff: content/public/android/java/src/org/chromium/content/browser/RenderCoordinates.java

Issue 699333003: Support InputMethodManager#updateCursorAnchorInfo for Android 5.0 (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase before splitting this CL. Created 5 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 package org.chromium.content.browser; 5 package org.chromium.content.browser;
6 6
7 import org.chromium.base.VisibleForTesting;
8
7 /** 9 /**
8 * Cached copy of all positions and scales (CSS-to-DIP-to-physical pixels) 10 * Cached copy of all positions and scales (CSS-to-DIP-to-physical pixels)
9 * reported from the renderer. 11 * reported from the renderer.
10 * Provides wrappers and a utility class to help with coordinate transforms on t he client side. 12 * Provides wrappers and a utility class to help with coordinate transforms on t he client side.
11 * Provides the internally-visible set of update methods (called from ContentVie wCore). 13 * Provides the internally-visible set of update methods (called from ContentVie wCore).
12 * 14 *
13 * Unless stated otherwise, all coordinates are in CSS (document) coordinate spa ce. 15 * Unless stated otherwise, all coordinates are in CSS (document) coordinate spa ce.
14 */ 16 */
15 public class RenderCoordinates { 17 public class RenderCoordinates {
16 18
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after
63 mMinPageScaleFactor = minPageScaleFactor; 65 mMinPageScaleFactor = minPageScaleFactor;
64 mMaxPageScaleFactor = maxPageScaleFactor; 66 mMaxPageScaleFactor = maxPageScaleFactor;
65 mContentOffsetYPix = contentOffsetYPix; 67 mContentOffsetYPix = contentOffsetYPix;
66 68
67 updateContentSizeCss(contentWidthCss, contentHeightCss); 69 updateContentSizeCss(contentWidthCss, contentHeightCss);
68 mLastFrameViewportWidthCss = viewportWidthCss; 70 mLastFrameViewportWidthCss = viewportWidthCss;
69 mLastFrameViewportHeightCss = viewportHeightCss; 71 mLastFrameViewportHeightCss = viewportHeightCss;
70 } 72 }
71 73
72 /** 74 /**
75 * Sets several fields for unit test. (used by {@link CursorAnchorInfoSource Test}).
76 * @param deviceScaleFactor Device scale factor (maps DIP pixels to physical pixels).
77 * @param pageScaleFactor Page scale factor (maps CSS pixels to DIP pixels).
78 * @param scrollXCss Horizontal scroll offset in CSS pixels.
79 * @param scrollYCss Vertical scroll offset in CSS pixels.
80 * @param contentOffsetYPix Physical on-screen Y offset amount below the top controls.
81 */
82 @VisibleForTesting
83 public void setFrameInfoForTest(
84 float deviceScaleFactor, float pageScaleFactor,
85 float scrollXCss, float scrollYCss,
86 float contentOffsetYPix) {
87 reset();
88 mDeviceScaleFactor = deviceScaleFactor;
89 mPageScaleFactor = pageScaleFactor;
90 mScrollXCss = scrollXCss;
91 mScrollYCss = scrollYCss;
92 mContentOffsetYPix = contentOffsetYPix;
93 }
94
95 /**
73 * Handles conversion of a point from window-relative-local-dip or screen-pi x 96 * Handles conversion of a point from window-relative-local-dip or screen-pi x
74 * to document-absolute-CSS space and vice versa. 97 * to document-absolute-CSS space and vice versa.
75 */ 98 */
76 public class NormalizedPoint { 99 public class NormalizedPoint {
77 private float mXAbsoluteCss, mYAbsoluteCss; 100 private float mXAbsoluteCss, mYAbsoluteCss;
78 101
79 private NormalizedPoint() { 102 private NormalizedPoint() {
80 } 103 }
81 104
82 /** 105 /**
(...skipping 280 matching lines...) Expand 10 before | Expand all | Expand 10 after
363 return pix / (mDeviceScaleFactor * mPageScaleFactor); 386 return pix / (mDeviceScaleFactor * mPageScaleFactor);
364 } 387 }
365 388
366 /** 389 /**
367 * @return Local CSS converted to physical coordinates. 390 * @return Local CSS converted to physical coordinates.
368 */ 391 */
369 public float fromLocalCssToPix(float css) { 392 public float fromLocalCssToPix(float css) {
370 return css * mPageScaleFactor * mDeviceScaleFactor; 393 return css * mPageScaleFactor * mDeviceScaleFactor;
371 } 394 }
372 } 395 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698