diff --git a/res/layout/qc_tab.xml b/res/layout/qc_tab.xml
index 6fcd0f4..af8d46f 100644
--- a/res/layout/qc_tab.xml
+++ b/res/layout/qc_tab.xml
@@ -37,14 +37,14 @@
         />
     <ImageView
         android:id="@+id/thumb"
-        android:layout_height="@dimen/qc_thumb_width"
-        android:layout_width="@dimen/qc_thumb_height"
+        android:layout_width="@dimen/qc_thumb_width"
+        android:layout_height="@dimen/qc_thumb_height"
         android:layout_marginTop= "1dip"
         android:layout_marginLeft= "1dip"
         android:layout_marginRight= "1dip"
         android:layout_marginBottom= "1dip"
         android:src="@drawable/browser_thumbnail"
-        android:scaleType="centerCrop"
+        android:scaleType="centerInside"
         />
     <TextView android:id="@+id/title2"
         android:layout_width="match_parent"
diff --git a/src/com/android/browser/Tab.java b/src/com/android/browser/Tab.java
index 8bf32b0..69213cd 100644
--- a/src/com/android/browser/Tab.java
+++ b/src/com/android/browser/Tab.java
@@ -538,6 +538,13 @@
     private final WebViewClient mWebViewClient = new WebViewClient() {
         private Message mDontResend;
         private Message mResend;
+
+        private boolean providersDiffer(String url, String otherUrl) {
+            Uri uri1 = Uri.parse(url);
+            Uri uri2 = Uri.parse(otherUrl);
+            return !uri1.getEncodedAuthority().equals(uri2.getEncodedAuthority());
+        }
+
         @Override
         public void onPageStarted(WebView view, String url, Bitmap favicon) {
             mInPageLoad = true;
@@ -546,7 +553,7 @@
                     view.isPrivateBrowsingEnabled(), url, favicon);
             mLoadStartTime = SystemClock.uptimeMillis();
             if (mVoiceSearchData != null
-                    && !url.equals(mVoiceSearchData.mLastVoiceSearchUrl)) {
+                    && providersDiffer(url, mVoiceSearchData.mLastVoiceSearchUrl)) {
                 if (mVoiceSearchData.mSourceIsGoogle) {
                     Intent i = new Intent(LoggingEvents.ACTION_LOG_EVENT);
                     i.putExtra(LoggingEvents.EXTRA_FLUSH, true);
