Merge "Dissable scrolling behavior for collapsing toolbar" into sc-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
b96246196b
@@ -35,6 +35,7 @@ import android.widget.Toolbar;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.annotation.Nullable;
|
||||
import androidx.coordinatorlayout.widget.CoordinatorLayout;
|
||||
import androidx.fragment.app.FragmentActivity;
|
||||
|
||||
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.TransitionType;
|
||||
|
||||
import com.google.android.material.appbar.AppBarLayout;
|
||||
import com.google.android.material.appbar.CollapsingToolbarLayout;
|
||||
import com.google.android.material.resources.TextAppearanceConfig;
|
||||
import com.google.android.setupcompat.util.WizardManagerHelper;
|
||||
@@ -64,6 +66,7 @@ public class SettingsBaseActivity extends FragmentActivity implements CategoryHa
|
||||
|
||||
protected CategoryMixin mCategoryMixin;
|
||||
protected CollapsingToolbarLayout mCollapsingToolbarLayout;
|
||||
protected AppBarLayout mAppBarLayout;
|
||||
private Toolbar mToolbar;
|
||||
|
||||
@Override
|
||||
@@ -108,6 +111,8 @@ public class SettingsBaseActivity extends FragmentActivity implements CategoryHa
|
||||
if (isToolbarEnabled() && !isAnySetupWizard) {
|
||||
super.setContentView(R.layout.collapsing_toolbar_base_layout);
|
||||
mCollapsingToolbarLayout = findViewById(R.id.collapsing_toolbar);
|
||||
mAppBarLayout = findViewById(R.id.app_bar);
|
||||
disableCollapsingToolbarLayoutScrollingBehavior();
|
||||
} else {
|
||||
super.setContentView(R.layout.settings_base_layout);
|
||||
}
|
||||
@@ -274,6 +279,20 @@ public class SettingsBaseActivity extends FragmentActivity implements CategoryHa
|
||||
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) {
|
||||
return intent.getIntExtra(EXTRA_PAGE_TRANSITION_TYPE,
|
||||
SettingsTransitionHelper.TransitionType.TRANSITION_SHARED_AXIS);
|
||||
|
Reference in New Issue
Block a user