UI revision for tabbed browsing
bug # http://b/issue?id=2712871
separated tab bar from url bar
subclassed webview for scroll listener
added search button support
Change-Id: Ib9bd0c7e815e2ef08cdd20334daf61263cd52938
diff --git a/src/com/android/browser/UrlInputView.java b/src/com/android/browser/UrlInputView.java
index 3841257..f564d6a 100644
--- a/src/com/android/browser/UrlInputView.java
+++ b/src/com/android/browser/UrlInputView.java
@@ -25,28 +25,28 @@
import android.view.KeyEvent;
import android.view.LayoutInflater;
import android.view.View;
+import android.view.View.OnFocusChangeListener;
import android.view.ViewGroup;
import android.view.inputmethod.InputMethodManager;
import android.widget.AdapterView;
+import android.widget.AdapterView.OnItemClickListener;
import android.widget.AutoCompleteTextView;
import android.widget.CursorAdapter;
import android.widget.Filterable;
import android.widget.ImageView;
import android.widget.TextView;
-import android.widget.AdapterView.OnItemClickListener;
/**
* url/search input view
* handling suggestions
*/
-public class UrlInputView extends AutoCompleteTextView {
+public class UrlInputView extends AutoCompleteTextView
+ implements OnFocusChangeListener, OnItemClickListener {
private UrlInputListener mListener;
private InputMethodManager mInputManager;
private SuggestionsAdapter mAdapter;
private Drawable mFocusDrawable;
- private Drawable mNoFocusDrawable;
-
public UrlInputView(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
@@ -65,7 +65,6 @@
private void init(Context ctx) {
mFocusDrawable = ctx.getResources().getDrawable(R.drawable.textfield_stroke);
- mNoFocusDrawable = ctx.getResources().getDrawable(R.drawable.textfield_nostroke);
mInputManager = (InputMethodManager) ctx.getSystemService(Context.INPUT_METHOD_SERVICE);
setOnEditorActionListener(new OnEditorActionListener() {
@Override
@@ -74,26 +73,32 @@
return true;
}
});
- setOnFocusChangeListener(new OnFocusChangeListener() {
- @Override
- public void onFocusChange(View v, boolean hasFocus) {
- setBackgroundDrawable(hasFocus ? mFocusDrawable : mNoFocusDrawable);
- }
- });
+ setOnFocusChangeListener(this);
final ContentResolver cr = mContext.getContentResolver();
mAdapter = new SuggestionsAdapter(mContext,
BrowserProvider.getBookmarksSuggestions(cr, null));
setAdapter(mAdapter);
- setOnItemClickListener(new OnItemClickListener() {
- @Override
- public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
- String url = mAdapter.getViewString(view);
- finishInput(url);
- }
- });
+ setOnItemClickListener(this);
setSelectAllOnFocus(true);
}
+ @Override
+ public void onFocusChange(View v, boolean hasFocus) {
+ setBackgroundDrawable(hasFocus ? mFocusDrawable : null);
+ if (hasFocus) {
+ forceIme();
+ } else {
+ finishInput(null);
+ }
+ }
+
+ @Override
+ public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
+ String url = mAdapter.getViewString(view);
+ finishInput(url);
+ }
+
+
public void setUrlInputListener(UrlInputListener listener) {
mListener = listener;
}
@@ -110,7 +115,6 @@
} else {
mListener.onAction(url);
}
-
}
@Override
@@ -124,11 +128,8 @@
}
interface UrlInputListener {
-
public void onDismiss();
-
public void onAction(String text);
-
}
/**