mirror of
				https://github.com/TeamNewPipe/NewPipe
				synced 2025-10-30 23:03:00 +00:00 
			
		
		
		
	Merge branch 'dev' of github.com:TeamNewPipe/NewPipe into alang-selector
This commit is contained in:
		| @@ -2007,7 +2007,10 @@ public final class VideoDetailFragment | ||||
|             restoreDefaultBrightness(); | ||||
|         } else { | ||||
|             // Do not restore if user has disabled brightness gesture | ||||
|             if (!PlayerHelper.isBrightnessGestureEnabled(activity)) { | ||||
|             if (!PlayerHelper.getActionForRightGestureSide(activity) | ||||
|                     .equals(getString(R.string.brightness_control_key)) | ||||
|                     && !PlayerHelper.getActionForLeftGestureSide(activity) | ||||
|                     .equals(getString(R.string.brightness_control_key))) { | ||||
|                 return; | ||||
|             } | ||||
|             // Restore already saved brightness level | ||||
|   | ||||
| @@ -193,18 +193,20 @@ class MainPlayerGestureListener( | ||||
|         isMoving = true | ||||
|  | ||||
|         // -- Brightness and Volume control -- | ||||
|         val isBrightnessGestureEnabled = PlayerHelper.isBrightnessGestureEnabled(player.context) | ||||
|         val isVolumeGestureEnabled = PlayerHelper.isVolumeGestureEnabled(player.context) | ||||
|         if (isBrightnessGestureEnabled && isVolumeGestureEnabled) { | ||||
|             if (getDisplayHalfPortion(initialEvent) === DisplayPortion.LEFT_HALF) { | ||||
|                 onScrollBrightness(distanceY) | ||||
|             } else /* DisplayPortion.RIGHT_HALF */ { | ||||
|                 onScrollVolume(distanceY) | ||||
|         if (getDisplayHalfPortion(initialEvent) == DisplayPortion.RIGHT_HALF) { | ||||
|             when (PlayerHelper.getActionForRightGestureSide(player.context)) { | ||||
|                 player.context.getString(R.string.volume_control_key) -> | ||||
|                     onScrollVolume(distanceY) | ||||
|                 player.context.getString(R.string.brightness_control_key) -> | ||||
|                     onScrollBrightness(distanceY) | ||||
|             } | ||||
|         } else { | ||||
|             when (PlayerHelper.getActionForLeftGestureSide(player.context)) { | ||||
|                 player.context.getString(R.string.volume_control_key) -> | ||||
|                     onScrollVolume(distanceY) | ||||
|                 player.context.getString(R.string.brightness_control_key) -> | ||||
|                     onScrollBrightness(distanceY) | ||||
|             } | ||||
|         } else if (isBrightnessGestureEnabled) { | ||||
|             onScrollBrightness(distanceY) | ||||
|         } else if (isVolumeGestureEnabled) { | ||||
|             onScrollVolume(distanceY) | ||||
|         } | ||||
|  | ||||
|         return true | ||||
|   | ||||
| @@ -228,14 +228,16 @@ public final class PlayerHelper { | ||||
|                 .getBoolean(context.getString(R.string.resume_on_audio_focus_gain_key), false); | ||||
|     } | ||||
|  | ||||
|     public static boolean isVolumeGestureEnabled(@NonNull final Context context) { | ||||
|     public static String getActionForRightGestureSide(@NonNull final Context context) { | ||||
|         return getPreferences(context) | ||||
|                 .getBoolean(context.getString(R.string.volume_gesture_control_key), true); | ||||
|                 .getString(context.getString(R.string.right_gesture_control_key), | ||||
|                         context.getString(R.string.default_right_gesture_control_value)); | ||||
|     } | ||||
|  | ||||
|     public static boolean isBrightnessGestureEnabled(@NonNull final Context context) { | ||||
|     public static String getActionForLeftGestureSide(@NonNull final Context context) { | ||||
|         return getPreferences(context) | ||||
|                 .getBoolean(context.getString(R.string.brightness_gesture_control_key), true); | ||||
|                 .getString(context.getString(R.string.left_gesture_control_key), | ||||
|                         context.getString(R.string.default_left_gesture_control_value)); | ||||
|     } | ||||
|  | ||||
|     public static boolean isStartMainPlayerFullscreenEnabled(@NonNull final Context context) { | ||||
|   | ||||
| @@ -108,6 +108,25 @@ public final class SettingMigrations { | ||||
|         } | ||||
|     }; | ||||
|  | ||||
|     public static final Migration MIGRATION_4_5 = new Migration(4, 5) { | ||||
|         @Override | ||||
|         protected void migrate(final Context context) { | ||||
|             final boolean brightness = sp.getBoolean("brightness_gesture_control", true); | ||||
|             final boolean volume = sp.getBoolean("volume_gesture_control", true); | ||||
|  | ||||
|             final SharedPreferences.Editor editor = sp.edit(); | ||||
|  | ||||
|             editor.putString(context.getString(R.string.right_gesture_control_key), | ||||
|                     context.getString(volume | ||||
|                             ? R.string.volume_control_key : R.string.none_control_key)); | ||||
|             editor.putString(context.getString(R.string.left_gesture_control_key), | ||||
|                     context.getString(brightness | ||||
|                             ? R.string.brightness_control_key : R.string.none_control_key)); | ||||
|  | ||||
|             editor.apply(); | ||||
|         } | ||||
|     }; | ||||
|  | ||||
|     /** | ||||
|      * List of all implemented migrations. | ||||
|      * <p> | ||||
| @@ -119,12 +138,13 @@ public final class SettingMigrations { | ||||
|             MIGRATION_1_2, | ||||
|             MIGRATION_2_3, | ||||
|             MIGRATION_3_4, | ||||
|             MIGRATION_4_5, | ||||
|     }; | ||||
|  | ||||
|     /** | ||||
|      * Version number for preferences. Must be incremented every time a migration is necessary. | ||||
|      */ | ||||
|     public static final int VERSION = 4; | ||||
|     public static final int VERSION = 5; | ||||
|  | ||||
|  | ||||
|     public static void initMigrations(final Context context, final boolean isFirstRun) { | ||||
|   | ||||
| @@ -16,8 +16,6 @@ | ||||
|     <string name="use_external_video_player_key">use_external_video_player</string> | ||||
|     <string name="use_external_audio_player_key">use_external_audio_player</string> | ||||
|  | ||||
|     <string name="volume_gesture_control_key">volume_gesture_control</string> | ||||
|     <string name="brightness_gesture_control_key">brightness_gesture_control</string> | ||||
|     <string name="resume_on_audio_focus_gain_key">resume_on_audio_focus_gain</string> | ||||
|     <string name="popup_remember_size_pos_key">popup_remember_size_pos_key</string> | ||||
|     <string name="use_inexact_seek_key">use_inexact_seek_key</string> | ||||
| @@ -192,6 +190,35 @@ | ||||
|         <item>@string/audio_webm_key</item> | ||||
|     </string-array> | ||||
|  | ||||
|     <string name="left_gesture_control_key">left_gesture_control</string> | ||||
|     <string name="default_left_gesture_control_value">@string/brightness_control_key</string> | ||||
|     <string name="brightness_control_key">brightness_control</string> | ||||
|     <string name="volume_control_key">volume_control</string> | ||||
|     <string name="none_control_key">none_control</string> | ||||
|     <string-array name="left_gesture_control_description"> | ||||
|         <item>@string/brightness</item> | ||||
|         <item>@string/volume</item> | ||||
|         <item>@string/none</item> | ||||
|     </string-array> | ||||
|     <string-array name="left_gesture_control_values"> | ||||
|         <item>@string/brightness_control_key</item> | ||||
|         <item>@string/volume_control_key</item> | ||||
|         <item>@string/none_control_key</item> | ||||
|     </string-array> | ||||
|  | ||||
|     <string name="right_gesture_control_key">right_gesture_control</string> | ||||
|     <string name="default_right_gesture_control_value">@string/volume_control_key</string> | ||||
|     <string-array name="right_gesture_control_description"> | ||||
|         <item>@string/volume</item> | ||||
|         <item>@string/brightness</item> | ||||
|         <item>@string/none</item> | ||||
|     </string-array> | ||||
|     <string-array name="right_gesture_control_values"> | ||||
|         <item>@string/volume_control_key</item> | ||||
|         <item>@string/brightness_control_key</item> | ||||
|         <item>@string/none_control_key</item> | ||||
|     </string-array> | ||||
|  | ||||
|     <string name="prefer_original_audio_key">prefer_original_audio</string> | ||||
|     <string name="prefer_descriptive_audio_key">prefer_descriptive_audio</string> | ||||
|     <string name="last_resize_mode">last_resize_mode</string> | ||||
|   | ||||
| @@ -105,10 +105,13 @@ | ||||
|     <string name="auto_queue_title">Auto-enqueue next stream</string> | ||||
|     <string name="auto_queue_summary">Continue ending (non-repeating) playback queue by appending a related stream</string> | ||||
|     <string name="auto_queue_toggle">Auto-enqueuing</string> | ||||
|     <string name="volume_gesture_control_title">Volume gesture control</string> | ||||
|     <string name="volume_gesture_control_summary">Use gestures to control player volume</string> | ||||
|     <string name="brightness_gesture_control_title">Brightness gesture control</string> | ||||
|     <string name="brightness_gesture_control_summary">Use gestures to control player brightness</string> | ||||
|     <string name="left_gesture_control_summary">Choose gesture for left half of player screen</string> | ||||
|     <string name="left_gesture_control_title">Left gesture action</string> | ||||
|     <string name="right_gesture_control_summary">Choose gesture for right half of player screen</string> | ||||
|     <string name="right_gesture_control_title">Right gesture action</string> | ||||
|     <string name="brightness">Brightness</string> | ||||
|     <string name="volume">Volume</string> | ||||
|     <string name="none">None</string> | ||||
|     <string name="show_search_suggestions_title">Search suggestions</string> | ||||
|     <string name="show_search_suggestions_summary">Choose the suggestions to show when searching</string> | ||||
|     <string name="local_search_suggestions">Local search suggestions</string> | ||||
|   | ||||
| @@ -190,19 +190,23 @@ | ||||
|             app:singleLineTitle="false" | ||||
|             app:iconSpaceReserved="false" /> | ||||
|  | ||||
|         <SwitchPreferenceCompat | ||||
|             android:defaultValue="true" | ||||
|             android:key="@string/volume_gesture_control_key" | ||||
|             android:summary="@string/volume_gesture_control_summary" | ||||
|             android:title="@string/volume_gesture_control_title" | ||||
|         <ListPreference | ||||
|             android:defaultValue="@string/default_left_gesture_control_value" | ||||
|             android:entries="@array/left_gesture_control_description" | ||||
|             android:entryValues="@array/left_gesture_control_values" | ||||
|             android:key="@string/left_gesture_control_key" | ||||
|             android:summary="@string/left_gesture_control_summary" | ||||
|             android:title="@string/left_gesture_control_title" | ||||
|             app:singleLineTitle="false" | ||||
|             app:iconSpaceReserved="false" /> | ||||
|  | ||||
|         <SwitchPreferenceCompat | ||||
|             android:defaultValue="true" | ||||
|             android:key="@string/brightness_gesture_control_key" | ||||
|             android:summary="@string/brightness_gesture_control_summary" | ||||
|             android:title="@string/brightness_gesture_control_title" | ||||
|         <ListPreference | ||||
|             android:defaultValue="@string/default_right_gesture_control_value" | ||||
|             android:entries="@array/right_gesture_control_description" | ||||
|             android:entryValues="@array/right_gesture_control_values" | ||||
|             android:key="@string/right_gesture_control_key" | ||||
|             android:summary="@string/right_gesture_control_summary" | ||||
|             android:title="@string/right_gesture_control_title" | ||||
|             app:singleLineTitle="false" | ||||
|             app:iconSpaceReserved="false" /> | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 ThetaDev
					ThetaDev