Add reverse volume key

This commit is contained in:
tehcneko committed 2021-03-20 21:37:24 +08:00
1 parent 311159d5fa
commit d1df944bba
6 files changed
+42 -1

No files matched your search

@@ -159,6 +159,8 @@ public class Settings {
private static final boolean DEFAULT_SHOW_PAGE_INTERVAL = true;
private static final String KEY_VOLUME_PAGE = "volume_page";
private static final boolean DEFAULT_VOLUME_PAGE = false;
private static final String KEY_REVERSE_VOLUME_PAGE = "reserve_volume_page";
private static final boolean DEFAULT_REVERSE_VOLUME_PAGE = false;
private static final String KEY_READING_FULLSCREEN = "reading_fullscreen";
private static final boolean VALUE_READING_FULLSCREEN = true;
private static final String KEY_CUSTOM_SCREEN_LIGHTNESS = "custom_screen_lightness";
@@ -697,6 +699,14 @@ public class Settings {
putBoolean(KEY_VOLUME_PAGE, value);
}
public static boolean getReverseVolumePage() {
return getBoolean(KEY_REVERSE_VOLUME_PAGE, DEFAULT_REVERSE_VOLUME_PAGE);
}
public static void putReverseVolumePage(boolean value) {
putBoolean(KEY_REVERSE_VOLUME_PAGE, value);
}
public static boolean getReadingFullscreen() {
return getBoolean(KEY_READING_FULLSCREEN, VALUE_READING_FULLSCREEN);
}
@@ -305,7 +305,8 @@ public class GalleryActivity extends EhActivity implements SeekBar.OnSeekBarChan
@Override
protected void attachBaseContext(@NonNull Context newBase) {
if (defaultNightMode == DayNightDelegate.MODE_NIGHT_UNSPECIFIED) defaultNightMode = DayNightDelegate.getDefaultNightMode();
if (defaultNightMode == DayNightDelegate.MODE_NIGHT_UNSPECIFIED)
defaultNightMode = DayNightDelegate.getDefaultNightMode();
switch (Settings.getReadTheme()) {
case 0:
DayNightDelegate.setDefaultNightMode(defaultNightMode);
@@ -543,6 +544,13 @@ public class GalleryActivity extends EhActivity implements SeekBar.OnSeekBarChan
// Check volume
if (Settings.getVolumePage()) {
if (Settings.getReverseVolumePage()) {
if (keyCode == KeyEvent.KEYCODE_VOLUME_UP) {
keyCode = KeyEvent.KEYCODE_VOLUME_DOWN;
} else if (keyCode == KeyEvent.KEYCODE_VOLUME_DOWN) {
keyCode = KeyEvent.KEYCODE_VOLUME_UP;
}
}
if (keyCode == KeyEvent.KEYCODE_VOLUME_UP) {
if (mLayoutMode == GalleryView.LAYOUT_RIGHT_TO_LEFT) {
mGalleryView.pageRight();
@@ -981,6 +989,7 @@ public class GalleryActivity extends EhActivity implements SeekBar.OnSeekBarChan
private final Switch mShowBattery;
private final Switch mShowPageInterval;
private final Switch mVolumePage;
private final Switch mReverseVolumePage;
private final Switch mReadingFullscreen;
private final Switch mCustomScreenLightness;
private final SeekBar mScreenLightness;
@@ -999,6 +1008,7 @@ public class GalleryActivity extends EhActivity implements SeekBar.OnSeekBarChan
mShowBattery = mView.findViewById(R.id.show_battery);
mShowPageInterval = mView.findViewById(R.id.show_page_interval);
mVolumePage = mView.findViewById(R.id.volume_page);
mReverseVolumePage = mView.findViewById(R.id.reverse_volume_page);
mReadingFullscreen = mView.findViewById(R.id.reading_fullscreen);
mCustomScreenLightness = mView.findViewById(R.id.custom_screen_lightness);
mScreenLightness = mView.findViewById(R.id.screen_lightness);
@@ -1014,6 +1024,9 @@ public class GalleryActivity extends EhActivity implements SeekBar.OnSeekBarChan
mShowBattery.setChecked(Settings.getShowBattery());
mShowPageInterval.setChecked(Settings.getShowPageInterval());
mVolumePage.setChecked(Settings.getVolumePage());
mVolumePage.setOnCheckedChangeListener((buttonView, isChecked) -> mReverseVolumePage.setEnabled(isChecked));
mReverseVolumePage.setEnabled(mVolumePage.isChecked());
mReverseVolumePage.setChecked(Settings.getReverseVolumePage());
mReadingFullscreen.setChecked(Settings.getReadingFullscreen());
mCustomScreenLightness.setChecked(Settings.getCustomScreenLightness());
mScreenLightness.setProgress(Settings.getScreenLightness());
@@ -1043,6 +1056,7 @@ public class GalleryActivity extends EhActivity implements SeekBar.OnSeekBarChan
boolean showBattery = mShowBattery.isChecked();
boolean showPageInterval = mShowPageInterval.isChecked();
boolean volumePage = mVolumePage.isChecked();
boolean reverseVolumePage = mReverseVolumePage.isChecked();
boolean readingFullscreen = mReadingFullscreen.isChecked();
boolean customScreenLightness = mCustomScreenLightness.isChecked();
int screenLightness = mScreenLightness.getProgress();
@@ -1061,6 +1075,7 @@ public class GalleryActivity extends EhActivity implements SeekBar.OnSeekBarChan
Settings.putShowBattery(showBattery);
Settings.putShowPageInterval(showPageInterval);
Settings.putVolumePage(volumePage);
Settings.putReverseVolumePage(reverseVolumePage);
Settings.putReadingFullscreen(readingFullscreen);
Settings.putCustomScreenLightness(customScreenLightness);
Settings.putScreenLightness(screenLightness);