aboutsummaryrefslogtreecommitdiffstats
path: root/main/src
diff options
context:
space:
mode:
Diffstat (limited to 'main/src')
-rw-r--r--main/src/cgeo/geocaching/CompassActivity.java15
-rw-r--r--main/src/cgeo/geocaching/cgeoapplication.java4
-rw-r--r--main/src/cgeo/geocaching/utils/GeoDirHandler.java7
3 files changed, 25 insertions, 1 deletions
diff --git a/main/src/cgeo/geocaching/CompassActivity.java b/main/src/cgeo/geocaching/CompassActivity.java
index a7e0f03..64be52d 100644
--- a/main/src/cgeo/geocaching/CompassActivity.java
+++ b/main/src/cgeo/geocaching/CompassActivity.java
@@ -17,6 +17,7 @@ import org.apache.commons.lang3.StringUtils;
import android.content.Context;
import android.content.Intent;
+import android.content.res.Configuration;
import android.hardware.Sensor;
import android.hardware.SensorManager;
import android.media.AudioManager;
@@ -123,6 +124,20 @@ public class CompassActivity extends AbstractActivity {
}
@Override
+ public void onConfigurationChanged(Configuration newConfig) {
+ super.onConfigurationChanged(newConfig);
+
+ setContentView(R.layout.compass_activity);
+ Views.inject(this);
+
+ setTitle();
+ setDestCoords();
+ setCacheInfo();
+
+ geoDirHandler.updateAll();
+ }
+
+ @Override
public boolean onCreateOptionsMenu(final Menu menu) {
getMenuInflater().inflate(R.menu.compass_activity_options, menu);
menu.findItem(R.id.menu_switch_compass_gps).setVisible(hasMagneticFieldSensor);
diff --git a/main/src/cgeo/geocaching/cgeoapplication.java b/main/src/cgeo/geocaching/cgeoapplication.java
index b8f63ee..b227939 100644
--- a/main/src/cgeo/geocaching/cgeoapplication.java
+++ b/main/src/cgeo/geocaching/cgeoapplication.java
@@ -170,6 +170,10 @@ public class cgeoapplication extends Application {
return dir;
}
+ public Float currentDirection() {
+ return currentDirObject().getMemory();
+ }
+
public StatusUpdater getStatusUpdater() {
return statusUpdater;
}
diff --git a/main/src/cgeo/geocaching/utils/GeoDirHandler.java b/main/src/cgeo/geocaching/utils/GeoDirHandler.java
index 98a2287..14e6426 100644
--- a/main/src/cgeo/geocaching/utils/GeoDirHandler.java
+++ b/main/src/cgeo/geocaching/utils/GeoDirHandler.java
@@ -1,8 +1,8 @@
package cgeo.geocaching.utils;
import cgeo.geocaching.IGeoData;
-import cgeo.geocaching.settings.Settings;
import cgeo.geocaching.cgeoapplication;
+import cgeo.geocaching.settings.Settings;
import android.os.Handler;
import android.os.Message;
@@ -63,6 +63,11 @@ public abstract class GeoDirHandler extends Handler implements IObserver<Object>
obtainMessage(OBSERVABLE, o).sendToTarget();
}
+ public void updateAll() {
+ update(app.currentGeo());
+ update(app.currentDirection());
+ }
+
/**
* Update method called when new IGeoData is available.
*