Merge "Dissable scrolling behavior for collapsing toolbar" into sc-dev

This commit is contained in:
TreeHugger Robot
2021-06-22 01:26:59 +00:00
committed by Android (Google) Code Review

View File

@@ -35,6 +35,7 @@ import android.widget.Toolbar;
import androidx.annotation.NonNull; import androidx.annotation.NonNull;
import androidx.annotation.Nullable; import androidx.annotation.Nullable;
import androidx.coordinatorlayout.widget.CoordinatorLayout;
import androidx.fragment.app.FragmentActivity; import androidx.fragment.app.FragmentActivity;
import com.android.settings.R; import com.android.settings.R;
@@ -45,6 +46,7 @@ import com.android.settingslib.core.lifecycle.HideNonSystemOverlayMixin;
import com.android.settingslib.transition.SettingsTransitionHelper; import com.android.settingslib.transition.SettingsTransitionHelper;
import com.android.settingslib.transition.SettingsTransitionHelper.TransitionType; import com.android.settingslib.transition.SettingsTransitionHelper.TransitionType;
import com.google.android.material.appbar.AppBarLayout;
import com.google.android.material.appbar.CollapsingToolbarLayout; import com.google.android.material.appbar.CollapsingToolbarLayout;
import com.google.android.material.resources.TextAppearanceConfig; import com.google.android.material.resources.TextAppearanceConfig;
import com.google.android.setupcompat.util.WizardManagerHelper; import com.google.android.setupcompat.util.WizardManagerHelper;
@@ -64,6 +66,7 @@ public class SettingsBaseActivity extends FragmentActivity implements CategoryHa
protected CategoryMixin mCategoryMixin; protected CategoryMixin mCategoryMixin;
protected CollapsingToolbarLayout mCollapsingToolbarLayout; protected CollapsingToolbarLayout mCollapsingToolbarLayout;
protected AppBarLayout mAppBarLayout;
private Toolbar mToolbar; private Toolbar mToolbar;
@Override @Override
@@ -108,6 +111,8 @@ public class SettingsBaseActivity extends FragmentActivity implements CategoryHa
if (isToolbarEnabled() && !isAnySetupWizard) { if (isToolbarEnabled() && !isAnySetupWizard) {
super.setContentView(R.layout.collapsing_toolbar_base_layout); super.setContentView(R.layout.collapsing_toolbar_base_layout);
mCollapsingToolbarLayout = findViewById(R.id.collapsing_toolbar); mCollapsingToolbarLayout = findViewById(R.id.collapsing_toolbar);
mAppBarLayout = findViewById(R.id.app_bar);
disableCollapsingToolbarLayoutScrollingBehavior();
} else { } else {
super.setContentView(R.layout.settings_base_layout); super.setContentView(R.layout.settings_base_layout);
} }
@@ -274,6 +279,20 @@ public class SettingsBaseActivity extends FragmentActivity implements CategoryHa
return false; return false;
} }
private void disableCollapsingToolbarLayoutScrollingBehavior() {
final CoordinatorLayout.LayoutParams params =
(CoordinatorLayout.LayoutParams) mAppBarLayout.getLayoutParams();
final AppBarLayout.Behavior behavior = new AppBarLayout.Behavior();
behavior.setDragCallback(
new AppBarLayout.Behavior.DragCallback() {
@Override
public boolean canDrag(@NonNull AppBarLayout appBarLayout) {
return false;
}
});
params.setBehavior(behavior);
}
private int getTransitionType(Intent intent) { private int getTransitionType(Intent intent) {
return intent.getIntExtra(EXTRA_PAGE_TRANSITION_TYPE, return intent.getIntExtra(EXTRA_PAGE_TRANSITION_TYPE,
SettingsTransitionHelper.TransitionType.TRANSITION_SHARED_AXIS); SettingsTransitionHelper.TransitionType.TRANSITION_SHARED_AXIS);