mirror of
https://github.com/inotia00/revanced-patches.git
synced 2025-06-12 21:27:43 +02:00
feat(YouTube/Miniplayer): add Enable drag and drop
setting (YouTube 19.23.40+)
This commit is contained in:
@ -12,6 +12,7 @@ import app.revanced.patches.youtube.general.miniplayer.fingerprints.MiniplayerDi
|
||||
import app.revanced.patches.youtube.general.miniplayer.fingerprints.MiniplayerModernAddViewListenerFingerprint
|
||||
import app.revanced.patches.youtube.general.miniplayer.fingerprints.MiniplayerModernCloseButtonFingerprint
|
||||
import app.revanced.patches.youtube.general.miniplayer.fingerprints.MiniplayerModernConstructorFingerprint
|
||||
import app.revanced.patches.youtube.general.miniplayer.fingerprints.MiniplayerModernDragAndDropFingerprint
|
||||
import app.revanced.patches.youtube.general.miniplayer.fingerprints.MiniplayerModernExpandButtonFingerprint
|
||||
import app.revanced.patches.youtube.general.miniplayer.fingerprints.MiniplayerModernExpandCloseDrawablesFingerprint
|
||||
import app.revanced.patches.youtube.general.miniplayer.fingerprints.MiniplayerModernForwardButtonFingerprint
|
||||
@ -41,6 +42,7 @@ import app.revanced.util.getReference
|
||||
import app.revanced.util.getWalkerMethod
|
||||
import app.revanced.util.indexOfFirstInstructionOrThrow
|
||||
import app.revanced.util.indexOfWideLiteralInstructionOrThrow
|
||||
import app.revanced.util.literalInstructionBooleanHook
|
||||
import app.revanced.util.patch.BaseBytecodePatch
|
||||
import app.revanced.util.resultOrThrow
|
||||
import app.revanced.util.updatePatchStatus
|
||||
@ -72,6 +74,7 @@ object MiniplayerPatch : BaseBytecodePatch(
|
||||
MiniplayerResponseModelSizeCheckFingerprint,
|
||||
MiniplayerOverrideFingerprint,
|
||||
MiniplayerModernConstructorFingerprint,
|
||||
MiniplayerModernDragAndDropFingerprint,
|
||||
MiniplayerModernViewParentFingerprint,
|
||||
YouTubePlayerOverlaysLayoutFingerprint,
|
||||
)
|
||||
@ -278,6 +281,20 @@ object MiniplayerPatch : BaseBytecodePatch(
|
||||
|
||||
// endregion
|
||||
|
||||
|
||||
// region Enable drag and drop.
|
||||
|
||||
if (SettingsPatch.upward1923) {
|
||||
MiniplayerModernDragAndDropFingerprint.literalInstructionBooleanHook(
|
||||
45628752,
|
||||
"$INTEGRATIONS_CLASS_DESCRIPTOR->enableMiniplayerDragAndDrop()Z"
|
||||
)
|
||||
settingArray += "SETTINGS: MINIPLAYER_DRAG_AND_DROP"
|
||||
}
|
||||
|
||||
// endregion
|
||||
|
||||
|
||||
if (SettingsPatch.upward1920) {
|
||||
context.updatePatchStatus(PATCH_STATUS_CLASS_DESCRIPTOR, "MiniplayerType1920")
|
||||
}
|
||||
|
@ -0,0 +1,12 @@
|
||||
package app.revanced.patches.youtube.general.miniplayer.fingerprints
|
||||
|
||||
import app.revanced.patcher.extensions.or
|
||||
import app.revanced.util.fingerprint.LiteralValueFingerprint
|
||||
import com.android.tools.smali.dexlib2.AccessFlags
|
||||
|
||||
@Suppress("SpellCheckingInspection")
|
||||
internal object MiniplayerModernDragAndDropFingerprint : LiteralValueFingerprint(
|
||||
accessFlags = AccessFlags.PUBLIC or AccessFlags.CONSTRUCTOR,
|
||||
parameters = listOf("L"),
|
||||
literalSupplier = { 45628752 }
|
||||
)
|
Reference in New Issue
Block a user