// ==UserScript==
// @name SOOP Clip Background Tab Opener - author: 푸릴 made by gemini
// @namespace http://tampermonkey.net/
// @version 3.1
// @description SOOP(sooplive.com)에서 클립 클릭 시 화면 전환 없이 백그라운드 새 탭으로 순서대로 엽니다.
// @author 푸릴 (Made by Gemini)
// @match *://*.sooplive.com/*
// @match *://*.sooplive.co.kr/*
// @grant GM_openInTab
// @downloadURL https://update.greasyfork.icu/scripts/571835/SOOP%20Clip%20Background%20Tab%20Opener%20-%20author%3A%20%ED%91%B8%EB%A6%B4%20made%20by%20gemini.user.js
// @updateURL https://update.greasyfork.icu/scripts/571835/SOOP%20Clip%20Background%20Tab%20Opener%20-%20author%3A%20%ED%91%B8%EB%A6%B4%20made%20by%20gemini.meta.js
// ==/UserScript==
/* author: 푸릴 made by gemini */
(function() {
'use strict';
// 1. 클립/VOD 링크인지 판별
const isClipLink = (href) => {
if (!href) return false;
const lowerHref = href.toLowerCase();
// 검색 결과, VOD, 클립, 플레이어 관련 키워드
const keywords = ['/player/', '/video/', '/clip/', '/vod/', '/catch/'];
return keywords.some(keyword => lowerHref.includes(keyword));
};
// 2. 문서 전체의 클릭 이벤트 가로채기
document.addEventListener('click', function(e) {
// 마우스 왼쪽 버튼 클릭이 아닐 경우(휠 클릭 등)는 무시
if (e.button !== 0) return;
// 클릭한 요소가 태그이거나 태그 내부인지 확인
const targetLink = e.target.closest('a');
if (targetLink && targetLink.href) {
// 해당 링크가 VOD나 클립 주소라면
if (isClipLink(targetLink.href)) {
// SOOP 사이트 자체의 화면 전환 스크립트 실행 완벽 차단
e.preventDefault();
e.stopPropagation();
// 🌟 핵심 변경: insert를 false로 바꾸어 탭의 맨 끝에 순서대로 열리게 함
GM_openInTab(targetLink.href, { active: false, insert: false });
}
}
}, true);
})();