diff --git a/app/src/main/java/com/hippo/ehviewer/Settings.java b/app/src/main/java/com/hippo/ehviewer/Settings.java
index 27403517f..17646c63f 100644
--- a/app/src/main/java/com/hippo/ehviewer/Settings.java
+++ b/app/src/main/java/com/hippo/ehviewer/Settings.java
@@ -170,6 +170,17 @@ public class Settings {
putIntToStr(KEY_START_POSITION, value);
}
+ private static final String KEY_KEEP_SCREEN_ON = "keep_screen_on";
+ private static final boolean DEFAULT_KEEP_SCREEN_ON = false;
+
+ public static boolean getKeepScreenOn() {
+ return getBoolean(KEY_KEEP_SCREEN_ON, DEFAULT_KEEP_SCREEN_ON);
+ }
+
+ public static void putKeepScreenOn(boolean value) {
+ putBoolean(KEY_KEEP_SCREEN_ON, value);
+ }
+
private static final String KEY_SHOW_CLOCK = "gallery_show_clock";
private static final boolean DEFAULT_SHOW_CLOCK = true;
diff --git a/app/src/main/java/com/hippo/ehviewer/ui/GalleryActivity.java b/app/src/main/java/com/hippo/ehviewer/ui/GalleryActivity.java
index d8d694afd..be6dc36eb 100644
--- a/app/src/main/java/com/hippo/ehviewer/ui/GalleryActivity.java
+++ b/app/src/main/java/com/hippo/ehviewer/ui/GalleryActivity.java
@@ -29,6 +29,7 @@ import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.SwitchCompat;
import android.view.KeyEvent;
import android.view.View;
+import android.view.WindowManager;
import android.widget.Spinner;
import android.widget.TextView;
@@ -241,6 +242,13 @@ public class GalleryActivity extends AppCompatActivity
mCurrentIndex = mGalleryView.getCurrentIndex();
mLayoutMode = mGalleryView.getLayoutMode();
updateSlider();
+
+ // Update keep screen on
+ if (Settings.getKeepScreenOn()) {
+ getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
+ } else {
+ getWindow().clearFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
+ }
}
@Override
@@ -543,6 +551,7 @@ public class GalleryActivity extends AppCompatActivity
private final Spinner mReadingDirection;
private final Spinner mScaleMode;
private final Spinner mStartPosition;
+ private final SwitchCompat mKeepScreenOn;
private final SwitchCompat mShowClock;
private final SwitchCompat mShowBattery;
private final SwitchCompat mVolumePage;
@@ -553,6 +562,7 @@ public class GalleryActivity extends AppCompatActivity
mReadingDirection = (Spinner) mView.findViewById(R.id.reading_direction);
mScaleMode = (Spinner) mView.findViewById(R.id.page_scaling);
mStartPosition = (Spinner) mView.findViewById(R.id.start_position);
+ mKeepScreenOn = (SwitchCompat) mView.findViewById(R.id.keep_screen_on);
mShowClock = (SwitchCompat) mView.findViewById(R.id.show_clock);
mShowBattery = (SwitchCompat) mView.findViewById(R.id.show_battery);
mVolumePage = (SwitchCompat) mView.findViewById(R.id.volume_page);
@@ -560,6 +570,7 @@ public class GalleryActivity extends AppCompatActivity
mReadingDirection.setSelection(Settings.getReadingDirection());
mScaleMode.setSelection(Settings.getPageScaling());
mStartPosition.setSelection(Settings.getStartPosition());
+ mKeepScreenOn.setChecked(Settings.getKeepScreenOn());
mShowClock.setChecked(Settings.getShowClock());
mShowBattery.setChecked(Settings.getShowBattery());
mVolumePage.setChecked(Settings.getVolumePage());
@@ -574,6 +585,7 @@ public class GalleryActivity extends AppCompatActivity
int layoutMode = GalleryView.sanitizeLayoutMode(mReadingDirection.getSelectedItemPosition());
int scaleMode = ImageView.sanitizeScaleMode(mScaleMode.getSelectedItemPosition());
int startPosition = ImageView.sanitizeStartPosition(mStartPosition.getSelectedItemPosition());
+ boolean keepScreenOn = mKeepScreenOn.isChecked();
boolean showClock = mShowClock.isChecked();
boolean showBattery = mShowBattery.isChecked();
boolean volumePage = mVolumePage.isChecked();
@@ -581,6 +593,7 @@ public class GalleryActivity extends AppCompatActivity
Settings.putReadingDirection(layoutMode);
Settings.putPageScaling(scaleMode);
Settings.putStartPosition(startPosition);
+ Settings.putKeepScreenOn(keepScreenOn);
Settings.putShowClock(showClock);
Settings.putShowBattery(showBattery);
Settings.putVolumePage(volumePage);
@@ -590,6 +603,11 @@ public class GalleryActivity extends AppCompatActivity
mGalleryView.setScaleMode(scaleMode);
mGalleryView.setStartPosition(startPosition);
}
+ if (keepScreenOn) {
+ getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
+ } else {
+ getWindow().clearFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
+ }
if (mClock != null) {
mClock.setVisibility(showClock ? View.VISIBLE : View.GONE);
}
diff --git a/app/src/main/res/layout/dialog_gallery_menu.xml b/app/src/main/res/layout/dialog_gallery_menu.xml
index e22ade109..4834c8fcb 100644
--- a/app/src/main/res/layout/dialog_gallery_menu.xml
+++ b/app/src/main/res/layout/dialog_gallery_menu.xml
@@ -63,7 +63,7 @@
android:layout_height="wrap_content"
android:layout_weight="1"
android:layout_gravity="center_vertical"
- android:text="@string/settings_read_reading_page_scaling_title"
+ android:text="@string/settings_read_page_scaling_title"
android:textColor="@color/primary_text_dark"/>
+
+
从左至右
从右至左
从上至下
- 页面缩放
- 原始尺寸
- 匹配宽度
- 匹配长度
- 匹配屏幕
- 固定缩放
- 开页位置
- 左上角
- 右上角
- 左下角
- 右下角
- 中心
+ 页面缩放
+ 原始尺寸
+ 匹配宽度
+ 匹配长度
+ 匹配屏幕
+ 固定缩放
+ 开页位置
+ 左上角
+ 右上角
+ 左下角
+ 右下角
+ 中心
+ 屏幕常亮
显示时钟
显示电量
使用音量键翻页
diff --git a/app/src/main/res/values/arrays.xml b/app/src/main/res/values/arrays.xml
index f7ea97b74..a0c98e8a3 100644
--- a/app/src/main/res/values/arrays.xml
+++ b/app/src/main/res/values/arrays.xml
@@ -37,11 +37,11 @@
- - @string/settings_read_reading_page_scaling_actual_size
- - @string/settings_read_reading_page_scaling_fit_to_width
- - @string/settings_read_reading_page_scaling_fit_to_height
- - @string/settings_read_reading_page_scaling_fit_to_screen
- - @string/settings_read_reading_page_scaling_fixed_scale
+ - @string/settings_read_page_scaling_actual_size
+ - @string/settings_read_page_scaling_fit_to_width
+ - @string/settings_read_page_scaling_fit_to_height
+ - @string/settings_read_page_scaling_fit_to_screen
+ - @string/settings_read_page_scaling_fixed_scale
@@ -53,11 +53,11 @@
- - @string/settings_read_reading_start_position_top_left
- - @string/settings_read_reading_start_position_top_right
- - @string/settings_read_reading_start_position_bottom_left
- - @string/settings_read_reading_start_position_bottom_right
- - @string/settings_read_reading_start_position_center
+ - @string/settings_read_start_position_top_left
+ - @string/settings_read_start_position_top_right
+ - @string/settings_read_start_position_bottom_left
+ - @string/settings_read_start_position_bottom_right
+ - @string/settings_read_start_position_center
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 4dcedf9b3..0491e6d41 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -230,18 +230,19 @@
Left to right
Right to left
Top to bottom
- Page scaling
- Actual size
- Fit to width
- Fit to height
- Fit to screen
- Fixed scale
- Start position
- Top left
- Top right
- Bottom left
- Bottom right
- Center
+ Page scaling
+ Actual size
+ Fit to width
+ Fit to height
+ Fit to screen
+ Fixed scale
+ Start position
+ Top left
+ Top right
+ Bottom left
+ Bottom right
+ Center
+ Keep screen on
Show clock
Show battery
Use volume key to turn pages
diff --git a/app/src/main/res/xml/read_settings.xml b/app/src/main/res/xml/read_settings.xml
index 73d757101..88bafbdee 100644
--- a/app/src/main/res/xml/read_settings.xml
+++ b/app/src/main/res/xml/read_settings.xml
@@ -28,7 +28,7 @@
+
+