From 589365ef7caddb7c6228769c2f9ef15348881ca8 Mon Sep 17 00:00:00 2001 From: Arnaud Vergnet <80701113+arnaudvergnet@users.noreply.github.com> Date: Thu, 7 Apr 2022 20:09:22 +0200 Subject: [PATCH] [android] Migrate nav menu to bottom sheet behavior (#2258) * [android] Migrate nav menu to bottom sheet behavior Signed-off-by: Arnaud Vergnet * [android] Improve bottom sheet style Signed-off-by: Arnaud Vergnet * [android] Add background dim to nav menu Signed-off-by: Arnaud Vergnet * [android] Collapse nav menu on back press Signed-off-by: Arnaud Vergnet * [android] Allow clicking on nav menu to toggle its state Signed-off-by: Arnaud Vergnet * [android] Improve nav menu layout Signed-off-by: Arnaud Vergnet * [android] Refactor main menu Signed-off-by: Arnaud Vergnet * [android] Improve nav menu font scaling behavior Signed-off-by: Arnaud Vergnet --- .../res/drawable-v21/menu_button_right.xml | 10 - android/res/drawable/bottom_sheet_handle.xml | 6 + android/res/drawable/ic_menu_close.xml | 15 - android/res/drawable/menu_button_right.xml | 4 - android/res/layout-land/layout_nav.xml | 39 ++ .../layout-land/layout_nav_bottom_numbers.xml | 148 ------- android/res/layout-land/layout_nav_search.xml | 2 +- .../layout-land/map_navigation_buttons.xml | 2 +- android/res/layout/activity_map.xml | 1 - android/res/layout/bottom_sheet_handle.xml | 15 + android/res/layout/layout_nav.xml | 37 +- android/res/layout/layout_nav_bottom.xml | 102 ++--- .../res/layout/layout_nav_bottom_numbers.xml | 262 ++++++------ android/res/layout/menu.xml | 58 +-- android/res/layout/menu_buttons_line.xml | 31 +- android/res/layout/menu_news_marker.xml | 12 - android/res/values-land/dimens.xml | 2 - android/res/values-sw720dp-land/dimens.xml | 1 - android/res/values-sw720dp/dimens.xml | 3 - android/res/values/colors.xml | 2 - android/res/values/dimens.xml | 9 +- android/res/values/font_sizes.xml | 2 + android/res/values/styles-menu.xml | 11 - android/res/values/styles-text.xml | 31 +- android/res/values/styles.xml | 16 + android/res/values/themes-attrs.xml | 1 - android/res/values/themes-base.xml | 6 +- android/res/values/themes.xml | 8 - .../src/com/mapswithme/maps/MwmActivity.java | 222 ++++------ .../maps/routing/NavigationController.java | 235 +++------- .../mapswithme/maps/widget/menu/BaseMenu.java | 100 ----- .../mapswithme/maps/widget/menu/MainMenu.java | 255 ++--------- .../maps/widget/menu/MenuToggle.java | 85 ---- .../mapswithme/maps/widget/menu/NavMenu.java | 401 ++++++++---------- .../bottomsheet/MenuBottomSheetFragment.java | 4 +- 35 files changed, 698 insertions(+), 1440 deletions(-) delete mode 100644 android/res/drawable-v21/menu_button_right.xml create mode 100644 android/res/drawable/bottom_sheet_handle.xml delete mode 100644 android/res/drawable/ic_menu_close.xml delete mode 100644 android/res/drawable/menu_button_right.xml create mode 100644 android/res/layout-land/layout_nav.xml delete mode 100644 android/res/layout-land/layout_nav_bottom_numbers.xml create mode 100644 android/res/layout/bottom_sheet_handle.xml delete mode 100644 android/res/layout/menu_news_marker.xml delete mode 100644 android/src/com/mapswithme/maps/widget/menu/BaseMenu.java delete mode 100644 android/src/com/mapswithme/maps/widget/menu/MenuToggle.java diff --git a/android/res/drawable-v21/menu_button_right.xml b/android/res/drawable-v21/menu_button_right.xml deleted file mode 100644 index 200c32466f..0000000000 --- a/android/res/drawable-v21/menu_button_right.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/android/res/drawable/bottom_sheet_handle.xml b/android/res/drawable/bottom_sheet_handle.xml new file mode 100644 index 0000000000..4018125665 --- /dev/null +++ b/android/res/drawable/bottom_sheet_handle.xml @@ -0,0 +1,6 @@ + + + + + diff --git a/android/res/drawable/ic_menu_close.xml b/android/res/drawable/ic_menu_close.xml deleted file mode 100644 index 56f97bd469..0000000000 --- a/android/res/drawable/ic_menu_close.xml +++ /dev/null @@ -1,15 +0,0 @@ - - - - - diff --git a/android/res/drawable/menu_button_right.xml b/android/res/drawable/menu_button_right.xml deleted file mode 100644 index 7f6bd90201..0000000000 --- a/android/res/drawable/menu_button_right.xml +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/android/res/layout-land/layout_nav.xml b/android/res/layout-land/layout_nav.xml new file mode 100644 index 0000000000..7f1c6fbb89 --- /dev/null +++ b/android/res/layout-land/layout_nav.xml @@ -0,0 +1,39 @@ + + + + + + + + + + + + + + + + + diff --git a/android/res/layout-land/layout_nav_bottom_numbers.xml b/android/res/layout-land/layout_nav_bottom_numbers.xml deleted file mode 100644 index 4865cf5f39..0000000000 --- a/android/res/layout-land/layout_nav_bottom_numbers.xml +++ /dev/null @@ -1,148 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/android/res/layout-land/layout_nav_search.xml b/android/res/layout-land/layout_nav_search.xml index a5971a6efa..f42a08c569 100644 --- a/android/res/layout-land/layout_nav_search.xml +++ b/android/res/layout-land/layout_nav_search.xml @@ -6,7 +6,7 @@ android:layout_width="match_parent" android:layout_height="match_parent" android:theme="?navButtonsTheme" - android:layout_marginBottom="@dimen/nav_menu_height" + android:layout_marginBottom="@dimen/nav_numbers_height" android:padding="@dimen/nav_frame_padding" android:layoutDirection="ltr" tools:background="@color/bg_primary"> diff --git a/android/res/layout-land/map_navigation_buttons.xml b/android/res/layout-land/map_navigation_buttons.xml index 187b5bdaf4..f0d5ccdc10 100644 --- a/android/res/layout-land/map_navigation_buttons.xml +++ b/android/res/layout-land/map_navigation_buttons.xml @@ -4,7 +4,7 @@ xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" - android:layout_marginBottom="@dimen/nav_menu_height" + android:layout_marginBottom="@dimen/menu_line_height" android:layoutDirection="ltr" android:padding="@dimen/nav_frame_padding" android:theme="?navButtonsTheme"> diff --git a/android/res/layout/activity_map.xml b/android/res/layout/activity_map.xml index e4bf79969f..249bab0cde 100644 --- a/android/res/layout/activity_map.xml +++ b/android/res/layout/activity_map.xml @@ -55,7 +55,6 @@ android:visibility="invisible"/> + + + + + \ No newline at end of file diff --git a/android/res/layout/layout_nav.xml b/android/res/layout/layout_nav.xml index 0e79aad621..5b28d2ec59 100644 --- a/android/res/layout/layout_nav.xml +++ b/android/res/layout/layout_nav.xml @@ -1,13 +1,38 @@ - + android:layout_height="match_parent"> - + + + + + + + + + + + + - diff --git a/android/res/layout/layout_nav_bottom.xml b/android/res/layout/layout_nav_bottom.xml index fd93930ebe..2e08ad8aa7 100644 --- a/android/res/layout/layout_nav_bottom.xml +++ b/android/res/layout/layout_nav_bottom.xml @@ -1,105 +1,77 @@ - - - - - - - - + android:clickable="true" + android:focusable="true"> + + + + + + - - - - + android:src="@drawable/ic_voice_on" />