From 9e16fa318973ae7d820ec42ebecab22ff33b28aa Mon Sep 17 00:00:00 2001 From: Andrew Shkrob Date: Mon, 5 Aug 2024 21:32:10 +0200 Subject: [PATCH] [android-auto] Add 3d buildings option in settings Signed-off-by: Andrew Shkrob --- .../car/screens/settings/SettingsScreen.java | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/android/app/src/main/java/app/organicmaps/car/screens/settings/SettingsScreen.java b/android/app/src/main/java/app/organicmaps/car/screens/settings/SettingsScreen.java index f60089c4c8..3c493b2ac6 100644 --- a/android/app/src/main/java/app/organicmaps/car/screens/settings/SettingsScreen.java +++ b/android/app/src/main/java/app/organicmaps/car/screens/settings/SettingsScreen.java @@ -13,6 +13,7 @@ import androidx.car.app.model.Row; import androidx.car.app.model.Template; import androidx.car.app.navigation.model.MapWithContentTemplate; +import app.organicmaps.Framework; import app.organicmaps.R; import app.organicmaps.car.SurfaceRenderer; import app.organicmaps.car.screens.base.BaseMapScreen; @@ -63,6 +64,7 @@ public class SettingsScreen extends BaseMapScreen final ItemList.Builder builder = new ItemList.Builder(); builder.addItem(createThemeItem()); builder.addItem(createRoutingOptionsItem()); + builder.addItem(create3dBuildingsItem()); builder.addItem(createSharedPrefsToggle(R.string.big_font, Config::isLargeFontsSize, Config::setLargeFontsSize)); builder.addItem(createSharedPrefsToggle(R.string.transliteration_title, Config::isTransliteration, Config::setTransliteration)); builder.addItem(createHelpItem()); @@ -90,6 +92,19 @@ public class SettingsScreen extends BaseMapScreen return builder.build(); } + @NonNull + private Item create3dBuildingsItem() + { + final Framework.Params3dMode _3d = new Framework.Params3dMode(); + Framework.nativeGet3dMode(_3d); + + final OnClickListener listener = () -> { + Framework.nativeSet3dMode(_3d.enabled, !_3d.buildings); + invalidate(); + }; + return Toggle.create(getCarContext(), R.string.pref_map_3d_buildings_title, listener, _3d.buildings); + } + @NonNull private Item createHelpItem() {