Skip to content

Commit 57c840b

Browse files
author
David Graeff
committed
Preview images for widgets. Some fixes for widgets. Move App to the most top package (for acra to find BuildConfig).
1 parent 3c3848e commit 57c840b

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

47 files changed

+96
-90
lines changed

app/build.gradle

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,8 @@ android {
1616
defaultConfig {
1717
minSdkVersion 17
1818
targetSdkVersion 22
19-
versionCode 121
20-
versionName "8.1"
19+
versionCode 122
20+
versionName "8.2"
2121
applicationId appID
2222
testApplicationId "oly.netpowerctrl.tests"
2323
testInstrumentationRunner "android.test.InstrumentationTestRunner"

app/src/main/AndroidManifest.xml

Lines changed: 7 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@
3030
<uses-sdk />
3131

3232
<application
33-
android:name=".main.App"
33+
android:name=".App"
3434
android:allowBackup="true"
3535
android:icon="@drawable/netpowerctrl"
3636
android:label="@string/app_name"
@@ -76,9 +76,6 @@
7676
android:launchMode="singleInstance"
7777
android:noHistory="true"
7878
android:theme="@style/Theme.AppCompat.Translucent">
79-
<intent-filter>
80-
<action android:name="android.intent.action.MAIN" />
81-
</intent-filter>
8279
<intent-filter>
8380
<action android:name="android.nfc.action.NDEF_DISCOVERED" />
8481
<category android:name="android.intent.category.DEFAULT" />
@@ -89,7 +86,8 @@
8986
<activity
9087
android:name="oly.netpowerctrl.widget.ConfigExecutableActivity"
9188
android:configChanges="orientation|screenSize|keyboardHidden|layoutDirection"
92-
android:theme="@style/Theme.StartTheme">
89+
android:launchMode="singleInstance"
90+
android:theme="@style/Theme.CustomLightThemeDialog">
9391
<intent-filter>
9492
<action android:name="android.appwidget.action.APPWIDGET_CONFIGURE" />
9593
</intent-filter>
@@ -98,7 +96,8 @@
9896
<activity
9997
android:name="oly.netpowerctrl.widget.ConfigGroupActivity"
10098
android:configChanges="orientation|screenSize|keyboardHidden|layoutDirection"
101-
android:theme="@style/Theme.StartTheme">
99+
android:launchMode="singleInstance"
100+
android:theme="@style/Theme.CustomLightThemeDialog">
102101
<intent-filter>
103102
<action android:name="android.appwidget.action.APPWIDGET_CONFIGURE" />
104103
</intent-filter>
@@ -129,7 +128,8 @@
129128
android:description="@string/shortcut_existing_executable_desc"
130129
android:icon="@drawable/netpowerctrl"
131130
android:label="@string/shortcut_existing_executable"
132-
android:theme="@android:style/Theme.Dialog"
131+
android:launchMode="singleInstance"
132+
android:theme="@style/Theme.CustomLightThemeDialog"
133133
android:windowSoftInputMode="stateHidden">
134134
<intent-filter>
135135
<action android:name="android.intent.action.CREATE_SHORTCUT" />
@@ -176,14 +176,5 @@
176176
<service
177177
android:name=".status_bar.AndroidStatusBarService"
178178
android:exported="false" />
179-
180-
<receiver
181-
android:name=".timer.BootCompletedReceiver"
182-
android:enabled="false">
183-
<intent-filter>
184-
<action android:name="android.intent.action.BOOT_COMPLETED" />
185-
</intent-filter>
186-
</receiver>
187-
188179
</application>
189180
</manifest>

app/src/main/java/oly/netpowerctrl/main/App.java renamed to app/src/main/java/oly/netpowerctrl/App.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package oly.netpowerctrl.main;
1+
package oly.netpowerctrl;
22

33
import android.app.Application;
44
import android.os.Build;
@@ -12,9 +12,9 @@
1212
import org.acra.annotation.ReportsCrashes;
1313
import org.acra.sender.HttpSender;
1414

15-
import oly.netpowerctrl.BuildConfig;
16-
import oly.netpowerctrl.R;
1715
import oly.netpowerctrl.data.graphic.LoadStoreIconData;
16+
import oly.netpowerctrl.main.GuiThreadHandler;
17+
import oly.netpowerctrl.main.LifecycleHandler;
1818

1919
/**
2020
* Application:

app/src/main/java/oly/netpowerctrl/data/DataService.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515
import java.util.Map;
1616
import java.util.WeakHashMap;
1717

18+
import oly.netpowerctrl.App;
1819
import oly.netpowerctrl.data.query.DataQueryCompletedObserver;
1920
import oly.netpowerctrl.data.query.DataQueryRefreshObserver;
2021
import oly.netpowerctrl.data.query.onDataQueryCompleted;
@@ -27,7 +28,6 @@
2728
import oly.netpowerctrl.ioconnection.DeviceIOConnections;
2829
import oly.netpowerctrl.ioconnection.IOConnection;
2930
import oly.netpowerctrl.ioconnection.IOConnectionsCollection;
30-
import oly.netpowerctrl.main.App;
3131
import oly.netpowerctrl.main.GuiThreadHandler;
3232
import oly.netpowerctrl.main.MainActivity;
3333
import oly.netpowerctrl.network.NetworkChangedBroadcastReceiver;
@@ -229,13 +229,16 @@ public void onDestroy() {
229229
loadStoreCollections.finish(this);
230230
loadStoreCollections = null;
231231

232+
deviceQuery.finish();
232233
UDPSend.killSendThread();
233234

234235
// Clean up
235236
for (AbstractBasePlugin abstractBasePlugin : plugins)
236237
abstractBasePlugin.onDestroy();
237238
plugins.clear();
238239

240+
clearDataStorage();
241+
239242
weakHashMap.clear();
240243
mDiscoverService = null;
241244

@@ -323,10 +326,7 @@ public void setLoadStoreController(LoadStoreCollections loadStoreCollections) {
323326
/**
324327
* Tidy up all lists and references.
325328
*/
326-
public void clear() {
327-
// There shouldn't be any device-listen observers anymore,
328-
// but we clear the list here nevertheless.
329-
deviceQuery.finish();
329+
public void clearDataStorage() {
330330
connections.storage.clear();
331331
credentials.storage.clear();
332332
groups.storage.clear();

app/src/main/java/oly/netpowerctrl/data/LoadStoreCollections.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,12 +9,12 @@
99
import java.io.FileOutputStream;
1010
import java.io.IOException;
1111

12+
import oly.netpowerctrl.App;
1213
import oly.netpowerctrl.data.storage_container.CollectionStorage;
1314
import oly.netpowerctrl.devices.Credentials;
1415
import oly.netpowerctrl.executables.ExecutableFabric;
1516
import oly.netpowerctrl.groups.Group;
1617
import oly.netpowerctrl.ioconnection.IOConnectionFabric;
17-
import oly.netpowerctrl.main.App;
1818
import oly.netpowerctrl.preferences.SharedPrefs;
1919
import oly.netpowerctrl.status_bar.FavItem;
2020
import oly.netpowerctrl.ui.notifications.InAppNotifications;

app/src/main/java/oly/netpowerctrl/data/graphic/LoadStoreIconData.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,10 +14,10 @@
1414
import java.io.FileOutputStream;
1515
import java.io.IOException;
1616

17+
import oly.netpowerctrl.App;
1718
import oly.netpowerctrl.R;
1819
import oly.netpowerctrl.executables.Executable;
1920
import oly.netpowerctrl.executables.ExecutableType;
20-
import oly.netpowerctrl.main.App;
2121
import oly.netpowerctrl.preferences.SharedPrefs;
2222

2323
/**

app/src/main/java/oly/netpowerctrl/data/storage_container/CollectionStorage.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ public abstract class CollectionStorage<ITEM extends IOInterface> {
1313
// if (storage == null)
1414
// return;
1515
//
16-
// storage.clear(this);
16+
// storage.clearDataStorage(this);
1717
// for (ITEM item : items.values())
1818
// storage.save(this, item);
1919
// }

app/src/main/java/oly/netpowerctrl/devices/AutomaticSetup.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,13 +12,13 @@
1212
import java.util.ArrayList;
1313
import java.util.List;
1414

15+
import oly.netpowerctrl.App;
1516
import oly.netpowerctrl.R;
1617
import oly.netpowerctrl.data.AbstractBasePlugin;
1718
import oly.netpowerctrl.data.DataService;
1819
import oly.netpowerctrl.data.onServiceReady;
1920
import oly.netpowerctrl.executables.Executable;
2021
import oly.netpowerctrl.groups.Group;
21-
import oly.netpowerctrl.main.App;
2222
import oly.netpowerctrl.utils.AnimationController;
2323
import oly.netpowerctrl.utils.ObserverUpdateActions;
2424
import oly.netpowerctrl.utils.onCollectionUpdated;

app/src/main/java/oly/netpowerctrl/devices/DeviceQuery.java

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,12 +11,12 @@
1111
import java.util.List;
1212
import java.util.Map;
1313

14+
import oly.netpowerctrl.App;
1415
import oly.netpowerctrl.R;
1516
import oly.netpowerctrl.data.AbstractBasePlugin;
1617
import oly.netpowerctrl.data.DataService;
1718
import oly.netpowerctrl.ioconnection.DeviceIOConnections;
1819
import oly.netpowerctrl.ioconnection.IOConnection;
19-
import oly.netpowerctrl.main.App;
2020
import oly.netpowerctrl.network.ReachabilityStates;
2121

2222
/**
@@ -31,6 +31,7 @@ public class DeviceQuery {
3131
private static final int MSG_RESPONSE = 3;
3232
private static final int MSG_ADD_OBSERVER = 4;
3333
private static final int MSG_RECHECK_MINIMUM_TIME = 5;
34+
private static final int MSG_EXIT = 6;
3435
@SuppressWarnings("unused")
3536
private static final String TAG = "DeviceQuery";
3637
private static int instances = 0;
@@ -47,6 +48,7 @@ public void run() {
4748
Looper.prepare();
4849
handler = new RepeatHandler(Looper.myLooper());
4950
Looper.loop();
51+
--instances;
5052
}
5153
};
5254

@@ -60,7 +62,14 @@ public DeviceQuery(DataService dataService) {
6062
* Will call onObserverJobFinished in the gui thread.
6163
*/
6264
public void finish() {
63-
Looper.myLooper().quit();
65+
if (thread.isAlive()) {
66+
handler.sendEmptyMessage(MSG_EXIT);
67+
}
68+
try {
69+
thread.join(2000);
70+
thread.interrupt();
71+
} catch (InterruptedException ignored) {
72+
}
6473
}
6574

6675
protected void doAction(Credentials credentials, int attempt) {
@@ -304,6 +313,10 @@ public void handleMessage(Message msg) {
304313
deviceSuccess(credentials);
305314
break;
306315
}
316+
case MSG_EXIT: {
317+
Looper.myLooper().quit();
318+
break;
319+
}
307320
}
308321
}
309322
}

app/src/main/java/oly/netpowerctrl/devices/TestCredentials.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,10 @@
55

66
import java.util.List;
77

8+
import oly.netpowerctrl.App;
89
import oly.netpowerctrl.data.DataService;
910
import oly.netpowerctrl.executables.Executable;
1011
import oly.netpowerctrl.executables.ExecutableCollection;
11-
import oly.netpowerctrl.main.App;
1212
import oly.netpowerctrl.utils.ObserverUpdateActions;
1313
import oly.netpowerctrl.utils.onCollectionUpdated;
1414

0 commit comments

Comments
 (0)