14 lines
893 B
JavaScript
14 lines
893 B
JavaScript
const fs = require('fs');
|
|
let code = fs.readFileSync('src/components/TerminalPanel.vue', 'utf8');
|
|
|
|
// 1. Remove that duplicate touchstart preventDefault logic completely
|
|
code = code.replace(/\s*\/\/ 必须阻止 touchstart.*\n\s*if \(event\.cancelable.*\n\s*event\.preventDefault\(\);\s*\n\s*\}/g, '');
|
|
|
|
// 2. In touchmove, add the preventDefault ONLY IF selection is not active
|
|
code = code.replace(/(\/\/ Stop xterm from intercepting this manually\s*\n\s*event\.stopImmediatePropagation\(\);)/g, `$1\n\n // 阻止 iOS 原生滚动,确保 move 事件不被吞噬\n if (event.cancelable) { event.preventDefault(); }\n`);
|
|
|
|
// 3. Let's remove the duplicated pointer scroll logic since we rely on touchmove for scroll
|
|
code = code.replace(/\/\/ --- Pointer Scroll Sync ---.*?\/\/ --- Pointer Scroll Sync End ---/gs, '');
|
|
|
|
fs.writeFileSync('src/components/TerminalPanel.vue', code);
|