fix proxy and bookmark page

This commit is contained in:
Carmelo Messina 2021-01-28 21:18:06 +01:00
parent 47c948a929
commit cf2a2adc87
4 changed files with 46 additions and 308 deletions

View file

@ -55,7 +55,6 @@ Add-flags-to-disable-device-motion-orientation-APIs.patch
Disable-metrics-on-all-I-O-threads.patch
Always-respect-async-dns-flag-regardless-of-SDK-version.patch
Add-flag-to-configure-maximum-connections-per-host.patch
Revert-Remove-ChromeActivity-reference-from-BookmarkPage.patch
Add-bookmark-import-export-actions.patch
Disable-promos-displayed-in-bookmarks-manager.patch
Add-an-always-incognito-mode.patch

View file

@ -14,7 +14,7 @@ Offer auto-complete for the proxy page URL.
chrome/browser/browser_resources.grd | 6 +
.../prefs/chrome_command_line_pref_store.cc | 2 +-
chrome/browser/resources/proxy_config.css | 61 +++
chrome/browser/resources/proxy_config.html | 79 ++++
chrome/browser/resources/proxy_config.html | 80 ++++
chrome/browser/resources/proxy_config.js | 262 +++++++++++
chrome/browser/ui/BUILD.gn | 2 +
.../webui/chrome_web_ui_controller_factory.cc | 3 +
@ -27,7 +27,7 @@ Offer auto-complete for the proxy page URL.
.../proxy_config/proxy_config_dictionary.h | 6 +-
net/proxy_resolution/proxy_config.cc | 52 ++-
net/proxy_resolution/proxy_config.h | 3 +
20 files changed, 952 insertions(+), 14 deletions(-)
20 files changed, 953 insertions(+), 14 deletions(-)
create mode 100644 chrome/browser/resources/proxy_config.css
create mode 100644 chrome/browser/resources/proxy_config.html
create mode 100644 chrome/browser/resources/proxy_config.js
@ -191,7 +191,7 @@ diff --git a/chrome/browser/resources/proxy_config.html b/chrome/browser/resourc
new file mode 100644
--- /dev/null
+++ b/chrome/browser/resources/proxy_config.html
@@ -0,0 +1,79 @@
@@ -0,0 +1,80 @@
+<!doctype html>
+<html>
+<head>
@ -205,6 +205,7 @@ new file mode 100644
+<script src="chrome://resources/js/ios/web_ui.js"></script>
+</if>
+
+<script src="chrome://resources/js/assert.js"></script>
+<script src="chrome://resources/js/util.js"></script>
+<script src="chrome://resources/js/cr.js"></script>
+<script src="chrome://proxy/proxy_config.js"></script>

View file

@ -13,7 +13,8 @@ Completely remove contacts picker permission from the file dialog
.../browser/bookmarks/BookmarkBridge.java | 47 ++++
.../browser/bookmarks/BookmarkDelegate.java | 10 +
.../browser/bookmarks/BookmarkManager.java | 19 ++
.../browser/bookmarks/BookmarkPage.java | 1 +
.../browser/bookmarks/BookmarkPage.java | 5 +-
.../native_page/NativePageFactory.java | 3 +-
chrome/browser/BUILD.gn | 6 +-
.../android/bookmarks/bookmark_bridge.cc | 217 ++++++++++++++++++
.../android/bookmarks/bookmark_bridge.h | 20 +-
@ -28,7 +29,7 @@ Completely remove contacts picker permission from the file dialog
ui/shell_dialogs/select_file_dialog.h | 2 +
.../select_file_dialog_android.cc | 6 +
ui/shell_dialogs/select_file_dialog_android.h | 2 +
22 files changed, 447 insertions(+), 12 deletions(-)
23 files changed, 452 insertions(+), 14 deletions(-)
diff --git a/chrome/android/java/AndroidManifest.xml b/chrome/android/java/AndroidManifest.xml
--- a/chrome/android/java/AndroidManifest.xml
@ -111,7 +112,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkActivity.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkActivity.java
@@ -13,6 +13,7 @@ import androidx.annotation.VisibleForTesting;
@@ -15,6 +15,7 @@ import org.chromium.chrome.browser.IntentHandler;
import org.chromium.chrome.browser.SnackbarActivity;
import org.chromium.components.bookmarks.BookmarkId;
import org.chromium.components.embedder_support.util.UrlConstants;
@ -119,7 +120,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
/**
* The activity that displays the bookmark UI on the phone. It keeps a {@link BookmarkManager}
@@ -22,6 +23,7 @@ import org.chromium.components.embedder_support.util.UrlConstants;
@@ -24,6 +25,7 @@ import org.chromium.components.embedder_support.util.UrlConstants;
public class BookmarkActivity extends SnackbarActivity {
private BookmarkManager mBookmarkManager;
@ -127,7 +128,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
static final int EDIT_BOOKMARK_REQUEST_CODE = 14;
public static final String INTENT_VISIT_BOOKMARK_ID = "BookmarkEditActivity.VisitBookmarkId";
@@ -33,6 +35,18 @@ public class BookmarkActivity extends SnackbarActivity {
@@ -38,6 +40,18 @@ public class BookmarkActivity extends SnackbarActivity {
if (TextUtils.isEmpty(url)) url = UrlConstants.BOOKMARKS_URL;
mBookmarkManager.updateForUrl(url);
setContentView(mBookmarkManager.getView());
@ -146,7 +147,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
}
@Override
@@ -49,6 +63,7 @@ public class BookmarkActivity extends SnackbarActivity {
@@ -54,6 +68,7 @@ public class BookmarkActivity extends SnackbarActivity {
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
@ -263,7 +264,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkManager.java b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkManager.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkManager.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkManager.java
@@ -31,6 +31,7 @@ import org.chromium.components.browser_ui.util.ConversionUtils;
@@ -32,6 +32,7 @@ import org.chromium.components.browser_ui.util.ConversionUtils;
import org.chromium.components.browser_ui.widget.dragreorder.DragStateDelegate;
import org.chromium.components.browser_ui.widget.selectable_list.SelectableListLayout;
import org.chromium.components.browser_ui.widget.selectable_list.SelectableListToolbar.SearchDelegate;
@ -271,15 +272,15 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
import org.chromium.components.browser_ui.widget.selectable_list.SelectionDelegate;
import org.chromium.components.favicon.LargeIconBridge;
import org.chromium.url.GURL;
@@ -52,6 +53,7 @@ public class BookmarkManager
private Activity mActivity;
@@ -54,6 +55,7 @@ public class BookmarkManager
private ComponentName mOpenBookmarkComponentName;
private ViewGroup mMainView;
private BookmarkModel mBookmarkModel;
+ private ActivityWindowAndroid mWindowAndroid;
private BookmarkUndoController mUndoController;
private final ObserverList<BookmarkUIObserver> mUIObservers = new ObserverList<>();
private BasicNativePage mNativePage;
@@ -322,6 +324,13 @@ public class BookmarkManager
@@ -327,6 +329,13 @@ public class BookmarkManager
mNativePage = nativePage;
}
@ -293,7 +294,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
/**
* @return Current URL representing the UI state of bookmark manager. If no state has been shown
* yet in this session, on phone return last used state stored in preference; on tablet
@@ -494,6 +503,16 @@ public class BookmarkManager
@@ -500,6 +509,16 @@ public class BookmarkManager
}
}
@ -313,14 +314,42 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkPage.java b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkPage.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkPage.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkPage.java
@@ -29,6 +29,7 @@ public class BookmarkPage extends BasicNativePage {
@@ -13,6 +13,7 @@ import org.chromium.chrome.browser.ui.messages.snackbar.SnackbarManager;
import org.chromium.chrome.browser.ui.native_page.BasicNativePage;
import org.chromium.chrome.browser.ui.native_page.NativePageHost;
import org.chromium.components.embedder_support.util.UrlConstants;
+import org.chromium.chrome.browser.app.ChromeActivity;
mManager = new BookmarkManager(activity, false, activity.getSnackbarManager());
/**
* A native page holding a {@link BookmarkManager} on _tablet_.
@@ -29,11 +30,13 @@ public class BookmarkPage extends BasicNativePage {
* @param host A NativePageHost to load urls.
*/
public BookmarkPage(
- ComponentName componentName, SnackbarManager snackbarManager, NativePageHost host) {
+ ComponentName componentName, SnackbarManager snackbarManager, NativePageHost host,
+ ChromeActivity activity) {
super(host);
mManager = new BookmarkManager(host.getContext(), componentName, false, snackbarManager);
mManager.setBasicNativePage(this);
+ mManager.setWindow(activity.getWindowAndroid());
mTitle = host.getContext().getResources().getString(R.string.bookmarks);
initWithView(mManager.getView());
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/native_page/NativePageFactory.java b/chrome/android/java/src/org/chromium/chrome/browser/native_page/NativePageFactory.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/native_page/NativePageFactory.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/native_page/NativePageFactory.java
@@ -95,7 +95,8 @@ public class NativePageFactory {
protected NativePage buildBookmarksPage(Tab tab) {
return new BookmarkPage(mActivity.getComponentName(), mActivity.getSnackbarManager(),
- new TabShim(tab, mActivity));
+ new TabShim(tab, mActivity),
+ mActivity);
}
protected NativePage buildDownloadsPage(Tab tab) {
diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
--- a/chrome/browser/BUILD.gn
+++ b/chrome/browser/BUILD.gn

View file

@ -1,291 +0,0 @@
From: csagan5 <32685696+csagan5@users.noreply.github.com>
Date: Sun, 24 Jan 2021 14:47:49 +0100
Subject: Revert "Remove ChromeActivity reference from BookmarkPage"
This reverts commit 1858b3af2a7d28e4e8b396a230a486fdc8cb0f0c.
---
.../java/src/org/chromium/chrome/browser/DEPS | 3 ++
.../browser/bookmarks/BookmarkActivity.java | 7 +----
.../browser/bookmarks/BookmarkManager.java | 28 +++++++----------
.../browser/bookmarks/BookmarkPage.java | 11 ++-----
.../bookmarks/BookmarkUndoController.java | 3 +-
.../browser/bookmarks/BookmarkUtils.java | 30 ++++++++++---------
.../native_page/NativePageFactory.java | 3 +-
7 files changed, 37 insertions(+), 48 deletions(-)
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/DEPS b/chrome/android/java/src/org/chromium/chrome/browser/DEPS
--- a/chrome/android/java/src/org/chromium/chrome/browser/DEPS
+++ b/chrome/android/java/src/org/chromium/chrome/browser/DEPS
@@ -68,6 +68,9 @@ specific_include_rules = {
"CardUnmaskPrompt\.java": [
"+chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java",
],
+ "BookmarkPage\.java": [
+ "+chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java",
+ ],
"QualityEnforcer\.java": [
"+chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java",
],
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkActivity.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkActivity.java
@@ -10,8 +10,6 @@ import android.text.TextUtils;
import androidx.annotation.VisibleForTesting;
-import org.chromium.base.IntentUtils;
-import org.chromium.chrome.browser.IntentHandler;
import org.chromium.chrome.browser.SnackbarActivity;
import org.chromium.components.bookmarks.BookmarkId;
import org.chromium.components.embedder_support.util.UrlConstants;
@@ -30,10 +28,7 @@ public class BookmarkActivity extends SnackbarActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- mBookmarkManager = new BookmarkManager(this,
- IntentUtils.safeGetParcelableExtra(
- getIntent(), IntentHandler.EXTRA_PARENT_COMPONENT),
- true, getSnackbarManager());
+ mBookmarkManager = new BookmarkManager(this, true, getSnackbarManager());
String url = getIntent().getDataString();
if (TextUtils.isEmpty(url)) url = UrlConstants.BOOKMARKS_URL;
mBookmarkManager.updateForUrl(url);
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkManager.java b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkManager.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkManager.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkManager.java
@@ -4,11 +4,10 @@
package org.chromium.chrome.browser.bookmarks;
+import android.app.Activity;
import android.app.ActivityManager;
-import android.content.ComponentName;
import android.content.Context;
import android.text.TextUtils;
-import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.view.accessibility.AccessibilityManager;
@@ -50,8 +49,7 @@ public class BookmarkManager
private static boolean sPreventLoadingForTesting;
- private Context mContext;
- private ComponentName mOpenBookmarkComponentName;
+ private Activity mActivity;
private ViewGroup mMainView;
private BookmarkModel mBookmarkModel;
private BookmarkUndoController mUndoController;
@@ -160,15 +158,12 @@ public class BookmarkManager
/**
* Creates an instance of {@link BookmarkManager}. It also initializes resources,
* bookmark models and jni bridges.
- * @param context The current {@link Context} used to obtain resources or inflate views.
- * @param openBookmarkComponentName The component to use when opening a bookmark.
+ * @param activity The activity context to use.
* @param isDialogUi Whether the main bookmarks UI will be shown in a dialog, not a NativePage.
* @param snackbarManager The {@link SnackbarManager} used to display snackbars.
*/
- public BookmarkManager(Context context, ComponentName openBookmarkComponentName,
- boolean isDialogUi, SnackbarManager snackbarManager) {
- mContext = context;
- mOpenBookmarkComponentName = openBookmarkComponentName;
+ public BookmarkManager(Activity activity, boolean isDialogUi, SnackbarManager snackbarManager) {
+ mActivity = activity;
mIsDialogUi = isDialogUi;
mSelectionDelegate = new SelectionDelegate<BookmarkId>() {
@@ -185,7 +180,7 @@ public class BookmarkManager
mDragStateDelegate = new BookmarkDragStateDelegate();
mBookmarkModel = new BookmarkModel();
- mMainView = (ViewGroup) LayoutInflater.from(mContext).inflate(R.layout.bookmark_main, null);
+ mMainView = (ViewGroup) mActivity.getLayoutInflater().inflate(R.layout.bookmark_main, null);
@SuppressWarnings("unchecked")
SelectableListLayout<BookmarkId> selectableList =
@@ -194,7 +189,7 @@ public class BookmarkManager
mSelectableListLayout.initializeEmptyView(
R.string.bookmarks_folder_empty, R.string.bookmark_no_result);
- mAdapter = new BookmarkItemsAdapter(mContext);
+ mAdapter = new BookmarkItemsAdapter(activity);
mAdapterDataObserver = new AdapterDataObserver() {
@Override
@@ -219,7 +214,7 @@ public class BookmarkManager
mSelectableListLayout.configureWideDisplayStyle();
- mUndoController = new BookmarkUndoController(mContext, mBookmarkModel, snackbarManager);
+ mUndoController = new BookmarkUndoController(activity, mBookmarkModel, snackbarManager);
mBookmarkModel.addObserver(mBookmarkModelObserver);
initializeToLoadingState();
if (!sPreventLoadingForTesting) {
@@ -405,7 +400,7 @@ public class BookmarkManager
if (state.mState == BookmarkUIState.STATE_FOLDER) {
// Loading and searching states may be pushed to the stack but should never be stored in
// preferences.
- BookmarkUtils.setLastUsedUrl(mContext, state.mUrl);
+ BookmarkUtils.setLastUsedUrl(mActivity, state.mUrl);
// If a loading state is replaced by another loading state, do not notify this change.
if (mNativePage != null) {
mNativePage.onStateChange(state.mUrl, false);
@@ -494,9 +489,8 @@ public class BookmarkManager
@Override
public void openBookmark(BookmarkId bookmark) {
- if (BookmarkUtils.openBookmark(
- mContext, mOpenBookmarkComponentName, mBookmarkModel, bookmark)) {
- BookmarkUtils.finishActivityOnPhone(mContext);
+ if (BookmarkUtils.openBookmark(mBookmarkModel, mActivity, bookmark)) {
+ BookmarkUtils.finishActivityOnPhone(mActivity);
}
}
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkPage.java b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkPage.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkPage.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkPage.java
@@ -4,12 +4,10 @@
package org.chromium.chrome.browser.bookmarks;
-import android.content.ComponentName;
-
import androidx.annotation.VisibleForTesting;
import org.chromium.chrome.R;
-import org.chromium.chrome.browser.ui.messages.snackbar.SnackbarManager;
+import org.chromium.chrome.browser.app.ChromeActivity;
import org.chromium.chrome.browser.ui.native_page.BasicNativePage;
import org.chromium.chrome.browser.ui.native_page.NativePageHost;
import org.chromium.components.embedder_support.util.UrlConstants;
@@ -23,16 +21,13 @@ public class BookmarkPage extends BasicNativePage {
/**
* Create a new instance of the bookmarks page.
- * @param componentName The current activity component, used to open bookmarks.
- * @param snackbarManager Allows control over the app snackbar.
* @param activity The activity to get context and manage fragments.
* @param host A NativePageHost to load urls.
*/
- public BookmarkPage(
- ComponentName componentName, SnackbarManager snackbarManager, NativePageHost host) {
+ public BookmarkPage(ChromeActivity activity, NativePageHost host) {
super(host);
- mManager = new BookmarkManager(host.getContext(), componentName, false, snackbarManager);
+ mManager = new BookmarkManager(activity, false, activity.getSnackbarManager());
mManager.setBasicNativePage(this);
mTitle = host.getContext().getResources().getString(R.string.bookmarks);
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkUndoController.java b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkUndoController.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkUndoController.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkUndoController.java
@@ -16,7 +16,8 @@ import org.chromium.chrome.browser.ui.messages.snackbar.SnackbarManager;
import java.util.Locale;
/**
- * Shows an undo bar when the user modifies bookmarks, allowing them to undo their changes.
+ * Shows an undo bar when the user modifies bookmarks,
+ * allowing them to undo their changes.
*/
public class BookmarkUndoController extends BookmarkModelObserver implements
SnackbarManager.SnackbarController, BookmarkDeleteObserver {
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkUtils.java b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkUtils.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkUtils.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkUtils.java
@@ -336,16 +336,17 @@ public class BookmarkUtils {
/**
* Opens a bookmark and reports UMA.
- * @param context The current context used to launch the intent.
- * @param openBookmarkComponentName The component to use when opening a bookmark.
* @param model Bookmarks model to manage the bookmark.
+ * @param activity Activity requesting to open the bookmark.
* @param bookmarkId ID of the bookmark to be opened.
* @return Whether the bookmark was successfully opened.
*/
- public static boolean openBookmark(Context context, ComponentName openBookmarkComponentName,
- BookmarkModel model, BookmarkId bookmarkId) {
+ public static boolean openBookmark(
+ BookmarkModel model, Activity activity, BookmarkId bookmarkId) {
if (model.getBookmarkById(bookmarkId) == null) return false;
+ String url = model.getBookmarkById(bookmarkId).getUrl();
+
RecordUserAction.record("MobileBookmarkManagerEntryOpened");
RecordHistogram.recordEnumeratedHistogram(
"Bookmarks.OpenBookmarkType", bookmarkId.getType(), BookmarkType.LAST + 1);
@@ -353,9 +354,9 @@ public class BookmarkUtils {
BookmarkItem bookmarkItem = model.getBookmarkById(bookmarkId);
if (bookmarkItem.getId().getType() == BookmarkType.READING_LIST) {
model.setReadStatusForReadingList(bookmarkItem.getUrl(), true);
- openUrlInCustomTab(context, bookmarkItem.getUrl());
+ openUrlInCustomTab(activity, bookmarkItem.getUrl());
} else {
- openUrl(context, bookmarkItem.getUrl(), openBookmarkComponentName);
+ openUrl(activity, bookmarkItem.getUrl(), activity.getComponentName());
}
return true;
}
@@ -383,10 +384,10 @@ public class BookmarkUtils {
: R.color.default_icon_color_tint_list;
}
- private static void openUrl(Context context, String url, ComponentName componentName) {
+ private static void openUrl(Activity activity, String url, ComponentName componentName) {
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url));
- intent.putExtra(
- Browser.EXTRA_APPLICATION_ID, context.getApplicationContext().getPackageName());
+ intent.putExtra(Browser.EXTRA_APPLICATION_ID,
+ activity.getApplicationContext().getPackageName());
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.putExtra(IntentHandler.EXTRA_PAGE_TRANSITION_TYPE, PageTransition.AUTO_BOOKMARK);
@@ -396,13 +397,13 @@ public class BookmarkUtils {
// If the bookmark manager is shown in a tab on a phone (rather than in a separate
// activity) the component name may be null. Send the intent through
// ChromeLauncherActivity instead to avoid crashing. See crbug.com/615012.
- intent.setClass(context.getApplicationContext(), ChromeLauncherActivity.class);
+ intent.setClass(activity, ChromeLauncherActivity.class);
}
IntentHandler.startActivityForTrustedIntent(intent);
}
- private static void openUrlInCustomTab(Context context, String url) {
+ private static void openUrlInCustomTab(Activity activity, String url) {
CustomTabsIntent.Builder builder = new CustomTabsIntent.Builder();
builder.setShowTitle(true);
builder.setShareState(CustomTabsIntent.SHARE_STATE_ON);
@@ -410,9 +411,10 @@ public class BookmarkUtils {
customTabIntent.intent.setData(Uri.parse(url));
Intent intent = LaunchIntentDispatcher.createCustomTabActivityIntent(
- context, customTabIntent.intent);
- intent.setPackage(context.getPackageName());
- intent.putExtra(Browser.EXTRA_APPLICATION_ID, context.getPackageName());
+ activity.getApplicationContext(), customTabIntent.intent);
+ intent.setPackage(activity.getApplicationContext().getPackageName());
+ intent.putExtra(Browser.EXTRA_APPLICATION_ID,
+ activity.getApplicationContext().getPackageName());
intent.putExtra(CustomTabIntentDataProvider.EXTRA_UI_TYPE, CustomTabsUiType.READ_LATER);
intent.putExtra(IntentHandler.EXTRA_OPEN_NEW_INCOGNITO_TAB,
Profile.getLastUsedRegularProfile().isOffTheRecord());
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/native_page/NativePageFactory.java b/chrome/android/java/src/org/chromium/chrome/browser/native_page/NativePageFactory.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/native_page/NativePageFactory.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/native_page/NativePageFactory.java
@@ -94,8 +94,7 @@ public class NativePageFactory {
}
protected NativePage buildBookmarksPage(Tab tab) {
- return new BookmarkPage(mActivity.getComponentName(), mActivity.getSnackbarManager(),
- new TabShim(tab, mActivity));
+ return new BookmarkPage(mActivity, new TabShim(tab, mActivity));
}
protected NativePage buildDownloadsPage(Tab tab) {
--
2.17.1