OLD | NEW |
---|---|
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.chrome.browser.ntp; | 5 package org.chromium.chrome.browser.ntp; |
6 | 6 |
7 import android.app.Activity; | 7 import android.app.Activity; |
8 import android.app.Dialog; | 8 import android.app.Dialog; |
9 import android.content.Context; | 9 import android.content.Context; |
10 import android.graphics.Bitmap; | 10 import android.graphics.Bitmap; |
(...skipping 18 matching lines...) Expand all Loading... | |
29 import org.chromium.chrome.browser.compositor.layouts.content.InvalidationAwareT humbnailProvider; | 29 import org.chromium.chrome.browser.compositor.layouts.content.InvalidationAwareT humbnailProvider; |
30 import org.chromium.chrome.browser.document.DocumentMetricIds; | 30 import org.chromium.chrome.browser.document.DocumentMetricIds; |
31 import org.chromium.chrome.browser.enhancedbookmarks.EnhancedBookmarkUtils; | 31 import org.chromium.chrome.browser.enhancedbookmarks.EnhancedBookmarkUtils; |
32 import org.chromium.chrome.browser.favicon.FaviconHelper; | 32 import org.chromium.chrome.browser.favicon.FaviconHelper; |
33 import org.chromium.chrome.browser.favicon.FaviconHelper.FaviconImageCallback; | 33 import org.chromium.chrome.browser.favicon.FaviconHelper.FaviconImageCallback; |
34 import org.chromium.chrome.browser.favicon.FaviconHelper.IconAvailabilityCallbac k; | 34 import org.chromium.chrome.browser.favicon.FaviconHelper.IconAvailabilityCallbac k; |
35 import org.chromium.chrome.browser.favicon.LargeIconBridge; | 35 import org.chromium.chrome.browser.favicon.LargeIconBridge; |
36 import org.chromium.chrome.browser.favicon.LargeIconBridge.LargeIconCallback; | 36 import org.chromium.chrome.browser.favicon.LargeIconBridge.LargeIconCallback; |
37 import org.chromium.chrome.browser.metrics.StartupMetrics; | 37 import org.chromium.chrome.browser.metrics.StartupMetrics; |
38 import org.chromium.chrome.browser.ntp.BookmarksPage.BookmarkSelectedListener; | 38 import org.chromium.chrome.browser.ntp.BookmarksPage.BookmarkSelectedListener; |
39 import org.chromium.chrome.browser.ntp.InterestsPage.InterestsClickListener; | |
39 import org.chromium.chrome.browser.ntp.LogoBridge.Logo; | 40 import org.chromium.chrome.browser.ntp.LogoBridge.Logo; |
40 import org.chromium.chrome.browser.ntp.LogoBridge.LogoObserver; | 41 import org.chromium.chrome.browser.ntp.LogoBridge.LogoObserver; |
41 import org.chromium.chrome.browser.ntp.NewTabPageView.NewTabPageManager; | 42 import org.chromium.chrome.browser.ntp.NewTabPageView.NewTabPageManager; |
42 import org.chromium.chrome.browser.preferences.DocumentModeManager; | 43 import org.chromium.chrome.browser.preferences.DocumentModeManager; |
43 import org.chromium.chrome.browser.preferences.DocumentModePreference; | 44 import org.chromium.chrome.browser.preferences.DocumentModePreference; |
44 import org.chromium.chrome.browser.preferences.PrefServiceBridge; | 45 import org.chromium.chrome.browser.preferences.PrefServiceBridge; |
45 import org.chromium.chrome.browser.preferences.PreferencesLauncher; | 46 import org.chromium.chrome.browser.preferences.PreferencesLauncher; |
46 import org.chromium.chrome.browser.profiles.MostVisitedSites; | 47 import org.chromium.chrome.browser.profiles.MostVisitedSites; |
47 import org.chromium.chrome.browser.profiles.MostVisitedSites.MostVisitedURLsObse rver; | 48 import org.chromium.chrome.browser.profiles.MostVisitedSites.MostVisitedURLsObse rver; |
48 import org.chromium.chrome.browser.profiles.MostVisitedSites.ThumbnailCallback; | 49 import org.chromium.chrome.browser.profiles.MostVisitedSites.ThumbnailCallback; |
(...skipping 113 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
162 NativePage page = BookmarksPage.buildPageInDocumentMode( | 163 NativePage page = BookmarksPage.buildPageInDocumentMode( |
163 activity, tab, tabModelSelector, Profile.getLastUsedProfile( ), | 164 activity, tab, tabModelSelector, Profile.getLastUsedProfile( ), |
164 listener); | 165 listener); |
165 page.updateForUrl(UrlConstants.BOOKMARKS_URL); | 166 page.updateForUrl(UrlConstants.BOOKMARKS_URL); |
166 Dialog dialog = new NativePageDialog(activity, page); | 167 Dialog dialog = new NativePageDialog(activity, page); |
167 listener.setDialog(dialog); | 168 listener.setDialog(dialog); |
168 dialog.show(); | 169 dialog.show(); |
169 } | 170 } |
170 } | 171 } |
171 | 172 |
173 public static void launchInterestsDialog(Activity activity, final Tab tab) { | |
174 InterestsPage page = | |
175 new InterestsPage(activity, tab, Profile.getLastUsedProfile(), a ctivity); | |
176 final Dialog dialog = new NativePageDialog(activity, page); | |
177 | |
178 InterestsClickListener listener = new InterestsClickListener() { | |
179 @Override | |
180 public void onInterestClicked(String name) { | |
181 tab.loadUrl(new LoadUrlParams( | |
182 TemplateUrlService.getInstance().getUrlForSearchQuery(na me))); | |
183 | |
184 dialog.dismiss(); | |
185 } | |
186 }; | |
187 | |
188 page.setListener(listener); | |
189 | |
190 dialog.show(); | |
191 } | |
192 | |
172 public static void launchRecentTabsDialog(Activity activity, Tab tab) { | 193 public static void launchRecentTabsDialog(Activity activity, Tab tab) { |
173 DocumentRecentTabsManager manager = new DocumentRecentTabsManager(tab, a ctivity); | 194 DocumentRecentTabsManager manager = new DocumentRecentTabsManager(tab, a ctivity); |
174 NativePage page = new RecentTabsPage(activity, manager); | 195 NativePage page = new RecentTabsPage(activity, manager); |
175 page.updateForUrl(UrlConstants.RECENT_TABS_URL); | 196 page.updateForUrl(UrlConstants.RECENT_TABS_URL); |
176 Dialog dialog = new NativePageDialog(activity, page); | 197 Dialog dialog = new NativePageDialog(activity, page); |
177 manager.setDialog(dialog); | 198 manager.setDialog(dialog); |
178 dialog.show(); | 199 dialog.show(); |
179 } | 200 } |
180 | 201 |
181 @VisibleForTesting | 202 @VisibleForTesting |
(...skipping 126 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
308 if (mIsDestroyed) return; | 329 if (mIsDestroyed) return; |
309 RecordUserAction.record("MobileNTPSwitchToOpenTabs"); | 330 RecordUserAction.record("MobileNTPSwitchToOpenTabs"); |
310 if (FeatureUtilities.isDocumentMode(mActivity)) { | 331 if (FeatureUtilities.isDocumentMode(mActivity)) { |
311 launchRecentTabsDialog(mActivity, mTab); | 332 launchRecentTabsDialog(mActivity, mTab); |
312 } else { | 333 } else { |
313 mTab.loadUrl(new LoadUrlParams(UrlConstants.RECENT_TABS_URL)); | 334 mTab.loadUrl(new LoadUrlParams(UrlConstants.RECENT_TABS_URL)); |
314 } | 335 } |
315 } | 336 } |
316 | 337 |
317 @Override | 338 @Override |
339 public void navigateToInterests() { | |
340 if (mIsDestroyed) return; | |
341 RecordUserAction.record("MobileNTPSwitchToInterests"); | |
knn
2015/12/02 14:18:59
Please add an actions.xml entry.
PEConn
2015/12/08 17:27:50
Done.
| |
342 launchInterestsDialog(mActivity, mTab); | |
343 } | |
344 | |
345 @Override | |
318 public void focusSearchBox(boolean beginVoiceSearch, String pastedText) { | 346 public void focusSearchBox(boolean beginVoiceSearch, String pastedText) { |
319 if (mIsDestroyed) return; | 347 if (mIsDestroyed) return; |
320 if (mFakeboxDelegate != null) { | 348 if (mFakeboxDelegate != null) { |
321 if (beginVoiceSearch) { | 349 if (beginVoiceSearch) { |
322 mFakeboxDelegate.startVoiceRecognition(); | 350 mFakeboxDelegate.startVoiceRecognition(); |
323 } else { | 351 } else { |
324 mFakeboxDelegate.requestUrlFocusFromFakebox(pastedText); | 352 mFakeboxDelegate.requestUrlFocusFromFakebox(pastedText); |
325 } | 353 } |
326 } | 354 } |
327 } | 355 } |
(...skipping 324 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
652 @Override | 680 @Override |
653 public void onBookmarkSelected(String url, String title, Bitmap favicon) { | 681 public void onBookmarkSelected(String url, String title, Bitmap favicon) { |
654 if (mDialog != null) mDialog.dismiss(); | 682 if (mDialog != null) mDialog.dismiss(); |
655 mTab.loadUrl(new LoadUrlParams(url)); | 683 mTab.loadUrl(new LoadUrlParams(url)); |
656 } | 684 } |
657 | 685 |
658 public void setDialog(Dialog dialog) { | 686 public void setDialog(Dialog dialog) { |
659 mDialog = dialog; | 687 mDialog = dialog; |
660 } | 688 } |
661 } | 689 } |
690 | |
662 } | 691 } |
OLD | NEW |