merge heads

This commit is contained in:
Jimmy Shih
2013-05-13 10:49:08 -07:00
11 changed files with 0 additions and 243 deletions
@@ -320,11 +320,6 @@ public class TrackListActivity extends AbstractSendToGoogleActivity
// Ignore
}
@Override
public void onHeadingChanged(double heading) {
// Ignore
}
@Override
public void clearWaypoints() {
// Ignore
@@ -28,9 +28,6 @@ import android.content.Context;
import android.content.SharedPreferences;
import android.content.SharedPreferences.OnSharedPreferenceChangeListener;
import android.database.ContentObserver;
import android.hardware.Sensor;
import android.hardware.SensorEventListener;
import android.hardware.SensorManager;
import android.location.Location;
import android.location.LocationListener;
import android.location.LocationManager;
@@ -51,14 +48,12 @@ public class DataSource {
private final Context context;
private final ContentResolver contentResolver;
private final MyTracksLocationManager myTracksLocationManager;
private final SensorManager sensorManager;
private final SharedPreferences sharedPreferences;
public DataSource(Context context) {
this.context = context;
contentResolver = context.getContentResolver();
myTracksLocationManager = new MyTracksLocationManager(context);
sensorManager = (SensorManager) context.getSystemService(Context.SENSOR_SERVICE);
sharedPreferences = context.getSharedPreferences(Constants.SETTINGS_NAME, Context.MODE_PRIVATE);
}
@@ -169,29 +164,6 @@ public class DataSource {
return location.getTime() > System.currentTimeMillis() - MAX_LOCATION_AGE_MS;
}
/**
* Registers a heading listener.
*
* @param listener the listener
*/
public void registerHeadingListener(SensorEventListener listener) {
Sensor heading = sensorManager.getDefaultSensor(Sensor.TYPE_ORIENTATION);
if (heading == null) {
Log.d(TAG, "No heading sensor.");
return;
}
sensorManager.registerListener(listener, heading, SensorManager.SENSOR_DELAY_UI);
}
/**
* Unregisters a heading listener.
*
* @param listener the listener
*/
public void unregisterHeadingListener(SensorEventListener listener) {
sensorManager.unregisterListener(listener);
}
/**
* Registers a shared preference change listener.
*
@@ -62,13 +62,6 @@ public interface DataSourceListener {
*/
public void notifyLocationProviderAvailable(boolean available);
/**
* Notifies when the compass heading changes.
*
* @param heading the new heading
*/
public void notifyHeadingChanged(float heading);
/**
* Notifies when a preference changes.
*
@@ -23,9 +23,6 @@ import com.google.common.annotations.VisibleForTesting;
import android.content.SharedPreferences;
import android.content.SharedPreferences.OnSharedPreferenceChangeListener;
import android.database.ContentObserver;
import android.hardware.Sensor;
import android.hardware.SensorEvent;
import android.hardware.SensorEventListener;
import android.location.Location;
import android.location.LocationListener;
import android.location.LocationManager;
@@ -138,25 +135,6 @@ public class DataSourceManager {
}
}
/**
* Listener for heading changes.
*
* @author Jimmy Shih
*/
@VisibleForTesting
class HeadingListener implements SensorEventListener {
@Override
public void onAccuracyChanged(Sensor sensor, int accuracy) {
// Do nothing
}
@Override
public void onSensorChanged(SensorEvent event) {
dataSourceListener.notifyHeadingChanged(event.values[0]);
}
}
/**
* Listener for preference changes.
*
@@ -181,7 +159,6 @@ public class DataSourceManager {
private final WaypointsTableObserver waypointsTableObserver;
private final TrackPointsTableObserver trackPointsTableObserver;
private final CurrentLocationListener currentLocationListener;
private final HeadingListener headingListener;
private final PreferenceListener preferenceListener;
public DataSourceManager(DataSource dataSource, DataSourceListener dataSourceListener) {
@@ -193,7 +170,6 @@ public class DataSourceManager {
waypointsTableObserver = new WaypointsTableObserver();
trackPointsTableObserver = new TrackPointsTableObserver();
currentLocationListener = new CurrentLocationListener();
headingListener = new HeadingListener();
preferenceListener = new PreferenceListener();
}
@@ -265,9 +241,6 @@ public class DataSourceManager {
case LOCATION:
dataSource.registerLocationListener(currentLocationListener);
break;
case HEADING:
dataSource.registerHeadingListener(headingListener);
break;
case PREFERENCE:
dataSource.registerOnSharedPreferenceChangeListener(preferenceListener);
break;
@@ -301,9 +274,6 @@ public class DataSourceManager {
case LOCATION:
dataSource.unregisterLocationListener(currentLocationListener);
break;
case HEADING:
dataSource.unregisterHeadingListener(headingListener);
break;
case PREFERENCE:
dataSource.unregisterOnSharedPreferenceChangeListener(preferenceListener);
break;
@@ -52,9 +52,6 @@ public class TrackDataHub implements DataSourceListener {
private static final String TAG = TrackDataHub.class.getSimpleName();
// One hour in milliseconds
private static final int ONE_HOUR = 60 * 60 * 1000;
private final Context context;
private final TrackDataManager trackDataManager;
private final MyTracksProviderUtils myTracksProviderUtils;
@@ -75,11 +72,6 @@ public class TrackDataHub implements DataSourceListener {
private int minRequiredAccuracy;
private int minRecordingDistance;
// Heading values
private float lastHeading = 0;
private float lastDeclination = 0;
private long lastDeclinationUpdate = 0;
// Location values
private Location lastSeenLocation = null;
private boolean hasProviderEnabled = true;
@@ -400,31 +392,6 @@ public class TrackDataHub implements DataSourceListener {
});
}
@Override
public void notifyHeadingChanged(final float heading) {
runInHanderThread(new Runnable() {
@Override
public void run() {
lastHeading = heading;
if (lastSeenLocation != null) {
// Update the declination at most once an hour
long now = System.currentTimeMillis();
if (now - lastDeclinationUpdate > ONE_HOUR) {
lastDeclinationUpdate = now;
long timestamp = lastSeenLocation.getTime();
if (timestamp == 0) {
// Hack for Samsung phones which don't populate the time field
timestamp = now;
}
lastDeclination = getDeclination(lastSeenLocation, timestamp);
}
}
notifyHeadingChange(trackDataManager.getListeners(TrackDataType.HEADING));
}
});
}
/**
* Loads data for all listeners. To be run in the {@link #handler} thread.
*/
@@ -459,7 +426,6 @@ public class TrackDataHub implements DataSourceListener {
} else {
notifyLocationStateChanged(trackDataManager.getListeners(TrackDataType.LOCATION));
}
notifyHeadingChange(trackDataManager.getListeners(TrackDataType.HEADING));
}
/**
@@ -510,10 +476,6 @@ public class TrackDataHub implements DataSourceListener {
notifyLocationStateChanged(trackDataListeners);
}
}
if (trackDataTypes.contains(TrackDataType.HEADING)) {
notifyHeadingChange(trackDataListeners);
}
}
/**
@@ -746,21 +708,6 @@ public class TrackDataHub implements DataSourceListener {
}
}
/**
* Notifies heading change. To be run in the {@link #handler} thread.
*
* @param trackDataListeners the track data listeners to notify
*/
private void notifyHeadingChange(Set<TrackDataListener> trackDataListeners) {
if (trackDataListeners.isEmpty()) {
return;
}
float value = lastHeading + lastDeclination;
for (TrackDataListener trackDataListener : trackDataListeners) {
trackDataListener.onHeadingChanged(value);
}
}
/**
* Resets the track points sampling states.
*/
@@ -49,13 +49,6 @@ public interface TrackDataListener {
*/
public void onLocationChanged(Location location);
/**
* Called when the heading changes.
*
* @param heading the heading
*/
public void onHeadingChanged(double heading);
/**
* Called when the selected track changes. This will be followed by calls to
* data methods such as {@link #onTrackUpdated(Track)},
@@ -28,6 +28,5 @@ public enum TrackDataType {
SAMPLED_IN_TRACK_POINTS_TABLE, // sampled-in track points table changes
SAMPLED_OUT_TRACK_POINTS_TABLE, // sampled-out track points table changes
LOCATION, // location changes
HEADING, // heading changes
PREFERENCE // preference changes
}
@@ -165,11 +165,6 @@ public class ChartFragment extends Fragment implements TrackDataListener {
// We don't care.
}
@Override
public void onHeadingChanged(double heading) {
// We don't care.
}
@Override
public void onSelectedTrackChanged(Track track) {
// We don't care.
@@ -441,11 +441,6 @@ public class MyTracksMapFragment extends SupportMapFragment implements TrackData
updateCurrentLocation();
}
}
@Override
public void onHeadingChanged(double heading) {
// We don't care.
}
@Override
public void onSelectedTrackChanged(final Track track) {
@@ -132,11 +132,6 @@ public class StatsFragment extends Fragment implements TrackDataListener {
}
}
@Override
public void onHeadingChanged(double heading) {
// We don't care.
}
@Override
public void onSelectedTrackChanged(Track track) {
if (isResumed()) {