mirror of
https://github.com/inotia00/revanced-patches.git
synced 2025-05-09 02:54: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) {
|
||||
LithoFilterPatch.addFilter("$COMPONENTS_PATH/QuickActionFilter;")
|
||||
|
||||
QuickActionsHookPatch.injectQuickActionMargin()
|
||||
|
||||
/**
|
||||
* Add settings
|
||||
*/
|
||||
|
@ -6,6 +6,7 @@ import app.revanced.patcher.extensions.InstructionExtensions.addInstruction
|
||||
import app.revanced.patcher.extensions.InstructionExtensions.getInstruction
|
||||
import app.revanced.patcher.patch.BytecodePatch
|
||||
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.resourceid.SharedResourceIdPatch
|
||||
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(
|
||||
setOf(QuickActionsElementFingerprint)
|
||||
) {
|
||||
private lateinit var insertMethod: MutableMethod
|
||||
private var insertIndex: Int = 0
|
||||
private var insertRegister: Int = 0
|
||||
override fun execute(context: BytecodeContext) {
|
||||
|
||||
QuickActionsElementFingerprint.result?.let {
|
||||
it.mutableMethod.apply {
|
||||
insertMethod = this
|
||||
for (index in implementation!!.instructions.size - 1 downTo 0) {
|
||||
if (getInstruction(index).opcode == Opcode.CONST && (getInstruction(index) as WideLiteralInstruction).wideLiteral == QuickActionsElementContainer) {
|
||||
val targetRegister =
|
||||
insertIndex = index + 3
|
||||
insertRegister =
|
||||
getInstruction<OneRegisterInstruction>(index + 2).registerA
|
||||
|
||||
addInstruction(
|
||||
index + 3,
|
||||
"invoke-static {v$targetRegister}, $FULLSCREEN->hideQuickActions(Landroid/view/View;)V"
|
||||
insertIndex,
|
||||
"invoke-static {v$insertRegister}, $FULLSCREEN->hideQuickActions(Landroid/view/View;)V"
|
||||
)
|
||||
insertIndex += 2
|
||||
|
||||
break
|
||||
}
|
||||
}
|
||||
}
|
||||
} ?: 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_player">Player</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_reboot_first_run">Restart to load the layout normally</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_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_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
|
||||
<Preference android:title=" " android:selectable="false" android:summary="@string/revanced_experimental_flag" />
|
||||
|
Loading…
x
Reference in New Issue
Block a user