Skip to content

Commit 0369b7a

Browse files
authored
Update editor_linkshortner.html
1 parent 4c7c125 commit 0369b7a

1 file changed

Lines changed: 22 additions & 11 deletions

File tree

editor_linkshortner.html

Lines changed: 22 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -59,15 +59,13 @@
5959
#sDot.ok { background:#69F0AE; }
6060
#sDot.err { background:#FF5252; }
6161
#sDot.loading { background:#FFD740; animation:blink 0.8s infinite; }
62-
@keyframes blink{0%,100%{opacity:1}50%{opacity:0.2}}
6362

6463
#patTopBtn {
6564
display:flex; align-items:center; gap:5px;
6665
background:rgba(255,255,255,0.15); border:none; color:white;
6766
border-radius:8px; padding:5px 10px; font-family:'Roboto',sans-serif;
6867
font-size:12px; font-weight:500; cursor:pointer; white-space:nowrap;
6968
}
70-
#patTopBtn:active { opacity:0.7; }
7169
#patDot { width:10px;height:10px;border-radius:50%;background:#FF5252;flex-shrink:0;transition:background 0.3s; }
7270
#patDot.set { background:#69F0AE; }
7371

@@ -85,10 +83,9 @@
8583
display:inline-flex; align-items:center; gap:4px;
8684
}
8785
.btn:active { opacity:0.75; transform:scale(0.96); }
88-
.btn-flat { background:transparent; color:var(--primary); }
89-
.btn-flat:hover { background:var(--primary-light); }
86+
.btn-flat { background:transparent; color:var(--primary); }
9087
.btn-raised { background:var(--primary); color:white; box-shadow:var(--shadow); }
91-
.btn-green { background:#388E3C; color:white; box-shadow:var(--shadow); }
88+
.btn-green { background:#388E3C; color:white; box-shadow:var(--shadow); }
9289
.btn:disabled { opacity:0.3; pointer-events:none; }
9390

9491
#modBadge {
@@ -98,7 +95,7 @@
9895
}
9996
#modBadge.show { display:inline-block; }
10097

101-
/* ── SEARCH PANEL (top-anchored, Material) ────── */
98+
/* ── SEARCH PANEL ────────────────────────────────────── */
10299
#searchPanel {
103100
display:none; flex-shrink:0;
104101
background:#FFFFFF;
@@ -118,7 +115,6 @@
118115
background:var(--surface2); color:var(--text); outline:none;
119116
}
120117
.sp-field input:focus { border-color:var(--primary); background:#fff; }
121-
.sp-match-count { position:absolute; right:8px; font-size:11px; font-weight:600; color:var(--primary); pointer-events:none; }
122118
.sp-toggles { display:flex; gap:2px; position:absolute; right:8px; }
123119
.sp-tog {
124120
font-family:'Roboto Mono',monospace; font-size:10px; font-weight:700;
@@ -306,9 +302,8 @@ <h2>GitHub Token (PAT)</h2>
306302
openSearchPanel as cmOpenPanel, closeSearchPanel as cmClosePanel,
307303
getSearchQuery, selectNextOccurrence
308304
} from '@codemirror/search';
309-
import { HighlightStyle, syntaxHighlighting } from '@codemirror/language';
310305

311-
// ── GitHub config ──────────────────────────────────────
306+
// GitHub config
312307
const OWNER = 'BlazeFTL';
313308
const REPO = 'Link-Shortner-uBlockOrigin';
314309
const FILE = 'Ubo-LinkShortners.txt';
@@ -464,9 +459,25 @@ <h2>GitHub Token (PAT)</h2>
464459

465460
window.spSearch = function() {
466461
const q = document.getElementById('spFind').value;
467-
if (!q) { view.dispatch({ effects: setSearchQuery.of(buildSearchQuery('')) }); document.getElementById('spCount').textContent = ''; return; }
468-
view.dispatch({ effects: setSearchQuery.of(buildSearchQuery(q)) });
462+
const query = buildSearchQuery(q);
463+
464+
// Update internal CM search state
465+
view.dispatch({ effects: setSearchQuery.of(query) });
469466
updateMatchCount();
467+
468+
if (!q) return;
469+
470+
// Jump to first match immediately
471+
if (query.valid) {
472+
const cursor = query.getCursor(view.state.doc);
473+
const firstMatch = cursor.next();
474+
if (!firstMatch.done) {
475+
view.dispatch({
476+
selection: { anchor: firstMatch.value.from, head: firstMatch.value.to },
477+
scrollIntoView: true
478+
});
479+
}
480+
}
470481
};
471482

472483
window.spNext = function() { findNext(view); updateMatchCount(); };

0 commit comments

Comments
 (0)