From bb22bcee95e3c6cf6c9ba350e1fc7353da51d97b Mon Sep 17 00:00:00 2001 From: jens Date: Mon, 22 Feb 2021 19:46:28 +0100 Subject: [PATCH] News download finished. --- .../jens/automation2/ActivityMainScreen.java | 27 +++++++++++++------ .../java/com/jens/automation2/Settings.java | 7 +++++ app/src/main/res/layout/settings.xml | 5 ++++ app/src/main/res/values/strings.xml | 2 ++ 4 files changed, 33 insertions(+), 8 deletions(-) diff --git a/app/src/main/java/com/jens/automation2/ActivityMainScreen.java b/app/src/main/java/com/jens/automation2/ActivityMainScreen.java index c2c2a7bc..c95ac99c 100644 --- a/app/src/main/java/com/jens/automation2/ActivityMainScreen.java +++ b/app/src/main/java/com/jens/automation2/ActivityMainScreen.java @@ -9,6 +9,7 @@ import android.net.Uri; import android.os.Build; import android.os.Bundle; import android.os.StrictMode; +import android.util.Log; import android.view.MotionEvent; import android.view.View; import android.view.View.OnClickListener; @@ -603,15 +604,25 @@ public class ActivityMainScreen extends ActivityGeneric public void processNewsResult(ArrayList newsToDisplay) { - if (newsToDisplay.size() > 0) + if(Settings.displayNewsOnMainScreen) { - activityMainScreenInstance.tvMainScreenNote3.setText(HtmlCompat.fromHtml(newsToDisplay.get(0).toStringHtml(), 0)); - activityMainScreenInstance.tvMainScreenNote3.setVisibility(View.VISIBLE); - } - else - { - activityMainScreenInstance.tvMainScreenNote3.setText(""); - activityMainScreenInstance.tvMainScreenNote3.setVisibility(View.GONE); + try + { + if (newsToDisplay.size() > 0) + { + activityMainScreenInstance.tvMainScreenNote3.setText(HtmlCompat.fromHtml(newsToDisplay.get(0).toStringHtml(), 0)); + activityMainScreenInstance.tvMainScreenNote3.setVisibility(View.VISIBLE); + } + else + { + activityMainScreenInstance.tvMainScreenNote3.setText(""); + activityMainScreenInstance.tvMainScreenNote3.setVisibility(View.GONE); + } + } + catch(Exception e) + { + Miscellaneous.logEvent("e", "Error displaying news", Log.getStackTraceString(e), 3); + } } } } \ No newline at end of file diff --git a/app/src/main/java/com/jens/automation2/Settings.java b/app/src/main/java/com/jens/automation2/Settings.java index a35a5967..15af4d18 100644 --- a/app/src/main/java/com/jens/automation2/Settings.java +++ b/app/src/main/java/com/jens/automation2/Settings.java @@ -55,6 +55,7 @@ public class Settings implements SharedPreferences public static boolean privacyLocationing; public static int startScreen; public static boolean executeRulesAndProfilesWithSingleClick; + public static boolean displayNewsOnMainScreen; public static boolean lockSoundChanges; public static boolean noticeAndroid9MicrophoneShown; public static boolean noticeAndroid10WifiShown; @@ -105,6 +106,7 @@ public class Settings implements SharedPreferences protected static final boolean default_privacyLocationing = false; protected static final int default_startScreen = 0; protected static final boolean default_executeRulesAndProfilesWithSingleClick = false; + protected static final boolean default_displayNewsOnMainScreen = true; protected static final boolean default_lockSoundChanges = false; protected static final long default_lastNewsPolltime = -1; @@ -240,6 +242,7 @@ public class Settings implements SharedPreferences startScreen = Integer.parseInt(prefs.getString("startScreen", String.valueOf(default_startScreen))); executeRulesAndProfilesWithSingleClick = prefs.getBoolean("executeRulesAndProfilesWithSingleClick", default_executeRulesAndProfilesWithSingleClick); + displayNewsOnMainScreen = prefs.getBoolean("displayNewsOnMainScreen", default_displayNewsOnMainScreen); lockSoundChanges = prefs.getBoolean("lockSoundChanges", default_lockSoundChanges); noticeAndroid9MicrophoneShown = prefs.getBoolean("noticeAndroid9MicrophoneShown", false); @@ -395,6 +398,9 @@ public class Settings implements SharedPreferences if(!prefs.contains("executeRulesAndProfilesWithSingleClick") | force) editor.putBoolean("executeRulesAndProfilesWithSingleClick", default_executeRulesAndProfilesWithSingleClick); + if(!prefs.contains("displayNewsOnMainScreen") | force) + editor.putBoolean("displayNewsOnMainScreen", default_displayNewsOnMainScreen); + if(!prefs.contains("lockSoundChanges") | force) editor.putBoolean("lockSoundChanges", default_lockSoundChanges); @@ -465,6 +471,7 @@ public class Settings implements SharedPreferences editor.putBoolean("privacyLocationing", privacyLocationing); editor.putString("startScreen", String.valueOf(startScreen)); editor.putBoolean("executeRulesAndProfilesWithSingleClick", executeRulesAndProfilesWithSingleClick); + editor.putBoolean("displayNewsOnMainScreen", displayNewsOnMainScreen); editor.putBoolean("lockSoundChanges", lockSoundChanges); editor.putBoolean("noticeAndroid9MicrophoneShown", noticeAndroid9MicrophoneShown); diff --git a/app/src/main/res/layout/settings.xml b/app/src/main/res/layout/settings.xml index d07fe119..5e26c3eb 100644 --- a/app/src/main/res/layout/settings.xml +++ b/app/src/main/res/layout/settings.xml @@ -56,6 +56,11 @@ android:key="executeRulesAndProfilesWithSingleClick" android:title="@string/executeRulesAndProfilesWithSingleClickTitle" /> + + This feature is based on non-free software. Therefore is is not available in the F-Droid version. Your settings and or rules are currently referencing non-free features that cannot be provided in the F-Droid version. published on + Display application news on main screen + Announcements about this app only, we\'re probably talking about 1-2 per year, not more. \ No newline at end of file