Package structure: moved Marker UI code.

Part of #963.
This commit is contained in:
Dennis Guse
2022-01-15 20:24:19 +01:00
parent 1a125ca60d
commit 2ca69df447
14 changed files with 29 additions and 26 deletions
+3 -3
View File
@@ -267,7 +267,7 @@ limitations under the License.
</activity> </activity>
<activity <activity
android:name=".MarkerDetailActivity" android:name=".ui.markers.MarkerDetailActivity"
android:exported="true"> android:exported="true">
<intent-filter> <intent-filter>
<action android:name="de.dennisguse.opentracks.MarkerDetails" /> <action android:name="de.dennisguse.opentracks.MarkerDetails" />
@@ -275,10 +275,10 @@ limitations under the License.
</intent-filter> </intent-filter>
</activity> </activity>
<activity android:name=".MarkerEditActivity" /> <activity android:name=".ui.markers.MarkerEditActivity" />
<activity <activity
android:name=".MarkerListActivity" android:name=".ui.markers.MarkerListActivity"
android:exported="true" android:exported="true"
android:label="@string/menu_markers" android:label="@string/menu_markers"
android:launchMode="singleTop"> android:launchMode="singleTop">
@@ -46,6 +46,7 @@ import de.dennisguse.opentracks.settings.PreferencesUtils;
import de.dennisguse.opentracks.settings.SettingsActivity; import de.dennisguse.opentracks.settings.SettingsActivity;
import de.dennisguse.opentracks.ui.aggregatedStatistics.ConfirmDeleteDialogFragment; import de.dennisguse.opentracks.ui.aggregatedStatistics.ConfirmDeleteDialogFragment;
import de.dennisguse.opentracks.ui.intervals.IntervalsFragment; import de.dennisguse.opentracks.ui.intervals.IntervalsFragment;
import de.dennisguse.opentracks.ui.markers.MarkerListActivity;
import de.dennisguse.opentracks.util.IntentDashboardUtils; import de.dennisguse.opentracks.util.IntentDashboardUtils;
import de.dennisguse.opentracks.util.IntentUtils; import de.dennisguse.opentracks.util.IntentUtils;
@@ -33,6 +33,8 @@ import de.dennisguse.opentracks.services.TrackRecordingServiceConnection;
import de.dennisguse.opentracks.settings.PreferencesUtils; import de.dennisguse.opentracks.settings.PreferencesUtils;
import de.dennisguse.opentracks.settings.SettingsActivity; import de.dennisguse.opentracks.settings.SettingsActivity;
import de.dennisguse.opentracks.ui.intervals.IntervalsFragment; import de.dennisguse.opentracks.ui.intervals.IntervalsFragment;
import de.dennisguse.opentracks.ui.markers.MarkerEditActivity;
import de.dennisguse.opentracks.ui.markers.MarkerListActivity;
import de.dennisguse.opentracks.util.IntentDashboardUtils; import de.dennisguse.opentracks.util.IntentDashboardUtils;
import de.dennisguse.opentracks.util.IntentUtils; import de.dennisguse.opentracks.util.IntentUtils;
import de.dennisguse.opentracks.util.TrackIconUtils; import de.dennisguse.opentracks.util.TrackIconUtils;
@@ -12,7 +12,7 @@ import java.util.concurrent.Future;
* *
* @param <T> the type of the object that will be used to identified the Runnable. * @param <T> the type of the object that will be used to identified the Runnable.
*/ */
class ExecutorListViewService<T> { public class ExecutorListViewService<T> {
private final List<T> enqueueObjects = new ArrayList<>(); private final List<T> enqueueObjects = new ArrayList<>();
private final ExecutorService executorService; private final ExecutorService executorService;
@@ -36,7 +36,7 @@ public class ScrollVisibleViews implements AbsListView.OnScrollListener {
to = firstVisibleItem + visibleItemCount; to = firstVisibleItem + visibleItemCount;
} }
interface VisibleViewsListener { public interface VisibleViewsListener {
void onViewVisible(View view, int position); void onViewVisible(View view, int position);
} }
} }
@@ -44,12 +44,12 @@ import java.util.ArrayList;
import java.util.LinkedList; import java.util.LinkedList;
import java.util.List; import java.util.List;
import de.dennisguse.opentracks.MarkerDetailActivity;
import de.dennisguse.opentracks.R; import de.dennisguse.opentracks.R;
import de.dennisguse.opentracks.content.data.Marker; import de.dennisguse.opentracks.content.data.Marker;
import de.dennisguse.opentracks.stats.ExtremityMonitor; import de.dennisguse.opentracks.stats.ExtremityMonitor;
import de.dennisguse.opentracks.ui.markers.MarkerDetailActivity;
import de.dennisguse.opentracks.ui.markers.MarkerUtils;
import de.dennisguse.opentracks.util.IntentUtils; import de.dennisguse.opentracks.util.IntentUtils;
import de.dennisguse.opentracks.util.MarkerUtils;
import de.dennisguse.opentracks.util.StringUtils; import de.dennisguse.opentracks.util.StringUtils;
import de.dennisguse.opentracks.util.ThemeUtils; import de.dennisguse.opentracks.util.ThemeUtils;
@@ -14,7 +14,7 @@
* the License. * the License.
*/ */
package de.dennisguse.opentracks.fragments; package de.dennisguse.opentracks.ui.markers;
import android.app.Dialog; import android.app.Dialog;
import android.content.Context; import android.content.Context;
@@ -14,7 +14,7 @@
* the License. * the License.
*/ */
package de.dennisguse.opentracks; package de.dennisguse.opentracks.ui.markers;
import android.database.Cursor; import android.database.Cursor;
import android.os.Bundle; import android.os.Bundle;
@@ -31,11 +31,12 @@ import androidx.viewpager.widget.ViewPager;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
import de.dennisguse.opentracks.AbstractActivity;
import de.dennisguse.opentracks.R;
import de.dennisguse.opentracks.content.data.Marker; import de.dennisguse.opentracks.content.data.Marker;
import de.dennisguse.opentracks.content.provider.ContentProviderUtils; import de.dennisguse.opentracks.content.provider.ContentProviderUtils;
import de.dennisguse.opentracks.databinding.MarkerDetailActivityBinding; import de.dennisguse.opentracks.databinding.MarkerDetailActivityBinding;
import de.dennisguse.opentracks.fragments.DeleteMarkerDialogFragment.DeleteMarkerCaller; import de.dennisguse.opentracks.ui.markers.DeleteMarkerDialogFragment.DeleteMarkerCaller;
import de.dennisguse.opentracks.fragments.MarkerDetailFragment;
/** /**
* An activity to display marker detail info. * An activity to display marker detail info.
@@ -14,7 +14,7 @@
* the License. * the License.
*/ */
package de.dennisguse.opentracks.fragments; package de.dennisguse.opentracks.ui.markers;
import android.content.Intent; import android.content.Intent;
import android.os.Bundle; import android.os.Bundle;
@@ -36,14 +36,12 @@ import androidx.fragment.app.FragmentActivity;
import java.time.Duration; import java.time.Duration;
import de.dennisguse.opentracks.MarkerEditActivity;
import de.dennisguse.opentracks.R; import de.dennisguse.opentracks.R;
import de.dennisguse.opentracks.content.data.Marker; import de.dennisguse.opentracks.content.data.Marker;
import de.dennisguse.opentracks.content.provider.ContentProviderUtils; import de.dennisguse.opentracks.content.provider.ContentProviderUtils;
import de.dennisguse.opentracks.databinding.MarkerDetailFragmentBinding; import de.dennisguse.opentracks.databinding.MarkerDetailFragmentBinding;
import de.dennisguse.opentracks.util.IntentUtils; import de.dennisguse.opentracks.util.IntentUtils;
import de.dennisguse.opentracks.util.ListItemUtils; import de.dennisguse.opentracks.util.ListItemUtils;
import de.dennisguse.opentracks.util.MarkerUtils;
import de.dennisguse.opentracks.util.StringUtils; import de.dennisguse.opentracks.util.StringUtils;
/** /**
@@ -14,7 +14,7 @@
* the License. * the License.
*/ */
package de.dennisguse.opentracks; package de.dennisguse.opentracks.ui.markers;
import android.content.Intent; import android.content.Intent;
import android.content.pm.PackageManager; import android.content.pm.PackageManager;
@@ -38,11 +38,12 @@ import androidx.lifecycle.ViewModelProvider;
import java.io.FileDescriptor; import java.io.FileDescriptor;
import java.io.IOException; import java.io.IOException;
import de.dennisguse.opentracks.AbstractActivity;
import de.dennisguse.opentracks.R;
import de.dennisguse.opentracks.content.data.Marker; import de.dennisguse.opentracks.content.data.Marker;
import de.dennisguse.opentracks.content.data.Track; import de.dennisguse.opentracks.content.data.Track;
import de.dennisguse.opentracks.databinding.MarkerEditBinding; import de.dennisguse.opentracks.databinding.MarkerEditBinding;
import de.dennisguse.opentracks.util.IntentUtils; import de.dennisguse.opentracks.util.IntentUtils;
import de.dennisguse.opentracks.viewmodels.MarkerEditViewModel;
/** /**
* An activity to add/edit a marker. * An activity to add/edit a marker.
@@ -1,4 +1,4 @@
package de.dennisguse.opentracks.viewmodels; package de.dennisguse.opentracks.ui.markers;
import android.app.Application; import android.app.Application;
import android.net.Uri; import android.net.Uri;
@@ -14,7 +14,7 @@
* the License. * the License.
*/ */
package de.dennisguse.opentracks; package de.dennisguse.opentracks.ui.markers;
import android.app.SearchManager; import android.app.SearchManager;
import android.content.Intent; import android.content.Intent;
@@ -31,17 +31,18 @@ import androidx.loader.app.LoaderManager;
import androidx.loader.content.CursorLoader; import androidx.loader.content.CursorLoader;
import androidx.loader.content.Loader; import androidx.loader.content.Loader;
import de.dennisguse.opentracks.adapters.MarkerResourceCursorAdapter; import de.dennisguse.opentracks.AbstractActivity;
import de.dennisguse.opentracks.ContextualActionModeCallback;
import de.dennisguse.opentracks.R;
import de.dennisguse.opentracks.adapters.ScrollVisibleViews; import de.dennisguse.opentracks.adapters.ScrollVisibleViews;
import de.dennisguse.opentracks.content.data.Marker; import de.dennisguse.opentracks.content.data.Marker;
import de.dennisguse.opentracks.content.data.MarkerColumns; import de.dennisguse.opentracks.content.data.MarkerColumns;
import de.dennisguse.opentracks.content.data.Track; import de.dennisguse.opentracks.content.data.Track;
import de.dennisguse.opentracks.content.provider.ContentProviderUtils; import de.dennisguse.opentracks.content.provider.ContentProviderUtils;
import de.dennisguse.opentracks.databinding.MarkerListBinding; import de.dennisguse.opentracks.databinding.MarkerListBinding;
import de.dennisguse.opentracks.fragments.DeleteMarkerDialogFragment;
import de.dennisguse.opentracks.fragments.DeleteMarkerDialogFragment.DeleteMarkerCaller;
import de.dennisguse.opentracks.services.TrackRecordingService; import de.dennisguse.opentracks.services.TrackRecordingService;
import de.dennisguse.opentracks.services.TrackRecordingServiceConnection; import de.dennisguse.opentracks.services.TrackRecordingServiceConnection;
import de.dennisguse.opentracks.ui.markers.DeleteMarkerDialogFragment.DeleteMarkerCaller;
import de.dennisguse.opentracks.util.ActivityUtils; import de.dennisguse.opentracks.util.ActivityUtils;
import de.dennisguse.opentracks.util.IntentUtils; import de.dennisguse.opentracks.util.IntentUtils;
@@ -1,4 +1,4 @@
package de.dennisguse.opentracks.adapters; package de.dennisguse.opentracks.ui.markers;
import android.app.Activity; import android.app.Activity;
import android.content.Context; import android.content.Context;
@@ -21,15 +21,14 @@ import java.io.IOException;
import java.io.InputStream; import java.io.InputStream;
import java.time.Instant; import java.time.Instant;
import java.time.OffsetDateTime; import java.time.OffsetDateTime;
import java.time.ZoneId;
import java.time.ZoneOffset;
import de.dennisguse.opentracks.R; import de.dennisguse.opentracks.R;
import de.dennisguse.opentracks.adapters.ExecutorListViewService;
import de.dennisguse.opentracks.adapters.ScrollVisibleViews;
import de.dennisguse.opentracks.content.data.MarkerColumns; import de.dennisguse.opentracks.content.data.MarkerColumns;
import de.dennisguse.opentracks.content.data.Track; import de.dennisguse.opentracks.content.data.Track;
import de.dennisguse.opentracks.content.provider.ContentProviderUtils; import de.dennisguse.opentracks.content.provider.ContentProviderUtils;
import de.dennisguse.opentracks.util.ListItemUtils; import de.dennisguse.opentracks.util.ListItemUtils;
import de.dennisguse.opentracks.util.MarkerUtils;
public class MarkerResourceCursorAdapter extends ResourceCursorAdapter implements ScrollVisibleViews.VisibleViewsListener { public class MarkerResourceCursorAdapter extends ResourceCursorAdapter implements ScrollVisibleViews.VisibleViewsListener {
@@ -1,4 +1,4 @@
package de.dennisguse.opentracks.util; package de.dennisguse.opentracks.ui.markers;
import android.content.Context; import android.content.Context;
import android.graphics.drawable.Drawable; import android.graphics.drawable.Drawable;