auto-git:
[change] main.js [change] preload.js [change] renderer.js
This commit is contained in:
21
main.js
21
main.js
@@ -2442,6 +2442,27 @@ function buildTrayMenu() {
|
||||
}
|
||||
});
|
||||
|
||||
ipcMain.handle('trigger-rewrite-now', async (_e, folderPath) => {
|
||||
let folders = store.get('folders') || [];
|
||||
const idx = folders.findIndex(f => f.path === folderPath);
|
||||
if (idx === -1) return { success: false, error: 'folder not found' };
|
||||
const folderObj = folders[idx];
|
||||
if (folderObj.needsRelocation) return { success: false, error: 'needs relocation' };
|
||||
if (folderObj.rewriteInProgress) return { success: false, error: 'rewrite in progress' };
|
||||
if (!folderObj.llmCandidates || !folderObj.llmCandidates.length) return { success: false, error: 'no candidates' };
|
||||
|
||||
// Reset counters/timers
|
||||
folderObj.linesChanged = 0;
|
||||
folderObj.firstCandidateBirthday = Date.now();
|
||||
store.set('folders', folders);
|
||||
|
||||
// Fire and forget
|
||||
runLLMCommitRewrite(folderObj, win).catch(err => {
|
||||
debug(`[trigger-rewrite-now] Error for ${folderPath}: ${err.message || err}`);
|
||||
});
|
||||
return { success: true };
|
||||
});
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -66,6 +66,7 @@ contextBridge.exposeInMainWorld('electronAPI', {
|
||||
generateReadme: (folderPath) => ipcRenderer.invoke('generate-readme', folderPath),
|
||||
pushToGitea: (folderPath) => ipcRenderer.invoke('push-to-gitea', folderPath),
|
||||
initRepo: (folderPath) => ipcRenderer.invoke('init-repo', folderPath),
|
||||
triggerRewriteNow: (folderPath) => ipcRenderer.invoke('trigger-rewrite-now', folderPath),
|
||||
});
|
||||
|
||||
ipcRenderer.on('repo-updated', (_e, folder) => {
|
||||
|
||||
15
renderer.js
15
renderer.js
@@ -593,7 +593,7 @@ window.addEventListener('DOMContentLoaded', async () => {
|
||||
alt="In Rewrite Queue"
|
||||
title="In Rewrite Queue"
|
||||
class="paw-queued"
|
||||
style="pointer-events: none; z-index:10;">`
|
||||
style="pointer-events: auto; cursor: pointer; z-index:10;">`
|
||||
: ''
|
||||
}
|
||||
</li>`;
|
||||
@@ -688,6 +688,19 @@ window.addEventListener('DOMContentLoaded', async () => {
|
||||
});
|
||||
});
|
||||
|
||||
// Paw click: manually trigger rewrite for this folder
|
||||
contentList.querySelectorAll('.paw-queued').forEach(img => {
|
||||
img.addEventListener('click', async () => {
|
||||
try {
|
||||
await window.electronAPI.triggerRewriteNow(folderObj.path);
|
||||
} catch (e) {
|
||||
console.error('Manual rewrite trigger error:', e);
|
||||
} finally {
|
||||
await renderContent(folderObj, currentPage);
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
// Copy-Diff-Button
|
||||
contentList.querySelectorAll('.diff-container').forEach(container => {
|
||||
const btn = container.querySelector('.copy-diff-btn');
|
||||
|
||||
Reference in New Issue
Block a user