fix build window app

This commit is contained in:
AmintaCCCP
2025-07-28 20:26:02 +08:00
parent 9875070404
commit b6bad82534

View File

@@ -78,19 +78,17 @@ jobs:
const fs = require('fs');
const path = require('path');
// Create electron directory
if (!fs.existsSync('electron')) {
fs.mkdirSync('electron', { recursive: true });
}
// Create main.js content
const mainJsContent = \`const { app, BrowserWindow, Menu, shell } = require('electron');
const path = require('path');
const isDev = process.env.NODE_ENV === 'development';
const path = require('path');
const isDev = process.env.NODE_ENV === 'development';
let mainWindow;
let mainWindow;
function createWindow() {
function createWindow() {
mainWindow = new BrowserWindow({
width: 1200,
height: 800,
@@ -107,7 +105,6 @@ jobs:
show: false
});
// Load the app
if (isDev) {
mainWindow.loadURL('http://localhost:5173');
mainWindow.webContents.openDevTools();
@@ -117,63 +114,8 @@ jobs:
mainWindow.once('ready-to-show', () => {
mainWindow.show();
// Set application menu for macOS
if (process.platform === 'darwin') {
const template = [
{
label: 'GitHub Stars Manager',
submenu: [
{ role: 'about' },
{ type: 'separator' },
{ role: 'services' },
{ type: 'separator' },
{ role: 'hide' },
{ role: 'hideothers' },
{ role: 'unhide' },
{ type: 'separator' },
{ role: 'quit' }
]
},
{
label: 'Edit',
submenu: [
{ role: 'undo' },
{ role: 'redo' },
{ type: 'separator' },
{ role: 'cut' },
{ role: 'copy' },
{ role: 'paste' },
{ role: 'selectall' }
]
},
{
label: 'View',
submenu: [
{ role: 'reload' },
{ role: 'forceReload' },
{ role: 'toggleDevTools' },
{ type: 'separator' },
{ role: 'resetZoom' },
{ role: 'zoomIn' },
{ role: 'zoomOut' },
{ type: 'separator' },
{ role: 'togglefullscreen' }
]
},
{
label: 'Window',
submenu: [
{ role: 'minimize' },
{ role: 'close' }
]
}
];
Menu.setApplicationMenu(Menu.buildFromTemplate(template));
}
});
// Handle external links
mainWindow.webContents.setWindowOpenHandler(({ url }) => {
shell.openExternal(url);
return { action: 'deny' };
@@ -182,35 +124,24 @@ jobs:
mainWindow.on('closed', () => {
mainWindow = null;
});
}
}
app.whenReady().then(createWindow);
app.whenReady().then(createWindow);
app.on('window-all-closed', () => {
app.on('window-all-closed', () => {
if (process.platform !== 'darwin') {
app.quit();
}
});
});
app.on('activate', () => {
app.on('activate', () => {
if (BrowserWindow.getAllWindows().length === 0) {
createWindow();
}
});
});\`;
// Security settings
app.on('web-contents-created', (event, contents) => {
contents.on('new-window', (event, navigationUrl) => {
event.preventDefault();
shell.openExternal(navigationUrl);
});
});
\`;
// Write main.js file
fs.writeFileSync('electron/main.js', mainJsContent);
// Create package.json for electron
const electronPackageJson = {
name: 'github-stars-manager-desktop',
version: '1.0.0',
@@ -221,7 +152,6 @@ jobs:
};
fs.writeFileSync('electron/package.json', JSON.stringify(electronPackageJson, null, 2));
console.log('Electron files created successfully');
"