Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 71ae1296 authored by Sunny Shao's avatar Sunny Shao
Browse files

Fix the header can't be scrolling problem in landscape mode

- Settings header is restricted scrolling by this ag/15029686
- To void some pages can't show the contain part while heading unscrolling.
  We allow the header can be scrolling in the landscape mode.

Fixes: 207353353
Test: make RunSettingsRoboTests -j
Change-Id: I7de4e7cb8d86516ec039f5fe7d033097dca1c9d8
parent e61d7fbd
Loading
Loading
Loading
Loading
+6 −3
Original line number Diff line number Diff line
@@ -19,6 +19,7 @@ package com.android.settingslib.collapsingtoolbar;
import static android.text.Layout.HYPHENATION_FREQUENCY_NORMAL_FAST;

import android.app.ActionBar;
import android.content.res.Configuration;
import android.graphics.text.LineBreakConfig;
import android.os.Build;
import android.view.LayoutInflater;
@@ -97,7 +98,7 @@ public class CollapsingToolbarDelegate {
                                        .build()));
            }
        }
        disableCollapsingToolbarLayoutScrollingBehavior();
        autoSetCollapsingToolbarLayoutScrolling();
        mToolbar = view.findViewById(R.id.action_bar);
        mContentFrameLayout = view.findViewById(R.id.content_frame);
        final ActionBar actionBar = mHostCallback.setActionBar(mToolbar);
@@ -148,7 +149,7 @@ public class CollapsingToolbarDelegate {
        return mAppBarLayout;
    }

    private void disableCollapsingToolbarLayoutScrollingBehavior() {
    private void autoSetCollapsingToolbarLayoutScrolling() {
        if (mAppBarLayout == null) {
            return;
        }
@@ -159,7 +160,9 @@ public class CollapsingToolbarDelegate {
                new AppBarLayout.Behavior.DragCallback() {
                    @Override
                    public boolean canDrag(@NonNull AppBarLayout appBarLayout) {
                        return false;
                        // Header can be scrolling while device in landscape mode.
                        return appBarLayout.getResources().getConfiguration().orientation
                                == Configuration.ORIENTATION_LANDSCAPE;
                    }
                });
        params.setBehavior(behavior);
+6 −3
Original line number Diff line number Diff line
@@ -21,6 +21,7 @@ import static android.text.Layout.HYPHENATION_FREQUENCY_NORMAL_FAST;
import android.app.ActionBar;
import android.app.Activity;
import android.content.Context;
import android.content.res.Configuration;
import android.content.res.TypedArray;
import android.graphics.text.LineBreakConfig;
import android.os.Build;
@@ -122,7 +123,7 @@ public class CollapsingCoordinatorLayout extends CoordinatorLayout {
                mCollapsingToolbarLayout.setTitle(mToolbarTitle);
            }
        }
        disableCollapsingToolbarLayoutScrollingBehavior();
        autoSetCollapsingToolbarLayoutScrolling();
    }

    /**
@@ -243,7 +244,7 @@ public class CollapsingCoordinatorLayout extends CoordinatorLayout {
            mCollapsingToolbarLayout.findViewById(R.id.support_action_bar);
    }

    private void disableCollapsingToolbarLayoutScrollingBehavior() {
    private void autoSetCollapsingToolbarLayoutScrolling() {
        if (mAppBarLayout == null) {
            return;
        }
@@ -254,7 +255,9 @@ public class CollapsingCoordinatorLayout extends CoordinatorLayout {
                new AppBarLayout.Behavior.DragCallback() {
                    @Override
                    public boolean canDrag(@NonNull AppBarLayout appBarLayout) {
                        return false;
                        // Header can be scrolling while device in landscape mode.
                        return appBarLayout.getResources().getConfiguration().orientation
                                == Configuration.ORIENTATION_LANDSCAPE;
                    }
                });
        params.setBehavior(behavior);