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

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

Issue 141533006: [Android] Move the java content/ package to content_public/ to start the split. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Small fixes and findbugs line update Created 6 years, 11 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 side-by-side diff with in-line comments
Download patch
Index: content/public/android/java/src/org/chromium/content/browser/RenderCoordinates.java
diff --git a/content/public/android/java/src/org/chromium/content/browser/RenderCoordinates.java b/content/public/android/java/src/org/chromium/content/browser/RenderCoordinates.java
deleted file mode 100644
index 98961c01258195c2359396d16d96fe1ad3351009..0000000000000000000000000000000000000000
--- a/content/public/android/java/src/org/chromium/content/browser/RenderCoordinates.java
+++ /dev/null
@@ -1,336 +0,0 @@
-// Copyright 2013 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-package org.chromium.content.browser;
-
-/**
- * Cached copy of all positions and scales (CSS-to-DIP-to-physical pixels)
- * reported from the renderer.
- * Provides wrappers and a utility class to help with coordinate transforms on the client side.
- * Provides the internally-visible set of update methods (called from ContentViewCore).
- *
- * Unless stated otherwise, all coordinates are in CSS (document) coordinate space.
- */
-public class RenderCoordinates {
- // Scroll offset from the native in CSS.
- private float mScrollXCss;
- private float mScrollYCss;
-
- // Content size from native in CSS.
- private float mContentWidthCss;
- private float mContentHeightCss;
-
- // Last-frame render-reported viewport size in CSS.
- private float mLastFrameViewportWidthCss;
- private float mLastFrameViewportHeightCss;
-
- // Cached page scale factor from native.
- private float mPageScaleFactor = 1.0f;
- private float mMinPageScaleFactor = 1.0f;
- private float mMaxPageScaleFactor = 1.0f;
-
- // Cached device density.
- private float mDeviceScaleFactor;
-
- private float mContentOffsetYPix;
-
- // Internally-visible set of update methods (used by ContentViewCore).
- void reset() {
- mScrollXCss = mScrollYCss = 0;
- mPageScaleFactor = 1.0f;
- }
-
- void updateContentSizeCss(float contentWidthCss, float contentHeightCss) {
- mContentWidthCss = contentWidthCss;
- mContentHeightCss = contentHeightCss;
- }
-
- void setDeviceScaleFactor(float deviceScaleFactor) {
- mDeviceScaleFactor = deviceScaleFactor;
- }
-
- void updateFrameInfo(
- float scrollXCss, float scrollYCss,
- float contentWidthCss, float contentHeightCss,
- float viewportWidthCss, float viewportHeightCss,
- float pageScaleFactor, float minPageScaleFactor, float maxPageScaleFactor,
- float contentOffsetYPix) {
- mScrollXCss = scrollXCss;
- mScrollYCss = scrollYCss;
- mPageScaleFactor = pageScaleFactor;
- mMinPageScaleFactor = minPageScaleFactor;
- mMaxPageScaleFactor = maxPageScaleFactor;
- mContentOffsetYPix = contentOffsetYPix;
-
- updateContentSizeCss(contentWidthCss, contentHeightCss);
- mLastFrameViewportWidthCss = viewportWidthCss;
- mLastFrameViewportHeightCss = viewportHeightCss;
- }
-
- /**
- * Handles conversion of a point from window-relative-local-dip or screen-pix
- * to document-absolute-CSS space and vice versa.
- */
- public class NormalizedPoint {
- private float mXAbsoluteCss, mYAbsoluteCss;
-
- private NormalizedPoint() {
- }
-
- /**
- * @return Absolute CSS (document) X coordinate of the point.
- */
- public float getXAbsoluteCss() { return mXAbsoluteCss; }
-
- /**
- * @return Absolute CSS (document) Y coordinate of the point.
- */
- public float getYAbsoluteCss() { return mYAbsoluteCss; }
-
- /**
- * @return Local device-scale-unadjusted X coordinate of the point.
- */
- public float getXLocalDip() { return (mXAbsoluteCss - mScrollXCss) * mPageScaleFactor; }
-
- /**
- * @return Local device-scale-unadjusted Y coordinate of the point.
- */
- public float getYLocalDip() { return (mYAbsoluteCss - mScrollYCss) * mPageScaleFactor; }
-
- /**
- * @return Physical (screen) X coordinate of the point.
- */
- public float getXPix() { return getXLocalDip() * mDeviceScaleFactor; }
-
- /**
- * @return Physical (screen) Y coordinate of the point.
- */
- public float getYPix() { return getYLocalDip() * mDeviceScaleFactor + mContentOffsetYPix; }
-
- /**
- * Sets the point to the given absolute CSS (document) coordinates.
- */
- public void setAbsoluteCss(float xCss, float yCss) {
- mXAbsoluteCss = xCss;
- mYAbsoluteCss = yCss;
- }
-
- /**
- * Sets the point to the given local device-scale-unadjusted coordinates.
- */
- public void setLocalDip(float xDip, float yDip) {
- setAbsoluteCss(
- xDip / mPageScaleFactor + mScrollXCss,
- yDip / mPageScaleFactor + mScrollYCss);
- }
-
- /**
- * Sets the point to the given physical (screen) coordinates.
- */
- public void setScreen(float xPix, float yPix) {
- setLocalDip(xPix / mDeviceScaleFactor, yPix / mDeviceScaleFactor);
- }
- }
-
- /**
- * @return A helper to convert a point between between absolute CSS and local DIP spaces.
- */
- public NormalizedPoint createNormalizedPoint() {
- return new NormalizedPoint();
- }
-
- /**
- * @return Horizontal scroll offset in CSS pixels.
- */
- public float getScrollX() { return mScrollXCss; }
-
- /**
- * @return Vertical scroll offset in CSS pixels.
- */
- public float getScrollY() { return mScrollYCss; }
-
- /**
- * @return Horizontal scroll offset in physical pixels.
- */
- public float getScrollXPix() { return fromLocalCssToPix(mScrollXCss); }
-
- /**
- * @return Vertical scroll offset in physical pixels.
- */
- public float getScrollYPix() { return fromLocalCssToPix(mScrollYCss); }
-
- /**
- * @return Horizontal scroll offset in physical pixels (approx, integer).
- */
- public int getScrollXPixInt() { return (int) Math.floor(getScrollXPix()); }
-
- /**
- * @return Vertical scroll offset in physical pixels (approx, integer).
- */
- public int getScrollYPixInt() { return (int) Math.floor(getScrollYPix()); }
-
- /**
- * @return Width of the content in CSS pixels.
- */
- public float getContentWidthCss() { return mContentWidthCss; }
-
- /**
- * @return Height of the content in CSS pixels.
- */
- public float getContentHeightCss() { return mContentHeightCss; }
-
- /**
- * @return Approximate width of the content in physical pixels.
- */
- public float getContentWidthPix() { return fromLocalCssToPix(mContentWidthCss); }
-
- /**
- * @return Approximate height of the content in physical pixels.
- */
- public float getContentHeightPix() { return fromLocalCssToPix(mContentHeightCss); }
-
- /**
- * @return Approximate width of the content in physical pixels (integer).
- */
- public int getContentWidthPixInt() { return (int) Math.ceil(getContentWidthPix()); }
-
- /**
- * @return Approximate height of the content in physical pixels (integer).
- */
- public int getContentHeightPixInt() { return (int) Math.ceil(getContentHeightPix()); }
-
- /**
- * @return Render-reported width of the viewport in CSS pixels.
- */
- public float getLastFrameViewportWidthCss() { return mLastFrameViewportWidthCss; }
-
- /**
- * @return Render-reported height of the viewport in CSS pixels.
- */
- public float getLastFrameViewportHeightCss() { return mLastFrameViewportHeightCss; }
-
- /**
- * @return Render-reported width of the viewport in physical pixels (approximate).
- */
- public float getLastFrameViewportWidthPix() {
- return fromLocalCssToPix(mLastFrameViewportWidthCss);
- }
-
- /**
- * @return Render-reported height of the viewport in physical pixels (approximate).
- */
- public float getLastFrameViewportHeightPix() {
- return fromLocalCssToPix(mLastFrameViewportHeightCss);
- }
-
- /**
- * @return Render-reported width of the viewport in physical pixels (approx, integer).
- */
- public int getLastFrameViewportWidthPixInt() {
- return (int) Math.ceil(getLastFrameViewportWidthPix());
- }
-
- /**
- * @return Render-reported height of the viewport in physical pixels (approx, integer).
- */
- public int getLastFrameViewportHeightPixInt() {
- return (int) Math.ceil(getLastFrameViewportHeightPix());
- }
-
- /**
- * @return The Physical on-screen Y offset amount below the top controls.
- */
- public float getContentOffsetYPix() {
- return mContentOffsetYPix;
- }
-
- /**
- * @return Current page scale factor (maps CSS pixels to DIP pixels).
- */
- public float getPageScaleFactor() { return mPageScaleFactor; }
-
- /**
- * @return Minimum page scale factor to be used with the content.
- */
- public float getMinPageScaleFactor() { return mMinPageScaleFactor; }
-
- /**
- * @return Maximum page scale factor to be used with the content.
- */
- public float getMaxPageScaleFactor() { return mMaxPageScaleFactor; }
-
- /**
- * @return Current device scale factor (maps DIP pixels to physical pixels).
- */
- public float getDeviceScaleFactor() { return mDeviceScaleFactor; }
-
- /**
- * @return True if the page doesn't allow zoom-in/zoom-out.
- */
- public boolean hasFixedPageScale() { return mMinPageScaleFactor == mMaxPageScaleFactor; }
-
- /**
- * @return True if the page has a width=device-width or narrower viewport.
- */
- public boolean hasMobileViewport() {
- float windowWidthDip = mPageScaleFactor * mLastFrameViewportWidthCss;
- return mContentWidthCss <= windowWidthDip;
- }
-
- /**
- * @return Maximum possible horizontal scroll in physical pixels.
- */
- public float getMaxHorizontalScrollPix() {
- return getContentWidthPix() - getLastFrameViewportWidthPix();
- }
-
- /**
- * @return Maximum possible vertical scroll in physical pixels.
- */
- public float getMaxVerticalScrollPix() {
- return getContentHeightPix() - getLastFrameViewportHeightPix();
- }
-
- /**
- * @return Maximum possible horizontal scroll in physical pixels (approx, integer).
- */
- public int getMaxHorizontalScrollPixInt() {
- return (int) Math.floor(getMaxHorizontalScrollPix());
- }
-
- /**
- * @return Maximum possible vertical scroll in physical pixels (approx, integer).
- */
- public int getMaxVerticalScrollPixInt() {
- return (int) Math.floor(getMaxVerticalScrollPix());
- }
-
- /**
- * @return Physical on-screen coordinate converted to local DIP.
- */
- public float fromPixToDip(float pix) {
- return pix / mDeviceScaleFactor;
- }
-
- /**
- * @return Local DIP converted to physical coordinates.
- */
- public float fromDipToPix(float dip) {
- return dip * mDeviceScaleFactor;
- }
-
- /**
- * @return Physical coordinate converted to local CSS.
- */
- public float fromPixToLocalCss(float pix) {
- return pix / (mDeviceScaleFactor * mPageScaleFactor);
- }
-
- /**
- * @return Local CSS converted to physical coordinates.
- */
- public float fromLocalCssToPix(float css) {
- return css * mPageScaleFactor * mDeviceScaleFactor;
- }
-}

Powered by Google App Engine
This is Rietveld 408576698