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

Unified Diff: chrome/android/java/src/org/chromium/chrome/browser/physicalweb/PhysicalWebDiagnosticsPage.java

Issue 2261883002: Use BasicNativePage in PhysicalWebDiagnostics (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase Created 4 years, 4 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: chrome/android/java/src/org/chromium/chrome/browser/physicalweb/PhysicalWebDiagnosticsPage.java
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/physicalweb/PhysicalWebDiagnosticsPage.java b/chrome/android/java/src/org/chromium/chrome/browser/physicalweb/PhysicalWebDiagnosticsPage.java
index 1ea7eda7195d86d929bbd4c9262817ae4fc190e0..32a7d7a12b421d8a5583fcf9a2ccba67436b8f2a 100644
--- a/chrome/android/java/src/org/chromium/chrome/browser/physicalweb/PhysicalWebDiagnosticsPage.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/physicalweb/PhysicalWebDiagnosticsPage.java
@@ -4,7 +4,7 @@
package org.chromium.chrome.browser.physicalweb;
-import android.content.Context;
+import android.app.Activity;
import android.content.Intent;
import android.content.res.Resources;
import android.os.Build;
@@ -16,9 +16,11 @@ import android.widget.Button;
import android.widget.TextView;
import org.chromium.base.ApiCompatibilityUtils;
+import org.chromium.base.ContextUtils;
import org.chromium.chrome.R;
-import org.chromium.chrome.browser.NativePage;
+import org.chromium.chrome.browser.BasicNativePage;
import org.chromium.chrome.browser.UrlConstants;
+import org.chromium.chrome.browser.tab.Tab;
import org.chromium.components.location.LocationUtils;
import java.util.HashSet;
@@ -27,23 +29,26 @@ import java.util.Set;
/**
* Provides diagnostic information about the Physical Web feature.
*/
-public class PhysicalWebDiagnosticsPage implements NativePage {
- private final Context mContext;
- private final int mBackgroundColor;
- private final int mThemeColor;
- private final String mSuccessColor;
- private final String mFailureColor;
- private final String mIndeterminateColor;
- private final View mPageView;
- private final Button mLaunchButton;
- private final TextView mDiagnosticsText;
-
- public PhysicalWebDiagnosticsPage(Context context) {
- mContext = context;
-
- Resources resources = mContext.getResources();
- mBackgroundColor = ApiCompatibilityUtils.getColor(resources, R.color.ntp_bg);
- mThemeColor = ApiCompatibilityUtils.getColor(resources, R.color.default_primary_color);
+public class PhysicalWebDiagnosticsPage extends BasicNativePage {
+ private String mSuccessColor;
+ private String mFailureColor;
+ private String mIndeterminateColor;
+ private View mPageView;
+ private Button mLaunchButton;
+ private TextView mDiagnosticsText;
+
+ /**
+ * Create a new instance of the Physical Web diagnostics page.
+ * @param activity The activity to get context and manage fragments.
+ * @param tab The tab to load urls.
+ */
+ public PhysicalWebDiagnosticsPage(Activity activity, Tab tab) {
+ super(activity, tab);
+ }
+
+ @Override
+ protected void initialize(Activity activity, Tab tab) {
+ Resources resources = activity.getResources();
mSuccessColor = colorToHexValue(ApiCompatibilityUtils.getColor(resources,
R.color.physical_web_diags_success_color));
mFailureColor = colorToHexValue(ApiCompatibilityUtils.getColor(resources,
@@ -51,14 +56,14 @@ public class PhysicalWebDiagnosticsPage implements NativePage {
mIndeterminateColor = colorToHexValue(ApiCompatibilityUtils.getColor(resources,
R.color.physical_web_diags_indeterminate_color));
- LayoutInflater inflater = LayoutInflater.from(mContext);
+ LayoutInflater inflater = LayoutInflater.from(activity);
mPageView = inflater.inflate(R.layout.physical_web_diagnostics, null);
mLaunchButton = (Button) mPageView.findViewById(R.id.physical_web_launch);
mLaunchButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
- mContext.startActivity(createListUrlsIntent(mContext));
+ ContextUtils.getApplicationContext().startActivity(createListUrlsIntent());
}
});
@@ -67,6 +72,21 @@ public class PhysicalWebDiagnosticsPage implements NativePage {
mDiagnosticsText.setText(Html.fromHtml(createDiagnosticsReportHtml()));
}
+ @Override
+ public String getTitle() {
+ return "Physical Web Diagnostics";
+ }
+
+ @Override
+ public String getHost() {
+ return UrlConstants.PHYSICAL_WEB_HOST;
+ }
+
+ @Override
+ public View getView() {
+ return mPageView;
+ }
+
private void appendResult(StringBuilder sb, boolean success, String successMessage,
String failureMessage) {
int successValue = (success ? Utils.RESULT_SUCCESS : Utils.RESULT_FAILURE);
@@ -99,8 +119,8 @@ public class PhysicalWebDiagnosticsPage implements NativePage {
private void appendPrerequisitesReport(StringBuilder sb) {
boolean isSdkVersionCorrect = isSdkVersionCorrect();
- boolean isDataConnectionActive = Utils.isDataConnectionActive(mContext);
- int bluetoothStatus = Utils.getBluetoothEnabledStatus(mContext);
+ boolean isDataConnectionActive = Utils.isDataConnectionActive();
+ int bluetoothStatus = Utils.getBluetoothEnabledStatus();
LocationUtils locationUtils = LocationUtils.getInstance();
boolean isLocationServicesEnabled = locationUtils.isSystemLocationSettingEnabled();
boolean isLocationPermissionGranted = locationUtils.hasAndroidLocationPermission();
@@ -195,60 +215,12 @@ public class PhysicalWebDiagnosticsPage implements NativePage {
return (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT);
}
- private static Intent createListUrlsIntent(Context context) {
- Intent intent = new Intent(context, ListUrlsActivity.class);
- intent.putExtra(ListUrlsActivity.REFERER_KEY, ListUrlsActivity.DIAGNOSTICS_REFERER);
- return intent;
+ private static Intent createListUrlsIntent() {
+ return new Intent(ContextUtils.getApplicationContext(), ListUrlsActivity.class)
+ .putExtra(ListUrlsActivity.REFERER_KEY, ListUrlsActivity.DIAGNOSTICS_REFERER);
}
private static String colorToHexValue(int color) {
return "#" + Integer.toHexString(color & 0x00ffffff);
}
-
- // NativePage overrides
-
- @Override
- public void destroy() {
- // nothing to do
- }
-
- @Override
- public String getUrl() {
- return UrlConstants.PHYSICAL_WEB_URL;
- }
-
- @Override
- public String getTitle() {
- return "Physical Web Diagnostics";
- }
-
- @Override
- public int getBackgroundColor() {
- return mBackgroundColor;
- }
-
- @Override
- public int getThemeColor() {
- return mThemeColor;
- }
-
- @Override
- public boolean needsToolbarShadow() {
- return true;
- }
-
- @Override
- public View getView() {
- return mPageView;
- }
-
- @Override
- public String getHost() {
- return UrlConstants.PHYSICAL_WEB_HOST;
- }
-
- @Override
- public void updateForUrl(String url) {
- // nothing to do
- }
}

Powered by Google App Engine
This is Rietveld 408576698