Merge remote-tracking branch 'origin/master'
This commit is contained in:
commit
3f04a79754
24 changed files with 380 additions and 102 deletions
37
OsmAnd/res/layout-land/dashboard_over_map.xml
Normal file
37
OsmAnd/res/layout-land/dashboard_over_map.xml
Normal file
|
@ -0,0 +1,37 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<FrameLayout
|
||||||
|
android:id="@+id/dashboard"
|
||||||
|
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent"
|
||||||
|
android:orientation="vertical"
|
||||||
|
android:background="#70000000"
|
||||||
|
android:visibility="gone">
|
||||||
|
|
||||||
|
<LinearLayout android:orientation="vertical"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_gravity="end"
|
||||||
|
android:layout_height="match_parent">
|
||||||
|
|
||||||
|
<include android:id="@+id/init_progress"
|
||||||
|
layout="@layout/application_loading"/>
|
||||||
|
|
||||||
|
<net.osmand.plus.dashboard.NotifyingScrollView xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
android:layout_width="360dp"
|
||||||
|
android:layout_height="match_parent"
|
||||||
|
android:id="@+id/main_scroll"
|
||||||
|
android:fadeScrollbars="true">
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:id="@+id/content"
|
||||||
|
android:paddingTop="@dimen/dashboard_map_top_padding"
|
||||||
|
android:paddingBottom="@dimen/dashboard_map_bottom_padding"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:orientation="vertical"/>
|
||||||
|
|
||||||
|
</net.osmand.plus.dashboard.NotifyingScrollView>
|
||||||
|
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
</FrameLayout>
|
25
OsmAnd/res/layout/application_loading.xml
Normal file
25
OsmAnd/res/layout/application_loading.xml
Normal file
|
@ -0,0 +1,25 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
android:id="@+id/loading"
|
||||||
|
android:background="?attr/card_bg"
|
||||||
|
android:layout_width="fill_parent"
|
||||||
|
android:layout_height="@dimen/dashMapHeight"
|
||||||
|
android:gravity="center_vertical|center_horizontal"
|
||||||
|
android:orientation="horizontal">
|
||||||
|
|
||||||
|
|
||||||
|
<ProgressBar
|
||||||
|
android:id="@+id/ProgressBar"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"/>
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/ProgressMessage"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:maxLines="3"
|
||||||
|
android:textColor="@color/icon_color_light"
|
||||||
|
android:text="@string/loading_data"
|
||||||
|
android:textSize="@dimen/dashProgressTextSize"/>
|
||||||
|
|
||||||
|
</LinearLayout>
|
|
@ -6,26 +6,7 @@
|
||||||
android:layout_width="fill_parent"
|
android:layout_width="fill_parent"
|
||||||
android:layout_height="wrap_content">
|
android:layout_height="wrap_content">
|
||||||
|
|
||||||
<LinearLayout android:id="@+id/loading"
|
<include layout="@layout/application_loading"/>
|
||||||
android:layout_width="fill_parent"
|
|
||||||
android:layout_height="@dimen/dashMapHeight"
|
|
||||||
android:gravity="center_vertical|center_horizontal"
|
|
||||||
android:orientation="horizontal">
|
|
||||||
|
|
||||||
<ProgressBar
|
|
||||||
android:id="@+id/ProgressBar"
|
|
||||||
android:layout_width="wrap_content"
|
|
||||||
android:layout_height="wrap_content"/>
|
|
||||||
|
|
||||||
<TextView
|
|
||||||
android:id="@+id/ProgressMessage"
|
|
||||||
android:layout_width="wrap_content"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:maxLines="3"
|
|
||||||
android:textColor="@color/icon_color_light"
|
|
||||||
android:text="@string/loading_data"
|
|
||||||
android:textSize="@dimen/dashProgressTextSize"/>
|
|
||||||
</LinearLayout>
|
|
||||||
|
|
||||||
<ImageView android:id="@+id/map_image"
|
<ImageView android:id="@+id/map_image"
|
||||||
android:scaleType="centerCrop"
|
android:scaleType="centerCrop"
|
||||||
|
|
|
@ -8,13 +8,18 @@
|
||||||
android:background="#70000000"
|
android:background="#70000000"
|
||||||
android:visibility="gone">
|
android:visibility="gone">
|
||||||
|
|
||||||
<LinearLayout android:orientation="vertical"
|
<RelativeLayout android:orientation="vertical"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_gravity="end"
|
android:layout_gravity="end"
|
||||||
android:layout_height="match_parent">
|
android:layout_height="match_parent">
|
||||||
|
|
||||||
|
<include android:layout_height="@dimen/dashMapHeight"
|
||||||
|
android:layout_width="@dimen/dashboard_map_width"
|
||||||
|
android:id="@+id/init_progress"
|
||||||
|
layout="@layout/application_loading"/>
|
||||||
|
|
||||||
<net.osmand.plus.dashboard.NotifyingScrollView xmlns:android="http://schemas.android.com/apk/res/android"
|
<net.osmand.plus.dashboard.NotifyingScrollView xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
android:layout_width="360dp"
|
android:layout_width="@dimen/dashboard_map_width"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
android:id="@+id/main_scroll"
|
android:id="@+id/main_scroll"
|
||||||
android:fadeScrollbars="true">
|
android:fadeScrollbars="true">
|
||||||
|
@ -29,6 +34,6 @@
|
||||||
|
|
||||||
</net.osmand.plus.dashboard.NotifyingScrollView>
|
</net.osmand.plus.dashboard.NotifyingScrollView>
|
||||||
|
|
||||||
</LinearLayout>
|
</RelativeLayout>
|
||||||
|
|
||||||
</FrameLayout>
|
</FrameLayout>
|
|
@ -2047,8 +2047,8 @@ Afghanistan, Ägypten, Albanien, Algerien, Andorra, Angola, Anguilla, Antigua an
|
||||||
<string name="proxy_host_descr">Einen Proxy\'s Hostname einrichten (Bsp. 127.0.0.1)</string>
|
<string name="proxy_host_descr">Einen Proxy\'s Hostname einrichten (Bsp. 127.0.0.1)</string>
|
||||||
<string name="proxy_port_title">Proxy-Port</string>
|
<string name="proxy_port_title">Proxy-Port</string>
|
||||||
<string name="proxy_port_descr">Einen Proxy\'s Port einrichten (Bsp. 8118)</string>
|
<string name="proxy_port_descr">Einen Proxy\'s Port einrichten (Bsp. 8118)</string>
|
||||||
<string name="enable_plugin">Deaktivieren</string>
|
<string name="enable_plugin">Deaktiviert</string>
|
||||||
<string name="disable_plugin">Aktivieren</string>
|
<string name="disable_plugin">Aktiviert</string>
|
||||||
<string name="enable_plugin2">Aktivieren</string>
|
<string name="enable_plugin2">Aktivieren</string>
|
||||||
<string name="disable_plugin2">Deaktivieren</string>
|
<string name="disable_plugin2">Deaktivieren</string>
|
||||||
<string name="plugin_description_title">Beschreibung</string>
|
<string name="plugin_description_title">Beschreibung</string>
|
||||||
|
|
|
@ -2,4 +2,5 @@
|
||||||
<resources>
|
<resources>
|
||||||
<dimen name="dashboard_map_top_padding">0dp</dimen>
|
<dimen name="dashboard_map_top_padding">0dp</dimen>
|
||||||
<dimen name="dashboard_map_bottom_padding">0dp</dimen>
|
<dimen name="dashboard_map_bottom_padding">0dp</dimen>
|
||||||
|
<dimen name="dashMapHeight">125dp</dimen>
|
||||||
</resources>
|
</resources>
|
|
@ -44,7 +44,7 @@
|
||||||
<dimen name="gpx_small_text_margin">14dp</dimen>
|
<dimen name="gpx_small_text_margin">14dp</dimen>
|
||||||
<dimen name="gpx_text_top_margin">6dp</dimen>
|
<dimen name="gpx_text_top_margin">6dp</dimen>
|
||||||
<dimen name="dashboard_map_width">360dp</dimen>
|
<dimen name="dashboard_map_width">360dp</dimen>
|
||||||
<dimen name="dashboard_map_top_padding">200dp</dimen>
|
<dimen name="dashboard_map_top_padding">@dimen/dashMapHeight</dimen>
|
||||||
<dimen name="dashboard_map_bottom_padding">90dp</dimen>
|
<dimen name="dashboard_map_bottom_padding">90dp</dimen>
|
||||||
|
|
||||||
<!-- TextSizes -->
|
<!-- TextSizes -->
|
||||||
|
|
|
@ -9,6 +9,7 @@
|
||||||
3. All your modified/created strings are in the top of the file (to make easier find what\'s translated).
|
3. All your modified/created strings are in the top of the file (to make easier find what\'s translated).
|
||||||
PLEASE: Have a look at http://code.google.com/p/osmand/wiki/UIConsistency, it may really improve your and our work :-) Thx - Hardy
|
PLEASE: Have a look at http://code.google.com/p/osmand/wiki/UIConsistency, it may really improve your and our work :-) Thx - Hardy
|
||||||
-->
|
-->
|
||||||
|
<string name="route_points">Route points</string>
|
||||||
<string name="track_segments">Track segments</string>
|
<string name="track_segments">Track segments</string>
|
||||||
<string name="track_points">Track points</string>
|
<string name="track_points">Track points</string>
|
||||||
<string name="online_map_settings">Online maps</string>
|
<string name="online_map_settings">Online maps</string>
|
||||||
|
|
|
@ -26,7 +26,9 @@ public class PointDescription {
|
||||||
public static final String POINT_TYPE_ADDRESS = "address";
|
public static final String POINT_TYPE_ADDRESS = "address";
|
||||||
public static final String POINT_TYPE_OSM_NOTE= "osm_note";
|
public static final String POINT_TYPE_OSM_NOTE= "osm_note";
|
||||||
public static final String POINT_TYPE_MARKER = "marker";
|
public static final String POINT_TYPE_MARKER = "marker";
|
||||||
public static final String POINT_TYPE_NOTE = "avnote";
|
public static final String POINT_TYPE_AUDIO_NOTE = "audionote";
|
||||||
|
public static final String POINT_TYPE_VIDEO_NOTE = "videonote";
|
||||||
|
public static final String POINT_TYPE_PHOTO_NOTE = "photonote";
|
||||||
public static final String POINT_TYPE_LOCATION = "location";
|
public static final String POINT_TYPE_LOCATION = "location";
|
||||||
public static final String POINT_TYPE_ALARM = "alarm";
|
public static final String POINT_TYPE_ALARM = "alarm";
|
||||||
public static final String POINT_TYPE_TARGET = "destination";
|
public static final String POINT_TYPE_TARGET = "destination";
|
||||||
|
@ -51,6 +53,14 @@ public class PointDescription {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void setTypeName(String typeName){
|
||||||
|
this.typeName = typeName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setName(String name){
|
||||||
|
this.name = name;
|
||||||
|
}
|
||||||
|
|
||||||
public String getTypeName() {
|
public String getTypeName() {
|
||||||
return typeName;
|
return typeName;
|
||||||
}
|
}
|
||||||
|
@ -111,10 +121,19 @@ public class PointDescription {
|
||||||
return POINT_TYPE_FAVORITE.equals(type);
|
return POINT_TYPE_FAVORITE.equals(type);
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean isAvNote() {
|
public boolean isAudioNote() {
|
||||||
return POINT_TYPE_NOTE.equals(type);
|
return POINT_TYPE_AUDIO_NOTE.equals(type);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public boolean isVideoNote() {
|
||||||
|
return POINT_TYPE_VIDEO_NOTE.equals(type);
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean isPhotoNote() {
|
||||||
|
return POINT_TYPE_PHOTO_NOTE.equals(type);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public int hashCode() {
|
public int hashCode() {
|
||||||
final int prime = 31;
|
final int prime = 31;
|
||||||
|
|
|
@ -26,6 +26,7 @@ import android.view.Window;
|
||||||
import android.view.WindowManager;
|
import android.view.WindowManager;
|
||||||
import android.widget.FrameLayout;
|
import android.widget.FrameLayout;
|
||||||
import android.widget.ProgressBar;
|
import android.widget.ProgressBar;
|
||||||
|
import android.widget.TextView;
|
||||||
import android.widget.Toast;
|
import android.widget.Toast;
|
||||||
|
|
||||||
import net.osmand.Location;
|
import net.osmand.Location;
|
||||||
|
@ -156,7 +157,18 @@ public class MapActivity extends AccessibleActivity {
|
||||||
|
|
||||||
startProgressDialog = new ProgressDialog(this);
|
startProgressDialog = new ProgressDialog(this);
|
||||||
startProgressDialog.setCancelable(true);
|
startProgressDialog.setCancelable(true);
|
||||||
app.checkApplicationIsBeingInitialized(this, startProgressDialog);
|
if (getMyApplication().isApplicationInitializing()) {
|
||||||
|
getMyApplication().checkApplicationIsBeingInitialized(this, (TextView) findViewById(R.id.ProgressMessage),
|
||||||
|
(ProgressBar) findViewById(R.id.ProgressBar), new Runnable() {
|
||||||
|
@Override
|
||||||
|
public void run() {
|
||||||
|
applicationInitialized();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
applicationInitialized();
|
||||||
|
}
|
||||||
|
//app.checkApplicationIsBeingInitialized(this, null);
|
||||||
|
|
||||||
|
|
||||||
parseLaunchIntentLocation();
|
parseLaunchIntentLocation();
|
||||||
|
@ -242,6 +254,10 @@ public class MapActivity extends AccessibleActivity {
|
||||||
wakeLockHelper = new WakeLockHelper(getMyApplication());
|
wakeLockHelper = new WakeLockHelper(getMyApplication());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void applicationInitialized() {
|
||||||
|
findViewById(R.id.init_progress).setVisibility(View.GONE);
|
||||||
|
}
|
||||||
|
|
||||||
public void addLockView(FrameLayout lockView) {
|
public void addLockView(FrameLayout lockView) {
|
||||||
this.lockView = lockView;
|
this.lockView = lockView;
|
||||||
}
|
}
|
||||||
|
|
|
@ -10,10 +10,12 @@ import java.util.List;
|
||||||
|
|
||||||
import net.osmand.plus.GPXUtilities;
|
import net.osmand.plus.GPXUtilities;
|
||||||
import net.osmand.plus.GPXUtilities.GPXFile;
|
import net.osmand.plus.GPXUtilities.GPXFile;
|
||||||
|
import net.osmand.plus.GpxSelectionHelper;
|
||||||
import net.osmand.plus.OsmandApplication;
|
import net.osmand.plus.OsmandApplication;
|
||||||
import net.osmand.plus.R;
|
import net.osmand.plus.R;
|
||||||
import net.osmand.plus.myplaces.SelectedGPXFragment;
|
import net.osmand.plus.myplaces.SelectedGPXFragment;
|
||||||
import net.osmand.plus.myplaces.TrackPointFragment;
|
import net.osmand.plus.myplaces.TrackPointFragment;
|
||||||
|
import net.osmand.plus.myplaces.TrackRoutePointFragment;
|
||||||
import net.osmand.plus.myplaces.TrackSegmentFragment;
|
import net.osmand.plus.myplaces.TrackSegmentFragment;
|
||||||
import net.osmand.plus.views.controls.PagerSlidingTabStrip;
|
import net.osmand.plus.views.controls.PagerSlidingTabStrip;
|
||||||
import android.content.Intent;
|
import android.content.Intent;
|
||||||
|
@ -23,6 +25,7 @@ import android.support.v4.app.Fragment;
|
||||||
import android.support.v4.view.ViewPager;
|
import android.support.v4.view.ViewPager;
|
||||||
import android.support.v7.widget.Toolbar;
|
import android.support.v7.widget.Toolbar;
|
||||||
import android.util.Log;
|
import android.util.Log;
|
||||||
|
import android.view.Menu;
|
||||||
import android.view.MenuItem;
|
import android.view.MenuItem;
|
||||||
import android.view.View;
|
import android.view.View;
|
||||||
|
|
||||||
|
@ -36,6 +39,7 @@ public class TrackActivity extends TabActivity {
|
||||||
protected List<WeakReference<Fragment>> fragList = new ArrayList<WeakReference<Fragment>>();
|
protected List<WeakReference<Fragment>> fragList = new ArrayList<WeakReference<Fragment>>();
|
||||||
private File file = null;
|
private File file = null;
|
||||||
private GPXFile result;
|
private GPXFile result;
|
||||||
|
ViewPager mViewPager;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onCreate(Bundle icicle) {
|
public void onCreate(Bundle icicle) {
|
||||||
|
@ -56,7 +60,7 @@ public class TrackActivity extends TabActivity {
|
||||||
|
|
||||||
PagerSlidingTabStrip mSlidingTabLayout = (PagerSlidingTabStrip) findViewById(R.id.sliding_tabs);
|
PagerSlidingTabStrip mSlidingTabLayout = (PagerSlidingTabStrip) findViewById(R.id.sliding_tabs);
|
||||||
|
|
||||||
final ViewPager mViewPager = (ViewPager) findViewById(R.id.pager);
|
mViewPager = (ViewPager) findViewById(R.id.pager);
|
||||||
|
|
||||||
setViewPagerAdapter(mViewPager, new ArrayList<TabActivity.TabItem>());
|
setViewPagerAdapter(mViewPager, new ArrayList<TabActivity.TabItem>());
|
||||||
mSlidingTabLayout.setViewPager(mViewPager);
|
mSlidingTabLayout.setViewPager(mViewPager);
|
||||||
|
@ -73,14 +77,19 @@ public class TrackActivity extends TabActivity {
|
||||||
}
|
}
|
||||||
protected void onPostExecute(GPXFile result) {
|
protected void onPostExecute(GPXFile result) {
|
||||||
setSupportProgressBarIndeterminateVisibility(false);
|
setSupportProgressBarIndeterminateVisibility(false);
|
||||||
// List<TabItem> items = new ArrayList<TabActivity.TabItem>();
|
|
||||||
// items.add(getTabIndicator(R.string.selected_track, SelectedGPXFragment.class));
|
|
||||||
setResult(result);
|
setResult(result);
|
||||||
((OsmandFragmentPagerAdapter) mViewPager.getAdapter()).addTab(
|
((OsmandFragmentPagerAdapter) mViewPager.getAdapter()).addTab(
|
||||||
getTabIndicator(R.string.track_segments, TrackSegmentFragment.class));
|
getTabIndicator(R.string.track_segments, TrackSegmentFragment.class));
|
||||||
|
if (isHavingTrackPoints()){
|
||||||
((OsmandFragmentPagerAdapter) mViewPager.getAdapter()).addTab(
|
((OsmandFragmentPagerAdapter) mViewPager.getAdapter()).addTab(
|
||||||
getTabIndicator(R.string.track_points, TrackPointFragment.class));
|
getTabIndicator(R.string.track_points, TrackPointFragment.class));
|
||||||
// setViewPagerAdapter(mViewPager, items );
|
}
|
||||||
|
if (isHavingRoutePoints()){
|
||||||
|
((OsmandFragmentPagerAdapter) mViewPager.getAdapter()).addTab(
|
||||||
|
getTabIndicator(R.string.route_points, TrackRoutePointFragment.class));
|
||||||
|
}
|
||||||
|
|
||||||
};
|
};
|
||||||
}.execute((Void)null);
|
}.execute((Void)null);
|
||||||
|
|
||||||
|
@ -122,10 +131,6 @@ public class TrackActivity extends TabActivity {
|
||||||
return tb;
|
return tb;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setToolbarVisibility(boolean visible){
|
|
||||||
findViewById(R.id.bottomControls).setVisibility(visible? View.VISIBLE : View.GONE);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean onOptionsItemSelected(MenuItem item) {
|
public boolean onOptionsItemSelected(MenuItem item) {
|
||||||
int itemId = item.getItemId();
|
int itemId = item.getItemId();
|
||||||
|
@ -138,5 +143,38 @@ public class TrackActivity extends TabActivity {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public List<GpxSelectionHelper.GpxDisplayGroup> getContent() {
|
||||||
|
GpxSelectionHelper selectedGpxHelper = getMyApplication().getSelectedGpxHelper();
|
||||||
|
List<GpxSelectionHelper.GpxDisplayGroup> displayGrous = new ArrayList<GpxSelectionHelper.GpxDisplayGroup>();
|
||||||
|
selectedGpxHelper.collectDisplayGroups(displayGrous, getResult());
|
||||||
|
return displayGrous;
|
||||||
|
}
|
||||||
|
|
||||||
|
boolean isHavingTrackPoints(){
|
||||||
|
List<GpxSelectionHelper.GpxDisplayGroup> groups = getContent();
|
||||||
|
for (GpxSelectionHelper.GpxDisplayGroup group : groups){
|
||||||
|
GpxSelectionHelper.GpxDisplayItemType type = group.getType();
|
||||||
|
if (type == GpxSelectionHelper.GpxDisplayItemType.TRACK_POINTS &&
|
||||||
|
!group.getModifiableList().isEmpty()){
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
boolean isHavingRoutePoints(){
|
||||||
|
List<GpxSelectionHelper.GpxDisplayGroup> groups = getContent();
|
||||||
|
for (GpxSelectionHelper.GpxDisplayGroup group : groups){
|
||||||
|
GpxSelectionHelper.GpxDisplayItemType type = group.getType();
|
||||||
|
if (type == GpxSelectionHelper.GpxDisplayItemType.TRACK_ROUTE_POINTS &&
|
||||||
|
!group.getModifiableList().isEmpty()){
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -82,7 +82,6 @@ public class SearchAddressFragment extends Fragment {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onCreateOptionsMenu(Menu onCreate, MenuInflater inflater) {
|
public void onCreateOptionsMenu(Menu onCreate, MenuInflater inflater) {
|
||||||
boolean light = getApplication().getSettings().isLightActionBar();
|
|
||||||
Menu menu = onCreate;
|
Menu menu = onCreate;
|
||||||
int orientation = ScreenOrientationHelper.getScreenOrientation(getActivity());
|
int orientation = ScreenOrientationHelper.getScreenOrientation(getActivity());
|
||||||
boolean portrait = orientation == ActivityInfo.SCREEN_ORIENTATION_PORTRAIT ||
|
boolean portrait = orientation == ActivityInfo.SCREEN_ORIENTATION_PORTRAIT ||
|
||||||
|
@ -93,7 +92,6 @@ public class SearchAddressFragment extends Fragment {
|
||||||
} else {
|
} else {
|
||||||
((SearchActivity) getActivity()).getClearToolbar(false);
|
((SearchActivity) getActivity()).getClearToolbar(false);
|
||||||
}
|
}
|
||||||
light = false;
|
|
||||||
}
|
}
|
||||||
if(getActivity() instanceof SearchAddressActivity) {
|
if(getActivity() instanceof SearchAddressActivity) {
|
||||||
MenuItem menuItem = menu.add(0, SELECT_POINT, 0, "");
|
MenuItem menuItem = menu.add(0, SELECT_POINT, 0, "");
|
||||||
|
@ -353,21 +351,31 @@ public class SearchAddressFragment extends Fragment {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
AddressInformation ai = new AddressInformation();
|
AddressInformation ai = new AddressInformation();
|
||||||
|
PointDescription pointDescription = ai.getHistoryName();
|
||||||
if (!Algorithms.isEmpty(street2) && !Algorithms.isEmpty(street)) {
|
if (!Algorithms.isEmpty(street2) && !Algorithms.isEmpty(street)) {
|
||||||
ai = AddressInformation.build2StreetIntersection(getActivity(), osmandSettings);
|
ai = AddressInformation.build2StreetIntersection(getActivity(), osmandSettings);
|
||||||
|
pointDescription.setName(street2);
|
||||||
|
pointDescription.setTypeName(region + ", " + city);
|
||||||
} else if (!Algorithms.isEmpty(building)) {
|
} else if (!Algorithms.isEmpty(building)) {
|
||||||
ai = AddressInformation.buildBuilding(getActivity(), osmandSettings);
|
ai = AddressInformation.buildBuilding(getActivity(), osmandSettings);
|
||||||
|
pointDescription.setName(street + ", " + building);
|
||||||
|
pointDescription.setTypeName(region + ", " + city);
|
||||||
} else if (!Algorithms.isEmpty(street)) {
|
} else if (!Algorithms.isEmpty(street)) {
|
||||||
ai = AddressInformation.buildStreet(getActivity(), osmandSettings);
|
ai = AddressInformation.buildStreet(getActivity(), osmandSettings);
|
||||||
|
pointDescription.setName(street);
|
||||||
|
pointDescription.setTypeName(region + ", " + city);
|
||||||
} else if(!Algorithms.isEmpty(city)) {
|
} else if(!Algorithms.isEmpty(city)) {
|
||||||
ai = AddressInformation.buildCity(getActivity(), osmandSettings);
|
ai = AddressInformation.buildCity(getActivity(), osmandSettings);
|
||||||
|
pointDescription.setName(city);
|
||||||
|
pointDescription.setTypeName(region);
|
||||||
}
|
}
|
||||||
|
|
||||||
if(mode == ADD_TO_FAVORITE) {
|
if(mode == ADD_TO_FAVORITE) {
|
||||||
Bundle b = new Bundle();
|
Bundle b = new Bundle();
|
||||||
Dialog dlg = FavoriteDialogs.createAddFavouriteDialog(getActivity(), b);
|
Dialog dlg = FavoriteDialogs.createAddFavouriteDialog(getActivity(), b);
|
||||||
dlg.show();
|
dlg.show();
|
||||||
FavoriteDialogs.prepareAddFavouriteDialog(getActivity(), dlg, b, searchPoint.getLatitude(), searchPoint.getLongitude(),
|
FavoriteDialogs.prepareAddFavouriteDialog(getActivity(), dlg, b, searchPoint.getLatitude(), searchPoint.getLongitude(),
|
||||||
ai.getHistoryName());
|
pointDescription);
|
||||||
} else if(mode == SELECT_POINT ){
|
} else if(mode == SELECT_POINT ){
|
||||||
Intent intent = getActivity().getIntent();
|
Intent intent = getActivity().getIntent();
|
||||||
intent.putExtra(SELECT_ADDRESS_POINT_INTENT_KEY, ai.objectName);
|
intent.putExtra(SELECT_ADDRESS_POINT_INTENT_KEY, ai.objectName);
|
||||||
|
@ -377,11 +385,11 @@ public class SearchAddressFragment extends Fragment {
|
||||||
getActivity().finish();
|
getActivity().finish();
|
||||||
} else {
|
} else {
|
||||||
if (mode == NAVIGATE_TO) {
|
if (mode == NAVIGATE_TO) {
|
||||||
DirectionsDialogs.directionsToDialogAndLaunchMap(getActivity(), searchPoint.getLatitude(), searchPoint.getLongitude(), ai.getHistoryName());
|
DirectionsDialogs.directionsToDialogAndLaunchMap(getActivity(), searchPoint.getLatitude(), searchPoint.getLongitude(), pointDescription);
|
||||||
} else if (mode == ADD_WAYPOINT) {
|
} else if (mode == ADD_WAYPOINT) {
|
||||||
DirectionsDialogs.addWaypointDialogAndLaunchMap(getActivity(), searchPoint.getLatitude(), searchPoint.getLongitude(), ai.getHistoryName());
|
DirectionsDialogs.addWaypointDialogAndLaunchMap(getActivity(), searchPoint.getLatitude(), searchPoint.getLongitude(), pointDescription);
|
||||||
} else if (mode == SHOW_ON_MAP) {
|
} else if (mode == SHOW_ON_MAP) {
|
||||||
osmandSettings.setMapLocationToShow(searchPoint.getLatitude(), searchPoint.getLongitude(), ai.zoom, ai.getHistoryName());
|
osmandSettings.setMapLocationToShow(searchPoint.getLatitude(), searchPoint.getLongitude(), ai.zoom, pointDescription);
|
||||||
MapActivity.launchMapActivityMoveToTop(getActivity());
|
MapActivity.launchMapActivityMoveToTop(getActivity());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -48,7 +48,9 @@ public class SearchHistoryFragment extends ListFragment implements SearchActivit
|
||||||
private Drawable locationIcon;
|
private Drawable locationIcon;
|
||||||
private Drawable poiIcon;
|
private Drawable poiIcon;
|
||||||
private Drawable wptIcon;
|
private Drawable wptIcon;
|
||||||
private Drawable noteIcon;
|
private Drawable audioNoteIcon;
|
||||||
|
private Drawable videoNoteIcon;
|
||||||
|
private Drawable photoNoteIcon;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
|
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
|
||||||
|
@ -72,8 +74,10 @@ public class SearchHistoryFragment extends ListFragment implements SearchActivit
|
||||||
favoriteIcon = getResources().getDrawable(R.drawable.ic_type_favorites);
|
favoriteIcon = getResources().getDrawable(R.drawable.ic_type_favorites);
|
||||||
locationIcon = getResources().getDrawable(R.drawable.ic_type_coordinates);
|
locationIcon = getResources().getDrawable(R.drawable.ic_type_coordinates);
|
||||||
poiIcon = getResources().getDrawable(R.drawable.ic_type_info);
|
poiIcon = getResources().getDrawable(R.drawable.ic_type_info);
|
||||||
wptIcon = getResources().getDrawable(R.drawable.ic_action_flage_dark);
|
wptIcon = getResources().getDrawable(R.drawable.ic_type_waypoint);
|
||||||
noteIcon = getResources().getDrawable(R.drawable.ic_action_note_dark);
|
audioNoteIcon = getResources().getDrawable(R.drawable.ic_type_audio);
|
||||||
|
videoNoteIcon = getResources().getDrawable(R.drawable.ic_type_video);
|
||||||
|
photoNoteIcon = getResources().getDrawable(R.drawable.ic_type_img);
|
||||||
if (getMyApplication().getSettings().isLightContent()) {
|
if (getMyApplication().getSettings().isLightContent()) {
|
||||||
addressIcon = addressIcon.mutate();
|
addressIcon = addressIcon.mutate();
|
||||||
addressIcon.setColorFilter(getResources().getColor(R.color.icon_color_light), PorterDuff.Mode.MULTIPLY);
|
addressIcon.setColorFilter(getResources().getColor(R.color.icon_color_light), PorterDuff.Mode.MULTIPLY);
|
||||||
|
@ -85,8 +89,12 @@ public class SearchHistoryFragment extends ListFragment implements SearchActivit
|
||||||
poiIcon.setColorFilter(getResources().getColor(R.color.icon_color_light), PorterDuff.Mode.MULTIPLY);
|
poiIcon.setColorFilter(getResources().getColor(R.color.icon_color_light), PorterDuff.Mode.MULTIPLY);
|
||||||
wptIcon = wptIcon.mutate();
|
wptIcon = wptIcon.mutate();
|
||||||
wptIcon.setColorFilter(getResources().getColor(R.color.icon_color_light), PorterDuff.Mode.MULTIPLY);
|
wptIcon.setColorFilter(getResources().getColor(R.color.icon_color_light), PorterDuff.Mode.MULTIPLY);
|
||||||
noteIcon = noteIcon.mutate();
|
audioNoteIcon = audioNoteIcon.mutate();
|
||||||
noteIcon.setColorFilter(getResources().getColor(R.color.icon_color_light), PorterDuff.Mode.MULTIPLY);
|
audioNoteIcon.setColorFilter(getResources().getColor(R.color.icon_color_light), PorterDuff.Mode.MULTIPLY);
|
||||||
|
videoNoteIcon = videoNoteIcon.mutate();
|
||||||
|
videoNoteIcon.setColorFilter(getResources().getColor(R.color.icon_color_light), PorterDuff.Mode.MULTIPLY);
|
||||||
|
photoNoteIcon = photoNoteIcon.mutate();
|
||||||
|
photoNoteIcon.setColorFilter(getResources().getColor(R.color.icon_color_light), PorterDuff.Mode.MULTIPLY);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -224,8 +232,12 @@ public class SearchHistoryFragment extends ListFragment implements SearchActivit
|
||||||
icon.setImageDrawable(poiIcon);
|
icon.setImageDrawable(poiIcon);
|
||||||
} else if (historyEntry.getName().isWpt()) {
|
} else if (historyEntry.getName().isWpt()) {
|
||||||
icon.setImageDrawable(wptIcon);
|
icon.setImageDrawable(wptIcon);
|
||||||
} else if (historyEntry.getName().isAvNote()) {
|
} else if (historyEntry.getName().isAudioNote()) {
|
||||||
icon.setImageDrawable(noteIcon);
|
icon.setImageDrawable(audioNoteIcon);
|
||||||
|
} else if (historyEntry.getName().isVideoNote()) {
|
||||||
|
icon.setImageDrawable(videoNoteIcon);
|
||||||
|
}else if (historyEntry.getName().isPhotoNote()) {
|
||||||
|
icon.setImageDrawable(photoNoteIcon);
|
||||||
} else {
|
} else {
|
||||||
icon.setImageDrawable(addressIcon);
|
icon.setImageDrawable(addressIcon);
|
||||||
}
|
}
|
||||||
|
|
|
@ -170,10 +170,11 @@ public class AudioNotesLayer extends OsmandMapLayer implements IContextMenuProvi
|
||||||
@Override
|
@Override
|
||||||
public PointDescription getObjectName(Object o) {
|
public PointDescription getObjectName(Object o) {
|
||||||
if(o instanceof Recording){
|
if(o instanceof Recording){
|
||||||
if(((Recording)o).getName(activity).isEmpty()) {
|
Recording rec = (Recording) o;
|
||||||
return new PointDescription(PointDescription.POINT_TYPE_NOTE, view.getResources().getString(R.string.recording_default_name));
|
if(rec.getName(activity).isEmpty()) {
|
||||||
|
return new PointDescription(rec.getSearchHistoryType(), view.getResources().getString(R.string.recording_default_name));
|
||||||
}
|
}
|
||||||
return new PointDescription(PointDescription.POINT_TYPE_NOTE, ((Recording)o).getName(activity));
|
return new PointDescription(rec.getSearchHistoryType(), ((Recording)o).getName(activity));
|
||||||
}
|
}
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
|
@ -21,6 +21,7 @@ import net.osmand.PlatformUtil;
|
||||||
import net.osmand.access.AccessibleAlertBuilder;
|
import net.osmand.access.AccessibleAlertBuilder;
|
||||||
import net.osmand.access.AccessibleToast;
|
import net.osmand.access.AccessibleToast;
|
||||||
import net.osmand.data.DataTileManager;
|
import net.osmand.data.DataTileManager;
|
||||||
|
import net.osmand.data.PointDescription;
|
||||||
import net.osmand.plus.ApplicationMode;
|
import net.osmand.plus.ApplicationMode;
|
||||||
import net.osmand.plus.ContextMenuAdapter;
|
import net.osmand.plus.ContextMenuAdapter;
|
||||||
import net.osmand.plus.ContextMenuAdapter.OnContextMenuClick;
|
import net.osmand.plus.ContextMenuAdapter.OnContextMenuClick;
|
||||||
|
@ -213,6 +214,16 @@ public class AudioVideoNotesPlugin extends OsmandPlugin {
|
||||||
return "";
|
return "";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public String getSearchHistoryType(){
|
||||||
|
if (isPhoto()){
|
||||||
|
return PointDescription.POINT_TYPE_PHOTO_NOTE;
|
||||||
|
} else if (isVideo()) {
|
||||||
|
return PointDescription.POINT_TYPE_VIDEO_NOTE;
|
||||||
|
} else {
|
||||||
|
return PointDescription.POINT_TYPE_PHOTO_NOTE;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public boolean isPhoto() {
|
public boolean isPhoto() {
|
||||||
return file.getName().endsWith(IMG_EXTENSION);
|
return file.getName().endsWith(IMG_EXTENSION);
|
||||||
}
|
}
|
||||||
|
|
|
@ -15,7 +15,9 @@ import android.app.Activity;
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.content.Intent;
|
import android.content.Intent;
|
||||||
import android.graphics.Color;
|
import android.graphics.Color;
|
||||||
|
import android.graphics.PorterDuff;
|
||||||
import android.graphics.Typeface;
|
import android.graphics.Typeface;
|
||||||
|
import android.graphics.drawable.Drawable;
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import android.support.annotation.Nullable;
|
import android.support.annotation.Nullable;
|
||||||
import android.view.LayoutInflater;
|
import android.view.LayoutInflater;
|
||||||
|
@ -101,7 +103,8 @@ public class DashAudioVideoNotesFragment extends DashBaseFragment {
|
||||||
LayoutInflater inflater = getActivity().getLayoutInflater();
|
LayoutInflater inflater = getActivity().getLayoutInflater();
|
||||||
View view = inflater.inflate(R.layout.note, null, false);
|
View view = inflater.inflate(R.layout.note, null, false);
|
||||||
|
|
||||||
getNoteView(recording, view, getActivity());
|
Drawable icon =getNoteView(recording, view, getActivity());
|
||||||
|
icon.setColorFilter(getResources().getColor(R.color.color_distance), PorterDuff.Mode.MULTIPLY);
|
||||||
view.setBackgroundColor(Color.TRANSPARENT);
|
view.setBackgroundColor(Color.TRANSPARENT);
|
||||||
view.findViewById(R.id.play).setOnClickListener(new View.OnClickListener() {
|
view.findViewById(R.id.play).setOnClickListener(new View.OnClickListener() {
|
||||||
@Override
|
@Override
|
||||||
|
@ -115,7 +118,7 @@ public class DashAudioVideoNotesFragment extends DashBaseFragment {
|
||||||
@Override
|
@Override
|
||||||
public void onClick(View v) {
|
public void onClick(View v) {
|
||||||
getMyApplication().getSettings().setMapLocationToShow(recording.getLatitude(), recording.getLongitude(), 15,
|
getMyApplication().getSettings().setMapLocationToShow(recording.getLatitude(), recording.getLongitude(), 15,
|
||||||
new PointDescription(PointDescription.POINT_TYPE_NOTE,
|
new PointDescription(recording.getSearchHistoryType(),
|
||||||
recording.getName(getActivity())), true,
|
recording.getName(getActivity())), true,
|
||||||
recording); //$NON-NLS-1$
|
recording); //$NON-NLS-1$
|
||||||
MapActivity.launchMapActivityMoveToTop(getActivity());
|
MapActivity.launchMapActivityMoveToTop(getActivity());
|
||||||
|
@ -125,7 +128,7 @@ public class DashAudioVideoNotesFragment extends DashBaseFragment {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void getNoteView(final AudioVideoNotesPlugin.Recording recording, View view,
|
public static Drawable getNoteView(final AudioVideoNotesPlugin.Recording recording, View view,
|
||||||
final Context ctx) {
|
final Context ctx) {
|
||||||
String name = recording.getName(ctx);
|
String name = recording.getName(ctx);
|
||||||
TextView nameText = ((TextView) view.findViewById(R.id.name));
|
TextView nameText = ((TextView) view.findViewById(R.id.name));
|
||||||
|
@ -133,14 +136,16 @@ public class DashAudioVideoNotesFragment extends DashBaseFragment {
|
||||||
((TextView) view.findViewById(R.id.descr)).setText(recording.getDescription(ctx));
|
((TextView) view.findViewById(R.id.descr)).setText(recording.getDescription(ctx));
|
||||||
|
|
||||||
ImageView icon = (ImageView) view.findViewById(R.id.icon);
|
ImageView icon = (ImageView) view.findViewById(R.id.icon);
|
||||||
|
Drawable iconDrawable;
|
||||||
if (recording.isAudio()) {
|
if (recording.isAudio()) {
|
||||||
icon.setImageResource(R.drawable.ic_type_audio);
|
iconDrawable = ctx.getResources().getDrawable(R.drawable.ic_type_audio);
|
||||||
} else if (recording.isVideo()) {
|
} else if (recording.isVideo()) {
|
||||||
icon.setImageResource(R.drawable.ic_type_video);
|
iconDrawable = ctx.getResources().getDrawable(R.drawable.ic_type_audio);
|
||||||
} else {
|
} else {
|
||||||
icon.setImageResource(R.drawable.ic_type_img);
|
iconDrawable = ctx.getResources().getDrawable(R.drawable.ic_type_audio);
|
||||||
}
|
}
|
||||||
|
icon.setImageDrawable(iconDrawable);
|
||||||
|
return iconDrawable;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -4,6 +4,7 @@ import android.app.AlertDialog;
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.content.DialogInterface;
|
import android.content.DialogInterface;
|
||||||
import android.content.Intent;
|
import android.content.Intent;
|
||||||
|
import android.graphics.PorterDuff;
|
||||||
import android.graphics.PorterDuff.Mode;
|
import android.graphics.PorterDuff.Mode;
|
||||||
import android.graphics.drawable.Drawable;
|
import android.graphics.drawable.Drawable;
|
||||||
import android.net.Uri;
|
import android.net.Uri;
|
||||||
|
@ -92,7 +93,8 @@ public class NotesFragment extends ListFragment {
|
||||||
}
|
}
|
||||||
|
|
||||||
final AudioVideoNotesPlugin.Recording recording = getItem(position);
|
final AudioVideoNotesPlugin.Recording recording = getItem(position);
|
||||||
DashAudioVideoNotesFragment.getNoteView(recording, row, getActivity());
|
Drawable icon = DashAudioVideoNotesFragment.getNoteView(recording, row, getActivity());
|
||||||
|
icon.setColorFilter(getResources().getColor(R.color.color_distance), Mode.MULTIPLY);
|
||||||
row.findViewById(R.id.play).setVisibility(View.GONE);
|
row.findViewById(R.id.play).setVisibility(View.GONE);
|
||||||
ImageButton options = (ImageButton) row.findViewById(R.id.options);
|
ImageButton options = (ImageButton) row.findViewById(R.id.options);
|
||||||
options.setOnClickListener(new View.OnClickListener() {
|
options.setOnClickListener(new View.OnClickListener() {
|
||||||
|
@ -113,7 +115,7 @@ public class NotesFragment extends ListFragment {
|
||||||
|
|
||||||
private void showOnMap(Recording recording) {
|
private void showOnMap(Recording recording) {
|
||||||
getMyApplication().getSettings().setMapLocationToShow(recording.getLatitude(), recording.getLongitude(), 15,
|
getMyApplication().getSettings().setMapLocationToShow(recording.getLatitude(), recording.getLongitude(), 15,
|
||||||
new PointDescription(PointDescription.POINT_TYPE_NOTE, recording.getName(getActivity())), true,
|
new PointDescription(recording.getSearchHistoryType(), recording.getName(getActivity())), true,
|
||||||
recording); //$NON-NLS-1$
|
recording); //$NON-NLS-1$
|
||||||
MapActivity.launchMapActivityMoveToTop(getActivity());
|
MapActivity.launchMapActivityMoveToTop(getActivity());
|
||||||
}
|
}
|
||||||
|
|
|
@ -11,7 +11,6 @@ import net.osmand.plus.OsmandApplication;
|
||||||
import net.osmand.plus.R;
|
import net.osmand.plus.R;
|
||||||
import net.osmand.plus.activities.MapActivity;
|
import net.osmand.plus.activities.MapActivity;
|
||||||
import net.osmand.plus.activities.search.SearchActivity;
|
import net.osmand.plus.activities.search.SearchActivity;
|
||||||
import net.osmand.plus.base.FavoriteImageDrawable;
|
|
||||||
import net.osmand.plus.dialogs.DirectionsDialogs;
|
import net.osmand.plus.dialogs.DirectionsDialogs;
|
||||||
import net.osmand.plus.helpers.FontCache;
|
import net.osmand.plus.helpers.FontCache;
|
||||||
import net.osmand.plus.helpers.SearchHistoryHelper;
|
import net.osmand.plus.helpers.SearchHistoryHelper;
|
||||||
|
@ -20,7 +19,6 @@ import net.osmand.util.Algorithms;
|
||||||
import net.osmand.util.MapUtils;
|
import net.osmand.util.MapUtils;
|
||||||
import android.app.Activity;
|
import android.app.Activity;
|
||||||
import android.content.Intent;
|
import android.content.Intent;
|
||||||
import android.graphics.Color;
|
|
||||||
import android.graphics.PorterDuff;
|
import android.graphics.PorterDuff;
|
||||||
import android.graphics.Typeface;
|
import android.graphics.Typeface;
|
||||||
import android.graphics.drawable.Drawable;
|
import android.graphics.drawable.Drawable;
|
||||||
|
@ -90,7 +88,7 @@ public class DashRecentsFragment extends DashLocationFragment {
|
||||||
} else {
|
} else {
|
||||||
loc = new LatLon(0f, 0f);
|
loc = new LatLon(0f, 0f);
|
||||||
}
|
}
|
||||||
setupFavorites();
|
setupRecents();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -98,7 +96,7 @@ public class DashRecentsFragment extends DashLocationFragment {
|
||||||
super.onPause();
|
super.onPause();
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setupFavorites(){
|
public void setupRecents(){
|
||||||
View mainView = getView();
|
View mainView = getView();
|
||||||
SearchHistoryHelper helper = SearchHistoryHelper.getInstance((OsmandApplication) getActivity().getApplicationContext());
|
SearchHistoryHelper helper = SearchHistoryHelper.getInstance((OsmandApplication) getActivity().getApplicationContext());
|
||||||
points = helper.getHistoryEntries();
|
points = helper.getHistoryEntries();
|
||||||
|
|
|
@ -136,6 +136,9 @@ public class DashboardOnMap {
|
||||||
private void addDashboardFragments(){
|
private void addDashboardFragments(){
|
||||||
FragmentManager manager =ma. getSupportFragmentManager();
|
FragmentManager manager =ma. getSupportFragmentManager();
|
||||||
FragmentTransaction fragmentTransaction = manager.beginTransaction();
|
FragmentTransaction fragmentTransaction = manager.beginTransaction();
|
||||||
|
// if (manager.findFragmentByTag(DashMapFragment.TAG) == null) {
|
||||||
|
// fragmentTransaction.add(R.id.content, new DashMapFragment(), DashMapFragment.TAG);
|
||||||
|
// }
|
||||||
if (manager.findFragmentByTag(DashSearchFragment.TAG) == null) {
|
if (manager.findFragmentByTag(DashSearchFragment.TAG) == null) {
|
||||||
fragmentTransaction.add(R.id.content, new DashSearchFragment(), DashSearchFragment.TAG);
|
fragmentTransaction.add(R.id.content, new DashSearchFragment(), DashSearchFragment.TAG);
|
||||||
}
|
}
|
||||||
|
|
|
@ -464,7 +464,6 @@ public class AvailableGPXFragment extends OsmandExpandableListFragment {
|
||||||
@Override
|
@Override
|
||||||
public void onDestroyActionMode(ActionMode mode) {
|
public void onDestroyActionMode(ActionMode mode) {
|
||||||
enableSelectionMode(false);
|
enableSelectionMode(false);
|
||||||
runSelection(false);
|
|
||||||
allGpxAdapter.notifyDataSetChanged();
|
allGpxAdapter.notifyDataSetChanged();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -46,11 +46,10 @@ import android.view.MenuInflater;
|
||||||
import android.view.MenuItem;
|
import android.view.MenuItem;
|
||||||
import android.view.View;
|
import android.view.View;
|
||||||
import android.view.ViewGroup;
|
import android.view.ViewGroup;
|
||||||
|
import android.widget.AdapterView;
|
||||||
import android.widget.ArrayAdapter;
|
import android.widget.ArrayAdapter;
|
||||||
import android.widget.CheckBox;
|
import android.widget.CheckBox;
|
||||||
import android.widget.EditText;
|
import android.widget.EditText;
|
||||||
import android.widget.ExpandableListView;
|
|
||||||
import android.widget.ExpandableListView.ExpandableListContextMenuInfo;
|
|
||||||
import android.widget.ImageView;
|
import android.widget.ImageView;
|
||||||
import android.widget.ListView;
|
import android.widget.ListView;
|
||||||
import android.widget.Spinner;
|
import android.widget.Spinner;
|
||||||
|
@ -94,14 +93,7 @@ public class SelectedGPXFragment extends ListFragment {
|
||||||
setContent();
|
setContent();
|
||||||
}
|
}
|
||||||
|
|
||||||
private List<GpxDisplayGroup> getContent() {
|
|
||||||
GpxSelectionHelper selectedGpxHelper = app.getSelectedGpxHelper();
|
|
||||||
List<GpxDisplayGroup> displayGrous = new ArrayList<GpxSelectionHelper.GpxDisplayGroup>();
|
|
||||||
if(getActivity() instanceof TrackActivity) {
|
|
||||||
selectedGpxHelper.collectDisplayGroups(displayGrous, getGpx());
|
|
||||||
}
|
|
||||||
return displayGrous;
|
|
||||||
}
|
|
||||||
|
|
||||||
private GPXFile getGpx() {
|
private GPXFile getGpx() {
|
||||||
return ((TrackActivity) getActivity()).getResult();
|
return ((TrackActivity) getActivity()).getResult();
|
||||||
|
@ -109,7 +101,7 @@ public class SelectedGPXFragment extends ListFragment {
|
||||||
|
|
||||||
|
|
||||||
protected List<GpxDisplayGroup> filterGroups() {
|
protected List<GpxDisplayGroup> filterGroups() {
|
||||||
List<GpxDisplayGroup> groups = getContent();
|
List<GpxDisplayGroup> groups = ((TrackActivity) getActivity()).getContent();
|
||||||
if (isArgumentTrue(ARG_TO_FILTER_SHORT_TRACKS)) {
|
if (isArgumentTrue(ARG_TO_FILTER_SHORT_TRACKS)) {
|
||||||
groups = new ArrayList<GpxSelectionHelper.GpxDisplayGroup>(groups);
|
groups = new ArrayList<GpxSelectionHelper.GpxDisplayGroup>(groups);
|
||||||
Iterator<GpxDisplayGroup> it = groups.iterator();
|
Iterator<GpxDisplayGroup> it = groups.iterator();
|
||||||
|
@ -150,17 +142,6 @@ public class SelectedGPXFragment extends ListFragment {
|
||||||
View view = getActivity().getLayoutInflater().inflate(R.layout.update_index, container, false);
|
View view = getActivity().getLayoutInflater().inflate(R.layout.update_index, container, false);
|
||||||
view.findViewById(R.id.header_layout).setVisibility(View.GONE);
|
view.findViewById(R.id.header_layout).setVisibility(View.GONE);
|
||||||
ListView listView = (ListView) view.findViewById(android.R.id.list);
|
ListView listView = (ListView) view.findViewById(android.R.id.list);
|
||||||
listView.setOnCreateContextMenuListener(new View.OnCreateContextMenuListener() {
|
|
||||||
@Override
|
|
||||||
public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo) {
|
|
||||||
long packedPos = ((ExpandableListContextMenuInfo) menuInfo).packedPosition;
|
|
||||||
int group = ExpandableListView.getPackedPositionGroup(packedPos);
|
|
||||||
int child = ExpandableListView.getPackedPositionChild(packedPos);
|
|
||||||
if (child >= 0 && group >= 0) {
|
|
||||||
showContextMenu(adapter.getItem(child));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
});
|
|
||||||
TextView tv = new TextView(getActivity());
|
TextView tv = new TextView(getActivity());
|
||||||
tv.setText(R.string.none_selected_gpx);
|
tv.setText(R.string.none_selected_gpx);
|
||||||
tv.setTextSize(24);
|
tv.setTextSize(24);
|
||||||
|
@ -170,7 +151,7 @@ public class SelectedGPXFragment extends ListFragment {
|
||||||
return view;
|
return view;
|
||||||
}
|
}
|
||||||
|
|
||||||
private void showContextMenu(final GpxDisplayItem gpxDisplayItem) {
|
protected void showContextMenu(final GpxDisplayItem gpxDisplayItem) {
|
||||||
Builder builder = new AlertDialog.Builder(getMyActivity());
|
Builder builder = new AlertDialog.Builder(getMyActivity());
|
||||||
final ContextMenuAdapter adapter = new ContextMenuAdapter(getMyActivity());
|
final ContextMenuAdapter adapter = new ContextMenuAdapter(getMyActivity());
|
||||||
basicFileOperation(gpxDisplayItem, adapter);
|
basicFileOperation(gpxDisplayItem, adapter);
|
||||||
|
@ -255,7 +236,7 @@ public class SelectedGPXFragment extends ListFragment {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
private void selectSplitDistance(final GpxDisplayGroup model) {
|
protected void selectSplitDistance(final GpxDisplayGroup model) {
|
||||||
Builder bld = new AlertDialog.Builder(getMyActivity());
|
Builder bld = new AlertDialog.Builder(getMyActivity());
|
||||||
int[] checkedItem = new int[] {!model.isSplitDistance() && !model.isSplitTime()? 0 : -1};
|
int[] checkedItem = new int[] {!model.isSplitDistance() && !model.isSplitTime()? 0 : -1};
|
||||||
List<String> options = new ArrayList<String>();
|
List<String> options = new ArrayList<String>();
|
||||||
|
|
|
@ -1,6 +1,13 @@
|
||||||
package net.osmand.plus.myplaces;
|
package net.osmand.plus.myplaces;
|
||||||
|
|
||||||
|
import android.support.v4.view.MenuItemCompat;
|
||||||
|
import android.view.Menu;
|
||||||
|
import android.view.MenuInflater;
|
||||||
|
import android.view.MenuItem;
|
||||||
|
|
||||||
import net.osmand.plus.GpxSelectionHelper;
|
import net.osmand.plus.GpxSelectionHelper;
|
||||||
|
import net.osmand.plus.R;
|
||||||
|
import net.osmand.plus.activities.TrackActivity;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
@ -10,6 +17,7 @@ import java.util.List;
|
||||||
* on 04.03.2015.
|
* on 04.03.2015.
|
||||||
*/
|
*/
|
||||||
public class TrackPointFragment extends SelectedGPXFragment {
|
public class TrackPointFragment extends SelectedGPXFragment {
|
||||||
|
GpxSelectionHelper.GpxDisplayGroup group;
|
||||||
@Override
|
@Override
|
||||||
public void setContent() {
|
public void setContent() {
|
||||||
List<GpxSelectionHelper.GpxDisplayGroup> groups = filterGroups();
|
List<GpxSelectionHelper.GpxDisplayGroup> groups = filterGroups();
|
||||||
|
@ -21,11 +29,31 @@ public class TrackPointFragment extends SelectedGPXFragment {
|
||||||
if (group.getType() != GpxSelectionHelper.GpxDisplayItemType.TRACK_POINTS){
|
if (group.getType() != GpxSelectionHelper.GpxDisplayItemType.TRACK_POINTS){
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
this.group = group;
|
||||||
for (GpxSelectionHelper.GpxDisplayItem item : group.getModifiableList()) {
|
for (GpxSelectionHelper.GpxDisplayItem item : group.getModifiableList()) {
|
||||||
items.add(item);
|
items.add(item);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
adapter = new SelectedGPXAdapter(items);
|
adapter = new SelectedGPXAdapter(items);
|
||||||
setListAdapter(adapter);
|
setListAdapter(adapter);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
|
||||||
|
menu.clear();
|
||||||
|
((TrackActivity) getActivity()).getClearToolbar(false);
|
||||||
|
if (isArgumentTrue(ARG_TO_HIDE_CONFIG_BTN)){
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
MenuItem item = menu.add(R.string.add_to_favourite).setIcon(R.drawable.ic_action_fav_dark).setOnMenuItemClickListener(new MenuItem.OnMenuItemClickListener() {
|
||||||
|
@Override
|
||||||
|
public boolean onMenuItemClick(MenuItem item) {
|
||||||
|
saveAsFavorites(group);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
MenuItemCompat.setShowAsAction(item, MenuItemCompat.SHOW_AS_ACTION_ALWAYS);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,59 @@
|
||||||
|
package net.osmand.plus.myplaces;
|
||||||
|
|
||||||
|
import android.support.v4.view.MenuItemCompat;
|
||||||
|
import android.view.Menu;
|
||||||
|
import android.view.MenuInflater;
|
||||||
|
import android.view.MenuItem;
|
||||||
|
|
||||||
|
import net.osmand.plus.GpxSelectionHelper;
|
||||||
|
import net.osmand.plus.R;
|
||||||
|
import net.osmand.plus.activities.TrackActivity;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Created by Denis
|
||||||
|
* on 05.03.2015.
|
||||||
|
*/
|
||||||
|
public class TrackRoutePointFragment extends SelectedGPXFragment {
|
||||||
|
GpxSelectionHelper.GpxDisplayGroup group;
|
||||||
|
@Override
|
||||||
|
public void setContent() {
|
||||||
|
List<GpxSelectionHelper.GpxDisplayGroup> groups = filterGroups();
|
||||||
|
lightContent = app.getSettings().isLightContent();
|
||||||
|
|
||||||
|
|
||||||
|
List<GpxSelectionHelper.GpxDisplayItem> items = new ArrayList<>();
|
||||||
|
for (GpxSelectionHelper.GpxDisplayGroup group : groups) {
|
||||||
|
if (group.getType() != GpxSelectionHelper.GpxDisplayItemType.TRACK_ROUTE_POINTS){
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
this.group = group;
|
||||||
|
for (GpxSelectionHelper.GpxDisplayItem item : group.getModifiableList()) {
|
||||||
|
items.add(item);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
adapter = new SelectedGPXAdapter(items);
|
||||||
|
setListAdapter(adapter);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
|
||||||
|
menu.clear();
|
||||||
|
((TrackActivity) getActivity()).getClearToolbar(false);
|
||||||
|
if (isArgumentTrue(ARG_TO_HIDE_CONFIG_BTN)){
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
MenuItem item = menu.add(R.string.add_to_favourite).setIcon(R.drawable.ic_action_fav_dark).setOnMenuItemClickListener(new MenuItem.OnMenuItemClickListener() {
|
||||||
|
@Override
|
||||||
|
public boolean onMenuItemClick(MenuItem item) {
|
||||||
|
saveAsFavorites(group);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
MenuItemCompat.setShowAsAction(item, MenuItemCompat.SHOW_AS_ACTION_ALWAYS);
|
||||||
|
}
|
||||||
|
}
|
|
@ -1,6 +1,20 @@
|
||||||
package net.osmand.plus.myplaces;
|
package net.osmand.plus.myplaces;
|
||||||
|
|
||||||
|
import android.os.Bundle;
|
||||||
|
import android.support.v4.view.MenuItemCompat;
|
||||||
|
import android.view.ContextMenu;
|
||||||
|
import android.view.LayoutInflater;
|
||||||
|
import android.view.Menu;
|
||||||
|
import android.view.MenuInflater;
|
||||||
|
import android.view.MenuItem;
|
||||||
|
import android.view.View;
|
||||||
|
import android.view.ViewGroup;
|
||||||
|
import android.widget.AdapterView;
|
||||||
|
import android.widget.ListView;
|
||||||
|
|
||||||
import net.osmand.plus.GpxSelectionHelper;
|
import net.osmand.plus.GpxSelectionHelper;
|
||||||
|
import net.osmand.plus.R;
|
||||||
|
import net.osmand.plus.activities.TrackActivity;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
@ -10,6 +24,21 @@ import java.util.List;
|
||||||
* on 04.03.2015.
|
* on 04.03.2015.
|
||||||
*/
|
*/
|
||||||
public class TrackSegmentFragment extends SelectedGPXFragment {
|
public class TrackSegmentFragment extends SelectedGPXFragment {
|
||||||
|
GpxSelectionHelper.GpxDisplayGroup group;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
|
||||||
|
View view = super.onCreateView(inflater, container, savedInstanceState);
|
||||||
|
ListView listView = (ListView) view.findViewById(android.R.id.list);
|
||||||
|
listView.setOnCreateContextMenuListener(new View.OnCreateContextMenuListener() {
|
||||||
|
@Override
|
||||||
|
public void onCreateContextMenu(ContextMenu menu, View v, ContextMenu.ContextMenuInfo menuInfo) {
|
||||||
|
long packedPos = ((AdapterView.AdapterContextMenuInfo) menuInfo).position;
|
||||||
|
showContextMenu(adapter.getItem((int)packedPos));
|
||||||
|
}
|
||||||
|
});
|
||||||
|
return view;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void setContent() {
|
public void setContent() {
|
||||||
|
@ -22,6 +51,7 @@ public class TrackSegmentFragment extends SelectedGPXFragment {
|
||||||
if (group.getType() != GpxSelectionHelper.GpxDisplayItemType.TRACK_SEGMENT){
|
if (group.getType() != GpxSelectionHelper.GpxDisplayItemType.TRACK_SEGMENT){
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
this.group = group;
|
||||||
for (GpxSelectionHelper.GpxDisplayItem item : group.getModifiableList()) {
|
for (GpxSelectionHelper.GpxDisplayItem item : group.getModifiableList()) {
|
||||||
items.add(item);
|
items.add(item);
|
||||||
}
|
}
|
||||||
|
@ -29,4 +59,22 @@ public class TrackSegmentFragment extends SelectedGPXFragment {
|
||||||
adapter = new SelectedGPXAdapter(items);
|
adapter = new SelectedGPXAdapter(items);
|
||||||
setListAdapter(adapter);
|
setListAdapter(adapter);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
|
||||||
|
menu.clear();
|
||||||
|
((TrackActivity) getActivity()).getClearToolbar(false);
|
||||||
|
if (isArgumentTrue(ARG_TO_HIDE_CONFIG_BTN)){
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
MenuItem item = menu.add(R.string.showed_on_map).setIcon(R.drawable.ic_show_on_map).setOnMenuItemClickListener(new MenuItem.OnMenuItemClickListener() {
|
||||||
|
@Override
|
||||||
|
public boolean onMenuItemClick(MenuItem item) {
|
||||||
|
selectSplitDistance(group);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
MenuItemCompat.setShowAsAction(item, MenuItemCompat.SHOW_AS_ACTION_ALWAYS);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue