Merge branch 'r3.4'
This commit is contained in:
commit
03a6a26759
14 changed files with 56 additions and 36 deletions
|
@ -185,7 +185,7 @@
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="60dp"
|
android:layout_height="60dp"
|
||||||
app:primaryColor="@color/active_color_primary_dark"
|
app:primaryColor="@color/active_color_primary_dark"
|
||||||
app:labelText="Navigation Type">
|
app:labelText="@string/nav_type_hint">
|
||||||
|
|
||||||
<studio.carbonylgroup.textfieldboxes.ExtendedEditText
|
<studio.carbonylgroup.textfieldboxes.ExtendedEditText
|
||||||
android:id="@+id/navigation_type_et"
|
android:id="@+id/navigation_type_et"
|
||||||
|
|
|
@ -11,6 +11,7 @@
|
||||||
Thx - Hardy
|
Thx - Hardy
|
||||||
|
|
||||||
-->
|
-->
|
||||||
|
<string name="turn_on_profile_desc">Please turn on at least one application profile, to use this setting.</string>
|
||||||
<string name="rendering_attr_winter_road_name">Winter road</string>
|
<string name="rendering_attr_winter_road_name">Winter road</string>
|
||||||
<string name="rendering_attr_ice_road_name">Ice road</string>
|
<string name="rendering_attr_ice_road_name">Ice road</string>
|
||||||
<string name="routeInfo_winter_ice_road_name">Winter and ice roads</string>
|
<string name="routeInfo_winter_ice_road_name">Winter and ice roads</string>
|
||||||
|
|
|
@ -258,6 +258,7 @@
|
||||||
<item name="dlg_btn_stroked">@drawable/dlg_btn_stroked_light</item>
|
<item name="dlg_btn_stroked">@drawable/dlg_btn_stroked_light</item>
|
||||||
<item name="profile_save_btn">@drawable/btn_round_profile_blue</item>
|
<item name="profile_save_btn">@drawable/btn_round_profile_blue</item>
|
||||||
<item name="profile_cancel_btn">@drawable/btn_round_profile_gray</item>
|
<item name="profile_cancel_btn">@drawable/btn_round_profile_gray</item>
|
||||||
|
<item name="android:textColor">@color/text_color_primary_light</item>
|
||||||
</style>
|
</style>
|
||||||
|
|
||||||
<style name="OverflowMenuButton" parent="@style/Widget.AppCompat.ActionButton.Overflow">
|
<style name="OverflowMenuButton" parent="@style/Widget.AppCompat.ActionButton.Overflow">
|
||||||
|
@ -504,6 +505,7 @@
|
||||||
<item name="dlg_btn_stroked">@drawable/dlg_btn_stroked_dark</item>
|
<item name="dlg_btn_stroked">@drawable/dlg_btn_stroked_dark</item>
|
||||||
<item name="profile_save_btn">@drawable/btn_round_profile_night</item>
|
<item name="profile_save_btn">@drawable/btn_round_profile_night</item>
|
||||||
<item name="profile_cancel_btn">@drawable/btn_round_profile_gray_n</item>
|
<item name="profile_cancel_btn">@drawable/btn_round_profile_gray_n</item>
|
||||||
|
<item name="android:textColor">@color/text_color_primary_dark</item>
|
||||||
</style>
|
</style>
|
||||||
|
|
||||||
<style name="FreeVersionBanner" parent="OsmandDarkTheme">
|
<style name="FreeVersionBanner" parent="OsmandDarkTheme">
|
||||||
|
|
|
@ -340,6 +340,14 @@ public class OsmandSettings {
|
||||||
return APPLICATION_MODE.get();
|
return APPLICATION_MODE.get();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public boolean hasAvailableApplicationMode() {
|
||||||
|
int currentModeCount = ApplicationMode.values(ctx).size();
|
||||||
|
if (currentModeCount == 0 || currentModeCount == 1 && getApplicationMode() == ApplicationMode.DEFAULT) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
protected ApplicationMode readApplicationMode() {
|
protected ApplicationMode readApplicationMode() {
|
||||||
String s = settingsAPI.getString(globalPreferences, APPLICATION_MODE.getId(), ApplicationMode.DEFAULT.getStringKey());
|
String s = settingsAPI.getString(globalPreferences, APPLICATION_MODE.getId(), ApplicationMode.DEFAULT.getStringKey());
|
||||||
return ApplicationMode.valueOfStringKey(s, ApplicationMode.DEFAULT);
|
return ApplicationMode.valueOfStringKey(s, ApplicationMode.DEFAULT);
|
||||||
|
|
|
@ -25,6 +25,7 @@ import android.widget.ArrayAdapter;
|
||||||
import android.widget.SeekBar;
|
import android.widget.SeekBar;
|
||||||
import android.widget.SeekBar.OnSeekBarChangeListener;
|
import android.widget.SeekBar.OnSeekBarChangeListener;
|
||||||
import android.widget.TextView;
|
import android.widget.TextView;
|
||||||
|
import android.widget.Toast;
|
||||||
|
|
||||||
import net.osmand.plus.ApplicationMode;
|
import net.osmand.plus.ApplicationMode;
|
||||||
import net.osmand.plus.ContextMenuAdapter;
|
import net.osmand.plus.ContextMenuAdapter;
|
||||||
|
@ -81,6 +82,12 @@ public class SettingsNavigationActivity extends SettingsBaseActivity {
|
||||||
public void onCreate(Bundle savedInstanceState) {
|
public void onCreate(Bundle savedInstanceState) {
|
||||||
((OsmandApplication) getApplication()).applyTheme(this);
|
((OsmandApplication) getApplication()).applyTheme(this);
|
||||||
super.onCreate(savedInstanceState);
|
super.onCreate(savedInstanceState);
|
||||||
|
settings = getMyApplication().getSettings();
|
||||||
|
if (!settings.hasAvailableApplicationMode()) {
|
||||||
|
Toast.makeText(this, R.string.turn_on_profile_desc, Toast.LENGTH_SHORT).show();
|
||||||
|
finish();
|
||||||
|
return;
|
||||||
|
}
|
||||||
getToolbar().setTitle(R.string.routing_settings);
|
getToolbar().setTitle(R.string.routing_settings);
|
||||||
createUI();
|
createUI();
|
||||||
}
|
}
|
||||||
|
@ -98,7 +105,6 @@ public class SettingsNavigationActivity extends SettingsBaseActivity {
|
||||||
private void createUI() {
|
private void createUI() {
|
||||||
addPreferencesFromResource(R.xml.navigation_settings);
|
addPreferencesFromResource(R.xml.navigation_settings);
|
||||||
PreferenceScreen screen = getPreferenceScreen();
|
PreferenceScreen screen = getPreferenceScreen();
|
||||||
settings = getMyApplication().getSettings();
|
|
||||||
RouteService[] vls = RouteService.getAvailableRouters(getMyApplication());
|
RouteService[] vls = RouteService.getAvailableRouters(getMyApplication());
|
||||||
String[] entries = new String[vls.length];
|
String[] entries = new String[vls.length];
|
||||||
for (int i = 0; i < entries.length; i++) {
|
for (int i = 0; i < entries.length; i++) {
|
||||||
|
|
|
@ -309,6 +309,9 @@ public class MenuBuilder {
|
||||||
buildPlainMenuItems(view);
|
buildPlainMenuItems(view);
|
||||||
}
|
}
|
||||||
buildInternal(view);
|
buildInternal(view);
|
||||||
|
if (needBuildCoordinatesRow()) {
|
||||||
|
buildCoordinatesRow(view);
|
||||||
|
}
|
||||||
if (showOnlinePhotos) {
|
if (showOnlinePhotos) {
|
||||||
buildNearestPhotosRow(view);
|
buildNearestPhotosRow(view);
|
||||||
}
|
}
|
||||||
|
@ -355,6 +358,10 @@ public class MenuBuilder {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
protected boolean needBuildCoordinatesRow() {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
protected void buildPluginRows(View view) {
|
protected void buildPluginRows(View view) {
|
||||||
for (OsmandPlugin plugin : menuPlugins) {
|
for (OsmandPlugin plugin : menuPlugins) {
|
||||||
plugin.buildContextMenuRows(this, view);
|
plugin.buildContextMenuRows(this, view);
|
||||||
|
@ -412,6 +419,15 @@ public class MenuBuilder {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void buildCoordinatesRow(View view) {
|
||||||
|
Map<Integer, String> locationData = PointDescription.getLocationData(mapActivity, latLon.getLatitude(), latLon.getLongitude(), true);
|
||||||
|
String title = locationData.get(PointDescription.LOCATION_LIST_HEADER);
|
||||||
|
locationData.remove(PointDescription.LOCATION_LIST_HEADER);
|
||||||
|
CollapsableView cv = getLocationCollapsableView(locationData);
|
||||||
|
buildRow(view, R.drawable.ic_action_get_my_location, null, title, 0, true, cv, false, 1,
|
||||||
|
false, null, false);
|
||||||
|
}
|
||||||
|
|
||||||
private void startLoadingImages() {
|
private void startLoadingImages() {
|
||||||
if (onlinePhotoCardsRow == null) {
|
if (onlinePhotoCardsRow == null) {
|
||||||
return;
|
return;
|
||||||
|
|
|
@ -282,18 +282,6 @@ public abstract class MenuController extends BaseMenuController implements Colla
|
||||||
addAltitudeToPlainItems();
|
addAltitudeToPlainItems();
|
||||||
addPrecisionToPlainItems();
|
addPrecisionToPlainItems();
|
||||||
}
|
}
|
||||||
addMyLocationToPlainItems(latLon);
|
|
||||||
}
|
|
||||||
|
|
||||||
protected void addMyLocationToPlainItems(LatLon latlon) {
|
|
||||||
final MapActivity mapActivity = getMapActivity();
|
|
||||||
if (mapActivity != null) {
|
|
||||||
Map<Integer, String> locationData = PointDescription.getLocationData(mapActivity, latlon.getLatitude(), latlon.getLongitude(), true);
|
|
||||||
String title = locationData.get(PointDescription.LOCATION_LIST_HEADER);
|
|
||||||
locationData.remove(PointDescription.LOCATION_LIST_HEADER);
|
|
||||||
CollapsableView cv = builder.getLocationCollapsableView(locationData);
|
|
||||||
addPlainMenuItem(R.drawable.ic_action_get_my_location, title, false, false, true, cv, null);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
protected void addSpeedToPlainItems() {
|
protected void addSpeedToPlainItems() {
|
||||||
|
|
|
@ -672,15 +672,6 @@ public class AmenityMenuBuilder extends MenuBuilder {
|
||||||
buildRow(view, R.drawable.ic_action_openstreetmap_logo, null, link + (amenity.getId() >> 1),
|
buildRow(view, R.drawable.ic_action_openstreetmap_logo, null, link + (amenity.getId() >> 1),
|
||||||
0, false, null, true, 0, true, null, false);
|
0, false, null, true, 0, true, null, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
Map<Integer, String> locationData = PointDescription.getLocationData(mapActivity, amenity.getLocation().getLatitude(), amenity.getLocation().getLongitude(), true);
|
|
||||||
String title = locationData.get(PointDescription.LOCATION_LIST_HEADER);
|
|
||||||
locationData.remove(PointDescription.LOCATION_LIST_HEADER);
|
|
||||||
CollapsableView cv = getLocationCollapsableView(locationData);
|
|
||||||
|
|
||||||
buildRow(view, R.drawable.ic_action_get_my_location, null, title, 0, true, cv,
|
|
||||||
true, 1, false, null, false);
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private String getFormattedInt(String value) {
|
private String getFormattedInt(String value) {
|
||||||
|
|
|
@ -0,0 +1,17 @@
|
||||||
|
package net.osmand.plus.mapcontextmenu.builders;
|
||||||
|
|
||||||
|
import android.support.annotation.NonNull;
|
||||||
|
import net.osmand.plus.activities.MapActivity;
|
||||||
|
import net.osmand.plus.mapcontextmenu.MenuBuilder;
|
||||||
|
|
||||||
|
public class MapDataMenuBuilder extends MenuBuilder {
|
||||||
|
|
||||||
|
public MapDataMenuBuilder(@NonNull MapActivity mapActivity) {
|
||||||
|
super(mapActivity);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected boolean needBuildCoordinatesRow() {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
|
@ -166,8 +166,6 @@ public class FavouritePointMenuController extends MenuController {
|
||||||
if (originObject instanceof Amenity) {
|
if (originObject instanceof Amenity) {
|
||||||
AmenityMenuController.addTypeMenuItem((Amenity) originObject, builder);
|
AmenityMenuController.addTypeMenuItem((Amenity) originObject, builder);
|
||||||
}
|
}
|
||||||
} else {
|
|
||||||
addMyLocationToPlainItems(latLon);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -28,8 +28,8 @@ import net.osmand.plus.download.IndexItem;
|
||||||
import net.osmand.plus.helpers.FileNameTranslationHelper;
|
import net.osmand.plus.helpers.FileNameTranslationHelper;
|
||||||
import net.osmand.plus.inapp.InAppPurchaseHelper;
|
import net.osmand.plus.inapp.InAppPurchaseHelper;
|
||||||
import net.osmand.plus.liveupdates.LiveUpdatesHelper;
|
import net.osmand.plus.liveupdates.LiveUpdatesHelper;
|
||||||
import net.osmand.plus.mapcontextmenu.MenuBuilder;
|
|
||||||
import net.osmand.plus.mapcontextmenu.MenuController;
|
import net.osmand.plus.mapcontextmenu.MenuController;
|
||||||
|
import net.osmand.plus.mapcontextmenu.builders.MapDataMenuBuilder;
|
||||||
import net.osmand.plus.srtmplugin.SRTMPlugin;
|
import net.osmand.plus.srtmplugin.SRTMPlugin;
|
||||||
import net.osmand.plus.views.ContextMenuLayer.IContextMenuProvider;
|
import net.osmand.plus.views.ContextMenuLayer.IContextMenuProvider;
|
||||||
import net.osmand.plus.views.DownloadedRegionsLayer.DownloadMapObject;
|
import net.osmand.plus.views.DownloadedRegionsLayer.DownloadMapObject;
|
||||||
|
@ -57,7 +57,7 @@ public class MapDataMenuController extends MenuController {
|
||||||
private DownloadIndexesThread downloadThread;
|
private DownloadIndexesThread downloadThread;
|
||||||
|
|
||||||
public MapDataMenuController(@NonNull MapActivity mapActivity, @NonNull PointDescription pointDescription, final @NonNull DownloadMapObject mapObject) {
|
public MapDataMenuController(@NonNull MapActivity mapActivity, @NonNull PointDescription pointDescription, final @NonNull DownloadMapObject mapObject) {
|
||||||
super(new MenuBuilder(mapActivity), pointDescription, mapActivity);
|
super(new MapDataMenuBuilder(mapActivity), pointDescription, mapActivity);
|
||||||
this.mapObject = mapObject;
|
this.mapObject = mapObject;
|
||||||
indexItem = mapObject.getIndexItem();
|
indexItem = mapObject.getIndexItem();
|
||||||
localIndexInfo = mapObject.getLocalIndexInfo();
|
localIndexInfo = mapObject.getLocalIndexInfo();
|
||||||
|
|
|
@ -126,7 +126,6 @@ public class RenderedObjectMenuController extends MenuController {
|
||||||
}
|
}
|
||||||
addPlainMenuItem(R.drawable.ic_action_info_dark, null, link + (renderedObject.getId() >> MapObject.NON_AMENITY_ID_RIGHT_SHIFT), true, true, null);
|
addPlainMenuItem(R.drawable.ic_action_info_dark, null, link + (renderedObject.getId() >> MapObject.NON_AMENITY_ID_RIGHT_SHIFT), true, true, null);
|
||||||
}
|
}
|
||||||
addMyLocationToPlainItems(latLon);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -71,12 +71,5 @@ public class EditPOIMenuBuilder extends MenuBuilder {
|
||||||
buildRow(view, R.drawable.ic_action_info_dark, null, text, 0, false, null, false, 0, false, null, false);
|
buildRow(view, R.drawable.ic_action_info_dark, null, text, 0, false, null, false, 0, false, null, false);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Map<Integer, String> locationData = PointDescription.getLocationData(mapActivity, osmPoint.getLatitude(), osmPoint.getLongitude(), true);
|
|
||||||
String title = locationData.get(PointDescription.LOCATION_LIST_HEADER);
|
|
||||||
locationData.remove(PointDescription.LOCATION_LIST_HEADER);
|
|
||||||
CollapsableView cv = getLocationCollapsableView(locationData);
|
|
||||||
buildRow(view, R.drawable.ic_action_get_my_location, null, title, 0, true, cv,
|
|
||||||
true, 1, false, null, false);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -15,6 +15,7 @@ public class SettingsProfileActivity extends OsmandActionBarActivity {
|
||||||
super.onCreate(savedInstanceState);
|
super.onCreate(savedInstanceState);
|
||||||
setContentView(R.layout.single_fragment_layout);
|
setContentView(R.layout.single_fragment_layout);
|
||||||
getSupportActionBar().setElevation(5.0f);
|
getSupportActionBar().setElevation(5.0f);
|
||||||
|
getSupportActionBar().setTitle(R.string.application_profiles);
|
||||||
if (savedInstanceState == null) {
|
if (savedInstanceState == null) {
|
||||||
SettingsProfileFragment profileFragment = new SettingsProfileFragment();
|
SettingsProfileFragment profileFragment = new SettingsProfileFragment();
|
||||||
profileFragment.setArguments(getIntent().getExtras());
|
profileFragment.setArguments(getIntent().getExtras());
|
||||||
|
|
Loading…
Reference in a new issue