Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/stefan-niedermann/nextcloud-notes.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Niedermann <info@niedermann.it>2022-06-27 11:48:04 +0300
committerStefan Niedermann <info@niedermann.it>2022-06-27 11:48:04 +0300
commita06e648d178ebc074119d58107e57957c05efc9f (patch)
tree82a15fa7564c54752bf5fd7ff0a7dff8750d2a16
parent9f88971d53e397940096a00d288532d9e9eb783c (diff)
#1531 Add option to not keep screen on
Signed-off-by: Stefan Niedermann <info@niedermann.it>
-rw-r--r--app/src/main/java/it/niedermann/owncloud/notes/edit/EditNoteActivity.java18
-rw-r--r--app/src/main/java/it/niedermann/owncloud/notes/preferences/PreferencesFragment.java12
-rw-r--r--app/src/main/res/drawable/ic_baseline_smartphone_24.xml11
-rw-r--r--app/src/main/res/values/strings.xml5
-rw-r--r--app/src/main/res/xml/preferences.xml8
-rw-r--r--fastlane/metadata/android/en-US/changelogs/3005001.txt1
6 files changed, 48 insertions, 7 deletions
diff --git a/app/src/main/java/it/niedermann/owncloud/notes/edit/EditNoteActivity.java b/app/src/main/java/it/niedermann/owncloud/notes/edit/EditNoteActivity.java
index a8c21490..fe5b87bc 100644
--- a/app/src/main/java/it/niedermann/owncloud/notes/edit/EditNoteActivity.java
+++ b/app/src/main/java/it/niedermann/owncloud/notes/edit/EditNoteActivity.java
@@ -1,5 +1,7 @@
package it.niedermann.owncloud.notes.edit;
+import static it.niedermann.owncloud.notes.shared.model.ENavigationCategoryType.FAVORITES;
+
import android.content.Intent;
import android.os.Bundle;
import android.text.TextUtils;
@@ -20,26 +22,22 @@ import com.nextcloud.android.sso.helper.SingleAccountHelper;
import java.io.BufferedReader;
import java.io.IOException;
-import java.io.InputStream;
import java.io.InputStreamReader;
import java.util.Calendar;
import java.util.Objects;
+import it.niedermann.android.sharedpreferences.SharedPreferenceBooleanLiveData;
import it.niedermann.owncloud.notes.LockedActivity;
import it.niedermann.owncloud.notes.R;
import it.niedermann.owncloud.notes.accountpicker.AccountPickerListener;
import it.niedermann.owncloud.notes.databinding.ActivityEditBinding;
-import it.niedermann.owncloud.notes.databinding.ActivityEditBinding;
import it.niedermann.owncloud.notes.edit.category.CategoryViewModel;
import it.niedermann.owncloud.notes.persistence.entity.Account;
import it.niedermann.owncloud.notes.persistence.entity.Note;
-import it.niedermann.owncloud.notes.shared.model.DBStatus;
import it.niedermann.owncloud.notes.shared.model.NavigationCategory;
import it.niedermann.owncloud.notes.shared.util.NoteUtil;
import it.niedermann.owncloud.notes.shared.util.ShareUtil;
-import static it.niedermann.owncloud.notes.shared.model.ENavigationCategoryType.FAVORITES;
-
public class EditNoteActivity extends LockedActivity implements BaseNoteFragment.NoteFragmentListener, AccountPickerListener {
private static final String TAG = EditNoteActivity.class.getSimpleName();
@@ -72,7 +70,14 @@ public class EditNoteActivity extends LockedActivity implements BaseNoteFragment
return;
}
- getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
+ final var preferences = PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
+ new SharedPreferenceBooleanLiveData(preferences, getString(R.string.pref_key_keep_screen_on), true).observe(this, keepScreenOn -> {
+ if (keepScreenOn) {
+ Toast.makeText(getApplicationContext(), "ADD flag", Toast.LENGTH_SHORT).show();
+ getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
+ }
+ });
+
categoryViewModel = new ViewModelProvider(this).get(CategoryViewModel.class);
binding = ActivityEditBinding.inflate(getLayoutInflater());
@@ -103,6 +108,7 @@ public class EditNoteActivity extends LockedActivity implements BaseNoteFragment
@Override
protected void onStop() {
+ Toast.makeText(getApplicationContext(), "REMOVE flag", Toast.LENGTH_SHORT).show();
getWindow().clearFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
super.onStop();
}
diff --git a/app/src/main/java/it/niedermann/owncloud/notes/preferences/PreferencesFragment.java b/app/src/main/java/it/niedermann/owncloud/notes/preferences/PreferencesFragment.java
index e09c1ed4..f2a25259 100644
--- a/app/src/main/java/it/niedermann/owncloud/notes/preferences/PreferencesFragment.java
+++ b/app/src/main/java/it/niedermann/owncloud/notes/preferences/PreferencesFragment.java
@@ -33,6 +33,7 @@ public class PreferencesFragment extends PreferenceFragmentCompat implements Bra
private BrandedSwitchPreference gridViewPref;
private BrandedSwitchPreference preventScreenCapturePref;
private BrandedSwitchPreference backgroundSyncPref;
+ private BrandedSwitchPreference keepScreenOnPref;
@Override
public void onCreatePreferences(Bundle savedInstanceState, String rootKey) {
@@ -55,6 +56,16 @@ public class PreferencesFragment extends PreferenceFragmentCompat implements Bra
Log.e(TAG, "Could not find preference with key: \"" + getString(R.string.pref_key_gridview) + "\"");
}
+ keepScreenOnPref = findPreference(getString(R.string.pref_key_keep_screen_on));
+ if (keepScreenOnPref != null) {
+ keepScreenOnPref.setOnPreferenceChangeListener((Preference preference, Object newValue) -> {
+ Log.v(TAG, "keepScreenOnPref: " + keepScreenOnPref);
+ return true;
+ });
+ } else {
+ Log.e(TAG, "Could not find preference with key: \"" + getString(R.string.pref_key_gridview) + "\"");
+ }
+
preventScreenCapturePref = findPreference(getString(R.string.pref_key_prevent_screen_capture));
if (preventScreenCapturePref == null) {
Log.e(TAG, "Could not find \"" + getString(R.string.pref_key_prevent_screen_capture) + "\"-preference.");
@@ -125,5 +136,6 @@ public class PreferencesFragment extends PreferenceFragmentCompat implements Bra
gridViewPref.applyBrand(mainColor, textColor);
preventScreenCapturePref.applyBrand(mainColor, textColor);
backgroundSyncPref.applyBrand(mainColor, textColor);
+ keepScreenOnPref.applyBrand(mainColor, textColor);
}
}
diff --git a/app/src/main/res/drawable/ic_baseline_smartphone_24.xml b/app/src/main/res/drawable/ic_baseline_smartphone_24.xml
new file mode 100644
index 00000000..fc886c92
--- /dev/null
+++ b/app/src/main/res/drawable/ic_baseline_smartphone_24.xml
@@ -0,0 +1,11 @@
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+ android:width="24dp"
+ android:height="24dp"
+ android:autoMirrored="true"
+ android:tint="#757575"
+ android:viewportWidth="24"
+ android:viewportHeight="24">
+ <path
+ android:fillColor="#FF757575"
+ android:pathData="M17,1.01L7,1c-1.1,0 -2,0.9 -2,2v18c0,1.1 0.9,2 2,2h10c1.1,0 2,-0.9 2,-2V3c0,-1.1 -0.9,-1.99 -2,-1.99zM17,19H7V5h10v14z" />
+</vector>
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 1e1c0dca..961c42f3 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -49,6 +49,9 @@
<string name="settings_lock_summary">Device credentials</string>
<string name="settings_background_sync">Background synchronization</string>
<string name="settings_prevent_screen_capture">Prevent screen capture</string>
+ <string name="settings_gridview">Grid view</string>
+ <string name="settings_keep_screen_on">Keep screen on</string>
+ <string name="settings_keep_screen_on_summary">When viewing or editing a note</string>
<string name="error_sync">Synchronization failed: %1$s</string>
<string name="error_synchronization">Synchronization failed</string>
@@ -108,6 +111,7 @@
<string name="pref_key_theme" translatable="false">darkTheme</string>
<string name="pref_key_font" translatable="false">font</string>
<string name="pref_key_gridview" translatable="false">gridview</string>
+ <string name="pref_key_keep_screen_on" translatable="false">keepScreenOn</string>
<string name="pref_key_font_size" translatable="false">fontSize</string>
<string name="pref_key_wifi_only" translatable="false">wifiOnly</string>
<string name="pref_key_lock" translatable="false">lock</string>
@@ -201,7 +205,6 @@
<string name="append_to_note">Append to note</string>
<string name="change_note_title">Change note title</string>
<string name="menu_edit_title">Edit title</string>
- <string name="settings_gridview">Grid view</string>
<string name="simple_security">Security</string>
<string name="appearance_and_behavior">Appearance and behavior</string>
<string name="simple_synchronization">Synchronization</string>
diff --git a/app/src/main/res/xml/preferences.xml b/app/src/main/res/xml/preferences.xml
index 7ecfef1f..810f7ae6 100644
--- a/app/src/main/res/xml/preferences.xml
+++ b/app/src/main/res/xml/preferences.xml
@@ -67,6 +67,14 @@
android:layout="@layout/item_pref"
android:summary="%s"
android:title="@string/settings_note_mode" />
+
+ <it.niedermann.owncloud.notes.branding.BrandedSwitchPreference
+ android:defaultValue="true"
+ android:icon="@drawable/ic_baseline_smartphone_24"
+ android:key="@string/pref_key_keep_screen_on"
+ android:layout="@layout/item_pref"
+ android:summary="@string/settings_keep_screen_on_summary"
+ android:title="@string/settings_keep_screen_on" />
</it.niedermann.owncloud.notes.branding.BrandedPreferenceCategory>
<it.niedermann.owncloud.notes.branding.BrandedPreferenceCategory
diff --git a/fastlane/metadata/android/en-US/changelogs/3005001.txt b/fastlane/metadata/android/en-US/changelogs/3005001.txt
new file mode 100644
index 00000000..72297dfd
--- /dev/null
+++ b/fastlane/metadata/android/en-US/changelogs/3005001.txt
@@ -0,0 +1 @@
+- 📱️ Add option to not keep screen on (#1531) \ No newline at end of file