Updater: update layout and colors for 12
* Updated toolbar layout and behaviour * Changed colors to match AOSP settings Change-Id: Ic8efa69f9ba06055bac1772e1d9f3eb5ada67d8d
This commit is contained in:
committed by
Jan Altensen
parent
c8ae33d9ba
commit
61e71f0db0
@@ -16,6 +16,7 @@ LOCAL_STATIC_ANDROID_LIBRARIES := \
|
||||
androidx.localbroadcastmanager_localbroadcastmanager \
|
||||
androidx.preference_preference \
|
||||
androidx.recyclerview_recyclerview \
|
||||
SettingsLib
|
||||
|
||||
LOCAL_RESOURCE_DIR := \
|
||||
$(LOCAL_PATH)/res
|
||||
|
@@ -12,18 +12,30 @@
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:fitsSystemWindows="true"
|
||||
app:layout_behavior="org.lineageos.updater.ui.FlingBehavior">
|
||||
android:outlineAmbientShadowColor="@android:color/transparent"
|
||||
android:outlineSpotShadowColor="@android:color/transparent"
|
||||
android:background="?android:attr/colorPrimary"
|
||||
android:theme="@style/Theme.CollapsingToolbar.Settings">
|
||||
|
||||
<com.google.android.material.appbar.CollapsingToolbarLayout
|
||||
android:id="@+id/collapsing_toolbar"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:theme="@style/AppTheme.AppBarOverlay"
|
||||
app:collapsedTitleTextAppearance="@style/TextAppearanceInverted"
|
||||
app:contentScrim="?attr/colorPrimary"
|
||||
app:expandedTitleTextAppearance="@style/TextAppearanceTransparent"
|
||||
app:layout_scrollFlags="scroll|exitUntilCollapsed"
|
||||
app:scrimAnimationDuration="0">
|
||||
android:layout_height="wrap_content"
|
||||
android:clipToPadding="false"
|
||||
app:forceApplySystemWindowInsetTop="true"
|
||||
app:extraMultilineHeightEnabled="true"
|
||||
app:contentScrim="@color/toolbar_collapsed"
|
||||
app:maxLines="3"
|
||||
app:layout_scrollFlags="scroll|exitUntilCollapsed|snap"
|
||||
app:scrimAnimationDuration="50"
|
||||
app:scrimVisibleHeightTrigger="@dimen/settingslib_scrim_visible_height_trigger"
|
||||
app:statusBarScrim="@null"
|
||||
app:titleCollapseMode="fade"
|
||||
app:collapsedTitleTextAppearance="@style/CollapsingToolbarTitle.Collapsed"
|
||||
app:expandedTitleTextAppearance="@style/CollapsingToolbarTitle.Expanded"
|
||||
app:expandedTitleMarginStart="@dimen/expanded_title_margin_start"
|
||||
app:expandedTitleMarginEnd="@dimen/expanded_title_margin_end"
|
||||
app:toolbarId="@id/action_bar">
|
||||
|
||||
<RelativeLayout
|
||||
android:layout_width="match_parent"
|
||||
@@ -72,7 +84,8 @@
|
||||
android:id="@+id/toolbar"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="?attr/actionBarSize"
|
||||
android:textColor="?android:attr/textColorPrimary"
|
||||
android:theme="?android:attr/actionBarTheme"
|
||||
android:transitionName="shared_element_view"
|
||||
app:layout_collapseMode="pin"/>
|
||||
</com.google.android.material.appbar.CollapsingToolbarLayout>
|
||||
</com.google.android.material.appbar.AppBarLayout>
|
||||
|
@@ -3,6 +3,8 @@
|
||||
<color name="theme_primary">#212121</color>
|
||||
<color name="theme_primary_dark">#1c1c1c</color>
|
||||
<color name="theme_accent">@*android:color/accent_device_default_dark</color>
|
||||
<color name="background">@*android:color/system_neutral1_800</color>
|
||||
<color name="toolbar_collapsed">@android:color/system_neutral1_700</color>
|
||||
|
||||
<color name="inverted">#f5f5f5</color>
|
||||
</resources>
|
||||
|
@@ -3,6 +3,8 @@
|
||||
<color name="theme_primary">#f5f5f5</color>
|
||||
<color name="theme_primary_dark">#e0e0e0</color>
|
||||
<color name="theme_accent">@*android:color/accent_device_default_light</color>
|
||||
<color name="background">@*android:color/system_neutral1_0</color>
|
||||
<color name="toolbar_collapsed">@android:color/system_neutral1_100</color>
|
||||
<color name="tv_background">#FF0E0E0F</color>
|
||||
<color name="tv_card_background">#222222</color>
|
||||
|
||||
|
@@ -7,6 +7,7 @@
|
||||
<item name="windowActionModeOverlay">true</item>
|
||||
<item name="android:windowLightStatusBar">@bool/theme_is_light</item>
|
||||
<item name="android:windowLightNavigationBar">@bool/theme_is_light</item>
|
||||
<item name="android:windowBackground">@color/background</item>
|
||||
</style>
|
||||
|
||||
<style name="AppTheme.NoActionBar">
|
||||
|
@@ -1,45 +0,0 @@
|
||||
package org.lineageos.updater.ui;
|
||||
|
||||
import android.content.Context;
|
||||
import android.util.AttributeSet;
|
||||
import android.view.View;
|
||||
|
||||
import androidx.coordinatorlayout.widget.CoordinatorLayout;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
|
||||
import com.google.android.material.appbar.AppBarLayout;
|
||||
|
||||
public final class FlingBehavior extends AppBarLayout.Behavior {
|
||||
private static final int TOP_CHILD_FLING_THRESHOLD = 3;
|
||||
private boolean isPositive;
|
||||
|
||||
public FlingBehavior() {
|
||||
}
|
||||
|
||||
public FlingBehavior(Context context, AttributeSet attrs) {
|
||||
super(context, attrs);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean onNestedFling(CoordinatorLayout coordinatorLayout, AppBarLayout child,
|
||||
View target, float velocityX, float velocityY, boolean consumed) {
|
||||
if (velocityY > 0 && !isPositive || velocityY < 0 && isPositive) {
|
||||
velocityY = velocityY * -1;
|
||||
}
|
||||
if (target instanceof RecyclerView && velocityY < 0) {
|
||||
final RecyclerView recyclerView = (RecyclerView) target;
|
||||
final View firstChild = recyclerView.getChildAt(0);
|
||||
final int childAdapterPosition = recyclerView.getChildAdapterPosition(firstChild);
|
||||
consumed = childAdapterPosition > TOP_CHILD_FLING_THRESHOLD;
|
||||
}
|
||||
return super.onNestedFling(coordinatorLayout, child, target, velocityX, velocityY,
|
||||
consumed);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onNestedPreScroll(CoordinatorLayout coordinatorLayout, AppBarLayout child,
|
||||
View target, int dx, int dy, int[] consumed) {
|
||||
super.onNestedPreScroll(coordinatorLayout, child, target, dx, dy, consumed);
|
||||
isPositive = dy > 0;
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user