diff --git a/OsmAnd/res/layout/configuration_dialog.xml b/OsmAnd/res/layout/configuration_dialog.xml
new file mode 100644
index 0000000000..cc035cf5ac
--- /dev/null
+++ b/OsmAnd/res/layout/configuration_dialog.xml
@@ -0,0 +1,15 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/OsmAnd/src/net/osmand/plus/activities/MapActivityActions.java b/OsmAnd/src/net/osmand/plus/activities/MapActivityActions.java
index 0555e38c3f..00a6319a28 100644
--- a/OsmAnd/src/net/osmand/plus/activities/MapActivityActions.java
+++ b/OsmAnd/src/net/osmand/plus/activities/MapActivityActions.java
@@ -67,6 +67,7 @@ import android.text.Html;
import android.util.FloatMath;
import android.view.View;
import android.view.View.OnClickListener;
+import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.AutoCompleteTextView;
import android.widget.Button;
@@ -465,9 +466,9 @@ public class MapActivityActions implements DialogProvider {
}
- public static View showActivityActionsDialog(Activity a, final Set selected, boolean showDefault,
- final View.OnClickListener onClickListener) {
- View view = a.getLayoutInflater().inflate(R.layout.mode_toggles, null);
+ public static View prepareAppModeView(Activity a, final Set selected, boolean showDefault,
+ ViewGroup parent, final View.OnClickListener onClickListener) {
+ View view = a.getLayoutInflater().inflate(R.layout.mode_toggles, parent);
OsmandSettings settings = ((OsmandApplication) a.getApplication()).getSettings();
boolean lc = settings.isLightContentMenu();
final ToggleButton[] buttons = new ToggleButton[ApplicationMode.values().length];
diff --git a/OsmAnd/src/net/osmand/plus/activities/SettingsBaseActivity.java b/OsmAnd/src/net/osmand/plus/activities/SettingsBaseActivity.java
index a60359b123..b4bf35dbd9 100644
--- a/OsmAnd/src/net/osmand/plus/activities/SettingsBaseActivity.java
+++ b/OsmAnd/src/net/osmand/plus/activities/SettingsBaseActivity.java
@@ -305,7 +305,7 @@ public abstract class SettingsBaseActivity extends SherlockPreferenceActivity im
protected void profileDialog() {
Builder b = new AlertDialog.Builder(this);
final Set selected = new LinkedHashSet();
- View v = MapActivityActions.showActivityActionsDialog(this, selected, false,
+ View v = MapActivityActions.prepareAppModeView(this, selected, false, null,
new View.OnClickListener() {
@Override
public void onClick(View v) {
diff --git a/OsmAnd/src/net/osmand/plus/views/MapInfoLayer.java b/OsmAnd/src/net/osmand/plus/views/MapInfoLayer.java
index 70e8a93a1e..e0c0fb1197 100644
--- a/OsmAnd/src/net/osmand/plus/views/MapInfoLayer.java
+++ b/OsmAnd/src/net/osmand/plus/views/MapInfoLayer.java
@@ -18,6 +18,7 @@ import net.osmand.plus.OsmandSettings;
import net.osmand.plus.OsmandSettings.CommonPreference;
import net.osmand.plus.R;
import net.osmand.plus.activities.MapActivity;
+import net.osmand.plus.activities.MapActivityActions;
import net.osmand.plus.activities.SettingsActivity;
import net.osmand.plus.extrasettings.OsmandExtraSettings;
import net.osmand.plus.routing.RoutingHelper;
@@ -53,9 +54,12 @@ import android.view.View;
import android.view.View.MeasureSpec;
import android.view.ViewGroup;
import android.view.WindowManager;
+import android.widget.AdapterView;
+import android.widget.AdapterView.OnItemClickListener;
import android.widget.ArrayAdapter;
import android.widget.CheckBox;
import android.widget.CompoundButton;
+import android.widget.ListView;
import android.widget.CompoundButton.OnCheckedChangeListener;
import android.widget.FrameLayout;
import android.widget.ImageView;
@@ -497,7 +501,7 @@ public class MapInfoLayer extends OsmandMapLayer {
final ArrayList