diff --git a/app/src/main/java/eu/faircode/email/ActivityView.java b/app/src/main/java/eu/faircode/email/ActivityView.java index 31c2314b60..19faf8d792 100644 --- a/app/src/main/java/eu/faircode/email/ActivityView.java +++ b/app/src/main/java/eu/faircode/email/ActivityView.java @@ -50,7 +50,6 @@ import androidx.appcompat.app.ActionBarDrawerToggle; import androidx.appcompat.app.AlertDialog; import androidx.constraintlayout.widget.Group; import androidx.core.app.NotificationCompat; -import androidx.drawerlayout.widget.DrawerLayout; import androidx.fragment.app.Fragment; import androidx.fragment.app.FragmentManager; import androidx.fragment.app.FragmentTransaction; @@ -154,7 +153,6 @@ public class ActivityView extends ActivityBilling implements FragmentManager.OnB content_pane = findViewById(R.id.content_pane); drawerLayout = findViewById(R.id.drawer_layout); - drawerLayout.setup(getResources().getConfiguration()); drawerToggle = new ActionBarDrawerToggle(this, drawerLayout, R.string.app_name, R.string.app_name) { public void onDrawerClosed(View view) { @@ -501,6 +499,7 @@ public class ActivityView extends ActivityBilling implements FragmentManager.OnB @Override protected void onPostCreate(Bundle savedInstanceState) { super.onPostCreate(savedInstanceState); + drawerLayout.setup(getResources().getConfiguration()); drawerToggle.syncState(); } diff --git a/app/src/main/java/eu/faircode/email/DrawerLayoutEx.java b/app/src/main/java/eu/faircode/email/DrawerLayoutEx.java index 7d176bdd1c..027cca0127 100644 --- a/app/src/main/java/eu/faircode/email/DrawerLayoutEx.java +++ b/app/src/main/java/eu/faircode/email/DrawerLayoutEx.java @@ -22,7 +22,9 @@ package eu.faircode.email; import android.content.Context; import android.content.res.Configuration; import android.graphics.Color; +import android.os.Parcelable; import android.util.AttributeSet; +import android.view.Gravity; import android.view.MotionEvent; import android.view.View; import android.view.ViewGroup; @@ -49,7 +51,6 @@ public class DrawerLayoutEx extends DrawerLayout { void setup(Configuration config) { setScrimColor(Helper.resolveColor(getContext(), R.attr.colorDrawerScrim)); -/* ViewGroup childContent = (ViewGroup) getChildAt(0); ViewGroup childDrawer = (ViewGroup) getChildAt(1); if (config.orientation == Configuration.ORIENTATION_LANDSCAPE) { @@ -62,9 +63,14 @@ public class DrawerLayoutEx extends DrawerLayout { setDrawerLockMode(LOCK_MODE_UNLOCKED); setScrimColor(Helper.resolveColor(getContext(), R.attr.colorDrawerScrim)); childContent.setPaddingRelative(0, 0, 0, 0); - closeDrawers(); } - */ + } + + @Override + protected void onRestoreInstanceState(Parcelable state) { + super.onRestoreInstanceState(state); + locked = (getDrawerLockMode(Gravity.LEFT) == LOCK_MODE_LOCKED_OPEN || + getDrawerLockMode(Gravity.RIGHT) == LOCK_MODE_LOCKED_OPEN); } @Override