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

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

Issue 2724363004: Content class factory and generalized text selector (Closed)
Patch Set: Interface cleanup Created 3 years, 9 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 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 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 android.annotation.TargetApi; 7 import android.annotation.TargetApi;
8 import android.app.Activity; 8 import android.app.Activity;
9 import android.app.SearchManager; 9 import android.app.SearchManager;
10 import android.content.ClipboardManager; 10 import android.content.ClipboardManager;
(...skipping 97 matching lines...) Expand 10 before | Expand all | Expand 10 after
108 private boolean mHasSelection; 108 private boolean mHasSelection;
109 109
110 // Lazily created paste popup menu, triggered either via long press in an 110 // Lazily created paste popup menu, triggered either via long press in an
111 // editable region or from tapping the insertion handle. 111 // editable region or from tapping the insertion handle.
112 private PastePopupMenu mPastePopupMenu; 112 private PastePopupMenu mPastePopupMenu;
113 private boolean mWasPastePopupShowingOnInsertionDragStart; 113 private boolean mWasPastePopupShowingOnInsertionDragStart;
114 114
115 // The client that implements Contextual Search functionality, or null if no ne exists. 115 // The client that implements Contextual Search functionality, or null if no ne exists.
116 private ContextualSearchClient mContextualSearchClient; 116 private ContextualSearchClient mContextualSearchClient;
117 117
118 private ContextSelectionProvider mContextSelector;
119
118 /** 120 /**
119 * Create {@link SelectionPopupController} instance. 121 * Create {@link SelectionPopupController} instance.
120 * @param context Context for action mode. 122 * @param context Context for action mode.
121 * @param window WindowAndroid instance. 123 * @param window WindowAndroid instance.
122 * @param webContents WebContents instance. 124 * @param webContents WebContents instance.
123 * @param view Container view. 125 * @param view Container view.
124 * @param renderCoordinates Coordinates info used to position elements. 126 * @param renderCoordinates Coordinates info used to position elements.
125 * @param imeAdapter ImeAdapter instance to handle cursor position. 127 * @param imeAdapter ImeAdapter instance to handle cursor position.
126 */ 128 */
127 public SelectionPopupController(Context context, WindowAndroid window, WebCo ntents webContents, 129 public SelectionPopupController(Context context, WindowAndroid window, WebCo ntents webContents,
(...skipping 10 matching lines...) Expand all
138 mRepeatingHideRunnable = new Runnable() { 140 mRepeatingHideRunnable = new Runnable() {
139 @Override 141 @Override
140 public void run() { 142 public void run() {
141 assert mHidden; 143 assert mHidden;
142 final long hideDuration = getDefaultHideDuration(); 144 final long hideDuration = getDefaultHideDuration();
143 // Ensure the next hide call occurs before the ActionMode reappe ars. 145 // Ensure the next hide call occurs before the ActionMode reappe ars.
144 mView.postDelayed(mRepeatingHideRunnable, hideDuration - 1); 146 mView.postDelayed(mRepeatingHideRunnable, hideDuration - 1);
145 hideActionModeTemporarily(hideDuration); 147 hideActionModeTemporarily(hideDuration);
146 } 148 }
147 }; 149 };
150
151 // To be removed.
boliu 2017/03/06 16:56:13 should be a TODO comment then. And need to give re
Tima Vaisburd 2017/03/07 00:45:40 Just removed.
152 mContextSelector = ContentClassFactory.get().createContextSelectionProvi der(null, window);
148 } 153 }
149 154
150 /** 155 /**
151 * Update the container view. 156 * Update the container view.
152 */ 157 */
153 void setContainerView(View view) { 158 void setContainerView(View view) {
154 assert view != null; 159 assert view != null;
155 160
156 // Cleans up action mode before switching to a new container view. 161 // Cleans up action mode before switching to a new container view.
157 if (isActionModeValid()) finishActionMode(); 162 if (isActionModeValid()) finishActionMode();
(...skipping 756 matching lines...) Expand 10 before | Expand all | Expand 10 after
914 mIsInsertion = insertion; 919 mIsInsertion = insertion;
915 } 920 }
916 921
917 private boolean isShareAvailable() { 922 private boolean isShareAvailable() {
918 Intent intent = new Intent(Intent.ACTION_SEND); 923 Intent intent = new Intent(Intent.ACTION_SEND);
919 intent.setType("text/plain"); 924 intent.setType("text/plain");
920 return mContext.getPackageManager().queryIntentActivities(intent, 925 return mContext.getPackageManager().queryIntentActivities(intent,
921 PackageManager.MATCH_DEFAULT_ONLY).size() > 0; 926 PackageManager.MATCH_DEFAULT_ONLY).size() > 0;
922 } 927 }
923 } 928 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698