diff --git a/res/mipmap-hdpi/ic_launcher_browser.png b/res/mipmap-hdpi/ic_launcher_browser.png
index 5680416..4f9377f 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 426f4a7..9bc6817 100644
--- a/res/mipmap-mdpi/ic_launcher_browser.png
+++ b/res/mipmap-mdpi/ic_launcher_browser.png
Binary files differ
diff --git a/res/mipmap-xhdpi/ic_launcher_browser.png b/res/mipmap-xhdpi/ic_launcher_browser.png
index 74ffd5b..9412fbe 100644
--- a/res/mipmap-xhdpi/ic_launcher_browser.png
+++ b/res/mipmap-xhdpi/ic_launcher_browser.png
Binary files differ
diff --git a/src/com/android/browser/TitleBar.java b/src/com/android/browser/TitleBar.java
index 9b2a947..ffe5553 100644
--- a/src/com/android/browser/TitleBar.java
+++ b/src/com/android/browser/TitleBar.java
@@ -67,7 +67,7 @@
         mBaseUi = ui;
         mContentView = contentView;
         initLayout(context);
-        setFixedTitleBar(!mContext.getResources().getBoolean(R.bool.hide_title));
+        setFixedTitleBar();
     }
 
     private void initLayout(Context context) {
@@ -101,7 +101,7 @@
     @Override
     protected void onConfigurationChanged(Configuration config) {
         super.onConfigurationChanged(config);
-        setFixedTitleBar(!mContext.getResources().getBoolean(R.bool.hide_title));
+        setFixedTitleBar();
     }
 
     @Override
@@ -110,10 +110,14 @@
         if (mIsFixedTitleBar) {
             int margin = getMeasuredHeight() - calculateEmbeddedHeight();
             mBaseUi.setContentViewMarginTop(-margin);
+        } else {
+            mBaseUi.setContentViewMarginTop(0);
         }
     }
 
-    private void setFixedTitleBar(boolean isFixed) {
+    private void setFixedTitleBar() {
+        boolean isFixed = !mUseQuickControls
+                && !mContext.getResources().getBoolean(R.bool.hide_title);
         // If getParent() returns null, we are initializing
         ViewGroup parent = (ViewGroup)getParent();
         if (mIsFixedTitleBar == isFixed && parent != null) return;
@@ -142,6 +146,7 @@
 
     public void setUseQuickControls(boolean use) {
         mUseQuickControls = use;
+        setFixedTitleBar();
         if (use) {
             this.setVisibility(View.GONE);
         } else {
