From 93c3e335dd920546e6c3974d148cf50c9efa19d0 Mon Sep 17 00:00:00 2001 From: Nikolay Pultsin Date: Mon, 26 Dec 2011 23:36:51 +0000 Subject: [PATCH] no ZLAndroidApplication.Instance() method --- .../android/fbreader/DictionaryUtil.java | 2 +- .../android/fbreader/SelectionCopyAction.java | 4 +--- .../fbreader/image/ImageViewActivity.java | 2 +- .../network/NetworkBookInfoActivity.java | 2 +- .../network/SQLiteNetworkDatabase.java | 5 ++-- .../android/fbreader/network/Util.java | 4 ++-- .../preferences/PreferenceActivity.java | 2 +- .../ZLAndroidApplicationWindow.java | 6 ++++- .../ui/android/library/ZLAndroidActivity.java | 23 +++++++++++-------- .../android/library/ZLAndroidApplication.java | 10 -------- 10 files changed, 28 insertions(+), 32 deletions(-) diff --git a/src/org/geometerplus/android/fbreader/DictionaryUtil.java b/src/org/geometerplus/android/fbreader/DictionaryUtil.java index 1826f9448..07aeb5212 100644 --- a/src/org/geometerplus/android/fbreader/DictionaryUtil.java +++ b/src/org/geometerplus/android/fbreader/DictionaryUtil.java @@ -191,7 +191,7 @@ public abstract class DictionaryUtil { final int minHeight = Math.min(200, screenHeight * 2 / 3); intent.putExtra(ColorDict3.HEIGHT, Math.max(minHeight, Math.min(maxHeight, space))); intent.putExtra(ColorDict3.GRAVITY, showAtBottom ? Gravity.BOTTOM : Gravity.TOP); - final ZLAndroidApplication application = ZLAndroidApplication.Instance(); + final ZLAndroidApplication application = (ZLAndroidApplication)activity.getApplication(); intent.putExtra(ColorDict3.FULLSCREEN, !application.ShowStatusBarOption.getValue()); } activity.startActivity(intent); diff --git a/src/org/geometerplus/android/fbreader/SelectionCopyAction.java b/src/org/geometerplus/android/fbreader/SelectionCopyAction.java index 30611990b..9a7ea275e 100644 --- a/src/org/geometerplus/android/fbreader/SelectionCopyAction.java +++ b/src/org/geometerplus/android/fbreader/SelectionCopyAction.java @@ -24,8 +24,6 @@ import android.text.ClipboardManager; import org.geometerplus.zlibrary.core.resources.ZLResource; -import org.geometerplus.zlibrary.ui.android.library.ZLAndroidApplication; - import org.geometerplus.fbreader.fbreader.FBReaderApp; import org.geometerplus.android.util.UIUtil; @@ -41,7 +39,7 @@ public class SelectionCopyAction extends FBAndroidAction { Reader.getTextView().clearSelection(); final ClipboardManager clipboard = - (ClipboardManager)ZLAndroidApplication.Instance().getSystemService(Application.CLIPBOARD_SERVICE); + (ClipboardManager)BaseActivity.getApplication().getSystemService(Application.CLIPBOARD_SERVICE); clipboard.setText(text); UIUtil.showMessageText( BaseActivity, diff --git a/src/org/geometerplus/android/fbreader/image/ImageViewActivity.java b/src/org/geometerplus/android/fbreader/image/ImageViewActivity.java index be6d9cfbc..e0bc2d767 100644 --- a/src/org/geometerplus/android/fbreader/image/ImageViewActivity.java +++ b/src/org/geometerplus/android/fbreader/image/ImageViewActivity.java @@ -46,7 +46,7 @@ public class ImageViewActivity extends Activity { super.onCreate(icicle); requestWindowFeature(Window.FEATURE_NO_TITLE); - final ZLAndroidApplication application = ZLAndroidApplication.Instance(); + final ZLAndroidApplication application = (ZLAndroidApplication)getApplication(); final boolean showStatusBar = application.ShowStatusBarOption.getValue(); getWindow().setFlags( WindowManager.LayoutParams.FLAG_FULLSCREEN, diff --git a/src/org/geometerplus/android/fbreader/network/NetworkBookInfoActivity.java b/src/org/geometerplus/android/fbreader/network/NetworkBookInfoActivity.java index feaef5815..ba7cd24cf 100644 --- a/src/org/geometerplus/android/fbreader/network/NetworkBookInfoActivity.java +++ b/src/org/geometerplus/android/fbreader/network/NetworkBookInfoActivity.java @@ -97,7 +97,7 @@ public class NetworkBookInfoActivity extends Activity implements NetworkLibrary. final NetworkLibrary library = NetworkLibrary.Instance(); if (!library.isInitialized()) { if (SQLiteNetworkDatabase.Instance() == null) { - new SQLiteNetworkDatabase(); + new SQLiteNetworkDatabase(getApplication()); } library.initialize(); } diff --git a/src/org/geometerplus/android/fbreader/network/SQLiteNetworkDatabase.java b/src/org/geometerplus/android/fbreader/network/SQLiteNetworkDatabase.java index 2bd2bc9fd..d954372ba 100644 --- a/src/org/geometerplus/android/fbreader/network/SQLiteNetworkDatabase.java +++ b/src/org/geometerplus/android/fbreader/network/SQLiteNetworkDatabase.java @@ -21,6 +21,7 @@ package org.geometerplus.android.fbreader.network; import java.util.*; +import android.app.Application; import android.content.Context; import android.database.Cursor; import android.database.sqlite.SQLiteDatabase; @@ -36,8 +37,8 @@ import org.geometerplus.android.util.SQLiteUtil; class SQLiteNetworkDatabase extends NetworkDatabase { private final SQLiteDatabase myDatabase; - SQLiteNetworkDatabase() { - myDatabase = ZLAndroidApplication.Instance().openOrCreateDatabase("network.db", Context.MODE_PRIVATE, null); + SQLiteNetworkDatabase(Application application) { + myDatabase = application.openOrCreateDatabase("network.db", Context.MODE_PRIVATE, null); migrate(); } diff --git a/src/org/geometerplus/android/fbreader/network/Util.java b/src/org/geometerplus/android/fbreader/network/Util.java index 0246b597a..29a186eb5 100644 --- a/src/org/geometerplus/android/fbreader/network/Util.java +++ b/src/org/geometerplus/android/fbreader/network/Util.java @@ -50,7 +50,7 @@ public abstract class Util implements UserRegistrationConstants { return intent; } - static void initLibrary(Activity activity) { + static void initLibrary(final Activity activity) { final NetworkLibrary library = NetworkLibrary.Instance(); if (library.isInitialized()) { return; @@ -59,7 +59,7 @@ public abstract class Util implements UserRegistrationConstants { UIUtil.wait("loadingNetworkLibrary", new Runnable() { public void run() { if (SQLiteNetworkDatabase.Instance() == null) { - new SQLiteNetworkDatabase(); + new SQLiteNetworkDatabase(activity.getApplication()); } library.initialize(); diff --git a/src/org/geometerplus/android/fbreader/preferences/PreferenceActivity.java b/src/org/geometerplus/android/fbreader/preferences/PreferenceActivity.java index 7452ac92a..37a4f31b3 100644 --- a/src/org/geometerplus/android/fbreader/preferences/PreferenceActivity.java +++ b/src/org/geometerplus/android/fbreader/preferences/PreferenceActivity.java @@ -46,7 +46,7 @@ public class PreferenceActivity extends ZLPreferenceActivity { @Override protected void init(Intent intent) { final FBReaderApp fbReader = (FBReaderApp)FBReaderApp.Instance(); - final ZLAndroidApplication androidApp = ZLAndroidApplication.Instance(); + final ZLAndroidApplication androidApp = (ZLAndroidApplication)getApplication(); final ColorProfile profile = fbReader.getColorProfile(); final Screen directoriesScreen = createPreferenceScreen("directories"); diff --git a/src/org/geometerplus/zlibrary/ui/android/application/ZLAndroidApplicationWindow.java b/src/org/geometerplus/zlibrary/ui/android/application/ZLAndroidApplicationWindow.java index cdad4f525..220330ea3 100644 --- a/src/org/geometerplus/zlibrary/ui/android/application/ZLAndroidApplicationWindow.java +++ b/src/org/geometerplus/zlibrary/ui/android/application/ZLAndroidApplicationWindow.java @@ -106,7 +106,11 @@ public final class ZLAndroidApplicationWindow extends ZLApplicationWindow { } public boolean canRotate() { - return !ZLAndroidApplication.Instance().AutoOrientationOption.getValue(); + final Activity activity = + ((ZLAndroidLibrary)ZLAndroidLibrary.Instance()).getActivity(); + return + activity != null && + !((ZLAndroidApplication)activity.getApplication()).AutoOrientationOption.getValue(); } public void close() { diff --git a/src/org/geometerplus/zlibrary/ui/android/library/ZLAndroidActivity.java b/src/org/geometerplus/zlibrary/ui/android/library/ZLAndroidActivity.java index ffeb4ce15..22ad1cfe0 100644 --- a/src/org/geometerplus/zlibrary/ui/android/library/ZLAndroidActivity.java +++ b/src/org/geometerplus/zlibrary/ui/android/library/ZLAndroidActivity.java @@ -97,7 +97,8 @@ public abstract class ZLAndroidActivity extends Activity { } requestWindowFeature(Window.FEATURE_NO_TITLE); - if (ZLAndroidApplication.Instance().DisableButtonLightsOption.getValue()) { + final ZLAndroidApplication androidApplication = (ZLAndroidApplication)getApplication(); + if (androidApplication.DisableButtonLightsOption.getValue()) { disableButtonLight(); } setContentView(R.layout.main); @@ -106,9 +107,9 @@ public abstract class ZLAndroidActivity extends Activity { getLibrary().setActivity(this); final ZLFile fileToOpen = fileFromIntent(getIntent()); - if (((ZLAndroidApplication)getApplication()).myMainWindow == null) { - ZLApplication application = createApplication(fileToOpen); - ((ZLAndroidApplication)getApplication()).myMainWindow = new ZLAndroidApplicationWindow(application); + if (androidApplication.myMainWindow == null) { + final ZLApplication application = createApplication(fileToOpen); + androidApplication.myMainWindow = new ZLAndroidApplicationWindow(application); application.initWindow(); } else { ZLApplication.Instance().openFile(fileToOpen); @@ -120,7 +121,7 @@ public abstract class ZLAndroidActivity extends Activity { public void onStart() { super.onStart(); - if (ZLAndroidApplication.Instance().AutoOrientationOption.getValue()) { + if (((ZLAndroidApplication)getApplication()).AutoOrientationOption.getValue()) { setAutoRotationMode(); } else { switch (myOrientation) { @@ -180,13 +181,14 @@ public abstract class ZLAndroidActivity extends Activity { @Override public void onResume() { super.onResume(); + final ZLAndroidApplication application = (ZLAndroidApplication)getApplication(); switchWakeLock( - ZLAndroidApplication.Instance().BatteryLevelToTurnScreenOffOption.getValue() < + application.BatteryLevelToTurnScreenOffOption.getValue() < ZLApplication.Instance().getBatteryLevel() ); myStartTimer = true; final int brightnessLevel = - ((ZLAndroidApplication)getApplication()).ScreenBrightnessLevelOption.getValue(); + application.ScreenBrightnessLevelOption.getValue(); if (brightnessLevel != 0) { setScreenBrightness(brightnessLevel); } else { @@ -236,7 +238,7 @@ public abstract class ZLAndroidActivity extends Activity { private int myChangeCounter; private int myOrientation = ActivityInfo.SCREEN_ORIENTATION_UNSPECIFIED; private void setAutoRotationMode() { - final ZLAndroidApplication application = ZLAndroidApplication.Instance(); + final ZLAndroidApplication application = (ZLAndroidApplication)getApplication(); myOrientation = application.AutoOrientationOption.getValue() ? ActivityInfo.SCREEN_ORIENTATION_SENSOR : ActivityInfo.SCREEN_ORIENTATION_NOSENSOR; setRequestedOrientation(myOrientation); @@ -292,9 +294,10 @@ public abstract class ZLAndroidActivity extends Activity { BroadcastReceiver myBatteryInfoReceiver = new BroadcastReceiver() { public void onReceive(Context context, Intent intent) { final int level = intent.getIntExtra("level", 100); - ((ZLAndroidApplication)getApplication()).myMainWindow.setBatteryLevel(level); + final ZLAndroidApplication application = (ZLAndroidApplication)getApplication(); + application.myMainWindow.setBatteryLevel(level); switchWakeLock( - ZLAndroidApplication.Instance().BatteryLevelToTurnScreenOffOption.getValue() < level + application.BatteryLevelToTurnScreenOffOption.getValue() < level ); } }; diff --git a/src/org/geometerplus/zlibrary/ui/android/library/ZLAndroidApplication.java b/src/org/geometerplus/zlibrary/ui/android/library/ZLAndroidApplication.java index 725a2bff9..d821a2560 100644 --- a/src/org/geometerplus/zlibrary/ui/android/library/ZLAndroidApplication.java +++ b/src/org/geometerplus/zlibrary/ui/android/library/ZLAndroidApplication.java @@ -30,8 +30,6 @@ import org.geometerplus.zlibrary.ui.android.application.ZLAndroidApplicationWind import org.geometerplus.zlibrary.ui.android.image.ZLAndroidImageManager; public class ZLAndroidApplication extends Application { - private static ZLAndroidApplication ourApplication; - public final ZLBooleanOption AutoOrientationOption = new ZLBooleanOption("LookNFeel", "AutoOrientation", false); public final ZLBooleanOption ShowStatusBarOption = new ZLBooleanOption("LookNFeel", "ShowStatusBar", hasNoHardwareMenuButton()); public final ZLBooleanOption ShowStatusBarWhenMenuIsActiveOption = new ZLBooleanOption("LookNFeel", "ShowStatusBarWithMenu", true); @@ -40,14 +38,6 @@ public class ZLAndroidApplication extends Application { public final ZLIntegerRangeOption ScreenBrightnessLevelOption = new ZLIntegerRangeOption("LookNFeel", "ScreenBrightnessLevel", 0, 100, 0); public final ZLBooleanOption DisableButtonLightsOption = new ZLBooleanOption("LookNFeel", "DisableButtonLights", true); - public static ZLAndroidApplication Instance() { - return ourApplication; - } - - public ZLAndroidApplication() { - ourApplication = this; - } - private boolean hasNoHardwareMenuButton() { return // Eken M001