mirror of
https://github.com/inotia00/revanced-patches.git
synced 2025-05-09 19:14:37 +02:00
feat(YouTube/Quick actions components): add Quick actions top margin
settings
This commit is contained in:
parent
73c8ad6ea4
commit
b021ab9019
@ -45,6 +45,8 @@ object QuickActionsPatch : BytecodePatch() {
|
|||||||
override fun execute(context: BytecodeContext) {
|
override fun execute(context: BytecodeContext) {
|
||||||
LithoFilterPatch.addFilter("$COMPONENTS_PATH/QuickActionFilter;")
|
LithoFilterPatch.addFilter("$COMPONENTS_PATH/QuickActionFilter;")
|
||||||
|
|
||||||
|
QuickActionsHookPatch.injectQuickActionMargin()
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Add settings
|
* Add settings
|
||||||
*/
|
*/
|
||||||
|
@ -6,6 +6,7 @@ import app.revanced.patcher.extensions.InstructionExtensions.addInstruction
|
|||||||
import app.revanced.patcher.extensions.InstructionExtensions.getInstruction
|
import app.revanced.patcher.extensions.InstructionExtensions.getInstruction
|
||||||
import app.revanced.patcher.patch.BytecodePatch
|
import app.revanced.patcher.patch.BytecodePatch
|
||||||
import app.revanced.patcher.patch.annotation.Patch
|
import app.revanced.patcher.patch.annotation.Patch
|
||||||
|
import app.revanced.patcher.util.proxy.mutableTypes.MutableMethod
|
||||||
import app.revanced.patches.youtube.utils.quickactions.fingerprints.QuickActionsElementFingerprint
|
import app.revanced.patches.youtube.utils.quickactions.fingerprints.QuickActionsElementFingerprint
|
||||||
import app.revanced.patches.youtube.utils.resourceid.SharedResourceIdPatch
|
import app.revanced.patches.youtube.utils.resourceid.SharedResourceIdPatch
|
||||||
import app.revanced.patches.youtube.utils.resourceid.SharedResourceIdPatch.QuickActionsElementContainer
|
import app.revanced.patches.youtube.utils.resourceid.SharedResourceIdPatch.QuickActionsElementContainer
|
||||||
@ -18,24 +19,39 @@ import com.android.tools.smali.dexlib2.iface.instruction.WideLiteralInstruction
|
|||||||
object QuickActionsHookPatch : BytecodePatch(
|
object QuickActionsHookPatch : BytecodePatch(
|
||||||
setOf(QuickActionsElementFingerprint)
|
setOf(QuickActionsElementFingerprint)
|
||||||
) {
|
) {
|
||||||
|
private lateinit var insertMethod: MutableMethod
|
||||||
|
private var insertIndex: Int = 0
|
||||||
|
private var insertRegister: Int = 0
|
||||||
override fun execute(context: BytecodeContext) {
|
override fun execute(context: BytecodeContext) {
|
||||||
|
|
||||||
QuickActionsElementFingerprint.result?.let {
|
QuickActionsElementFingerprint.result?.let {
|
||||||
it.mutableMethod.apply {
|
it.mutableMethod.apply {
|
||||||
|
insertMethod = this
|
||||||
for (index in implementation!!.instructions.size - 1 downTo 0) {
|
for (index in implementation!!.instructions.size - 1 downTo 0) {
|
||||||
if (getInstruction(index).opcode == Opcode.CONST && (getInstruction(index) as WideLiteralInstruction).wideLiteral == QuickActionsElementContainer) {
|
if (getInstruction(index).opcode == Opcode.CONST && (getInstruction(index) as WideLiteralInstruction).wideLiteral == QuickActionsElementContainer) {
|
||||||
val targetRegister =
|
insertIndex = index + 3
|
||||||
|
insertRegister =
|
||||||
getInstruction<OneRegisterInstruction>(index + 2).registerA
|
getInstruction<OneRegisterInstruction>(index + 2).registerA
|
||||||
|
|
||||||
addInstruction(
|
addInstruction(
|
||||||
index + 3,
|
insertIndex,
|
||||||
"invoke-static {v$targetRegister}, $FULLSCREEN->hideQuickActions(Landroid/view/View;)V"
|
"invoke-static {v$insertRegister}, $FULLSCREEN->hideQuickActions(Landroid/view/View;)V"
|
||||||
)
|
)
|
||||||
|
insertIndex += 2
|
||||||
|
|
||||||
break
|
break
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} ?: throw QuickActionsElementFingerprint.exception
|
} ?: throw QuickActionsElementFingerprint.exception
|
||||||
|
}
|
||||||
|
|
||||||
|
internal fun injectQuickActionMargin() {
|
||||||
|
insertMethod.apply {
|
||||||
|
addInstruction(
|
||||||
|
insertIndex,
|
||||||
|
"invoke-static {v$insertRegister}, $FULLSCREEN->setQuickActionMargin(Landroid/widget/FrameLayout;)V"
|
||||||
|
)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -612,6 +612,9 @@ Tap and hold to set playback speed to 1.0x"</string>
|
|||||||
<string name="revanced_patches_information_summary">Information about applied patches</string>
|
<string name="revanced_patches_information_summary">Information about applied patches</string>
|
||||||
<string name="revanced_player">Player</string>
|
<string name="revanced_player">Player</string>
|
||||||
<string name="revanced_player_flyout_panel_title">Player flyout panel</string>
|
<string name="revanced_player_flyout_panel_title">Player flyout panel</string>
|
||||||
|
<string name="revanced_quick_actions_margin_top_summary">Top margin value between 0-64</string>
|
||||||
|
<string name="revanced_quick_actions_margin_top_title">Quick actions top margin</string>
|
||||||
|
<string name="revanced_quick_actions_margin_top_warning">Quick actions top margin must be between 0-64. Reset to default values.</string>
|
||||||
<string name="revanced_quick_actions_title">Quick actions</string>
|
<string name="revanced_quick_actions_title">Quick actions</string>
|
||||||
<string name="revanced_reboot_first_run">Restart to load the layout normally</string>
|
<string name="revanced_reboot_first_run">Restart to load the layout normally</string>
|
||||||
<string name="revanced_ryd_about">About</string>
|
<string name="revanced_ryd_about">About</string>
|
||||||
|
@ -141,7 +141,8 @@
|
|||||||
<SwitchPreference android:title="@string/revanced_hide_quick_actions_open_playlist_title" android:key="revanced_hide_quick_actions_open_playlist" android:defaultValue="false" android:summaryOn="@string/revanced_hide_quick_actions_open_playlist_summary_on" android:summaryOff="@string/revanced_hide_quick_actions_open_playlist_summary_off" />
|
<SwitchPreference android:title="@string/revanced_hide_quick_actions_open_playlist_title" android:key="revanced_hide_quick_actions_open_playlist" android:defaultValue="false" android:summaryOn="@string/revanced_hide_quick_actions_open_playlist_summary_on" android:summaryOff="@string/revanced_hide_quick_actions_open_playlist_summary_off" />
|
||||||
<SwitchPreference android:title="@string/revanced_hide_quick_actions_related_videos_title" android:key="revanced_hide_quick_actions_related_videos" android:defaultValue="false" android:summaryOn="@string/revanced_hide_quick_actions_related_videos_summary_on" android:summaryOff="@string/revanced_hide_quick_actions_related_videos_summary_off" />
|
<SwitchPreference android:title="@string/revanced_hide_quick_actions_related_videos_title" android:key="revanced_hide_quick_actions_related_videos" android:defaultValue="false" android:summaryOn="@string/revanced_hide_quick_actions_related_videos_summary_on" android:summaryOff="@string/revanced_hide_quick_actions_related_videos_summary_off" />
|
||||||
<SwitchPreference android:title="@string/revanced_hide_quick_actions_save_to_playlist_title" android:key="revanced_hide_quick_actions_save_to_playlist" android:defaultValue="false" android:summaryOn="@string/revanced_hide_quick_actions_save_to_playlist_summary_on" android:summaryOff="@string/revanced_hide_quick_actions_save_to_playlist_summary_off" />
|
<SwitchPreference android:title="@string/revanced_hide_quick_actions_save_to_playlist_title" android:key="revanced_hide_quick_actions_save_to_playlist" android:defaultValue="false" android:summaryOn="@string/revanced_hide_quick_actions_save_to_playlist_summary_on" android:summaryOff="@string/revanced_hide_quick_actions_save_to_playlist_summary_off" />
|
||||||
<SwitchPreference android:title="@string/revanced_hide_quick_actions_share_title" android:key="revanced_hide_quick_actions_share" android:defaultValue="false" android:summaryOn="@string/revanced_hide_quick_actions_share_summary_on" android:summaryOff="@string/revanced_hide_quick_actions_share_summary_off" />SETTINGS: QUICK_ACTIONS_COMPONENTS -->
|
<SwitchPreference android:title="@string/revanced_hide_quick_actions_share_title" android:key="revanced_hide_quick_actions_share" android:defaultValue="false" android:summaryOn="@string/revanced_hide_quick_actions_share_summary_on" android:summaryOff="@string/revanced_hide_quick_actions_share_summary_off" />
|
||||||
|
<app.revanced.integrations.settingsmenu.ResettableEditTextPreference android:hint="12" android:defaultValue="12" android:title="@string/revanced_quick_actions_margin_top_title" android:key="revanced_quick_actions_margin_top" android:summary="@string/revanced_quick_actions_margin_top_summary" android:inputType="number" />SETTINGS: QUICK_ACTIONS_COMPONENTS -->
|
||||||
|
|
||||||
<!-- SETTINGS: ENABLE_COMPACT_CONTROLS_OVERLAY
|
<!-- SETTINGS: ENABLE_COMPACT_CONTROLS_OVERLAY
|
||||||
<Preference android:title=" " android:selectable="false" android:summary="@string/revanced_experimental_flag" />
|
<Preference android:title=" " android:selectable="false" android:summary="@string/revanced_experimental_flag" />
|
||||||
|
Loading…
x
Reference in New Issue
Block a user