104 lines
2.4 KiB
JavaScript
104 lines
2.4 KiB
JavaScript
import { app, BrowserWindow, shell } from "electron";
|
|
import path from "path";
|
|
import url from "url";
|
|
import __ from '../../app/translation'
|
|
|
|
export const aboutMenuTemplateFunc = () => ({
|
|
label: __("About"),
|
|
submenu: [
|
|
{
|
|
label: __("Changelog"),
|
|
accelerator: "CmdOrCtrl+]",
|
|
click: () => {
|
|
const win = new BrowserWindow({
|
|
parent: BrowserWindow.getFocusedWindow(),
|
|
modal: true,
|
|
webPreferences: {
|
|
nodeIntegration: true,
|
|
enableRemoteModule: true,
|
|
contextIsolation: false,
|
|
}
|
|
})
|
|
win.setMenu(null)
|
|
win.loadURL(url.format({
|
|
pathname: path.join(__dirname, "app.html"),
|
|
protocol: "file:",
|
|
slashes: true
|
|
}))
|
|
win.webContents.on('did-finish-load', () => {
|
|
logT('changelog', "finish load page, open changlog")
|
|
setTimeout(() => win.send('url', '/changelog'), 0)
|
|
});
|
|
|
|
const handleRedirect = (e, url) => {
|
|
if(url != win.webContents.getURL()) {
|
|
e.preventDefault()
|
|
shell.openExternal(url)
|
|
}
|
|
}
|
|
|
|
win.webContents.on('will-navigate', handleRedirect)
|
|
win.webContents.on('new-window', handleRedirect)
|
|
},
|
|
},
|
|
{
|
|
label: __("Bug Report"),
|
|
accelerator: "CmdOrCtrl+[",
|
|
click: () => {
|
|
shell.openExternal('https://github.com/DEgITx/rats-search/issues')
|
|
},
|
|
},
|
|
{
|
|
label: __("Donate"),
|
|
accelerator: "CmdOrCtrl+*",
|
|
click: () => {
|
|
const win = new BrowserWindow({
|
|
parent: BrowserWindow.getFocusedWindow(),
|
|
modal: true,
|
|
width: 1000
|
|
})
|
|
win.setMenu(null)
|
|
win.loadURL(url.format({
|
|
pathname: path.join(__dirname, "donate.html"),
|
|
protocol: "file:",
|
|
slashes: true
|
|
}))
|
|
|
|
const handleRedirect = (e, url) => {
|
|
if(url != win.webContents.getURL()) {
|
|
if(!url.includes('patreon'))
|
|
return
|
|
|
|
e.preventDefault()
|
|
shell.openExternal(url)
|
|
}
|
|
}
|
|
|
|
win.webContents.on('will-navigate', handleRedirect)
|
|
win.webContents.on('new-window', handleRedirect)
|
|
},
|
|
},
|
|
{
|
|
label: __("Help (Documentation)"),
|
|
accelerator: "CmdOrCtrl+?",
|
|
click: () => {
|
|
shell.openExternal('https://github.com/DEgITx/rats-search/blob/master/docs/MANUAL.md')
|
|
},
|
|
},
|
|
{
|
|
label: __("Support (Discussion)"),
|
|
accelerator: "CmdOrCtrl+>",
|
|
click: () => {
|
|
shell.openExternal('https://discord.gg/t9GQtxA')
|
|
},
|
|
},
|
|
{
|
|
label: __("About (GitHub)"),
|
|
accelerator: "CmdOrCtrl+<",
|
|
click: () => {
|
|
shell.openExternal('https://github.com/DEgITx/rats-search')
|
|
},
|
|
}
|
|
]
|
|
});
|