Merge "Set user agent setting when toggling debug" into honeycomb
diff --git a/res/drawable-hdpi/fav_incognito.png b/res/drawable-hdpi/fav_incognito.png
deleted file mode 100644
index b8acde2..0000000
--- a/res/drawable-hdpi/fav_incognito.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-hdpi/ic_chevron.png b/res/drawable-hdpi/ic_chevron.png
index 96e1afb..6dc842f 100644
--- a/res/drawable-hdpi/ic_chevron.png
+++ b/res/drawable-hdpi/ic_chevron.png
Binary files differ
diff --git a/res/drawable-hdpi/ic_incognito_holo_dark.png b/res/drawable-hdpi/ic_incognito_holo_dark.png
index 8f7a9d4..f4997ae 100644
--- a/res/drawable-hdpi/ic_incognito_holo_dark.png
+++ b/res/drawable-hdpi/ic_incognito_holo_dark.png
Binary files differ
diff --git a/res/drawable-mdpi/fav_incognito.png b/res/drawable-mdpi/fav_incognito.png
deleted file mode 100644
index 6a120b9..0000000
--- a/res/drawable-mdpi/fav_incognito.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-mdpi/ic_chevron.png b/res/drawable-mdpi/ic_chevron.png
index 6804d75..786899a 100644
--- a/res/drawable-mdpi/ic_chevron.png
+++ b/res/drawable-mdpi/ic_chevron.png
Binary files differ
diff --git a/res/drawable-mdpi/ic_incognito_holo_dark.png b/res/drawable-mdpi/ic_incognito_holo_dark.png
index e2e8b17..dfb380a 100644
--- a/res/drawable-mdpi/ic_incognito_holo_dark.png
+++ b/res/drawable-mdpi/ic_incognito_holo_dark.png
Binary files differ
diff --git a/res/layout/tab_title.xml b/res/layout/tab_title.xml
index 164e9b6..0f500c7 100644
--- a/res/layout/tab_title.xml
+++ b/res/layout/tab_title.xml
@@ -26,11 +26,11 @@
android:visibility="gone" />
<ImageView
android:id="@+id/incognito"
- android:layout_width="16dip"
- android:layout_height="16dip"
- android:layout_marginRight="16dip"
+ android:layout_width="32dip"
+ android:layout_height="32dip"
+ android:layout_marginRight="8dip"
android:gravity="center_vertical"
- android:src="@drawable/fav_incognito"
+ android:src="@drawable/ic_incognito_holo_dark"
android:visibility="gone" />
<ImageView
android:id="@+id/favicon"
diff --git a/res/mipmap-hdpi/ic_launcher_browser.png b/res/mipmap-hdpi/ic_launcher_browser.png
index ed7d3ce..1c1a0bd 100644
--- a/res/mipmap-hdpi/ic_launcher_browser.png
+++ b/res/mipmap-hdpi/ic_launcher_browser.png
Binary files differ
diff --git a/res/mipmap-mdpi/ic_launcher_browser.png b/res/mipmap-mdpi/ic_launcher_browser.png
index 46ad0a0..efcd33b 100644
--- a/res/mipmap-mdpi/ic_launcher_browser.png
+++ b/res/mipmap-mdpi/ic_launcher_browser.png
Binary files differ
diff --git a/src/com/android/browser/BaseUi.java b/src/com/android/browser/BaseUi.java
index 5deb335..568a7e9 100644
--- a/src/com/android/browser/BaseUi.java
+++ b/src/com/android/browser/BaseUi.java
@@ -253,7 +253,7 @@
}
private void attachTabToContentView(Tab tab) {
- if (tab.getWebView() == null) {
+ if ((tab == null) || (tab.getWebView() == null)) {
return;
}
View container = tab.getViewContainer();
diff --git a/src/com/android/browser/Tab.java b/src/com/android/browser/Tab.java
index 83db214..c4897f2 100644
--- a/src/com/android/browser/Tab.java
+++ b/src/com/android/browser/Tab.java
@@ -148,14 +148,12 @@
if (incognito) {
mUrl = "browser:incognito";
mTitle = c.getString(R.string.new_incognito_tab);
- mFavicon = BitmapFactory.decodeResource(
- c.getResources(), R.drawable.fav_incognito);
} else {
mUrl = "";
mTitle = c.getString(R.string.new_tab);
- mFavicon = BitmapFactory.decodeResource(
- c.getResources(), R.drawable.app_web_browser_sm);
}
+ mFavicon = BitmapFactory.decodeResource(
+ c.getResources(), R.drawable.app_web_browser_sm);
mLockIcon = LockIcon.LOCK_ICON_UNSECURE;
}
@@ -170,13 +168,8 @@
if (favicon != null) {
mFavicon = favicon;
} else {
- if (incognito) {
- mFavicon = BitmapFactory.decodeResource(
- c.getResources(), R.drawable.fav_incognito);
- } else {
- mFavicon = BitmapFactory.decodeResource(
- c.getResources(), R.drawable.app_web_browser_sm);
- }
+ mFavicon = BitmapFactory.decodeResource(
+ c.getResources(), R.drawable.app_web_browser_sm);
}
}
}
diff --git a/src/com/android/browser/UrlInputView.java b/src/com/android/browser/UrlInputView.java
index 0214843..02c9f4c 100644
--- a/src/com/android/browser/UrlInputView.java
+++ b/src/com/android/browser/UrlInputView.java
@@ -18,11 +18,15 @@
import com.android.browser.SuggestionsAdapter.CompletionListener;
import com.android.browser.SuggestionsAdapter.SuggestItem;
+import com.android.browser.search.SearchEngine;
+import com.android.browser.search.SearchEngineInfo;
+import com.android.browser.search.SearchEngines;
import android.content.Context;
import android.content.res.Configuration;
import android.text.TextUtils;
import android.util.AttributeSet;
+import android.util.Patterns;
import android.view.KeyEvent;
import android.view.View;
import android.view.View.OnFocusChangeListener;
@@ -55,6 +59,7 @@
private View mContainer;
private boolean mLandscape;
private boolean mInVoiceMode;
+ private boolean mIncognitoMode;
public UrlInputView(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
@@ -174,10 +179,33 @@
if (TextUtils.isEmpty(url)) {
mListener.onDismiss();
} else {
+ if (mIncognitoMode && isSearch(url)) {
+ // To prevent logging, intercept this request
+ // TODO: This is a quick hack, refactor this
+ SearchEngine searchEngine = BrowserSettings.getInstance()
+ .getSearchEngine();
+ if (searchEngine == null) return;
+ SearchEngineInfo engineInfo = SearchEngines
+ .getSearchEngineInfo(mContext, searchEngine.getName());
+ if (engineInfo == null) return;
+ url = engineInfo.getSearchUriForQuery(url);
+ // mLister.onAction can take it from here without logging
+ }
mListener.onAction(url, extra, source);
}
}
+ boolean isSearch(String inUrl) {
+ String url = UrlUtils.fixUrl(inUrl).trim();
+ if (TextUtils.isEmpty(url)) return false;
+
+ if (Patterns.WEB_URL.matcher(url).matches()
+ || UrlUtils.ACCEPTED_URI_SCHEMA.matcher(url).matches()) {
+ return false;
+ }
+ return true;
+ }
+
// Completion Listener
@Override
@@ -224,7 +252,8 @@
}
public void setIncognitoMode(boolean incognito) {
- mAdapter.setIncognitoMode(incognito);
+ mIncognitoMode = incognito;
+ mAdapter.setIncognitoMode(mIncognitoMode);
}
}
diff --git a/src/com/android/browser/search/SearchEngines.java b/src/com/android/browser/search/SearchEngines.java
index 62690e7..a6ba3de 100644
--- a/src/com/android/browser/search/SearchEngines.java
+++ b/src/com/android/browser/search/SearchEngines.java
@@ -61,7 +61,7 @@
return new OpenSearchSearchEngine(context, searchEngineInfo);
}
- private static SearchEngineInfo getSearchEngineInfo(Context context, String name) {
+ public static SearchEngineInfo getSearchEngineInfo(Context context, String name) {
try {
return new SearchEngineInfo(context, name);
} catch (IllegalArgumentException exception) {