OSDN Git Service

Only adds translucent status bar according to theme values.
authorUdam Saini <udam@google.com>
Thu, 3 Mar 2016 21:20:18 +0000 (13:20 -0800)
committerUdam Saini <udam@google.com>
Thu, 3 Mar 2016 21:25:10 +0000 (13:25 -0800)
On SUW screens, we do not want to add a translucent status bar. This
also affects ime insets when keyboards are shown.

bug:27479424
bug:27063940
Change-Id: Ic339a9d931f6580a9af8deea85ec5e5bb60f6cca

packages/SettingsLib/src/com/android/settingslib/drawer/SettingsDrawerActivity.java

index 1c032fa..740b394 100644 (file)
@@ -68,16 +68,18 @@ public class SettingsDrawerActivity extends Activity {
 
         long startTime = System.currentTimeMillis();
 
-        getWindow().addFlags(LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);
-        getWindow().addFlags(LayoutParams.FLAG_TRANSLUCENT_STATUS);
-        requestWindowFeature(Window.FEATURE_NO_TITLE);
+        TypedArray theme = getTheme().obtainStyledAttributes(android.R.styleable.Theme);
+        if (!theme.getBoolean(android.R.styleable.Theme_windowNoTitle, false)) {
+            getWindow().addFlags(LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);
+            getWindow().addFlags(LayoutParams.FLAG_TRANSLUCENT_STATUS);
+            requestWindowFeature(Window.FEATURE_NO_TITLE);
+        }
         super.setContentView(R.layout.settings_with_drawer);
         mDrawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout);
         if (mDrawerLayout == null) {
             return;
         }
         Toolbar toolbar = (Toolbar) findViewById(R.id.action_bar);
-        TypedArray theme = getTheme().obtainStyledAttributes(android.R.styleable.Theme);
         if (theme.getBoolean(android.R.styleable.Theme_windowNoTitle, false)) {
             toolbar.setVisibility(View.GONE);
             mDrawerLayout.setDrawerLockMode(DrawerLayout.LOCK_MODE_LOCKED_CLOSED);