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

Side by Side Diff: chrome/android/java/src/org/chromium/chrome/browser/webapps/AddToHomescreenDialog.java

Issue 1288903002: Refactor ShortcutHelper and merge in BookmarkUtils (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix test file name Created 5 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 unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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.webapps; 5 package org.chromium.chrome.browser.webapps;
6 6
7 import android.app.Activity; 7 import android.app.Activity;
8 import android.content.DialogInterface; 8 import android.content.DialogInterface;
9 import android.graphics.Bitmap; 9 import android.graphics.Bitmap;
10 import android.support.v7.app.AlertDialog; 10 import android.support.v7.app.AlertDialog;
11 import android.text.Editable; 11 import android.text.Editable;
12 import android.text.TextUtils; 12 import android.text.TextUtils;
13 import android.text.TextWatcher; 13 import android.text.TextWatcher;
14 import android.view.View; 14 import android.view.View;
15 import android.widget.EditText; 15 import android.widget.EditText;
16 import android.widget.ImageView; 16 import android.widget.ImageView;
17 17
18 import org.chromium.base.VisibleForTesting; 18 import org.chromium.base.VisibleForTesting;
19 import org.chromium.chrome.R; 19 import org.chromium.chrome.R;
20 import org.chromium.chrome.browser.ShortcutHelper;
21 import org.chromium.chrome.browser.tab.Tab; 20 import org.chromium.chrome.browser.tab.Tab;
22 21
23 /** 22 /**
24 * Helper class showing the UI regarding Add to Homescreen and delegate the 23 * Helper class showing the UI regarding Add to Homescreen and delegate the
25 * logic to ShortcutHelper. 24 * logic to ShortcutHelper.
26 */ 25 */
27 public class AddToHomescreenDialog { 26 public class AddToHomescreenDialog {
28 private static AlertDialog sCurrentDialog; 27 private static AlertDialog sCurrentDialog;
29 28
30 @VisibleForTesting 29 @VisibleForTesting
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after
69 // Force the text field to align better with the icon by acc ounting for the 68 // Force the text field to align better with the icon by acc ounting for the
70 // padding introduced by the background drawable. 69 // padding introduced by the background drawable.
71 input.getLayoutParams().height = 70 input.getLayoutParams().height =
72 progressBarView.getMeasuredHeight() + input.getPaddi ngBottom(); 71 progressBarView.getMeasuredHeight() + input.getPaddi ngBottom();
73 v.requestLayout(); 72 v.requestLayout();
74 v.removeOnLayoutChangeListener(this); 73 v.removeOnLayoutChangeListener(this);
75 } 74 }
76 } 75 }
77 }); 76 });
78 77
79 final ShortcutHelper shortcutHelper = 78 final AddToHomescreenDialogHelper shortcutHelper =
80 new ShortcutHelper(activity.getApplicationContext(), currentTab) ; 79 new AddToHomescreenDialogHelper(activity.getApplicationContext() , currentTab);
81 80
82 // Initializing the shortcut helper is asynchronous. Until it is 81 // Initializing the shortcut helper is asynchronous. Until it is
83 // initialized, the UI will show a disabled text field and OK buttons. 82 // initialized, the UI will show a disabled text field and OK buttons.
84 // They will be enabled and pre-filled as soon as the onInitialized 83 // They will be enabled and pre-filled as soon as the onInitialized
85 // callback will be run. The user will still be able to cancel the 84 // callback will be run. The user will still be able to cancel the
86 // operation. 85 // operation.
87 shortcutHelper.initialize(new ShortcutHelper.ShortcutHelperObserver() { 86 shortcutHelper.initialize(new AddToHomescreenDialogHelper.Observer() {
88 @Override 87 @Override
89 public void onUserTitleAvailable(String title) { 88 public void onUserTitleAvailable(String title) {
90 input.setEnabled(true); 89 input.setEnabled(true);
91 input.setText(title); 90 input.setText(title);
92 } 91 }
93 92
94 @Override 93 @Override
95 public void onIconAvailable(Bitmap icon) { 94 public void onIconAvailable(Bitmap icon) {
96 progressBarView.setVisibility(View.GONE); 95 progressBarView.setVisibility(View.GONE);
97 iconView.setVisibility(View.VISIBLE); 96 iconView.setVisibility(View.VISIBLE);
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after
145 @Override 144 @Override
146 public void onDismiss(DialogInterface dialog) { 145 public void onDismiss(DialogInterface dialog) {
147 sCurrentDialog = null; 146 sCurrentDialog = null;
148 shortcutHelper.destroy(); 147 shortcutHelper.destroy();
149 } 148 }
150 }); 149 });
151 150
152 dialog.show(); 151 dialog.show();
153 } 152 }
154 } 153 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698