|
423 | 423 |
|
424 | 424 | // Resolve elements: prefer QAB inline if QAB is visible, else fall back to legacy bar |
425 | 425 | function getActiveFindEls() { |
426 | | - var qab = document.getElementById('quick-action-bar'); |
427 | | - var useQab = qab && qab.style.display !== 'none' && qabFindSection; |
| 426 | + // Use QAB inputs only when the QAB find section is explicitly open (display: flex) |
| 427 | + var useQab = qabFindSection && qabFindSection.style.display === 'flex'; |
428 | 428 | return { |
429 | 429 | findInput: document.getElementById(useQab ? 'qab-find-input' : 'find-input'), |
430 | 430 | replaceInput: document.getElementById(useQab ? 'qab-replace-input' : 'replace-input'), |
|
559 | 559 | performFind(); |
560 | 560 | } |
561 | 561 |
|
562 | | - // Wire up BOTH sets of elements (legacy bar + QAB inline) |
563 | | - function wireFind(prefix) { |
564 | | - var fi = document.getElementById(prefix + 'find-input') || document.getElementById(prefix + '-find-input'); |
565 | | - var rt = document.getElementById(prefix + 'regex-toggle') || document.getElementById(prefix + '-regex-toggle'); |
566 | | - var fp = document.getElementById(prefix + 'find-prev') || document.getElementById(prefix + '-find-prev'); |
567 | | - var fn = document.getElementById(prefix + 'find-next') || document.getElementById(prefix + '-find-next'); |
568 | | - var ro = document.getElementById(prefix + 'replace-one') || document.getElementById(prefix + '-replace-one'); |
569 | | - var ra = document.getElementById(prefix + 'replace-all') || document.getElementById(prefix + '-replace-all'); |
570 | | - var ri = document.getElementById(prefix + 'replace-input') || document.getElementById(prefix + '-replace-input'); |
| 562 | + // Wire up find/replace event listeners for a set of elements by their actual IDs |
| 563 | + function wireFindSet(ids) { |
| 564 | + var fi = document.getElementById(ids.findInput); |
| 565 | + var rt = document.getElementById(ids.regexToggle); |
| 566 | + var fp = document.getElementById(ids.findPrev); |
| 567 | + var fn = document.getElementById(ids.findNext); |
| 568 | + var ro = document.getElementById(ids.replaceOne); |
| 569 | + var ra = document.getElementById(ids.replaceAll); |
| 570 | + var ri = document.getElementById(ids.replaceInput); |
571 | 571 | if (fi) fi.addEventListener('input', performFind); |
572 | 572 | if (fp) fp.addEventListener('click', findPrev); |
573 | 573 | if (fn) fn.addEventListener('click', findNext); |
|
589 | 589 | if (ri) ri.addEventListener('keydown', function (e) { if (e.key === 'Escape') M.closeFindBar(); }); |
590 | 590 | } |
591 | 591 |
|
592 | | - // Wire legacy bar elements |
593 | | - wireFind('find-'); |
| 592 | + // Wire legacy bar elements (IDs: find-input, replace-input, find-prev, etc.) |
| 593 | + wireFindSet({ |
| 594 | + findInput: 'find-input', replaceInput: 'replace-input', |
| 595 | + regexToggle: 'find-regex-toggle', findPrev: 'find-prev', findNext: 'find-next', |
| 596 | + replaceOne: 'replace-one', replaceAll: 'replace-all' |
| 597 | + }); |
594 | 598 | var findCloseBtn = document.getElementById('find-close'); |
595 | 599 | if (findCloseBtn) findCloseBtn.addEventListener('click', M.closeFindBar); |
596 | 600 |
|
597 | | - // Wire QAB inline elements |
598 | | - wireFind('qab-'); |
| 601 | + // Wire QAB inline elements (IDs: qab-find-input, qab-replace-input, etc.) |
| 602 | + wireFindSet({ |
| 603 | + findInput: 'qab-find-input', replaceInput: 'qab-replace-input', |
| 604 | + regexToggle: 'qab-regex-toggle', findPrev: 'qab-find-prev', findNext: 'qab-find-next', |
| 605 | + replaceOne: 'qab-replace-one', replaceAll: 'qab-replace-all' |
| 606 | + }); |
599 | 607 |
|
600 | 608 | // ======================================== |
601 | 609 | // WORD WRAP TOGGLE |
|
0 commit comments