13 Commits

Author SHA1 Message Date
cketcham
dc72aaeed4 Migrate Gradle build and sources to androidx
PiperOrigin-RevId: 225551505
2018-12-21 11:07:45 -05:00
Alex Lockwood
0c9094a1eb [AppBarLayout] Update AppBarLayout to use the 3-arg view constructor
Without this fix, it is impossible for developers to properly make proper use of the `defStyleAttr` view constructor argument.

This PR fixes the bug filed here: https://issuetracker.google.com/issues/117316283

Resolves https://github.com/material-components/material-components-android/pull/212

PiperOrigin-RevId: 216750232
2018-10-11 18:31:34 -04:00
dniz
e853c84767 Fix AppBarLayout liftOnScroll target view caching
PiperOrigin-RevId: 214066255
2018-09-28 16:19:17 -04:00
dniz
a313443f9e Update AppBarLayout liftOnScroll to support nested scrolling targets
- Add liftOnScrollTargetViewId attribute to allow client to specify the scrolling view that should be listened to for updating AppBarLayout lifted state.
- Use View#canScrollVertically instead of View#getScrollY to determine lifted state.

PiperOrigin-RevId: 213614055
2018-09-28 14:55:37 -04:00
marianomartin
585e2fede0 Remove constructor comments
PiperOrigin-RevId: 209762154
2018-08-28 16:34:43 -04:00
dniz
b30c567719 AppBarLayout expose setLiftable() and setLifted() as a workaround for ListView lift on scroll
Example of workaround:

  appBarLayout.setLiftable(true);
  listView.setOnScrollListener(
      new OnScrollListener() {
        @Override
        public void onScrollStateChanged(AbsListView view, int scrollState) {}

        @Override
        public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) {
          boolean isAtTop = firstVisibleItem == 0 && (view.getChildCount() == 0 || view.getChildAt(0).getTop() == 0);
          appBarLayout.setLifted(!isAtTop);
        }
      });

PiperOrigin-RevId: 202187470
2018-07-02 09:42:27 -04:00
dniz
005a0044c3 Update AppBarLayout liftOnScroll start scroll check to not depend on scrolling
view size

This fixes an issue where the app bar would not lift if a bottom margin is
applied to the scrolling view

PiperOrigin-RevId: 201008179
2018-06-20 17:28:13 -04:00
dniz
b4529d2a88 Remove unused MathUtils methods and add documentation. Also replace
MathUtils#constrain with Support Library MathUtils#clamp

PiperOrigin-RevId: 197905324
2018-05-30 17:31:27 -04:00
dniz
d592999d59 Infer initial lifted state for AppBarLayout lift on scroll. This preserves the app bar's elevation across screen rotations and saving/restoring of instance state.
PiperOrigin-RevId: 197754058
2018-05-30 17:19:08 -04:00
dniz
49b6f396ba Update AppBarLayout to support lift on scroll behavior
PiperOrigin-RevId: 197607028
2018-05-30 17:17:09 -04:00
dcarlsson
da9a170696 Fix typo in AppBarLayout documentation.
PiperOrigin-RevId: 195305707
2018-05-03 17:02:55 -04:00
dniz
b504d3fc3d Set up Gradle task for docs build
PiperOrigin-RevId: 194457377
2018-04-30 12:03:20 -04:00
dniz
9ca33544ac Update package name to com.google.android.material
PiperOrigin-RevId: 193236235
2018-04-30 11:24:23 -04:00