Skip to content

Commit 4f30ca9

Browse files
committed
refactor: update edge-to-edge implementation
1 parent cf92a02 commit 4f30ca9

File tree

7 files changed

+54
-39
lines changed

7 files changed

+54
-39
lines changed

app/src/main/kotlin/org/fossify/math/activities/MainActivity.kt

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -56,11 +56,8 @@ class MainActivity : SimpleActivity(), Calculator {
5656
appLaunched(BuildConfig.APPLICATION_ID)
5757
setupOptionsMenu()
5858
refreshMenuItems()
59-
updateEdgeToEdge(
60-
topAppBar = binding.mainToolbar,
61-
scrollingView = binding.mainNestedScrollview,
62-
)
63-
setupMaterialScrollListener(binding.mainNestedScrollview, binding.mainToolbar)
59+
setupEdgeToEdge(padBottomSystem = listOf(binding.mainNestedScrollview))
60+
setupMaterialScrollListener(binding.mainNestedScrollview, binding.mainAppbar!!)
6461

6562
if (savedInstanceState != null) {
6663
saveCalculatorState = savedInstanceState.getCharSequence(CALCULATOR_STATE) as String
@@ -104,7 +101,7 @@ class MainActivity : SimpleActivity(), Calculator {
104101

105102
override fun onResume() {
106103
super.onResume()
107-
setupTopAppBar(binding.mainToolbar)
104+
setupTopAppBar(binding.mainAppbar!!)
108105
if (storedTextColor != config.textColor) {
109106
binding.calculatorHolder?.let { updateViewColors(it, getProperTextColor()) }
110107
}

app/src/main/kotlin/org/fossify/math/activities/UnitConverterActivity.kt

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -47,11 +47,8 @@ class UnitConverterActivity : SimpleActivity(), ConverterView.OnUnitChangedListe
4747
setupOptionsMenu()
4848
}
4949

50-
updateEdgeToEdge(
51-
topAppBar = binding.unitConverterToolbar,
52-
scrollingView = binding.nestedScrollview,
53-
)
54-
setupMaterialScrollListener(binding.nestedScrollview, binding.unitConverterToolbar)
50+
setupEdgeToEdge(padBottomSystem = listOf(binding.nestedScrollview))
51+
setupMaterialScrollListener(binding.nestedScrollview, binding.unitConverterAppbar)
5552

5653
val converter = Converter.ALL.getOrNull(intent.getIntExtra(EXTRA_CONVERTER_ID, 0))
5754

@@ -111,7 +108,7 @@ class UnitConverterActivity : SimpleActivity(), ConverterView.OnUnitChangedListe
111108
override fun onResume() {
112109
super.onResume()
113110

114-
setupTopAppBar(binding.unitConverterToolbar, NavigationIcon.Arrow)
111+
setupTopAppBar(binding.unitConverterAppbar, NavigationIcon.Arrow)
115112
binding.viewUnitConverter.viewConverter.root.updateColors()
116113
binding.viewUnitConverter.converterHolder.let {
117114
updateViewColors(it, getProperTextColor())

app/src/main/kotlin/org/fossify/math/activities/UnitConverterPickerActivity.kt

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -18,11 +18,11 @@ class UnitConverterPickerActivity : SimpleActivity() {
1818
override fun onCreate(savedInstanceState: Bundle?) {
1919
super.onCreate(savedInstanceState)
2020
setContentView(binding.root)
21-
updateEdgeToEdge(
22-
topAppBar = binding.unitConverterPickerToolbar,
23-
scrollingView = binding.unitTypesGrid,
21+
setupEdgeToEdge(padBottomSystem = listOf(binding.unitTypesGrid))
22+
setupMaterialScrollListener(
23+
binding.unitTypesGrid,
24+
binding.unitConverterPickerAppbar
2425
)
25-
setupMaterialScrollListener(binding.unitTypesGrid, binding.unitConverterPickerToolbar)
2626

2727
binding.unitTypesGrid.layoutManager =
2828
AutoGridLayoutManager(this, resources.getDimensionPixelSize(R.dimen.unit_type_size))
@@ -39,7 +39,7 @@ class UnitConverterPickerActivity : SimpleActivity() {
3939
override fun onResume() {
4040
super.onResume()
4141

42-
setupTopAppBar(binding.unitConverterPickerToolbar, NavigationIcon.Arrow)
42+
setupTopAppBar(binding.unitConverterPickerAppbar, NavigationIcon.Arrow)
4343

4444
if (config.preventPhoneFromSleeping) {
4545
window.addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON)

app/src/main/res/layout/activity_main.xml

Lines changed: 15 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -8,21 +8,28 @@
88
tools:context="org.fossify.math.activities.MainActivity"
99
tools:ignore="HardcodedText">
1010

11-
<com.google.android.material.appbar.MaterialToolbar
12-
android:id="@+id/main_toolbar"
11+
<org.fossify.commons.views.MyAppBarLayout
12+
android:id="@+id/main_appbar"
1313
android:layout_width="match_parent"
14-
android:layout_height="?attr/actionBarSize"
15-
android:background="@color/color_primary"
16-
app:menu="@menu/menu"
17-
app:titleTextAppearance="@style/AppTheme.ActionBar.TitleTextStyle" />
14+
android:layout_height="wrap_content">
15+
16+
<com.google.android.material.appbar.MaterialToolbar
17+
android:id="@+id/main_toolbar"
18+
android:layout_width="match_parent"
19+
android:layout_height="?attr/actionBarSize"
20+
android:background="@color/color_primary"
21+
app:menu="@menu/menu"
22+
app:titleTextAppearance="@style/AppTheme.ActionBar.TitleTextStyle" />
23+
24+
</org.fossify.commons.views.MyAppBarLayout>
1825

1926
<androidx.core.widget.NestedScrollView
2027
android:id="@+id/main_nested_scrollview"
2128
android:layout_width="match_parent"
2229
android:layout_height="match_parent"
23-
android:layout_marginTop="?attr/actionBarSize"
2430
android:fillViewport="true"
25-
android:scrollbars="none">
31+
android:scrollbars="none"
32+
app:layout_behavior="@string/appbar_scrolling_view_behavior">
2633

2734
<include
2835
layout="@layout/view_calculator"

app/src/main/res/layout/activity_unit_converter.xml

Lines changed: 14 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -9,20 +9,27 @@
99
tools:context="org.fossify.math.activities.UnitConverterActivity"
1010
tools:ignore="HardcodedText">
1111

12-
<com.google.android.material.appbar.MaterialToolbar
13-
android:id="@+id/unit_converter_toolbar"
12+
<org.fossify.commons.views.MyAppBarLayout
13+
android:id="@+id/unit_converter_appbar"
1414
android:layout_width="match_parent"
15-
android:layout_height="?attr/actionBarSize"
16-
android:background="@color/color_primary"
17-
app:titleTextAppearance="@style/AppTheme.ActionBar.TitleTextStyle" />
15+
android:layout_height="wrap_content">
16+
17+
<com.google.android.material.appbar.MaterialToolbar
18+
android:id="@+id/unit_converter_toolbar"
19+
android:layout_width="match_parent"
20+
android:layout_height="?attr/actionBarSize"
21+
android:background="@color/color_primary"
22+
app:titleTextAppearance="@style/AppTheme.ActionBar.TitleTextStyle" />
23+
24+
</org.fossify.commons.views.MyAppBarLayout>
1825

1926
<androidx.core.widget.NestedScrollView
2027
android:id="@+id/nested_scrollview"
2128
android:layout_width="match_parent"
2229
android:layout_height="match_parent"
23-
android:layout_marginTop="?attr/actionBarSize"
2430
android:fillViewport="true"
25-
android:scrollbars="none">
31+
android:scrollbars="none"
32+
app:layout_behavior="@string/appbar_scrolling_view_behavior">
2633

2734
<include
2835
android:id="@+id/view_unit_converter"

app/src/main/res/layout/activity_unit_converter_picker.xml

Lines changed: 13 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -9,22 +9,29 @@
99
tools:context="org.fossify.math.activities.UnitConverterActivity"
1010
tools:ignore="HardcodedText">
1111

12-
<com.google.android.material.appbar.MaterialToolbar
13-
android:id="@+id/unit_converter_picker_toolbar"
12+
<org.fossify.commons.views.MyAppBarLayout
13+
android:id="@+id/unit_converter_picker_appbar"
1414
android:layout_width="match_parent"
15-
android:layout_height="?attr/actionBarSize"
16-
android:background="@color/color_primary"
17-
app:titleTextAppearance="@style/AppTheme.ActionBar.TitleTextStyle" />
15+
android:layout_height="wrap_content">
16+
17+
<com.google.android.material.appbar.MaterialToolbar
18+
android:id="@+id/unit_converter_picker_toolbar"
19+
android:layout_width="match_parent"
20+
android:layout_height="?attr/actionBarSize"
21+
android:background="@color/color_primary"
22+
app:titleTextAppearance="@style/AppTheme.ActionBar.TitleTextStyle" />
23+
24+
</org.fossify.commons.views.MyAppBarLayout>
1825

1926
<androidx.recyclerview.widget.RecyclerView
2027
android:id="@+id/unit_types_grid"
2128
android:layout_width="match_parent"
2229
android:layout_height="match_parent"
2330
android:layout_marginStart="@dimen/activity_margin"
24-
android:layout_marginTop="?attr/actionBarSize"
2531
android:layout_marginEnd="@dimen/activity_margin"
2632
app:layoutManager="androidx.recyclerview.widget.GridLayoutManager"
2733
app:spanCount="4"
34+
app:layout_behavior="@string/appbar_scrolling_view_behavior"
2835
tools:itemCount="20"
2936
tools:listitem="@layout/item_unit_type" />
3037

gradle/libs.versions.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ evalex = "3.5.0"
2121
#Room
2222
room = "2.8.2"
2323
#Fossify
24-
commons = "5.4.0"
24+
commons = "6.0.0"
2525
#Gradle
2626
gradlePlugins-agp = "8.11.1"
2727
#build

0 commit comments

Comments
 (0)