feat: auto-skip intro/outro toggle

This commit is contained in:
NoCrypt 2024-08-10 21:31:59 +07:00
parent 476207fd85
commit 962e9ade37
4 changed files with 17 additions and 6 deletions

View file

@ -42,6 +42,7 @@ Includes all original Miru features, plus:
- Disabled smooth scrolling by default due to poor performance on my device - Disabled smooth scrolling by default due to poor performance on my device
- Gesture lock on Android to prevent misclick - Gesture lock on Android to prevent misclick
- Right click or long press on RSS Section will open the anime episode list - Right click or long press on RSS Section will open the anime episode list
- Toggleable auto skip intro/outro
## **Building and Development** ## **Building and Development**

View file

@ -125,6 +125,7 @@ export const defaults = {
playerAutoplay: true, playerAutoplay: true,
playerPause: true, playerPause: true,
playerAutocomplete: true, playerAutocomplete: true,
playerAutoSkip: false,
playerDeband: false, playerDeband: false,
playerSeek: 5, playerSeek: 5,
rssQuality: '1080', rssQuality: '1080',

View file

@ -804,6 +804,7 @@
} }
let currentSkippable = null let currentSkippable = null
$: currentSkippable && $settings.playerAutoSkip && skip()
function checkSkippableChapters () { function checkSkippableChapters () {
const current = findChapter(currentTime) const current = findChapter(currentTime)
if (current) { if (current) {
@ -1555,14 +1556,16 @@
.seekbar { .seekbar {
font-size: 2rem !important; font-size: 2rem !important;
} }
.miniplayer .mobile-focus-target {
display: block !important;
}
.miniplayer .mobile-focus-target:focus-visible {
background: hsla(209, 100%, 55%, 0.3);
}
@media (pointer: none), (pointer: coarse) { @media (pointer: none), (pointer: coarse) {
.miniplayer .mobile-focus-target {
display: block !important;
}
.miniplayer .mobile-focus-target:focus-visible {
background: hsla(209, 100%, 55%, 0.3);
}
.bottom .ctrl[data-name='playPause'], .bottom .ctrl[data-name='playPause'],
.bottom .volume, .bottom .volume,
.bottom .keybinds { .bottom .keybinds {

View file

@ -142,6 +142,12 @@
<label for='player-autocomplete'>{settings.playerAutocomplete ? 'On' : 'Off'}</label> <label for='player-autocomplete'>{settings.playerAutocomplete ? 'On' : 'Off'}</label>
</div> </div>
</SettingCard> </SettingCard>
<SettingCard title='Auto-Skip Intro/Outro' description='Automatically skip intro and outro. Warning, sometimes it can skip wrong part of the episode and you can&apos;t view Intro/Outro at all.'>
<div class='custom-switch'>
<input type='checkbox' id='player-auto-skip' bind:checked={settings.playerAutoSkip} />
<label for='player-auto-skip'>{settings.playerAutoSkip ? 'On' : 'Off'}</label>
</div>
</SettingCard>
<SettingCard title='Seek Duration' description='Seconds to seek an episode with arrow keys'> <SettingCard title='Seek Duration' description='Seconds to seek an episode with arrow keys'>
<div class='input-group w-100 mw-full'> <div class='input-group w-100 mw-full'>
<input type='number' bind:value={settings.playerSeek} min='1' max='50' class='form-control text-right bg-dark' /> <input type='number' bind:value={settings.playerSeek} min='1' max='50' class='form-control text-right bg-dark' />