Compare commits

..

9 Commits

Author SHA1 Message Date
Jean-Baptiste
186f7a091a [android] Add a new alert dialog when we remove the last list
Signed-off-by: Jean-Baptiste <jeanbaptiste.charron@outlook.fr>
2026-01-03 22:48:15 +01:00
Jean-Baptiste
07e42c0626 [android] Add comment about issues with Material library
Signed-off-by: Jean-Baptiste <jeanbaptiste.charron@outlook.fr>
2026-01-03 22:43:15 +01:00
Jean-Baptiste
14e45aa6db [android] Use Material 3 alert dialogs
Signed-off-by: Jean-Baptiste <jeanbaptiste.charron@outlook.fr>
2026-01-03 22:34:15 +01:00
Jean-Baptiste
8bd7f9d59a [android] Use M3 dark background in the app
Signed-off-by: Jean-Baptiste <jeanbaptiste.charron@outlook.fr>
2026-01-03 22:32:51 +01:00
Radek Olsak
ead092af79 [desktop] Added Void dependencies
Signed-off-by: Radek Olsak <radek@olsak.net>
2026-01-03 22:25:36 +01:00
Chris H. Meyer
c3f5986f12 [styles] render man_made=wastewater_plant like landuse=industrial
Signed-off-by: Chris H. Meyer <christian.h.meyer@t-online.de>
2026-01-03 22:24:11 +01:00
Jean-Baptiste
143e0562e6 [android] Remove stroke border on cardview in navigation view
Signed-off-by: Jean-Baptiste <jeanbaptiste.charron@outlook.fr>
2026-01-03 22:22:09 +01:00
Konstantin Pastbin
89cfc6f8e6 [search] Enable Lithuanian for search categories/synonyms
Signed-off-by: Konstantin Pastbin <konstantin.pastbin@gmail.com>
2026-01-03 21:13:45 +01:00
Jean-Baptiste
4788956720 [android] Simplify some views to improve performance
Signed-off-by: Jean-Baptiste <jeanbaptiste.charron@outlook.fr>
2026-01-03 20:50:11 +01:00
71 changed files with 208 additions and 210 deletions

View File

@@ -352,6 +352,7 @@ dependencies {
implementation libs.androidx.work.runtime implementation libs.androidx.work.runtime
implementation libs.androidx.lifecycle.process implementation libs.androidx.lifecycle.process
implementation libs.androidx.documentfile implementation libs.androidx.documentfile
// 1.13 Material library version doesn't render properly alpha properties on map buttons
implementation libs.android.material implementation libs.android.material
// Fix for app/organicmaps/util/FileUploadWorker.java:14: error: cannot access ListenableFuture // Fix for app/organicmaps/util/FileUploadWorker.java:14: error: cannot access ListenableFuture
// https://github.com/organicmaps/organicmaps/issues/6106 // https://github.com/organicmaps/organicmaps/issues/6106

View File

@@ -446,7 +446,7 @@ public class DownloadResourcesLegacyActivity extends BaseMwmFragmentActivity
default -> throw new AssertionError("Unexpected result code = " + result); default -> throw new AssertionError("Unexpected result code = " + result);
}; };
mAlertDialog = new MaterialAlertDialogBuilder(this, R.style.MwmTheme_AlertDialog) mAlertDialog = new MaterialAlertDialogBuilder(this)
.setTitle(titleId) .setTitle(titleId)
.setMessage(messageId) .setMessage(messageId)
.setCancelable(true) .setCancelable(true)

View File

@@ -432,7 +432,7 @@ public class MwmActivity extends BaseMwmFragmentActivity
} }
dismissLocationErrorDialog(); dismissLocationErrorDialog();
mLocationErrorDialog = new MaterialAlertDialogBuilder(MwmActivity.this, R.style.MwmTheme_AlertDialog) mLocationErrorDialog = new MaterialAlertDialogBuilder(MwmActivity.this)
.setMessage(R.string.unknown_current_position) .setMessage(R.string.unknown_current_position)
.setCancelable(true) .setCancelable(true)
.setPositiveButton(R.string.ok, null) .setPositiveButton(R.string.ok, null)
@@ -655,7 +655,7 @@ public class MwmActivity extends BaseMwmFragmentActivity
else else
{ {
dismissAlertDialog(); dismissAlertDialog();
mAlertDialog = new MaterialAlertDialogBuilder(this, R.style.MwmTheme_AlertDialog) mAlertDialog = new MaterialAlertDialogBuilder(this)
.setTitle(R.string.message_invalid_feature_position) .setTitle(R.string.message_invalid_feature_position)
.setPositiveButton(R.string.ok, null) .setPositiveButton(R.string.ok, null)
.setOnDismissListener(dialog -> mAlertDialog = null) .setOnDismissListener(dialog -> mAlertDialog = null)
@@ -1155,7 +1155,7 @@ public class MwmActivity extends BaseMwmFragmentActivity
if (type == IsolinesState.EXPIREDDATA) if (type == IsolinesState.EXPIREDDATA)
{ {
mAlertDialog = new MaterialAlertDialogBuilder(this, R.style.MwmTheme_AlertDialog) mAlertDialog = new MaterialAlertDialogBuilder(this)
.setTitle(R.string.downloader_update_maps) .setTitle(R.string.downloader_update_maps)
.setMessage(R.string.isolines_activation_error_dialog) .setMessage(R.string.isolines_activation_error_dialog)
.setPositiveButton( .setPositiveButton(
@@ -1774,7 +1774,7 @@ public class MwmActivity extends BaseMwmFragmentActivity
{ {
dismissAlertDialog(); dismissAlertDialog();
mAlertDialog = mAlertDialog =
new MaterialAlertDialogBuilder(this, R.style.MwmTheme_AlertDialog) new MaterialAlertDialogBuilder(this)
.setTitle(R.string.unable_to_calc_alert_title) .setTitle(R.string.unable_to_calc_alert_title)
.setMessage(R.string.unable_to_calc_alert_subtitle) .setMessage(R.string.unable_to_calc_alert_subtitle)
.setPositiveButton(R.string.settings, .setPositiveButton(R.string.settings,
@@ -1797,7 +1797,7 @@ public class MwmActivity extends BaseMwmFragmentActivity
builder.append(getString(resId)).append("\n\n"); builder.append(getString(resId)).append("\n\n");
dismissAlertDialog(); dismissAlertDialog();
mAlertDialog = new MaterialAlertDialogBuilder(this, R.style.MwmTheme_AlertDialog) mAlertDialog = new MaterialAlertDialogBuilder(this)
.setTitle(R.string.dialog_routing_disclaimer_title) .setTitle(R.string.dialog_routing_disclaimer_title)
.setMessage(builder.toString()) .setMessage(builder.toString())
.setCancelable(false) .setCancelable(false)
@@ -1846,7 +1846,7 @@ public class MwmActivity extends BaseMwmFragmentActivity
return true; return true;
final MapObject endPoint = Objects.requireNonNull(controller.getEndPoint()); final MapObject endPoint = Objects.requireNonNull(controller.getEndPoint());
final MaterialAlertDialogBuilder builder = new MaterialAlertDialogBuilder(this, R.style.MwmTheme_AlertDialog) final MaterialAlertDialogBuilder builder = new MaterialAlertDialogBuilder(this)
.setTitle(R.string.p2p_only_from_current) .setTitle(R.string.p2p_only_from_current)
.setMessage(R.string.p2p_reroute_from_current) .setMessage(R.string.p2p_reroute_from_current)
.setCancelable(false) .setCancelable(false)
@@ -2040,7 +2040,7 @@ public class MwmActivity extends BaseMwmFragmentActivity
{ {
mPreciseLocationDialogShown = true; mPreciseLocationDialogShown = true;
final MaterialAlertDialogBuilder builder = final MaterialAlertDialogBuilder builder =
new MaterialAlertDialogBuilder(this, R.style.MwmTheme_AlertDialog) new MaterialAlertDialogBuilder(this)
.setTitle("" + getString(R.string.limited_accuracy)) .setTitle("" + getString(R.string.limited_accuracy))
.setMessage(R.string.precise_location_is_disabled_long_text) .setMessage(R.string.precise_location_is_disabled_long_text)
.setNegativeButton(R.string.close, (dialog, which) -> dialog.dismiss()) .setNegativeButton(R.string.close, (dialog, which) -> dialog.dismiss())
@@ -2074,7 +2074,7 @@ public class MwmActivity extends BaseMwmFragmentActivity
return; return;
} }
mLocationErrorDialog = new MaterialAlertDialogBuilder(this, R.style.MwmTheme_AlertDialog) mLocationErrorDialog = new MaterialAlertDialogBuilder(this)
.setTitle(R.string.enable_location_services) .setTitle(R.string.enable_location_services)
.setMessage(R.string.location_is_disabled_long_text) .setMessage(R.string.location_is_disabled_long_text)
.setOnDismissListener(dialog -> mLocationErrorDialog = null) .setOnDismissListener(dialog -> mLocationErrorDialog = null)
@@ -2167,7 +2167,7 @@ public class MwmActivity extends BaseMwmFragmentActivity
return; return;
} }
final MaterialAlertDialogBuilder builder = new MaterialAlertDialogBuilder(this, R.style.MwmTheme_AlertDialog) final MaterialAlertDialogBuilder builder = new MaterialAlertDialogBuilder(this)
.setTitle(R.string.enable_location_services) .setTitle(R.string.enable_location_services)
.setMessage(R.string.location_is_disabled_long_text) .setMessage(R.string.location_is_disabled_long_text)
.setOnDismissListener(dialog -> mLocationErrorDialog = null) .setOnDismissListener(dialog -> mLocationErrorDialog = null)
@@ -2253,7 +2253,7 @@ public class MwmActivity extends BaseMwmFragmentActivity
dismissAlertDialog(); dismissAlertDialog();
final MaterialAlertDialogBuilder builder = final MaterialAlertDialogBuilder builder =
new MaterialAlertDialogBuilder(this, R.style.MwmTheme_AlertDialog) new MaterialAlertDialogBuilder(this)
.setTitle(R.string.current_location_unknown_error_title) .setTitle(R.string.current_location_unknown_error_title)
.setCancelable(true) .setCancelable(true)
.setMessage(R.string.power_save_dialog_summary) .setMessage(R.string.power_save_dialog_summary)
@@ -2278,7 +2278,7 @@ public class MwmActivity extends BaseMwmFragmentActivity
{ {
dismissAlertDialog(); dismissAlertDialog();
mAlertDialog = mAlertDialog =
new MaterialAlertDialogBuilder(this, R.style.MwmTheme_AlertDialog) new MaterialAlertDialogBuilder(this)
.setTitle(R.string.load_kmz_title) .setTitle(R.string.load_kmz_title)
.setMessage(getString(R.string.unknown_file_type, uri)) .setMessage(getString(R.string.unknown_file_type, uri))
.setPositiveButton(R.string.ok, null) .setPositiveButton(R.string.ok, null)
@@ -2295,7 +2295,7 @@ public class MwmActivity extends BaseMwmFragmentActivity
{ {
dismissAlertDialog(); dismissAlertDialog();
mAlertDialog = mAlertDialog =
new MaterialAlertDialogBuilder(this, R.style.MwmTheme_AlertDialog) new MaterialAlertDialogBuilder(this)
.setTitle(R.string.load_kmz_title) .setTitle(R.string.load_kmz_title)
.setMessage(getString(R.string.failed_to_open_file, uri, error)) .setMessage(getString(R.string.failed_to_open_file, uri, error))
.setPositiveButton(R.string.ok, null) .setPositiveButton(R.string.ok, null)
@@ -2317,7 +2317,7 @@ public class MwmActivity extends BaseMwmFragmentActivity
public void onBookmarksFileImportFailed() public void onBookmarksFileImportFailed()
{ {
dismissAlertDialog(); dismissAlertDialog();
mAlertDialog = new MaterialAlertDialogBuilder(this, R.style.MwmTheme_AlertDialog) mAlertDialog = new MaterialAlertDialogBuilder(this)
.setTitle(R.string.load_kmz_title) .setTitle(R.string.load_kmz_title)
.setMessage(R.string.load_kmz_failed) .setMessage(R.string.load_kmz_failed)
.setPositiveButton(R.string.ok, null) .setPositiveButton(R.string.ok, null)
@@ -2578,7 +2578,7 @@ public class MwmActivity extends BaseMwmFragmentActivity
private void reportUnsupported() private void reportUnsupported()
{ {
new MaterialAlertDialogBuilder(this, R.style.MwmTheme_AlertDialog) new MaterialAlertDialogBuilder(this)
.setMessage(R.string.unsupported_phone) .setMessage(R.string.unsupported_phone)
.setCancelable(false) .setCancelable(false)
.setPositiveButton(R.string.close, (dlg, which) -> this.moveTaskToBack(true)) .setPositiveButton(R.string.close, (dlg, which) -> this.moveTaskToBack(true))

View File

@@ -120,7 +120,7 @@ public class SplashActivity extends AppCompatActivity
private void showFatalErrorDialog(@StringRes int titleId, @StringRes int messageId, Exception error) private void showFatalErrorDialog(@StringRes int titleId, @StringRes int messageId, Exception error)
{ {
mCanceled = true; mCanceled = true;
new MaterialAlertDialogBuilder(this, R.style.MwmTheme_AlertDialog) new MaterialAlertDialogBuilder(this, R.style.MwmTheme_M3_AlertDialog)
.setTitle(titleId) .setTitle(titleId)
.setMessage(messageId) .setMessage(messageId)
.setPositiveButton( .setPositiveButton(

View File

@@ -197,10 +197,8 @@ public class BookmarkCategoriesFragment extends BaseMwmRecyclerFragment<Bookmark
() -> onShareActionSelected(mSelectedCategory, KmlFileType.Text))); () -> onShareActionSelected(mSelectedCategory, KmlFileType.Text)));
items.add(new MenuBottomSheetItem(R.string.export_file_gpx, R.drawable.ic_file_gpx, items.add(new MenuBottomSheetItem(R.string.export_file_gpx, R.drawable.ic_file_gpx,
() -> onShareActionSelected(mSelectedCategory, KmlFileType.Gpx))); () -> onShareActionSelected(mSelectedCategory, KmlFileType.Gpx)));
// Disallow deleting the last category items.add(new MenuBottomSheetItem(R.string.delete, R.drawable.ic_delete,
if (getAdapter().getBookmarkCategories().size() > 1) () -> onDeleteActionSelected(mSelectedCategory)));
items.add(new MenuBottomSheetItem(R.string.delete, R.drawable.ic_delete,
() -> onDeleteActionSelected(mSelectedCategory)));
} }
return items; return items;
} }
@@ -297,8 +295,24 @@ public class BookmarkCategoriesFragment extends BaseMwmRecyclerFragment<Bookmark
private void onDeleteActionSelected(@NonNull BookmarkCategory category) private void onDeleteActionSelected(@NonNull BookmarkCategory category)
{ {
BookmarkManager.INSTANCE.deleteCategory(category.getId()); // Disallow deleting the last category
getAdapter().notifyDataSetChanged(); if ((getAdapter().getBookmarkCategories().size() > 1))
{
BookmarkManager.INSTANCE.deleteCategory(category.getId());
getAdapter().notifyDataSetChanged();
}
else
{
new MaterialAlertDialogBuilder(requireActivity())
.setMessage(R.string.unable_to_delete_list)
.setPositiveButton(android.R.string.yes, ((dialog, which) -> {
onAddButtonClick();
BookmarkManager.INSTANCE.deleteCategory(category.getId());
getAdapter().notifyDataSetChanged();
}))
.setNegativeButton(android.R.string.no,(dialog, which) -> dialog.dismiss())
.show();
}
} }
private void onSettingsActionSelected(@NonNull BookmarkCategory category) private void onSettingsActionSelected(@NonNull BookmarkCategory category)

View File

@@ -60,14 +60,14 @@ public enum BookmarksSharingHelper
case BookmarkSharingResult.SUCCESS -> case BookmarkSharingResult.SUCCESS ->
SharingUtils.shareBookmarkFile(context, launcher, result.getSharingPath(), result.getMimeType()); SharingUtils.shareBookmarkFile(context, launcher, result.getSharingPath(), result.getMimeType());
case BookmarkSharingResult.EMPTY_CATEGORY -> case BookmarkSharingResult.EMPTY_CATEGORY ->
new MaterialAlertDialogBuilder(context, R.style.MwmTheme_AlertDialog) new MaterialAlertDialogBuilder(context)
.setTitle(R.string.bookmarks_error_title_share_empty) .setTitle(R.string.bookmarks_error_title_share_empty)
.setMessage(R.string.bookmarks_error_message_share_empty) .setMessage(R.string.bookmarks_error_message_share_empty)
.setPositiveButton(R.string.ok, null) .setPositiveButton(R.string.ok, null)
.show(); .show();
case BookmarkSharingResult.ARCHIVE_ERROR, BookmarkSharingResult.FILE_ERROR -> case BookmarkSharingResult.ARCHIVE_ERROR, BookmarkSharingResult.FILE_ERROR ->
{ {
new MaterialAlertDialogBuilder(context, R.style.MwmTheme_AlertDialog) new MaterialAlertDialogBuilder(context)
.setTitle(R.string.dialog_routing_system_error) .setTitle(R.string.dialog_routing_system_error)
.setMessage(R.string.bookmarks_error_message_share_general) .setMessage(R.string.bookmarks_error_message_share_general)
.setPositiveButton(R.string.ok, null) .setPositiveButton(R.string.ok, null)

View File

@@ -114,7 +114,6 @@ public final class CarAppSession extends Session implements DefaultLifecycleObse
public void onCreate(@NonNull LifecycleOwner owner) public void onCreate(@NonNull LifecycleOwner owner)
{ {
Logger.d(TAG); Logger.d(TAG);
Framework.nativeSetCarScreenMode(true);
mSensorsManager = new CarSensorsManager(getCarContext()); mSensorsManager = new CarSensorsManager(getCarContext());
mDisplayManager = MwmApplication.from(getCarContext()).getDisplayManager(); mDisplayManager = MwmApplication.from(getCarContext()).getDisplayManager();
mDisplayManager.addListener(DisplayType.Car, this); mDisplayManager.addListener(DisplayType.Car, this);
@@ -160,7 +159,6 @@ public final class CarAppSession extends Session implements DefaultLifecycleObse
public void onDestroy(@NonNull LifecycleOwner owner) public void onDestroy(@NonNull LifecycleOwner owner)
{ {
mDisplayManager.removeListener(DisplayType.Car); mDisplayManager.removeListener(DisplayType.Car);
Framework.nativeSetCarScreenMode(false);
} }
private void init() private void init()

View File

@@ -42,7 +42,7 @@ public final class CustomMapServerDialog
edit.setText(current); edit.setText(current);
MaterialAlertDialogBuilder builder = MaterialAlertDialogBuilder builder =
new MaterialAlertDialogBuilder(context, R.style.MwmTheme_AlertDialog) new MaterialAlertDialogBuilder(context)
.setTitle(R.string.download_resources_custom_url_title) .setTitle(R.string.download_resources_custom_url_title)
.setMessage(R.string.download_resources_custom_url_message) .setMessage(R.string.download_resources_custom_url_message)
.setView(dialogView) .setView(dialogView)

View File

@@ -113,7 +113,7 @@ public class EditTextDialogFragment extends BaseMwmDialogFragment
negativeButtonText = args.getString(ARG_NEGATIVE_BUTTON); negativeButtonText = args.getString(ARG_NEGATIVE_BUTTON);
} }
AlertDialog editTextDialog = new MaterialAlertDialogBuilder(requireActivity(), R.style.MwmTheme_AlertDialog) AlertDialog editTextDialog = new MaterialAlertDialogBuilder(requireActivity())
.setView(buildView()) .setView(buildView())
.setNegativeButton(negativeButtonText, null) .setNegativeButton(negativeButtonText, null)
.setPositiveButton(positiveButtonText, null) .setPositiveButton(positiveButtonText, null)

View File

@@ -119,7 +119,7 @@ class DownloaderAdapter extends RecyclerView.Adapter<DownloaderAdapter.ViewHolde
{ {
if (RoutingController.get().isNavigating()) if (RoutingController.get().isNavigating())
{ {
new MaterialAlertDialogBuilder(adapter.mActivity, R.style.MwmTheme_AlertDialog) new MaterialAlertDialogBuilder(adapter.mActivity)
.setTitle(R.string.downloader_delete_map) .setTitle(R.string.downloader_delete_map)
.setMessage(R.string.downloader_delete_map_while_routing_dialog) .setMessage(R.string.downloader_delete_map_while_routing_dialog)
.setPositiveButton(R.string.ok, null) .setPositiveButton(R.string.ok, null)
@@ -133,7 +133,7 @@ class DownloaderAdapter extends RecyclerView.Adapter<DownloaderAdapter.ViewHolde
return; return;
} }
new MaterialAlertDialogBuilder(adapter.mActivity, R.style.MwmTheme_AlertDialog) new MaterialAlertDialogBuilder(adapter.mActivity)
.setTitle(R.string.downloader_delete_map) .setTitle(R.string.downloader_delete_map)
.setMessage(R.string.downloader_delete_map_dialog) .setMessage(R.string.downloader_delete_map_dialog)
.setNegativeButton(R.string.cancel, null) .setNegativeButton(R.string.cancel, null)

View File

@@ -49,7 +49,7 @@ public class MapManagerHelper
return; return;
} }
final AlertDialog dlg = new MaterialAlertDialogBuilder(activity, R.style.MwmTheme_AlertDialog) final AlertDialog dlg = new MaterialAlertDialogBuilder(activity)
.setTitle(R.string.country_status_download_failed) .setTitle(R.string.country_status_download_failed)
.setMessage(getErrorCodeStrRes(errorData.errorCode)) .setMessage(getErrorCodeStrRes(errorData.errorCode))
.setNegativeButton(R.string.cancel, .setNegativeButton(R.string.cancel,
@@ -72,7 +72,7 @@ public class MapManagerHelper
private static void notifyNoSpaceInternal(Activity activity) private static void notifyNoSpaceInternal(Activity activity)
{ {
new MaterialAlertDialogBuilder(activity, R.style.MwmTheme_AlertDialog) new MaterialAlertDialogBuilder(activity)
.setTitle(R.string.downloader_no_space_title) .setTitle(R.string.downloader_no_space_title)
.setMessage(R.string.downloader_no_space_message) .setMessage(R.string.downloader_no_space_message)
.setPositiveButton(android.R.string.ok, null) .setPositiveButton(android.R.string.ok, null)
@@ -123,7 +123,7 @@ public class MapManagerHelper
return false; return false;
} }
new MaterialAlertDialogBuilder(activity, R.style.MwmTheme_AlertDialog) new MaterialAlertDialogBuilder(activity)
.setTitle(R.string.download_over_mobile_header) .setTitle(R.string.download_over_mobile_header)
.setMessage(R.string.download_over_mobile_message) .setMessage(R.string.download_over_mobile_message)
.setNegativeButton(R.string.cancel, null) .setNegativeButton(R.string.cancel, null)

View File

@@ -493,7 +493,7 @@ public class EditorFragment extends BaseMwmFragment implements View.OnClickListe
} }
}); });
return new MaterialAlertDialogBuilder(requireActivity(), R.style.MwmTheme_AlertDialog) return new MaterialAlertDialogBuilder(requireActivity())
.setTitle(R.string.editor_socket) .setTitle(R.string.editor_socket)
.setView(dialogView) .setView(dialogView)
.setPositiveButton(R.string.save, .setPositiveButton(R.string.save,
@@ -997,7 +997,7 @@ public class EditorFragment extends BaseMwmFragment implements View.OnClickListe
message = R.string.editor_reset_edits_message; message = R.string.editor_reset_edits_message;
} }
new MaterialAlertDialogBuilder(requireActivity(), R.style.MwmTheme_AlertDialog) new MaterialAlertDialogBuilder(requireActivity())
.setTitle(message) .setTitle(message)
.setPositiveButton(title, .setPositiveButton(title,
(dialog, which) -> { (dialog, which) -> {
@@ -1020,7 +1020,7 @@ public class EditorFragment extends BaseMwmFragment implements View.OnClickListe
private void placeDisused() private void placeDisused()
{ {
new MaterialAlertDialogBuilder(requireActivity(), R.style.MwmTheme_AlertDialog) new MaterialAlertDialogBuilder(requireActivity())
.setTitle(R.string.editor_mark_business_vacant_title) .setTitle(R.string.editor_mark_business_vacant_title)
.setMessage(R.string.editor_mark_business_vacant_description) .setMessage(R.string.editor_mark_business_vacant_description)
.setPositiveButton(R.string.editor_submit, (dlg, which) -> { .setPositiveButton(R.string.editor_submit, (dlg, which) -> {

View File

@@ -352,7 +352,7 @@ public class EditorHostFragment
private void processNoFeatures() private void processNoFeatures()
{ {
new MaterialAlertDialogBuilder(requireActivity(), R.style.MwmTheme_AlertDialog) new MaterialAlertDialogBuilder(requireActivity())
.setTitle(R.string.downloader_no_space_title) .setTitle(R.string.downloader_no_space_title)
.setPositiveButton(R.string.ok, null) .setPositiveButton(R.string.ok, null)
.show(); .show();
@@ -386,7 +386,7 @@ public class EditorHostFragment
private void showNoobDialog() private void showNoobDialog()
{ {
new MaterialAlertDialogBuilder(requireActivity(), R.style.MwmTheme_AlertDialog) new MaterialAlertDialogBuilder(requireActivity())
.setTitle(R.string.editor_share_to_all_dialog_title) .setTitle(R.string.editor_share_to_all_dialog_title)
.setMessage(getString(R.string.editor_share_to_all_dialog_message_1) + " " .setMessage(getString(R.string.editor_share_to_all_dialog_message_1) + " "
+ getString(R.string.editor_share_to_all_dialog_message_2)) + getString(R.string.editor_share_to_all_dialog_message_2))

View File

@@ -155,7 +155,7 @@ public class FeatureCategoryFragment
// Duplicate of showNoobDialog() // Duplicate of showNoobDialog()
private void showNoteConfirmationDialog(double lat, double lon, String noteText) private void showNoteConfirmationDialog(double lat, double lon, String noteText)
{ {
new MaterialAlertDialogBuilder(requireActivity(), R.style.MwmTheme_AlertDialog) new MaterialAlertDialogBuilder(requireActivity())
.setTitle(R.string.editor_share_to_all_dialog_title) .setTitle(R.string.editor_share_to_all_dialog_title)
.setMessage(getString(R.string.editor_share_to_all_dialog_message_1) + " " .setMessage(getString(R.string.editor_share_to_all_dialog_message_1) + " "
+ getString(R.string.editor_share_to_all_dialog_message_2)) + getString(R.string.editor_share_to_all_dialog_message_2))

View File

@@ -79,7 +79,7 @@ public class OsmLoginFragment extends BaseMwmToolbarFragment
private void onAuthFail() private void onAuthFail()
{ {
new MaterialAlertDialogBuilder(requireActivity(), R.style.MwmTheme_AlertDialog) new MaterialAlertDialogBuilder(requireActivity())
.setTitle(R.string.editor_login_error_dialog) .setTitle(R.string.editor_login_error_dialog)
.setPositiveButton(R.string.ok, null) .setPositiveButton(R.string.ok, null)
.show(); .show();

View File

@@ -66,7 +66,7 @@ public class FaqFragment extends BaseMwmFragment
FloatingActionButton feedbackFab = root.findViewById(R.id.feedback_fab); FloatingActionButton feedbackFab = root.findViewById(R.id.feedback_fab);
feedbackFab.setOnClickListener( feedbackFab.setOnClickListener(
v v
-> new MaterialAlertDialogBuilder(requireActivity(), R.style.MwmTheme_AlertDialog) -> new MaterialAlertDialogBuilder(requireActivity())
.setTitle(R.string.feedback) .setTitle(R.string.feedback)
.setNegativeButton(R.string.cancel, null) .setNegativeButton(R.string.cancel, null)
.setItems(new CharSequence[] {getString(R.string.feedback_general), getString(R.string.report_a_bug)}, .setItems(new CharSequence[] {getString(R.string.feedback_general), getString(R.string.report_a_bug)},

View File

@@ -107,7 +107,7 @@ public class TrafficButtonController implements TrafficManager.TrafficCallback
if (mDialog != null && mDialog.isShowing()) if (mDialog != null && mDialog.isShowing())
return; return;
mDialog = new MaterialAlertDialogBuilder(mActivity, R.style.MwmTheme_AlertDialog) mDialog = new MaterialAlertDialogBuilder(mActivity)
.setMessage(R.string.common_check_internet_connection_dialog) .setMessage(R.string.common_check_internet_connection_dialog)
.setPositiveButton(R.string.ok, (dialog, which) -> TrafficManager.INSTANCE.setEnabled(false)) .setPositiveButton(R.string.ok, (dialog, which) -> TrafficManager.INSTANCE.setEnabled(false))
.setCancelable(true) .setCancelable(true)

View File

@@ -56,7 +56,7 @@ abstract class BaseRoutingErrorDialogFragment extends BaseMwmDialogFragment
public Dialog onCreateDialog(Bundle savedInstanceState) public Dialog onCreateDialog(Bundle savedInstanceState)
{ {
parseArguments(); parseArguments();
MaterialAlertDialogBuilder builder = new MaterialAlertDialogBuilder(requireActivity(), R.style.MwmTheme_AlertDialog) MaterialAlertDialogBuilder builder = new MaterialAlertDialogBuilder(requireActivity())
.setCancelable(true) .setCancelable(true)
.setNegativeButton(android.R.string.cancel, null); .setNegativeButton(android.R.string.cancel, null);
beforeDialogCreated(builder); beforeDialogCreated(builder);

View File

@@ -494,7 +494,7 @@ public class SettingsPrefsFragment extends BaseXmlSettingsFragment implements La
pref.setOnPreferenceClickListener(preference -> { pref.setOnPreferenceClickListener(preference -> {
if (MapManager.nativeIsDownloading()) if (MapManager.nativeIsDownloading())
{ {
new MaterialAlertDialogBuilder(requireActivity(), R.style.MwmTheme_AlertDialog) new MaterialAlertDialogBuilder(requireActivity())
.setTitle(R.string.downloading_is_active) .setTitle(R.string.downloading_is_active)
.setMessage(R.string.cant_change_this_setting) .setMessage(R.string.cant_change_this_setting)
.setPositiveButton(R.string.ok, null) .setPositiveButton(R.string.ok, null)

View File

@@ -97,7 +97,7 @@ public class StoragePathFragment extends BaseSettingsFragment
final String oldPath = storages.get(currentIndex).mPath; final String oldPath = storages.get(currentIndex).mPath;
final String newPath = storages.get(newIndex).mPath; final String newPath = storages.get(newIndex).mPath;
new MaterialAlertDialogBuilder(requireActivity(), R.style.MwmTheme_AlertDialog) new MaterialAlertDialogBuilder(requireActivity())
.setCancelable(false) .setCancelable(false)
.setTitle(R.string.move_maps) .setTitle(R.string.move_maps)
.setPositiveButton(R.string.ok, (dlg, which) -> moveStorage(newPath, oldPath)) .setPositiveButton(R.string.ok, (dlg, which) -> moveStorage(newPath, oldPath))
@@ -133,7 +133,7 @@ public class StoragePathFragment extends BaseSettingsFragment
if (!result) if (!result)
{ {
new MaterialAlertDialogBuilder(requireActivity(), R.style.MwmTheme_AlertDialog) new MaterialAlertDialogBuilder(requireActivity())
.setTitle(R.string.move_maps_error) .setTitle(R.string.move_maps_error)
.setPositiveButton( .setPositiveButton(
R.string.report_a_bug, R.string.report_a_bug,

View File

@@ -47,7 +47,7 @@ public class BookmarkColorDialogFragment extends BaseMwmDialogFragment
mIconResId = getArguments().getInt(ICON_RES); mIconResId = getArguments().getInt(ICON_RES);
} }
return new MaterialAlertDialogBuilder(requireActivity(), R.style.MwmTheme_AlertDialog) return new MaterialAlertDialogBuilder(requireActivity())
.setView(buildView()) .setView(buildView())
.setTitle(R.string.choose_color) .setTitle(R.string.choose_color)
.setNegativeButton(R.string.cancel, null) .setNegativeButton(R.string.cancel, null)

View File

@@ -464,7 +464,7 @@ public class PlacePageController
mAlertDialog.show(); mAlertDialog.show();
return; return;
} }
mAlertDialog = new MaterialAlertDialogBuilder(requireContext(), R.style.MwmTheme_AlertDialog) mAlertDialog = new MaterialAlertDialogBuilder(requireContext())
.setTitle(requireContext().getString(R.string.delete_track_dialog_title, mMapObject.getTitle())) .setTitle(requireContext().getString(R.string.delete_track_dialog_title, mMapObject.getTitle()))
.setCancelable(true) .setCancelable(true)
.setNegativeButton(R.string.cancel, null) .setNegativeButton(R.string.cancel, null)

View File

@@ -4,7 +4,7 @@
android:color="?colorControlHighlight"> android:color="?colorControlHighlight">
<item> <item>
<shape> <shape>
<solid android:color="?cardBackground" /> <solid android:color="?appBackground" />
</shape> </shape>
</item> </item>
<item android:id="@android:id/mask"> <item android:id="@android:id/mask">

View File

@@ -1,12 +1,18 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<LinearLayout <com.google.android.material.card.MaterialCardView
xmlns:android="http://schemas.android.com/apk/res/android" xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools" xmlns:tools="http://schemas.android.com/tools"
android:orientation="vertical" style="@style/Widget.Material3.CardView.Filled"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
android:paddingBottom="@dimen/margin_half" android:paddingBottom="@dimen/margin_half"
android:background="?cardBackground"> app:cardBackgroundColor="?attr/colorSurfaceContainerHigh"
app:cardCornerRadius="28dp">
<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout <LinearLayout
android:orientation="vertical" android:orientation="vertical"
@@ -49,3 +55,4 @@
tools:text="Do not Use Today"/> tools:text="Do not Use Today"/>
</LinearLayout> </LinearLayout>
</LinearLayout> </LinearLayout>
</com.google.android.material.card.MaterialCardView>

View File

@@ -22,12 +22,9 @@
android:layout_height="match_parent" android:layout_height="match_parent"
android:clipChildren="false" android:clipChildren="false"
android:clipToPadding="false" android:clipToPadding="false"
android:orientation="vertical" android:baselineAligned="false"
android:orientation="horizontal"
tools:ignore="ScrollViewSize"> tools:ignore="ScrollViewSize">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal">
<LinearLayout <LinearLayout
android:layout_width="0dp" android:layout_width="0dp"
android:layout_height="match_parent" android:layout_height="match_parent"
@@ -111,6 +108,5 @@
android:text="@string/register_at_openstreetmap" /> android:text="@string/register_at_openstreetmap" />
</LinearLayout> </LinearLayout>
</LinearLayout> </LinearLayout>
</LinearLayout>
</ScrollView> </ScrollView>
</LinearLayout> </LinearLayout>

View File

@@ -17,6 +17,7 @@
android:id="@+id/street_frame" android:id="@+id/street_frame"
android:layout_width="500dp" android:layout_width="500dp"
android:layout_height="wrap_content" android:layout_height="wrap_content"
style="@style/Widget.Material3.CardView.Filled"
android:layout_marginEnd="@dimen/margin_quarter" android:layout_marginEnd="@dimen/margin_quarter"
app:cardCornerRadius="@dimen/margin_half" app:cardCornerRadius="@dimen/margin_half"
android:elevation="@dimen/nav_elevation" android:elevation="@dimen/nav_elevation"

View File

@@ -11,8 +11,7 @@
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:orientation="horizontal" android:orientation="horizontal"
android:backgroundTint="?menuBackground" android:background="?menuBackground"
android:background="@drawable/onmap_downloader_background"
android:padding="@dimen/margin_base" android:padding="@dimen/margin_base"
android:clipToPadding="false" android:clipToPadding="false"
android:clipChildren="false" android:clipChildren="false"

View File

@@ -1,13 +1,18 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<LinearLayout <com.google.android.material.card.MaterialCardView
xmlns:android="http://schemas.android.com/apk/res/android" xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:app="http://schemas.android.com/apk/res-auto"
style="@style/Widget.Material3.CardView.Filled"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_margin="@dimen/margin_double_and_half" android:layout_margin="@dimen/margin_double_and_half"
android:background="?cardBackground"
android:minWidth="@dimen/dialog_min_width" android:minWidth="@dimen/dialog_min_width"
android:minHeight="@dimen/dialog_min_height" android:minHeight="@dimen/dialog_min_height"
app:cardBackgroundColor="?attr/colorSurfaceContainerHigh"
app:cardCornerRadius="28dp">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical" android:orientation="vertical"
android:padding="@dimen/margin_base_plus"> android:padding="@dimen/margin_base_plus">
@@ -77,3 +82,4 @@
app:buttonTint="@null"/> app:buttonTint="@null"/>
</RadioGroup> </RadioGroup>
</LinearLayout> </LinearLayout>
</com.google.android.material.card.MaterialCardView>

View File

@@ -1,12 +1,18 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<LinearLayout <com.google.android.material.card.MaterialCardView
xmlns:android="http://schemas.android.com/apk/res/android" xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools" xmlns:tools="http://schemas.android.com/tools"
android:orientation="vertical" style="@style/Widget.Material3.CardView.Filled"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
android:paddingBottom="@dimen/margin_half" android:paddingBottom="@dimen/margin_half"
android:background="?cardBackground"> app:cardBackgroundColor="?attr/colorSurfaceContainerHigh"
app:cardCornerRadius="28dp">
<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout <LinearLayout
android:orientation="vertical" android:orientation="vertical"
@@ -41,3 +47,4 @@
style="@style/MwmWidget.Button.StackedButtonsDialog" style="@style/MwmWidget.Button.StackedButtonsDialog"
tools:text="Do not Use Today"/> tools:text="Do not Use Today"/>
</LinearLayout> </LinearLayout>
</com.google.android.material.card.MaterialCardView>

View File

@@ -13,7 +13,6 @@
android:paddingTop="@dimen/margin_half" android:paddingTop="@dimen/margin_half"
android:paddingBottom="@dimen/margin_half" android:paddingBottom="@dimen/margin_half"
android:layout_marginEnd="@dimen/margin_base" android:layout_marginEnd="@dimen/margin_base"
android:background="?cardBackground"
android:textAppearance="@style/MwmTextAppearance.Caption" android:textAppearance="@style/MwmTextAppearance.Caption"
tools:text="Downloaded" tools:text="Downloaded"
tools:background="#80FF0000"/> tools:background="#80FF0000"/>

View File

@@ -6,7 +6,7 @@
android:id="@+id/rl__bookmark_details" android:id="@+id/rl__bookmark_details"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
android:background="?cardBackground" android:background="?appBackground"
android:padding="@dimen/margin_half"> android:padding="@dimen/margin_half">
<LinearLayout <LinearLayout
android:id="@+id/ll__bookmark_name" android:id="@+id/ll__bookmark_name"

View File

@@ -3,7 +3,7 @@
xmlns:android="http://schemas.android.com/apk/res/android" xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:app="http://schemas.android.com/apk/res-auto"
android:orientation="vertical" android:orientation="vertical"
android:background="?cardBackground" android:background="?appBackground"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent"> android:layout_height="match_parent">
<com.google.android.material.appbar.MaterialToolbar <com.google.android.material.appbar.MaterialToolbar
@@ -69,7 +69,6 @@
android:inputType="textMultiLine"/> android:inputType="textMultiLine"/>
</com.google.android.material.textfield.TextInputLayout> </com.google.android.material.textfield.TextInputLayout>
<View <View
android:background="?cardBackground"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent"/> android:layout_height="match_parent"/>
</LinearLayout> </LinearLayout>

View File

@@ -11,5 +11,6 @@
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
android:scrollbars="vertical" android:scrollbars="vertical"
android:fadeScrollbars="false" /> android:fadeScrollbars="false"
android:background="?appBackground"/>
</LinearLayout> </LinearLayout>

View File

@@ -4,7 +4,7 @@
xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools" xmlns:tools="http://schemas.android.com/tools"
style="@style/MwmWidget.Floating" style="@style/MwmWidget.Floating"
android:background="?cardBackground" android:background="?appBackground"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent"> android:layout_height="match_parent">
<include layout="@layout/toolbar_with_search"/> <include layout="@layout/toolbar_with_search"/>
@@ -17,10 +17,12 @@
style="@style/MwmWidget.Button.Primary" style="@style/MwmWidget.Button.Primary"
tools:text="@string/downloader_update_all_button"/> tools:text="@string/downloader_update_all_button"/>
<include <androidx.recyclerview.widget.RecyclerView
layout="@layout/recycler_default" android:id="@+id/recycler"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
android:background="?appBackground"
android:scrollbars="vertical"
android:layout_below="@id/toolbar" android:layout_below="@id/toolbar"
android:layout_above="@id/action"/> android:layout_above="@id/action"/>

View File

@@ -4,7 +4,7 @@
xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
android:background="?cardBackground"> android:background="?appBackground">
<com.google.android.material.appbar.MaterialToolbar <com.google.android.material.appbar.MaterialToolbar
android:id="@+id/toolbar" android:id="@+id/toolbar"
style="@style/MwmWidget.ToolbarStyle" style="@style/MwmWidget.ToolbarStyle"

View File

@@ -5,6 +5,7 @@
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:app="http://schemas.android.com/apk/res-auto"
android:background="?windowBackgroundForced"
android:orientation="vertical"> android:orientation="vertical">
<com.google.android.material.appbar.MaterialToolbar <com.google.android.material.appbar.MaterialToolbar

View File

@@ -10,7 +10,7 @@
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
android:id="@+id/frameLayout" android:id="@+id/frameLayout"
android:background="?cardBackground"> android:background="?windowBackgroundForced">
<androidx.recyclerview.widget.RecyclerView <androidx.recyclerview.widget.RecyclerView
android:id="@+id/phones_recycler" android:id="@+id/phones_recycler"

View File

@@ -61,12 +61,12 @@
android:layout_height="match_parent" android:layout_height="match_parent"
android:clickable="true" android:clickable="true"
android:focusable="true" android:focusable="true"
android:background="?cardBackground"> android:background="?appBackground">
<androidx.recyclerview.widget.RecyclerView <androidx.recyclerview.widget.RecyclerView
android:id="@+id/recycler" android:id="@+id/recycler"
android:clipToPadding="false" android:clipToPadding="false"
android:background="?cardBackground" android:background="?appBackground"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
/> />

View File

@@ -4,6 +4,10 @@
style="@style/MwmWidget.FrameLayout" style="@style/MwmWidget.FrameLayout"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent"> android:layout_height="match_parent">
<include <androidx.recyclerview.widget.RecyclerView
layout="@layout/recycler_default"/> android:id="@+id/recycler"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="?appBackground"
android:scrollbars="vertical"/>
</FrameLayout> </FrameLayout>

View File

@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<ScrollView <ScrollView
xmlns:android="http://schemas.android.com/apk/res/android" xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:card_view="http://schemas.android.com/apk/res-auto" xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools" xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
@@ -13,36 +13,12 @@
android:orientation="vertical" android:orientation="vertical"
android:padding="@dimen/margin_half"> android:padding="@dimen/margin_half">
<com.google.android.material.card.MaterialCardView
android:layout_width="match_parent"
android:layout_height="wrap_content"
style="@style/MwmWidget.M3.Editor.CardView"
card_view:cardBackgroundColor="?cardBackground"
card_view:cardCornerRadius="2dp"
card_view:cardElevation="4dp">
<com.google.android.material.textfield.TextInputEditText
android:id="@+id/et__timetable"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:background="@null"
android:gravity="top|start"
android:inputType="textMultiLine"
android:padding="@dimen/margin_base"
android:textAppearance="@style/MwmTextAppearance.Body3"
tools:hint="hint"
tools:text="trololo \ntrololo \ntrololo"/>
</com.google.android.material.card.MaterialCardView>
<com.google.android.material.card.MaterialCardView <com.google.android.material.card.MaterialCardView
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginTop="@dimen/margin_half" android:layout_marginTop="@dimen/margin_half"
card_view:cardBackgroundColor="?cardBackground" style="@style/MwmWidget.M3.Editor.CardView"
card_view:cardCornerRadius="2dp" app:cardBackgroundColor="?cardBackground">
card_view:cardElevation="4dp">
<LinearLayout <LinearLayout
android:id="@+id/examples" android:id="@+id/examples"
@@ -50,6 +26,26 @@
android:layout_height="match_parent" android:layout_height="match_parent"
android:orientation="vertical" android:orientation="vertical"
android:animateLayoutChanges="true"> android:animateLayoutChanges="true">
<com.google.android.material.textfield.TextInputLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="@dimen/margin_half"
android:layout_marginBottom="@dimen/margin_half"
app:hintEnabled="false">
<com.google.android.material.textfield.TextInputEditText
android:id="@+id/et__timetable"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:background="@null"
android:gravity="top|start"
android:inputType="textMultiLine"
android:padding="@dimen/margin_base"
android:textAppearance="@style/MwmTextAppearance.Body3"
tools:hint="hint"
tools:text="trololo \ntrololo \ntrololo"/>
</com.google.android.material.textfield.TextInputLayout>
<com.google.android.material.textview.MaterialTextView <com.google.android.material.textview.MaterialTextView
android:id="@+id/tv__examples_title" android:id="@+id/tv__examples_title"

View File

@@ -3,7 +3,7 @@
xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:background="?cardBackground" android:background="?appBackground"
android:padding="@dimen/margin_base"> android:padding="@dimen/margin_base">
<LinearLayout <LinearLayout

View File

@@ -5,7 +5,7 @@
style="@style/MwmTextAppearance.Headline6" style="@style/MwmTextAppearance.Headline6"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:background="?windowBackgroundForced" android:background="?appBackground"
android:gravity="start|center_vertical" android:gravity="start|center_vertical"
android:paddingStart="@dimen/margin_base" android:paddingStart="@dimen/margin_base"
android:paddingTop="@dimen/margin_base_plus" android:paddingTop="@dimen/margin_base_plus"

View File

@@ -6,7 +6,7 @@
xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_gravity="center" android:layout_gravity="center"
android:orientation="vertical" android:orientation="vertical"
android:background="?cardBackground" android:background="?appBackground"
android:padding="@dimen/margin_base"> android:padding="@dimen/margin_base">
<com.google.android.material.textview.MaterialTextView <com.google.android.material.textview.MaterialTextView
android:layout_width="match_parent" android:layout_width="match_parent"

View File

@@ -7,7 +7,7 @@
xmlns:tools="http://schemas.android.com/tools" xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:background="?cardBackground" android:background="?colorSurfaceContainerHigh"
android:minHeight="@dimen/height_item_oneline" android:minHeight="@dimen/height_item_oneline"
android:paddingStart="@dimen/margin_base_plus" android:paddingStart="@dimen/margin_base_plus"
android:paddingEnd="@dimen/margin_base_plus"> android:paddingEnd="@dimen/margin_base_plus">

View File

@@ -7,7 +7,7 @@
xmlns:tools="http://schemas.android.com/tools" xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:background="?cardBackground" android:background="?colorSurfaceContainerHigh"
android:minHeight="@dimen/height_item_oneline" android:minHeight="@dimen/height_item_oneline"
android:paddingStart="@dimen/margin_base_plus" android:paddingStart="@dimen/margin_base_plus"
android:paddingEnd="@dimen/margin_base_plus"> android:paddingEnd="@dimen/margin_base_plus">

View File

@@ -17,6 +17,7 @@
android:id="@+id/street_frame" android:id="@+id/street_frame"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
style="@style/Widget.Material3.CardView.Filled"
android:layout_marginStart="@dimen/nav_street_left" android:layout_marginStart="@dimen/nav_street_left"
android:layout_marginEnd="@dimen/margin_quarter" android:layout_marginEnd="@dimen/margin_quarter"
app:cardCornerRadius="@dimen/margin_half" app:cardCornerRadius="@dimen/margin_half"

View File

@@ -4,7 +4,7 @@
android:id="@+id/menu_frame" android:id="@+id/menu_frame"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:background="?cardBackground" android:background="?appBackground"
android:clickable="true" android:clickable="true"
android:visibility="gone" android:visibility="gone"
tools:visibility="visible"> tools:visibility="visible">

View File

@@ -2,7 +2,7 @@
<LinearLayout <LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android" xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal" android:orientation="horizontal"
android:background="?cardBackground" android:background="?appBackground"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content"> android:layout_height="wrap_content">

View File

@@ -29,7 +29,7 @@
<com.google.android.material.textview.MaterialTextView <com.google.android.material.textview.MaterialTextView
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:background="?cardBackground" android:background="?appBackground"
android:padding="@dimen/margin_base" android:padding="@dimen/margin_base"
android:text="@string/editor_focus_map_on_location" android:text="@string/editor_focus_map_on_location"
app:layout_constraintTop_toBottomOf="@+id/toolbar_point_chooser" /> app:layout_constraintTop_toBottomOf="@+id/toolbar_point_chooser" />

View File

@@ -6,7 +6,7 @@
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:minHeight="@dimen/height_block_base" android:minHeight="@dimen/height_block_base"
android:background="?cardBackground" android:background="?appBackground"
android:baselineAligned="false"> android:baselineAligned="false">
<LinearLayout <LinearLayout
android:id="@+id/btn__search_point" android:id="@+id/btn__search_point"

View File

@@ -146,16 +146,13 @@
android:foreground="@drawable/shadow_top" android:foreground="@drawable/shadow_top"
android:visibility="gone" android:visibility="gone"
tools:visibility="visible"> tools:visibility="visible">
<RelativeLayout <LinearLayout
android:id="@+id/driving_options_btn" android:id="@+id/driving_options_btn"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:background="?selectableItemBackgroundBorderless" android:background="?selectableItemBackgroundBorderless"
android:gravity="center" android:gravity="center"
android:minHeight="@dimen/height_block_base"> android:minHeight="@dimen/height_block_base">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<com.google.android.material.imageview.ShapeableImageView <com.google.android.material.imageview.ShapeableImageView
android:id="@+id/driving_options_btn_img" android:id="@+id/driving_options_btn_img"
android:layout_width="@dimen/margin_base_plus" android:layout_width="@dimen/margin_base_plus"
@@ -174,8 +171,7 @@
android:textAppearance="?android:attr/textAppearanceSmall" android:textAppearance="?android:attr/textAppearanceSmall"
android:textColor="@color/text_light" android:textColor="@color/text_light"
tools:text="test" /> tools:text="test" />
</LinearLayout> </LinearLayout>
</RelativeLayout>
</FrameLayout> </FrameLayout>
<FrameLayout <FrameLayout
style="@style/MwmWidget.FrameLayout.Elevation" style="@style/MwmWidget.FrameLayout.Elevation"

View File

@@ -11,7 +11,7 @@
<item name="android:textColorPrimary">@color/text_light</item> <item name="android:textColorPrimary">@color/text_light</item>
<item name="android:textColorPrimaryInverse">@color/text_dark</item> <item name="android:textColorPrimaryInverse">@color/text_dark</item>
<item name="android:textColorSecondary">@color/text_light_subtitle</item> <item name="android:textColorSecondary">@color/text_light_subtitle</item>
<item name="android:windowBackground">?windowBackgroundForced</item> <item name="android:windowBackground">?appBackground</item>
<item name="android:colorPrimaryDark">@color/bg_primary_dark</item> <item name="android:colorPrimaryDark">@color/bg_primary_dark</item>
<item name="android:windowSoftInputMode">stateUnspecified|adjustPan</item> <item name="android:windowSoftInputMode">stateUnspecified|adjustPan</item>
<item name="android:fontFamily">@string/robotoRegular</item> <item name="android:fontFamily">@string/robotoRegular</item>
@@ -21,7 +21,7 @@
<item name="android:statusBarColor">?colorPrimary</item> <item name="android:statusBarColor">?colorPrimary</item>
<item name="android:windowTranslucentNavigation">false</item> <item name="android:windowTranslucentNavigation">false</item>
<item name="alertDialogTheme">@style/MwmTheme.AlertDialog</item> <item name="alertDialogTheme">@style/MwmTheme.M3.AlertDialog</item>
<item name="windowBackgroundForced">@color/bg_window</item> <item name="windowBackgroundForced">@color/bg_window</item>
<item name="cardBackground">@color/bg_cards</item> <item name="cardBackground">@color/bg_cards</item>
<item name="titleDialogTheme">@color/white_primary</item> <item name="titleDialogTheme">@color/white_primary</item>

View File

@@ -973,4 +973,5 @@
<string name="download_resources_custom_url_message">Override the default map download server used for map downloads. Leave empty to use CoMaps default server.</string> <string name="download_resources_custom_url_message">Override the default map download server used for map downloads. Leave empty to use CoMaps default server.</string>
<string name="download_resources_custom_url_summary_none">Not set</string> <string name="download_resources_custom_url_summary_none">Not set</string>
<string name="download_resources_custom_url_error_scheme">Please enter a URL starting with http:// or https://</string> <string name="download_resources_custom_url_error_scheme">Please enter a URL starting with http:// or https://</string>
<string name="unable_to_delete_list">The app cannot work without at least one list. Do you want to remove it and create a new one?</string>
</resources> </resources>

View File

@@ -12,7 +12,7 @@
<item name="android:textColorPrimary">@color/text_dark</item> <item name="android:textColorPrimary">@color/text_dark</item>
<item name="android:textColorPrimaryInverse">@color/text_light</item> <item name="android:textColorPrimaryInverse">@color/text_light</item>
<item name="android:textColorSecondary">@color/text_dark_subtitle</item> <item name="android:textColorSecondary">@color/text_dark_subtitle</item>
<item name="android:windowBackground">?windowBackgroundForced</item> <item name="android:windowBackground">?appBackground</item>
<item name="android:colorPrimaryDark">@color/bg_primary_dark</item> <item name="android:colorPrimaryDark">@color/bg_primary_dark</item>
<item name="android:windowSoftInputMode">stateUnspecified|adjustPan</item> <item name="android:windowSoftInputMode">stateUnspecified|adjustPan</item>
<item name="android:fontFamily">@string/robotoRegular</item> <item name="android:fontFamily">@string/robotoRegular</item>
@@ -20,7 +20,7 @@
<item name="android:windowActionBarOverlay">true</item> <item name="android:windowActionBarOverlay">true</item>
<item name="clickableBackground">?selectableItemBackground</item> <item name="clickableBackground">?selectableItemBackground</item>
<item name="android:statusBarColor">?colorPrimary</item> <item name="android:statusBarColor">?colorPrimary</item>
<item name="alertDialogTheme">@style/MwmTheme.AlertDialog</item> <item name="alertDialogTheme">@style/MwmTheme.M3.AlertDialog</item>
<item name="windowBackgroundForced">@color/bg_window</item> <item name="windowBackgroundForced">@color/bg_window</item>
<item name="cardBackground">@color/bg_cards</item> <item name="cardBackground">@color/bg_cards</item>
<item name="titleDialogTheme">@color/black_primary</item> <item name="titleDialogTheme">@color/black_primary</item>
@@ -185,11 +185,11 @@
</style> </style>
<style name="MwmTheme.CardBg"> <style name="MwmTheme.CardBg">
<item name="android:windowBackground">@color/bg_cards</item> <item name="android:windowBackground">?appBackground</item>
</style> </style>
<style name="MwmTheme.WindowBg"> <style name="MwmTheme.WindowBg">
<item name="android:windowBackground">@color/bg_window</item> <item name="android:windowBackground">?appBackground</item>
</style> </style>
<style name="MwmTheme.AlertDialog" parent="Theme.Material3.DayNight.Dialog.Alert"> <style name="MwmTheme.AlertDialog" parent="Theme.Material3.DayNight.Dialog.Alert">
@@ -243,7 +243,7 @@
<style name="MwmTheme.FullScreenDialog"> <style name="MwmTheme.FullScreenDialog">
<item name="android:windowIsFloating">false</item> <item name="android:windowIsFloating">false</item>
<item name="android:windowBackground">@android:color/white</item> <item name="android:windowBackground">?appBackground</item>
</style> </style>
<style name="MwmTheme.MaterialTimePicker" parent="ThemeOverlay.MaterialComponents.TimePicker"> <style name="MwmTheme.MaterialTimePicker" parent="ThemeOverlay.MaterialComponents.TimePicker">
@@ -281,4 +281,11 @@
<style name="PopupMenu" parent="ThemeOverlay.Material3"> <style name="PopupMenu" parent="ThemeOverlay.Material3">
<item name="android:popupBackground">?windowBackgroundForced</item> <item name="android:popupBackground">?windowBackgroundForced</item>
</style> </style>
<!-- Theme required to apply M3 dialog style on preference screen -->
<style name="MwmTheme.M3.AlertDialog" parent="ThemeOverlay.Material3.MaterialAlertDialog">
<item name="dialogCornerRadius">28dp</item>
<item name="cornerFamily">rounded</item>
<item name="android:colorBackground">?attr/colorSurfaceContainerHigh</item>
<item name="android:layout">@layout/m3_alert_dialog</item>
</style>
</resources> </resources>

View File

@@ -1490,12 +1490,6 @@ JNIEXPORT void JNICALL Java_app_organicmaps_sdk_Framework_nativeSet3dMode(JNIEnv
g_framework->Set3dMode(allow3d, allow3dBuildings); g_framework->Set3dMode(allow3d, allow3dBuildings);
} }
JNIEXPORT void JNICALL Java_app_organicmaps_sdk_Framework_nativeSetCarScreenMode(JNIEnv * env, jclass, jboolean enabled)
{
if (g_framework)
frm()->SetCarScreenMode(static_cast<bool>(enabled));
}
JNIEXPORT void JNICALL Java_app_organicmaps_sdk_Framework_nativeGet3dMode(JNIEnv * env, jclass, jobject result) JNIEXPORT void JNICALL Java_app_organicmaps_sdk_Framework_nativeGet3dMode(JNIEnv * env, jclass, jobject result)
{ {
bool enabled; bool enabled;

View File

@@ -280,8 +280,6 @@ public class Framework
public static native void nativeSet3dMode(boolean allow3d, boolean allow3dBuildings); public static native void nativeSet3dMode(boolean allow3d, boolean allow3dBuildings);
public static native void nativeSetCarScreenMode(boolean enabled);
public static native boolean nativeGetAutoZoomEnabled(); public static native boolean nativeGetAutoZoomEnabled();
public static native void nativeSetAutoZoomEnabled(boolean enabled); public static native void nativeSetAutoZoomEnabled(boolean enabled);

View File

@@ -449,6 +449,7 @@ area|z13-[landuse=quarry],
area|z13-[power=plant], area|z13-[power=plant],
area|z13-[power=substation], area|z13-[power=substation],
area|z13-[power=generator], area|z13-[power=generator],
area|z13-[man_made=wastewater_plant]
{fill-opacity: 1; fill-color: @industrial;} {fill-opacity: 1; fill-color: @industrial;}
area|z13-[landuse=construction], area|z13-[landuse=construction],

View File

@@ -592,6 +592,7 @@ area|z15-[landuse=industrial],
area|z15-[landuse=construction], area|z15-[landuse=construction],
area|z15-[landuse=railway], area|z15-[landuse=railway],
area|z15-[landuse=quarry], area|z15-[landuse=quarry],
area|z15-[man_made=wastewater_plant],
node|z15-[landuse=industrial], node|z15-[landuse=industrial],
node|z15-[landuse=construction], node|z15-[landuse=construction],
node|z15-[landuse=landfill], node|z15-[landuse=landfill],

View File

@@ -208,6 +208,7 @@ landuse-industrial # area z13- (also has captio
landuse-industrial-mine # area z13- (also has icon z15-, caption(optional) z15-) landuse-industrial-mine # area z13- (also has icon z15-, caption(optional) z15-)
landuse-quarry # area z13- (also has icon z15-, caption(optional) z15-) landuse-quarry # area z13- (also has icon z15-, caption(optional) z15-)
landuse-railway # area z13- (also has caption z15-) landuse-railway # area z13- (also has caption z15-)
man_made-wastewater_plant # area z13- (also has caption z15-)
man_made-works # area z13- (also has icon z16-, caption(optional) z17-) man_made-works # area z13- (also has icon z16-, caption(optional) z17-)
power-generator # area z13- (also has icon z17-) power-generator # area z13- (also has icon z17-)
power-generator-gas # area z13- (also has icon z17-) power-generator-gas # area z13- (also has icon z17-)

View File

@@ -1374,6 +1374,7 @@ leisure-slipway # icon z17- (also has captio
leisure-track # caption z16- (also has line z15-) leisure-track # caption z16- (also has line z15-)
leisure-track-area # caption z16- (also has area z15-) leisure-track-area # caption z16- (also has area z15-)
man_made-petroleum_well # icon z17- (also has caption(optional) z18-) man_made-petroleum_well # icon z17- (also has caption(optional) z18-)
man_made-wastewater_plant # caption z15- (also has area z13-)
power-generator # icon z17- (also has area z13-) power-generator # icon z17- (also has area z13-)
power-generator-gas # icon z17- (also has area z13-) power-generator-gas # icon z17- (also has area z13-)
power-generator-hydro # icon z17- (also has area z13-) power-generator-hydro # icon z17- (also has area z13-)

View File

@@ -208,6 +208,7 @@ landuse-industrial # area z13- (also has captio
landuse-industrial-mine # area z13- (also has icon z15-, caption(optional) z15-) landuse-industrial-mine # area z13- (also has icon z15-, caption(optional) z15-)
landuse-quarry # area z13- (also has icon z15-, caption(optional) z15-) landuse-quarry # area z13- (also has icon z15-, caption(optional) z15-)
landuse-railway # area z13- (also has caption z15-) landuse-railway # area z13- (also has caption z15-)
man_made-wastewater_plant # area z13- (also has caption z15-)
man_made-works # area z13- (also has icon z16-, caption(optional) z17-) man_made-works # area z13- (also has icon z16-, caption(optional) z17-)
power-generator # area z13- (also has icon z17-) power-generator # area z13- (also has icon z17-)
power-generator-gas # area z13- (also has icon z17-) power-generator-gas # area z13- (also has icon z17-)

View File

@@ -1377,6 +1377,7 @@ leisure-slipway # icon z17- (also has captio
leisure-track # caption z16- (also has line z15-) leisure-track # caption z16- (also has line z15-)
leisure-track-area # caption z16- (also has area z15-) leisure-track-area # caption z16- (also has area z15-)
man_made-petroleum_well # icon z14- (also has caption(optional) z18-) man_made-petroleum_well # icon z14- (also has caption(optional) z18-)
man_made-wastewater_plant # caption z15- (also has area z13-)
power-generator # icon z17- (also has area z13-) power-generator # icon z17- (also has area z13-)
power-generator-gas # icon z17- (also has area z13-) power-generator-gas # icon z17- (also has area z13-)
power-generator-hydro # icon z17- (also has area z13-) power-generator-hydro # icon z17- (also has area z13-)

View File

@@ -310,6 +310,7 @@ area|z15-[landuse=quarry],
area|z15-[power=plant], area|z15-[power=plant],
area|z15-[power=substation], area|z15-[power=substation],
area|z15-[power=generator], area|z15-[power=generator],
area|z15-[man_made=wastewater_plant],
{fill-opacity: 1; fill-color: @industrial;} {fill-opacity: 1; fill-color: @industrial;}
area|z15-[landuse=construction], area|z15-[landuse=construction],

View File

@@ -110,6 +110,7 @@ landuse-industrial-mine # area z15-
landuse-landfill # area z15- (also has caption z15-) landuse-landfill # area z15- (also has caption z15-)
landuse-quarry # area z15- (also has caption z15-) landuse-quarry # area z15- (also has caption z15-)
landuse-railway # area z15- (also has caption z15-) landuse-railway # area z15- (also has caption z15-)
man_made-wastewater_plant # area z15-
man_made-works # area z15- man_made-works # area z15-
power-generator # area z15- power-generator # area z15-
power-generator-gas # area z15- power-generator-gas # area z15-

View File

@@ -111,6 +111,21 @@ sudo apk add \
sqlite-dev sqlite-dev
``` ```
#### Void
```bash
xbps-install -S \
wget \
optipng \
cmake \
ninja \
qt6-base-devel \
qt6-svg-devel \
qt6-position-devel \
python3-pip
pip3 install "protobuf<3.21" --break-system-packages
```
#### macOS #### macOS
```bash ```bash

View File

@@ -59,7 +59,6 @@ NS_SWIFT_NAME(FrameworkHelper)
+ (void)updatePlacePageData; + (void)updatePlacePageData;
+ (void)updateAfterDeleteBookmark; + (void)updateAfterDeleteBookmark;
+ (int)currentZoomLevel; + (int)currentZoomLevel;
+ (void)setCarScreenMode:(BOOL)enabled;
@end @end

View File

@@ -241,8 +241,4 @@
return [[ElevationProfileData alloc] initWithElevationInfo:GetFramework().GetTrackRecordingElevationInfo()]; return [[ElevationProfileData alloc] initWithElevationInfo:GetFramework().GetTrackRecordingElevationInfo()];
} }
+ (void)setCarScreenMode:(BOOL)enabled {
GetFramework().SetCarScreenMode(enabled);
}
@end @end

View File

@@ -62,8 +62,6 @@ final class CarPlayService: NSObject {
toWindow: window, toWindow: window,
isCarplayActivated: true isCarplayActivated: true
) )
FrameworkHelper.setCarScreenMode(true)
} }
private var savedInterfaceController: CPInterfaceController? private var savedInterfaceController: CPInterfaceController?
@@ -128,7 +126,6 @@ final class CarPlayService: NSObject {
isCarplayActivated: false isCarplayActivated: false
) )
} }
FrameworkHelper.setCarScreenMode(false)
} }
@objc func destroy() { @objc func destroy() {

View File

@@ -58,15 +58,15 @@ public:
// Should match codes in the array below. // Should match codes in the array below.
static int8_t constexpr kEnglishCode = 1; static int8_t constexpr kEnglishCode = 1;
static int8_t constexpr kUnsupportedLocaleCode = -1; static int8_t constexpr kUnsupportedLocaleCode = -1;
static int8_t constexpr kSimplifiedChineseCode = 44; static int8_t constexpr kSimplifiedChineseCode = 45;
static int8_t constexpr kTraditionalChineseCode = 45; static int8_t constexpr kTraditionalChineseCode = 46;
// *NOTE* These constants should be updated when adding new // *NOTE* These constants should be updated when adding new
// translation to categories.txt. When editing, keep in mind to check // translation to categories.txt. When editing, keep in mind to check
// CategoriesHolder::MapLocaleToInteger() and // CategoriesHolder::MapLocaleToInteger() and
// CategoriesHolder::MapIntegerToLocale() as their implementations // CategoriesHolder::MapIntegerToLocale() as their implementations
// strongly depend on the contents of the variable. // strongly depend on the contents of the variable.
// TODO: Refactor for more flexibility and to avoid breaking rules in two methods mentioned above. // TODO: Refactor for more flexibility and to avoid breaking rules in two methods mentioned above.
static std::array<CategoriesHolder::Mapping, 45> constexpr kLocaleMapping = {{ static std::array<CategoriesHolder::Mapping, 46> constexpr kLocaleMapping = {{
{"en", kEnglishCode}, {"en", kEnglishCode},
{"en-AU", 2}, {"en-AU", 2},
{"en-GB", 3}, {"en-GB", 3},
@@ -93,23 +93,24 @@ public:
{"it", 24}, {"it", 24},
{"ja", 25}, {"ja", 25},
{"ko", 26}, {"ko", 26},
{"lv", 27}, {"lt", 27},
{"mr", 28}, {"lv", 28},
{"nb", 29}, {"mr", 29},
{"nl", 30}, {"nb", 30},
{"pl", 31}, {"nl", 31},
{"pt", 32}, {"pl", 32},
{"pt-BR", 33}, {"pt", 33},
{"ro", 34}, {"pt-BR", 34},
{"ru", 35}, {"ro", 35},
{"sk", 36}, {"ru", 36},
{"sr", 37}, {"sk", 37},
{"sv", 38}, {"sr", 38},
{"sw", 39}, {"sv", 39},
{"th", 40}, {"sw", 40},
{"tr", 41}, {"th", 41},
{"uk", 42}, {"tr", 42},
{"vi", 43}, {"uk", 43},
{"vi", 44},
{"zh-Hans", kSimplifiedChineseCode}, {"zh-Hans", kSimplifiedChineseCode},
{"zh-Hant", kTraditionalChineseCode}, {"zh-Hant", kTraditionalChineseCode},
}}; }};

View File

@@ -175,16 +175,6 @@ void Framework::OnLocationUpdate(GpsInfo const & info)
#endif #endif
m_routingManager.OnLocationUpdate(rInfo); m_routingManager.OnLocationUpdate(rInfo);
bool const isRoutingActive = m_routingManager.IsRoutingActive();
if (m_wasRoutingActive != isRoutingActive)
{
m_wasRoutingActive = isRoutingActive;
/// State changed (Started OR Stopped) -> Refresh 3D Buildings
Refresh3dMode();
}
} }
void Framework::OnCompassUpdate(CompassInfo const & info) void Framework::OnCompassUpdate(CompassInfo const & info)
@@ -2434,10 +2424,6 @@ void Framework::Allow3dMode(bool allow3d, bool allow3dBuildings)
if (!m_powerManager.IsFacilityEnabled(power_management::Facility::Buildings3d)) if (!m_powerManager.IsFacilityEnabled(power_management::Facility::Buildings3d))
allow3dBuildings = false; allow3dBuildings = false;
/// If we are in CarPlay/AA mode and Navigation is active, force 3D buildings off.
if (m_isCarScreenMode && m_routingManager.IsRoutingActive())
allow3dBuildings = false;
m_drapeEngine->Allow3dMode(allow3d, allow3dBuildings); m_drapeEngine->Allow3dMode(allow3d, allow3dBuildings);
} }
@@ -3238,7 +3224,6 @@ void Framework::OnRouteFollow(routing::RouterType type)
// GetRoutingSettings(type).m_matchRoute to the FollowRoute() instead of |isPedestrianRoute|. // GetRoutingSettings(type).m_matchRoute to the FollowRoute() instead of |isPedestrianRoute|.
// |isArrowGlued| parameter fully corresponds to |m_matchRoute| in RoutingSettings. // |isArrowGlued| parameter fully corresponds to |m_matchRoute| in RoutingSettings.
m_drapeEngine->FollowRoute(scale, scale3d, enableAutoZoom, !isPedestrianRoute /* isArrowGlued */); m_drapeEngine->FollowRoute(scale, scale3d, enableAutoZoom, !isPedestrianRoute /* isArrowGlued */);
Refresh3dMode();
} }
// RoutingManager::Delegate // RoutingManager::Delegate
@@ -3307,25 +3292,3 @@ void Framework::OnPowerSchemeChanged(power_management::Scheme const actualScheme
if (actualScheme == power_management::Scheme::EconomyMaximum && GetTrafficManager().IsEnabled()) if (actualScheme == power_management::Scheme::EconomyMaximum && GetTrafficManager().IsEnabled())
GetTrafficManager().SetEnabled(false); GetTrafficManager().SetEnabled(false);
} }
void Framework::SetCarScreenMode(bool enabled)
{
if (m_isCarScreenMode == enabled)
return;
m_isCarScreenMode = enabled;
bool allow3d, allow3dBuildings;
Load3dMode(allow3d, allow3dBuildings);
Allow3dMode(allow3d, allow3dBuildings);
}
void Framework::Refresh3dMode()
{
bool allow3d = true;
bool allow3dBuildings = true;
/// Load User Preferences and apply logic
Load3dMode(allow3d, allow3dBuildings);
Allow3dMode(allow3d, allow3dBuildings);
}

View File

@@ -769,13 +769,4 @@ public:
// PowerManager::Subscriber override. // PowerManager::Subscriber override.
void OnPowerFacilityChanged(power_management::Facility const facility, bool enabled) override; void OnPowerFacilityChanged(power_management::Facility const facility, bool enabled) override;
void OnPowerSchemeChanged(power_management::Scheme const actualScheme) override; void OnPowerSchemeChanged(power_management::Scheme const actualScheme) override;
public:
/// Call this from iOS/Android when CarPlay/AA session starts/ends
void SetCarScreenMode(bool enabled);
bool m_isCarScreenMode = false;
private:
void Refresh3dMode();
bool m_wasRoutingActive = false;
}; };