Merge remote-tracking branch 'origin/master'

This commit is contained in:
Weblate 2015-09-03 17:17:00 +02:00
commit 7e546333a5
15 changed files with 159 additions and 60 deletions

View file

@ -4,19 +4,20 @@
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/dashboard_background"
android:background="?attr/bg_color"
android:clickable="true"
android:orientation="vertical"
tools:context="net.osmand.plus.osmedit.EditPoiFragment"
android:clickable="true">
tools:context="net.osmand.plus.osmedit.EditPoiFragment">
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="fill_parent"
android:layout_height="@dimen/dashboard_map_toolbar"
android:background="?attr/pstsTabBackground"
android:minHeight="@dimen/dashboard_map_toolbar"
android:theme="?attr/toolbar_theme"
app:contentInsetLeft="72dp"
app:contentInsetStart="72dp"
android:theme="@style/OsmandLightTheme.Toolbar"
android:background="@color/osmand_orange"/>
app:contentInsetStart="72dp"/>
<android.support.design.widget.CoordinatorLayout
android:layout_width="match_parent"
@ -27,7 +28,8 @@
<android.support.design.widget.AppBarLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:theme="@style/OsmandLightTheme.DarkActionbar">
android:background="?attr/pstsTabBackground"
android:theme="?attr/appbar_layout_theme">
<!-- TODO change theme -->
<LinearLayout
android:layout_width="fill_parent"
@ -75,9 +77,9 @@
android:id="@+id/poiTypeEditText"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:completionThreshold="1"
android:drawableRight="@drawable/ic_action_arrow_drop_down"
android:hint="@string/poi_dialog_poi_type"
android:completionThreshold="1"
tools:text="@string/lorem_ipsum"/>
</android.support.design.widget.TextInputLayout>
@ -95,11 +97,11 @@
android:id="@+id/tab_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/color_white"
app:tabIndicatorColor="@color/osmand_orange"
app:tabSelectedTextColor="@color/osmand_orange"
app:tabTextColor="@android:color/darker_gray"
app:layout_scrollFlags="scroll"/>
android:background="?attr/pstsTabBackground"
app:layout_scrollFlags="scroll"
app:tabIndicatorColor="?attr/pstsIndicatorColor"
app:tabSelectedTextColor="?attr/pstsIndicatorColor"
app:tabTextColor="@android:color/darker_gray"/>
</android.support.design.widget.AppBarLayout>
@ -126,17 +128,19 @@
<net.osmand.plus.widgets.ButtonEx
android:id="@+id/cancelButton"
style="@style/DashboardGeneralButton"
android:text="@string/shared_string_cancel"
android:height="48dp"
android:gravity="center"
android:text="@string/shared_string_cancel"
android:textColor="@color/dashboard_general_button_text_light"
app:textAllCapsCompat="true"/>
<net.osmand.plus.widgets.ButtonEx
android:id="@+id/saveButton"
style="@style/DashboardGeneralButton"
android:textColor="@color/dashboard_general_button_text_light"
tools:text="Save"
android:height="48dp"
android:gravity="center"
app:textAllCapsCompat="true"/>
android:textColor="@color/dashboard_general_button_text_light"
app:textAllCapsCompat="true"
tools:text="Save"/>
</LinearLayout>
</LinearLayout>

View file

@ -4,7 +4,7 @@
xmlns:osmand="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:theme="@style/OsmandLightTheme.NewAppTheme">
android:theme="?attr/new_app_theme">
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"

View file

@ -9,7 +9,7 @@
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:theme="@style/OsmandLightTheme.NewAppTheme">
android:theme="@attr/new_app_theme">
<net.osmand.plus.widgets.TextViewEx
android:id="@+id/contactInfoTextView"
@ -18,7 +18,7 @@
android:layout_marginLeft="16dp"
android:layout_marginTop="18dp"
android:text="@string/contact_info"
android:textColor="@color/color_black"
android:textColor="?android:textColorPrimary"
osmand:typeface="@string/font_roboto_medium"/>
<ImageView
@ -96,7 +96,7 @@
android:layout_marginTop="18dp"
android:layout_marginBottom="16dp"
android:text="@string/opening_hours"
android:textColor="@color/color_black"
android:textColor="?android:textColorPrimary"
osmand:typeface="@string/font_roboto_medium"/>
<LinearLayout

View file

@ -25,7 +25,7 @@
android:id="@+id/daysTextView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="@color/dashboard_black"
android:textColor="?android:textColorPrimary"
android:textSize="@dimen/default_list_text_size"
tools:text="Mo-We"/>
@ -52,7 +52,7 @@
android:id="@+id/openingTextView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="@color/dashboard_black"
android:textColor="?android:textColorPrimary"
android:textSize="@dimen/default_list_text_size"
tools:text="08:00"/>
@ -77,7 +77,7 @@
android:id="@+id/closingTextView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="@color/dashboard_black"
android:textColor="?android:textColorPrimary"
android:textSize="@dimen/default_list_text_size"
tools:text="20:00"/>

View file

@ -4,6 +4,7 @@
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
xmlns:tools="http://schemas.android.com/tools"
android:orientation="horizontal"
android:paddingTop="16dp">
@ -18,7 +19,8 @@
android:id="@+id/tagEditText"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="Tag"/>
android:hint="Tag"
tools:text="asdf"/>
</android.support.design.widget.TextInputLayout>

View file

@ -34,6 +34,9 @@
<attr name="dashboard_general_button_text_color" format="color"/>
<attr name="dialog_inactive_text_color" format="reference"/>
<attr name="appbar_layout_theme" format="reference"/>
<attr name="toolbar_theme" format="reference"/>
<attr name="new_app_theme" format="reference"/>
</declare-styleable>
<declare-styleable name="PagerSlidingTabStrip">

View file

@ -105,6 +105,9 @@
<item name="android:actionMenuTextColor">@color/color_white</item>
<item name="dialog_inactive_text_color">@color/icon_color_light</item>
<item name="appbar_layout_theme">@style/OsmandLightTheme.DarkActionbar</item>
<item name="toolbar_theme">@style/OsmandLightTheme.Toolbar</item>
<item name="new_app_theme">@style/OsmandLightTheme.NewAppTheme</item>
</style>
<style name="OsmandLightTheme.DarkActionbar">
@ -125,6 +128,24 @@
<item name="android:textColorSecondary">@color/divider_color</item>
</style>
<style name="OsmandDarkTheme.DarkActionbar">
<item name="android:textColorPrimary">@color/color_white</item>
<item name="android:textColorSecondary">@color/inactive_item_orange</item>
<item name="android:textColorHint">@color/inactive_item_orange</item>
<item name="colorAccent">@color/color_white</item>
<!--<item name="actionMenuTextColor">@color/color_white</item>-->
</style>
<style name="OsmandDarkTheme.Toolbar">
<item name="android:textColorPrimary">@color/color_white</item>
<item name="android:textColorSecondary">@color/color_white</item>
</style>
<style name="OsmandDarkTheme.NewAppTheme">
<item name="colorAccent">@color/osmand_orange</item>
<item name="android:textColorSecondary">@color/divider_color</item>
</style>
<style name="OsmandDarkTheme" parent="Theme.AppCompat">
<item name="list_divider">@color/list_divider_light</item>
<item name="expandable_category_color">?android:attr/colorBackground</item>
@ -167,6 +188,9 @@
<item name="android:actionBarStyle">@style/Widget.Styled.ActionBarDark</item>
<item name="dialog_inactive_text_color">@color/dialog_inactive_text_color_dark</item>
<item name="appbar_layout_theme">@style/OsmandDarkTheme.DarkActionbar</item>
<item name="toolbar_theme">@style/OsmandDarkTheme.Toolbar</item>
<item name="new_app_theme">@style/OsmandDarkTheme.NewAppTheme</item>
</style>
@ -246,6 +270,7 @@
<item name="android:layout_width">match_parent</item>
<item name="android:layout_height">wrap_content</item>
<item name="android:layout_weight">1</item>
<item name="android:textColor">?android:textColorPrimary</item>
</style>
<style name="edit_poi_imageview_style">

View file

@ -64,6 +64,8 @@ import net.osmand.plus.base.FailSafeFuntions;
import net.osmand.plus.base.MapViewTrackingUtilities;
import net.osmand.plus.dashboard.DashboardOnMap;
import net.osmand.plus.helpers.GpxImportHelper;
import net.osmand.plus.helpers.OnBackPressedListener;
import net.osmand.plus.helpers.OnBackPressedProvider;
import net.osmand.plus.helpers.WakeLockHelper;
import net.osmand.plus.render.RendererRegistry;
import net.osmand.plus.resources.ResourceManager;
@ -87,7 +89,7 @@ import java.util.Map;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class MapActivity extends AccessibleActivity {
public class MapActivity extends AccessibleActivity implements OnBackPressedProvider {
private static final int SHOW_POSITION_MSG_ID = OsmAndConstants.UI_HANDLER_MAP_VIEW + 1;
private static final int LONG_KEYPRESS_MSG_ID = OsmAndConstants.UI_HANDLER_MAP_VIEW + 2;
private static final int LONG_KEYPRESS_DELAY = 500;
@ -128,6 +130,8 @@ public class MapActivity extends AccessibleActivity {
private IMapDownloaderCallback downloaderCallback;
private DrawerLayout drawerLayout;
private OnBackPressedListener mOnBackPressedListener;
public static final String SHOULD_SHOW_DASHBOARD_ON_START = "should_show_dashboard_on_start";
private Notification getNotification() {
@ -374,6 +378,10 @@ public class MapActivity extends AccessibleActivity {
@Override
public void onBackPressed() {
if (mOnBackPressedListener != null) {
mOnBackPressedListener.onBackPressed();
return;
}
if (dashboardOnMap.onBackPressed()) {
return;
}
@ -993,4 +1001,9 @@ public class MapActivity extends AccessibleActivity {
openDrawer();
}
}
@Override
public void setmOnBackPressedListener(OnBackPressedListener listener) {
mOnBackPressedListener = listener;
}
}

View file

@ -113,9 +113,6 @@ public class NotesFragment extends OsmAndListFragment {
items = new ArrayList<>(plugin.getAllRecordings());
listAdapter = new NotesAdapter(items);
getListView().setAdapter(listAdapter);
if (!AndroidUiHelper.isOrientationPortrait(getActivity())) {
((ActionBarProgressActivity) getActivity()).getClearToolbar(false);
}
}
@Override

View file

@ -0,0 +1,5 @@
package net.osmand.plus.helpers;
public interface OnBackPressedListener {
void onBackPressed();
}

View file

@ -0,0 +1,5 @@
package net.osmand.plus.helpers;
public interface OnBackPressedProvider {
void setmOnBackPressedListener(OnBackPressedListener listener);
}

View file

@ -4,9 +4,7 @@ import android.app.Dialog;
import android.content.DialogInterface;
import android.graphics.drawable.Drawable;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v4.app.DialogFragment;
import android.support.v4.app.Fragment;
import android.support.v7.app.AlertDialog;
import android.text.Editable;
@ -27,13 +25,11 @@ import net.osmand.osm.PoiType;
import net.osmand.osm.edit.OSMSettings;
import net.osmand.plus.OsmandApplication;
import net.osmand.plus.R;
import net.osmand.plus.activities.MapActivity;
import net.osmand.plus.osmedit.data.EditPoiData;
import net.osmand.plus.osmedit.data.Tag;
import org.apache.commons.logging.Log;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;
import java.util.TreeSet;
@ -58,7 +54,7 @@ public class AdvancedDataFragment extends Fragment {
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
final View view = inflater.inflate(R.layout.fragment_edit_poi_advanced, container, false);
deleteDrawable = ((MapActivity)getActivity()).getMyApplication().getIconsCache()
deleteDrawable = ((OsmandApplication) getActivity().getApplication()).getIconsCache()
.getPaintedContentIcon(R.drawable.ic_action_remove_dark,
getActivity().getResources().getColor(R.color.icon_color_light));
TextView nameTextView = (TextView) view.findViewById(R.id.nameTextView);

View file

@ -20,8 +20,8 @@ import android.widget.TextView;
import net.osmand.PlatformUtil;
import net.osmand.osm.edit.OSMSettings;
import net.osmand.plus.IconsCache;
import net.osmand.plus.OsmandApplication;
import net.osmand.plus.R;
import net.osmand.plus.activities.MapActivity;
import net.osmand.plus.osmedit.data.EditPoiData;
import net.osmand.plus.osmedit.data.Tag;
import net.osmand.plus.osmedit.dialogs.OpeningHoursDaysDialogFragment;
@ -52,7 +52,7 @@ public class BasicDataFragment extends Fragment {
@Nullable
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
IconsCache iconsCache = ((MapActivity) getActivity()).getMyApplication().getIconsCache();
IconsCache iconsCache = ((OsmandApplication) getActivity().getApplication()).getIconsCache();
View view = inflater.inflate(R.layout.fragment_edit_poi_normal, container, false);
ImageView streetImageView = (ImageView) view.findViewById(R.id.streetImageView);

View file

@ -2,12 +2,15 @@ package net.osmand.plus.osmedit;
import android.annotation.TargetApi;
import android.app.Activity;
import android.app.Dialog;
import android.app.ProgressDialog;
import android.content.DialogInterface;
import android.content.Intent;
import android.net.Uri;
import android.os.AsyncTask;
import android.os.Build;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.design.widget.TabLayout;
import android.support.design.widget.TextInputLayout;
import android.support.v4.app.DialogFragment;
@ -16,6 +19,7 @@ import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentPagerAdapter;
import android.support.v4.view.ViewCompat;
import android.support.v4.view.ViewPager;
import android.support.v7.app.AlertDialog;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.Toolbar;
import android.text.Editable;
@ -44,6 +48,8 @@ import net.osmand.plus.OsmandPlugin;
import net.osmand.plus.OsmandSettings;
import net.osmand.plus.R;
import net.osmand.plus.activities.MapActivity;
import net.osmand.plus.helpers.OnBackPressedListener;
import net.osmand.plus.helpers.OnBackPressedProvider;
import net.osmand.plus.osmedit.data.EditPoiData;
import net.osmand.plus.osmedit.data.Tag;
import net.osmand.plus.osmedit.dialogs.DeletePoiDialogFragment;
@ -58,7 +64,7 @@ import java.util.LinkedHashMap;
import java.util.LinkedHashSet;
import java.util.Map;
public class EditPoiFragment extends Fragment {
public class EditPoiFragment extends DialogFragment implements OnBackPressedListener {
public static final String TAG = "EditPoiFragment";
private static final Log LOG = PlatformUtil.getLog(EditPoiFragment.class);
@ -99,6 +105,15 @@ public class EditPoiFragment extends Fragment {
editPoiData.amenity = (Amenity) getArguments().getSerializable(KEY_AMENITY);
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
boolean isLightTheme = ((OsmandApplication) getActivity().getApplication())
.getSettings().OSMAND_THEME.get() == OsmandSettings.OSMAND_LIGHT_THEME;
int themeId = isLightTheme ? R.style.OsmandLightTheme : R.style.OsmandDarkTheme;
setStyle(STYLE_NO_FRAME, themeId);
}
@TargetApi(Build.VERSION_CODES.HONEYCOMB)
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
@ -334,10 +349,17 @@ public class EditPoiFragment extends Fragment {
return view;
}
private void tryAddTag(String key, String value) {
if (!Algorithms.isEmpty(value)) {
editPoiData.tags.add(new Tag(key, value));
}
@Override
public void onResume() {
super.onResume();
// Do not forget to unregister
((OnBackPressedProvider) getActivity()).setmOnBackPressedListener(this);
}
@Override
public void onPause() {
super.onPause();
((OnBackPressedProvider) getActivity()).setmOnBackPressedListener(null);
}
@Override
@ -346,6 +368,17 @@ public class EditPoiFragment extends Fragment {
super.onSaveInstanceState(outState);
}
@Override
public void onBackPressed() {
new AreYouSureDialogFrgament().show(getChildFragmentManager(), "AreYouSureDialogFrgament");
}
private void tryAddTag(String key, String value) {
if (!Algorithms.isEmpty(value)) {
editPoiData.tags.add(new Tag(key, value));
}
}
public static EditPoiFragment createAddPoiInstance(double latitude, double longitude,
OsmandApplication application) {
Node node = new Node(latitude, longitude, -1);
@ -556,4 +589,22 @@ public class EditPoiFragment extends Fragment {
"DeletePoiDialogFragment");
}
}
public static class AreYouSureDialogFrgament extends DialogFragment {
@NonNull
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
builder.setTitle("Are you sure?")
.setMessage("Any unsaved changes will be lost. Continue?")
.setPositiveButton(R.string.shared_string_ok, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
((DialogFragment) getParentFragment()).dismiss();
}
})
.setNegativeButton(R.string.shared_string_cancel, null);
return super.onCreateDialog(savedInstanceState);
}
}
}

View file

@ -1,6 +1,19 @@
package net.osmand.plus.osmedit;
import java.util.List;
import android.app.Activity;
import android.app.AlertDialog;
import android.app.AlertDialog.Builder;
import android.content.Context;
import android.content.DialogInterface;
import android.content.DialogInterface.OnClickListener;
import android.content.Intent;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.EditText;
import android.widget.Spinner;
import android.widget.Toast;
import net.osmand.PlatformUtil;
import net.osmand.access.AccessibleToast;
@ -24,20 +37,7 @@ import net.osmand.util.Algorithms;
import org.apache.commons.logging.Log;
import android.app.Activity;
import android.app.AlertDialog;
import android.app.AlertDialog.Builder;
import android.content.Context;
import android.content.DialogInterface;
import android.content.DialogInterface.OnClickListener;
import android.content.Intent;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.EditText;
import android.widget.Spinner;
import android.widget.Toast;
import java.util.List;
public class OsmEditingPlugin extends OsmandPlugin {
@ -158,10 +158,8 @@ public class OsmEditingPlugin extends OsmandPlugin {
EditPoiFragment editPoiFragment =
EditPoiFragment.createAddPoiInstance(latitude, longitude,
mapActivity.getMyApplication());
mapActivity.getSupportFragmentManager().beginTransaction()
.add(R.id.fragmentContainer, editPoiFragment, EditPoiFragment.TAG)
.addToBackStack(null)
.commit();
editPoiFragment.show(mapActivity.getSupportFragmentManager(),
EditPoiFragment.TAG);
} else if (resId == R.string.context_menu_item_open_bug) {
if (osmBugsLayer == null) {
registerLayers(mapActivity);