Index: chrome/android/java/src/org/chromium/chrome/browser/ntp/UiConfig.java |
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ntp/UiConfig.java b/chrome/android/java/src/org/chromium/chrome/browser/ntp/UiConfig.java |
deleted file mode 100644 |
index 3dd87ef00cf06e47bd55ee837ad3877f914a3535..0000000000000000000000000000000000000000 |
--- a/chrome/android/java/src/org/chromium/chrome/browser/ntp/UiConfig.java |
+++ /dev/null |
@@ -1,134 +0,0 @@ |
-// Copyright 2016 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.chrome.browser.ntp; |
- |
-import android.annotation.SuppressLint; |
-import android.content.Context; |
-import android.support.annotation.IntDef; |
-import android.view.View; |
- |
-import org.chromium.base.Log; |
-import org.chromium.base.VisibleForTesting; |
-import org.chromium.ui.widget.Toast; |
- |
-import java.lang.annotation.Retention; |
-import java.lang.annotation.RetentionPolicy; |
-import java.util.ArrayList; |
-import java.util.List; |
- |
-/** |
- * Exposes general configuration info about the NTP UI. |
- */ |
-public class UiConfig { |
- /** The different supported UI setups. Observers can register to be notified of changes.*/ |
- @Retention(RetentionPolicy.SOURCE) |
- @IntDef({DISPLAY_STYLE_UNDEFINED, DISPLAY_STYLE_NARROW, DISPLAY_STYLE_REGULAR, |
- DISPLAY_STYLE_WIDE}) |
- public @interface DisplayStyle {} |
- public static final int DISPLAY_STYLE_UNDEFINED = -1; |
- public static final int DISPLAY_STYLE_NARROW = 0; |
- public static final int DISPLAY_STYLE_REGULAR = 1; |
- public static final int DISPLAY_STYLE_WIDE = 2; |
- |
- private static final int REGULAR_CARD_MIN_WIDTH_DP = 360; |
- private static final int WIDE_CARD_MIN_WIDTH_DP = 600; |
- |
- private static final String TAG = "Ntp"; |
- private static final boolean DEBUG = false; |
- |
- @DisplayStyle |
- private int mCurrentDisplayStyle; |
- |
- private final List<DisplayStyleObserver> mObservers = new ArrayList<>(); |
- private final Context mContext; |
- |
- /** |
- * @param referenceView the View we observe to deduce the configuration from. |
- */ |
- public UiConfig(View referenceView) { |
- mContext = referenceView.getContext(); |
- mCurrentDisplayStyle = computeDisplayStyleForCurrentConfig(); |
- |
- referenceView.addOnAttachStateChangeListener(new View.OnAttachStateChangeListener() { |
- @Override |
- public void onViewAttachedToWindow(View v) { |
- updateDisplayStyle(); |
- } |
- |
- @Override |
- public void onViewDetachedFromWindow(View v) {} |
- }); |
- } |
- |
- /** |
- * Registers a {@link DisplayStyleObserver}. It will be notified right away with the current |
- * display style. |
- */ |
- public void addObserver(DisplayStyleObserver observer) { |
- mObservers.add(observer); |
- observer.onDisplayStyleChanged(mCurrentDisplayStyle); |
- } |
- |
- /** |
- * Refresh the display style, notify observers of changes. |
- */ |
- public void updateDisplayStyle() { |
- updateDisplayStyle(computeDisplayStyleForCurrentConfig()); |
- } |
- |
- /** |
- * Sets the display style, notifying observers of changes. Should only be used in testing. |
- */ |
- @VisibleForTesting |
- public void setDisplayStyleForTesting(@DisplayStyle int displayStyle) { |
- updateDisplayStyle(displayStyle); |
- } |
- |
- private void updateDisplayStyle(@DisplayStyle int displayStyle) { |
- if (displayStyle == mCurrentDisplayStyle) return; |
- |
- mCurrentDisplayStyle = displayStyle; |
- for (DisplayStyleObserver observer : mObservers) { |
- observer.onDisplayStyleChanged(displayStyle); |
- } |
- } |
- |
- /** |
- * Returns the currently used display style. |
- */ |
- @DisplayStyle |
- public int getCurrentDisplayStyle() { |
- return mCurrentDisplayStyle; |
- } |
- |
- @DisplayStyle |
- // TODO(crbug.com/635567): Fix this properly. |
- @SuppressLint("DefaultLocale") |
- private int computeDisplayStyleForCurrentConfig() { |
- int widthDp = mContext.getResources().getConfiguration().screenWidthDp; |
- |
- String debugString; |
- |
- @DisplayStyle |
- int newDisplayStyle; |
- if (widthDp < REGULAR_CARD_MIN_WIDTH_DP) { |
- newDisplayStyle = DISPLAY_STYLE_NARROW; |
- if (DEBUG) debugString = String.format("DISPLAY_STYLE_NARROW (w=%ddp)", widthDp); |
- } else if (widthDp >= WIDE_CARD_MIN_WIDTH_DP) { |
- newDisplayStyle = DISPLAY_STYLE_WIDE; |
- if (DEBUG) debugString = String.format("DISPLAY_STYLE_WIDE (w=%ddp)", widthDp); |
- } else { |
- newDisplayStyle = DISPLAY_STYLE_REGULAR; |
- if (DEBUG) debugString = String.format("DISPLAY_STYLE_REGULAR (w=%ddp)", widthDp); |
- } |
- |
- if (DEBUG) { |
- Log.d(TAG, debugString); |
- Toast.makeText(mContext, debugString, Toast.LENGTH_SHORT).show(); |
- } |
- |
- return newDisplayStyle; |
- } |
-} |